@vellumai/web 0.11.9-staging.1 → 0.11.9-staging.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/dist/assets/{a2a-invite-B9jqmgbB.js → a2a-invite-BmopEUuc.js} +1 -1
  2. package/dist/assets/{about-page-B9eULV1f.js → about-page-jeGmoRA9.js} +1 -1
  3. package/dist/assets/{account-page-CZSO-AlP.js → account-page-JdskrJ78.js} +1 -1
  4. package/dist/assets/{account-shell-DgHv1A1w.js → account-shell-pvaSOGcE.js} +1 -1
  5. package/dist/assets/{acp-run-detail-panel-CNvbVyVw.js → acp-run-detail-panel-By-l4zoq.js} +1 -1
  6. package/dist/assets/{activity-redirect-page-CwgTPGTG.js → activity-redirect-page-BFBKktry.js} +1 -1
  7. package/dist/assets/{activity-steps-panel-zky0cnuk.js → activity-steps-panel-cif0uZ12.js} +1 -1
  8. package/dist/assets/{add-credits-modal-Dx0fdWm5.js → add-credits-modal-NBoCa1j3.js} +1 -1
  9. package/dist/assets/{ai-page-Czt1hbgM.js → ai-page-CS3Z6MrX.js} +1 -1
  10. package/dist/assets/{android-billing-handoff-BJxquTxv.js → android-billing-handoff-B8rC7eeV.js} +1 -1
  11. package/dist/assets/{api-key-screen-BIiNVLmB.js → api-key-screen-C2s4sMm1.js} +1 -1
  12. package/dist/assets/{app-info-DdWNjeN2.js → app-info-WxnSkFp1.js} +1 -1
  13. package/dist/assets/archive-redirect-page-B5G-WDp0.js +1 -0
  14. package/dist/assets/{assistant-status-panel-eeZDx5Ef.js → assistant-status-panel-qlWNpUbQ.js} +1 -1
  15. package/dist/assets/{auth-welcome-screen-B5i9VCDX.js → auth-welcome-screen-D20mVl5R.js} +1 -1
  16. package/dist/assets/{avatar-bundled-components-X6uhm3sR.js → avatar-bundled-components-Bdw589VI.js} +1 -1
  17. package/dist/assets/{avatar-random-mKQpdYRU.js → avatar-random-B3jE15Y7.js} +2 -2
  18. package/dist/assets/{await-org-header-settled-3RjHs2p_.js → await-org-header-settled-DcAqEzY1.js} +1 -1
  19. package/dist/assets/{background-task-detail-panel-D-5wO1mD.js → background-task-detail-panel-CXD0nKQP.js} +1 -1
  20. package/dist/assets/{billing-page-BEx67_Vu.js → billing-page-DjpHOzD6.js} +3 -3
  21. package/dist/assets/{billing-redirect-page-DGi9rWvB.js → billing-redirect-page-Ca7pWbvL.js} +1 -1
  22. package/dist/assets/{bookmarks-page-vDGPyme6.js → bookmarks-page-B4Bj_NZ1.js} +1 -1
  23. package/dist/assets/{bundle-confirm-page-CLqCqvDN.js → bundle-confirm-page-CjvXenWx.js} +1 -1
  24. package/dist/assets/{channel-transcript-panel-C4lFREze.js → channel-transcript-panel-Bupj5L4O.js} +1 -1
  25. package/dist/assets/{channels-page-route-Cb0pntjc.js → channels-page-route-CSFzQtEJ.js} +1 -1
  26. package/dist/assets/{checkout-continuation-B6h2u8bW.js → checkout-continuation-BBasTGr1.js} +1 -1
  27. package/dist/assets/{checkout-page-BOd355tP.js → checkout-page-QfqxmVX3.js} +1 -1
  28. package/dist/assets/checkout-return-target-DRW4Fb93.js +1 -0
  29. package/dist/assets/{command-palette-B64x_N5e.js → command-palette-CsWImGc1.js} +1 -1
  30. package/dist/assets/{command-palette-window-page-BnnVhvV6.js → command-palette-window-page-Dm2bWRPF.js} +1 -1
  31. package/dist/assets/{community-page-BqfWeHrB.js → community-page-DG_go-bx.js} +1 -1
  32. package/dist/assets/companion-accent-Dhs0VHm8.js +1 -0
  33. package/dist/assets/{companion-layout-BWgLSvze.js → companion-layout-CU_fQwBX.js} +1 -1
  34. package/dist/assets/companion-surface-page-CUmDLt1d.js +1 -0
  35. package/dist/assets/{companion-watch-glow-page-CQT0SvDE.js → companion-watch-glow-page-DPah9dl8.js} +1 -1
  36. package/dist/assets/{connect-page-BEb1oXUc.js → connect-page-BAugVlOG.js} +1 -1
  37. package/dist/assets/{consent-controls-B1AnYj9V.js → consent-controls-BBOL1pVX.js} +1 -1
  38. package/dist/assets/{contacts-gateway-Cqy42w-P.js → contacts-gateway-_5gWCO5M.js} +1 -1
  39. package/dist/assets/{contacts-page-route-1biY-ppa.js → contacts-page-route-cNZg-y2G.js} +1 -1
  40. package/dist/assets/{credential-entry-page-Dp8ZvJCL.js → credential-entry-page-CG0pMgbA.js} +1 -1
  41. package/dist/assets/{credentials-page-DWCvFFiI.js → credentials-page-D8hdCncX.js} +1 -1
  42. package/dist/assets/{csv-preview-DfcTYrC2.js → csv-preview-BZResk4J.js} +1 -1
  43. package/dist/assets/danger-zone-redirect-page-CwAiH6Ly.js +1 -0
  44. package/dist/assets/{debug-page-KIzcZW4r.js → debug-page-DuHowSZO.js} +1 -1
  45. package/dist/assets/{deploy-dialogs-CC6DQ0vu.js → deploy-dialogs-CXykRB7L.js} +1 -1
  46. package/dist/assets/{detail-card-BXhwux_c.js → detail-card-sxGt13nZ.js} +1 -1
  47. package/dist/assets/{detail-panel-stop-button-3gCSXBXB.js → detail-panel-stop-button-BhBUIYrN.js} +1 -1
  48. package/dist/assets/{developer-page-DWZTB0CS.js → developer-page-Xok7vdls.js} +1 -1
  49. package/dist/assets/devices-redirect-page-Bn8l0NbB.js +1 -0
  50. package/dist/assets/{dictation-overlay-page-C_LaA2sN.js → dictation-overlay-page-faR6ZD05.js} +1 -1
  51. package/dist/assets/{document-viewer-page-UQ_WQgfz.js → document-viewer-page-CICQK2iT.js} +1 -1
  52. package/dist/assets/{emails-page-DbvNvgv2.js → emails-page-ChkgqqfV.js} +1 -1
  53. package/dist/assets/{environment-store-Dkn0BKG2.js → environment-store-DbxWXxoY.js} +1 -1
  54. package/dist/assets/{file-editor-C7Um2GrG.js → file-editor-BcG_sR-r.js} +1 -1
  55. package/dist/assets/{general-page-CavuxYdx.js → general-page-BbkJBzvT.js} +1 -1
  56. package/dist/assets/{hatching-screen-ChUtQw8W.js → hatching-screen-jX7krI2v.js} +1 -1
  57. package/dist/assets/{hosting-screen-9TLoyimY.js → hosting-screen-BsNV_ReB.js} +1 -1
  58. package/dist/assets/{identity-page-route-D7W7YrE3.js → identity-page-route-aHYnV_jN.js} +1 -1
  59. package/dist/assets/index-BUt2OH6r.css +2 -0
  60. package/dist/assets/{index-BVVp210p.js → index-b_IQShc9.js} +9 -9
  61. package/dist/assets/{inspect-page-DbB0qA0t.js → inspect-page-HI841yUu.js} +3 -3
  62. package/dist/assets/{integrations-page-DfLlnJon.js → integrations-page-BmMDMgFU.js} +1 -1
  63. package/dist/assets/{intelligence-layout-CNhNn2l4.js → intelligence-layout-CLPUS0ap.js} +1 -1
  64. package/dist/assets/keyboard-shortcuts-redirect-page-DDGnWlyz.js +1 -0
  65. package/dist/assets/{latest-assistant-text-QBDnPUy-.js → latest-assistant-text-DAXhdhSY.js} +1 -1
  66. package/dist/assets/{library-detail-page-BzJfzbC3.js → library-detail-page-43KAFuJi.js} +1 -1
  67. package/dist/assets/{library-page-v3XsOgxI.js → library-page-CDLs7xOE.js} +1 -1
  68. package/dist/assets/{login-page-1BkkzrgT.js → login-page-GVnmapVt.js} +1 -1
  69. package/dist/assets/{logout-page-CnlDy9lt.js → logout-page-Bz-a8xjH.js} +1 -1
  70. package/dist/assets/{logs-layout-DDdSW282.js → logs-layout-_NfJqBwz.js} +1 -1
  71. package/dist/assets/{markdown-preview-DNH9WsbV.js → markdown-preview-c_WsdpT0.js} +1 -1
  72. package/dist/assets/{media-preview-BePTwtIU.js → media-preview-D7AavJf-.js} +1 -1
  73. package/dist/assets/{memory-page-route-BTPvwnHF.js → memory-page-route-Csfkb0fE.js} +1 -1
  74. package/dist/assets/{memory-router-playground-page-DQzcoSy8.js → memory-router-playground-page-B_TvYode.js} +1 -1
  75. package/dist/assets/{message-files-panel-BXc-fblZ.js → message-files-panel-Q_w3u4r6.js} +1 -1
  76. package/dist/assets/{metric-card-DxpIyY0z.js → metric-card-XbeSP_dF.js} +1 -1
  77. package/dist/assets/{notifications-page-BNgPGEQb.js → notifications-page-BCo_g_9g.js} +1 -1
  78. package/dist/assets/{oauth-complete-page-DqZtiKH-.js → oauth-complete-page-D0_ddx3s.js} +1 -1
  79. package/dist/assets/{oauth-popup-complete-page-BDfhFWci.js → oauth-popup-complete-page-DR-OaEn7.js} +1 -1
  80. package/dist/assets/{page-shell-Dlsn8wyt.js → page-shell-D1-wKbPX.js} +1 -1
  81. package/dist/assets/{pairing-page-CWoinj-Z.js → pairing-page-CFi0G2Xh.js} +1 -1
  82. package/dist/assets/password-reset-page-DdG-gDUR.js +1 -0
  83. package/dist/assets/{pdf-file-preview-CJ6geQeY.js → pdf-file-preview-QWR5YVZp.js} +1 -1
  84. package/dist/assets/{personality-page-C9p1PiOn.js → personality-page-D4oROOvq.js} +1 -1
  85. package/dist/assets/{plans-page-BNi_MgUe.js → plans-page-BAgmH1pe.js} +1 -1
  86. package/dist/assets/{platform-loopback-page-_NLrjsOR.js → platform-loopback-page-hfwG6N6r.js} +1 -1
  87. package/dist/assets/{plugin-detail-page-DIOu3ao3.js → plugin-detail-page-JFE-PjTL.js} +1 -1
  88. package/dist/assets/{plugins-page-LBod4Ue5.js → plugins-page-PjMDyM4p.js} +1 -1
  89. package/dist/assets/{preview-error-kO-J66Zv.js → preview-error-BLcNtS5K.js} +1 -1
  90. package/dist/assets/{privacy-page-CEt-Gr-k.js → privacy-page-BBlgcXb0.js} +1 -1
  91. package/dist/assets/{privacy-screen-Dr2tpwgO.js → privacy-screen-DMC-z5IT.js} +1 -1
  92. package/dist/assets/{provider-callback-page-aJ_6i4xK.js → provider-callback-page-CuAY1_4R.js} +1 -1
  93. package/dist/assets/{provider-key-PAmg3XjL.js → provider-key-CNHs7dwm.js} +1 -1
  94. package/dist/assets/{provider-signup-page-BCUoHgWf.js → provider-signup-page-DjNpFmgq.js} +1 -1
  95. package/dist/assets/{quick-input-page-C8AjTd-X.js → quick-input-page-CMM22KVb.js} +1 -1
  96. package/dist/assets/{research-mock-page-CGOcSvcT.js → research-mock-page-ClUeMeQm.js} +1 -1
  97. package/dist/assets/{research-onboarding-route-DBZhQhpw.js → research-onboarding-route-BCNagFK9.js} +1 -1
  98. package/dist/assets/{review-terms-screen-DsxPDq8C.js → review-terms-screen-LYu2oH8u.js} +1 -1
  99. package/dist/assets/{schedules-CiQRct_v.js → schedules-jQA-lEXD.js} +1 -1
  100. package/dist/assets/{schedules-page-DY4qoW1Q.js → schedules-page-y5DMdtSF.js} +1 -1
  101. package/dist/assets/security-redirect-page-Cso7bCn1.js +1 -0
  102. package/dist/assets/{select-assistant-screen-DY2bsToS.js → select-assistant-screen-DTrNJM_L.js} +1 -1
  103. package/dist/assets/{self-hosted-servers-Ck45Ce7U.js → self-hosted-servers-CE0-6fMf.js} +1 -1
  104. package/dist/assets/{service-form-controls-BrAek3O9.js → service-form-controls-CmKM2qps.js} +1 -1
  105. package/dist/assets/{setting-row-D7b4t29_.js → setting-row-JfvUWIUE.js} +1 -1
  106. package/dist/assets/{settings-divider-DOmdsd_b.js → settings-divider-BDaGinDZ.js} +1 -1
  107. package/dist/assets/{settings-layout-DyxqBBfM.js → settings-layout-BSPQuLG_.js} +1 -1
  108. package/dist/assets/{share-feedback-modal-DQkZsb9S.js → share-feedback-modal-C-9w9Qun.js} +1 -1
  109. package/dist/assets/{sidebar-tree-cUpG2j7M.js → sidebar-tree-B_7TxIfc.js} +1 -1
  110. package/dist/assets/{signup-page-BS3key1b.js → signup-page-Up3lhxjE.js} +1 -1
  111. package/dist/assets/{signup-shell-CJkXiLFK.js → signup-shell-Cz7nHsiG.js} +1 -1
  112. package/dist/assets/{skill-detail-page-Ctdu9URX.js → skill-detail-page-CcD41B-N.js} +1 -1
  113. package/dist/assets/{skill-detail-panel-pSGqD5fk.js → skill-detail-panel-COgbn-zN.js} +1 -1
  114. package/dist/assets/{skill-removal-dialog-BAZKh1bp.js → skill-removal-dialog-IZ80QFym.js} +1 -1
  115. package/dist/assets/{skills-page-C3fYc9yk.js → skills-page-9DYmyfOw.js} +1 -1
  116. package/dist/assets/{sounds-page-DzAbysBF.js → sounds-page-DzCV0GMu.js} +1 -1
  117. package/dist/assets/{start-screen-BZJCt4uO.js → start-screen-De2GtK4A.js} +1 -1
  118. package/dist/assets/{stt-language-picker-modal-3JHZ7KRr.js → stt-language-picker-modal-CLsnI2Yz.js} +1 -1
  119. package/dist/assets/{subagent-detail-panel-C-id-gz6.js → subagent-detail-panel-Bx-nrZRA.js} +1 -1
  120. package/dist/assets/{superpowers-page-ByqWgwxm.js → superpowers-page-BZXp-HPn.js} +1 -1
  121. package/dist/assets/{system-events-page-Drm8odGD.js → system-events-page-CdnLtW07.js} +1 -1
  122. package/dist/assets/system-events-redirect-page-8K7jp-vf.js +1 -0
  123. package/dist/assets/{text-preview-DQo_wIE1.js → text-preview-CzBwTE6l.js} +1 -1
  124. package/dist/assets/{theme-stage-page-BW7WXz7Y.js → theme-stage-page-DFM8cSRo.js} +1 -1
  125. package/dist/assets/{tiptap-document-editor-B5NBtP2i.js → tiptap-document-editor-DiMEXCfY.js} +1 -1
  126. package/dist/assets/{tool-detail-panel-s9N8-rpr.js → tool-detail-panel-C-r8dnRp.js} +1 -1
  127. package/dist/assets/{trait-cycle-row-DIN6r7YK.js → trait-cycle-row-C2Icx-67.js} +1 -1
  128. package/dist/assets/{upgrade-cancel-page-Dc8GuuuI.js → upgrade-cancel-page-Bi8uWXPd.js} +1 -1
  129. package/dist/assets/{upgrade-success-page-Ba2I2Zur.js → upgrade-success-page-BkEgh_vv.js} +1 -1
  130. package/dist/assets/{usage-redirect-page-zIF77c7V.js → usage-redirect-page-kNuqbUkh.js} +1 -1
  131. package/dist/assets/{use-assistant-identity-details-D9qdC7Cd.js → use-assistant-identity-details-BHiN3OAl.js} +1 -1
  132. package/dist/assets/{use-checkout-dismiss-refresh-BwscoYFU.js → use-checkout-dismiss-refresh-DOJD5kF-.js} +1 -1
  133. package/dist/assets/{use-edge-swipe-back-CJNLwmcm.js → use-edge-swipe-back-BO9Eg7fg.js} +2 -2
  134. package/dist/assets/{use-hotkey-recorder-BpZ2ce5P.js → use-hotkey-recorder-CSRkbNLq.js} +1 -1
  135. package/dist/assets/{use-invite-link-dialog-Ho7FM83m.js → use-invite-link-dialog-D8k7P63J.js} +1 -1
  136. package/dist/assets/{use-platform-assistant-id-CupaRcFg.js → use-platform-assistant-id-C6Npjvje.js} +1 -1
  137. package/dist/assets/{use-return-to-short-circuit-DrqtvQUp.js → use-return-to-short-circuit-qAmnQhhd.js} +1 -1
  138. package/dist/assets/{use-side-list-room-DT90pjIs.js → use-side-list-room-wi1Z0sax.js} +1 -1
  139. package/dist/assets/{use-skill-actions-tfxzxIKS.js → use-skill-actions-Cenw6B7x.js} +1 -1
  140. package/dist/assets/{use-skill-detail-files-CaKc2HWM.js → use-skill-detail-files-BMTlfXyu.js} +1 -1
  141. package/dist/assets/use-supports-credentials-settings-BbVrMmw2.js +1 -0
  142. package/dist/assets/use-transcript-message-by-id-BAc4xz_C.js +1 -0
  143. package/dist/assets/{voice-page-B9hAlvd7.js → voice-page-Cno795eb.js} +1 -1
  144. package/dist/assets/{weather-forecast-display-BJes18_s.js → weather-forecast-display-Bq7Ktxyw.js} +1 -1
  145. package/dist/assets/{welcome-screen-CrXclfuA.js → welcome-screen-CipRXBbr.js} +1 -1
  146. package/dist/assets/{workflow-detail-panel-FJt7O7DN.js → workflow-detail-panel-B4pwzq2k.js} +1 -1
  147. package/dist/assets/{workspace-page-maAwyAnK.js → workspace-page-B_ntO4pT.js} +1 -1
  148. package/dist/index.html +2 -2
  149. package/package.json +1 -1
  150. package/dist/assets/archive-redirect-page-Bahth1ou.js +0 -1
  151. package/dist/assets/checkout-return-target-DEiJUksg.js +0 -1
  152. package/dist/assets/companion-accent-D98A6fdt.js +0 -1
  153. package/dist/assets/companion-surface-page-BYlBiFag.js +0 -1
  154. package/dist/assets/danger-zone-redirect-page-BbvorzSo.js +0 -1
  155. package/dist/assets/devices-redirect-page-MeFP2iGe.js +0 -1
  156. package/dist/assets/index-ChmqERCm.css +0 -2
  157. package/dist/assets/keyboard-shortcuts-redirect-page-CX6auuC3.js +0 -1
  158. package/dist/assets/password-reset-page-Cv3_LjgI.js +0 -1
  159. package/dist/assets/security-redirect-page-Be_N1V2t.js +0 -1
  160. package/dist/assets/system-events-redirect-page-D4uO9zjA.js +0 -1
  161. package/dist/assets/use-supports-credentials-settings-BsoxGpqB.js +0 -1
  162. package/dist/assets/use-transcript-message-by-id-2x4qzE7s.js +0 -1
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Zn as t}from"./vendor-CYfJo8gP.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{$m as i,Ay as a,Ch as o,Jr as s,Oo as c,Sh as l,Xr as u,Ym as d,Za as f,ei as p,nm as m,vr as h,yv as g}from"./index-BVVp210p.js";import{i as _,n as v,r as y,t as b,u as x}from"./latest-assistant-text-QBDnPUy-.js";var S=e(n(),1),C=r();function w({components:e,traits:t,stage:n,entrance:r=!1,entranceDelay:i=0}){let a=(0,S.useMemo)(()=>{let n=e.eyeStyles.find(e=>e.id===t.eyeStyle);return n?{paths:n.paths,bbox:u(n.paths.map(e=>s(e.svgPath)))}:null},[e,t.eyeStyle]);return a?(0,C.jsx)(_,{art:a,stage:n,entrance:r,entranceDelay:i}):null}var T=`#17191C`,E=24,D=.2,O=96,k=160,A=(0,S.createContext)(null);function j(){let e=(0,S.useContext)(A);if(!e)throw Error(`useAssistantStage must be used inside <AssistantStage>`);return e}function M(e,t){return!e||!t?null:e.colors.find(e=>e.id===t.color)?.hex??null}function N({components:e,traits:t,customImageUrl:n,entrance:r=!1,children:i,className:o}){let{ref:s,size:c}=h(),l=M(e,t)??T,u=p(l),d=f.use.setSurface();(0,S.useLayoutEffect)(()=>(d(l),()=>{d(null)}),[l,d]);let m=!!(e&&t),g=!m&&!!n,_=Math.round(Math.min(k,Math.max(O,Math.min(c.w,c.h)*D))),v=c.h-_-E,b=m?Math.round(y*Math.min(c.w,c.h))+16:g?_+E+16:24;return(0,C.jsxs)(`div`,{ref:s,className:a(`relative flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,`native-mobile:rounded-none native-mobile:border-0`,o),style:{backgroundColor:l,color:u.fg},children:[m&&e&&t&&(0,C.jsx)(w,{components:e,traits:t,stage:c,entrance:r}),g&&n&&(0,C.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute z-[2] overflow-hidden rounded-full ring-4 ring-white/25`,style:{left:(c.w-_)/2,top:v,width:_,height:_},children:(0,C.jsx)(`img`,{src:n,alt:``,className:`h-full w-full object-cover`,draggable:!1})}),(0,C.jsx)(A.Provider,{value:{stage:c,tone:u,bottomReserve:b},children:(0,C.jsx)(`div`,{className:`relative z-10 flex min-h-0 flex-1 flex-col`,children:i})})]})}var P=[{id:`companion-coworker`,leftKey:`personalityAxes.companionCoworker.left`,rightKey:`personalityAxes.companionCoworker.right`},{id:`genz-boomer`,leftKey:`personalityAxes.genzBoomer.left`,rightKey:`personalityAxes.genzBoomer.right`},{id:`execute-collaborate`,leftKey:`personalityAxes.executeCollaborate.left`,rightKey:`personalityAxes.executeCollaborate.right`},{id:`playful-serious`,leftKey:`personalityAxes.playfulSerious.left`,rightKey:`personalityAxes.playfulSerious.right`},{id:`polite-unfiltered`,leftKey:`personalityAxes.politeUnfiltered.left`,rightKey:`personalityAxes.politeUnfiltered.right`}],F=50,I=1500,L=12e4,R=e=>new Promise(t=>setTimeout(t,e));async function z({assistantId:e,content:t,title:n,context:r}){let a,s=!1;try{let r=await i({path:{assistant_id:e},body:{conversationType:`background`,title:n},throwOnError:!1});if(a=r.data?.id,!r.response?.ok||!a)return!1;let c=v({conversationId:a,content:t,transport:`vellum`});if(!(await o({path:{assistant_id:e},body:c,throwOnError:!1})).response?.ok)return!1;let u=Date.now()+L,d=``,f=0,p=!1;for(;Date.now()<u;){await R(I);let t=await l({path:{assistant_id:e},query:{conversationId:a},throwOnError:!1}),n=b(t.data?.messages??[]);if(n&&(f=n===d?f+1:0,d=n),t.data?.processing===!0&&(p=!0),x({processing:t.data?.processing,sawProcessing:p,hasReply:n.length>0,stableReads:f})){s=!0;break}}}catch(e){g(e,{context:r})}finally{if(a)try{await d({path:{assistant_id:e,id:a},throwOnError:!1})}catch(e){g(e,{context:`${r}_archive`})}}return s}function B(e){return[`assistant-identity-details`,e]}function V(e){return t({queryKey:B(e),queryFn:async()=>{let[t,n]=await Promise.all([c(e),m(e).catch(()=>({ok:!1,status:0,error:{}}))]);return{identity:t,createdAt:n.ok?n.data.created:null}}})}export{F as a,j as c,P as i,V as n,N as o,z as r,M as s,B as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Zn as t}from"./vendor-CYfJo8gP.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{$m as i,Ay as a,Ch as o,Jr as s,Oo as c,Sh as l,Xr as u,Ym as d,Za as f,ei as p,nm as m,vr as h,yv as g}from"./index-b_IQShc9.js";import{i as _,n as v,r as y,t as b,u as x}from"./latest-assistant-text-DAXhdhSY.js";var S=e(n(),1),C=r();function w({components:e,traits:t,stage:n,entrance:r=!1,entranceDelay:i=0}){let a=(0,S.useMemo)(()=>{let n=e.eyeStyles.find(e=>e.id===t.eyeStyle);return n?{paths:n.paths,bbox:u(n.paths.map(e=>s(e.svgPath)))}:null},[e,t.eyeStyle]);return a?(0,C.jsx)(_,{art:a,stage:n,entrance:r,entranceDelay:i}):null}var T=`#17191C`,E=24,D=.2,O=96,k=160,A=(0,S.createContext)(null);function j(){let e=(0,S.useContext)(A);if(!e)throw Error(`useAssistantStage must be used inside <AssistantStage>`);return e}function M(e,t){return!e||!t?null:e.colors.find(e=>e.id===t.color)?.hex??null}function N({components:e,traits:t,customImageUrl:n,entrance:r=!1,children:i,className:o}){let{ref:s,size:c}=h(),l=M(e,t)??T,u=p(l),d=f.use.setSurface();(0,S.useLayoutEffect)(()=>(d(l),()=>{d(null)}),[l,d]);let m=!!(e&&t),g=!m&&!!n,_=Math.round(Math.min(k,Math.max(O,Math.min(c.w,c.h)*D))),v=c.h-_-E,b=m?Math.round(y*Math.min(c.w,c.h))+16:g?_+E+16:24;return(0,C.jsxs)(`div`,{ref:s,className:a(`relative flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,`native-mobile:rounded-none native-mobile:border-0`,o),style:{backgroundColor:l,color:u.fg},children:[m&&e&&t&&(0,C.jsx)(w,{components:e,traits:t,stage:c,entrance:r}),g&&n&&(0,C.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute z-[2] overflow-hidden rounded-full ring-4 ring-white/25`,style:{left:(c.w-_)/2,top:v,width:_,height:_},children:(0,C.jsx)(`img`,{src:n,alt:``,className:`h-full w-full object-cover`,draggable:!1})}),(0,C.jsx)(A.Provider,{value:{stage:c,tone:u,bottomReserve:b},children:(0,C.jsx)(`div`,{className:`relative z-10 flex min-h-0 flex-1 flex-col`,children:i})})]})}var P=[{id:`companion-coworker`,leftKey:`personalityAxes.companionCoworker.left`,rightKey:`personalityAxes.companionCoworker.right`},{id:`genz-boomer`,leftKey:`personalityAxes.genzBoomer.left`,rightKey:`personalityAxes.genzBoomer.right`},{id:`execute-collaborate`,leftKey:`personalityAxes.executeCollaborate.left`,rightKey:`personalityAxes.executeCollaborate.right`},{id:`playful-serious`,leftKey:`personalityAxes.playfulSerious.left`,rightKey:`personalityAxes.playfulSerious.right`},{id:`polite-unfiltered`,leftKey:`personalityAxes.politeUnfiltered.left`,rightKey:`personalityAxes.politeUnfiltered.right`}],F=50,I=1500,L=12e4,R=e=>new Promise(t=>setTimeout(t,e));async function z({assistantId:e,content:t,title:n,context:r}){let a,s=!1;try{let r=await i({path:{assistant_id:e},body:{conversationType:`background`,title:n},throwOnError:!1});if(a=r.data?.id,!r.response?.ok||!a)return!1;let c=v({conversationId:a,content:t,transport:`vellum`});if(!(await o({path:{assistant_id:e},body:c,throwOnError:!1})).response?.ok)return!1;let u=Date.now()+L,d=``,f=0,p=!1;for(;Date.now()<u;){await R(I);let t=await l({path:{assistant_id:e},query:{conversationId:a},throwOnError:!1}),n=b(t.data?.messages??[]);if(n&&(f=n===d?f+1:0,d=n),t.data?.processing===!0&&(p=!0),x({processing:t.data?.processing,sawProcessing:p,hasReply:n.length>0,stableReads:f})){s=!0;break}}}catch(e){g(e,{context:r})}finally{if(a)try{await d({path:{assistant_id:e,id:a},throwOnError:!1})}catch(e){g(e,{context:`${r}_archive`})}}return s}function B(e){return[`assistant-identity-details`,e]}function V(e){return t({queryKey:B(e),queryFn:async()=>{let[t,n]=await Promise.all([c(e),m(e).catch(()=>({ok:!1,status:0,error:{}}))]);return{identity:t,createdAt:n.ok?n.data.created:null}}})}export{F as a,j as c,P as i,V as n,N as o,z as r,M as s,B as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{I as t,Jn as n,Zn as r,ar as i,er as a,j as o,rr as s}from"./vendor-CYfJo8gP.js";import{b as c,f as l,t as u}from"./react-DPM_L_aA.js";import{Br as d,Fr as f,Jt as p,ar as m,er as h,fi as g,jr as _,mn as v,tn as y,v as b,xi as x,xn as S}from"./icons-CSdHOix6.js";import{$c as C,$s as w,Dy as T,Ey as E,Hf as D,Kf as O,Kr as ee,Nr as k,Qr as A,Qv as j,Rp as te,Sg as ne,Uf as M,Vf as re,Vp as ie,Wf as ae,Xc as oe,Yc as se,Yf as N,Zr as P,ac as ce,ag as le,al as ue,ao as de,bl as fe,cy as F,dv as pe,h_ as I,hc as L,ia as me,ic as R,il as he,io as ge,ll as _e,nl as ve,og as ye,ol as be,rl as z,sy as B,tl as xe,uy as V,wc as Se,wg as Ce,wn as we,wy as H,xl as Te,yc as Ee}from"./index-BVVp210p.js";import{t as U}from"./environment-store-Dkn0BKG2.js";import{c as De,i as W,l as G,n as Oe,r as ke,t as Ae}from"./machine-sizes-CcBnk4Jk.js";import{a as je,i as Me,n as Ne,r as Pe,t as Fe}from"./provisioning-targets-BdvRsGBC.js";var K=x(`computer`,[[`rect`,{width:`14`,height:`8`,x:`5`,y:`2`,rx:`2`,key:`wc9tft`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,key:`w68u3i`}],[`path`,{d:`M6 18h2`,key:`rwmk9e`}],[`path`,{d:`M12 18h6`,key:`aqd8w3`}]]),q=e(c(),1),J=u();function Ie({icon:e}){return(0,J.jsx)(`span`,{className:`flex h-11 w-11 items-center justify-center rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-negative-strong) 12%, transparent)`},children:(0,J.jsx)(e,{className:`h-5 w-5`,style:{color:`var(--system-negative-strong)`},"aria-hidden":`true`})})}var Le={fontFamily:`var(--font-serif)`,fontSize:`32px`,fontWeight:400,lineHeight:1.2,letterSpacing:`0.64px`};function Re({title:e,subtitle:t}){return(0,J.jsxs)(`header`,{className:`flex flex-col items-center gap-2 pt-12 text-center`,children:[(0,J.jsx)(`h2`,{className:`text-[var(--content-emphasised)]`,style:Le,children:e}),t&&(0,J.jsx)(`p`,{className:`text-[14px] font-normal text-[var(--content-secondary)]`,children:t})]})}var ze=[{bodyShape:`star`,eyeStyle:`curious`,color:`yellow`,size:103,position:`-left-[28px] -top-[33px]`,rotate:180},{bodyShape:`star`,eyeStyle:`curious`,color:`orange`,size:109,position:`left-[63%] -top-[62px] -translate-x-1/2`,rotate:-8},{bodyShape:`blob`,eyeStyle:`grumpy`,color:`green`,size:76,position:`-right-[25px] top-[60px]`,rotate:1},{bodyShape:`stack`,eyeStyle:`gentle`,color:`purple`,size:110,position:`-left-[39px] top-[74%]`,rotate:0},{bodyShape:`urchin`,eyeStyle:`goofy`,color:`pink`,size:137,position:`-right-[42px] -bottom-[40px]`,rotate:180},{bodyShape:`sprout`,eyeStyle:`curious`,color:`orange`,size:72,position:`left-[37%] -bottom-[22px] -translate-x-1/2`,rotate:0}],Y=[{bodyShape:`star`,eyeStyle:`curious`,color:`yellow`,size:103,position:`-left-[28px] -top-[33px]`,rotate:180},{bodyShape:`star`,eyeStyle:`curious`,color:`orange`,size:109,position:`left-[63%] -top-[62px] -translate-x-1/2`,rotate:-8},{bodyShape:`blob`,eyeStyle:`grumpy`,color:`green`,size:76,position:`-right-[25px] top-[60px]`,rotate:1}];function X({variant:e=`full`}){let t=k();return t?(0,J.jsx)(`div`,{"aria-hidden":`true`,"data-testid":`creature-corners`,className:`pointer-events-none absolute inset-0 select-none`,children:(e===`top`?Y:ze).map((e,n)=>(0,J.jsx)(`span`,{className:`absolute ${e.position}`,style:{rotate:`${e.rotate}deg`},children:(0,J.jsx)(we,{components:t,bodyShapeId:e.bodyShape,eyeStyleId:e.eyeStyle,colorId:e.color,size:e.size})},n))}):null}var Be={waitingStatus:`Upgrading your assistant…`,snagStatus:`We hit a snag upgrading your assistant`,snagCaption:`Retry in the background and we'll keep working on your upgrade.`,confirmingStatus:`Confirming your upgrade…`,confirmTimeoutStatus:`Still confirming your upgrade`,confirmTimeoutCaption:`Your payment went through safely. This can take a minute.`,backgroundConfirmMessage:`Your assistant is still upgrading. Chatting won't be available until it finishes. You can keep waiting here, or continue and we'll let you know when it's ready.`,backgroundExitToast:`Your upgrade continues in the background.`,backgroundRetryToast:`We'll retry your upgrade in the background.`,completeSubtitle:`Enjoy the new found power.`,fetchErrorBody:`We hit a problem checking your subscription. Your upgrade may still be processing. Return to billing to refresh.`},Ve={waitingStatus:`Updating your assistant…`,snagStatus:`We hit a snag updating your assistant`,snagCaption:`Retry in the background and we'll keep working on your plan change.`,confirmingStatus:`Confirming your plan change…`,confirmTimeoutStatus:`Still confirming your plan change`,confirmTimeoutCaption:`Your plan change was submitted. This can take a minute.`,backgroundConfirmMessage:`Your assistant is still updating. Chatting won't be available until it finishes. You can keep waiting here, or continue and we'll let you know when it's ready.`,backgroundExitToast:`Your plan change continues in the background.`,backgroundRetryToast:`We'll retry your plan change in the background.`,completeSubtitle:`Your plan changes are live.`,fetchErrorBody:`We hit a problem checking your subscription. Your plan change may still be processing. Return to billing to refresh.`},He={upgrade:Be,downgrade:Ve,change:Ve};function Z(e=`upgrade`){return He[e]}function Q(e,t=!0){let{data:n}=r({...w(),enabled:t&&e==null}),{data:i}=r({...Se({path:{id:e??``}}),enabled:t&&e!=null});return e==null?n:i}function $({assistantId:e,direction:t}){let n=l(),{t:r}=o(`settings`),i=Q(e,N())?.name||r(`completeState.assistantFallbackName`);return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 pb-16 [animation:onboarding-step-in_350ms_ease-out] motion-reduce:[animation:none]`,children:[(0,J.jsx)(X,{variant:`full`}),(0,J.jsxs)(`div`,{className:`relative flex w-full flex-col items-center`,children:[(0,J.jsx)(Re,{title:r(`completeState.title`),subtitle:Z(t).completeSubtitle}),(0,J.jsx)(`div`,{className:`mt-10 flex w-full flex-col items-center gap-10`,children:(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-complete-return`,onClick:()=>{e!=null&&te(e),n(pe.assistant,{replace:!0})},children:r(`completeState.returnTo`,{assistantName:i})})})]})]})}function Ue(e=!0,t){let n=Q(t,e),i=t??n?.id,{data:a,isError:o,isFetching:s,dataUpdatedAt:c,errorUpdatedAt:l}=r({...R({path:{assistant_id:i??``}}),enabled:e&&!!i});return{assistant:n,assistantId:i,domains:a,domainsError:o,domainsFetching:s,domainsUpdatedAt:c,domainsErrorUpdatedAt:l}}var We=1e3,Ge=1e4,Ke=2500,qe=2e3,Je=1e4,Ye=[`machine_size`,`subdomain`,`non_field_errors`],Xe={subdomain_taken:`That subdomain is already taken. Try another.`,assistant_already_has_domain:`Your assistant already has a custom domain.`,no_assistant_to_attach_domain:`We couldn't find an assistant to attach this domain to.`,exceeds_machine_tier:`That machine size isn't available on your plan.`,provisioning_submission_failed:`We couldn't queue your upgrade just now. Try again in a moment.`,no_active_pro:`We couldn't confirm your Pro plan yet. Try again in a moment.`,no_provisionable_assistants:`We couldn't find an assistant to upgrade yet. Try again in a moment.`},Ze={provisioning_submission_failed:`We couldn't queue your plan change just now. Try again in a moment.`,no_provisionable_assistants:`We couldn't find an assistant to update yet. Try again in a moment.`};function Qe(e,t,n=`upgrade`){if(e&&typeof e==`object`){let t=e;if(typeof t.error==`string`){let e=(n===`upgrade`?void 0:Ze[t.error])??Xe[t.error];if(e)return e}for(let e of Ye){let n=t[e];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(typeof t.detail==`string`)return t.detail}return t}var $e=`h-8 rounded-lg border border-[var(--border-element)] bg-[var(--field-bg)] px-2.5 text-[14px] text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none transition-[border-color] duration-150 focus:border-[var(--border-active)] disabled:cursor-not-allowed disabled:opacity-60`,et=`text-[11px] font-medium text-[var(--content-secondary)]`;function tt({onExit:e,machineBusy:t=!1,assistantId:r}){let{t:i}=o(`settings`),s=a(),c=U.use.emailRootDomain(),{assistant:l,assistantId:u,domains:d}=Ue(!0,r),f=d?.results[0],[p,m]=(0,q.useState)(``),[h,g]=(0,q.useState)(`hi`),[_,v]=(0,q.useState)(!1);(0,q.useEffect)(()=>{if(!_){if(f){m(f.subdomain),v(!0);return}!l?.handle||p||(m(l.handle),v(!0))}},[l?.handle,f,_,p]);let[y,b]=(0,q.useState)(null),[x,S]=(0,q.useState)(!1),C=n(xe()),w=!!f||x,E=C.isPending||x;return(0,q.useEffect)(()=>{if(!x)return;let t=setTimeout(e,800);return()=>clearTimeout(t)},[x,e]),(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(V.Body,{className:`animate-[onboarding-step-in_350ms_ease-out] space-y-6 pb-0 motion-reduce:animate-none`,children:[(0,J.jsx)(X,{variant:`top`}),(0,J.jsx)(Re,{title:i(`domainStep.title`),subtitle:i(`domainStep.subtitle`)}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(`label`,{htmlFor:`onboarding-email-prefix`,className:et,children:i(`domainStep.prefixLabel`)}),(0,J.jsx)(`input`,{id:`onboarding-email-prefix`,value:h,onChange:e=>g(e.target.value.toLowerCase().trim()),disabled:E||w,readOnly:w,placeholder:i(`domainStep.emailUsernamePlaceholder`),className:`${$e} w-24`})]}),(0,J.jsx)(`span`,{className:`flex h-8 items-center text-[var(--content-secondary)]`,children:`@`}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,J.jsx)(`label`,{htmlFor:`onboarding-email-handle`,className:et,children:i(`domainStep.handleLabel`)}),(0,J.jsx)(`input`,{id:`onboarding-email-handle`,value:p,onChange:e=>{m(e.target.value.toLowerCase().trim()),y&&b(null)},disabled:E||w,readOnly:w,autoFocus:!0,placeholder:i(`domainStep.subdomainExamplePlaceholder`),"aria-invalid":!!y,className:`${$e} w-full min-w-0`})]}),(0,J.jsxs)(`span`,{className:`flex h-8 shrink-0 items-center text-[14px] text-[var(--content-tertiary)]`,children:[`.`,c]})]}),y&&(0,J.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:y}),w&&(0,J.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`domainStep.domainLockedMessage`)})]}),t&&!w&&(0,J.jsx)(H,{tone:`neutral`,children:i(`domainStep.machineBusyNotice`)}),!w&&(0,J.jsx)(H,{tone:`info`,className:`border-transparent bg-[var(--surface-active)]`,children:(0,J.jsx)(`span`,{className:`font-medium text-[var(--content-tertiary)]`,children:i(`domainStep.handleImmutableNotice`)})}),x?(0,J.jsx)(H,{tone:`success`,children:i(`domainStep.domainSetRedirecting`)}):null]}),(0,J.jsx)(V.Footer,{className:`items-center pt-6`,children:w?(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-domain-continue`,onClick:e,children:i(`domainStep.continue`)}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(T,{variant:`outlined`,"data-testid":`onboarding-domain-skip`,disabled:E,onClick:()=>{E||C.mutate({body:{skipped:!0}},{onSuccess:e,onError:()=>e()})},children:i(`domainStep.skip`)}),(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-domain-set`,disabled:!p||E||t,onClick:()=>{E||t||!p||C.mutate({body:{subdomain:p,...h?{email_username:h}:{}}},{onSuccess:()=>{b(null),S(!0),s.invalidateQueries({queryKey:L()}),s.invalidateQueries({queryKey:ce({path:{assistant_id:u??``}})}),s.invalidateQueries({queryKey:he()})},onError:e=>{b(Qe(e,i(`domainStep.registerSubdomainFailed`)))}})},children:i(`domainStep.next`)})]})})]})}function nt({onGoToBilling:e,direction:t}){let{t:n}=o(`settings`);return(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(Ie,{icon:f}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(E,{variant:`title-small`,as:`h1`,children:n(`errorStates.fetchErrorTitle`)}),(0,J.jsx)(E,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:Z(t).fetchErrorBody})]}),(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-go-to-billing`,onClick:e,children:n(`errorStates.goToBilling`)})]})}function rt(e){let{targets:t,fromSnapshot:n,machineFloor:r,credits:i}=e,a=[];return t.machineSize==null?r!=null&&n.machineSize!=null&&n.machineSize!==r&&a.push({key:`machine`,label:`Machine`,from:W[n.machineSize],to:W[r]}):n.machineSize!==t.machineSize&&a.push({key:`machine`,label:`Machine`,from:n.machineSize==null?void 0:W[n.machineSize],to:W[t.machineSize]}),t.storageGib!=null&&(n.storageGib==null||t.storageGib>n.storageGib)&&a.push({key:`storage`,label:`Storage`,from:n.storageGib==null?void 0:`${n.storageGib} GB`,to:`${t.storageGib} GB`}),i!=null&&a.push({key:`credits`,label:i.label??`Credits`,from:i.from,to:i.to}),a}var it=60,at=it*2;function ot({imageUrl:e,animateIn:t=!0}){return(0,J.jsxs)(`div`,{"aria-hidden":!0,"data-testid":`takeover-backdrop`,className:`pointer-events-none absolute inset-0 overflow-hidden${t?` provision-avatar-reveal`:``}`,children:[(0,J.jsx)(`img`,{src:e,alt:``,decoding:`async`,draggable:!1,className:`absolute left-1/2 top-1/2 max-w-none -translate-x-1/2 -translate-y-1/2 object-cover object-center`,style:{filter:`blur(${it}px)`,width:`calc(100% + ${at*2}px)`,height:`calc(100% + ${at*2}px)`}}),(0,J.jsx)(`div`,{className:`absolute inset-0 bg-black/55`})]})}function st(e,t){if(t!=null)return e?.credit_tiers?.find(e=>e.tier===t)}function ct(e){let t=e?.match(/^credits_(\d+)$/)?.[1];return t==null?null:Number(t)}function lt(e){let t=N(),{data:n}=r({...se(),enabled:t&&e});return n?.plans.find(e=>e.id===`pro`)}function ut(e,t){return t==null?0:st(e,t)?.credits_usd??ct(t)}function dt(e,t){return t==null?null:st(e,t)?.label}function ft(e){let t=lt(e!=null);if(e==null||t==null)return null;let n,r;if(e.kind===`package`){let i=t.packages.find(t=>t.key===e.packageKey),a=st(t,i?.credit_tier);n=i?.credits_usd??a?.credits_usd,r=i?.usage_label??a?.label??void 0}else{let i=st(t,e.creditTier);n=i?.credits_usd,r=i?.label}return n==null?null:{fromLabel:null,toLabel:r}}function pt(e){let t=lt(e!=null);return e==null||ut(t,e.fromTier)==null||ut(t,e.toTier)==null?null:{fromLabel:dt(t,e.fromTier),toLabel:dt(t,e.toTier)}}function mt(e){let t=I.use.activeAssistantId(),n=e===void 0?t:e,{components:r,traits:i,customImageUrl:a,isLoading:o}=O(n),s=(0,q.useMemo)(()=>M(),[ae()]),c=s!=null&&D(s)?s:null,l=n!=null&&!o,u=c!=null&&(n==null||n===c.assistantId),d=u&&!(l&&(r!=null||i!=null||a!=null))?c:null,f=d?d.components:r,p=d?d.traits:i,m=d?null:a,h=l||u,g=f?f.colors:de,_=ge(f,p)??(m?null:g?.[0]?.hex??null);return{tintHex:h&&_?A(_):P,backdropImageUrl:h?m:null,ready:h,avatar:{components:f,traits:p,customImageUrl:m}}}function ht(e,t){let[n,r]=(0,q.useState)(e),i=(0,q.useRef)(0);return(0,q.useEffect)(()=>{i.current=performance.now()},[]),(0,q.useEffect)(()=>{if(t<=0||e===n)return;let a=t-(performance.now()-i.current);if(a<=0){i.current=performance.now(),r(e);return}let o=setTimeout(()=>{i.current=performance.now(),r(e)},a);return()=>clearTimeout(o)},[e,n,t]),t<=0?e:n}var gt=`--takeover-surface`,_t=`var(${gt},${P})`,vt=`color-mix(in srgb, var(--content-emphasised) 10%, transparent)`,yt=240,bt=1.414,xt=[{minHeight:680,size:yt},{minHeight:600,size:184}],St=132;function Ct(e){for(let t of xt)if(e>=t.minHeight)return t.size;return St}function wt(){let[e,t]=(0,q.useState)(()=>Ct(typeof window>`u`?1/0:window.innerHeight));return(0,q.useEffect)(()=>{let e=()=>t(Ct(window.innerHeight));return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[]),e}var Tt={machine:h,storage:S,credits:m},Et={idle:``,working:` is-working`,settling:` is-settling`,stalled:` is-stalled`,grown:` is-evolved`};function Dt(e,t){return e===`DONE`||e===`NOT_APPLICABLE`?`grown`:e===`STALLED`?`stalled`:e===`WAITING`||e===`RESIZING`?t?`settling`:`working`:`idle`}function Ot({assistantId:e,mode:t,downsizing:n=!1}){let{avatar:r,ready:i}=mt(e),a=k(),o=wt(),s=t===`working`||t===`settling`;return(0,J.jsxs)(`div`,{"aria-hidden":!0,className:`provision-avatar-evolve relative z-10 flex flex-col items-center${Et[i?t:`idle`]}${n?` is-downsizing`:``}`,style:{"--provision-avatar-size":`${o}px`,"--provision-avatar-growth":bt},children:[(0,J.jsxs)(`div`,{className:`provision-avatar-stage`,children:[(0,J.jsx)(`div`,{"data-testid":`provision-avatar-placeholder`,className:`provision-avatar-placeholder${i?` is-resolved`:``}`}),(0,J.jsx)(`div`,{className:`provision-avatar-layer`,children:(0,J.jsx)(`div`,{className:`provision-avatar-current`,children:(0,J.jsx)(`div`,{className:`provision-avatar-strain`,children:i&&(0,J.jsx)(`div`,{className:`provision-avatar-reveal`,children:(0,J.jsx)(ee,{components:r.components??a,traits:r.traits,customImageUrl:r.customImageUrl,size:o,isAssistantBusy:s})})})})})]}),(0,J.jsx)(`div`,{className:`provision-avatar-shadow`})]})}function kt({status:e,caption:t}){return(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-1.5`,children:[(0,J.jsx)(`h1`,{className:`text-[var(--content-emphasised)]`,style:Le,children:e}),t&&(0,J.jsx)(E,{variant:`body-medium-lighter`,as:`p`,className:`max-w-sm text-[var(--content-secondary)]`,children:t})]})}function At({icon:e,label:t,from:n,to:r,done:i=!1,pending:a=!1,testId:s}){let{t:c}=o(`settings`),l=null;return i?l=c(`provisioningState.statusComplete`):a&&(l=c(`provisioningState.statusPending`)),(0,J.jsxs)(`div`,{"data-testid":s,className:`flex min-w-0 flex-auto items-center gap-2 rounded-lg px-2 py-1.5${a?` opacity-70`:``}`,style:{backgroundColor:vt},children:[(0,J.jsx)(`span`,{className:`hidden h-6 w-6 shrink-0 items-center justify-center min-[420px]:flex`,children:(0,J.jsx)(e,{className:`h-3.5 w-3.5 text-[var(--content-tertiary)]`,"aria-hidden":`true`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1 text-left wrap-anywhere`,children:[(0,J.jsx)(`span`,{className:`text-[12px] font-medium leading-tight text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5 text-[14px] font-medium leading-[18px] text-[var(--content-emphasised)]`,children:[n&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`span`,{children:n}),(0,J.jsx)(`span`,{className:`sr-only`,children:c(`provisioningState.srOnlyTo`)}),(0,J.jsx)(g,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":`true`})]}),(0,J.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,J.jsx)(`span`,{children:r}),i?(0,J.jsx)(d,{"data-testid":`chip-check`,className:`h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`,"aria-hidden":`true`}):a&&(0,J.jsx)(y,{"data-testid":`chip-spinner`,className:`h-3.5 w-3.5 shrink-0 animate-spin text-[var(--content-tertiary)] motion-reduce:animate-none`,"aria-hidden":`true`})]}),l&&(0,J.jsx)(`span`,{className:`sr-only`,children:l})]})]})]})}function jt({label:e}){return(0,J.jsx)(`span`,{className:`rounded-lg px-3 py-2 text-[14px] text-[var(--content-emphasised)]`,style:{backgroundColor:vt},children:e})}function Mt({children:e,wide:t=!1,testId:n}){return(0,J.jsx)(`div`,{"data-testid":n,className:`flex w-full ${t?`max-w-2xl`:`max-w-sm`} items-stretch justify-center gap-2`,children:e})}function Nt(e,t){return e===`credits`?!0:t?.[e]===!0}function Pt(e,t){if(e==null)return null;let n=t(`provisioningState.noExtraUsage`),r=e.toLabel===null?n:e.toLabel;return r==null?null:{label:t(`provisioningState.usageLabel`),from:e.fromLabel===null?n:e.fromLabel,to:r}}function Ft({intent:e,creditsChange:t,targets:n,fromSnapshot:r,machineFloor:i,landed:a,allDone:s=!1,creditsOnly:c=!1}){let{t:l}=o(`settings`),u=ft(e),d=pt(t),f=rt({targets:n,fromSnapshot:r,machineFloor:i,credits:Pt(u??d,l)}),p=c?f.filter(e=>e.key===`credits`):f,m=p.filter(e=>s||Nt(e.key,a)).map(e=>e.label).join(`, `),[h]=(0,q.useState)(m),g=m===h?``:l(`provisioningState.dimensionsComplete`,{dimensions:m});return p.length===0?null:(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Mt,{testId:`resource-chips`,wide:p.length>=3,children:p.map(e=>{let t=s||Nt(e.key,a);return(0,J.jsx)(At,{testId:`chip-${e.key}`,icon:Tt[e.key],label:e.label,from:e.from,to:e.to,done:t,pending:!t},e.key)})}),(0,J.jsx)(`p`,{"aria-live":`polite`,className:`sr-only`,"data-testid":`chip-announcement`,children:g})]})}function It({intent:e}){let{t}=o(`settings`),n=ft(e.kind===`custom`?e:null);if(e.kind===`package`)return(0,J.jsx)(Mt,{children:(0,J.jsx)(jt,{label:t(`provisioningState.packageChip`,{name:e.packageKey.charAt(0).toUpperCase()+e.packageKey.slice(1)})})});let r=[e.machineTier,e.storageTier,e.creditTier].filter(e=>e!=null).length;return(0,J.jsxs)(Mt,{wide:r>=3,children:[e.machineTier!=null&&(0,J.jsx)(At,{icon:h,label:t(`provisioningState.machineLabel`),to:Oe[e.machineTier]??e.machineTier}),e.storageTier!=null&&(0,J.jsx)(At,{icon:S,label:t(`provisioningState.storageLabel`),to:e.storageTier.toUpperCase()}),e.creditTier!=null&&n?.toLabel!=null&&(0,J.jsx)(jt,{label:n.toLabel})]})}function Lt({state:e,direction:t,softWaiting:n,intent:r,creditsChange:i,targets:a,fromSnapshot:s,machineFloor:c,landed:l,celebrating:u,onCelebrationEnd:d,assistantId:f,escapeAvailable:p,onEscape:m,onPhaseChange:h,kickError:g,confirm:_,dwellMs:v=Ke,phaseMinMs:y=900}){let{t:b}=o(`settings`),x=Z(t),S=(0,q.useRef)(d);(0,q.useEffect)(()=>{S.current=d},[d]);let C=ht(e,y),w=C===`DONE`||C===`NOT_APPLICABLE`,E=C===`RESIZING`?`WAITING`:C,D=(0,q.useRef)(h);(0,q.useEffect)(()=>{D.current=h},[h]),(0,q.useEffect)(()=>{D.current?.(C)},[C]);let{tintHex:O,backdropImageUrl:ee}=mt(f),k=u&&w;return(0,q.useEffect)(()=>{if(!k)return;let e=setTimeout(()=>S.current(),v);return()=>clearTimeout(e)},[k,v]),(0,J.jsxs)(`div`,{"data-theme":`dark`,className:`provision-surface-settle relative flex h-full min-h-[420px] w-full flex-col items-center [justify-content:safe_center] gap-10 px-6 py-10 text-center`,style:{[gt]:O,backgroundColor:_t},children:[ee&&(0,J.jsx)(ot,{imageUrl:ee}),(0,J.jsx)(Ot,{assistantId:f,mode:Dt(C,n),downsizing:t===`downgrade`}),(0,J.jsx)(`div`,{className:`relative z-10 flex min-h-[144px] w-full flex-col items-center gap-8 [animation:onboarding-step-in_420ms_ease-out] motion-reduce:[animation:none]`,children:te()},E)]});function A(e=b(`provisioningState.continueInBackground`)){return p?(0,J.jsx)(T,{variant:`ghost`,"data-testid":`provisioning-escape`,onClick:m,children:e}):null}function j({allDone:e=!1,creditsOnly:t=!1}={}){return(0,J.jsx)(Ft,{intent:r,creditsChange:i,targets:a,fromSnapshot:s,machineFloor:c,landed:l,allDone:e,creditsOnly:t})}function te(){if(C===`CONFIRMING`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:x.confirmingStatus,caption:b(`provisioningState.confirmingCaption`)}),r&&(0,J.jsx)(It,{intent:r}),A()]});if(C===`WAITING`||C===`RESIZING`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:x.waitingStatus,caption:b(n?`provisioningState.waitingCaptionLong`:`provisioningState.waitingCaptionShort`)}),j(),A()]});if(C===`DONE`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:b(`provisioningState.allDoneStatus`)}),j({allDone:!0})]});if(C===`NOT_APPLICABLE`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:b(`provisioningState.planReadyStatus`)}),j({allDone:!0,creditsOnly:!0})]});if(C===`STALLED`){let e=g!=null;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:e?x.snagStatus:b(`provisioningState.takingLongerStatus`),caption:e?Qe(g,x.snagCaption,t):b(`provisioningState.stalledCaption`)}),j(),e?A(b(`provisioningState.retryInBackground`)):A()]})}return C===`CONFIRM_TIMEOUT`?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:x.confirmTimeoutStatus,caption:x.confirmTimeoutCaption}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2 pt-1`,children:[(0,J.jsx)(T,{variant:`outlined`,"data-testid":`onboarding-go-to-billing`,onClick:_.onGoToBilling,children:b(`provisioningState.goToBilling`)}),(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-retry`,onClick:_.onRetry,children:b(`provisioningState.tryAgain`)})]})]}):null}}function Rt(e){let{planId:t,targets:n,actuals:r,initialActuals:i,resizeOperationInFlight:a,sawOperation:o,msSinceWatchStart:s,confirmExpired:c,serverVerdict:l=null,statusObservedSinceTargetsMet:u=!0,targetsProveNoop:d=!0}=e;if(t!==`pro`)return{state:c?`CONFIRM_TIMEOUT`:`CONFIRMING`,softWaiting:!1};let f=o||a,p=l===`started`||l===`in_progress`,m=o||d&&u;if(!a){let e=p?m:f||l===`already_done`||i!=null&&!je(n,i);if(je(n,r)){if(e)return{state:`DONE`,softWaiting:!1};if(!p&&(d||l===`not_applicable`))return{state:`NOT_APPLICABLE`,softWaiting:!1}}else{if(l===`already_done`)return{state:`DONE`,softWaiting:!1};if(l===`not_applicable`)return{state:`NOT_APPLICABLE`,softWaiting:!1}}}return s!=null&&s>=9e4?{state:`STALLED`,softWaiting:!1}:f||l===`started`||l===`in_progress`?{state:`RESIZING`,softWaiting:!1}:{state:`WAITING`,softWaiting:s!=null&&s>=3e4}}var zt=2e3,Bt=1e3,Vt=[`DONE`,`NOT_APPLICABLE`,`CONFIRM_TIMEOUT`],Ht={assistantId:null,machine:null,storage:null};function Ut({open:e,canLowerResources:t=!1,verdictRecheckMs:o=Je}){let c=a(),l=N(),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(0),[m,h]=(0,q.useState)(null),[g,_]=(0,q.useState)(null),[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(null),[T,E]=(0,q.useState)(null),[D,O]=(0,q.useState)(Ht),[ee,k]=(0,q.useState)(null),[A,j]=(0,q.useState)(!1),te=(0,q.useRef)(!1),ne=(0,q.useRef)(!1),M=(0,q.useRef)(0),[re,ae]=(0,q.useState)(!1),[oe,se]=(0,q.useState)(null),[P,ce]=(0,q.useState)(null),[le,de]=(0,q.useState)(null),[fe,F]=(0,q.useState)(()=>Date.now()),[pe,I]=(0,q.useState)(!0);(0,q.useEffect)(()=>{e||(d(!1),p(0),h(null),_(null),y(null),ae(!1),se(null),ce(null),de(null),I(!0),x(null),C(null),E(null),O(Ht),k(null),j(!1),te.current=!1,ne.current=!1,M.current+=1)},[e]),(0,q.useEffect)(()=>{e&&(h(Date.now()),c.invalidateQueries({queryKey:be()}),c.invalidateQueries({queryKey:he()}))},[e,c]);let L=g!=null,me=r({...ue(),refetchInterval:e=>e.state.data?.plan_id===`pro`||u?!1:We,refetchIntervalInBackground:!1,enabled:e&&l&&!L}),R=(m!=null&&me.dataUpdatedAt>=m?me.data?.plan_id:null)??null;(0,q.useEffect)(()=>{if(!e||L||R!==`pro`)return;let t=Date.now();_(t),F(t)},[e,L,R]),(0,q.useEffect)(()=>{if(!e||L)return;let t=setTimeout(()=>d(!0),Ge);return()=>clearTimeout(t)},[e,L,f]);let ge=(0,q.useCallback)(()=>{d(!1),p(e=>e+1),ie.getState().fetchOrganizations(),c.invalidateQueries({queryKey:be()})},[c]),_e=(0,q.useCallback)(()=>{let e=Date.now();y(e),F(e)},[]),{mutate:ye}=n(ve()),B=(0,q.useCallback)(e=>{let t=M.current;ye({},{onSuccess:n=>{t===M.current&&(k(null),Ne(n)?ne.current?k({error:n.reason??`no_active_pro`}):(ne.current=!0,j(!0),e===`escape`&&_e()):(x(n.state),e===`escape`&&_e()))},onError:e=>{t===M.current&&k(e)}})},[ye,_e]);(0,q.useEffect)(()=>{!e||!l||!L||te.current||(te.current=!0,B(`auto`))},[e,l,L,B]),(0,q.useEffect)(()=>{if(!A)return;let e=M.current,t=setTimeout(()=>{j(!1),e===M.current&&B(`auto`)},qe);return()=>clearTimeout(t)},[A,B]);let xe=(0,q.useCallback)(()=>B(`escape`),[B]),V=r({...z(),enabled:e&&l&&L}),Ce=pe?zt:!1,we=r({...w(),enabled:e&&l&&L,refetchInterval:e=>e.state.data?.id==null?Ce:!1,retry:!1}),H=L&&m!=null&&V.dataUpdatedAt>=m,Te=H&&!V.isPending&&!V.isFetching,U=(H?V.data?.primary_assistant_id:null)??(V.isPending?null:we.data?.id??null),W=r({...Se({path:{id:U??`unresolved`}}),enabled:e&&l&&L&&U!=null,refetchInterval:Ce,retry:!1}),Oe=Ee({path:{id:U??`unresolved`}}),ke=r({...Oe,enabled:e&&l&&L&&U!=null,refetchInterval:Ce,retry:!1}),K=(0,q.useRef)(0),[J,Ie]=(0,q.useState)(0),Le=i(Oe.queryKey);(0,q.useEffect)(()=>c.getQueryCache().subscribe(t=>{if(!(t.type!==`updated`||t.query.queryHash!==Le)){if(t.action.type===`fetch`)K.current+=1;else if(t.action.type===`success`&&!t.action.manual){let n=K.current,r=e&&Pe(t.action.data);s.schedule(()=>{Ie(n),r&&(ae(!0),se(U))})}}}),[c,Le,e,U]);let Re=Pe(ke.data),ze=oe===U,Y=V.data,X=(0,q.useMemo)(()=>Y?{machineSize:De(Y.max_machine_tier),storageGib:Y.selected_storage_gib??null}:null,[Y]),Be=Y!=null&&Y.max_machine_tier==null?Ae:null,Ve=Y?Y.domain_setup_available&&Y.primary_assistant_id!=null:void 0,He=W.data,Z=(0,q.useMemo)(()=>He?{machineSize:He.machine_size??null,storageGib:He.provisioned_storage_gib??null}:null,[He]),Q=le===U,$=(0,q.useMemo)(()=>{let e=Fe(X,Z),t=X?.machineSize??Be;if(t==null)return e;let n=Z?.machineSize??null;if(n==null)return{...e,machine:!1};let r=(Q?P?.machineSize:null)??n,i=G(t)<G(r);return{...e,machine:i?G(n)<=G(t):G(n)>=G(t)}},[X,Z,P,Q,Be]),Ue=je(X,Z),Ke=T===U;(0,q.useEffect)(()=>{e&&(Ue?(C(e=>e!=null&&Ke?e:Date.now()),E(U)):(C(null),E(null)))},[e,Ue,U,Ke]);let Ye=D.assistantId===U;(0,q.useEffect)(()=>{if(!e)return;let t=K.current;O(e=>{let n=e.assistantId===U?e:Ht,r=$.machine?n.machine??t:null,i=$.storage?n.storage??t:null;return e.assistantId===U&&e.machine===r&&e.storage===i?e:{assistantId:U,machine:r,storage:i}})},[e,$,U]);let Xe=(0,q.useMemo)(()=>{let e=Me(ke.data),t=e=>e!=null&&Ye&&J>e;return{machine:$.machine&&!e.machine&&t(D.machine),storage:$.storage&&!e.storage&&t(D.storage)}},[$,D,Ye,J,ke.data]);(0,q.useEffect)(()=>{!e||!Z||P!=null&&Q||(ce(Z),de(U))},[e,Z,U,P,Q]);let Ze=v??g,Qe=Ze==null?null:Math.max(0,fe-Ze),$e=!t,{state:et,softWaiting:tt}=Rt({planId:L?`pro`:R,targets:X,actuals:Z,initialActuals:Q?P:null,resizeOperationInFlight:Re,sawOperation:re&&ze,msSinceWatchStart:Qe,confirmExpired:u,serverVerdict:b,statusObservedSinceTargetsMet:S!=null&&Ke&&ke.dataUpdatedAt>S,targetsProveNoop:$e}),nt=Vt.includes(et),rt=e&&L&&!nt;(0,q.useEffect)(()=>{I(rt)},[rt]),(0,q.useEffect)(()=>{if(!e||!L||nt)return;let t=setInterval(()=>F(Date.now()),Bt);return()=>clearInterval(t)},[e,L,nt]);let it=!$e&&(b===`started`||b===`in_progress`)&&!(re&&ze);return(0,q.useEffect)(()=>{if(!e||!L||nt||!it)return;let t=setInterval(()=>B(`auto`),o);return()=>clearInterval(t)},[e,L,nt,it,o,B]),{state:et,softWaiting:tt,targets:X,actualsSnapshot:P,machineFloor:Be,landed:Xe,assistantId:U,domainStepAvailable:Ve,onboardingSettled:Te,confirmError:!L&&me.isError,targetsError:L&&V.isError&&(!Y||!H),escapeEligible:Qe!=null&&Qe>=6e4,retryConfirm:ge,kickProvisioning:xe,kickError:ee}}var Wt=200,Gt=380;function Kt(){return typeof window<`u`&&window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches===!0}var qt=e=>e===`WAITING`||e===`RESIZING`||e===`STALLED`,Jt=e=>e===`DONE`||e===`NOT_APPLICABLE`,Yt={machineSize:null,storageGib:null};function Xt({open:e,onClose:t,dwellMs:n,phaseMinMs:r,mode:i=`checkout`,resizeContext:s}){let{t:c}=o(`settings`),l=i===`resize`,u=a(),[d,f]=(0,q.useState)(`provisioning`),[p,m]=(0,q.useState)(`idle`),h=(0,q.useRef)([]),[g,_]=(0,q.useState)(null),[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(!1),w=l?s?.direction:void 0,T=Z(w),E=Ut({open:e,canLowerResources:l?s?.canLowerResources===!0:!1}),D=(0,q.useRef)(!1);(0,q.useEffect)(()=>{if(e){D.current=!0,_(l?null:Ce()),x(e=>e??Date.now());return}h.current.forEach(clearTimeout),h.current=[],f(`provisioning`),m(`idle`),y(null),x(null),C(!1),D.current&&(D.current=!1,re())},[e,l]),(0,q.useEffect)(()=>()=>{h.current.forEach(clearTimeout)},[]),(0,q.useEffect)(()=>{d===`complete`&&ne()},[d]);let O=qt(E.state),ee=Jt(v??E.state),{targets:k,assistantId:A,domainStepAvailable:j,onboardingSettled:te}=E,M=l?s?.fromSnapshot:void 0,ie=E.actualsSnapshot,ae={machineSize:M?.machineSize??ie?.machineSize??null,storageGib:M?.storageGib??ie?.storageGib??null},{tintHex:oe,backdropImageUrl:se}=mt(A),N=l&&j===!0,{domains:P,domainsError:le,domainsFetching:ue,domainsUpdatedAt:de,domainsErrorUpdatedAt:fe}=Ue(e&&N,A),pe=(P?.results.length??0)>0,I=(0,q.useRef)(null);(0,q.useEffect)(()=>{if(!e){I.current=null;return}!N||A==null||I.current!==A&&(I.current=A,u.invalidateQueries({queryKey:ce({path:{assistant_id:A}})}))},[e,N,A,u]);let L=!ue&&(b!=null&&de>=b||b!=null&&!!le&&fe>=b),[me,R]=(0,q.useState)(!1),he=te&&(!N||L);(0,q.useEffect)(()=>{if(!e){R(!1);return}he&&R(!0)},[e,he]);let ge=(0,q.useCallback)(()=>{let e=l?j===!0&&!pe?`domain`:`complete`:j===!1?`complete`:`domain`;if(Kt()){f(e);return}m(`covering`),h.current.push(setTimeout(()=>{f(e),m(`revealing`),h.current.push(setTimeout(()=>m(`idle`),Gt))},Wt))},[j,l,pe]),_e=(0,q.useCallback)(()=>{C(!0)},[]),ve=(0,q.useCallback)(()=>{E.kickProvisioning(),F.info(E.kickError==null?T.backgroundExitToast:T.backgroundRetryToast),C(!1),t()},[E,t,T]),ye=(0,q.useCallback)(()=>{C(!1)},[]),be=d===`provisioning`&&(E.confirmError||E.targetsError),z=d===`provisioning`&&!be,xe=z&&!ee,Se=`transition-[background-color] duration-300 ease-out${z?` bg-black p-0`:``}`,we=z?`[animation:fadeIn_0.45s_ease-out_both]`:p===`revealing`?`[animation:fadeInUp_0.42s_ease-out_0.12s_both]`:`[animation:fadeIn_0.25s_ease-out_both]`;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(V.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsxs)(V.Content,{size:`md`,hideCloseButton:d!==`complete`,dismissOnOverlayClick:!xe,onEscapeKeyDown:xe?e=>e.preventDefault():void 0,onInteractOutside:xe?e=>e.preventDefault():void 0,"data-theme":z?`dark`:void 0,overlayClassName:Se,className:z?`overflow-y-auto inset-0 max-w-none w-screen h-screen max-h-none rounded-none border-0`:`overflow-hidden`,style:{[gt]:oe},children:[(0,J.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col motion-reduce:[animation:none] ${we}`,children:H()},d),p!==`idle`&&(0,J.jsx)(`div`,{"aria-hidden":!0,"data-testid":`takeover-exit-sheet`,className:`pointer-events-none fixed inset-0 z-50 ${p===`covering`?`[animation:fadeIn_200ms_ease-in_both]`:`[animation:fadeIn_380ms_ease-out_both_reverse]`}`,style:{backgroundColor:_t},children:se&&(0,J.jsx)(ot,{imageUrl:se,animateIn:!1})})]})}),(0,J.jsx)(B,{open:S&&O,title:c(`billingOnboardingModal.backgroundConfirmTitle`),message:T.backgroundConfirmMessage,confirmLabel:c(`billingOnboardingModal.backgroundConfirmContinue`),cancelLabel:c(`billingOnboardingModal.backgroundConfirmKeepWaiting`),onConfirm:ve,onCancel:ye})]});function H(){return d===`provisioning`?E.confirmError||E.targetsError?(0,J.jsx)(nt,{onGoToBilling:t,direction:w}):(0,J.jsx)(Lt,{state:E.state,direction:w,softWaiting:E.softWaiting,intent:g,creditsChange:l?s?.credits:void 0,targets:k??Yt,fromSnapshot:ae,machineFloor:E.machineFloor,landed:E.landed,celebrating:me,onCelebrationEnd:ge,assistantId:A,escapeAvailable:O&&E.escapeEligible,onEscape:_e,onPhaseChange:y,kickError:E.kickError,confirm:{onRetry:E.retryConfirm,onGoToBilling:t},dwellMs:n,phaseMinMs:r}):d===`domain`?(0,J.jsx)(tt,{machineBusy:O,assistantId:A,onExit:()=>f(`complete`)}):(0,J.jsx)($,{assistantId:A,direction:w})}}function Zt(e){return e!=null&&!e.customized}function Qt(e){return Zt(e)?e.name:`Custom`}var $t=[`mighty`,`super`,`ultra`],en=[`free`,...$t];function tn(e){return en.indexOf(e)}function nn(e,t){if(e===null)return`upgrade`;let n=tn(e),r=tn(t);return n===-1||r===-1?`upgrade`:r===n?`current`:r<n?`downgrade`:`upgrade`}function rn(e,t){if(e.length===0)return null;let n=[...e].sort((e,t)=>$t.indexOf(e.key)-$t.indexOf(t.key));if(!t)return n[0];let r=n.findIndex(e=>e.key===t);return r===-1?n[0]:r>=n.length-1?null:n[r+1]}var an={free:{bodyShape:`ninja`,eyeStyle:`angry`,color:`yellow`},mighty:{bodyShape:`blob`,eyeStyle:`grumpy`,color:`green`},super:{bodyShape:`urchin`,eyeStyle:`goofy`,color:`teal`},ultra:{bodyShape:`sprout`,eyeStyle:`curious`,color:`orange`}};function on({tier:e,size:t=40}){let n=an[e]??an.free,r=k();return(0,J.jsx)(`div`,{"aria-hidden":!0,className:`inline-flex shrink-0`,children:r?(0,J.jsx)(we,{components:r,bodyShapeId:n.bodyShape,colorId:n.color,size:t}):(0,J.jsx)(`div`,{style:{width:t,height:t}})})}var sn={free:{tagline:`Get to know your assistant.`,cta:`Start Free`,priceCaption:`Forever`},mighty:{tagline:`More capacity for consistent use.`,cta:`Power Up`,priceCaption:`Billed monthly`,recommended:!0},super:{tagline:`Do more, think less about the how.`,cta:`Go Super`,priceCaption:`Billed monthly`,extraFeatures:[`Assistant email and subdomain`]},ultra:{tagline:`Your second brain, running full speed.`,cta:`Unleash Ultra`,priceCaption:`Billed monthly`,extraFeatures:[`Assistant email and subdomain`]}};function cn(e){return sn[e]}function ln(e){return`Downgrade to ${e}`}function un(e){let t=e/100;return Number.isInteger(t)?`$${t}`:`$${t.toFixed(2)}`}function dn(e){return`${un(e)}/mo`}function fn(e){return`${un(e)}/month`}function pn(e){return`${e>0?`+`:`−`}${un(Math.abs(e))}/mo`}function mn(e){return`${e} GB storage`}function hn(e){return`${un(e*100)} of bundled credits`}var gn=`Small`;function _n(e){return e?.machine_size?W[e.machine_size]??e.machine_size:gn}function vn(e,t){let n=cn(e.key)?.extraFeatures??[];return[{icon:K,label:`${_n(e)} Machine`},{icon:S,label:`${e.storage_gib} GB Storage`},{icon:m,label:t,ownRow:!0},...n.map(e=>({icon:p,label:e,ownRow:!0}))]}function yn(){return[{icon:K,label:`${gn} Machine`},{icon:S,label:`4 GB Storage`},{icon:m,label:`Pay as you go credits`,ownRow:!0}]}function bn(e,t=[]){let n=e?.credits_usd??0,r=e?.storage_gib??4,i=ke[e?.machine_size??`small`];return[`${_n(e)} machine${i?` (${i})`:``}`,mn(r),e?.usage_label??hn(n),...t]}var xn={machine:`Configurable machine size`,storage:`Configurable storage`,credits:`Pay-as-you-go and bundled credits`};function Sn(e,t){let n=[`${e.machineTier?Oe[e.machineTier]??t.machine_tiers.find(t=>t.tier===e.machineTier)?.label??e.machineTier:gn} Machine`];if(e.storageGib!=null&&n.push(`${e.storageGib} GB`),e.creditTier!=null){let r=st(t,e.creditTier)?.label,i=ct(e.creditTier);n.push(r??(i==null?`Credit bundle`:`${i} credits/mo`))}return n}function Cn(e,t){let n=new Set([xn.machine]);return e.storageGib!=null&&n.add(xn.storage),e.creditTier!=null&&n.add(xn.credits),[...Sn(e,t),...t.included_features.filter(e=>!n.has(e))]}function wn(e){return e.disabled===!0}function Tn({machineTiers:e,storageTiers:t,selectedMachineTier:n,selectedStorageTier:r,onMachineTierChange:i,onStorageTierChange:a,currentMachinePriceCents:s,currentStoragePriceCents:c}){let{t:l}=o(`settings`),u=(0,q.useMemo)(()=>e.map(e=>{let t=Oe[e.tier]??e.label,n=s==null?l(`tierPicker.priceAddon`,{price:dn(e.price_cents)}):e.price_cents===s?l(`tierPicker.priceCurrent`,{price:dn(e.price_cents)}):pn(e.price_cents-s);return{value:e.tier,label:l(`tierPicker.machineOption`,{label:t,priceLabel:n}),disabled:wn(e)}}),[e,s,l]),d=(0,q.useMemo)(()=>t.map(e=>{let t=c==null?l(`tierPicker.priceAddon`,{price:dn(e.price_cents)}):e.price_cents===c?l(`tierPicker.priceCurrent`,{price:dn(e.price_cents)}):pn(e.price_cents-c);return{value:e.tier,label:l(`tierPicker.storageOption`,{gib:e.storage_gib,priceLabel:t}),disabled:wn(e)}}),[t,c,l]);return(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(E,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:l(`tierPicker.machineLabel`)}),(0,J.jsx)(`span`,{title:l(`tierPicker.machineTooltip`),children:(0,J.jsx)(v,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(j,{"aria-label":l(`tierPicker.machineAriaLabel`),placeholder:l(`tierPicker.machinePlaceholder`),value:n??``,onChange:i,options:u})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(E,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:l(`tierPicker.storageLabel`)}),(0,J.jsx)(`span`,{title:l(`tierPicker.storageTooltip`),children:(0,J.jsx)(v,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(j,{"aria-label":l(`tierPicker.storageAriaLabel`),placeholder:l(`tierPicker.storagePlaceholder`),value:r??``,onChange:a,options:d})]})]})}var En=new Set([`active`,`trialing`,`past_due`]);function Dn(e){return e.plan_id!==`base`&&e.cancel_at_period_end!==!0&&!e.cancel_at&&e.status!=null&&En.has(e.status)}function On(e){return e?.status!=null&&En.has(e.status)}var kn=[`target_plan_id`,`confirm`,`machine_tier`,`storage_tier`,`credit_tier`,`package`,`non_field_errors`];function An(e,t){if(e&&typeof e==`object`){for(let t of kn)if(t in e){let n=e[t];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(`detail`in e&&typeof e.detail==`string`)return e.detail}return t}function jn(e,t){let n=e.filter(e=>!wn(e));return t!==null&&n.some(e=>e.tier===t)?t:n[0]?.tier??null}function Mn(e,t,n){return t===void 0?n:t!==null&&(t===n||e.some(e=>e.tier===t))?t:null}function Nn(e){return e.length?Math.min(...e.map(e=>e.price_cents)):0}function Pn(){let e=a();return async t=>{try{let n=await t.mutateAsync();return await e.invalidateQueries({queryKey:be()}),t.onSuccess(n),n}catch(e){return F.error(An(e,t.errorFallback()),{id:t.errorToastId}),null}}}var Fn=`billing-portal-return-snapshot`;function In(e){try{sessionStorage.removeItem(Fn),sessionStorage.setItem(Fn,JSON.stringify(e))}catch{}}function Ln(){if(typeof sessionStorage>`u`)return null;try{let e=sessionStorage.getItem(Fn);if(!e)return null;let t=JSON.parse(e);return typeof t.cancel_at_period_end!=`boolean`||typeof t.plan_id!=`string`?null:{cancel_at_period_end:t.cancel_at_period_end,cancel_at:t.cancel_at??null,plan_id:t.plan_id}}catch{return null}}function Rn(){try{sessionStorage.removeItem(Fn)}catch{}}function zn(e){return e?{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at??null,plan_id:e.plan_id}:null}function Bn(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleDateString(void 0,{year:`numeric`,month:`long`,day:`numeric`})}function Vn(e){return e?e.cancel_at??e.current_period_end??null:null}function Hn(e){let n=a();return(0,q.useEffect)(()=>ye(()=>{n.invalidateQueries(ue())}),[n]),fe({onSuccess:t=>{e&&In(e),le(t.portal_url)},onError:()=>{F.error(t(`settings:useBillingPortalSession.openError`),{id:`billing-portal-session-error`})}})}function Un(){let e=Te(),n=Pn();return{cancelSubscription:()=>n({mutateAsync:()=>e.mutateAsync({}),onSuccess:e=>{let n=e.cancel_at?Bn(e.cancel_at):t(`settings:useCancelSubscription.endOfBillingPeriod`);F.info(t(`settings:useCancelSubscription.canceledToast`,{date:n}),{id:`subscription-cancel`})},errorToastId:`subscription-cancel-error`,errorFallback:()=>t(`settings:useCancelSubscription.cancelFailedToast`)}),isPending:e.isPending}}function Wn(e){return Promise.all([e.invalidateQueries({queryKey:be()}),e.invalidateQueries({queryKey:oe()}),e.invalidateQueries({queryKey:he()}),e.invalidateQueries({queryKey:_e()})])}function Gn(){let e=a(),t=n(C());return{changePackage:async n=>{try{let r=await t.mutateAsync({body:{package:n}});return await Wn(e),r}catch(e){return F.error(An(e,`Failed to change your plan. Please try again.`)),null}},isPending:t.isPending}}function Kn({className:e,"data-testid":t,children:n}){return(0,J.jsx)(`div`,{"aria-hidden":!0,"data-testid":t,className:me(`flex size-[52px] shrink-0 items-center justify-center rounded-xl`,e),children:n})}var qn=32;function Jn(){let{ready:e,avatar:t}=mt();return(0,J.jsx)(Kn,{"data-testid":`assistant-avatar-tile`,className:`bg-[var(--surface-active)]`,children:e?(0,J.jsx)(ee,{components:t.components,traits:t.traits,customImageUrl:t.customImageUrl,size:qn}):null})}var Yn=`Billed monthly · prorated difference charged today`,Xn=`Billed monthly · prorated difference charged today or credited next invoice`,Zn=`Billed monthly · prorated credit on your next invoice`,Qn=`Your machine downsizes now and your storage stays. No refund.`,$n=`Continue`,er=`The plan includes`,tr=`Your plan will include`;function nr(e,t,n){let r=n?cn(n)?.tagline??``:``;switch(e){case`downgrade`:return{title:ln(t),subtitle:``,priceCaption:Zn,checklistHeading:tr,note:Qn,confirmLabel:ln(t),destructive:!0};case`switch`:return{title:`Switch to ${t}`,subtitle:r,priceCaption:Xn,checklistHeading:er,note:``,confirmLabel:$n,destructive:!1};default:return{title:`Upgrade to ${t}`,subtitle:r,priceCaption:Yn,checklistHeading:er,note:``,confirmLabel:$n,destructive:!1}}}function rr({open:e,relation:t,packageName:n,targetPackage:r,pending:i,onCancel:a,onConfirm:s}){let{t:c}=o(`settings`),l=(0,q.useRef)(null),u=(0,q.useId)(),d=nr(t,n,r?.key??null),f=r?{price:dn(r.total_price_cents),highlights:bn(r,cn(r.key)?.extraFeatures??[])}:null,p=d.subtitle,m=d.note?{"aria-describedby":u}:p?{}:{"aria-describedby":void 0};return(0,J.jsx)(V.Root,{open:e,onOpenChange:e=>{!e&&!i&&a()},children:(0,J.jsxs)(V.Content,{size:`sm`,hideCloseButton:!0,className:`gap-4 p-4 max-w-[421px]`,onOpenAutoFocus:e=>{e.preventDefault(),l.current?.focus()},...m,children:[(0,J.jsxs)(V.Header,{className:`flex-row items-center gap-3 p-0 pb-2`,children:[d.destructive?(0,J.jsx)(Kn,{"data-testid":`package-switch-warning-tile`,className:`bg-[var(--system-negative-weak)]`,children:(0,J.jsx)(b,{className:`size-6 text-[var(--system-negative-strong)]`})}):(0,J.jsx)(Jn,{}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,J.jsx)(V.Title,{className:`text-title-small text-[var(--content-emphasised)] [&>span]:whitespace-normal`,children:d.title}),p?(0,J.jsx)(V.Description,{className:`mt-0 text-body-medium-default text-[var(--content-tertiary)]`,children:p}):null]})]}),f?(0,J.jsxs)(V.Body,{className:`flex flex-col gap-4 p-0`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,J.jsx)(E,{as:`p`,variant:`title-large`,className:`text-[var(--content-default)]`,children:f.price}),(0,J.jsx)(E,{as:`p`,variant:`label-medium-default`,className:`leading-[15px] text-[var(--content-tertiary)]`,children:d.priceCaption})]}),(0,J.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,J.jsx)(E,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:d.checklistHeading}),(0,J.jsx)(`ul`,{className:`flex flex-col gap-2`,children:f.highlights.map(e=>(0,J.jsxs)(`li`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(_,{className:`size-4 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,J.jsx)(E,{as:`span`,variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:e})]},e))})]}):null,d.note?(0,J.jsx)(E,{id:u,as:`p`,variant:`body-medium-default`,className:`text-[var(--content-secondary)]`,children:d.note}):null,(0,J.jsxs)(V.Footer,{className:`flex-col gap-4 p-0`,children:[(0,J.jsx)(T,{fullWidth:!0,variant:d.destructive?`danger`:`primary`,onClick:s,disabled:i,"data-testid":`confirm-package-switch-button`,children:d.confirmLabel}),(0,J.jsx)(T,{ref:l,fullWidth:!0,variant:`ghost`,onClick:a,disabled:i,children:c(`packageSwitchConfirmModal.cancel`)})]})]})})}function ir(){let e=a();(0,q.useEffect)(()=>ye(()=>{Wn(e)}),[e])}export{fn as A,Ue as B,Sn as C,pn as D,vn as E,Zt as F,K as H,rn as I,Qt as L,cn as M,on as N,un as O,$t as P,nn as R,Cn as S,_n as T,Q as V,Nn as _,Un as a,Tn as b,Bn as c,Hn as d,Pn as f,Dn as g,On as h,Wn as i,mn as j,dn as k,Vn as l,An as m,rr as n,zn as o,En as p,Gn as r,Rn as s,ir as t,Ln as u,Mn as v,yn as w,wn as x,jn as y,Xt as z};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{I as t,Jn as n,Zn as r,ar as i,er as a,j as o,rr as s}from"./vendor-CYfJo8gP.js";import{b as c,f as l,t as u}from"./react-DPM_L_aA.js";import{Br as d,Fr as f,Jt as p,ar as m,er as h,fi as g,jr as _,mn as v,tn as y,v as b,xi as x,xn as S}from"./icons-CSdHOix6.js";import{$c as C,$s as w,Dy as T,Ey as E,Hf as D,Kf as O,Kr as ee,Nr as k,Qr as A,Qv as j,Rp as te,Sg as ne,Uf as M,Vf as re,Vp as ie,Wf as ae,Xc as oe,Yc as se,Yf as N,Zr as P,ac as ce,ag as le,al as ue,ao as de,bl as fe,cy as F,dv as pe,h_ as I,hc as L,ia as me,ic as R,il as he,io as ge,ll as _e,nl as ve,og as ye,ol as be,rl as z,sy as B,tl as xe,uy as V,wc as Se,wg as Ce,wn as we,wy as H,xl as Te,yc as Ee}from"./index-b_IQShc9.js";import{t as U}from"./environment-store-DbxWXxoY.js";import{c as De,i as W,l as G,n as Oe,r as ke,t as Ae}from"./machine-sizes-CcBnk4Jk.js";import{a as je,i as Me,n as Ne,r as Pe,t as Fe}from"./provisioning-targets-BdvRsGBC.js";var K=x(`computer`,[[`rect`,{width:`14`,height:`8`,x:`5`,y:`2`,rx:`2`,key:`wc9tft`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,key:`w68u3i`}],[`path`,{d:`M6 18h2`,key:`rwmk9e`}],[`path`,{d:`M12 18h6`,key:`aqd8w3`}]]),q=e(c(),1),J=u();function Ie({icon:e}){return(0,J.jsx)(`span`,{className:`flex h-11 w-11 items-center justify-center rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-negative-strong) 12%, transparent)`},children:(0,J.jsx)(e,{className:`h-5 w-5`,style:{color:`var(--system-negative-strong)`},"aria-hidden":`true`})})}var Le={fontFamily:`var(--font-serif)`,fontSize:`32px`,fontWeight:400,lineHeight:1.2,letterSpacing:`0.64px`};function Re({title:e,subtitle:t}){return(0,J.jsxs)(`header`,{className:`flex flex-col items-center gap-2 pt-12 text-center`,children:[(0,J.jsx)(`h2`,{className:`text-[var(--content-emphasised)]`,style:Le,children:e}),t&&(0,J.jsx)(`p`,{className:`text-[14px] font-normal text-[var(--content-secondary)]`,children:t})]})}var ze=[{bodyShape:`star`,eyeStyle:`curious`,color:`yellow`,size:103,position:`-left-[28px] -top-[33px]`,rotate:180},{bodyShape:`star`,eyeStyle:`curious`,color:`orange`,size:109,position:`left-[63%] -top-[62px] -translate-x-1/2`,rotate:-8},{bodyShape:`blob`,eyeStyle:`grumpy`,color:`green`,size:76,position:`-right-[25px] top-[60px]`,rotate:1},{bodyShape:`stack`,eyeStyle:`gentle`,color:`purple`,size:110,position:`-left-[39px] top-[74%]`,rotate:0},{bodyShape:`urchin`,eyeStyle:`goofy`,color:`pink`,size:137,position:`-right-[42px] -bottom-[40px]`,rotate:180},{bodyShape:`sprout`,eyeStyle:`curious`,color:`orange`,size:72,position:`left-[37%] -bottom-[22px] -translate-x-1/2`,rotate:0}],Y=[{bodyShape:`star`,eyeStyle:`curious`,color:`yellow`,size:103,position:`-left-[28px] -top-[33px]`,rotate:180},{bodyShape:`star`,eyeStyle:`curious`,color:`orange`,size:109,position:`left-[63%] -top-[62px] -translate-x-1/2`,rotate:-8},{bodyShape:`blob`,eyeStyle:`grumpy`,color:`green`,size:76,position:`-right-[25px] top-[60px]`,rotate:1}];function X({variant:e=`full`}){let t=k();return t?(0,J.jsx)(`div`,{"aria-hidden":`true`,"data-testid":`creature-corners`,className:`pointer-events-none absolute inset-0 select-none`,children:(e===`top`?Y:ze).map((e,n)=>(0,J.jsx)(`span`,{className:`absolute ${e.position}`,style:{rotate:`${e.rotate}deg`},children:(0,J.jsx)(we,{components:t,bodyShapeId:e.bodyShape,eyeStyleId:e.eyeStyle,colorId:e.color,size:e.size})},n))}):null}var Be={waitingStatus:`Upgrading your assistant…`,snagStatus:`We hit a snag upgrading your assistant`,snagCaption:`Retry in the background and we'll keep working on your upgrade.`,confirmingStatus:`Confirming your upgrade…`,confirmTimeoutStatus:`Still confirming your upgrade`,confirmTimeoutCaption:`Your payment went through safely. This can take a minute.`,backgroundConfirmMessage:`Your assistant is still upgrading. Chatting won't be available until it finishes. You can keep waiting here, or continue and we'll let you know when it's ready.`,backgroundExitToast:`Your upgrade continues in the background.`,backgroundRetryToast:`We'll retry your upgrade in the background.`,completeSubtitle:`Enjoy the new found power.`,fetchErrorBody:`We hit a problem checking your subscription. Your upgrade may still be processing. Return to billing to refresh.`},Ve={waitingStatus:`Updating your assistant…`,snagStatus:`We hit a snag updating your assistant`,snagCaption:`Retry in the background and we'll keep working on your plan change.`,confirmingStatus:`Confirming your plan change…`,confirmTimeoutStatus:`Still confirming your plan change`,confirmTimeoutCaption:`Your plan change was submitted. This can take a minute.`,backgroundConfirmMessage:`Your assistant is still updating. Chatting won't be available until it finishes. You can keep waiting here, or continue and we'll let you know when it's ready.`,backgroundExitToast:`Your plan change continues in the background.`,backgroundRetryToast:`We'll retry your plan change in the background.`,completeSubtitle:`Your plan changes are live.`,fetchErrorBody:`We hit a problem checking your subscription. Your plan change may still be processing. Return to billing to refresh.`},He={upgrade:Be,downgrade:Ve,change:Ve};function Z(e=`upgrade`){return He[e]}function Q(e,t=!0){let{data:n}=r({...w(),enabled:t&&e==null}),{data:i}=r({...Se({path:{id:e??``}}),enabled:t&&e!=null});return e==null?n:i}function $({assistantId:e,direction:t}){let n=l(),{t:r}=o(`settings`),i=Q(e,N())?.name||r(`completeState.assistantFallbackName`);return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 pb-16 [animation:onboarding-step-in_350ms_ease-out] motion-reduce:[animation:none]`,children:[(0,J.jsx)(X,{variant:`full`}),(0,J.jsxs)(`div`,{className:`relative flex w-full flex-col items-center`,children:[(0,J.jsx)(Re,{title:r(`completeState.title`),subtitle:Z(t).completeSubtitle}),(0,J.jsx)(`div`,{className:`mt-10 flex w-full flex-col items-center gap-10`,children:(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-complete-return`,onClick:()=>{e!=null&&te(e),n(pe.assistant,{replace:!0})},children:r(`completeState.returnTo`,{assistantName:i})})})]})]})}function Ue(e=!0,t){let n=Q(t,e),i=t??n?.id,{data:a,isError:o,isFetching:s,dataUpdatedAt:c,errorUpdatedAt:l}=r({...R({path:{assistant_id:i??``}}),enabled:e&&!!i});return{assistant:n,assistantId:i,domains:a,domainsError:o,domainsFetching:s,domainsUpdatedAt:c,domainsErrorUpdatedAt:l}}var We=1e3,Ge=1e4,Ke=2500,qe=2e3,Je=1e4,Ye=[`machine_size`,`subdomain`,`non_field_errors`],Xe={subdomain_taken:`That subdomain is already taken. Try another.`,assistant_already_has_domain:`Your assistant already has a custom domain.`,no_assistant_to_attach_domain:`We couldn't find an assistant to attach this domain to.`,exceeds_machine_tier:`That machine size isn't available on your plan.`,provisioning_submission_failed:`We couldn't queue your upgrade just now. Try again in a moment.`,no_active_pro:`We couldn't confirm your Pro plan yet. Try again in a moment.`,no_provisionable_assistants:`We couldn't find an assistant to upgrade yet. Try again in a moment.`},Ze={provisioning_submission_failed:`We couldn't queue your plan change just now. Try again in a moment.`,no_provisionable_assistants:`We couldn't find an assistant to update yet. Try again in a moment.`};function Qe(e,t,n=`upgrade`){if(e&&typeof e==`object`){let t=e;if(typeof t.error==`string`){let e=(n===`upgrade`?void 0:Ze[t.error])??Xe[t.error];if(e)return e}for(let e of Ye){let n=t[e];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(typeof t.detail==`string`)return t.detail}return t}var $e=`h-8 rounded-lg border border-[var(--border-element)] bg-[var(--field-bg)] px-2.5 text-[14px] text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none transition-[border-color] duration-150 focus:border-[var(--border-active)] disabled:cursor-not-allowed disabled:opacity-60`,et=`text-[11px] font-medium text-[var(--content-secondary)]`;function tt({onExit:e,machineBusy:t=!1,assistantId:r}){let{t:i}=o(`settings`),s=a(),c=U.use.emailRootDomain(),{assistant:l,assistantId:u,domains:d}=Ue(!0,r),f=d?.results[0],[p,m]=(0,q.useState)(``),[h,g]=(0,q.useState)(`hi`),[_,v]=(0,q.useState)(!1);(0,q.useEffect)(()=>{if(!_){if(f){m(f.subdomain),v(!0);return}!l?.handle||p||(m(l.handle),v(!0))}},[l?.handle,f,_,p]);let[y,b]=(0,q.useState)(null),[x,S]=(0,q.useState)(!1),C=n(xe()),w=!!f||x,E=C.isPending||x;return(0,q.useEffect)(()=>{if(!x)return;let t=setTimeout(e,800);return()=>clearTimeout(t)},[x,e]),(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(V.Body,{className:`animate-[onboarding-step-in_350ms_ease-out] space-y-6 pb-0 motion-reduce:animate-none`,children:[(0,J.jsx)(X,{variant:`top`}),(0,J.jsx)(Re,{title:i(`domainStep.title`),subtitle:i(`domainStep.subtitle`)}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(`label`,{htmlFor:`onboarding-email-prefix`,className:et,children:i(`domainStep.prefixLabel`)}),(0,J.jsx)(`input`,{id:`onboarding-email-prefix`,value:h,onChange:e=>g(e.target.value.toLowerCase().trim()),disabled:E||w,readOnly:w,placeholder:i(`domainStep.emailUsernamePlaceholder`),className:`${$e} w-24`})]}),(0,J.jsx)(`span`,{className:`flex h-8 items-center text-[var(--content-secondary)]`,children:`@`}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,J.jsx)(`label`,{htmlFor:`onboarding-email-handle`,className:et,children:i(`domainStep.handleLabel`)}),(0,J.jsx)(`input`,{id:`onboarding-email-handle`,value:p,onChange:e=>{m(e.target.value.toLowerCase().trim()),y&&b(null)},disabled:E||w,readOnly:w,autoFocus:!0,placeholder:i(`domainStep.subdomainExamplePlaceholder`),"aria-invalid":!!y,className:`${$e} w-full min-w-0`})]}),(0,J.jsxs)(`span`,{className:`flex h-8 shrink-0 items-center text-[14px] text-[var(--content-tertiary)]`,children:[`.`,c]})]}),y&&(0,J.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:y}),w&&(0,J.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`domainStep.domainLockedMessage`)})]}),t&&!w&&(0,J.jsx)(H,{tone:`neutral`,children:i(`domainStep.machineBusyNotice`)}),!w&&(0,J.jsx)(H,{tone:`info`,className:`border-transparent bg-[var(--surface-active)]`,children:(0,J.jsx)(`span`,{className:`font-medium text-[var(--content-tertiary)]`,children:i(`domainStep.handleImmutableNotice`)})}),x?(0,J.jsx)(H,{tone:`success`,children:i(`domainStep.domainSetRedirecting`)}):null]}),(0,J.jsx)(V.Footer,{className:`items-center pt-6`,children:w?(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-domain-continue`,onClick:e,children:i(`domainStep.continue`)}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(T,{variant:`outlined`,"data-testid":`onboarding-domain-skip`,disabled:E,onClick:()=>{E||C.mutate({body:{skipped:!0}},{onSuccess:e,onError:()=>e()})},children:i(`domainStep.skip`)}),(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-domain-set`,disabled:!p||E||t,onClick:()=>{E||t||!p||C.mutate({body:{subdomain:p,...h?{email_username:h}:{}}},{onSuccess:()=>{b(null),S(!0),s.invalidateQueries({queryKey:L()}),s.invalidateQueries({queryKey:ce({path:{assistant_id:u??``}})}),s.invalidateQueries({queryKey:he()})},onError:e=>{b(Qe(e,i(`domainStep.registerSubdomainFailed`)))}})},children:i(`domainStep.next`)})]})})]})}function nt({onGoToBilling:e,direction:t}){let{t:n}=o(`settings`);return(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(Ie,{icon:f}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(E,{variant:`title-small`,as:`h1`,children:n(`errorStates.fetchErrorTitle`)}),(0,J.jsx)(E,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:Z(t).fetchErrorBody})]}),(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-go-to-billing`,onClick:e,children:n(`errorStates.goToBilling`)})]})}function rt(e){let{targets:t,fromSnapshot:n,machineFloor:r,credits:i}=e,a=[];return t.machineSize==null?r!=null&&n.machineSize!=null&&n.machineSize!==r&&a.push({key:`machine`,label:`Machine`,from:W[n.machineSize],to:W[r]}):n.machineSize!==t.machineSize&&a.push({key:`machine`,label:`Machine`,from:n.machineSize==null?void 0:W[n.machineSize],to:W[t.machineSize]}),t.storageGib!=null&&(n.storageGib==null||t.storageGib>n.storageGib)&&a.push({key:`storage`,label:`Storage`,from:n.storageGib==null?void 0:`${n.storageGib} GB`,to:`${t.storageGib} GB`}),i!=null&&a.push({key:`credits`,label:i.label??`Credits`,from:i.from,to:i.to}),a}var it=60,at=it*2;function ot({imageUrl:e,animateIn:t=!0}){return(0,J.jsxs)(`div`,{"aria-hidden":!0,"data-testid":`takeover-backdrop`,className:`pointer-events-none absolute inset-0 overflow-hidden${t?` provision-avatar-reveal`:``}`,children:[(0,J.jsx)(`img`,{src:e,alt:``,decoding:`async`,draggable:!1,className:`absolute left-1/2 top-1/2 max-w-none -translate-x-1/2 -translate-y-1/2 object-cover object-center`,style:{filter:`blur(${it}px)`,width:`calc(100% + ${at*2}px)`,height:`calc(100% + ${at*2}px)`}}),(0,J.jsx)(`div`,{className:`absolute inset-0 bg-black/55`})]})}function st(e,t){if(t!=null)return e?.credit_tiers?.find(e=>e.tier===t)}function ct(e){let t=e?.match(/^credits_(\d+)$/)?.[1];return t==null?null:Number(t)}function lt(e){let t=N(),{data:n}=r({...se(),enabled:t&&e});return n?.plans.find(e=>e.id===`pro`)}function ut(e,t){return t==null?0:st(e,t)?.credits_usd??ct(t)}function dt(e,t){return t==null?null:st(e,t)?.label}function ft(e){let t=lt(e!=null);if(e==null||t==null)return null;let n,r;if(e.kind===`package`){let i=t.packages.find(t=>t.key===e.packageKey),a=st(t,i?.credit_tier);n=i?.credits_usd??a?.credits_usd,r=i?.usage_label??a?.label??void 0}else{let i=st(t,e.creditTier);n=i?.credits_usd,r=i?.label}return n==null?null:{fromLabel:null,toLabel:r}}function pt(e){let t=lt(e!=null);return e==null||ut(t,e.fromTier)==null||ut(t,e.toTier)==null?null:{fromLabel:dt(t,e.fromTier),toLabel:dt(t,e.toTier)}}function mt(e){let t=I.use.activeAssistantId(),n=e===void 0?t:e,{components:r,traits:i,customImageUrl:a,isLoading:o}=O(n),s=(0,q.useMemo)(()=>M(),[ae()]),c=s!=null&&D(s)?s:null,l=n!=null&&!o,u=c!=null&&(n==null||n===c.assistantId),d=u&&!(l&&(r!=null||i!=null||a!=null))?c:null,f=d?d.components:r,p=d?d.traits:i,m=d?null:a,h=l||u,g=f?f.colors:de,_=ge(f,p)??(m?null:g?.[0]?.hex??null);return{tintHex:h&&_?A(_):P,backdropImageUrl:h?m:null,ready:h,avatar:{components:f,traits:p,customImageUrl:m}}}function ht(e,t){let[n,r]=(0,q.useState)(e),i=(0,q.useRef)(0);return(0,q.useEffect)(()=>{i.current=performance.now()},[]),(0,q.useEffect)(()=>{if(t<=0||e===n)return;let a=t-(performance.now()-i.current);if(a<=0){i.current=performance.now(),r(e);return}let o=setTimeout(()=>{i.current=performance.now(),r(e)},a);return()=>clearTimeout(o)},[e,n,t]),t<=0?e:n}var gt=`--takeover-surface`,_t=`var(${gt},${P})`,vt=`color-mix(in srgb, var(--content-emphasised) 10%, transparent)`,yt=240,bt=1.414,xt=[{minHeight:680,size:yt},{minHeight:600,size:184}],St=132;function Ct(e){for(let t of xt)if(e>=t.minHeight)return t.size;return St}function wt(){let[e,t]=(0,q.useState)(()=>Ct(typeof window>`u`?1/0:window.innerHeight));return(0,q.useEffect)(()=>{let e=()=>t(Ct(window.innerHeight));return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[]),e}var Tt={machine:h,storage:S,credits:m},Et={idle:``,working:` is-working`,settling:` is-settling`,stalled:` is-stalled`,grown:` is-evolved`};function Dt(e,t){return e===`DONE`||e===`NOT_APPLICABLE`?`grown`:e===`STALLED`?`stalled`:e===`WAITING`||e===`RESIZING`?t?`settling`:`working`:`idle`}function Ot({assistantId:e,mode:t,downsizing:n=!1}){let{avatar:r,ready:i}=mt(e),a=k(),o=wt(),s=t===`working`||t===`settling`;return(0,J.jsxs)(`div`,{"aria-hidden":!0,className:`provision-avatar-evolve relative z-10 flex flex-col items-center${Et[i?t:`idle`]}${n?` is-downsizing`:``}`,style:{"--provision-avatar-size":`${o}px`,"--provision-avatar-growth":bt},children:[(0,J.jsxs)(`div`,{className:`provision-avatar-stage`,children:[(0,J.jsx)(`div`,{"data-testid":`provision-avatar-placeholder`,className:`provision-avatar-placeholder${i?` is-resolved`:``}`}),(0,J.jsx)(`div`,{className:`provision-avatar-layer`,children:(0,J.jsx)(`div`,{className:`provision-avatar-current`,children:(0,J.jsx)(`div`,{className:`provision-avatar-strain`,children:i&&(0,J.jsx)(`div`,{className:`provision-avatar-reveal`,children:(0,J.jsx)(ee,{components:r.components??a,traits:r.traits,customImageUrl:r.customImageUrl,size:o,isAssistantBusy:s})})})})})]}),(0,J.jsx)(`div`,{className:`provision-avatar-shadow`})]})}function kt({status:e,caption:t}){return(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-1.5`,children:[(0,J.jsx)(`h1`,{className:`text-[var(--content-emphasised)]`,style:Le,children:e}),t&&(0,J.jsx)(E,{variant:`body-medium-lighter`,as:`p`,className:`max-w-sm text-[var(--content-secondary)]`,children:t})]})}function At({icon:e,label:t,from:n,to:r,done:i=!1,pending:a=!1,testId:s}){let{t:c}=o(`settings`),l=null;return i?l=c(`provisioningState.statusComplete`):a&&(l=c(`provisioningState.statusPending`)),(0,J.jsxs)(`div`,{"data-testid":s,className:`flex min-w-0 flex-auto items-center gap-2 rounded-lg px-2 py-1.5${a?` opacity-70`:``}`,style:{backgroundColor:vt},children:[(0,J.jsx)(`span`,{className:`hidden h-6 w-6 shrink-0 items-center justify-center min-[420px]:flex`,children:(0,J.jsx)(e,{className:`h-3.5 w-3.5 text-[var(--content-tertiary)]`,"aria-hidden":`true`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1 text-left wrap-anywhere`,children:[(0,J.jsx)(`span`,{className:`text-[12px] font-medium leading-tight text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`span`,{className:`flex flex-wrap items-center gap-1.5 text-[14px] font-medium leading-[18px] text-[var(--content-emphasised)]`,children:[n&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`span`,{children:n}),(0,J.jsx)(`span`,{className:`sr-only`,children:c(`provisioningState.srOnlyTo`)}),(0,J.jsx)(g,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":`true`})]}),(0,J.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,J.jsx)(`span`,{children:r}),i?(0,J.jsx)(d,{"data-testid":`chip-check`,className:`h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`,"aria-hidden":`true`}):a&&(0,J.jsx)(y,{"data-testid":`chip-spinner`,className:`h-3.5 w-3.5 shrink-0 animate-spin text-[var(--content-tertiary)] motion-reduce:animate-none`,"aria-hidden":`true`})]}),l&&(0,J.jsx)(`span`,{className:`sr-only`,children:l})]})]})]})}function jt({label:e}){return(0,J.jsx)(`span`,{className:`rounded-lg px-3 py-2 text-[14px] text-[var(--content-emphasised)]`,style:{backgroundColor:vt},children:e})}function Mt({children:e,wide:t=!1,testId:n}){return(0,J.jsx)(`div`,{"data-testid":n,className:`flex w-full ${t?`max-w-2xl`:`max-w-sm`} items-stretch justify-center gap-2`,children:e})}function Nt(e,t){return e===`credits`?!0:t?.[e]===!0}function Pt(e,t){if(e==null)return null;let n=t(`provisioningState.noExtraUsage`),r=e.toLabel===null?n:e.toLabel;return r==null?null:{label:t(`provisioningState.usageLabel`),from:e.fromLabel===null?n:e.fromLabel,to:r}}function Ft({intent:e,creditsChange:t,targets:n,fromSnapshot:r,machineFloor:i,landed:a,allDone:s=!1,creditsOnly:c=!1}){let{t:l}=o(`settings`),u=ft(e),d=pt(t),f=rt({targets:n,fromSnapshot:r,machineFloor:i,credits:Pt(u??d,l)}),p=c?f.filter(e=>e.key===`credits`):f,m=p.filter(e=>s||Nt(e.key,a)).map(e=>e.label).join(`, `),[h]=(0,q.useState)(m),g=m===h?``:l(`provisioningState.dimensionsComplete`,{dimensions:m});return p.length===0?null:(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Mt,{testId:`resource-chips`,wide:p.length>=3,children:p.map(e=>{let t=s||Nt(e.key,a);return(0,J.jsx)(At,{testId:`chip-${e.key}`,icon:Tt[e.key],label:e.label,from:e.from,to:e.to,done:t,pending:!t},e.key)})}),(0,J.jsx)(`p`,{"aria-live":`polite`,className:`sr-only`,"data-testid":`chip-announcement`,children:g})]})}function It({intent:e}){let{t}=o(`settings`),n=ft(e.kind===`custom`?e:null);if(e.kind===`package`)return(0,J.jsx)(Mt,{children:(0,J.jsx)(jt,{label:t(`provisioningState.packageChip`,{name:e.packageKey.charAt(0).toUpperCase()+e.packageKey.slice(1)})})});let r=[e.machineTier,e.storageTier,e.creditTier].filter(e=>e!=null).length;return(0,J.jsxs)(Mt,{wide:r>=3,children:[e.machineTier!=null&&(0,J.jsx)(At,{icon:h,label:t(`provisioningState.machineLabel`),to:Oe[e.machineTier]??e.machineTier}),e.storageTier!=null&&(0,J.jsx)(At,{icon:S,label:t(`provisioningState.storageLabel`),to:e.storageTier.toUpperCase()}),e.creditTier!=null&&n?.toLabel!=null&&(0,J.jsx)(jt,{label:n.toLabel})]})}function Lt({state:e,direction:t,softWaiting:n,intent:r,creditsChange:i,targets:a,fromSnapshot:s,machineFloor:c,landed:l,celebrating:u,onCelebrationEnd:d,assistantId:f,escapeAvailable:p,onEscape:m,onPhaseChange:h,kickError:g,confirm:_,dwellMs:v=Ke,phaseMinMs:y=900}){let{t:b}=o(`settings`),x=Z(t),S=(0,q.useRef)(d);(0,q.useEffect)(()=>{S.current=d},[d]);let C=ht(e,y),w=C===`DONE`||C===`NOT_APPLICABLE`,E=C===`RESIZING`?`WAITING`:C,D=(0,q.useRef)(h);(0,q.useEffect)(()=>{D.current=h},[h]),(0,q.useEffect)(()=>{D.current?.(C)},[C]);let{tintHex:O,backdropImageUrl:ee}=mt(f),k=u&&w;return(0,q.useEffect)(()=>{if(!k)return;let e=setTimeout(()=>S.current(),v);return()=>clearTimeout(e)},[k,v]),(0,J.jsxs)(`div`,{"data-theme":`dark`,className:`provision-surface-settle relative flex h-full min-h-[420px] w-full flex-col items-center [justify-content:safe_center] gap-10 px-6 py-10 text-center`,style:{[gt]:O,backgroundColor:_t},children:[ee&&(0,J.jsx)(ot,{imageUrl:ee}),(0,J.jsx)(Ot,{assistantId:f,mode:Dt(C,n),downsizing:t===`downgrade`}),(0,J.jsx)(`div`,{className:`relative z-10 flex min-h-[144px] w-full flex-col items-center gap-8 [animation:onboarding-step-in_420ms_ease-out] motion-reduce:[animation:none]`,children:te()},E)]});function A(e=b(`provisioningState.continueInBackground`)){return p?(0,J.jsx)(T,{variant:`ghost`,"data-testid":`provisioning-escape`,onClick:m,children:e}):null}function j({allDone:e=!1,creditsOnly:t=!1}={}){return(0,J.jsx)(Ft,{intent:r,creditsChange:i,targets:a,fromSnapshot:s,machineFloor:c,landed:l,allDone:e,creditsOnly:t})}function te(){if(C===`CONFIRMING`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:x.confirmingStatus,caption:b(`provisioningState.confirmingCaption`)}),r&&(0,J.jsx)(It,{intent:r}),A()]});if(C===`WAITING`||C===`RESIZING`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:x.waitingStatus,caption:b(n?`provisioningState.waitingCaptionLong`:`provisioningState.waitingCaptionShort`)}),j(),A()]});if(C===`DONE`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:b(`provisioningState.allDoneStatus`)}),j({allDone:!0})]});if(C===`NOT_APPLICABLE`)return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:b(`provisioningState.planReadyStatus`)}),j({allDone:!0,creditsOnly:!0})]});if(C===`STALLED`){let e=g!=null;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:e?x.snagStatus:b(`provisioningState.takingLongerStatus`),caption:e?Qe(g,x.snagCaption,t):b(`provisioningState.stalledCaption`)}),j(),e?A(b(`provisioningState.retryInBackground`)):A()]})}return C===`CONFIRM_TIMEOUT`?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(kt,{status:x.confirmTimeoutStatus,caption:x.confirmTimeoutCaption}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2 pt-1`,children:[(0,J.jsx)(T,{variant:`outlined`,"data-testid":`onboarding-go-to-billing`,onClick:_.onGoToBilling,children:b(`provisioningState.goToBilling`)}),(0,J.jsx)(T,{variant:`primary`,"data-testid":`onboarding-retry`,onClick:_.onRetry,children:b(`provisioningState.tryAgain`)})]})]}):null}}function Rt(e){let{planId:t,targets:n,actuals:r,initialActuals:i,resizeOperationInFlight:a,sawOperation:o,msSinceWatchStart:s,confirmExpired:c,serverVerdict:l=null,statusObservedSinceTargetsMet:u=!0,targetsProveNoop:d=!0}=e;if(t!==`pro`)return{state:c?`CONFIRM_TIMEOUT`:`CONFIRMING`,softWaiting:!1};let f=o||a,p=l===`started`||l===`in_progress`,m=o||d&&u;if(!a){let e=p?m:f||l===`already_done`||i!=null&&!je(n,i);if(je(n,r)){if(e)return{state:`DONE`,softWaiting:!1};if(!p&&(d||l===`not_applicable`))return{state:`NOT_APPLICABLE`,softWaiting:!1}}else{if(l===`already_done`)return{state:`DONE`,softWaiting:!1};if(l===`not_applicable`)return{state:`NOT_APPLICABLE`,softWaiting:!1}}}return s!=null&&s>=9e4?{state:`STALLED`,softWaiting:!1}:f||l===`started`||l===`in_progress`?{state:`RESIZING`,softWaiting:!1}:{state:`WAITING`,softWaiting:s!=null&&s>=3e4}}var zt=2e3,Bt=1e3,Vt=[`DONE`,`NOT_APPLICABLE`,`CONFIRM_TIMEOUT`],Ht={assistantId:null,machine:null,storage:null};function Ut({open:e,canLowerResources:t=!1,verdictRecheckMs:o=Je}){let c=a(),l=N(),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(0),[m,h]=(0,q.useState)(null),[g,_]=(0,q.useState)(null),[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(null),[T,E]=(0,q.useState)(null),[D,O]=(0,q.useState)(Ht),[ee,k]=(0,q.useState)(null),[A,j]=(0,q.useState)(!1),te=(0,q.useRef)(!1),ne=(0,q.useRef)(!1),M=(0,q.useRef)(0),[re,ae]=(0,q.useState)(!1),[oe,se]=(0,q.useState)(null),[P,ce]=(0,q.useState)(null),[le,de]=(0,q.useState)(null),[fe,F]=(0,q.useState)(()=>Date.now()),[pe,I]=(0,q.useState)(!0);(0,q.useEffect)(()=>{e||(d(!1),p(0),h(null),_(null),y(null),ae(!1),se(null),ce(null),de(null),I(!0),x(null),C(null),E(null),O(Ht),k(null),j(!1),te.current=!1,ne.current=!1,M.current+=1)},[e]),(0,q.useEffect)(()=>{e&&(h(Date.now()),c.invalidateQueries({queryKey:be()}),c.invalidateQueries({queryKey:he()}))},[e,c]);let L=g!=null,me=r({...ue(),refetchInterval:e=>e.state.data?.plan_id===`pro`||u?!1:We,refetchIntervalInBackground:!1,enabled:e&&l&&!L}),R=(m!=null&&me.dataUpdatedAt>=m?me.data?.plan_id:null)??null;(0,q.useEffect)(()=>{if(!e||L||R!==`pro`)return;let t=Date.now();_(t),F(t)},[e,L,R]),(0,q.useEffect)(()=>{if(!e||L)return;let t=setTimeout(()=>d(!0),Ge);return()=>clearTimeout(t)},[e,L,f]);let ge=(0,q.useCallback)(()=>{d(!1),p(e=>e+1),ie.getState().fetchOrganizations(),c.invalidateQueries({queryKey:be()})},[c]),_e=(0,q.useCallback)(()=>{let e=Date.now();y(e),F(e)},[]),{mutate:ye}=n(ve()),B=(0,q.useCallback)(e=>{let t=M.current;ye({},{onSuccess:n=>{t===M.current&&(k(null),Ne(n)?ne.current?k({error:n.reason??`no_active_pro`}):(ne.current=!0,j(!0),e===`escape`&&_e()):(x(n.state),e===`escape`&&_e()))},onError:e=>{t===M.current&&k(e)}})},[ye,_e]);(0,q.useEffect)(()=>{!e||!l||!L||te.current||(te.current=!0,B(`auto`))},[e,l,L,B]),(0,q.useEffect)(()=>{if(!A)return;let e=M.current,t=setTimeout(()=>{j(!1),e===M.current&&B(`auto`)},qe);return()=>clearTimeout(t)},[A,B]);let xe=(0,q.useCallback)(()=>B(`escape`),[B]),V=r({...z(),enabled:e&&l&&L}),Ce=pe?zt:!1,we=r({...w(),enabled:e&&l&&L,refetchInterval:e=>e.state.data?.id==null?Ce:!1,retry:!1}),H=L&&m!=null&&V.dataUpdatedAt>=m,Te=H&&!V.isPending&&!V.isFetching,U=(H?V.data?.primary_assistant_id:null)??(V.isPending?null:we.data?.id??null),W=r({...Se({path:{id:U??`unresolved`}}),enabled:e&&l&&L&&U!=null,refetchInterval:Ce,retry:!1}),Oe=Ee({path:{id:U??`unresolved`}}),ke=r({...Oe,enabled:e&&l&&L&&U!=null,refetchInterval:Ce,retry:!1}),K=(0,q.useRef)(0),[J,Ie]=(0,q.useState)(0),Le=i(Oe.queryKey);(0,q.useEffect)(()=>c.getQueryCache().subscribe(t=>{if(!(t.type!==`updated`||t.query.queryHash!==Le)){if(t.action.type===`fetch`)K.current+=1;else if(t.action.type===`success`&&!t.action.manual){let n=K.current,r=e&&Pe(t.action.data);s.schedule(()=>{Ie(n),r&&(ae(!0),se(U))})}}}),[c,Le,e,U]);let Re=Pe(ke.data),ze=oe===U,Y=V.data,X=(0,q.useMemo)(()=>Y?{machineSize:De(Y.max_machine_tier),storageGib:Y.selected_storage_gib??null}:null,[Y]),Be=Y!=null&&Y.max_machine_tier==null?Ae:null,Ve=Y?Y.domain_setup_available&&Y.primary_assistant_id!=null:void 0,He=W.data,Z=(0,q.useMemo)(()=>He?{machineSize:He.machine_size??null,storageGib:He.provisioned_storage_gib??null}:null,[He]),Q=le===U,$=(0,q.useMemo)(()=>{let e=Fe(X,Z),t=X?.machineSize??Be;if(t==null)return e;let n=Z?.machineSize??null;if(n==null)return{...e,machine:!1};let r=(Q?P?.machineSize:null)??n,i=G(t)<G(r);return{...e,machine:i?G(n)<=G(t):G(n)>=G(t)}},[X,Z,P,Q,Be]),Ue=je(X,Z),Ke=T===U;(0,q.useEffect)(()=>{e&&(Ue?(C(e=>e!=null&&Ke?e:Date.now()),E(U)):(C(null),E(null)))},[e,Ue,U,Ke]);let Ye=D.assistantId===U;(0,q.useEffect)(()=>{if(!e)return;let t=K.current;O(e=>{let n=e.assistantId===U?e:Ht,r=$.machine?n.machine??t:null,i=$.storage?n.storage??t:null;return e.assistantId===U&&e.machine===r&&e.storage===i?e:{assistantId:U,machine:r,storage:i}})},[e,$,U]);let Xe=(0,q.useMemo)(()=>{let e=Me(ke.data),t=e=>e!=null&&Ye&&J>e;return{machine:$.machine&&!e.machine&&t(D.machine),storage:$.storage&&!e.storage&&t(D.storage)}},[$,D,Ye,J,ke.data]);(0,q.useEffect)(()=>{!e||!Z||P!=null&&Q||(ce(Z),de(U))},[e,Z,U,P,Q]);let Ze=v??g,Qe=Ze==null?null:Math.max(0,fe-Ze),$e=!t,{state:et,softWaiting:tt}=Rt({planId:L?`pro`:R,targets:X,actuals:Z,initialActuals:Q?P:null,resizeOperationInFlight:Re,sawOperation:re&&ze,msSinceWatchStart:Qe,confirmExpired:u,serverVerdict:b,statusObservedSinceTargetsMet:S!=null&&Ke&&ke.dataUpdatedAt>S,targetsProveNoop:$e}),nt=Vt.includes(et),rt=e&&L&&!nt;(0,q.useEffect)(()=>{I(rt)},[rt]),(0,q.useEffect)(()=>{if(!e||!L||nt)return;let t=setInterval(()=>F(Date.now()),Bt);return()=>clearInterval(t)},[e,L,nt]);let it=!$e&&(b===`started`||b===`in_progress`)&&!(re&&ze);return(0,q.useEffect)(()=>{if(!e||!L||nt||!it)return;let t=setInterval(()=>B(`auto`),o);return()=>clearInterval(t)},[e,L,nt,it,o,B]),{state:et,softWaiting:tt,targets:X,actualsSnapshot:P,machineFloor:Be,landed:Xe,assistantId:U,domainStepAvailable:Ve,onboardingSettled:Te,confirmError:!L&&me.isError,targetsError:L&&V.isError&&(!Y||!H),escapeEligible:Qe!=null&&Qe>=6e4,retryConfirm:ge,kickProvisioning:xe,kickError:ee}}var Wt=200,Gt=380;function Kt(){return typeof window<`u`&&window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches===!0}var qt=e=>e===`WAITING`||e===`RESIZING`||e===`STALLED`,Jt=e=>e===`DONE`||e===`NOT_APPLICABLE`,Yt={machineSize:null,storageGib:null};function Xt({open:e,onClose:t,dwellMs:n,phaseMinMs:r,mode:i=`checkout`,resizeContext:s}){let{t:c}=o(`settings`),l=i===`resize`,u=a(),[d,f]=(0,q.useState)(`provisioning`),[p,m]=(0,q.useState)(`idle`),h=(0,q.useRef)([]),[g,_]=(0,q.useState)(null),[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(!1),w=l?s?.direction:void 0,T=Z(w),E=Ut({open:e,canLowerResources:l?s?.canLowerResources===!0:!1}),D=(0,q.useRef)(!1);(0,q.useEffect)(()=>{if(e){D.current=!0,_(l?null:Ce()),x(e=>e??Date.now());return}h.current.forEach(clearTimeout),h.current=[],f(`provisioning`),m(`idle`),y(null),x(null),C(!1),D.current&&(D.current=!1,re())},[e,l]),(0,q.useEffect)(()=>()=>{h.current.forEach(clearTimeout)},[]),(0,q.useEffect)(()=>{d===`complete`&&ne()},[d]);let O=qt(E.state),ee=Jt(v??E.state),{targets:k,assistantId:A,domainStepAvailable:j,onboardingSettled:te}=E,M=l?s?.fromSnapshot:void 0,ie=E.actualsSnapshot,ae={machineSize:M?.machineSize??ie?.machineSize??null,storageGib:M?.storageGib??ie?.storageGib??null},{tintHex:oe,backdropImageUrl:se}=mt(A),N=l&&j===!0,{domains:P,domainsError:le,domainsFetching:ue,domainsUpdatedAt:de,domainsErrorUpdatedAt:fe}=Ue(e&&N,A),pe=(P?.results.length??0)>0,I=(0,q.useRef)(null);(0,q.useEffect)(()=>{if(!e){I.current=null;return}!N||A==null||I.current!==A&&(I.current=A,u.invalidateQueries({queryKey:ce({path:{assistant_id:A}})}))},[e,N,A,u]);let L=!ue&&(b!=null&&de>=b||b!=null&&!!le&&fe>=b),[me,R]=(0,q.useState)(!1),he=te&&(!N||L);(0,q.useEffect)(()=>{if(!e){R(!1);return}he&&R(!0)},[e,he]);let ge=(0,q.useCallback)(()=>{let e=l?j===!0&&!pe?`domain`:`complete`:j===!1?`complete`:`domain`;if(Kt()){f(e);return}m(`covering`),h.current.push(setTimeout(()=>{f(e),m(`revealing`),h.current.push(setTimeout(()=>m(`idle`),Gt))},Wt))},[j,l,pe]),_e=(0,q.useCallback)(()=>{C(!0)},[]),ve=(0,q.useCallback)(()=>{E.kickProvisioning(),F.info(E.kickError==null?T.backgroundExitToast:T.backgroundRetryToast),C(!1),t()},[E,t,T]),ye=(0,q.useCallback)(()=>{C(!1)},[]),be=d===`provisioning`&&(E.confirmError||E.targetsError),z=d===`provisioning`&&!be,xe=z&&!ee,Se=`transition-[background-color] duration-300 ease-out${z?` bg-black p-0`:``}`,we=z?`[animation:fadeIn_0.45s_ease-out_both]`:p===`revealing`?`[animation:fadeInUp_0.42s_ease-out_0.12s_both]`:`[animation:fadeIn_0.25s_ease-out_both]`;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(V.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsxs)(V.Content,{size:`md`,hideCloseButton:d!==`complete`,dismissOnOverlayClick:!xe,onEscapeKeyDown:xe?e=>e.preventDefault():void 0,onInteractOutside:xe?e=>e.preventDefault():void 0,"data-theme":z?`dark`:void 0,overlayClassName:Se,className:z?`overflow-y-auto inset-0 max-w-none w-screen h-screen max-h-none rounded-none border-0`:`overflow-hidden`,style:{[gt]:oe},children:[(0,J.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col motion-reduce:[animation:none] ${we}`,children:H()},d),p!==`idle`&&(0,J.jsx)(`div`,{"aria-hidden":!0,"data-testid":`takeover-exit-sheet`,className:`pointer-events-none fixed inset-0 z-50 ${p===`covering`?`[animation:fadeIn_200ms_ease-in_both]`:`[animation:fadeIn_380ms_ease-out_both_reverse]`}`,style:{backgroundColor:_t},children:se&&(0,J.jsx)(ot,{imageUrl:se,animateIn:!1})})]})}),(0,J.jsx)(B,{open:S&&O,title:c(`billingOnboardingModal.backgroundConfirmTitle`),message:T.backgroundConfirmMessage,confirmLabel:c(`billingOnboardingModal.backgroundConfirmContinue`),cancelLabel:c(`billingOnboardingModal.backgroundConfirmKeepWaiting`),onConfirm:ve,onCancel:ye})]});function H(){return d===`provisioning`?E.confirmError||E.targetsError?(0,J.jsx)(nt,{onGoToBilling:t,direction:w}):(0,J.jsx)(Lt,{state:E.state,direction:w,softWaiting:E.softWaiting,intent:g,creditsChange:l?s?.credits:void 0,targets:k??Yt,fromSnapshot:ae,machineFloor:E.machineFloor,landed:E.landed,celebrating:me,onCelebrationEnd:ge,assistantId:A,escapeAvailable:O&&E.escapeEligible,onEscape:_e,onPhaseChange:y,kickError:E.kickError,confirm:{onRetry:E.retryConfirm,onGoToBilling:t},dwellMs:n,phaseMinMs:r}):d===`domain`?(0,J.jsx)(tt,{machineBusy:O,assistantId:A,onExit:()=>f(`complete`)}):(0,J.jsx)($,{assistantId:A,direction:w})}}function Zt(e){return e!=null&&!e.customized}function Qt(e){return Zt(e)?e.name:`Custom`}var $t=[`mighty`,`super`,`ultra`],en=[`free`,...$t];function tn(e){return en.indexOf(e)}function nn(e,t){if(e===null)return`upgrade`;let n=tn(e),r=tn(t);return n===-1||r===-1?`upgrade`:r===n?`current`:r<n?`downgrade`:`upgrade`}function rn(e,t){if(e.length===0)return null;let n=[...e].sort((e,t)=>$t.indexOf(e.key)-$t.indexOf(t.key));if(!t)return n[0];let r=n.findIndex(e=>e.key===t);return r===-1?n[0]:r>=n.length-1?null:n[r+1]}var an={free:{bodyShape:`ninja`,eyeStyle:`angry`,color:`yellow`},mighty:{bodyShape:`blob`,eyeStyle:`grumpy`,color:`green`},super:{bodyShape:`urchin`,eyeStyle:`goofy`,color:`teal`},ultra:{bodyShape:`sprout`,eyeStyle:`curious`,color:`orange`}};function on({tier:e,size:t=40}){let n=an[e]??an.free,r=k();return(0,J.jsx)(`div`,{"aria-hidden":!0,className:`inline-flex shrink-0`,children:r?(0,J.jsx)(we,{components:r,bodyShapeId:n.bodyShape,colorId:n.color,size:t}):(0,J.jsx)(`div`,{style:{width:t,height:t}})})}var sn={free:{tagline:`Get to know your assistant.`,cta:`Start Free`,priceCaption:`Forever`},mighty:{tagline:`More capacity for consistent use.`,cta:`Power Up`,priceCaption:`Billed monthly`,recommended:!0},super:{tagline:`Do more, think less about the how.`,cta:`Go Super`,priceCaption:`Billed monthly`,extraFeatures:[`Assistant email and subdomain`]},ultra:{tagline:`Your second brain, running full speed.`,cta:`Unleash Ultra`,priceCaption:`Billed monthly`,extraFeatures:[`Assistant email and subdomain`]}};function cn(e){return sn[e]}function ln(e){return`Downgrade to ${e}`}function un(e){let t=e/100;return Number.isInteger(t)?`$${t}`:`$${t.toFixed(2)}`}function dn(e){return`${un(e)}/mo`}function fn(e){return`${un(e)}/month`}function pn(e){return`${e>0?`+`:`−`}${un(Math.abs(e))}/mo`}function mn(e){return`${e} GB storage`}function hn(e){return`${un(e*100)} of bundled credits`}var gn=`Small`;function _n(e){return e?.machine_size?W[e.machine_size]??e.machine_size:gn}function vn(e,t){let n=cn(e.key)?.extraFeatures??[];return[{icon:K,label:`${_n(e)} Machine`},{icon:S,label:`${e.storage_gib} GB Storage`},{icon:m,label:t,ownRow:!0},...n.map(e=>({icon:p,label:e,ownRow:!0}))]}function yn(){return[{icon:K,label:`${gn} Machine`},{icon:S,label:`4 GB Storage`},{icon:m,label:`Pay as you go credits`,ownRow:!0}]}function bn(e,t=[]){let n=e?.credits_usd??0,r=e?.storage_gib??4,i=ke[e?.machine_size??`small`];return[`${_n(e)} machine${i?` (${i})`:``}`,mn(r),e?.usage_label??hn(n),...t]}var xn={machine:`Configurable machine size`,storage:`Configurable storage`,credits:`Pay-as-you-go and bundled credits`};function Sn(e,t){let n=[`${e.machineTier?Oe[e.machineTier]??t.machine_tiers.find(t=>t.tier===e.machineTier)?.label??e.machineTier:gn} Machine`];if(e.storageGib!=null&&n.push(`${e.storageGib} GB`),e.creditTier!=null){let r=st(t,e.creditTier)?.label,i=ct(e.creditTier);n.push(r??(i==null?`Credit bundle`:`${i} credits/mo`))}return n}function Cn(e,t){let n=new Set([xn.machine]);return e.storageGib!=null&&n.add(xn.storage),e.creditTier!=null&&n.add(xn.credits),[...Sn(e,t),...t.included_features.filter(e=>!n.has(e))]}function wn(e){return e.disabled===!0}function Tn({machineTiers:e,storageTiers:t,selectedMachineTier:n,selectedStorageTier:r,onMachineTierChange:i,onStorageTierChange:a,currentMachinePriceCents:s,currentStoragePriceCents:c}){let{t:l}=o(`settings`),u=(0,q.useMemo)(()=>e.map(e=>{let t=Oe[e.tier]??e.label,n=s==null?l(`tierPicker.priceAddon`,{price:dn(e.price_cents)}):e.price_cents===s?l(`tierPicker.priceCurrent`,{price:dn(e.price_cents)}):pn(e.price_cents-s);return{value:e.tier,label:l(`tierPicker.machineOption`,{label:t,priceLabel:n}),disabled:wn(e)}}),[e,s,l]),d=(0,q.useMemo)(()=>t.map(e=>{let t=c==null?l(`tierPicker.priceAddon`,{price:dn(e.price_cents)}):e.price_cents===c?l(`tierPicker.priceCurrent`,{price:dn(e.price_cents)}):pn(e.price_cents-c);return{value:e.tier,label:l(`tierPicker.storageOption`,{gib:e.storage_gib,priceLabel:t}),disabled:wn(e)}}),[t,c,l]);return(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(E,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:l(`tierPicker.machineLabel`)}),(0,J.jsx)(`span`,{title:l(`tierPicker.machineTooltip`),children:(0,J.jsx)(v,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(j,{"aria-label":l(`tierPicker.machineAriaLabel`),placeholder:l(`tierPicker.machinePlaceholder`),value:n??``,onChange:i,options:u})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(E,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:l(`tierPicker.storageLabel`)}),(0,J.jsx)(`span`,{title:l(`tierPicker.storageTooltip`),children:(0,J.jsx)(v,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(j,{"aria-label":l(`tierPicker.storageAriaLabel`),placeholder:l(`tierPicker.storagePlaceholder`),value:r??``,onChange:a,options:d})]})]})}var En=new Set([`active`,`trialing`,`past_due`]);function Dn(e){return e.plan_id!==`base`&&e.cancel_at_period_end!==!0&&!e.cancel_at&&e.status!=null&&En.has(e.status)}function On(e){return e?.status!=null&&En.has(e.status)}var kn=[`target_plan_id`,`confirm`,`machine_tier`,`storage_tier`,`credit_tier`,`package`,`non_field_errors`];function An(e,t){if(e&&typeof e==`object`){for(let t of kn)if(t in e){let n=e[t];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(`detail`in e&&typeof e.detail==`string`)return e.detail}return t}function jn(e,t){let n=e.filter(e=>!wn(e));return t!==null&&n.some(e=>e.tier===t)?t:n[0]?.tier??null}function Mn(e,t,n){return t===void 0?n:t!==null&&(t===n||e.some(e=>e.tier===t))?t:null}function Nn(e){return e.length?Math.min(...e.map(e=>e.price_cents)):0}function Pn(){let e=a();return async t=>{try{let n=await t.mutateAsync();return await e.invalidateQueries({queryKey:be()}),t.onSuccess(n),n}catch(e){return F.error(An(e,t.errorFallback()),{id:t.errorToastId}),null}}}var Fn=`billing-portal-return-snapshot`;function In(e){try{sessionStorage.removeItem(Fn),sessionStorage.setItem(Fn,JSON.stringify(e))}catch{}}function Ln(){if(typeof sessionStorage>`u`)return null;try{let e=sessionStorage.getItem(Fn);if(!e)return null;let t=JSON.parse(e);return typeof t.cancel_at_period_end!=`boolean`||typeof t.plan_id!=`string`?null:{cancel_at_period_end:t.cancel_at_period_end,cancel_at:t.cancel_at??null,plan_id:t.plan_id}}catch{return null}}function Rn(){try{sessionStorage.removeItem(Fn)}catch{}}function zn(e){return e?{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at??null,plan_id:e.plan_id}:null}function Bn(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleDateString(void 0,{year:`numeric`,month:`long`,day:`numeric`})}function Vn(e){return e?e.cancel_at??e.current_period_end??null:null}function Hn(e){let n=a();return(0,q.useEffect)(()=>ye(()=>{n.invalidateQueries(ue())}),[n]),fe({onSuccess:t=>{e&&In(e),le(t.portal_url)},onError:()=>{F.error(t(`settings:useBillingPortalSession.openError`),{id:`billing-portal-session-error`})}})}function Un(){let e=Te(),n=Pn();return{cancelSubscription:()=>n({mutateAsync:()=>e.mutateAsync({}),onSuccess:e=>{let n=e.cancel_at?Bn(e.cancel_at):t(`settings:useCancelSubscription.endOfBillingPeriod`);F.info(t(`settings:useCancelSubscription.canceledToast`,{date:n}),{id:`subscription-cancel`})},errorToastId:`subscription-cancel-error`,errorFallback:()=>t(`settings:useCancelSubscription.cancelFailedToast`)}),isPending:e.isPending}}function Wn(e){return Promise.all([e.invalidateQueries({queryKey:be()}),e.invalidateQueries({queryKey:oe()}),e.invalidateQueries({queryKey:he()}),e.invalidateQueries({queryKey:_e()})])}function Gn(){let e=a(),t=n(C());return{changePackage:async n=>{try{let r=await t.mutateAsync({body:{package:n}});return await Wn(e),r}catch(e){return F.error(An(e,`Failed to change your plan. Please try again.`)),null}},isPending:t.isPending}}function Kn({className:e,"data-testid":t,children:n}){return(0,J.jsx)(`div`,{"aria-hidden":!0,"data-testid":t,className:me(`flex size-[52px] shrink-0 items-center justify-center rounded-xl`,e),children:n})}var qn=32;function Jn(){let{ready:e,avatar:t}=mt();return(0,J.jsx)(Kn,{"data-testid":`assistant-avatar-tile`,className:`bg-[var(--surface-active)]`,children:e?(0,J.jsx)(ee,{components:t.components,traits:t.traits,customImageUrl:t.customImageUrl,size:qn}):null})}var Yn=`Billed monthly · prorated difference charged today`,Xn=`Billed monthly · prorated difference charged today or credited next invoice`,Zn=`Billed monthly · prorated credit on your next invoice`,Qn=`Your machine downsizes now and your storage stays. No refund.`,$n=`Continue`,er=`The plan includes`,tr=`Your plan will include`;function nr(e,t,n){let r=n?cn(n)?.tagline??``:``;switch(e){case`downgrade`:return{title:ln(t),subtitle:``,priceCaption:Zn,checklistHeading:tr,note:Qn,confirmLabel:ln(t),destructive:!0};case`switch`:return{title:`Switch to ${t}`,subtitle:r,priceCaption:Xn,checklistHeading:er,note:``,confirmLabel:$n,destructive:!1};default:return{title:`Upgrade to ${t}`,subtitle:r,priceCaption:Yn,checklistHeading:er,note:``,confirmLabel:$n,destructive:!1}}}function rr({open:e,relation:t,packageName:n,targetPackage:r,pending:i,onCancel:a,onConfirm:s}){let{t:c}=o(`settings`),l=(0,q.useRef)(null),u=(0,q.useId)(),d=nr(t,n,r?.key??null),f=r?{price:dn(r.total_price_cents),highlights:bn(r,cn(r.key)?.extraFeatures??[])}:null,p=d.subtitle,m=d.note?{"aria-describedby":u}:p?{}:{"aria-describedby":void 0};return(0,J.jsx)(V.Root,{open:e,onOpenChange:e=>{!e&&!i&&a()},children:(0,J.jsxs)(V.Content,{size:`sm`,hideCloseButton:!0,className:`gap-4 p-4 max-w-[421px]`,onOpenAutoFocus:e=>{e.preventDefault(),l.current?.focus()},...m,children:[(0,J.jsxs)(V.Header,{className:`flex-row items-center gap-3 p-0 pb-2`,children:[d.destructive?(0,J.jsx)(Kn,{"data-testid":`package-switch-warning-tile`,className:`bg-[var(--system-negative-weak)]`,children:(0,J.jsx)(b,{className:`size-6 text-[var(--system-negative-strong)]`})}):(0,J.jsx)(Jn,{}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,J.jsx)(V.Title,{className:`text-title-small text-[var(--content-emphasised)] [&>span]:whitespace-normal`,children:d.title}),p?(0,J.jsx)(V.Description,{className:`mt-0 text-body-medium-default text-[var(--content-tertiary)]`,children:p}):null]})]}),f?(0,J.jsxs)(V.Body,{className:`flex flex-col gap-4 p-0`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,J.jsx)(E,{as:`p`,variant:`title-large`,className:`text-[var(--content-default)]`,children:f.price}),(0,J.jsx)(E,{as:`p`,variant:`label-medium-default`,className:`leading-[15px] text-[var(--content-tertiary)]`,children:d.priceCaption})]}),(0,J.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,J.jsx)(E,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:d.checklistHeading}),(0,J.jsx)(`ul`,{className:`flex flex-col gap-2`,children:f.highlights.map(e=>(0,J.jsxs)(`li`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(_,{className:`size-4 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,J.jsx)(E,{as:`span`,variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:e})]},e))})]}):null,d.note?(0,J.jsx)(E,{id:u,as:`p`,variant:`body-medium-default`,className:`text-[var(--content-secondary)]`,children:d.note}):null,(0,J.jsxs)(V.Footer,{className:`flex-col gap-4 p-0`,children:[(0,J.jsx)(T,{fullWidth:!0,variant:d.destructive?`danger`:`primary`,onClick:s,disabled:i,"data-testid":`confirm-package-switch-button`,children:d.confirmLabel}),(0,J.jsx)(T,{ref:l,fullWidth:!0,variant:`ghost`,onClick:a,disabled:i,children:c(`packageSwitchConfirmModal.cancel`)})]})]})})}function ir(){let e=a();(0,q.useEffect)(()=>ye(()=>{Wn(e)}),[e])}export{fn as A,Ue as B,Sn as C,pn as D,vn as E,Zt as F,K as H,rn as I,Qt as L,cn as M,on as N,un as O,$t as P,nn as R,Cn as S,_n as T,Q as V,Nn as _,Un as a,Tn as b,Bn as c,Hn as d,Pn as f,Dn as g,On as h,Wn as i,mn as j,dn as k,Vn as l,An as m,rr as n,zn as o,En as p,Gn as r,Rn as s,ir as t,Ln as u,Mn as v,yn as w,wn as x,jn as y,Xt as z};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BVVp210p.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-DPM_L_aA.js","assets/vendor-CYfJo8gP.js","assets/icons-CSdHOix6.js","assets/index-ChmqERCm.css"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{_ as t,b as n,l as r}from"./react-DPM_L_aA.js";import{Fi as i,Ii as a,Ni as o,zi as s}from"./index-BVVp210p.js";var c=e(n(),1),l=new Set;function u(e){if(typeof e==`function`){e().catch(()=>{});return}for(let t of Object.values(e))typeof t==`function`&&t().catch(()=>{})}function d(e){!e||l.has(e)||(l.add(e),t(async()=>{let{routeTree:e}=await import(`./index-BVVp210p.js`);return{routeTree:e}},__vite__mapDeps([0,1,2,3,4,5])).then(({routeTree:t})=>{let n=r(t,e);for(let e of n??[]){let t=e.route.lazy;t&&u(t)}}).catch(()=>{l.delete(e)}))}var f=.25;function p(e){e.style.transition=``,e.style.transform=``,e.style.willChange=``,e.style.opacity=``}function m({containerRef:e,onBack:t,enabled:n,navKey:r,prefetchHref:l}){let u=(0,c.useRef)(t);(0,c.useLayoutEffect)(()=>{u.current=t},[t]);let m=(0,c.useRef)(l);(0,c.useLayoutEffect)(()=>{m.current=l},[l]);let h=(0,c.useRef)(!1),g=(0,c.useRef)(new Set),_=(0,c.useRef)(!1),v=o.use.registerBackOwner(),y=o.use.unregisterBackOwner();(0,c.useEffect)(()=>{if(n)return v(),y},[n,v,y]),(0,c.useEffect)(()=>{_.current=!1;let t=g.current;return()=>{_.current=!0;for(let e of t)clearTimeout(e);t.clear();let n=e.current;n&&p(n)}},[e]);let b=(e,t)=>{let n=setTimeout(()=>{g.current.delete(n),_.current||e()},t);g.current.add(n)},x=(e,t)=>{e.style.transform=t===0?``:`translateX(${t}px)`},S=e=>{e.style.transition=`transform 200ms ${s}`,x(e,0);let t=()=>{e.removeEventListener(`transitionend`,t),p(e)};e.addEventListener(`transitionend`,t,{once:!0}),b(()=>p(e),250)},C=e=>{e.style.transition=`transform 150ms ${s}`,x(e,window.innerWidth);let t=!1,n=()=>{if(t||_.current)return;t=!0,e.removeEventListener(`transitionend`,n);let r=-(window.innerWidth*f);e.style.transition=`none`,e.style.transform=`translateX(${r}px)`,e.style.opacity=`0`,e.offsetWidth,h.current=!0,u.current(),b(()=>{h.current&&(h.current=!1,p(e))},400)};e.addEventListener(`transitionend`,n,{once:!0}),b(n,200)};a({enabled:n,onConfirm:()=>{d(m.current);let t=e.current;t&&(t.style.transition=`none`,t.style.willChange=`transform`)},onMove:(t,n)=>{let r=e.current;r&&x(r,i(t,n))},onCommit:()=>{let t=e.current;if(!t){u.current();return}C(t)},onCancel:t=>{let n=e.current;n&&(t?S(n):p(n))}}),(0,c.useLayoutEffect)(()=>{if(!h.current)return;h.current=!1;let t=e.current;if(!t)return;let n=!1,r=()=>{n||(n=!0,t.removeEventListener(`transitionend`,r),p(t))};t.style.transition=`transform 200ms ${s}, opacity 200ms ${s}`,t.style.transform=``,t.style.opacity=``,t.addEventListener(`transitionend`,r,{once:!0});let i=setTimeout(r,250);return()=>{clearTimeout(i),t.removeEventListener(`transitionend`,r),p(t)}},[r,e])}export{m as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-b_IQShc9.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-DPM_L_aA.js","assets/vendor-CYfJo8gP.js","assets/icons-CSdHOix6.js","assets/index-BUt2OH6r.css"])))=>i.map(i=>d[i]);
2
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{_ as t,b as n,l as r}from"./react-DPM_L_aA.js";import{Fi as i,Ii as a,Ni as o,zi as s}from"./index-b_IQShc9.js";var c=e(n(),1),l=new Set;function u(e){if(typeof e==`function`){e().catch(()=>{});return}for(let t of Object.values(e))typeof t==`function`&&t().catch(()=>{})}function d(e){!e||l.has(e)||(l.add(e),t(async()=>{let{routeTree:e}=await import(`./index-b_IQShc9.js`);return{routeTree:e}},__vite__mapDeps([0,1,2,3,4,5])).then(({routeTree:t})=>{let n=r(t,e);for(let e of n??[]){let t=e.route.lazy;t&&u(t)}}).catch(()=>{l.delete(e)}))}var f=.25;function p(e){e.style.transition=``,e.style.transform=``,e.style.willChange=``,e.style.opacity=``}function m({containerRef:e,onBack:t,enabled:n,navKey:r,prefetchHref:l}){let u=(0,c.useRef)(t);(0,c.useLayoutEffect)(()=>{u.current=t},[t]);let m=(0,c.useRef)(l);(0,c.useLayoutEffect)(()=>{m.current=l},[l]);let h=(0,c.useRef)(!1),g=(0,c.useRef)(new Set),_=(0,c.useRef)(!1),v=o.use.registerBackOwner(),y=o.use.unregisterBackOwner();(0,c.useEffect)(()=>{if(n)return v(),y},[n,v,y]),(0,c.useEffect)(()=>{_.current=!1;let t=g.current;return()=>{_.current=!0;for(let e of t)clearTimeout(e);t.clear();let n=e.current;n&&p(n)}},[e]);let b=(e,t)=>{let n=setTimeout(()=>{g.current.delete(n),_.current||e()},t);g.current.add(n)},x=(e,t)=>{e.style.transform=t===0?``:`translateX(${t}px)`},S=e=>{e.style.transition=`transform 200ms ${s}`,x(e,0);let t=()=>{e.removeEventListener(`transitionend`,t),p(e)};e.addEventListener(`transitionend`,t,{once:!0}),b(()=>p(e),250)},C=e=>{e.style.transition=`transform 150ms ${s}`,x(e,window.innerWidth);let t=!1,n=()=>{if(t||_.current)return;t=!0,e.removeEventListener(`transitionend`,n);let r=-(window.innerWidth*f);e.style.transition=`none`,e.style.transform=`translateX(${r}px)`,e.style.opacity=`0`,e.offsetWidth,h.current=!0,u.current(),b(()=>{h.current&&(h.current=!1,p(e))},400)};e.addEventListener(`transitionend`,n,{once:!0}),b(n,200)};a({enabled:n,onConfirm:()=>{d(m.current);let t=e.current;t&&(t.style.transition=`none`,t.style.willChange=`transform`)},onMove:(t,n)=>{let r=e.current;r&&x(r,i(t,n))},onCommit:()=>{let t=e.current;if(!t){u.current();return}C(t)},onCancel:t=>{let n=e.current;n&&(t?S(n):p(n))}}),(0,c.useLayoutEffect)(()=>{if(!h.current)return;h.current=!1;let t=e.current;if(!t)return;let n=!1,r=()=>{n||(n=!0,t.removeEventListener(`transitionend`,r),p(t))};t.style.transition=`transform 200ms ${s}, opacity 200ms ${s}`,t.style.transform=``,t.style.opacity=``,t.addEventListener(`transitionend`,r,{once:!0});let i=setTimeout(r,250);return()=>{clearTimeout(i),t.removeEventListener(`transitionend`,r),p(t)}},[r,e])}export{m as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t}from"./react-DPM_L_aA.js";import{di as n,fi as r,hp as i,ui as a}from"./index-BVVp210p.js";var o=e(t(),1),s={ArrowUp:`Up`,ArrowDown:`Down`,ArrowLeft:`Left`,ArrowRight:`Right`,Enter:`Return`,NumpadEnter:`Return`,Space:`Space`,Tab:`Tab`,Escape:`Escape`,Backspace:`Backspace`,Delete:`Delete`,Insert:`Insert`,Home:`Home`,End:`End`,PageUp:`PageUp`,PageDown:`PageDown`,Minus:`-`,Equal:`=`,BracketLeft:`[`,BracketRight:`]`,Backslash:`\\`,Semicolon:`;`,Quote:`'`,Backquote:"`",Comma:`,`,Period:`.`,Slash:`/`},c=new Set([`MetaLeft`,`MetaRight`,`ControlLeft`,`ControlRight`,`AltLeft`,`AltRight`,`ShiftLeft`,`ShiftRight`]),l=e=>{let t=e.code;return c.has(t)?null:/^Key[A-Z]$/.test(t)?t.slice(3):/^Digit[0-9]$/.test(t)?t.slice(5):/^Numpad[0-9]$/.test(t)?`num${t.slice(6)}`:/^F[0-9]{1,2}$/.test(t)?t:s[t]??null},u=(e,t=`macos`)=>{let n=l(e);if(n===null)return null;let r=[];return t===`windows`||t===`linux`?(e.ctrlKey&&r.push(`CmdOrCtrl`),e.metaKey&&r.push(`Super`)):(e.metaKey&&r.push(`CmdOrCtrl`),e.ctrlKey&&r.push(`Control`)),e.altKey&&r.push(`Alt`),e.shiftKey&&r.push(`Shift`),[...r,n].join(`+`)},d={macos:new Set([`Command`,`Cmd`,`CommandOrControl`]),windows:new Set([`Control`,`Ctrl`,`CommandOrControl`]),linux:new Set([`Control`,`Ctrl`,`CommandOrControl`])},f=(e,t=`macos`)=>{let n=d[t],r=e.split(`+`).map(e=>n.has(e)?`CmdOrCtrl`:e),i=r.pop()??``;return[...new Set(r)].sort().concat(i).join(`+`)},p=(e,t,n,r=`macos`)=>{if(n===``)return null;let i=f(n,r);return e.find(e=>e.key!==t&&e.accelerator!==``&&f(e.accelerator,r)===i)??null};function m(e){let t=e?.onBound,[s,c]=(0,o.useState)([]),[l,d]=(0,o.useState)(null),[f,m]=(0,o.useState)(null),h=(0,o.useCallback)(()=>{a().then(c)},[]);(0,o.useEffect)(()=>(h(),n(c)),[h]);let g=(0,o.useCallback)(()=>{d(null),m(null)},[]);return(0,o.useEffect)(()=>{if(l===null)return;let e=e=>{if(e.preventDefault(),e.stopPropagation(),e.code===`Escape`){g();return}let n=i()??`macos`,a=u(e,n);if(a===null)return;let o=p(s,l,a,n);if(o!==null){m({key:l,label:o.label});return}r(l,a).then(()=>{t?.(l),h()}).catch(()=>{h()}),g()};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[l,s,t,h,g]),{catalog:s,recordingKey:l,conflict:f,startRecording:(0,o.useCallback)(e=>{m(null),d(e)},[]),stopRecording:g,resetHotkey:(0,o.useCallback)(e=>{let t=p(s,e,s.find(t=>t.key===e)?.defaultAccelerator??``,i()??`macos`);if(t!==null){d(null),m({key:e,label:t.label});return}g(),r(e,null).then(h)},[s,h,g]),removeHotkey:(0,o.useCallback)(e=>{g(),r(e,``).then(h)},[h,g])}}export{m as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t}from"./react-DPM_L_aA.js";import{di as n,fi as r,hp as i,ui as a}from"./index-b_IQShc9.js";var o=e(t(),1),s={ArrowUp:`Up`,ArrowDown:`Down`,ArrowLeft:`Left`,ArrowRight:`Right`,Enter:`Return`,NumpadEnter:`Return`,Space:`Space`,Tab:`Tab`,Escape:`Escape`,Backspace:`Backspace`,Delete:`Delete`,Insert:`Insert`,Home:`Home`,End:`End`,PageUp:`PageUp`,PageDown:`PageDown`,Minus:`-`,Equal:`=`,BracketLeft:`[`,BracketRight:`]`,Backslash:`\\`,Semicolon:`;`,Quote:`'`,Backquote:"`",Comma:`,`,Period:`.`,Slash:`/`},c=new Set([`MetaLeft`,`MetaRight`,`ControlLeft`,`ControlRight`,`AltLeft`,`AltRight`,`ShiftLeft`,`ShiftRight`]),l=e=>{let t=e.code;return c.has(t)?null:/^Key[A-Z]$/.test(t)?t.slice(3):/^Digit[0-9]$/.test(t)?t.slice(5):/^Numpad[0-9]$/.test(t)?`num${t.slice(6)}`:/^F[0-9]{1,2}$/.test(t)?t:s[t]??null},u=(e,t=`macos`)=>{let n=l(e);if(n===null)return null;let r=[];return t===`windows`||t===`linux`?(e.ctrlKey&&r.push(`CmdOrCtrl`),e.metaKey&&r.push(`Super`)):(e.metaKey&&r.push(`CmdOrCtrl`),e.ctrlKey&&r.push(`Control`)),e.altKey&&r.push(`Alt`),e.shiftKey&&r.push(`Shift`),[...r,n].join(`+`)},d={macos:new Set([`Command`,`Cmd`,`CommandOrControl`]),windows:new Set([`Control`,`Ctrl`,`CommandOrControl`]),linux:new Set([`Control`,`Ctrl`,`CommandOrControl`])},f=(e,t=`macos`)=>{let n=d[t],r=e.split(`+`).map(e=>n.has(e)?`CmdOrCtrl`:e),i=r.pop()??``;return[...new Set(r)].sort().concat(i).join(`+`)},p=(e,t,n,r=`macos`)=>{if(n===``)return null;let i=f(n,r);return e.find(e=>e.key!==t&&e.accelerator!==``&&f(e.accelerator,r)===i)??null};function m(e){let t=e?.onBound,[s,c]=(0,o.useState)([]),[l,d]=(0,o.useState)(null),[f,m]=(0,o.useState)(null),h=(0,o.useCallback)(()=>{a().then(c)},[]);(0,o.useEffect)(()=>(h(),n(c)),[h]);let g=(0,o.useCallback)(()=>{d(null),m(null)},[]);return(0,o.useEffect)(()=>{if(l===null)return;let e=e=>{if(e.preventDefault(),e.stopPropagation(),e.code===`Escape`){g();return}let n=i()??`macos`,a=u(e,n);if(a===null)return;let o=p(s,l,a,n);if(o!==null){m({key:l,label:o.label});return}r(l,a).then(()=>{t?.(l),h()}).catch(()=>{h()}),g()};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[l,s,t,h,g]),{catalog:s,recordingKey:l,conflict:f,startRecording:(0,o.useCallback)(e=>{m(null),d(e)},[]),stopRecording:g,resetHotkey:(0,o.useCallback)(e=>{let t=p(s,e,s.find(t=>t.key===e)?.defaultAccelerator??``,i()??`macos`);if(t!==null){d(null),m({key:e,label:t.label});return}g(),r(e,null).then(h)},[s,h,g]),removeHotkey:(0,o.useCallback)(e=>{g(),r(e,``).then(h)},[h,g])}}export{m as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Jn as t,Zn as n,er as r,j as i}from"./vendor-CYfJo8gP.js";import{b as a,t as o}from"./react-DPM_L_aA.js";import{Br as s,on as c,tn as l,tr as u}from"./icons-CSdHOix6.js";import{Cv as d,Dy as f,Ev as p,Ey as m,Fu as h,Is as g,Ns as _,Ps as v,Pu as y,Xu as b,cd as x,cy as S,d as ee,dd as C,dh as w,eg as T,f as te,fd as ne,fh as E,jp as D,ld as O,lh as k,lo as A,m as j,p as re,pd as ie,u as ae,uh as M,uo as N,uy as P,vu as F,vy as I,wv as L}from"./index-BVVp210p.js";import{t as R}from"./a2a-invite-B9jqmgbB.js";var z=e(a(),1),B=o(),V=[`no_one`,`guardian_only`,`trusted_contacts`,`any_contact`,`strangers`],H=`trusted_contacts`,U=new Set([`platform`,`a2a`]),W=new Set([`vellum`,`whatsapp`]);function G(e){return W.has(e)}function K(e){return t=>{S.error(t instanceof Error?t.message:e)}}function q(e){return typeof e==`string`&&V.includes(e)}function J(e){return U.has(e)}function Y(e){return(e?.policies??[]).filter(e=>!J(e.channelType)&&!G(e.channelType)).map(e=>({...e,policy:q(e.policy)?e.policy:`trusted_contacts`}))}async function X(e,t,n,r){if(J(t))throw new d(403,`Channel "${t}" is internal and is not user-configurable.`);let{data:i,error:a,response:o}=await F({path:{assistant_id:e,channel_type:t},body:{policy:n,note:r??null},throwOnError:!1});if(L(o,a,`Failed to save channel policy.`),!o.ok)throw new d(o.status,p(a,o,`Failed to save channel policy.`));if(!i?.policy)throw new d(500,`Gateway returned no policy in response.`);return i.policy}var oe=`0.10.0`;function Z(){return D(oe)}function se(e){let t=e-Date.now();if(t<=0)return`Expired`;let n=Math.ceil(t/(1e3*60*60*24));return n===1?`Expires in 1 day`:`Expires in ${n} days`}function ce({open:e,assistantId:n,onClose:r}){let{t:a}=i(),[o,c]=(0,z.useState)(!1),d=(0,z.useRef)(null),p=(0,z.useRef)(!1),h=t({...x({path:{assistant_id:n}})}),g=(0,z.useRef)(h.mutate);(0,z.useLayoutEffect)(()=>{g.current=h.mutate});let _=(0,z.useRef)(h.reset);(0,z.useLayoutEffect)(()=>{_.current=h.reset}),(0,z.useEffect)(()=>{e&&!p.current&&g.current({path:{assistant_id:n}}),p.current=e},[e,n]),(0,z.useEffect)(()=>()=>{d.current&&clearTimeout(d.current)},[]);let v=(0,z.useCallback)(()=>{_.current(),c(!1),d.current&&=(clearTimeout(d.current),null),r()},[r]),y=(0,z.useCallback)(e=>{T(e,{errorMessage:`Couldn't copy the invite link.`,onCopied:()=>{c(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>c(!1),2e3)}})},[]),b=h.isSuccess&&h.data.token?R({senderAssistantId:n,token:h.data.token}):``;return(0,B.jsx)(P.Root,{open:e,onOpenChange:e=>{e||v()},children:(0,B.jsxs)(P.Content,{size:`sm`,children:[(0,B.jsx)(P.Header,{children:(0,B.jsx)(P.Title,{children:a(`generateInviteLinkDialog.title`)})}),(0,B.jsx)(P.Body,{children:h.isPending?(0,B.jsxs)(`div`,{className:`flex items-center gap-2 py-2 text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[(0,B.jsx)(l,{className:`h-4 w-4 animate-spin`}),a(`generateInviteLinkDialog.creating`)]}):h.isError?(0,B.jsxs)(`div`,{className:`space-y-3`,children:[(0,B.jsx)(`p`,{role:`alert`,className:`!m-0 text-body-medium-lighter`,style:{color:`var(--system-negative-strong)`},children:a(`generateInviteLinkDialog.createFailed`)}),(0,B.jsx)(f,{variant:`outlined`,onClick:()=>h.mutate({path:{assistant_id:n}}),children:a(`generateInviteLinkDialog.tryAgain`)})]}):h.isSuccess?(0,B.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,B.jsx)(m,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:a(`generateInviteLinkDialog.shareHint`)}),(0,B.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,B.jsx)(I,{type:`text`,readOnly:!0,value:b,fullWidth:!0,wrapperClassName:`flex-1`,className:`font-mono`,onFocus:e=>e.currentTarget.select()}),(0,B.jsx)(`button`,{type:`button`,onClick:()=>y(b),"aria-label":a(`generateInviteLinkDialog.copyAriaLabel`),className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-[var(--border-base)] hover:bg-[var(--surface-hover)]`,children:o?(0,B.jsx)(s,{className:`h-4 w-4`}):(0,B.jsx)(u,{className:`h-4 w-4`})})]}),h.data.expiresAt!=null&&(0,B.jsx)(m,{variant:`body-small-default`,style:{color:`var(--content-tertiary)`},children:se(h.data.expiresAt)})]}):null}),(0,B.jsx)(P.Footer,{children:(0,B.jsx)(f,{variant:`outlined`,onClick:v,children:a(`generateInviteLinkDialog.done`)})})]})})}function le({onClick:e}){let{t}=i();return(0,B.jsx)(f,{variant:`outlined`,size:`compact`,leftIcon:(0,B.jsx)(c,{className:`h-3.5 w-3.5`}),onClick:e,children:t(`shareConnectionLinkButton.label`)})}function ue(e){let i=r(),a=Z(),o=(0,z.useMemo)(()=>({path:{assistant_id:e}}),[e]),s=(0,z.useMemo)(()=>N(o),[o]),c=n({...A(o),enabled:a,select:Y}),l=(0,z.useMemo)(()=>{let e={};for(let t of c.data??[])v(t.channelType)&&(e[t.channelType]=t.policy);return e},[c.data]),u=t({mutationFn:({channelKey:t,policy:n})=>X(e,t,n),onSuccess:()=>i.invalidateQueries({queryKey:s}),onError:K(`Failed to save channel policy`)}),d=(0,z.useCallback)((e,t)=>{u.mutate({channelKey:e,policy:t})},[u]);return a?{policies:l,savingKey:u.isPending?u.variables?.channelKey??null:null,isLoading:c.isPending,isError:c.isError,onChange:d}:{policies:void 0,savingKey:null,isLoading:!1,isError:!1,onChange:void 0}}var de=`0.11.5-dev.202608242314.38e0513`;function Q(){return D(de)}var fe=`0.11.5-dev.202608252008.65007aa`;function pe(){return D(fe)}var $={slack:M,telegram:w,discord:k,email:void 0,phone:E},me={slack:`useAssistantChannels.setupPrompt.slack`,telegram:`useAssistantChannels.setupPrompt.telegram`,discord:`useAssistantChannels.setupPrompt.discord`,email:`useAssistantChannels.setupPrompt.email`,phone:`useAssistantChannels.setupPrompt.phone`},he={slack:`useAssistantChannels.finishPrompt.slack`,telegram:`useAssistantChannels.finishPrompt.telegram`,discord:`useAssistantChannels.finishPrompt.discord`,email:`useAssistantChannels.finishPrompt.email`,phone:`useAssistantChannels.finishPrompt.phone`},ge=15e3;function _e({assistantId:e,onStartSetupConversation:a}){let{t:o}=i(`common`),s=r(),c=(0,z.useMemo)(()=>({path:{assistant_id:e}}),[e]),l=(0,z.useMemo)(()=>h(c),[c]),u=Q(),d=pe(),f=(0,z.useMemo)(()=>ve(u),[u]),p=n({...y(c),enabled:!!e,refetchInterval:ge,select:e=>e.snapshots}),m=(0,z.useMemo)(()=>ye(p.data??[],f,d),[p.data,f,d]),g=m.some(e=>e.key===`slack`&&e.configured),_=n({...C(c),enabled:g,select:e=>e.threadMode}),v=ue(e),b=(0,z.useCallback)(()=>s.invalidateQueries({queryKey:l}),[s,l]),x=t({mutationFn:async t=>{let n=$[t];if(!n)throw Error(`No route clears ${t} credentials.`);await n({path:{assistant_id:e},throwOnError:!0})},onSettled:(t,n,r)=>{b(),r===`slack`&&j(s,e)}}),S=ee({assistantId:e}),w=te({assistantId:e}),T=n({...O(c),enabled:!!e&&d}),E=re({assistantId:e}),D=ae({assistantId:e}),k=t({...ie(),onSuccess:()=>{s.invalidateQueries({queryKey:ne(c)})}}),A=w.mutate,M=(0,z.useCallback)(e=>{A(e)},[A]),N=S.mutate,P=(0,z.useCallback)(e=>{N(e)},[N]),F=E.mutate,I=(0,z.useCallback)((e,t)=>{F({botToken:e,appToken:t})},[F]),L=k.mutate,R=(0,z.useCallback)(t=>{L({path:{assistant_id:e},body:{threadMode:t}})},[L,e]),B=D.mutateAsync,V=(0,z.useCallback)(async(e,t)=>{await B({accountSid:e,authToken:t})},[B]),H=(0,z.useCallback)((e,t=!1)=>{a&&a(o(t?he[e]:me[e]))},[a,o]),U=x.mutate,W=(0,z.useCallback)(e=>{U(e)},[U]);return{channels:m,pendingChannelKey:x.isPending?x.variables??null:null,slackThreadMode:_.data,slackThreadModePending:k.isPending,channelPolicies:v.policies,policySavingKey:v.savingKey,policiesLoading:v.isLoading,policiesError:v.isError,onChannelPolicyChange:v.onChange,onSetup:a?H:void 0,onDisconnect:W,onSaveTelegramToken:P,telegramSaveStatus:S.status,telegramSaveError:S.error?.message??null,onSaveDiscordToken:M,discordSaveStatus:w.status,discordSaveError:w.error?.message??null,discordInviteUrl:w.data?.data?.inviteUrl??T.data?.inviteUrl,onSaveSlackConfig:I,slackSaveStatus:E.status,slackSaveError:E.error?.message??null,onSlackThreadModeChange:R,onSaveTwilioCredentials:V}}function ve(e){return e?_:_.filter(e=>e!==`discord`)}function ye(e,t,n){let r=new Map;for(let t of e)r.set(t.channel,t);return t.map(e=>{let t=r.get(e);return{key:e,status:be(t),configured:t?.setupStatus===`ready`,canDisconnect:$[e]!==void 0&&(e!==`discord`||n),canManualEntry:g[e].credentialForm!==void 0&&(e!==`discord`||n),health:t?.health,address:t?.channelHandle??void 0}})}function be(e){return e?e.ready?`ready`:e.setupStatus===`not_configured`?`not_configured`:`incomplete`:`not_configured`}function xe(e){let t=r(),[n,i]=(0,z.useState)(!1);return{isOpen:n,open:(0,z.useCallback)(()=>{i(!0)},[]),close:(0,z.useCallback)(()=>{i(!1),t.invalidateQueries({queryKey:b({path:{assistant_id:e}})})},[t,e])}}export{Z as a,K as c,ce as i,H as l,_e as n,X as o,le as r,Y as s,xe as t,V as u};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Jn as t,Zn as n,er as r,j as i}from"./vendor-CYfJo8gP.js";import{b as a,t as o}from"./react-DPM_L_aA.js";import{Br as s,on as c,tn as l,tr as u}from"./icons-CSdHOix6.js";import{Cv as d,Dy as f,Ev as p,Ey as m,Fu as h,Is as g,Ns as _,Ps as v,Pu as y,Xu as b,cd as x,cy as S,d as ee,dd as C,dh as w,eg as T,f as te,fd as ne,fh as E,jp as D,ld as O,lh as k,lo as A,m as j,p as re,pd as ie,u as ae,uh as M,uo as N,uy as P,vu as F,vy as I,wv as L}from"./index-b_IQShc9.js";import{t as R}from"./a2a-invite-BmopEUuc.js";var z=e(a(),1),B=o(),V=[`no_one`,`guardian_only`,`trusted_contacts`,`any_contact`,`strangers`],H=`trusted_contacts`,U=new Set([`platform`,`a2a`]),W=new Set([`vellum`,`whatsapp`]);function G(e){return W.has(e)}function K(e){return t=>{S.error(t instanceof Error?t.message:e)}}function q(e){return typeof e==`string`&&V.includes(e)}function J(e){return U.has(e)}function Y(e){return(e?.policies??[]).filter(e=>!J(e.channelType)&&!G(e.channelType)).map(e=>({...e,policy:q(e.policy)?e.policy:`trusted_contacts`}))}async function X(e,t,n,r){if(J(t))throw new d(403,`Channel "${t}" is internal and is not user-configurable.`);let{data:i,error:a,response:o}=await F({path:{assistant_id:e,channel_type:t},body:{policy:n,note:r??null},throwOnError:!1});if(L(o,a,`Failed to save channel policy.`),!o.ok)throw new d(o.status,p(a,o,`Failed to save channel policy.`));if(!i?.policy)throw new d(500,`Gateway returned no policy in response.`);return i.policy}var oe=`0.10.0`;function Z(){return D(oe)}function se(e){let t=e-Date.now();if(t<=0)return`Expired`;let n=Math.ceil(t/(1e3*60*60*24));return n===1?`Expires in 1 day`:`Expires in ${n} days`}function ce({open:e,assistantId:n,onClose:r}){let{t:a}=i(),[o,c]=(0,z.useState)(!1),d=(0,z.useRef)(null),p=(0,z.useRef)(!1),h=t({...x({path:{assistant_id:n}})}),g=(0,z.useRef)(h.mutate);(0,z.useLayoutEffect)(()=>{g.current=h.mutate});let _=(0,z.useRef)(h.reset);(0,z.useLayoutEffect)(()=>{_.current=h.reset}),(0,z.useEffect)(()=>{e&&!p.current&&g.current({path:{assistant_id:n}}),p.current=e},[e,n]),(0,z.useEffect)(()=>()=>{d.current&&clearTimeout(d.current)},[]);let v=(0,z.useCallback)(()=>{_.current(),c(!1),d.current&&=(clearTimeout(d.current),null),r()},[r]),y=(0,z.useCallback)(e=>{T(e,{errorMessage:`Couldn't copy the invite link.`,onCopied:()=>{c(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>c(!1),2e3)}})},[]),b=h.isSuccess&&h.data.token?R({senderAssistantId:n,token:h.data.token}):``;return(0,B.jsx)(P.Root,{open:e,onOpenChange:e=>{e||v()},children:(0,B.jsxs)(P.Content,{size:`sm`,children:[(0,B.jsx)(P.Header,{children:(0,B.jsx)(P.Title,{children:a(`generateInviteLinkDialog.title`)})}),(0,B.jsx)(P.Body,{children:h.isPending?(0,B.jsxs)(`div`,{className:`flex items-center gap-2 py-2 text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[(0,B.jsx)(l,{className:`h-4 w-4 animate-spin`}),a(`generateInviteLinkDialog.creating`)]}):h.isError?(0,B.jsxs)(`div`,{className:`space-y-3`,children:[(0,B.jsx)(`p`,{role:`alert`,className:`!m-0 text-body-medium-lighter`,style:{color:`var(--system-negative-strong)`},children:a(`generateInviteLinkDialog.createFailed`)}),(0,B.jsx)(f,{variant:`outlined`,onClick:()=>h.mutate({path:{assistant_id:n}}),children:a(`generateInviteLinkDialog.tryAgain`)})]}):h.isSuccess?(0,B.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,B.jsx)(m,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:a(`generateInviteLinkDialog.shareHint`)}),(0,B.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,B.jsx)(I,{type:`text`,readOnly:!0,value:b,fullWidth:!0,wrapperClassName:`flex-1`,className:`font-mono`,onFocus:e=>e.currentTarget.select()}),(0,B.jsx)(`button`,{type:`button`,onClick:()=>y(b),"aria-label":a(`generateInviteLinkDialog.copyAriaLabel`),className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-[var(--border-base)] hover:bg-[var(--surface-hover)]`,children:o?(0,B.jsx)(s,{className:`h-4 w-4`}):(0,B.jsx)(u,{className:`h-4 w-4`})})]}),h.data.expiresAt!=null&&(0,B.jsx)(m,{variant:`body-small-default`,style:{color:`var(--content-tertiary)`},children:se(h.data.expiresAt)})]}):null}),(0,B.jsx)(P.Footer,{children:(0,B.jsx)(f,{variant:`outlined`,onClick:v,children:a(`generateInviteLinkDialog.done`)})})]})})}function le({onClick:e}){let{t}=i();return(0,B.jsx)(f,{variant:`outlined`,size:`compact`,leftIcon:(0,B.jsx)(c,{className:`h-3.5 w-3.5`}),onClick:e,children:t(`shareConnectionLinkButton.label`)})}function ue(e){let i=r(),a=Z(),o=(0,z.useMemo)(()=>({path:{assistant_id:e}}),[e]),s=(0,z.useMemo)(()=>N(o),[o]),c=n({...A(o),enabled:a,select:Y}),l=(0,z.useMemo)(()=>{let e={};for(let t of c.data??[])v(t.channelType)&&(e[t.channelType]=t.policy);return e},[c.data]),u=t({mutationFn:({channelKey:t,policy:n})=>X(e,t,n),onSuccess:()=>i.invalidateQueries({queryKey:s}),onError:K(`Failed to save channel policy`)}),d=(0,z.useCallback)((e,t)=>{u.mutate({channelKey:e,policy:t})},[u]);return a?{policies:l,savingKey:u.isPending?u.variables?.channelKey??null:null,isLoading:c.isPending,isError:c.isError,onChange:d}:{policies:void 0,savingKey:null,isLoading:!1,isError:!1,onChange:void 0}}var de=`0.11.5-dev.202608242314.38e0513`;function Q(){return D(de)}var fe=`0.11.5-dev.202608252008.65007aa`;function pe(){return D(fe)}var $={slack:M,telegram:w,discord:k,email:void 0,phone:E},me={slack:`useAssistantChannels.setupPrompt.slack`,telegram:`useAssistantChannels.setupPrompt.telegram`,discord:`useAssistantChannels.setupPrompt.discord`,email:`useAssistantChannels.setupPrompt.email`,phone:`useAssistantChannels.setupPrompt.phone`},he={slack:`useAssistantChannels.finishPrompt.slack`,telegram:`useAssistantChannels.finishPrompt.telegram`,discord:`useAssistantChannels.finishPrompt.discord`,email:`useAssistantChannels.finishPrompt.email`,phone:`useAssistantChannels.finishPrompt.phone`},ge=15e3;function _e({assistantId:e,onStartSetupConversation:a}){let{t:o}=i(`common`),s=r(),c=(0,z.useMemo)(()=>({path:{assistant_id:e}}),[e]),l=(0,z.useMemo)(()=>h(c),[c]),u=Q(),d=pe(),f=(0,z.useMemo)(()=>ve(u),[u]),p=n({...y(c),enabled:!!e,refetchInterval:ge,select:e=>e.snapshots}),m=(0,z.useMemo)(()=>ye(p.data??[],f,d),[p.data,f,d]),g=m.some(e=>e.key===`slack`&&e.configured),_=n({...C(c),enabled:g,select:e=>e.threadMode}),v=ue(e),b=(0,z.useCallback)(()=>s.invalidateQueries({queryKey:l}),[s,l]),x=t({mutationFn:async t=>{let n=$[t];if(!n)throw Error(`No route clears ${t} credentials.`);await n({path:{assistant_id:e},throwOnError:!0})},onSettled:(t,n,r)=>{b(),r===`slack`&&j(s,e)}}),S=ee({assistantId:e}),w=te({assistantId:e}),T=n({...O(c),enabled:!!e&&d}),E=re({assistantId:e}),D=ae({assistantId:e}),k=t({...ie(),onSuccess:()=>{s.invalidateQueries({queryKey:ne(c)})}}),A=w.mutate,M=(0,z.useCallback)(e=>{A(e)},[A]),N=S.mutate,P=(0,z.useCallback)(e=>{N(e)},[N]),F=E.mutate,I=(0,z.useCallback)((e,t)=>{F({botToken:e,appToken:t})},[F]),L=k.mutate,R=(0,z.useCallback)(t=>{L({path:{assistant_id:e},body:{threadMode:t}})},[L,e]),B=D.mutateAsync,V=(0,z.useCallback)(async(e,t)=>{await B({accountSid:e,authToken:t})},[B]),H=(0,z.useCallback)((e,t=!1)=>{a&&a(o(t?he[e]:me[e]))},[a,o]),U=x.mutate,W=(0,z.useCallback)(e=>{U(e)},[U]);return{channels:m,pendingChannelKey:x.isPending?x.variables??null:null,slackThreadMode:_.data,slackThreadModePending:k.isPending,channelPolicies:v.policies,policySavingKey:v.savingKey,policiesLoading:v.isLoading,policiesError:v.isError,onChannelPolicyChange:v.onChange,onSetup:a?H:void 0,onDisconnect:W,onSaveTelegramToken:P,telegramSaveStatus:S.status,telegramSaveError:S.error?.message??null,onSaveDiscordToken:M,discordSaveStatus:w.status,discordSaveError:w.error?.message??null,discordInviteUrl:w.data?.data?.inviteUrl??T.data?.inviteUrl,onSaveSlackConfig:I,slackSaveStatus:E.status,slackSaveError:E.error?.message??null,onSlackThreadModeChange:R,onSaveTwilioCredentials:V}}function ve(e){return e?_:_.filter(e=>e!==`discord`)}function ye(e,t,n){let r=new Map;for(let t of e)r.set(t.channel,t);return t.map(e=>{let t=r.get(e);return{key:e,status:be(t),configured:t?.setupStatus===`ready`,canDisconnect:$[e]!==void 0&&(e!==`discord`||n),canManualEntry:g[e].credentialForm!==void 0&&(e!==`discord`||n),health:t?.health,address:t?.channelHandle??void 0}})}function be(e){return e?e.ready?`ready`:e.setupStatus===`not_configured`?`not_configured`:`incomplete`:`not_configured`}function xe(e){let t=r(),[n,i]=(0,z.useState)(!1);return{isOpen:n,open:(0,z.useCallback)(()=>{i(!0)},[]),close:(0,z.useCallback)(()=>{i(!1),t.invalidateQueries({queryKey:b({path:{assistant_id:e}})})},[t,e])}}export{Z as a,K as c,ce as i,H as l,_e as n,X as o,le as r,Y as s,xe as t,V as u};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t}from"./react-DPM_L_aA.js";import{pp as n}from"./index-BVVp210p.js";var r=e(t(),1);function i(e,t){let[i,a]=(0,r.useState)({platformAssistantId:null,isLoading:!1,error:null});return(0,r.useEffect)(()=>{if(!t||!e){a({platformAssistantId:null,isLoading:!1,error:null});return}let r=!0;return a({platformAssistantId:null,isLoading:!0,error:null}),n(e).then(e=>{r&&a({platformAssistantId:e,isLoading:!1,error:null})}).catch(e=>{r&&a({platformAssistantId:null,isLoading:!1,error:e instanceof Error?e:Error(String(e))})}),()=>{r=!1}},[e,t]),i}export{i as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t}from"./react-DPM_L_aA.js";import{pp as n}from"./index-b_IQShc9.js";var r=e(t(),1);function i(e,t){let[i,a]=(0,r.useState)({platformAssistantId:null,isLoading:!1,error:null});return(0,r.useEffect)(()=>{if(!t||!e){a({platformAssistantId:null,isLoading:!1,error:null});return}let r=!0;return a({platformAssistantId:null,isLoading:!0,error:null}),n(e).then(e=>{r&&a({platformAssistantId:e,isLoading:!1,error:null})}).catch(e=>{r&&a({platformAssistantId:null,isLoading:!1,error:e instanceof Error?e:Error(String(e))})}),()=>{r=!1}},[e,t]),i}export{i as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CYfJo8gP.js";import{b as n,g as r,r as i,t as a}from"./react-DPM_L_aA.js";import{tn as o}from"./icons-CSdHOix6.js";import{Bo as s,Lf as c,Nf as l,dv as u,es as d,zf as f,zg as p,zo as m}from"./index-BVVp210p.js";var h=a();function g(){let{t:e}=t(`account`);return(0,h.jsx)(o,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`authWaitSpinner.loading`)})}var _=e(n(),1);function v({to:e}){let t=m(e);return(0,_.useEffect)(()=>{t&&d(e)},[t,e]),t?null:(0,h.jsx)(i,{to:e,replace:!0})}function y(){let[e]=r(),t=c(),n=f(),i=l(),a=e.get(`returnTo`),o=p(a,u.assistant);if(!a)return{kind:`proceed`,returnTo:null};if(n)return{kind:`wait`};if(!t)return{kind:`proceed`,returnTo:o};if(s(o)){if(i===`pending`)return{kind:`wait`};if(i===`disabled`)return{kind:`proceed`,returnTo:o}}return{kind:`redirect`,node:(0,h.jsx)(v,{to:o})}}export{g as n,y as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CYfJo8gP.js";import{b as n,g as r,r as i,t as a}from"./react-DPM_L_aA.js";import{tn as o}from"./icons-CSdHOix6.js";import{Bo as s,Lf as c,Nf as l,dv as u,es as d,zf as f,zg as p,zo as m}from"./index-b_IQShc9.js";var h=a();function g(){let{t:e}=t(`account`);return(0,h.jsx)(o,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`authWaitSpinner.loading`)})}var _=e(n(),1);function v({to:e}){let t=m(e);return(0,_.useEffect)(()=>{t&&d(e)},[t,e]),t?null:(0,h.jsx)(i,{to:e,replace:!0})}function y(){let[e]=r(),t=c(),n=f(),i=l(),a=e.get(`returnTo`),o=p(a,u.assistant);if(!a)return{kind:`proceed`,returnTo:null};if(n)return{kind:`wait`};if(!t)return{kind:`proceed`,returnTo:o};if(s(o)){if(i===`pending`)return{kind:`wait`};if(i===`disabled`)return{kind:`proceed`,returnTo:o}}return{kind:`redirect`,node:(0,h.jsx)(v,{to:o})}}export{g as n,y as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CYfJo8gP.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{Wt as i,i as a}from"./icons-CSdHOix6.js";import{Dy as o,Li as s,Pi as c,vr as l,yr as u}from"./index-BVVp210p.js";var d=e(n(),1),f=r(),p=[`a[href]`,`button:not([disabled])`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`,`);function m({open:e,onClose:n,children:r,title:i}){let{t:l}=t(),u=(0,d.useRef)(null),m=(0,d.useRef)(null),h=(0,d.useRef)(n);(0,d.useEffect)(()=>{h.current=n});let{dragOffset:g,isDragging:_,onTouchStart:v,onTouchMove:y,onTouchEnd:b,onTouchCancel:x}=c({enabled:e,onSwipeLeft:n});return s(e),(0,d.useEffect)(()=>{if(!e)return;m.current?.focus();let t=e=>{if(e.key===`Escape`&&!e.defaultPrevented){e.preventDefault(),h.current();return}if(e.key!==`Tab`||!u.current)return;let t=u.current.querySelectorAll(p),n=t[0],r=t[t.length-1];if(!n||!r){e.preventDefault();return}let i=document.activeElement,a=u.current.contains(i);e.shiftKey?(!a||i===n)&&(e.preventDefault(),r.focus()):(!a||i===r)&&(e.preventDefault(),n.focus())};return document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`keydown`,t)}},[e]),e?(0,f.jsxs)(`div`,{ref:u,className:`fixed inset-0`,style:{zIndex:40},role:`dialog`,"aria-modal":`true`,"aria-label":i,children:[(0,f.jsx)(`button`,{type:`button`,"aria-label":l(`sideListDrawer.closeSidebarAria`),className:`absolute inset-0 h-full w-full cursor-default`,style:{background:`rgba(0, 0, 0, 0.4)`,zIndex:40},onClick:n}),(0,f.jsxs)(`aside`,{className:`relative flex h-full w-[80vw] max-w-xs flex-col shadow-xl`,style:{background:`var(--surface-lift)`,borderRight:`1px solid var(--border-base)`,zIndex:50,paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`,paddingLeft:`var(--safe-area-inset-left, env(safe-area-inset-left, 0px))`,transform:`translateX(${g}px)`,transition:_?`none`:`transform 200ms ease-out`,touchAction:`pan-y`},onTouchStart:v,onTouchMove:y,onTouchEnd:b,onTouchCancel:x,children:[(0,f.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between border-b px-4 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,f.jsx)(`span`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:i}),(0,f.jsx)(o,{ref:m,type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,f.jsx)(a,{"aria-hidden":!0}),onClick:n,"aria-label":l(`sideListDrawer.closeAria`),tintColor:`var(--content-tertiary)`})]}),(0,f.jsx)(`div`,{className:`flex-1 overflow-y-auto p-4`,children:r})]})]}):null}function h({onClick:e}){let{t:n}=t();return(0,f.jsx)(o,{type:`button`,variant:`ghost`,iconOnly:(0,f.jsx)(i,{"aria-hidden":!0}),onClick:e,"aria-label":n(`sideListDrawer.openSidebarAria`),tintColor:`var(--content-secondary)`})}var g=640;function _(){let{ref:e,size:t}=l(),n=t.w<=0,r=u(n),i=(n?r.w:t.w)>=g,[a,o]=(0,d.useState)(!1);return(0,d.useEffect)(()=>{i&&o(!1)},[i]),{paneRef:e,hasRoomForList:i,drawerOpen:a,openDrawer:(0,d.useCallback)(()=>o(!0),[]),closeDrawer:(0,d.useCallback)(()=>o(!1),[])}}export{m as n,h as r,_ as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CYfJo8gP.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{Wt as i,i as a}from"./icons-CSdHOix6.js";import{Dy as o,Li as s,Pi as c,vr as l,yr as u}from"./index-b_IQShc9.js";var d=e(n(),1),f=r(),p=[`a[href]`,`button:not([disabled])`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`,`);function m({open:e,onClose:n,children:r,title:i}){let{t:l}=t(),u=(0,d.useRef)(null),m=(0,d.useRef)(null),h=(0,d.useRef)(n);(0,d.useEffect)(()=>{h.current=n});let{dragOffset:g,isDragging:_,onTouchStart:v,onTouchMove:y,onTouchEnd:b,onTouchCancel:x}=c({enabled:e,onSwipeLeft:n});return s(e),(0,d.useEffect)(()=>{if(!e)return;m.current?.focus();let t=e=>{if(e.key===`Escape`&&!e.defaultPrevented){e.preventDefault(),h.current();return}if(e.key!==`Tab`||!u.current)return;let t=u.current.querySelectorAll(p),n=t[0],r=t[t.length-1];if(!n||!r){e.preventDefault();return}let i=document.activeElement,a=u.current.contains(i);e.shiftKey?(!a||i===n)&&(e.preventDefault(),r.focus()):(!a||i===r)&&(e.preventDefault(),n.focus())};return document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`keydown`,t)}},[e]),e?(0,f.jsxs)(`div`,{ref:u,className:`fixed inset-0`,style:{zIndex:40},role:`dialog`,"aria-modal":`true`,"aria-label":i,children:[(0,f.jsx)(`button`,{type:`button`,"aria-label":l(`sideListDrawer.closeSidebarAria`),className:`absolute inset-0 h-full w-full cursor-default`,style:{background:`rgba(0, 0, 0, 0.4)`,zIndex:40},onClick:n}),(0,f.jsxs)(`aside`,{className:`relative flex h-full w-[80vw] max-w-xs flex-col shadow-xl`,style:{background:`var(--surface-lift)`,borderRight:`1px solid var(--border-base)`,zIndex:50,paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`,paddingLeft:`var(--safe-area-inset-left, env(safe-area-inset-left, 0px))`,transform:`translateX(${g}px)`,transition:_?`none`:`transform 200ms ease-out`,touchAction:`pan-y`},onTouchStart:v,onTouchMove:y,onTouchEnd:b,onTouchCancel:x,children:[(0,f.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between border-b px-4 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,f.jsx)(`span`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:i}),(0,f.jsx)(o,{ref:m,type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,f.jsx)(a,{"aria-hidden":!0}),onClick:n,"aria-label":l(`sideListDrawer.closeAria`),tintColor:`var(--content-tertiary)`})]}),(0,f.jsx)(`div`,{className:`flex-1 overflow-y-auto p-4`,children:r})]})]}):null}function h({onClick:e}){let{t:n}=t();return(0,f.jsx)(o,{type:`button`,variant:`ghost`,iconOnly:(0,f.jsx)(i,{"aria-hidden":!0}),onClick:e,"aria-label":n(`sideListDrawer.openSidebarAria`),tintColor:`var(--content-secondary)`})}var g=640;function _(){let{ref:e,size:t}=l(),n=t.w<=0,r=u(n),i=(n?r.w:t.w)>=g,[a,o]=(0,d.useState)(!1);return(0,d.useEffect)(()=>{i&&o(!1)},[i]),{paneRef:e,hasRoomForList:i,drawerOpen:a,openDrawer:(0,d.useCallback)(()=>o(!0),[]),closeDrawer:(0,d.useCallback)(()=>o(!1),[])}}export{m as n,h as r,_ as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{I as t,Jn as n,er as r,j as i}from"./vendor-CYfJo8gP.js";import{b as a,t as o}from"./react-DPM_L_aA.js";import{Cn as s,S as c,Zr as l,h as u,it as d,xi as f}from"./icons-CSdHOix6.js";import{Cv as p,Ev as m,Hh as h,Pt as g,Ty as _,hf as v,wv as y,xy as b}from"./index-BVVp210p.js";var x=f(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),S=e(a(),1),C=o(),w={vellum:x,clawhub:s,skillssh:c,custom:u,"assistant-memory":l};function T(e,t){switch(e){case`vellum`:return`Vellum`;case`clawhub`:return`Clawhub`;case`skillssh`:return`skills.sh`;case`custom`:return t(`skillOriginBadge.custom`);case`assistant-memory`:return t(`skillOriginBadge.assistantMemory`)}}function E({origin:e}){let{t}=i(`intelligence`),n=e in w?{label:T(e,t),icon:w[e]}:{label:e.replace(/-/g,` `),icon:d};return(0,C.jsx)(b,{tone:`neutral`,leftIcon:(0,S.createElement)(n.icon),className:`capitalize`,children:n.label})}function D(e){return e.kind===`installed`||e.kind===`bundled`}function O(e){return e.kind===`catalog`}function k({icon:e,iconColor:t=`var(--content-tertiary)`,title:n,subtitle:r,children:i}){return(0,C.jsx)(_.Root,{children:(0,C.jsxs)(_.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,C.jsx)(e,{className:`mb-3 h-8 w-8`,style:{color:t},"aria-hidden":!0}),(0,C.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:n}),(0,C.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:r}),i]})})}async function A(e,n,r){let{data:i,error:a,response:o}=await h({path:{assistant_id:e},body:r?{slug:n,version:r}:{slug:n},throwOnError:!1}),s=t(`installSkill.failureMessage`,{ns:`intelligence`});if(y(o,a,s),!o.ok)throw new p(o.status,m(a,o,s));return i??{ok:!0}}function j(e,{onRemoved:t}={}){let i=r(),[a,o]=(0,S.useState)(null),[s,c]=(0,S.useState)(null),[l,u]=(0,S.useState)(null),d=(0,S.useCallback)(()=>{g(i,e)},[e,i]),f=n({mutationFn:t=>A(e,t),onMutate:e=>o(e),onSettled:()=>{o(null),d()}}),p=v({onMutate:e=>c(e.path.id),onSuccess:()=>{t?.()},onSettled:()=>{c(null),d()}}),m=(0,S.useCallback)(e=>{f.mutate(e.slug??e.id)},[f]),h=(0,S.useCallback)(e=>{u(e)},[]),_=(0,S.useCallback)(()=>{l&&(p.mutate({path:{assistant_id:e,id:l.id}}),u(null))},[e,l,p]),y=(0,S.useCallback)(()=>{u(null)},[]);return{handleInstall:m,handleRemove:h,isInstallingSkill:(0,S.useCallback)(e=>a===(e.slug??e.id),[a]),isRemovingSkill:(0,S.useCallback)(e=>s===e.id,[s]),skillPendingRemoval:l,confirmRemove:_,cancelRemove:y}}export{E as a,D as i,k as n,x as o,O as r,j as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{I as t,Jn as n,er as r,j as i}from"./vendor-CYfJo8gP.js";import{b as a,t as o}from"./react-DPM_L_aA.js";import{Cn as s,S as c,Zr as l,h as u,it as d,xi as f}from"./icons-CSdHOix6.js";import{Cv as p,Ev as m,Hh as h,Pt as g,Ty as _,hf as v,wv as y,xy as b}from"./index-b_IQShc9.js";var x=f(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),S=e(a(),1),C=o(),w={vellum:x,clawhub:s,skillssh:c,custom:u,"assistant-memory":l};function T(e,t){switch(e){case`vellum`:return`Vellum`;case`clawhub`:return`Clawhub`;case`skillssh`:return`skills.sh`;case`custom`:return t(`skillOriginBadge.custom`);case`assistant-memory`:return t(`skillOriginBadge.assistantMemory`)}}function E({origin:e}){let{t}=i(`intelligence`),n=e in w?{label:T(e,t),icon:w[e]}:{label:e.replace(/-/g,` `),icon:d};return(0,C.jsx)(b,{tone:`neutral`,leftIcon:(0,S.createElement)(n.icon),className:`capitalize`,children:n.label})}function D(e){return e.kind===`installed`||e.kind===`bundled`}function O(e){return e.kind===`catalog`}function k({icon:e,iconColor:t=`var(--content-tertiary)`,title:n,subtitle:r,children:i}){return(0,C.jsx)(_.Root,{children:(0,C.jsxs)(_.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,C.jsx)(e,{className:`mb-3 h-8 w-8`,style:{color:t},"aria-hidden":!0}),(0,C.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:n}),(0,C.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:r}),i]})})}async function A(e,n,r){let{data:i,error:a,response:o}=await h({path:{assistant_id:e},body:r?{slug:n,version:r}:{slug:n},throwOnError:!1}),s=t(`installSkill.failureMessage`,{ns:`intelligence`});if(y(o,a,s),!o.ok)throw new p(o.status,m(a,o,s));return i??{ok:!0}}function j(e,{onRemoved:t}={}){let i=r(),[a,o]=(0,S.useState)(null),[s,c]=(0,S.useState)(null),[l,u]=(0,S.useState)(null),d=(0,S.useCallback)(()=>{g(i,e)},[e,i]),f=n({mutationFn:t=>A(e,t),onMutate:e=>o(e),onSettled:()=>{o(null),d()}}),p=v({onMutate:e=>c(e.path.id),onSuccess:()=>{t?.()},onSettled:()=>{c(null),d()}}),m=(0,S.useCallback)(e=>{f.mutate(e.slug??e.id)},[f]),h=(0,S.useCallback)(e=>{u(e)},[]),_=(0,S.useCallback)(()=>{l&&(p.mutate({path:{assistant_id:e,id:l.id}}),u(null))},[e,l,p]),y=(0,S.useCallback)(()=>{u(null)},[]);return{handleInstall:m,handleRemove:h,isInstallingSkill:(0,S.useCallback)(e=>a===(e.slug??e.id),[a]),isRemovingSkill:(0,S.useCallback)(e=>s===e.id,[s]),skillPendingRemoval:l,confirmRemove:_,cancelRemove:y}}export{E as a,D as i,k as n,x as o,O as r,j as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Zn as t,j as n}from"./vendor-CYfJo8gP.js";import{b as r,n as i,t as a}from"./react-DPM_L_aA.js";import{fi as o}from"./icons-CSdHOix6.js";import{Id as s,Ld as c,dv as l,ia as u}from"./index-BVVp210p.js";var d=a();function f({skill:e,className:t,onNavigate:r}){let{t:a}=n();return e.origin!==`assistant-memory`||!e.sourceConversationId?null:(0,d.jsxs)(i,{to:l.conversation(e.sourceConversationId),onClick:r,className:u(`inline-flex w-fit items-center gap-1 text-body-small-default text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)] hover:underline`,t),children:[a(`skillLineageLink.label`),(0,d.jsx)(o,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]})}var p=e(r(),1);function m(e,t){return t??e.find(e=>e.name===`SKILL.md`)?.path??null}function h(e,n){let[r,i]=(0,p.useState)(null),a=t({...c({path:{assistant_id:e??``,id:n}}),select:e=>e??null,enabled:!!e}),o=(0,p.useMemo)(()=>a.data?.files??[],[a.data]),l=(0,p.useMemo)(()=>o.find(e=>e.name===`SKILL.md`),[o]),u=m(o,r),d=t({...s({path:{assistant_id:e??``,id:n},query:{path:u??``}}),select:e=>e??null,enabled:!!(e&&u)});return{fileEntries:o,skillMd:l,selectedPath:r,setSelectedPath:i,activePath:u,activeFile:o.find(e=>e.path===u),isFilesLoading:a.isLoading,isFilesPending:a.isPending,fileContent:d.data?.content??null,isBinary:!!d.data?.isBinary,isContentLoading:d.isLoading,isContentPending:d.isPending}}export{f as n,h as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Zn as t,j as n}from"./vendor-CYfJo8gP.js";import{b as r,n as i,t as a}from"./react-DPM_L_aA.js";import{fi as o}from"./icons-CSdHOix6.js";import{Id as s,Ld as c,dv as l,ia as u}from"./index-b_IQShc9.js";var d=a();function f({skill:e,className:t,onNavigate:r}){let{t:a}=n();return e.origin!==`assistant-memory`||!e.sourceConversationId?null:(0,d.jsxs)(i,{to:l.conversation(e.sourceConversationId),onClick:r,className:u(`inline-flex w-fit items-center gap-1 text-body-small-default text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)] hover:underline`,t),children:[a(`skillLineageLink.label`),(0,d.jsx)(o,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]})}var p=e(r(),1);function m(e,t){return t??e.find(e=>e.name===`SKILL.md`)?.path??null}function h(e,n){let[r,i]=(0,p.useState)(null),a=t({...c({path:{assistant_id:e??``,id:n}}),select:e=>e??null,enabled:!!e}),o=(0,p.useMemo)(()=>a.data?.files??[],[a.data]),l=(0,p.useMemo)(()=>o.find(e=>e.name===`SKILL.md`),[o]),u=m(o,r),d=t({...s({path:{assistant_id:e??``,id:n},query:{path:u??``}}),select:e=>e??null,enabled:!!(e&&u)});return{fileEntries:o,skillMd:l,selectedPath:r,setSelectedPath:i,activePath:u,activeFile:o.find(e=>e.path===u),isFilesLoading:a.isLoading,isFilesPending:a.isPending,fileContent:d.data?.content??null,isBinary:!!d.data?.isBinary,isContentLoading:d.isLoading,isContentPending:d.isPending}}export{f as n,h as t};
@@ -0,0 +1 @@
1
+ import{Ap as e}from"./index-b_IQShc9.js";var t=`0.10.8`;function n(n){return e(t,n)}export{n as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t}from"./react-DPM_L_aA.js";import{$a as n,$n as r}from"./index-b_IQShc9.js";var i=e(t(),1);function a(e){let t=r();return(0,i.useMemo)(()=>{if(e)return t.find(t=>n(t).includes(e))},[t,e])}export{a as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Zn as t,er as n,j as r}from"./vendor-CYfJo8gP.js";import{b as i,g as a,n as o,r as s,t as c}from"./react-DPM_L_aA.js";import{di as l,mn as u}from"./icons-CSdHOix6.js";import{$ as d,Al as f,Av as p,Da as m,Dy as h,Jm as g,Js as _,Kd as v,Lu as y,Ml as b,Mt as x,Mv as S,Oa as C,Qv as w,Ru as T,Tt as E,X as D,X_ as O,Y as k,Yf as A,Ys as j,Z as M,_a as ee,_y as N,ca as te,cy as ne,da as re,dv as P,dy as ie,fa as F,fv as ae,fy as oe,ga as I,ha as se,iy as ce,kt as L,la as le,ma as R,ns as ue,oa as de,pa as z,qv as fe,sa as B,ts as V,ua as pe,uy as H,va as me,wt as he,ya as ge}from"./index-BVVp210p.js";import{t as U}from"./detail-card-BXhwux_c.js";import{t as _e}from"./stt-language-picker-modal-3JHZ7KRr.js";import{t as ve}from"./use-hotkey-recorder-BpZ2ce5P.js";var W=e(i(),1),G=c();function ye(){let{t:e}=r(`settings`),{available:t,currentCode:n,configuredProviderId:i,selectLanguage:a,selecting:o}=M(k()),[s,c]=(0,W.useState)(!1);return t?(0,G.jsxs)(U,{title:e(`listeningLanguageCard.title`),subtitle:e(`listeningLanguageCard.subtitle`),children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,G.jsx)(`span`,{className:`min-w-0 text-body-medium-lighter text-[var(--content-default)]`,children:d(n,i)}),(0,G.jsx)(h,{variant:`outlined`,onClick:()=>c(!0),className:`shrink-0`,children:e(`listeningLanguageCard.change`)})]}),(0,G.jsx)(_e,{open:s,onOpenChange:c,title:e(`listeningLanguageCard.title`),currentCode:n,configuredProviderId:i,selectLanguage:a,selecting:o})]}):null}var K=`flux`;function be(e){return e===`vellum`}function q(e,t){let n=e?.trim().toLowerCase();return!n||n===`multi`||t===void 0?!0:t.includes(n.split(`-`)[0]??n)}function xe(){let{t:e}=r(`settings`),i=n(),a=A(),o=k(),[s,c]=(0,W.useState)(!1),{data:l}=t({...y({path:{assistant_id:o}}),enabled:a,staleTime:3e4}),u=l?.services?.stt,{data:d}=t({...v({path:{assistant_id:o}}),enabled:a,staleTime:5*6e4}),f=u?.roles?.liveVoice?.provider??u?.provider,p=d?.providers?.find(e=>e.id===f),m=p?.modelFamilies?.includes(K)??!1;if(!f||!m)return null;let h=q(u?.language,p?.turnDetectionLanguages),_=u?.roles?.liveVoice,b=_?_.model:u?.providers?.[f]?.model,x=b===void 0?be(f)&&h:b===K,S=async t=>{c(!0);try{let{response:e}=await g({path:{assistant_id:o},body:{services:{stt:{roles:{liveVoice:{provider:f,model:t?K:p?.baseModelFamily}}}}},throwOnError:!1});if(!e?.ok)throw Error(String(e?.status??``));await i.invalidateQueries({queryKey:T({path:{assistant_id:o}})})}catch{ne.error(e(`voicePage.turnDetectionFailed`))}finally{c(!1)}};return(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e(`voicePage.turnDetectionLabel`)}),(0,G.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(h?`voicePage.turnDetectionDescription`:`voicePage.turnDetectionLanguageUnsupported`)}),(0,G.jsx)(N,{checked:x,disabled:s||!h&&!x,onChange:e=>void S(e),"aria-label":e(`voicePage.turnDetectionLabel`)})]})}function Se({assistantId:e,open:t,onOpenChange:n}){return(0,G.jsx)(H.Root,{open:t,onOpenChange:n,children:(0,G.jsx)(H.Content,{size:`md`,children:(0,G.jsx)(Ce,{assistantId:e,onDone:()=>n(!1)})})})}function Ce({assistantId:e,onDone:t}){let{t:n}=r(),{available:i,currentModel:a,selectModel:o,selecting:s}=L(e);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(H.Header,{children:[(0,G.jsx)(H.Title,{children:n(`voicePickerModal.title`)}),i&&(0,G.jsx)(H.Description,{children:`Uses Vellum credits, through providers like ElevenLabs and Deepgram.`})]}),(0,G.jsx)(H.Body,{children:(0,G.jsx)(E,{assistantId:e,filterBySource:!0,value:a,onChange:o,autoScrollToSelected:!0})}),(0,G.jsxs)(H.Footer,{className:`items-center justify-between gap-3`,children:[(0,G.jsx)(D,{}),(0,G.jsx)(h,{variant:`primary`,onClick:t,disabled:s,className:`shrink-0`,children:n(`voicePickerModal.done`)})]})]})}function we(){let{t:e}=r(`settings`),t=k(),{available:n,settled:i,voices:a,currentModel:o}=L(t),s=a.find(e=>e.model===o)??a[0],[c,l]=(0,W.useState)(!1),u=O.use.name(),d=u?e(`voicePickerCard.titleWithName`,{name:u}):e(`voicePickerCard.title`);return i?n&&s?(0,G.jsxs)(U,{title:d,subtitle:e(`voicePickerCard.creditsNote`),children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,G.jsx)(he,{description:s.description,className:`min-w-0 text-body-medium-lighter text-[var(--content-default)]`}),(0,G.jsx)(h,{variant:`outlined`,onClick:()=>l(!0),className:`shrink-0`,children:e(`voicePickerCard.changeButton`)})]}),(0,G.jsx)(Se,{assistantId:t,open:c,onOpenChange:l})]}):(0,G.jsx)(U,{title:d,children:(0,G.jsx)(x,{})}):(0,G.jsx)(U,{title:d,children:(0,G.jsx)(fe,{as:`span`,role:`status`,"aria-label":e(`voicePickerCard.loadingAria`),className:`block h-9 w-48`})})}var Te=[{prefKey:`showUserTranscript`,label:`Show the words you say`,description:`Live transcription while you speak.`},{prefKey:`showAssistantTranscript`,label:`Show the words the assistant says`,description:`Text alongside the spoken response.`}],Ee=`We recommend keeping both off to start. It feels more like a real conversation.`;function De(){let{t:e}=r();return(0,G.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:e(`voiceTranscriptToggles.recommendedOff`)})}function Oe({label:e,description:t,showBadge:n,checked:r,onChange:i}){return(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-1`,children:[(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-medium-lighter text-[var(--content-default)]`,children:e}),n?(0,G.jsx)(De,{}):null]}),t?(0,G.jsx)(`div`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t}):null]}),(0,G.jsx)(N,{checked:r,onChange:i,"aria-label":e})]})}function ke({showDescription:e=!1,showRecommendedBadge:t=!1}){let{t:n}=r(),i=j.use.showUserTranscript(),a=j.use.showAssistantTranscript(),o=j.use.setShowUserTranscript(),s=j.use.setShowAssistantTranscript(),c={showUserTranscript:{checked:i,onChange:o},showAssistantTranscript:{checked:a,onChange:s}},l=(e,t)=>n(e===`showUserTranscript`?`voiceTranscriptToggles.userTranscriptLabel`:`voiceTranscriptToggles.assistantTranscriptLabel`,t),u=(e,t)=>n(e===`showUserTranscript`?`voiceTranscriptToggles.userTranscriptDescription`:`voiceTranscriptToggles.assistantTranscriptDescription`,t);return(0,G.jsx)(G.Fragment,{children:Te.map(n=>{let r=c[n.prefKey];return(0,G.jsx)(Oe,{label:l(n.prefKey,n.label),description:e?u(n.prefKey,n.description):void 0,showBadge:t,checked:r.checked,onChange:r.onChange},n.prefKey)})})}var J=`text-body-small-default text-[var(--content-tertiary)]`;function Ae(){let[e]=a(),t=e.get(`tab`);return t===`sounds`?(0,G.jsx)(s,{replace:!0,to:P.settings.sounds}):t===`services`?(0,G.jsx)(s,{replace:!0,to:P.settings.ai}):(0,G.jsx)(je,{})}function je(){let{t:e}=r(`settings`);return(0,G.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,G.jsxs)(Y,{heading:e(`voicePage.sectionOutputHeading`),description:e(`voicePage.sectionOutputDescription`),children:[(0,G.jsx)(we,{}),(0,G.jsx)(Ne,{})]}),(0,G.jsxs)(Y,{heading:e(`voicePage.sectionInputHeading`),description:e(`voicePage.sectionInputDescription`),children:[(0,G.jsx)(Fe,{}),(0,G.jsx)(ye,{}),(0,G.jsx)(Re,{}),(0,G.jsx)(Me,{}),(0,G.jsx)(ze,{})]}),(0,G.jsx)(Y,{heading:e(`voicePage.sectionCaptionsHeading`),children:(0,G.jsx)(Pe,{})})]})}function Me(){let{t:e}=r(`settings`),t=C(),[n,i]=(0,W.useState)(null),a=(0,W.useCallback)(async()=>{i((await f())?.inputMonitoring.status??null)},[]);if((0,W.useEffect)(()=>{a();let e=setInterval(()=>{a()},2e3);return()=>{clearInterval(e)}},[a]),!ge())return null;let o=n===`granted`;return(0,G.jsx)(U,{title:e(`voicePage.holdToDictateTitle`),subtitle:e(`voicePage.holdToDictateSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(N,{checked:t,onChange:e=>{m(e),e&&b(`inputMonitoring`).then(a)},label:e(`voicePage.holdToDictateEnable`)}),t&&!o&&(0,G.jsx)(`span`,{className:J,children:e(`voicePage.holdToDictateNeedsInputMonitoring`)}),t&&(0,G.jsx)(`span`,{className:J,children:e(`voicePage.holdToDictateVoiceOverNote`)})]})})}function Ne(){let{t:e}=r(`settings`),{available:t}=L(k());return t?(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 px-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:[(0,G.jsx)(u,{className:`h-3.5 w-3.5 shrink-0 text-[var(--content-quiet)]`}),(0,G.jsx)(`span`,{children:e(`voicePage.speechServicesBannerPrompt`)}),(0,G.jsxs)(o,{to:`${P.settings.ai}#text-to-speech`,className:`inline-flex items-center gap-1 text-[var(--content-secondary)] underline decoration-[var(--border-element)] underline-offset-2 hover:text-[var(--content-default)]`,children:[e(`voicePage.speechServicesBannerLink`),(0,G.jsx)(l,{className:`h-3 w-3`})]})]}):null}function Y({heading:e,description:t,children:n}){return(0,G.jsxs)(`section`,{className:`flex flex-col gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,G.jsx)(`h2`,{className:`text-label-medium-default uppercase tracking-wide text-[var(--content-tertiary)]`,children:e}),t&&(0,G.jsx)(`p`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:t})]}),n]})}function Pe(){let{t:e}=r(`settings`);return(0,G.jsx)(U,{title:e(`voicePage.captionsTitle`),subtitle:e(`voicePage.captionsSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsx)(ke,{showDescription:!0}),(0,G.jsx)(`p`,{className:`${J} pt-1`,children:e(`voicePage.captionsRecommendation`,Ee)})]})})}var X=``;function Fe(){let{t:e}=r(`settings`),[t,n]=(0,W.useState)([]),[i,a]=(0,W.useState)(!1),[o,s]=(0,W.useState)(!1),[c,l]=(0,W.useState)(()=>ue()),u=(0,W.useCallback)(async()=>{if(navigator.mediaDevices?.enumerateDevices)try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(e=>e.kind===`audioinput`);a(e.length>0&&e.every(e=>!e.label)),n(e.filter(e=>e.deviceId!==``&&e.deviceId!==`default`&&e.deviceId!==`communications`)),s(e.length===0||e.some(e=>!!e.label))}catch{n([]),a(!1),s(!1)}},[]),d=(0,W.useCallback)(async()=>{try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});for(let t of e.getTracks())t.stop()}catch{}u()},[u]);(0,W.useEffect)(()=>{u();let e=navigator.mediaDevices;if(!e?.addEventListener)return;let t=()=>void u();return e.addEventListener(`devicechange`,t),()=>e.removeEventListener(`devicechange`,t)},[u]);let f=(0,W.useMemo)(()=>{let n=t.map((t,n)=>({value:t.deviceId,label:t.label||e(`voicePage.microphoneFallbackLabel`,{index:n+1})})),r=c!==X&&!n.some(e=>e.value===c);return[{value:null,label:e(`voicePage.systemDefault`)},...n,...r?[{value:c,label:e(o?`voicePage.savedMicrophoneNotConnected`:`voicePage.savedMicrophone`)}]:[]]},[t,c,o,e]),m=(0,W.useCallback)(e=>{l(e),e===X?p(V):S(V,e)},[]),g=c===X?null:c;return(0,G.jsx)(U,{title:e(`voicePage.microphoneTitle`),subtitle:e(`voicePage.microphoneSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,G.jsx)(`div`,{className:`max-w-xs`,children:(0,G.jsx)(w,{options:f,value:g,onChange:m,onSelectNone:()=>m(X),"aria-label":e(`voicePage.microphoneAriaLabel`)})}),i&&(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,G.jsx)(h,{variant:`outlined`,onClick:d,children:e(`voicePage.allowMicrophoneAccess`)}),(0,G.jsx)(`span`,{className:J,children:e(`voicePage.grantMicrophoneAccessHint`)})]})]})})}var Ie=new Set([`Control`,`Alt`,`Shift`,`Meta`,`Fn`]),Z=`toggleVoice`,Le=[{label:`Ctrl+Shift`,activator:{kind:`modifierOnly`,modifiers:[`control`,`shift`]}},{label:`Alt`,activator:{kind:`modifierOnly`,modifiers:[`option`]}}];function Re(){let{t:e}=r(`settings`),t=me(),n=ae(),i=ee(e=>e.registered)===!1,[a,o]=(0,W.useState)(()=>le(t)),[s,c]=(0,W.useState)(!1),[l,d]=(0,W.useState)([]),[f,p]=(0,W.useState)(!1),m=(0,W.useRef)(null),h=(0,W.useMemo)(()=>{let e=te(),n={label:z(e),activator:e};return t?[{label:`Fn`,activator:F},n]:[n]},[t]),g=a.kind!==`off`,_=(0,W.useCallback)(e=>{o(e),re(e),c(!1),d([]),p(!1)},[]),v=ve({onBound:()=>_({kind:`off`})}),y=v.catalog.find(e=>e.key===Z)?.accelerator??``,b=v.recordingKey===Z,x=(0,W.useCallback)(()=>{_(F),v.removeHotkey(Z)},[v,_]),S=pe()?Le:[],C=(0,W.useCallback)(e=>{_(e),v.removeHotkey(Z)},[v,_]),w=(0,W.useCallback)(()=>{_({kind:`off`}),v.removeHotkey(Z)},[v,_]),T=(0,W.useCallback)(()=>{c(!0),d([]),p(!1),requestAnimationFrame(()=>{m.current?.focus()})},[]),E=(0,W.useCallback)(()=>{c(!1),d([]),p(!1)},[]),D=(0,W.useCallback)(e=>{let n=[];return t&&e.getModifierState(`Fn`)&&n.push(`function`),e.ctrlKey&&n.push(`control`),e.altKey&&n.push(`option`),e.shiftKey&&n.push(`shift`),e.metaKey&&n.push(`command`),n},[t]),O=(0,W.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),e.key===`Escape`){E();return}let t=D(e);if(t.includes(`function`)){_(F);return}if(Ie.has(e.key)){p(!1),d(I(t));return}if(t.length===0){p(!0);return}_({kind:`key`,label:e.key.length===1?e.key.toUpperCase():e.key,modifiers:I(t)})},[E,D,_]),k=(0,W.useCallback)(e=>{s&&D(e).length===0&&l.length>0&&(d([]),p(!0))},[D,s,l]);(0,W.useEffect)(()=>{if(!s)return;let e=e=>{m.current&&!m.current.contains(e.target)&&E()};return window.addEventListener(`mousedown`,e),()=>window.removeEventListener(`mousedown`,e)},[E,s]);let A=g&&!h.some(e=>R(e.activator,a));return n?(0,G.jsx)(U,{title:e(`voicePage.voiceShortcutTitle`),subtitle:e(`voicePage.voiceShortcutSubtitleDesktop`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[t&&(0,G.jsx)(Q,{label:e(`voicePage.fnKeyLabel`),badge:e(`voicePage.recommendedBadge`),selected:B(a),onClick:x}),S.map(e=>(0,G.jsx)(Q,{label:e.label,selected:R(e.activator,a),onClick:()=>C(e.activator)},e.label)),(0,G.jsx)(Q,{label:b?e(`voicePage.recordingPrompt`):y?(0,G.jsx)(ce,{accelerator:y}):e(`voicePage.customKey`),selected:y!==``,recording:b,onClick:b?v.stopRecording:()=>v.startRecording(Z)}),(0,G.jsx)(Q,{label:e(`voicePage.offKeyLabel`),selected:a.kind===`off`&&!y&&!b,onClick:w})]}),B(a)&&i&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--system-negative-strong)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.fnRefusedNote`)})]}),v.conflict?.key===Z&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.shortcutConflict`,{command:v.conflict.label})})]})]})}):(0,G.jsx)(U,{title:e(`voicePage.voiceShortcutTitle`),subtitle:e(`voicePage.voiceShortcutSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(N,{checked:g,onChange:e=>{_(e?de(t):{kind:`off`})},label:e(`voicePage.enableVoiceShortcut`)}),g&&(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsx)(`span`,{className:J,children:e(`voicePage.activationKeyLabel`)}),(0,G.jsxs)(`div`,{ref:m,tabIndex:s?0:-1,onKeyDown:s?O:void 0,onKeyUp:s?k:void 0,className:`flex flex-wrap items-center gap-2 focus:outline-none`,children:[h.map(e=>(0,G.jsx)(Q,{label:e.label,selected:R(e.activator,a),onClick:()=>_(e.activator)},e.label)),s?(0,G.jsx)(Q,{label:l.length>0?se(l):e(`voicePage.pressShortcut`),selected:!0,recording:!0,onClick:E}):(0,G.jsx)(Q,{label:A?z(a):e(`voicePage.customKey`),selected:A,onClick:T})]}),f&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--content-quiet)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.shortcutChordHint`)})]}),g&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--content-quiet)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.focusedTabNote`)})]})]})]})})}function Q({label:e,badge:t,selected:n,recording:r=!1,onClick:i}){return(0,G.jsxs)(`button`,{type:`button`,onClick:i,className:[`inline-flex items-center gap-2 rounded-lg border px-3 py-1.5 text-body-medium-lighter transition-colors`,`border-[var(--border-subtle)]`,n?`bg-[var(--surface-active)]`:`bg-[var(--surface-lift)] hover:bg-[var(--surface-hover)]`,r?`animate-pulse`:``].filter(Boolean).join(` `),children:[(0,G.jsx)(`span`,{className:[`inline-block h-2.5 w-2.5 rounded-full border`,n?`border-[var(--primary-base)] bg-[var(--primary-base)]`:`border-[var(--border-element)]`].join(` `)}),(0,G.jsx)(`span`,{className:`text-[var(--content-default)]`,children:e}),t&&(0,G.jsx)(`span`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:t})]})}function ze(){let{t:e}=r(`settings`),t=j.use.pauseBeforeReplyMs(),n=j.use.setPauseBeforeReplyMs(),i=j.use.interruptSensitivity(),a=j.use.setInterruptSensitivity(),o=(0,W.useMemo)(()=>[{value:`low`,label:e(`voicePage.interruptSensitivityLow`)},{value:`medium`,label:e(`voicePage.interruptSensitivityMedium`)},{value:`high`,label:e(`voicePage.interruptSensitivityHigh`)}],[e]),s=t!==null||i!==null;return(0,G.jsx)(U,{title:e(`voicePage.turnTakingTitle`),subtitle:e(`voicePage.turnTakingSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,G.jsx)(xe,{}),(0,G.jsx)($,{label:e(`voicePage.pauseBeforeReplyLabel`),description:e(`voicePage.pauseBeforeReplyDescription`),isDefault:t===null,children:(0,G.jsx)(`div`,{className:`max-w-xs`,children:(0,G.jsx)(ie,{value:(t??1200)/1e3,onValueChange:e=>{typeof e==`number`&&n(Math.round(e*1e3))},min:500/1e3,max:_/1e3,step:.1,showValue:!0,formatValue:e=>`${(typeof e==`number`?e:e[0]).toFixed(1)}s`,"aria-label":e(`voicePage.pauseBeforeReplyAriaLabel`)})})}),(0,G.jsx)($,{label:e(`voicePage.interruptSensitivityLabel`),description:e(`voicePage.interruptSensitivityDescription`),isDefault:i===null,children:(0,G.jsx)(`div`,{className:`max-w-xs`,children:(0,G.jsx)(oe,{items:o,value:i??`medium`,onChange:a,ariaLabel:e(`voicePage.interruptSensitivityAriaLabel`)})})}),s&&(0,G.jsx)(`div`,{children:(0,G.jsx)(h,{variant:`outlined`,onClick:()=>{n(null),a(null)},children:e(`voicePage.resetToDefaults`)})})]})})}function $({label:e,description:t,isDefault:n,children:i}){let{t:a}=r(`settings`);return(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e}),n&&(0,G.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:a(`voicePage.defaultBadge`)})]}),(0,G.jsx)(`p`,{className:J,children:t}),i]})}export{Ae as VoicePage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Zn as t,er as n,j as r}from"./vendor-CYfJo8gP.js";import{b as i,g as a,n as o,r as s,t as c}from"./react-DPM_L_aA.js";import{di as l,mn as u}from"./icons-CSdHOix6.js";import{$ as d,Al as f,Av as p,Da as m,Dy as h,Jm as g,Js as _,Kd as v,Lu as y,Ml as b,Mt as x,Mv as S,Oa as C,Qv as w,Ru as T,Tt as E,X as D,X_ as O,Y as k,Yf as A,Ys as j,Z as M,_a as ee,_y as N,ca as te,cy as ne,da as re,dv as P,dy as ie,fa as F,fv as ae,fy as oe,ga as I,ha as se,iy as ce,kt as L,la as le,ma as R,ns as ue,oa as de,pa as z,qv as fe,sa as B,ts as V,ua as pe,uy as H,va as me,wt as he,ya as ge}from"./index-b_IQShc9.js";import{t as U}from"./detail-card-sxGt13nZ.js";import{t as _e}from"./stt-language-picker-modal-CLsnI2Yz.js";import{t as ve}from"./use-hotkey-recorder-CSRkbNLq.js";var W=e(i(),1),G=c();function ye(){let{t:e}=r(`settings`),{available:t,currentCode:n,configuredProviderId:i,selectLanguage:a,selecting:o}=M(k()),[s,c]=(0,W.useState)(!1);return t?(0,G.jsxs)(U,{title:e(`listeningLanguageCard.title`),subtitle:e(`listeningLanguageCard.subtitle`),children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,G.jsx)(`span`,{className:`min-w-0 text-body-medium-lighter text-[var(--content-default)]`,children:d(n,i)}),(0,G.jsx)(h,{variant:`outlined`,onClick:()=>c(!0),className:`shrink-0`,children:e(`listeningLanguageCard.change`)})]}),(0,G.jsx)(_e,{open:s,onOpenChange:c,title:e(`listeningLanguageCard.title`),currentCode:n,configuredProviderId:i,selectLanguage:a,selecting:o})]}):null}var K=`flux`;function be(e){return e===`vellum`}function q(e,t){let n=e?.trim().toLowerCase();return!n||n===`multi`||t===void 0?!0:t.includes(n.split(`-`)[0]??n)}function xe(){let{t:e}=r(`settings`),i=n(),a=A(),o=k(),[s,c]=(0,W.useState)(!1),{data:l}=t({...y({path:{assistant_id:o}}),enabled:a,staleTime:3e4}),u=l?.services?.stt,{data:d}=t({...v({path:{assistant_id:o}}),enabled:a,staleTime:5*6e4}),f=u?.roles?.liveVoice?.provider??u?.provider,p=d?.providers?.find(e=>e.id===f),m=p?.modelFamilies?.includes(K)??!1;if(!f||!m)return null;let h=q(u?.language,p?.turnDetectionLanguages),_=u?.roles?.liveVoice,b=_?_.model:u?.providers?.[f]?.model,x=b===void 0?be(f)&&h:b===K,S=async t=>{c(!0);try{let{response:e}=await g({path:{assistant_id:o},body:{services:{stt:{roles:{liveVoice:{provider:f,model:t?K:p?.baseModelFamily}}}}},throwOnError:!1});if(!e?.ok)throw Error(String(e?.status??``));await i.invalidateQueries({queryKey:T({path:{assistant_id:o}})})}catch{ne.error(e(`voicePage.turnDetectionFailed`))}finally{c(!1)}};return(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e(`voicePage.turnDetectionLabel`)}),(0,G.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(h?`voicePage.turnDetectionDescription`:`voicePage.turnDetectionLanguageUnsupported`)}),(0,G.jsx)(N,{checked:x,disabled:s||!h&&!x,onChange:e=>void S(e),"aria-label":e(`voicePage.turnDetectionLabel`)})]})}function Se({assistantId:e,open:t,onOpenChange:n}){return(0,G.jsx)(H.Root,{open:t,onOpenChange:n,children:(0,G.jsx)(H.Content,{size:`md`,children:(0,G.jsx)(Ce,{assistantId:e,onDone:()=>n(!1)})})})}function Ce({assistantId:e,onDone:t}){let{t:n}=r(),{available:i,currentModel:a,selectModel:o,selecting:s}=L(e);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(H.Header,{children:[(0,G.jsx)(H.Title,{children:n(`voicePickerModal.title`)}),i&&(0,G.jsx)(H.Description,{children:`Uses Vellum credits, through providers like ElevenLabs and Deepgram.`})]}),(0,G.jsx)(H.Body,{children:(0,G.jsx)(E,{assistantId:e,filterBySource:!0,value:a,onChange:o,autoScrollToSelected:!0})}),(0,G.jsxs)(H.Footer,{className:`items-center justify-between gap-3`,children:[(0,G.jsx)(D,{}),(0,G.jsx)(h,{variant:`primary`,onClick:t,disabled:s,className:`shrink-0`,children:n(`voicePickerModal.done`)})]})]})}function we(){let{t:e}=r(`settings`),t=k(),{available:n,settled:i,voices:a,currentModel:o}=L(t),s=a.find(e=>e.model===o)??a[0],[c,l]=(0,W.useState)(!1),u=O.use.name(),d=u?e(`voicePickerCard.titleWithName`,{name:u}):e(`voicePickerCard.title`);return i?n&&s?(0,G.jsxs)(U,{title:d,subtitle:e(`voicePickerCard.creditsNote`),children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,G.jsx)(he,{description:s.description,className:`min-w-0 text-body-medium-lighter text-[var(--content-default)]`}),(0,G.jsx)(h,{variant:`outlined`,onClick:()=>l(!0),className:`shrink-0`,children:e(`voicePickerCard.changeButton`)})]}),(0,G.jsx)(Se,{assistantId:t,open:c,onOpenChange:l})]}):(0,G.jsx)(U,{title:d,children:(0,G.jsx)(x,{})}):(0,G.jsx)(U,{title:d,children:(0,G.jsx)(fe,{as:`span`,role:`status`,"aria-label":e(`voicePickerCard.loadingAria`),className:`block h-9 w-48`})})}var Te=[{prefKey:`showUserTranscript`,label:`Show the words you say`,description:`Live transcription while you speak.`},{prefKey:`showAssistantTranscript`,label:`Show the words the assistant says`,description:`Text alongside the spoken response.`}],Ee=`We recommend keeping both off to start. It feels more like a real conversation.`;function De(){let{t:e}=r();return(0,G.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:e(`voiceTranscriptToggles.recommendedOff`)})}function Oe({label:e,description:t,showBadge:n,checked:r,onChange:i}){return(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-1`,children:[(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-medium-lighter text-[var(--content-default)]`,children:e}),n?(0,G.jsx)(De,{}):null]}),t?(0,G.jsx)(`div`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t}):null]}),(0,G.jsx)(N,{checked:r,onChange:i,"aria-label":e})]})}function ke({showDescription:e=!1,showRecommendedBadge:t=!1}){let{t:n}=r(),i=j.use.showUserTranscript(),a=j.use.showAssistantTranscript(),o=j.use.setShowUserTranscript(),s=j.use.setShowAssistantTranscript(),c={showUserTranscript:{checked:i,onChange:o},showAssistantTranscript:{checked:a,onChange:s}},l=(e,t)=>n(e===`showUserTranscript`?`voiceTranscriptToggles.userTranscriptLabel`:`voiceTranscriptToggles.assistantTranscriptLabel`,t),u=(e,t)=>n(e===`showUserTranscript`?`voiceTranscriptToggles.userTranscriptDescription`:`voiceTranscriptToggles.assistantTranscriptDescription`,t);return(0,G.jsx)(G.Fragment,{children:Te.map(n=>{let r=c[n.prefKey];return(0,G.jsx)(Oe,{label:l(n.prefKey,n.label),description:e?u(n.prefKey,n.description):void 0,showBadge:t,checked:r.checked,onChange:r.onChange},n.prefKey)})})}var J=`text-body-small-default text-[var(--content-tertiary)]`;function Ae(){let[e]=a(),t=e.get(`tab`);return t===`sounds`?(0,G.jsx)(s,{replace:!0,to:P.settings.sounds}):t===`services`?(0,G.jsx)(s,{replace:!0,to:P.settings.ai}):(0,G.jsx)(je,{})}function je(){let{t:e}=r(`settings`);return(0,G.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,G.jsxs)(Y,{heading:e(`voicePage.sectionOutputHeading`),description:e(`voicePage.sectionOutputDescription`),children:[(0,G.jsx)(we,{}),(0,G.jsx)(Ne,{})]}),(0,G.jsxs)(Y,{heading:e(`voicePage.sectionInputHeading`),description:e(`voicePage.sectionInputDescription`),children:[(0,G.jsx)(Fe,{}),(0,G.jsx)(ye,{}),(0,G.jsx)(Re,{}),(0,G.jsx)(Me,{}),(0,G.jsx)(ze,{})]}),(0,G.jsx)(Y,{heading:e(`voicePage.sectionCaptionsHeading`),children:(0,G.jsx)(Pe,{})})]})}function Me(){let{t:e}=r(`settings`),t=C(),[n,i]=(0,W.useState)(null),a=(0,W.useCallback)(async()=>{i((await f())?.inputMonitoring.status??null)},[]);if((0,W.useEffect)(()=>{a();let e=setInterval(()=>{a()},2e3);return()=>{clearInterval(e)}},[a]),!ge())return null;let o=n===`granted`;return(0,G.jsx)(U,{title:e(`voicePage.holdToDictateTitle`),subtitle:e(`voicePage.holdToDictateSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(N,{checked:t,onChange:e=>{m(e),e&&b(`inputMonitoring`).then(a)},label:e(`voicePage.holdToDictateEnable`)}),t&&!o&&(0,G.jsx)(`span`,{className:J,children:e(`voicePage.holdToDictateNeedsInputMonitoring`)}),t&&(0,G.jsx)(`span`,{className:J,children:e(`voicePage.holdToDictateVoiceOverNote`)})]})})}function Ne(){let{t:e}=r(`settings`),{available:t}=L(k());return t?(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 px-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:[(0,G.jsx)(u,{className:`h-3.5 w-3.5 shrink-0 text-[var(--content-quiet)]`}),(0,G.jsx)(`span`,{children:e(`voicePage.speechServicesBannerPrompt`)}),(0,G.jsxs)(o,{to:`${P.settings.ai}#text-to-speech`,className:`inline-flex items-center gap-1 text-[var(--content-secondary)] underline decoration-[var(--border-element)] underline-offset-2 hover:text-[var(--content-default)]`,children:[e(`voicePage.speechServicesBannerLink`),(0,G.jsx)(l,{className:`h-3 w-3`})]})]}):null}function Y({heading:e,description:t,children:n}){return(0,G.jsxs)(`section`,{className:`flex flex-col gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,G.jsx)(`h2`,{className:`text-label-medium-default uppercase tracking-wide text-[var(--content-tertiary)]`,children:e}),t&&(0,G.jsx)(`p`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:t})]}),n]})}function Pe(){let{t:e}=r(`settings`);return(0,G.jsx)(U,{title:e(`voicePage.captionsTitle`),subtitle:e(`voicePage.captionsSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsx)(ke,{showDescription:!0}),(0,G.jsx)(`p`,{className:`${J} pt-1`,children:e(`voicePage.captionsRecommendation`,Ee)})]})})}var X=``;function Fe(){let{t:e}=r(`settings`),[t,n]=(0,W.useState)([]),[i,a]=(0,W.useState)(!1),[o,s]=(0,W.useState)(!1),[c,l]=(0,W.useState)(()=>ue()),u=(0,W.useCallback)(async()=>{if(navigator.mediaDevices?.enumerateDevices)try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(e=>e.kind===`audioinput`);a(e.length>0&&e.every(e=>!e.label)),n(e.filter(e=>e.deviceId!==``&&e.deviceId!==`default`&&e.deviceId!==`communications`)),s(e.length===0||e.some(e=>!!e.label))}catch{n([]),a(!1),s(!1)}},[]),d=(0,W.useCallback)(async()=>{try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});for(let t of e.getTracks())t.stop()}catch{}u()},[u]);(0,W.useEffect)(()=>{u();let e=navigator.mediaDevices;if(!e?.addEventListener)return;let t=()=>void u();return e.addEventListener(`devicechange`,t),()=>e.removeEventListener(`devicechange`,t)},[u]);let f=(0,W.useMemo)(()=>{let n=t.map((t,n)=>({value:t.deviceId,label:t.label||e(`voicePage.microphoneFallbackLabel`,{index:n+1})})),r=c!==X&&!n.some(e=>e.value===c);return[{value:null,label:e(`voicePage.systemDefault`)},...n,...r?[{value:c,label:e(o?`voicePage.savedMicrophoneNotConnected`:`voicePage.savedMicrophone`)}]:[]]},[t,c,o,e]),m=(0,W.useCallback)(e=>{l(e),e===X?p(V):S(V,e)},[]),g=c===X?null:c;return(0,G.jsx)(U,{title:e(`voicePage.microphoneTitle`),subtitle:e(`voicePage.microphoneSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,G.jsx)(`div`,{className:`max-w-xs`,children:(0,G.jsx)(w,{options:f,value:g,onChange:m,onSelectNone:()=>m(X),"aria-label":e(`voicePage.microphoneAriaLabel`)})}),i&&(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,G.jsx)(h,{variant:`outlined`,onClick:d,children:e(`voicePage.allowMicrophoneAccess`)}),(0,G.jsx)(`span`,{className:J,children:e(`voicePage.grantMicrophoneAccessHint`)})]})]})})}var Ie=new Set([`Control`,`Alt`,`Shift`,`Meta`,`Fn`]),Z=`toggleVoice`,Le=[{label:`Ctrl+Shift`,activator:{kind:`modifierOnly`,modifiers:[`control`,`shift`]}},{label:`Alt`,activator:{kind:`modifierOnly`,modifiers:[`option`]}}];function Re(){let{t:e}=r(`settings`),t=me(),n=ae(),i=ee(e=>e.registered)===!1,[a,o]=(0,W.useState)(()=>le(t)),[s,c]=(0,W.useState)(!1),[l,d]=(0,W.useState)([]),[f,p]=(0,W.useState)(!1),m=(0,W.useRef)(null),h=(0,W.useMemo)(()=>{let e=te(),n={label:z(e),activator:e};return t?[{label:`Fn`,activator:F},n]:[n]},[t]),g=a.kind!==`off`,_=(0,W.useCallback)(e=>{o(e),re(e),c(!1),d([]),p(!1)},[]),v=ve({onBound:()=>_({kind:`off`})}),y=v.catalog.find(e=>e.key===Z)?.accelerator??``,b=v.recordingKey===Z,x=(0,W.useCallback)(()=>{_(F),v.removeHotkey(Z)},[v,_]),S=pe()?Le:[],C=(0,W.useCallback)(e=>{_(e),v.removeHotkey(Z)},[v,_]),w=(0,W.useCallback)(()=>{_({kind:`off`}),v.removeHotkey(Z)},[v,_]),T=(0,W.useCallback)(()=>{c(!0),d([]),p(!1),requestAnimationFrame(()=>{m.current?.focus()})},[]),E=(0,W.useCallback)(()=>{c(!1),d([]),p(!1)},[]),D=(0,W.useCallback)(e=>{let n=[];return t&&e.getModifierState(`Fn`)&&n.push(`function`),e.ctrlKey&&n.push(`control`),e.altKey&&n.push(`option`),e.shiftKey&&n.push(`shift`),e.metaKey&&n.push(`command`),n},[t]),O=(0,W.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),e.key===`Escape`){E();return}let t=D(e);if(t.includes(`function`)){_(F);return}if(Ie.has(e.key)){p(!1),d(I(t));return}if(t.length===0){p(!0);return}_({kind:`key`,label:e.key.length===1?e.key.toUpperCase():e.key,modifiers:I(t)})},[E,D,_]),k=(0,W.useCallback)(e=>{s&&D(e).length===0&&l.length>0&&(d([]),p(!0))},[D,s,l]);(0,W.useEffect)(()=>{if(!s)return;let e=e=>{m.current&&!m.current.contains(e.target)&&E()};return window.addEventListener(`mousedown`,e),()=>window.removeEventListener(`mousedown`,e)},[E,s]);let A=g&&!h.some(e=>R(e.activator,a));return n?(0,G.jsx)(U,{title:e(`voicePage.voiceShortcutTitle`),subtitle:e(`voicePage.voiceShortcutSubtitleDesktop`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[t&&(0,G.jsx)(Q,{label:e(`voicePage.fnKeyLabel`),badge:e(`voicePage.recommendedBadge`),selected:B(a),onClick:x}),S.map(e=>(0,G.jsx)(Q,{label:e.label,selected:R(e.activator,a),onClick:()=>C(e.activator)},e.label)),(0,G.jsx)(Q,{label:b?e(`voicePage.recordingPrompt`):y?(0,G.jsx)(ce,{accelerator:y}):e(`voicePage.customKey`),selected:y!==``,recording:b,onClick:b?v.stopRecording:()=>v.startRecording(Z)}),(0,G.jsx)(Q,{label:e(`voicePage.offKeyLabel`),selected:a.kind===`off`&&!y&&!b,onClick:w})]}),B(a)&&i&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--system-negative-strong)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.fnRefusedNote`)})]}),v.conflict?.key===Z&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.shortcutConflict`,{command:v.conflict.label})})]})]})}):(0,G.jsx)(U,{title:e(`voicePage.voiceShortcutTitle`),subtitle:e(`voicePage.voiceShortcutSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(N,{checked:g,onChange:e=>{_(e?de(t):{kind:`off`})},label:e(`voicePage.enableVoiceShortcut`)}),g&&(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsx)(`span`,{className:J,children:e(`voicePage.activationKeyLabel`)}),(0,G.jsxs)(`div`,{ref:m,tabIndex:s?0:-1,onKeyDown:s?O:void 0,onKeyUp:s?k:void 0,className:`flex flex-wrap items-center gap-2 focus:outline-none`,children:[h.map(e=>(0,G.jsx)(Q,{label:e.label,selected:R(e.activator,a),onClick:()=>_(e.activator)},e.label)),s?(0,G.jsx)(Q,{label:l.length>0?se(l):e(`voicePage.pressShortcut`),selected:!0,recording:!0,onClick:E}):(0,G.jsx)(Q,{label:A?z(a):e(`voicePage.customKey`),selected:A,onClick:T})]}),f&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--content-quiet)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.shortcutChordHint`)})]}),g&&(0,G.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--content-quiet)]`,children:[(0,G.jsx)(u,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,G.jsx)(`span`,{children:e(`voicePage.focusedTabNote`)})]})]})]})})}function Q({label:e,badge:t,selected:n,recording:r=!1,onClick:i}){return(0,G.jsxs)(`button`,{type:`button`,onClick:i,className:[`inline-flex items-center gap-2 rounded-lg border px-3 py-1.5 text-body-medium-lighter transition-colors`,`border-[var(--border-subtle)]`,n?`bg-[var(--surface-active)]`:`bg-[var(--surface-lift)] hover:bg-[var(--surface-hover)]`,r?`animate-pulse`:``].filter(Boolean).join(` `),children:[(0,G.jsx)(`span`,{className:[`inline-block h-2.5 w-2.5 rounded-full border`,n?`border-[var(--primary-base)] bg-[var(--primary-base)]`:`border-[var(--border-element)]`].join(` `)}),(0,G.jsx)(`span`,{className:`text-[var(--content-default)]`,children:e}),t&&(0,G.jsx)(`span`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:t})]})}function ze(){let{t:e}=r(`settings`),t=j.use.pauseBeforeReplyMs(),n=j.use.setPauseBeforeReplyMs(),i=j.use.interruptSensitivity(),a=j.use.setInterruptSensitivity(),o=(0,W.useMemo)(()=>[{value:`low`,label:e(`voicePage.interruptSensitivityLow`)},{value:`medium`,label:e(`voicePage.interruptSensitivityMedium`)},{value:`high`,label:e(`voicePage.interruptSensitivityHigh`)}],[e]),s=t!==null||i!==null;return(0,G.jsx)(U,{title:e(`voicePage.turnTakingTitle`),subtitle:e(`voicePage.turnTakingSubtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,G.jsx)(xe,{}),(0,G.jsx)($,{label:e(`voicePage.pauseBeforeReplyLabel`),description:e(`voicePage.pauseBeforeReplyDescription`),isDefault:t===null,children:(0,G.jsx)(`div`,{className:`max-w-xs`,children:(0,G.jsx)(ie,{value:(t??1200)/1e3,onValueChange:e=>{typeof e==`number`&&n(Math.round(e*1e3))},min:500/1e3,max:_/1e3,step:.1,showValue:!0,formatValue:e=>`${(typeof e==`number`?e:e[0]).toFixed(1)}s`,"aria-label":e(`voicePage.pauseBeforeReplyAriaLabel`)})})}),(0,G.jsx)($,{label:e(`voicePage.interruptSensitivityLabel`),description:e(`voicePage.interruptSensitivityDescription`),isDefault:i===null,children:(0,G.jsx)(`div`,{className:`max-w-xs`,children:(0,G.jsx)(oe,{items:o,value:i??`medium`,onChange:a,ariaLabel:e(`voicePage.interruptSensitivityAriaLabel`)})})}),s&&(0,G.jsx)(`div`,{children:(0,G.jsx)(h,{variant:`outlined`,onClick:()=>{n(null),a(null)},children:e(`voicePage.resetToDefaults`)})})]})})}function $({label:e,description:t,isDefault:n,children:i}){let{t:a}=r(`settings`);return(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e}),n&&(0,G.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:a(`voicePage.defaultBadge`)})]}),(0,G.jsx)(`p`,{className:J,children:t}),i]})}export{Ae as VoicePage};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CYfJo8gP.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{At as i,D as a,I as o,Xn as s,fr as c,hr as l,lr as u,mr as d,pr as f,s as p,ur as m}from"./icons-CSdHOix6.js";import{Bt as h,Lt as g,Rt as _,ia as v,zt as y}from"./index-BVVp210p.js";var b=e(n(),1),x={"sun.max.fill":{icon:a,className:`text-orange-500`},"cloud.sun.fill":{icon:m,className:`text-amber-400`},"moon.fill":{icon:i,className:`text-blue-400`},"cloud.moon.fill":{icon:f,className:`text-blue-400`},"cloud.fill":{icon:u,className:`text-stone-400`},"cloud.rain.fill":{icon:c,className:`text-blue-400`},snowflake:{icon:o,className:`text-blue-300`},"cloud.bolt.fill":{icon:d,className:`text-orange-500`},"cloud.fog.fill":{icon:l,className:`text-stone-400`}},S={sunny:{icon:a,className:`text-orange-500`},clear:{icon:a,className:`text-orange-500`},"partly cloudy":{icon:m,className:`text-amber-400`},"mostly sunny":{icon:m,className:`text-amber-400`},cloudy:{icon:u,className:`text-stone-400`},overcast:{icon:u,className:`text-stone-400`},rainy:{icon:c,className:`text-blue-400`},rain:{icon:c,className:`text-blue-400`},drizzle:{icon:c,className:`text-blue-400`},snow:{icon:o,className:`text-blue-300`},snowy:{icon:o,className:`text-blue-300`},thunderstorm:{icon:d,className:`text-orange-500`},thunder:{icon:d,className:`text-orange-500`},foggy:{icon:l,className:`text-stone-400`},fog:{icon:l,className:`text-stone-400`},mist:{icon:l,className:`text-stone-400`},hazy:{icon:l,className:`text-stone-400`},night:{icon:i,className:`text-blue-400`},"mainly clear":{icon:a,className:`text-orange-500`},"mostly cloudy":{icon:u,className:`text-stone-400`},breezy:{icon:p,className:`text-stone-400`},windy:{icon:p,className:`text-stone-400`},cool:{icon:u,className:`text-stone-400`},warm:{icon:a,className:`text-orange-500`},hot:{icon:a,className:`text-orange-500`},cold:{icon:o,className:`text-blue-300`},"cold snap":{icon:o,className:`text-blue-300`},"warm, mostly sunny":{icon:m,className:`text-amber-400`},"cooler, breezy":{icon:p,className:`text-stone-400`}},C={icon:u,className:`text-stone-400`};function w(e){let t=x[e];if(t)return t;let n=e.toLowerCase(),r=S[n];if(r)return r;for(let[e,t]of Object.entries(S))if(n.includes(e))return t;return C}function T(e){if(typeof e==`string`){let t=e.match(/^(\d+)\s*mph\s*(.*)/i);if(t)return{speed:Number(t[1]),direction:t[2]?.trim()||void 0}}return{}}function E(e){let t;if(typeof e.location==`string`)t=e.location;else{let n=y(e.location);n&&typeof n.name==`string`&&(t=n.name)}if(!t)return null;let n=y(e.current),r=_(n?.temp)??_(e.currentTemp)??_(e.temperature)??_(e.temp),i=_(n?.feelsLike)??_(n?.feels_like)??_(n?.apparentTemperature)??_(e.feelsLike)??_(e.feels_like)??_(e.apparentTemperature),a=h(n?.condition)??h(e.condition),o=_(n?.humidity)??_(e.humidity),s=T(n?.wind??e.wind),c=_(n?.windSpeed)??_(n?.wind_speed)??_(e.windSpeed)??_(e.wind_speed)??s.speed,l=h(n?.windDirection)??h(n?.wind_direction)??h(e.windDirection)??h(e.wind_direction)??s.direction,u=y(e.units),d=h(u?.temperature)??h(n?.unit)??h(e.unit)??`F`,f=h(u?.speed)??h(e.windUnit)??h(e.wind_unit),p=g(e.hourly).map((e,t)=>({id:h(e.id)??String(t),time:h(e.time)??``,icon:h(e.icon)??h(e.condition)??`cloud.fill`,temp:_(e.tempC)??_(e.temp)??_(e.temperature),tempC:_(e.tempC)})),m=g([e.forecast,e.daily,e.days].find(Array.isArray)).map((e,t)=>({id:h(e.id)??String(t),day:h(e.day)??h(e.date),dayLabel:h(e.dayLabel)??h(e.date),icon:h(e.icon)??h(e.condition)??`cloud.fill`,low:_(e.low),high:_(e.high),lowC:_(e.lowC),highC:_(e.highC),precip:_(e.precip)??_(e.precipitation)??_(e.precipitationProbability),condition:h(e.condition)}));return{location:t,currentTemp:r,feelsLike:i,condition:a,humidity:o,windSpeed:c,windDirection:l,windUnit:f,unit:d,hourly:p.length>0?p:void 0,forecast:m.length>0?m:void 0}}function D(e){return e*9/5+32}function O(e){return(e-32)*5/9}function k(e,t,n){if(e===void 0)return null;let r=e;return t&&!n&&(r=O(e)),!t&&n&&(r=D(e)),`${Math.round(r)}`}function A(e,t,n){return e.tempC===void 0?e.temp===void 0?null:k(e.temp,t,n):k(e.tempC,!1,n)}function j(e,t,n){return e.lowC===void 0?k(e.low,t,n):k(e.lowC,!1,n)}function M(e,t,n){return e.highC===void 0?k(e.high,t,n):k(e.highC,!1,n)}var N=r();function P({icon:e,size:t=20}){let{icon:n,className:r}=w(e);return(0,N.jsx)(n,{width:t,height:t,className:r})}function F({useFahrenheit:e,onToggle:n}){let{t:r}=t(`chat`);return(0,N.jsxs)(`div`,{className:`flex overflow-hidden rounded-md border border-[var(--border-element)]`,children:[(0,N.jsx)(`button`,{type:`button`,onClick:()=>n(!0),className:v(`px-2 py-0.5 text-body-small-default transition-colors`,e?`bg-[var(--primary-base)] text-[var(--content-inset)]`:`bg-transparent text-[var(--content-quiet)]`),children:r(`weatherForecastDisplay.fahrenheit`)}),(0,N.jsx)(`button`,{type:`button`,onClick:()=>n(!1),className:v(`px-2 py-0.5 text-body-small-default transition-colors`,e?`bg-transparent text-[var(--content-quiet)]`:`bg-[var(--primary-base)] text-[var(--content-inset)]`),children:r(`weatherForecastDisplay.celsius`)})]})}function I({data:e,sourceIsFahrenheit:n,useFahrenheit:r,onToggle:i}){let{t:a}=t(`chat`),o=e.location,c=k(e.currentTemp,n,r),l=k(e.feelsLike,n,r),u=r?`F`:`C`,d=e.forecast?.[0],f=d?M(d,n,r):null,m=d?j(d,n,r):null,h=null;return e.windSpeed!==void 0&&(h=`${Math.round(e.windSpeed)} ${e.windUnit??`mph`}`,e.windDirection&&(h=`${e.windDirection} ${h}`)),(0,N.jsxs)(`div`,{children:[(0,N.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:o}),c!==null&&(0,N.jsxs)(`div`,{className:`mt-1 text-4xl font-light text-[var(--content-default)]`,children:[c,`°`,u]}),e.condition&&(0,N.jsx)(`div`,{className:`mt-0.5 text-body-small-default text-[var(--content-quiet)]`,children:e.condition})]}),(0,N.jsx)(F,{useFahrenheit:r,onToggle:i})]}),(0,N.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-3`,children:[l!==null&&(0,N.jsx)(`span`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:a(`weatherForecastDisplay.feelsLike`,{temp:l})}),f!==null&&m!==null&&(0,N.jsx)(`span`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:a(`weatherForecastDisplay.highLow`,{high:f,low:m})}),h&&(0,N.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2 py-0.5 text-label-medium-default text-[var(--content-tertiary)]`,children:[(0,N.jsx)(p,{width:12,height:12}),h]}),e.humidity!==void 0&&(0,N.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2 py-0.5 text-label-medium-default text-[var(--content-tertiary)]`,children:[(0,N.jsx)(s,{width:12,height:12}),e.humidity,`%`]})]})]})}function L({hourly:e,sourceIsFahrenheit:n,useFahrenheit:r}){let{t:i}=t(`chat`);return(0,N.jsx)(`div`,{className:`mt-3 border-t border-[var(--border-element)] pt-3`,children:(0,N.jsx)(`div`,{className:`flex gap-3 overflow-x-auto`,children:e.map((e,t)=>{let a=e.time.toLowerCase()===`now`,o=A(e,n,r);return(0,N.jsxs)(`div`,{className:`flex min-w-[3rem] shrink-0 flex-col items-center gap-1`,children:[(0,N.jsx)(`span`,{className:a?`text-body-small-emphasised text-[var(--content-default)]`:`text-label-medium-default text-[var(--content-quiet)]`,children:a?i(`weatherForecastDisplay.now`):e.time}),(0,N.jsx)(P,{icon:e.icon,size:18}),o!==null&&(0,N.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-default)]`,children:[o,`°`]})]},e.id??t)})})})}function R({forecast:e,currentTemp:t,sourceIsFahrenheit:n,useFahrenheit:r}){let{globalMin:i,globalMax:a}=(0,b.useMemo)(()=>{let t=1/0,n=-1/0;for(let r of e){let e=r.lowC??r.low,i=r.highC??r.high;e!==void 0&&e<t&&(t=e),i!==void 0&&i>n&&(n=i)}return{globalMin:t===1/0?0:t,globalMax:n===-1/0?100:n}},[e]),o=a-i||1;return(0,N.jsx)(`div`,{className:`mt-3 border-t border-[var(--border-element)] pt-3`,children:(0,N.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map((e,s)=>{let c=e.dayLabel??e.day??`Day ${s+1}`,l=c.toLowerCase()===`today`,u=j(e,n,r),d=M(e,n,r),f=e.precip,p=e.lowC??e.low??i,m=e.highC??e.high??a,h=(p-i)/o*100,g=(m-i)/o*100,_=Math.max(g-h,2),y=null;if(l&&t!==void 0){let r=(e.lowC!==void 0||e.highC!==void 0)&&n?(t-32)*5/9:t;y=m===p?50:(Math.max(p,Math.min(m,r))-p)/(m-p)*100}return(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`span`,{className:v(`w-12 shrink-0 truncate text-body-small-default`,l?`text-[var(--content-default)]`:`text-[var(--content-quiet)]`),children:c}),(0,N.jsxs)(`div`,{className:`flex w-10 shrink-0 items-center justify-center gap-0.5`,children:[(0,N.jsx)(P,{icon:e.icon,size:16}),f!==void 0&&f>0&&(0,N.jsxs)(`span`,{className:`text-label-small-default text-blue-400`,children:[Math.round(f),`%`]})]}),(0,N.jsx)(`span`,{className:`w-7 shrink-0 text-right text-body-small-default text-[var(--content-faint)]`,children:u===null?`--`:`${u}°`}),(0,N.jsxs)(`div`,{className:`relative h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--border-subtle)]`,children:[(0,N.jsx)(`div`,{className:`absolute top-0 h-full rounded-full bg-[var(--primary-base)]`,style:{left:`${h}%`,width:`${_}%`}}),y!==null&&(0,N.jsx)(`div`,{className:`absolute top-1/2 h-2.5 w-2.5 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-[var(--aux-white)] bg-[var(--aux-white)] shadow-sm`,style:{left:`${h+y/100*_}%`}})]}),(0,N.jsx)(`span`,{className:`w-7 shrink-0 text-right text-body-small-default text-[var(--content-default)]`,children:d===null?`--`:`${d}°`})]},e.id??s)})})})}function z({templateData:e,fallback:t}){let n=(0,b.useMemo)(()=>E(e),[e]),r=n?.unit?.toUpperCase()===`F`||n?.unit?.toLowerCase()===`fahrenheit`,[i,a]=(0,b.useState)(null),o=i??r;return!n||n.currentTemp===void 0&&!n.forecast?.length?t??null:(0,N.jsxs)(`div`,{className:`mt-3`,children:[(0,N.jsx)(I,{data:n,sourceIsFahrenheit:r,useFahrenheit:o,onToggle:a}),n.hourly&&n.hourly.length>0&&(0,N.jsx)(L,{hourly:n.hourly,sourceIsFahrenheit:r,useFahrenheit:o}),n.forecast&&n.forecast.length>0&&(0,N.jsx)(R,{forecast:n.forecast,currentTemp:n.currentTemp,sourceIsFahrenheit:r,useFahrenheit:o})]})}export{z as WeatherForecastDisplay};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CYfJo8gP.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{At as i,D as a,I as o,Xn as s,fr as c,hr as l,lr as u,mr as d,pr as f,s as p,ur as m}from"./icons-CSdHOix6.js";import{Bt as h,Lt as g,Rt as _,ia as v,zt as y}from"./index-b_IQShc9.js";var b=e(n(),1),x={"sun.max.fill":{icon:a,className:`text-orange-500`},"cloud.sun.fill":{icon:m,className:`text-amber-400`},"moon.fill":{icon:i,className:`text-blue-400`},"cloud.moon.fill":{icon:f,className:`text-blue-400`},"cloud.fill":{icon:u,className:`text-stone-400`},"cloud.rain.fill":{icon:c,className:`text-blue-400`},snowflake:{icon:o,className:`text-blue-300`},"cloud.bolt.fill":{icon:d,className:`text-orange-500`},"cloud.fog.fill":{icon:l,className:`text-stone-400`}},S={sunny:{icon:a,className:`text-orange-500`},clear:{icon:a,className:`text-orange-500`},"partly cloudy":{icon:m,className:`text-amber-400`},"mostly sunny":{icon:m,className:`text-amber-400`},cloudy:{icon:u,className:`text-stone-400`},overcast:{icon:u,className:`text-stone-400`},rainy:{icon:c,className:`text-blue-400`},rain:{icon:c,className:`text-blue-400`},drizzle:{icon:c,className:`text-blue-400`},snow:{icon:o,className:`text-blue-300`},snowy:{icon:o,className:`text-blue-300`},thunderstorm:{icon:d,className:`text-orange-500`},thunder:{icon:d,className:`text-orange-500`},foggy:{icon:l,className:`text-stone-400`},fog:{icon:l,className:`text-stone-400`},mist:{icon:l,className:`text-stone-400`},hazy:{icon:l,className:`text-stone-400`},night:{icon:i,className:`text-blue-400`},"mainly clear":{icon:a,className:`text-orange-500`},"mostly cloudy":{icon:u,className:`text-stone-400`},breezy:{icon:p,className:`text-stone-400`},windy:{icon:p,className:`text-stone-400`},cool:{icon:u,className:`text-stone-400`},warm:{icon:a,className:`text-orange-500`},hot:{icon:a,className:`text-orange-500`},cold:{icon:o,className:`text-blue-300`},"cold snap":{icon:o,className:`text-blue-300`},"warm, mostly sunny":{icon:m,className:`text-amber-400`},"cooler, breezy":{icon:p,className:`text-stone-400`}},C={icon:u,className:`text-stone-400`};function w(e){let t=x[e];if(t)return t;let n=e.toLowerCase(),r=S[n];if(r)return r;for(let[e,t]of Object.entries(S))if(n.includes(e))return t;return C}function T(e){if(typeof e==`string`){let t=e.match(/^(\d+)\s*mph\s*(.*)/i);if(t)return{speed:Number(t[1]),direction:t[2]?.trim()||void 0}}return{}}function E(e){let t;if(typeof e.location==`string`)t=e.location;else{let n=y(e.location);n&&typeof n.name==`string`&&(t=n.name)}if(!t)return null;let n=y(e.current),r=_(n?.temp)??_(e.currentTemp)??_(e.temperature)??_(e.temp),i=_(n?.feelsLike)??_(n?.feels_like)??_(n?.apparentTemperature)??_(e.feelsLike)??_(e.feels_like)??_(e.apparentTemperature),a=h(n?.condition)??h(e.condition),o=_(n?.humidity)??_(e.humidity),s=T(n?.wind??e.wind),c=_(n?.windSpeed)??_(n?.wind_speed)??_(e.windSpeed)??_(e.wind_speed)??s.speed,l=h(n?.windDirection)??h(n?.wind_direction)??h(e.windDirection)??h(e.wind_direction)??s.direction,u=y(e.units),d=h(u?.temperature)??h(n?.unit)??h(e.unit)??`F`,f=h(u?.speed)??h(e.windUnit)??h(e.wind_unit),p=g(e.hourly).map((e,t)=>({id:h(e.id)??String(t),time:h(e.time)??``,icon:h(e.icon)??h(e.condition)??`cloud.fill`,temp:_(e.tempC)??_(e.temp)??_(e.temperature),tempC:_(e.tempC)})),m=g([e.forecast,e.daily,e.days].find(Array.isArray)).map((e,t)=>({id:h(e.id)??String(t),day:h(e.day)??h(e.date),dayLabel:h(e.dayLabel)??h(e.date),icon:h(e.icon)??h(e.condition)??`cloud.fill`,low:_(e.low),high:_(e.high),lowC:_(e.lowC),highC:_(e.highC),precip:_(e.precip)??_(e.precipitation)??_(e.precipitationProbability),condition:h(e.condition)}));return{location:t,currentTemp:r,feelsLike:i,condition:a,humidity:o,windSpeed:c,windDirection:l,windUnit:f,unit:d,hourly:p.length>0?p:void 0,forecast:m.length>0?m:void 0}}function D(e){return e*9/5+32}function O(e){return(e-32)*5/9}function k(e,t,n){if(e===void 0)return null;let r=e;return t&&!n&&(r=O(e)),!t&&n&&(r=D(e)),`${Math.round(r)}`}function A(e,t,n){return e.tempC===void 0?e.temp===void 0?null:k(e.temp,t,n):k(e.tempC,!1,n)}function j(e,t,n){return e.lowC===void 0?k(e.low,t,n):k(e.lowC,!1,n)}function M(e,t,n){return e.highC===void 0?k(e.high,t,n):k(e.highC,!1,n)}var N=r();function P({icon:e,size:t=20}){let{icon:n,className:r}=w(e);return(0,N.jsx)(n,{width:t,height:t,className:r})}function F({useFahrenheit:e,onToggle:n}){let{t:r}=t(`chat`);return(0,N.jsxs)(`div`,{className:`flex overflow-hidden rounded-md border border-[var(--border-element)]`,children:[(0,N.jsx)(`button`,{type:`button`,onClick:()=>n(!0),className:v(`px-2 py-0.5 text-body-small-default transition-colors`,e?`bg-[var(--primary-base)] text-[var(--content-inset)]`:`bg-transparent text-[var(--content-quiet)]`),children:r(`weatherForecastDisplay.fahrenheit`)}),(0,N.jsx)(`button`,{type:`button`,onClick:()=>n(!1),className:v(`px-2 py-0.5 text-body-small-default transition-colors`,e?`bg-transparent text-[var(--content-quiet)]`:`bg-[var(--primary-base)] text-[var(--content-inset)]`),children:r(`weatherForecastDisplay.celsius`)})]})}function I({data:e,sourceIsFahrenheit:n,useFahrenheit:r,onToggle:i}){let{t:a}=t(`chat`),o=e.location,c=k(e.currentTemp,n,r),l=k(e.feelsLike,n,r),u=r?`F`:`C`,d=e.forecast?.[0],f=d?M(d,n,r):null,m=d?j(d,n,r):null,h=null;return e.windSpeed!==void 0&&(h=`${Math.round(e.windSpeed)} ${e.windUnit??`mph`}`,e.windDirection&&(h=`${e.windDirection} ${h}`)),(0,N.jsxs)(`div`,{children:[(0,N.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:o}),c!==null&&(0,N.jsxs)(`div`,{className:`mt-1 text-4xl font-light text-[var(--content-default)]`,children:[c,`°`,u]}),e.condition&&(0,N.jsx)(`div`,{className:`mt-0.5 text-body-small-default text-[var(--content-quiet)]`,children:e.condition})]}),(0,N.jsx)(F,{useFahrenheit:r,onToggle:i})]}),(0,N.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-3`,children:[l!==null&&(0,N.jsx)(`span`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:a(`weatherForecastDisplay.feelsLike`,{temp:l})}),f!==null&&m!==null&&(0,N.jsx)(`span`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:a(`weatherForecastDisplay.highLow`,{high:f,low:m})}),h&&(0,N.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2 py-0.5 text-label-medium-default text-[var(--content-tertiary)]`,children:[(0,N.jsx)(p,{width:12,height:12}),h]}),e.humidity!==void 0&&(0,N.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2 py-0.5 text-label-medium-default text-[var(--content-tertiary)]`,children:[(0,N.jsx)(s,{width:12,height:12}),e.humidity,`%`]})]})]})}function L({hourly:e,sourceIsFahrenheit:n,useFahrenheit:r}){let{t:i}=t(`chat`);return(0,N.jsx)(`div`,{className:`mt-3 border-t border-[var(--border-element)] pt-3`,children:(0,N.jsx)(`div`,{className:`flex gap-3 overflow-x-auto`,children:e.map((e,t)=>{let a=e.time.toLowerCase()===`now`,o=A(e,n,r);return(0,N.jsxs)(`div`,{className:`flex min-w-[3rem] shrink-0 flex-col items-center gap-1`,children:[(0,N.jsx)(`span`,{className:a?`text-body-small-emphasised text-[var(--content-default)]`:`text-label-medium-default text-[var(--content-quiet)]`,children:a?i(`weatherForecastDisplay.now`):e.time}),(0,N.jsx)(P,{icon:e.icon,size:18}),o!==null&&(0,N.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-default)]`,children:[o,`°`]})]},e.id??t)})})})}function R({forecast:e,currentTemp:t,sourceIsFahrenheit:n,useFahrenheit:r}){let{globalMin:i,globalMax:a}=(0,b.useMemo)(()=>{let t=1/0,n=-1/0;for(let r of e){let e=r.lowC??r.low,i=r.highC??r.high;e!==void 0&&e<t&&(t=e),i!==void 0&&i>n&&(n=i)}return{globalMin:t===1/0?0:t,globalMax:n===-1/0?100:n}},[e]),o=a-i||1;return(0,N.jsx)(`div`,{className:`mt-3 border-t border-[var(--border-element)] pt-3`,children:(0,N.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map((e,s)=>{let c=e.dayLabel??e.day??`Day ${s+1}`,l=c.toLowerCase()===`today`,u=j(e,n,r),d=M(e,n,r),f=e.precip,p=e.lowC??e.low??i,m=e.highC??e.high??a,h=(p-i)/o*100,g=(m-i)/o*100,_=Math.max(g-h,2),y=null;if(l&&t!==void 0){let r=(e.lowC!==void 0||e.highC!==void 0)&&n?(t-32)*5/9:t;y=m===p?50:(Math.max(p,Math.min(m,r))-p)/(m-p)*100}return(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`span`,{className:v(`w-12 shrink-0 truncate text-body-small-default`,l?`text-[var(--content-default)]`:`text-[var(--content-quiet)]`),children:c}),(0,N.jsxs)(`div`,{className:`flex w-10 shrink-0 items-center justify-center gap-0.5`,children:[(0,N.jsx)(P,{icon:e.icon,size:16}),f!==void 0&&f>0&&(0,N.jsxs)(`span`,{className:`text-label-small-default text-blue-400`,children:[Math.round(f),`%`]})]}),(0,N.jsx)(`span`,{className:`w-7 shrink-0 text-right text-body-small-default text-[var(--content-faint)]`,children:u===null?`--`:`${u}°`}),(0,N.jsxs)(`div`,{className:`relative h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--border-subtle)]`,children:[(0,N.jsx)(`div`,{className:`absolute top-0 h-full rounded-full bg-[var(--primary-base)]`,style:{left:`${h}%`,width:`${_}%`}}),y!==null&&(0,N.jsx)(`div`,{className:`absolute top-1/2 h-2.5 w-2.5 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-[var(--aux-white)] bg-[var(--aux-white)] shadow-sm`,style:{left:`${h+y/100*_}%`}})]}),(0,N.jsx)(`span`,{className:`w-7 shrink-0 text-right text-body-small-default text-[var(--content-default)]`,children:d===null?`--`:`${d}°`})]},e.id??s)})})})}function z({templateData:e,fallback:t}){let n=(0,b.useMemo)(()=>E(e),[e]),r=n?.unit?.toUpperCase()===`F`||n?.unit?.toLowerCase()===`fahrenheit`,[i,a]=(0,b.useState)(null),o=i??r;return!n||n.currentTemp===void 0&&!n.forecast?.length?t??null:(0,N.jsxs)(`div`,{className:`mt-3`,children:[(0,N.jsx)(I,{data:n,sourceIsFahrenheit:r,useFahrenheit:o,onToggle:a}),n.hourly&&n.hourly.length>0&&(0,N.jsx)(L,{hourly:n.hourly,sourceIsFahrenheit:r,useFahrenheit:o}),n.forecast&&n.forecast.length>0&&(0,N.jsx)(R,{forecast:n.forecast,currentTemp:n.currentTemp,sourceIsFahrenheit:r,useFahrenheit:o})]})}export{z as WeatherForecastDisplay};
@@ -1 +1 @@
1
- import{j as e}from"./vendor-CYfJo8gP.js";import{f as t,t as n}from"./react-DPM_L_aA.js";import{Pr as r,T_ as i,dv as a}from"./index-BVVp210p.js";import{t as o}from"./auth-welcome-screen-B5i9VCDX.js";var s=n();function c(){let{t:n}=e(`onboarding`),c=t();return(0,s.jsx)(o,{secondary:{label:n(`welcome.continueWithoutAccount`),onSelect:()=>{i()?c(a.selectAssistant,r):c(a.onboarding.hosting,r)}}})}export{c as WelcomeScreen};
1
+ import{j as e}from"./vendor-CYfJo8gP.js";import{f as t,t as n}from"./react-DPM_L_aA.js";import{Pr as r,T_ as i,dv as a}from"./index-b_IQShc9.js";import{t as o}from"./auth-welcome-screen-D20mVl5R.js";var s=n();function c(){let{t:n}=e(`onboarding`),c=t();return(0,s.jsx)(o,{secondary:{label:n(`welcome.continueWithoutAccount`),onSelect:()=>{i()?c(a.selectAssistant,r):c(a.onboarding.hosting,r)}}})}export{c as WelcomeScreen};