@vellumai/web 0.8.12 → 0.9.0-staging.1
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.
- package/dist/assets/{BundleConfirmPage-YJRCo0Hn.js → BundleConfirmPage-BJdcxRys.js} +1 -1
- package/dist/assets/{account-page-Dj92GjiR.js → account-page-JjrjgOK5.js} +1 -1
- package/dist/assets/{account-shell-C6-wTQZB.js → account-shell-DFnRH83P.js} +1 -1
- package/dist/assets/{add-credits-modal-CsP4udDc.js → add-credits-modal-BadC5LC-.js} +1 -1
- package/dist/assets/advanced-page-Jrw6gEN3.js +1 -0
- package/dist/assets/ai-page-Cmzu2iyW.js +1 -0
- package/dist/assets/{angular-html-CmFtPjcd.js → angular-html-DwhsLkCT.js} +1 -1
- package/dist/assets/{angular-ts-ByyDc99G.js → angular-ts-DmqgTXf6.js} +1 -1
- package/dist/assets/api-CpdDXFZc.js +39 -0
- package/dist/assets/{api-key-screen-Nxq7EclW.js → api-key-screen-Dperne1f.js} +1 -1
- package/dist/assets/{apl-Dw7glHgE.js → apl-BKqpxlBs.js} +1 -1
- package/dist/assets/{app-html-cache-DuUq2_RD.js → app-html-cache-BSHug-bt.js} +1 -1
- package/dist/assets/{archive-page-DGVZ9qUU.js → archive-page-CafS5Ilu.js} +1 -1
- package/dist/assets/assistant-feature-flag-store-CFzsxEC5.js +1 -0
- package/dist/assets/assistant-identity-store-C5A1x0hz.js +1 -0
- package/dist/assets/{assistant-status-panel-B-yM7DE5.js → assistant-status-panel-CL8akPE9.js} +1 -1
- package/dist/assets/{astro-CKItIPY0.js → astro-DxNfQMnR.js} +1 -1
- package/dist/assets/auth-store-Y5mWi11L.js +6 -0
- package/dist/assets/{avatar-api-CLSAZR4o.js → avatar-api-DVzt-2Wc.js} +1 -1
- package/dist/assets/avatar-bundled-components-CjTgS4Qf.js +1 -0
- package/dist/assets/avatar-random-BpNitLn6.js +1 -0
- package/dist/assets/billing-page-UWpEB1i_.js +3 -0
- package/dist/assets/{blade-DA6_AhoD.js → blade-gUSnDLyP.js} +1 -1
- package/dist/assets/bookmark-GaSa4dxV.js +1 -0
- package/dist/assets/bookmarks-page-CwE77ImA.js +1 -0
- package/dist/assets/{bsl-67jBbiPN.js → bsl-3W7QZoyu.js} +1 -1
- package/dist/assets/build-state-1jsx-FRM.js +1 -0
- package/dist/assets/{button-C68o-wep.js → button-CHADMNBN.js} +1 -1
- package/dist/assets/{cairo-DnO1G8rH.js → cairo-B1cdZ8bI.js} +1 -1
- package/dist/assets/cast-onboarding-flow-B3gD85pn.css +1 -0
- package/dist/assets/cast-onboarding-flow-CPID8KXZ.js +4 -0
- package/dist/assets/client-feature-flag-store-lWvUd78D.js +1 -0
- package/dist/assets/{cobol-fja4NJB8.js → cobol-BemFsMU3.js} +1 -1
- package/dist/assets/{coffee-K_Hd_cuT.js → coffee-Drv8d0z-.js} +1 -1
- package/dist/assets/command-palette-BGN_A2T6.js +1 -0
- package/dist/assets/command-palette-window-page-CkwBg3_S.js +1 -0
- package/dist/assets/{community-page-BgwEi2WM.js → community-page-D79zGzzX.js} +1 -1
- package/dist/assets/{confirm-dialog-94QFOD8a.js → confirm-dialog-M0xuyGF3.js} +1 -1
- package/dist/assets/{connect-page-DKR1ECD0.js → connect-page-BjtUpMV0.js} +1 -1
- package/dist/assets/contacts-gateway-BUMee059.js +1 -0
- package/dist/assets/contacts-page-route-D6HqZyA-.js +1 -0
- package/dist/assets/conversation-store-WsKQTo9S.js +1 -0
- package/dist/assets/{cpp-Dtjpqw_o.js → cpp-icvAjQoj.js} +1 -1
- package/dist/assets/{create-selectors-CDULelrw.js → create-selectors-o9n6Fl_g.js} +1 -1
- package/dist/assets/{crystal-Bpvb4BAy.js → crystal-CTVtbpfn.js} +1 -1
- package/dist/assets/{danger-zone-redirect-page-B7We5zLz.js → danger-zone-redirect-page-8h5vMW4F.js} +1 -1
- package/dist/assets/debug-page-RVxfPQA2.js +2 -0
- package/dist/assets/{deploy-dialogs-DrOvG0Ma.js → deploy-dialogs-ByGrcx2G.js} +1 -1
- package/dist/assets/{detail-card-BOk0V4_4.js → detail-card-DuosftaO.js} +1 -1
- package/dist/assets/developer-page-BnPcI7uC.js +1 -0
- package/dist/assets/devices-page-BrzQ4nGd.js +1 -0
- package/dist/assets/{dictation-overlay-page-bAy1yMeW.js → dictation-overlay-page-eZr9h4_L.js} +1 -1
- package/dist/assets/{dist-B6AcKjpZ.js → dist-BvGW1nO1.js} +3 -3
- package/dist/assets/document-viewer-page-DCD6D35Y.js +1 -0
- package/dist/assets/{earn-credits-modal-BVhrVwKQ.js → earn-credits-modal-D5nQbl1C.js} +1 -1
- package/dist/assets/{edge-DlVfkI9H.js → edge-CVIh04wb.js} +1 -1
- package/dist/assets/{elixir-mCf6M8tb.js → elixir-Dqy7dzG_.js} +1 -1
- package/dist/assets/{elm-DPTyDbLu.js → elm-nYflOCQ8.js} +1 -1
- package/dist/assets/{emails-page-xMdxei56.js → emails-page-fFKHuRMl.js} +1 -1
- package/dist/assets/{environment-store-D3R6E-cP.js → environment-store-CaBEWd5a.js} +1 -1
- package/dist/assets/{erb-BlX-xcHl.js → erb-DJccs1bB.js} +1 -1
- package/dist/assets/{erlang-Cj1JhihN.js → erlang-DuN53qNm.js} +1 -1
- package/dist/assets/esm-CBVZvxqi.js +2 -0
- package/dist/assets/{esm-CGFPtrxC.js → esm-CH9a6h7m.js} +2 -2
- package/dist/assets/esm-CR02YHm8.js +2 -0
- package/dist/assets/esm-DX62frG7.js +2 -0
- package/dist/assets/esm-DjcSls3W.js +2 -0
- package/dist/assets/feature-flag-catalog-DkXBGepr.js +1 -0
- package/dist/assets/{file-markdown-B4DVzQ41.js → file-markdown-B6E0SH6L.js} +1 -1
- package/dist/assets/{fortran-fixed-form-BKtKNVNP.js → fortran-fixed-form-9icBHBq3.js} +1 -1
- package/dist/assets/{fsharp-Dhl6NpTI.js → fsharp-BOZAVmLj.js} +1 -1
- package/dist/assets/funnel-events-noF3l1Pb.js +1 -0
- package/dist/assets/{gdresource-BTz8tZCA.js → gdresource-DISRt8KT.js} +1 -1
- package/dist/assets/general-page-DavhkSO3.js +1 -0
- package/dist/assets/{git-commit-C_M1k801.js → git-commit-BU9UoTm4.js} +1 -1
- package/dist/assets/{git-rebase-CXSPtkfN.js → git-rebase-vVOy3mTB.js} +1 -1
- package/dist/assets/{glimmer-js-B2xgRsll.js → glimmer-js-Pw1EEUm7.js} +1 -1
- package/dist/assets/{glimmer-ts-DIcqm5yo.js → glimmer-ts-CvDWpD5e.js} +1 -1
- package/dist/assets/{glsl-DyKrgSyG.js → glsl-BtkBnYBu.js} +1 -1
- package/dist/assets/{graphql-a4mBiNA3.js → graphql-DZzu0PrK.js} +1 -1
- package/dist/assets/{hack-BjJB6pbu.js → hack-SadmH8et.js} +1 -1
- package/dist/assets/{haml-C6SHhB8V.js → haml-l3U1DT5U.js} +1 -1
- package/dist/assets/{handlebars-nuOekuXw.js → handlebars-ctzdGXgq.js} +1 -1
- package/dist/assets/hatching-screen-CxYfev3T.js +1 -0
- package/dist/assets/home-page-route-CscFeAio.js +1 -0
- package/dist/assets/hosting-screen-M1RCcrdf.js +1 -0
- package/dist/assets/{html-BUyxiWQ4.js → html-Dd5B8fan.js} +1 -1
- package/dist/assets/{html-derivative-CYKK7ymt.js → html-derivative-CCXFxYbE.js} +1 -1
- package/dist/assets/{http-P8SsNhtr.js → http-DBwXl15x.js} +1 -1
- package/dist/assets/{hurl-1vxAPHmf.js → hurl-0gVug-3g.js} +1 -1
- package/dist/assets/{hxml-B9WKq81s.js → hxml-CaJIOwf5.js} +1 -1
- package/dist/assets/identity-page-route-ClCCaIOR.js +1 -0
- package/dist/assets/index-oaZGNNfo.js +132 -0
- package/dist/assets/index-onUnpoxG.css +2 -0
- package/dist/assets/inspect-page-_8HuPgFD.js +7 -0
- package/dist/assets/{install-BlwjvAKk.js → install-CcnQeVmv.js} +1 -1
- package/dist/assets/integrations-page-f8keejXp.js +1 -0
- package/dist/assets/{intelligence-layout-DRGbJocy.js → intelligence-layout-o3phohVv.js} +1 -1
- package/dist/assets/{jinja-DhFY_XkH.js → jinja-Canhve2A.js} +1 -1
- package/dist/assets/{jison-BhjuuOdR.js → jison-B5rVVAQu.js} +1 -1
- package/dist/assets/{julia-ByAUBAT5.js → julia-2TO_mpY_.js} +1 -1
- package/dist/assets/{just-zkAFICEj.js → just-BknQD0cT.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-page-DqPqhIaF.js → keyboard-shortcuts-page-Crx76oK3.js} +1 -1
- package/dist/assets/{latex-DuZHjUpy.js → latex-abJ8mYf0.js} +1 -1
- package/dist/assets/{lib-Crp4_kdQ.js → lib-DEocfHq3.js} +1 -1
- package/dist/assets/library-detail-page-BrEKVRHJ.js +1 -0
- package/dist/assets/library-page-D8Dsns_9.js +1 -0
- package/dist/assets/{liquid-DxOFkTPt.js → liquid-yi37HQs1.js} +1 -1
- package/dist/assets/login-flow-U0o2WqDN.js +1 -0
- package/dist/assets/{login-page-CaI9s3W4.js → login-page-DSNhHQUQ.js} +1 -1
- package/dist/assets/{logout-page-DMO7Ro8q.js → logout-page-VQ3YCRdU.js} +1 -1
- package/dist/assets/{logs-layout-XvmAJO6n.js → logs-layout-DIoBEjQ0.js} +1 -1
- package/dist/assets/{lua-BYQb2s-1.js → lua-CMQUVpjO.js} +1 -1
- package/dist/assets/{marko-BkbhKb_J.js → marko-CDF7eg-D.js} +1 -1
- package/dist/assets/{mdc-glIFnCmE.js → mdc-JQteq2uw.js} +1 -1
- package/dist/assets/memory-router-playground-page-Dl69bZUf.js +3 -0
- package/dist/assets/{mobile-sidebar-drawer-CBYUCY4b.js → mobile-sidebar-drawer-FiJ6gRkm.js} +1 -1
- package/dist/assets/{native-file-8OGPx_4d.js → native-file-BgUnMEoC.js} +2 -2
- package/dist/assets/{nextflow-AnrzjJgp.js → nextflow-BJJmqFvv.js} +1 -1
- package/dist/assets/{nginx-DKALHtfC.js → nginx-DwxClGMT.js} +1 -1
- package/dist/assets/{nim-CFLe2WyA.js → nim-C0sqqjPu.js} +1 -1
- package/dist/assets/{notifications-page-BWn1NfeD.js → notifications-page-DMhubeyp.js} +1 -1
- package/dist/assets/{oauth-complete-page-qd6rU5o-.js → oauth-complete-page-BqNWe8Jl.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-EU9BzQqV.js → oauth-popup-complete-page-C9wHspkK.js} +2 -2
- package/dist/assets/{onboarding-layout-BAx3atHc.js → onboarding-layout-Db2NcOMS.js} +1 -1
- package/dist/assets/{page-shell-C37pkmXT.js → page-shell-zKMPhfUL.js} +1 -1
- package/dist/assets/{password-reset-page-BlB5Kq3p.js → password-reset-page-DLtW703s.js} +1 -1
- package/dist/assets/{perl-zCbn83_D.js → perl-DSwFvfXs.js} +1 -1
- package/dist/assets/personal-page-shell-BbTuWjjQ.css +1 -0
- package/dist/assets/personal-page-shell-DAadq_uu.js +1 -0
- package/dist/assets/{php-CKHhqn1A.js → php-Cj8mNeoR.js} +1 -1
- package/dist/assets/{platform-loopback-page-ZNZz8YUX.js → platform-loopback-page-wmCJeda4.js} +1 -1
- package/dist/assets/plugin-detail-page-4bHKyaLp.js +1 -0
- package/dist/assets/{plugins-page-D-kijwJP.js → plugins-page-Cu0eOdMj.js} +1 -1
- package/dist/assets/prechat-CgsBp7yT.js +1 -0
- package/dist/assets/prechat-context-tm8zl7fI.js +1 -0
- package/dist/assets/prechat-route-Y_C_saKJ.js +2 -0
- package/dist/assets/prefs-BGSy4lB7.js +1 -0
- package/dist/assets/privacy-page-fanoHNy6.js +1 -0
- package/dist/assets/privacy-screen-DEHuyPij.js +1 -0
- package/dist/assets/{provider-callback-page-BuPFhW7i.js → provider-callback-page-B4nE1x9D.js} +1 -1
- package/dist/assets/{provider-key-Clqsm-h7.js → provider-key-D0IqMzJA.js} +1 -1
- package/dist/assets/provider-signup-page-CI0TnGv0.js +1 -0
- package/dist/assets/{use-reduced-motion-BWKBBkXa.js → proxy-ClOyEtTf.js} +1 -1
- package/dist/assets/{pug-BhfTmz0-.js → pug-BArF8fzk.js} +1 -1
- package/dist/assets/{qml-Bs1Y1So0.js → qml-C_YXTHD1.js} +1 -1
- package/dist/assets/query-tags-61LOU8HP.js +1 -0
- package/dist/assets/{quick-input-page-BbeRxFn9.js → quick-input-page-DpCAkCOI.js} +1 -1
- package/dist/assets/{razor-Ct0kUJrd.js → razor-BFk4qGjQ.js} +1 -1
- package/dist/assets/react-query.gen-Bngm3HTF.js +1 -0
- package/dist/assets/resolved-assistants-store-BTvVAnMH.js +1 -0
- package/dist/assets/review-terms-screen-DwZ9OJXm.js +1 -0
- package/dist/assets/routes-DLEaIDYY.js +1 -0
- package/dist/assets/{rst-Dxa8WDhh.js → rst-LgzaaBfV.js} +1 -1
- package/dist/assets/{ruby-BRWWI2iQ.js → ruby-iZGOhgZz.js} +1 -1
- package/dist/assets/{sas-B5eXeHEb.js → sas-Clj1j_FY.js} +1 -1
- package/dist/assets/schedules-BO1LxnA1.js +1 -0
- package/dist/assets/schedules-page-DeE6sOLc.js +1 -0
- package/dist/assets/{scss-BEflJE0d.js → scss-D34_3vfx.js} +1 -1
- package/dist/assets/sdk.gen-_mmoaiKg.js +6 -0
- package/dist/assets/select-assistant-screen-I4ZDpBW-.js +1 -0
- package/dist/assets/settings-layout-ohEH6zP_.js +1 -0
- package/dist/assets/{shaderlab-kKm9STTX.js → shaderlab-DC9jWORb.js} +1 -1
- package/dist/assets/share-feedback-modal-StL1A-o3.js +1 -0
- package/dist/assets/{shellsession-BuRo3dGi.js → shellsession-CJbcoeRD.js} +1 -1
- package/dist/assets/sidebar-tree-BkbHuOxn.js +1 -0
- package/dist/assets/signup-page-Dz0dnK9H.js +1 -0
- package/dist/assets/skills-page-CR3xF6Yi.js +1 -0
- package/dist/assets/sounds-page-D6lgUqkC.js +1 -0
- package/dist/assets/{soy-B3ZFKTzz.js → soy-Dg94Lp-_.js} +1 -1
- package/dist/assets/{sparql-Cs89AkUA.js → sparql-C5AyepDa.js} +1 -1
- package/dist/assets/{src-Bnn6algv.js → src-sv64XKrp.js} +4 -4
- package/dist/assets/{stat-square-BENJGRZr.js → stat-square-Cxkq400O.js} +1 -1
- package/dist/assets/{stata-i1o6Dh9O.js → stata-B3yOnoO8.js} +1 -1
- package/dist/assets/step-indicator-dots-BjpRBgrz.js +1 -0
- package/dist/assets/subagent-detail-panel-C0tyHtAX.js +4 -0
- package/dist/assets/{surrealql-DhEPyuCf.js → surrealql-Bpzl6OY0.js} +1 -1
- package/dist/assets/{svelte-DieTxaZO.js → svelte-ZSlVek5f.js} +1 -1
- package/dist/assets/{system-events-page-D9gAK-2s.js → system-events-page-CTjW7nWa.js} +1 -1
- package/dist/assets/{system-events-redirect-page-De2HLo0x.js → system-events-redirect-page-CYrJJd3X.js} +1 -1
- package/dist/assets/{templ-CtNv6NrW.js → templ-B4hJ4sJ7.js} +1 -1
- package/dist/assets/{tex-CayPFrNI.js → tex-DmBxVkjD.js} +1 -1
- package/dist/assets/{tiptap-document-editor-Cl8KJbb0.js → tiptap-document-editor-TUHjCI_D.js} +2 -2
- package/dist/assets/{tool-detail-panel-DP9ZUGgW.js → tool-detail-panel-D0LUcQC6.js} +1 -1
- package/dist/assets/trace-page-CRXtX0CR.js +1 -0
- package/dist/assets/{ts-tags-CM0eF5i5.js → ts-tags-CmFRQ9oQ.js} +1 -1
- package/dist/assets/{twig-CC2YBG6I.js → twig-mvgYjbHg.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-BXZOicV3.js → upgrade-cancel-page-pfuuLi8h.js} +1 -1
- package/dist/assets/{upgrade-success-page-CeM_gFIj.js → upgrade-success-page-COuA5yPZ.js} +1 -1
- package/dist/assets/usage-page-COgJKXsS.js +1 -0
- package/dist/assets/{use-active-assistant-id-B2Zd0B4I.js → use-active-assistant-id-CfZSuINA.js} +1 -1
- package/dist/assets/{use-bus-subscription-owH26HHM.js → use-bus-subscription-BocLBf2F.js} +1 -1
- package/dist/assets/use-is-org-ready-DPp6pCo8.js +1 -0
- package/dist/assets/{use-oauth-complete-deep-link-listener-DnDBZsXG.js → use-oauth-complete-deep-link-listener-DBxSPjLB.js} +1 -1
- package/dist/assets/use-oauth-connect-BeGxszMn.js +1 -0
- package/dist/assets/use-onboarding-login-lPYBoUfb.js +1 -0
- package/dist/assets/{use-plugin-drift-uJRE3xTx.js → use-plugin-drift-BoEYumYf.js} +1 -1
- package/dist/assets/{utils-DuENVQMg.js → utils-D2f3K1x1.js} +1 -1
- package/dist/assets/{viewer-store-o5byTOZU.js → viewer-store-ifiJtqiX.js} +1 -1
- package/dist/assets/{voice-page-sB7S0uAp.js → voice-page-Rn8jH5ex.js} +1 -1
- package/dist/assets/{vue-DRM7W0BC.js → vue-DaVbUAHH.js} +1 -1
- package/dist/assets/{vue-html-D6VuH0jC.js → vue-html-Ce9DHkUT.js} +1 -1
- package/dist/assets/{vue-vine-DNDfS6Ra.js → vue-vine-DAcjhuzR.js} +1 -1
- package/dist/assets/{weather-forecast-display-C5PORkTk.js → weather-forecast-display-I8mYB-0J.js} +1 -1
- package/dist/assets/{web-CzMZROXy.js → web-3Jx2GCZP.js} +1 -1
- package/dist/assets/{web-Cv1IYg78.js → web-B5CCVAQ6.js} +1 -1
- package/dist/assets/{web-CoEwMDRP.js → web-BcFgV8AZ.js} +1 -1
- package/dist/assets/{web-DbJxHgdx.js → web-C160TMxq.js} +1 -1
- package/dist/assets/{web-ChR2hCDK.js → web-CSDr_VIv.js} +1 -1
- package/dist/assets/{web-BVnJTNhv.js → web-RFkAP1z6.js} +1 -1
- package/dist/assets/{web-D9Cl8jMZ.js → web-w5W9s0Q_.js} +1 -1
- package/dist/assets/welcome-screen-DJvFAJ8w.js +1 -0
- package/dist/assets/workspace-page-DWfV8fmP.js +1 -0
- package/dist/assets/{xml-CA-2sBid.js → xml-CQxRsNOc.js} +1 -1
- package/dist/assets/{xsl-C8ltDdUp.js → xsl-CJemc4zo.js} +1 -1
- package/dist/fonts/InstrumentSerif-Regular.ttf +0 -0
- package/dist/index.html +56 -53
- package/dist/vellum-scene-cut.mp4 +0 -0
- package/package.json +1 -1
- package/dist/assets/advanced-page-BCnHb6oY.js +0 -1
- package/dist/assets/ai-page-DcBsmsTv.js +0 -1
- package/dist/assets/ai-utils-NK8I8SN2.js +0 -1
- package/dist/assets/api-DiLLlhgt.js +0 -39
- package/dist/assets/assistant-feature-flag-store-BPZq6n_3.js +0 -1
- package/dist/assets/assistant-identity-store-CRzGEuvZ.js +0 -1
- package/dist/assets/auth-store-C4gcHOWH.js +0 -6
- package/dist/assets/avatar-bundled-components-D1Q_IPFc.js +0 -1
- package/dist/assets/billing-page-C_pAWHkv.js +0 -3
- package/dist/assets/command-palette-CmihDJi0.js +0 -1
- package/dist/assets/command-palette-window-page-CHxcr6A6.js +0 -1
- package/dist/assets/contacts-gateway-D83Hu-Gg.js +0 -1
- package/dist/assets/contacts-page-route-ALOLGdXW.js +0 -1
- package/dist/assets/conversation-store-CvL-Qvj6.js +0 -1
- package/dist/assets/debug-page-DwWy2v03.js +0 -2
- package/dist/assets/developer-page-CNY0EBWx.js +0 -1
- package/dist/assets/devices-page-DyJCd4s2.js +0 -1
- package/dist/assets/document-viewer-page-B1YXPDXM.js +0 -1
- package/dist/assets/esm-38m28JjZ.js +0 -2
- package/dist/assets/esm-CT1fv4R_.js +0 -2
- package/dist/assets/esm-DR_dW3uL.js +0 -2
- package/dist/assets/esm-DVParjTo.js +0 -2
- package/dist/assets/feature-flag-catalog-CynbEP8W.js +0 -1
- package/dist/assets/flag-query-freshness-DGEhbjqA.js +0 -1
- package/dist/assets/general-page-CzxX_ytO.js +0 -1
- package/dist/assets/hatching-screen-BvaGi8x7.js +0 -1
- package/dist/assets/home-page-route-Bxgs4dcd.js +0 -1
- package/dist/assets/hosting-screen-Jp346VHw.js +0 -1
- package/dist/assets/identity-page-route-DHz3LOu0.js +0 -1
- package/dist/assets/index-87hTkD_v.js +0 -123
- package/dist/assets/index-DvCzrIDK.css +0 -2
- package/dist/assets/inspect-page-B9wa3RHM.js +0 -3
- package/dist/assets/integrations-page-2soaHaLH.js +0 -1
- package/dist/assets/library-detail-page-DLekVuPD.js +0 -1
- package/dist/assets/library-page-DFBGqpq4.js +0 -1
- package/dist/assets/login-flow-DmfVD3r_.js +0 -1
- package/dist/assets/memory-router-playground-page-DbSrBXJN.js +0 -3
- package/dist/assets/plugin-detail-page-D7tzIKVl.js +0 -1
- package/dist/assets/pre-chat-flow-BSXfD6S0.js +0 -1
- package/dist/assets/privacy-page-BiyTmDHN.js +0 -1
- package/dist/assets/privacy-screen-mhJ5CnV4.js +0 -1
- package/dist/assets/provider-signup-page-DhOuxnxY.js +0 -1
- package/dist/assets/query-tags-DPKpdc1_.js +0 -1
- package/dist/assets/react-query.gen-B_oGDSP8.js +0 -1
- package/dist/assets/resolved-assistants-store-B5ATyCT9.js +0 -1
- package/dist/assets/review-terms-screen-BgLGEzR9.js +0 -1
- package/dist/assets/routes-VcLWbBmh.js +0 -1
- package/dist/assets/schedules-Cxb9otxN.js +0 -1
- package/dist/assets/schedules-page-SwCpd9Y6.js +0 -1
- package/dist/assets/sdk.gen-DgqwY_WN.js +0 -6
- package/dist/assets/select-assistant-screen-CIVt4gg2.js +0 -1
- package/dist/assets/settings-layout-L6c6Zaje.js +0 -1
- package/dist/assets/share-feedback-modal-BlMDGejV.js +0 -1
- package/dist/assets/sidebar-tree-KVdXcht-.js +0 -1
- package/dist/assets/signup-page-FdYQKUli.js +0 -1
- package/dist/assets/skills-page-Cs1mTTpA.js +0 -1
- package/dist/assets/sounds-page-BtPyTbtD.js +0 -1
- package/dist/assets/step-indicator-dots-C_x0ZHGS.js +0 -1
- package/dist/assets/subagent-detail-panel-C6FfdUDE.js +0 -4
- package/dist/assets/trace-page-ClDbcKcm.js +0 -1
- package/dist/assets/usage-page-DHofU58j.js +0 -1
- package/dist/assets/use-daemon-config-BLCgqB8a.js +0 -1
- package/dist/assets/use-is-org-ready-BgB6QXom.js +0 -1
- package/dist/assets/use-onboarding-login-CYb9P9G7.js +0 -1
- package/dist/assets/welcome-screen-Rm6Zm5dD.js +0 -1
- package/dist/assets/workspace-page-zV0pbQfl.js +0 -1
- /package/dist/assets/{abap-CY8Zin8K.js → abap-CaPiZKEb.js} +0 -0
- /package/dist/assets/{about-page-DbG6sNLa.js → about-page-hCYR7CJX.js} +0 -0
- /package/dist/assets/{actionscript-3-B7ByHC0D.js → actionscript-3-9f7aS4TZ.js} +0 -0
- /package/dist/assets/{ada-BoEMwvlI.js → ada-4yHOOMiT.js} +0 -0
- /package/dist/assets/{andromeeda-D0H2SWSy.js → andromeeda-C3WdOOCH.js} +0 -0
- /package/dist/assets/{apache-CIM1qcJS.js → apache-CPM0cj0T.js} +0 -0
- /package/dist/assets/{apex-CA8McEJM.js → apex-C0LaVc3j.js} +0 -0
- /package/dist/assets/{applescript-BBCXWTjO.js → applescript-DNhvqh7I.js} +0 -0
- /package/dist/assets/{ara-CZIK1OW_.js → ara-DyApiVjC.js} +0 -0
- /package/dist/assets/{asciidoc-DOBdSZlN.js → asciidoc-CI0CvCYl.js} +0 -0
- /package/dist/assets/{asm-D6wtLwUV.js → asm-CIOCvWgr.js} +0 -0
- /package/dist/assets/{aurora-x-Dpg_X55-.js → aurora-x-DpAzymzR.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-roGooP9D.js → avatar-svg-compositor-CbOtnShE.js} +0 -0
- /package/dist/assets/{awk-cF4uc9Tr.js → awk-BgJMTHpy.js} +0 -0
- /package/dist/assets/{ayu-dark-D107t6kb.js → ayu-dark-wQ2m5fkm.js} +0 -0
- /package/dist/assets/{ayu-light-AflGjwMk.js → ayu-light-Bju2szv_.js} +0 -0
- /package/dist/assets/{ayu-mirage-yYaE6Ia-.js → ayu-mirage-CPX3tJyD.js} +0 -0
- /package/dist/assets/{ballerina-Caeb9Tkf.js → ballerina-DZ8gwPfO.js} +0 -0
- /package/dist/assets/{bat-VG3Yc4At.js → bat-ConUK5xi.js} +0 -0
- /package/dist/assets/{beancount-DTfGCoFD.js → beancount-Bbeyb2T5.js} +0 -0
- /package/dist/assets/{berry-BQwHhG-_.js → berry-CtzcghyY.js} +0 -0
- /package/dist/assets/{bibtex-CbgB0fYh.js → bibtex-CCpuomTX.js} +0 -0
- /package/dist/assets/{bicep-WJ_WRbjz.js → bicep-DlPead29.js} +0 -0
- /package/dist/assets/{bird2-DsnFtphV.js → bird2-uWc5rtwr.js} +0 -0
- /package/dist/assets/{bug-DDEBp29t.js → bug-rSnph6U_.js} +0 -0
- /package/dist/assets/{c-B2fW2Byc.js → c-CHJcj5Ma.js} +0 -0
- /package/dist/assets/{c3-BPiOjWgr.js → c3-CLl73VOK.js} +0 -0
- /package/dist/assets/{cadence-unjWvnwy.js → cadence-xF1K-iSU.js} +0 -0
- /package/dist/assets/{calendar-CP_Q3Aw6.js → calendar-CwOLKT3p.js} +0 -0
- /package/dist/assets/{catppuccin-frappe-D45DGIzE.js → catppuccin-frappe-D4Ybq0RI.js} +0 -0
- /package/dist/assets/{catppuccin-latte-uAfkxVjc.js → catppuccin-latte-rCaUshJd.js} +0 -0
- /package/dist/assets/{catppuccin-macchiato-CJCVs1kR.js → catppuccin-macchiato-D_axEdBc.js} +0 -0
- /package/dist/assets/{catppuccin-mocha-BHlufBV_.js → catppuccin-mocha-BX5zXWHh.js} +0 -0
- /package/dist/assets/{chevron-left-IaM5LZKa.js → chevron-left-CHId86dZ.js} +0 -0
- /package/dist/assets/{chevron-right-C1TiR5qP.js → chevron-right-C0jZwqbo.js} +0 -0
- /package/dist/assets/{chevron-up-D0uBz2Uy.js → chevron-up-BuB8vDjx.js} +0 -0
- /package/dist/assets/{clarity-D8Qlwku3.js → clarity-COaxpfEI.js} +0 -0
- /package/dist/assets/{clojure-CGB65gqL.js → clojure-BGvmwQKV.js} +0 -0
- /package/dist/assets/{cloud-off-DxVWIkmM.js → cloud-off-Bla9953d.js} +0 -0
- /package/dist/assets/{cmake-D2NEO7t3.js → cmake-DP-0NCSq.js} +0 -0
- /package/dist/assets/{codeowners-FMhifesl.js → codeowners-BG5D3sy_.js} +0 -0
- /package/dist/assets/{codeql-Gv7Isotp.js → codeql-D5C77knI.js} +0 -0
- /package/dist/assets/{common-lisp-7Vo6a7wE.js → common-lisp-BOz1wX5B.js} +0 -0
- /package/dist/assets/{coq-DHqbbce5.js → coq-CFVA7IoG.js} +0 -0
- /package/dist/assets/{csharp-Ce6EyEPF.js → csharp-C1ELRx5T.js} +0 -0
- /package/dist/assets/{css-B0EeBnMy.js → css-DwsdHrhn.js} +0 -0
- /package/dist/assets/{csv-CQ8Vu5lW.js → csv-DXpUztcG.js} +0 -0
- /package/dist/assets/{cue-ouzDa-4a.js → cue-Brw-q-Zu.js} +0 -0
- /package/dist/assets/{cypher-CwWWFtHr.js → cypher-B2Ki4hW3.js} +0 -0
- /package/dist/assets/{d-x56SgoMC.js → d-CQ1IJwyt.js} +0 -0
- /package/dist/assets/{dark-plus-yFIu0BNK.js → dark-plus-BKHaBfFA.js} +0 -0
- /package/dist/assets/{dart-CUmahxVq.js → dart-CEBd3sGx.js} +0 -0
- /package/dist/assets/{dax-CEPPPFBG.js → dax-jOY-FdWr.js} +0 -0
- /package/dist/assets/{definitions-BZ8qrP6k.js → definitions-Dgo2s7RV.js} +0 -0
- /package/dist/assets/{desktop-XSt4bHQh.js → desktop-CjEaJ-cw.js} +0 -0
- /package/dist/assets/{diff-AFSumy3q.js → diff-BbBqlap8.js} +0 -0
- /package/dist/assets/{dist-hvfhQWUv.js → dist-CP-ms_vi.js} +0 -0
- /package/dist/assets/{docker-yQfkXy_o.js → docker-DbXy2TqW.js} +0 -0
- /package/dist/assets/{dollar-sign-CARQr5C3.js → dollar-sign-DAbP2oxA.js} +0 -0
- /package/dist/assets/{domain-field-PnLPKONf.js → domain-field-CAflx_3d.js} +0 -0
- /package/dist/assets/{dotenv-NhFoy-Vk.js → dotenv-BpZByhNf.js} +0 -0
- /package/dist/assets/{dracula-soft-DmZUCLn8.js → dracula-soft-Oz7eewVk.js} +0 -0
- /package/dist/assets/{dracula-DK3NOTwC.js → dracula-v0eWVlIM.js} +0 -0
- /package/dist/assets/{dream-maker-DSH_X8Jr.js → dream-maker-DeNX7zNi.js} +0 -0
- /package/dist/assets/{edit-chat-session-B-nFEoUA.js → edit-chat-session-DsiA9nmw.js} +0 -0
- /package/dist/assets/{effective-timezone-CIYaAgHc.js → effective-timezone-DOCb5CnU.js} +0 -0
- /package/dist/assets/{ellipsis-vertical-TLQiFl7T.js → ellipsis-vertical-7F3IBZeB.js} +0 -0
- /package/dist/assets/{emacs-lisp-Bn9n5KX1.js → emacs-lisp-DU4kyAgG.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-C_igdiHh.js → emoji-catalog-data-DDoaXbmN.js} +0 -0
- /package/dist/assets/{event-bus-DW5jUEkE.js → event-bus-DKlaDVAu.js} +0 -0
- /package/dist/assets/{everforest-dark-Di_p9e0Q.js → everforest-dark-BJ1saCeC.js} +0 -0
- /package/dist/assets/{everforest-light-B2JO6N4u.js → everforest-light-D6NKI6Sv.js} +0 -0
- /package/dist/assets/{external-link-Dj8dup-K.js → external-link-MjRS4j3f.js} +0 -0
- /package/dist/assets/{fennel-CtgJkNBH.js → fennel-C2xlqGec.js} +0 -0
- /package/dist/assets/{fish-CZ8RHQpr.js → fish-BVDeFBdE.js} +0 -0
- /package/dist/assets/{fluent-B21iQHSG.js → fluent-CGU4GUW3.js} +0 -0
- /package/dist/assets/{format-Bx7lme44.js → format-C1JsnfTf.js} +0 -0
- /package/dist/assets/{format-date-6MJxjyy6.js → format-date-Dmfidg1n.js} +0 -0
- /package/dist/assets/{format-file-size-DkWrZmJq.js → format-file-size-HfQP5weH.js} +0 -0
- /package/dist/assets/{fortran-free-form-9zYM9wAm.js → fortran-free-form-7X9M_ID5.js} +0 -0
- /package/dist/assets/{gdscript-B-WMulBq.js → gdscript-BuXM7-RI.js} +0 -0
- /package/dist/assets/{gdshader-DszUNeoS.js → gdshader-DasyaFyl.js} +0 -0
- /package/dist/assets/{genie-B-eXFDtx.js → genie-Btkn3RzC.js} +0 -0
- /package/dist/assets/{gherkin-B6bQeLuY.js → gherkin-Ngo3n9P0.js} +0 -0
- /package/dist/assets/{github-dark-CEEQZCSS.js → github-dark-CuUUQfBd.js} +0 -0
- /package/dist/assets/{github-dark-default-C5TBqxX6.js → github-dark-default-pDLD90kK.js} +0 -0
- /package/dist/assets/{github-dark-dimmed-msCXVslx.js → github-dark-dimmed-Cup003Ys.js} +0 -0
- /package/dist/assets/{github-dark-high-contrast-BCw-P5dS.js → github-dark-high-contrast-CkV63UF-.js} +0 -0
- /package/dist/assets/{github-light-D-xvH3kI.js → github-light-DSezQmYs.js} +0 -0
- /package/dist/assets/{github-light-default-sJET_qQD.js → github-light-default-Cnpo0hpR.js} +0 -0
- /package/dist/assets/{github-light-high-contrast-DHR5nGJM.js → github-light-high-contrast-s6DHlqig.js} +0 -0
- /package/dist/assets/{gleam-D66NiAyx.js → gleam-BzONWfS-.js} +0 -0
- /package/dist/assets/{globe-CMrMrZef.js → globe-C_ncZc9n.js} +0 -0
- /package/dist/assets/{gn-BVpHO1HP.js → gn-l9bM1Hiz.js} +0 -0
- /package/dist/assets/{gnuplot-BYZL1xzh.js → gnuplot-DEzl0VVr.js} +0 -0
- /package/dist/assets/{go-h7Iv1k7W.js → go-C_DHlu3t.js} +0 -0
- /package/dist/assets/{google-logo-D4cr9Wyw.js → google-logo-DaBqj3eF.js} +0 -0
- /package/dist/assets/{groovy-DeFK8_Q3.js → groovy-C9uD3SFv.js} +0 -0
- /package/dist/assets/{gruvbox-dark-hard-CW9hNx92.js → gruvbox-dark-hard-CVMJO8Jf.js} +0 -0
- /package/dist/assets/{gruvbox-dark-medium-B4GyrQVY.js → gruvbox-dark-medium-xeYOBUjV.js} +0 -0
- /package/dist/assets/{gruvbox-dark-soft-NOLUPmId.js → gruvbox-dark-soft-DYxdQxtH.js} +0 -0
- /package/dist/assets/{gruvbox-light-hard-QDTDvRrD.js → gruvbox-light-hard-DWOcrlDg.js} +0 -0
- /package/dist/assets/{gruvbox-light-medium-DKdlHjVb.js → gruvbox-light-medium-BThEa_v1.js} +0 -0
- /package/dist/assets/{gruvbox-light-soft-CAbmwlhA.js → gruvbox-light-soft-Bo4Aev4_.js} +0 -0
- /package/dist/assets/{hard-drive-06X__Bvy.js → hard-drive-BqWBtE21.js} +0 -0
- /package/dist/assets/{haskell-CfYoW7YD.js → haskell-CeGe0QlU.js} +0 -0
- /package/dist/assets/{haxe-DQG7dKbt.js → haxe-JrGVhIOw.js} +0 -0
- /package/dist/assets/{hcl-tjQsnTjs.js → hcl-BumIy8G6.js} +0 -0
- /package/dist/assets/{hjson-DMio4ahB.js → hjson-GwRtt3l0.js} +0 -0
- /package/dist/assets/{hlsl-DWXXMr82.js → hlsl-j0_YK9cV.js} +0 -0
- /package/dist/assets/{horizon-C1jOqUlt.js → horizon-Bm4x4N-s.js} +0 -0
- /package/dist/assets/{horizon-bright-ufeRFO5k.js → horizon-bright-WEv9zAZV.js} +0 -0
- /package/dist/assets/{houston-DNlHtHgE.js → houston-CRfKzTku.js} +0 -0
- /package/dist/assets/{hy-BX4hxudg.js → hy-Q-zX3O1r.js} +0 -0
- /package/dist/assets/{imba-BZBjJcw4.js → imba-BOAzCKey.js} +0 -0
- /package/dist/assets/{impersonate-version-flag-_N7rtwW7.js → impersonate-version-flag-BmrRmKMF.js} +0 -0
- /package/dist/assets/{ini-D6ubRY1t.js → ini-TSw_QXiN.js} +0 -0
- /package/dist/assets/{java-BP7p7F4C.js → java-5fCChCGa.js} +0 -0
- /package/dist/assets/{javascript-SV1fF6St.js → javascript-CkAoRsLE.js} +0 -0
- /package/dist/assets/{json-bOQEaYNG.js → json-BQenkRFw.js} +0 -0
- /package/dist/assets/{json5-Ccve47te.js → json5-C1DziNOO.js} +0 -0
- /package/dist/assets/{jsonc-QLUl-TqR.js → jsonc-BWqJn210.js} +0 -0
- /package/dist/assets/{jsonl-nugdkLQP.js → jsonl-CnfxNOyG.js} +0 -0
- /package/dist/assets/{jsonnet-Ta82rzmL.js → jsonnet-D9xlBv4f.js} +0 -0
- /package/dist/assets/{jssm-SZoj_PEt.js → jssm-B9jps9pA.js} +0 -0
- /package/dist/assets/{jsx-P0SJzvvS.js → jsx-BS97kVLW.js} +0 -0
- /package/dist/assets/{kanagawa-dragon-5jJeQkP2.js → kanagawa-dragon-DUlhyJ0E.js} +0 -0
- /package/dist/assets/{kanagawa-lotus-DGj57vSD.js → kanagawa-lotus-gTcTTzh3.js} +0 -0
- /package/dist/assets/{kanagawa-wave-CDn19V0e.js → kanagawa-wave-EuaH8P33.js} +0 -0
- /package/dist/assets/{kdl-aknTFLlI.js → kdl-DNlYoqW8.js} +0 -0
- /package/dist/assets/{kotlin-Bxd9jJfK.js → kotlin-7PXJoAhp.js} +0 -0
- /package/dist/assets/{kusto-BMdRxUKR.js → kusto-CJiF9ax-.js} +0 -0
- /package/dist/assets/{laserwave-C971s4uV.js → laserwave-il55mjpB.js} +0 -0
- /package/dist/assets/{lean-CjHkzfg2.js → lean-3M6aRxg3.js} +0 -0
- /package/dist/assets/{less-BaR8unTa.js → less-D5Rlbvf_.js} +0 -0
- /package/dist/assets/{lib-Ext6SdRY.js → lib-Bdjm3idq.js} +0 -0
- /package/dist/assets/{light-plus-sTKrQBFd.js → light-plus-BTzz5Hgq.js} +0 -0
- /package/dist/assets/{link-2-C9rNe5kO.js → link-2-BYCm3Tvx.js} +0 -0
- /package/dist/assets/{llm-dimension-v8X-KTEz.js → llm-dimension-TxvNnyPw.js} +0 -0
- /package/dist/assets/{llvm-DvHASPzs.js → llvm-CXCsCAs-.js} +0 -0
- /package/dist/assets/{loader-circle-C563RcPZ.js → loader-circle-DsetC8iQ.js} +0 -0
- /package/dist/assets/{log-CKbSJry5.js → log-LjBDImao.js} +0 -0
- /package/dist/assets/{logo-UdeAgfJO.js → logo-B9kvyOSx.js} +0 -0
- /package/dist/assets/{luau-COtYKK7o.js → luau-BCCe8mhJ.js} +0 -0
- /package/dist/assets/{make-B0AeLuvl.js → make-CTQ3SIlm.js} +0 -0
- /package/dist/assets/{markdown-wy4a1IwS.js → markdown-Be_dB6uf.js} +0 -0
- /package/dist/assets/{material-theme-C--bvqZv.js → material-theme-Bgs86emT.js} +0 -0
- /package/dist/assets/{material-theme-darker-CvMx2B9A.js → material-theme-darker-Cr6Tg8Th.js} +0 -0
- /package/dist/assets/{material-theme-lighter-DTyDWhyU.js → material-theme-lighter-Db66E-u_.js} +0 -0
- /package/dist/assets/{material-theme-ocean-DLpPq9Jn.js → material-theme-ocean-H7sIGIlm.js} +0 -0
- /package/dist/assets/{material-theme-palenight-DkJzzc1g.js → material-theme-palenight-C0snSCkC.js} +0 -0
- /package/dist/assets/{matlab-oLhMLK5j.js → matlab-CHuiL74J.js} +0 -0
- /package/dist/assets/{mdx-CVANX-0c.js → mdx-SUat64QA.js} +0 -0
- /package/dist/assets/{mermaid-Brk5Jg2I.js → mermaid-COgg6G7V.js} +0 -0
- /package/dist/assets/{min-dark-CylAbfhd.js → min-dark-DjKFIhRI.js} +0 -0
- /package/dist/assets/{min-light-BtdJcn9q.js → min-light-Dqx6qGEo.js} +0 -0
- /package/dist/assets/{minimize-2-BsiUUDFc.js → minimize-2-CL0NyAQI.js} +0 -0
- /package/dist/assets/{mipsasm-BWfeQ4gC.js → mipsasm-0Z2GY6UE.js} +0 -0
- /package/dist/assets/{misc-Dml34IDG.js → misc-Cf26uuve.js} +0 -0
- /package/dist/assets/{mojo-DPMyaAIS.js → mojo-Dl_sq-nV.js} +0 -0
- /package/dist/assets/{monokai-BhxmuQrl.js → monokai-B6fF9uIE.js} +0 -0
- /package/dist/assets/{moon-MxKfIzam.js → moon-BdD-2Zqk.js} +0 -0
- /package/dist/assets/{moonbit-DMMeYUyd.js → moonbit-CStixfw1.js} +0 -0
- /package/dist/assets/{move-z5L86rJ4.js → move-BHgOiR8x.js} +0 -0
- /package/dist/assets/{narrat-CRs6TZNj.js → narrat--W9dTvhM.js} +0 -0
- /package/dist/assets/{nextflow-groovy-BxIp5hgZ.js → nextflow-groovy-96itNcxS.js} +0 -0
- /package/dist/assets/{night-owl-BMskgscr.js → night-owl-CZ4D76tC.js} +0 -0
- /package/dist/assets/{night-owl-light-CHXwB2Sc.js → night-owl-light-BNYM_4Lx.js} +0 -0
- /package/dist/assets/{nix-aTB9yALV.js → nix-2PsAcXMd.js} +0 -0
- /package/dist/assets/{nord-BBKFyEMV.js → nord-yR6oVAT1.js} +0 -0
- /package/dist/assets/{nushell-BmuXnDfU.js → nushell-UtU8VIRC.js} +0 -0
- /package/dist/assets/{objective-c-UeWHhdrh.js → objective-c-C4VsGcbD.js} +0 -0
- /package/dist/assets/{objective-cpp-cbvqzy7j.js → objective-cpp-DGhYxuo9.js} +0 -0
- /package/dist/assets/{ocaml-GcD527Dg.js → ocaml-DaIwAH3G.js} +0 -0
- /package/dist/assets/{odin-C5aJc0mA.js → odin-Dy4Vjokp.js} +0 -0
- /package/dist/assets/{one-dark-pro-BaEQNY2k.js → one-dark-pro-DnGBqiXd.js} +0 -0
- /package/dist/assets/{one-light-BP_n2RHm.js → one-light-dDB_CViZ.js} +0 -0
- /package/dist/assets/{openscad-DpGIkPRK.js → openscad-CVbK2A-Q.js} +0 -0
- /package/dist/assets/{pascal-CiaSGzo2.js → pascal-Jm9-EBrU.js} +0 -0
- /package/dist/assets/{pdf-CbhoDxfc.js → pdf-DP8hDViK.js} +0 -0
- /package/dist/assets/{pencil-72cxzUyZ.js → pencil-CHKcVSER.js} +0 -0
- /package/dist/assets/{pkl-D6MSpF2J.js → pkl-By6oRcBQ.js} +0 -0
- /package/dist/assets/{plastic-DhXnfEmf.js → plastic-DMFcYb_8.js} +0 -0
- /package/dist/assets/{plsql-BqEj5_74.js → plsql-CScEne2j.js} +0 -0
- /package/dist/assets/{po-Cl_msDdn.js → po-Datzeci9.js} +0 -0
- /package/dist/assets/{poimandres-BEFSEpPz.js → poimandres-DFEVGrAK.js} +0 -0
- /package/dist/assets/{polar-D_cviAsL.js → polar-DdOZqgpF.js} +0 -0
- /package/dist/assets/{postcss-BgeBsw25.js → postcss-CfCeDK-C.js} +0 -0
- /package/dist/assets/{powerquery-BTjf3_k8.js → powerquery-BBdkwKsp.js} +0 -0
- /package/dist/assets/{powershell-Csit5HnF.js → powershell-DnTNT5PR.js} +0 -0
- /package/dist/assets/{prisma-BSmBflnP.js → prisma-ChxW3a_R.js} +0 -0
- /package/dist/assets/{prolog-jco2L3CP.js → prolog-CHEL9ij6.js} +0 -0
- /package/dist/assets/{proto-D7-AVFWy.js → proto-fn5s4QHE.js} +0 -0
- /package/dist/assets/{public-asset-BX5-xa7f.js → public-asset-ClErjc-s.js} +0 -0
- /package/dist/assets/{puppet-B14GDV0P.js → puppet-jbIqTNcW.js} +0 -0
- /package/dist/assets/{purescript-CzJW-zOu.js → purescript-CIHhv20O.js} +0 -0
- /package/dist/assets/{python-Bc42yRit.js → python-DgzKqy_u.js} +0 -0
- /package/dist/assets/{qmldir-DyxMFJcp.js → qmldir-B-8V-6TS.js} +0 -0
- /package/dist/assets/{qss-D7IUbOVl.js → qss-C4lz0kA0.js} +0 -0
- /package/dist/assets/{r-K-S1G69B.js → r-DXHDvTGs.js} +0 -0
- /package/dist/assets/{racket-V0ZSSRi_.js → racket-DSilFqIM.js} +0 -0
- /package/dist/assets/{raku-7XQFZkhP.js → raku-DrEcBmDE.js} +0 -0
- /package/dist/assets/{red-CavFwEik.js → red-CCrVU6PM.js} +0 -0
- /package/dist/assets/{reg-D9QV2voz.js → reg-DJleCzCf.js} +0 -0
- /package/dist/assets/{regexp-DECww1nI.js → regexp-By1GxU5-.js} +0 -0
- /package/dist/assets/{rel-L-RM8GHl.js → rel-DhfyITSQ.js} +0 -0
- /package/dist/assets/{resize-errors-C4dfcP9G.js → resize-errors-B1TYxfYf.js} +0 -0
- /package/dist/assets/{riscv-BN2RxIKi.js → riscv-DeqSexZa.js} +0 -0
- /package/dist/assets/{ron-DAA6ReV6.js → ron-BOAIGMkH.js} +0 -0
- /package/dist/assets/{rose-pine-QxumxGCc.js → rose-pine-BwdV4YbZ.js} +0 -0
- /package/dist/assets/{rose-pine-dawn-FciVUovr.js → rose-pine-dawn-Dl80G9jX.js} +0 -0
- /package/dist/assets/{rose-pine-moon-DCXXFmgs.js → rose-pine-moon-D0r5DfPb.js} +0 -0
- /package/dist/assets/{rosmsg-BwasqpuS.js → rosmsg-C8_f3XEl.js} +0 -0
- /package/dist/assets/{rust-BNZ8qdKF.js → rust-DGypgLfe.js} +0 -0
- /package/dist/assets/{sass-BgEKoTER.js → sass-CGhou6cC.js} +0 -0
- /package/dist/assets/{save-DfZ7IoMI.js → save-Dw8RakKn.js} +0 -0
- /package/dist/assets/{scala-Dv51hyJt.js → scala-xbqKiira.js} +0 -0
- /package/dist/assets/{scheme-CWMErUZF.js → scheme-D_yUw6Rz.js} +0 -0
- /package/dist/assets/{sdbl-CzbQ0ijF.js → sdbl-CWzLhpEX.js} +0 -0
- /package/dist/assets/{semver-CRB3SerZ.js → semver-BljOCwsH.js} +0 -0
- /package/dist/assets/{shellscript-Bz6bwoxX.js → shellscript-Dcg4u7YL.js} +0 -0
- /package/dist/assets/{slack-dark-Drg-dVHz.js → slack-dark-BvMnHmaq.js} +0 -0
- /package/dist/assets/{slack-ochin-CI5f4vd5.js → slack-ochin-C8qR-2WJ.js} +0 -0
- /package/dist/assets/{smalltalk-BNiVHSxP.js → smalltalk-BqtoNQVl.js} +0 -0
- /package/dist/assets/{snazzy-light-BzsWPt62.js → snazzy-light-CBl1TBR3.js} +0 -0
- /package/dist/assets/{solarized-dark-CFLOLUxu.js → solarized-dark-B9gmQ_58.js} +0 -0
- /package/dist/assets/{solarized-light-D9aIONLy.js → solarized-light-DzFVLeBJ.js} +0 -0
- /package/dist/assets/{solidity-CbEbeFh5.js → solidity-Bwd8SGTY.js} +0 -0
- /package/dist/assets/{splunk-K3JpND27.js → splunk-D6o3K0du.js} +0 -0
- /package/dist/assets/{sql-BPjCcgrf.js → sql-CoNrz1Mw.js} +0 -0
- /package/dist/assets/{ssh-config-CfBtM-XA.js → ssh-config-Txt6Iflv.js} +0 -0
- /package/dist/assets/{stylus-CaFG1PTj.js → stylus-BA7t0Q8Y.js} +0 -0
- /package/dist/assets/{swift-XtROuZIV.js → swift-BmiBCQF0.js} +0 -0
- /package/dist/assets/{synthwave-84-DlC-uCn1.js → synthwave-84-B6grVluI.js} +0 -0
- /package/dist/assets/{system-verilog-BE695kVJ.js → system-verilog-DJ_VQp1q.js} +0 -0
- /package/dist/assets/{systemd-DyOGsoK1.js → systemd-CEtAZ4SY.js} +0 -0
- /package/dist/assets/{talonscript-D26B5VV7.js → talonscript-HiSBDZ95.js} +0 -0
- /package/dist/assets/{target-yNZHTIf1.js → target-B4WucRdE.js} +0 -0
- /package/dist/assets/{tasl-ClhvyWtR.js → tasl-VTq9aZ1f.js} +0 -0
- /package/dist/assets/{tcl-Doovj4yN.js → tcl-BgJraqdP.js} +0 -0
- /package/dist/assets/{terraform-xFIvzxOz.js → terraform-DnL8HYsZ.js} +0 -0
- /package/dist/assets/{tokyo-night-MbsViiwy.js → tokyo-night-D5fJy5Mt.js} +0 -0
- /package/dist/assets/{toml-LfVckRwW.js → toml-CAnrKiV1.js} +0 -0
- /package/dist/assets/{tsv-Bc-kxi-q.js → tsv-DaGJo3J6.js} +0 -0
- /package/dist/assets/{tsx-BW6QdCml.js → tsx-CueiTqDb.js} +0 -0
- /package/dist/assets/{turtle-CYWedSim.js → turtle-EJxQmSBU.js} +0 -0
- /package/dist/assets/{typescript-DgnySJEv.js → typescript-BpbiUCBK.js} +0 -0
- /package/dist/assets/{typespec-CsLCf6mz.js → typespec-Bjfttm8X.js} +0 -0
- /package/dist/assets/{typst-CO7_PpMl.js → typst-CrVRXPy2.js} +0 -0
- /package/dist/assets/{usage-window-DIaL-FoL.js → usage-window-CJWiX6yx.js} +0 -0
- /package/dist/assets/{use-is-mobile-CgLpEUW2.js → use-is-mobile-C5MpTbZg.js} +0 -0
- /package/dist/assets/{v-6fNi2pCl.js → v-D7yYpRiT.js} +0 -0
- /package/dist/assets/{vala-QS2EnUo4.js → vala-B591Q0gQ.js} +0 -0
- /package/dist/assets/{vb-D1ZMX60o.js → vb-lssap2Sw.js} +0 -0
- /package/dist/assets/{verilog-CauOUpAp.js → verilog-XXsCz1Tu.js} +0 -0
- /package/dist/assets/{vesper-jpz4zf7B.js → vesper-ojumsuiZ.js} +0 -0
- /package/dist/assets/{vhdl-DcOaAAtT.js → vhdl-C1NKznL2.js} +0 -0
- /package/dist/assets/{viml-Baa9Dm0M.js → viml-BKDeSBeG.js} +0 -0
- /package/dist/assets/{vitesse-black-Cjj29r1g.js → vitesse-black-B3m-KE0A.js} +0 -0
- /package/dist/assets/{vitesse-dark-1xb7rwM1.js → vitesse-dark-Cv438nUP.js} +0 -0
- /package/dist/assets/{vitesse-light-C21aOK6l.js → vitesse-light-firIN-lG.js} +0 -0
- /package/dist/assets/{vyper-LcHBNuJA.js → vyper-BDnPAo2O.js} +0 -0
- /package/dist/assets/{wand-sparkles-C8AciJgl.js → wand-sparkles-yOk7OJND.js} +0 -0
- /package/dist/assets/{wasm-HmdyAy9e.js → wasm-BuOKM3_D.js} +0 -0
- /package/dist/assets/{wasm-BdAOORtL.js → wasm-cdPwiedA.js} +0 -0
- /package/dist/assets/{wenyan-BTwgIcBK.js → wenyan-C27SmK4T.js} +0 -0
- /package/dist/assets/{wgsl-QBo8ZPz3.js → wgsl-CEAO853F.js} +0 -0
- /package/dist/assets/{wikitext-C7kTr1ax.js → wikitext-HUCEOBK7.js} +0 -0
- /package/dist/assets/{wit-C9fWmygc.js → wit-BX0ML86z.js} +0 -0
- /package/dist/assets/{wolfram-BMsZJ1wu.js → wolfram-Ca5OZ2_n.js} +0 -0
- /package/dist/assets/{x-D1JFrRas.js → x-Df0EF2EP.js} +0 -0
- /package/dist/assets/{xterm-BZfoV8Av.js → xterm-DUxwTDb1.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-BKbx0MJc.js → xterm-addon-fit-Bt8E-Wu1.js} +0 -0
- /package/dist/assets/{yaml-BFy7ItH6.js → yaml-Cr1MwZAc.js} +0 -0
- /package/dist/assets/{zenscript-C36i9le9.js → zenscript-Cqfpwa3C.js} +0 -0
- /package/dist/assets/{zig-ISb7VpSx.js → zig-CfIxseGd.js} +0 -0
- /package/dist/assets/{zwitch-DnM7yAkZ.js → zwitch-DH3PPARv.js} +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/native-file-BgUnMEoC.js","assets/chunk-jRWAZmH_.js","assets/preload-helper-BewR0kVT.js","assets/dist-CP-ms_vi.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as e,t}from"./chunk-jRWAZmH_.js";import{t as n}from"./capture-error-Dze4ISSQ.js";import{t as r}from"./react-DJZBPgpf.js";import{t as i}from"./preload-helper-BewR0kVT.js";import{d as a,h as o,r as s}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as c}from"./QueryClientProvider-DKhXIxGb.js";import{t as l}from"./useQuery-B45lW1Kk.js";import{t as u}from"./useMutation-Lj4VunQV.js";import{t as d}from"./jsx-runtime-CVSDxk6A.js";import{t as f}from"./button-CHADMNBN.js";import{t as p}from"./typography-Czgs_2w_.js";import{t as m}from"./card-CL5iEMJO.js";import{t as h}from"./dropdown-CocFV5yi.js";import{t as g}from"./confirm-dialog-M0xuyGF3.js";import{t as _}from"./notice-CF2pptne.js";import{t as v}from"./tag-Ccr7Quy6.js";import{t as y}from"./input-Cu3PPVCq.js";import{t as b}from"./toggle-CEm3M86o.js";import{n as x,t as S}from"./stat-square-Cxkq400O.js";import{t as C}from"./modal-BYMhDpQo.js";import{n as w}from"./toast-BL8OPiip.js";import{t as T}from"./createLucideIcon-D6d6iDdi.js";import{n as E,t as D}from"./domain-field-CAflx_3d.js";import{t as O}from"./dollar-sign-DAbP2oxA.js";import{t as k}from"./external-link-MjRS4j3f.js";import{t as A}from"./hard-drive-BqWBtE21.js";import{t as j}from"./loader-circle-DsetC8iQ.js";import{a as M,c as N,i as P,n as F,r as I,t as ee}from"./resize-errors-B1TYxfYf.js";import{t as te}from"./target-B4WucRdE.js";import{it as ne,rt as re}from"./sdk.gen-ClmX029Q.js";import{a as L}from"./routes-DLEaIDYY.js";import{n as R}from"./use-is-mobile-C5MpTbZg.js";import{t as z}from"./effective-timezone-DOCb5CnU.js";import{$t as B,At as V,Fi as H,In as ie,Ja as ae,Jt as oe,Ka as se,Ln as ce,Mn as le,Ni as ue,Qa as de,Qt as fe,Rn as pe,Rt as me,So as he,Xa as ge,Xt as _e,Ya as U,Yt as W,Zt as G,an as ve,cn as ye,dn as be,do as xe,dt as Se,en as Ce,fn as we,gn as Te,go as Ee,hn as K,in as De,jn as Oe,ka as ke,ki as Ae,kn as je,ln as Me,mo as Ne,mt as Pe,nn as Fe,on as Ie,pn as Le,qt as Re,rn as ze,rr as Be,sn as Ve,tn as He,un as Ue,ut as We,wn as Ge,xa as Ke,xo as qe,yt as Je,za as Ye}from"./index-oaZGNNfo.js";import{t as Xe}from"./add-credits-modal-BadC5LC-.js";import{t as Ze}from"./format-date-Dmfidg1n.js";import{a as Qe,n as $e,t as et}from"./llm-dimension-TxvNnyPw.js";import{r as tt,t as nt}from"./usage-window-CJWiX6yx.js";import{t as rt}from"./environment-store-CaBEWd5a.js";var it=T(`hourglass`,[[`path`,{d:`M5 22h14`,key:`ehvnwv`}],[`path`,{d:`M5 2h14`,key:`pdyrp9`}],[`path`,{d:`M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22`,key:`1d314k`}],[`path`,{d:`M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2`,key:`1vvvr6`}]]),at=T(`party-popper`,[[`path`,{d:`M5.8 11.3 2 22l10.7-3.79`,key:`gwxi1d`}],[`path`,{d:`M4 3h.01`,key:`1vcuye`}],[`path`,{d:`M22 8h.01`,key:`1mrtc2`}],[`path`,{d:`M15 2h.01`,key:`1cjtqr`}],[`path`,{d:`M22 20h.01`,key:`1mrys2`}],[`path`,{d:`m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10`,key:`hbicv8`}],[`path`,{d:`m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17`,key:`1i94pl`}],[`path`,{d:`m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7`,key:`1cofks`}],[`path`,{d:`M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z`,key:`4kbmks`}]]),ot=T(`tree-palm`,[[`path`,{d:`M13 8c0-2.76-2.46-5-5.5-5S2 5.24 2 8h2l1-1 1 1h4`,key:`foxbe7`}],[`path`,{d:`M13 7.14A5.82 5.82 0 0 1 16.5 6c3.04 0 5.5 2.24 5.5 5h-3l-1-1-1 1h-3`,key:`18arnh`}],[`path`,{d:`M5.89 9.71c-2.15 2.15-2.3 5.47-.35 7.43l4.24-4.25.7-.7.71-.71 2.12-2.12c-1.95-1.96-5.27-1.8-7.42.35`,key:`ywahnh`}],[`path`,{d:`M11 15.5c.5 2.5-.17 4.5-1 6.5h4c2-5.5-.5-12-1-14`,key:`ft0feo`}]]),q=e(r(),1),J=d();function st({onBack:e}){let t=a(),{data:n}=l(Pe()),r=n?.name||`your assistant`;return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 text-center`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:{background:`radial-gradient(ellipse 60% 50% at 50% 38%, color-mix(in oklab, var(--system-positive-strong) 14%, transparent), transparent)`},"aria-hidden":`true`}),(0,J.jsxs)(`div`,{className:`relative mb-5 flex items-center justify-center`,style:{animation:`welcome-reveal 600ms ease-out both`},children:[(0,J.jsx)(`div`,{className:`absolute h-24 w-24 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 18%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-16 w-16 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 12%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite 0.5s`},"aria-hidden":`true`}),(0,J.jsx)(at,{className:`relative h-8 w-8 text-[var(--system-positive-strong)]`,strokeWidth:1.5,"aria-hidden":`true`})]}),(0,J.jsx)(`h1`,{className:`relative mb-2 text-[var(--content-emphasised)]`,style:{fontFamily:`var(--font-serif)`,fontSize:`28px`,lineHeight:1,fontWeight:400,animation:`welcome-reveal 600ms ease-out 150ms both`},children:`You're all set`}),(0,J.jsx)(`p`,{className:`relative mb-6 max-w-[320px] text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`welcome-reveal 600ms ease-out 300ms both`},children:`Your assistant just got a serious upgrade.`}),(0,J.jsx)(`div`,{style:{animation:`welcome-reveal 600ms ease-out 450ms both`},children:(0,J.jsxs)(f,{variant:`primary`,"data-testid":`onboarding-complete-return`,onClick:()=>t(L.assistant,{replace:!0}),children:[`Return to `,r]})}),(0,J.jsx)(`div`,{className:`absolute bottom-4 left-4`,children:(0,J.jsx)(f,{variant:`ghost`,"data-testid":`onboarding-complete-back`,onClick:e,leftIcon:(0,J.jsx)(he,{className:`h-4 w-4`}),children:`Back`})})]})}function ct({current:e,total:t=2}){return(0,J.jsx)(`div`,{className:`flex items-center justify-center gap-1.5`,children:Array.from({length:t},(t,n)=>(0,J.jsx)(`div`,{className:`h-1.5 rounded-full transition-all duration-300`,style:{width:n===e?20:6,backgroundColor:n<=e?`var(--content-default)`:`var(--border-element)`}},n))})}function lt({icon:e,tone:t=`positive`}){let n=t===`positive`?`--system-positive-strong`:t===`warning`?`--system-mid-strong`:`--system-negative-strong`;return(0,J.jsx)(`span`,{className:`flex h-11 w-11 items-center justify-center rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(${n}) 12%, transparent)`},children:(0,J.jsx)(e,{className:`h-5 w-5`,style:{color:`var(${n})`},"aria-hidden":`true`})})}var ut=1e3,dt=1e4;function ft(e){return P[e]??P.medium}var pt=[`machine_size`,`subdomain`,`non_field_errors`],mt={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.`};function ht(e,t){if(e&&typeof e==`object`){let t=e;if(typeof t.error==`string`){let e=mt[t.error];if(e)return e}for(let e of pt){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}function gt({onBack:e,onExit:t}){let n=c(),r=rt.use.emailRootDomain(),{data:i}=l(Pe()),a=i?.id,{data:o}=l({...Je({path:{assistant_id:a??``}}),enabled:!!a}),s=o?.results?.[0],[d,m]=(0,q.useState)(``),[h,g]=(0,q.useState)(`hi`),[v,y]=(0,q.useState)(!1);(0,q.useEffect)(()=>{if(!v){if(s){m(s.subdomain),y(!0);return}!i?.handle||d||(m(i.handle),y(!0))}},[i?.handle,s,v,d]);let[b,x]=(0,q.useState)(null),[S,w]=(0,q.useState)(!1),T=u(Ie()),E=!!s||S,O=T.isPending||S;return(0,q.useEffect)(()=>{if(!S)return;let e=setTimeout(t,800);return()=>clearTimeout(e)},[S,t]),(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(C.Body,{className:`min-h-[320px] space-y-5 pt-10 pb-4`,style:{animation:`onboarding-step-in 350ms ease-out`},children:[(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-3 pb-2 text-center`,children:[(0,J.jsx)(lt,{icon:Ke}),(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Assistant email`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Set up an email address for your assistant.`})]})]}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`body-small-default`,as:`label`,className:`text-[var(--content-secondary)]`,children:`Email address`}),(0,J.jsx)(D,{subdomain:d,autoFocus:!0,onSubdomainChange:e=>{m(e),b&&x(null)},domainSuffix:r,disabled:O,error:b,locked:E,lockedMessage:`This domain has been set and cannot be changed.`,prefix:(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`input`,{value:h,onChange:e=>g(e.target.value.toLowerCase().trim()),disabled:O||E,readOnly:E,placeholder:`hi`,"aria-label":`Email username`,size:Math.max(h.length,2),className:`h-full w-0 min-w-[2ch] flex-none bg-transparent pl-3 pr-1.5 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`,style:{width:`${Math.max(h.length,2)+1.5}ch`}}),(0,J.jsx)(`span`,{className:`shrink-0 font-mono text-[var(--content-secondary)]`,children:`@`})]})})]}),!E&&(0,J.jsxs)(_,{tone:`info`,children:[(0,J.jsx)(`span`,{className:`font-mono`,children:d||`<subdomain>`}),` will also become your assistant's public handle. You won't be able to change it once set.`]}),S?(0,J.jsx)(_,{tone:`success`,children:`Domain set — redirecting…`}):null]}),(0,J.jsxs)(C.Footer,{className:`relative items-center justify-between`,children:[(0,J.jsx)(f,{variant:`ghost`,"data-testid":`onboarding-domain-back`,disabled:O,onClick:e,leftIcon:(0,J.jsx)(he,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 flex justify-center`,children:(0,J.jsx)(ct,{current:0})}),(0,J.jsx)(`div`,{className:`flex items-center gap-2`,children:E?(0,J.jsx)(f,{variant:`primary`,"data-testid":`onboarding-domain-continue`,onClick:t,children:`Continue`}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(f,{variant:`ghost`,"data-testid":`onboarding-domain-skip`,disabled:O,onClick:()=>{O||T.mutate({body:{skipped:!0}},{onSuccess:t,onError:()=>t()})},children:`Do later`}),(0,J.jsx)(f,{variant:`primary`,"data-testid":`onboarding-domain-set`,disabled:!d||O,onClick:()=>{O||!d||T.mutate({body:{subdomain:d,...h?{email_username:h}:{}}},{onSuccess:()=>{x(null),w(!0),n.invalidateQueries({queryKey:V()})},onError:e=>{x(ht(e,`Couldn't register that subdomain. Try a different one.`))}})},children:`Set domain`})]})})]})]})}function _t({onGoToBilling:e}){return(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(lt,{icon:Ne,tone:`negative`}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Couldn't reach billing`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`We hit a problem checking your subscription. Your upgrade may still be processing — return to billing to refresh.`})]}),(0,J.jsx)(f,{variant:`primary`,"data-testid":`onboarding-go-to-billing`,onClick:e,children:`Go to billing`})]})}function vt({message:e,onRetry:t,onGoToBilling:n}){return(0,J.jsxs)(`div`,{className:`flex min-h-[280px] flex-col items-center justify-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(lt,{icon:Ne,tone:`warning`}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Taking longer than expected`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:e})]}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2 pt-2`,children:[(0,J.jsx)(f,{variant:`outlined`,"data-testid":`onboarding-go-to-billing`,onClick:n,children:`Go to billing`}),(0,J.jsx)(f,{variant:`primary`,"data-testid":`onboarding-retry`,onClick:t,children:`Try again`})]})]})}function yt({title:e,body:t}){return(0,J.jsxs)(`div`,{className:`flex min-h-[280px] flex-col items-center justify-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsxs)(`div`,{className:`relative flex h-11 w-11 items-center justify-center`,children:[(0,J.jsx)(`div`,{className:`absolute h-14 w-14 rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`,animation:`onboarding-glow 2.4s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-9 w-9 rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 8%, transparent)`,animation:`onboarding-glow 2.4s ease-in-out infinite 0.4s`},"aria-hidden":`true`}),(0,J.jsx)(j,{className:`relative h-5 w-5 animate-spin text-[var(--system-positive-strong)]`,"aria-hidden":`true`})]}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:e}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:t})]})]})}function bt({icon:e,label:t,from:n,fromDetail:r,to:i,toDetail:a}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`},children:(0,J.jsx)(e,{className:`h-4 w-4 text-[var(--system-positive-strong)]`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)] line-through`,children:n}),r&&(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)] line-through`,children:r})]}),(0,J.jsx)(qe,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`}),(0,J.jsxs)(`div`,{className:`flex flex-col`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:i}),a&&(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:a})]})]})]})]})}function xt({storageGib:e,maxTier:t,onBack:n,onAdvance:r,dotIndex:i,dotTotal:a}){let{data:o}=l(Pe()),s=o?.machine_size||`small`,c=o?.provisioned_storage_gib??null,d=ft(t),m=d.length>0?d[d.length-1]:s,h=m!==s,g=e!=null&&(c==null||c<e),[v,y]=(0,q.useState)(null),b=u(me());return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(C.Body,{className:`min-h-[320px] space-y-5 pt-10 pb-4`,style:{animation:`onboarding-step-in 350ms ease-out`},children:[(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-3 pb-2 text-center`,children:[(0,J.jsx)(lt,{icon:U}),(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(p,{variant:`title-small`,as:`h1`,children:`Your assistant's new resources`}),(0,J.jsx)(p,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Your assistant will go offline briefly while it resizes.`})]})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[h&&(0,J.jsx)(bt,{icon:U,label:`Machine`,from:I[s],fromDetail:F[s],to:I[m],toDetail:F[m]}),g&&(0,J.jsx)(bt,{icon:A,label:`Storage`,from:c==null?`—`:`${c} GiB`,to:`${e} GiB`}),!h&&!g&&(0,J.jsx)(_,{tone:`neutral`,children:`Your assistant is already running at the maximum size for your plan.`})]}),v?(0,J.jsx)(_,{tone:`error`,children:v}):null]}),(0,J.jsxs)(C.Footer,{className:`relative items-center justify-between`,children:[(0,J.jsx)(f,{variant:`ghost`,"data-testid":`onboarding-setup-back`,disabled:b.isPending,onClick:n,leftIcon:(0,J.jsx)(he,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 flex justify-center`,children:(0,J.jsx)(ct,{current:i,total:a})}),(0,J.jsxs)(`div`,{className:`flex gap-2`,children:[(0,J.jsx)(f,{variant:`ghost`,"data-testid":`onboarding-setup-skip`,disabled:b.isPending,onClick:r,children:`Do later`}),(0,J.jsx)(f,{variant:`primary`,"data-testid":`onboarding-setup-continue`,disabled:b.isPending||!o?.id,onClick:()=>{b.isPending||!o?.id||b.mutate({path:{id:o.id},body:{machine_size:m,...e==null?{}:{storage_gib:e}}},{onSuccess:()=>{y(null),r()},onError:e=>{y(ht(e,`Couldn't apply changes. Please try again.`))}})},children:`Apply & Restart`})]})]})]})}function St({onContinue:e,continueDisabled:t=!1}){return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 text-center`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:{background:`radial-gradient(ellipse 60% 50% at 50% 38%, color-mix(in oklab, var(--system-positive-strong) 14%, transparent), transparent)`},"aria-hidden":`true`}),(0,J.jsxs)(`div`,{className:`relative mb-5 flex items-center justify-center`,style:{animation:`welcome-reveal 600ms ease-out both`},children:[(0,J.jsx)(`div`,{className:`absolute h-24 w-24 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 18%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-16 w-16 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 12%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite 0.5s`},"aria-hidden":`true`}),(0,J.jsx)(E,{className:`relative h-8 w-8 text-[var(--system-positive-strong)]`,strokeWidth:1.5,"aria-hidden":`true`})]}),(0,J.jsx)(`h1`,{className:`relative mb-2 text-[var(--content-emphasised)]`,style:{fontFamily:`var(--font-serif)`,fontSize:`28px`,lineHeight:1,fontWeight:400,animation:`welcome-reveal 600ms ease-out 150ms both`},children:`Welcome to Pro`}),(0,J.jsx)(`p`,{className:`relative mb-6 max-w-[320px] text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`welcome-reveal 600ms ease-out 300ms both`},children:`More compute, more storage, and more features. Let's set everything up.`}),(0,J.jsx)(`div`,{style:{animation:`welcome-reveal 600ms ease-out 450ms both`},children:(0,J.jsx)(f,{variant:`primary`,"data-testid":`onboarding-welcome-continue`,disabled:t,onClick:e,children:`Get started`})}),(0,J.jsx)(`p`,{className:`relative mt-6 max-w-[320px] text-body-small-default text-[var(--content-tertiary)]`,style:{animation:`welcome-reveal 600ms ease-out 600ms both`},children:`This quick setup gets your Pro features ready to go. You can close it anytime and turn these features on later from Settings.`})]})}function Ct({open:e,onClose:t}){let n=c(),[r,i]=(0,q.useState)(`confirm-pro`),[a,o]=(0,q.useState)(!1),[s,u]=(0,q.useState)(0);(0,q.useEffect)(()=>{e&&(n.invalidateQueries({queryKey:Ue()}),n.invalidateQueries({queryKey:ye()}))},[e,n]);let d=(0,q.useCallback)(()=>{o(!1),u(e=>e+1),n.invalidateQueries({queryKey:Ue()})},[n]),f=l({...Me(),refetchInterval:e=>e.state.data?.plan_id===`pro`||a?!1:ut,refetchIntervalInBackground:!1,enabled:e&&r===`confirm-pro`});(0,q.useEffect)(()=>{if(!e||r!==`confirm-pro`)return;let t=setTimeout(()=>o(!0),dt);return()=>clearTimeout(t)},[e,r,s]),(0,q.useEffect)(()=>{r===`confirm-pro`&&f.data?.plan_id===`pro`&&i(`welcome`)},[r,f.data?.plan_id]);let p=l({...Ve(),enabled:e&&r!==`confirm-pro`});l({...Pe(),enabled:e});let m=p.data?.domain_setup_available,h=(0,q.useCallback)(()=>{i(m===!1?`setup`:`domain`)},[m]),g=(0,q.useCallback)(()=>{i(m===!1?`welcome`:`domain`)},[m]),_=r===`welcome`;return(0,J.jsx)(C.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsx)(C.Content,{size:`md`,hideCloseButton:!_,dismissOnOverlayClick:!_,onEscapeKeyDown:_?e=>e.preventDefault():void 0,onInteractOutside:_?e=>e.preventDefault():void 0,className:`overflow-hidden`,children:v()})});function v(){if(r===`confirm-pro`)return f.isError?(0,J.jsx)(_t,{onGoToBilling:t}):a?(0,J.jsx)(vt,{message:`We're still confirming your upgrade.`,onRetry:d,onGoToBilling:t}):(0,J.jsx)(yt,{title:`Finalizing your upgrade…`,body:`This usually takes a few seconds.`});if(r===`welcome`)return p.isError?(0,J.jsx)(_t,{onGoToBilling:t}):(0,J.jsx)(St,{onContinue:h,continueDisabled:p.isPending||p.isFetching});if(r===`domain`)return(0,J.jsx)(gt,{onBack:()=>i(`welcome`),onExit:()=>i(`setup`)});if(r===`setup`){if(p.isError)return(0,J.jsx)(_t,{onGoToBilling:t});let e=p.data?.max_machine_tier??null,n=m!==!1;return(0,J.jsx)(xt,{storageGib:p.data?.selected_storage_gib??null,maxTier:e,onBack:g,onAdvance:()=>i(`complete`),dotIndex:+!!n,dotTotal:n?2:1})}return r===`complete`?(0,J.jsx)(st,{onBack:()=>i(`setup`)}):null}}var wt=`billing-portal-return-snapshot`;function Tt(e){try{sessionStorage.removeItem(wt),sessionStorage.setItem(wt,JSON.stringify(e))}catch{}}function Et(){if(typeof sessionStorage>`u`)return null;try{let e=sessionStorage.getItem(wt);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 Dt(){try{sessionStorage.removeItem(wt)}catch{}}function Ot(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 kt(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleDateString(void 0,{year:`numeric`,month:`long`,day:`numeric`})}function At(e){return e?e.cancel_at??e.current_period_end??null:null}function jt(e){let t=c();return(0,q.useEffect)(()=>Se(()=>{t.invalidateQueries(Me())}),[t]),Oe({onSuccess:t=>{e&&Tt(e),We(t.portal_url)},onError:()=>{w.error(`Couldn't open the billing portal. Please try again.`,{id:`billing-portal-session-error`})}})}function Mt(e){let t=e/100;return Number.isInteger(t)?`$${t}`:`$${t.toFixed(2)}`}function Y(e){return`${Mt(e)}/mo`}function Nt(e){return`${e>0?`+`:`−`}${Mt(Math.abs(e))}/mo`}var Pt={medium:`Medium`,large:`Large`,xl:`XL`};function Ft(e){return e.disabled===!0}function It({machineTiers:e,storageTiers:t,selectedMachineTier:n,selectedStorageTier:r,onMachineTierChange:i,onStorageTierChange:a,currentMachinePriceCents:o,currentStoragePriceCents:s}){let c=(0,q.useMemo)(()=>e.map(e=>{let t=Pt[e.tier]??e.label,n=o==null?`+${Y(e.price_cents)}`:e.price_cents===o?`(${Y(e.price_cents)}, current)`:Nt(e.price_cents-o);return{value:e.tier,label:`${t} ${n}`,disabled:Ft(e)}}),[e,o]),l=(0,q.useMemo)(()=>t.map(e=>{let t=s==null?`+${Y(e.price_cents)}`:e.price_cents===s?`(${Y(e.price_cents)}, current)`:Nt(e.price_cents-s);return{value:e.tier,label:`${e.storage_gib} GiB ${t}`,disabled:Ft(e)}}),[t,s]);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)(p,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Machine`}),(0,J.jsx)(`span`,{title:`Determines the CPU and memory allocated to your assistant`,children:(0,J.jsx)(ke,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(h,{"aria-label":`Machine tier`,placeholder:`Select a machine tier`,value:n??``,onChange:i,options:c})]}),(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)(p,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Storage`}),(0,J.jsx)(`span`,{title:`Persistent disk space for your assistant's files and data`,children:(0,J.jsx)(ke,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(h,{"aria-label":`Storage tier`,placeholder:`Select a storage tier`,value:r??``,onChange:a,options:l})]})]})}var Lt=new Set([`active`,`trialing`,`past_due`]),Rt=[`target_plan_id`,`confirm`,`machine_tier`,`storage_tier`,`credit_tier`,`non_field_errors`];function zt(e,t){if(e&&typeof e==`object`){for(let t of Rt)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 Bt(e,t){let n=e.filter(e=>!Ft(e));return t!==null&&n.some(e=>e.tier===t)?t:n[0]?.tier??null}function Vt(e,t,n){return t===void 0?n:t!==null&&(t===n||e.some(e=>e.tier===t))?t:null}function Ht(e){return e.length?Math.min(...e.map(e=>e.price_cents)):0}function Ut({open:e,onCancel:t,onConfirm:n,confirming:r,lostFeatures:i}){return(0,J.jsx)(C.Root,{open:e,onOpenChange:e=>{!e&&!r&&t()},children:(0,J.jsxs)(C.Content,{size:`md`,hideCloseButton:!0,children:[(0,J.jsx)(C.Header,{children:(0,J.jsx)(C.Title,{icon:ue,children:`Downgrade to Base?`})}),(0,J.jsxs)(C.Body,{children:[(0,J.jsx)(p,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:`Downgrading removes the following Pro features:`}),(0,J.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:i.map(e=>(0,J.jsx)(`li`,{children:(0,J.jsx)(p,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,J.jsxs)(C.Footer,{children:[(0,J.jsx)(f,{variant:`outlined`,onClick:t,disabled:r,children:`Keep Pro`}),(0,J.jsx)(f,{variant:`danger`,onClick:n,disabled:r,"data-testid":`confirm-downgrade-button`,children:`Confirm Downgrade`})]})]})})}var Wt=`__none__`;function Gt(e){return`${e.label} — ${Y(e.price_cents)}`}function Kt({creditTiers:e,selectedCreditTier:t,onCreditTierChange:n,disabled:r=!1}){let i=(0,q.useMemo)(()=>[{value:Wt,label:`No credit bundle — ${Y(0)}`},...e.map(e=>({value:e.tier,label:Gt(e)}))],[e]);return(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)(p,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Credit bundle`}),(0,J.jsx)(`span`,{title:`A monthly allotment of credits added to your Pro Plan subscription`,children:(0,J.jsx)(ke,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(h,{"aria-label":`Credit bundle`,placeholder:`Select a credit bundle`,disabled:r,value:t??Wt,onChange:e=>n(e===Wt?null:e),options:i})]})}function qt({features:e,variant:t,header:n,maxInline:r=3}){return t===`inline`?(0,J.jsx)(J.Fragment,{children:e.slice(0,r).join(`, `)}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n&&(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:n}),(0,J.jsx)(`ul`,{className:`flex flex-col gap-2`,children:e.map(e=>(0,J.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,J.jsx)(xe,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-default`,children:e})]},e))})]})}function Jt({plan:e,isCurrent:t,onPro:n,cancelAtPeriodEnd:r,isCanceled:i,cancelDate:a,formatGraceDate:o,proTierChangeMode:s,creditTiersEnabled:c,creditTiers:l,displayCreditTier:u,onCreditTierChange:d,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:y,onStorageTierChange:b,machineTiersForPicker:x,storageTiersForPicker:S,currentMachinePrice:C,currentStoragePrice:w,currentCreditPriceUnknown:T,proCurrentTotalCents:D,proLiveTotalCents:O,proTotalDelta:k,onboardingLoading:A,tierChangePending:M,machineChanged:N,storageChanged:P,creditChanged:F,tierChangeError:I,upgradePending:ee,portalPending:te,onUpgrade:ne,onApplyTierChange:re,onDowngradeClick:L,onKeepPlan:R}){let z=e.id===`pro`,B=e.id===`base`,V=z&&n&&r&&!i,H=z&&(!t||t&&s),ie=z&&t&&s;return(0,J.jsxs)(m,{padding:`lg`,className:`flex flex-col bg-[var(--surface-base)]`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-9 w-9 items-center justify-center rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)]`,children:z?(0,J.jsx)(E,{className:`h-5 w-5 text-[var(--content-default)]`}):(0,J.jsx)(ot,{className:`h-5 w-5 text-[var(--content-default)]`})}),(0,J.jsxs)(`div`,{className:`flex min-h-6 items-center gap-2`,children:[(0,J.jsx)(p,{as:`h3`,variant:`title-small`,children:e.name}),t&&(0,J.jsx)(v,{tone:`positive`,children:`Current`})]}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`-mt-2 text-[var(--content-tertiary)]`,children:B?`All you need for a capable assistant`:`More features, more compute, more storage`}),V&&a&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`modal-cancels-on`,children:[`Your plan ends on `,o(a)]}),(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(`div`,{className:`flex flex-col gap-1`,children:B?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(p,{as:`p`,variant:`title-medium`,children:`Free`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Forever`})]}):t&&!(H&&O!=null)&&(D==null||T)?A?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-lighter`,children:`Loading your plan...`})]}):(0,J.jsx)(p,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-price-unavailable`,children:`Current plan pricing unavailable`}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(p,{as:`p`,variant:`title-medium`,"data-testid":`modal-pro-price`,children:H&&O!=null?(0,J.jsxs)(J.Fragment,{children:[Y(O),k!=null&&k!==0&&(0,J.jsxs)(`span`,{className:`ml-1 text-[var(--content-tertiary)]`,children:[`(`,Nt(k),`)`]})]}):D==null?e.id===`pro`?`From ${Y(e.base_price_cents+Ht(e.machine_tiers)+Ht(e.storage_tiers))}`:null:`Currently ${Y(D)}`}),H&&k!=null&&k!==0&&(0,J.jsx)(`span`,{title:`Your Pro Plan subscription will change from ${Y(D)} to ${Y(O)}.`,children:(0,J.jsx)(ke,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),e.id===`pro`&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-base-fee`,children:[Mt(e.base_price_cents),` base fee`]})]})}),(0,J.jsx)(qt,{features:e.included_features,variant:`checklist`}),z&&!c&&(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-credits-not-included`,children:`*Credits not included`})]}),(0,J.jsxs)(`div`,{className:`mt-4 flex flex-1 flex-col justify-end gap-4`,children:[!t&&z&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),c&&(0,J.jsx)(Kt,{creditTiers:l,selectedCreditTier:u,onCreditTierChange:d,disabled:ee}),(0,J.jsx)(It,{machineTiers:x,storageTiers:S,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:y,onStorageTierChange:b}),(0,J.jsx)(f,{variant:`primary`,className:`w-full`,onClick:ne,disabled:ee||!h||!g,"data-testid":`modal-upgrade-to-pro-button`,children:`Upgrade to Pro`})]}),ie&&(A?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-lighter`,children:`Loading your plan...`})]}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),c&&(0,J.jsx)(Kt,{creditTiers:l,selectedCreditTier:u,onCreditTierChange:d,disabled:M}),(0,J.jsx)(It,{machineTiers:x,storageTiers:S,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:y,onStorageTierChange:b,currentMachinePriceCents:C,currentStoragePriceCents:w}),I&&(0,J.jsx)(_,{tone:`error`,children:I}),(0,J.jsx)(f,{variant:`primary`,className:`w-full`,onClick:re,disabled:M||!N&&!P&&!F,"data-testid":`modal-change-tier-button`,children:`Update Plan`})]})),!t&&B&&n&&!r&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(f,{variant:`outlined`,className:`w-full`,onClick:L,disabled:te,"data-testid":`modal-downgrade-to-base-button`,children:`Downgrade to Base`})]}),V&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(f,{variant:`outlined`,className:`w-full`,onClick:R,disabled:te,"data-testid":`modal-keep-plan-button`,children:`Keep your Plan`})]})]})]})}function Yt({open:e,onClose:t,onTierUpgraded:n}){let r=c(),i=l(He()),a=l(Me()),o=u(be()),s=u(De()),d=u(ve()),m=u(ze()),h=jt(Ot(a.data)),[g,v]=(0,q.useState)(`plans`),[y,b]=(0,q.useState)(!1),[x,S]=(0,q.useState)(null),[T,E]=(0,q.useState)(null),[D,O]=(0,q.useState)(void 0);(0,q.useEffect)(()=>Se(()=>{r.invalidateQueries({queryKey:Ue()}),r.invalidateQueries({queryKey:Fe()}),r.invalidateQueries({queryKey:ye()}),t()}),[r,t]);let k=a.data?.plan_id,A=k===`pro`,M=l({...Ve(),enabled:A}),N=M.data?.max_machine_tier??null,P=M.data?.selected_storage_tier??null,F=M.data?.selected_storage_gib??null,I=a.data?.cancel_at_period_end===!0||!!a.data?.cancel_at,ee=a.data?.status===`canceled`,te=At(a.data),ne=a.data?.status,re=ne!=null&&Lt.has(ne),L=A&&re&&!I&&!ee,R=i.data?.plans.find(e=>e.id===`pro`),z=R?.credit_tiers??[],B=z.length>0,V=a.data?.selected_credit_tier??null,H=e=>z.find(t=>t.tier===e)?.price_cents??0,ie=H(V),ae=V!=null&&!z.some(e=>e.tier===V),oe=D===void 0?V:D,se=H(oe),ce=R?.machine_tiers??[],le=L&&F!=null?(R?.storage_tiers??[]).map(e=>e.storage_gib<F?{...e,disabled:!0}:e):R?.storage_tiers??[];(0,q.useEffect)(()=>{if(!e){S(null),E(null),O(void 0);return}if(R){if(L){if(N==null||P==null)return;S(e=>Bt(ce,e??N)),E(e=>Bt(le,e??P)),O(e=>Vt(z,e,V));return}S(e=>Bt(R.machine_tiers,e)),E(e=>Bt(R.storage_tiers,e)),O(e=>Vt(z,e,null))}},[e,R,L,N,P,V]);let de=i.data?.plans.find(e=>e.id===`base`),fe=new Set(de?.included_features??[]),pe=(R?.included_features??[]).filter(e=>!fe.has(e)),me=()=>{if(!o.isPending){if(!x||!T){w.error(`Pick a machine and storage tier to continue.`,{id:`pro-upgrade-error`});return}o.mutate({body:{target_plan_id:`pro`,confirm:!0,machine_tier:x,storage_tier:T,credit_tier:oe}},{onSuccess:e=>{if(e.checkout_url){We(e.checkout_url);return}if(e.status===`no_op`){w.info(`You're already on Pro.`,{id:`pro-upgrade`}),t();return}w.error(e.message??`Failed to start upgrade. Please try again.`,{id:`pro-upgrade-error`})},onError:e=>{w.error(zt(e,`Failed to start upgrade. Please try again.`),{id:`pro-upgrade-error`})}})}},ge=()=>{h.isPending||(v(`plans`),h.mutate({}))},_e=()=>{r.invalidateQueries({queryKey:Ue()}),r.invalidateQueries({queryKey:ye()}),r.invalidateQueries({queryKey:Fe()})},U=s.isPending||d.isPending||m.isPending,W=x!=null&&x!==N,G=T!=null&&T!==P,xe=B&&D!==void 0&&D!==V,Ce=e=>ce.find(t=>t.tier===e)?.price_cents??null,we=e=>le.find(t=>t.tier===e)?.price_cents??null,Te=Ce(x),Ee=we(T),K=Ce(N),Oe=we(P),ke=W&&Te!=null&&K!=null&&Te<K,Ae=()=>{if(U)return;let e=[];W&&x&&e.push(new Promise(e=>{s.mutate({body:{machine_tier:x}},{onSuccess:()=>e({dimension:`machine`,ok:!0}),onError:t=>e({dimension:`machine`,ok:!1,error:t})})})),G&&T&&e.push(new Promise(e=>{d.mutate({body:{storage_tier:T}},{onSuccess:()=>e({dimension:`storage`,ok:!0}),onError:t=>e({dimension:`storage`,ok:!1,error:t})})})),xe&&e.push(new Promise(e=>{m.mutate({body:{credit_tier:oe}},{onSuccess:()=>e({dimension:`credit`,ok:!0}),onError:t=>e({dimension:`credit`,ok:!1,error:t})})})),Promise.all(e).then(e=>{_e();let r=e.some(e=>e.ok&&e.dimension===`storage`),i=e.some(e=>e.ok&&e.dimension===`machine`)&&!ke,a=(r||i)&&!!n,o=e.filter(e=>!e.ok);if(o.length>0){let e=o.map(e=>zt(e.error,`Failed to update ${e.dimension} tier.`)).join(` `);w.error(e,{id:`pro-tier-change-error`}),a&&(t(),n());return}a?(t(),n()):w.success(xe&&!W&&!G?`Credit bundle updated.`:`Plan updated.`,{id:`pro-tier-change`})})},je=()=>{if(!U){if(ke){b(!0);return}Ae()}},Ne=()=>{b(!1),Ae()},Pe=e=>Te!=null&&Ee!=null?e.base_price_cents+Te+Ee+se:null,Ie=e=>K!=null&&Oe!=null?e.base_price_cents+K+Oe+ie:null,Le=s.isError||d.isError||m.isError?zt(s.error??d.error??m.error,`Failed to update plan. Please try again.`):null,Re=i.isLoading||a.isLoading,Be=i.isError||a.isError||!i.data||!a.data;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(C.Root,{open:e,onOpenChange:e=>{e||(v(`plans`),t())},children:(0,J.jsx)(C.Content,{size:g===`plans`?`lg`:`md`,children:g===`downgrade-confirm`?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(C.Header,{children:(0,J.jsx)(C.Title,{icon:ue,children:`Downgrade to Base?`})}),(0,J.jsxs)(C.Body,{children:[(0,J.jsx)(p,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:`Downgrading removes the following Pro features:`}),(0,J.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:pe.map(e=>(0,J.jsx)(`li`,{children:(0,J.jsx)(p,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,J.jsxs)(C.Footer,{children:[(0,J.jsx)(f,{variant:`ghost`,onClick:()=>v(`plans`),disabled:h.isPending,leftIcon:(0,J.jsx)(he,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(f,{variant:`danger`,onClick:ge,disabled:h.isPending,"data-testid":`confirm-downgrade-button`,children:`Confirm Downgrade`})]})]}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(C.Header,{children:(0,J.jsx)(C.Title,{className:`sr-only`,children:`Upgrade Plan`})}),(0,J.jsx)(C.Body,{children:Re?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-medium-lighter`,children:`Loading plans...`})]}):Be?(0,J.jsx)(_,{tone:`error`,children:`Failed to load plans. Please try again later.`}):(0,J.jsxs)(`div`,{className:`space-y-6`,children:[(0,J.jsxs)(`div`,{className:`space-y-2 pb-2 pt-4 text-center`,children:[(0,J.jsx)(p,{as:`p`,variant:`title-medium`,children:`Your Assistant, Your Way`}),(0,J.jsx)(p,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-secondary)]`,children:`Choose the plan that works best for you and your assistant.`})]}),(0,J.jsx)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:i.data.plans.map(e=>{let t=e.id===k,n=e.id===`pro`&&R?Pe(R):null,r=e.id===`pro`&&R?Ie(R):null;return(0,J.jsx)(Jt,{plan:e,isCurrent:t,onPro:A,cancelAtPeriodEnd:I,isCanceled:ee,cancelDate:te,formatGraceDate:kt,proTierChangeMode:L,creditTiersEnabled:B,creditTiers:z,displayCreditTier:oe,onCreditTierChange:O,selectedMachineTier:x,selectedStorageTier:T,onMachineTierChange:S,onStorageTierChange:E,machineTiersForPicker:ce,storageTiersForPicker:le,currentMachinePrice:K,currentStoragePrice:Oe,currentCreditPriceUnknown:ae,proCurrentTotalCents:r,proLiveTotalCents:n,proTotalDelta:n!=null&&r!=null?n-r:null,onboardingLoading:M.isLoading,tierChangePending:U,machineChanged:W,storageChanged:G,creditChanged:xe,tierChangeError:Le,upgradePending:o.isPending,portalPending:h.isPending,onUpgrade:me,onApplyTierChange:je,onDowngradeClick:()=>v(`downgrade-confirm`),onKeepPlan:()=>h.mutate({})},e.id)})})]})}),(0,J.jsxs)(C.Footer,{className:`relative items-center`,children:[(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`pointer-events-none absolute inset-x-0 text-center text-[var(--content-tertiary)]`,children:(0,J.jsx)(`span`,{className:`pointer-events-auto`,children:`You can change or cancel your plan at any time from billing settings.`})}),(0,J.jsx)(`div`,{className:`ml-auto`,children:(0,J.jsx)(f,{variant:`outlined`,onClick:t,"data-testid":`modal-cancel-button`,children:`Cancel`})})]})]})})}),(0,J.jsx)(Ut,{open:y,onCancel:()=>b(!1),onConfirm:Ne,confirming:U,lostFeatures:[`Reduced CPU and memory for your assistant — it will resize to the smaller compute profile.`]})]})}var Xt={visa:`Visa`,mastercard:`Mastercard`,amex:`Amex`,discover:`Discover`,diners:`Diners Club`,jcb:`JCB`,unionpay:`UnionPay`};function Zt(e){return Xt[e.toLowerCase()]??e}function Qt(e,t){return`${Zt(e??`card`)} •••• ${t??`????`}`}function $t({open:e,confirming:t,onCancel:n,onConfirm:r}){return(0,J.jsx)(g,{open:e,title:`Disable automatic top-ups?`,message:`Auto top-ups will stop. Any saved payment method stays on file.`,confirmLabel:t?`Disabling…`:`Disable`,cancelLabel:`Keep enabled`,destructive:!0,onConfirm:r,onCancel:n})}var en={threshold_usd:`100`,amount_usd:`10`,monthly_cap_usd:``};function tn(e){if(e===``||e===`-`)return e;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function nn(e){let t={},n=parseFloat(e.threshold_usd),r=parseFloat(e.amount_usd);if((!Number.isFinite(r)||r<10||r>500)&&(t.amount_usd=`Must be between $10 and $500`),(!Number.isFinite(n)||n<1||n>100)&&(t.threshold_usd=`Must be between $1 and $100`),e.monthly_cap_usd!==``){let n=parseFloat(e.monthly_cap_usd);!Number.isFinite(n)||n<25||n>1e4?t.monthly_cap_usd=`Must be between $25 and $10,000`:Number.isFinite(r)&&n<r&&(t.monthly_cap_usd=`Must be at least the top-up amount`)}return t}function rn(e,t,n,r){if(n[e])return n[e];if(r)return t[e]}function an({initialValues:e=en,submitting:t,serverErrors:n,onSave:r,onCancel:i}){let[a,o]=(0,q.useState)(e),[s,c]=(0,q.useState)({threshold_usd:!1,amount_usd:!1,monthly_cap_usd:!1}),l=nn(a),u=e=>t=>{o(n=>({...n,[e]:t.target.value}))},d=e=>()=>{c(t=>({...t,[e]:!0})),o(t=>({...t,[e]:tn(t[e])}))},p=e=>rn(e,l,n,s[e]);return(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start gap-3`,children:[(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(y,{type:`number`,step:`1`,label:`Auto-Reload when balance below`,value:a.threshold_usd,onChange:u(`threshold_usd`),onBlur:d(`threshold_usd`),errorText:p(`threshold_usd`),"data-testid":`auto-top-up-threshold-input`,fullWidth:!0})}),(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(y,{type:`number`,step:`1`,label:`Add amount when auto reloading`,value:a.amount_usd,onChange:u(`amount_usd`),onBlur:d(`amount_usd`),errorText:p(`amount_usd`),"data-testid":`auto-top-up-amount-input`,fullWidth:!0})}),(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(y,{type:`number`,step:`1`,label:`Monthly spending cap`,helperText:`Pauses auto top-ups for the rest of the month once spending reaches this amount. Manual purchases also count toward the total. Leave empty for no limit.`,value:a.monthly_cap_usd,onChange:u(`monthly_cap_usd`),onBlur:d(`monthly_cap_usd`),errorText:p(`monthly_cap_usd`),"data-testid":`auto-top-up-cap-input`,fullWidth:!0})}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[18px]`,children:[(0,J.jsx)(f,{variant:`outlined`,onClick:i,disabled:t,children:`Cancel`}),(0,J.jsx)(f,{variant:`primary`,onClick:()=>{c({threshold_usd:!0,amount_usd:!0,monthly_cap_usd:!0});let e={threshold_usd:tn(a.threshold_usd),amount_usd:tn(a.amount_usd),monthly_cap_usd:tn(a.monthly_cap_usd)};o(e);let t=nn(e);if(Object.keys(t).length!==0)return;let n=e=>e===``?``:`${parseInt(e,10)}.00`;r({threshold_usd:n(e.threshold_usd),amount_usd:n(e.amount_usd),monthly_cap_usd:e.monthly_cap_usd===``?``:n(e.monthly_cap_usd)})},disabled:t,"data-testid":`auto-top-up-save-button`,children:`Save`})]})]})})}function on(e){if(!e)return``;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function sn(e){if(!e)return`$0`;let t=parseFloat(e);if(!Number.isFinite(t))return`$0`;let n=Math.abs(t).toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2}),r=n.endsWith(`.00`)?n.slice(0,-3):n;return t<0?`-$${r}`:`$${r}`}var cn={enabled:!1,threshold_usd:null,amount_usd:null,monthly_cap_usd:null,has_payment_method:!1,payment_method_brand:null,payment_method_last4:null,stripe_payment_method_updated_at:null,last_charge_at:null,last_failure_at:null,last_failure_reason:null,disabled_due_to_repeated_failures:!1,paused_until:null,current_month_credits_purchased_usd:`0.00`,current_month_charged_usd:`0.00`,next_trigger_amount_usd:null,stubbed:!1};function ln(e){if(!e||typeof e!=`object`||Array.isArray(e))return{};let t={};for(let[n,r]of Object.entries(e))Array.isArray(r)&&typeof r[0]==`string`&&(t[n]=r[0]);return t}function un(e){let{brand:t,last4:n}=e;return!t&&!n?null:n?`Charged to ${Qt(t,n)}`:`Charged to ${Zt(t??`card`)}`}function dn(){let e=c(),t=l(W()),n=u(B()),r=u(Re()),[i,a]=(0,q.useState)(`view`),[o,s]=(0,q.useState)(!1),[d,p]=(0,q.useState)(!1),[m,h]=(0,q.useState)(!1);if((0,q.useEffect)(()=>{m&&t.data?.has_payment_method&&h(!1)},[m,t.data?.has_payment_method]),t.isLoading)return(0,J.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,J.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Loading…`})});if(t.isError||!t.data)return(0,J.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,J.jsx)(_,{tone:`error`,children:`Failed to load auto top-up configuration.`})});let g=t.data,v=g.enabled===!0,y=g.disabled_due_to_repeated_failures===!0&&!v,x=()=>{n.reset(),r.reset(),a(`form`)},S=()=>{a(`view`),s(!1)},C=()=>{r.reset(),p(!1)},w=t=>{n.mutate({body:{enabled:!0,threshold_usd:t.threshold_usd,amount_usd:t.amount_usd,monthly_cap_usd:t.monthly_cap_usd===``?null:t.monthly_cap_usd}},{onSuccess:t=>{G(e,void 0,e=>({...t,payment_method_brand:e?.payment_method_brand??null,payment_method_last4:e?.payment_method_last4??null})),e.invalidateQueries({queryKey:_e()}),S()}})},T=()=>{r.mutate({},{onSuccess:()=>{G(e,void 0,e=>({...cn,has_payment_method:e?.has_payment_method??!1,payment_method_brand:e?.payment_method_brand??null,payment_method_last4:e?.payment_method_last4??null,stripe_payment_method_updated_at:e?.stripe_payment_method_updated_at??null})),p(!1),a(`view`),s(!1)}})},E=e=>{if(e&&!v){if(!g.has_payment_method||y){h(!0);return}h(!1),s(!0),x();return}if(!e&&!v&&o){S();return}!e&&v&&p(!0)},D=i===`form`,O=ln(n.error),k=n.isError&&Object.keys(O).length===0,A=v||o,j=un({brand:g.payment_method_brand,last4:g.payment_method_last4});return(0,J.jsxs)(`div`,{"data-testid":`auto-top-up-card`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,J.jsx)(b,{checked:A,onChange:E,label:`Enable Auto-Reload`}),v&&!D&&(0,J.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,J.jsxs)(`div`,{className:`text-right`,children:[(0,J.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-summary`,children:[`Add `,sn(g.amount_usd),` when the balance falls under `,sn(g.threshold_usd)]}),g.monthly_cap_usd!=null&&(0,J.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-cap-progress`,children:[sn(g.current_month_credits_purchased_usd),` of`,` `,sn(g.monthly_cap_usd),` this month`]})]}),(0,J.jsx)(f,{variant:`outlined`,onClick:x,"data-testid":`auto-top-up-edit-button`,children:`Adjust`})]})]}),y&&(0,J.jsx)(_,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-declined-cutoff`,children:`We paused automatic reloads after several declined payments. Add a new payment method below to turn auto-reload back on.`}),(0,J.jsx)(`div`,{className:`grid transition-[grid-template-rows] duration-200 ease-in-out`,style:{gridTemplateRows:m&&!y?`1fr`:`0fr`},children:(0,J.jsx)(`div`,{className:`overflow-hidden`,children:(0,J.jsx)(_,{tone:`warning`,className:`mt-3`,children:`You must first add a Payment Method before you can enable automatic credit reloads.`})})}),k&&(0,J.jsx)(_,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-update-error`,children:`Failed to save automatic top-ups. Please try again.`}),r.isError&&(0,J.jsx)(_,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-disable-error`,children:`Failed to disable automatic top-ups. Please try again.`}),D&&(0,J.jsx)(an,{initialValues:v?{threshold_usd:on(g.threshold_usd),amount_usd:on(g.amount_usd),monthly_cap_usd:on(g.monthly_cap_usd)}:void 0,submitting:n.isPending,serverErrors:O,onCancel:S,onSave:w}),v&&!g.has_payment_method&&(0,J.jsx)(_,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-no-pm`,children:`You must add a Payment Method.`}),v&&g.has_payment_method&&(0,J.jsx)(`p`,{className:`mt-3 text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-saved-pm`,children:j??`Charged to a saved card`}),(v||D)&&(0,J.jsx)(_,{tone:`info`,className:`mt-4`,children:`If you're too close to your monthly limit, the auto-reload will only top up to that limit.`}),(0,J.jsx)($t,{open:d,confirming:r.isPending,onCancel:C,onConfirm:T})]})}var fn=2e3;function pn(e){let t=parseFloat(e);if(Number.isNaN(t))return`0`;let n=Math.abs(t).toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2}),r=n.endsWith(`.00`)?n.slice(0,-3):n;return t<0?`-${r}`:r}function mn(){let e=c(),{data:t,isLoading:n,isError:r}=l(we()),i=t??null,[a,o]=(0,q.useState)(!1),s=(0,q.useRef)(0),u=(0,q.useRef)(null),d=le({onSuccess:()=>{e.invalidateQueries({queryKey:Le()})},onError:()=>{s.current<3&&(u.current=setTimeout(()=>{d.reset()},fn))}});(0,q.useEffect)(()=>()=>{u.current&&clearTimeout(u.current)},[]);let h=d.mutate;(0,q.useEffect)(()=>{i&&i.settled_balance===`0.00`&&i.pending_compute===`0.00`&&i.effective_balance===`0.00`&&s.current<3&&!d.isPending&&!d.isError&&!d.isSuccess&&(s.current+=1,h({}))},[i,d.isPending,d.isError,d.isSuccess,h]);let g=(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Credit Balance`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`An overview of your credit balance and pending charges.`})]}),(0,J.jsx)(f,{variant:`primary`,onClick:()=>o(!0),disabled:n||!i,"data-testid":`add-credits-button`,children:`Add Credits`})]});return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(m,{padding:`md`,children:[g,n?(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),`Loading billing summary...`]}):r?(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(_,{tone:`error`,children:`Failed to load billing summary. Please try again later.`})}):i?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:`mt-4`,children:(()=>{if(!i)return null;let e=parseFloat(i.effective_balance)<0,t=parseFloat(i.settled_balance)<0,n=parseFloat(i.pending_compute)<0;return(0,J.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-3`,children:[(0,J.jsx)(S,{icon:(0,J.jsx)(de,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`effective-balance`,children:pn(i.effective_balance)}),label:`Balance`,tone:e?`negative`:`default`}),(0,J.jsx)(S,{icon:(0,J.jsx)(O,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`settled-balance`,children:pn(i.settled_balance)}),label:`Settled Balance`,tone:t?`negative`:`default`}),(0,J.jsx)(S,{icon:(0,J.jsx)(it,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`pending-charges`,children:pn(i.pending_compute)}),label:i.is_degraded?`Pending Usage (estimated)`:`Pending Usage`,tone:i.is_degraded?`muted`:n?`negative`:`default`})]})})()}),i.is_degraded&&(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(_,{tone:`warning`,children:`Pending charges could not be calculated. The balance shown may be incomplete.`})})]}):(0,J.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No billing information available.`}),(0,J.jsx)(`div`,{className:`mt-6 border-t border-[var(--border-base)] pt-6`,children:(0,J.jsx)(dn,{})})]}),(0,J.jsx)(Xe,{open:a,onOpenChange:o})]})}var hn=1e3,gn=15e3,_n=3e3,vn=45e3,yn=`billing-portal-return`;function bn(e,t){if(!e)return{kind:`info`,message:`Subscription updated.`};let n=e.cancel_at_period_end||!!e.cancel_at,r=t.cancel_at_period_end||!!t.cancel_at;return!n&&r?{kind:`info`,message:`Pro plan canceled. You'll have access until ${t.cancel_at?kt(t.cancel_at):`the end of your billing period`}.`}:n&&!r?{kind:`success`,message:`Pro plan reactivated.`}:{kind:`info`,message:`Subscription updated.`}}function xn(){let[e]=o(),t=a(),n=c(),r=(0,q.useRef)(null);return(0,q.useEffect)(()=>()=>{r.current!==null&&(clearInterval(r.current),r.current=null)},[]),(0,q.useEffect)(()=>{if(e.get(`portal_return`)!==`true`)return;let i={current:!1},a=Et(),o=Me(),s=Ue(),c=Date.now();async function l(){await n.invalidateQueries({queryKey:s});let e=await n.fetchQuery(o);return{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at}}async function u(){let e=await l();for(;!i.current&&a&&e.cancel_at_period_end===a.cancel_at_period_end&&e.cancel_at===a.cancel_at&&Date.now()-c<gn&&(await new Promise(e=>setTimeout(e,hn)),!i.current);)e=await l();return e}return(async()=>{try{let e=await u();if(i.current)return;let{kind:t,message:n}=bn(a,e);t===`success`?w.success(n,{id:yn}):w.info(n,{id:yn})}catch{if(i.current)return;w.info(`Subscription updated.`,{id:yn})}finally{if(!i.current){Dt(),t(L.settings.billing,{replace:!0});let e=Date.now();r.current!==null&&clearInterval(r.current),r.current=setInterval(()=>{if(Date.now()-e>=vn){r.current!==null&&(clearInterval(r.current),r.current=null);return}l().catch(e=>{console.error(`billing poll error:`,e)})},_n)}}})(),()=>{i.current=!0}},[e,t,n]),null}var Sn=[7,30,90].map(e=>({value:`${e}`,label:`Last ${e} days`}));function Cn(e,t=z()){let{fromDate:n,toDate:r}=nt(e,t);return{from:n,to:r}}function wn(e,t){let n=new Date(e),r=new Date(t);return Math.round((r.getTime()-n.getTime())/864e5)+1}function Tn({from:e,to:t}){let n=wn(e,t);return n===7?7:n===90?90:30}function En({value:e,onChange:t}){let n=Be(),r=(0,q.useMemo)(()=>`${Tn(e)}`,[e]);return(0,J.jsx)(h,{options:Sn,value:r,onChange:e=>{let r=Number(e);t(Cn(r,n),r)},"aria-label":`Date range`})}var Dn={strokeDasharray:`3 3`,stroke:`var(--border-subtle)`,strokeOpacity:.4},On={fontSize:12,fill:`var(--content-tertiary)`},kn={stroke:`var(--border-subtle)`,strokeOpacity:.4},An=[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`,`#8b5cf6`,`#06b6d4`,`#ec4899`,`#84cc16`];function jn({item:e}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-0.5 text-[13px] text-[var(--content-default)]`,children:[(0,J.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,J.jsx)(`span`,{children:e.label}),(0,J.jsx)(`span`,{className:`ml-auto tabular-nums`,children:e.value})]})}function Mn({active:e,payload:t,hoveredKey:n,label:r,labelMap:i,colorMap:a,formatValue:o,showTotal:s,formatLabel:c}){if(!e||!t?.length)return null;let l=t.filter(e=>e.value!=null&&e.dataKey!=null).map(e=>({key:String(e.dataKey),label:i[String(e.dataKey)]??String(e.dataKey),value:o(Number(e.value)),color:a[String(e.dataKey)]??`#6b7280`,numericValue:Number(e.value)})).sort((e,t)=>e.numericValue===t.numericValue?e.label.localeCompare(t.label):t.numericValue-e.numericValue),u=n?l.find(e=>e.key===n):null,d=u?l.filter(e=>e.key!==n):l,f=l.reduce((e,t)=>e+t.numericValue,0);return(0,J.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-overlay)] px-3.5 py-2.5 shadow-[var(--shadow-popover)]`,children:[(0,J.jsx)(`div`,{className:`mb-1.5 text-xs font-medium text-[var(--content-secondary)]`,children:(c??tt)(String(r))}),u&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(jn,{item:u}),d.length>0&&(0,J.jsx)(`div`,{className:`my-1.5 border-t border-[var(--border-subtle)]`})]}),d.map(e=>(0,J.jsx)(jn,{item:e},e.key)),s&&(0,J.jsx)(`div`,{className:`mt-1 flex items-center gap-2 border-t border-[var(--border-subtle)] pt-1.5 text-[13px] font-semibold text-[var(--content-default)]`,children:(0,J.jsxs)(`span`,{children:[`Total: `,o(f)]})})]})}function Nn(e,t){let[n,r]=e,[i,a]=t,o=r-n||1;return e=>i+(e-n)/o*(a-i)}function Pn(e){if(e<=0)return 1;let t=10**Math.floor(Math.log10(e)),n=e/t,r;return r=n<=1?1:n<=2?2:n<=2.5?2.5:n<=5?5:10,r*t}function Fn(e){if(e>=1)return+!Number.isInteger(e);let t=e/10**Math.floor(Math.log10(e)),n=Math.abs(t-2.5)<.01;return Math.ceil(-Math.log10(e))+ +!!n}function In(e,t){let n=Math.max(0,...e),r=t?.tickCount??5;return n===0?t?.integerOnly?r:1:t?.integerOnly?Math.max(1,Math.ceil(n/r))*r:Pn(n/r)*r}function Ln(e,t){if(e===0)return[0];let n=e/t,r=10**(n>=1?0:Math.ceil(-Math.log10(n))+2),i=[];for(let e=0;e<=t;e++)i.push(Math.round(n*e*r)/r);return i}function Rn(e,t,n,r,i){let a=Math.min(i,n/2,r/2);return[`M${e},${t+a}`,`A${a},${a} 0 0 1 ${e+a},${t}`,`H${e+n-a}`,`A${a},${a} 0 0 1 ${e+n},${t+a}`,`V${t+r}`,`H${e}`,`Z`].join(``)}function zn(e,t){if(e<=0)return[];if(t)return e<=3?Array.from({length:e},(e,t)=>t):[0,Math.floor(e/2),e-1];let n=Math.max(1,Math.ceil(e/Math.min(e,12))),r=[];for(let t=0;t<e;t+=n)r.push(t);return r[r.length-1]!==e-1&&r.push(e-1),r}var Bn=40,Vn={fontSize:11,fill:`var(--content-tertiary)`},Hn={runtime_proxy_api:`#3b82f6`,oauth_proxy:`#f59e0b`};function Un(e,t){return Hn[e]??An[t%An.length]??`#6b7280`}function Wn(e,t){let n=new Set,r={};for(let t of e)for(let e of t.groups)n.add(e.group_key),r[e.group_key]=e.group_label;return{data:e.map(e=>{let n={date:e.date};for(let r of e.groups)n[r.group_key]=t===`spend`?parseFloat(r.total_usd):r.event_count;return n}),stackKeys:Array.from(n),labelMap:r}}function Gn({stackKeys:e,labelMap:t}){return(0,J.jsx)(`div`,{className:`flex flex-wrap items-center justify-center gap-x-5 gap-y-1 pt-3 text-body-small-default`,children:e.map((e,n)=>(0,J.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,J.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-sm`,style:{backgroundColor:Un(e,n)}}),(0,J.jsx)(`span`,{className:`text-[var(--content-quiet)]`,children:t[e]??e})]},e))})}var Kn=350,qn={top:8,right:4,bottom:32,left:0},Jn=.2,Yn=5,Xn=12,Zn=200;function Qn({buckets:e,metric:t,onBarClick:n}){let r=R(),i=(0,q.useRef)(null),[a,o]=(0,q.useState)(0);(0,q.useEffect)(()=>{let e=i.current;if(!e)return;let t=new ResizeObserver(([e])=>{e&&o(e.contentRect.width)});return t.observe(e),()=>t.disconnect()},[]);let{data:s,stackKeys:c,labelMap:l}=(0,q.useMemo)(()=>Wn(e,t),[e,t]),u=(0,q.useMemo)(()=>{let e={};for(let t=0;t<c.length;t++)e[c[t]]=Un(c[t],t);return e},[c]),d=(0,q.useCallback)(e=>t===`spend`?`$${e.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`:e.toLocaleString(`en-US`),[t]),[f,p]=(0,q.useState)(null),m=r?Bn:56,h=r?Vn:On,g=qn.left+m,_=Math.max(0,a-g-qn.right),v=qn.top,y=Kn-qn.top-qn.bottom,b=(0,q.useMemo)(()=>s.map(e=>c.reduce((t,n)=>t+(Number(e[n])||0),0)),[s,c]),x=t===`events`,S=(0,q.useMemo)(()=>In(b,{integerOnly:x,tickCount:Yn}),[b,x]),C=(0,q.useMemo)(()=>Ln(S,Yn),[S]),w=(0,q.useCallback)(e=>{if(t===`spend`){if(e===0)return`$0`;let t=S/Yn,n=Math.max(t<1?2:0,Fn(t));return`$${e.toLocaleString(`en-US`,{minimumFractionDigits:n,maximumFractionDigits:n})}`}return e.toLocaleString(`en-US`)},[t,S]),T=(0,q.useMemo)(()=>Nn([0,S],[v+y,v]),[S,v,y]),E=s.length,D=E>0?_/E:0,O=D*(1-Jn),k=(D-O)/2,A=(0,q.useMemo)(()=>zn(E,r),[E,r]),j=c.length===0,M=j?[]:s.map((e,t)=>{let n=g+t*D+k,r=0;return{di:t,x:n,segments:c.map((t,i)=>{let a=Number(e[t])||0,o=r;r+=a;let s=T(r),l=T(o)-s,u=i===c.length-1;return{key:t,val:a,x:n,y:s,h:l,color:Un(t,i),isLast:u}})}}),N=(e,t,n)=>{let r=i.current?.getBoundingClientRect();r&&p({x:e.clientX-r.left,y:e.clientY-r.top,datumIndex:t,hoveredKey:n})},P=()=>p(null),F=e=>{n&&n(e)},I=f?c.filter(e=>(Number(s[f.datumIndex]?.[e])||0)>0).map(e=>({dataKey:e,value:Number(s[f.datumIndex]?.[e])||0})):[],ee={left:f?Math.max(0,Math.min(f.x+Xn,a-Zn)):0,top:f?f.y-Xn:0,visibility:f?`visible`:`hidden`};return(0,J.jsxs)(`div`,{onMouseDown:e=>e.preventDefault(),children:[(0,J.jsx)(`div`,{ref:i,className:`relative w-full`,style:{height:Kn},children:j?(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center text-body-medium-lighter text-[var(--content-faint)]`,children:`No usage data for this period`}):a>0?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`svg`,{width:a,height:Kn,className:`block`,children:[C.map(e=>(0,J.jsx)(`line`,{x1:g,x2:g+_,y1:T(e),y2:T(e),stroke:Dn.stroke,strokeOpacity:Dn.strokeOpacity,strokeDasharray:Dn.strokeDasharray},e)),(0,J.jsx)(`line`,{x1:g,x2:g+_,y1:v+y,y2:v+y,stroke:kn.stroke,strokeOpacity:kn.strokeOpacity}),C.map(e=>(0,J.jsx)(`text`,{x:g-8,y:T(e),textAnchor:`end`,dominantBaseline:`middle`,fontSize:h.fontSize,fill:h.fill,children:w(e)},e)),A.map(e=>{let t=s[e];return t?(0,J.jsx)(`text`,{x:g+e*D+D/2,y:v+y+20,textAnchor:`middle`,fontSize:h.fontSize,fill:h.fill,children:tt(String(t.date))},e):null}),M.map(({di:e,segments:t})=>t.map(t=>{if(t.h<=0)return null;let r=f?.hoveredKey&&f.hoveredKey!==t.key?.4:1,i={key:`${e}-${t.key}`,fill:t.color,opacity:r,cursor:n?`pointer`:void 0,onMouseMove:n=>N(n,e,t.key),onMouseLeave:P,onClick:()=>F(t.key)};return t.isLast?(0,J.jsx)(`path`,{...i,d:Rn(t.x,t.y,O,t.h,3)}):(0,J.jsx)(`rect`,{...i,x:t.x,y:t.y,width:O,height:t.h})}))]}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute z-[1] max-w-[calc(100vw-32px)] -translate-y-full`,style:ee,children:(0,J.jsx)(Mn,{active:!!f,payload:I,hoveredKey:f?.hoveredKey??void 0,label:f?String(s[f.datumIndex]?.date):``,labelMap:l,colorMap:u,formatValue:d})})]}):null}),!j&&(0,J.jsx)(Gn,{stackKeys:c,labelMap:l})]})}function $n(e=z()){return Cn(30,e)}function er(e){if(e)return e.usageSource===`oauth_proxy`?`oauth_provider`:Qe(e.llmDimension??`model`)}function tr(e,t=z()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource,group_by:er(e.drilldown)}:{}}}function nr(e,t=z()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource}:{}}}function rr(e){let t=Be(),n=l(K({query:tr(e,t)})),r=l(Te({query:nr(e,t)}));return{series:n.data,totals:r.data,isLoading:n.isLoading||r.isLoading,isError:n.isError||r.isError}}var ir=[{value:`spend`,label:`Spend ($)`},{value:`events`,label:`Events`}];function ar(e){if(e===void 0)return`—`;let t=parseFloat(e);return Number.isNaN(t)?`$0.00`:`$${t.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`}function or(e){return e===void 0?`—`:e.toLocaleString(`en-US`)}function sr(){let e=Be(),[t,n]=(0,q.useState)(30),[r,i]=(0,q.useState)(()=>$n(e)),a=(0,q.useMemo)(()=>t===null?r:Cn(t,e),[t,r,e]),o=(e,t)=>{n(t),i(e)},[s,c]=(0,q.useState)(null),[l,u]=(0,q.useState)(`spend`),{series:d,totals:f,isLoading:h,isError:g}=rr({dateRange:a,setDateRange:e=>{n(null),i(e)},drilldown:s,setDrilldown:c}),_=s?void 0:e=>{let t={runtime_proxy_api:`runtime_proxy`,oauth_proxy:`oauth_proxy`}[e];t&&c({usageSource:t,...t===`runtime_proxy`?{llmDimension:et}:{}})};return(0,J.jsx)(m,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Credit Usage`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`Overview of your spending habits.`})]}),(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 [&_[role=combobox]]:h-8 [&_[role=radio]]:h-7`,children:[(0,J.jsx)(En,{value:a,onChange:o}),(0,J.jsx)(`div`,{className:`w-44`,children:(0,J.jsx)(x,{items:ir,value:l,onChange:u,ariaLabel:`Chart metric`})})]})]}),(0,J.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-2`,children:[(0,J.jsx)(S,{icon:(0,J.jsx)(de,{className:`h-4 w-4`,"aria-hidden":!0}),value:h?(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):ar(f?.total_usd),label:`Spend`}),(0,J.jsx)(S,{icon:(0,J.jsx)(te,{className:`h-4 w-4`,"aria-hidden":!0}),value:h?(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):or(f?.event_count),label:`Events`})]}),s&&(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,J.jsx)(`div`,{children:(0,J.jsxs)(`button`,{className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)]`,onClick:()=>c(null),children:[(0,J.jsx)(he,{className:`h-3.5 w-3.5`}),(0,J.jsx)(`span`,{children:`Back to all usage`}),(0,J.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:`/`}),(0,J.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:s.usageSource===`runtime_proxy`?`LLM Spend`:`OAuth Spend`})]})}),s.usageSource===`runtime_proxy`&&(0,J.jsx)(`div`,{className:`w-56`,children:(0,J.jsx)(x,{items:$e,value:s.llmDimension??`model`,onChange:e=>c({usageSource:`runtime_proxy`,llmDimension:e}),ariaLabel:`LLM spend dimension`})})]}),h?(0,J.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,J.jsx)(j,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):g?(0,J.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)] text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load usage data.`}):d?(0,J.jsx)(`div`,{className:`rounded-xl bg-[var(--surface-base)] p-3`,children:(0,J.jsx)(Qn,{buckets:d.buckets,metric:l,onBarClick:_})}):null]})})}function cr(){let{data:e}=l(Me()),t=jt((0,q.useMemo)(()=>Ot(e),[e]));if(!e||e.plan_id!==`pro`||e.status===`canceled`||!e.cancel_at_period_end&&!e.cancel_at)return null;let n=At(e);return n?(0,J.jsx)(_,{tone:`info`,title:`Your Pro plan will end on ${kt(n)}.`,actions:(0,J.jsx)(f,{variant:`outlined`,size:`compact`,onClick:()=>t.mutate({}),disabled:t.isPending,leftIcon:t.isPending?(0,J.jsx)(j,{className:`animate-spin`}):void 0,"data-testid":`grace-period-reactivate-button`,children:`Reactivate`}),"data-testid":`grace-period-banner`,children:`You'll keep Pro features until then.`}):null}var lr=t(((e,t)=>{t.exports=`SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED`})),ur=t(((e,t)=>{var n=lr();function r(){}function i(){}i.resetWarningCache=r,t.exports=function(){function e(e,t,r,i,a,o){if(o!==n){var s=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name=`Invariant Violation`,s}}e.isRequired=e;function t(){return e}var a={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return a.PropTypes=a,a}})),X=e(t(((e,t)=>{t.exports=ur()()}))(),1);function dr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function fr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?dr(Object(n),!0).forEach(function(t){mr(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):dr(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function pr(e){"@babel/helpers - typeof";return pr=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},pr(e)}function mr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function hr(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function gr(e,t){if(e==null)return{};var n=hr(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function _r(e,t){return vr(e)||yr(e,t)||br(e,t)||Sr()}function vr(e){if(Array.isArray(e))return e}function yr(e,t){var n=e&&(typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`]);if(n!=null){var r=[],i=!0,a=!1,o,s;try{for(n=n.call(e);!(i=(o=n.next()).done)&&(r.push(o.value),!(t&&r.length===t));i=!0);}catch(e){a=!0,s=e}finally{try{!i&&n.return!=null&&n.return()}finally{if(a)throw s}}return r}}function br(e,t){if(e){if(typeof e==`string`)return xr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return xr(e,t)}}function xr(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Sr(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Z=function(e,t,n){var r=!!n,i=q.useRef(n);q.useEffect(function(){i.current=n},[n]),q.useEffect(function(){if(!r||!e)return function(){};var n=function(){i.current&&i.current.apply(i,arguments)};return e.on(t,n),function(){e.off(t,n)}},[r,t,e,i])},Cr=function(e){var t=q.useRef(e);return q.useEffect(function(){t.current=e},[e]),t.current},wr=function(e){return e!==null&&pr(e)===`object`},Tr=function(e){return wr(e)&&typeof e.then==`function`},Er=function(e){return wr(e)&&typeof e.elements==`function`&&typeof e.createToken==`function`&&typeof e.createPaymentMethod==`function`&&typeof e.confirmCardPayment==`function`},Dr=`[object Object]`,Or=function e(t,n){if(!wr(t)||!wr(n))return t===n;var r=Array.isArray(t);if(r!==Array.isArray(n))return!1;var i=Object.prototype.toString.call(t)===Dr;if(i!==(Object.prototype.toString.call(n)===Dr))return!1;if(!i&&!r)return t===n;var a=Object.keys(t),o=Object.keys(n);if(a.length!==o.length)return!1;for(var s={},c=0;c<a.length;c+=1)s[a[c]]=!0;for(var l=0;l<o.length;l+=1)s[o[l]]=!0;var u=Object.keys(s);if(u.length!==a.length)return!1;var d=t,f=n;return u.every(function(t){return e(d[t],f[t])})},kr=function(e,t,n){return wr(e)?Object.keys(e).reduce(function(r,i){var a=!wr(t)||!Or(e[i],t[i]);return n.includes(i)?(a&&console.warn(`Unsupported prop change: options.${i} is not a mutable property.`),r):a?fr(fr({},r||{}),{},mr({},i,e[i])):r},null):null},Ar="Invalid prop `stripe` supplied to `Elements`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.",jr=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ar;if(e===null||Er(e))return e;throw Error(t)},Mr=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ar;if(Tr(e))return{tag:`async`,stripePromise:Promise.resolve(e).then(function(e){return jr(e,t)})};var n=jr(e,t);return n===null?{tag:`empty`}:{tag:`sync`,stripe:n}},Nr=function(e){!e||!e._registerWrapper||!e.registerAppInfo||(e._registerWrapper({name:`react-stripe-js`,version:`6.4.0`}),e.registerAppInfo({name:`react-stripe-js`,version:`6.4.0`,url:`https://stripe.com/docs/stripe-js/react`}))},Pr=q.createContext(null);Pr.displayName=`ElementsContext`;var Fr=function(e,t){if(!e)throw Error(`Could not find Elements context; You need to wrap the part of your app that ${t} in an <Elements> provider.`);return e},Ir=function(e){var t=e.stripe,n=e.options,r=e.children,i=q.useMemo(function(){return Mr(t)},[t]),a=_r(q.useState(function(){return{stripe:i.tag===`sync`?i.stripe:null,elements:i.tag===`sync`?i.stripe.elements(n):null}}),2),o=a[0],s=a[1];q.useEffect(function(){var e=!0,t=function(e){s(function(t){return t.stripe?t:{stripe:e,elements:e.elements(n)}})};return i.tag===`async`&&!o.stripe?i.stripePromise.then(function(n){n&&e&&t(n)}):i.tag===`sync`&&!o.stripe&&t(i.stripe),function(){e=!1}},[i,o,n]);var c=Cr(t);q.useEffect(function(){c!==null&&c!==t&&console.warn("Unsupported prop change on Elements: You cannot change the `stripe` prop after setting it.")},[c,t]);var l=Cr(n);return q.useEffect(function(){if(o.elements){var e=kr(n,l,[`clientSecret`,`fonts`]);e&&o.elements.update(e)}},[n,l,o.elements]),q.useEffect(function(){Nr(o.stripe)},[o.stripe]),q.createElement(Pr.Provider,{value:o},r)};Ir.propTypes={stripe:X.default.any,options:X.default.object};var Lr=function(e){return Fr(q.useContext(Pr),e)},Rr=function(e){var t=e.children;return t(Lr(`mounts <ElementsConsumer>`))};Rr.propTypes={children:X.default.func.isRequired};var zr=q.createContext(null);zr.displayName=`CheckoutContext`;var Br=function(e){var t=q.useContext(zr),n=q.useContext(Pr);if(t){if(n)throw Error(`You cannot wrap the part of your app that ${e} in both a checkout provider and <Elements> provider.`);return t}else return Fr(n,e)},Vr=[`mode`],Hr=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},Q=function(e,t,n){var r=`${Hr(e)}Element`,i=t?function(e){Br(`mounts <${r}>`);var t=e.id,n=e.className;return q.createElement(`div`,{id:t,className:n})}:function(t){var n=t.id,i=t.className,a=t.options,o=a===void 0?{}:a,s=t.onBlur,c=t.onFocus,l=t.onReady,u=t.onChange,d=t.onEscape,f=t.onClick,p=t.onLoadError,m=t.onLoaderStart,h=t.onNetworksChange,g=t.onConfirm,_=t.onCancel,v=t.onShippingAddressChange,y=t.onShippingRateChange,b=t.onSavedPaymentMethodRemove,x=t.onSavedPaymentMethodUpdate,S=t.onAvailablePaymentMethodsChange,C=Br(`mounts <${r}>`),w=`elements`in C?C.elements:null,T=`checkoutState`in C?C.checkoutState:null,E=T?.type===`success`||T?.type===`loading`?T.sdk:null,D=_r(q.useState(null),2),O=D[0],k=D[1],A=q.useRef(null),j=q.useRef(null);Z(O,`blur`,s),Z(O,`focus`,c),Z(O,`escape`,d),Z(O,`click`,f),Z(O,`loaderror`,p),Z(O,`loaderstart`,m),Z(O,`networkschange`,h),Z(O,`confirm`,g),Z(O,`cancel`,_),Z(O,`shippingaddresschange`,v),Z(O,`shippingratechange`,y),Z(O,`savedpaymentmethodremove`,b),Z(O,`savedpaymentmethodupdate`,x),Z(O,`availablepaymentmethodschange`,S),Z(O,`change`,u);var M;l&&(M=e===`expressCheckout`?l:function(){l(O)}),Z(O,`ready`,M),q.useLayoutEffect(function(){if(A.current===null&&j.current!==null&&(w||E)){var t=null;if(E){var n=E,i=E;switch(e){case`paymentForm`:t=i.createForm(o);break;case`payment`:t=n.createPaymentElement(o);break;case`address`:if(`mode`in o){var a=o.mode,s=gr(o,Vr);if(a===`shipping`)t=n.createShippingAddressElement(s);else if(a===`billing`)t=n.createBillingAddressElement(s);else throw Error(`Invalid options.mode. mode must be 'billing' or 'shipping'.`)}else throw Error(`You must supply options.mode. mode must be 'billing' or 'shipping'.`);break;case`expressCheckout`:t=n.createExpressCheckoutElement(o);break;case`currencySelector`:t=E.createCurrencySelectorElement();break;case`taxId`:t=n.createTaxIdElement(o);break;case`contactDetails`:t=n.createContactDetailsElement();break;default:throw Error(`<${r}> is not supported inside a checkout provider. Use an <Elements> provider instead.`)}}else w&&(t=w.create(e,o));A.current=t,k(t),t&&t.mount(j.current)}},[w,E,o]);var N=Cr(o);return q.useEffect(function(){if(A.current){var e=kr(o,N,[`paymentRequest`]);e&&`update`in A.current&&A.current.update(e)}},[o,N]),q.useLayoutEffect(function(){return function(){if(A.current&&typeof A.current.destroy==`function`)try{A.current.destroy(),A.current=null}catch{}}},[]),q.createElement(`div`,{id:n,className:i,ref:j})};return i.propTypes={id:X.default.string,className:X.default.string,onChange:X.default.func,onBlur:X.default.func,onFocus:X.default.func,onReady:X.default.func,onEscape:X.default.func,onClick:X.default.func,onLoadError:X.default.func,onLoaderStart:X.default.func,onNetworksChange:X.default.func,onConfirm:X.default.func,onCancel:X.default.func,onShippingAddressChange:X.default.func,onShippingRateChange:X.default.func,onSavedPaymentMethodRemove:X.default.func,onSavedPaymentMethodUpdate:X.default.func,onAvailablePaymentMethodsChange:X.default.func,options:X.default.object},i.displayName=r,i.__elementType=e,i},$=typeof window>`u`,Ur=q.createContext(null);Ur.displayName=`EmbeddedCheckoutProviderContext`,Q(`auBankAccount`,$),Q(`card`,$),Q(`cardNumber`,$),Q(`cardExpiry`,$),Q(`cardCvc`,$),Q(`iban`,$),Q(`payment`,$),Q(`expressCheckout`,$),Q(`paymentRequestButton`,$),Q(`linkAuthentication`,$),Q(`contactDetails`,$),Q(`address`,$),Q(`shippingAddress`,$),Q(`paymentMethodMessaging`,$),Q(`taxId`,$),Q(`issuingCardNumberDisplay`,$),Q(`issuingCardCvcDisplay`,$),Q(`issuingCardExpiryDisplay`,$),Q(`issuingCardPinDisplay`,$),Q(`issuingCardCopyButton`,$);var Wr=`dahlia`,Gr=`https://js.stripe.com`,Kr=`${Gr}/${Wr}/stripe.js`,qr=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,Jr=/^https:\/\/js\.stripe\.com\/(v3|[a-z]+)\/stripe\.js(\?.*)?$/,Yr=`loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used`,Xr=function(e){return qr.test(e)||Jr.test(e)},Zr=function(){for(var e=document.querySelectorAll(`script[src^="${Gr}"]`),t=0;t<e.length;t++){var n=e[t];if(Xr(n.src))return n}return null},Qr=function(e){var t=e&&!e.advancedFraudSignals?`?advancedFraudSignals=false`:``,n=document.createElement(`script`);n.src=`${Kr}${t}`;var r=document.head||document.body;if(!r)throw Error(`Expected document.body not to be null. Stripe.js requires a <body> element.`);return r.appendChild(n),n},$r=null,ei=null,ti=null,ni=function(e){return function(t){e(Error(`Failed to load Stripe.js`,{cause:t}))}},ri=function(e,t){return function(){window.Stripe?e(window.Stripe):t(Error(`Stripe.js not available`))}},ii=function(e){return $r===null?($r=new Promise(function(t,n){if(typeof window>`u`||typeof document>`u`){t(null);return}if(window.Stripe&&e&&console.warn(Yr),window.Stripe){t(window.Stripe);return}try{var r=Zr();if(r&&e)console.warn(Yr);else if(!r)r=Qr(e);else if(r&&ti!==null&&ei!==null){var i;r.removeEventListener(`load`,ti),r.removeEventListener(`error`,ei),(i=r.parentNode)==null||i.removeChild(r),r=Qr(e)}ti=ri(t,n),ei=ni(n),r.addEventListener(`load`,ti),r.addEventListener(`error`,ei)}catch(e){n(e);return}}),$r.catch(function(e){return $r=null,Promise.reject(e)})):$r},ai,oi=!1,si=function(){return ai||(ai=ii(null).catch(function(e){return ai=null,Promise.reject(e)}),ai)};Promise.resolve().then(function(){return si()}).catch(function(e){oi||console.warn(e)});function ci(){return typeof document<`u`&&document.documentElement.classList.contains(`dark`)?{theme:`night`}:{theme:`stripe`}}function li({open:e,onClose:t,onSavedOptimistic:n}){let r=u(fe()),{mutate:i,reset:a}=r;return(0,q.useEffect)(()=>{e||a()},[e,i,a]),(0,q.useMemo)(()=>ci(),[r.data?.client_secret??null]),(0,J.jsx)(C.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsxs)(C.Content,{size:`sm`,children:[(0,J.jsx)(C.Header,{children:(0,J.jsx)(C.Title,{children:`Save Payment Method`})}),(0,J.jsx)(C.Body,{className:`min-h-[260px]`,children:(0,J.jsx)(ui,{})})]})})}function ui(){return(0,q.useEffect)(()=>{console.warn(`[AutoTopUpPaymentMethodModal] VITE_STRIPE_PUBLISHABLE_KEY is not set; the payment-method modal cannot mount Stripe Elements.`)},[]),(0,J.jsx)(_,{tone:`error`,children:`Payment method setup is currently unavailable. Please try again later.`})}function di(){return(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Payment Method`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`This is the payment method that will be used for automated credit reloads.`})]})}function fi(){let e=c(),t=l(W()),[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(!1),o=u(oe()),s=async()=>{let t=Date.now(),n=e=>e?.stripe_payment_method_updated_at??null,r=n(e.getQueryData(_e()));try{await e.invalidateQueries({queryKey:_e()})}catch{}for(;Date.now()-t<2e4;){try{let t=await e.fetchQuery(W());if(t.has_payment_method&&n(t)!==r)return}catch{}await new Promise(e=>setTimeout(e,1500))}};if(t.isLoading)return(0,J.jsxs)(m,{padding:`md`,children:[(0,J.jsx)(di,{}),(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),`Loading…`]})]});if(t.isError||!t.data)return(0,J.jsxs)(m,{padding:`md`,children:[(0,J.jsx)(di,{}),(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(_,{tone:`error`,children:`Failed to load payment method.`})})]});let d=t.data,h=Zt(d.payment_method_brand??`card`),v=d.payment_method_last4;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(m,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(di,{}),d.has_payment_method?(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(ae,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,J.jsx)(p,{variant:`body-medium-default`,as:`span`,children:h}),v?(0,J.jsxs)(p,{variant:`body-small-default`,as:`div`,className:`text-[var(--content-tertiary)]`,children:[`Ending in `,v]}):null]}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,J.jsx)(f,{variant:`ghost`,onClick:()=>r(!0),children:`Change`}),(0,J.jsx)(f,{variant:`ghost`,onClick:()=>a(!0),disabled:i||o.isPending,leftIcon:(0,J.jsx)(H,{className:`h-3.5 w-3.5`}),children:`Remove`})]})]}):(0,J.jsx)(f,{className:`self-start`,onClick:()=>r(!0),children:`Add Card`})]})}),(0,J.jsx)(g,{open:i,title:`Remove payment method?`,message:`Removing your payment method will disable automatic top-ups. You can re-enable them after adding a new payment method.`,confirmLabel:o.isPending?`Removing…`:`Remove`,cancelLabel:`Keep`,destructive:!0,onConfirm:()=>{o.isPending||o.mutate({},{onSuccess:()=>{G(e,void 0,e=>e?{...e,enabled:!1,has_payment_method:!1,payment_method_brand:null,payment_method_last4:null}:cn),a(!1)},onError:()=>{w.error(`Failed to remove payment method. Please try again.`),a(!1)}})},onCancel:()=>{o.isPending||a(!1)}}),(0,J.jsx)(li,{open:n,onClose:()=>r(!1),onSavedOptimistic:s})]})}var pi={invoices:[]};function mi(e){switch(e){case`paid`:return`positive`;case`open`:return`warning`;case`uncollectible`:return`negative`;default:return`neutral`}}function hi(e,t){let n=t.toUpperCase();try{let t=new Intl.NumberFormat(void 0,{style:`currency`,currency:n}),r=t.resolvedOptions().maximumFractionDigits??2;return t.format(e/10**r)}catch{return`${(e/100).toFixed(2)} ${n}`}}function gi(e){return Ze(new Date(e*1e3),{alwaysShowYear:!0})}function _i(e){let t=document.createElement(`a`);t.href=e,t.target=`_blank`,t.rel=`noopener noreferrer`,document.body.appendChild(t),t.click(),t.remove()}function vi({open:e,onOpenChange:t}){let[r,a]=(0,q.useState)(!1),o=l({queryKey:Ce(),enabled:e,queryFn:async({signal:e})=>{let{data:t,response:n}=await ne({throwOnError:!1,signal:e});if(n?.status===404)return pi;if(!n?.ok||!t)throw Error(`Failed to load invoices (${n?.status??`network error`})`);return t}}),s=o.data?.invoices??[],c=s.some(e=>e.invoice_pdf!=null);async function u(){a(!0);try{let{data:e,response:t}=await re({throwOnError:!1,parseAs:`blob`});if(!t?.ok||!(e instanceof Blob))throw Error(`Failed to download invoices (${t?.status??`network error`})`);let{saveFile:n}=await i(async()=>{let{saveFile:e}=await import(`./native-file-BgUnMEoC.js`).then(e=>e.t);return{saveFile:e}},__vite__mapDeps([0,1,2,3]));await n(e,`invoices.zip`)}catch(e){n(e,{context:`download_all_invoices`}),w.error(`Failed to download invoices.`)}finally{a(!1)}}return(0,J.jsx)(C.Root,{open:e,onOpenChange:t,children:(0,J.jsxs)(C.Content,{size:`lg`,children:[(0,J.jsxs)(C.Header,{children:[(0,J.jsx)(C.Title,{icon:Ye,children:`Invoices`}),(0,J.jsx)(C.Description,{children:`Your billing history. Open an invoice for full details or download it as a PDF.`})]}),(0,J.jsx)(C.Body,{children:o.isLoading?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-small-default`,children:`Loading invoices...`})]}):o.isError?(0,J.jsx)(_,{tone:`error`,children:`Failed to load invoices.`}):s.length===0?(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`py-6 text-center text-[var(--content-tertiary)]`,"data-testid":`invoices-empty`,children:`No Invoices Found`}):(0,J.jsx)(`ul`,{className:`flex flex-col divide-y divide-[var(--border-base)]`,children:s.map(e=>(0,J.jsxs)(`li`,{className:`flex items-center gap-3 py-3`,"data-testid":`invoice-row`,children:[(0,J.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(p,{variant:`body-medium-default`,as:`span`,className:`text-[var(--content-default)]`,children:e.number??`Invoice`}),e.status&&(0,J.jsx)(v,{tone:mi(e.status),children:e.status})]}),(0,J.jsxs)(p,{variant:`body-small-default`,as:`div`,className:`text-[var(--content-tertiary)]`,children:[gi(e.created),` ·`,` `,hi(e.amount_due,e.currency)]})]}),e.hosted_invoice_url&&(0,J.jsx)(f,{asChild:!0,variant:`ghost`,size:`compact`,leftIcon:(0,J.jsx)(k,{}),children:(0,J.jsx)(`a`,{href:e.hosted_invoice_url,target:`_blank`,rel:`noopener noreferrer`,children:`View`})}),e.invoice_pdf&&(0,J.jsx)(f,{variant:`ghost`,size:`compact`,iconOnly:(0,J.jsx)(se,{}),"aria-label":`Download invoice PDF`,onClick:()=>_i(e.invoice_pdf)})]},e.id))})}),(0,J.jsxs)(C.Footer,{children:[c&&(0,J.jsx)(f,{variant:`outlined`,leftIcon:r?(0,J.jsx)(j,{className:`animate-spin`}):(0,J.jsx)(se,{}),disabled:r,onClick:u,children:`Download all`}),(0,J.jsx)(C.Close,{asChild:!0,children:(0,J.jsx)(f,{variant:`primary`,children:`Done`})})]})]})})}var yi={pro:{icon:E,actionLabel:`Manage`,actionVariant:`outlined`,actionTestId:`plan-card-manage-button`,showsRenewal:!0},base:{icon:ot,actionLabel:`Upgrade to Pro`,actionVariant:`primary`,actionTestId:`plan-card-upgrade-button`,showsRenewal:!1}},bi=yi.base;function xi(){return(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Plan`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`Manage which Vellum plan you're on.`})]})}function Si({onManage:e}){let[t,n]=(0,q.useState)(!1),r=l(Me()),i=l(He());if(r.isLoading||i.isLoading)return(0,J.jsxs)(m,{padding:`md`,children:[(0,J.jsx)(xi,{}),(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(p,{as:`span`,variant:`body-small-default`,children:`Loading plan...`})]})]});let a=r.data,o=i.data?.plans,s=o?.find(e=>e.id===a?.plan_id);if(r.isError||i.isError||!a||!o||!s)return(0,J.jsx)(_,{tone:`error`,children:`Failed to load plan.`});let c=yi[s.id]??bi,u=c.icon,d=s.name??s.id,h=c.showsRenewal&&(a.cancel_at_period_end===!0||!!a.cancel_at),g=a.status===`canceled`,v=At(a),y=c.showsRenewal&&!h&&!g&&a.current_period_end,b=c.showsRenewal&&h&&!g&&v,x=s.id===`pro`?s:void 0,S=a.selected_credit_tier??null,C=S==null?void 0:x?.credit_tiers,w=C?.find(e=>e.tier===S),T=w?`${w.label} (${Y(w.price_cents)})`:C?.length?S:null;return(0,J.jsxs)(m,{padding:`lg`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,J.jsx)(xi,{}),(0,J.jsx)(f,{variant:`outlined`,leftIcon:(0,J.jsx)(Ye,{}),onClick:()=>n(!0),"data-testid":`plan-card-invoices-button`,children:`Invoices`})]}),(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)]`,children:(0,J.jsx)(u,{className:`h-4 w-4 text-[var(--content-default)]`})}),(0,J.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,J.jsx)(p,{variant:`body-medium-default`,as:`div`,"data-testid":`plan-card-name`,children:d}),(0,J.jsx)(p,{variant:`body-small-default`,as:`div`,className:`leading-snug text-[var(--content-tertiary)]`,children:(0,J.jsx)(qt,{features:s.included_features,variant:`inline`})})]}),(0,J.jsx)(f,{variant:c.actionVariant,onClick:e,"data-testid":c.actionTestId,children:c.actionLabel})]}),T&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-credit-bundle`,children:[`Monthly credits: `,T]}),y&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-renews`,children:[`Renews on `,kt(a.current_period_end),`.`]}),b&&(0,J.jsxs)(p,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`plan-card-cancels`,children:[`Your plan ends on `,kt(v),`.`]})]}),(0,J.jsx)(vi,{open:t,onOpenChange:n})]})}var Ci=`settings-referral-panel`;function wi(e){return e.replace(/\.00$/,``)}function Ti(){let{data:e,isLoading:t,isError:n}=l(Ge()),[r,i]=(0,q.useState)(!1),a=(0,q.useCallback)(e=>{navigator.clipboard.writeText(e).then(()=>{i(!0),w.success(`Copied to clipboard!`),setTimeout(()=>i(!1),2e3)})},[]),o=e?`Share Vellum with friends - you'll each earn ${wi(e.referrer_credit_amount)} credits when they sign up, up to ${wi(e.earning_cap)} total.`:`Share Vellum with friends and earn credits for every signup.`;return(0,J.jsx)(m,{padding:`md`,id:Ci,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(p,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Earn Free Credits`}),(0,J.jsx)(p,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:o})]}),t?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),`Loading...`]}):n||!e?(0,J.jsx)(_,{tone:`error`,children:`Failed to load referral information.`}):(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-[200px] flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(de,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`span`,{className:`flex items-baseline gap-1 text-body-medium-default`,children:[(0,J.jsx)(`span`,{children:wi(e.total_earned)}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Credits Earned`})]})]}),(0,J.jsxs)(`div`,{className:`flex min-w-[200px] flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(Ae,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`span`,{className:`flex items-baseline gap-1 text-body-medium-default`,children:[(0,J.jsx)(`span`,{children:e.referred_count}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Friends Referred`})]})]}),(0,J.jsx)(f,{variant:`outlined`,onClick:()=>a(e.referral_url),leftIcon:r?(0,J.jsx)(Ee,{className:`h-3.5 w-3.5`}):(0,J.jsx)(ge,{className:`h-3.5 w-3.5`}),"data-testid":`referral-copy-button`,children:r?`Copied!`:`Copy Share Link`})]})]})})}function Ei({icon:e,label:t,from:n,to:r}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`},children:(0,J.jsx)(e,{className:`h-4 w-4 text-[var(--system-positive-strong)]`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)] line-through`,children:n}),(0,J.jsx)(qe,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:r})]})]})]})}function Di({open:e,onClose:t}){let n=l({...Pe(),enabled:e}),r=l({...Ve(),enabled:e}),i=n.data,a=i?.machine_size||`small`,o=i?.provisioned_storage_gib??null,s=r.data?.max_machine_tier??null,c=r.data?.selected_storage_gib??null,u=M(s),d=u.length>0?u[u.length-1]:a,p=d!==a,m=c!=null&&(o==null||o<c),h=p||m,[g,v]=(0,q.useState)(null),y=je({onSuccess:()=>{w.success(`Resize started. Changes will apply shortly.`,{id:`assistant-resize`}),v(null),t()},onError:e=>{v(ee(e,`Failed to resize assistant. Please try again.`))}}),b=y.isPending,x=n.isLoading||r.isLoading;return(0,J.jsx)(C.Root,{open:e,onOpenChange:e=>{e||(v(null),t())},children:(0,J.jsxs)(C.Content,{size:`sm`,children:[(0,J.jsxs)(C.Header,{children:[(0,J.jsx)(C.Title,{icon:N,children:`Plan Updated`}),(0,J.jsx)(C.Description,{children:`Your new resources are ready. Apply them now to resize your assistant — it will briefly restart.`})]}),(0,J.jsxs)(C.Body,{children:[x?(0,J.jsx)(`div`,{className:`flex items-center justify-center py-6`,children:(0,J.jsx)(j,{className:`h-5 w-5 animate-spin text-[var(--content-tertiary)]`})}):h?(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[p&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Ei,{icon:U,label:`Machine`,from:I[a],to:I[d]}),(0,J.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-lg bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:`CPU`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:F[d].split(`,`)[0].trim()})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-lg bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:`Memory`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:F[d].split(`,`)[1].trim()})]})]})]}),m&&(0,J.jsx)(Ei,{icon:A,label:`Storage`,from:o==null?`—`:`${o} GiB`,to:`${c} GiB`})]}):(0,J.jsx)(_,{tone:`neutral`,children:`Your assistant is already running at the maximum size for your plan.`}),g&&(0,J.jsx)(`div`,{className:`mt-3`,children:(0,J.jsx)(_,{tone:`error`,children:g})})]}),(0,J.jsxs)(C.Footer,{children:[(0,J.jsx)(f,{variant:`ghost`,onClick:()=>{v(null),t()},children:`Do Later`}),(0,J.jsx)(f,{disabled:x||!h||b||!i?.id,leftIcon:b?(0,J.jsx)(j,{className:`animate-spin`}):void 0,onClick:()=>{if(!i?.id)return;v(null);let e={};p&&(e.machine_size=d),m&&c!=null&&(e.storage_gib=c),y.mutate({path:{id:i.id},body:e})},children:g?`Retry`:`Apply & Restart`})]})]})})}function Oi(){let[e]=o(),t=a(),n=c();return(0,q.useEffect)(()=>{let r=e.get(`billing_status`);r&&(r===`success`?(w.success(`Payment received! Your credit balance will update shortly.`,{id:`billing-status`}),n.invalidateQueries({queryKey:we().queryKey})):r===`cancel`&&w.info(`Checkout was cancelled. No credits were added.`,{id:`billing-status`}),t(L.settings.billing,{replace:!0}))},[e,t,n]),null}function ki(){let e=pe({platformHostedOnly:!0}),t=pe(),n=ie(),r=ce(),[i,a]=o(),[c,l]=(0,q.useState)(!1),u=(0,q.useCallback)(()=>l(!0),[]),d=(0,q.useCallback)(()=>l(!1),[]),[f,p]=(0,q.useState)(!1),m=(0,q.useCallback)(()=>p(!0),[]);(0,q.useEffect)(()=>{i.has(`adjust_plan`)&&(l(!0),a(e=>{let t=new URLSearchParams(e);return t.delete(`adjust_plan`),t},{replace:!0}))},[i,a]);let h=i.has(`session_id`),g=(0,q.useCallback)(()=>{a(e=>{let t=new URLSearchParams(e);return t.delete(`session_id`),t},{replace:!0})},[a]);if(t===`gated`)return(0,J.jsx)(s,{replace:!0,to:L.settings.general});if(t===`disabled`)return(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsx)(_,{tone:`info`,children:`Log in to the Vellum platform to manage billing and usage.`})});if(r)return(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,J.jsx)(j,{className:`h-4 w-4 animate-spin`}),`Loading billing…`]})});let v=n;return!n&&e!==`gated`?(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsx)(_,{tone:`warning`,children:`Billing isn't available for the current assistant state.`})}):(0,J.jsxs)(`div`,{className:`space-y-4`,children:[(0,J.jsxs)(q.Suspense,{fallback:null,children:[(0,J.jsx)(Oi,{}),(0,J.jsx)(xn,{})]}),v&&(0,J.jsx)(cr,{}),v&&(0,J.jsx)(Si,{onManage:u}),v&&(0,J.jsx)(Yt,{open:c,onClose:d,onTierUpgraded:m}),(0,J.jsx)(fi,{}),(0,J.jsx)(q.Suspense,{fallback:null,children:(0,J.jsx)(mn,{})}),(0,J.jsx)(Ti,{}),(0,J.jsx)(sr,{}),v&&(0,J.jsx)(Ct,{open:h,onClose:g}),v&&(0,J.jsx)(Di,{open:f,onClose:()=>p(!1)})]})}export{ki as BillingPage};
|