@vellumai/web 0.12.1-dev.202609141913.5e16607 → 0.12.1-staging.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/a2a-invite-DOlvPnsj.js +1 -0
- package/dist/assets/about-page-CAHLo_IM.js +1 -0
- package/dist/assets/account-page-CR9m-bbG.js +1 -0
- package/dist/assets/account-shell-CfKMHHXQ.js +1 -0
- package/dist/assets/acp-run-detail-panel-BBEBzZSw.js +3 -0
- package/dist/assets/activation-list-route-WkR2XN13.js +1 -0
- package/dist/assets/activation-tasks-BJZEpFIy.js +1 -0
- package/dist/assets/activation-tasks-Bk658x3i.js +1 -0
- package/dist/assets/activation-tasks-K8Swziqu.js +1 -0
- package/dist/assets/activation-tasks-wz108byj.js +1 -0
- package/dist/assets/activity-redirect-page-D5jSj1d4.js +1 -0
- package/dist/assets/activity-steps-panel-C91mUEgr.js +1 -0
- package/dist/assets/add-credits-modal-BtOBq6__.js +1 -0
- package/dist/assets/ai-page-BjjHb_KN.js +1 -0
- package/dist/assets/android-billing-handoff-C_65hbFm.js +1 -0
- package/dist/assets/api-key-screen-DAWDc1tS.js +1 -0
- package/dist/assets/app-info--nQmKvGC.js +1 -0
- package/dist/assets/archive-redirect-page-BlzqQ5_P.js +1 -0
- package/dist/assets/assistant-status-panel-CXq4xqak.js +1 -0
- package/dist/assets/auth-welcome-screen-YynWXFYd.js +1 -0
- package/dist/assets/avatar-random-T8euI8sG.js +2 -0
- package/dist/assets/await-org-header-settled-DzQQ7QxL.js +1 -0
- package/dist/assets/background-task-detail-panel-DGc2RnBm.js +1 -0
- package/dist/assets/billing-page-eSvbiGuR.js +3 -0
- package/dist/assets/billing-redirect-page-BAtaOafH.js +1 -0
- package/dist/assets/bookmarks-page-UeYoXk3X.js +1 -0
- package/dist/assets/bundle-confirm-page-CrNXSEwP.js +1 -0
- package/dist/assets/channel-transcript-panel-BdOlGjnN.js +1 -0
- package/dist/assets/{channels-DefeX4nl.js → channels-BCLfuOUD.js} +1 -1
- package/dist/assets/{channels-Bi39gIy9.js → channels-BIVOatvA.js} +1 -1
- package/dist/assets/{channels-C2ZpGHgj.js → channels-C9mCB0CJ.js} +1 -1
- package/dist/assets/{channels-B8kzdUXN.js → channels-CDirkQc7.js} +1 -1
- package/dist/assets/channels-page-route-CTDjdZZV.js +1 -0
- package/dist/assets/chat-BOrB9oHu.js +3 -0
- package/dist/assets/chat-C1MeXG-2.js +3 -0
- package/dist/assets/chat-CWzsWu23.js +3 -0
- package/dist/assets/chat-eAA7-NU8.js +3 -0
- package/dist/assets/chat-info-panel-CIcb19Yz.js +1 -0
- package/dist/assets/checkout-continuation-DCEWSKgL.js +1 -0
- package/dist/assets/checkout-page-CjZEKzRZ.js +1 -0
- package/dist/assets/checkout-return-target-RlOhwSvu.js +1 -0
- package/dist/assets/command-palette-D2wqOJue.js +1 -0
- package/dist/assets/command-palette-window-page-Bg2nuHq5.js +1 -0
- package/dist/assets/common-BztqCOmk.js +1 -0
- package/dist/assets/common-DTjszpuj.js +1 -0
- package/dist/assets/common-DmcKuTke.js +1 -0
- package/dist/assets/common-Hpbr_vpQ.js +1 -0
- package/dist/assets/community-page-BLhzGTuy.js +1 -0
- package/dist/assets/companion-accent-gsn9VuVB.js +1 -0
- package/dist/assets/companion-layout-BES0UfBy.js +1 -0
- package/dist/assets/companion-surface-page-kl9ej_zQ.js +1 -0
- package/dist/assets/companion-watch-frame-page-CX0lYK6Y.js +1 -0
- package/dist/assets/connect-page-8LGXfYwr.js +1 -0
- package/dist/assets/consent-controls-BRXg7A0b.js +1 -0
- package/dist/assets/contacts-gateway-Cm83W9Sw.js +1 -0
- package/dist/assets/contacts-page-route-YdSPP6ct.js +1 -0
- package/dist/assets/credential-entry-page-B0E7m9Ka.js +1 -0
- package/dist/assets/credentials-page-KL8TseTX.js +1 -0
- package/dist/assets/{csv-preview-CmzA2Sku.js → csv-preview-DDWd92MO.js} +2 -2
- package/dist/assets/danger-zone-redirect-page-CeG41nRv.js +1 -0
- package/dist/assets/debug-page-Cq9veQE7.js +4 -0
- package/dist/assets/deploy-dialogs-DiKerPg3.js +1 -0
- package/dist/assets/detail-card-B0OGBJ1-.js +1 -0
- package/dist/assets/detail-panel-stop-button-B6n2CDuJ.js +1 -0
- package/dist/assets/detail-primitives-MMaUWytS.js +1 -0
- package/dist/assets/developer-page--7O3Jeje.js +1 -0
- package/dist/assets/devices-redirect-page-De4zPGBG.js +1 -0
- package/dist/assets/dictation-overlay-page-BebL8Sje.js +1 -0
- package/dist/assets/{diff-rows-C9D5N1_n.js → diff-rows-6HtO6KNr.js} +1 -1
- package/dist/assets/document-viewer-page-R_dKhaWy.js +1 -0
- package/dist/assets/{ellipsis-vertical-B6wLKZyo.js → ellipsis-vertical-BMOhP0Zs.js} +1 -1
- package/dist/assets/emails-page-CqVlJ1LT.js +1 -0
- package/dist/assets/environment-store-yY-PFyNj.js +1 -0
- package/dist/assets/esm-CEQ5-BPY.js +2 -0
- package/dist/assets/esm-CZUymCSO.js +1 -0
- package/dist/assets/{esm-7emwNGEt.js → esm-DUr8Sd7e.js} +1 -1
- package/dist/assets/esm-DyNBzk7k.js +2 -0
- package/dist/assets/esm-V26rZBqv.js +2 -0
- package/dist/assets/esm-VDGp8N8o.js +2 -0
- package/dist/assets/esm-bBYOtNIe.js +2 -0
- package/dist/assets/{esm-DSLQuuS4.js → esm-hPUUgGy5.js} +2 -2
- package/dist/assets/{esm-0D0HQk-3.js → esm-krw2tVOJ.js} +1 -1
- package/dist/assets/{file-diff-view-CAhMJUai.js → file-diff-view-EiQSECOw.js} +1 -1
- package/dist/assets/file-editor-B_RqvjQp.js +1 -0
- package/dist/assets/general-page-DZ2OQRcR.js +2 -0
- package/dist/assets/hatching-screen-BsUtOe4T.js +1 -0
- package/dist/assets/hosting-screen-CnZGwkfa.js +1 -0
- package/dist/assets/{icons-bnwMda87.js → icons-xHdc0dPY.js} +1 -1
- package/dist/assets/identity-page-route-DojUio39.js +7 -0
- package/dist/assets/index-CleA12ha.js +379 -0
- package/dist/assets/index-_KUyDosG.css +2 -0
- package/dist/assets/inspect-page-BE_JG1N4.js +9 -0
- package/dist/assets/integrations-page-KDXF3d-g.js +1 -0
- package/dist/assets/intelligence-layout-STvbMPLB.js +1 -0
- package/dist/assets/intelligence-layout-slots-store-DMLOaMGU.js +1 -0
- package/dist/assets/keyboard-shortcuts-redirect-page-DXaUnoFR.js +1 -0
- package/dist/assets/{latest-assistant-text-B4u2AiE9.js → latest-assistant-text-mcgHfCbd.js} +1 -1
- package/dist/assets/library-detail-page-CCmvUHtD.js +1 -0
- package/dist/assets/library-page-DlTszOAL.js +1 -0
- package/dist/assets/login-page-CUNLD9gj.js +1 -0
- package/dist/assets/logout-page-DcyTUY-b.js +1 -0
- package/dist/assets/logs-layout-BqkRgpwq.js +1 -0
- package/dist/assets/markdown-preview-CG-FNmRz.js +1 -0
- package/dist/assets/media-preview-CCq9FQiT.js +1 -0
- package/dist/assets/memory-page-route-BHUAp-C2.js +2 -0
- package/dist/assets/memory-router-playground-page-Dt9vB83b.js +1 -0
- package/dist/assets/message-files-panel-DpvaRorj.js +1 -0
- package/dist/assets/metric-card-CgEc3VST.js +1 -0
- package/dist/assets/notifications-page-kX-DNd3J.js +1 -0
- package/dist/assets/{oauth-complete-page-Dsm4C9hD.js → oauth-complete-page-_act6krk.js} +2 -2
- package/dist/assets/{oauth-popup-complete-page-BupxRxrP.js → oauth-popup-complete-page-D9d5IH9z.js} +2 -2
- package/dist/assets/onboarding-8Qvub-HF.js +1 -0
- package/dist/assets/onboarding-BqMOEnu1.js +1 -0
- package/dist/assets/onboarding-Do0E1QsF.js +1 -0
- package/dist/assets/onboarding-ml_qpGn-.js +1 -0
- package/dist/assets/pairing-page-DJRUbeSZ.js +1 -0
- package/dist/assets/password-reset-page-Cegloo1P.js +1 -0
- package/dist/assets/{pdf-DE7Y-tpX.js → pdf-B2KVp4ZG.js} +1 -1
- package/dist/assets/pdf-file-preview-3kkKGH7o.js +1 -0
- package/dist/assets/{peeking-eyes-CkFfgeKP.js → peeking-eyes-DNBQeifP.js} +1 -1
- package/dist/assets/personality-page-CmZHiyRo.js +1 -0
- package/dist/assets/personality-page-DjPVfIFL.js +1 -0
- package/dist/assets/personality-sliders-D0p9kgNx.js +1 -0
- package/dist/assets/plans-page-CCY1BUZx.js +1 -0
- package/dist/assets/platform-loopback-page-vdNjdoVw.js +1 -0
- package/dist/assets/plugin-detail-page-Co0YswmF.js +1 -0
- package/dist/assets/plugins-page-DxCCY6yP.js +1 -0
- package/dist/assets/preview-error-DyczP1Cl.js +1 -0
- package/dist/assets/privacy-page-nfyEw6V_.js +1 -0
- package/dist/assets/privacy-screen-CSYkxRBc.js +1 -0
- package/dist/assets/provider-callback-page-Cms4b36-.js +1 -0
- package/dist/assets/provider-key-B2zz48-r.js +1 -0
- package/dist/assets/provider-signup-page-nO1KOWei.js +1 -0
- package/dist/assets/{provisioning-targets-Fq1qSaT0.js → provisioning-targets-BZJdjS_6.js} +1 -1
- package/dist/assets/quick-input-page-CtMMOIj7.js +1 -0
- package/dist/assets/{react-B9IgSVeK.js → react-DPM_L_aA.js} +1 -1
- package/dist/assets/{rehype-katex-Pq8AToQl.js → rehype-katex-qwWAif3X.js} +1 -1
- package/dist/assets/research-mock-page-TkBJ2Xzt.js +1 -0
- package/dist/assets/research-onboarding-route-BBvprgLG.js +50 -0
- package/dist/assets/review-terms-screen-CdlPmf8I.js +1 -0
- package/dist/assets/schedules-BH4Qj3v_.js +1 -0
- package/dist/assets/schedules-page-BwWZDVOO.js +1 -0
- package/dist/assets/security-redirect-page-BflZPXbv.js +1 -0
- package/dist/assets/select-assistant-screen-s2j8iyBA.js +1 -0
- package/dist/assets/self-hosted-servers-BbfoTPnN.js +1 -0
- package/dist/assets/service-form-controls-B4TOUC0S.js +1 -0
- package/dist/assets/setting-row-DqAfZdv2.js +1 -0
- package/dist/assets/settings-C63GjmJb.js +3 -0
- package/dist/assets/settings-CrvJCEjH.js +3 -0
- package/dist/assets/settings-D4bcxNIG.js +3 -0
- package/dist/assets/settings-Dn888InQ.js +3 -0
- package/dist/assets/settings-divider-CM41jU8r.js +1 -0
- package/dist/assets/settings-layout-dXTKjyLn.js +1 -0
- package/dist/assets/share-feedback-modal-Bf_f-1Md.js +2 -0
- package/dist/assets/sidebar-tree-Bk7IUERw.js +1 -0
- package/dist/assets/signup-page-C-3fDL0D.js +1 -0
- package/dist/assets/signup-shell-DqL_hfoj.js +1 -0
- package/dist/assets/skill-detail-page-CVduyZVJ.js +2 -0
- package/dist/assets/skill-detail-panel-BxZAnZbg.js +1 -0
- package/dist/assets/skill-icon-FPL5xeRb.js +1 -0
- package/dist/assets/skill-removal-dialog-D3tHR3Ld.js +1 -0
- package/dist/assets/skills-page-C-0iE9BV.js +1 -0
- package/dist/assets/sounds-page-_EVUXllQ.js +1 -0
- package/dist/assets/start-screen-yHd9KDX3.js +1 -0
- package/dist/assets/{status-badge-pill-C-4IXe4t.js → status-badge-pill-DsYKTPMw.js} +1 -1
- package/dist/assets/stt-language-picker-modal-BUc9OzaG.js +1 -0
- package/dist/assets/subagent-detail-panel-rXvn591h.js +1 -0
- package/dist/assets/superpowers-page-BZt2aSZX.js +1 -0
- package/dist/assets/system-events-page-C8lfUiSV.js +1 -0
- package/dist/assets/system-events-redirect-page-8LxoBVmn.js +1 -0
- package/dist/assets/text-preview-DW6f8CZi.js +1 -0
- package/dist/assets/theme-stage-page-DzWIjgFX.js +1 -0
- package/dist/assets/{tiptap-document-editor-BHRei95S.js → tiptap-document-editor-7zjNquKo.js} +3 -3
- package/dist/assets/tool-detail-panel-UBD8L_LV.js +15 -0
- package/dist/assets/trait-cycle-row-CSwys30K.js +1 -0
- package/dist/assets/upgrade-cancel-page-o-OcUT1B.js +1 -0
- package/dist/assets/upgrade-success-page-D2BicwBj.js +1 -0
- package/dist/assets/usage-redirect-page-BmlaczMS.js +1 -0
- package/dist/assets/use-app-delete-B8jp3vIE.js +1 -0
- package/dist/assets/use-assistant-identity-details-BRqAQ7pS.js +1 -0
- package/dist/assets/use-checkout-dismiss-refresh-DX3GymbX.js +1 -0
- package/dist/assets/use-edge-swipe-back-CbTl-FwD.js +2 -0
- package/dist/assets/use-hotkey-recorder-BKNmxbXj.js +1 -0
- package/dist/assets/use-invite-link-dialog-Daa3jhkP.js +1 -0
- package/dist/assets/use-platform-assistant-id-Dj8c4xX-.js +1 -0
- package/dist/assets/use-return-to-short-circuit-DusBrJ_h.js +1 -0
- package/dist/assets/use-side-list-room-3ENOwQ0t.js +1 -0
- package/dist/assets/use-skill-actions-BjY9oa7a.js +1 -0
- package/dist/assets/use-skill-detail-files-kPuMdyDL.js +1 -0
- package/dist/assets/use-supports-credentials-settings-BuLaPijC.js +1 -0
- package/dist/assets/use-transcript-message-by-id-DOMa4nxw.js +1 -0
- package/dist/assets/{use-truncated-blob-text-BvKowx9y.js → use-truncated-blob-text-B50a7Mkr.js} +1 -1
- package/dist/assets/vendor-C_e0Rl2s.js +127 -0
- package/dist/assets/voice-page-DuWSfI5B.js +1 -0
- package/dist/assets/wake-detail-panel-D34xuHov.js +1 -0
- package/dist/assets/weather-forecast-display-D1iB5UK2.js +1 -0
- package/dist/assets/{web-pcv3SE6H.js → web-9D8isJOk.js} +1 -1
- package/dist/assets/{web-Ch4iwSd0.js → web-BkmK5STh.js} +1 -1
- package/dist/assets/{web-CReFVx_5.js → web-BpX3Y-_s.js} +1 -1
- package/dist/assets/{web-DJa5kSp3.js → web-Bulr9QQn.js} +1 -1
- package/dist/assets/{web-CWvje1ge.js → web-C_Ui7gb5.js} +1 -1
- package/dist/assets/{web-GuMnxWrH.js → web-CaauzE8c.js} +1 -1
- package/dist/assets/{web-CZTh_3w8.js → web-CeDxhWFH.js} +1 -1
- package/dist/assets/{web-CxRjM6kI.js → web-y4PoIMXz.js} +1 -1
- package/dist/assets/{web-D0WCsqmf.js → web-ykYrL9yl.js} +1 -1
- package/dist/assets/welcome-screen-Dw3nj99H.js +1 -0
- package/dist/assets/workflow-detail-panel-BbS4Uq2Q.js +1 -0
- package/dist/assets/workspace-page-CmL3AaIw.js +1 -0
- package/dist/index.html +6 -6
- package/package.json +1 -1
- package/dist/THIRD-PARTY-LICENSES.md +0 -486
- package/dist/assets/a2a-invite-Cj6bQz4C.js +0 -1
- package/dist/assets/about-page-BJVPM7Dq.js +0 -1
- package/dist/assets/account-page-CIJjk5V4.js +0 -1
- package/dist/assets/account-shell-sZRHf1fP.js +0 -1
- package/dist/assets/acp-run-detail-panel-Ds9ArOpr.js +0 -3
- package/dist/assets/activation-8ZVZnR-0.js +0 -1
- package/dist/assets/activation-OeMyvxh9.js +0 -1
- package/dist/assets/activation-list-route-B30qKxxA.js +0 -1
- package/dist/assets/activation-tasks-BWARjjIt.js +0 -1
- package/dist/assets/activation-tasks-C9XydhkJ.js +0 -1
- package/dist/assets/activity-redirect-page-DKNwRtHD.js +0 -1
- package/dist/assets/activity-steps-panel-CJx0BfwS.js +0 -1
- package/dist/assets/add-credits-modal-CI7VP806.js +0 -1
- package/dist/assets/add-credits-modal-hieez1oi.js +0 -1
- package/dist/assets/ai-page-COCv3iDh.js +0 -1
- package/dist/assets/android-billing-handoff-Do_yAgW0.js +0 -1
- package/dist/assets/api-key-screen-DfiREoeU.js +0 -1
- package/dist/assets/app-B7QR62iI.css +0 -2
- package/dist/assets/app-DxMy0jwj.js +0 -388
- package/dist/assets/app-info-Dgv7SkZ8.js +0 -1
- package/dist/assets/archive-redirect-page-DMWMCMyY.js +0 -1
- package/dist/assets/assistant-status-panel-CLZ_RbJF.js +0 -1
- package/dist/assets/auth-store-DNmjNVVJ.js +0 -1
- package/dist/assets/auth-welcome-screen-B0dWyC6l.js +0 -1
- package/dist/assets/avatar-bundled-components-D02Cc9qY.js +0 -1
- package/dist/assets/avatar-random-BUg7IWMp.js +0 -2
- package/dist/assets/await-org-header-settled-B94pxaLq.js +0 -1
- package/dist/assets/background-task-detail-panel-BW1meZPo.js +0 -1
- package/dist/assets/billing-page-xuhzUOlJ.js +0 -3
- package/dist/assets/billing-redirect-page-CnXiJrt4.js +0 -1
- package/dist/assets/bookmarks-page-BQuBfJ7j.js +0 -1
- package/dist/assets/bundle-confirm-page-kq5S_bwo.js +0 -1
- package/dist/assets/channel-transcript-panel-BJPFnqaR.js +0 -1
- package/dist/assets/channels-page-route-CfYjH2LF.js +0 -1
- package/dist/assets/chat-BOA6lhRW.js +0 -3
- package/dist/assets/chat-C5PndB-4.js +0 -3
- package/dist/assets/chat-D73b777k.js +0 -3
- package/dist/assets/chat-acUsZfEJ.js +0 -3
- package/dist/assets/chat-info-panel-D0qexb8N.js +0 -1
- package/dist/assets/checkout-continuation-Dee-mMCT.js +0 -1
- package/dist/assets/checkout-page-0c4KiLCm.js +0 -1
- package/dist/assets/checkout-return-target-B0GyRUat.js +0 -1
- package/dist/assets/command-palette-CuYxot_s.js +0 -1
- package/dist/assets/command-palette-Cx7yIXQ_.js +0 -1
- package/dist/assets/command-palette-window-page-C1nSbisX.js +0 -1
- package/dist/assets/common-CU_cWDKH.js +0 -1
- package/dist/assets/common-DAFbhaQI.js +0 -1
- package/dist/assets/common-De0KxGrP.js +0 -1
- package/dist/assets/common-M7OkUHXJ.js +0 -1
- package/dist/assets/community-page-BeXM3LH-.js +0 -1
- package/dist/assets/companion-accent-eO1EGNi2.js +0 -1
- package/dist/assets/companion-dock-zones-page-DsacQUQP.js +0 -1
- package/dist/assets/companion-layout-35k06GTE.js +0 -1
- package/dist/assets/companion-surface-page-iIN786Vv.js +0 -1
- package/dist/assets/companion-watch-frame-page-dabAlX34.js +0 -1
- package/dist/assets/connect-page-B60uN-ZC.js +0 -1
- package/dist/assets/consent-controls-nPLL-Vy1.js +0 -1
- package/dist/assets/contacts-gateway-BvTzBPQl.js +0 -1
- package/dist/assets/contacts-page-route-DzndMePQ.js +0 -1
- package/dist/assets/credential-entry-page-Dg7Iprxn.js +0 -1
- package/dist/assets/credentials-page-i7J7SwsS.js +0 -1
- package/dist/assets/danger-zone-redirect-page-B5Tl0pgh.js +0 -1
- package/dist/assets/debug-page-GKgG-G0m.js +0 -4
- package/dist/assets/deploy-dialogs-BKnTLmik.js +0 -1
- package/dist/assets/deploy-dialogs-DmW-zLPB.js +0 -1
- package/dist/assets/desktop-panel-DUYr64PK.js +0 -2
- package/dist/assets/desktop-viewer-C0e921iW.js +0 -5
- package/dist/assets/detail-card-Dmr5t1GN.js +0 -1
- package/dist/assets/detail-panel-stop-button-BLVFDcnl.js +0 -1
- package/dist/assets/detail-primitives-B5ncGbHT.js +0 -1
- package/dist/assets/developer-page-Dbq0603s.js +0 -1
- package/dist/assets/devices-redirect-page-C_y8UcR5.js +0 -1
- package/dist/assets/dictation-overlay-page-C1kV226n.js +0 -1
- package/dist/assets/document-load-BnrvE-C_.js +0 -1
- package/dist/assets/document-load-XHdVVQyo.js +0 -1
- package/dist/assets/document-viewer-page-BtIzoS1f.js +0 -1
- package/dist/assets/emails-page-BmjIvU4y.js +0 -1
- package/dist/assets/environment-store-CB5ErBSJ.js +0 -1
- package/dist/assets/esm-BVQ_jtbz.js +0 -2
- package/dist/assets/esm-BesCga2g.js +0 -2
- package/dist/assets/esm-BkkZ-BxU.js +0 -2
- package/dist/assets/esm-C2kPDS2g.js +0 -1
- package/dist/assets/esm-CmGGzE0B.js +0 -2
- package/dist/assets/esm-DVrrIqJO.js +0 -1
- package/dist/assets/esm-DrB-jPnI.js +0 -2
- package/dist/assets/file-editor-CwN2HFdU.js +0 -1
- package/dist/assets/general-page-C2U-DG-m.js +0 -2
- package/dist/assets/hatching-screen-BU8TigBJ.js +0 -1
- package/dist/assets/hosting-screen-D8ZIsJoR.js +0 -1
- package/dist/assets/identity-page-route-CR_lDoMi.js +0 -7
- package/dist/assets/inspect-page-CJpOMRNp.js +0 -9
- package/dist/assets/integrations-page-CjcidO1m.js +0 -1
- package/dist/assets/intelligence-layout-C3RKPmg0.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-Cc8q31-1.js +0 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-BTaXxkyv.js +0 -1
- package/dist/assets/library-detail-page-vjxO6rCt.js +0 -1
- package/dist/assets/library-page-DMca0L7D.js +0 -1
- package/dist/assets/local-mode-Di1vm0TR.js +0 -1
- package/dist/assets/login-page-Bz2m5Zih.js +0 -1
- package/dist/assets/logout-page-B8hgZoc9.js +0 -1
- package/dist/assets/logs-layout-DUysuL3y.js +0 -1
- package/dist/assets/markdown-preview-DyR2BqGw.js +0 -1
- package/dist/assets/media-preview-Em8syzWu.js +0 -1
- package/dist/assets/memory-page-route-DzOOlirE.js +0 -2
- package/dist/assets/memory-router-playground-page-DqQgUpVI.js +0 -1
- package/dist/assets/message-files-panel-CamSxR4B.js +0 -1
- package/dist/assets/metric-card-BuuwtBVI.js +0 -1
- package/dist/assets/native-attachment-pickers-Co-6a_p5.js +0 -1
- package/dist/assets/native-file-DVLbtjDu.js +0 -1
- package/dist/assets/notifications-page-D8viomi2.js +0 -1
- package/dist/assets/onboarding-BAEpbCWP.js +0 -1
- package/dist/assets/onboarding-BxqFVz4M.js +0 -1
- package/dist/assets/onboarding-CBRfoOsS.js +0 -1
- package/dist/assets/onboarding-RwleUdoe.js +0 -1
- package/dist/assets/paired-platform-identity-CblGKBB2.js +0 -1
- package/dist/assets/pairing-page-BbRSlVwS.js +0 -1
- package/dist/assets/password-reset-page-1lN0ZVQi.js +0 -1
- package/dist/assets/pdf-file-preview-DCb3ZrgB.js +0 -1
- package/dist/assets/personality-page-CRhoMs2K.js +0 -1
- package/dist/assets/personality-page-CufOsQwH.js +0 -1
- package/dist/assets/personality-sliders-wbkdQqh4.js +0 -1
- package/dist/assets/plans-page-DmlUsSWE.js +0 -1
- package/dist/assets/platform-loopback-page-BzVt_Muk.js +0 -1
- package/dist/assets/plugin-detail-page-CrjPj9Ny.js +0 -1
- package/dist/assets/plugins-page-DaOlK_74.js +0 -1
- package/dist/assets/plugins-surface-DDTktJOZ.js +0 -1
- package/dist/assets/preview-error-vNKC-_Ku.js +0 -1
- package/dist/assets/privacy-page-Dk3CbfNJ.js +0 -1
- package/dist/assets/privacy-screen-DimQtrs8.js +0 -1
- package/dist/assets/provider-callback-page-RbApw_Fy.js +0 -1
- package/dist/assets/provider-key-DpPX7wVh.js +0 -1
- package/dist/assets/provider-signup-page-CJaJXoJf.js +0 -1
- package/dist/assets/quick-input-page-B3HuqceO.js +0 -1
- package/dist/assets/research-mock-page-DMCjkxzO.js +0 -1
- package/dist/assets/research-onboarding-route-BbKHByvB.js +0 -50
- package/dist/assets/review-terms-screen-Bd-HjWsQ.js +0 -1
- package/dist/assets/routes-CipnZZkn.js +0 -1
- package/dist/assets/schedules-l9yD8l1M.js +0 -1
- package/dist/assets/schedules-page-Djqt9Vja.js +0 -1
- package/dist/assets/security-redirect-page-DjXWbz9T.js +0 -1
- package/dist/assets/select-assistant-screen-C-FSTaZC.js +0 -1
- package/dist/assets/self-hosted-servers-B3u9o3gv.js +0 -1
- package/dist/assets/service-form-controls-DK08HJHP.js +0 -1
- package/dist/assets/setting-row-DCNMIFOK.js +0 -1
- package/dist/assets/settings-9eIdyR9o.js +0 -3
- package/dist/assets/settings-BzYC7mWR.js +0 -3
- package/dist/assets/settings-D4n14j3K.js +0 -3
- package/dist/assets/settings-Dyq3Uhvl.js +0 -3
- package/dist/assets/settings-divider-CrsTYYA8.js +0 -1
- package/dist/assets/settings-layout-Db7d5Mos.js +0 -1
- package/dist/assets/share-feedback-modal-CtZMQEye.js +0 -1
- package/dist/assets/share-feedback-modal-D7GARR0f.js +0 -2
- package/dist/assets/sidebar-tree-CB3bELX6.js +0 -1
- package/dist/assets/signup-page-BpvoG6nX.js +0 -1
- package/dist/assets/signup-shell-6tfevxfj.js +0 -1
- package/dist/assets/skill-detail-page-DgN34ik5.js +0 -2
- package/dist/assets/skill-detail-panel-B_RwRP5K.js +0 -1
- package/dist/assets/skill-icon-e9BlXBEc.js +0 -1
- package/dist/assets/skill-removal-dialog-DFwTH584.js +0 -1
- package/dist/assets/skills-page-D54HQhjb.js +0 -1
- package/dist/assets/sounds-page-Cw8SWT1c.js +0 -1
- package/dist/assets/start-screen-JZxJJdOW.js +0 -1
- package/dist/assets/stt-language-picker-modal-D7x8NqJd.js +0 -1
- package/dist/assets/subagent-detail-panel-buxSyEAP.js +0 -1
- package/dist/assets/superpowers-page-cPWfA0se.js +0 -1
- package/dist/assets/system-events-page-8K2GCQdQ.js +0 -1
- package/dist/assets/system-events-redirect-page-DBbcQGWP.js +0 -1
- package/dist/assets/text-preview-C1NMKaAU.js +0 -1
- package/dist/assets/theme-stage-page-CQrjXQDR.js +0 -1
- package/dist/assets/tool-detail-panel-BmP7AMGA.js +0 -15
- package/dist/assets/tool-detail-panel-JVXpN3YM.js +0 -1
- package/dist/assets/trait-cycle-row-DQhdJCJ-.js +0 -1
- package/dist/assets/upgrade-cancel-page-C6C4dMOJ.js +0 -1
- package/dist/assets/upgrade-success-page-CC8Q1etX.js +0 -1
- package/dist/assets/usage-redirect-page--upJECGD.js +0 -1
- package/dist/assets/use-app-delete-B6SYqeZ7.js +0 -1
- package/dist/assets/use-assistant-identity-details-CnmR7Be9.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh-DwlaNKB9.js +0 -1
- package/dist/assets/use-edge-swipe-back-BD_Ah2bU.js +0 -1
- package/dist/assets/use-hotkey-recorder-DbV6Cyhk.js +0 -1
- package/dist/assets/use-invite-link-dialog-B8DtFj1u.js +0 -1
- package/dist/assets/use-platform-assistant-id-BF4WUv0T.js +0 -1
- package/dist/assets/use-return-to-short-circuit-CvAy4AQQ.js +0 -1
- package/dist/assets/use-side-list-room-yQSI40sv.js +0 -1
- package/dist/assets/use-skill-actions-nsr480LX.js +0 -1
- package/dist/assets/use-skill-detail-files-MdjMAlCe.js +0 -1
- package/dist/assets/use-supports-credentials-settings-Db6r5haR.js +0 -1
- package/dist/assets/use-transcript-message-by-id-sQ_bR9wX.js +0 -1
- package/dist/assets/vendor-B2dSzLzU.js +0 -127
- package/dist/assets/voice-page-Cfg787uE.js +0 -1
- package/dist/assets/wake-detail-panel-Bd36PxOK.js +0 -1
- package/dist/assets/weather-forecast-display-C93-n3xN.js +0 -1
- package/dist/assets/welcome-screen-CKVwXjBE.js +0 -1
- package/dist/assets/workflow-detail-panel-BLoKwML7.js +0 -1
- package/dist/assets/workspace-page-HE84odf5.js +0 -1
- package/dist/images/integrations/shopify.svg +0 -1
- /package/dist/assets/{account-BgapSm73.js → account-BF5lrfyX.js} +0 -0
- /package/dist/assets/{account-COovGgiX.js → account-Bxy_vX-K.js} +0 -0
- /package/dist/assets/{account-Mg9fs_3-.js → account-DDtCvPF5.js} +0 -0
- /package/dist/assets/{account-BCdisTaU.js → account-Diu-bFrX.js} +0 -0
- /package/dist/assets/{activation-ckp2PRSJ.js → activation-BYAGAleJ.js} +0 -0
- /package/dist/assets/{activation-hs4bfeIr.js → activation-CEdyqKUu.js} +0 -0
- /package/dist/assets/{activation-tasks-BngQ_Fm6.js → activation-DEdwceum.js} +0 -0
- /package/dist/assets/{activation-tasks-CkV5q5W-.js → activation-DF1oj8j7.js} +0 -0
- /package/dist/assets/{app-types-Cgs4jOru.js → app-types-Dij41aJ8.js} +0 -0
- /package/dist/assets/{build.umd-DObSwt1g.js → build.umd-BrZECSr1.js} +0 -0
- /package/dist/assets/{contacts-Cp8UKZ-q.js → contacts-4xLilqUA.js} +0 -0
- /package/dist/assets/{contacts-FcRQ6yha.js → contacts-CnVtG-pl.js} +0 -0
- /package/dist/assets/{contacts-B70XJU9C.js → contacts-DE8gWrSn.js} +0 -0
- /package/dist/assets/{contacts-gsbmmrvo.js → contacts-DIgSZ4hU.js} +0 -0
- /package/dist/assets/{credential-requests-DJybRlMc.js → credential-requests-BFLeXf78.js} +0 -0
- /package/dist/assets/{credential-requests-DK3nYUhd.js → credential-requests-CPxFLVT9.js} +0 -0
- /package/dist/assets/{credential-requests-BSVsJqc9.js → credential-requests-Qe84hNEC.js} +0 -0
- /package/dist/assets/{credential-requests-Ch1f560B.js → credential-requests-lDkcsmmB.js} +0 -0
- /package/dist/assets/{definitions-Dm373op5.js → definitions-BTebkxyz.js} +0 -0
- /package/dist/assets/{definitions-BM8A6v7A.js → definitions-BjZOswgM.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-BTGRuI5p.js → emoji-catalog-data-QQIw94Eu.js} +0 -0
- /package/dist/assets/{format-countdown-DqEWRoOc.js → format-countdown-C-J64lue.js} +0 -0
- /package/dist/assets/{format-file-size-CEqN0m2h.js → format-file-size-Daiq0gMr.js} +0 -0
- /package/dist/assets/{home-BoVDiAoh.js → home-BteaphB_.js} +0 -0
- /package/dist/assets/{home-Qkv_m-Iz.js → home-CCUv41ef.js} +0 -0
- /package/dist/assets/{home-MJ10_76l.js → home-DO7A2tVm.js} +0 -0
- /package/dist/assets/{home-D7kY_Q5Y.js → home-tbbkVcjW.js} +0 -0
- /package/dist/assets/{intelligence-DCTjxQ86.js → intelligence-Bla65nm5.js} +0 -0
- /package/dist/assets/{intelligence-BFa57CKv.js → intelligence-Db527yzW.js} +0 -0
- /package/dist/assets/{intelligence-C063Eyqk.js → intelligence-s33k1wI2.js} +0 -0
- /package/dist/assets/{intelligence-BbBhLXn_.js → intelligence-xiqKApFj.js} +0 -0
- /package/dist/assets/{library-CpWn0OU_.js → library-BRmAQI9e.js} +0 -0
- /package/dist/assets/{library-CPygp50q.js → library-BhC14-NO.js} +0 -0
- /package/dist/assets/{library-Gu6ClNla.js → library-ClpjgmQn.js} +0 -0
- /package/dist/assets/{library-DXhM0Eb9.js → library-DuuiJut6.js} +0 -0
- /package/dist/assets/{link-click-C6tIZAXS.js → link-click-e-Fdx5JV.js} +0 -0
- /package/dist/assets/{logs-CoFhXtFC.js → logs-CQYFdGa_.js} +0 -0
- /package/dist/assets/{logs-CbWD6GQV.js → logs-DwYHebVx.js} +0 -0
- /package/dist/assets/{logs-B6GiJfIY.js → logs-NHN9-mUP.js} +0 -0
- /package/dist/assets/{logs-DN-9g87x.js → logs-SCSd0kUm.js} +0 -0
- /package/dist/assets/{machine-sizes-D7Trdj0o.js → machine-sizes-DadN4uVk.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-DgGIhylC.js → onboarding-step-layout-COS57xjn.js} +0 -0
- /package/dist/assets/{plugin-attribution-D5sGmHi8.js → plugin-attribution-zkdgIHRG.js} +0 -0
- /package/dist/assets/{radio-card-nav-mHakd-_m.js → radio-card-nav-DCE3wYLZ.js} +0 -0
- /package/dist/assets/{remote-web-C4j6-lor.js → remote-web-BIYYINs1.js} +0 -0
- /package/dist/assets/{remote-web-Dz6dj1Vl.js → remote-web-CSrWAyIC.js} +0 -0
- /package/dist/assets/{remote-web-BrHHTz4H.js → remote-web-D3chXkbO.js} +0 -0
- /package/dist/assets/{remote-web-CUG4ENlc.js → remote-web-DfCFOpuR.js} +0 -0
- /package/dist/assets/{schedules-DESQU0qT.js → schedules-BBaBmcJG.js} +0 -0
- /package/dist/assets/{schedules-CPbfRPO4.js → schedules-CjtoHUii.js} +0 -0
- /package/dist/assets/{schedules-DCU4uHAA.js → schedules-CpR8IZ0O.js} +0 -0
- /package/dist/assets/{schedules-ByHqkx73.js → schedules-jUeeTvGp.js} +0 -0
- /package/dist/assets/{signup-onboarding-handoff-BsmkcSN6.js → signup-onboarding-handoff-DsARDCO5.js} +0 -0
- /package/dist/assets/{terminal-DM3xgS7P.js → terminal-BDTudyuW.js} +0 -0
- /package/dist/assets/{terminal-DTcAaz-1.js → terminal-BkBRbIo0.js} +0 -0
- /package/dist/assets/{terminal-l-3Txysd.js → terminal-DOjJsvsr.js} +0 -0
- /package/dist/assets/{terminal-B1P5_Kq7.js → terminal-DzafX5hx.js} +0 -0
- /package/dist/assets/{usage-window-C5Eo5ceB.js → usage-window-C3F8jUQI.js} +0 -0
- /package/dist/assets/{workspace-YGLhaK9w.js → workspace-B3qxH51y.js} +0 -0
- /package/dist/assets/{workspace-B7H-ZqBy.js → workspace-BUMgSIAc.js} +0 -0
- /package/dist/assets/{workspace-CU8OrPZ7.js → workspace-DBbRFlwk.js} +0 -0
- /package/dist/assets/{workspace-Cfz5TGM8.js → workspace-LUczKAWY.js} +0 -0
- /package/dist/assets/{xterm-DctsBtlH.js → xterm-BQMgK3JF.js} +0 -0
- /package/dist/assets/{xterm-addon-fit--TQy017y.js → xterm-addon-fit-Cb7BiyPE.js} +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-CleA12ha.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-DPM_L_aA.js","assets/vendor-C_e0Rl2s.js","assets/icons-xHdc0dPY.js","assets/index-_KUyDosG.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as e,t}from"./rolldown-runtime-BM3Ffeng.js";import{I as n,Jn as r,Q as i,Zn as a,er as o,j as s,or as c,qn as l}from"./vendor-C_e0Rl2s.js";import{_ as u,b as d,d as f,f as p,g as m,n as h,t as g}from"./react-DPM_L_aA.js";import{Cr as _,E as v,F as y,Gi as b,Hi as x,It as S,Ki as C,La as w,Li as T,Q as E,Yr as D,ai as O,di as k,i as A,qa as j,qn as M,si as N,ti as P,ur as F,v as I}from"./icons-xHdc0dPY.js";import{A as L,B as ee,D as te,E as ne,F as re,I as R,L as z,N as ie,O as ae,S as oe,_ as B,a as se,b as ce,c as le,d as ue,f as de,g as V,h as fe,i as pe,k as me,l as he,m as ge,n as _e,o as ve,p as ye,r as be,s as xe,t as Se,u as Ce,v as we,w as Te,y as Ee,z as De}from"./use-checkout-dismiss-refresh-DX3GymbX.js";import{$c as Oe,Al as ke,B as Ae,Bl as je,Cf as Me,Cl as Ne,Dl as Pe,Dy as Fe,Ef as Ie,El as Le,Fs as Re,Hg as ze,I as Be,Iu as Ve,Ky as He,L as H,Lu as Ue,Ly as We,Ns as Ge,Og as Ke,Ps as qe,Qc as Je,Qr as Ye,Qy as Xe,R as Ze,Rg as Qe,Sm as $e,Tf as et,Tl as tt,Ts as nt,Ty as rt,Ug as it,Wg as at,Wt as ot,Xc as st,Xv as ct,Yy as U,Zc as lt,Zr as ut,Zy as dt,_a as ft,al as pt,ap as mt,cl as ht,cy as gt,db as _t,dd as vt,dh as yt,dl as bt,el as xt,fb as W,fl as St,fy as Ct,gb as wt,gl as Tt,hb as Et,hl as Dt,hp as Ot,il as kt,iy as At,jl as jt,kl as Mt,kp as Nt,l as Pt,l_ as Ft,lb as It,lf as Lt,lh as Rt,ll as zt,lp as Bt,ly as Vt,mb as Ht,mc as Ut,md as Wt,ml as Gt,nb as Kt,nl as qt,ob as Jt,ol as Yt,op as Xt,p as Zt,pb as G,pl as Qt,pp as $t,qr as en,qy as K,rb as tn,rl as nn,rt as rn,sl as an,sm as on,sp as sn,tl as cn,ub as q,uh as ln,ul as un,un as dn,va as fn,vl as pn,wf as mn,wl as hn,wm as gn,xl as _n,z as vn,zl as yn}from"./index-CleA12ha.js";import{n as bn,t as xn}from"./android-billing-handoff-C_65hbFm.js";import{t as Sn}from"./checkout-return-target-RlOhwSvu.js";import{t as Cn}from"./add-credits-modal-BtOBq6__.js";import{t as wn}from"./link-click-e-Fdx5JV.js";import{t as Tn}from"./await-org-header-settled-DzQQ7QxL.js";import{a as En,i as Dn,n as On,r as kn}from"./usage-window-C3F8jUQI.js";var An=j(`crown`,[[`path`,{d:`M11.562 3.266a.5.5 0 0 1 .876 0L15.39 8.87a1 1 0 0 0 1.516.294L21.183 5.5a.5.5 0 0 1 .798.519l-2.834 10.246a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.02 6.02a.5.5 0 0 1 .798-.519l4.276 3.664a1 1 0 0 0 1.516-.294z`,key:`1vdc57`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),jn=j(`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`}]]),J=e(d(),1);function Mn(e){return e.get(`tab`)===`billing`||e.has(`adjust_plan`)||e.has(`pro_onboarding`)||e.has(`billing_status`)||e.has(`session_id`)}function Nn(e,t){return e===`full`?!0:e===`disabled`?Mn(t):!1}var Y=g();function Pn({open:e,onOpenChange:t,amountUsd:n}){let{t:i}=s(`settings`),a=o(),c=r(qt()),l=c.isPending,u=H(n);return(0,Y.jsx)(U.Root,{open:e,onOpenChange:e=>{!e&&l||t(e)},children:(0,Y.jsxs)(U.Content,{size:`sm`,"data-testid":`checkout-bonus-modal`,children:[(0,Y.jsx)(U.Header,{icon:_,children:(0,Y.jsx)(U.Title,{children:i(`checkoutBonusModal.title`,{amount:u})})}),(0,Y.jsx)(U.Body,{children:(0,Y.jsx)(W,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:i(`checkoutBonusModal.body`,{amount:u})})}),(0,Y.jsxs)(U.Footer,{children:[(0,Y.jsx)(U.Close,{asChild:!0,children:(0,Y.jsx)(G,{variant:`outlined`,disabled:l,children:i(`checkoutBonusModal.decline`)})}),(0,Y.jsx)(G,{variant:`primary`,leftIcon:l?(0,Y.jsx)(M,{className:`animate-spin`}):void 0,onClick:()=>{l||c.mutate({},{onSuccess:e=>{e.status===`granted`?(K.success(i(`checkoutBonusModal.grantedToast`,{amount:H(e.amount_usd)})),a.invalidateQueries(Le())):K.info(i(`checkoutBonusModal.unavailableToast`)),a.invalidateQueries(nn()),t(!1)},onError:()=>{K.error(i(`checkoutBonusModal.errorToast`))}})},disabled:l,"data-testid":`claim-checkout-bonus-button`,children:i(`checkoutBonusModal.claim`,{amount:u})})]})]})})}function Fn(e){let t=Nt(),n=o(),r=e!==null,{data:i,dataUpdatedAt:s}=a({...nn(),enabled:r&&t,staleTime:0,refetchOnWindowFocus:!1}),c=(0,J.useRef)(e);return(0,J.useEffect)(()=>{let t=c.current;c.current=e,!(e===null||e===t||t===null)&&n.invalidateQueries(nn())},[e,n]),{showOffer:r&&i?.eligible===!0&&s>=e,amountUsd:i?.amount_usd??`0.00`}}function In(e){if(!e)return{};let t={};for(let n of e.callSites)!n.id||!n.displayName||(t[n.id]={id:n.id,displayName:n.displayName,description:n.description,domain:n.domain});return t}function Ln(e){return Number.isFinite(e)?Math.round(e).toLocaleString():`0`}function Rn(e){return!Number.isFinite(e)||e===0?`$0.00`:`$${e.toFixed(2)}`}var zn=`model`,Bn={model:`Model`,task:`Action`,profile:`Profile`},Vn=[{value:`model`,label:Bn.model},{value:`task`,label:Bn.task},{value:`profile`,label:Bn.profile}];function Hn(e){return e===`model`||e===`task`||e===`profile`}function Un(e){switch(e){case`model`:return`model`;case`task`:return`call_site`;case`profile`:return`inference_profile`}}function Wn(e){switch(e){case`model`:return`model`;case`task`:return`llm_call_site`;case`profile`:return`inference_profile`}}function Gn(e,t,n){if(e===`task`){let e=t.groupKey;return e?n.callSites?.[e]?.displayName??t.group:t.group}if(e===`profile`){let e=t.groupKey;return e?n.profiles?.[e]?.displayName??t.group:t.group||`Default / Unset`}return t.group}function Kn(e,t,n){return!e||e.length===0?[]:e.map(e=>{let r=Gn(t,e,n);return r===e.group?e:{...e,group:r}})}var qn=6,Jn=`value:`,Yn=`null:`;function Xn(e,t=`schedule`){return e===null?`${Yn}${Hn(t)?Un(t):t}`:`${Jn}${e}`}function Zn(e){return[...e].sort((e,t)=>{if(e.date!==t.date)return e.date<t.date?-1:1;let n=nr(e.bucketId),r=nr(t.bucketId);return n===r?e.bucketId===t.bucketId?0:e.bucketId<t.bucketId?-1:1:n-r})}function Qn(e){return e.map(e=>({bucketId:e.bucketId,date:e.date,displayLabel:e.displayLabel,totalInputTokens:e.totalInputTokens,totalOutputTokens:e.totalOutputTokens,totalEstimatedCostUsd:e.totalEstimatedCostUsd,eventCount:e.eventCount,groups:{}}))}function $n(e,t,n){return t!==`task`&&t!==`profile`?[...e]:e.map(e=>{let r=!1,i={};for(let[a,o]of Object.entries(e.groups)){let e=Gn(t,tr(o),n);e===o.group?i[a]=o:(r=!0,i[a]={...o,group:e})}return r?{...e,groups:i}:e})}function er(e){let t=new Map;for(let n of e)for(let[e,r]of Object.entries(n.groups)){let n=t.get(e);t.set(e,{label:n?.label??r.group,totalEstimatedCostUsd:(n?.totalEstimatedCostUsd??0)+r.totalEstimatedCostUsd})}let n=Array.from(t.entries()).sort(([e,t],[n,r])=>t.totalEstimatedCostUsd===r.totalEstimatedCostUsd?t.label===r.label?e===n?0:e<n?-1:1:t.label<r.label?-1:1:r.totalEstimatedCostUsd-t.totalEstimatedCostUsd).map(([e,t],n)=>({seriesKey:e,label:t.label,totalEstimatedCostUsd:t.totalEstimatedCostUsd,colorIndex:n}));return{items:n,visibleItems:n.slice(0,qn)}}function tr(e){return{group:e.group,groupId:e.groupKey,groupKey:e.groupKey,totalInputTokens:e.totalInputTokens,totalOutputTokens:e.totalOutputTokens,totalCacheCreationTokens:0,totalCacheReadTokens:0,totalEstimatedCostUsd:e.totalEstimatedCostUsd,eventCount:e.eventCount,turnCount:null}}function nr(e){let t=e.lastIndexOf(`|`);if(t<0)return 0;let n=Number(e.slice(t+1));return Number.isFinite(n)?n:0}var rr=140,ir=40,ar=28,or=2,sr=2,cr=1e-6,lr=12,ur=220,dr=56,fr=[40,80,60,100,50,70,30],pr=[18,24,28,35,42,50,64,78,92,106,118,96,84,74,68,80,88,72,56,48,40,34,26,20],mr=[`var(--usage-trend-stack-positive, var(--system-positive-strong, #10b981))`,`var(--usage-trend-stack-info, var(--system-info-strong, #3b82f6))`,`var(--usage-trend-stack-mid, var(--system-mid-strong, #f59e0b))`,`var(--usage-trend-stack-secondary, var(--content-secondary, #6b7280))`,`var(--usage-trend-stack-negative, var(--system-negative-strong, #f87171))`,`var(--usage-trend-stack-tertiary, var(--content-tertiary, #9ca3af))`];function hr(e){return mr[e%mr.length]}function gr(e){return e.displayLabel?e.displayLabel:e.date}function _r(e,t){let n=e+lr,r=t+lr;return n+ur>window.innerWidth&&(n=e-ur-lr),r+dr>window.innerHeight&&(r=t-dr-lr),{x:n,y:r}}function vr({buckets:e,isHourly:t,legendItems:n}){let{t:r}=s(`settings`),[i,a]=(0,J.useState)(null),o=(0,J.useMemo)(()=>Zn(e),[e]),c=(0,J.useMemo)(()=>er(e),[e]),l=n??c.items,u=n??c.visibleItems,d=(0,J.useMemo)(()=>o.reduce((e,t)=>Math.max(e,t.totalEstimatedCostUsd),0),[o]),f=(0,J.useCallback)((e,t)=>{let n=_r(e.clientX,e.clientY);a({...t,x:n.x,y:n.y})},[]),p=(0,J.useCallback)(()=>a(null),[]);if(o.length===0){let e=(0,Y.jsx)(Cr,{title:r(t?`usageTrendChart.noHourlyData`:`usageTrendChart.noDailyData`),subtitle:r(`usageTrendChart.noUsageInRange`)});return u.length===0?e:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[e,(0,Y.jsx)(Sr,{items:u})]})}let m=t?ar:ir;return(0,Y.jsxs)(`div`,{className:`overflow-x-auto`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)(`div`,{className:`flex items-end gap-2`,style:{height:`${rr}px`},"aria-hidden":`true`,children:o.map(e=>{let t=d>0?e.totalEstimatedCostUsd/d:0,r=Math.max(or,rr*t);return(0,Y.jsx)(`div`,{className:`flex items-end`,style:{width:`${m}px`,minWidth:`${m}px`,height:`${r}px`,opacity:e.totalEstimatedCostUsd>0?1:.3},title:`${gr(e)}: ${Rn(e.totalEstimatedCostUsd)}`,"data-usage-series-bar":e.bucketId,children:(0,Y.jsx)(br,{bucket:e,height:r,legendItems:l,hasLegendOverride:n!=null,onSegmentHover:f,onSegmentLeave:p})},e.bucketId)})}),(0,Y.jsx)(`div`,{className:`flex items-start gap-2`,children:o.map(e=>(0,Y.jsxs)(`div`,{className:`flex flex-col items-center gap-0.5`,style:{width:`${m}px`,minWidth:`${m}px`},children:[(0,Y.jsx)(`span`,{className:`truncate text-[10px]`,style:{color:`var(--content-secondary)`},children:Rn(e.totalEstimatedCostUsd)}),(0,Y.jsx)(`span`,{className:`truncate text-[10px]`,style:{color:`var(--content-tertiary)`},children:gr(e)})]},e.bucketId))}),u.length>0?(0,Y.jsx)(Sr,{items:u}):null]}),i?(0,Y.jsx)(xr,{tooltip:i}):null]})}function yr({isHourly:e}){let t=e?pr:fr,n=e?ar:ir;return(0,Y.jsx)(`div`,{className:`flex items-end gap-2`,style:{height:`${rr}px`},"aria-hidden":`true`,children:t.map((e,t)=>(0,Y.jsx)(`div`,{className:`rounded-sm`,style:{width:`${n}px`,height:`${e}px`,background:`color-mix(in srgb, var(--border-base) 40%, transparent)`}},t))})}function br({bucket:e,height:t,legendItems:r,hasLegendOverride:i,onSegmentHover:a,onSegmentLeave:o}){let s=Object.keys(e.groups).length>0,c=r.filter(e=>(e.state??`active`)===`active`).flatMap(t=>{let n=e.groups[t.seriesKey];return!n||n.totalEstimatedCostUsd<=0?[]:[{item:t,value:n}]});if(c.length===0&&!s&&!i){let r=gr(e),i={label:n(`settings:usageTrendChart.total`),bucketLabel:r,cost:Rn(e.totalEstimatedCostUsd)};return(0,Y.jsx)(`div`,{className:`w-full rounded-sm`,title:`${i.label}: ${i.cost}`,onMouseEnter:e=>a(e,i),onMouseMove:e=>a(e,i),onMouseLeave:o,style:{height:`${t}px`,background:hr(0)},"data-usage-series-segment-label":i.label,"data-usage-fallback-segment":`true`})}return c.length===0?null:(0,Y.jsx)(`div`,{className:`flex w-full flex-col-reverse overflow-hidden rounded-sm`,style:{height:`${t}px`},"data-usage-series-stack":e.bucketId,children:c.map(({item:n,value:r})=>{let i={label:n.label,bucketLabel:gr(e),cost:Rn(r.totalEstimatedCostUsd)};return(0,Y.jsx)(`div`,{title:`${i.label}: ${i.cost}`,onMouseEnter:e=>a(e,i),onMouseMove:e=>a(e,i),onMouseLeave:o,style:{height:`${Math.max(sr,t*r.totalEstimatedCostUsd/Math.max(e.totalEstimatedCostUsd,cr))}px`,background:hr(n.colorIndex)},"data-usage-series-segment":n.seriesKey,"data-usage-series-segment-label":n.label,"data-usage-series-color-index":n.colorIndex},n.seriesKey)})})}function xr({tooltip:e}){return(0,Y.jsxs)(`div`,{className:`pointer-events-none fixed z-50 max-w-[220px] rounded-md border px-2 py-1 shadow-xl`,style:{left:`${e.x}px`,top:`${e.y}px`,background:`var(--surface-overlay, var(--surface-lift))`,borderColor:`var(--border-base)`},"aria-hidden":`true`,children:[(0,Y.jsx)(`div`,{className:`truncate text-body-small-default`,style:{color:`var(--content-default)`},children:e.label}),(0,Y.jsxs)(`div`,{className:`truncate text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[e.bucketLabel,` · `,e.cost]})]})}function Sr({items:e}){return(0,Y.jsx)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 pt-1`,children:e.map(e=>{let t=e.state??`active`,n=t===`inactive`;return(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,"data-usage-legend-state":t,children:[(0,Y.jsx)(`span`,{className:`h-[7px] w-[7px] shrink-0 rounded-full`,style:{background:n?`var(--content-tertiary)`:hr(e.colorIndex),opacity:n?.45:1},"aria-hidden":`true`,"data-usage-series-color-index":e.colorIndex}),(0,Y.jsx)(`span`,{className:n?`truncate text-[10px] line-through`:`truncate text-[10px]`,style:{color:`var(--content-tertiary)`,opacity:n?.65:1},children:e.label})]},e.seriesKey)})})}function Cr({title:e,subtitle:t}){return(0,Y.jsxs)(`div`,{className:`flex flex-col items-center justify-center rounded-md py-12 text-center`,style:{color:`var(--content-tertiary)`},children:[(0,Y.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,Y.jsx)(`p`,{className:`mt-1 text-body-small-default`,children:t})]})}function wr(e){return Hn(e)?Un(e):e}function Tr(e){return kr({from:e.from,to:e.to},e.scheduleId)}function Er(e){return kr({from:e.from,to:e.to,...e.granularity?{granularity:e.granularity}:{},...e.tz?{tz:e.tz}:{}},e.scheduleId)}function Dr(e){return kr({from:e.from,to:e.to,groupBy:wr(e.groupBy)},e.scheduleId)}function Or(e){return kr({from:e.from,to:e.to,granularity:e.granularity,groupBy:wr(e.groupBy),...e.tz?{tz:e.tz}:{}},e.scheduleId)}function kr(e,t){return t?{...e,scheduleId:t}:e}function Ar(e){return[`${Ln(e.totalInputTokens)} direct`,`${Ln(e.totalCacheCreationTokens)} cache created`,`${Ln(e.totalCacheReadTokens)} cache read`,`${Ln(e.totalOutputTokens)} out`].join(` / `)}function jr(e){return!Number.isFinite(e)||e===0?`0`:e>=1e6||e>=999950&&e<1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:e.toLocaleString()}function Mr(e){return`${jr(e.totalInputTokens+e.totalCacheCreationTokens+e.totalCacheReadTokens)} in / ${jr(e.totalOutputTokens)} out`}var Nr=`task`,Pr=`model`,Fr=new Set([400,404,422]),Ir=3,Lr=new Set([`today`,`yesterday`,`7d`,`30d`,`90d`,`all`]),Rr=new Set([`actor`,`provider`,`model`,`conversation`,`task`,`profile`,`schedule`]),zr={task:Bn.task,profile:Bn.profile,model:Bn.model,provider:`Provider`,actor:`Actor`,conversation:`Conversation`,schedule:`Schedule`},Br=[{value:`task`,label:zr.task},{value:`profile`,label:zr.profile},{value:`model`,label:zr.model},{value:`provider`,label:zr.provider},{value:`schedule`,label:zr.schedule},{value:`conversation`,label:zr.conversation}];function Vr(e){let t=e.get(`range`),n=e.get(`groupBy`),r=Gr(n)?n:Nr;return{range:Wr(t)?t:`7d`,groupBy:r,scheduleId:r===`schedule`?Hr(e):void 0}}function Hr(e){let t=e.get(`scheduleId`);if(!(!t||t.trim().length===0))return t}function Ur(e,t){let n=new URLSearchParams(e);return t.range!==void 0&&n.set(`range`,t.range),t.groupBy!==void 0&&n.set(`groupBy`,t.groupBy),t.scheduleId!==void 0&&(t.scheduleId===null||t.scheduleId.trim().length===0?n.delete(`scheduleId`):n.set(`scheduleId`,t.scheduleId)),n.get(`groupBy`)!==`schedule`&&n.delete(`scheduleId`),n}function Wr(e){return e!=null&&Lr.has(e)}function Gr(e){return e!=null&&Rr.has(e)}function Kr(e){return e!==`conversation`}function qr(e,t){return e!==`task`&&e!==`profile`?!1:Yr(t)}function Jr(e,t){return!Yr(t)&&e<Ir}function Yr(e){return e instanceof gt&&Fr.has(e.status)}function Xr({requestedGranularity:e,isLoading:t,buckets:n}){return e===`hourly`&&(t||!n||n.length===0||n.some(Zr))?`hourly`:`daily`}function Zr(e){return e.bucketId.includes(`|`)||Qr(e.date)}function Qr(e){return/^\d{4}-\d{2}-\d{2} ([01]\d|2[0-3]):00$/.test(e)}function $r(e,t,n=Date.now()){return kn(e,t,n)}function ei(e){return e===`today`||e===`yesterday`?`hourly`:`daily`}function ti({prompt:e,children:t,variant:n=`outlined`,size:r=`regular`,className:i}){let a=p(),o=(0,J.useCallback)(()=>{qe(a,{prompt:e})},[a,e]);return(0,Y.jsx)(G,{variant:n,size:r,leftIcon:(0,Y.jsx)(E,{}),onClick:o,className:i,children:t})}var ni={today:`usageTab.rangeToday`,yesterday:`usageTab.rangeYesterday`,"7d":`usageTab.range7d`,"30d":`usageTab.range30d`,"90d":`usageTab.range90d`,all:`usageTab.rangeAll`},ri={task:`usageTab.groupByTask`,profile:`usageTab.groupByProfile`,model:`usageTab.groupByModel`,provider:`usageTab.groupByProvider`,actor:`usageTab.groupByActor`,conversation:`usageTab.groupByConversation`,schedule:`usageTab.groupBySchedule`};function ii(e,t){return e(ri[t])}function ai(e,t,n){let r=e(t===`hourly`?`usageTab.hourlyTrend`:`usageTab.dailyTrend`);if(!n||n===`conversation`)return r;let i=ii(e,n);return e(t===`hourly`?`usageTab.hourlyTrendBy`:`usageTab.dailyTrendBy`,{group:i})}var oi=300*1e3,si=[`Please load the llm-cost-optimizer skill.`,`Analyze my recent LLM usage and explain the biggest cost contributors by call site, model, and profile.`,`Check my current llm.default, llm.callSites, and llm.profiles.`,`Give me a concise summary of what is driving cost and what you would optimize first.`,`Do not change config yet.`].join(` `),ci=[`Please load the llm-cost-optimizer skill.`,`Analyze my recent LLM usage and current LLM config, then recommend the safest cost-optimization changes.`,`If changes are clearly safe, show me the exact config commands you would run and ask for confirmation before applying them.`].join(` `);function li({assistantId:e}){let{t}=s(`settings`),[n,r]=m(),{range:i,groupBy:o,scheduleId:c}=(0,J.useMemo)(()=>Vr(n),[n]),l=fn(),u=(0,J.useCallback)(e=>{r(t=>Ur(t,e),{replace:!0})},[r]),d=(0,J.useMemo)(()=>$r(i,l),[i,l]),f=(0,J.useMemo)(()=>ei(i),[i]),p=a({queryKey:Lt({path:{assistant_id:e}}),queryFn:()=>Zt(e),staleTime:1e4}),h=(0,J.useCallback)(e=>{u({range:e})},[u]),g=a({...Ie({path:{assistant_id:e},query:Tr({from:d.from,to:d.to,scheduleId:c})})}),_=a({queryKey:Me({path:{assistant_id:e},query:Dr({from:d.from,to:d.to,groupBy:o,scheduleId:c})}),queryFn:async({signal:t})=>{try{let{data:n}=await Ke({path:{assistant_id:e},query:Dr({from:d.from,to:d.to,groupBy:o,scheduleId:c}),signal:t,throwOnError:!0});return{groupBy:o,response:n}}catch(n){if(!qr(o,n))throw n;let{data:r}=await Ke({path:{assistant_id:e},query:Dr({from:d.from,to:d.to,groupBy:Pr,scheduleId:c}),signal:t,throwOnError:!0});return{groupBy:Pr,response:r}}},retry:Jr}),v=_.data?.groupBy??o;(0,J.useEffect)(()=>{v!==o&&u({groupBy:v,scheduleId:v===`schedule`?void 0:null})},[v,o,u]);let y=Kr(v)?v:void 0,b=a({...et({path:{assistant_id:e},query:Or({from:d.from,to:d.to,granularity:f,groupBy:y??`actor`,tz:l,scheduleId:c})}),enabled:!!y,retry:Jr}),x=a({...mn({path:{assistant_id:e},query:Er({from:d.from,to:d.to,granularity:f,tz:l,scheduleId:c})}),enabled:!y||b.isError}),S=a({...Wt({path:{assistant_id:e}}),enabled:v===`task`,staleTime:1/0}),C=a({...vt({path:{assistant_id:e}}),select:En,enabled:v===`profile`,staleTime:oi}),w=(0,J.useMemo)(()=>({callSites:In(S.data),profiles:C.data??{}}),[S.data,C.data]),T=(0,J.useMemo)(()=>{let e=_.data;if(e)return Kn(e.response.breakdown,e.groupBy,w)},[_.data,w]),E=(0,J.useMemo)(()=>{if(!(!y||!b.data))return $n(b.data.buckets,y,w)},[b.data,y,w]),D=(0,J.useMemo)(()=>{if(x.data)return Qn(x.data.buckets)},[x.data]),O=(0,J.useMemo)(()=>y?b.error?D?{isLoading:!1,error:null,data:D,refetch:x.refetch}:{isLoading:x.isLoading||!D&&!x.error,error:x.error??b.error,data:void 0,refetch:x.error?x.refetch:b.refetch}:{isLoading:b.isLoading,error:b.error,data:E,refetch:b.refetch}:{isLoading:x.isLoading,error:x.error,data:D,refetch:x.refetch},[D,x.error,x.isLoading,x.refetch,E,y,b.error,b.isLoading,b.refetch]),k=Xr({requestedGranularity:f,isLoading:O.isLoading,buckets:O.data}),A=k===`hourly`,j=y&&b.error?void 0:v,M=(0,J.useMemo)(()=>{if(!(v!==`schedule`||!c))return ui(p.data,c,t)},[v,c,p.data,t]);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,Y.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:t(`usageTab.title`)}),(0,Y.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,Y.jsx)(fi,{range:i,onChange:h})})]}),(0,Y.jsx)(`section`,{"aria-label":t(`usageTab.totalsAriaLabel`),children:(0,Y.jsx)(mi,{query:g,skeleton:(0,Y.jsx)(_i,{}),render:e=>(0,Y.jsx)(hi,{totals:e})})}),(0,Y.jsx)(pi,{title:t(`usageTab.inferenceUsageTitle`),children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,Y.jsx)(`h4`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:ai(t,k,j)}),(0,Y.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,Y.jsx)(vi,{value:v,onChange:e=>{u({groupBy:e,scheduleId:e===`schedule`?void 0:null})}})})]}),(0,Y.jsx)(mi,{query:O,skeleton:(0,Y.jsx)(yr,{isHourly:A}),render:e=>(0,Y.jsx)(vr,{buckets:e,isHourly:A,legendItems:M})})]})}),(0,Y.jsx)(yi,{query:_,groups:T}),(0,Y.jsx)(di,{})]})}function ui(e,t,n){let r=e??[];return[...r.some(e=>e.id===t)?[]:[{id:t,label:n(`usageTab.unknownSchedule`,{scheduleId:t})}],...r.map(e=>({id:e.id,label:e.name||e.id}))].map((e,n)=>({seriesKey:Xn(e.id,`schedule`),label:e.label,colorIndex:n,state:e.id===t?`active`:`inactive`}))}function di(){let{t:e}=s(`settings`);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Y.jsx)(`div`,{className:`h-px w-full`,style:{background:`linear-gradient(to right, transparent, var(--border-base), transparent)`}}),(0,Y.jsx)(pi,{title:e(`usageTab.costAssistantTitle`),subtitle:e(`usageTab.costAssistantSubtitle`),children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md px-3 py-3 sm:flex-row sm:items-center`,children:[(0,Y.jsx)(ti,{prompt:si,children:e(`usageTab.analyzeCostsButton`)}),(0,Y.jsx)(ti,{prompt:ci,variant:`ghost`,children:e(`usageTab.optimizeSettingsButton`)})]})})]})}function fi({range:e,onChange:t}){let{t:n}=s(`settings`);return(0,Y.jsx)(`div`,{className:`flex items-center`,children:(0,Y.jsx)(We,{value:e,onChange:t,options:Object.entries(ni).map(([e,t])=>({value:e,label:n(t)}))})})}function pi({title:e,subtitle:t,children:n}){return(0,Y.jsxs)(`section`,{className:`flex flex-col gap-3 rounded-md border px-4 py-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(`h3`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,Y.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null]}),n]})}function mi({query:e,skeleton:t,render:n}){let{t:r}=s(`settings`);return e.isLoading?(0,Y.jsx)(Y.Fragment,{children:t}):e.error?(0,Y.jsx)(Ti,{message:e.error instanceof Error?e.error.message:r(`usageTab.failedToLoadUsage`),onRetry:()=>e.refetch()}):e.data?(0,Y.jsx)(Y.Fragment,{children:n(e.data)}):(0,Y.jsx)(Y.Fragment,{children:t})}function hi({totals:e}){let{t}=s(`settings`);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-baseline justify-between gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(`span`,{style:{fontSize:`30px`,fontWeight:600,lineHeight:1,color:`var(--content-default)`},children:Rn(e.totalEstimatedCostUsd)}),(0,Y.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-secondary)`},children:t(`usageTab.costLabel`)})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(`span`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:Ln(e.eventCount)}),(0,Y.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-secondary)`},children:t(`usageTab.llmCallsLabel`)})]})]}),(0,Y.jsxs)(`div`,{className:`grid grid-cols-2 gap-3 sm:grid-cols-4`,children:[(0,Y.jsx)(gi,{label:t(`usageTab.directInputTokensLabel`),value:Ln(e.totalInputTokens)}),(0,Y.jsx)(gi,{label:t(`usageTab.outputTokensLabel`),value:Ln(e.totalOutputTokens)}),(0,Y.jsx)(gi,{label:t(`usageTab.cacheCreatedLabel`),value:Ln(e.totalCacheCreationTokens)}),(0,Y.jsx)(gi,{label:t(`usageTab.cacheReadLabel`),value:Ln(e.totalCacheReadTokens)})]})]})}function gi({label:e,value:t}){return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-md px-3 py-2`,style:{background:`color-mix(in srgb, var(--border-base) 15%, transparent)`},children:[(0,Y.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-default)`},children:t}),(0,Y.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:e})]})}function _i(){return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,"aria-hidden":`true`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-baseline justify-between gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(Ci,{width:140,height:30}),(0,Y.jsx)(Ci,{width:90,height:12})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(Ci,{width:60,height:16}),(0,Y.jsx)(Ci,{width:60,height:12})]})]}),(0,Y.jsx)(`div`,{className:`grid grid-cols-2 gap-3 sm:grid-cols-4`,children:Array.from({length:4}).map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-md px-3 py-2`,style:{background:`color-mix(in srgb, var(--border-base) 15%, transparent)`},children:[(0,Y.jsx)(Ci,{width:`50%`,height:12}),(0,Y.jsx)(Ci,{width:`70%`,height:11})]},t))})]})}function vi({value:e,onChange:t}){let{t:n}=s(`settings`);return(0,Y.jsx)(`div`,{className:`flex items-center`,children:(0,Y.jsx)(We,{value:e,onChange:t,menuAlign:`end`,menuMinWidth:196,options:Br.map(e=>({value:e.value,label:ii(n,e.value)}))})})}function yi({query:e,groups:t}){let{t:n}=s(`settings`),[r,i]=(0,J.useState)(new Set),a=e=>{i(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};return(0,Y.jsx)(pi,{title:n(`usageTab.breakdownTitle`),children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(bi,{label:n(`usageTab.percentOfTotalLabel`),active:r.has(`pct`),onClick:()=>a(`pct`)}),(0,Y.jsx)(bi,{label:n(`usageTab.tokensLabel`),active:r.has(`tokens`),onClick:()=>a(`tokens`)}),(0,Y.jsx)(bi,{label:n(`usageTab.turnsLabel`),active:r.has(`turns`),onClick:()=>a(`turns`)})]}),(0,Y.jsx)(mi,{query:e,skeleton:(0,Y.jsx)(Si,{}),render:e=>(0,Y.jsx)(xi,{groups:t??e.response.breakdown,groupBy:e.groupBy,showPct:r.has(`pct`),showTokens:r.has(`tokens`),showTurns:r.has(`turns`)})})]})})}function bi({label:e,active:t,onClick:n}){return(0,Y.jsx)(`button`,{type:`button`,onClick:n,className:`rounded-full border px-2.5 py-1 text-label-medium-default`,style:{borderColor:t?`var(--content-secondary)`:`var(--border-base)`,background:t?`color-mix(in srgb, var(--content-secondary) 15%, transparent)`:`transparent`,color:t?`var(--content-default)`:`var(--content-tertiary)`},children:e})}function xi({groups:e,groupBy:t,showPct:n,showTokens:r,showTurns:i}){let{t:a}=s(`settings`),o=p();if(e.length===0)return(0,Y.jsx)(wi,{title:a(`usageTab.noBreakdownDataTitle`),subtitle:a(`usageTab.noBreakdownDataSubtitle`)});let c=e.reduce((e,t)=>e+t.totalEstimatedCostUsd,0);return(0,Y.jsx)(`div`,{className:`overflow-hidden rounded-md`,children:(0,Y.jsxs)(`table`,{className:`w-full table-fixed`,children:[(0,Y.jsx)(`thead`,{children:(0,Y.jsxs)(`tr`,{style:{borderBottom:`1px solid var(--border-base)`},children:[(0,Y.jsx)(`th`,{className:`px-3 py-2.5 text-left text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:a(`usageTab.groupColumnLabel`)}),r?(0,Y.jsx)(`th`,{className:`px-3 py-2.5 text-left text-label-medium-default`,style:{color:`var(--content-tertiary)`,width:`35%`},children:a(`usageTab.tokensLabel`)}):null,i?(0,Y.jsx)(`th`,{className:`px-3 py-2.5 text-right text-label-medium-default`,style:{color:`var(--content-tertiary)`,width:`72px`},children:a(`usageTab.turnsLabel`)}):null,n?(0,Y.jsx)(`th`,{className:`px-3 py-2.5 text-right text-label-medium-default`,style:{color:`var(--content-tertiary)`,width:`64px`},children:`%`}):null,(0,Y.jsx)(`th`,{className:`px-3 py-2.5 text-right text-label-medium-default`,style:{color:`var(--content-tertiary)`,width:`100px`},children:a(`usageTab.costLabel`)})]})}),(0,Y.jsx)(`tbody`,{children:e.map((e,a)=>{let s=Ar(e),l=Mr(e),u=t===`conversation`?e.groupId:null,d=c>0?Math.round(e.totalEstimatedCostUsd/c*100):0;return(0,Y.jsxs)(`tr`,{className:u?`cursor-pointer hover:bg-[var(--surface-hover)]`:void 0,onClick:u?e=>{e.target.closest(`a`)||Ge(o,u)}:void 0,style:{borderTop:a===0?`none`:`1px solid var(--border-base)`},children:[(0,Y.jsx)(`td`,{className:`min-w-0 px-3 py-2`,style:{color:`var(--content-default)`},children:u?(0,Y.jsx)(h,{to:ct.conversation(u),className:`block truncate text-body-medium-lighter`,title:e.group,onClick:e=>{wn(e)||(e.preventDefault(),Ge(o,u))},children:e.group}):(0,Y.jsx)(`span`,{className:`block truncate text-body-medium-lighter`,title:e.group,children:e.group})}),r?(0,Y.jsx)(`td`,{className:`min-w-0 px-3 py-2`,style:{color:`var(--content-secondary)`},children:(0,Y.jsx)(`span`,{className:`block truncate text-body-small-default`,title:s,children:l})}):null,i?(0,Y.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2 text-right`,children:(0,Y.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e.turnCount==null?`—`:e.turnCount.toLocaleString()})}):null,n?(0,Y.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2 text-right`,children:(0,Y.jsxs)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[d,`%`]})}):null,(0,Y.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2 text-right`,children:(0,Y.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-default)`},children:Rn(e.totalEstimatedCostUsd)})})]},e.groupKey??e.groupId??`${e.group}-${a}`)})})]})})}function Si(){return(0,Y.jsx)(`div`,{className:`flex flex-col gap-2`,"aria-hidden":`true`,children:Array.from({length:4}).map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(Ci,{width:100,height:14}),(0,Y.jsx)(Ci,{width:`60%`,height:12}),(0,Y.jsx)(Ci,{width:50,height:14})]},t))})}function Ci({width:e,height:t}){return(0,Y.jsx)(`div`,{className:`rounded-sm`,style:{width:typeof e==`number`?`${e}px`:e,height:`${t}px`,background:`color-mix(in srgb, var(--border-base) 40%, transparent)`}})}function wi({title:e,subtitle:t}){return(0,Y.jsxs)(`div`,{className:`flex flex-col items-center gap-1 py-8 text-center`,children:[(0,Y.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),(0,Y.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t})]})}function Ti({message:e,onRetry:t}){let{t:n}=s(`settings`);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2 py-2`,children:[(0,Y.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,Y.jsx)(v,{className:`h-4 w-4 shrink-0`,style:{color:`var(--system-negative-strong, #f87171)`}}),(0,Y.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-default)`},children:e})]}),t?(0,Y.jsx)(`button`,{type:`button`,onClick:t,className:`self-start rounded-md border px-3 py-1 text-body-small-default`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`,color:`var(--content-default)`},children:n(`usageTab.retry`)}):null]})}function Ei(){let e=yn(),t=de();return{reactivateSubscription:()=>t({mutateAsync:()=>e.mutateAsync({}),onSuccess:()=>{K.success(n(`settings:useReactivateSubscription.reactivatedToast`),{id:`subscription-reactivate`})},errorToastId:`subscription-reactivate-error`,errorFallback:()=>n(`settings:useReactivateSubscription.reactivateFailedToast`)}),isPending:e.isPending}}function Di({open:e,onCancel:t,onConfirm:n,confirming:r,lostFeatures:i}){let{t:a}=s(`settings`);return(0,Y.jsx)(U.Root,{open:e,onOpenChange:e=>{!e&&!r&&t()},children:(0,Y.jsxs)(U.Content,{size:`md`,hideCloseButton:!0,children:[(0,Y.jsx)(U.Header,{icon:v,children:(0,Y.jsx)(U.Title,{children:a(`downgradeReconfirmModal.title`)})}),(0,Y.jsxs)(U.Body,{children:[(0,Y.jsx)(W,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:a(`downgradeReconfirmModal.body`)}),(0,Y.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:i.map(e=>(0,Y.jsx)(`li`,{children:(0,Y.jsx)(W,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,Y.jsxs)(U.Footer,{children:[(0,Y.jsx)(G,{variant:`outlined`,onClick:t,disabled:r,children:a(`downgradeReconfirmModal.keepPro`)}),(0,Y.jsx)(G,{variant:`danger`,onClick:n,disabled:r,"data-testid":`confirm-downgrade-button`,children:a(`downgradeReconfirmModal.confirm`)})]})]})})}function Oi(e){return n(`settings:creditBundlePicker.optionLabel`,{label:e.label,price:me(e.price_cents)})}function ki({creditTiers:e,selectedCreditTier:t,onCreditTierChange:n,disabled:r=!1}){let{t:i}=s(`settings`),a=(0,J.useMemo)(()=>[{value:null,label:i(`creditBundlePicker.noBundleOption`,{price:me(0)})},...e.map(e=>({value:e.tier,label:Oi(e)}))],[e,i]);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Y.jsx)(W,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:i(`creditBundlePicker.label`)}),(0,Y.jsx)(`span`,{title:i(`creditBundlePicker.tooltip`),children:(0,Y.jsx)(F,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,Y.jsx)(We,{"aria-label":i(`creditBundlePicker.ariaLabel`),placeholder:i(`creditBundlePicker.placeholder`),disabled:r,value:t,onChange:e=>n(e),onSelectNone:()=>n(null),options:a})]})}function Ai({features:e,variant:t,header:n,maxInline:r=3}){return t===`inline`?(0,Y.jsx)(Y.Fragment,{children:e.slice(0,r).join(`, `)}):(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n&&(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:n}),(0,Y.jsx)(`ul`,{className:`flex flex-col gap-2`,children:e.map(e=>(0,Y.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,Y.jsx)(T,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,Y.jsx)(W,{as:`span`,variant:`body-medium-default`,children:e})]},e))})]})}function ji({plan:e,isCurrent:t,onPro:n,planDisplayName:r,currentPlanFeatures:i,cancelAtPeriodEnd:a,isCanceled:o,cancelDate:c,formatGraceDate:l,proTierChangeMode:u,creditTiersEnabled:d,creditTiers:f,displayCreditTier:p,onCreditTierChange:m,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v,machineTiersForPicker:y,storageTiersForPicker:b,currentMachinePrice:x,currentStoragePrice:S,currentCreditPriceUnknown:C,proCurrentTotalCents:w,proLiveTotalCents:T,proTotalDelta:E,onboardingLoading:D,tierChangePending:O,machineChanged:k,storageChanged:A,creditChanged:j,tierChangeError:N,upgradePending:P,billingActionPending:I,onUpgrade:L,onApplyTierChange:ee,onDowngradeClick:ne,onKeepPlan:re}){let{t:R}=s(`settings`),z=e.id===`pro`,ie=e.id===`base`,oe=z&&n&&a&&!o,se=z&&(!t||t&&u),le=z&&t&&u,ue=z&&t;return(0,Y.jsx)(_t.Root,{className:`flex flex-col bg-[var(--surface-base)]`,children:(0,Y.jsxs)(_t.Body,{padding:`lg`,className:`max-sm:p-4`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.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,Y.jsx)(An,{className:`h-5 w-5 text-[var(--content-default)]`}):(0,Y.jsx)(jn,{className:`h-5 w-5 text-[var(--content-default)]`})}),(0,Y.jsxs)(`div`,{className:`flex min-h-6 items-center gap-2`,children:[(0,Y.jsx)(W,{as:`h3`,variant:`title-small`,"data-testid":`modal-plan-name`,children:ue?r:e.name}),t&&(0,Y.jsx)(Jt,{tone:`positive`,children:R(`planCardContent.current`)})]}),(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`-mt-2 text-[var(--content-tertiary)]`,children:R(ie?`planCardContent.baseTagline`:`planCardContent.proTagline`)}),oe&&c&&(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`modal-cancels-on`,children:R(`planCardContent.planEndsOn`,{date:l(c)})}),(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,Y.jsx)(`div`,{className:`flex flex-col gap-1`,children:ie?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(W,{as:`p`,variant:`title-medium`,children:R(`planCardContent.free`)}),(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:R(`planCardContent.forever`)})]}):t&&!(se&&T!=null)&&(w==null||C)?D?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(W,{as:`span`,variant:`body-medium-lighter`,children:R(`planCardContent.loadingPlan`)})]}):(0,Y.jsx)(W,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-price-unavailable`,children:R(`planCardContent.pricingUnavailable`)}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Y.jsx)(W,{as:`p`,variant:`title-medium`,"data-testid":`modal-pro-price`,children:se&&T!=null?(0,Y.jsxs)(Y.Fragment,{children:[me(T),E!=null&&E!==0&&(0,Y.jsxs)(`span`,{className:`ml-1 text-[var(--content-tertiary)]`,children:[`(`,te(E),`)`]})]}):w==null?e.id===`pro`?R(`planCardContent.fromPrice`,{price:me(e.base_price_cents+B(e.machine_tiers)+B(e.storage_tiers))}):null:R(`planCardContent.currentlyPrice`,{price:me(w)})}),se&&E!=null&&E!==0&&(0,Y.jsx)(`span`,{title:R(`planCardContent.subscriptionChangeTitle`,{from:me(w),to:me(T)}),children:(0,Y.jsx)(F,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),e.id===`pro`&&(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-base-fee`,children:R(`planCardContent.baseFee`,{amount:ae(e.base_price_cents)})})]})}),(0,Y.jsx)(Ai,{features:ue&&i?i:e.included_features,variant:`checklist`}),z&&!d&&(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-credits-not-included`,children:R(`planCardContent.creditsNotIncluded`)})]}),(0,Y.jsxs)(`div`,{className:`mt-4 flex flex-1 flex-col justify-end gap-4`,children:[!t&&z&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),d&&(0,Y.jsx)(ki,{creditTiers:f,selectedCreditTier:p,onCreditTierChange:m,disabled:P}),(0,Y.jsx)(ce,{machineTiers:y,storageTiers:b,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v}),(0,Y.jsx)(G,{variant:`primary`,className:`w-full`,onClick:L,disabled:P||!h||!g,"data-testid":`modal-upgrade-to-pro-button`,children:R(`planCardContent.upgradeToPro`)})]}),le&&(D?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(W,{as:`span`,variant:`body-medium-lighter`,children:R(`planCardContent.loadingPlan`)})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),d&&(0,Y.jsx)(ki,{creditTiers:f,selectedCreditTier:p,onCreditTierChange:m,disabled:O}),(0,Y.jsx)(ce,{machineTiers:y,storageTiers:b,selectedMachineTier:h,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v,currentMachinePriceCents:x,currentStoragePriceCents:S}),N&&(0,Y.jsx)(q,{tone:`error`,children:N}),(0,Y.jsx)(G,{variant:`primary`,className:`w-full`,onClick:ee,disabled:O||!k&&!A&&!j,"data-testid":`modal-change-tier-button`,children:R(`planCardContent.updatePlan`)})]})),!t&&ie&&n&&!a&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,Y.jsx)(G,{variant:`outlined`,className:`w-full`,onClick:ne,disabled:I,"data-testid":`modal-downgrade-to-base-button`,children:R(`planCardContent.downgradeToBase`)})]}),oe&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,Y.jsx)(G,{variant:`outlined`,className:`w-full`,onClick:re,disabled:I,"data-testid":`modal-keep-plan-button`,children:R(`planCardContent.keepPlan`)})]})]})]})})}function Mi(e){return bn({open:e.open,path:`${ct.settings.usageBilling}&adjust_plan`,onClose:e.onClose})?null:(0,Y.jsx)(Ni,{...e})}function Ni({open:e,onClose:t,onTierUpgraded:n}){let{t:i}=s(`settings`),c=o(),l=a(Qt()),u=a(Ne()),d=r(tt()),f=r(Tt()),p=r(pn()),m=r(Dt()),h=ue(ve(u.data)),{reactivateSubscription:g,isPending:_}=Ei(),{cancelSubscription:y,isPending:b}=se(),[x,S]=(0,J.useState)(`plans`),[C,T]=(0,J.useState)(!1),[E,D]=(0,J.useState)(null),[O,k]=(0,J.useState)(null),[A,j]=(0,J.useState)(void 0);(0,J.useEffect)(()=>at(()=>{pe(c),t()}),[c,t]);let N=u.data?.plan_id,P=N===`pro`,F=a({..._n(),enabled:P}),I=F.data?.max_machine_tier??null,L=F.data?.selected_storage_tier??null,ee=F.data?.selected_storage_gib??null,te=u.data?.cancel_at_period_end===!0||!!u.data?.cancel_at,ne=u.data?.status===`canceled`,re=he(u.data),R=u.data?.status,ie=R!=null&&ye.has(R),ae=P&&ie&&!te&&!ne,B=l.data?.plans.find(e=>e.id===`pro`),ce=B?.credit_tiers??[],de=ce.length>0,V=u.data?.selected_credit_tier??null,me=e=>ce.find(t=>t.tier===e)?.price_cents??0,_e=me(V),be=V!=null&&!ce.some(e=>e.tier===V),xe=A===void 0?V:A,Se=me(xe),Ce=z(u.data?.package),Te=P&&F.isSuccess&&B?oe({machineTier:I,storageTier:L,storageGib:ee,creditTier:V},B):null,De=B?.machine_tiers??[],Oe=ae&&ee!=null?(B?.storage_tiers??[]).map(e=>e.storage_gib<ee?{...e,disabled:!0}:e):B?.storage_tiers??[];(0,J.useEffect)(()=>{if(!e){D(null),k(null),j(void 0);return}if(B){if(ae){if(I==null||L==null)return;D(e=>Ee(De,e??I)),k(e=>Ee(Oe,e??L)),j(e=>we(ce,e,V));return}D(e=>Ee(B.machine_tiers,e)),k(e=>Ee(B.storage_tiers,e)),j(e=>we(ce,e,null))}},[e,B,ae,I,L,V]);let ke=l.data?.plans.find(e=>e.id===`base`),Ae=new Set(ke?.included_features??[]),je=(B?.included_features??[]).filter(e=>!Ae.has(e)),Me=()=>{if(!d.isPending){if(!E||!O){K.error(i(`adjustPlanModal.pickTiersError`),{id:`pro-upgrade-error`});return}d.mutate({body:{target_plan_id:`pro`,confirm:!0,machine_tier:E,storage_tier:O,credit_tier:xe,return_target:Sn()}},{onSuccess:e=>{if(e.checkout_url){Ft({kind:`custom`,machineTier:E,storageTier:O,creditTier:xe}),Ot(c),it(e.checkout_url);return}if(e.status===`no_op`){K.info(i(`adjustPlanModal.alreadyOnPro`),{id:`pro-upgrade`}),t();return}K.error(e.message??i(`adjustPlanModal.upgradeFailed`),{id:`pro-upgrade-error`})},onError:e=>{K.error(ge(e,i(`adjustPlanModal.upgradeFailed`)),{id:`pro-upgrade-error`})}})}},Pe=async()=>{if(!(b||h.isPending)){if(!fe(u.data)){S(`plans`),h.mutate({});return}await y()&&S(`plans`)}},Fe=f.isPending||p.isPending||m.isPending,Ie=E!=null&&E!==I,Le=O!=null&&O!==L,Re=de&&A!==void 0&&A!==V,ze=e=>De.find(t=>t.tier===e)?.price_cents??null,Be=e=>Oe.find(t=>t.tier===e)?.price_cents??null,Ve=ze(E),He=Be(O),H=ze(I),Ue=Be(L),We=Ie&&Ve!=null&&H!=null&&Ve<H,Ge=()=>{if(Fe)return;let e=[];Ie&&E&&e.push(new Promise(e=>{f.mutate({body:{machine_tier:E}},{onSuccess:()=>e({dimension:`machine`,ok:!0}),onError:t=>e({dimension:`machine`,ok:!1,error:t})})})),Le&&O&&e.push(new Promise(e=>{p.mutate({body:{storage_tier:O}},{onSuccess:()=>e({dimension:`storage`,ok:!0}),onError:t=>e({dimension:`storage`,ok:!1,error:t})})})),Re&&e.push(new Promise(e=>{m.mutate({body:{credit_tier:xe}},{onSuccess:()=>e({dimension:`credit`,ok:!0}),onError:t=>e({dimension:`credit`,ok:!1,error:t})})})),Promise.all(e).then(e=>{pe(c);let r=e.some(e=>e.ok&&e.dimension===`storage`),a=e.some(e=>e.ok&&e.dimension===`machine`)&&!We,o=(r||a)&&!!n,s=e.filter(e=>!e.ok);if(s.length>0){let e=s.map(e=>ge(e.error,`Failed to update ${e.dimension} tier.`)).join(` `);K.error(e,{id:`pro-tier-change-error`}),o&&(t(),n());return}o?(t(),n()):K.success(i(Re&&!Ie&&!Le?`adjustPlanModal.creditBundleUpdated`:`adjustPlanModal.planUpdated`),{id:`pro-tier-change`})})},Ke=()=>{if(!Fe){if(We){T(!0);return}Ge()}},qe=()=>{T(!1),Ge()},Je=e=>Ve!=null&&He!=null?e.base_price_cents+Ve+He+Se:null,Ye=e=>H!=null&&Ue!=null?e.base_price_cents+H+Ue+_e:null,Xe=f.isError||p.isError||m.isError?ge(f.error??p.error??m.error,i(`adjustPlanModal.updateFailed`)):null,Ze=l.isLoading||u.isLoading,Qe=l.isError||u.isError||!l.data||!u.data;return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(U.Root,{open:e,onOpenChange:e=>{e||(S(`plans`),t())},children:(0,Y.jsx)(U.Content,{size:x===`plans`?`lg`:`md`,children:x===`downgrade-confirm`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(U.Header,{icon:v,children:(0,Y.jsx)(U.Title,{children:i(`adjustPlanModal.downgradeTitle`)})}),(0,Y.jsxs)(U.Body,{children:[(0,Y.jsx)(W,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:i(`adjustPlanModal.downgradeIntro`)}),(0,Y.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:je.map(e=>(0,Y.jsx)(`li`,{children:(0,Y.jsx)(W,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,Y.jsxs)(U.Footer,{children:[(0,Y.jsx)(G,{variant:`ghost`,onClick:()=>S(`plans`),disabled:b||h.isPending,leftIcon:(0,Y.jsx)(w,{className:`h-4 w-4`}),children:i(`adjustPlanModal.back`)}),(0,Y.jsx)(G,{variant:`danger`,onClick:()=>void Pe(),disabled:b||h.isPending,"data-testid":`confirm-downgrade-button`,children:i(`adjustPlanModal.confirmDowngrade`)})]})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(U.Header,{children:(0,Y.jsx)(U.Title,{className:`sr-only`,children:i(`adjustPlanModal.upgradePlanTitle`)})}),(0,Y.jsx)(U.Body,{children:Ze?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(W,{as:`span`,variant:`body-medium-lighter`,children:i(`adjustPlanModal.loadingPlans`)})]}):Qe?(0,Y.jsx)(q,{tone:`error`,children:i(`adjustPlanModal.loadPlansError`)}):(0,Y.jsxs)(`div`,{className:`space-y-4 sm:space-y-6`,children:[(0,Y.jsxs)(`div`,{className:`space-y-2 pb-2 pt-4 text-center`,children:[(0,Y.jsx)(W,{as:`p`,variant:`title-medium`,children:i(`adjustPlanModal.heroTitle`)}),(0,Y.jsx)(W,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-secondary)]`,children:i(`adjustPlanModal.heroSubtitle`)})]}),(0,Y.jsx)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:l.data.plans.map(e=>{let t=e.id===N,n=e.id===`pro`&&B?Je(B):null,r=e.id===`pro`&&B?Ye(B):null;return(0,Y.jsx)(ji,{plan:e,isCurrent:t,onPro:P,planDisplayName:Ce,currentPlanFeatures:Te,cancelAtPeriodEnd:te,isCanceled:ne,cancelDate:re,formatGraceDate:le,proTierChangeMode:ae,creditTiersEnabled:de,creditTiers:ce,displayCreditTier:xe,onCreditTierChange:j,selectedMachineTier:E,selectedStorageTier:O,onMachineTierChange:D,onStorageTierChange:k,machineTiersForPicker:De,storageTiersForPicker:Oe,currentMachinePrice:H,currentStoragePrice:Ue,currentCreditPriceUnknown:be,proCurrentTotalCents:r,proLiveTotalCents:n,proTotalDelta:n!=null&&r!=null?n-r:null,onboardingLoading:F.isLoading,tierChangePending:Fe,machineChanged:Ie,storageChanged:Le,creditChanged:Re,tierChangeError:Xe,upgradePending:d.isPending,billingActionPending:h.isPending||_,onUpgrade:Me,onApplyTierChange:Ke,onDowngradeClick:()=>S(`downgrade-confirm`),onKeepPlan:()=>{if(!fe(u.data)){h.mutate({});return}g()}},e.id)})})]})}),(0,Y.jsxs)(U.Footer,{className:`relative items-center`,children:[(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`pointer-events-none absolute inset-x-0 text-center text-[var(--content-tertiary)]`,children:(0,Y.jsx)(`span`,{className:`pointer-events-auto`,children:i(`adjustPlanModal.footerNote`)})}),(0,Y.jsx)(`div`,{className:`ml-auto`,children:(0,Y.jsx)(G,{variant:`outlined`,onClick:t,"data-testid":`modal-cancel-button`,children:i(`adjustPlanModal.cancel`)})})]})]})})}),(0,Y.jsx)(Di,{open:C,onCancel:()=>T(!1),onConfirm:qe,confirming:Fe,lostFeatures:[i(`adjustPlanModal.machineDowngradeFeature`)]})]})}function Pi(e){let t=e.trim();if(t===``)return n(`settings:dailyCreditLimitCard.errorEmpty`);let r=parseFloat(t);if(!Number.isFinite(r)||r<1)return n(`settings:dailyCreditLimitCard.errorMin`);if(!/^\d+(\.\d{1,2})?$/.test(t))return n(`settings:dailyCreditLimitCard.errorDecimals`)}function Fi(e){let{t}=s(`settings`);return(0,Y.jsx)(tn,{type:`number`,step:`0.01`,min:`1`,label:t(`dailyCreditLimitCard.inputLabel`),helperText:t(`dailyCreditLimitCard.helperText`,{time:Ze()}),placeholder:`0.00`,fullWidth:!0,...e})}function Ii(){let e=o();return r({...an(),onSuccess:t=>{Yt(e,void 0,t),e.invalidateQueries({queryKey:pt()}),e.invalidateQueries({queryKey:Pe()})}})}function Li(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 Ri({onSaved:e,onCancel:t}){let{t:n}=s(`settings`),r=Ii(),[i,a]=(0,J.useState)(`25`),[o,c]=(0,J.useState)(!1),l=r.isPending,u=Pi(i),d=o?u:void 0,f=Li(r.error).daily_credit_limit_usd??(r.isError?n(`dailyCreditLimitCard.saveError`):void 0),p=()=>{l||(c(!0),!u&&r.mutate({body:{daily_credit_limit_usd:parseFloat(i.trim()).toFixed(2)}},{onSuccess:e}))},m=()=>{l||t()};return(0,Y.jsx)(U.Root,{open:!0,onOpenChange:e=>{e||m()},children:(0,Y.jsxs)(U.Content,{size:`sm`,hideCloseButton:!0,onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),m()},"data-testid":`auto-top-up-daily-limit-modal`,children:[(0,Y.jsxs)(U.Header,{children:[(0,Y.jsx)(U.Title,{children:n(`autoTopUpDailyLimitModal.title`)}),(0,Y.jsx)(U.Description,{children:n(`autoTopUpDailyLimitModal.message`)})]}),(0,Y.jsxs)(U.Body,{children:[(0,Y.jsx)(Fi,{value:i,onChange:e=>{a(e.target.value)},onBlur:()=>c(!0),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),p())},errorText:d,disabled:l,"data-testid":`auto-top-up-daily-limit-input`}),f!=null&&(0,Y.jsx)(q,{tone:`error`,className:`mt-3`,"data-testid":`auto-top-up-daily-limit-error`,children:f})]}),(0,Y.jsxs)(U.Footer,{children:[(0,Y.jsx)(G,{variant:`outlined`,onClick:m,disabled:l,"data-testid":`auto-top-up-daily-limit-cancel-button`,children:n(`autoTopUpDailyLimitModal.cancel`)}),(0,Y.jsx)(G,{variant:`primary`,onClick:p,disabled:l,leftIcon:l?(0,Y.jsx)(M,{className:`animate-spin`}):void 0,"data-testid":`auto-top-up-daily-limit-save-button`,children:n(l?`autoTopUpDailyLimitModal.saving`:`autoTopUpDailyLimitModal.save`)})]})]})})}function zi({open:e,confirming:t,onCancel:n,onConfirm:r}){let{t:i}=s(`settings`);return(0,Y.jsx)(He,{open:e,title:i(`autoTopUpDisableConfirm.title`),message:i(`autoTopUpDisableConfirm.message`),confirmLabel:i(t?`autoTopUpDisableConfirm.disabling`:`autoTopUpDisableConfirm.disable`),cancelLabel:i(`autoTopUpDisableConfirm.keepEnabled`),destructive:!0,onConfirm:r,onCancel:n})}var Bi={threshold_usd:`100`,amount_usd:`10`,monthly_cap_usd:``};function Vi(e){if(e===``||e===`-`)return e;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function Hi(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 Ui(e,t,n,r){if(n[e])return n[e];if(r)return t[e]}function Wi({initialValues:e=Bi,submitting:t,saveDisabled:n=!1,serverErrors:r,onSave:i,onCancel:a}){let{t:o}=s(`settings`),[c,l]=(0,J.useState)(e),[u,d]=(0,J.useState)({threshold_usd:!1,amount_usd:!1,monthly_cap_usd:!1}),f=Hi(c),p=e=>t=>{l(n=>({...n,[e]:t.target.value}))},m=e=>()=>{d(t=>({...t,[e]:!0})),l(t=>({...t,[e]:Vi(t[e])}))},h=e=>Ui(e,f,r,u[e]);return(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2`,children:[(0,Y.jsx)(`div`,{className:`w-full max-w-full sm:w-[200px]`,children:(0,Y.jsx)(tn,{type:`number`,step:`1`,label:o(`autoTopUpForm.thresholdLabel`),value:c.threshold_usd,onChange:p(`threshold_usd`),onBlur:m(`threshold_usd`),errorText:h(`threshold_usd`),"data-testid":`auto-top-up-threshold-input`,fullWidth:!0})}),(0,Y.jsx)(`div`,{className:`w-full max-w-full sm:w-[200px]`,children:(0,Y.jsx)(tn,{type:`number`,step:`1`,label:o(`autoTopUpForm.amountLabel`),value:c.amount_usd,onChange:p(`amount_usd`),onBlur:m(`amount_usd`),errorText:h(`amount_usd`),"data-testid":`auto-top-up-amount-input`,fullWidth:!0})}),(0,Y.jsx)(`div`,{className:`w-full max-w-full sm:w-[200px]`,children:(0,Y.jsx)(tn,{type:`number`,step:`1`,label:o(`autoTopUpForm.capLabel`),value:c.monthly_cap_usd,onChange:p(`monthly_cap_usd`),onBlur:m(`monthly_cap_usd`),errorText:h(`monthly_cap_usd`),"data-testid":`auto-top-up-cap-input`,fullWidth:!0})}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[20px]`,children:[(0,Y.jsx)(G,{variant:`outlined`,onClick:a,disabled:t,children:o(`autoTopUpForm.cancel`)}),(0,Y.jsx)(G,{variant:`primary`,onClick:()=>{d({threshold_usd:!0,amount_usd:!0,monthly_cap_usd:!0});let e={threshold_usd:Vi(c.threshold_usd),amount_usd:Vi(c.amount_usd),monthly_cap_usd:Vi(c.monthly_cap_usd)};l(e);let t=Hi(e);if(Object.keys(t).length!==0)return;let n=e=>e===``?``:`${parseInt(e,10)}.00`;i({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||n,"data-testid":`auto-top-up-save-button`,children:o(`autoTopUpForm.save`)})]})]})})}var Gi=t(((e,t)=>{t.exports=`SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED`})),Ki=t(((e,t)=>{var n=Gi();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=Ki()()}))(),1);function qi(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 Ji(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?qi(Object(n),!0).forEach(function(t){Xi(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):qi(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Yi(e){"@babel/helpers - typeof";return Yi=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},Yi(e)}function Xi(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Zi(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 Qi(e,t){if(e==null)return{};var n=Zi(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 $i(e,t){return ea(e)||ta(e,t)||na(e,t)||ia()}function ea(e){if(Array.isArray(e))return e}function ta(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 na(e,t){if(e){if(typeof e==`string`)return ra(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 ra(e,t)}}function ra(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 ia(){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=J.useRef(n);J.useEffect(function(){i.current=n},[n]),J.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])},aa=function(e){var t=J.useRef(e);return J.useEffect(function(){t.current=e},[e]),t.current},oa=function(e){return e!==null&&Yi(e)===`object`},sa=function(e){return oa(e)&&typeof e.then==`function`},ca=function(e){return oa(e)&&typeof e.elements==`function`&&typeof e.createToken==`function`&&typeof e.createPaymentMethod==`function`&&typeof e.confirmCardPayment==`function`},la=`[object Object]`,ua=function e(t,n){if(!oa(t)||!oa(n))return t===n;var r=Array.isArray(t);if(r!==Array.isArray(n))return!1;var i=Object.prototype.toString.call(t)===la;if(i!==(Object.prototype.toString.call(n)===la))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])})},da=function(e,t,n){return oa(e)?Object.keys(e).reduce(function(r,i){var a=!oa(t)||!ua(e[i],t[i]);return n.includes(i)?(a&&console.warn(`Unsupported prop change: options.${i} is not a mutable property.`),r):a?Ji(Ji({},r||{}),{},Xi({},i,e[i])):r},null):null},fa="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.",pa=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fa;if(e===null||ca(e))return e;throw Error(t)},ma=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fa;if(sa(e))return{tag:`async`,stripePromise:Promise.resolve(e).then(function(e){return pa(e,t)})};var n=pa(e,t);return n===null?{tag:`empty`}:{tag:`sync`,stripe:n}},ha=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`}))},ga=J.createContext(null);ga.displayName=`ElementsContext`;var _a=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},va=function(e){var t=e.stripe,n=e.options,r=e.children,i=J.useMemo(function(){return ma(t)},[t]),a=$i(J.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];J.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=aa(t);J.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=aa(n);return J.useEffect(function(){if(o.elements){var e=da(n,l,[`clientSecret`,`fonts`]);e&&o.elements.update(e)}},[n,l,o.elements]),J.useEffect(function(){ha(o.stripe)},[o.stripe]),J.createElement(ga.Provider,{value:o},r)};va.propTypes={stripe:X.default.any,options:X.default.object};var ya=function(e){return _a(J.useContext(ga),e)},ba=function(e){var t=e.children;return t(ya(`mounts <ElementsConsumer>`))};ba.propTypes={children:X.default.func.isRequired};var xa=J.createContext(null);xa.displayName=`CheckoutContext`;var Sa=function(e){var t=J.useContext(xa),n=J.useContext(ga);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 _a(n,e)},Ca=[`mode`],wa=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},Q=function(e,t,n){var r=`${wa(e)}Element`,i=t?function(e){Sa(`mounts <${r}>`);var t=e.id,n=e.className;return J.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=Sa(`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=$i(J.useState(null),2),O=D[0],k=D[1],A=J.useRef(null),j=J.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),J.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=Qi(o,Ca);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=aa(o);return J.useEffect(function(){if(A.current){var e=da(o,N,[`paymentRequest`]);e&&`update`in A.current&&A.current.update(e)}},[o,N]),J.useLayoutEffect(function(){return function(){if(A.current&&typeof A.current.destroy==`function`)try{A.current.destroy(),A.current=null}catch{}}},[]),J.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`,Ta=J.createContext(null);Ta.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`,$);function Ea(e=document.documentElement){let t=getComputedStyle(e),n=e=>t.getPropertyValue(e).trim()||void 0,r=n(`--content-tertiary`);return{text:n(`--content-emphasised`),textSecondary:r,placeholder:n(`--content-faint`),surface:n(`--surface-lift`),field:n(`--surface-base`),accent:n(`--system-info-strong`),danger:n(`--system-negative-strong`),dangerText:n(`--system-negative-on-weak`),icon:r,radius:n(`--radius-lg`)}}var Da=/^#([\da-f]{3}|[\da-f]{6})$/i,Oa=/^rgba?\(\s*([\d.]+)[\s,]+([\d.]+)[\s,]+([\d.]+)/i;function ka(e){let t=Da.exec(e)?.[1];if(t){let e=t.length===3?[...t].map(e=>e+e).join(``):t;return[0,2,4].map(t=>parseInt(e.slice(t,t+2),16))}let n=Oa.exec(e);return n?n.slice(1).map(Number):null}function Aa(e,t){let n=ka(e);if(!n)return e;let[r,i,a]=n;return`rgba(${r}, ${i}, ${a}, ${t})`}function ja(e){return e!==void 0&&e!==``}function Ma(e){return Object.fromEntries(Object.entries(e).filter(e=>ja(e[1])))}function Na(e){let t={};for(let[n,r]of Object.entries(e)){let e=Ma(r);Object.keys(e).length>0&&(t[n]=e)}return t}function Pa(e){return ja(e)?`1px solid ${e}`:void 0}function Fa(e,t){let n=ja(e.accent)?`0 0 0 3px ${Aa(e.accent,.14)}`:void 0;return{theme:t,labels:`floating`,variables:Ma({fontFamily:`"DM Sans", system-ui, sans-serif`,fontSizeBase:`15px`,fontSizeSm:`11px`,fontWeightMedium:`500`,borderRadius:e.radius,spacingUnit:`4px`,spacingGridRow:`10px`,spacingGridColumn:`10px`,colorText:e.text,colorTextSecondary:e.textSecondary,colorTextPlaceholder:e.placeholder,colorBackground:e.surface,colorPrimary:e.accent,colorDanger:e.danger,colorIcon:e.icon,focusOutline:`none`,focusBoxShadow:n}),rules:Na({".Input":{backgroundColor:e.field,border:`1px solid transparent`,boxShadow:`none`,padding:`9px 14px`,transition:`background-color 120ms, border-color 120ms, box-shadow 120ms`},".Input:focus":{backgroundColor:e.surface,border:Pa(e.accent),boxShadow:n},".Input--invalid":{border:Pa(e.danger),boxShadow:`none`},".Input::placeholder":{color:e.placeholder},".Label":{fontSize:`11px`,fontWeight:`500`,color:e.textSecondary},".Label--invalid":{color:e.danger},".Error":{fontSize:`12.5px`,color:e.dangerText}})}}function Ia(e){return Fa(Ea(),e===`light`?`stripe`:`night`)}var La=`dahlia`,Ra=`https://js.stripe.com`,za=`${Ra}/${La}/stripe.js`,Ba=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,Va=/^https:\/\/js\.stripe\.com\/(v3|[a-z]+)\/stripe\.js(\?.*)?$/,Ha=`loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used`,Ua=function(e){return Ba.test(e)||Va.test(e)},Wa=function(){for(var e=document.querySelectorAll(`script[src^="${Ra}"]`),t=0;t<e.length;t++){var n=e[t];if(Ua(n.src))return n}return null},Ga=function(e){var t=e&&!e.advancedFraudSignals?`?advancedFraudSignals=false`:``,n=document.createElement(`script`);n.src=`${za}${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},Ka=null,qa=null,Ja=null,Ya=function(e){return function(t){e(Error(`Failed to load Stripe.js`,{cause:t}))}},Xa=function(e,t){return function(){window.Stripe?e(window.Stripe):t(Error(`Stripe.js not available`))}},Za=function(e){return Ka===null?(Ka=new Promise(function(t,n){if(typeof window>`u`||typeof document>`u`){t(null);return}if(window.Stripe&&e&&console.warn(Ha),window.Stripe){t(window.Stripe);return}try{var r=Wa();if(r&&e)console.warn(Ha);else if(!r)r=Ga(e);else if(r&&Ja!==null&&qa!==null){var i;r.removeEventListener(`load`,Ja),r.removeEventListener(`error`,qa),(i=r.parentNode)==null||i.removeChild(r),r=Ga(e)}Ja=Xa(t,n),qa=Ya(n),r.addEventListener(`load`,Ja),r.addEventListener(`error`,qa)}catch(e){n(e);return}}),Ka.catch(function(e){return Ka=null,Promise.reject(e)})):Ka},Qa,$a=!1,eo=function(){return Qa||(Qa=Za(null).catch(function(e){return Qa=null,Promise.reject(e)}),Qa)};Promise.resolve().then(function(){return eo()}).catch(function(e){$a||console.warn(e)});var to=null;function no(){return to}function ro(e){if(!e)return null;let t=e.indexOf(`_secret`);return t<=0?null:e.slice(0,t)}var io=`flex flex-col gap-[10px]`,ao={visa:`Visa`,mastercard:`Mastercard`,amex:`Amex`,discover:`Discover`,diners:`Diners Club`,jcb:`JCB`,unionpay:`UnionPay`};function oo(e){let t=e?.toLowerCase();return t&&Object.hasOwn(ao,t)?ao[t]:null}function so(e,t){return oo(t)??e(`paymentMethodRow.savedCard`)}function co(e,t){return e==null||t==null?null:{month:String(e).padStart(2,`0`),year:String(t).slice(-2)}}function lo(e,t,n){let r=co(t,n);return r===null?null:e(`autoTopUpPaymentMethodModal.cardOnFileExpiry`,r)}function uo(e){return e===`submitting`||e===`requires_action`}function fo({open:e,mode:t,state:n,cardOnFile:r=null,savedCard:i=null,autoReloadActive:a=!1,headerless:o=!1,errorMessage:c=null,showTerms:l=!1,submitDisabled:u=!1,onClose:d,onSubmit:f,children:p}){let{t:m}=s(`settings`),h=uo(n),g=t===`replace`,_=n===`saved`,v=_&&o,y=v?{"aria-describedby":void 0}:{},b=g?po(m,_?null:r):m(`autoTopUpPaymentMethodModal.addSubtitle`);return(0,Y.jsx)(U.Root,{open:e,onOpenChange:e=>{!e&&!h&&d()},children:(0,Y.jsxs)(U.Content,{size:`sm`,className:`max-w-[420px] overflow-hidden rounded-xl p-0`,hideCloseButton:!0,dismissOnOverlayClick:!h,onEscapeKeyDown:h?e=>e.preventDefault():void 0,onInteractOutside:h?e=>e.preventDefault():void 0,...y,children:[(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-4 px-6 pt-6 pb-[18px]`,children:[(0,Y.jsx)(`div`,{className:`min-w-0`,children:v?(0,Y.jsx)(U.Title,{className:`sr-only`,children:mo(m,i)}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(U.Title,{className:`text-[18px] font-semibold tracking-[-0.02em] text-[var(--content-emphasised)]`,children:m(g?`autoTopUpPaymentMethodModal.replaceTitle`:`autoTopUpPaymentMethodModal.addTitle`)}),(0,Y.jsx)(U.Description,{className:`mt-[5px] text-[13px] leading-normal text-[var(--content-tertiary)]`,children:b})]})}),(0,Y.jsx)(U.Close,{asChild:!0,children:(0,Y.jsx)(`button`,{type:`button`,"data-testid":`payment-method-modal-close`,"aria-label":m(`autoTopUpPaymentMethodModal.close`),disabled:h,className:`flex h-7 w-7 shrink-0 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] hover:bg-[var(--surface-hover)] hover:text-[var(--content-emphasised)] disabled:cursor-not-allowed disabled:opacity-45`,children:(0,Y.jsx)(A,{size:17})})})]}),(0,Y.jsxs)(`form`,{id:`payment-method-modal-form`,className:`flex min-h-0 flex-1 flex-col`,onSubmit:e=>{e.preventDefault(),f?.()},children:[(0,Y.jsxs)(U.Body,{className:wt(`flex flex-col gap-[14px] px-6`,_?`pb-[22px]`:`pb-0`),children:[_?null:(0,Y.jsx)(`div`,{"data-testid":`payment-method-modal-fields`,"aria-busy":h,className:wt(io,h&&`pointer-events-none opacity-45`),children:p}),c?(0,Y.jsxs)(`div`,{"data-testid":`auto-top-up-pm-modal-confirm-error`,className:`flex items-start gap-2`,children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`mt-[6px] h-[5px] w-[5px] shrink-0 rounded-full bg-[var(--system-negative-strong)]`}),(0,Y.jsx)(`p`,{className:`text-[12.5px] leading-normal text-[var(--system-negative-on-weak)]`,children:c})]}):null,n===`requires_action`?(0,Y.jsxs)(`div`,{"data-testid":`payment-method-modal-status-row`,className:`flex items-center gap-[10px] rounded-lg bg-[var(--surface-base)] px-[13px] py-3`,children:[(0,Y.jsx)(M,{"aria-hidden":!0,size:14,className:`shrink-0 animate-spin text-[var(--system-info-strong)]`}),(0,Y.jsx)(`span`,{className:`text-[13px] text-[var(--content-secondary)]`,children:m(`autoTopUpPaymentMethodModal.confirmingWithBank`)})]}):_?(0,Y.jsx)(ho,{card:i,autoReloadActive:a}):l?(0,Y.jsx)(`p`,{"data-testid":`payment-method-modal-terms`,className:`mt-1.5 text-[11.5px] leading-[1.55] text-[var(--content-quiet)]`,children:m(g?`autoTopUpPaymentMethodModal.termsReplace`:`autoTopUpPaymentMethodModal.termsAdd`)}):null]}),_?null:(0,Y.jsxs)(U.Footer,{className:`flex flex-col gap-1 px-6 pt-[18px] pb-[22px]`,children:[(0,Y.jsx)(G,{variant:`primary`,fullWidth:!0,type:`submit`,"data-testid":`auto-top-up-pm-save-button`,className:`h-auto rounded-lg py-[14px] text-[14.5px] font-semibold`,disabled:u||h,leftIcon:h?(0,Y.jsx)(M,{className:`animate-spin`}):void 0,children:m(h?`autoTopUpPaymentMethodModal.primarySubmitting`:g?`autoTopUpPaymentMethodModal.primaryReplace`:`autoTopUpPaymentMethodModal.primaryAdd`)}),(0,Y.jsx)(G,{variant:`ghost`,fullWidth:!0,type:`button`,className:`h-auto rounded-md py-[10px] text-[13.5px] font-medium [--vbtn-fg:var(--content-tertiary)] hover:[--vbtn-fg:var(--content-emphasised)]`,onClick:d,disabled:h,children:m(`autoTopUpPaymentMethodModal.cancel`)})]})]})]})})}function po(e,t){let n=oo(t?.brand),r=t?.last4;if(!n&&!r)return e(`autoTopUpPaymentMethodModal.replaceSubtitle`);let i=co(t?.expMonth,t?.expYear);return r?n?i?e(`autoTopUpPaymentMethodModal.replaceSubtitleCardExpiry`,{brand:n,last4:r,...i}):e(`autoTopUpPaymentMethodModal.replaceSubtitleCard`,{brand:n,last4:r}):i?e(`autoTopUpPaymentMethodModal.replaceSubtitleCardNoBrandExpiry`,{last4:r,...i}):e(`autoTopUpPaymentMethodModal.replaceSubtitleCardNoBrand`,{last4:r}):i?e(`autoTopUpPaymentMethodModal.replaceSubtitleCardNoLast4Expiry`,{brand:n,...i}):e(`autoTopUpPaymentMethodModal.replaceSubtitleCardNoLast4`,{brand:n})}function mo(e,t){let n=oo(t?.brand),r=t?.last4;return r?n?e(`autoTopUpPaymentMethodModal.savedTitle`,{brand:n,last4:r}):e(`autoTopUpPaymentMethodModal.savedTitleNoBrand`,{last4:r}):e(`autoTopUpPaymentMethodModal.savedTitleGeneric`)}function ho({card:e,autoReloadActive:t}){let{t:n}=s(`settings`);return(0,Y.jsxs)(`div`,{"data-testid":`payment-method-modal-saved`,className:`flex items-center gap-[11px] rounded-lg bg-[var(--system-positive-weak)] p-[13px]`,children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`flex h-[22px] w-[22px] shrink-0 items-center justify-center rounded-full bg-[var(--system-positive-strong)] text-[12px] text-white`,children:`✓`}),(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`text-[13.5px] font-medium text-[var(--system-positive-on-weak)]`,children:mo(n,e)}),t?(0,Y.jsx)(`p`,{className:`mt-px text-[12px] text-[var(--system-positive-on-weak)]`,children:n(`autoTopUpPaymentMethodModal.savedSubtitle`)}):null]})]})}var go=1500;function _o(e){return bn({open:e.open,path:ct.settings.usageBilling,onClose:e.onClose})?null:(0,Y.jsx)(vo,{...e})}function vo({open:e,onClose:t,mode:n=`add`,cardOnFile:i=null,billingAddress:a=null,initialOutcome:o=null,onSavedOptimistic:c}){let{t:l}=s(`settings`),u=r(xt()),{mutate:d,reset:f}=u,p=o?.kind===`saved`,[m,h]=(0,J.useState)(p?`saved`:`idle`),[g,_]=(0,J.useState)(o?.kind===`error`?o.message:null),[v,y]=(0,J.useState)(o?.kind===`saved`?o.card:null),[b,x]=(0,J.useState)(!1),S=(0,J.useRef)(null),C=(0,J.useRef)(null),w=(0,J.useRef)(!0),T=(0,J.useRef)(null),E=(0,J.useRef)(o);(0,J.useEffect)(()=>{E.current=o},[o]);let D=(0,J.useRef)(t);(0,J.useEffect)(()=>{D.current=t},[t]),(0,J.useEffect)(()=>(w.current=!0,()=>{w.current=!1,yo(S),yo(C)}),[]);let O=(0,J.useCallback)(()=>{yo(C),C.current=setTimeout(()=>{D.current()},900)},[]);(0,J.useEffect)(()=>{yo(S),yo(C);let t=e?E.current:null,n=t?.kind===`saved`?t:null;h(n?`saved`:`idle`),_(t?.kind===`error`?t.message:null),y(n?.card??null),x(!1),n&&O()},[e,O]),(0,J.useEffect)(()=>{if(!e){f();return}},[e,p,d,f]);let k=u.data?.client_secret??null,[A,j]=(0,J.useState)(!1),[M,N]=(0,J.useState)(null);(0,J.useEffect)(()=>{j(!1),N(null)},[e,k]),(0,J.useCallback)(e=>{N(e),x(!1)},[]);let P=ot();return(0,J.useMemo)(()=>Ia(P),[P]),(0,J.useCallback)(e=>{T.current=e},[]),(0,J.useCallback)(async e=>{h(`submitting`),_(null),S.current=setTimeout(()=>{h(e=>e===`submitting`?`requires_action`:e)},go);try{let t=await e();if(yo(S),!w.current)return;if(t.error){h(`error`),_(t.error.code===`card_declined`?l(`autoTopUpPaymentMethodModal.declined`):t.error.message??l(`autoTopUpPaymentMethodModal.confirmFailed`));return}let n=await c({setupIntentId:ro(k)});if(!w.current)return;y(n??null),h(`saved`),O()}catch{if(!w.current)return;h(`error`),_(l(`autoTopUpPaymentMethodModal.confirmFailed`))}finally{yo(S)}},[k,c,O,l]),(0,Y.jsx)(fo,{open:e,mode:n,state:m,cardOnFile:n===`replace`?i:null,savedCard:v,autoReloadActive:v?.autoReloadEnabled??!1,headerless:p,errorMessage:g,showTerms:!1,submitDisabled:!b,onClose:t,onSubmit:()=>{T.current?.()},children:(0,Y.jsx)(bo,{})})}function yo(e){e.current!==null&&(clearTimeout(e.current),e.current=null)}function bo(){let{t:e}=s(`settings`);return(0,J.useEffect)(()=>{console.warn(`[AutoTopUpPaymentMethodModal] VITE_STRIPE_PUBLISHABLE_KEY is not set; the payment-method modal cannot mount Stripe Elements.`)},[]),(0,Y.jsx)(q,{tone:`error`,children:e(`autoTopUpPaymentMethodModal.unavailable`)})}function xo(e){return e==null||!e.has_payment_method?[]:[{id:`primary`,brand:e.payment_method_brand,last4:e.payment_method_last4,expMonth:e.payment_method_exp_month??null,expYear:e.payment_method_exp_year??null}]}function So(e){let[t]=e;return t==null?{mode:`add`,cardOnFile:null}:{mode:`replace`,cardOnFile:{brand:t.brand,last4:t.last4,expMonth:t.expMonth,expYear:t.expYear}}}var Co=1500,wo=2e4;function To(e){let[t]=xo(e);return t==null?null:{brand:t.brand,last4:t.last4,autoReloadEnabled:e?.enabled===!0}}function Eo(){let e=o();return async()=>{let t=Je(),n=e.getQueryData(t)?.stripe_payment_method_updated_at??null;await e.cancelQueries({queryKey:t});let r=()=>{let n=e.getQueryData(t);n!=null&&!n.has_payment_method&&Oe(e,void 0,{...n,has_payment_method:!0})};r();let i=e.getQueryCache().subscribe(e=>{e.type===`updated`&&e.query.queryHash===c(t)&&r()});try{let t=Date.now();for(;Date.now()-t<wo;){try{let{data:t}=await Rt();if(t!=null&&t.has_payment_method&&t.stripe_payment_method_updated_at!==n)return Oe(e,void 0,t),To(t)}catch{}await new Promise(e=>setTimeout(e,Co))}}finally{i()}return null}}function Do(){let e=o(),t=Eo(),{mutateAsync:n}=r(st());return async({setupIntentId:r})=>{if(r!=null)try{let t=await n({body:{setup_intent_id:r}});return await e.cancelQueries({queryKey:Je()}),Oe(e,void 0,t),To(t)}catch{}return t()}}var Oo=rt(i()((e,t)=>({pending:!1,outcome:null,scopeKey:null,generation:0,beginResolving:()=>{let n=t().generation+1;return e({pending:!0,outcome:null,scopeKey:null,generation:n}),n},settleOutcome:(n,r,i)=>{i===t().generation&&e({pending:!1,outcome:n,scopeKey:r})},discardResolution:n=>{n===t().generation&&e({pending:!1,outcome:null,scopeKey:null})},abandonResolution:n=>{n===t().generation&&e({pending:!1,outcome:null,scopeKey:null,generation:n+1})},clearOutcome:()=>e({outcome:null,scopeKey:null})})));function ko(e){if(!e)return``;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}var Ao={enabled:!1,threshold_usd:null,amount_usd:null,monthly_cap_usd:null,has_payment_method:!1,payment_method_brand:null,payment_method_last4:null,payment_method_exp_month:null,payment_method_exp_year:null,billing_address: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 jo(e){return{payment_method_brand:e?.payment_method_brand??null,payment_method_last4:e?.payment_method_last4??null,payment_method_exp_month:e?.payment_method_exp_month??null,payment_method_exp_year:e?.payment_method_exp_year??null,billing_address:e?.billing_address??null}}function Mo({testId:e,children:t}){return(0,Y.jsx)(`div`,{"data-testid":e,className:`flex h-8 min-w-0 flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2`,children:t})}function No(){let{t:e}=s(`settings`),t=o(),n=Ae(),i=a(kt()),c=r(cn()),l=r(lt()),u=Do(),d=Oo.use.pending(),f=on(),[p,h]=m(),g=(0,J.useRef)(null),[_,v]=(0,J.useState)(`view`),[y,b]=(0,J.useState)(!1),[x,S]=(0,J.useState)(!1),[C,w]=(0,J.useState)(!1),[T,E]=(0,J.useState)(!1),[D,O]=(0,J.useState)(null),[j,M]=(0,J.useState)(null),N=(0,J.useRef)(!1),P=n.data?.has_payment_method===!0;(0,J.useEffect)(()=>{N.current&&!P&&(w(!1),v(`view`),b(!1)),N.current=P},[P]);let I=()=>{if(f){xn(ct.settings.usageBillingConfigureTopUps);return}c.reset(),l.reset(),v(`form`)},L=e=>{if(f){xn(ct.settings.usageBillingConfigureTopUps);return}if(b(!0),!e.has_payment_method||e.disabled_due_to_repeated_failures===!0){w(!0),E(!1);return}w(!1),I()},ee=n.data?.has_payment_method===!0,te=n.data?.enabled===!0,ne=n.data?.disabled_due_to_repeated_failures===!0;(0,J.useEffect)(()=>{C&&ee&&!ne&&(w(!1),y&&!te&&I())},[C,y,ee,te,ne]);let re=p.get(`configure_top_up`)===`1`;if((0,J.useEffect)(()=>{if(!re||n.data==null)return;let e=new URLSearchParams(p);e.delete(`configure_top_up`),h(e,{replace:!0});let t=n.data;t.enabled===!0?I():L(t);let r=typeof window<`u`&&window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches===!0;g.current?.scrollIntoView({behavior:r?`auto`:`smooth`,block:`center`})},[re,n.data]),n.isPending)return(0,Y.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`autoTopUpCard.loading`)})});if(n.isError||!n.data)return(0,Y.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,Y.jsx)(q,{tone:`error`,children:e(`autoTopUpCard.loadError`)})});let R=n.data,z=R.enabled===!0,ie=R.disabled_due_to_repeated_failures===!0&&!z,ae=()=>{v(`view`),b(!1)},oe=()=>{O(So(xo(R)))},B=()=>{l.reset(),S(!1)},se=e=>{c.mutate({body:{enabled:!0,threshold_usd:e.threshold_usd,amount_usd:e.amount_usd,monthly_cap_usd:e.monthly_cap_usd===``?null:e.monthly_cap_usd}},{onSuccess:e=>{Oe(t,void 0,t=>({...e,...jo(t)})),t.invalidateQueries({queryKey:Je()}),z||(t.invalidateQueries({queryKey:pt()}),t.invalidateQueries({queryKey:Pe()})),ae()}})},ce=i.data==null||i.isError||i.isFetching,le=i.isError,ue=e=>{let t=ce?null:i.data;if(t!=null){if(t.daily_credit_limit_usd==null){M(e);return}se(e)}},de=()=>{let e=j;M(null),e!=null&&se(e)},V=()=>{l.mutate({},{onSuccess:()=>{Oe(t,void 0,e=>({...Ao,...jo(e),has_payment_method:e?.has_payment_method??!1,stripe_payment_method_updated_at:e?.stripe_payment_method_updated_at??null})),S(!1),v(`view`),b(!1)}})},fe=()=>{if(M(null),z){V();return}ae()},pe=e=>{if(e&&!z){L(R);return}if(!e&&!z&&y){w(!1),ae();return}!e&&z&&S(!0)},me=async e=>{let t=await u(e);return w(!1),y&&I(),t},he=_===`form`,ge=Li(c.error),_e=c.isError&&Object.keys(ge).length===0,ve=z||y;return(0,Y.jsxs)(`div`,{ref:g,"data-testid":`auto-top-up-card`,children:[(0,Y.jsx)(`div`,{className:`flex items-center justify-between gap-4`,children:(0,Y.jsx)(Kt,{checked:ve,onChange:pe,label:e(`autoTopUpCard.toggleLabel`),helperText:ve?e(`autoTopUpCard.toggleHelper`):void 0})}),z&&!he&&(0,Y.jsxs)(`div`,{className:`mt-3 flex w-full items-center gap-2`,children:[(0,Y.jsxs)(Mo,{testId:`auto-top-up-summary`,children:[(0,Y.jsx)(k,{className:`h-3.5 w-3.5 shrink-0 text-[var(--content-default)]`,"aria-hidden":`true`}),(0,Y.jsx)(W,{variant:`body-medium-default`,className:`truncate text-[var(--content-default)]`,children:e(`autoTopUpCard.summary`,{amount:H(R.amount_usd),threshold:H(R.threshold_usd)})})]}),R.monthly_cap_usd!=null&&(0,Y.jsx)(Mo,{testId:`auto-top-up-cap-progress`,children:(0,Y.jsxs)(W,{variant:`body-medium-default`,className:`truncate text-[var(--content-default)]`,children:[(0,Y.jsx)(`span`,{children:H(R.current_month_credits_purchased_usd)}),(0,Y.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:e(`autoTopUpCard.capProgress`,{cap:H(R.monthly_cap_usd)})})]})}),(0,Y.jsx)(G,{variant:`outlined`,onClick:I,"data-testid":`auto-top-up-edit-button`,className:`shrink-0`,children:e(`autoTopUpCard.adjust`)})]}),ie&&(0,Y.jsx)(q,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-declined-cutoff`,actions:(0,Y.jsx)(G,{variant:`outlined`,onClick:oe,disabled:d,"data-testid":`auto-top-up-add-pm-button`,children:e(`autoTopUpCard.addPaymentMethod`)}),children:e(`autoTopUpCard.declinedCutoffNotice`)}),(0,Y.jsx)(`div`,{className:`grid transition-[grid-template-rows] duration-200 ease-in-out`,style:{gridTemplateRows:C&&!ie?`1fr`:`0fr`},children:(0,Y.jsx)(`div`,{className:`overflow-hidden`,children:(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-col gap-3`,children:[!T&&(0,Y.jsxs)(`div`,{className:`flex h-8 items-center justify-between gap-3 rounded-md bg-[var(--system-mid-weak)] px-2`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(F,{className:`h-4 w-4 shrink-0 text-[var(--system-mid-strong)]`,"aria-hidden":`true`}),(0,Y.jsx)(W,{variant:`body-medium-default`,className:`truncate text-[var(--system-mid-strong)]`,children:e(`autoTopUpCard.connectCardBanner`)})]}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":e(`autoTopUpCard.dismiss`),onClick:()=>E(!0),className:`flex shrink-0 cursor-pointer items-center justify-center rounded p-0.5 text-[var(--system-mid-strong)] opacity-70 transition-opacity hover:opacity-100`,children:(0,Y.jsx)(A,{className:`h-2.5 w-2.5`,strokeWidth:2,"aria-hidden":`true`})})]}),(0,Y.jsx)(G,{variant:`primary`,onClick:oe,disabled:d,"data-testid":`auto-top-up-add-pm-button`,className:`self-start`,children:e(`autoTopUpCard.addCreditCard`)})]})})}),_e&&(0,Y.jsx)(q,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-update-error`,children:e(`autoTopUpCard.updateError`)}),l.isError&&(0,Y.jsx)(q,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-disable-error`,children:e(`autoTopUpCard.disableError`)}),he&&le&&(0,Y.jsx)(q,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-daily-limit-lookup-error`,actions:(0,Y.jsx)(G,{variant:`outlined`,size:`compact`,onClick:()=>void i.refetch(),disabled:i.isFetching,"data-testid":`auto-top-up-daily-limit-retry-button`,children:e(`autoTopUpCard.retry`)}),children:e(`autoTopUpCard.dailyLimitLookupError`)}),he&&(0,Y.jsx)(Wi,{initialValues:z?{threshold_usd:ko(R.threshold_usd),amount_usd:ko(R.amount_usd),monthly_cap_usd:ko(R.monthly_cap_usd)}:void 0,submitting:c.isPending||l.isPending,saveDisabled:ce,serverErrors:ge,onCancel:ae,onSave:ue}),j!=null&&(0,Y.jsx)(Ri,{onSaved:de,onCancel:fe}),(0,Y.jsx)(zi,{open:x,confirming:l.isPending,onCancel:B,onConfirm:V}),(0,Y.jsx)(_o,{open:D!=null,onClose:()=>O(null),mode:D?.mode??`add`,cardOnFile:D?.cardOnFile??null,billingAddress:R.billing_address??null,onSavedOptimistic:me})]})}function Po({title:e,subtitle:t,actions:n}){return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between sm:gap-4`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(W,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-emphasised)]`,children:e}),t!=null&&(0,Y.jsx)(W,{as:`p`,variant:`body-medium-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:t})]}),n!=null&&(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center gap-2`,children:n})]})}function Fo(e,t){let[n]=(0,J.useState)(()=>window.location.hash===`#${e}`),[r,i]=(0,J.useState)(!1);(0,J.useEffect)(()=>{if(!n||r||!t)return;let a=document.getElementById(e);if(!a)return;i(!0);let o=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;a.scrollIntoView({behavior:o?`auto`:`smooth`,block:`start`})},[n,r,t,e])}var Io=`daily-credit-limit`;function Lo(){let{t:e}=s(`settings`),t=a(kt()),n=a(Le()),r=Ae(),i=Ii(),o=vn();Fo(Io,!t.isLoading&&!n.isLoading);let[c,l]=(0,J.useState)(null),[u,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(!1);if(t.isLoading)return(0,Y.jsx)(`div`,{"data-testid":`daily-credit-limit-card`,children:(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`dailyCreditLimitCard.loading`)})});if(t.isError||!t.data)return(0,Y.jsx)(`div`,{"data-testid":`daily-credit-limit-card`,children:(0,Y.jsx)(q,{tone:`error`,children:e(`dailyCreditLimitCard.loadError`)})});let m=t.data,h=m.daily_credit_limit_usd!=null,g=h||f,_=c??m.daily_credit_limit_usd??``,v=Pi(_),y=n.data,b=y?.daily_spend_usd??m.current_day_spent_usd,x=y?.daily_limit_reached===!0,S=m.daily_limit_snoozed===!0||y?.daily_limit_snoozed===!0,C=Ze(),w=r.data?.enabled===!0&&!r.isError,T=e=>{l(e.target.value)},E=e=>{i.mutate({body:{daily_credit_limit_usd:e}},{onSuccess:()=>{l(null),d(!1),e===null&&p(!1)}})},D=e=>{if(e){p(!0);return}h&&w||(p(!1),l(null),d(!1),h&&E(null))},O=()=>{d(!0),!v&&E(parseFloat(_.trim()).toFixed(2))},k=Li(i.error).daily_credit_limit_usd??(i.isError?e(`dailyCreditLimitCard.saveError`):void 0),A=u?v:void 0;return(0,Y.jsxs)(`div`,{"data-testid":`daily-credit-limit-card`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(Kt,{checked:g,onChange:D,disabled:i.isPending||h&&w,label:e(`dailyCreditLimitCard.toggleLabel`),helperText:g?e(`dailyCreditLimitCard.toggleSubtitle`):void 0}),w&&(0,Y.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,"data-testid":`daily-credit-limit-required-note`,children:e(`dailyCreditLimitCard.requiredNote`)}),g&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2`,children:[(0,Y.jsx)(`div`,{className:`w-60 max-w-full`,children:(0,Y.jsx)(Fi,{value:_,onChange:T,onBlur:()=>d(!0),errorText:A,"data-testid":`daily-credit-limit-input`})}),(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[20px]`,children:(0,Y.jsx)(G,{variant:`primary`,onClick:O,disabled:i.isPending,"data-testid":`daily-credit-limit-save-button`,children:e(`dailyCreditLimitCard.save`)})})]}),h&&m.daily_credit_limit_usd!=null&&(0,Y.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`daily-credit-limit-progress`,children:e(`dailyCreditLimitCard.progress`,{spent:Be(b),limit:Be(m.daily_credit_limit_usd)})}),S&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(q,{tone:`info`,"data-testid":`daily-credit-limit-skipped`,actions:(0,Y.jsx)(G,{variant:`outlined`,size:`compact`,onClick:()=>o.mutate({}),disabled:o.isPending,"data-testid":`daily-credit-limit-resume-button`,children:e(`dailyCreditLimitCard.resumeNow`)}),children:e(`dailyCreditLimitCard.skippedNotice`,{time:C})}),o.isError&&(0,Y.jsx)(q,{tone:`error`,"data-testid":`daily-credit-limit-resume-error`,children:e(`dailyCreditLimitCard.resumeError`)})]}),x&&(0,Y.jsx)(q,{tone:`warning`,"data-testid":`daily-credit-limit-reached`,children:e(`dailyCreditLimitCard.reachedNotice`,{time:C})})]})]}),k!=null&&(0,Y.jsx)(q,{tone:`error`,className:`mt-4`,"data-testid":`daily-credit-limit-update-error`,children:k})]})}function Ro(e){if(e.trim()===``)return;let t=parseFloat(e);if(!Number.isFinite(t)||t<1||t>1e3)return n(`settings:lowBalanceAlertCard.errorRange`);if(!/^\d+(\.\d{1,2})?$/.test(e.trim()))return n(`settings:lowBalanceAlertCard.errorDecimals`)}function zo(){let{t:e}=s(`settings`),t=o(),n=a(zt()),i=r(St()),[c,l]=(0,J.useState)(null),[u,d]=(0,J.useState)(!1);if(n.isLoading)return(0,Y.jsx)(`div`,{"data-testid":`low-balance-alert-card`,children:(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`lowBalanceAlertCard.loading`)})});if(n.isError||!n.data)return(0,Y.jsx)(`div`,{"data-testid":`low-balance-alert-card`,children:(0,Y.jsx)(q,{tone:`error`,children:e(`lowBalanceAlertCard.loadError`)})});let f=n.data,p=c??f.threshold_usd??``,m=Ro(p),h=e=>{l(e.target.value)},g=e=>{i.mutate({body:{threshold_usd:e}},{onSuccess:e=>{bt(t,void 0,e),t.invalidateQueries({queryKey:un()}),l(null),d(!1)}})},_=()=>{if(d(!0),m)return;let e=p.trim();g(e===``?null:parseFloat(e).toFixed(2))},v=()=>{l(``),d(!1),g(null)},y=i.isError,b=u?m:void 0;return(0,Y.jsxs)(`div`,{"data-testid":`low-balance-alert-card`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2`,children:[(0,Y.jsx)(`div`,{className:`w-60 max-w-full`,children:(0,Y.jsx)(tn,{type:`number`,step:`0.01`,label:e(`lowBalanceAlertCard.label`),helperText:e(`lowBalanceAlertCard.helperText`,{amount:Be(f.default_threshold_usd)}),placeholder:f.effective_threshold_usd,value:p,onChange:h,onBlur:()=>d(!0),errorText:b,"data-testid":`low-balance-alert-input`,fullWidth:!0})}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[20px]`,children:[f.threshold_usd!=null&&(0,Y.jsx)(G,{variant:`outlined`,onClick:v,disabled:i.isPending,"data-testid":`low-balance-alert-reset-button`,children:e(`lowBalanceAlertCard.reset`)}),(0,Y.jsx)(G,{variant:`primary`,onClick:_,disabled:i.isPending,"data-testid":`low-balance-alert-save-button`,children:e(`lowBalanceAlertCard.save`)})]})]}),y&&(0,Y.jsx)(q,{tone:`error`,className:`mt-4`,"data-testid":`low-balance-alert-update-error`,children:e(`lowBalanceAlertCard.saveError`)})]})}function Bo(e){return e.replace(/\.00$/,``)}function Vo({icon:e,value:t,label:n}){return(0,Y.jsxs)(`div`,{className:`flex h-8 min-w-0 flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-3.5 w-3.5 shrink-0 items-center justify-center text-[var(--content-default)]`,children:e}),(0,Y.jsx)(W,{variant:`body-medium-default`,as:`span`,className:`text-[var(--content-default)]`,children:t}),(0,Y.jsx)(W,{variant:`body-small-default`,as:`span`,className:`min-w-0 truncate text-[var(--content-tertiary)]`,children:n})]})}function Ho(){let{t:e}=s(`settings`),{data:t,isLoading:n,isError:r}=a(jt()),[i,o]=(0,J.useState)(!1),c=(0,J.useCallback)(t=>{Qe(t,{successMessage:e(`referralContent.copySuccess`),errorMessage:e(`referralContent.copyError`),onCopied:()=>{o(!0),setTimeout(()=>o(!1),2e3)}})},[e]),l=t?.is_eligible_for_credits===!1,u=Et(),d=(0,J.useId)(),f=t?e(`referralContent.subtitleWithAmounts`,{creditAmount:Bo(t.referrer_credit_amount),earningCap:Bo(t.earning_cap)}):e(`referralContent.subtitleDefault`),p=t?(0,Y.jsx)(G,{variant:`outlined`,className:wt(`shrink-0`,l&&`pointer-events-none`),disabled:l,"aria-describedby":l?d:void 0,onClick:()=>c(t.referral_url),leftIcon:i?(0,Y.jsx)(C,{className:`h-3.5 w-3.5`}):(0,Y.jsx)(N,{className:`h-3.5 w-3.5`}),"data-testid":`referral-copy-button`,children:e(i?`referralContent.copied`:`referralContent.shareLink`)}):null;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(W,{as:`p`,variant:`body-medium-default`,className:`text-[var(--content-tertiary)]`,children:f}),n?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),e(`referralContent.loading`)]}):r||!t?(0,Y.jsx)(q,{tone:`error`,children:e(`referralContent.loadError`)}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2`,children:[(0,Y.jsx)(Vo,{icon:(0,Y.jsx)(k,{className:`h-3.5 w-3.5`}),value:Bo(t.total_earned),label:e(`referralContent.creditsEarned`)}),(0,Y.jsx)(Vo,{icon:(0,Y.jsx)(I,{className:`h-3.5 w-3.5`}),value:t.referred_count,label:e(`referralContent.friendsReferred`)}),l?(0,Y.jsx)(Ht,{content:e(`referralContent.gatedTooltip`),children:(0,Y.jsx)(`span`,{tabIndex:u?0:void 0,className:`inline-flex shrink-0 rounded-lg focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:p})}):p]}),l&&(0,Y.jsx)(W,{as:`p`,id:d,variant:`body-small-default`,className:u?`sr-only`:`text-[var(--content-tertiary)]`,children:e(`referralContent.gatedTooltip`)})]})]})}function Uo({open:e,onOpenChange:t}){let{t:n}=s(`settings`);return(0,Y.jsx)(U.Root,{open:e,onOpenChange:t,children:(0,Y.jsxs)(U.Content,{"data-testid":`referral-modal`,children:[(0,Y.jsx)(U.Header,{children:(0,Y.jsx)(U.Title,{children:n(`referralModal.title`)})}),(0,Y.jsx)(U.Body,{children:(0,Y.jsx)(Ho,{})})]})})}var Wo=2e3;function Go(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 Ko(){let{t:e}=s(`settings`),t=o(),{data:n,isLoading:r,isError:i}=a(Le()),c=n??null,[l,u]=(0,J.useState)(!1),[d,f]=(0,J.useState)(!1),[p,m]=(0,J.useState)(!1),h=(0,J.useRef)(0),g=(0,J.useRef)(null),_=je({onSuccess:()=>{t.invalidateQueries({queryKey:Pe()})},onError:()=>{h.current<3&&(g.current=setTimeout(()=>{_.reset()},Wo))}});(0,J.useEffect)(()=>()=>{g.current&&clearTimeout(g.current)},[]);let v=_.mutate;(0,J.useEffect)(()=>{c&&c.settled_balance===`0.00`&&c.pending_compute===`0.00`&&c.effective_balance===`0.00`&&h.current<3&&!_.isPending&&!_.isError&&!_.isSuccess&&(h.current+=1,v({}))},[c,_.isPending,_.isError,_.isSuccess,v]);let y=(0,Y.jsx)(Po,{title:e(`billingPanel.title`),subtitle:e(`billingPanel.subtitle`),actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(G,{variant:`outlined`,leftIcon:(0,Y.jsx)(k,{className:`h-4 w-4`,"aria-hidden":!0}),onClick:()=>f(!0),"data-testid":`earn-credits-button`,children:e(`billingPanel.earnCreditsButton`)}),(0,Y.jsx)(G,{variant:`primary`,onClick:()=>u(!0),disabled:r||!c,"data-testid":`add-credits-button`,children:e(`billingPanel.addCreditsButton`)})]})});return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(_t,{padding:`md`,children:[y,r?(0,Y.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),e(`billingPanel.loading`)]}):i?(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(q,{tone:`error`,children:e(`billingPanel.loadError`)})}):c?(0,Y.jsxs)(Y.Fragment,{children:[(()=>{if(!c)return null;let t=en(c.effective_balance,c.available_usage_balance),n=parseFloat(t)<0,r=Go(t),i=r.startsWith(`-`)?`-$${r.slice(1)}`:`$${r}`;return(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(Fe,{icon:(0,Y.jsx)(k,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,Y.jsx)(`span`,{"data-testid":`effective-balance`,children:i}),label:e(`billingPanel.balanceLabel`),tone:n?`negative`:`default`})})})(),c.is_degraded&&(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(q,{tone:`warning`,children:e(`billingPanel.degradedNotice`)})})]}):(0,Y.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`billingPanel.noInfo`)}),(0,Y.jsx)(`div`,{className:`mt-6`,children:(0,Y.jsx)(No,{})}),(0,Y.jsx)(`div`,{id:Io,className:`mt-6 scroll-mt-4 border-t border-[var(--border-subtle)] pt-6`,children:(0,Y.jsx)(Lo,{})}),(0,Y.jsx)(`div`,{className:`mt-6 border-t border-[var(--border-subtle)] pt-6`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(Kt,{checked:p,onChange:m,label:e(`billingPanel.lowBalanceToggle`)}),p&&(0,Y.jsx)(zo,{})]})})]}),(0,Y.jsx)(Cn,{open:l,onOpenChange:u}),(0,Y.jsx)(Uo,{open:d,onOpenChange:f})]})}var qo=1e3,Jo=15e3,Yo=3e3,Xo=45e3,Zo=`billing-portal-return`;function Qo(e,t){if(!e)return{kind:`info`,message:n(`settings:billingPortalReturnHandler.subscriptionUpdated`)};let r=e.cancel_at_period_end||!!e.cancel_at,i=t.cancel_at_period_end||!!t.cancel_at;return!r&&i?{kind:`info`,message:n(`settings:billingPortalReturnHandler.proCanceled`,{date:t.cancel_at?le(t.cancel_at):n(`settings:billingPortalReturnHandler.endOfBillingPeriod`)})}:r&&!i?{kind:`success`,message:n(`settings:billingPortalReturnHandler.proReactivated`)}:{kind:`info`,message:n(`settings:billingPortalReturnHandler.subscriptionUpdated`)}}function $o(){let[e]=m(),t=p(),r=o(),i=(0,J.useRef)(null);return(0,J.useEffect)(()=>()=>{i.current!==null&&(clearInterval(i.current),i.current=null)},[]),(0,J.useEffect)(()=>{if(e.get(`portal_return`)!==`true`)return;let a={current:!1},o=Ce(),s=Ne(),c=hn(),l=Date.now();async function u(){await r.invalidateQueries({queryKey:c});let e=await r.fetchQuery(s);return{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at}}async function d(){let e=await u();for(;!a.current&&o&&e.cancel_at_period_end===o.cancel_at_period_end&&e.cancel_at===o.cancel_at&&Date.now()-l<Jo&&(await new Promise(e=>setTimeout(e,qo)),!a.current);)e=await u();return e}return(async()=>{try{let e=await d();if(a.current)return;let{kind:t,message:n}=Qo(o,e);t===`success`?K.success(n,{id:Zo}):K.info(n,{id:Zo})}catch{if(a.current)return;K.info(n(`settings:billingPortalReturnHandler.subscriptionUpdated`),{id:Zo})}finally{if(!a.current){xe(),t(ct.settings.usageBilling,{replace:!0});let e=Date.now();i.current!==null&&clearInterval(i.current),i.current=setInterval(()=>{if(Date.now()-e>=Xo){i.current!==null&&(clearInterval(i.current),i.current=null);return}u().catch(e=>{console.error(`billing poll error:`,e)})},Yo)}}})(),()=>{a.current=!0}},[e,t,r]),null}var es=[7,30,90];function ts(e,t=nt()){let{fromDate:n,toDate:r}=On(e,t);return{from:n,to:r}}function ns({value:e,onChange:t}){let{t:n}=s(),r=es.find(t=>t===e)??30;return(0,Y.jsx)(We,{options:es.map(e=>({value:`${e}`,label:n(`dateRangeSelect.lastDays`,{days:e})})),value:`${r}`,onChange:e=>t(Number(e)),"aria-label":n(`dateRangeSelect.ariaLabel`)})}var rs={strokeDasharray:`3 3`,stroke:`var(--border-subtle)`,strokeOpacity:.4},is={fontSize:12,fill:`var(--content-tertiary)`},as={stroke:`var(--border-subtle)`,strokeOpacity:.4},os=[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`,`#8b5cf6`,`#06b6d4`,`#ec4899`,`#84cc16`];function ss({item:e}){return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 py-0.5 text-[13px] text-[var(--content-default)]`,children:[(0,Y.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,Y.jsx)(`span`,{children:e.label}),(0,Y.jsx)(`span`,{className:`ml-auto tabular-nums`,children:e.value})]})}function cs({active:e,payload:t,hoveredKey:n,label:r,labelMap:i,colorMap:a,formatValue:o,showTotal:c,formatLabel:l}){let{t:u}=s();if(!e||!t?.length)return null;let d=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),f=n?d.find(e=>e.key===n):null,p=f?d.filter(e=>e.key!==n):d,m=d.reduce((e,t)=>e+t.numericValue,0);return(0,Y.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,Y.jsx)(`div`,{className:`mb-1.5 text-xs font-medium text-[var(--content-secondary)]`,children:(l??Dn)(String(r))}),f&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ss,{item:f}),p.length>0&&(0,Y.jsx)(`div`,{className:`my-1.5 border-t border-[var(--border-subtle)]`})]}),p.map(e=>(0,Y.jsx)(ss,{item:e},e.key)),c&&(0,Y.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,Y.jsx)(`span`,{children:u(`stackedBarTooltip.total`,{value:o(m)})})})]})}function ls(e,t){let[n,r]=e,[i,a]=t,o=r-n||1;return e=>i+(e-n)/o*(a-i)}function us(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 ds(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 fs(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:us(n/r)*r}function ps(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 ms(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 hs(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 gs=40,_s={fontSize:11,fill:`var(--content-tertiary)`},vs={runtime_proxy_api:`#3b82f6`,oauth_proxy:`#f59e0b`};function ys(e,t){return vs[e]??os[t%os.length]??`#6b7280`}function bs(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 xs({stackKeys:e,labelMap:t}){return(0,Y.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,Y.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-sm`,style:{backgroundColor:ys(e,n)}}),(0,Y.jsx)(`span`,{className:`text-[var(--content-quiet)]`,children:t[e]??e})]},e))})}var Ss=350,Cs={top:8,right:4,bottom:32,left:0},ws=.2,Ts=5,Es=12,Ds=200;function Os({buckets:e,metric:t,onBarClick:n}){let{t:r}=s(`settings`),i=Re(),a=(0,J.useRef)(null),[o,c]=(0,J.useState)(0);(0,J.useEffect)(()=>{let e=a.current;if(!e)return;let t=new ResizeObserver(([e])=>{e&&c(e.contentRect.width)});return t.observe(e),()=>t.disconnect()},[]);let{data:l,stackKeys:u,labelMap:d}=(0,J.useMemo)(()=>bs(e,t),[e,t]),f=(0,J.useMemo)(()=>{let e={};for(let t=0;t<u.length;t++)e[u[t]]=ys(u[t],t);return e},[u]),p=(0,J.useCallback)(e=>t===`spend`?`$${e.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`:e.toLocaleString(`en-US`),[t]),[m,h]=(0,J.useState)(null),g=i?gs:56,_=i?_s:is,v=Cs.left+g,y=Math.max(0,o-v-Cs.right),b=Cs.top,x=Ss-Cs.top-Cs.bottom,S=(0,J.useMemo)(()=>l.map(e=>u.reduce((t,n)=>t+(Number(e[n])||0),0)),[l,u]),C=t===`events`,w=(0,J.useMemo)(()=>fs(S,{integerOnly:C,tickCount:Ts}),[S,C]),T=(0,J.useMemo)(()=>ps(w,Ts),[w]),E=(0,J.useCallback)(e=>{if(t===`spend`){if(e===0)return`$0`;let t=w/Ts,n=Math.max(t<1?2:0,ds(t));return`$${e.toLocaleString(`en-US`,{minimumFractionDigits:n,maximumFractionDigits:n})}`}return e.toLocaleString(`en-US`)},[t,w]),D=(0,J.useMemo)(()=>ls([0,w],[b+x,b]),[w,b,x]),O=l.length,k=O>0?y/O:0,A=k*(1-ws),j=(k-A)/2,M=(0,J.useMemo)(()=>hs(O,i),[O,i]),N=u.length===0,P=N?[]:l.map((e,t)=>{let n=v+t*k+j,r=0;return{di:t,x:n,segments:u.map((t,i)=>{let a=Number(e[t])||0,o=r;r+=a;let s=D(r),c=D(o)-s,l=i===u.length-1;return{key:t,val:a,x:n,y:s,h:c,color:ys(t,i),isLast:l}})}}),F=(e,t,n)=>{let r=a.current?.getBoundingClientRect();r&&h({x:e.clientX-r.left,y:e.clientY-r.top,datumIndex:t,hoveredKey:n})},I=()=>h(null),L=e=>{n&&n(e)},ee=m?u.filter(e=>(Number(l[m.datumIndex]?.[e])||0)>0).map(e=>({dataKey:e,value:Number(l[m.datumIndex]?.[e])||0})):[],te={left:m?Math.max(0,Math.min(m.x+Es,o-Ds)):0,top:m?m.y-Es:0,visibility:m?`visible`:`hidden`};return(0,Y.jsxs)(`div`,{onMouseDown:e=>e.preventDefault(),children:[(0,Y.jsx)(`div`,{ref:a,className:`relative w-full`,style:{height:Ss},children:N?(0,Y.jsx)(`div`,{className:`flex h-full items-center justify-center text-body-medium-lighter text-[var(--content-faint)]`,children:r(`billingUsageChart.empty`)}):o>0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`svg`,{width:o,height:Ss,className:`block`,children:[T.map(e=>(0,Y.jsx)(`line`,{x1:v,x2:v+y,y1:D(e),y2:D(e),stroke:rs.stroke,strokeOpacity:rs.strokeOpacity,strokeDasharray:rs.strokeDasharray},e)),(0,Y.jsx)(`line`,{x1:v,x2:v+y,y1:b+x,y2:b+x,stroke:as.stroke,strokeOpacity:as.strokeOpacity}),T.map(e=>(0,Y.jsx)(`text`,{x:v-8,y:D(e),textAnchor:`end`,dominantBaseline:`middle`,fontSize:_.fontSize,fill:_.fill,children:E(e)},e)),M.map(e=>{let t=l[e];return t?(0,Y.jsx)(`text`,{x:v+e*k+k/2,y:b+x+20,textAnchor:`middle`,fontSize:_.fontSize,fill:_.fill,children:Dn(String(t.date))},e):null}),P.map(({di:e,segments:t})=>t.map(t=>{if(t.h<=0)return null;let r=m?.hoveredKey&&m.hoveredKey!==t.key?.4:1,i={key:`${e}-${t.key}`,fill:t.color,opacity:r,cursor:n?`pointer`:void 0,onMouseMove:n=>F(n,e,t.key),onMouseLeave:I,onClick:()=>L(t.key)};return t.isLast?(0,Y.jsx)(`path`,{...i,d:ms(t.x,t.y,A,t.h,3)}):(0,Y.jsx)(`rect`,{...i,x:t.x,y:t.y,width:A,height:t.h})}))]}),(0,Y.jsx)(`div`,{className:`pointer-events-none absolute z-[1] max-w-[calc(100vw-32px)] -translate-y-full`,style:te,children:(0,Y.jsx)(cs,{active:!!m,payload:ee,hoveredKey:m?.hoveredKey??void 0,label:m?String(l[m.datumIndex]?.date):``,labelMap:d,colorMap:f,formatValue:p})})]}):null}),!N&&(0,Y.jsx)(xs,{stackKeys:u,labelMap:d})]})}function ks(e){if(e)return e.usageSource===`oauth_proxy`?`oauth_provider`:Wn(e.llmDimension??`model`)}function As(e,t=nt()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource,group_by:ks(e.drilldown)}:{}}}function js(e,t=nt()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource}:{}}}function Ms(e,t,n){return e===`full`&&t!==`gated`&&n}function Ns(e){let t=fn(),n=Ms(sn({platformHostedOnly:!0}),sn(),mt()),r=a({...Mt({query:As(e,t)}),enabled:n}),i=a({...ke({query:js(e,t)}),enabled:n});return{series:r.data,totals:i.data,isLoading:r.isLoading||i.isLoading,isError:r.isError||i.isError}}function Ps(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 Fs(e){return e===void 0?`—`:e.toLocaleString(`en-US`)}function Is(){let{t:e}=s(`settings`),t=fn(),[n,r]=(0,J.useState)(30),i=(0,J.useMemo)(()=>ts(n,t),[n,t]),[a,o]=(0,J.useState)(null),[c,l]=(0,J.useState)(`spend`),u=(0,J.useMemo)(()=>[{value:`spend`,label:e(`billingUsagePanel.metricSpend`)},{value:`events`,label:e(`billingUsagePanel.metricEvents`)}],[e]),{series:d,totals:f,isLoading:p,isError:m}=Ns({dateRange:i,drilldown:a,setDrilldown:o}),h=a?void 0:e=>{let t={runtime_proxy_api:`runtime_proxy`,oauth_proxy:`oauth_proxy`}[e];t&&o({usageSource:t,...t===`runtime_proxy`?{llmDimension:zn}:{}})};return(0,Y.jsx)(_t,{padding:`md`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(W,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:e(`billingUsagePanel.title`)}),(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:e(`billingUsagePanel.subtitle`)})]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:[(0,Y.jsx)(ns,{value:n,onChange:r}),(0,Y.jsx)(`div`,{className:`w-44`,children:(0,Y.jsx)(dt,{items:u,value:c,onChange:l,ariaLabel:e(`billingUsagePanel.chartMetricAria`)})})]})]}),(0,Y.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-2`,children:[(0,Y.jsx)(Fe,{icon:(0,Y.jsx)(k,{className:`h-4 w-4`,"aria-hidden":!0}),value:p?(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):Ps(f?.total_usd),label:e(`billingUsagePanel.spendLabel`)}),(0,Y.jsx)(Fe,{icon:(0,Y.jsx)(y,{className:`h-4 w-4`,"aria-hidden":!0}),value:p?(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):Fs(f?.event_count),label:e(`billingUsagePanel.eventsLabel`)})]}),a&&(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,Y.jsx)(`div`,{children:(0,Y.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:()=>o(null),children:[(0,Y.jsx)(w,{className:`h-3.5 w-3.5`}),(0,Y.jsx)(`span`,{children:e(`billingUsagePanel.backToAllUsage`)}),(0,Y.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:`/`}),(0,Y.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:a.usageSource===`runtime_proxy`?e(`billingUsagePanel.llmSpend`):e(`billingUsagePanel.oauthSpend`)})]})}),a.usageSource===`runtime_proxy`&&(0,Y.jsx)(`div`,{className:`w-56`,children:(0,Y.jsx)(dt,{items:Vn,value:a.llmDimension??`model`,onChange:e=>o({usageSource:`runtime_proxy`,llmDimension:e}),ariaLabel:e(`billingUsagePanel.llmDimensionAria`)})})]}),p?(0,Y.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,Y.jsx)(M,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):m?(0,Y.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:e(`billingUsagePanel.loadError`)}):d?(0,Y.jsx)(`div`,{className:`rounded-xl bg-[var(--surface-base)] p-3`,children:(0,Y.jsx)(Os,{buckets:d.buckets,metric:c,onBarClick:h})}):null]})})}function Ls(){let{t:e}=s(`settings`),t=on(),{data:n}=a(Ne()),r=ue((0,J.useMemo)(()=>ve(n),[n])),{reactivateSubscription:i,isPending:o}=Ei(),c=o||r.isPending;if(!n||n.plan_id!==`pro`||n.status===`canceled`||!n.cancel_at_period_end&&!n.cancel_at)return null;let l=he(n);return l?(0,Y.jsx)(q,{tone:`info`,title:e(`gracePeriodBanner.title`,{date:le(l)}),actions:(0,Y.jsx)(G,{variant:`outlined`,size:`compact`,onClick:()=>{if(t){xn(ct.settings.usageBilling);return}if(!fe(n)){r.mutate({});return}i()},disabled:c,leftIcon:c?(0,Y.jsx)(M,{className:`animate-spin`}):void 0,"data-testid":`grace-period-reactivate-button`,children:e(`gracePeriodBanner.reactivate`)}),"data-testid":`grace-period-banner`,children:e(`gracePeriodBanner.body`)}):null}var Rs=new Set([`BIF`,`CLP`,`DJF`,`GNF`,`JPY`,`KMF`,`KRW`,`MGA`,`PYG`,`RWF`,`VND`,`VUV`,`XAF`,`XOF`,`XPF`]),zs=new Set([`BHD`,`JOD`,`KWD`,`OMR`,`TND`]);function Bs(e){return Rs.has(e)?0:zs.has(e)?3:2}var Vs={invoices:[],has_more:!1},Hs=4,Us=`text-body-small-default [--vbtn-fg:var(--content-tertiary)] hover:[--vbtn-fg:var(--content-secondary)]`;function Ws(e){switch(e){case`paid`:return`positive`;case`open`:return`warning`;case`uncollectible`:return`negative`;default:return`neutral`}}function Gs(e,t){let n=t.toUpperCase(),r=Bs(n);try{return new Intl.NumberFormat(void 0,{style:`currency`,currency:n,minimumFractionDigits:r,maximumFractionDigits:r}).format(e/10**r)}catch{return`${(e/100).toFixed(2)} ${n}`}}function Ks(e){return Pt(new Date(e*1e3),{alwaysShowYear:!0})}function qs(e){ze(e)}function Js(){let{t:e}=s(`settings`),[t,n]=(0,J.useState)(!1),[r,i]=(0,J.useState)(!1),[a,c]=(0,J.useState)(!1),[d,f]=(0,J.useState)(!1),p=(0,J.useRef)(0),m=o(),h=l({enabled:t,queryKey:ht(),queryFn:async({signal:e,pageParam:t})=>{let{data:n,error:r,response:i}=await yt({throwOnError:!1,signal:e,query:t?{starting_after:t}:void 0});if(i?.status===404)return Vs;if(Vt(i,r,`Failed to load invoices.`),!i.ok||!n)throw Ct(r,i);return n},initialPageParam:void 0,getNextPageParam:e=>e.has_more?e.invoices.at(-1)?.id:void 0}),g=h.data?.pages.flatMap(e=>e.invoices)??[],_=r?g:g.slice(0,Hs),v=g.length>Hs,y=h.isFetchNextPageError||d,S=(r||!v)&&h.hasNextPage&&!y,C=h.isRefetching||h.isFetchingNextPage;function w(){let e=p.current;h.fetchNextPage().then(t=>{e===p.current&&f(t.isError)})}function T(){let e=p.current;h.refetch().then(t=>{if(e===p.current){if(t.isError){f(!0);return}w()}})}async function E(){c(!0);try{let{data:e,response:t}=await ln({throwOnError:!1,parseAs:`blob`});if(!t?.ok||!(e instanceof Blob))throw Error(`Failed to download invoices (${t?.status??`network error`})`);let{saveFile:n}=await u(async()=>{let{saveFile:e}=await import(`./index-CleA12ha.js`);return{saveFile:e}},__vite__mapDeps([0,1,2,3,4,5]));await n(e,`invoices.zip`)}catch(t){At(t,{context:`download_all_invoices`}),K.error(e(`invoicesTable.downloadAllFailed`))}finally{c(!1)}}return(0,Y.jsx)(_t,{padding:`md`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(Po,{title:e(`invoicesTable.title`),actions:(0,Y.jsxs)(Y.Fragment,{children:[t&&g.length>0&&(0,Y.jsx)(G,{variant:`outlined`,leftIcon:a?(0,Y.jsx)(M,{className:`animate-spin`}):(0,Y.jsx)(P,{className:`h-4 w-4`}),onClick:E,disabled:a,"data-testid":`invoices-download-all`,children:e(`invoicesTable.downloadAll`)}),(0,Y.jsx)(G,{variant:`outlined`,rightIcon:t?(0,Y.jsx)(x,{className:`h-4 w-4`}):(0,Y.jsx)(b,{className:`h-4 w-4`}),onClick:()=>{p.current+=1,f(!1),t&&m.cancelQueries({queryKey:ht()}),n(e=>!e)},"data-testid":`invoices-toggle`,children:e(t?`invoicesTable.hideButton`:`invoicesTable.showButton`)})]})}),t?h.isLoading?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(W,{as:`span`,variant:`body-small-default`,children:e(`invoicesTable.loading`)})]}):h.isLoadingError?(0,Y.jsx)(q,{tone:`error`,children:e(`invoicesTable.loadError`)}):g.length===0?(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`py-6 text-center text-[var(--content-tertiary)]`,"data-testid":`invoices-empty`,children:e(`invoicesTable.empty`)}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`overflow-x-auto`,children:(0,Y.jsxs)(`table`,{className:`w-full`,"data-testid":`invoices-table`,children:[(0,Y.jsx)(`thead`,{children:(0,Y.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] text-left`,children:[(0,Y.jsx)(`th`,{className:`pb-2 pr-4 text-body-small-default text-[var(--content-tertiary)]`,children:e(`invoicesTable.columnDate`)}),(0,Y.jsx)(`th`,{className:`pb-2 pr-4 text-body-small-default text-[var(--content-tertiary)]`,children:e(`invoicesTable.columnAmount`)}),(0,Y.jsx)(`th`,{className:`pb-2 pr-4 text-body-small-default text-[var(--content-tertiary)]`,children:e(`invoicesTable.columnStatus`)}),(0,Y.jsx)(`th`,{className:`pb-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(`invoicesTable.columnAction`)})]})}),(0,Y.jsx)(`tbody`,{children:_.map(t=>(0,Y.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] last:border-0`,"data-testid":`invoice-row`,children:[(0,Y.jsx)(`td`,{className:`py-3 pr-4`,children:(0,Y.jsx)(W,{as:`span`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:Ks(t.created)})}),(0,Y.jsx)(`td`,{className:`py-3 pr-4`,children:(0,Y.jsx)(W,{as:`span`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:Gs(t.amount_due,t.currency)})}),(0,Y.jsx)(`td`,{className:`py-3 pr-4`,children:t.status&&(0,Y.jsx)(Jt,{tone:Ws(t.status),children:t.status})}),(0,Y.jsx)(`td`,{className:`py-3`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-1`,children:[t.hosted_invoice_url&&(0,Y.jsx)(G,{asChild:!0,variant:`ghost`,size:`compact`,leftIcon:(0,Y.jsx)(D,{className:`h-3.5 w-3.5`}),children:(0,Y.jsx)(`a`,{href:t.hosted_invoice_url,target:`_blank`,rel:`noopener noreferrer`,children:e(`invoicesTable.view`)})}),t.invoice_pdf&&(0,Y.jsx)(G,{variant:`ghost`,size:`compact`,iconOnly:(0,Y.jsx)(P,{className:`h-3.5 w-3.5`}),"aria-label":e(`invoicesTable.downloadPdfAriaLabel`),onClick:()=>qs(t.invoice_pdf)})]})})]},t.id))})]})}),(v||S||y)&&(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 self-start`,children:[v&&(0,Y.jsx)(G,{variant:`link`,onClick:()=>i(e=>!e),className:Us,"data-testid":`invoices-show-more`,children:r?e(`invoicesTable.showLess`):e(`invoicesTable.showMore`,{count:g.length-Hs})}),S&&(0,Y.jsx)(G,{variant:`link`,onClick:w,disabled:h.isFetchingNextPage,leftIcon:h.isFetchingNextPage&&(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),className:Us,"data-testid":`invoices-load-more`,children:e(`invoicesTable.loadMore`)}),y&&(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,"data-testid":`invoices-load-more-error`,children:[(0,Y.jsx)(W,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-negative)]`,children:e(`invoicesTable.loadMoreError`)}),(0,Y.jsx)(G,{variant:`link`,onClick:T,disabled:C,leftIcon:C&&(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),className:Us,"data-testid":`invoices-load-more-retry`,children:e(`invoicesTable.retry`)})]})]})]}):null]})})}function Ys({brand:e,last4:t,expMonth:n=null,expYear:r=null,onUpdateCard:i,actionsDisabled:a=!1}){let{t:o}=s(`settings`),c=lo(o,n,r);return(0,Y.jsxs)(`div`,{"data-testid":`payment-method-row`,className:`flex items-center justify-between gap-2 rounded-lg border border-[var(--border-base)] pl-3 pr-2 py-1.5`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(O,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-[var(--content-default)]`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,Y.jsx)(W,{as:`p`,variant:`body-medium-default`,className:`truncate leading-snug text-[var(--content-default)]`,children:so(o,e)}),t!=null&&(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`truncate leading-snug text-[var(--content-tertiary)]`,children:o(`paymentMethodRow.endingIn`,{last4:t})}),c!=null&&(0,Y.jsx)(W,{as:`p`,variant:`body-small-default`,className:`truncate leading-snug text-[var(--content-quiet)]`,children:c})]})]}),(0,Y.jsx)(G,{variant:`ghost`,onClick:i,disabled:a,"data-testid":`payment-method-update`,className:`shrink-0`,children:o(`paymentMethodRow.replaceCard`)})]})}function Xs(){let{t:e}=s(`settings`),t=o(),n=Ae(),r=Do(),i=Oo.use.outcome(),a=Oo.use.scopeKey(),c=Oo.use.pending(),l=Oo.use.clearOutcome(),u=Ue(),d=i!=null&&a===u,f=d?i:null,[p,m]=(0,J.useState)(null);(0,J.useEffect)(()=>{i!=null&&!d&&l()},[i,d,l]);let h=n.data,g=(0,J.useMemo)(()=>xo(h),[h]),_=h!=null&&g.length===0,v=()=>{m(So(g))},y=n.isSuccess||n.isError;return(0,J.useEffect)(()=>{f!=null&&(f.kind!==`saved`&&!y||m(e=>e??(f.kind===`saved`?{mode:`add`,cardOnFile:null}:So(g))))},[f,g,y]),(0,J.useEffect)(()=>{f?.kind!==`saved`||f.card==null||t.invalidateQueries({queryKey:Je()})},[f,t]),(0,Y.jsxs)(_t,{padding:`md`,"data-testid":`payment-methods-card`,children:[(0,Y.jsx)(Po,{title:e(`paymentMethodsCard.title`),actions:_?(0,Y.jsx)(G,{variant:`outlined`,onClick:v,disabled:c,"data-testid":`payment-methods-add`,children:e(`paymentMethodsCard.addButton`)}):void 0}),n.isPending?(0,Y.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`paymentMethodsCard.loading`)}):n.isError||h==null?(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(q,{tone:`error`,children:e(`paymentMethodsCard.loadError`)})}):g.length===0?(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(q,{tone:`info`,"data-testid":`payment-methods-empty`,children:e(`paymentMethodsCard.empty`)})}):(0,Y.jsx)(`div`,{className:g.length>1?`mt-4 flex flex-col gap-1`:`mt-4`,children:g.map(e=>(0,Y.jsx)(Ys,{brand:e.brand,last4:e.last4,expMonth:e.expMonth,expYear:e.expYear,onUpdateCard:v,actionsDisabled:c},e.id))}),(0,Y.jsx)(_o,{open:p!=null,onClose:()=>{m(null),l()},mode:p?.mode??`add`,cardOnFile:p?.cardOnFile??null,billingAddress:h?.billing_address??null,initialOutcome:f,onSavedOptimistic:r})]})}function Zs({icon:e,label:t,multiline:n=!1}){return(0,Y.jsxs)(`div`,{className:ft(`flex items-center gap-1.5 rounded-md bg-[var(--surface-lift)] px-2 py-1.5`,n?`min-h-8 min-w-0`:`h-8`),children:[(0,Y.jsx)(e,{className:`size-[18px] shrink-0 text-[var(--content-default)]`,"aria-hidden":!0}),(0,Y.jsx)(W,{as:`span`,variant:`body-medium-default`,className:ft(`text-[var(--content-default)]`,n?`whitespace-normal`:`whitespace-nowrap`),children:t})]})}function Qs({theme:e,tierKey:t,name:n,nameTestId:r,tag:i,specs:a,footer:o,testId:s,className:c}){let l=a?.filter(e=>!e.ownRow)??[],u=a?.filter(e=>e.ownRow)??[];return(0,Y.jsxs)(`div`,{"data-theme":e,"data-testid":s,className:ft(`flex min-w-0 flex-1 flex-col gap-8 rounded-xl bg-[var(--surface-base)] px-4 py-3`,c),children:[(0,Y.jsxs)(`div`,{className:`flex flex-col items-start gap-6`,children:[i,(0,Y.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,Y.jsx)(ie,{tier:t,size:48}),(0,Y.jsx)(W,{as:`span`,variant:`title-large`,className:`text-[var(--content-emphasised)]`,"data-testid":r,children:n})]})]}),a?.length?(0,Y.jsxs)(`div`,{className:`flex flex-col items-start gap-1`,children:[l.length?(0,Y.jsx)(`div`,{className:`flex flex-row flex-wrap items-start gap-1`,children:l.map(e=>(0,Y.jsx)(Zs,{icon:e.icon,label:e.label,multiline:e.multiline},e.label))}):null,u.map(e=>(0,Y.jsx)(Zs,{icon:e.icon,label:e.label,multiline:!0},e.label))]}):null,o?(0,Y.jsx)(`div`,{className:`mt-auto w-full`,children:o}):null]})}function $s({ratio:e,exhausted:t=!1,onAddCredits:n}){let{t:r}=s(`settings`),i=r(`planCard.usageBalanceTitle`),a=Math.round(e*100),o=e>=1;return(0,Y.jsxs)(`div`,{"data-testid":`plan-usage-balance`,className:`flex w-full flex-col gap-3 rounded-[10px] border border-[var(--border-base)] bg-[color-mix(in_srgb,var(--surface-overlay)_40%,transparent)] px-4 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-3`,children:[(0,Y.jsx)(W,{as:`span`,variant:`body-large-default`,className:`min-w-0 text-[var(--content-emphasised)]`,children:i}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center justify-end gap-3`,children:[(0,Y.jsx)(It,{value:e,height:8,"aria-label":i,fillColor:o?`var(--system-negative-strong)`:void 0,className:`w-full min-w-0 max-w-[249px] rounded-full border border-[var(--border-base)] bg-[var(--surface-overlay)]`}),(0,Y.jsx)(W,{as:`span`,variant:`body-small-default`,className:o?`whitespace-nowrap text-[var(--system-negative-strong)]`:`whitespace-nowrap text-[var(--content-secondary)]`,children:r(`planCard.usageBalancePctUsed`,{pct:a})})]})]}),t?(0,Y.jsxs)(`div`,{className:`flex min-h-8 w-full items-center justify-between gap-2 rounded-md bg-[var(--system-negative-weak)] px-2 py-1`,children:[(0,Y.jsx)(W,{as:`span`,variant:`body-medium-default`,className:`min-w-0 text-[var(--system-negative-strong)]`,children:r(`planCard.usageBalanceExhausted`)}),n?(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-[18px] w-px bg-[var(--system-negative-strong)] opacity-30`}),(0,Y.jsx)(G,{variant:`dangerGhost`,size:`compact`,leftIcon:(0,Y.jsx)(S,{}),onClick:n,"data-testid":`plan-usage-add-credits`,children:r(`planCard.usageBalanceAddCredits`)})]}):null]}):null]})}function ec(){let{t:e}=s(`settings`);return(0,Y.jsx)(W,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-emphasised)]`,children:e(`planCard.heading`)})}function tc({packages:e,currentKey:t,currentPriceCents:n,isProUser:i,canChangePackage:a,relation:c,onManage:l,onTierUpgraded:u}){let{t:d}=s(`settings`),f=o(),p=r(tt()),{changePackage:m,isPending:h}=be(),[g,_]=(0,J.useState)(!1),[v,y]=(0,J.useState)(!1),b=ot()===`light`?`dark`:`light`;Se();let x=on(),S=R(e,t),C=g||p.isPending||h,w=async()=>{if(!S)return;let e=await m(S.key);e&&(y(!1),e.status===`ok`?u?.():K.success(d(`planCard.alreadyOnPlanToast`)))},T=async()=>{if(S){if(x){xn(ct.settings.usageBilling);return}if(i&&!a){l();return}if(i){y(!0);return}_(!0);try{let e=await p.mutateAsync({body:{target_plan_id:`pro`,package:S.key,confirm:!0,return_target:Sn()}});e.status===`redirect`&&e.checkout_url?(Ft({kind:`package`,packageKey:S.key}),Ot(f),it(e.checkout_url)):(await f.invalidateQueries({queryKey:hn()}),await f.invalidateQueries({queryKey:Gt()}))}catch(e){K.error(ge(e,d(`planCard.checkoutFailedToast`)))}finally{_(!1)}}};if(S==null||c===`switch`)return null;let D=n==null?null:S.total_price_cents-n,O=D!=null&&D>0?d(`planCard.powerUpFor`,{amount:ae(D)}):d(`planCard.powerUp`);return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Qs,{theme:b,testId:`plan-tile-next`,tierKey:S.key,name:S.name,tag:(0,Y.jsx)(Jt,{className:`bg-[var(--feed-digest-weak)] text-[var(--credits-accent)]`,leftIcon:(0,Y.jsx)(E,{className:`text-[var(--credits-accent)]`,"aria-hidden":!0}),children:d(`planCard.nextPlan`)}),specs:ne(S,d(`planCard.usageChip`,{name:S.name})),footer:(0,Y.jsx)(G,{variant:`primary`,fullWidth:!0,tintColor:`var(--aux-white)`,className:`h-10 border-transparent bg-[var(--system-positive-strong)] hover:bg-[var(--system-positive-strong)] hover:opacity-90 active:bg-[var(--system-positive-strong)]`,onClick:()=>void T(),disabled:C,leftIcon:C?(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}):void 0,"data-testid":`recommended-upgrade-button`,children:O})}),(0,Y.jsx)(_e,{open:v,relation:c,packageName:S.name,targetPackage:S,pending:C,onConfirm:()=>void w(),onCancel:()=>y(!1)})]})}function nc(e){return e?.find(e=>e.id===`pro`)??null}function rc(e,t){let n=e?.package;return!e||e.plan_id===`base`||!re(n)?null:nc(t)?.packages?.find(e=>e.key===n.key&&e.version===n.version)??null}function ic({onManage:e,onTierUpgraded:t}){let{t:n}=s(`settings`),r=p(),i=a(Ne()),o=a(Qt()),{balance:c,availableUsageBalance:l,totalUsageBalance:u}=Ye(),[d,f]=(0,J.useState)(!1),m=rc(i.data,o.data?.plans),h=ut({subscription:i.data,availableUsageBalance:l,totalUsageBalance:u});if(i.isLoading||o.isLoading)return(0,Y.jsxs)(_t,{padding:`md`,children:[(0,Y.jsx)(ec,{}),(0,Y.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(W,{as:`span`,variant:`body-small-default`,children:n(`planCard.loading`)})]})]});let g=i.data,_=o.data?.plans,v=_?.find(e=>e.id===g?.plan_id);if(i.isError||o.isError||!g||!_||!v)return(0,Y.jsx)(q,{tone:`error`,children:n(`planCard.loadError`)});let y=v.id===`pro`?z(g.package):v.name??v.id,b=g.cancel_at_period_end===!0||!!g.cancel_at,x=g.status===`canceled`,S=he(g),C=!b&&!x&&g.current_period_end,w=b&&!x&&S,T=nc(_)?.packages??[],E=g.package?.key??null,D=E??`free`,O=T.length>0&&(v.id===`base`||re(g.package)||V(g))?()=>r(ct.plans):e,k=V(g),A=v.id===`base`||re(g.package)?`upgrade`:`switch`,j=v.id===`base`,N=j?Te():m?ne(m,n(`planCard.usageChip`,{name:m.name})):null,P=j?0:m?.total_price_cents??null,F=j?n(`planCard.freeForever`):m?L(m.total_price_cents):null,I=F?(0,Y.jsx)(`div`,{className:`flex h-10 items-center border-t border-[var(--border-base)]`,children:(0,Y.jsx)(W,{as:`span`,variant:`body-large-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-price`,children:F})}):void 0,ee=c!=null&&Number(c)<=0,te=h!=null&&h.ratio>=1&&ee,R=(h?(0,Y.jsx)($s,{ratio:h.ratio,exhausted:te,onAddCredits:()=>f(!0)}):null)??I;return(0,Y.jsxs)(_t,{padding:`md`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,Y.jsx)(ec,{}),C&&(0,Y.jsx)(W,{variant:`body-small-default`,as:`div`,className:`leading-snug text-[var(--content-tertiary)]`,"data-testid":`plan-card-renews`,children:n(`planCard.renewsOn`,{date:le(g.current_period_end)})}),w&&(0,Y.jsx)(W,{variant:`body-small-default`,as:`div`,className:`leading-snug text-[var(--system-mid-strong)]`,"data-testid":`plan-card-cancels`,children:n(`planCard.endsOn`,{date:le(S)})})]}),(0,Y.jsx)(G,{variant:`outlined`,onClick:O,"data-testid":j?`plan-card-plans-button`:`plan-card-manage-subscription-button`,children:n(j?`planCard.viewAllPlans`:`planCard.manageSubscription`)})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 lg:flex-row lg:items-stretch`,children:[(0,Y.jsx)(Qs,{testId:`plan-tile-current`,tierKey:D,name:y,nameTestId:`plan-card-name`,tag:(0,Y.jsx)(Jt,{tone:`info`,children:n(`planCard.current`)}),specs:N,footer:R}),(0,Y.jsx)(tc,{packages:T,currentKey:E,currentPriceCents:P,isProUser:v.id!==`base`,canChangePackage:k,relation:A,onManage:e,onTierUpgraded:t})]})]}),(0,Y.jsx)(Cn,{open:d,onOpenChange:f})]})}function ac(e,t,n){let r=new URLSearchParams(t.search);n(r),e({pathname:t.pathname,search:`?${r}`,hash:t.hash},{replace:!0})}var oc=`setup_intent_client_secret`,sc=`redirect_status`,cc=[`setup_intent`,oc,sc];function lc(){return gn(Bt.getState().platformSession)}async function uc({clientSecret:e,redirectStatus:t,confirmSaved:r,generation:i}){await Tn({alsoReady:lc});let a=Ve(),o=[],s=()=>{for(;o.length>0;)o.pop()?.()},c=()=>{Ve()!==a&&(s(),Oo.getState().abandonResolution(i))};o.push(Bt.subscribe(c),$e.subscribe(c));let l=e=>{s();let{settleOutcome:t,discardResolution:n}=Oo.getState();if(Ve()!==a){n(i);return}t(e,a,i)},u=e=>{console.warn(`[useSetupIntentReturn] card not saved on redirect return`,{redirectStatus:t}),l({kind:`error`,message:e??n(`settings:autoTopUpPaymentMethodModal.confirmFailed`)})};try{let t=await no();if(t==null){u(void 0);return}let{setupIntent:n,error:i}=await t.retrieveSetupIntent(e);if(n?.status===`succeeded`){l({kind:`saved`,card:await r({setupIntentId:ro(e)})});return}u(i?.message??n?.last_setup_error?.message)}catch{u(void 0)}}function dc(){let[e]=m(),t=f(),n=p(),r=Do(),i=(0,J.useRef)(!1);(0,J.useEffect)(()=>{let a=e.get(oc);if(a==null||i.current)return;i.current=!0;let o=e.get(sc);ac(n,t,e=>{for(let t of cc)e.delete(t);e.set(`tab`,`billing`)}),uc({clientSecret:a,redirectStatus:o,confirmSaved:r,generation:Oo.getState().beginResolving()})},[t,n,e,r])}function fc({onCheckoutCancelled:e}){let[t]=m(),n=p(),r=o(),{t:i}=s(`settings`);return(0,J.useEffect)(()=>{let a=t.get(`billing_status`);a&&(a===`success`?Ut(r):a===`cancel`&&(K.info(t.get(`billing_context`)===`upgrade`?i(`billingStatusHandler.upgradeCancelToast`):i(`billingStatusHandler.topUpCancelToast`),{id:`billing-status`}),e()),n(ct.settings.usageBilling,{replace:!0}))},[t,n,r,e,i]),null}function pc({onFinishSetup:e}){let{t}=s(`settings`),n=Nt(),{data:r}=a({...Ne(),enabled:n}),i=r?.plan_id===`pro`,{data:o}=a({..._n(),enabled:i&&n}),c=i&&o?.domain_setup_available===!0,{domains:l}=ee(c,o?.primary_assistant_id),u=l!==void 0&&l.results.length===0;return!c||!u?null:(0,Y.jsx)(q,{tone:`info`,title:t(`billingPage.finishSetupTitle`,{plan:z(r?.package)}),actions:(0,Y.jsx)(G,{variant:`outlined`,size:`compact`,onClick:e,"data-testid":`finish-pro-setup-button`,children:t(`billingPage.finishSetupButton`)}),"data-testid":`finish-pro-setup-notice`,children:t(`billingPage.finishSetupBody`)})}function mc(){let{t:e}=s(`settings`),t=sn({platformHostedOnly:!0}),n=sn(),r=mt(),i=Xt(),[a,o]=m(),[c,l]=(0,J.useState)(!1),u=(0,J.useCallback)(()=>l(!0),[]),d=(0,J.useCallback)(()=>l(!1),[]),[f,p]=(0,J.useState)(!1),h=(0,J.useCallback)(()=>p(!0),[]),[g,_]=(0,J.useState)(!1),[v,y]=(0,J.useState)(null),[b,x]=(0,J.useState)(!1),S=(0,J.useCallback)(()=>{y(Date.now()),x(!1)},[]),{showOffer:C,amountUsd:w}=Fn(v),T=(0,J.useCallback)(e=>{e||x(!0)},[]);(0,J.useEffect)(()=>{if(n!==`full`)return;let e=a.has(`adjust_plan`),t=a.has(`pro_onboarding`);!e&&!t||(e&&l(!0),t&&_(!0),o(e=>{let t=new URLSearchParams(e);return t.delete(`adjust_plan`),t.delete(`pro_onboarding`),t},{replace:!0}))},[n,a,o]);let E=a.has(`session_id`),D=(0,J.useCallback)(()=>{_(!1),o(e=>{let t=new URLSearchParams(e);return t.delete(`session_id`),t},{replace:!0})},[o]),O=(0,J.useCallback)(()=>{o(e=>{let t=new URLSearchParams(e);return t.set(`pro_onboarding`,``),t},{replace:!0})},[o]);if(n===`disabled`)return(0,Y.jsx)(`div`,{className:`space-y-4`,children:(0,Y.jsx)(dn,{children:e(`billingPage.platformLoginNotice`)})});if(i)return(0,Y.jsx)(`div`,{className:`space-y-4`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,Y.jsx)(M,{className:`h-4 w-4 animate-spin`}),e(`billingPage.loadingBilling`)]})});let k=r,A=k||E||g;return!r&&t!==`gated`?(0,Y.jsx)(`div`,{className:`space-y-4`,children:(0,Y.jsx)(q,{tone:`warning`,children:e(`billingPage.billingUnavailable`)})}):(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(J.Suspense,{fallback:null,children:[(0,Y.jsx)(fc,{onCheckoutCancelled:S}),(0,Y.jsx)($o,{})]}),k&&(0,Y.jsx)(Ls,{}),k&&(0,Y.jsx)(pc,{onFinishSetup:O}),k&&(0,Y.jsx)(ic,{onManage:u,onTierUpgraded:h}),k&&(0,Y.jsx)(Mi,{open:c,onClose:d,onTierUpgraded:h}),(0,Y.jsx)(Pn,{open:C&&!b,onOpenChange:T,amountUsd:w}),(0,Y.jsx)(J.Suspense,{fallback:null,children:(0,Y.jsx)(Xs,{})}),(0,Y.jsx)(J.Suspense,{fallback:null,children:(0,Y.jsx)(Ko,{})}),(0,Y.jsx)(J.Suspense,{fallback:null,children:(0,Y.jsx)(Js,{})}),A&&(0,Y.jsx)(De,{open:E||g,onClose:D}),k&&(0,Y.jsx)(De,{mode:`resize`,open:f,onClose:()=>p(!1)})]})}function hc(){return(0,Y.jsx)(mc,{})}function gc(){let e=rn(),t=sn({platformHostedOnly:!0}),n=sn();return(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[t===`full`&&n!==`gated`&&(0,Y.jsx)(Is,{}),(0,Y.jsx)(li,{assistantId:e})]})}function _c(){let{t:e}=s(`settings`),t=sn(),[n]=m(),r=p(),i=f();dc();let a=Nn(t,n),o=a&&n.get(`tab`)!==`usage`?`billing`:`usage`,c=$t();return(0,J.useEffect)(()=>{c&&n.get(`tab`)!==o&&ac(r,i,e=>e.set(`tab`,o))},[c,n,o,r,i]),(0,Y.jsx)(`div`,{className:`space-y-6`,children:(0,Y.jsxs)(Xe.Root,{value:o,onValueChange:e=>{ac(r,i,t=>t.set(`tab`,e))},children:[(0,Y.jsxs)(Xe.List,{children:[a&&(0,Y.jsx)(Xe.Trigger,{value:`billing`,children:e(`billingPage.billingTab`)}),(0,Y.jsx)(Xe.Trigger,{value:`usage`,children:e(`billingPage.usageTab`)})]}),a&&(0,Y.jsx)(Xe.Panel,{value:`billing`,className:`pt-4`,children:(0,Y.jsx)(hc,{})}),(0,Y.jsx)(Xe.Panel,{value:`usage`,className:`pt-4`,children:(0,Y.jsx)(gc,{})})]})})}export{_c as BillingPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{d as e,g as t,r as n,t as r}from"./react-DPM_L_aA.js";import{Xv as i}from"./index-CleA12ha.js";var a=r();function o(){let[r]=t(),{hash:o}=e(),s=r.toString();return(0,a.jsx)(n,{replace:!0,to:`${i.settings.usage}${s?`?${s}`:``}${o}`})}export{o as BillingRedirectPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e}from"./vendor-C_e0Rl2s.js";import{f as t,r as n,t as r}from"./react-DPM_L_aA.js";import{E as i,Tt as a,ga as o,i as s,qn as c}from"./icons-xHdc0dPY.js";import{$t as l,Bi as u,Ns as d,Sh as f,Xv as p,db as m,en as h,pb as g}from"./index-CleA12ha.js";var _=r();function v(e){if(e==null)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleString(void 0,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0})}function y({t:e}){return(0,_.jsx)(m,{children:(0,_.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,_.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,_.jsx)(o,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`})}),(0,_.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:e(`bookmarksPage.emptyTitle`)}),(0,_.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`bookmarksPage.emptyDescription`)})]})})}function b({bookmark:e,isFirst:t,onOpen:n,onRemove:r,t:i}){let a=e.conversationTitle&&e.conversationTitle.trim().length>0?e.conversationTitle:i(`bookmarksPage.untitledConversation`),o=e.messageRole!==`user`,c=v(e.createdAt);return(0,_.jsxs)(`div`,{className:`flex items-start gap-3 py-3 ${t?``:`border-t border-[var(--border-base)]`}`,children:[(0,_.jsx)(`span`,{"aria-hidden":!0,className:`mt-1 h-8 w-1 shrink-0 rounded-full`,style:{backgroundColor:o?`var(--content-default)`:`var(--content-tertiary)`}}),(0,_.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,_.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,_.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:a}),c?(0,_.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:c}):null]}),e.messagePreview?(0,_.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-small-default text-[var(--content-tertiary)]`,children:e.messagePreview}):null]}),(0,_.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,_.jsx)(g,{variant:`outlined`,onClick:n,children:i(`bookmarksPage.open`)}),(0,_.jsx)(`button`,{type:`button`,onClick:r,title:i(`bookmarksPage.removeBookmark`),"aria-label":i(`bookmarksPage.removeBookmark`),className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-active)] hover:text-[var(--content-default)]`,children:(0,_.jsx)(s,{className:`h-4 w-4`})})]})]})}function x(){let{t:r}=e(`settings`),o=t(),{bookmarks:s,isLoading:v,isError:x,refetch:S}=h(),C=l(),w=u();return f.use.hydrated()&&!w?(0,_.jsx)(n,{replace:!0,to:p.settings.general}):v?(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,_.jsx)(c,{className:`h-6 w-6 animate-spin text-[var(--content-disabled)]`})})}):x?(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(m,{children:(0,_.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,_.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--system-error-lighter)]`,children:(0,_.jsx)(i,{className:`h-6 w-6 text-[var(--system-error-default)]`})}),(0,_.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:r(`bookmarksPage.errorTitle`)}),(0,_.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:r(`bookmarksPage.errorDescription`)}),(0,_.jsxs)(g,{variant:`outlined`,onClick:S,className:`mt-4`,children:[(0,_.jsx)(a,{className:`h-4 w-4`}),r(`bookmarksPage.retry`)]})]})})}):s.length===0?(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(y,{t:r})}):(0,_.jsx)(`div`,{className:`w-full`,children:(0,_.jsx)(m,{noPadding:!0,className:`px-4`,children:s.map((e,t)=>(0,_.jsx)(b,{bookmark:e,isFirst:t===0,onOpen:()=>d(o,e.conversationId,{messageId:e.messageId}),onRemove:()=>{C(e.messageId,e.conversationId,!0)},t:r},e.id))})})}export{x as BookmarksPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-C_e0Rl2s.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{_a as i}from"./index-CleA12ha.js";import{t as a}from"./format-file-size-Daiq0gMr.js";var o=e(n(),1),s=r(),c={verified:{label:`Verified`,className:`bg-[var(--system-positive-weak)] text-[var(--system-positive-strong)]`},signed:{label:`Signed`,className:`bg-[var(--system-info-weak)] text-[var(--system-info-strong)]`},unsigned:{label:`Unsigned`,className:`bg-[var(--surface-active)] text-[var(--content-secondary)]`},tampered:{label:`Tampered — signature invalid`,className:`bg-[var(--system-negative-weak)] text-[var(--system-negative-strong)]`}};function l(){let{t:e}=t(),[n,r]=(0,o.useState)(null),[l,u]=(0,o.useState)(!1);if((0,o.useEffect)(()=>{window.vellum?.bundleConfirm?.getData().then(e=>{e&&r(e)})},[]),!n)return(0,s.jsx)(`div`,{className:`flex h-svh w-screen items-center justify-center bg-background text-muted-foreground select-none`,children:e(`bundleConfirmPage.loading`)});let{manifest:d,scanResult:f,signatureResult:p,bundleSizeBytes:m}=n,h=c[p.trustTier],g=p.trustTier===`tampered`,_=f.warnings;return(0,s.jsxs)(`div`,{className:`flex h-svh w-screen flex-col bg-background px-6 pt-14 pb-6 text-foreground select-none`,children:[(0,s.jsxs)(`div`,{className:`flex items-start gap-3`,children:[d.icon?(0,s.jsx)(`span`,{className:`text-5xl leading-none`,children:d.icon}):(0,s.jsx)(`span`,{className:`text-5xl leading-none`,children:`📦`}),(0,s.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,s.jsx)(`h1`,{className:`truncate text-lg font-semibold`,children:d.name}),d.description&&(0,s.jsx)(`p`,{className:`text-muted-foreground mt-0.5 text-sm leading-snug`,children:d.description})]})]}),(0,s.jsxs)(`div`,{className:`mt-4 flex items-center gap-2`,children:[(0,s.jsx)(`span`,{className:i(`inline-block rounded-full px-2.5 py-0.5 text-xs font-medium`,h.className),children:h.label}),p.trustTier===`signed`&&p.signerDisplayName&&(0,s.jsx)(`span`,{className:`text-muted-foreground text-xs`,children:e(`bundleConfirmPage.bySigner`,{name:p.signerDisplayName})})]}),(0,s.jsxs)(`dl`,{className:`mt-4 grid grid-cols-[auto_1fr] gap-x-3 gap-y-1.5 text-sm`,children:[(0,s.jsx)(`dt`,{className:`text-muted-foreground`,children:e(`bundleConfirmPage.size`)}),(0,s.jsx)(`dd`,{children:a(m)}),(0,s.jsx)(`dt`,{className:`text-muted-foreground`,children:e(`bundleConfirmPage.createdBy`)}),(0,s.jsx)(`dd`,{className:`truncate`,children:d.created_by}),d.capabilities.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`dt`,{className:`text-muted-foreground`,children:e(`bundleConfirmPage.capabilities`)}),(0,s.jsx)(`dd`,{className:`truncate`,children:d.capabilities.join(`, `)})]})]}),_.length>0&&(0,s.jsxs)(`div`,{className:`mt-4`,children:[(0,s.jsx)(`button`,{type:`button`,className:`text-muted-foreground text-xs font-medium hover:underline`,onClick:()=>u(e=>!e),children:e(l?`bundleConfirmPage.hideWarnings`:`bundleConfirmPage.showWarnings`,{count:_.length})}),l&&(0,s.jsx)(`ul`,{className:`mt-1.5 space-y-1 text-xs`,children:_.map((e,t)=>(0,s.jsx)(`li`,{className:`rounded bg-[var(--system-mid-weak)] px-2 py-1 text-[var(--system-mid-strong)]`,children:e},t))})]}),(0,s.jsxs)(`div`,{className:`mt-auto flex items-center justify-end gap-3 pt-4`,children:[(0,s.jsx)(`button`,{type:`button`,className:`rounded-md border border-border px-4 py-1.5 text-sm font-medium text-foreground hover:bg-muted`,onClick:()=>window.vellum?.bundleConfirm?.respond(!1),children:e(`bundleConfirmPage.cancel`)}),(0,s.jsx)(`button`,{type:`button`,className:i(`rounded-md px-4 py-1.5 text-sm font-medium text-white`,g?`bg-red-600 hover:bg-red-700`:`bg-primary hover:bg-primary/90`),onClick:()=>window.vellum?.bundleConfirm?.respond(!0),children:e(g?`bundleConfirmPage.installAnyway`:`bundleConfirmPage.install`)})]})]})}export{l as BundleConfirmPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-C_e0Rl2s.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{Ki as i,Yr as a,qa as o}from"./icons-xHdc0dPY.js";import{C as s,Fv as c,Fy as l,Hs as u,Iy as d,Ji as f,Jn as p,Mt as m,Py as h,T as g,Vg as _,Xn as v,Yn as y,ai as b,c as x,ci as S,cn as C,ev as w,fb as T,gr as E,lc as D,ln as O,ob as k,pb as A,qn as j,u as M}from"./index-CleA12ha.js";var N=o(`corner-up-left`,[[`path`,{d:`M20 20v-7a4 4 0 0 0-4-4H4`,key:`1nkjon`}],[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}]]),P=e(n(),1),F=r();function I({entry:e,channelLabel:n,assistantName:r,isReferenced:a,onToggleReference:o}){let{t:s}=t(`chat`),c=p(e.timestamp),u=e.role===`user`?s(`channelTranscriptPanel.unknownSender`):r??s(`channelTranscriptPanel.assistantSender`),f=e.provenance.senderName??u,g=e.provenance.reaction;return(0,F.jsxs)(`article`,{"data-reveal-row":``,"data-testid":`channel-transcript-entry`,className:`group flex flex-col gap-1 rounded-lg px-2 py-2 hover:bg-[var(--surface-active)]`,children:[(0,F.jsxs)(`header`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,F.jsx)(T,{as:`span`,variant:`body-small-emphasised`,className:`min-w-0 truncate text-[var(--content-default)]`,children:f}),c?(0,F.jsx)(T,{as:`span`,variant:`body-small-lighter`,title:M(c),className:`shrink-0 text-[var(--content-tertiary)]`,children:x(c)}):null,(0,F.jsx)(`span`,{className:`flex-1`}),y(e)?(0,F.jsx)(A,{variant:`ghost`,size:`compact`,"data-reveal":``,active:a,leftIcon:a?(0,F.jsx)(i,{}):(0,F.jsx)(N,{}),onClick:()=>o(e),"aria-pressed":a,"aria-label":a?s(`channelTranscriptPanel.removeReferenceAria`):s(`channelTranscriptPanel.referenceAria`,{channel:n}),className:`shrink-0`,children:s(a?`channelTranscriptPanel.referenced`:`channelTranscriptPanel.reference`)}):null]}),g?(0,F.jsx)(T,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:s(g.op===`added`?`channelTranscriptPanel.reactionAdded`:`channelTranscriptPanel.reactionRemoved`,{emoji:m(g)})}):(0,F.jsxs)(T,{as:`div`,variant:`body-small-default`,className:`${l} mb-0`,children:[(0,F.jsx)(`span`,{"aria-hidden":`true`,className:h}),(0,F.jsx)(`span`,{className:`${d} whitespace-pre-wrap break-words`,children:e.text||s(`channelTranscriptPanel.noText`)})]})]})}function L({sidecarRef:e,threadName:n,sourceHref:r,entries:i,assistantName:o,referencedEntryId:c,onToggleReference:l,onClose:u}){let{t:d}=t(`chat`),f=S(e.channelId),p=n?d(`channelTranscriptPanel.namedTitle`,{channel:f,thread:n}):d(`channelTranscriptPanel.title`,{channel:f});return(0,F.jsxs)(s,{icon:(0,F.jsx)(b,{channelId:e.channelId,className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),title:p,headerTrailing:(0,F.jsx)(k,{tone:`neutral`,children:d(`channelTranscriptPanel.readOnly`)}),headerActions:r?(0,F.jsx)(A,{asChild:!0,variant:`outlined`,leftIcon:(0,F.jsx)(a,{}),className:`shrink-0`,children:(0,F.jsx)(`a`,{href:r,target:`_blank`,rel:`noreferrer noopener`,onClick:e=>_(e,r),children:d(`channelTranscriptPanel.openInChannel`,{channel:f})})}):void 0,closeLabel:d(`channelTranscriptPanel.closeAria`),closeTooltip:d(`channelTranscriptPanel.closeTooltip`),onClose:u,children:[(0,F.jsx)(T,{as:`p`,variant:`body-small-lighter`,className:`mb-3 text-[var(--content-tertiary)]`,children:d(`channelTranscriptPanel.readOnlyNote`,{channel:f})}),i.length===0?(0,F.jsx)(g,{children:v(e.channelId)?d(`channelTranscriptPanel.emptyThread`,{channel:f}):d(`channelTranscriptPanel.emptyNoMessageDetail`,{channel:f})}):(0,F.jsx)(`div`,{className:`flex flex-col gap-1`,children:i.map(e=>(0,F.jsx)(I,{entry:e,channelLabel:f,assistantName:o,isReferenced:c===e.id,onToggleReference:l},e.id))})]})}function R({sidecarRef:e,onClose:t}){let n=w.use.activeAssistantId(),r=D.use.activeConversationId(),{target:i,entries:a}=j({conversationId:r,conversation:f(n,r,!0),messages:E()}),o=c.use.name(),s=C.use.reference(),l=C.use.toggleReference(),d=u(i,e),p=d?a:[],m=S(e.channelId),h=(0,P.useCallback)(e=>{i&&l(O({entry:e,target:i,channelLabel:m}))},[i,l,m]);return(0,F.jsx)(L,{sidecarRef:e,threadName:d?i?.threadName:void 0,sourceHref:d?i?.sourceHref:void 0,entries:p,assistantName:o,referencedEntryId:s?.messageId??null,onToggleReference:h,onClose:t})}export{R as ChannelTranscriptPanel};
|
|
@@ -6,4 +6,4 @@ Ideal para canales formados solo por personas en las que ya confías.`,confirmAc
|
|
|
6
6
|
|
|
7
7
|
Hacerlo podría costarte dinero y exponerte a vulnerabilidades de seguridad y privacidad.
|
|
8
8
|
|
|
9
|
-
Actívalo con extrema precaución.`,confirmAction:`Permitir desconocidos`}},s={heading:`Acceso predeterminado`,subtitle:`Cuánto hace {assistant} por su cuenta, según el tipo de conversación. Cada canal puede anular esto más abajo, y las <trustRules>Reglas de confianza</trustRules> afinan cuándo pregunta.`,bucketAria:`Acceso predeterminado del asistente para {bucket}`},c={defaultSuffix:`predeterminado`,defaultPlaceholder:`Predeterminado`},l={defaultMarker:`· predeterminado`},u={overridesLoadFailed:`No se pudieron cargar los ajustes de acceso. Estos controles seguirán desactivados hasta que se carguen. Prueba a volver a abrir esta página.`,perChannelOverrides:`Anulaciones por canal`},d={heading:`Comportamiento en hilos`,selectAria:`Comportamiento de Slack en hilos`,mentionsOnly:`Solo menciones`,mentionsOnlyHelp:`El bot solo responde cuando se le menciona con @.`,followThreads:`Seguir el hilo tras la primera mención`,followThreadsHelp:`Tras una mención con @ en un hilo, el bot escucha el resto de ese hilo.`},f={presenceHint:`Añádelo con <invite>/invite {handle}</invite> o quítalo con <remove>/remove {handle}</remove> en ese canal de Slack. Aquí solo aparecen los canales en los que está {assistant}.`,loading:`Cargando…`,loadFailed:`No se pudieron cargar los canales. Prueba a volver a abrir esta página.`,emptyTitle:`Aún no hay canales`,searchPlaceholder:`Buscar canales`,searchAria:`Buscar canales`,filterGroupAria:`Filtrar canales por tipo`,noMatches:`Ningún canal coincide.`,accessAria:`Acceso del asistente en {channel}`,filterAll:`{count, plural, one {Todos (#)} other {Todos (#)}}`,filterPublic:`{count, plural, one {Público (#)} other {Públicos (#)}}`,filterPrivate:`{count, plural, one {Privado (#)} other {Privados (#)}}`},p={accountSid:`SID de la cuenta`,authToken:`Token de autenticación`,authTokenPlaceholder:`Token de autenticación de Twilio`,saving:`Guardando…`,save:`Guardar`},m={slack:{label:`Slack`,disconnectMessage:`Esto borra los tokens de bot y de aplicación de Slack guardados para este asistente. Puedes volver a conectarlo más tarde.`},telegram:{label:`Telegram`,disconnectMessage:`Esto borra el token de bot de Telegram guardado para este asistente. Puedes volver a conectarlo más tarde.`,disconnectedPitch:`Conecta un bot de Telegram para que {assistant} pueda enviar y recibir mensajes en Telegram.`},discord:{label:`Discord`,disconnectedPitch:`Conecta un bot de Discord para que {assistant} pueda leer y responder en tu servidor.`,disconnectMessage:`Esto borra el token del bot de Discord de este asistente y el bot deja de recibir mensajes. El bot sigue en tu servidor hasta que lo elimines alli.`},email:{label:`Correo`},phone:{label:`Llamadas telefónicas`,disconnectMessage:`Esto borra las credenciales de Twilio guardadas para este asistente. Puedes volver a conectarlo más tarde.`,disconnectedPitch:`Conecta tu cuenta de Twilio para que {assistant} pueda hacer y contestar llamadas.`}},h={apiKeyConfigured:`Clave API de {providerName} configurada. Para reconfigurar, ejecuta la habilidad <code>{setupSkill}</code>.`,connecting:`Conectando con la plataforma Vellum…`,openProvider:`Abrir {providerName}`,platformLoginNotice:`Inicia sesión en la plataforma Vellum para administrar la configuración de correo.`,providerLabel:`Proveedor`,saveSuccessToast:`Configuración de correo guardada.`,setupInstructions:`Configura {providerName} mediante la CLI del asistente: pídele al asistente que ejecute la habilidad <code>{setupSkill}</code>. Te guiará para guardar la clave API, detectar el dominio y (opcionalmente) configurar un webhook entrante.`,subtitle:`Configura cómo tu asistente envía y recibe correo`,title:`Correo`},g={addressLabel:`Dirección`,checkingSubscription:`Comprobando suscripción…`,
|
|
9
|
+
Actívalo con extrema precaución.`,confirmAction:`Permitir desconocidos`}},s={heading:`Acceso predeterminado`,subtitle:`Cuánto hace {assistant} por su cuenta, según el tipo de conversación. Cada canal puede anular esto más abajo, y las <trustRules>Reglas de confianza</trustRules> afinan cuándo pregunta.`,bucketAria:`Acceso predeterminado del asistente para {bucket}`},c={defaultSuffix:`predeterminado`,defaultPlaceholder:`Predeterminado`},l={defaultMarker:`· predeterminado`},u={overridesLoadFailed:`No se pudieron cargar los ajustes de acceso. Estos controles seguirán desactivados hasta que se carguen. Prueba a volver a abrir esta página.`,perChannelOverrides:`Anulaciones por canal`},d={heading:`Comportamiento en hilos`,selectAria:`Comportamiento de Slack en hilos`,mentionsOnly:`Solo menciones`,mentionsOnlyHelp:`El bot solo responde cuando se le menciona con @.`,followThreads:`Seguir el hilo tras la primera mención`,followThreadsHelp:`Tras una mención con @ en un hilo, el bot escucha el resto de ese hilo.`},f={presenceHint:`Añádelo con <invite>/invite {handle}</invite> o quítalo con <remove>/remove {handle}</remove> en ese canal de Slack. Aquí solo aparecen los canales en los que está {assistant}.`,loading:`Cargando…`,loadFailed:`No se pudieron cargar los canales. Prueba a volver a abrir esta página.`,emptyTitle:`Aún no hay canales`,searchPlaceholder:`Buscar canales`,searchAria:`Buscar canales`,filterGroupAria:`Filtrar canales por tipo`,noMatches:`Ningún canal coincide.`,accessAria:`Acceso del asistente en {channel}`,filterAll:`{count, plural, one {Todos (#)} other {Todos (#)}}`,filterPublic:`{count, plural, one {Público (#)} other {Públicos (#)}}`,filterPrivate:`{count, plural, one {Privado (#)} other {Privados (#)}}`},p={accountSid:`SID de la cuenta`,authToken:`Token de autenticación`,authTokenPlaceholder:`Token de autenticación de Twilio`,saving:`Guardando…`,save:`Guardar`},m={slack:{label:`Slack`,disconnectMessage:`Esto borra los tokens de bot y de aplicación de Slack guardados para este asistente. Puedes volver a conectarlo más tarde.`},telegram:{label:`Telegram`,disconnectMessage:`Esto borra el token de bot de Telegram guardado para este asistente. Puedes volver a conectarlo más tarde.`,disconnectedPitch:`Conecta un bot de Telegram para que {assistant} pueda enviar y recibir mensajes en Telegram.`},discord:{label:`Discord`,disconnectedPitch:`Conecta un bot de Discord para que {assistant} pueda leer y responder en tu servidor.`,disconnectMessage:`Esto borra el token del bot de Discord de este asistente y el bot deja de recibir mensajes. El bot sigue en tu servidor hasta que lo elimines alli.`},email:{label:`Correo`},phone:{label:`Llamadas telefónicas`,disconnectMessage:`Esto borra las credenciales de Twilio guardadas para este asistente. Puedes volver a conectarlo más tarde.`,disconnectedPitch:`Conecta tu cuenta de Twilio para que {assistant} pueda hacer y contestar llamadas.`}},h={apiKeyConfigured:`Clave API de {providerName} configurada. Para reconfigurar, ejecuta la habilidad <code>{setupSkill}</code>.`,connecting:`Conectando con la plataforma Vellum…`,openProvider:`Abrir {providerName}`,platformLoginNotice:`Inicia sesión en la plataforma Vellum para administrar la configuración de correo.`,providerLabel:`Proveedor`,saveSuccessToast:`Configuración de correo guardada.`,setupInstructions:`Configura {providerName} mediante la CLI del asistente: pídele al asistente que ejecute la habilidad <code>{setupSkill}</code>. Te guiará para guardar la clave API, detectar el dominio y (opcionalmente) configurar un webhook entrante.`,subtitle:`Configura cómo tu asistente envía y recibe correo`,title:`Correo`},g={addressLabel:`Dirección`,checkingSubscription:`Comprobando suscripción…`,confirm:`Confirmar`,create:`Crear`,createEmailFailedFallback:`No se pudo crear la dirección de correo.`,creating:`Creando…`,domainLabel:`Dominio`,domainRegisteredToast:`Dominio {domain} registrado.`,domainReleaseFailedToast:`No se pudo liberar el dominio.`,domainReleasedToast:`Dominio liberado.`,emailAddressLabel:`Dirección de correo`,emailCreatedToast:`Dirección de correo creada.`,emailRemoveFailedToast:`No se pudo eliminar la dirección de correo.`,emailRemovedToast:`Dirección de correo eliminada.`,emailUsernameAriaLabel:`Nombre de usuario del correo`,emailUsernamePlaceholder:`hola`,enterSubdomainError:`Introduce un subdominio.`,enterUsernameError:`Introduce un nombre de usuario de correo.`,register:`Registrar`,registerDomainFailedFallback:`No se pudo registrar el dominio.`,registering:`Registrando…`,releaseConfirm:`Liberar`,releaseDomainAriaLabel:`Liberar dominio`,releaseDomainConfirmMessage:`¿Seguro que quieres liberar <code>{domain}</code>? El subdominio quedará disponible para que otros lo reclamen.`,releaseDomainTitle:`Liberar dominio`,removeAddressFirstToast:`Elimina primero la dirección de correo.`,removeConfirm:`Eliminar`,removeEmailAriaLabel:`Eliminar dirección de correo`,removeEmailConfirmMessage:`¿Seguro que quieres eliminar <code>{address}</code>? Tu asistente ya no podrá enviar ni recibir correo en esta dirección.`,removeEmailTitle:`Eliminar dirección de correo`,retry:`Reintentar`,setSubdomainConfirmMessage:`<code>{subdomain}</code> también será el identificador público de tu asistente. No podrás cambiarlo una vez establecido.`,setSubdomainTitle:`Establecer subdominio`,subdomainExamplePlaceholder:`mi-asistente`,subdomainFallback:`subdominio`,subdomainHint:`Cada asistente tiene su propio subdominio. Solo letras minúsculas, números y guiones.`,subdomainLabel:`Subdominio`,subscriptionWarningBody:`No pudimos contactar con el servicio de facturación. El formulario siguiente asume que el correo gestionado está habilitado para tu organización. Si no lo está, registrar un dominio fallará.`,subscriptionWarningTitle:`No se pudo verificar el estado de la suscripción`,upgradeButton:`Mejorar plan`,upgradeNoticeBody:`Mejora a un plan que incluya una dirección de correo para tu asistente. No hace falta configurar un proveedor.`,upgradeNoticeTitle:`Dale a tu asistente su propia dirección de correo`,usageSummary:`{sent} / {limit} enviados hoy · {received} recibidos`},_={assistantChannelsList:e,channelAdapterList:t,connectionCard:n,slackChannelCard:r,channelPanel:i,pluginChannelPanel:a,channelTrustFloor:o,slackChannelTypeDefaults:s,tierPicker:c,slackChannelTierLegend:l,slackChannelSection:u,slackThreadBehavior:d,slackChannelList:f,twilioCredentialEntry:p,channelMeta:m,emailChannelSection:h,emailManagedContent:g};export{e as assistantChannelsList,t as channelAdapterList,m as channelMeta,i as channelPanel,o as channelTrustFloor,n as connectionCard,_ as default,h as emailChannelSection,g as emailManagedContent,a as pluginChannelPanel,r as slackChannelCard,f as slackChannelList,u as slackChannelSection,l as slackChannelTierLegend,s as slackChannelTypeDefaults,d as slackThreadBehavior,c as tierPicker,p as twilioCredentialEntry};
|
|
@@ -6,4 +6,4 @@ var e={drawerTitle:`頻道`,disconnectTitle:`中斷 {channel} 的連線?`,disc
|
|
|
6
6
|
|
|
7
7
|
這樣做可能會讓您蒙受金錢損失,並使您面臨安全和隱私漏洞。
|
|
8
8
|
|
|
9
|
-
請務必謹慎啟用。`,confirmAction:`允許陌生人`}},s={heading:`預設存取權`,subtitle:`{assistant} 根據對話類型自行執行的程度。個別頻道可以在下方覆寫此設定,而 <trustRules>信任規則</trustRules> 則會微調何時進行詢問。`,bucketAria:`{bucket} 的預設助理存取權`},c={defaultSuffix:`預設`,defaultPlaceholder:`預設`},l={defaultMarker:`· 預設`},u={overridesLoadFailed:`無法載入存取設定。這些控制項在載入完成前將保持停用狀態。請嘗試重新開啟此頁面。`,perChannelOverrides:`每個頻道的覆寫設定`},d={heading:`執行緒行為`,selectAria:`Slack 執行緒行為`,mentionsOnly:`僅提及`,mentionsOnlyHelp:`機器人僅在被 @提及時回應。`,followThreads:`首次提及後追蹤執行緒`,followThreadsHelp:`在執行緒中被 @提及後,機器人會監聽該執行緒的其餘部分。`},f={presenceHint:`在該 Slack 頻道中,使用 <invite>/invite {handle}</invite> 新增,或使用 <remove>/remove {handle}</remove> 移除。此處僅顯示 {assistant} 所在的頻道。`,loading:`正在載入…`,loadFailed:`無法載入頻道。請嘗試重新開啟此頁面。`,emptyTitle:`尚未有頻道`,searchPlaceholder:`搜尋頻道`,searchAria:`搜尋頻道`,filterGroupAria:`依類型篩選頻道`,noMatches:`無符合的頻道。`,accessAria:`{channel} 中的助理存取權`,filterAll:`{count, plural, other {全部 (#)}}`,filterPublic:`{count, plural, other {公開 (#)}}`,filterPrivate:`{count, plural, other {私人 (#)}}`},p={accountSid:`帳號 SID`,authToken:`驗證權杖`,authTokenPlaceholder:`Twilio 驗證權杖`,saving:`正在儲存…`,save:`儲存`},m={slack:{label:`Slack`,disconnectMessage:`這會清除此助理儲存的 Slack 機器人與應用程式權杖。您可以稍後重新連線。`},telegram:{label:`Telegram`,disconnectMessage:`這會清除此助理儲存的 Telegram 機器人權杖。您可以稍後重新連線。`,disconnectedPitch:`連線 Telegram 機器人,讓 {assistant} 可以在 Telegram 上傳送及接收訊息。`},discord:{label:`Discord`,disconnectedPitch:`連線 Discord 機器人,讓 {assistant} 可以在您的伺服器中讀取及回覆。`,disconnectMessage:`這會清除此助理儲存的 Discord 機器人權杖,且機器人將停止接收訊息。您的伺服器會保留該機器人,直到您從伺服器中移除為止。`},email:{label:`電子郵件`},phone:{label:`電話通話`,disconnectMessage:`這會清除此助理儲存的 Twilio 憑證。您可以稍後重新連線。`,disconnectedPitch:`連線您的 Twilio 帳號,讓 {assistant} 可以撥打及接聽電話。`}},h={apiKeyConfigured:`{providerName} API 金鑰已設定。若要重新設定,請執行 <code>{setupSkill}</code> 技能。`,connecting:`正在連線至 Vellum 平台…`,openProvider:`開啟 {providerName}`,platformLoginNotice:`登入 Vellum 平台以管理電子郵件設定。`,providerLabel:`供應商`,saveSuccessToast:`電子郵件設定已儲存。`,setupInstructions:`透過助理 CLI 設定 {providerName}:要求助理執行 <code>{setupSkill}</code> 技能。它會引導您儲存 API 金鑰、偵測網域,以及 (選用) 設定傳入 Webhook。`,subtitle:`設定您的助理如何傳送及接收電子郵件`,title:`電子郵件`},g={addressLabel:`地址`,checkingSubscription:`正在檢查訂閱…`,
|
|
9
|
+
請務必謹慎啟用。`,confirmAction:`允許陌生人`}},s={heading:`預設存取權`,subtitle:`{assistant} 根據對話類型自行執行的程度。個別頻道可以在下方覆寫此設定,而 <trustRules>信任規則</trustRules> 則會微調何時進行詢問。`,bucketAria:`{bucket} 的預設助理存取權`},c={defaultSuffix:`預設`,defaultPlaceholder:`預設`},l={defaultMarker:`· 預設`},u={overridesLoadFailed:`無法載入存取設定。這些控制項在載入完成前將保持停用狀態。請嘗試重新開啟此頁面。`,perChannelOverrides:`每個頻道的覆寫設定`},d={heading:`執行緒行為`,selectAria:`Slack 執行緒行為`,mentionsOnly:`僅提及`,mentionsOnlyHelp:`機器人僅在被 @提及時回應。`,followThreads:`首次提及後追蹤執行緒`,followThreadsHelp:`在執行緒中被 @提及後,機器人會監聽該執行緒的其餘部分。`},f={presenceHint:`在該 Slack 頻道中,使用 <invite>/invite {handle}</invite> 新增,或使用 <remove>/remove {handle}</remove> 移除。此處僅顯示 {assistant} 所在的頻道。`,loading:`正在載入…`,loadFailed:`無法載入頻道。請嘗試重新開啟此頁面。`,emptyTitle:`尚未有頻道`,searchPlaceholder:`搜尋頻道`,searchAria:`搜尋頻道`,filterGroupAria:`依類型篩選頻道`,noMatches:`無符合的頻道。`,accessAria:`{channel} 中的助理存取權`,filterAll:`{count, plural, other {全部 (#)}}`,filterPublic:`{count, plural, other {公開 (#)}}`,filterPrivate:`{count, plural, other {私人 (#)}}`},p={accountSid:`帳號 SID`,authToken:`驗證權杖`,authTokenPlaceholder:`Twilio 驗證權杖`,saving:`正在儲存…`,save:`儲存`},m={slack:{label:`Slack`,disconnectMessage:`這會清除此助理儲存的 Slack 機器人與應用程式權杖。您可以稍後重新連線。`},telegram:{label:`Telegram`,disconnectMessage:`這會清除此助理儲存的 Telegram 機器人權杖。您可以稍後重新連線。`,disconnectedPitch:`連線 Telegram 機器人,讓 {assistant} 可以在 Telegram 上傳送及接收訊息。`},discord:{label:`Discord`,disconnectedPitch:`連線 Discord 機器人,讓 {assistant} 可以在您的伺服器中讀取及回覆。`,disconnectMessage:`這會清除此助理儲存的 Discord 機器人權杖,且機器人將停止接收訊息。您的伺服器會保留該機器人,直到您從伺服器中移除為止。`},email:{label:`電子郵件`},phone:{label:`電話通話`,disconnectMessage:`這會清除此助理儲存的 Twilio 憑證。您可以稍後重新連線。`,disconnectedPitch:`連線您的 Twilio 帳號,讓 {assistant} 可以撥打及接聽電話。`}},h={apiKeyConfigured:`{providerName} API 金鑰已設定。若要重新設定,請執行 <code>{setupSkill}</code> 技能。`,connecting:`正在連線至 Vellum 平台…`,openProvider:`開啟 {providerName}`,platformLoginNotice:`登入 Vellum 平台以管理電子郵件設定。`,providerLabel:`供應商`,saveSuccessToast:`電子郵件設定已儲存。`,setupInstructions:`透過助理 CLI 設定 {providerName}:要求助理執行 <code>{setupSkill}</code> 技能。它會引導您儲存 API 金鑰、偵測網域,以及 (選用) 設定傳入 Webhook。`,subtitle:`設定您的助理如何傳送及接收電子郵件`,title:`電子郵件`},g={addressLabel:`地址`,checkingSubscription:`正在檢查訂閱…`,confirm:`確認`,create:`建立`,createEmailFailedFallback:`建立電子郵件地址失敗。`,creating:`正在建立…`,domainLabel:`網域`,domainRegisteredToast:`網域 {domain} 已註冊。`,domainReleaseFailedToast:`釋出網域失敗。`,domainReleasedToast:`網域已釋出。`,emailAddressLabel:`電子郵件地址`,emailCreatedToast:`電子郵件地址已建立。`,emailRemoveFailedToast:`移除電子郵件地址失敗。`,emailRemovedToast:`電子郵件地址已移除。`,emailUsernameAriaLabel:`電子郵件使用者名稱`,emailUsernamePlaceholder:`hi`,enterSubdomainError:`請輸入子網域。`,enterUsernameError:`請輸入電子郵件使用者名稱。`,register:`註冊`,registerDomainFailedFallback:`註冊網域失敗。`,registering:`正在註冊…`,releaseConfirm:`釋出`,releaseDomainAriaLabel:`釋出網域`,releaseDomainConfirmMessage:`您確定要釋出 <code>{domain}</code> 嗎?此子網域將可供其他人認領。`,releaseDomainTitle:`釋出網域`,removeAddressFirstToast:`請先移除電子郵件地址。`,removeConfirm:`移除`,removeEmailAriaLabel:`移除電子郵件地址`,removeEmailConfirmMessage:`您確定要移除 <code>{address}</code> 嗎?您的助理將無法再透過此地址傳送或接收電子郵件。`,removeEmailTitle:`移除電子郵件地址`,retry:`重試`,setSubdomainConfirmMessage:`<code>{subdomain}</code> 也將成為您助理的公開識別碼。設定後便無法變更。`,setSubdomainTitle:`設定子網域`,subdomainExamplePlaceholder:`my-assistant`,subdomainFallback:`子網域`,subdomainHint:`每個助理都有自己的子網域。僅限小寫字母、數字和連字號。`,subdomainLabel:`子網域`,subscriptionWarningBody:`我們無法連線至帳務服務。以下表單假設您的組織已啟用受管理的電子郵件。如果未啟用,註冊網域將會失敗。`,subscriptionWarningTitle:`無法驗證訂閱狀態`,upgradeButton:`升級`,upgradeNoticeBody:`升級至包含助理電子郵件地址的方案。無需供應商設定。`,upgradeNoticeTitle:`為您的助理提供專屬電子郵件地址`,usageSummary:`今日已傳送 {sent} / {limit} · 已接收 {received}`},_={assistantChannelsList:e,channelAdapterList:t,connectionCard:n,slackChannelCard:r,channelPanel:i,pluginChannelPanel:a,channelTrustFloor:o,slackChannelTypeDefaults:s,tierPicker:c,slackChannelTierLegend:l,slackChannelSection:u,slackThreadBehavior:d,slackChannelList:f,twilioCredentialEntry:p,channelMeta:m,emailChannelSection:h,emailManagedContent:g};export{e as assistantChannelsList,t as channelAdapterList,m as channelMeta,i as channelPanel,o as channelTrustFloor,n as connectionCard,_ as default,h as emailChannelSection,g as emailManagedContent,a as pluginChannelPanel,r as slackChannelCard,f as slackChannelList,u as slackChannelSection,l as slackChannelTierLegend,s as slackChannelTypeDefaults,d as slackThreadBehavior,c as tierPicker,p as twilioCredentialEntry};
|
|
@@ -6,4 +6,4 @@ var e={drawerTitle:`渠道`,disconnectTitle:`断开 {channel} 的连接?`,disc
|
|
|
6
6
|
|
|
7
7
|
这样做可能会给您带来经济损失,并使您面临安全和隐私漏洞。
|
|
8
8
|
|
|
9
|
-
请务必谨慎启用。`,confirmAction:`允许陌生人`}},s={heading:`默认访问权限`,subtitle:`{assistant}根据对话类型自行执行操作的程度。单个频道可以在下方覆盖此设置,<trustRules>信任规则</trustRules>则会微调何时进行询问。`,bucketAria:`{bucket}的默认助手访问权限`},c={defaultSuffix:`默认`,defaultPlaceholder:`默认`},l={defaultMarker:`· 默认`},u={overridesLoadFailed:`无法加载访问设置。这些控件在加载完成前将保持禁用状态。请尝试重新打开此页面。`,perChannelOverrides:`频道级覆盖设置`},d={heading:`线程行为`,selectAria:`Slack 线程行为`,mentionsOnly:`仅提及`,mentionsOnlyHelp:`机器人仅在被 @提及 时响应。`,followThreads:`首次提及后跟踪线程`,followThreadsHelp:`在线程中被 @提及后,机器人会监听该线程的其余部分。`},f={presenceHint:`在该 Slack 频道中,使用 <invite>/invite {handle}</invite> 添加,或使用 <remove>/remove {handle}</remove> 移除。此处仅显示 {assistant} 所在的频道。`,loading:`正在加载…`,loadFailed:`无法加载频道。请尝试重新打开此页面。`,emptyTitle:`暂无频道`,searchPlaceholder:`搜索频道`,searchAria:`搜索频道`,filterGroupAria:`按类型筛选频道`,noMatches:`无匹配频道。`,accessAria:`{channel} 中的助手访问权限`,filterAll:`{count, plural, other {全部 (#)}}`,filterPublic:`{count, plural, other {公开 (#)}}`,filterPrivate:`{count, plural, other {私有 (#)}}`},p={accountSid:`账户 SID`,authToken:`身份验证令牌`,authTokenPlaceholder:`Twilio 身份验证令牌`,saving:`正在保存…`,save:`保存`},m={slack:{label:`Slack`,disconnectMessage:`这将清除此助手存储的 Slack 机器人和应用令牌。您可以稍后重新连接。`},telegram:{label:`Telegram`,disconnectMessage:`这将清除此助手存储的 Telegram 机器人令牌。您可以稍后重新连接。`,disconnectedPitch:`连接 Telegram 机器人,以便 {assistant} 可以在 Telegram 上发送和接收消息。`},discord:{label:`Discord`,disconnectedPitch:`连接 Discord 机器人,以便 {assistant} 可以在您的服务器中阅读和回复消息。`,disconnectMessage:`这将清除此助手存储的 Discord 机器人令牌,并且机器人将停止接收消息。您的服务器将保留该机器人,直到您从服务器中将其移除。`},email:{label:`电子邮件`},phone:{label:`电话呼叫`,disconnectMessage:`这将清除此助手存储的 Twilio 凭据。您可以稍后重新连接。`,disconnectedPitch:`连接您的 Twilio 账户,以便 {assistant} 可以拨打和接听电话。`}},h={apiKeyConfigured:`{providerName} API 密钥已配置。要重新配置,请运行 <code>{setupSkill}</code> 技能。`,connecting:`正在连接到 Vellum 平台…`,openProvider:`打开 {providerName}`,platformLoginNotice:`登录 Vellum 平台以管理电子邮件设置。`,providerLabel:`提供商`,saveSuccessToast:`电子邮件设置已保存。`,setupInstructions:`通过助手 CLI 配置 {providerName}:要求助手运行 <code>{setupSkill}</code> 技能。它将引导您存储 API 密钥、检测域并(可选)连接入站 Webhook。`,subtitle:`配置您的助手如何发送和接收电子邮件`,title:`电子邮件`},g={addressLabel:`地址`,checkingSubscription:`正在检查订阅…`,
|
|
9
|
+
请务必谨慎启用。`,confirmAction:`允许陌生人`}},s={heading:`默认访问权限`,subtitle:`{assistant}根据对话类型自行执行操作的程度。单个频道可以在下方覆盖此设置,<trustRules>信任规则</trustRules>则会微调何时进行询问。`,bucketAria:`{bucket}的默认助手访问权限`},c={defaultSuffix:`默认`,defaultPlaceholder:`默认`},l={defaultMarker:`· 默认`},u={overridesLoadFailed:`无法加载访问设置。这些控件在加载完成前将保持禁用状态。请尝试重新打开此页面。`,perChannelOverrides:`频道级覆盖设置`},d={heading:`线程行为`,selectAria:`Slack 线程行为`,mentionsOnly:`仅提及`,mentionsOnlyHelp:`机器人仅在被 @提及 时响应。`,followThreads:`首次提及后跟踪线程`,followThreadsHelp:`在线程中被 @提及后,机器人会监听该线程的其余部分。`},f={presenceHint:`在该 Slack 频道中,使用 <invite>/invite {handle}</invite> 添加,或使用 <remove>/remove {handle}</remove> 移除。此处仅显示 {assistant} 所在的频道。`,loading:`正在加载…`,loadFailed:`无法加载频道。请尝试重新打开此页面。`,emptyTitle:`暂无频道`,searchPlaceholder:`搜索频道`,searchAria:`搜索频道`,filterGroupAria:`按类型筛选频道`,noMatches:`无匹配频道。`,accessAria:`{channel} 中的助手访问权限`,filterAll:`{count, plural, other {全部 (#)}}`,filterPublic:`{count, plural, other {公开 (#)}}`,filterPrivate:`{count, plural, other {私有 (#)}}`},p={accountSid:`账户 SID`,authToken:`身份验证令牌`,authTokenPlaceholder:`Twilio 身份验证令牌`,saving:`正在保存…`,save:`保存`},m={slack:{label:`Slack`,disconnectMessage:`这将清除此助手存储的 Slack 机器人和应用令牌。您可以稍后重新连接。`},telegram:{label:`Telegram`,disconnectMessage:`这将清除此助手存储的 Telegram 机器人令牌。您可以稍后重新连接。`,disconnectedPitch:`连接 Telegram 机器人,以便 {assistant} 可以在 Telegram 上发送和接收消息。`},discord:{label:`Discord`,disconnectedPitch:`连接 Discord 机器人,以便 {assistant} 可以在您的服务器中阅读和回复消息。`,disconnectMessage:`这将清除此助手存储的 Discord 机器人令牌,并且机器人将停止接收消息。您的服务器将保留该机器人,直到您从服务器中将其移除。`},email:{label:`电子邮件`},phone:{label:`电话呼叫`,disconnectMessage:`这将清除此助手存储的 Twilio 凭据。您可以稍后重新连接。`,disconnectedPitch:`连接您的 Twilio 账户,以便 {assistant} 可以拨打和接听电话。`}},h={apiKeyConfigured:`{providerName} API 密钥已配置。要重新配置,请运行 <code>{setupSkill}</code> 技能。`,connecting:`正在连接到 Vellum 平台…`,openProvider:`打开 {providerName}`,platformLoginNotice:`登录 Vellum 平台以管理电子邮件设置。`,providerLabel:`提供商`,saveSuccessToast:`电子邮件设置已保存。`,setupInstructions:`通过助手 CLI 配置 {providerName}:要求助手运行 <code>{setupSkill}</code> 技能。它将引导您存储 API 密钥、检测域并(可选)连接入站 Webhook。`,subtitle:`配置您的助手如何发送和接收电子邮件`,title:`电子邮件`},g={addressLabel:`地址`,checkingSubscription:`正在检查订阅…`,confirm:`确认`,create:`创建`,createEmailFailedFallback:`创建电子邮件地址失败。`,creating:`正在创建…`,domainLabel:`域名`,domainRegisteredToast:`域名 {domain} 已注册。`,domainReleaseFailedToast:`释放域名失败。`,domainReleasedToast:`域名已释放。`,emailAddressLabel:`电子邮件地址`,emailCreatedToast:`电子邮件地址已创建。`,emailRemoveFailedToast:`删除电子邮件地址失败。`,emailRemovedToast:`电子邮件地址已删除。`,emailUsernameAriaLabel:`电子邮件用户名`,emailUsernamePlaceholder:`hi`,enterSubdomainError:`请输入子域名。`,enterUsernameError:`请输入电子邮件用户名。`,register:`注册`,registerDomainFailedFallback:`注册域名失败。`,registering:`正在注册…`,releaseConfirm:`释放`,releaseDomainAriaLabel:`释放域名`,releaseDomainConfirmMessage:`您确定要释放 <code>{domain}</code> 吗?该子域名将可供其他人认领。`,releaseDomainTitle:`释放域名`,removeAddressFirstToast:`请先删除电子邮件地址。`,removeConfirm:`删除`,removeEmailAriaLabel:`删除电子邮件地址`,removeEmailConfirmMessage:`您确定要删除 <code>{address}</code> 吗?您的助手将无法再通过此地址发送或接收电子邮件。`,removeEmailTitle:`删除电子邮件地址`,retry:`重试`,setSubdomainConfirmMessage:`<code>{subdomain}</code> 也将成为您助手的公开句柄。设置后将无法更改。`,setSubdomainTitle:`设置子域名`,subdomainExamplePlaceholder:`my-assistant`,subdomainFallback:`子域名`,subdomainHint:`每个助手都有自己的子域名。仅限小写字母、数字和连字符。`,subdomainLabel:`子域名`,subscriptionWarningBody:`我们无法连接到计费服务。以下表单假定您的组织已启用托管电子邮件。如果未启用,注册域名将失败。`,subscriptionWarningTitle:`无法验证订阅状态`,upgradeButton:`升级`,upgradeNoticeBody:`升级到包含助手电子邮件地址的套餐。无需提供商设置。`,upgradeNoticeTitle:`为您的助手提供专属电子邮件地址`,usageSummary:`今日发送 {sent} / {limit} · 收到 {received}`},_={assistantChannelsList:e,channelAdapterList:t,connectionCard:n,slackChannelCard:r,channelPanel:i,pluginChannelPanel:a,channelTrustFloor:o,slackChannelTypeDefaults:s,tierPicker:c,slackChannelTierLegend:l,slackChannelSection:u,slackThreadBehavior:d,slackChannelList:f,twilioCredentialEntry:p,channelMeta:m,emailChannelSection:h,emailManagedContent:g};export{e as assistantChannelsList,t as channelAdapterList,m as channelMeta,i as channelPanel,o as channelTrustFloor,n as connectionCard,_ as default,h as emailChannelSection,g as emailManagedContent,a as pluginChannelPanel,r as slackChannelCard,f as slackChannelList,u as slackChannelSection,l as slackChannelTierLegend,s as slackChannelTypeDefaults,d as slackThreadBehavior,c as tierPicker,p as twilioCredentialEntry};
|
|
@@ -6,4 +6,4 @@ var e={drawerTitle:`Каналы`,disconnectTitle:`Отключить {channel}?
|
|
|
6
6
|
|
|
7
7
|
Это может стоить вам денег и открыть уязвимости безопасности и приватности.
|
|
8
8
|
|
|
9
|
-
Включайте с крайней осторожностью.`,confirmAction:`Разрешить незнакомцев`}},s={heading:`Доступ по умолчанию`,subtitle:`Насколько самостоятельно действует {assistant} в зависимости от типа диалога. Отдельные каналы могут переопределить это ниже, а <trustRules>правила доверия</trustRules> уточняют, когда спрашивать.`,bucketAria:`Доступ ассистента по умолчанию для {bucket}`},c={defaultSuffix:`по умолчанию`,defaultPlaceholder:`По умолчанию`},l={defaultMarker:`· по умолчанию`},u={overridesLoadFailed:`Не удалось загрузить настройки доступа. Эти элементы останутся недоступны, пока данные не загрузятся. Повторите открытие страницы.`,perChannelOverrides:`Переопределения по каналам`},d={heading:`Поведение в ветках`,selectAria:`Поведение Slack в ветках`,mentionsOnly:`Только упоминания`,mentionsOnlyHelp:`Бот отвечает только когда его @упоминают.`,followThreads:`Следить за веткой после первого упоминания`,followThreadsHelp:`После @упоминания в ветке бот слушает остальную ветку.`},f={presenceHint:`Добавление через <invite>/invite {handle}</invite> или удаление через <remove>/remove {handle}</remove> в этом канале Slack. Здесь видны только каналы, в которых есть {assistant}.`,loading:`Загрузка…`,loadFailed:`Не удалось загрузить каналы. Повторите открытие страницы.`,emptyTitle:`Каналов пока нет`,searchPlaceholder:`Поиск каналов`,searchAria:`Поиск каналов`,filterGroupAria:`Фильтр каналов по типу`,noMatches:`Нет подходящих каналов.`,accessAria:`Доступ ассистента в {channel}`,filterAll:`{count, plural, one {Все (#)} few {Все (#)} many {Все (#)} other {Все (#)}}`,filterPublic:`{count, plural, one {Открытые (#)} few {Открытые (#)} many {Открытые (#)} other {Открытые (#)}}`,filterPrivate:`{count, plural, one {Закрытые (#)} few {Закрытые (#)} many {Закрытые (#)} other {Закрытые (#)}}`},p={accountSid:`Account SID`,authToken:`Auth Token`,authTokenPlaceholder:`Auth-токен Twilio`,saving:`Сохранение…`,save:`Сохранить`},m={slack:{label:`Slack`,disconnectMessage:`Это удалит сохранённые токены бота и приложения Slack для этого ассистента. Потом можно подключить снова.`},telegram:{label:`Telegram`,disconnectMessage:`Это удалит сохранённый токен бота Telegram для этого ассистента. Потом можно подключить снова.`,disconnectedPitch:`Подключение бота Telegram, чтобы {assistant} мог отправлять и получать сообщения в Telegram.`},discord:{label:`Discord`,disconnectedPitch:`Подключите бота Discord, чтобы {assistant} мог читать и отвечать на вашем сервере.`,disconnectMessage:`Это удалит сохранённый токен бота Discord, и бот перестанет получать сообщения. На сервере бот останется, пока вы не удалите его там.`},email:{label:`Почта`},phone:{label:`Телефонные звонки`,disconnectMessage:`Это удалит сохранённые учётные данные Twilio для этого ассистента. Потом можно подключить снова.`,disconnectedPitch:`Подключение аккаунта Twilio, чтобы {assistant} мог звонить и отвечать на звонки.`}},h={apiKeyConfigured:`API-ключ {providerName} настроен. Повторная настройка: запуск навыка <code>{setupSkill}</code>.`,connecting:`Подключение к платформе Vellum…`,openProvider:`Открыть {providerName}`,platformLoginNotice:`Вход на платформу Vellum для управления настройками почты.`,providerLabel:`Провайдер`,saveSuccessToast:`Настройки почты сохранены.`,setupInstructions:`Настройка {providerName} через CLI ассистента: запрос ассистенту запустить навык <code>{setupSkill}</code>. Он поможет сохранить API-ключ, определить домен и (по желанию) подключить входящий webhook.`,subtitle:`Настройка отправки и получения почты ассистентом`,title:`Почта`},g={addressLabel:`Адрес`,checkingSubscription:`Проверка подписки…`,
|
|
9
|
+
Включайте с крайней осторожностью.`,confirmAction:`Разрешить незнакомцев`}},s={heading:`Доступ по умолчанию`,subtitle:`Насколько самостоятельно действует {assistant} в зависимости от типа диалога. Отдельные каналы могут переопределить это ниже, а <trustRules>правила доверия</trustRules> уточняют, когда спрашивать.`,bucketAria:`Доступ ассистента по умолчанию для {bucket}`},c={defaultSuffix:`по умолчанию`,defaultPlaceholder:`По умолчанию`},l={defaultMarker:`· по умолчанию`},u={overridesLoadFailed:`Не удалось загрузить настройки доступа. Эти элементы останутся недоступны, пока данные не загрузятся. Повторите открытие страницы.`,perChannelOverrides:`Переопределения по каналам`},d={heading:`Поведение в ветках`,selectAria:`Поведение Slack в ветках`,mentionsOnly:`Только упоминания`,mentionsOnlyHelp:`Бот отвечает только когда его @упоминают.`,followThreads:`Следить за веткой после первого упоминания`,followThreadsHelp:`После @упоминания в ветке бот слушает остальную ветку.`},f={presenceHint:`Добавление через <invite>/invite {handle}</invite> или удаление через <remove>/remove {handle}</remove> в этом канале Slack. Здесь видны только каналы, в которых есть {assistant}.`,loading:`Загрузка…`,loadFailed:`Не удалось загрузить каналы. Повторите открытие страницы.`,emptyTitle:`Каналов пока нет`,searchPlaceholder:`Поиск каналов`,searchAria:`Поиск каналов`,filterGroupAria:`Фильтр каналов по типу`,noMatches:`Нет подходящих каналов.`,accessAria:`Доступ ассистента в {channel}`,filterAll:`{count, plural, one {Все (#)} few {Все (#)} many {Все (#)} other {Все (#)}}`,filterPublic:`{count, plural, one {Открытые (#)} few {Открытые (#)} many {Открытые (#)} other {Открытые (#)}}`,filterPrivate:`{count, plural, one {Закрытые (#)} few {Закрытые (#)} many {Закрытые (#)} other {Закрытые (#)}}`},p={accountSid:`Account SID`,authToken:`Auth Token`,authTokenPlaceholder:`Auth-токен Twilio`,saving:`Сохранение…`,save:`Сохранить`},m={slack:{label:`Slack`,disconnectMessage:`Это удалит сохранённые токены бота и приложения Slack для этого ассистента. Потом можно подключить снова.`},telegram:{label:`Telegram`,disconnectMessage:`Это удалит сохранённый токен бота Telegram для этого ассистента. Потом можно подключить снова.`,disconnectedPitch:`Подключение бота Telegram, чтобы {assistant} мог отправлять и получать сообщения в Telegram.`},discord:{label:`Discord`,disconnectedPitch:`Подключите бота Discord, чтобы {assistant} мог читать и отвечать на вашем сервере.`,disconnectMessage:`Это удалит сохранённый токен бота Discord, и бот перестанет получать сообщения. На сервере бот останется, пока вы не удалите его там.`},email:{label:`Почта`},phone:{label:`Телефонные звонки`,disconnectMessage:`Это удалит сохранённые учётные данные Twilio для этого ассистента. Потом можно подключить снова.`,disconnectedPitch:`Подключение аккаунта Twilio, чтобы {assistant} мог звонить и отвечать на звонки.`}},h={apiKeyConfigured:`API-ключ {providerName} настроен. Повторная настройка: запуск навыка <code>{setupSkill}</code>.`,connecting:`Подключение к платформе Vellum…`,openProvider:`Открыть {providerName}`,platformLoginNotice:`Вход на платформу Vellum для управления настройками почты.`,providerLabel:`Провайдер`,saveSuccessToast:`Настройки почты сохранены.`,setupInstructions:`Настройка {providerName} через CLI ассистента: запрос ассистенту запустить навык <code>{setupSkill}</code>. Он поможет сохранить API-ключ, определить домен и (по желанию) подключить входящий webhook.`,subtitle:`Настройка отправки и получения почты ассистентом`,title:`Почта`},g={addressLabel:`Адрес`,checkingSubscription:`Проверка подписки…`,confirm:`Подтвердить`,create:`Создать`,createEmailFailedFallback:`Не удалось создать адрес почты.`,creating:`Создание…`,domainLabel:`Домен`,domainRegisteredToast:`Домен {domain} зарегистрирован.`,domainReleaseFailedToast:`Не удалось освободить домен.`,domainReleasedToast:`Домен освобождён.`,emailAddressLabel:`Адрес почты`,emailCreatedToast:`Адрес почты создан.`,emailRemoveFailedToast:`Не удалось удалить адрес почты.`,emailRemovedToast:`Адрес почты удалён.`,emailUsernameAriaLabel:`Имя пользователя почты`,emailUsernamePlaceholder:`hi`,enterSubdomainError:`Ввод поддомена.`,enterUsernameError:`Ввод имени пользователя почты.`,register:`Зарегистрировать`,registerDomainFailedFallback:`Не удалось зарегистрировать домен.`,registering:`Регистрация…`,releaseConfirm:`Освободить`,releaseDomainAriaLabel:`Освободить домен`,releaseDomainConfirmMessage:`Точно освободить <code>{domain}</code>? Поддомен станет доступен другим.`,releaseDomainTitle:`Освободить домен`,removeAddressFirstToast:`Сначала удаление адреса почты.`,removeConfirm:`Удалить`,removeEmailAriaLabel:`Удалить адрес почты`,removeEmailConfirmMessage:`Точно удалить <code>{address}</code>? Ассистент больше не сможет отправлять и получать почту на этот адрес.`,removeEmailTitle:`Удалить адрес почты`,retry:`Повторить`,setSubdomainConfirmMessage:`<code>{subdomain}</code> также станет публичным идентификатором ассистента. После установки его нельзя сменить.`,setSubdomainTitle:`Задать поддомен`,subdomainExamplePlaceholder:`my-assistant`,subdomainFallback:`поддомен`,subdomainHint:`У каждого ассистента свой поддомен. Только строчные латинские буквы, цифры и дефисы.`,subdomainLabel:`Поддомен`,subscriptionWarningBody:`Не удалось связаться со службой оплаты. Форма ниже считает, что управляемая почта включена для организации. Если это не так, регистрация домена не сработает.`,subscriptionWarningTitle:`Не удалось проверить статус подписки`,upgradeButton:`Повысить план`,upgradeNoticeBody:`Переход на план, в котором у ассистента есть свой адрес почты. Настраивать провайдера не нужно.`,upgradeNoticeTitle:`Адрес почты для ассистента`,usageSummary:`сегодня отправлено {sent} / {limit} · получено {received}`},_={assistantChannelsList:e,channelAdapterList:t,connectionCard:n,slackChannelCard:r,channelPanel:i,pluginChannelPanel:a,channelTrustFloor:o,slackChannelTypeDefaults:s,tierPicker:c,slackChannelTierLegend:l,slackChannelSection:u,slackThreadBehavior:d,slackChannelList:f,twilioCredentialEntry:p,channelMeta:m,emailChannelSection:h,emailManagedContent:g};export{e as assistantChannelsList,t as channelAdapterList,m as channelMeta,i as channelPanel,o as channelTrustFloor,n as connectionCard,_ as default,h as emailChannelSection,g as emailManagedContent,a as pluginChannelPanel,r as slackChannelCard,f as slackChannelList,u as slackChannelSection,l as slackChannelTierLegend,s as slackChannelTypeDefaults,d as slackThreadBehavior,c as tierPicker,p as twilioCredentialEntry};
|