@vellumai/web 0.12.1 → 0.12.2-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/THIRD-PARTY-LICENSES.md +486 -0
- package/dist/assets/a2a-invite-CkKBIpe8.js +1 -0
- package/dist/assets/about-page-DiWDYidS.js +1 -0
- package/dist/assets/account-page-BdWEyJKJ.js +1 -0
- package/dist/assets/account-shell-CDIxCuoE.js +1 -0
- package/dist/assets/acp-run-detail-panel-BnPXD9PJ.js +3 -0
- package/dist/assets/activation-CuGQVIGK.js +1 -0
- package/dist/assets/activation-DEvPd6pg.js +1 -0
- package/dist/assets/activation-list-route-BpGfAO8z.js +1 -0
- package/dist/assets/activation-tasks-BkdeoQQy.js +1 -0
- package/dist/assets/activation-tasks-DwVlvR2F.js +1 -0
- package/dist/assets/activity-redirect-page-D_VBOpOl.js +1 -0
- package/dist/assets/activity-steps-panel-DLOwDGMX.js +1 -0
- package/dist/assets/add-credits-modal-C3OHD6qf.js +1 -0
- package/dist/assets/add-credits-modal-DbveV5No.js +1 -0
- package/dist/assets/ai-page-BY6qxepq.js +1 -0
- package/dist/assets/android-billing-handoff-CdjBg7iY.js +1 -0
- package/dist/assets/api-key-screen-CnqV2gP4.js +1 -0
- package/dist/assets/app-DYcUyeCV.js +392 -0
- package/dist/assets/app-info-Cwc9Ok0v.js +1 -0
- package/dist/assets/app-zlzLjynM.css +2 -0
- package/dist/assets/archive-redirect-page-CFe6XL4Y.js +1 -0
- package/dist/assets/assistant-status-panel-CnUpJoll.js +1 -0
- package/dist/assets/auth-store-qFyOugDY.js +1 -0
- package/dist/assets/auth-welcome-screen-BO0eq8kj.js +1 -0
- package/dist/assets/avatar-bundled-components-DK3FoHp8.js +1 -0
- package/dist/assets/avatar-random-CKrkTaqV.js +2 -0
- package/dist/assets/await-org-header-settled-BWq2sN7_.js +1 -0
- package/dist/assets/background-task-detail-panel-ORUKrW2i.js +1 -0
- package/dist/assets/billing-page-kzeezxE8.js +3 -0
- package/dist/assets/billing-redirect-page-BTNxUma5.js +1 -0
- package/dist/assets/bookmarks-page-1Iz7hnH8.js +1 -0
- package/dist/assets/bundle-confirm-page-D0m8wyRa.js +1 -0
- package/dist/assets/channel-transcript-panel-D9JTYmma.js +1 -0
- package/dist/assets/{channels-BIVOatvA.js → channels-BHIR9mQr.js} +1 -1
- package/dist/assets/{channels-C9mCB0CJ.js → channels-CO0Un7Vq.js} +1 -1
- package/dist/assets/{channels-CDirkQc7.js → channels-Dlzw-hbd.js} +1 -1
- package/dist/assets/channels-page-route-IP5Jv1og.js +1 -0
- package/dist/assets/{channels-BCLfuOUD.js → channels-qz1rLPhm.js} +1 -1
- package/dist/assets/chat-BKI_zbji.js +3 -0
- package/dist/assets/chat-BKuyrsfu.js +3 -0
- package/dist/assets/chat-BcPDKWAI.js +3 -0
- package/dist/assets/chat-C2T6sQev.js +3 -0
- package/dist/assets/chat-info-panel-BUuwract.js +1 -0
- package/dist/assets/checkout-continuation-Ir9Qg-Pv.js +1 -0
- package/dist/assets/checkout-page-C7--EoDh.js +1 -0
- package/dist/assets/checkout-return-target-C4W9yc_g.js +1 -0
- package/dist/assets/command-palette-C0GSIX1A.js +1 -0
- package/dist/assets/command-palette-CsrD98bN.js +1 -0
- package/dist/assets/command-palette-window-page-LLKVQLTl.js +1 -0
- package/dist/assets/common-AudD8oBL.js +1 -0
- package/dist/assets/common-DCEa_FHA.js +1 -0
- package/dist/assets/common-DK3YVoJu.js +1 -0
- package/dist/assets/common-sjv1KsmO.js +1 -0
- package/dist/assets/community-page-COiKMV7G.js +1 -0
- package/dist/assets/companion-accent-Bkp2ghsY.js +1 -0
- package/dist/assets/companion-dock-zones-page-xiaXIxvD.js +1 -0
- package/dist/assets/companion-layout-BI1zMzgY.js +1 -0
- package/dist/assets/companion-popover-page-C_JHNBel.js +1 -0
- package/dist/assets/companion-popover-v-F80EHk.js +1 -0
- package/dist/assets/companion-surface-page-CsXzldY9.js +1 -0
- package/dist/assets/companion-watch-frame-page-DH4dTyql.js +1 -0
- package/dist/assets/connect-page-D7gSntXr.js +1 -0
- package/dist/assets/consent-controls-Gq28evub.js +1 -0
- package/dist/assets/contacts-gateway-ChHU1rQs.js +1 -0
- package/dist/assets/contacts-page-route-CLN-9RMq.js +1 -0
- package/dist/assets/credential-entry-page-CMdEgB2X.js +1 -0
- package/dist/assets/credentials-page-DUy0d8Qf.js +1 -0
- package/dist/assets/{csv-preview-DDWd92MO.js → csv-preview-mNT5jrl1.js} +2 -2
- package/dist/assets/danger-zone-redirect-page-CpBANsPW.js +1 -0
- package/dist/assets/debug-page-DEHSMzm6.js +4 -0
- package/dist/assets/deploy-dialogs-BsuRgQBS.js +1 -0
- package/dist/assets/deploy-dialogs-imfnwAMP.js +1 -0
- package/dist/assets/desktop-sidebar-content-CLSH_2DT.js +2 -0
- package/dist/assets/desktop-viewer-BnQ2rure.js +5 -0
- package/dist/assets/detail-card-BfZQepf_.js +1 -0
- package/dist/assets/detail-panel-stop-button-CQdsxMzy.js +1 -0
- package/dist/assets/detail-primitives-DWM6BL6-.js +1 -0
- package/dist/assets/developer-page-BPvgy8Wi.js +1 -0
- package/dist/assets/devices-redirect-page-ODdh9ZCh.js +1 -0
- package/dist/assets/dictation-overlay-page-Jnv8kJNY.js +1 -0
- package/dist/assets/{diff-rows-6HtO6KNr.js → diff-rows-CUycwYUl.js} +1 -1
- package/dist/assets/document-load-CPnHWBZj.js +1 -0
- package/dist/assets/document-load-DhRvPpKP.js +1 -0
- package/dist/assets/document-viewer-page-BwgyP6mg.js +1 -0
- package/dist/assets/{ellipsis-vertical-BMOhP0Zs.js → ellipsis-vertical-xUQM-Elm.js} +1 -1
- package/dist/assets/emails-page-x39HaZGf.js +1 -0
- package/dist/assets/environment-store-C0GY-RDl.js +1 -0
- package/dist/assets/esm-ByLpJZU-.js +2 -0
- package/dist/assets/{esm-DUr8Sd7e.js → esm-CEzvChXG.js} +1 -1
- package/dist/assets/esm-Ce_5OZEK.js +1 -0
- package/dist/assets/esm-D50EEn3i.js +1 -0
- package/dist/assets/{esm-krw2tVOJ.js → esm-DfbgKT6v.js} +1 -1
- package/dist/assets/esm-DqVgYgSz.js +2 -0
- package/dist/assets/esm-DvwokPO4.js +2 -0
- package/dist/assets/esm-WmNNZ6G5.js +2 -0
- package/dist/assets/esm-cjSwwcic.js +2 -0
- package/dist/assets/{esm-hPUUgGy5.js → esm-vJJO9AjB.js} +2 -2
- package/dist/assets/{file-diff-view-EiQSECOw.js → file-diff-view-DL32vE3_.js} +1 -1
- package/dist/assets/file-editor-BsKygMVy.js +1 -0
- package/dist/assets/general-page-CA95DkzX.js +2 -0
- package/dist/assets/hatching-screen-BU5hSl8C.js +1 -0
- package/dist/assets/hosting-screen-BRLbMCaI.js +1 -0
- package/dist/assets/icons-SKs_cTXW.js +1 -0
- package/dist/assets/identity-page-route-BCUZfhDl.js +7 -0
- package/dist/assets/inspect-page-DrdNSLbW.js +9 -0
- package/dist/assets/integrations-page-BQ3zkbc_.js +1 -0
- package/dist/assets/intelligence-layout-DQA7dP9H.js +1 -0
- package/dist/assets/intelligence-layout-slots-store-Bn393qZ_.js +1 -0
- package/dist/assets/keyboard-shortcuts-redirect-page-Cj2MgzIj.js +1 -0
- package/dist/assets/{latest-assistant-text-mcgHfCbd.js → latest-assistant-text-DP5fiLaB.js} +1 -1
- package/dist/assets/library-detail-page-ChnVd3vO.js +1 -0
- package/dist/assets/library-page-DBPMNzOs.js +1 -0
- package/dist/assets/local-mode-DBwK3Yoy.js +1 -0
- package/dist/assets/login-page-D9xCGRlZ.js +1 -0
- package/dist/assets/logout-page-DIGz42Xt.js +1 -0
- package/dist/assets/logs-layout-wdm0ydut.js +1 -0
- package/dist/assets/markdown-preview-C31CUlHr.js +1 -0
- package/dist/assets/media-preview-oUDIObuT.js +1 -0
- package/dist/assets/memory-page-route-DB6Z_crP.js +2 -0
- package/dist/assets/memory-router-playground-page-tRavfyXm.js +1 -0
- package/dist/assets/message-files-panel-BVush96L.js +1 -0
- package/dist/assets/metric-card-T-AHvj71.js +1 -0
- package/dist/assets/native-attachment-pickers-iN790LWy.js +1 -0
- package/dist/assets/native-file-CBaSUD63.js +1 -0
- package/dist/assets/notifications-page-Dr26_JFe.js +1 -0
- package/dist/assets/{oauth-complete-page-_act6krk.js → oauth-complete-page-eoOM2u1b.js} +2 -2
- package/dist/assets/{oauth-popup-complete-page-D9d5IH9z.js → oauth-popup-complete-page-DkAKB7TM.js} +2 -2
- package/dist/assets/onboarding-Ck1WpDTk.js +1 -0
- package/dist/assets/onboarding-DUkDMEeR.js +1 -0
- package/dist/assets/onboarding-Da4AoTDW.js +1 -0
- package/dist/assets/onboarding-Nd6x50X1.js +1 -0
- package/dist/assets/paired-platform-identity-DSyb0yom.js +1 -0
- package/dist/assets/pairing-page-DMhPf4tK.js +1 -0
- package/dist/assets/password-reset-page-DbQS4Jyq.js +1 -0
- package/dist/assets/{pdf-B2KVp4ZG.js → pdf-a0wURVJB.js} +1 -1
- package/dist/assets/pdf-file-preview-CGZjzTCX.js +1 -0
- package/dist/assets/{peeking-eyes-DNBQeifP.js → peeking-eyes-Bz7deqfy.js} +1 -1
- package/dist/assets/personality-page-CJ9xaG4j.js +1 -0
- package/dist/assets/personality-page-mlJSlhjM.js +1 -0
- package/dist/assets/personality-sliders-CTKQGSuO.js +1 -0
- package/dist/assets/plans-page-CTSNc-V_.js +1 -0
- package/dist/assets/platform-loopback-page-D5LpFJJK.js +1 -0
- package/dist/assets/plugin-detail-page-DQLFC5mY.js +1 -0
- package/dist/assets/plugins-page-DMpCtHwR.js +1 -0
- package/dist/assets/plugins-surface-DXgmI6Fa.js +1 -0
- package/dist/assets/preview-error-DceuF__7.js +1 -0
- package/dist/assets/privacy-page-D5QEDjup.js +1 -0
- package/dist/assets/privacy-screen-SUppoO7T.js +1 -0
- package/dist/assets/provider-callback-page-fcCX9vWX.js +1 -0
- package/dist/assets/provider-key-Bsl0fmCg.js +1 -0
- package/dist/assets/provider-signup-page-BPUq5809.js +1 -0
- package/dist/assets/{provisioning-targets-BZJdjS_6.js → provisioning-targets-CZtAFx6_.js} +1 -1
- package/dist/assets/quick-input-page-DdGClmC4.js +1 -0
- package/dist/assets/{react-DPM_L_aA.js → react-B9IgSVeK.js} +1 -1
- package/dist/assets/{rehype-katex-qwWAif3X.js → rehype-katex-DCyKPcx9.js} +1 -1
- package/dist/assets/research-mock-page-BDKXQ_IH.js +1 -0
- package/dist/assets/research-onboarding-route-D79iKU2n.js +50 -0
- package/dist/assets/review-terms-screen-DeSN6E81.js +1 -0
- package/dist/assets/routes-D8-BQV23.js +1 -0
- package/dist/assets/schedules-Bkin-xNo.js +1 -0
- package/dist/assets/schedules-page-osEW2t2y.js +1 -0
- package/dist/assets/security-redirect-page-D4kh6_4O.js +1 -0
- package/dist/assets/select-assistant-screen-CeXQW_nG.js +1 -0
- package/dist/assets/self-hosted-servers-rYrIbt0S.js +1 -0
- package/dist/assets/service-form-controls-3rmQU6bc.js +1 -0
- package/dist/assets/setting-row-rsGippsf.js +1 -0
- package/dist/assets/settings-5b6v7dcF.js +3 -0
- package/dist/assets/settings-B78MqHTl.js +3 -0
- package/dist/assets/settings-BEnsoU0B.js +3 -0
- package/dist/assets/settings-DcE8Dx9m.js +3 -0
- package/dist/assets/settings-divider-DrVFbm_Z.js +1 -0
- package/dist/assets/settings-layout-CguVDhKN.js +1 -0
- package/dist/assets/share-feedback-modal-BMEDwwPF.js +1 -0
- package/dist/assets/share-feedback-modal-Ds30t4rl.js +2 -0
- package/dist/assets/sidebar-tree-CLAWfbdV.js +1 -0
- package/dist/assets/signup-page-OdyD2G67.js +1 -0
- package/dist/assets/signup-shell-D4FRWPAq.js +1 -0
- package/dist/assets/skill-detail-page-DcLkTuWs.js +2 -0
- package/dist/assets/skill-detail-panel-CCpjeza1.js +1 -0
- package/dist/assets/skill-icon-BlANbII_.js +1 -0
- package/dist/assets/skill-removal-dialog-BSJ4vEhM.js +1 -0
- package/dist/assets/skills-page-uHuHRkHV.js +1 -0
- package/dist/assets/sounds-page-CPJH0X_U.js +1 -0
- package/dist/assets/start-screen-B3ioYfe_.js +1 -0
- package/dist/assets/{status-badge-pill-DsYKTPMw.js → status-badge-pill-e7pOiHx8.js} +1 -1
- package/dist/assets/stt-language-picker-modal-CvY6PHkq.js +1 -0
- package/dist/assets/subagent-detail-panel-D8BizQX9.js +1 -0
- package/dist/assets/superpowers-page-c3qAVKAY.js +1 -0
- package/dist/assets/system-events-page-DusjB-yv.js +1 -0
- package/dist/assets/system-events-redirect-page-B1LED8xu.js +1 -0
- package/dist/assets/text-preview-ifJ0FLN8.js +1 -0
- package/dist/assets/theme-stage-page-ml2zGok2.js +1 -0
- package/dist/assets/{tiptap-document-editor-7zjNquKo.js → tiptap-document-editor-301Udytr.js} +30 -30
- package/dist/assets/tool-detail-panel-BEKchUyO.js +1 -0
- package/dist/assets/tool-detail-panel-lkM3coiO.js +15 -0
- package/dist/assets/trait-cycle-row-BtL4_fB9.js +1 -0
- package/dist/assets/upgrade-cancel-page-eys9-GiP.js +1 -0
- package/dist/assets/upgrade-success-page-DBo4-ty1.js +1 -0
- package/dist/assets/usage-redirect-page-BVd5XOoA.js +1 -0
- package/dist/assets/use-app-delete-D78AElYp.js +1 -0
- package/dist/assets/use-assistant-identity-details-7UWP5j2N.js +1 -0
- package/dist/assets/use-checkout-dismiss-refresh-BVsFNWT8.js +1 -0
- package/dist/assets/use-edge-swipe-back-BkOkzu0f.js +1 -0
- package/dist/assets/use-hotkey-recorder-e0BAwbQD.js +1 -0
- package/dist/assets/use-invite-link-dialog-L4TB7aPd.js +1 -0
- package/dist/assets/use-platform-assistant-id-DsEYYPfs.js +1 -0
- package/dist/assets/use-return-to-short-circuit-COMSHsAl.js +1 -0
- package/dist/assets/use-side-list-room-C0JlGYbh.js +1 -0
- package/dist/assets/use-skill-actions-D6M_AuIh.js +1 -0
- package/dist/assets/use-skill-detail-files-B4ZIUELX.js +1 -0
- package/dist/assets/use-supports-credentials-settings-1gt6t1jo.js +1 -0
- package/dist/assets/use-transcript-message-by-id-Doye708D.js +1 -0
- package/dist/assets/{use-truncated-blob-text-B50a7Mkr.js → use-truncated-blob-text-Csy5XNd4.js} +1 -1
- package/dist/assets/vendor-Dce4XQGd.js +127 -0
- package/dist/assets/voice-page-a4H6kqs2.js +1 -0
- package/dist/assets/wake-detail-panel-Al2XWMVU.js +1 -0
- package/dist/assets/weather-forecast-display-CWgFzub-.js +1 -0
- package/dist/assets/{web-CeDxhWFH.js → web-B8-jpFMe.js} +1 -1
- package/dist/assets/{web-C_Ui7gb5.js → web-C2h3VA7z.js} +1 -1
- package/dist/assets/{web-Bulr9QQn.js → web-CPz9Go5w.js} +1 -1
- package/dist/assets/{web-y4PoIMXz.js → web-CcivtN3-.js} +1 -1
- package/dist/assets/{web-9D8isJOk.js → web-CntdjdN2.js} +1 -1
- package/dist/assets/{web-BkmK5STh.js → web-DdVas5FJ.js} +1 -1
- package/dist/assets/{web-CaauzE8c.js → web-Dpz2Ffo3.js} +1 -1
- package/dist/assets/{web-BpX3Y-_s.js → web-LNm-oerp.js} +1 -1
- package/dist/assets/{web-ykYrL9yl.js → web-XyOUV4KJ.js} +1 -1
- package/dist/assets/welcome-screen-CAZRHEQL.js +1 -0
- package/dist/assets/workflow-detail-panel-BhWqjNLU.js +1 -0
- package/dist/assets/workspace-CLEaBD_r.js +1 -0
- package/dist/assets/workspace-DszduRsw.js +1 -0
- package/dist/assets/workspace-E_cFOroL.js +1 -0
- package/dist/assets/workspace-XYOLCcR6.js +1 -0
- package/dist/assets/workspace-page-CMhhDRc1.js +1 -0
- package/dist/images/integrations/ATTRIBUTION.md +6 -6
- package/dist/images/integrations/quickbooks.svg +1 -0
- package/dist/images/integrations/shopify.svg +1 -0
- package/dist/index.html +6 -6
- package/package.json +1 -1
- package/dist/assets/a2a-invite-DOlvPnsj.js +0 -1
- package/dist/assets/about-page-CAHLo_IM.js +0 -1
- package/dist/assets/account-page-CR9m-bbG.js +0 -1
- package/dist/assets/account-shell-CfKMHHXQ.js +0 -1
- package/dist/assets/acp-run-detail-panel-BBEBzZSw.js +0 -3
- package/dist/assets/activation-list-route-WkR2XN13.js +0 -1
- package/dist/assets/activation-tasks-BJZEpFIy.js +0 -1
- package/dist/assets/activation-tasks-Bk658x3i.js +0 -1
- package/dist/assets/activation-tasks-K8Swziqu.js +0 -1
- package/dist/assets/activation-tasks-wz108byj.js +0 -1
- package/dist/assets/activity-redirect-page-D5jSj1d4.js +0 -1
- package/dist/assets/activity-steps-panel-C91mUEgr.js +0 -1
- package/dist/assets/add-credits-modal-BtOBq6__.js +0 -1
- package/dist/assets/ai-page-BjjHb_KN.js +0 -1
- package/dist/assets/android-billing-handoff-C_65hbFm.js +0 -1
- package/dist/assets/api-key-screen-DAWDc1tS.js +0 -1
- package/dist/assets/app-info--nQmKvGC.js +0 -1
- package/dist/assets/archive-redirect-page-BlzqQ5_P.js +0 -1
- package/dist/assets/assistant-status-panel-CXq4xqak.js +0 -1
- package/dist/assets/auth-welcome-screen-YynWXFYd.js +0 -1
- package/dist/assets/avatar-random-T8euI8sG.js +0 -2
- package/dist/assets/await-org-header-settled-DzQQ7QxL.js +0 -1
- package/dist/assets/background-task-detail-panel-DGc2RnBm.js +0 -1
- package/dist/assets/billing-page-eSvbiGuR.js +0 -3
- package/dist/assets/billing-redirect-page-BAtaOafH.js +0 -1
- package/dist/assets/bookmarks-page-UeYoXk3X.js +0 -1
- package/dist/assets/bundle-confirm-page-CrNXSEwP.js +0 -1
- package/dist/assets/channel-transcript-panel-BdOlGjnN.js +0 -1
- package/dist/assets/channels-page-route-CTDjdZZV.js +0 -1
- package/dist/assets/chat-BOrB9oHu.js +0 -3
- package/dist/assets/chat-C1MeXG-2.js +0 -3
- package/dist/assets/chat-CWzsWu23.js +0 -3
- package/dist/assets/chat-eAA7-NU8.js +0 -3
- package/dist/assets/chat-info-panel-CIcb19Yz.js +0 -1
- package/dist/assets/checkout-continuation-DCEWSKgL.js +0 -1
- package/dist/assets/checkout-page-CjZEKzRZ.js +0 -1
- package/dist/assets/checkout-return-target-RlOhwSvu.js +0 -1
- package/dist/assets/command-palette-D2wqOJue.js +0 -1
- package/dist/assets/command-palette-window-page-Bg2nuHq5.js +0 -1
- package/dist/assets/common-BztqCOmk.js +0 -1
- package/dist/assets/common-DTjszpuj.js +0 -1
- package/dist/assets/common-DmcKuTke.js +0 -1
- package/dist/assets/common-Hpbr_vpQ.js +0 -1
- package/dist/assets/community-page-BLhzGTuy.js +0 -1
- package/dist/assets/companion-accent-gsn9VuVB.js +0 -1
- package/dist/assets/companion-layout-BES0UfBy.js +0 -1
- package/dist/assets/companion-surface-page-kl9ej_zQ.js +0 -1
- package/dist/assets/companion-watch-frame-page-CX0lYK6Y.js +0 -1
- package/dist/assets/connect-page-8LGXfYwr.js +0 -1
- package/dist/assets/consent-controls-BRXg7A0b.js +0 -1
- package/dist/assets/contacts-gateway-Cm83W9Sw.js +0 -1
- package/dist/assets/contacts-page-route-YdSPP6ct.js +0 -1
- package/dist/assets/credential-entry-page-B0E7m9Ka.js +0 -1
- package/dist/assets/credentials-page-KL8TseTX.js +0 -1
- package/dist/assets/danger-zone-redirect-page-CeG41nRv.js +0 -1
- package/dist/assets/debug-page-Cq9veQE7.js +0 -4
- package/dist/assets/deploy-dialogs-DiKerPg3.js +0 -1
- package/dist/assets/detail-card-B0OGBJ1-.js +0 -1
- package/dist/assets/detail-panel-stop-button-B6n2CDuJ.js +0 -1
- package/dist/assets/detail-primitives-MMaUWytS.js +0 -1
- package/dist/assets/developer-page--7O3Jeje.js +0 -1
- package/dist/assets/devices-redirect-page-De4zPGBG.js +0 -1
- package/dist/assets/dictation-overlay-page-BebL8Sje.js +0 -1
- package/dist/assets/document-viewer-page-R_dKhaWy.js +0 -1
- package/dist/assets/emails-page-CqVlJ1LT.js +0 -1
- package/dist/assets/environment-store-yY-PFyNj.js +0 -1
- package/dist/assets/esm-CEQ5-BPY.js +0 -2
- package/dist/assets/esm-CZUymCSO.js +0 -1
- package/dist/assets/esm-DyNBzk7k.js +0 -2
- package/dist/assets/esm-V26rZBqv.js +0 -2
- package/dist/assets/esm-VDGp8N8o.js +0 -2
- package/dist/assets/esm-bBYOtNIe.js +0 -2
- package/dist/assets/file-editor-B_RqvjQp.js +0 -1
- package/dist/assets/general-page-DZ2OQRcR.js +0 -2
- package/dist/assets/hatching-screen-BsUtOe4T.js +0 -1
- package/dist/assets/hosting-screen-CnZGwkfa.js +0 -1
- package/dist/assets/icons-xHdc0dPY.js +0 -1
- package/dist/assets/identity-page-route-DojUio39.js +0 -7
- package/dist/assets/index-CleA12ha.js +0 -379
- package/dist/assets/index-_KUyDosG.css +0 -2
- package/dist/assets/inspect-page-BE_JG1N4.js +0 -9
- package/dist/assets/integrations-page-KDXF3d-g.js +0 -1
- package/dist/assets/intelligence-layout-STvbMPLB.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-DMLOaMGU.js +0 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-DXaUnoFR.js +0 -1
- package/dist/assets/library-detail-page-CCmvUHtD.js +0 -1
- package/dist/assets/library-page-DlTszOAL.js +0 -1
- package/dist/assets/login-page-CUNLD9gj.js +0 -1
- package/dist/assets/logout-page-DcyTUY-b.js +0 -1
- package/dist/assets/logs-layout-BqkRgpwq.js +0 -1
- package/dist/assets/markdown-preview-CG-FNmRz.js +0 -1
- package/dist/assets/media-preview-CCq9FQiT.js +0 -1
- package/dist/assets/memory-page-route-BHUAp-C2.js +0 -2
- package/dist/assets/memory-router-playground-page-Dt9vB83b.js +0 -1
- package/dist/assets/message-files-panel-DpvaRorj.js +0 -1
- package/dist/assets/metric-card-CgEc3VST.js +0 -1
- package/dist/assets/notifications-page-kX-DNd3J.js +0 -1
- package/dist/assets/onboarding-8Qvub-HF.js +0 -1
- package/dist/assets/onboarding-BqMOEnu1.js +0 -1
- package/dist/assets/onboarding-Do0E1QsF.js +0 -1
- package/dist/assets/onboarding-ml_qpGn-.js +0 -1
- package/dist/assets/pairing-page-DJRUbeSZ.js +0 -1
- package/dist/assets/password-reset-page-Cegloo1P.js +0 -1
- package/dist/assets/pdf-file-preview-3kkKGH7o.js +0 -1
- package/dist/assets/personality-page-CmZHiyRo.js +0 -1
- package/dist/assets/personality-page-DjPVfIFL.js +0 -1
- package/dist/assets/personality-sliders-D0p9kgNx.js +0 -1
- package/dist/assets/plans-page-CCY1BUZx.js +0 -1
- package/dist/assets/platform-loopback-page-vdNjdoVw.js +0 -1
- package/dist/assets/plugin-detail-page-Co0YswmF.js +0 -1
- package/dist/assets/plugins-page-DxCCY6yP.js +0 -1
- package/dist/assets/preview-error-DyczP1Cl.js +0 -1
- package/dist/assets/privacy-page-nfyEw6V_.js +0 -1
- package/dist/assets/privacy-screen-CSYkxRBc.js +0 -1
- package/dist/assets/provider-callback-page-Cms4b36-.js +0 -1
- package/dist/assets/provider-key-B2zz48-r.js +0 -1
- package/dist/assets/provider-signup-page-nO1KOWei.js +0 -1
- package/dist/assets/quick-input-page-CtMMOIj7.js +0 -1
- package/dist/assets/research-mock-page-TkBJ2Xzt.js +0 -1
- package/dist/assets/research-onboarding-route-BBvprgLG.js +0 -50
- package/dist/assets/review-terms-screen-CdlPmf8I.js +0 -1
- package/dist/assets/schedules-BH4Qj3v_.js +0 -1
- package/dist/assets/schedules-page-BwWZDVOO.js +0 -1
- package/dist/assets/security-redirect-page-BflZPXbv.js +0 -1
- package/dist/assets/select-assistant-screen-s2j8iyBA.js +0 -1
- package/dist/assets/self-hosted-servers-BbfoTPnN.js +0 -1
- package/dist/assets/service-form-controls-B4TOUC0S.js +0 -1
- package/dist/assets/setting-row-DqAfZdv2.js +0 -1
- package/dist/assets/settings-C63GjmJb.js +0 -3
- package/dist/assets/settings-CrvJCEjH.js +0 -3
- package/dist/assets/settings-D4bcxNIG.js +0 -3
- package/dist/assets/settings-Dn888InQ.js +0 -3
- package/dist/assets/settings-divider-CM41jU8r.js +0 -1
- package/dist/assets/settings-layout-dXTKjyLn.js +0 -1
- package/dist/assets/share-feedback-modal-Bf_f-1Md.js +0 -2
- package/dist/assets/sidebar-tree-Bk7IUERw.js +0 -1
- package/dist/assets/signup-page-C-3fDL0D.js +0 -1
- package/dist/assets/signup-shell-DqL_hfoj.js +0 -1
- package/dist/assets/skill-detail-page-CVduyZVJ.js +0 -2
- package/dist/assets/skill-detail-panel-BxZAnZbg.js +0 -1
- package/dist/assets/skill-icon-FPL5xeRb.js +0 -1
- package/dist/assets/skill-removal-dialog-D3tHR3Ld.js +0 -1
- package/dist/assets/skills-page-C-0iE9BV.js +0 -1
- package/dist/assets/sounds-page-_EVUXllQ.js +0 -1
- package/dist/assets/start-screen-yHd9KDX3.js +0 -1
- package/dist/assets/stt-language-picker-modal-BUc9OzaG.js +0 -1
- package/dist/assets/subagent-detail-panel-rXvn591h.js +0 -1
- package/dist/assets/superpowers-page-BZt2aSZX.js +0 -1
- package/dist/assets/system-events-page-C8lfUiSV.js +0 -1
- package/dist/assets/system-events-redirect-page-8LxoBVmn.js +0 -1
- package/dist/assets/text-preview-DW6f8CZi.js +0 -1
- package/dist/assets/theme-stage-page-DzWIjgFX.js +0 -1
- package/dist/assets/tool-detail-panel-UBD8L_LV.js +0 -15
- package/dist/assets/trait-cycle-row-CSwys30K.js +0 -1
- package/dist/assets/upgrade-cancel-page-o-OcUT1B.js +0 -1
- package/dist/assets/upgrade-success-page-D2BicwBj.js +0 -1
- package/dist/assets/usage-redirect-page-BmlaczMS.js +0 -1
- package/dist/assets/use-app-delete-B8jp3vIE.js +0 -1
- package/dist/assets/use-assistant-identity-details-BRqAQ7pS.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh-DX3GymbX.js +0 -1
- package/dist/assets/use-edge-swipe-back-CbTl-FwD.js +0 -2
- package/dist/assets/use-hotkey-recorder-BKNmxbXj.js +0 -1
- package/dist/assets/use-invite-link-dialog-Daa3jhkP.js +0 -1
- package/dist/assets/use-platform-assistant-id-Dj8c4xX-.js +0 -1
- package/dist/assets/use-return-to-short-circuit-DusBrJ_h.js +0 -1
- package/dist/assets/use-side-list-room-3ENOwQ0t.js +0 -1
- package/dist/assets/use-skill-actions-BjY9oa7a.js +0 -1
- package/dist/assets/use-skill-detail-files-kPuMdyDL.js +0 -1
- package/dist/assets/use-supports-credentials-settings-BuLaPijC.js +0 -1
- package/dist/assets/use-transcript-message-by-id-DOMa4nxw.js +0 -1
- package/dist/assets/vendor-C_e0Rl2s.js +0 -127
- package/dist/assets/voice-page-DuWSfI5B.js +0 -1
- package/dist/assets/wake-detail-panel-D34xuHov.js +0 -1
- package/dist/assets/weather-forecast-display-D1iB5UK2.js +0 -1
- package/dist/assets/welcome-screen-Dw3nj99H.js +0 -1
- package/dist/assets/workflow-detail-panel-BbS4Uq2Q.js +0 -1
- package/dist/assets/workspace-B3qxH51y.js +0 -1
- package/dist/assets/workspace-BUMgSIAc.js +0 -1
- package/dist/assets/workspace-DBbRFlwk.js +0 -1
- package/dist/assets/workspace-LUczKAWY.js +0 -1
- package/dist/assets/workspace-page-CmL3AaIw.js +0 -1
- /package/dist/assets/{account-DDtCvPF5.js → account-3GFMLigt.js} +0 -0
- /package/dist/assets/{account-Diu-bFrX.js → account-BZPOh6pV.js} +0 -0
- /package/dist/assets/{account-Bxy_vX-K.js → account-QucJ2Y5u.js} +0 -0
- /package/dist/assets/{account-BF5lrfyX.js → account-lTaON6P7.js} +0 -0
- /package/dist/assets/{activation-BYAGAleJ.js → activation-CoAfI7zY.js} +0 -0
- /package/dist/assets/{activation-CEdyqKUu.js → activation-tasks-CBv6lXCw.js} +0 -0
- /package/dist/assets/{activation-DEdwceum.js → activation-tasks-D-qyBs3B.js} +0 -0
- /package/dist/assets/{activation-DF1oj8j7.js → activation-un8nBcxR.js} +0 -0
- /package/dist/assets/{app-types-Dij41aJ8.js → app-types-zXUHUKUx.js} +0 -0
- /package/dist/assets/{build.umd-BrZECSr1.js → build.umd-CqzQelGW.js} +0 -0
- /package/dist/assets/{contacts-4xLilqUA.js → contacts-C56-I-X9.js} +0 -0
- /package/dist/assets/{contacts-DIgSZ4hU.js → contacts-D-Az5-cK.js} +0 -0
- /package/dist/assets/{contacts-CnVtG-pl.js → contacts-DTybocWJ.js} +0 -0
- /package/dist/assets/{contacts-DE8gWrSn.js → contacts-DxMblAMX.js} +0 -0
- /package/dist/assets/{credential-requests-CPxFLVT9.js → credential-requests-8vU09vq-.js} +0 -0
- /package/dist/assets/{credential-requests-BFLeXf78.js → credential-requests-BC6_zno-.js} +0 -0
- /package/dist/assets/{credential-requests-lDkcsmmB.js → credential-requests-CMIr5-ug.js} +0 -0
- /package/dist/assets/{credential-requests-Qe84hNEC.js → credential-requests-tqoAnXSd.js} +0 -0
- /package/dist/assets/{definitions-BjZOswgM.js → definitions-CXFBHfRh.js} +0 -0
- /package/dist/assets/{definitions-BTebkxyz.js → definitions-at6loHuH.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-QQIw94Eu.js → emoji-catalog-data-_ZhwYlX6.js} +0 -0
- /package/dist/assets/{format-countdown-C-J64lue.js → format-countdown-BRdD5t1W.js} +0 -0
- /package/dist/assets/{format-file-size-Daiq0gMr.js → format-file-size-CEqN0m2h.js} +0 -0
- /package/dist/assets/{home-tbbkVcjW.js → home-B--cMopL.js} +0 -0
- /package/dist/assets/{home-BteaphB_.js → home-B6H0v48H.js} +0 -0
- /package/dist/assets/{home-CCUv41ef.js → home-C1py7XQe.js} +0 -0
- /package/dist/assets/{home-DO7A2tVm.js → home-CZSiQM2c.js} +0 -0
- /package/dist/assets/{intelligence-xiqKApFj.js → intelligence-AZoeHYNk.js} +0 -0
- /package/dist/assets/{intelligence-s33k1wI2.js → intelligence-ByOscdNs.js} +0 -0
- /package/dist/assets/{intelligence-Bla65nm5.js → intelligence-CACuvYQr.js} +0 -0
- /package/dist/assets/{intelligence-Db527yzW.js → intelligence-Dg4wVSdX.js} +0 -0
- /package/dist/assets/{library-BRmAQI9e.js → library-B9Qt21qk.js} +0 -0
- /package/dist/assets/{library-DuuiJut6.js → library-CnxFRxu8.js} +0 -0
- /package/dist/assets/{library-ClpjgmQn.js → library-Cx3az3ti.js} +0 -0
- /package/dist/assets/{library-BhC14-NO.js → library-DIO1gZ0U.js} +0 -0
- /package/dist/assets/{link-click-e-Fdx5JV.js → link-click-BdI43zRN.js} +0 -0
- /package/dist/assets/{logs-SCSd0kUm.js → logs-4gzI0mqO.js} +0 -0
- /package/dist/assets/{logs-DwYHebVx.js → logs-CDvqZ4JP.js} +0 -0
- /package/dist/assets/{logs-NHN9-mUP.js → logs-CrDZcD8o.js} +0 -0
- /package/dist/assets/{logs-CQYFdGa_.js → logs-Dmqay4Dh.js} +0 -0
- /package/dist/assets/{machine-sizes-DadN4uVk.js → machine-sizes-ez3aIfKG.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-COS57xjn.js → onboarding-step-layout-DgPEiR2D.js} +0 -0
- /package/dist/assets/{plugin-attribution-zkdgIHRG.js → plugin-attribution-BHvBZd51.js} +0 -0
- /package/dist/assets/{radio-card-nav-DCE3wYLZ.js → radio-card-nav-CZ23fZDo.js} +0 -0
- /package/dist/assets/{remote-web-DfCFOpuR.js → remote-web-4NRQQXml.js} +0 -0
- /package/dist/assets/{remote-web-D3chXkbO.js → remote-web-B8SfPASo.js} +0 -0
- /package/dist/assets/{remote-web-BIYYINs1.js → remote-web-Cc4dmJ0o.js} +0 -0
- /package/dist/assets/{remote-web-CSrWAyIC.js → remote-web-Dp6mRdmN.js} +0 -0
- /package/dist/assets/{schedules-BBaBmcJG.js → schedules-BiEnjMbJ.js} +0 -0
- /package/dist/assets/{schedules-jUeeTvGp.js → schedules-Bv2BFo_x.js} +0 -0
- /package/dist/assets/{schedules-CjtoHUii.js → schedules-CSTIvSjW.js} +0 -0
- /package/dist/assets/{schedules-CpR8IZ0O.js → schedules-CrEwUMbq.js} +0 -0
- /package/dist/assets/{signup-onboarding-handoff-DsARDCO5.js → signup-onboarding-handoff-BZ0YGSjD.js} +0 -0
- /package/dist/assets/{terminal-BkBRbIo0.js → terminal-Cjb3eVUa.js} +0 -0
- /package/dist/assets/{terminal-BDTudyuW.js → terminal-DDmiKM39.js} +0 -0
- /package/dist/assets/{terminal-DOjJsvsr.js → terminal-hha8indE.js} +0 -0
- /package/dist/assets/{terminal-DzafX5hx.js → terminal-sl6GyHu4.js} +0 -0
- /package/dist/assets/{usage-window-C3F8jUQI.js → usage-window-JvfWtnk-.js} +0 -0
- /package/dist/assets/{xterm-BQMgK3JF.js → xterm-D8OYaXNN.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-Cb7BiyPE.js → xterm-addon-fit-BjUM59GY.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{um as e}from"./app-DYcUyeCV.js";var t=100;async function n({isCancelled:n,registerTimer:r,alsoReady:i,onWaiting:a}={}){let o=Date.now(),s=!1,c=()=>new Promise(e=>{if(n?.()===!0){e();return}let i=setTimeout(()=>{r?.(null),e()},t);r?.(i)});for(;;){if(n?.()===!0)return`cancelled`;let t=e();if(t===`ready`&&(i?.()??!0))return`ready`;if(!s&&t===`ready`&&(s=!0,o=Date.now()),a?.(t)!==!0&&(t===`unavailable`||Date.now()-o>=5e3))return`failed`;await c()}}export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$n as t,Ar as n,Dr as r,Eb as i,Or as a,Px as o,cn as s,kr as c,sn as l}from"./app-DYcUyeCV.js";import{j as u}from"./vendor-Dce4XQGd.js";import{t as d,x as f}from"./react-B9IgSVeK.js";import{t as p}from"./detail-panel-stop-button-CQdsxMzy.js";import{t as m}from"./status-badge-pill-e7pOiHx8.js";import{r as h,t as g}from"./detail-primitives-DWM6BL6-.js";var _=e(f(),1),v=d();function y({status:e}){return(0,v.jsx)(m,{color:r(e),label:a(e)})}function b({entry:e,onClose:r}){let{t:a}=u(`chat`),d=n(e.status),f=!d,m=f&&e.output!==void 0&&e.output!==``,b=f&&e.exitCode!=null,[x,S]=(0,_.useState)(!1),C=(0,_.useCallback)(()=>{S(!0),l(e.id).catch(e=>{S(!1),i(e,{context:`BackgroundTaskDetailPanel.stop`})})},[e.id]);return(0,v.jsxs)(t,{Glyph:s(e.toolName),title:c(e.status),headerTrailing:(0,v.jsx)(y,{status:e.status}),headerActions:d?(0,v.jsx)(p,{onStop:C,ariaLabel:a(`backgroundTaskDetailPanel.stopCommandAria`),disabled:x}):void 0,closeVariant:`outlined`,closeLabel:a(`backgroundTaskDetailPanel.closeDetail`),onClose:r,children:[(0,v.jsxs)(`div`,{children:[(0,v.jsx)(h,{children:a(`backgroundTaskDetailPanel.command`)}),(0,v.jsx)(g,{text:e.command})]}),m&&(0,v.jsxs)(`div`,{className:`mt-5`,children:[(0,v.jsx)(h,{children:a(`backgroundTaskDetailPanel.output`)}),(0,v.jsx)(g,{text:e.output})]}),b&&(0,v.jsx)(o,{variant:`body-small-default`,as:`p`,className:`mt-2 text-[var(--content-tertiary)]`,children:a(`backgroundTaskDetailPanel.exitCode`,{code:e.exitCode})})]})}export{b as BackgroundTaskDetailPanel};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/native-file-CBaSUD63.js","assets/app-DYcUyeCV.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-B9IgSVeK.js","assets/vendor-Dce4XQGd.js","assets/icons-SKs_cTXW.js","assets/app-zlzLjynM.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as e,t}from"./rolldown-runtime-BM3Ffeng.js";import{$l as n,Ab as r,Af as i,Al as a,Ba as o,Bl as s,Bu as c,Cl as l,D_ as u,Dl as d,Eb as f,El as p,F as m,Fx as h,H_ as g,Hl as _,I as v,Il as y,Ix as b,L as x,L_ as S,Ll as C,Lx as w,Mf as T,Mx as E,N as D,Np as O,Nt as k,Nx as A,Oc as j,Ol as M,Ox as N,P,Pb as ee,Pl as te,Px as F,Qt as ne,Rl as re,Rx as I,Sl as L,Tl as ie,Tx as ae,U_ as R,Ul as oe,V_ as se,Va as z,Vu as ce,Wl as le,Wm as B,Yb as ue,Yp as de,_b as fe,_l as pe,_x as V,ai as me,ax as he,bl as ge,bp as _e,bx as ve,cc as ye,cg as be,cv as xe,d as Se,dm as Ce,dp as we,et as Te,eu as Ee,fl as De,fp as Oe,gl as ke,gp as Ae,hd as je,hf as Me,hl as Ne,hn as Pe,hx as H,jb as Fe,jf as Ie,jx as Le,kf as Re,kl as ze,lc as Be,lg as Ve,ml as He,mx as Ue,oi as We,pl as Ge,pp as Ke,qb as qe,ti as Je,uc as Ye,ug as Xe,vd as Ze,vh as Qe,vl as $e,wl as et,wx as tt,xh as nt,xl as rt,yl as it,yx as at,zl as ot}from"./app-DYcUyeCV.js";import{I as U,Jn as st,Q as ct,Zn as W,er as G,j as K,or as lt,qn as ut}from"./vendor-Dce4XQGd.js";import{_ as dt,d as ft,f as pt,n as mt,t as ht,v as gt,x as _t}from"./react-B9IgSVeK.js";import{Cr as vt,E as yt,F as bt,It as xt,Ja as St,Ki as Ct,Li as wt,Q as Tt,Ra as Et,Ui as Dt,Yr as Ot,ai as kt,di as At,i as jt,qi as Mt,qn as q,si as Nt,ti as Pt,ur as Ft,v as It}from"./icons-SKs_cTXW.js";import{A as Lt,B as Rt,C as zt,D as Bt,I as Vt,L as Ht,O as Ut,P as Wt,R as Gt,T as Kt,V as qt,_ as Jt,a as Yt,b as Xt,c as Zt,d as Qt,f as $t,g as en,h as tn,i as nn,j as rn,k as an,l as on,m as sn,n as cn,o as ln,p as un,r as dn,s as fn,t as pn,u as mn,v as hn,x as gn,y as _n}from"./use-checkout-dismiss-refresh-BVsFNWT8.js";import{n as vn,t as yn}from"./android-billing-handoff-CdjBg7iY.js";import{t as bn}from"./checkout-return-target-C4W9yc_g.js";import{t as xn}from"./add-credits-modal-DbveV5No.js";import{t as Sn}from"./link-click-BdI43zRN.js";import{t as Cn}from"./await-org-header-settled-BWq2sN7_.js";import{a as wn,i as Tn,n as En,r as Dn}from"./usage-window-JvfWtnk-.js";var On=St(`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`}]]),kn=St(`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(_t(),1);function An(e){return e.get(`tab`)===`billing`||e.has(`adjust_plan`)||e.has(`pro_onboarding`)||e.has(`billing_status`)||e.has(`session_id`)}function jn(e,t){return e===`full`?!0:e===`disabled`?An(t):!1}var Y=ht();function Mn({open:e,onOpenChange:t,amountUsd:n}){let{t:r}=K(`settings`),i=G(),a=st($e()),o=a.isPending,s=P(n);return(0,Y.jsx)(V.Root,{open:e,onOpenChange:e=>{!e&&o||t(e)},children:(0,Y.jsxs)(V.Content,{size:`sm`,"data-testid":`checkout-bonus-modal`,children:[(0,Y.jsx)(V.Header,{icon:vt,children:(0,Y.jsx)(V.Title,{children:r(`checkoutBonusModal.title`,{amount:s})})}),(0,Y.jsx)(V.Body,{children:(0,Y.jsx)(F,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:r(`checkoutBonusModal.body`,{amount:s})})}),(0,Y.jsxs)(V.Footer,{children:[(0,Y.jsx)(V.Close,{asChild:!0,children:(0,Y.jsx)(h,{variant:`outlined`,disabled:o,children:r(`checkoutBonusModal.decline`)})}),(0,Y.jsx)(h,{variant:`primary`,leftIcon:o?(0,Y.jsx)(q,{className:`animate-spin`}):void 0,onClick:()=>{o||a.mutate({},{onSuccess:e=>{e.status===`granted`?(H.success(r(`checkoutBonusModal.grantedToast`,{amount:P(e.amount_usd)})),i.invalidateQueries(ot())):H.info(r(`checkoutBonusModal.unavailableToast`)),i.invalidateQueries(it()),t(!1)},onError:()=>{H.error(r(`checkoutBonusModal.errorToast`))}})},disabled:o,"data-testid":`claim-checkout-bonus-button`,children:r(`checkoutBonusModal.claim`,{amount:s})})]})]})})}function Nn(e){let t=Ce(),n=G(),r=e!==null,{data:i,dataUpdatedAt:a}=W({...it(),enabled:r&&t,staleTime:0,refetchOnWindowFocus:!1}),o=(0,J.useRef)(e);return(0,J.useEffect)(()=>{let t=o.current;o.current=e,!(e===null||e===t||t===null)&&n.invalidateQueries(it())},[e,n]),{showOffer:r&&i?.eligible===!0&&a>=e,amountUsd:i?.amount_usd??`0.00`}}function Pn(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 Fn(e){return Number.isFinite(e)?Math.round(e).toLocaleString():`0`}function In(e){return!Number.isFinite(e)||e===0?`$0.00`:`$${e.toFixed(2)}`}var Ln=`model`,Rn={model:`Model`,task:`Action`,profile:`Profile`},zn=[{value:`model`,label:Rn.model},{value:`task`,label:Rn.task},{value:`profile`,label:Rn.profile}];function Bn(e){return e===`model`||e===`task`||e===`profile`}function Vn(e){switch(e){case`model`:return`model`;case`task`:return`call_site`;case`profile`:return`inference_profile`}}function Hn(e){switch(e){case`model`:return`model`;case`task`:return`llm_call_site`;case`profile`:return`inference_profile`}}function Un(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 Wn(e,t,n){return!e||e.length===0?[]:e.map(e=>{let r=Un(t,e,n);return r===e.group?e:{...e,group:r}})}var Gn=6,Kn=`value:`,qn=`null:`;function Jn(e,t=`schedule`){return e===null?`${qn}${Bn(t)?Vn(t):t}`:`${Kn}${e}`}function Yn(e){return[...e].sort((e,t)=>{if(e.date!==t.date)return e.date<t.date?-1:1;let n=er(e.bucketId),r=er(t.bucketId);return n===r?e.bucketId===t.bucketId?0:e.bucketId<t.bucketId?-1:1:n-r})}function Xn(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 Zn(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=Un(t,$n(o),n);e===o.group?i[a]=o:(r=!0,i[a]={...o,group:e})}return r?{...e,groups:i}:e})}function Qn(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,Gn)}}function $n(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 er(e){let t=e.lastIndexOf(`|`);if(t<0)return 0;let n=Number(e.slice(t+1));return Number.isFinite(n)?n:0}var tr=140,nr=40,rr=28,ir=2,ar=2,or=1e-6,sr=12,cr=220,lr=56,ur=[40,80,60,100,50,70,30],dr=[18,24,28,35,42,50,64,78,92,106,118,96,84,74,68,80,88,72,56,48,40,34,26,20],fr=[`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 pr(e){return fr[e%fr.length]}function mr(e){return e.displayLabel?e.displayLabel:e.date}function hr(e,t){let n=e+sr,r=t+sr;return n+cr>window.innerWidth&&(n=e-cr-sr),r+lr>window.innerHeight&&(r=t-lr-sr),{x:n,y:r}}function gr({buckets:e,isHourly:t,legendItems:n}){let{t:r}=K(`settings`),[i,a]=(0,J.useState)(null),o=(0,J.useMemo)(()=>Yn(e),[e]),s=(0,J.useMemo)(()=>Qn(e),[e]),c=n??s.items,l=n??s.visibleItems,u=(0,J.useMemo)(()=>o.reduce((e,t)=>Math.max(e,t.totalEstimatedCostUsd),0),[o]),d=(0,J.useCallback)((e,t)=>{let n=hr(e.clientX,e.clientY);a({...t,x:n.x,y:n.y})},[]),f=(0,J.useCallback)(()=>a(null),[]);if(o.length===0){let e=(0,Y.jsx)(xr,{title:r(t?`usageTrendChart.noHourlyData`:`usageTrendChart.noDailyData`),subtitle:r(`usageTrendChart.noUsageInRange`)});return l.length===0?e:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[e,(0,Y.jsx)(br,{items:l})]})}let p=t?rr:nr;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:`${tr}px`},"aria-hidden":`true`,children:o.map(e=>{let t=u>0?e.totalEstimatedCostUsd/u:0,r=Math.max(ir,tr*t);return(0,Y.jsx)(`div`,{className:`flex items-end`,style:{width:`${p}px`,minWidth:`${p}px`,height:`${r}px`,opacity:e.totalEstimatedCostUsd>0?1:.3},title:`${mr(e)}: ${In(e.totalEstimatedCostUsd)}`,"data-usage-series-bar":e.bucketId,children:(0,Y.jsx)(vr,{bucket:e,height:r,legendItems:c,hasLegendOverride:n!=null,onSegmentHover:d,onSegmentLeave:f})},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:`${p}px`,minWidth:`${p}px`},children:[(0,Y.jsx)(`span`,{className:`truncate text-[10px]`,style:{color:`var(--content-secondary)`},children:In(e.totalEstimatedCostUsd)}),(0,Y.jsx)(`span`,{className:`truncate text-[10px]`,style:{color:`var(--content-tertiary)`},children:mr(e)})]},e.bucketId))}),l.length>0?(0,Y.jsx)(br,{items:l}):null]}),i?(0,Y.jsx)(yr,{tooltip:i}):null]})}function _r({isHourly:e}){let t=e?dr:ur,n=e?rr:nr;return(0,Y.jsx)(`div`,{className:`flex items-end gap-2`,style:{height:`${tr}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 vr({bucket:e,height:t,legendItems:n,hasLegendOverride:r,onSegmentHover:i,onSegmentLeave:a}){let o=Object.keys(e.groups).length>0,s=n.filter(e=>(e.state??`active`)===`active`).flatMap(t=>{let n=e.groups[t.seriesKey];return!n||n.totalEstimatedCostUsd<=0?[]:[{item:t,value:n}]});if(s.length===0&&!o&&!r){let n=mr(e),r={label:U(`settings:usageTrendChart.total`),bucketLabel:n,cost:In(e.totalEstimatedCostUsd)};return(0,Y.jsx)(`div`,{className:`w-full rounded-sm`,title:`${r.label}: ${r.cost}`,onMouseEnter:e=>i(e,r),onMouseMove:e=>i(e,r),onMouseLeave:a,style:{height:`${t}px`,background:pr(0)},"data-usage-series-segment-label":r.label,"data-usage-fallback-segment":`true`})}return s.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:s.map(({item:n,value:r})=>{let o={label:n.label,bucketLabel:mr(e),cost:In(r.totalEstimatedCostUsd)};return(0,Y.jsx)(`div`,{title:`${o.label}: ${o.cost}`,onMouseEnter:e=>i(e,o),onMouseMove:e=>i(e,o),onMouseLeave:a,style:{height:`${Math.max(ar,t*r.totalEstimatedCostUsd/Math.max(e.totalEstimatedCostUsd,or))}px`,background:pr(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 yr({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 br({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)`:pr(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 xr({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 Sr(e){return Bn(e)?Vn(e):e}function Cr(e){return Dr({from:e.from,to:e.to},e.scheduleId)}function wr(e){return Dr({from:e.from,to:e.to,...e.granularity?{granularity:e.granularity}:{},...e.tz?{tz:e.tz}:{}},e.scheduleId)}function Tr(e){return Dr({from:e.from,to:e.to,groupBy:Sr(e.groupBy)},e.scheduleId)}function Er(e){return Dr({from:e.from,to:e.to,granularity:e.granularity,groupBy:Sr(e.groupBy),...e.tz?{tz:e.tz}:{}},e.scheduleId)}function Dr(e,t){return t?{...e,scheduleId:t}:e}function Or(e){return[`${Fn(e.totalInputTokens)} direct`,`${Fn(e.totalCacheCreationTokens)} cache created`,`${Fn(e.totalCacheReadTokens)} cache read`,`${Fn(e.totalOutputTokens)} out`].join(` / `)}function kr(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 Ar(e){return`${kr(e.totalInputTokens+e.totalCacheCreationTokens+e.totalCacheReadTokens)} in / ${kr(e.totalOutputTokens)} out`}var jr=`task`,Mr=`model`,Nr=new Set([400,404,422]),Pr=3,Fr=new Set([`today`,`yesterday`,`7d`,`30d`,`90d`,`all`]),Ir=new Set([`actor`,`provider`,`model`,`conversation`,`task`,`profile`,`schedule`]),Lr={task:Rn.task,profile:Rn.profile,model:Rn.model,provider:`Provider`,actor:`Actor`,conversation:`Conversation`,schedule:`Schedule`},Rr=[{value:`task`,label:Lr.task},{value:`profile`,label:Lr.profile},{value:`model`,label:Lr.model},{value:`provider`,label:Lr.provider},{value:`schedule`,label:Lr.schedule},{value:`conversation`,label:Lr.conversation}];function zr(e){let t=e.get(`range`),n=e.get(`groupBy`),r=Ur(n)?n:jr;return{range:Hr(t)?t:`7d`,groupBy:r,scheduleId:r===`schedule`?Br(e):void 0}}function Br(e){let t=e.get(`scheduleId`);if(!(!t||t.trim().length===0))return t}function Vr(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 Hr(e){return e!=null&&Fr.has(e)}function Ur(e){return e!=null&&Ir.has(e)}function Wr(e){return e!==`conversation`}function Gr(e,t){return e!==`task`&&e!==`profile`?!1:qr(t)}function Kr(e,t){return!qr(t)&&e<Pr}function qr(e){return e instanceof r&&Nr.has(e.status)}function Jr({requestedGranularity:e,isLoading:t,buckets:n}){return e===`hourly`&&(t||!n||n.length===0||n.some(Yr))?`hourly`:`daily`}function Yr(e){return e.bucketId.includes(`|`)||Xr(e.date)}function Xr(e){return/^\d{4}-\d{2}-\d{2} ([01]\d|2[0-3]):00$/.test(e)}function Zr(e,t,n=Date.now()){return Dn(e,t,n)}function Qr(e){return e===`today`||e===`yesterday`?`hourly`:`daily`}function $r({prompt:e,children:t,variant:n=`outlined`,size:r=`regular`,className:i}){let a=pt(),o=(0,J.useCallback)(()=>{Be(a,{prompt:e})},[a,e]);return(0,Y.jsx)(h,{variant:n,size:r,leftIcon:(0,Y.jsx)(Tt,{}),onClick:o,className:i,children:t})}var ei={today:`usageTab.rangeToday`,yesterday:`usageTab.rangeYesterday`,"7d":`usageTab.range7d`,"30d":`usageTab.range30d`,"90d":`usageTab.range90d`,all:`usageTab.rangeAll`},ti={task:`usageTab.groupByTask`,profile:`usageTab.groupByProfile`,model:`usageTab.groupByModel`,provider:`usageTab.groupByProvider`,actor:`usageTab.groupByActor`,conversation:`usageTab.groupByConversation`,schedule:`usageTab.groupBySchedule`};function ni(e,t){return e(ti[t])}function ri(e,t,n){let r=e(t===`hourly`?`usageTab.hourlyTrend`:`usageTab.dailyTrend`);if(!n||n===`conversation`)return r;let i=ni(e,n);return e(t===`hourly`?`usageTab.hourlyTrendBy`:`usageTab.dailyTrendBy`,{group:i})}var ii=300*1e3,ai=[`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(` `),oi=[`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 si({assistantId:e}){let{t}=K(`settings`),[n,r]=dt(),{range:a,groupBy:o,scheduleId:s}=(0,J.useMemo)(()=>zr(n),[n]),c=z(),l=(0,J.useCallback)(e=>{r(t=>Vr(t,e),{replace:!0})},[r]),d=(0,J.useMemo)(()=>Zr(a,c),[a,c]),f=(0,J.useMemo)(()=>Qr(a),[a]),p=W({queryKey:Me({path:{assistant_id:e}}),queryFn:()=>Se(e),staleTime:1e4}),m=(0,J.useCallback)(e=>{l({range:e})},[l]),h=W({...T({path:{assistant_id:e},query:Cr({from:d.from,to:d.to,scheduleId:s})})}),g=W({queryKey:Re({path:{assistant_id:e},query:Tr({from:d.from,to:d.to,groupBy:o,scheduleId:s})}),queryFn:async({signal:t})=>{try{let{data:n}=await u({path:{assistant_id:e},query:Tr({from:d.from,to:d.to,groupBy:o,scheduleId:s}),signal:t,throwOnError:!0});return{groupBy:o,response:n}}catch(n){if(!Gr(o,n))throw n;let{data:r}=await u({path:{assistant_id:e},query:Tr({from:d.from,to:d.to,groupBy:Mr,scheduleId:s}),signal:t,throwOnError:!0});return{groupBy:Mr,response:r}}},retry:Kr}),_=g.data?.groupBy??o;(0,J.useEffect)(()=>{_!==o&&l({groupBy:_,scheduleId:_===`schedule`?void 0:null})},[_,o,l]);let v=Wr(_)?_:void 0,y=W({...Ie({path:{assistant_id:e},query:Er({from:d.from,to:d.to,granularity:f,groupBy:v??`actor`,tz:c,scheduleId:s})}),enabled:!!v,retry:Kr}),b=W({...i({path:{assistant_id:e},query:wr({from:d.from,to:d.to,granularity:f,tz:c,scheduleId:s})}),enabled:!v||y.isError}),x=W({...Ze({path:{assistant_id:e}}),enabled:_===`task`,staleTime:1/0}),S=W({...je({path:{assistant_id:e}}),select:wn,enabled:_===`profile`,staleTime:ii}),C=(0,J.useMemo)(()=>({callSites:Pn(x.data),profiles:S.data??{}}),[x.data,S.data]),w=(0,J.useMemo)(()=>{let e=g.data;if(e)return Wn(e.response.breakdown,e.groupBy,C)},[g.data,C]),E=(0,J.useMemo)(()=>{if(!(!v||!y.data))return Zn(y.data.buckets,v,C)},[y.data,v,C]),D=(0,J.useMemo)(()=>{if(b.data)return Xn(b.data.buckets)},[b.data]),O=(0,J.useMemo)(()=>v?y.error?D?{isLoading:!1,error:null,data:D,refetch:b.refetch}:{isLoading:b.isLoading||!D&&!b.error,error:b.error??y.error,data:void 0,refetch:b.error?b.refetch:y.refetch}:{isLoading:y.isLoading,error:y.error,data:E,refetch:y.refetch}:{isLoading:b.isLoading,error:b.error,data:D,refetch:b.refetch},[D,b.error,b.isLoading,b.refetch,E,v,y.error,y.isLoading,y.refetch]),k=Jr({requestedGranularity:f,isLoading:O.isLoading,buckets:O.data}),A=k===`hourly`,j=v&&y.error?void 0:_,M=(0,J.useMemo)(()=>{if(!(_!==`schedule`||!s))return ci(p.data,s,t)},[_,s,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)(ui,{range:a,onChange:m})})]}),(0,Y.jsx)(`section`,{"aria-label":t(`usageTab.totalsAriaLabel`),children:(0,Y.jsx)(fi,{query:h,skeleton:(0,Y.jsx)(hi,{}),render:e=>(0,Y.jsx)(pi,{totals:e})})}),(0,Y.jsx)(di,{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:ri(t,k,j)}),(0,Y.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:(0,Y.jsx)(gi,{value:_,onChange:e=>{l({groupBy:e,scheduleId:e===`schedule`?void 0:null})}})})]}),(0,Y.jsx)(fi,{query:O,skeleton:(0,Y.jsx)(_r,{isHourly:A}),render:e=>(0,Y.jsx)(gr,{buckets:e,isHourly:A,legendItems:M})})]})}),(0,Y.jsx)(_i,{query:g,groups:w}),(0,Y.jsx)(li,{})]})}function ci(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:Jn(e.id,`schedule`),label:e.label,colorIndex:n,state:e.id===t?`active`:`inactive`}))}function li(){let{t:e}=K(`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)(di,{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)($r,{prompt:ai,children:e(`usageTab.analyzeCostsButton`)}),(0,Y.jsx)($r,{prompt:oi,variant:`ghost`,children:e(`usageTab.optimizeSettingsButton`)})]})})]})}function ui({range:e,onChange:t}){let{t:n}=K(`settings`);return(0,Y.jsx)(`div`,{className:`flex items-center`,children:(0,Y.jsx)(he,{value:e,onChange:t,options:Object.entries(ei).map(([e,t])=>({value:e,label:n(t)}))})})}function di({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 fi({query:e,skeleton:t,render:n}){let{t:r}=K(`settings`);return e.isLoading?(0,Y.jsx)(Y.Fragment,{children:t}):e.error?(0,Y.jsx)(Ci,{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 pi({totals:e}){let{t}=K(`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:In(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:Fn(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)(mi,{label:t(`usageTab.directInputTokensLabel`),value:Fn(e.totalInputTokens)}),(0,Y.jsx)(mi,{label:t(`usageTab.outputTokensLabel`),value:Fn(e.totalOutputTokens)}),(0,Y.jsx)(mi,{label:t(`usageTab.cacheCreatedLabel`),value:Fn(e.totalCacheCreationTokens)}),(0,Y.jsx)(mi,{label:t(`usageTab.cacheReadLabel`),value:Fn(e.totalCacheReadTokens)})]})]})}function mi({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 hi(){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)(xi,{width:140,height:30}),(0,Y.jsx)(xi,{width:90,height:12})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(xi,{width:60,height:16}),(0,Y.jsx)(xi,{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)(xi,{width:`50%`,height:12}),(0,Y.jsx)(xi,{width:`70%`,height:11})]},t))})]})}function gi({value:e,onChange:t}){let{t:n}=K(`settings`);return(0,Y.jsx)(`div`,{className:`flex items-center`,children:(0,Y.jsx)(he,{value:e,onChange:t,menuAlign:`end`,menuMinWidth:196,options:Rr.map(e=>({value:e.value,label:ni(n,e.value)}))})})}function _i({query:e,groups:t}){let{t:n}=K(`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)(di,{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)(vi,{label:n(`usageTab.percentOfTotalLabel`),active:r.has(`pct`),onClick:()=>a(`pct`)}),(0,Y.jsx)(vi,{label:n(`usageTab.tokensLabel`),active:r.has(`tokens`),onClick:()=>a(`tokens`)}),(0,Y.jsx)(vi,{label:n(`usageTab.turnsLabel`),active:r.has(`turns`),onClick:()=>a(`turns`)})]}),(0,Y.jsx)(fi,{query:e,skeleton:(0,Y.jsx)(bi,{}),render:e=>(0,Y.jsx)(yi,{groups:t??e.response.breakdown,groupBy:e.groupBy,showPct:r.has(`pct`),showTokens:r.has(`tokens`),showTurns:r.has(`turns`)})})]})})}function vi({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 yi({groups:e,groupBy:t,showPct:n,showTokens:r,showTurns:i}){let{t:a}=K(`settings`),o=pt();if(e.length===0)return(0,Y.jsx)(Si,{title:a(`usageTab.noBreakdownDataTitle`),subtitle:a(`usageTab.noBreakdownDataSubtitle`)});let s=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 c=Or(e),l=Ar(e),u=t===`conversation`?e.groupId:null,d=s>0?Math.round(e.totalEstimatedCostUsd/s*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`)||ye(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)(mt,{to:fe.conversation(u),className:`block truncate text-body-medium-lighter`,title:e.group,onClick:e=>{Sn(e)||(e.preventDefault(),ye(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:c,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:In(e.totalEstimatedCostUsd)})})]},e.groupKey??e.groupId??`${e.group}-${a}`)})})]})})}function bi(){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)(xi,{width:100,height:14}),(0,Y.jsx)(xi,{width:`60%`,height:12}),(0,Y.jsx)(xi,{width:50,height:14})]},t))})}function xi({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 Si({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 Ci({message:e,onRetry:t}){let{t:n}=K(`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)(yt,{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 wi(){let e=n(),t=un();return{reactivateSubscription:()=>t({mutateAsync:()=>e.mutateAsync({}),onSuccess:()=>{H.success(U(`settings:useReactivateSubscription.reactivatedToast`),{id:`subscription-reactivate`})},errorToastId:`subscription-reactivate-error`,errorFallback:()=>U(`settings:useReactivateSubscription.reactivateFailedToast`)}),isPending:e.isPending}}function Ti({open:e,onCancel:t,onConfirm:n,confirming:r,lostFeatures:i}){let{t:a}=K(`settings`);return(0,Y.jsx)(V.Root,{open:e,onOpenChange:e=>{!e&&!r&&t()},children:(0,Y.jsxs)(V.Content,{size:`md`,hideCloseButton:!0,children:[(0,Y.jsx)(V.Header,{icon:yt,children:(0,Y.jsx)(V.Title,{children:a(`downgradeReconfirmModal.title`)})}),(0,Y.jsxs)(V.Body,{children:[(0,Y.jsx)(F,{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)(F,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,Y.jsxs)(V.Footer,{children:[(0,Y.jsx)(h,{variant:`outlined`,onClick:t,disabled:r,children:a(`downgradeReconfirmModal.keepPro`)}),(0,Y.jsx)(h,{variant:`danger`,onClick:n,disabled:r,"data-testid":`confirm-downgrade-button`,children:a(`downgradeReconfirmModal.confirm`)})]})]})})}function Ei(e){return U(`settings:creditBundlePicker.optionLabel`,{label:e.label,price:Lt(e.price_cents)})}function Di({creditTiers:e,selectedCreditTier:t,onCreditTierChange:n,disabled:r=!1}){let{t:i}=K(`settings`),a=(0,J.useMemo)(()=>[{value:null,label:i(`creditBundlePicker.noBundleOption`,{price:Lt(0)})},...e.map(e=>({value:e.tier,label:Ei(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)(F,{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)(Ft,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,Y.jsx)(he,{"aria-label":i(`creditBundlePicker.ariaLabel`),placeholder:i(`creditBundlePicker.placeholder`),disabled:r,value:t,onChange:e=>n(e),onSelectNone:()=>n(null),options:a})]})}function Oi({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)(F,{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)(wt,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,Y.jsx)(F,{as:`span`,variant:`body-medium-default`,children:e})]},e))})]})}function ki({plan:e,isCurrent:t,onPro:n,planDisplayName:r,currentPlanFeatures:i,cancelAtPeriodEnd:a,isCanceled:o,cancelDate:s,formatGraceDate:c,proTierChangeMode:l,creditTiersEnabled:u,creditTiers:d,displayCreditTier:f,onCreditTierChange:p,selectedMachineTier:m,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v,machineTiersForPicker:y,storageTiersForPicker:b,currentMachinePrice:x,currentStoragePrice:S,currentCreditPriceUnknown:C,proCurrentTotalCents:w,proLiveTotalCents:T,proTotalDelta:D,onboardingLoading:O,tierChangePending:k,machineChanged:j,storageChanged:M,creditChanged:P,feeAdded:ee,tierChangeError:te,upgradePending:ne,billingActionPending:re,onUpgrade:I,onApplyTierChange:L,onDowngradeClick:ie,onKeepPlan:ae}){let{t:R}=K(`settings`),oe=e.id===`pro`,se=e.id===`base`,z=oe&&n&&a&&!o,ce=oe&&(!t||t&&l),le=oe&&t&&l,B=oe&&t;return(0,Y.jsx)(A.Root,{className:`flex flex-col bg-[var(--surface-base)]`,children:(0,Y.jsxs)(A.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:oe?(0,Y.jsx)(On,{className:`h-5 w-5 text-[var(--content-default)]`}):(0,Y.jsx)(kn,{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)(F,{as:`h3`,variant:`title-small`,"data-testid":`modal-plan-name`,children:B?r:e.name}),t&&(0,Y.jsx)(N,{tone:`positive`,children:R(`planCardContent.current`)})]}),(0,Y.jsx)(F,{as:`p`,variant:`body-small-default`,className:`-mt-2 text-[var(--content-tertiary)]`,children:R(se?`planCardContent.baseTagline`:`planCardContent.proTagline`)}),z&&s&&(0,Y.jsx)(F,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`modal-cancels-on`,children:R(`planCardContent.planEndsOn`,{date:c(s)})}),(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,Y.jsx)(`div`,{className:`flex flex-col gap-1`,children:se?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(F,{as:`p`,variant:`title-medium`,children:R(`planCardContent.free`)}),(0,Y.jsx)(F,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:R(`planCardContent.forever`)})]}):t&&!(ce&&T!=null)&&(w==null||C)?O?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(F,{as:`span`,variant:`body-medium-lighter`,children:R(`planCardContent.loadingPlan`)})]}):(0,Y.jsx)(F,{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)(F,{as:`p`,variant:`title-medium`,"data-testid":`modal-pro-price`,children:ce&&T!=null?(0,Y.jsxs)(Y.Fragment,{children:[Lt(T),D!=null&&D!==0&&(0,Y.jsxs)(`span`,{className:`ml-1 text-[var(--content-tertiary)]`,children:[`(`,Ut(D),`)`]})]}):w==null?e.id===`pro`?R(`planCardContent.fromPrice`,{price:Lt(e.base_price_cents+hn(e.machine_tiers)+hn(e.storage_tiers))}):null:R(`planCardContent.currentlyPrice`,{price:Lt(w)})}),ce&&D!=null&&D!==0&&(0,Y.jsx)(`span`,{title:R(`planCardContent.subscriptionChangeTitle`,{from:Lt(w),to:Lt(T)}),children:(0,Y.jsx)(Ft,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),e.id===`pro`&&(0,Y.jsx)(F,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-base-fee`,children:R(`planCardContent.baseFee`,{amount:an(e.base_price_cents)})})]})}),(0,Y.jsx)(Oi,{features:B&&i?i:e.included_features,variant:`checklist`}),oe&&!u&&(0,Y.jsx)(F,{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&&oe&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),u&&(0,Y.jsx)(Di,{creditTiers:d,selectedCreditTier:f,onCreditTierChange:p,disabled:ne}),(0,Y.jsx)(gn,{machineTiers:y,storageTiers:b,selectedMachineTier:m,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v}),(0,Y.jsx)(h,{variant:`primary`,className:`w-full`,onClick:I,disabled:ne||!m||!g,"data-testid":`modal-upgrade-to-pro-button`,children:R(`planCardContent.upgradeToPro`)})]}),le&&(O?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(F,{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)]`}),u&&(0,Y.jsx)(Di,{creditTiers:d,selectedCreditTier:f,onCreditTierChange:p,disabled:k}),(0,Y.jsx)(gn,{machineTiers:y,storageTiers:b,selectedMachineTier:m,selectedStorageTier:g,onMachineTierChange:_,onStorageTierChange:v,currentMachinePriceCents:x,currentStoragePriceCents:S}),te&&(0,Y.jsx)(E,{tone:`error`,children:te}),(0,Y.jsx)(h,{variant:`primary`,className:`w-full`,onClick:L,disabled:k||!j&&!M&&!P&&!ee,"data-testid":`modal-change-tier-button`,children:R(`planCardContent.updatePlan`)})]})),!t&&se&&n&&!a&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,Y.jsx)(h,{variant:`outlined`,className:`w-full`,onClick:ie,disabled:re,"data-testid":`modal-downgrade-to-base-button`,children:R(`planCardContent.downgradeToBase`)})]}),z&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,Y.jsx)(h,{variant:`outlined`,className:`w-full`,onClick:ae,disabled:re,"data-testid":`modal-keep-plan-button`,children:R(`planCardContent.keepPlan`)})]})]})]})})}function Ai(e){return vn({open:e.open,path:`${fe.settings.usageBilling}&adjust_plan`,onClose:e.onClose})?null:(0,Y.jsx)(ji,{...e})}function ji({open:e,onClose:t,onTierUpgraded:n}){let{t:r}=K(`settings`),i=G(),a=W(ze()),o=W(y()),s=st(re()),c=$t(fn(o.data)),{reactivateSubscription:l,isPending:u}=wi(),{cancelSubscription:d,isPending:f}=ln(),[p,m]=(0,J.useState)(`plans`),[_,v]=(0,J.useState)(!1),[b,x]=(0,J.useState)(null),[S,C]=(0,J.useState)(null),[w,T]=(0,J.useState)(void 0);(0,J.useEffect)(()=>R(()=>{Yt(i),t()}),[i,t]);let D=o.data?.plan_id,O=D===`pro`,{changeTiers:k,isPending:A,error:j,current:M}=nn({enabled:O}),N=W({...te(),enabled:O}),P=N.data?.max_machine_tier??null,ee=N.data?.selected_storage_tier??null,ne=N.data?.selected_storage_gib??null,I=o.data?.cancel_at_period_end===!0||!!o.data?.cancel_at,L=o.data?.status===`canceled`,ie=mn(o.data),ae=o.data?.status,oe=ae!=null&&sn.has(ae),se=O&&oe&&!I&&!L,z=a.data?.plans.find(e=>e.id===`pro`),ce=z?.credit_tiers??[],le=ce.length>0,B=o.data?.selected_credit_tier??null,ue=e=>ce.find(t=>t.tier===e)?.price_cents??0,fe=ue(B),pe=B!=null&&!ce.some(e=>e.tier===B),me=w===void 0?B:w,he=ue(me),ge=Gt(o.data?.package),_e=O&&N.isSuccess&&z?zt({machineTier:P,storageTier:ee,storageGib:ne,creditTier:B,hasPlatformFee:M.hasPlatformFee},z):null,ve=z?.machine_tiers??[],ye=se&&ne!=null?(z?.storage_tiers??[]).map(e=>e.storage_gib<ne?{...e,disabled:!0}:e):z?.storage_tiers??[],be=(0,J.useRef)(null);(0,J.useEffect)(()=>{if(!e){be.current=null,x(null),C(null),T(void 0);return}if(z){if(se){if(P==null||ee==null)return;be.current??={machineTier:P,storageTier:ee,creditTier:B},x(e=>Xt(ve,e??P)),C(e=>Xt(ye,e??ee)),T(e=>_n(ce,e,B));return}x(e=>Xt(z.machine_tiers,e)),C(e=>Xt(z.storage_tiers,e)),T(e=>_n(ce,e,null))}},[e,z,se,P,ee,B]);let Se=a.data?.plans.find(e=>e.id===`base`),Ce=new Set(Se?.included_features??[]),we=(z?.included_features??[]).filter(e=>!Ce.has(e)),Te=()=>{if(!s.isPending){if(!b||!S){H.error(r(`adjustPlanModal.pickTiersError`),{id:`pro-upgrade-error`});return}s.mutate({body:{target_plan_id:`pro`,confirm:!0,machine_tier:b,storage_tier:S,credit_tier:me,return_target:bn()}},{onSuccess:e=>{if(e.checkout_url){xe({kind:`custom`,machineTier:b,storageTier:S,creditTier:me}),de(i),g(e.checkout_url);return}if(e.status===`no_op`){H.info(r(`adjustPlanModal.alreadyOnPro`),{id:`pro-upgrade`}),t();return}H.error(e.message??r(`adjustPlanModal.upgradeFailed`),{id:`pro-upgrade-error`})},onError:e=>{H.error(tn(e,r(`adjustPlanModal.upgradeFailed`)),{id:`pro-upgrade-error`})}})}},Ee=async()=>{if(!(f||c.isPending)){if(!en(o.data)){m(`plans`),c.mutate({});return}await d()&&m(`plans`)}},De=b!=null&&b!==P,Oe=S!=null&&S!==ee,ke=le&&w!==void 0&&w!==B,Ae=se&&!M.hasPlatformFee,je=e=>ve.find(t=>t.tier===e)?.price_cents??null,Me=e=>ye.find(t=>t.tier===e)?.price_cents??null,Ne=je(b),Pe=Me(S),Fe=je(P),Ie=Me(ee),Le=De&&Ne!=null&&Fe!=null&&Ne<Fe,Re=()=>{if(!A){if(!b||!S){H.error(r(`adjustPlanModal.pickTiersError`),{id:`pro-tier-change-error`});return}k({machineTier:b,storageTier:S,creditTier:me},be.current??void 0).then(e=>{if(e){if(e.needsResize&&n){t(),n();return}H.success(e.creditChanged&&!De&&!Oe?r(`adjustPlanModal.creditBundleUpdated`):r(`adjustPlanModal.planUpdated`),{id:`pro-tier-change`})}})}},Be=()=>{if(!A){if(Le){v(!0);return}Re()}},Ve=()=>{v(!1),Re()},He=e=>Ne!=null&&Pe!=null?e.base_price_cents+Ne+Pe+he:null,Ue=e=>Fe!=null&&Ie!=null?(Ae?0:e.base_price_cents)+Fe+Ie+fe:null,We=a.isLoading||o.isLoading,Ge=a.isError||o.isError||!a.data||!o.data;return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(V.Root,{open:e,onOpenChange:e=>{e||(m(`plans`),t())},children:(0,Y.jsx)(V.Content,{size:p===`plans`?`lg`:`md`,children:p===`downgrade-confirm`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(V.Header,{icon:yt,children:(0,Y.jsx)(V.Title,{children:r(`adjustPlanModal.downgradeTitle`)})}),(0,Y.jsxs)(V.Body,{children:[(0,Y.jsx)(F,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:r(`adjustPlanModal.downgradeIntro`)}),(0,Y.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:we.map(e=>(0,Y.jsx)(`li`,{children:(0,Y.jsx)(F,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,Y.jsxs)(V.Footer,{children:[(0,Y.jsx)(h,{variant:`ghost`,onClick:()=>m(`plans`),disabled:f||c.isPending,leftIcon:(0,Y.jsx)(Et,{className:`h-4 w-4`}),children:r(`adjustPlanModal.back`)}),(0,Y.jsx)(h,{variant:`danger`,onClick:()=>void Ee(),disabled:f||c.isPending,"data-testid":`confirm-downgrade-button`,children:r(`adjustPlanModal.confirmDowngrade`)})]})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(V.Header,{children:(0,Y.jsx)(V.Title,{className:`sr-only`,children:r(`adjustPlanModal.upgradePlanTitle`)})}),(0,Y.jsx)(V.Body,{children:We?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(F,{as:`span`,variant:`body-medium-lighter`,children:r(`adjustPlanModal.loadingPlans`)})]}):Ge?(0,Y.jsx)(E,{tone:`error`,children:r(`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)(F,{as:`p`,variant:`title-medium`,children:r(`adjustPlanModal.heroTitle`)}),(0,Y.jsx)(F,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-secondary)]`,children:r(`adjustPlanModal.heroSubtitle`)})]}),(0,Y.jsx)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:a.data.plans.map(e=>{let t=e.id===D,n=e.id===`pro`&&z?He(z):null,r=e.id===`pro`&&z?Ue(z):null;return(0,Y.jsx)(ki,{plan:e,isCurrent:t,onPro:O,planDisplayName:ge,currentPlanFeatures:_e,cancelAtPeriodEnd:I,isCanceled:L,cancelDate:ie,formatGraceDate:on,proTierChangeMode:se,creditTiersEnabled:le,creditTiers:ce,displayCreditTier:me,onCreditTierChange:T,selectedMachineTier:b,selectedStorageTier:S,onMachineTierChange:x,onStorageTierChange:C,machineTiersForPicker:ve,storageTiersForPicker:ye,currentMachinePrice:Fe,currentStoragePrice:Ie,currentCreditPriceUnknown:pe,proCurrentTotalCents:r,proLiveTotalCents:n,proTotalDelta:n!=null&&r!=null?n-r:null,onboardingLoading:N.isLoading,tierChangePending:A,machineChanged:De,storageChanged:Oe,creditChanged:ke,feeAdded:Ae,tierChangeError:j,upgradePending:s.isPending,billingActionPending:c.isPending||u,onUpgrade:Te,onApplyTierChange:Be,onDowngradeClick:()=>m(`downgrade-confirm`),onKeepPlan:()=>{if(!en(o.data)){c.mutate({});return}l()}},e.id)})})]})}),(0,Y.jsxs)(V.Footer,{className:`relative items-center`,children:[(0,Y.jsx)(F,{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:r(`adjustPlanModal.footerNote`)})}),(0,Y.jsx)(`div`,{className:`ml-auto`,children:(0,Y.jsx)(h,{variant:`outlined`,onClick:t,"data-testid":`modal-cancel-button`,children:r(`adjustPlanModal.cancel`)})})]})]})})}),(0,Y.jsx)(Ti,{open:_,onCancel:()=>v(!1),onConfirm:Ve,confirming:A,lostFeatures:[r(`adjustPlanModal.machineDowngradeFeature`)]})]})}function Mi(e){let t=e.trim();if(t===``)return U(`settings:dailyCreditLimitCard.errorEmpty`);let n=parseFloat(t);if(!Number.isFinite(n)||n<1)return U(`settings:dailyCreditLimitCard.errorMin`);if(!/^\d+(\.\d{1,2})?$/.test(t))return U(`settings:dailyCreditLimitCard.errorDecimals`)}function Ni(e){let{t}=K(`settings`);return(0,Y.jsx)(ae,{type:`number`,step:`0.01`,min:`1`,label:t(`dailyCreditLimitCard.inputLabel`),helperText:t(`dailyCreditLimitCard.helperText`,{time:m()}),placeholder:`0.00`,fullWidth:!0,...e})}function Pi(){let e=G();return st({...l(),onSuccess:t=>{L(e,void 0,t),e.invalidateQueries({queryKey:rt()}),e.invalidateQueries({queryKey:s()})}})}function Fi(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 Ii({onSaved:e,onCancel:t}){let{t:n}=K(`settings`),r=Pi(),[i,a]=(0,J.useState)(`25`),[o,s]=(0,J.useState)(!1),c=r.isPending,l=Mi(i),u=o?l:void 0,d=Fi(r.error).daily_credit_limit_usd??(r.isError?n(`dailyCreditLimitCard.saveError`):void 0),f=()=>{c||(s(!0),!l&&r.mutate({body:{daily_credit_limit_usd:parseFloat(i.trim()).toFixed(2)}},{onSuccess:e}))},p=()=>{c||t()};return(0,Y.jsx)(V.Root,{open:!0,onOpenChange:e=>{e||p()},children:(0,Y.jsxs)(V.Content,{size:`sm`,hideCloseButton:!0,onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),p()},"data-testid":`auto-top-up-daily-limit-modal`,children:[(0,Y.jsxs)(V.Header,{children:[(0,Y.jsx)(V.Title,{children:n(`autoTopUpDailyLimitModal.title`)}),(0,Y.jsx)(V.Description,{children:n(`autoTopUpDailyLimitModal.message`)})]}),(0,Y.jsxs)(V.Body,{children:[(0,Y.jsx)(Ni,{value:i,onChange:e=>{a(e.target.value)},onBlur:()=>s(!0),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),f())},errorText:u,disabled:c,"data-testid":`auto-top-up-daily-limit-input`}),d!=null&&(0,Y.jsx)(E,{tone:`error`,className:`mt-3`,"data-testid":`auto-top-up-daily-limit-error`,children:d})]}),(0,Y.jsxs)(V.Footer,{children:[(0,Y.jsx)(h,{variant:`outlined`,onClick:p,disabled:c,"data-testid":`auto-top-up-daily-limit-cancel-button`,children:n(`autoTopUpDailyLimitModal.cancel`)}),(0,Y.jsx)(h,{variant:`primary`,onClick:f,disabled:c,leftIcon:c?(0,Y.jsx)(q,{className:`animate-spin`}):void 0,"data-testid":`auto-top-up-daily-limit-save-button`,children:n(c?`autoTopUpDailyLimitModal.saving`:`autoTopUpDailyLimitModal.save`)})]})]})})}function Li({open:e,confirming:t,onCancel:n,onConfirm:r}){let{t:i}=K(`settings`);return(0,Y.jsx)(Ue,{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 Ri={threshold_usd:`100`,amount_usd:`10`,monthly_cap_usd:``};function zi(e){if(e===``||e===`-`)return e;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function Bi(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 Vi(e,t,n,r){if(n[e])return n[e];if(r)return t[e]}function Hi({initialValues:e=Ri,submitting:t,saveDisabled:n=!1,serverErrors:r,onSave:i,onCancel:a}){let{t:o}=K(`settings`),[s,c]=(0,J.useState)(e),[l,u]=(0,J.useState)({threshold_usd:!1,amount_usd:!1,monthly_cap_usd:!1}),d=Bi(s),f=e=>t=>{c(n=>({...n,[e]:t.target.value}))},p=e=>()=>{u(t=>({...t,[e]:!0})),c(t=>({...t,[e]:zi(t[e])}))},m=e=>Vi(e,d,r,l[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)(ae,{type:`number`,step:`1`,label:o(`autoTopUpForm.thresholdLabel`),value:s.threshold_usd,onChange:f(`threshold_usd`),onBlur:p(`threshold_usd`),errorText:m(`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)(ae,{type:`number`,step:`1`,label:o(`autoTopUpForm.amountLabel`),value:s.amount_usd,onChange:f(`amount_usd`),onBlur:p(`amount_usd`),errorText:m(`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)(ae,{type:`number`,step:`1`,label:o(`autoTopUpForm.capLabel`),value:s.monthly_cap_usd,onChange:f(`monthly_cap_usd`),onBlur:p(`monthly_cap_usd`),errorText:m(`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)(h,{variant:`outlined`,onClick:a,disabled:t,children:o(`autoTopUpForm.cancel`)}),(0,Y.jsx)(h,{variant:`primary`,onClick:()=>{u({threshold_usd:!0,amount_usd:!0,monthly_cap_usd:!0});let e={threshold_usd:zi(s.threshold_usd),amount_usd:zi(s.amount_usd),monthly_cap_usd:zi(s.monthly_cap_usd)};c(e);let t=Bi(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 Ui=t(((e,t)=>{t.exports=`SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED`})),Wi=t(((e,t)=>{var n=Ui();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=Wi()()}))(),1);function Gi(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 Ki(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Gi(Object(n),!0).forEach(function(t){Ji(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Gi(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function qi(e){"@babel/helpers - typeof";return qi=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},qi(e)}function Ji(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Yi(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 Xi(e,t){if(e==null)return{};var n=Yi(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 Zi(e,t){return Qi(e)||$i(e,t)||ea(e,t)||na()}function Qi(e){if(Array.isArray(e))return e}function $i(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 ea(e,t){if(e){if(typeof e==`string`)return ta(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 ta(e,t)}}function ta(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 na(){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])},ra=function(e){var t=J.useRef(e);return J.useEffect(function(){t.current=e},[e]),t.current},ia=function(e){return e!==null&&qi(e)===`object`},aa=function(e){return ia(e)&&typeof e.then==`function`},oa=function(e){return ia(e)&&typeof e.elements==`function`&&typeof e.createToken==`function`&&typeof e.createPaymentMethod==`function`&&typeof e.confirmCardPayment==`function`},sa=`[object Object]`,ca=function e(t,n){if(!ia(t)||!ia(n))return t===n;var r=Array.isArray(t);if(r!==Array.isArray(n))return!1;var i=Object.prototype.toString.call(t)===sa;if(i!==(Object.prototype.toString.call(n)===sa))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])})},la=function(e,t,n){return ia(e)?Object.keys(e).reduce(function(r,i){var a=!ia(t)||!ca(e[i],t[i]);return n.includes(i)?(a&&console.warn(`Unsupported prop change: options.${i} is not a mutable property.`),r):a?Ki(Ki({},r||{}),{},Ji({},i,e[i])):r},null):null},ua="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.",da=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ua;if(e===null||oa(e))return e;throw Error(t)},fa=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ua;if(aa(e))return{tag:`async`,stripePromise:Promise.resolve(e).then(function(e){return da(e,t)})};var n=da(e,t);return n===null?{tag:`empty`}:{tag:`sync`,stripe:n}},pa=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`}))},ma=J.createContext(null);ma.displayName=`ElementsContext`;var ha=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},ga=function(e){var t=e.stripe,n=e.options,r=e.children,i=J.useMemo(function(){return fa(t)},[t]),a=Zi(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=ra(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=ra(n);return J.useEffect(function(){if(o.elements){var e=la(n,l,[`clientSecret`,`fonts`]);e&&o.elements.update(e)}},[n,l,o.elements]),J.useEffect(function(){pa(o.stripe)},[o.stripe]),J.createElement(ma.Provider,{value:o},r)};ga.propTypes={stripe:X.default.any,options:X.default.object};var _a=function(e){return ha(J.useContext(ma),e)},va=function(e){var t=e.children;return t(_a(`mounts <ElementsConsumer>`))};va.propTypes={children:X.default.func.isRequired};var ya=J.createContext(null);ya.displayName=`CheckoutContext`;var ba=function(e){var t=J.useContext(ya),n=J.useContext(ma);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 ha(n,e)},xa=[`mode`],Sa=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},Q=function(e,t,n){var r=`${Sa(e)}Element`,i=t?function(e){ba(`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=ba(`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=Zi(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=Xi(o,xa);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=ra(o);return J.useEffect(function(){if(A.current){var e=la(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`,Ca=J.createContext(null);Ca.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 wa(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 Ta=/^#([\da-f]{3}|[\da-f]{6})$/i,Ea=/^rgba?\(\s*([\d.]+)[\s,]+([\d.]+)[\s,]+([\d.]+)/i;function Da(e){let t=Ta.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=Ea.exec(e);return n?n.slice(1).map(Number):null}function Oa(e,t){let n=Da(e);if(!n)return e;let[r,i,a]=n;return`rgba(${r}, ${i}, ${a}, ${t})`}function ka(e){return e!==void 0&&e!==``}function Aa(e){return Object.fromEntries(Object.entries(e).filter(e=>ka(e[1])))}function ja(e){let t={};for(let[n,r]of Object.entries(e)){let e=Aa(r);Object.keys(e).length>0&&(t[n]=e)}return t}function Ma(e){return ka(e)?`1px solid ${e}`:void 0}function Na(e,t){let n=ka(e.accent)?`0 0 0 3px ${Oa(e.accent,.14)}`:void 0;return{theme:t,labels:`floating`,variables:Aa({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:ja({".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:Ma(e.accent),boxShadow:n},".Input--invalid":{border:Ma(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 Pa(e){return Na(wa(),e===`light`?`stripe`:`night`)}var Fa=`dahlia`,Ia=`https://js.stripe.com`,La=`${Ia}/${Fa}/stripe.js`,Ra=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,za=/^https:\/\/js\.stripe\.com\/(v3|[a-z]+)\/stripe\.js(\?.*)?$/,Ba=`loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used`,Va=function(e){return Ra.test(e)||za.test(e)},Ha=function(){for(var e=document.querySelectorAll(`script[src^="${Ia}"]`),t=0;t<e.length;t++){var n=e[t];if(Va(n.src))return n}return null},Ua=function(e){var t=e&&!e.advancedFraudSignals?`?advancedFraudSignals=false`:``,n=document.createElement(`script`);n.src=`${La}${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},Wa=null,Ga=null,Ka=null,qa=function(e){return function(t){e(Error(`Failed to load Stripe.js`,{cause:t}))}},Ja=function(e,t){return function(){window.Stripe?e(window.Stripe):t(Error(`Stripe.js not available`))}},Ya=function(e){return Wa===null?(Wa=new Promise(function(t,n){if(typeof window>`u`||typeof document>`u`){t(null);return}if(window.Stripe&&e&&console.warn(Ba),window.Stripe){t(window.Stripe);return}try{var r=Ha();if(r&&e)console.warn(Ba);else if(!r)r=Ua(e);else if(r&&Ka!==null&&Ga!==null){var i;r.removeEventListener(`load`,Ka),r.removeEventListener(`error`,Ga),(i=r.parentNode)==null||i.removeChild(r),r=Ua(e)}Ka=Ja(t,n),Ga=qa(n),r.addEventListener(`load`,Ka),r.addEventListener(`error`,Ga)}catch(e){n(e);return}}),Wa.catch(function(e){return Wa=null,Promise.reject(e)})):Wa},Xa,Za=!1,Qa=function(){return Xa||(Xa=Ya(null).catch(function(e){return Xa=null,Promise.reject(e)}),Xa)};Promise.resolve().then(function(){return Qa()}).catch(function(e){Za||console.warn(e)});var $a=null;function eo(){return $a}function to(e){if(!e)return null;let t=e.indexOf(`_secret`);return t<=0?null:e.slice(0,t)}var no=`flex flex-col gap-[10px]`,ro={visa:`Visa`,mastercard:`Mastercard`,amex:`Amex`,discover:`Discover`,diners:`Diners Club`,jcb:`JCB`,unionpay:`UnionPay`};function io(e){let t=e?.toLowerCase();return t&&Object.hasOwn(ro,t)?ro[t]:null}function ao(e,t){return io(t)??e(`paymentMethodRow.savedCard`)}function oo(e,t){return e==null||t==null?null:{month:String(e).padStart(2,`0`),year:String(t).slice(-2)}}function so(e,t,n){let r=oo(t,n);return r===null?null:e(`autoTopUpPaymentMethodModal.cardOnFileExpiry`,r)}function co(e){return e===`submitting`||e===`requires_action`}function lo({open:e,mode:t,state:n,cardOnFile:r=null,savedCard:i=null,autoReloadActive:a=!1,headerless:o=!1,errorMessage:s=null,showTerms:c=!1,submitDisabled:l=!1,onClose:u,onSubmit:d,children:f}){let{t:p}=K(`settings`),m=co(n),g=t===`replace`,_=n===`saved`,v=_&&o,y=v?{"aria-describedby":void 0}:{},b=g?uo(p,_?null:r):p(`autoTopUpPaymentMethodModal.addSubtitle`);return(0,Y.jsx)(V.Root,{open:e,onOpenChange:e=>{!e&&!m&&u()},children:(0,Y.jsxs)(V.Content,{size:`sm`,className:`max-w-[420px] overflow-hidden rounded-xl p-0`,hideCloseButton:!0,dismissOnOverlayClick:!m,onEscapeKeyDown:m?e=>e.preventDefault():void 0,onInteractOutside:m?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)(V.Title,{className:`sr-only`,children:fo(p,i)}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(V.Title,{className:`text-[18px] font-semibold tracking-[-0.02em] text-[var(--content-emphasised)]`,children:p(g?`autoTopUpPaymentMethodModal.replaceTitle`:`autoTopUpPaymentMethodModal.addTitle`)}),(0,Y.jsx)(V.Description,{className:`mt-[5px] text-[13px] leading-normal text-[var(--content-tertiary)]`,children:b})]})}),(0,Y.jsx)(V.Close,{asChild:!0,children:(0,Y.jsx)(`button`,{type:`button`,"data-testid":`payment-method-modal-close`,"aria-label":p(`autoTopUpPaymentMethodModal.close`),disabled:m,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)(jt,{size:17})})})]}),(0,Y.jsxs)(`form`,{id:`payment-method-modal-form`,className:`flex min-h-0 flex-1 flex-col`,onSubmit:e=>{e.preventDefault(),d?.()},children:[(0,Y.jsxs)(V.Body,{className:I(`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":m,className:I(no,m&&`pointer-events-none opacity-45`),children:f}),s?(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:s})]}):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)(q,{"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:p(`autoTopUpPaymentMethodModal.confirmingWithBank`)})]}):_?(0,Y.jsx)(po,{card:i,autoReloadActive:a}):c?(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:p(g?`autoTopUpPaymentMethodModal.termsReplace`:`autoTopUpPaymentMethodModal.termsAdd`)}):null]}),_?null:(0,Y.jsxs)(V.Footer,{className:`flex flex-col gap-1 px-6 pt-[18px] pb-[22px]`,children:[(0,Y.jsx)(h,{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:l||m,leftIcon:m?(0,Y.jsx)(q,{className:`animate-spin`}):void 0,children:p(m?`autoTopUpPaymentMethodModal.primarySubmitting`:g?`autoTopUpPaymentMethodModal.primaryReplace`:`autoTopUpPaymentMethodModal.primaryAdd`)}),(0,Y.jsx)(h,{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:u,disabled:m,children:p(`autoTopUpPaymentMethodModal.cancel`)})]})]})]})})}function uo(e,t){let n=io(t?.brand),r=t?.last4;if(!n&&!r)return e(`autoTopUpPaymentMethodModal.replaceSubtitle`);let i=oo(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 fo(e,t){let n=io(t?.brand),r=t?.last4;return r?n?e(`autoTopUpPaymentMethodModal.savedTitle`,{brand:n,last4:r}):e(`autoTopUpPaymentMethodModal.savedTitleNoBrand`,{last4:r}):e(`autoTopUpPaymentMethodModal.savedTitleGeneric`)}function po({card:e,autoReloadActive:t}){let{t:n}=K(`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:fo(n,e)}),t?(0,Y.jsx)(`p`,{className:`mt-px text-[12px] text-[var(--system-positive-on-weak)]`,children:n(`autoTopUpPaymentMethodModal.savedSubtitle`)}):null]})]})}var mo=1500;function ho(e){return vn({open:e.open,path:fe.settings.usageBilling,onClose:e.onClose})?null:(0,Y.jsx)(go,{...e})}function go({open:e,onClose:t,mode:n=`add`,cardOnFile:r=null,billingAddress:i=null,initialOutcome:a=null,onSavedOptimistic:o}){let{t:s}=K(`settings`),c=st(ke()),{mutate:l,reset:u}=c,d=a?.kind===`saved`,[f,p]=(0,J.useState)(d?`saved`:`idle`),[m,h]=(0,J.useState)(a?.kind===`error`?a.message:null),[g,_]=(0,J.useState)(a?.kind===`saved`?a.card:null),[v,y]=(0,J.useState)(!1),b=(0,J.useRef)(null),x=(0,J.useRef)(null),S=(0,J.useRef)(!0),C=(0,J.useRef)(null),w=(0,J.useRef)(a);(0,J.useEffect)(()=>{w.current=a},[a]);let T=(0,J.useRef)(t);(0,J.useEffect)(()=>{T.current=t},[t]),(0,J.useEffect)(()=>(S.current=!0,()=>{S.current=!1,_o(b),_o(x)}),[]);let E=(0,J.useCallback)(()=>{_o(x),x.current=setTimeout(()=>{T.current()},900)},[]);(0,J.useEffect)(()=>{_o(b),_o(x);let t=e?w.current:null,n=t?.kind===`saved`?t:null;p(n?`saved`:`idle`),h(t?.kind===`error`?t.message:null),_(n?.card??null),y(!1),n&&E()},[e,E]),(0,J.useEffect)(()=>{if(!e){u();return}},[e,d,l,u]);let D=c.data?.client_secret??null,[O,k]=(0,J.useState)(!1),[A,j]=(0,J.useState)(null);(0,J.useEffect)(()=>{k(!1),j(null)},[e,D]),(0,J.useCallback)(e=>{j(e),y(!1)},[]);let M=ne();return(0,J.useMemo)(()=>Pa(M),[M]),(0,J.useCallback)(e=>{C.current=e},[]),(0,J.useCallback)(async e=>{p(`submitting`),h(null),b.current=setTimeout(()=>{p(e=>e===`submitting`?`requires_action`:e)},mo);try{let t=await e();if(_o(b),!S.current)return;if(t.error){p(`error`),h(t.error.code===`card_declined`?s(`autoTopUpPaymentMethodModal.declined`):t.error.message??s(`autoTopUpPaymentMethodModal.confirmFailed`));return}let n=await o({setupIntentId:to(D)});if(!S.current)return;_(n??null),p(`saved`),E()}catch{if(!S.current)return;p(`error`),h(s(`autoTopUpPaymentMethodModal.confirmFailed`))}finally{_o(b)}},[D,o,E,s]),(0,Y.jsx)(lo,{open:e,mode:n,state:f,cardOnFile:n===`replace`?r:null,savedCard:g,autoReloadActive:g?.autoReloadEnabled??!1,headerless:d,errorMessage:m,showTerms:!1,submitDisabled:!v,onClose:t,onSubmit:()=>{C.current?.()},children:(0,Y.jsx)(vo,{})})}function _o(e){e.current!==null&&(clearTimeout(e.current),e.current=null)}function vo(){let{t:e}=K(`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)(E,{tone:`error`,children:e(`autoTopUpPaymentMethodModal.unavailable`)})}function yo(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 bo(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 xo=1500,So=2e4;function Co(e){let[t]=yo(e);return t==null?null:{brand:t.brand,last4:t.last4,autoReloadEnabled:e?.enabled===!0}}function wo(){let e=G();return async()=>{let t=He(),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&&Ne(e,void 0,{...n,has_payment_method:!0})};r();let i=e.getQueryCache().subscribe(e=>{e.type===`updated`&&e.query.queryHash===lt(t)&&r()});try{let t=Date.now();for(;Date.now()-t<So;){try{let{data:t}=await be();if(t!=null&&t.has_payment_method&&t.stripe_payment_method_updated_at!==n)return Ne(e,void 0,t),Co(t)}catch{}await new Promise(e=>setTimeout(e,xo))}}finally{i()}return null}}function To(){let e=G(),t=wo(),{mutateAsync:n}=st(De());return async({setupIntentId:r})=>{if(r!=null)try{let t=await n({body:{setup_intent_id:r}});return await e.cancelQueries({queryKey:He()}),Ne(e,void 0,t),Co(t)}catch{}return t()}}var Eo=qe(ct()((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 Do(e){if(!e)return``;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}var Oo={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 ko(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 Ao({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 jo(){let{t:e}=K(`settings`),t=G(),n=x(),r=W(ge()),i=st(pe()),a=st(Ge()),o=To(),c=Eo.use.pending(),l=B(),[u,d]=dt(),f=(0,J.useRef)(null),[p,m]=(0,J.useState)(`view`),[g,_]=(0,J.useState)(!1),[v,y]=(0,J.useState)(!1),[b,S]=(0,J.useState)(!1),[C,w]=(0,J.useState)(!1),[T,D]=(0,J.useState)(null),[O,k]=(0,J.useState)(null),A=(0,J.useRef)(!1),j=n.data?.has_payment_method===!0;(0,J.useEffect)(()=>{A.current&&!j&&(S(!1),m(`view`),_(!1)),A.current=j},[j]);let M=()=>{if(l){yn(fe.settings.usageBillingConfigureTopUps);return}i.reset(),a.reset(),m(`form`)},N=e=>{if(l){yn(fe.settings.usageBillingConfigureTopUps);return}if(_(!0),!e.has_payment_method||e.disabled_due_to_repeated_failures===!0){S(!0),w(!1);return}S(!1),M()},ee=n.data?.has_payment_method===!0,te=n.data?.enabled===!0,ne=n.data?.disabled_due_to_repeated_failures===!0;(0,J.useEffect)(()=>{b&&ee&&!ne&&(S(!1),g&&!te&&M())},[b,g,ee,te,ne]);let re=u.get(`configure_top_up`)===`1`;if((0,J.useEffect)(()=>{if(!re||n.data==null)return;let e=new URLSearchParams(u);e.delete(`configure_top_up`),d(e,{replace:!0});let t=n.data;t.enabled===!0?M():N(t);let r=typeof window<`u`&&window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches===!0;f.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)(E,{tone:`error`,children:e(`autoTopUpCard.loadError`)})});let I=n.data,L=I.enabled===!0,ie=I.disabled_due_to_repeated_failures===!0&&!L,ae=()=>{m(`view`),_(!1)},R=()=>{D(bo(yo(I)))},oe=()=>{a.reset(),y(!1)},se=e=>{i.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=>{Ne(t,void 0,t=>({...e,...ko(t)})),t.invalidateQueries({queryKey:He()}),L||(t.invalidateQueries({queryKey:rt()}),t.invalidateQueries({queryKey:s()})),ae()}})},z=r.data==null||r.isError||r.isFetching,ce=r.isError,le=e=>{let t=z?null:r.data;if(t!=null){if(t.daily_credit_limit_usd==null){k(e);return}se(e)}},ue=()=>{let e=O;k(null),e!=null&&se(e)},de=()=>{a.mutate({},{onSuccess:()=>{Ne(t,void 0,e=>({...Oo,...ko(e),has_payment_method:e?.has_payment_method??!1,stripe_payment_method_updated_at:e?.stripe_payment_method_updated_at??null})),y(!1),m(`view`),_(!1)}})},V=()=>{if(k(null),L){de();return}ae()},me=e=>{if(e&&!L){N(I);return}if(!e&&!L&&g){S(!1),ae();return}!e&&L&&y(!0)},he=async e=>{let t=await o(e);return S(!1),g&&M(),t},_e=p===`form`,ve=Fi(i.error),ye=i.isError&&Object.keys(ve).length===0,be=L||g;return(0,Y.jsxs)(`div`,{ref:f,"data-testid":`auto-top-up-card`,children:[(0,Y.jsx)(`div`,{className:`flex items-center justify-between gap-4`,children:(0,Y.jsx)(tt,{checked:be,onChange:me,label:e(`autoTopUpCard.toggleLabel`),helperText:be?e(`autoTopUpCard.toggleHelper`):void 0})}),L&&!_e&&(0,Y.jsxs)(`div`,{className:`mt-3 flex w-full items-center gap-2`,children:[(0,Y.jsxs)(Ao,{testId:`auto-top-up-summary`,children:[(0,Y.jsx)(At,{className:`h-3.5 w-3.5 shrink-0 text-[var(--content-default)]`,"aria-hidden":`true`}),(0,Y.jsx)(F,{variant:`body-medium-default`,className:`truncate text-[var(--content-default)]`,children:e(`autoTopUpCard.summary`,{amount:P(I.amount_usd),threshold:P(I.threshold_usd)})})]}),I.monthly_cap_usd!=null&&(0,Y.jsx)(Ao,{testId:`auto-top-up-cap-progress`,children:(0,Y.jsxs)(F,{variant:`body-medium-default`,className:`truncate text-[var(--content-default)]`,children:[(0,Y.jsx)(`span`,{children:P(I.current_month_credits_purchased_usd)}),(0,Y.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:e(`autoTopUpCard.capProgress`,{cap:P(I.monthly_cap_usd)})})]})}),(0,Y.jsx)(h,{variant:`outlined`,onClick:M,"data-testid":`auto-top-up-edit-button`,className:`shrink-0`,children:e(`autoTopUpCard.adjust`)})]}),ie&&(0,Y.jsx)(E,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-declined-cutoff`,actions:(0,Y.jsx)(h,{variant:`outlined`,onClick:R,disabled:c,"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:b&&!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:[!C&&(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)(Ft,{className:`h-4 w-4 shrink-0 text-[var(--system-mid-strong)]`,"aria-hidden":`true`}),(0,Y.jsx)(F,{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:()=>w(!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)(jt,{className:`h-2.5 w-2.5`,strokeWidth:2,"aria-hidden":`true`})})]}),(0,Y.jsx)(h,{variant:`primary`,onClick:R,disabled:c,"data-testid":`auto-top-up-add-pm-button`,className:`self-start`,children:e(`autoTopUpCard.addCreditCard`)})]})})}),ye&&(0,Y.jsx)(E,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-update-error`,children:e(`autoTopUpCard.updateError`)}),a.isError&&(0,Y.jsx)(E,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-disable-error`,children:e(`autoTopUpCard.disableError`)}),_e&&ce&&(0,Y.jsx)(E,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-daily-limit-lookup-error`,actions:(0,Y.jsx)(h,{variant:`outlined`,size:`compact`,onClick:()=>void r.refetch(),disabled:r.isFetching,"data-testid":`auto-top-up-daily-limit-retry-button`,children:e(`autoTopUpCard.retry`)}),children:e(`autoTopUpCard.dailyLimitLookupError`)}),_e&&(0,Y.jsx)(Hi,{initialValues:L?{threshold_usd:Do(I.threshold_usd),amount_usd:Do(I.amount_usd),monthly_cap_usd:Do(I.monthly_cap_usd)}:void 0,submitting:i.isPending||a.isPending,saveDisabled:z,serverErrors:ve,onCancel:ae,onSave:le}),O!=null&&(0,Y.jsx)(Ii,{onSaved:ue,onCancel:V}),(0,Y.jsx)(Li,{open:v,confirming:a.isPending,onCancel:oe,onConfirm:de}),(0,Y.jsx)(ho,{open:T!=null,onClose:()=>D(null),mode:T?.mode??`add`,cardOnFile:T?.cardOnFile??null,billingAddress:I.billing_address??null,onSavedOptimistic:he})]})}function Mo({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)(F,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-emphasised)]`,children:e}),t!=null&&(0,Y.jsx)(F,{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 No(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 Po=`daily-credit-limit`;function Fo(){let{t:e}=K(`settings`),t=W(ge()),n=W(ot()),r=x(),i=Pi(),a=v();No(Po,!t.isLoading&&!n.isLoading);let[o,s]=(0,J.useState)(null),[c,l]=(0,J.useState)(!1),[u,d]=(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)(E,{tone:`error`,children:e(`dailyCreditLimitCard.loadError`)})});let f=t.data,p=f.daily_credit_limit_usd!=null,g=p||u,_=o??f.daily_credit_limit_usd??``,y=Mi(_),b=n.data,S=b?.daily_spend_usd??f.current_day_spent_usd,C=b?.daily_limit_reached===!0,w=f.daily_limit_snoozed===!0||b?.daily_limit_snoozed===!0,T=m(),O=r.data?.enabled===!0&&!r.isError,k=e=>{s(e.target.value)},A=e=>{i.mutate({body:{daily_credit_limit_usd:e}},{onSuccess:()=>{s(null),l(!1),e===null&&d(!1)}})},j=e=>{if(e){d(!0);return}p&&O||(d(!1),s(null),l(!1),p&&A(null))},M=()=>{l(!0),!y&&A(parseFloat(_.trim()).toFixed(2))},N=Fi(i.error).daily_credit_limit_usd??(i.isError?e(`dailyCreditLimitCard.saveError`):void 0),P=c?y: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)(tt,{checked:g,onChange:j,disabled:i.isPending||p&&O,label:e(`dailyCreditLimitCard.toggleLabel`),helperText:g?e(`dailyCreditLimitCard.toggleSubtitle`):void 0}),O&&(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)(Ni,{value:_,onChange:k,onBlur:()=>l(!0),errorText:P,"data-testid":`daily-credit-limit-input`})}),(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[20px]`,children:(0,Y.jsx)(h,{variant:`primary`,onClick:M,disabled:i.isPending,"data-testid":`daily-credit-limit-save-button`,children:e(`dailyCreditLimitCard.save`)})})]}),p&&f.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:D(S),limit:D(f.daily_credit_limit_usd)})}),w&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(E,{tone:`info`,"data-testid":`daily-credit-limit-skipped`,actions:(0,Y.jsx)(h,{variant:`outlined`,size:`compact`,onClick:()=>a.mutate({}),disabled:a.isPending,"data-testid":`daily-credit-limit-resume-button`,children:e(`dailyCreditLimitCard.resumeNow`)}),children:e(`dailyCreditLimitCard.skippedNotice`,{time:T})}),a.isError&&(0,Y.jsx)(E,{tone:`error`,"data-testid":`daily-credit-limit-resume-error`,children:e(`dailyCreditLimitCard.resumeError`)})]}),C&&(0,Y.jsx)(E,{tone:`warning`,"data-testid":`daily-credit-limit-reached`,children:e(`dailyCreditLimitCard.reachedNotice`,{time:T})})]})]}),N!=null&&(0,Y.jsx)(E,{tone:`error`,className:`mt-4`,"data-testid":`daily-credit-limit-update-error`,children:N})]})}function Io(e){if(e.trim()===``)return;let t=parseFloat(e);if(!Number.isFinite(t)||t<1||t>1e3)return U(`settings:lowBalanceAlertCard.errorRange`);if(!/^\d+(\.\d{1,2})?$/.test(e.trim()))return U(`settings:lowBalanceAlertCard.errorDecimals`)}function Lo(){let{t:e}=K(`settings`),t=G(),n=W(ie()),r=st(M()),[i,a]=(0,J.useState)(null),[o,s]=(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)(E,{tone:`error`,children:e(`lowBalanceAlertCard.loadError`)})});let c=n.data,l=i??c.threshold_usd??``,u=Io(l),f=e=>{a(e.target.value)},m=e=>{r.mutate({body:{threshold_usd:e}},{onSuccess:e=>{d(t,void 0,e),t.invalidateQueries({queryKey:p()}),a(null),s(!1)}})},g=()=>{if(s(!0),u)return;let e=l.trim();m(e===``?null:parseFloat(e).toFixed(2))},_=()=>{a(``),s(!1),m(null)},v=r.isError,y=o?u: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)(ae,{type:`number`,step:`0.01`,label:e(`lowBalanceAlertCard.label`),helperText:e(`lowBalanceAlertCard.helperText`,{amount:D(c.default_threshold_usd)}),placeholder:c.effective_threshold_usd,value:l,onChange:f,onBlur:()=>s(!0),errorText:y,"data-testid":`low-balance-alert-input`,fullWidth:!0})}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[20px]`,children:[c.threshold_usd!=null&&(0,Y.jsx)(h,{variant:`outlined`,onClick:_,disabled:r.isPending,"data-testid":`low-balance-alert-reset-button`,children:e(`lowBalanceAlertCard.reset`)}),(0,Y.jsx)(h,{variant:`primary`,onClick:g,disabled:r.isPending,"data-testid":`low-balance-alert-save-button`,children:e(`lowBalanceAlertCard.save`)})]})]}),v&&(0,Y.jsx)(E,{tone:`error`,className:`mt-4`,"data-testid":`low-balance-alert-update-error`,children:e(`lowBalanceAlertCard.saveError`)})]})}function Ro(e){return e.replace(/\.00$/,``)}function zo({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)(F,{variant:`body-medium-default`,as:`span`,className:`text-[var(--content-default)]`,children:t}),(0,Y.jsx)(F,{variant:`body-small-default`,as:`span`,className:`min-w-0 truncate text-[var(--content-tertiary)]`,children:n})]})}function Bo(){let{t:e}=K(`settings`),{data:t,isLoading:n,isError:r}=W(le()),[i,a]=(0,J.useState)(!1),o=(0,J.useCallback)(t=>{S(t,{successMessage:e(`referralContent.copySuccess`),errorMessage:e(`referralContent.copyError`),onCopied:()=>{a(!0),setTimeout(()=>a(!1),2e3)}})},[e]),s=t?.is_eligible_for_credits===!1,c=w(),l=(0,J.useId)(),u=t?e(`referralContent.subtitleWithAmounts`,{creditAmount:Ro(t.referrer_credit_amount),earningCap:Ro(t.earning_cap)}):e(`referralContent.subtitleDefault`),d=t?(0,Y.jsx)(h,{variant:`outlined`,className:I(`shrink-0`,s&&`pointer-events-none`),disabled:s,"aria-describedby":s?l:void 0,onClick:()=>o(t.referral_url),leftIcon:i?(0,Y.jsx)(Mt,{className:`h-3.5 w-3.5`}):(0,Y.jsx)(Nt,{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)(F,{as:`p`,variant:`body-medium-default`,className:`text-[var(--content-tertiary)]`,children:u}),n?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),e(`referralContent.loading`)]}):r||!t?(0,Y.jsx)(E,{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)(zo,{icon:(0,Y.jsx)(At,{className:`h-3.5 w-3.5`}),value:Ro(t.total_earned),label:e(`referralContent.creditsEarned`)}),(0,Y.jsx)(zo,{icon:(0,Y.jsx)(It,{className:`h-3.5 w-3.5`}),value:t.referred_count,label:e(`referralContent.friendsReferred`)}),s?(0,Y.jsx)(b,{content:e(`referralContent.gatedTooltip`),children:(0,Y.jsx)(`span`,{tabIndex:c?0:void 0,className:`inline-flex shrink-0 rounded-lg focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:d})}):d]}),s&&(0,Y.jsx)(F,{as:`p`,id:l,variant:`body-small-default`,className:c?`sr-only`:`text-[var(--content-tertiary)]`,children:e(`referralContent.gatedTooltip`)})]})]})}function Vo({open:e,onOpenChange:t}){let{t:n}=K(`settings`);return(0,Y.jsx)(V.Root,{open:e,onOpenChange:t,children:(0,Y.jsxs)(V.Content,{"data-testid":`referral-modal`,children:[(0,Y.jsx)(V.Header,{children:(0,Y.jsx)(V.Title,{children:n(`referralModal.title`)})}),(0,Y.jsx)(V.Body,{children:(0,Y.jsx)(Bo,{})})]})})}var Ho=2e3;function Uo(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 Wo(){let{t:e}=K(`settings`),t=G(),{data:n,isLoading:r,isError:i}=W(ot()),a=n??null,[o,c]=(0,J.useState)(!1),[l,u]=(0,J.useState)(!1),[d,f]=(0,J.useState)(!1),p=(0,J.useRef)(0),m=(0,J.useRef)(null),g=Ee({onSuccess:()=>{t.invalidateQueries({queryKey:s()})},onError:()=>{p.current<3&&(m.current=setTimeout(()=>{g.reset()},Ho))}});(0,J.useEffect)(()=>()=>{m.current&&clearTimeout(m.current)},[]);let _=g.mutate;(0,J.useEffect)(()=>{a&&a.settled_balance===`0.00`&&a.pending_compute===`0.00`&&a.effective_balance===`0.00`&&p.current<3&&!g.isPending&&!g.isError&&!g.isSuccess&&(p.current+=1,_({}))},[a,g.isPending,g.isError,g.isSuccess,_]);let v=(0,Y.jsx)(Mo,{title:e(`billingPanel.title`),subtitle:e(`billingPanel.subtitle`),actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(h,{variant:`outlined`,leftIcon:(0,Y.jsx)(At,{className:`h-4 w-4`,"aria-hidden":!0}),onClick:()=>u(!0),"data-testid":`earn-credits-button`,children:e(`billingPanel.earnCreditsButton`)}),(0,Y.jsx)(h,{variant:`primary`,onClick:()=>c(!0),disabled:r||!a,"data-testid":`add-credits-button`,children:e(`billingPanel.addCreditsButton`)})]})});return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(A,{padding:`md`,children:[v,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)(q,{className:`h-4 w-4 animate-spin`}),e(`billingPanel.loading`)]}):i?(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(E,{tone:`error`,children:e(`billingPanel.loadError`)})}):a?(0,Y.jsxs)(Y.Fragment,{children:[(()=>{if(!a)return null;let t=Je(a.effective_balance,a.available_usage_balance),n=parseFloat(t)<0,r=Uo(t),i=r.startsWith(`-`)?`-$${r.slice(1)}`:`$${r}`;return(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(ue,{icon:(0,Y.jsx)(At,{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`})})})(),a.is_degraded&&(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(E,{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)(jo,{})}),(0,Y.jsx)(`div`,{id:Po,className:`mt-6 scroll-mt-4 border-t border-[var(--border-subtle)] pt-6`,children:(0,Y.jsx)(Fo,{})}),(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)(tt,{checked:d,onChange:f,label:e(`billingPanel.lowBalanceToggle`)}),d&&(0,Y.jsx)(Lo,{})]})})]}),(0,Y.jsx)(xn,{open:o,onOpenChange:c}),(0,Y.jsx)(Vo,{open:l,onOpenChange:u})]})}var Go=1e3,Ko=15e3,qo=3e3,Jo=45e3,Yo=`billing-portal-return`;function Xo(e,t){if(!e)return{kind:`info`,message:U(`settings:billingPortalReturnHandler.subscriptionUpdated`)};let n=e.cancel_at_period_end||!!e.cancel_at,r=t.cancel_at_period_end||!!t.cancel_at;return!n&&r?{kind:`info`,message:U(`settings:billingPortalReturnHandler.proCanceled`,{date:t.cancel_at?on(t.cancel_at):U(`settings:billingPortalReturnHandler.endOfBillingPeriod`)})}:n&&!r?{kind:`success`,message:U(`settings:billingPortalReturnHandler.proReactivated`)}:{kind:`info`,message:U(`settings:billingPortalReturnHandler.subscriptionUpdated`)}}function Zo(){let[e]=dt(),t=pt(),n=G(),r=(0,J.useRef)(null);return(0,J.useEffect)(()=>()=>{r.current!==null&&(clearInterval(r.current),r.current=null)},[]),(0,J.useEffect)(()=>{if(e.get(`portal_return`)!==`true`)return;let i={current:!1},a=Qt(),o=y(),s=C(),c=Date.now();async function l(){await n.invalidateQueries({queryKey:s});let e=await n.fetchQuery(o);return{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at}}async function u(){let e=await l();for(;!i.current&&a&&e.cancel_at_period_end===a.cancel_at_period_end&&e.cancel_at===a.cancel_at&&Date.now()-c<Ko&&(await new Promise(e=>setTimeout(e,Go)),!i.current);)e=await l();return e}return(async()=>{try{let e=await u();if(i.current)return;let{kind:t,message:n}=Xo(a,e);t===`success`?H.success(n,{id:Yo}):H.info(n,{id:Yo})}catch{if(i.current)return;H.info(U(`settings:billingPortalReturnHandler.subscriptionUpdated`),{id:Yo})}finally{if(!i.current){Zt(),t(fe.settings.usageBilling,{replace:!0});let e=Date.now();r.current!==null&&clearInterval(r.current),r.current=setInterval(()=>{if(Date.now()-e>=Jo){r.current!==null&&(clearInterval(r.current),r.current=null);return}l().catch(e=>{console.error(`billing poll error:`,e)})},qo)}}})(),()=>{i.current=!0}},[e,t,n]),null}var Qo=[7,30,90];function $o(e,t=O()){let{fromDate:n,toDate:r}=En(e,t);return{from:n,to:r}}function es({value:e,onChange:t}){let{t:n}=K(),r=Qo.find(t=>t===e)??30;return(0,Y.jsx)(he,{options:Qo.map(e=>({value:`${e}`,label:n(`dateRangeSelect.lastDays`,{days:e})})),value:`${r}`,onChange:e=>t(Number(e)),"aria-label":n(`dateRangeSelect.ariaLabel`)})}var ts={strokeDasharray:`3 3`,stroke:`var(--border-subtle)`,strokeOpacity:.4},ns={fontSize:12,fill:`var(--content-tertiary)`},rs={stroke:`var(--border-subtle)`,strokeOpacity:.4},is=[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`,`#8b5cf6`,`#06b6d4`,`#ec4899`,`#84cc16`];function as({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 os({active:e,payload:t,hoveredKey:n,label:r,labelMap:i,colorMap:a,formatValue:o,showTotal:s,formatLabel:c}){let{t:l}=K();if(!e||!t?.length)return null;let u=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),d=n?u.find(e=>e.key===n):null,f=d?u.filter(e=>e.key!==n):u,p=u.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:(c??Tn)(String(r))}),d&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(as,{item:d}),f.length>0&&(0,Y.jsx)(`div`,{className:`my-1.5 border-t border-[var(--border-subtle)]`})]}),f.map(e=>(0,Y.jsx)(as,{item:e},e.key)),s&&(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:l(`stackedBarTooltip.total`,{value:o(p)})})})]})}function ss(e,t){let[n,r]=e,[i,a]=t,o=r-n||1;return e=>i+(e-n)/o*(a-i)}function cs(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 ls(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 us(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:cs(n/r)*r}function ds(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 fs(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 ps(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 ms=40,hs={fontSize:11,fill:`var(--content-tertiary)`},gs={runtime_proxy_api:`#3b82f6`,oauth_proxy:`#f59e0b`};function _s(e,t){return gs[e]??is[t%is.length]??`#6b7280`}function vs(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 ys({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:_s(e,n)}}),(0,Y.jsx)(`span`,{className:`text-[var(--content-quiet)]`,children:t[e]??e})]},e))})}var bs=350,xs={top:8,right:4,bottom:32,left:0},Ss=.2,Cs=5,ws=12,Ts=200;function Es({buckets:e,metric:t,onBarClick:n}){let{t:r}=K(`settings`),i=Ye(),a=(0,J.useRef)(null),[o,s]=(0,J.useState)(0);(0,J.useEffect)(()=>{let e=a.current;if(!e)return;let t=new ResizeObserver(([e])=>{e&&s(e.contentRect.width)});return t.observe(e),()=>t.disconnect()},[]);let{data:c,stackKeys:l,labelMap:u}=(0,J.useMemo)(()=>vs(e,t),[e,t]),d=(0,J.useMemo)(()=>{let e={};for(let t=0;t<l.length;t++)e[l[t]]=_s(l[t],t);return e},[l]),f=(0,J.useCallback)(e=>t===`spend`?`$${e.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`:e.toLocaleString(`en-US`),[t]),[p,m]=(0,J.useState)(null),h=i?ms:56,g=i?hs:ns,_=xs.left+h,v=Math.max(0,o-_-xs.right),y=xs.top,b=bs-xs.top-xs.bottom,x=(0,J.useMemo)(()=>c.map(e=>l.reduce((t,n)=>t+(Number(e[n])||0),0)),[c,l]),S=t===`events`,C=(0,J.useMemo)(()=>us(x,{integerOnly:S,tickCount:Cs}),[x,S]),w=(0,J.useMemo)(()=>ds(C,Cs),[C]),T=(0,J.useCallback)(e=>{if(t===`spend`){if(e===0)return`$0`;let t=C/Cs,n=Math.max(t<1?2:0,ls(t));return`$${e.toLocaleString(`en-US`,{minimumFractionDigits:n,maximumFractionDigits:n})}`}return e.toLocaleString(`en-US`)},[t,C]),E=(0,J.useMemo)(()=>ss([0,C],[y+b,y]),[C,y,b]),D=c.length,O=D>0?v/D:0,k=O*(1-Ss),A=(O-k)/2,j=(0,J.useMemo)(()=>ps(D,i),[D,i]),M=l.length===0,N=M?[]:c.map((e,t)=>{let n=_+t*O+A,r=0;return{di:t,x:n,segments:l.map((t,i)=>{let a=Number(e[t])||0,o=r;r+=a;let s=E(r),c=E(o)-s,u=i===l.length-1;return{key:t,val:a,x:n,y:s,h:c,color:_s(t,i),isLast:u}})}}),P=(e,t,n)=>{let r=a.current?.getBoundingClientRect();r&&m({x:e.clientX-r.left,y:e.clientY-r.top,datumIndex:t,hoveredKey:n})},ee=()=>m(null),te=e=>{n&&n(e)},F=p?l.filter(e=>(Number(c[p.datumIndex]?.[e])||0)>0).map(e=>({dataKey:e,value:Number(c[p.datumIndex]?.[e])||0})):[],ne={left:p?Math.max(0,Math.min(p.x+ws,o-Ts)):0,top:p?p.y-ws:0,visibility:p?`visible`:`hidden`};return(0,Y.jsxs)(`div`,{onMouseDown:e=>e.preventDefault(),children:[(0,Y.jsx)(`div`,{ref:a,className:`relative w-full`,style:{height:bs},children:M?(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:bs,className:`block`,children:[w.map(e=>(0,Y.jsx)(`line`,{x1:_,x2:_+v,y1:E(e),y2:E(e),stroke:ts.stroke,strokeOpacity:ts.strokeOpacity,strokeDasharray:ts.strokeDasharray},e)),(0,Y.jsx)(`line`,{x1:_,x2:_+v,y1:y+b,y2:y+b,stroke:rs.stroke,strokeOpacity:rs.strokeOpacity}),w.map(e=>(0,Y.jsx)(`text`,{x:_-8,y:E(e),textAnchor:`end`,dominantBaseline:`middle`,fontSize:g.fontSize,fill:g.fill,children:T(e)},e)),j.map(e=>{let t=c[e];return t?(0,Y.jsx)(`text`,{x:_+e*O+O/2,y:y+b+20,textAnchor:`middle`,fontSize:g.fontSize,fill:g.fill,children:Tn(String(t.date))},e):null}),N.map(({di:e,segments:t})=>t.map(t=>{if(t.h<=0)return null;let r=p?.hoveredKey&&p.hoveredKey!==t.key?.4:1,i={key:`${e}-${t.key}`,fill:t.color,opacity:r,cursor:n?`pointer`:void 0,onMouseMove:n=>P(n,e,t.key),onMouseLeave:ee,onClick:()=>te(t.key)};return t.isLast?(0,Y.jsx)(`path`,{...i,d:fs(t.x,t.y,k,t.h,3)}):(0,Y.jsx)(`rect`,{...i,x:t.x,y:t.y,width:k,height:t.h})}))]}),(0,Y.jsx)(`div`,{className:`pointer-events-none absolute z-[1] max-w-[calc(100vw-32px)] -translate-y-full`,style:ne,children:(0,Y.jsx)(os,{active:!!p,payload:F,hoveredKey:p?.hoveredKey??void 0,label:p?String(c[p.datumIndex]?.date):``,labelMap:u,colorMap:d,formatValue:f})})]}):null}),!M&&(0,Y.jsx)(ys,{stackKeys:l,labelMap:u})]})}function Ds(e){if(e)return e.usageSource===`oauth_proxy`?`oauth_provider`:Hn(e.llmDimension??`model`)}function Os(e,t=O()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource,group_by:Ds(e.drilldown)}:{}}}function ks(e,t=O()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource}:{}}}function As(e,t,n){return e===`full`&&t!==`gated`&&n}function js(e){let t=z(),n=As(Ke({platformHostedOnly:!0}),Ke(),we()),r=W({..._({query:Os(e,t)}),enabled:n}),i=W({...oe({query:ks(e,t)}),enabled:n});return{series:r.data,totals:i.data,isLoading:r.isLoading||i.isLoading,isError:r.isError||i.isError}}function Ms(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 Ns(e){return e===void 0?`—`:e.toLocaleString(`en-US`)}function Ps(){let{t:e}=K(`settings`),t=z(),[n,r]=(0,J.useState)(30),i=(0,J.useMemo)(()=>$o(n,t),[n,t]),[a,o]=(0,J.useState)(null),[s,c]=(0,J.useState)(`spend`),l=(0,J.useMemo)(()=>[{value:`spend`,label:e(`billingUsagePanel.metricSpend`)},{value:`events`,label:e(`billingUsagePanel.metricEvents`)}],[e]),{series:u,totals:d,isLoading:f,isError:p}=js({dateRange:i,drilldown:a,setDrilldown:o}),m=a?void 0:e=>{let t={runtime_proxy_api:`runtime_proxy`,oauth_proxy:`oauth_proxy`}[e];t&&o({usageSource:t,...t===`runtime_proxy`?{llmDimension:Ln}:{}})};return(0,Y.jsx)(A,{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)(F,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:e(`billingUsagePanel.title`)}),(0,Y.jsx)(F,{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)(es,{value:n,onChange:r}),(0,Y.jsx)(`div`,{className:`w-44`,children:(0,Y.jsx)(at,{items:l,value:s,onChange:c,ariaLabel:e(`billingUsagePanel.chartMetricAria`)})})]})]}),(0,Y.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-2`,children:[(0,Y.jsx)(ue,{icon:(0,Y.jsx)(At,{className:`h-4 w-4`,"aria-hidden":!0}),value:f?(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):Ms(d?.total_usd),label:e(`billingUsagePanel.spendLabel`)}),(0,Y.jsx)(ue,{icon:(0,Y.jsx)(bt,{className:`h-4 w-4`,"aria-hidden":!0}),value:f?(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):Ns(d?.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)(Et,{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)(at,{items:zn,value:a.llmDimension??`model`,onChange:e=>o({usageSource:`runtime_proxy`,llmDimension:e}),ariaLabel:e(`billingUsagePanel.llmDimensionAria`)})})]}),f?(0,Y.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,Y.jsx)(q,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):p?(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`)}):u?(0,Y.jsx)(`div`,{className:`rounded-xl bg-[var(--surface-base)] p-3`,children:(0,Y.jsx)(Es,{buckets:u.buckets,metric:s,onBarClick:m})}):null]})})}function Fs(){let{t:e}=K(`settings`),t=B(),{data:n}=W(y()),r=$t((0,J.useMemo)(()=>fn(n),[n])),{reactivateSubscription:i,isPending:a}=wi(),o=a||r.isPending;if(!n||n.plan_id!==`pro`||n.status===`canceled`||!n.cancel_at_period_end&&!n.cancel_at)return null;let s=mn(n);return s?(0,Y.jsx)(E,{tone:`info`,title:e(`gracePeriodBanner.title`,{date:on(s)}),actions:(0,Y.jsx)(h,{variant:`outlined`,size:`compact`,onClick:()=>{if(t){yn(fe.settings.usageBilling);return}if(!en(n)){r.mutate({});return}i()},disabled:o,leftIcon:o?(0,Y.jsx)(q,{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 Is=new Set([`BIF`,`CLP`,`DJF`,`GNF`,`JPY`,`KMF`,`KRW`,`MGA`,`PYG`,`RWF`,`VND`,`VUV`,`XAF`,`XOF`,`XPF`]),Ls=new Set([`BHD`,`JOD`,`KWD`,`OMR`,`TND`]);function Rs(e){return Is.has(e)?0:Ls.has(e)?3:2}var zs={invoices:[],has_more:!1},Bs=4,Vs=`text-body-small-default [--vbtn-fg:var(--content-tertiary)] hover:[--vbtn-fg:var(--content-secondary)]`;function Hs(e){switch(e){case`paid`:return`positive`;case`open`:return`warning`;case`uncollectible`:return`negative`;default:return`neutral`}}function Us(e,t){let n=t.toUpperCase(),r=Rs(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 Ws(e){return k(new Date(e*1e3),{alwaysShowYear:!0})}function Gs(e){se(e)}function Ks(){let{t:e}=K(`settings`),[t,n]=(0,J.useState)(!1),[r,i]=(0,J.useState)(!1),[a,o]=(0,J.useState)(!1),[s,c]=(0,J.useState)(!1),l=(0,J.useRef)(0),u=G(),d=ut({enabled:t,queryKey:et(),queryFn:async({signal:e,pageParam:t})=>{let{data:n,error:r,response:i}=await Xe({throwOnError:!1,signal:e,query:t?{starting_after:t}:void 0});if(i?.status===404)return zs;if(Fe(i,r,`Failed to load invoices.`),!i.ok||!n)throw ee(r,i);return n},initialPageParam:void 0,getNextPageParam:e=>e.has_more?e.invoices.at(-1)?.id:void 0}),p=d.data?.pages.flatMap(e=>e.invoices)??[],m=r?p:p.slice(0,Bs),g=p.length>Bs,_=d.isFetchNextPageError||s,v=(r||!g)&&d.hasNextPage&&!_,y=d.isRefetching||d.isFetchingNextPage;function b(){let e=l.current;d.fetchNextPage().then(t=>{e===l.current&&c(t.isError)})}function x(){let e=l.current;d.refetch().then(t=>{if(e===l.current){if(t.isError){c(!0);return}b()}})}async function S(){o(!0);try{let{data:e,response:t}=await Ve({throwOnError:!1,parseAs:`blob`});if(!t?.ok||!(e instanceof Blob))throw Error(`Failed to download invoices (${t?.status??`network error`})`);let{saveFile:n}=await gt(async()=>{let{saveFile:e}=await import(`./native-file-CBaSUD63.js`);return{saveFile:e}},__vite__mapDeps([0,1,2,3,4,5,6]));await n(e,`invoices.zip`)}catch(t){f(t,{context:`download_all_invoices`}),H.error(e(`invoicesTable.downloadAllFailed`))}finally{o(!1)}}return(0,Y.jsx)(A,{padding:`md`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(Mo,{title:e(`invoicesTable.title`),actions:(0,Y.jsxs)(Y.Fragment,{children:[t&&p.length>0&&(0,Y.jsx)(h,{variant:`outlined`,leftIcon:a?(0,Y.jsx)(q,{className:`animate-spin`}):(0,Y.jsx)(Pt,{className:`h-4 w-4`}),onClick:S,disabled:a,"data-testid":`invoices-download-all`,children:e(`invoicesTable.downloadAll`)}),(0,Y.jsx)(h,{variant:`outlined`,rightIcon:t?(0,Y.jsx)(Dt,{className:`h-4 w-4`}):(0,Y.jsx)(Ct,{className:`h-4 w-4`}),onClick:()=>{l.current+=1,c(!1),t&&u.cancelQueries({queryKey:et()}),n(e=>!e)},"data-testid":`invoices-toggle`,children:e(t?`invoicesTable.hideButton`:`invoicesTable.showButton`)})]})}),t?d.isLoading?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(F,{as:`span`,variant:`body-small-default`,children:e(`invoicesTable.loading`)})]}):d.isLoadingError?(0,Y.jsx)(E,{tone:`error`,children:e(`invoicesTable.loadError`)}):p.length===0?(0,Y.jsx)(F,{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:m.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)(F,{as:`span`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:Ws(t.created)})}),(0,Y.jsx)(`td`,{className:`py-3 pr-4`,children:(0,Y.jsx)(F,{as:`span`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:Us(t.amount_due,t.currency)})}),(0,Y.jsx)(`td`,{className:`py-3 pr-4`,children:t.status&&(0,Y.jsx)(N,{tone:Hs(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)(h,{asChild:!0,variant:`ghost`,size:`compact`,leftIcon:(0,Y.jsx)(Ot,{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)(h,{variant:`ghost`,size:`compact`,iconOnly:(0,Y.jsx)(Pt,{className:`h-3.5 w-3.5`}),"aria-label":e(`invoicesTable.downloadPdfAriaLabel`),onClick:()=>Gs(t.invoice_pdf)})]})})]},t.id))})]})}),(g||v||_)&&(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 self-start`,children:[g&&(0,Y.jsx)(h,{variant:`link`,onClick:()=>i(e=>!e),className:Vs,"data-testid":`invoices-show-more`,children:r?e(`invoicesTable.showLess`):e(`invoicesTable.showMore`,{count:p.length-Bs})}),v&&(0,Y.jsx)(h,{variant:`link`,onClick:b,disabled:d.isFetchingNextPage,leftIcon:d.isFetchingNextPage&&(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),className:Vs,"data-testid":`invoices-load-more`,children:e(`invoicesTable.loadMore`)}),_&&(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,"data-testid":`invoices-load-more-error`,children:[(0,Y.jsx)(F,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-negative)]`,children:e(`invoicesTable.loadMoreError`)}),(0,Y.jsx)(h,{variant:`link`,onClick:x,disabled:y,leftIcon:y&&(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),className:Vs,"data-testid":`invoices-load-more-retry`,children:e(`invoicesTable.retry`)})]})]})]}):null]})})}function qs({brand:e,last4:t,expMonth:n=null,expYear:r=null,onUpdateCard:i,actionsDisabled:a=!1}){let{t:o}=K(`settings`),s=so(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)(kt,{"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)(F,{as:`p`,variant:`body-medium-default`,className:`truncate leading-snug text-[var(--content-default)]`,children:ao(o,e)}),t!=null&&(0,Y.jsx)(F,{as:`p`,variant:`body-small-default`,className:`truncate leading-snug text-[var(--content-tertiary)]`,children:o(`paymentMethodRow.endingIn`,{last4:t})}),s!=null&&(0,Y.jsx)(F,{as:`p`,variant:`body-small-default`,className:`truncate leading-snug text-[var(--content-quiet)]`,children:s})]})]}),(0,Y.jsx)(h,{variant:`ghost`,onClick:i,disabled:a,"data-testid":`payment-method-update`,className:`shrink-0`,children:o(`paymentMethodRow.replaceCard`)})]})}function Js(){let{t:e}=K(`settings`),t=G(),n=x(),r=To(),i=Eo.use.outcome(),a=Eo.use.scopeKey(),o=Eo.use.pending(),s=Eo.use.clearOutcome(),c=ce(),l=i!=null&&a===c,u=l?i:null,[d,f]=(0,J.useState)(null);(0,J.useEffect)(()=>{i!=null&&!l&&s()},[i,l,s]);let p=n.data,m=(0,J.useMemo)(()=>yo(p),[p]),g=p!=null&&m.length===0,_=()=>{f(bo(m))},v=n.isSuccess||n.isError;return(0,J.useEffect)(()=>{u!=null&&(u.kind!==`saved`&&!v||f(e=>e??(u.kind===`saved`?{mode:`add`,cardOnFile:null}:bo(m))))},[u,m,v]),(0,J.useEffect)(()=>{u?.kind!==`saved`||u.card==null||t.invalidateQueries({queryKey:He()})},[u,t]),(0,Y.jsxs)(A,{padding:`md`,"data-testid":`payment-methods-card`,children:[(0,Y.jsx)(Mo,{title:e(`paymentMethodsCard.title`),actions:g?(0,Y.jsx)(h,{variant:`outlined`,onClick:_,disabled:o,"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||p==null?(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(E,{tone:`error`,children:e(`paymentMethodsCard.loadError`)})}):m.length===0?(0,Y.jsx)(`div`,{className:`mt-4`,children:(0,Y.jsx)(E,{tone:`info`,"data-testid":`payment-methods-empty`,children:e(`paymentMethodsCard.empty`)})}):(0,Y.jsx)(`div`,{className:m.length>1?`mt-4 flex flex-col gap-1`:`mt-4`,children:m.map(e=>(0,Y.jsx)(qs,{brand:e.brand,last4:e.last4,expMonth:e.expMonth,expYear:e.expYear,onUpdateCard:_,actionsDisabled:o},e.id))}),(0,Y.jsx)(ho,{open:d!=null,onClose:()=>{f(null),s()},mode:d?.mode??`add`,cardOnFile:d?.cardOnFile??null,billingAddress:p?.billing_address??null,initialOutcome:u,onSavedOptimistic:r})]})}function Ys({icon:e,label:t,multiline:n=!1}){return(0,Y.jsxs)(`div`,{className:o(`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)(F,{as:`span`,variant:`body-medium-default`,className:o(`text-[var(--content-default)]`,n?`whitespace-normal`:`whitespace-nowrap`),children:t})]})}function Xs({theme:e,tierKey:t,name:n,nameTestId:r,tag:i,specs:a,footer:s,testId:c,className:l}){let u=a?.filter(e=>!e.ownRow)??[],d=a?.filter(e=>e.ownRow)??[];return(0,Y.jsxs)(`div`,{"data-theme":e,"data-testid":c,className:o(`flex min-w-0 flex-1 flex-col gap-8 rounded-xl bg-[var(--surface-base)] px-4 py-3`,l),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)(Wt,{tier:t,size:48}),(0,Y.jsx)(F,{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:[u.length?(0,Y.jsx)(`div`,{className:`flex flex-row flex-wrap items-start gap-1`,children:u.map(e=>(0,Y.jsx)(Ys,{icon:e.icon,label:e.label,multiline:e.multiline},e.label))}):null,d.map(e=>(0,Y.jsx)(Ys,{icon:e.icon,label:e.label,multiline:!0},e.label))]}):null,s?(0,Y.jsx)(`div`,{className:`mt-auto w-full`,children:s}):null]})}function Zs({ratio:e,exhausted:t=!1,onAddCredits:n}){let{t:r}=K(`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)(F,{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)(Le,{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)(F,{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)(F,{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)(h,{variant:`dangerGhost`,size:`compact`,leftIcon:(0,Y.jsx)(xt,{}),onClick:n,"data-testid":`plan-usage-add-credits`,children:r(`planCard.usageBalanceAddCredits`)})]}):null]}):null]})}function Qs(){let{t:e}=K(`settings`);return(0,Y.jsx)(F,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-emphasised)]`,children:e(`planCard.heading`)})}function $s({packages:e,currentKey:t,currentPriceCents:n,isProUser:r,canChangePackage:i,relation:o,onManage:s,onTierUpgraded:c}){let{t:l}=K(`settings`),u=G(),d=st(re()),{changePackage:f,isPending:p}=dn(),[m,_]=(0,J.useState)(!1),[v,y]=(0,J.useState)(!1),b=ne()===`light`?`dark`:`light`;pn();let x=B(),S=Ht(e,t),w=m||d.isPending||p,T=async()=>{if(!S)return;let e=await f(S.key);e&&(y(!1),e.status===`ok`?c?.():H.success(l(`planCard.alreadyOnPlanToast`)))},E=async()=>{if(S){if(x){yn(fe.settings.usageBilling);return}if(r&&!i){s();return}if(r){y(!0);return}_(!0);try{let e=await d.mutateAsync({body:{target_plan_id:`pro`,package:S.key,confirm:!0,return_target:bn()}});e.status===`redirect`&&e.checkout_url?(xe({kind:`package`,packageKey:S.key}),de(u),g(e.checkout_url)):(await u.invalidateQueries({queryKey:C()}),await u.invalidateQueries({queryKey:a()}))}catch(e){H.error(tn(e,l(`planCard.checkoutFailedToast`)))}finally{_(!1)}}};if(S==null||o===`switch`)return null;let D=n==null?null:S.total_price_cents-n,O=D!=null&&D>0?l(`planCard.powerUpFor`,{amount:an(D)}):l(`planCard.powerUp`);return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Xs,{theme:b,testId:`plan-tile-next`,tierKey:S.key,name:S.name,tag:(0,Y.jsx)(N,{className:`bg-[var(--feed-digest-weak)] text-[var(--credits-accent)]`,leftIcon:(0,Y.jsx)(Tt,{className:`text-[var(--credits-accent)]`,"aria-hidden":!0}),children:l(`planCard.nextPlan`)}),specs:Bt(S,l(`planCard.usageChip`,{name:S.name})),footer:(0,Y.jsx)(h,{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 E(),disabled:w,leftIcon:w?(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}):void 0,"data-testid":`recommended-upgrade-button`,children:O})}),(0,Y.jsx)(cn,{open:v,relation:o,packageName:S.name,targetPackage:S,pending:w,onConfirm:()=>void T(),onCancel:()=>y(!1)})]})}function ec(e){return e?.find(e=>e.id===`pro`)??null}function tc(e,t){let n=e?.package;return!e||e.plan_id===`base`||!Vt(n)?null:ec(t)?.packages?.find(e=>e.key===n.key&&e.version===n.version)??null}function nc({onManage:e,onTierUpgraded:t}){let{t:n}=K(`settings`),r=pt(),i=W(y()),a=W(ze()),{balance:o,availableUsageBalance:s,totalUsageBalance:c}=We(),[l,u]=(0,J.useState)(!1),d=tc(i.data,a.data?.plans),f=me({subscription:i.data,availableUsageBalance:s,totalUsageBalance:c});if(i.isLoading||a.isLoading)return(0,Y.jsxs)(A,{padding:`md`,children:[(0,Y.jsx)(Qs,{}),(0,Y.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),(0,Y.jsx)(F,{as:`span`,variant:`body-small-default`,children:n(`planCard.loading`)})]})]});let p=i.data,m=a.data?.plans,g=m?.find(e=>e.id===p?.plan_id);if(i.isError||a.isError||!p||!m||!g)return(0,Y.jsx)(E,{tone:`error`,children:n(`planCard.loadError`)});let _=g.id===`pro`?Gt(p.package):g.name??g.id,v=p.cancel_at_period_end===!0||!!p.cancel_at,b=p.status===`canceled`,x=mn(p),S=!v&&!b&&p.current_period_end,C=v&&!b&&x,w=ec(m)?.packages??[],T=p.package?.key??null,D=T??`free`,O=w.length>0&&(g.id===`base`||Vt(p.package)||Jt(p))?()=>r(fe.plans):e,k=Jt(p),j=g.id===`base`||Vt(p.package)?`upgrade`:`switch`,M=g.id===`base`,P=M?Kt():d?Bt(d,n(`planCard.usageChip`,{name:d.name})):null,ee=M?0:d?.total_price_cents??null,te=M?n(`planCard.freeForever`):d?rn(d.total_price_cents):null,ne=te?(0,Y.jsx)(`div`,{className:`flex h-10 items-center border-t border-[var(--border-base)]`,children:(0,Y.jsx)(F,{as:`span`,variant:`body-large-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-price`,children:te})}):void 0,re=o!=null&&Number(o)<=0,I=f!=null&&f.ratio>=1&&re,L=(f?(0,Y.jsx)(Zs,{ratio:f.ratio,exhausted:I,onAddCredits:()=>u(!0)}):null)??ne;return(0,Y.jsxs)(A,{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)(Qs,{}),S&&(0,Y.jsx)(F,{variant:`body-small-default`,as:`div`,className:`leading-snug text-[var(--content-tertiary)]`,"data-testid":`plan-card-renews`,children:n(`planCard.renewsOn`,{date:on(p.current_period_end)})}),C&&(0,Y.jsx)(F,{variant:`body-small-default`,as:`div`,className:`leading-snug text-[var(--system-mid-strong)]`,"data-testid":`plan-card-cancels`,children:n(`planCard.endsOn`,{date:on(x)})})]}),(0,Y.jsx)(h,{variant:`outlined`,onClick:O,"data-testid":M?`plan-card-plans-button`:`plan-card-manage-subscription-button`,children:n(M?`planCard.viewAllPlans`:`planCard.manageSubscription`)})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 lg:flex-row lg:items-stretch`,children:[(0,Y.jsx)(Xs,{testId:`plan-tile-current`,tierKey:D,name:_,nameTestId:`plan-card-name`,tag:(0,Y.jsx)(N,{tone:`info`,children:n(`planCard.current`)}),specs:P,footer:L}),(0,Y.jsx)($s,{packages:w,currentKey:T,currentPriceCents:ee,isProUser:g.id!==`base`,canChangePackage:k,relation:j,onManage:e,onTierUpgraded:t})]})]}),(0,Y.jsx)(xn,{open:l,onOpenChange:u})]})}function rc(e,t,n){let r=new URLSearchParams(t.search);n(r),e({pathname:t.pathname,search:`?${r}`,hash:t.hash},{replace:!0})}var ic=`setup_intent_client_secret`,ac=`redirect_status`,oc=[`setup_intent`,ic,ac];function sc(){return nt(Ae.getState().platformSession)}async function cc({clientSecret:e,redirectStatus:t,confirmSaved:n,generation:r}){await Cn({alsoReady:sc});let i=c(),a=[],o=()=>{for(;a.length>0;)a.pop()?.()},s=()=>{c()!==i&&(o(),Eo.getState().abandonResolution(r))};a.push(Ae.subscribe(s),Qe.subscribe(s));let l=e=>{o();let{settleOutcome:t,discardResolution:n}=Eo.getState();if(c()!==i){n(r);return}t(e,i,r)},u=e=>{console.warn(`[useSetupIntentReturn] card not saved on redirect return`,{redirectStatus:t}),l({kind:`error`,message:e??U(`settings:autoTopUpPaymentMethodModal.confirmFailed`)})};try{let t=await eo();if(t==null){u(void 0);return}let{setupIntent:r,error:i}=await t.retrieveSetupIntent(e);if(r?.status===`succeeded`){l({kind:`saved`,card:await n({setupIntentId:to(e)})});return}u(i?.message??r?.last_setup_error?.message)}catch{u(void 0)}}function lc(){let[e]=dt(),t=ft(),n=pt(),r=To(),i=(0,J.useRef)(!1);(0,J.useEffect)(()=>{let a=e.get(ic);if(a==null||i.current)return;i.current=!0;let o=e.get(ac);rc(n,t,e=>{for(let t of oc)e.delete(t);e.set(`tab`,`billing`)}),cc({clientSecret:a,redirectStatus:o,confirmSaved:r,generation:Eo.getState().beginResolving()})},[t,n,e,r])}function uc({onCheckoutCancelled:e}){let[t]=dt(),n=pt(),r=G(),{t:i}=K(`settings`);return(0,J.useEffect)(()=>{let a=t.get(`billing_status`);a&&(a===`success`?j(r):a===`cancel`&&(H.info(t.get(`billing_context`)===`upgrade`?i(`billingStatusHandler.upgradeCancelToast`):i(`billingStatusHandler.topUpCancelToast`),{id:`billing-status`}),e()),n(fe.settings.usageBilling,{replace:!0}))},[t,n,r,e,i]),null}function dc({onFinishSetup:e}){let{t}=K(`settings`),n=Ce(),{data:r}=W({...y(),enabled:n}),i=r?.plan_id===`pro`,{data:a}=W({...te(),enabled:i&&n}),o=i&&a?.domain_setup_available===!0,{domains:s}=qt(o,a?.primary_assistant_id),c=s!==void 0&&s.results.length===0;return!o||!c?null:(0,Y.jsx)(E,{tone:`info`,title:t(`billingPage.finishSetupTitle`,{plan:Gt(r?.package)}),actions:(0,Y.jsx)(h,{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 fc(){let{t:e}=K(`settings`),t=Ke({platformHostedOnly:!0}),n=Ke(),r=we(),i=Oe(),[a,o]=dt(),[s,c]=(0,J.useState)(!1),l=(0,J.useCallback)(()=>c(!0),[]),u=(0,J.useCallback)(()=>c(!1),[]),[d,f]=(0,J.useState)(!1),p=(0,J.useCallback)(()=>f(!0),[]),[m,h]=(0,J.useState)(!1),[g,_]=(0,J.useState)(null),[v,y]=(0,J.useState)(!1),b=(0,J.useCallback)(()=>{_(Date.now()),y(!1)},[]),{showOffer:x,amountUsd:S}=Nn(g),C=(0,J.useCallback)(e=>{e||y(!0)},[]);(0,J.useEffect)(()=>{if(n!==`full`)return;let e=a.has(`adjust_plan`),t=a.has(`pro_onboarding`);!e&&!t||(e&&c(!0),t&&h(!0),o(e=>{let t=new URLSearchParams(e);return t.delete(`adjust_plan`),t.delete(`pro_onboarding`),t},{replace:!0}))},[n,a,o]);let w=a.has(`session_id`),T=(0,J.useCallback)(()=>{h(!1),o(e=>{let t=new URLSearchParams(e);return t.delete(`session_id`),t},{replace:!0})},[o]),D=(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)(Pe,{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)(q,{className:`h-4 w-4 animate-spin`}),e(`billingPage.loadingBilling`)]})});let O=r,k=O||w||m;return!r&&t!==`gated`?(0,Y.jsx)(`div`,{className:`space-y-4`,children:(0,Y.jsx)(E,{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)(uc,{onCheckoutCancelled:b}),(0,Y.jsx)(Zo,{})]}),O&&(0,Y.jsx)(Fs,{}),O&&(0,Y.jsx)(dc,{onFinishSetup:D}),O&&(0,Y.jsx)(nc,{onManage:l,onTierUpgraded:p}),O&&(0,Y.jsx)(Ai,{open:s,onClose:u,onTierUpgraded:p}),(0,Y.jsx)(Mn,{open:x&&!v,onOpenChange:C,amountUsd:S}),(0,Y.jsx)(J.Suspense,{fallback:null,children:(0,Y.jsx)(Js,{})}),(0,Y.jsx)(J.Suspense,{fallback:null,children:(0,Y.jsx)(Wo,{})}),(0,Y.jsx)(J.Suspense,{fallback:null,children:(0,Y.jsx)(Ks,{})}),k&&(0,Y.jsx)(Rt,{open:w||m,onClose:T}),O&&(0,Y.jsx)(Rt,{mode:`resize`,open:d,onClose:()=>f(!1)})]})}function pc(){return(0,Y.jsx)(fc,{})}function mc(){let e=Te(),t=Ke({platformHostedOnly:!0}),n=Ke();return(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[t===`full`&&n!==`gated`&&(0,Y.jsx)(Ps,{}),(0,Y.jsx)(si,{assistantId:e})]})}function hc(){let{t:e}=K(`settings`),t=Ke(),[n]=dt(),r=pt(),i=ft();lc();let a=jn(t,n),o=a&&n.get(`tab`)!==`usage`?`billing`:`usage`,s=_e();return(0,J.useEffect)(()=>{s&&n.get(`tab`)!==o&&rc(r,i,e=>e.set(`tab`,o))},[s,n,o,r,i]),(0,Y.jsx)(`div`,{className:`space-y-6`,children:(0,Y.jsxs)(ve.Root,{value:o,onValueChange:e=>{rc(r,i,t=>t.set(`tab`,e))},children:[(0,Y.jsxs)(ve.List,{children:[a&&(0,Y.jsx)(ve.Trigger,{value:`billing`,children:e(`billingPage.billingTab`)}),(0,Y.jsx)(ve.Trigger,{value:`usage`,children:e(`billingPage.usageTab`)})]}),a&&(0,Y.jsx)(ve.Panel,{value:`billing`,className:`pt-4`,children:(0,Y.jsx)(pc,{})}),(0,Y.jsx)(ve.Panel,{value:`usage`,className:`pt-4`,children:(0,Y.jsx)(mc,{})})]})})}export{hc as BillingPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_b as e}from"./app-DYcUyeCV.js";import{_ as t,d as n,r,t as i}from"./react-B9IgSVeK.js";var a=i();function o(){let[i]=t(),{hash:o}=n(),s=i.toString();return(0,a.jsx)(r,{replace:!0,to:`${e.settings.usage}${s?`?${s}`:``}${o}`})}export{o as BillingRedirectPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Fx as e,Li as t,Nx as n,_b as r,an as i,cc as a,in as o,la as s,xg as c}from"./app-DYcUyeCV.js";import{j as l}from"./vendor-Dce4XQGd.js";import{f as u,r as d,t as f}from"./react-B9IgSVeK.js";import{E as p,Tt as m,_a as h,i as g,qn as _}from"./icons-SKs_cTXW.js";var v=f();function y(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 b({t:e}){return(0,v.jsx)(n,{children:(0,v.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,v.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,v.jsx)(h,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`})}),(0,v.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:e(`bookmarksPage.emptyTitle`)}),(0,v.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`bookmarksPage.emptyDescription`)})]})})}function x({bookmark:t,isFirst:n,onOpen:r,onRemove:i,t:a}){let o=s()(t.conversationTitle),c=t.messageRole!==`user`,l=y(t.createdAt);return(0,v.jsxs)(`div`,{className:`flex items-start gap-3 py-3 ${n?``:`border-t border-[var(--border-base)]`}`,children:[(0,v.jsx)(`span`,{"aria-hidden":!0,className:`mt-1 h-8 w-1 shrink-0 rounded-full`,style:{backgroundColor:c?`var(--content-default)`:`var(--content-tertiary)`}}),(0,v.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,v.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,v.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:o}),l?(0,v.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:l}):null]}),t.messagePreview?(0,v.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-small-default text-[var(--content-tertiary)]`,children:t.messagePreview}):null]}),(0,v.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,v.jsx)(e,{variant:`outlined`,onClick:r,children:a(`bookmarksPage.open`)}),(0,v.jsx)(`button`,{type:`button`,onClick:i,title:a(`bookmarksPage.removeBookmark`),"aria-label":a(`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,v.jsx)(g,{className:`h-4 w-4`})})]})]})}function S(){let{t:s}=l(`settings`),f=u(),{bookmarks:h,isLoading:g,isError:y,refetch:S}=i(),C=o(),w=t();return c.use.hydrated()&&!w?(0,v.jsx)(d,{replace:!0,to:r.settings.general}):g?(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,v.jsx)(_,{className:`h-6 w-6 animate-spin text-[var(--content-disabled)]`})})}):y?(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(n,{children:(0,v.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,v.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--system-error-lighter)]`,children:(0,v.jsx)(p,{className:`h-6 w-6 text-[var(--system-error-default)]`})}),(0,v.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:s(`bookmarksPage.errorTitle`)}),(0,v.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:s(`bookmarksPage.errorDescription`)}),(0,v.jsxs)(e,{variant:`outlined`,onClick:S,className:`mt-4`,children:[(0,v.jsx)(m,{className:`h-4 w-4`}),s(`bookmarksPage.retry`)]})]})})}):h.length===0?(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(b,{t:s})}):(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(n,{noPadding:!0,className:`px-4`,children:h.map((e,t)=>(0,v.jsx)(x,{bookmark:e,isFirst:t===0,onOpen:()=>a(f,e.conversationId,{messageId:e.messageId}),onRemove:()=>{C(e.messageId,e.conversationId,!0)},t:s},e.id))})})}export{S as BookmarksPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ba as t}from"./app-DYcUyeCV.js";import{j as n}from"./vendor-Dce4XQGd.js";import{t as r,x as i}from"./react-B9IgSVeK.js";import{t as a}from"./format-file-size-CEqN0m2h.js";var o=e(i(),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}=n(),[r,i]=(0,o.useState)(null),[l,u]=(0,o.useState)(!1);if((0,o.useEffect)(()=>{window.vellum?.bundleConfirm?.getData().then(e=>{e&&i(e)})},[]),!r)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}=r,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:t(`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:t(`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{$n as t,$v as n,B_ as r,Bt as i,Fp as a,Fx as o,Gi as s,Mt as c,Ox as l,Pt as u,Px as d,Tr as f,cr as p,gi as m,ix as h,lr as g,mn as _,nx as v,or as y,pi as b,pn as x,qp as S,rx as C,sr as w,tb as T,tr as E}from"./app-DYcUyeCV.js";import{j as D}from"./vendor-Dce4XQGd.js";import{t as O,x as k}from"./react-B9IgSVeK.js";import{Ja as A,Yr as j,qi as M}from"./icons-SKs_cTXW.js";var N=A(`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(k(),1),F=O();function I({entry:e,channelLabel:t,assistantName:n,isReferenced:r,onToggleReference:a}){let{t:s}=D(`chat`),l=w(e.timestamp),f=e.role===`user`?s(`channelTranscriptPanel.unknownSender`):n??s(`channelTranscriptPanel.assistantSender`),m=e.provenance.senderName??f,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)(d,{as:`span`,variant:`body-small-emphasised`,className:`min-w-0 truncate text-[var(--content-default)]`,children:m}),l?(0,F.jsx)(d,{as:`span`,variant:`body-small-lighter`,title:u(l),className:`shrink-0 text-[var(--content-tertiary)]`,children:c(l)}):null,(0,F.jsx)(`span`,{className:`flex-1`}),p(e)?(0,F.jsx)(o,{variant:`ghost`,size:`compact`,"data-reveal":``,active:r,leftIcon:r?(0,F.jsx)(M,{}):(0,F.jsx)(N,{}),onClick:()=>a(e),"aria-pressed":r,"aria-label":r?s(`channelTranscriptPanel.removeReferenceAria`):s(`channelTranscriptPanel.referenceAria`,{channel:t}),className:`shrink-0`,children:s(r?`channelTranscriptPanel.referenced`:`channelTranscriptPanel.reference`)}):null]}),g?(0,F.jsx)(d,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:s(g.op===`added`?`channelTranscriptPanel.reactionAdded`:`channelTranscriptPanel.reactionRemoved`,{emoji:i(g)})}):(0,F.jsxs)(d,{as:`div`,variant:`body-small-default`,className:`${C} mb-0`,children:[(0,F.jsx)(`span`,{"aria-hidden":`true`,className:v}),(0,F.jsx)(`span`,{className:`${h} whitespace-pre-wrap break-words`,children:e.text||s(`channelTranscriptPanel.noText`)})]})]})}function L({sidecarRef:e,threadName:n,sourceHref:i,entries:a,assistantName:s,referencedEntryId:c,onToggleReference:u,onClose:f}){let{t:p}=D(`chat`),h=m(e.channelId),_=n?p(`channelTranscriptPanel.namedTitle`,{channel:h,thread:n}):p(`channelTranscriptPanel.title`,{channel:h});return(0,F.jsxs)(t,{icon:(0,F.jsx)(b,{channelId:e.channelId,className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),title:_,headerTrailing:(0,F.jsx)(l,{tone:`neutral`,children:p(`channelTranscriptPanel.readOnly`)}),headerActions:i?(0,F.jsx)(o,{asChild:!0,variant:`outlined`,leftIcon:(0,F.jsx)(j,{}),className:`shrink-0`,children:(0,F.jsx)(`a`,{href:i,target:`_blank`,rel:`noreferrer noopener`,onClick:e=>r(e,i),children:p(`channelTranscriptPanel.openInChannel`,{channel:h})})}):void 0,closeLabel:p(`channelTranscriptPanel.closeAria`),closeTooltip:p(`channelTranscriptPanel.closeTooltip`),onClose:f,children:[(0,F.jsx)(d,{as:`p`,variant:`body-small-lighter`,className:`mb-3 text-[var(--content-tertiary)]`,children:p(`channelTranscriptPanel.readOnlyNote`,{channel:h})}),a.length===0?(0,F.jsx)(E,{children:g(e.channelId)?p(`channelTranscriptPanel.emptyThread`,{channel:h}):p(`channelTranscriptPanel.emptyNoMessageDetail`,{channel:h})}):(0,F.jsx)(`div`,{className:`flex flex-col gap-1`,children:a.map(e=>(0,F.jsx)(I,{entry:e,channelLabel:h,assistantName:s,isReferenced:c===e.id,onToggleReference:u},e.id))})]})}function R({sidecarRef:e,onClose:t}){let r=n.use.activeAssistantId(),i=S.use.activeConversationId(),{target:o,entries:c}=y({conversationId:i,conversation:s(r,i,!0),messages:f()}),l=T.use.name(),u=x.use.reference(),d=x.use.toggleReference(),p=a(o,e),h=p?c:[],g=m(e.channelId),v=(0,P.useCallback)(e=>{o&&d(_({entry:e,target:o,channelLabel:g}))},[o,d,g]);return(0,F.jsx)(L,{sidecarRef:e,threadName:p?o?.threadName:void 0,sourceHref:p?o?.sourceHref:void 0,entries:h,assistantName:l,referencedEntryId:u?.messageId??null,onToggleReference:v,onClose:t})}export{R as ChannelTranscriptPanel};
|
|
@@ -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:`正在檢查訂閱…`,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};
|
|
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:`正在檢查訂閱…`,completeSetup:`完成網域設定`,completingSetup:`正在完成設定…`,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:`移除電子郵件地址`,repairConfirmMessage:`將保留您現有的電子郵件地址。設定會為 <code>{domain}</code> 聯絡電子郵件供應商和 DNS。`,repairConfirmTitle:`完成網域設定?`,repairFailedFallback:`無法開始網域設定。請稍後再試。`,repairNoticeBody:`您的電子郵件地址已就緒,但此網域尚未在電子郵件供應商處設定。完成設定後即可開始傳送和接收郵件。`,repairNoticeTitle:`需要設定網域`,repairStartedToast:`已開始網域設定。驗證通常需要幾分鐘。`,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:`正在检查订阅…`,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};
|
|
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:`正在检查订阅…`,completeSetup:`完成域名设置`,completingSetup:`正在完成设置…`,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:`删除电子邮件地址`,repairConfirmMessage:`将保留您现有的电子邮件地址。设置会为 <code>{domain}</code> 联系电子邮件提供商和 DNS。`,repairConfirmTitle:`完成域名设置?`,repairFailedFallback:`无法开始域名设置。请稍后再试。`,repairNoticeBody:`您的电子邮件地址已就绪,但此域名尚未在电子邮件提供商处设置。完成设置后即可开始发送和接收邮件。`,repairNoticeTitle:`需要设置域名`,repairStartedToast:`已开始域名设置。验证通常需要几分钟。`,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:`Проверка подписки…`,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};
|
|
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:`Проверка подписки…`,completeSetup:`Завершить настройку домена`,completingSetup:`Завершение настройки…`,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:`Удалить адрес почты`,repairConfirmMessage:`Текущий адрес почты сохранится. Настройка обратится к почтовому провайдеру и DNS для <code>{domain}</code>.`,repairConfirmTitle:`Завершить настройку домена?`,repairFailedFallback:`Не удалось начать настройку домена. Повторите попытку через минуту.`,repairNoticeBody:`Адрес почты уже есть, но домен ещё не настроен у почтового провайдера. Завершите настройку, чтобы отправлять и получать письма.`,repairNoticeTitle:`Нужна настройка домена`,repairStartedToast:`Настройка домена начата. Проверка обычно занимает несколько минут.`,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};
|