@vellumai/web 0.9.1-staging.1 → 0.10.0-staging.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{BundleConfirmPage-B05RoADk.js → BundleConfirmPage-CkXUMWg6.js} +1 -1
- package/dist/assets/Combination-DmnhUZru.js +41 -0
- package/dist/assets/{about-page-CKoPPaO7.js → about-page-Bue2vNnY.js} +1 -1
- package/dist/assets/account-page-D5qDx37o.js +1 -0
- package/dist/assets/{account-shell-CMXld37R.js → account-shell-oWV1wIYb.js} +1 -1
- package/dist/assets/add-credits-modal-DpHTkxV2.js +1 -0
- package/dist/assets/advanced-page-DWX9qbxa.js +1 -0
- package/dist/assets/ai-page-Cp6X0S2W.js +1 -0
- package/dist/assets/api-BSHLYsxJ.js +1 -0
- package/dist/assets/api-key-screen-DvV4RiY0.js +1 -0
- package/dist/assets/{archive-CeE0yzQG.js → archive-BCoY55bM.js} +1 -1
- package/dist/assets/{archive-page-0ieRHeti.js → archive-page-B7i9-bc2.js} +1 -1
- package/dist/assets/arrow-left-DpZuwfUr.js +1 -0
- package/dist/assets/arrow-up-BsbPgGtM.js +1 -0
- package/dist/assets/assistant-api-D7r6RWoh.js +39 -0
- package/dist/assets/{assistant-feature-flag-store-Cxp56Kba.js → assistant-feature-flag-store-D2CUHsmL.js} +1 -1
- package/dist/assets/assistant-identity-store-BFaMpt_3.js +1 -0
- package/dist/assets/{assistant-status-panel-D-z6IxYW.js → assistant-status-panel-CMdqv7mF.js} +1 -1
- package/dist/assets/auth-store-CrTf0uWL.js +7 -0
- package/dist/assets/ban-BMsomjPu.js +1 -0
- package/dist/assets/{bell-NxrwR0Jo.js → bell-CSP2EUlP.js} +1 -1
- package/dist/assets/billing-page-CMhUfBBf.js +3 -0
- package/dist/assets/{bookmark-x7Ifdw-I.js → bookmark-Cj14Qikr.js} +1 -1
- package/dist/assets/{bookmarks-page-B1dsEwnh.js → bookmarks-page-BBlx8L6h.js} +1 -1
- package/dist/assets/{bug-02o3SRzi.js → bug-BIPj7Nbx.js} +1 -1
- package/dist/assets/build-state-DqzVxR37.js +1 -0
- package/dist/assets/build.umd-TjHHwLRY.js +7 -0
- package/dist/assets/cable-R_YO6j5x.js +1 -0
- package/dist/assets/{calendar-DwE3i9wW.js → calendar-Dm2Jn-zV.js} +1 -1
- package/dist/assets/capture-error-B0wqOYKY.js +4 -0
- package/dist/assets/chevron-left-CySeFTW4.js +1 -0
- package/dist/assets/chevron-right-HpmykQ8I.js +1 -0
- package/dist/assets/{chevron-up-CpvJ_NKe.js → chevron-up-Ck7_ou16.js} +1 -1
- package/dist/assets/{circle-alert-mVsAUggI.js → circle-alert-C5TvMkJV.js} +1 -1
- package/dist/assets/circle-check-D3yd2el7.js +1 -0
- package/dist/assets/client-feature-flag-store-ivPVcKfH.js +1 -0
- package/dist/assets/client.gen-CWZrHbc9.js +6 -0
- package/dist/assets/{cloud-off-DH9J_354.js → cloud-off-DJomNBuZ.js} +1 -1
- package/dist/assets/code-CXddtaOh.js +1 -0
- package/dist/assets/{command-palette-window-page-cWuw1xhs.js → command-palette-window-page-CHu_bF8J.js} +1 -1
- package/dist/assets/{command-palette-CSvW_XvX.js → command-palette-yIWk_niH.js} +1 -1
- package/dist/assets/community-page-CiartSQX.js +1 -0
- package/dist/assets/composer-focus-DP3jFn8K.js +1 -0
- package/dist/assets/{confirm-dialog-D72Q4sYh.js → confirm-dialog-DbNUkFt6.js} +1 -1
- package/dist/assets/{connect-page-BqFzo5G7.js → connect-page-Bvs0EgCJ.js} +1 -1
- package/dist/assets/consent-controls-cNdj_gb8.js +1 -0
- package/dist/assets/{contacts-gateway-0QjVTHxb.js → contacts-gateway-Cf32jSYa.js} +1 -1
- package/dist/assets/contacts-page-route-C9IaBKKe.js +1 -0
- package/dist/assets/conversation-queries-Dt4RoWIo.js +1 -0
- package/dist/assets/conversation-selection-BMndnV1U.js +1 -0
- package/dist/assets/{conversation-store-sNOTxyHV.js → conversation-store-BSxi0r0X.js} +1 -1
- package/dist/assets/{cpu-BcJecU1F.js → cpu-CT8bAyOk.js} +1 -1
- package/dist/assets/{credit-card-0RHpgtQL.js → credit-card-XOxZwKz-.js} +1 -1
- package/dist/assets/{danger-zone-redirect-page-CLhADkGK.js → danger-zone-redirect-page-5H-AuIvi.js} +1 -1
- package/dist/assets/debug-page-DGQMqihK.js +2 -0
- package/dist/assets/{deploy-dialogs-p1vsPTUv.js → deploy-dialogs-DWIqIDdv.js} +1 -1
- package/dist/assets/{detail-card-CVf1cdeW.js → detail-card-CLwQ17AA.js} +1 -1
- package/dist/assets/developer-page-ClPMK7n8.js +1 -0
- package/dist/assets/device-settings-BBwtGKJb.js +1 -0
- package/dist/assets/devices-page-N9s-okC5.js +1 -0
- package/dist/assets/{dictation-overlay-page-C-tkq4dH.js → dictation-overlay-page-D_eJHI6R.js} +1 -1
- package/dist/assets/dist-DhhV5jI1.js +5 -0
- package/dist/assets/document-viewer-page-CmSYAtEc.js +1 -0
- package/dist/assets/{dollar-sign-DMaImaTJ.js → dollar-sign-Ctayw6dD.js} +1 -1
- package/dist/assets/{domain-field-BB2BsmpU.js → domain-field-yW8B9mxj.js} +1 -1
- package/dist/assets/{dropdown-SfZ7NXPp.js → dropdown-yOV5eJnU.js} +1 -1
- package/dist/assets/earn-credits-modal-OFm9gF2_.js +1 -0
- package/dist/assets/{effective-timezone-DD2wGZ9O.js → effective-timezone-wo2Bhl1P.js} +1 -1
- package/dist/assets/emails-page-psWdsGCD.js +1 -0
- package/dist/assets/{environment-store-GJl9GOSU.js → environment-store-Ck7wXCrL.js} +1 -1
- package/dist/assets/esm--X8IY1ec.js +1 -0
- package/dist/assets/esm-Cs-ixW_a.js +2 -0
- package/dist/assets/{esm-CiJ6-8lg.js → esm-DkmmS1Rg.js} +2 -2
- package/dist/assets/esm-DxJBeF-2.js +2 -0
- package/dist/assets/esm-JmlvYCir.js +2 -0
- package/dist/assets/esm-LyzWW9Z1.js +2 -0
- package/dist/assets/{external-link-DSvLY0NE.js → external-link-B3skagqt.js} +1 -1
- package/dist/assets/feature-flag-catalog-DEr38CMM.js +1 -0
- package/dist/assets/file-editor-CKotrZYQ.js +1 -0
- package/dist/assets/general-page-CaAos_hp.js +1 -0
- package/dist/assets/{globe-CWYIIJUm.js → globe-BV8ouh66.js} +1 -1
- package/dist/assets/haptics-BtSYrQNK.js +1 -0
- package/dist/assets/{hard-drive-CTNBsAWU.js → hard-drive-C6sJQKXL.js} +1 -1
- package/dist/assets/hatching-screen-CtgkoJwM.js +1 -0
- package/dist/assets/home-page-route-syOFwCBN.js +1 -0
- package/dist/assets/hosting-screen-Duoz3ECF.js +1 -0
- package/dist/assets/identity-page-route-gCgQUpAC.js +1 -0
- package/dist/assets/index-DIEDlrdu.css +2 -0
- package/dist/assets/index-LP2PV_QY.js +140 -0
- package/dist/assets/infiniteQueryOptions-C6p49ZmI.js +1 -0
- package/dist/assets/{info-cdSVfJsv.js → info-BJtskZc-.js} +1 -1
- package/dist/assets/{inspect-page-CF6IvTnL.js → inspect-page-CYszP4kv.js} +4 -4
- package/dist/assets/install-BK1MtTfb.js +1 -0
- package/dist/assets/integrations-page-8RrTqdmS.js +1 -0
- package/dist/assets/{intelligence-layout-I7RyB84a.js → intelligence-layout-DMxSxRZX.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-page-BoCAeGTj.js → keyboard-shortcuts-page-q_QkRUkC.js} +1 -1
- package/dist/assets/lib-CQbq3OZw.js +29 -0
- package/dist/assets/library-detail-page-_lrynJRj.js +1 -0
- package/dist/assets/library-page-CKh1x82Q.js +1 -0
- package/dist/assets/{link-2-DhbUuvTQ.js → link-2-BedDg97D.js} +1 -1
- package/dist/assets/loader-circle-CTs38Ovl.js +1 -0
- package/dist/assets/local-mode-9ZkSq1Fr.js +1 -0
- package/dist/assets/{log-in-BK2MWU1V.js → log-in-DOSWwTiS.js} +1 -1
- package/dist/assets/{login-flow-LfFdQVKy.js → login-flow-BMwbZfKA.js} +1 -1
- package/dist/assets/login-page-CDtyRiaq.js +1 -0
- package/dist/assets/logout-page-vdgRWyPg.js +1 -0
- package/dist/assets/{logs-layout-DJLcEzf0.js → logs-layout-btcFTD4i.js} +1 -1
- package/dist/assets/mcp-page-DdG8hp_Z.js +1 -0
- package/dist/assets/{memory-router-playground-page-BnAPa8Kg.js → memory-router-playground-page-Bt_KJsxN.js} +1 -1
- package/dist/assets/menu-BvyV91Np.js +1 -0
- package/dist/assets/metric-card-B3EBP9m4.js +1 -0
- package/dist/assets/{minimize-2-CZEYRlXG.js → minimize-2-CwIqAxPY.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-BOVf-4X5.js → mobile-sidebar-drawer-Cd68jgRD.js} +1 -1
- package/dist/assets/{modal-CzEvQDM4.js → modal-DX6UN7b0.js} +1 -1
- package/dist/assets/{moon-Kgk0y3SC.js → moon-C0wLM1iN.js} +1 -1
- package/dist/assets/native-deep-link-_WT_7c80.js +1 -0
- package/dist/assets/{native-file-B9T0QAPN.js → native-file-CbhjzPxL.js} +2 -2
- package/dist/assets/{notice-jdXknxvS.js → notice-G5Imd5pC.js} +1 -1
- package/dist/assets/notifications-page-BilkBeoP.js +1 -0
- package/dist/assets/{oauth-complete-page-BptiOXrB.js → oauth-complete-page-BC7UElNs.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CzUGsXDZ.js → oauth-popup-complete-page-CiTNEvfk.js} +2 -2
- package/dist/assets/{page-shell-BK8U7uAs.js → page-shell-C0oiLAoY.js} +1 -1
- package/dist/assets/pairing-page-Dc-5wQmY.js +1 -0
- package/dist/assets/panel-item-BFOUNXY1.js +1 -0
- package/dist/assets/{password-reset-page-BJc9fj0D.js → password-reset-page-Cf5SQHDV.js} +1 -1
- package/dist/assets/{pencil-C3hvx-64.js → pencil-lwgMCqyH.js} +1 -1
- package/dist/assets/{platform-loopback-page-BbXfL66c.js → platform-loopback-page-Wie5xEwr.js} +1 -1
- package/dist/assets/plugin-detail-page-CtWtIYBW.js +1 -0
- package/dist/assets/plugins-page-1vkkdBfG.js +1 -0
- package/dist/assets/popover-PnyzuDx3.js +1 -0
- package/dist/assets/prechat-names-BZIP2Y-H.js +1 -0
- package/dist/assets/prechat-route-CG8Qo2Tq.js +1 -0
- package/dist/assets/prefs-Mrqh1A7Y.js +1 -0
- package/dist/assets/privacy-page-rNHkqHfs.js +1 -0
- package/dist/assets/privacy-screen-Cck6z5wu.js +1 -0
- package/dist/assets/{provider-callback-page-ZpTK7tWH.js → provider-callback-page-CrZXFWM7.js} +1 -1
- package/dist/assets/{provider-key-CREk2Vnb.js → provider-key-DH6JmPXt.js} +1 -1
- package/dist/assets/{provider-signup-page-tSjgpRgo.js → provider-signup-page-Beuafn_s.js} +1 -1
- package/dist/assets/proxy-CQsxT9tJ.js +1 -0
- package/dist/assets/{quick-input-page-C9Xy1Hau.js → quick-input-page-0PEcj6WT.js} +1 -1
- package/dist/assets/react-query.gen-DdB0sQgj.js +1 -0
- package/dist/assets/reduced-motion-Do7LyjE6.js +1 -0
- package/dist/assets/research-mock-page-D7-VpSBh.js +1 -0
- package/dist/assets/research-onboarding-route-DAPVTFHs.js +38 -0
- package/dist/assets/{resize-errors-EgUeogec.js → resize-errors-tz_Tui32.js} +1 -1
- package/dist/assets/{resolved-assistants-store-BuY00Dgn.js → resolved-assistants-store-DMuRxkZC.js} +1 -1
- package/dist/assets/return-to-Bc7amvZZ.js +1 -0
- package/dist/assets/review-terms-screen-C8XTIUYc.js +1 -0
- package/dist/assets/routes-BKwsRssF.js +1 -0
- package/dist/assets/{save-BmSG47KO.js → save-WZktF4Xe.js} +1 -1
- package/dist/assets/schedules-DqkGi2Lm.js +1 -0
- package/dist/assets/sdk.gen-Bew9wO5C.js +1 -0
- package/dist/assets/sdk.gen-DRL3oRwz.js +1 -0
- package/dist/assets/select-assistant-screen-PZqDGbI2.js +1 -0
- package/dist/assets/setting-row-IILQu7AE.js +1 -0
- package/dist/assets/settings-layout-ByZKbs5J.js +1 -0
- package/dist/assets/share-feedback-modal-CuxFlSR6.js +1 -0
- package/dist/assets/sidebar-tree-BZUv9ggX.js +1 -0
- package/dist/assets/signup-page-BWnAp0Bw.js +1 -0
- package/dist/assets/{signup-shell-Bpciut3D.js → signup-shell-D6LXKfGy.js} +1 -1
- package/dist/assets/skills-page-BAodqgt1.js +1 -0
- package/dist/assets/sound-manager-CC2af7bI.js +1 -0
- package/dist/assets/sounds-page-hDPPoEEQ.js +1 -0
- package/dist/assets/sparkles-B9QIWdq0.js +1 -0
- package/dist/assets/{src-smBQxdc-.js → src-D6Nu2Lol.js} +1 -1
- package/dist/assets/{step-indicator-dots-DDl5cxT2.js → step-indicator-dots-CwbobrxS.js} +1 -1
- package/dist/assets/subagent-detail-panel-Db9feY1I.js +4 -0
- package/dist/assets/subagent-status-CaVVlphf.js +1 -0
- package/dist/assets/system-events-page-DYi0jI1g.js +1 -0
- package/dist/assets/{system-events-redirect-page-CqmtBW2h.js → system-events-redirect-page-CmooXfba.js} +1 -1
- package/dist/assets/{tiptap-document-editor-C0s5OMGS.js → tiptap-document-editor-DD5B0bf0.js} +1 -1
- package/dist/assets/tool-detail-panel-DZf8WIS6.js +2 -0
- package/dist/assets/trace-page-DSDi-YYp.js +1 -0
- package/dist/assets/{triangle-alert-Bq1nYBA_.js → triangle-alert-M_S_Pe8C.js} +1 -1
- package/dist/assets/typed-storage-SkUUNYR1.js +1 -0
- package/dist/assets/{upgrade-cancel-page-CwDFTk-Z.js → upgrade-cancel-page-DHzkb9An.js} +1 -1
- package/dist/assets/upgrade-success-page-CIooZvxn.js +1 -0
- package/dist/assets/usage-page-XWL-WFaq.js +1 -0
- package/dist/assets/{use-active-assistant-id-CJjFnsdH.js → use-active-assistant-id-512RohBL.js} +1 -1
- package/dist/assets/{use-bus-subscription-Dile3BXF.js → use-bus-subscription-RUbeQDfy.js} +1 -1
- package/dist/assets/use-is-org-ready-BoWiaeMc.js +1 -0
- package/dist/assets/{use-onboarding-login-BTaj-hG0.js → use-onboarding-login-CxXV3Iue.js} +1 -1
- package/dist/assets/use-plugin-drift-BUHRYq2W.js +1 -0
- package/dist/assets/use-reduced-motion-CXbk4fYO.js +1 -0
- package/dist/assets/{utils-J6AQqhXe.js → utils-B5-aBe5u.js} +1 -1
- package/dist/assets/viewer-store-CInCucV8.js +1 -0
- package/dist/assets/{voice-page-DWAv-yT7.js → voice-page-BwA-ETwe.js} +1 -1
- package/dist/assets/{weather-forecast-display-KVpBIJDW.js → weather-forecast-display-tzc5l6oR.js} +1 -1
- package/dist/assets/{web-Q-Fy-bZq.js → web-4XHemeeJ.js} +1 -1
- package/dist/assets/{web-DntBgoV-.js → web-BEsXuN9d.js} +1 -1
- package/dist/assets/{web-Bbbrqz9-.js → web-BcNl6r2T.js} +1 -1
- package/dist/assets/{web-BmmMNr9D.js → web-BorhjBfF.js} +1 -1
- package/dist/assets/{web-BnVK6Ko1.js → web-CVJTgRoJ.js} +1 -1
- package/dist/assets/{web-C8hX3beP.js → web-DALQZUJ4.js} +1 -1
- package/dist/assets/{web-CSektMPp.js → web-DKvxfNu_.js} +1 -1
- package/dist/assets/welcome-screen-BkL_1qYq.js +1 -0
- package/dist/assets/workflow-detail-panel-DYQvTG3m.js +1 -0
- package/dist/assets/workspace-page-t_8JOOXv.js +1 -0
- package/dist/assets/x-Dz7msELe.js +1 -0
- package/dist/index.html +100 -84
- package/package.json +1 -1
- package/dist/assets/abap-CJrBtfsa.js +0 -1
- package/dist/assets/account-page-BXXWqnIU.js +0 -1
- package/dist/assets/actionscript-3-YHWB7sNC.js +0 -1
- package/dist/assets/ada-img0UdAj.js +0 -1
- package/dist/assets/add-credits-modal-DpiB3QLy.js +0 -1
- package/dist/assets/advanced-page-NqIInihI.js +0 -1
- package/dist/assets/ai-page-1l2CkYpn.js +0 -1
- package/dist/assets/andromeeda-C1LxTnTH.js +0 -1
- package/dist/assets/angular-html-DrZg9N7A.js +0 -1
- package/dist/assets/angular-ts-okMJpjnr.js +0 -1
- package/dist/assets/apache-IoQI1KUH.js +0 -1
- package/dist/assets/apex-n2v3aQBo.js +0 -1
- package/dist/assets/api-BZ4I3q8P.js +0 -39
- package/dist/assets/api-key-screen-Dp-VBpp-.js +0 -1
- package/dist/assets/apl-C_w7rnXn.js +0 -1
- package/dist/assets/app-html-cache-BTpT7uaA.js +0 -1
- package/dist/assets/applescript-D49Qqfh4.js +0 -1
- package/dist/assets/ara-DgXD1PbM.js +0 -1
- package/dist/assets/arrow-up-BfbWaCwD.js +0 -1
- package/dist/assets/asciidoc-DU5A8w3I.js +0 -1
- package/dist/assets/asm-DLWV3wBr.js +0 -1
- package/dist/assets/assistant-identity-store-jSviVw26.js +0 -1
- package/dist/assets/astro-C45ziIIN.js +0 -1
- package/dist/assets/aurora-x-sgsXFaTN.js +0 -1
- package/dist/assets/auth-store-DSAM2WAh.js +0 -6
- package/dist/assets/awk-D4m11dV4.js +0 -1
- package/dist/assets/ayu-dark-_fQ79hPZ.js +0 -1
- package/dist/assets/ayu-light-5TdpKX6N.js +0 -1
- package/dist/assets/ayu-mirage-CTtiRp-q.js +0 -1
- package/dist/assets/ballerina-BhVCMXnc.js +0 -1
- package/dist/assets/bat-D-KwEcSR.js +0 -1
- package/dist/assets/beancount-DMRw39yN.js +0 -1
- package/dist/assets/berry-B7y2b9zx.js +0 -1
- package/dist/assets/bibtex-G8nhfjal.js +0 -1
- package/dist/assets/bicep-BbRPGczZ.js +0 -1
- package/dist/assets/billing-page-DKUCcl5k.js +0 -3
- package/dist/assets/bird2-tFQvrZc7.js +0 -1
- package/dist/assets/blade-qb9kSoZR.js +0 -1
- package/dist/assets/bsl-CjyTSzpP.js +0 -1
- package/dist/assets/build-state-Bzd27ecC.js +0 -1
- package/dist/assets/c-CurC6xJN.js +0 -1
- package/dist/assets/c3-Cp2vGukQ.js +0 -1
- package/dist/assets/cadence-DHp076aM.js +0 -1
- package/dist/assets/cairo-CQCX_le0.js +0 -1
- package/dist/assets/capture-error-BxOQIcLY.js +0 -4
- package/dist/assets/catppuccin-frappe-CO1Obb6a.js +0 -1
- package/dist/assets/catppuccin-latte-BJrzEFTg.js +0 -1
- package/dist/assets/catppuccin-macchiato-DIsBU39Q.js +0 -1
- package/dist/assets/catppuccin-mocha-D7aSAErT.js +0 -1
- package/dist/assets/chevron-left-BpXPM4yj.js +0 -1
- package/dist/assets/chevron-right-VLCJ26DX.js +0 -1
- package/dist/assets/circle-check-CSXvLfEU.js +0 -1
- package/dist/assets/clarity-DmVThjx0.js +0 -1
- package/dist/assets/client-feature-flag-store-D6tVPQsU.js +0 -1
- package/dist/assets/clojure-D50j7YDB.js +0 -1
- package/dist/assets/cmake-DTUsloWC.js +0 -1
- package/dist/assets/cobol-Bk2j4Qib.js +0 -1
- package/dist/assets/code-ClSTGNCv.js +0 -1
- package/dist/assets/codeowners-BGoQ0QI5.js +0 -1
- package/dist/assets/codeql-zmUPLoVL.js +0 -1
- package/dist/assets/coffee-C-3Eo9LW.js +0 -1
- package/dist/assets/common-lisp-CIdqjFi5.js +0 -1
- package/dist/assets/community-page-BEOfCbCf.js +0 -1
- package/dist/assets/contacts-page-route-DpPRviaL.js +0 -1
- package/dist/assets/conversation-queries-BmEO0Fc3.js +0 -1
- package/dist/assets/coq-D_qWEzTo.js +0 -1
- package/dist/assets/cpp-CJat0DvY.js +0 -1
- package/dist/assets/crystal-BqtvtO3u.js +0 -1
- package/dist/assets/csharp-DPZA0mys.js +0 -1
- package/dist/assets/css-DChF48VH.js +0 -1
- package/dist/assets/csv-BqG7uatd.js +0 -1
- package/dist/assets/cue-DVrj2AhX.js +0 -1
- package/dist/assets/cypher-Db7YwVuF.js +0 -1
- package/dist/assets/d-DTzgBQRh.js +0 -1
- package/dist/assets/dark-plus-DxbO1e28.js +0 -1
- package/dist/assets/dart-B15jnVsS.js +0 -1
- package/dist/assets/dax-DSxTSlFL.js +0 -1
- package/dist/assets/debug-page-DGv3D_k5.js +0 -2
- package/dist/assets/desktop-gjsAMaAW.js +0 -1
- package/dist/assets/developer-page-qfz1DprB.js +0 -1
- package/dist/assets/device-settings-zXRxGDTH.js +0 -1
- package/dist/assets/devices-page-CQaIWKCU.js +0 -1
- package/dist/assets/diff-DxyDBL2w.js +0 -1
- package/dist/assets/dist-C1rQce1K.js +0 -153
- package/dist/assets/dist-C7PFRcgv.js +0 -45
- package/dist/assets/docker-DcapSxYW.js +0 -1
- package/dist/assets/document-viewer-page-DCIJeax2.js +0 -1
- package/dist/assets/dotenv-pum-ytkr.js +0 -1
- package/dist/assets/dracula-kaeur-Sr.js +0 -1
- package/dist/assets/dracula-soft-jU3NJJow.js +0 -1
- package/dist/assets/dream-maker-BfSsPHrv.js +0 -1
- package/dist/assets/earn-credits-modal-hDZ2B3fU.js +0 -1
- package/dist/assets/edge-BV6fRa4E.js +0 -1
- package/dist/assets/elixir-OB2TezpS.js +0 -1
- package/dist/assets/elm-JQucPHIY.js +0 -1
- package/dist/assets/emacs-lisp-MBokZgVO.js +0 -1
- package/dist/assets/emails-page-Bx6Gs9BA.js +0 -1
- package/dist/assets/erb-Dm43QUHY.js +0 -1
- package/dist/assets/erlang-BjHC8Fth.js +0 -1
- package/dist/assets/esm-CNJhwbfn.js +0 -2
- package/dist/assets/esm-CO15BYmi.js +0 -2
- package/dist/assets/esm-CQum5pRC.js +0 -2
- package/dist/assets/esm-DKexRi0t.js +0 -2
- package/dist/assets/everforest-dark-Qszq49lo.js +0 -1
- package/dist/assets/everforest-light-B8dpiC4q.js +0 -1
- package/dist/assets/feature-flag-catalog-BiYXpwz5.js +0 -1
- package/dist/assets/fennel-aJ3Zv5f3.js +0 -1
- package/dist/assets/file-markdown-Dfe7kMpk.js +0 -2
- package/dist/assets/fish-BVDdlPSM.js +0 -1
- package/dist/assets/fluent-yojRsW8M.js +0 -1
- package/dist/assets/fortran-fixed-form-C3-VJqJr.js +0 -1
- package/dist/assets/fortran-free-form-Cm9_D9HR.js +0 -1
- package/dist/assets/fsharp-B8O8aOP4.js +0 -1
- package/dist/assets/gdresource-CUAhKJit.js +0 -1
- package/dist/assets/gdscript-Dj36uRY4.js +0 -1
- package/dist/assets/gdshader-Wu0mEaz_.js +0 -1
- package/dist/assets/general-page-hzdHpzIF.js +0 -1
- package/dist/assets/genie-DHshP_gR.js +0 -1
- package/dist/assets/gherkin-D7b_L_CM.js +0 -1
- package/dist/assets/git-commit-BBqOOYhn.js +0 -1
- package/dist/assets/git-rebase-Cey46YEw.js +0 -1
- package/dist/assets/github-dark-CydULzvy.js +0 -1
- package/dist/assets/github-dark-default-B28I0mtM.js +0 -1
- package/dist/assets/github-dark-dimmed-BHQedfmI.js +0 -1
- package/dist/assets/github-dark-high-contrast-7NW1860O.js +0 -1
- package/dist/assets/github-light-Ckwc0Xue.js +0 -1
- package/dist/assets/github-light-default-D2TXmsDl.js +0 -1
- package/dist/assets/github-light-high-contrast-DtWvcT5G.js +0 -1
- package/dist/assets/gleam-D0kbL6Er.js +0 -1
- package/dist/assets/glimmer-js-B6y7m0WE.js +0 -1
- package/dist/assets/glimmer-ts-CadiznLG.js +0 -1
- package/dist/assets/glsl-BX0XpeT3.js +0 -1
- package/dist/assets/gn-C2RHtHbM.js +0 -1
- package/dist/assets/gnuplot-Bflua8IL.js +0 -1
- package/dist/assets/go-kQrtCInP.js +0 -1
- package/dist/assets/google-logo-BrjwsK0j.js +0 -1
- package/dist/assets/graphql-DoIN2W3t.js +0 -1
- package/dist/assets/groovy-Cx0QVvcX.js +0 -1
- package/dist/assets/gruvbox-dark-hard-45-al1LY.js +0 -1
- package/dist/assets/gruvbox-dark-medium-DBKDyiNV.js +0 -1
- package/dist/assets/gruvbox-dark-soft-DsJCmcUi.js +0 -1
- package/dist/assets/gruvbox-light-hard-DoNtCtXu.js +0 -1
- package/dist/assets/gruvbox-light-medium-B7Ru3-7b.js +0 -1
- package/dist/assets/gruvbox-light-soft-DqUsq0wb.js +0 -1
- package/dist/assets/hack-Ci58pPV7.js +0 -1
- package/dist/assets/haml-DmEHCdSk.js +0 -1
- package/dist/assets/handlebars-DZ7Q3UXT.js +0 -1
- package/dist/assets/haskell-BMIf5hSg.js +0 -1
- package/dist/assets/hatching-screen-Bd30Ia_7.js +0 -1
- package/dist/assets/haxe-Dd6NKRiM.js +0 -1
- package/dist/assets/hcl-BbXBAkHQ.js +0 -1
- package/dist/assets/hjson-HZFryblC.js +0 -1
- package/dist/assets/hlsl-B_z-4mGb.js +0 -1
- package/dist/assets/home-page-route-DRougLlo.js +0 -1
- package/dist/assets/horizon-DTjGYAGz.js +0 -1
- package/dist/assets/horizon-bright-D-5IXcVw.js +0 -1
- package/dist/assets/hosting-screen-DEZKXtDQ.js +0 -1
- package/dist/assets/houston-DYxRzDAO.js +0 -1
- package/dist/assets/html-CGrQAUxW.js +0 -1
- package/dist/assets/html-derivative-OvdDTNui.js +0 -1
- package/dist/assets/http-B3dPFFFp.js +0 -1
- package/dist/assets/hurl-DOe6gFKZ.js +0 -1
- package/dist/assets/hxml-Dgdtv5Pm.js +0 -1
- package/dist/assets/hy-CZz7-yZN.js +0 -1
- package/dist/assets/identity-page-route-Bf4m-KYt.js +0 -1
- package/dist/assets/imba-D0H9CBRW.js +0 -1
- package/dist/assets/index-BQE97htW.js +0 -132
- package/dist/assets/index-Cqs3Oe7d.css +0 -2
- package/dist/assets/ini-Hq-jZViS.js +0 -1
- package/dist/assets/install-BE_ugEQz.js +0 -1
- package/dist/assets/integrations-page-CL5g5Fy2.js +0 -1
- package/dist/assets/java-DNmSvEO2.js +0 -1
- package/dist/assets/javascript-9U3VX7fx.js +0 -1
- package/dist/assets/jinja-DIE_Jflk.js +0 -1
- package/dist/assets/jison-DMqdxd5c.js +0 -1
- package/dist/assets/json-BJo90vyk.js +0 -1
- package/dist/assets/json5-B5WsutuM.js +0 -1
- package/dist/assets/jsonc-COIMgM31.js +0 -1
- package/dist/assets/jsonl-Cg8iEw1M.js +0 -1
- package/dist/assets/jsonnet-BJ6vIOpZ.js +0 -1
- package/dist/assets/jssm-BMmePONy.js +0 -1
- package/dist/assets/jsx-CprSFcDX.js +0 -1
- package/dist/assets/julia-CIa9Gf6b.js +0 -1
- package/dist/assets/just-CJw06-bY.js +0 -1
- package/dist/assets/kanagawa-dragon-DQ7YDLVU.js +0 -1
- package/dist/assets/kanagawa-lotus-CATrdpUN.js +0 -1
- package/dist/assets/kanagawa-wave-CKUiHHXA.js +0 -1
- package/dist/assets/kdl-DzBG_i-5.js +0 -1
- package/dist/assets/kotlin-DIZwIusw.js +0 -1
- package/dist/assets/kusto-CHN2SbpC.js +0 -1
- package/dist/assets/laserwave-CPJ25zFq.js +0 -1
- package/dist/assets/latex-IjGIU0T5.js +0 -1
- package/dist/assets/lean-DO7qDxEX.js +0 -1
- package/dist/assets/less-BZZ-PLfd.js +0 -1
- package/dist/assets/lib-BGfiLWu8.js +0 -1
- package/dist/assets/lib-CxFJAvX9.js +0 -29
- package/dist/assets/library-detail-page-Ci19BDrU.js +0 -1
- package/dist/assets/library-page-2pAO8s9R.js +0 -1
- package/dist/assets/light-plus-Dc3MFjwj.js +0 -1
- package/dist/assets/liquid-rqA9SJHF.js +0 -1
- package/dist/assets/llvm-8lvmBZ1y.js +0 -1
- package/dist/assets/loader-circle-DkHNr7Ya.js +0 -1
- package/dist/assets/local-mode-Bo8nh80B.js +0 -1
- package/dist/assets/log-iTn25_BO.js +0 -1
- package/dist/assets/login-page-CAwPG3zL.js +0 -1
- package/dist/assets/logo-BcHhJD22.js +0 -1
- package/dist/assets/logout-page-K7GPUkhR.js +0 -1
- package/dist/assets/lua-DbcUyphn.js +0 -1
- package/dist/assets/luau-DQM7PZq1.js +0 -1
- package/dist/assets/make-BG0ZJ6Bw.js +0 -1
- package/dist/assets/markdown-C_c6h3zo.js +0 -1
- package/dist/assets/marko-BoqFz5OD.js +0 -1
- package/dist/assets/material-theme-D3LBDIWR.js +0 -1
- package/dist/assets/material-theme-darker-CQaa_g54.js +0 -1
- package/dist/assets/material-theme-lighter-BvXIGcAz.js +0 -1
- package/dist/assets/material-theme-ocean-BfNV9t9V.js +0 -1
- package/dist/assets/material-theme-palenight-BXCNgaL3.js +0 -1
- package/dist/assets/matlab-DeaiNlNF.js +0 -1
- package/dist/assets/mdc-D0ahgoAK.js +0 -1
- package/dist/assets/mdx-ST4v-vi3.js +0 -1
- package/dist/assets/menu-BQSZbhtw.js +0 -1
- package/dist/assets/mermaid-CUmM2hbn.js +0 -1
- package/dist/assets/min-dark-D57-ylK-.js +0 -1
- package/dist/assets/min-light-B88050ZK.js +0 -1
- package/dist/assets/mipsasm-Cs1MOJEB.js +0 -1
- package/dist/assets/mojo-BVOdZw7n.js +0 -1
- package/dist/assets/monokai-CGSy3Ma6.js +0 -1
- package/dist/assets/moonbit-BNTzlXOn.js +0 -1
- package/dist/assets/move-CLcYOhLW.js +0 -1
- package/dist/assets/narrat-CGQN4gQw.js +0 -1
- package/dist/assets/nextflow-Ce0n9Q8q.js +0 -1
- package/dist/assets/nextflow-groovy-Dnp3QiLn.js +0 -1
- package/dist/assets/nginx-BqXGk0FA.js +0 -1
- package/dist/assets/night-owl-DkBuNuxI.js +0 -1
- package/dist/assets/night-owl-light-CY1Epm7d.js +0 -1
- package/dist/assets/nim-tDzu_GTm.js +0 -1
- package/dist/assets/nix-DJ4B0RpD.js +0 -1
- package/dist/assets/nord-TkEe7NZz.js +0 -1
- package/dist/assets/notifications-page-sxAXn9yD.js +0 -1
- package/dist/assets/nushell-DTsa-DJU.js +0 -1
- package/dist/assets/objective-c-BcTYeV3y.js +0 -1
- package/dist/assets/objective-cpp-shqpsJcg.js +0 -1
- package/dist/assets/ocaml-CJ2GiCkj.js +0 -1
- package/dist/assets/odin-D0zd-gEH.js +0 -1
- package/dist/assets/onboarding-layout-CaCFWkQh.js +0 -1
- package/dist/assets/one-dark-pro-BFuflvbQ.js +0 -1
- package/dist/assets/one-light-C2M4Ga1d.js +0 -1
- package/dist/assets/openscad-M8wBXspJ.js +0 -1
- package/dist/assets/pairing-page-h7p877l-.js +0 -1
- package/dist/assets/panel-item-BkteAFRC.js +0 -1
- package/dist/assets/pascal-B5I86tsE.js +0 -1
- package/dist/assets/perl-1zAO6R_l.js +0 -1
- package/dist/assets/php-BiEHZbtR.js +0 -1
- package/dist/assets/pkl-BhDTZ1N8.js +0 -1
- package/dist/assets/plastic-BoMY19sJ.js +0 -1
- package/dist/assets/plsql-CDtFB7RS.js +0 -1
- package/dist/assets/plugin-detail-page-D73NFF28.js +0 -1
- package/dist/assets/plugins-page-D0F0PpuI.js +0 -1
- package/dist/assets/po-CVb8SYlg.js +0 -1
- package/dist/assets/poimandres-4UDxXvNA.js +0 -1
- package/dist/assets/polar-C1oaTa9E.js +0 -1
- package/dist/assets/postcss-BuB05qbO.js +0 -1
- package/dist/assets/powerquery-cgioiq22.js +0 -1
- package/dist/assets/powershell-CWXGVwDc.js +0 -1
- package/dist/assets/prechat-route-Dbf2jEmp.js +0 -1
- package/dist/assets/prefs-BJLsPNW_.js +0 -1
- package/dist/assets/prisma-DlHB82Z6.js +0 -1
- package/dist/assets/privacy-page-B91A8UUv.js +0 -1
- package/dist/assets/privacy-screen-DDX7Fs7k.js +0 -1
- package/dist/assets/prolog-Dt0Y_lbJ.js +0 -1
- package/dist/assets/proto-3Bdz34KE.js +0 -1
- package/dist/assets/proxy-Cd3VuNoq.js +0 -1
- package/dist/assets/pug-DUQof6rd.js +0 -1
- package/dist/assets/puppet-BslS732_.js +0 -1
- package/dist/assets/purescript-By6DvM4T.js +0 -1
- package/dist/assets/python-BnqlragU.js +0 -1
- package/dist/assets/qml-CGkhukx5.js +0 -1
- package/dist/assets/qmldir-CUDcPERi.js +0 -1
- package/dist/assets/qss-BmmBNONp.js +0 -1
- package/dist/assets/r-CUmTiDHR.js +0 -1
- package/dist/assets/racket-DtjvEIuJ.js +0 -1
- package/dist/assets/raku-B4gJ9vRP.js +0 -1
- package/dist/assets/razor-gAsPj4GS.js +0 -1
- package/dist/assets/react-query.gen-CTMlijN0.js +0 -1
- package/dist/assets/react-query.gen-DQTjtCEE.js +0 -1
- package/dist/assets/red-BeDKVfFU.js +0 -1
- package/dist/assets/reg-DFxdTupP.js +0 -1
- package/dist/assets/regexp-D13s7f6f.js +0 -1
- package/dist/assets/rel-NXN-6M6P.js +0 -1
- package/dist/assets/remote-gateway-session-Bs00EKBs.js +0 -1
- package/dist/assets/review-terms-screen-C-kJmgps.js +0 -1
- package/dist/assets/riscv-D-rz2RP1.js +0 -1
- package/dist/assets/ron-B7QveNIW.js +0 -1
- package/dist/assets/rose-pine-C1kpuNwT.js +0 -1
- package/dist/assets/rose-pine-dawn-B5MnRqO4.js +0 -1
- package/dist/assets/rose-pine-moon-ChZ8PyZr.js +0 -1
- package/dist/assets/rosmsg-BXBSikqW.js +0 -1
- package/dist/assets/routes-DB8A8L8M.js +0 -1
- package/dist/assets/rst-DKtwfZn1.js +0 -1
- package/dist/assets/ruby-DwigaBT5.js +0 -1
- package/dist/assets/rust-D9Gh5zMK.js +0 -1
- package/dist/assets/sas-Col9Mi_S.js +0 -1
- package/dist/assets/sass-C4OSAgy4.js +0 -1
- package/dist/assets/scala-CDoa-DgD.js +0 -1
- package/dist/assets/schedules-Cyj1kxHv.js +0 -1
- package/dist/assets/scheme-Bk_uVPEd.js +0 -1
- package/dist/assets/scss-BQG_h4A0.js +0 -1
- package/dist/assets/sdbl-DTkJ9VoT.js +0 -1
- package/dist/assets/sdk.gen-Cc6RAEr7.js +0 -6
- package/dist/assets/sdk.gen-x-qpuaG-.js +0 -1
- package/dist/assets/select-assistant-screen-PLRPW4sS.js +0 -1
- package/dist/assets/settings-layout-Br8w26ON.js +0 -1
- package/dist/assets/shaderlab-DdlsUSX2.js +0 -1
- package/dist/assets/share-feedback-modal-D1lWsVtD.js +0 -1
- package/dist/assets/shellscript-Dy1_pXFS.js +0 -1
- package/dist/assets/shellsession-vfzQ1mDP.js +0 -1
- package/dist/assets/sidebar-tree-DR_MAZ2a.js +0 -1
- package/dist/assets/signup-page-CVhT38z2.js +0 -1
- package/dist/assets/skills-page-3Y1C1W-Q.js +0 -1
- package/dist/assets/slack-dark-6leyXmpo.js +0 -1
- package/dist/assets/slack-ochin-D4lMnbGj.js +0 -1
- package/dist/assets/smalltalk-DD36SM_u.js +0 -1
- package/dist/assets/snazzy-light-bnV9Ljo-.js +0 -1
- package/dist/assets/solarized-dark-BKu33QL5.js +0 -1
- package/dist/assets/solarized-light-D3Ztor-W.js +0 -1
- package/dist/assets/solidity-BEtjX6KX.js +0 -1
- package/dist/assets/sounds-page-DrLahW2v.js +0 -1
- package/dist/assets/soy-D88tZlUq.js +0 -1
- package/dist/assets/sparql-CoL1_ZRS.js +0 -1
- package/dist/assets/splunk-Bfkbb1Oi.js +0 -1
- package/dist/assets/sql-D8wOpkwd.js +0 -1
- package/dist/assets/ssh-config-CsGMoSbp.js +0 -1
- package/dist/assets/stata-CWe_kfF2.js +0 -1
- package/dist/assets/stylus-6pKKhsoJ.js +0 -1
- package/dist/assets/subagent-detail-panel-BN2hcYCC.js +0 -4
- package/dist/assets/surrealql-BKM1bgDV.js +0 -1
- package/dist/assets/svelte-r7NjAx4N.js +0 -1
- package/dist/assets/swift-BkOeByzg.js +0 -1
- package/dist/assets/synthwave-84-DSZAz7dX.js +0 -1
- package/dist/assets/system-events-page-BaDA17Oa.js +0 -1
- package/dist/assets/system-verilog-CVyGNf3U.js +0 -1
- package/dist/assets/systemd-CQl5uhbn.js +0 -1
- package/dist/assets/talonscript-eoRxA5Ok.js +0 -1
- package/dist/assets/tasl-_YggCie7.js +0 -1
- package/dist/assets/tcl-B5y1m2vT.js +0 -1
- package/dist/assets/templ-MfcVHJUO.js +0 -1
- package/dist/assets/terraform-B7hrP3h2.js +0 -1
- package/dist/assets/tex-AQi8XY01.js +0 -1
- package/dist/assets/tokyo-night-CLJY2LDi.js +0 -1
- package/dist/assets/toml-Cs-cPRLv.js +0 -1
- package/dist/assets/tool-detail-panel-CikBGOnz.js +0 -1
- package/dist/assets/trace-page-D61L9P5u.js +0 -1
- package/dist/assets/ts-tags-D3kzvhv6.js +0 -1
- package/dist/assets/tsv-ZzeIUMNN.js +0 -1
- package/dist/assets/tsx-BYD88th_.js +0 -1
- package/dist/assets/turtle-CPvNi5WC.js +0 -1
- package/dist/assets/twig-Db3lotmH.js +0 -1
- package/dist/assets/typescript-DJJkbsZi.js +0 -1
- package/dist/assets/typespec-CMdqLPgd.js +0 -1
- package/dist/assets/typst-DsWXMrgl.js +0 -1
- package/dist/assets/upgrade-success-page-Ctx7Pgx9.js +0 -1
- package/dist/assets/usage-page-DJt6INPR.js +0 -1
- package/dist/assets/use-is-org-ready-ZaDAhQkA.js +0 -1
- package/dist/assets/use-oauth-complete-deep-link-listener-DLqTZY6C.js +0 -1
- package/dist/assets/use-plugin-drift-CaIvzeDn.js +0 -1
- package/dist/assets/v-CtLCtB_t.js +0 -1
- package/dist/assets/vala-BbUVMZyL.js +0 -1
- package/dist/assets/vb-vj4-Ez0k.js +0 -1
- package/dist/assets/verilog-Doq8Q-jI.js +0 -1
- package/dist/assets/vesper-B8LW9vrZ.js +0 -1
- package/dist/assets/vhdl-DRtkTOrI.js +0 -1
- package/dist/assets/viewer-store-C-VRTj0q.js +0 -1
- package/dist/assets/viml-DYh9Vv9J.js +0 -1
- package/dist/assets/vitesse-black-Dm5nxZKZ.js +0 -1
- package/dist/assets/vitesse-dark-Dlco7gYk.js +0 -1
- package/dist/assets/vitesse-light-BkxjEsr0.js +0 -1
- package/dist/assets/vue-DJL0x4aQ.js +0 -1
- package/dist/assets/vue-html-DK2eUWWJ.js +0 -1
- package/dist/assets/vue-vine-CDIGDSv6.js +0 -1
- package/dist/assets/vyper-D3LCCi2j.js +0 -1
- package/dist/assets/wasm-DMjikHsi.js +0 -1
- package/dist/assets/wasm-DV6-PWqw.js +0 -1
- package/dist/assets/welcome-screen-ea0-Xr7b.js +0 -1
- package/dist/assets/wenyan-BxycIgSG.js +0 -1
- package/dist/assets/wgsl-cNpMN_q9.js +0 -1
- package/dist/assets/wikitext-xM7rCJnw.js +0 -1
- package/dist/assets/wit-BhbrV2hd.js +0 -1
- package/dist/assets/wolfram-DuxCpd52.js +0 -1
- package/dist/assets/workspace-page-DUCQ1nQd.js +0 -1
- package/dist/assets/x-BMQWZd8e.js +0 -1
- package/dist/assets/xml-Dt5XXe4C.js +0 -1
- package/dist/assets/xsl-DWFkZJX5.js +0 -1
- package/dist/assets/yaml-h_MJYnCO.js +0 -1
- package/dist/assets/zenscript-DV1Wsq0u.js +0 -1
- package/dist/assets/zig-CSTXgA3l.js +0 -1
- package/dist/assets/zwitch-Cxnntp5a.js +0 -1
- /package/dist/assets/{api-errors-XDa-LFBi.js → api-errors-CwAGZ-xJ.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-Cu5DZgIL.js → avatar-bundled-components-UfXe4Pfu.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-fjJyBMpk.js → avatar-svg-compositor-Bbqkq_FE.js} +0 -0
- /package/dist/assets/{client.gen-DI-JLhj6.js → client.gen-Cuv6iN0E.js} +0 -0
- /package/dist/assets/{create-selectors-o9n6Fl_g.js → create-selectors-ClYkcuKo.js} +0 -0
- /package/dist/assets/{createLucideIcon-BjZY5k1w.js → createLucideIcon-DIlBzeWM.js} +0 -0
- /package/dist/assets/{definitions-VGpqtSQy.js → definitions-BqAtozTh.js} +0 -0
- /package/dist/assets/{dist-CIRSrV5q.js → dist-nMnxT9pm.js} +0 -0
- /package/dist/assets/{edit-chat-session-Cvyedviq.js → edit-chat-session-B1tanC3Z.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-_G4lAoH7.js → emoji-catalog-data-B6Q5tPZJ.js} +0 -0
- /package/dist/assets/{event-bus-DPa7g-Z7.js → event-bus-DntJgYuJ.js} +0 -0
- /package/dist/assets/{format-DtXueXvf.js → format-B12w_G9l.js} +0 -0
- /package/dist/assets/{format-date-CCl_Cceb.js → format-date-B6hTwbOM.js} +0 -0
- /package/dist/assets/{format-file-size-HfQP5weH.js → format-file-size-DxhjMSDx.js} +0 -0
- /package/dist/assets/{impersonate-version-flag-Df80CPXS.js → impersonate-version-flag-ZdQOgpO3.js} +0 -0
- /package/dist/assets/{is-electron-CavSPgmY.js → is-electron-BuSDabCt.js} +0 -0
- /package/dist/assets/{llm-dimension-oci2TkfR.js → llm-dimension-Cs4q1Ovq.js} +0 -0
- /package/dist/assets/{misc-C_E02qnv.js → misc-Bo3spjOe.js} +0 -0
- /package/dist/assets/{pdf-B1h5VcnB.js → pdf-CMJp1GoR.js} +0 -0
- /package/dist/assets/{public-asset-oHj-TY3D.js → public-asset-Dp-i4xhW.js} +0 -0
- /package/dist/assets/{semver-DRocthZi.js → semver-DmouQEQK.js} +0 -0
- /package/dist/assets/{shortcut-keys-SeKJj-8k.js → shortcut-keys-WNQqv5_X.js} +0 -0
- /package/dist/assets/{toast-ouIW2mYq.js → toast-DLWkiWW6.js} +0 -0
- /package/dist/assets/{usage-window-WuitofiN.js → usage-window-BO_9IIjX.js} +0 -0
- /package/dist/assets/{use-is-mobile-BE6bh_HI.js → use-is-mobile-CvT53Qs1.js} +0 -0
- /package/dist/assets/{xterm-h58f7_nb.js → xterm-BJ2bbKsF.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-D-DRi2x9.js → xterm-addon-fit-BJTajn72.js} +0 -0
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/native-file-B9T0QAPN.js","assets/chunk-jRWAZmH_.js","assets/preload-helper-BewR0kVT.js","assets/dist-CIRSrV5q.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{o as e,t}from"./chunk-jRWAZmH_.js";import{t as n}from"./capture-error-BxOQIcLY.js";import{t as r}from"./react-DJZBPgpf.js";import{t as i}from"./button-D7s2Q_uG.js";import{t as a}from"./preload-helper-BewR0kVT.js";import{d as o,h as s,r as c}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as l}from"./QueryClientProvider-DKhXIxGb.js";import{t as u}from"./useQuery-B45lW1Kk.js";import{t as d}from"./useMutation-Lj4VunQV.js";import{t as f}from"./jsx-runtime-CVSDxk6A.js";import{$ as p,B as m,Ct as h,G as g,H as _,J as v,K as y,O as b,Q as x,R as S,St as C,U as w,V as T,W as E,X as D,Y as O,Z as k,bt as A,c as j,et as M,ht as N,it as P,nt as ee,ot as F,q as I,r as L,rt as te,st as ne,tt as re,y as ie,z as ae}from"./react-query.gen-DQTjtCEE.js";import{t as R}from"./typography-BscuIPxA.js";import{t as z}from"./card-BibIM9x3.js";import{t as oe}from"./dropdown-SfZ7NXPp.js";import{t as se}from"./confirm-dialog-D72Q4sYh.js";import{t as B}from"./notice-jdXknxvS.js";import{t as V}from"./tag-BadGF3FB.js";import{t as H}from"./input-CwdmSRlD.js";import{t as ce}from"./toggle-_vZlLDBV.js";import{n as U,t as le}from"./stat-square-B5tBfA4w.js";import{t as W}from"./modal-CzEvQDM4.js";import{n as G}from"./toast-ouIW2mYq.js";import{t as ue}from"./createLucideIcon-BjZY5k1w.js";import{t as de}from"./circle-alert-mVsAUggI.js";import{t as fe}from"./circle-check-CSXvLfEU.js";import{t as pe}from"./cpu-BcJecU1F.js";import{t as me}from"./credit-card-0RHpgtQL.js";import{n as he,t as ge}from"./domain-field-BB2BsmpU.js";import{t as _e}from"./dollar-sign-DMaImaTJ.js";import{t as ve}from"./external-link-DSvLY0NE.js";import{t as ye}from"./hard-drive-CTNBsAWU.js";import{t as be}from"./info-cdSVfJsv.js";import{t as K}from"./loader-circle-DkHNr7Ya.js";import{a as xe,c as Se,i as Ce,n as we,r as Te,t as Ee}from"./resize-errors-EgUeogec.js";import{t as De}from"./triangle-alert-Bq1nYBA_.js";import{at as Oe,it as ke}from"./sdk.gen-x-qpuaG-.js";import{a as Ae}from"./routes-DB8A8L8M.js";import{n as je}from"./use-is-mobile-BE6bh_HI.js";import{t as Me}from"./effective-timezone-DD2wGZ9O.js";import{At as Ne,Bi as Pe,Fi as Fe,Mt as Ie,Vi as Le,Yr as Re,_i as ze,bi as Be,dt as Ve,ft as He,jt as Ue,kt as We,mr as Ge,ui as Ke,ur as qe,v as Je,yi as Ye}from"./index-BQE97htW.js";import{t as Xe}from"./add-credits-modal-DpiB3QLy.js";import{t as Ze}from"./format-date-CCl_Cceb.js";import{a as Qe,n as $e,t as et}from"./llm-dimension-oci2TkfR.js";import{r as tt,t as nt}from"./usage-window-WuitofiN.js";import{t as rt}from"./environment-store-GJl9GOSU.js";var it=ue(`hourglass`,[[`path`,{d:`M5 22h14`,key:`ehvnwv`}],[`path`,{d:`M5 2h14`,key:`pdyrp9`}],[`path`,{d:`M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22`,key:`1d314k`}],[`path`,{d:`M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2`,key:`1vvvr6`}]]),at=ue(`party-popper`,[[`path`,{d:`M5.8 11.3 2 22l10.7-3.79`,key:`gwxi1d`}],[`path`,{d:`M4 3h.01`,key:`1vcuye`}],[`path`,{d:`M22 8h.01`,key:`1mrtc2`}],[`path`,{d:`M15 2h.01`,key:`1cjtqr`}],[`path`,{d:`M22 20h.01`,key:`1mrys2`}],[`path`,{d:`m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10`,key:`hbicv8`}],[`path`,{d:`m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17`,key:`1i94pl`}],[`path`,{d:`m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7`,key:`1cofks`}],[`path`,{d:`M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z`,key:`4kbmks`}]]),ot=ue(`target`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]),st=ue(`tree-palm`,[[`path`,{d:`M13 8c0-2.76-2.46-5-5.5-5S2 5.24 2 8h2l1-1 1 1h4`,key:`foxbe7`}],[`path`,{d:`M13 7.14A5.82 5.82 0 0 1 16.5 6c3.04 0 5.5 2.24 5.5 5h-3l-1-1-1 1h-3`,key:`18arnh`}],[`path`,{d:`M5.89 9.71c-2.15 2.15-2.3 5.47-.35 7.43l4.24-4.25.7-.7.71-.71 2.12-2.12c-1.95-1.96-5.27-1.8-7.42.35`,key:`ywahnh`}],[`path`,{d:`M11 15.5c.5 2.5-.17 4.5-1 6.5h4c2-5.5-.5-12-1-14`,key:`ft0feo`}]]),q=e(r(),1),J=f();function ct({onBack:e}){let t=o(),{data:n}=u(L()),r=n?.name||`your assistant`;return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 text-center`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:{background:`radial-gradient(ellipse 60% 50% at 50% 38%, color-mix(in oklab, var(--system-positive-strong) 14%, transparent), transparent)`},"aria-hidden":`true`}),(0,J.jsxs)(`div`,{className:`relative mb-5 flex items-center justify-center`,style:{animation:`welcome-reveal 600ms ease-out both`},children:[(0,J.jsx)(`div`,{className:`absolute h-24 w-24 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 18%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-16 w-16 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 12%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite 0.5s`},"aria-hidden":`true`}),(0,J.jsx)(at,{className:`relative h-8 w-8 text-[var(--system-positive-strong)]`,strokeWidth:1.5,"aria-hidden":`true`})]}),(0,J.jsx)(`h1`,{className:`relative mb-2 text-[var(--content-emphasised)]`,style:{fontFamily:`var(--font-serif)`,fontSize:`28px`,lineHeight:1,fontWeight:400,animation:`welcome-reveal 600ms ease-out 150ms both`},children:`You're all set`}),(0,J.jsx)(`p`,{className:`relative mb-6 max-w-[320px] text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`welcome-reveal 600ms ease-out 300ms both`},children:`Your assistant just got a serious upgrade.`}),(0,J.jsx)(`div`,{style:{animation:`welcome-reveal 600ms ease-out 450ms both`},children:(0,J.jsxs)(i,{variant:`primary`,"data-testid":`onboarding-complete-return`,onClick:()=>t(Ae.assistant,{replace:!0}),children:[`Return to `,r]})}),(0,J.jsx)(`div`,{className:`absolute bottom-4 left-4`,children:(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-complete-back`,onClick:e,leftIcon:(0,J.jsx)(Le,{className:`h-4 w-4`}),children:`Back`})})]})}function lt({current:e,total:t=2}){return(0,J.jsx)(`div`,{className:`flex items-center justify-center gap-1.5`,children:Array.from({length:t},(t,n)=>(0,J.jsx)(`div`,{className:`h-1.5 rounded-full transition-all duration-300`,style:{width:n===e?20:6,backgroundColor:n<=e?`var(--content-default)`:`var(--border-element)`}},n))})}function ut({icon:e,tone:t=`positive`}){let n=t===`positive`?`--system-positive-strong`:t===`warning`?`--system-mid-strong`:`--system-negative-strong`;return(0,J.jsx)(`span`,{className:`flex h-11 w-11 items-center justify-center rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(${n}) 12%, transparent)`},children:(0,J.jsx)(e,{className:`h-5 w-5`,style:{color:`var(${n})`},"aria-hidden":`true`})})}var dt=1e3,ft=1e4;function pt(e){return Ce[e]??Ce.medium}var mt=[`machine_size`,`subdomain`,`non_field_errors`],ht={subdomain_taken:`That subdomain is already taken. Try another.`,assistant_already_has_domain:`Your assistant already has a custom domain.`,no_assistant_to_attach_domain:`We couldn't find an assistant to attach this domain to.`,exceeds_machine_tier:`That machine size isn't available on your plan.`};function gt(e,t){if(e&&typeof e==`object`){let t=e;if(typeof t.error==`string`){let e=ht[t.error];if(e)return e}for(let e of mt){let n=t[e];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(typeof t.detail==`string`)return t.detail}return t}function _t({onBack:e,onExit:t}){let n=l(),r=rt.use.emailRootDomain(),{data:a}=u(L()),o=a?.id,{data:s}=u({...j({path:{assistant_id:o??``}}),enabled:!!o}),c=s?.results?.[0],[f,p]=(0,q.useState)(``),[m,h]=(0,q.useState)(`hi`),[g,_]=(0,q.useState)(!1);(0,q.useEffect)(()=>{if(!g){if(c){p(c.subdomain),_(!0);return}!a?.handle||f||(p(a.handle),_(!0))}},[a?.handle,c,g,f]);let[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(!1),S=d(k()),C=!!c||b,w=S.isPending||b;return(0,q.useEffect)(()=>{if(!b)return;let e=setTimeout(t,800);return()=>clearTimeout(e)},[b,t]),(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(W.Body,{className:`min-h-[320px] space-y-5 pt-10 pb-4`,style:{animation:`onboarding-step-in 350ms ease-out`},children:[(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-3 pb-2 text-center`,children:[(0,J.jsx)(ut,{icon:Re}),(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(R,{variant:`title-small`,as:`h1`,children:`Assistant email`}),(0,J.jsx)(R,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Set up an email address for your assistant.`})]})]}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(R,{variant:`body-small-default`,as:`label`,className:`text-[var(--content-secondary)]`,children:`Email address`}),(0,J.jsx)(ge,{subdomain:f,autoFocus:!0,onSubdomainChange:e=>{p(e),v&&y(null)},domainSuffix:r,disabled:w,error:v,locked:C,lockedMessage:`This domain has been set and cannot be changed.`,prefix:(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`input`,{value:m,onChange:e=>h(e.target.value.toLowerCase().trim()),disabled:w||C,readOnly:C,placeholder:`hi`,"aria-label":`Email username`,size:Math.max(m.length,2),className:`h-full w-0 min-w-[2ch] flex-none bg-transparent pl-3 pr-1.5 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`,style:{width:`${Math.max(m.length,2)+1.5}ch`}}),(0,J.jsx)(`span`,{className:`shrink-0 font-mono text-[var(--content-secondary)]`,children:`@`})]})})]}),!C&&(0,J.jsxs)(B,{tone:`info`,children:[(0,J.jsx)(`span`,{className:`font-mono`,children:f||`<subdomain>`}),` will also become your assistant's public handle. You won't be able to change it once set.`]}),b?(0,J.jsx)(B,{tone:`success`,children:`Domain set — redirecting…`}):null]}),(0,J.jsxs)(W.Footer,{className:`relative items-center justify-between`,children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-domain-back`,disabled:w,onClick:e,leftIcon:(0,J.jsx)(Le,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 flex justify-center`,children:(0,J.jsx)(lt,{current:0})}),(0,J.jsx)(`div`,{className:`flex items-center gap-2`,children:C?(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-domain-continue`,onClick:t,children:`Continue`}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-domain-skip`,disabled:w,onClick:()=>{w||S.mutate({body:{skipped:!0}},{onSuccess:t,onError:()=>t()})},children:`Do later`}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-domain-set`,disabled:!f||w,onClick:()=>{w||!f||S.mutate({body:{subdomain:f,...m?{email_username:m}:{}}},{onSuccess:()=>{y(null),x(!0),n.invalidateQueries({queryKey:ie()})},onError:e=>{y(gt(e,`Couldn't register that subdomain. Try a different one.`))}})},children:`Set domain`})]})})]})]})}function vt({onGoToBilling:e}){return(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(ut,{icon:de,tone:`negative`}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(R,{variant:`title-small`,as:`h1`,children:`Couldn't reach billing`}),(0,J.jsx)(R,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`We hit a problem checking your subscription. Your upgrade may still be processing — return to billing to refresh.`})]}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-go-to-billing`,onClick:e,children:`Go to billing`})]})}function yt({message:e,onRetry:t,onGoToBilling:n}){return(0,J.jsxs)(`div`,{className:`flex min-h-[280px] flex-col items-center justify-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsx)(ut,{icon:de,tone:`warning`}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(R,{variant:`title-small`,as:`h1`,children:`Taking longer than expected`}),(0,J.jsx)(R,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:e})]}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2 pt-2`,children:[(0,J.jsx)(i,{variant:`outlined`,"data-testid":`onboarding-go-to-billing`,onClick:n,children:`Go to billing`}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-retry`,onClick:t,children:`Try again`})]})]})}function bt({title:e,body:t}){return(0,J.jsxs)(`div`,{className:`flex min-h-[280px] flex-col items-center justify-center gap-4 px-6 py-10 text-center`,children:[(0,J.jsxs)(`div`,{className:`relative flex h-11 w-11 items-center justify-center`,children:[(0,J.jsx)(`div`,{className:`absolute h-14 w-14 rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`,animation:`onboarding-glow 2.4s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-9 w-9 rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 8%, transparent)`,animation:`onboarding-glow 2.4s ease-in-out infinite 0.4s`},"aria-hidden":`true`}),(0,J.jsx)(K,{className:`relative h-5 w-5 animate-spin text-[var(--system-positive-strong)]`,"aria-hidden":`true`})]}),(0,J.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,J.jsx)(R,{variant:`title-small`,as:`h1`,children:e}),(0,J.jsx)(R,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:t})]})]})}function xt({icon:e,label:t,from:n,fromDetail:r,to:i,toDetail:a}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`},children:(0,J.jsx)(e,{className:`h-4 w-4 text-[var(--system-positive-strong)]`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)] line-through`,children:n}),r&&(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)] line-through`,children:r})]}),(0,J.jsx)(Pe,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`}),(0,J.jsxs)(`div`,{className:`flex flex-col`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:i}),a&&(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:a})]})]})]})]})}function St({storageGib:e,maxTier:t,onBack:n,onAdvance:r,dotIndex:a,dotTotal:o}){let{data:s}=u(L()),c=s?.machine_size||`small`,l=s?.provisioned_storage_gib??null,f=pt(t),p=f.length>0?f[f.length-1]:c,m=p!==c,h=e!=null&&(l==null||l<e),[g,_]=(0,q.useState)(null),v=d(b());return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(W.Body,{className:`min-h-[320px] space-y-5 pt-10 pb-4`,style:{animation:`onboarding-step-in 350ms ease-out`},children:[(0,J.jsxs)(`div`,{className:`flex flex-col items-center gap-3 pb-2 text-center`,children:[(0,J.jsx)(ut,{icon:pe}),(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(R,{variant:`title-small`,as:`h1`,children:`Your assistant's new resources`}),(0,J.jsx)(R,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Your assistant will go offline briefly while it resizes.`})]})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[m&&(0,J.jsx)(xt,{icon:pe,label:`Machine`,from:Te[c],fromDetail:we[c],to:Te[p],toDetail:we[p]}),h&&(0,J.jsx)(xt,{icon:ye,label:`Storage`,from:l==null?`—`:`${l} GiB`,to:`${e} GiB`}),!m&&!h&&(0,J.jsx)(B,{tone:`neutral`,children:`Your assistant is already running at the maximum size for your plan.`})]}),g?(0,J.jsx)(B,{tone:`error`,children:g}):null]}),(0,J.jsxs)(W.Footer,{className:`relative items-center justify-between`,children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-setup-back`,disabled:v.isPending,onClick:n,leftIcon:(0,J.jsx)(Le,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 flex justify-center`,children:(0,J.jsx)(lt,{current:a,total:o})}),(0,J.jsxs)(`div`,{className:`flex gap-2`,children:[(0,J.jsx)(i,{variant:`ghost`,"data-testid":`onboarding-setup-skip`,disabled:v.isPending,onClick:r,children:`Do later`}),(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-setup-continue`,disabled:v.isPending||!s?.id,onClick:()=>{v.isPending||!s?.id||v.mutate({path:{id:s.id},body:{machine_size:p,...e==null?{}:{storage_gib:e}}},{onSuccess:()=>{_(null),r()},onError:e=>{_(gt(e,`Couldn't apply changes. Please try again.`))}})},children:`Apply & Restart`})]})]})]})}function Ct({onContinue:e,continueDisabled:t=!1}){return(0,J.jsxs)(`div`,{className:`relative flex min-h-[320px] flex-col items-center justify-center overflow-hidden px-8 text-center`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:{background:`radial-gradient(ellipse 60% 50% at 50% 38%, color-mix(in oklab, var(--system-positive-strong) 14%, transparent), transparent)`},"aria-hidden":`true`}),(0,J.jsxs)(`div`,{className:`relative mb-5 flex items-center justify-center`,style:{animation:`welcome-reveal 600ms ease-out both`},children:[(0,J.jsx)(`div`,{className:`absolute h-24 w-24 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 18%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite`},"aria-hidden":`true`}),(0,J.jsx)(`div`,{className:`absolute h-16 w-16 rounded-full`,style:{background:`radial-gradient(circle, color-mix(in oklab, var(--system-positive-strong) 12%, transparent), transparent 70%)`,animation:`welcome-crown-glow 3s ease-in-out infinite 0.5s`},"aria-hidden":`true`}),(0,J.jsx)(he,{className:`relative h-8 w-8 text-[var(--system-positive-strong)]`,strokeWidth:1.5,"aria-hidden":`true`})]}),(0,J.jsx)(`h1`,{className:`relative mb-2 text-[var(--content-emphasised)]`,style:{fontFamily:`var(--font-serif)`,fontSize:`28px`,lineHeight:1,fontWeight:400,animation:`welcome-reveal 600ms ease-out 150ms both`},children:`Welcome to Pro`}),(0,J.jsx)(`p`,{className:`relative mb-6 max-w-[320px] text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`welcome-reveal 600ms ease-out 300ms both`},children:`More compute, more storage, and more features. Let's set everything up.`}),(0,J.jsx)(`div`,{style:{animation:`welcome-reveal 600ms ease-out 450ms both`},children:(0,J.jsx)(i,{variant:`primary`,"data-testid":`onboarding-welcome-continue`,disabled:t,onClick:e,children:`Get started`})}),(0,J.jsx)(`p`,{className:`relative mt-6 max-w-[320px] text-body-small-default text-[var(--content-tertiary)]`,style:{animation:`welcome-reveal 600ms ease-out 600ms both`},children:`This quick setup gets your Pro features ready to go. You can close it anytime and turn these features on later from Settings.`})]})}function wt({open:e,onClose:t}){let n=l(),[r,i]=(0,q.useState)(`confirm-pro`),[a,o]=(0,q.useState)(!1),[s,c]=(0,q.useState)(0);(0,q.useEffect)(()=>{e&&(n.invalidateQueries({queryKey:re()}),n.invalidateQueries({queryKey:p()}))},[e,n]);let d=(0,q.useCallback)(()=>{o(!1),c(e=>e+1),n.invalidateQueries({queryKey:re()})},[n]),f=u({...M(),refetchInterval:e=>e.state.data?.plan_id===`pro`||a?!1:dt,refetchIntervalInBackground:!1,enabled:e&&r===`confirm-pro`});(0,q.useEffect)(()=>{if(!e||r!==`confirm-pro`)return;let t=setTimeout(()=>o(!0),ft);return()=>clearTimeout(t)},[e,r,s]),(0,q.useEffect)(()=>{r===`confirm-pro`&&f.data?.plan_id===`pro`&&i(`welcome`)},[r,f.data?.plan_id]);let m=u({...x(),enabled:e&&r!==`confirm-pro`});u({...L(),enabled:e});let h=m.data?.domain_setup_available,g=(0,q.useCallback)(()=>{i(h===!1?`setup`:`domain`)},[h]),_=(0,q.useCallback)(()=>{i(h===!1?`welcome`:`domain`)},[h]),v=r===`welcome`;return(0,J.jsx)(W.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsx)(W.Content,{size:`md`,hideCloseButton:!v,dismissOnOverlayClick:!v,onEscapeKeyDown:v?e=>e.preventDefault():void 0,onInteractOutside:v?e=>e.preventDefault():void 0,className:`overflow-hidden`,children:y()})});function y(){if(r===`confirm-pro`)return f.isError?(0,J.jsx)(vt,{onGoToBilling:t}):a?(0,J.jsx)(yt,{message:`We're still confirming your upgrade.`,onRetry:d,onGoToBilling:t}):(0,J.jsx)(bt,{title:`Finalizing your upgrade…`,body:`This usually takes a few seconds.`});if(r===`welcome`)return m.isError?(0,J.jsx)(vt,{onGoToBilling:t}):(0,J.jsx)(Ct,{onContinue:g,continueDisabled:m.isPending||m.isFetching});if(r===`domain`)return(0,J.jsx)(_t,{onBack:()=>i(`welcome`),onExit:()=>i(`setup`)});if(r===`setup`){if(m.isError)return(0,J.jsx)(vt,{onGoToBilling:t});let e=m.data?.max_machine_tier??null,n=h!==!1;return(0,J.jsx)(St,{storageGib:m.data?.selected_storage_gib??null,maxTier:e,onBack:_,onAdvance:()=>i(`complete`),dotIndex:+!!n,dotTotal:n?2:1})}return r===`complete`?(0,J.jsx)(ct,{onBack:()=>i(`setup`)}):null}}var Tt=`billing-portal-return-snapshot`;function Et(e){try{sessionStorage.removeItem(Tt),sessionStorage.setItem(Tt,JSON.stringify(e))}catch{}}function Dt(){if(typeof sessionStorage>`u`)return null;try{let e=sessionStorage.getItem(Tt);if(!e)return null;let t=JSON.parse(e);return typeof t.cancel_at_period_end!=`boolean`||typeof t.plan_id!=`string`?null:{cancel_at_period_end:t.cancel_at_period_end,cancel_at:t.cancel_at??null,plan_id:t.plan_id}}catch{return null}}function Ot(){try{sessionStorage.removeItem(Tt)}catch{}}function kt(e){return e?{cancel_at_period_end:e.cancel_at_period_end,cancel_at:e.cancel_at??null,plan_id:e.plan_id}:null}function At(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleDateString(void 0,{year:`numeric`,month:`long`,day:`numeric`})}function jt(e){return e?e.cancel_at??e.current_period_end??null:null}function Mt(e){let t=l();return(0,q.useEffect)(()=>He(()=>{t.invalidateQueries(M())}),[t]),C({onSuccess:t=>{e&&Et(e),Ve(t.portal_url)},onError:()=>{G.error(`Couldn't open the billing portal. Please try again.`,{id:`billing-portal-session-error`})}})}function Nt(e){let t=e/100;return Number.isInteger(t)?`$${t}`:`$${t.toFixed(2)}`}function Y(e){return`${Nt(e)}/mo`}function Pt(e){return`${e>0?`+`:`−`}${Nt(Math.abs(e))}/mo`}var Ft={medium:`Medium`,large:`Large`,xl:`XL`};function It(e){return e.disabled===!0}function Lt({machineTiers:e,storageTiers:t,selectedMachineTier:n,selectedStorageTier:r,onMachineTierChange:i,onStorageTierChange:a,currentMachinePriceCents:o,currentStoragePriceCents:s}){let c=(0,q.useMemo)(()=>e.map(e=>{let t=Ft[e.tier]??e.label,n=o==null?`+${Y(e.price_cents)}`:e.price_cents===o?`(${Y(e.price_cents)}, current)`:Pt(e.price_cents-o);return{value:e.tier,label:`${t} ${n}`,disabled:It(e)}}),[e,o]),l=(0,q.useMemo)(()=>t.map(e=>{let t=s==null?`+${Y(e.price_cents)}`:e.price_cents===s?`(${Y(e.price_cents)}, current)`:Pt(e.price_cents-s);return{value:e.tier,label:`${e.storage_gib} GiB ${t}`,disabled:It(e)}}),[t,s]);return(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(R,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Machine`}),(0,J.jsx)(`span`,{title:`Determines the CPU and memory allocated to your assistant`,children:(0,J.jsx)(be,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(oe,{"aria-label":`Machine tier`,placeholder:`Select a machine tier`,value:n??``,onChange:i,options:c})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(R,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Storage`}),(0,J.jsx)(`span`,{title:`Persistent disk space for your assistant's files and data`,children:(0,J.jsx)(be,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(oe,{"aria-label":`Storage tier`,placeholder:`Select a storage tier`,value:r??``,onChange:a,options:l})]})]})}var Rt=new Set([`active`,`trialing`,`past_due`]),zt=[`target_plan_id`,`confirm`,`machine_tier`,`storage_tier`,`credit_tier`,`non_field_errors`];function Bt(e,t){if(e&&typeof e==`object`){for(let t of zt)if(t in e){let n=e[t];if(Array.isArray(n)&&typeof n[0]==`string`)return n[0]}if(`detail`in e&&typeof e.detail==`string`)return e.detail}return t}function Vt(e,t){let n=e.filter(e=>!It(e));return t!==null&&n.some(e=>e.tier===t)?t:n[0]?.tier??null}function Ht(e,t,n){return t===void 0?n:t!==null&&(t===n||e.some(e=>e.tier===t))?t:null}function Ut(e){return e.length?Math.min(...e.map(e=>e.price_cents)):0}function Wt({open:e,onCancel:t,onConfirm:n,confirming:r,lostFeatures:a}){return(0,J.jsx)(W.Root,{open:e,onOpenChange:e=>{!e&&!r&&t()},children:(0,J.jsxs)(W.Content,{size:`md`,hideCloseButton:!0,children:[(0,J.jsx)(W.Header,{children:(0,J.jsx)(W.Title,{icon:De,children:`Downgrade to Base?`})}),(0,J.jsxs)(W.Body,{children:[(0,J.jsx)(R,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:`Downgrading removes the following Pro features:`}),(0,J.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:a.map(e=>(0,J.jsx)(`li`,{children:(0,J.jsx)(R,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,J.jsxs)(W.Footer,{children:[(0,J.jsx)(i,{variant:`outlined`,onClick:t,disabled:r,children:`Keep Pro`}),(0,J.jsx)(i,{variant:`danger`,onClick:n,disabled:r,"data-testid":`confirm-downgrade-button`,children:`Confirm Downgrade`})]})]})})}var Gt=`__none__`;function Kt(e){return`${e.label} — ${Y(e.price_cents)}`}function qt({creditTiers:e,selectedCreditTier:t,onCreditTierChange:n,disabled:r=!1}){let i=(0,q.useMemo)(()=>[{value:Gt,label:`No credit bundle — ${Y(0)}`},...e.map(e=>({value:e.tier,label:Kt(e)}))],[e]);return(0,J.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(R,{as:`p`,variant:`label-small-default`,className:`text-[var(--content-secondary)]`,children:`Credit bundle`}),(0,J.jsx)(`span`,{title:`A monthly allotment of credits added to your Pro Plan subscription`,children:(0,J.jsx)(be,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),(0,J.jsx)(oe,{"aria-label":`Credit bundle`,placeholder:`Select a credit bundle`,disabled:r,value:t??Gt,onChange:e=>n(e===Gt?null:e),options:i})]})}function Jt({features:e,variant:t,header:n,maxInline:r=3}){return t===`inline`?(0,J.jsx)(J.Fragment,{children:e.slice(0,r).join(`, `)}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n&&(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:n}),(0,J.jsx)(`ul`,{className:`flex flex-col gap-2`,children:e.map(e=>(0,J.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,J.jsx)(fe,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,J.jsx)(R,{as:`span`,variant:`body-medium-default`,children:e})]},e))})]})}function Yt({plan:e,isCurrent:t,onPro:n,cancelAtPeriodEnd:r,isCanceled:a,cancelDate:o,formatGraceDate:s,proTierChangeMode:c,creditTiersEnabled:l,creditTiers:u,displayCreditTier:d,onCreditTierChange:f,selectedMachineTier:p,selectedStorageTier:m,onMachineTierChange:h,onStorageTierChange:g,machineTiersForPicker:_,storageTiersForPicker:v,currentMachinePrice:y,currentStoragePrice:b,currentCreditPriceUnknown:x,proCurrentTotalCents:S,proLiveTotalCents:C,proTotalDelta:w,onboardingLoading:T,tierChangePending:E,machineChanged:D,storageChanged:O,creditChanged:k,tierChangeError:A,upgradePending:j,portalPending:M,onUpgrade:N,onApplyTierChange:P,onDowngradeClick:ee,onKeepPlan:F}){let I=e.id===`pro`,L=e.id===`base`,te=I&&n&&r&&!a,ne=I&&(!t||t&&c),re=I&&t&&c;return(0,J.jsxs)(z,{padding:`lg`,className:`flex flex-col bg-[var(--surface-base)]`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-9 w-9 items-center justify-center rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)]`,children:I?(0,J.jsx)(he,{className:`h-5 w-5 text-[var(--content-default)]`}):(0,J.jsx)(st,{className:`h-5 w-5 text-[var(--content-default)]`})}),(0,J.jsxs)(`div`,{className:`flex min-h-6 items-center gap-2`,children:[(0,J.jsx)(R,{as:`h3`,variant:`title-small`,children:e.name}),t&&(0,J.jsx)(V,{tone:`positive`,children:`Current`})]}),(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`-mt-2 text-[var(--content-tertiary)]`,children:L?`All you need for a capable assistant`:`More features, more compute, more storage`}),te&&o&&(0,J.jsxs)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`modal-cancels-on`,children:[`Your plan ends on `,s(o)]}),(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(`div`,{className:`flex flex-col gap-1`,children:L?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(R,{as:`p`,variant:`title-medium`,children:`Free`}),(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Forever`})]}):t&&!(ne&&C!=null)&&(S==null||x)?T?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(R,{as:`span`,variant:`body-medium-lighter`,children:`Loading your plan...`})]}):(0,J.jsx)(R,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-price-unavailable`,children:`Current plan pricing unavailable`}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(R,{as:`p`,variant:`title-medium`,"data-testid":`modal-pro-price`,children:ne&&C!=null?(0,J.jsxs)(J.Fragment,{children:[Y(C),w!=null&&w!==0&&(0,J.jsxs)(`span`,{className:`ml-1 text-[var(--content-tertiary)]`,children:[`(`,Pt(w),`)`]})]}):S==null?e.id===`pro`?`From ${Y(e.base_price_cents+Ut(e.machine_tiers)+Ut(e.storage_tiers))}`:null:`Currently ${Y(S)}`}),ne&&w!=null&&w!==0&&(0,J.jsx)(`span`,{title:`Your Pro Plan subscription will change from ${Y(S)} to ${Y(C)}.`,children:(0,J.jsx)(be,{className:`h-3 w-3 text-[var(--content-tertiary)]`})})]}),e.id===`pro`&&(0,J.jsxs)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-pro-base-fee`,children:[Nt(e.base_price_cents),` base fee`]})]})}),(0,J.jsx)(Jt,{features:e.included_features,variant:`checklist`}),I&&!l&&(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`modal-credits-not-included`,children:`*Credits not included`})]}),(0,J.jsxs)(`div`,{className:`mt-4 flex flex-1 flex-col justify-end gap-4`,children:[!t&&I&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),l&&(0,J.jsx)(qt,{creditTiers:u,selectedCreditTier:d,onCreditTierChange:f,disabled:j}),(0,J.jsx)(Lt,{machineTiers:_,storageTiers:v,selectedMachineTier:p,selectedStorageTier:m,onMachineTierChange:h,onStorageTierChange:g}),(0,J.jsx)(i,{variant:`primary`,className:`w-full`,onClick:N,disabled:j||!p||!m,"data-testid":`modal-upgrade-to-pro-button`,children:`Upgrade to Pro`})]}),re&&(T?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(R,{as:`span`,variant:`body-medium-lighter`,children:`Loading your plan...`})]}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),l&&(0,J.jsx)(qt,{creditTiers:u,selectedCreditTier:d,onCreditTierChange:f,disabled:E}),(0,J.jsx)(Lt,{machineTiers:_,storageTiers:v,selectedMachineTier:p,selectedStorageTier:m,onMachineTierChange:h,onStorageTierChange:g,currentMachinePriceCents:y,currentStoragePriceCents:b}),A&&(0,J.jsx)(B,{tone:`error`,children:A}),(0,J.jsx)(i,{variant:`primary`,className:`w-full`,onClick:P,disabled:E||!D&&!O&&!k,"data-testid":`modal-change-tier-button`,children:`Update Plan`})]})),!t&&L&&n&&!r&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(i,{variant:`outlined`,className:`w-full`,onClick:ee,disabled:M,"data-testid":`modal-downgrade-to-base-button`,children:`Downgrade to Base`})]}),te&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`hr`,{className:`border-t border-[var(--border-base)]`}),(0,J.jsx)(i,{variant:`outlined`,className:`w-full`,onClick:F,disabled:M,"data-testid":`modal-keep-plan-button`,children:`Keep your Plan`})]})]})]})}function Xt({open:e,onClose:t,onTierUpgraded:n}){let r=l(),a=u(y()),o=u(M()),s=d(ee()),c=d(O()),f=d(D()),m=d(v()),h=Mt(kt(o.data)),[g,_]=(0,q.useState)(`plans`),[b,S]=(0,q.useState)(!1),[C,w]=(0,q.useState)(null),[T,E]=(0,q.useState)(null),[k,A]=(0,q.useState)(void 0);(0,q.useEffect)(()=>He(()=>{r.invalidateQueries({queryKey:re()}),r.invalidateQueries({queryKey:I()}),r.invalidateQueries({queryKey:p()}),t()}),[r,t]);let j=o.data?.plan_id,N=j===`pro`,P=u({...x(),enabled:N}),F=P.data?.max_machine_tier??null,L=P.data?.selected_storage_tier??null,te=P.data?.selected_storage_gib??null,ne=o.data?.cancel_at_period_end===!0||!!o.data?.cancel_at,ie=o.data?.status===`canceled`,ae=jt(o.data),z=o.data?.status,oe=z!=null&&Rt.has(z),se=N&&oe&&!ne&&!ie,V=a.data?.plans.find(e=>e.id===`pro`),H=V?.credit_tiers??[],ce=H.length>0,U=o.data?.selected_credit_tier??null,le=e=>H.find(t=>t.tier===e)?.price_cents??0,ue=le(U),de=U!=null&&!H.some(e=>e.tier===U),fe=k===void 0?U:k,pe=le(fe),me=V?.machine_tiers??[],he=se&&te!=null?(V?.storage_tiers??[]).map(e=>e.storage_gib<te?{...e,disabled:!0}:e):V?.storage_tiers??[];(0,q.useEffect)(()=>{if(!e){w(null),E(null),A(void 0);return}if(V){if(se){if(F==null||L==null)return;w(e=>Vt(me,e??F)),E(e=>Vt(he,e??L)),A(e=>Ht(H,e,U));return}w(e=>Vt(V.machine_tiers,e)),E(e=>Vt(V.storage_tiers,e)),A(e=>Ht(H,e,null))}},[e,V,se,F,L,U]);let ge=a.data?.plans.find(e=>e.id===`base`),_e=new Set(ge?.included_features??[]),ve=(V?.included_features??[]).filter(e=>!_e.has(e)),ye=()=>{if(!s.isPending){if(!C||!T){G.error(`Pick a machine and storage tier to continue.`,{id:`pro-upgrade-error`});return}s.mutate({body:{target_plan_id:`pro`,confirm:!0,machine_tier:C,storage_tier:T,credit_tier:fe}},{onSuccess:e=>{if(e.checkout_url){Ve(e.checkout_url);return}if(e.status===`no_op`){G.info(`You're already on Pro.`,{id:`pro-upgrade`}),t();return}G.error(e.message??`Failed to start upgrade. Please try again.`,{id:`pro-upgrade-error`})},onError:e=>{G.error(Bt(e,`Failed to start upgrade. Please try again.`),{id:`pro-upgrade-error`})}})}},be=()=>{h.isPending||(_(`plans`),h.mutate({}))},xe=()=>{r.invalidateQueries({queryKey:re()}),r.invalidateQueries({queryKey:p()}),r.invalidateQueries({queryKey:I()})},Se=c.isPending||f.isPending||m.isPending,Ce=C!=null&&C!==F,we=T!=null&&T!==L,Te=ce&&k!==void 0&&k!==U,Ee=e=>me.find(t=>t.tier===e)?.price_cents??null,Oe=e=>he.find(t=>t.tier===e)?.price_cents??null,ke=Ee(C),Ae=Oe(T),je=Ee(F),Me=Oe(L),Ne=Ce&&ke!=null&&je!=null&&ke<je,Pe=()=>{if(Se)return;let e=[];Ce&&C&&e.push(new Promise(e=>{c.mutate({body:{machine_tier:C}},{onSuccess:()=>e({dimension:`machine`,ok:!0}),onError:t=>e({dimension:`machine`,ok:!1,error:t})})})),we&&T&&e.push(new Promise(e=>{f.mutate({body:{storage_tier:T}},{onSuccess:()=>e({dimension:`storage`,ok:!0}),onError:t=>e({dimension:`storage`,ok:!1,error:t})})})),Te&&e.push(new Promise(e=>{m.mutate({body:{credit_tier:fe}},{onSuccess:()=>e({dimension:`credit`,ok:!0}),onError:t=>e({dimension:`credit`,ok:!1,error:t})})})),Promise.all(e).then(e=>{xe();let r=e.some(e=>e.ok&&e.dimension===`storage`),i=e.some(e=>e.ok&&e.dimension===`machine`)&&!Ne,a=(r||i)&&!!n,o=e.filter(e=>!e.ok);if(o.length>0){let e=o.map(e=>Bt(e.error,`Failed to update ${e.dimension} tier.`)).join(` `);G.error(e,{id:`pro-tier-change-error`}),a&&(t(),n());return}a?(t(),n()):G.success(Te&&!Ce&&!we?`Credit bundle updated.`:`Plan updated.`,{id:`pro-tier-change`})})},Fe=()=>{if(!Se){if(Ne){S(!0);return}Pe()}},Ie=()=>{S(!1),Pe()},Re=e=>ke!=null&&Ae!=null?e.base_price_cents+ke+Ae+pe:null,ze=e=>je!=null&&Me!=null?e.base_price_cents+je+Me+ue:null,Be=c.isError||f.isError||m.isError?Bt(c.error??f.error??m.error,`Failed to update plan. Please try again.`):null,Ue=a.isLoading||o.isLoading,We=a.isError||o.isError||!a.data||!o.data;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(W.Root,{open:e,onOpenChange:e=>{e||(_(`plans`),t())},children:(0,J.jsx)(W.Content,{size:g===`plans`?`lg`:`md`,children:g===`downgrade-confirm`?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(W.Header,{children:(0,J.jsx)(W.Title,{icon:De,children:`Downgrade to Base?`})}),(0,J.jsxs)(W.Body,{children:[(0,J.jsx)(R,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:`Downgrading removes the following Pro features:`}),(0,J.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:ve.map(e=>(0,J.jsx)(`li`,{children:(0,J.jsx)(R,{as:`span`,variant:`body-medium-default`,children:e})},e))})]}),(0,J.jsxs)(W.Footer,{children:[(0,J.jsx)(i,{variant:`ghost`,onClick:()=>_(`plans`),disabled:h.isPending,leftIcon:(0,J.jsx)(Le,{className:`h-4 w-4`}),children:`Back`}),(0,J.jsx)(i,{variant:`danger`,onClick:be,disabled:h.isPending,"data-testid":`confirm-downgrade-button`,children:`Confirm Downgrade`})]})]}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(W.Header,{children:(0,J.jsx)(W.Title,{className:`sr-only`,children:`Upgrade Plan`})}),(0,J.jsx)(W.Body,{children:Ue?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(R,{as:`span`,variant:`body-medium-lighter`,children:`Loading plans...`})]}):We?(0,J.jsx)(B,{tone:`error`,children:`Failed to load plans. Please try again later.`}):(0,J.jsxs)(`div`,{className:`space-y-6`,children:[(0,J.jsxs)(`div`,{className:`space-y-2 pb-2 pt-4 text-center`,children:[(0,J.jsx)(R,{as:`p`,variant:`title-medium`,children:`Your Assistant, Your Way`}),(0,J.jsx)(R,{as:`p`,variant:`body-medium-lighter`,className:`text-[var(--content-secondary)]`,children:`Choose the plan that works best for you and your assistant.`})]}),(0,J.jsx)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:a.data.plans.map(e=>{let t=e.id===j,n=e.id===`pro`&&V?Re(V):null,r=e.id===`pro`&&V?ze(V):null;return(0,J.jsx)(Yt,{plan:e,isCurrent:t,onPro:N,cancelAtPeriodEnd:ne,isCanceled:ie,cancelDate:ae,formatGraceDate:At,proTierChangeMode:se,creditTiersEnabled:ce,creditTiers:H,displayCreditTier:fe,onCreditTierChange:A,selectedMachineTier:C,selectedStorageTier:T,onMachineTierChange:w,onStorageTierChange:E,machineTiersForPicker:me,storageTiersForPicker:he,currentMachinePrice:je,currentStoragePrice:Me,currentCreditPriceUnknown:de,proCurrentTotalCents:r,proLiveTotalCents:n,proTotalDelta:n!=null&&r!=null?n-r:null,onboardingLoading:P.isLoading,tierChangePending:Se,machineChanged:Ce,storageChanged:we,creditChanged:Te,tierChangeError:Be,upgradePending:s.isPending,portalPending:h.isPending,onUpgrade:ye,onApplyTierChange:Fe,onDowngradeClick:()=>_(`downgrade-confirm`),onKeepPlan:()=>h.mutate({})},e.id)})})]})}),(0,J.jsxs)(W.Footer,{className:`relative items-center`,children:[(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`pointer-events-none absolute inset-x-0 text-center text-[var(--content-tertiary)]`,children:(0,J.jsx)(`span`,{className:`pointer-events-auto`,children:`You can change or cancel your plan at any time from billing settings.`})}),(0,J.jsx)(`div`,{className:`ml-auto`,children:(0,J.jsx)(i,{variant:`outlined`,onClick:t,"data-testid":`modal-cancel-button`,children:`Cancel`})})]})]})})}),(0,J.jsx)(Wt,{open:b,onCancel:()=>S(!1),onConfirm:Ie,confirming:Se,lostFeatures:[`Reduced CPU and memory for your assistant — it will resize to the smaller compute profile.`]})]})}var Zt={visa:`Visa`,mastercard:`Mastercard`,amex:`Amex`,discover:`Discover`,diners:`Diners Club`,jcb:`JCB`,unionpay:`UnionPay`};function Qt(e){return Zt[e.toLowerCase()]??e}function $t(e,t){return`${Qt(e??`card`)} •••• ${t??`????`}`}function en({open:e,confirming:t,onCancel:n,onConfirm:r}){return(0,J.jsx)(se,{open:e,title:`Disable automatic top-ups?`,message:`Auto top-ups will stop. Any saved payment method stays on file.`,confirmLabel:t?`Disabling…`:`Disable`,cancelLabel:`Keep enabled`,destructive:!0,onConfirm:r,onCancel:n})}var tn={threshold_usd:`100`,amount_usd:`10`,monthly_cap_usd:``};function nn(e){if(e===``||e===`-`)return e;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function rn(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 an(e,t,n,r){if(n[e])return n[e];if(r)return t[e]}function on({initialValues:e=tn,submitting:t,serverErrors:n,onSave:r,onCancel:a}){let[o,s]=(0,q.useState)(e),[c,l]=(0,q.useState)({threshold_usd:!1,amount_usd:!1,monthly_cap_usd:!1}),u=rn(o),d=e=>t=>{s(n=>({...n,[e]:t.target.value}))},f=e=>()=>{l(t=>({...t,[e]:!0})),s(t=>({...t,[e]:nn(t[e])}))},p=e=>an(e,u,n,c[e]);return(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start gap-3`,children:[(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(H,{type:`number`,step:`1`,label:`Auto-Reload when balance below`,value:o.threshold_usd,onChange:d(`threshold_usd`),onBlur:f(`threshold_usd`),errorText:p(`threshold_usd`),"data-testid":`auto-top-up-threshold-input`,fullWidth:!0})}),(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(H,{type:`number`,step:`1`,label:`Add amount when auto reloading`,value:o.amount_usd,onChange:d(`amount_usd`),onBlur:f(`amount_usd`),errorText:p(`amount_usd`),"data-testid":`auto-top-up-amount-input`,fullWidth:!0})}),(0,J.jsx)(`div`,{className:`min-w-[10rem] flex-1`,children:(0,J.jsx)(H,{type:`number`,step:`1`,label:`Monthly spending cap`,helperText:`Pauses auto top-ups for the rest of the month once spending reaches this amount. Manual purchases also count toward the total. Leave empty for no limit.`,value:o.monthly_cap_usd,onChange:d(`monthly_cap_usd`),onBlur:f(`monthly_cap_usd`),errorText:p(`monthly_cap_usd`),"data-testid":`auto-top-up-cap-input`,fullWidth:!0})}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 pt-[18px]`,children:[(0,J.jsx)(i,{variant:`outlined`,onClick:a,disabled:t,children:`Cancel`}),(0,J.jsx)(i,{variant:`primary`,onClick:()=>{l({threshold_usd:!0,amount_usd:!0,monthly_cap_usd:!0});let e={threshold_usd:nn(o.threshold_usd),amount_usd:nn(o.amount_usd),monthly_cap_usd:nn(o.monthly_cap_usd)};s(e);let t=rn(e);if(Object.keys(t).length!==0)return;let n=e=>e===``?``:`${parseInt(e,10)}.00`;r({threshold_usd:n(e.threshold_usd),amount_usd:n(e.amount_usd),monthly_cap_usd:e.monthly_cap_usd===``?``:n(e.monthly_cap_usd)})},disabled:t,"data-testid":`auto-top-up-save-button`,children:`Save`})]})]})})}function sn(e){if(!e)return``;let t=parseFloat(e);return Number.isFinite(t)?String(Math.trunc(t)):``}function cn(e){if(!e)return`$0`;let t=parseFloat(e);if(!Number.isFinite(t))return`$0`;let n=Math.abs(t).toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2}),r=n.endsWith(`.00`)?n.slice(0,-3):n;return t<0?`-$${r}`:`$${r}`}var ln={enabled:!1,threshold_usd:null,amount_usd:null,monthly_cap_usd:null,has_payment_method:!1,payment_method_brand:null,payment_method_last4:null,stripe_payment_method_updated_at:null,last_charge_at:null,last_failure_at:null,last_failure_reason:null,disabled_due_to_repeated_failures:!1,paused_until:null,current_month_credits_purchased_usd:`0.00`,current_month_charged_usd:`0.00`,next_trigger_amount_usd:null,stubbed:!1};function un(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 dn(e){let{brand:t,last4:n}=e;return!t&&!n?null:n?`Charged to ${$t(t,n)}`:`Charged to ${Qt(t??`card`)}`}function fn(){let e=l(),t=u(m()),n=d(E()),r=d(S()),[a,o]=(0,q.useState)(`view`),[s,c]=(0,q.useState)(!1),[f,p]=(0,q.useState)(!1),[h,g]=(0,q.useState)(!1);if((0,q.useEffect)(()=>{h&&t.data?.has_payment_method&&g(!1)},[h,t.data?.has_payment_method]),t.isLoading)return(0,J.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,J.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Loading…`})});if(t.isError||!t.data)return(0,J.jsx)(`div`,{"data-testid":`auto-top-up-card`,children:(0,J.jsx)(B,{tone:`error`,children:`Failed to load auto top-up configuration.`})});let v=t.data,y=v.enabled===!0,b=v.disabled_due_to_repeated_failures===!0&&!y,x=()=>{n.reset(),r.reset(),o(`form`)},C=()=>{o(`view`),c(!1)},w=()=>{r.reset(),p(!1)},D=t=>{n.mutate({body:{enabled:!0,threshold_usd:t.threshold_usd,amount_usd:t.amount_usd,monthly_cap_usd:t.monthly_cap_usd===``?null:t.monthly_cap_usd}},{onSuccess:t=>{_(e,void 0,e=>({...t,payment_method_brand:e?.payment_method_brand??null,payment_method_last4:e?.payment_method_last4??null})),e.invalidateQueries({queryKey:T()}),C()}})},O=()=>{r.mutate({},{onSuccess:()=>{_(e,void 0,e=>({...ln,has_payment_method:e?.has_payment_method??!1,payment_method_brand:e?.payment_method_brand??null,payment_method_last4:e?.payment_method_last4??null,stripe_payment_method_updated_at:e?.stripe_payment_method_updated_at??null})),p(!1),o(`view`),c(!1)}})},k=e=>{if(e&&!y){if(!v.has_payment_method||b){g(!0);return}g(!1),c(!0),x();return}if(!e&&!y&&s){C();return}!e&&y&&p(!0)},A=a===`form`,j=un(n.error),M=n.isError&&Object.keys(j).length===0,N=y||s,P=dn({brand:v.payment_method_brand,last4:v.payment_method_last4});return(0,J.jsxs)(`div`,{"data-testid":`auto-top-up-card`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,J.jsx)(ce,{checked:N,onChange:k,label:`Enable Auto-Reload`}),y&&!A&&(0,J.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,J.jsxs)(`div`,{className:`text-right`,children:[(0,J.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-summary`,children:[`Add `,cn(v.amount_usd),` when the balance falls under `,cn(v.threshold_usd)]}),v.monthly_cap_usd!=null&&(0,J.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-cap-progress`,children:[cn(v.current_month_credits_purchased_usd),` of`,` `,cn(v.monthly_cap_usd),` this month`]})]}),(0,J.jsx)(i,{variant:`outlined`,onClick:x,"data-testid":`auto-top-up-edit-button`,children:`Adjust`})]})]}),b&&(0,J.jsx)(B,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-declined-cutoff`,children:`We paused automatic reloads after several declined payments. Add a new payment method below to turn auto-reload back on.`}),(0,J.jsx)(`div`,{className:`grid transition-[grid-template-rows] duration-200 ease-in-out`,style:{gridTemplateRows:h&&!b?`1fr`:`0fr`},children:(0,J.jsx)(`div`,{className:`overflow-hidden`,children:(0,J.jsx)(B,{tone:`warning`,className:`mt-3`,children:`You must first add a Payment Method before you can enable automatic credit reloads.`})})}),M&&(0,J.jsx)(B,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-update-error`,children:`Failed to save automatic top-ups. Please try again.`}),r.isError&&(0,J.jsx)(B,{tone:`error`,className:`mt-4`,"data-testid":`auto-top-up-disable-error`,children:`Failed to disable automatic top-ups. Please try again.`}),A&&(0,J.jsx)(on,{initialValues:y?{threshold_usd:sn(v.threshold_usd),amount_usd:sn(v.amount_usd),monthly_cap_usd:sn(v.monthly_cap_usd)}:void 0,submitting:n.isPending,serverErrors:j,onCancel:C,onSave:D}),y&&!v.has_payment_method&&(0,J.jsx)(B,{tone:`warning`,className:`mt-3`,"data-testid":`auto-top-up-no-pm`,children:`You must add a Payment Method.`}),y&&v.has_payment_method&&(0,J.jsx)(`p`,{className:`mt-3 text-body-small-default text-[var(--content-tertiary)]`,"data-testid":`auto-top-up-saved-pm`,children:P??`Charged to a saved card`}),(y||A)&&(0,J.jsx)(B,{tone:`info`,className:`mt-4`,children:`If you're too close to your monthly limit, the auto-reload will only top up to that limit.`}),(0,J.jsx)(en,{open:f,confirming:r.isPending,onCancel:w,onConfirm:O})]})}var pn=2e3;function mn(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 hn(){let e=l(),{data:t,isLoading:n,isError:r}=u(te()),a=t??null,[o,s]=(0,q.useState)(!1),c=(0,q.useRef)(0),d=(0,q.useRef)(null),f=h({onSuccess:()=>{e.invalidateQueries({queryKey:P()})},onError:()=>{c.current<3&&(d.current=setTimeout(()=>{f.reset()},pn))}});(0,q.useEffect)(()=>()=>{d.current&&clearTimeout(d.current)},[]);let p=f.mutate;(0,q.useEffect)(()=>{a&&a.settled_balance===`0.00`&&a.pending_compute===`0.00`&&a.effective_balance===`0.00`&&c.current<3&&!f.isPending&&!f.isError&&!f.isSuccess&&(c.current+=1,p({}))},[a,f.isPending,f.isError,f.isSuccess,p]);let m=(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(R,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Credit Balance`}),(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`An overview of your credit balance and pending charges.`})]}),(0,J.jsx)(i,{variant:`primary`,onClick:()=>s(!0),disabled:n||!a,"data-testid":`add-credits-button`,children:`Add Credits`})]});return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(z,{padding:`md`,children:[m,n?(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),`Loading billing summary...`]}):r?(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(B,{tone:`error`,children:`Failed to load billing summary. Please try again later.`})}):a?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:`mt-4`,children:(()=>{if(!a)return null;let e=parseFloat(a.effective_balance)<0,t=parseFloat(a.settled_balance)<0,n=parseFloat(a.pending_compute)<0;return(0,J.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-3`,children:[(0,J.jsx)(le,{icon:(0,J.jsx)(Be,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`effective-balance`,children:mn(a.effective_balance)}),label:`Balance`,tone:e?`negative`:`default`}),(0,J.jsx)(le,{icon:(0,J.jsx)(_e,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`settled-balance`,children:mn(a.settled_balance)}),label:`Settled Balance`,tone:t?`negative`:`default`}),(0,J.jsx)(le,{icon:(0,J.jsx)(it,{className:`h-4 w-4`,"aria-hidden":!0}),value:(0,J.jsx)(`span`,{"data-testid":`pending-charges`,children:mn(a.pending_compute)}),label:a.is_degraded?`Pending Usage (estimated)`:`Pending Usage`,tone:a.is_degraded?`muted`:n?`negative`:`default`})]})})()}),a.is_degraded&&(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(B,{tone:`warning`,children:`Pending charges could not be calculated. The balance shown may be incomplete.`})})]}):(0,J.jsx)(`p`,{className:`mt-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No billing information available.`}),(0,J.jsx)(`div`,{className:`mt-6 border-t border-[var(--border-base)] pt-6`,children:(0,J.jsx)(fn,{})})]}),(0,J.jsx)(Xe,{open:o,onOpenChange:s})]})}var gn=1e3,_n=15e3,vn=3e3,yn=45e3,bn=`billing-portal-return`;function xn(e,t){if(!e)return{kind:`info`,message:`Subscription updated.`};let n=e.cancel_at_period_end||!!e.cancel_at,r=t.cancel_at_period_end||!!t.cancel_at;return!n&&r?{kind:`info`,message:`Pro plan canceled. You'll have access until ${t.cancel_at?At(t.cancel_at):`the end of your billing period`}.`}:n&&!r?{kind:`success`,message:`Pro plan reactivated.`}:{kind:`info`,message:`Subscription updated.`}}function Sn(){let[e]=s(),t=o(),n=l(),r=(0,q.useRef)(null);return(0,q.useEffect)(()=>()=>{r.current!==null&&(clearInterval(r.current),r.current=null)},[]),(0,q.useEffect)(()=>{if(e.get(`portal_return`)!==`true`)return;let i={current:!1},a=Dt(),o=M(),s=re(),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<_n&&(await new Promise(e=>setTimeout(e,gn)),!i.current);)e=await l();return e}return(async()=>{try{let e=await u();if(i.current)return;let{kind:t,message:n}=xn(a,e);t===`success`?G.success(n,{id:bn}):G.info(n,{id:bn})}catch{if(i.current)return;G.info(`Subscription updated.`,{id:bn})}finally{if(!i.current){Ot(),t(Ae.settings.billing,{replace:!0});let e=Date.now();r.current!==null&&clearInterval(r.current),r.current=setInterval(()=>{if(Date.now()-e>=yn){r.current!==null&&(clearInterval(r.current),r.current=null);return}l().catch(e=>{console.error(`billing poll error:`,e)})},vn)}}})(),()=>{i.current=!0}},[e,t,n]),null}var Cn=[7,30,90].map(e=>({value:`${e}`,label:`Last ${e} days`}));function wn(e,t=Me()){let{fromDate:n,toDate:r}=nt(e,t);return{from:n,to:r}}function Tn(e,t){let n=new Date(e),r=new Date(t);return Math.round((r.getTime()-n.getTime())/864e5)+1}function En({from:e,to:t}){let n=Tn(e,t);return n===7?7:n===90?90:30}function Dn({value:e,onChange:t}){let n=Ie(),r=(0,q.useMemo)(()=>`${En(e)}`,[e]);return(0,J.jsx)(oe,{options:Cn,value:r,onChange:e=>{let r=Number(e);t(wn(r,n),r)},"aria-label":`Date range`})}var On={strokeDasharray:`3 3`,stroke:`var(--border-subtle)`,strokeOpacity:.4},kn={fontSize:12,fill:`var(--content-tertiary)`},An={stroke:`var(--border-subtle)`,strokeOpacity:.4},jn=[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`,`#8b5cf6`,`#06b6d4`,`#ec4899`,`#84cc16`];function Mn({item:e}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-0.5 text-[13px] text-[var(--content-default)]`,children:[(0,J.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,J.jsx)(`span`,{children:e.label}),(0,J.jsx)(`span`,{className:`ml-auto tabular-nums`,children:e.value})]})}function Nn({active:e,payload:t,hoveredKey:n,label:r,labelMap:i,colorMap:a,formatValue:o,showTotal:s,formatLabel:c}){if(!e||!t?.length)return null;let l=t.filter(e=>e.value!=null&&e.dataKey!=null).map(e=>({key:String(e.dataKey),label:i[String(e.dataKey)]??String(e.dataKey),value:o(Number(e.value)),color:a[String(e.dataKey)]??`#6b7280`,numericValue:Number(e.value)})).sort((e,t)=>e.numericValue===t.numericValue?e.label.localeCompare(t.label):t.numericValue-e.numericValue),u=n?l.find(e=>e.key===n):null,d=u?l.filter(e=>e.key!==n):l,f=l.reduce((e,t)=>e+t.numericValue,0);return(0,J.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-overlay)] px-3.5 py-2.5 shadow-[var(--shadow-popover)]`,children:[(0,J.jsx)(`div`,{className:`mb-1.5 text-xs font-medium text-[var(--content-secondary)]`,children:(c??tt)(String(r))}),u&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Mn,{item:u}),d.length>0&&(0,J.jsx)(`div`,{className:`my-1.5 border-t border-[var(--border-subtle)]`})]}),d.map(e=>(0,J.jsx)(Mn,{item:e},e.key)),s&&(0,J.jsx)(`div`,{className:`mt-1 flex items-center gap-2 border-t border-[var(--border-subtle)] pt-1.5 text-[13px] font-semibold text-[var(--content-default)]`,children:(0,J.jsxs)(`span`,{children:[`Total: `,o(f)]})})]})}function Pn(e,t){let[n,r]=e,[i,a]=t,o=r-n||1;return e=>i+(e-n)/o*(a-i)}function Fn(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 In(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 Ln(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:Fn(n/r)*r}function Rn(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 zn(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 Bn(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 Vn=40,Hn={fontSize:11,fill:`var(--content-tertiary)`},Un={runtime_proxy_api:`#3b82f6`,oauth_proxy:`#f59e0b`};function Wn(e,t){return Un[e]??jn[t%jn.length]??`#6b7280`}function Gn(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 Kn({stackKeys:e,labelMap:t}){return(0,J.jsx)(`div`,{className:`flex flex-wrap items-center justify-center gap-x-5 gap-y-1 pt-3 text-body-small-default`,children:e.map((e,n)=>(0,J.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,J.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-sm`,style:{backgroundColor:Wn(e,n)}}),(0,J.jsx)(`span`,{className:`text-[var(--content-quiet)]`,children:t[e]??e})]},e))})}var qn=350,Jn={top:8,right:4,bottom:32,left:0},Yn=.2,Xn=5,Zn=12,Qn=200;function $n({buckets:e,metric:t,onBarClick:n}){let r=je(),i=(0,q.useRef)(null),[a,o]=(0,q.useState)(0);(0,q.useEffect)(()=>{let e=i.current;if(!e)return;let t=new ResizeObserver(([e])=>{e&&o(e.contentRect.width)});return t.observe(e),()=>t.disconnect()},[]);let{data:s,stackKeys:c,labelMap:l}=(0,q.useMemo)(()=>Gn(e,t),[e,t]),u=(0,q.useMemo)(()=>{let e={};for(let t=0;t<c.length;t++)e[c[t]]=Wn(c[t],t);return e},[c]),d=(0,q.useCallback)(e=>t===`spend`?`$${e.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`:e.toLocaleString(`en-US`),[t]),[f,p]=(0,q.useState)(null),m=r?Vn:56,h=r?Hn:kn,g=Jn.left+m,_=Math.max(0,a-g-Jn.right),v=Jn.top,y=qn-Jn.top-Jn.bottom,b=(0,q.useMemo)(()=>s.map(e=>c.reduce((t,n)=>t+(Number(e[n])||0),0)),[s,c]),x=t===`events`,S=(0,q.useMemo)(()=>Ln(b,{integerOnly:x,tickCount:Xn}),[b,x]),C=(0,q.useMemo)(()=>Rn(S,Xn),[S]),w=(0,q.useCallback)(e=>{if(t===`spend`){if(e===0)return`$0`;let t=S/Xn,n=Math.max(t<1?2:0,In(t));return`$${e.toLocaleString(`en-US`,{minimumFractionDigits:n,maximumFractionDigits:n})}`}return e.toLocaleString(`en-US`)},[t,S]),T=(0,q.useMemo)(()=>Pn([0,S],[v+y,v]),[S,v,y]),E=s.length,D=E>0?_/E:0,O=D*(1-Yn),k=(D-O)/2,A=(0,q.useMemo)(()=>Bn(E,r),[E,r]),j=c.length===0,M=j?[]:s.map((e,t)=>{let n=g+t*D+k,r=0;return{di:t,x:n,segments:c.map((t,i)=>{let a=Number(e[t])||0,o=r;r+=a;let s=T(r),l=T(o)-s,u=i===c.length-1;return{key:t,val:a,x:n,y:s,h:l,color:Wn(t,i),isLast:u}})}}),N=(e,t,n)=>{let r=i.current?.getBoundingClientRect();r&&p({x:e.clientX-r.left,y:e.clientY-r.top,datumIndex:t,hoveredKey:n})},P=()=>p(null),ee=e=>{n&&n(e)},F=f?c.filter(e=>(Number(s[f.datumIndex]?.[e])||0)>0).map(e=>({dataKey:e,value:Number(s[f.datumIndex]?.[e])||0})):[],I={left:f?Math.max(0,Math.min(f.x+Zn,a-Qn)):0,top:f?f.y-Zn:0,visibility:f?`visible`:`hidden`};return(0,J.jsxs)(`div`,{onMouseDown:e=>e.preventDefault(),children:[(0,J.jsx)(`div`,{ref:i,className:`relative w-full`,style:{height:qn},children:j?(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center text-body-medium-lighter text-[var(--content-faint)]`,children:`No usage data for this period`}):a>0?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`svg`,{width:a,height:qn,className:`block`,children:[C.map(e=>(0,J.jsx)(`line`,{x1:g,x2:g+_,y1:T(e),y2:T(e),stroke:On.stroke,strokeOpacity:On.strokeOpacity,strokeDasharray:On.strokeDasharray},e)),(0,J.jsx)(`line`,{x1:g,x2:g+_,y1:v+y,y2:v+y,stroke:An.stroke,strokeOpacity:An.strokeOpacity}),C.map(e=>(0,J.jsx)(`text`,{x:g-8,y:T(e),textAnchor:`end`,dominantBaseline:`middle`,fontSize:h.fontSize,fill:h.fill,children:w(e)},e)),A.map(e=>{let t=s[e];return t?(0,J.jsx)(`text`,{x:g+e*D+D/2,y:v+y+20,textAnchor:`middle`,fontSize:h.fontSize,fill:h.fill,children:tt(String(t.date))},e):null}),M.map(({di:e,segments:t})=>t.map(t=>{if(t.h<=0)return null;let r=f?.hoveredKey&&f.hoveredKey!==t.key?.4:1,i={key:`${e}-${t.key}`,fill:t.color,opacity:r,cursor:n?`pointer`:void 0,onMouseMove:n=>N(n,e,t.key),onMouseLeave:P,onClick:()=>ee(t.key)};return t.isLast?(0,J.jsx)(`path`,{...i,d:zn(t.x,t.y,O,t.h,3)}):(0,J.jsx)(`rect`,{...i,x:t.x,y:t.y,width:O,height:t.h})}))]}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute z-[1] max-w-[calc(100vw-32px)] -translate-y-full`,style:I,children:(0,J.jsx)(Nn,{active:!!f,payload:F,hoveredKey:f?.hoveredKey??void 0,label:f?String(s[f.datumIndex]?.date):``,labelMap:l,colorMap:u,formatValue:d})})]}):null}),!j&&(0,J.jsx)(Kn,{stackKeys:c,labelMap:l})]})}function er(e=Me()){return wn(30,e)}function tr(e){if(e)return e.usageSource===`oauth_proxy`?`oauth_provider`:Qe(e.llmDimension??`model`)}function nr(e,t=Me()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource,group_by:tr(e.drilldown)}:{}}}function rr(e,t=Me()){return{from:e.dateRange.from,to:e.dateRange.to,tz:t,...e.drilldown?{usage_source:e.drilldown.usageSource}:{}}}function ir(e){let t=Ie(),n=u(F({query:nr(e,t)})),r=u(ne({query:rr(e,t)}));return{series:n.data,totals:r.data,isLoading:n.isLoading||r.isLoading,isError:n.isError||r.isError}}var ar=[{value:`spend`,label:`Spend ($)`},{value:`events`,label:`Events`}];function or(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 sr(e){return e===void 0?`—`:e.toLocaleString(`en-US`)}function cr(){let e=Ie(),[t,n]=(0,q.useState)(30),[r,i]=(0,q.useState)(()=>er(e)),a=(0,q.useMemo)(()=>t===null?r:wn(t,e),[t,r,e]),o=(e,t)=>{n(t),i(e)},[s,c]=(0,q.useState)(null),[l,u]=(0,q.useState)(`spend`),{series:d,totals:f,isLoading:p,isError:m}=ir({dateRange:a,setDateRange:e=>{n(null),i(e)},drilldown:s,setDrilldown:c}),h=s?void 0:e=>{let t={runtime_proxy_api:`runtime_proxy`,oauth_proxy:`oauth_proxy`}[e];t&&c({usageSource:t,...t===`runtime_proxy`?{llmDimension:et}:{}})};return(0,J.jsx)(z,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(R,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Credit Usage`}),(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`Overview of your spending habits.`})]}),(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 [&_[role=combobox]]:h-8 [&_[role=radio]]:h-7`,children:[(0,J.jsx)(Dn,{value:a,onChange:o}),(0,J.jsx)(`div`,{className:`w-44`,children:(0,J.jsx)(U,{items:ar,value:l,onChange:u,ariaLabel:`Chart metric`})})]})]}),(0,J.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-2`,children:[(0,J.jsx)(le,{icon:(0,J.jsx)(Be,{className:`h-4 w-4`,"aria-hidden":!0}),value:p?(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):or(f?.total_usd),label:`Spend`}),(0,J.jsx)(le,{icon:(0,J.jsx)(ot,{className:`h-4 w-4`,"aria-hidden":!0}),value:p?(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):sr(f?.event_count),label:`Events`})]}),s&&(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,J.jsx)(`div`,{children:(0,J.jsxs)(`button`,{className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)]`,onClick:()=>c(null),children:[(0,J.jsx)(Le,{className:`h-3.5 w-3.5`}),(0,J.jsx)(`span`,{children:`Back to all usage`}),(0,J.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:`/`}),(0,J.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:s.usageSource===`runtime_proxy`?`LLM Spend`:`OAuth Spend`})]})}),s.usageSource===`runtime_proxy`&&(0,J.jsx)(`div`,{className:`w-56`,children:(0,J.jsx)(U,{items:$e,value:s.llmDimension??`model`,onChange:e=>c({usageSource:`runtime_proxy`,llmDimension:e}),ariaLabel:`LLM spend dimension`})})]}),p?(0,J.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,J.jsx)(K,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):m?(0,J.jsx)(`div`,{className:`flex h-[345px] items-center justify-center rounded-xl bg-[var(--surface-base)] text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load usage data.`}):d?(0,J.jsx)(`div`,{className:`rounded-xl bg-[var(--surface-base)] p-3`,children:(0,J.jsx)($n,{buckets:d.buckets,metric:l,onBarClick:h})}):null]})})}function lr(){let{data:e}=u(M()),t=Mt((0,q.useMemo)(()=>kt(e),[e]));if(!e||e.plan_id!==`pro`||e.status===`canceled`||!e.cancel_at_period_end&&!e.cancel_at)return null;let n=jt(e);return n?(0,J.jsx)(B,{tone:`info`,title:`Your Pro plan will end on ${At(n)}.`,actions:(0,J.jsx)(i,{variant:`outlined`,size:`compact`,onClick:()=>t.mutate({}),disabled:t.isPending,leftIcon:t.isPending?(0,J.jsx)(K,{className:`animate-spin`}):void 0,"data-testid":`grace-period-reactivate-button`,children:`Reactivate`}),"data-testid":`grace-period-banner`,children:`You'll keep Pro features until then.`}):null}var ur=t(((e,t)=>{t.exports=`SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED`})),dr=t(((e,t)=>{var n=ur();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=dr()()}))(),1);function fr(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 pr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?fr(Object(n),!0).forEach(function(t){hr(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):fr(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function mr(e){"@babel/helpers - typeof";return mr=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},mr(e)}function hr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function gr(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 _r(e,t){if(e==null)return{};var n=gr(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 vr(e,t){return yr(e)||br(e,t)||xr(e,t)||Cr()}function yr(e){if(Array.isArray(e))return e}function br(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 xr(e,t){if(e){if(typeof e==`string`)return Sr(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 Sr(e,t)}}function Sr(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 Cr(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Z=function(e,t,n){var r=!!n,i=q.useRef(n);q.useEffect(function(){i.current=n},[n]),q.useEffect(function(){if(!r||!e)return function(){};var n=function(){i.current&&i.current.apply(i,arguments)};return e.on(t,n),function(){e.off(t,n)}},[r,t,e,i])},wr=function(e){var t=q.useRef(e);return q.useEffect(function(){t.current=e},[e]),t.current},Tr=function(e){return e!==null&&mr(e)===`object`},Er=function(e){return Tr(e)&&typeof e.then==`function`},Dr=function(e){return Tr(e)&&typeof e.elements==`function`&&typeof e.createToken==`function`&&typeof e.createPaymentMethod==`function`&&typeof e.confirmCardPayment==`function`},Or=`[object Object]`,kr=function e(t,n){if(!Tr(t)||!Tr(n))return t===n;var r=Array.isArray(t);if(r!==Array.isArray(n))return!1;var i=Object.prototype.toString.call(t)===Or;if(i!==(Object.prototype.toString.call(n)===Or))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])})},Ar=function(e,t,n){return Tr(e)?Object.keys(e).reduce(function(r,i){var a=!Tr(t)||!kr(e[i],t[i]);return n.includes(i)?(a&&console.warn(`Unsupported prop change: options.${i} is not a mutable property.`),r):a?pr(pr({},r||{}),{},hr({},i,e[i])):r},null):null},jr="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.",Mr=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:jr;if(e===null||Dr(e))return e;throw Error(t)},Nr=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:jr;if(Er(e))return{tag:`async`,stripePromise:Promise.resolve(e).then(function(e){return Mr(e,t)})};var n=Mr(e,t);return n===null?{tag:`empty`}:{tag:`sync`,stripe:n}},Pr=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`}))},Fr=q.createContext(null);Fr.displayName=`ElementsContext`;var Ir=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},Lr=function(e){var t=e.stripe,n=e.options,r=e.children,i=q.useMemo(function(){return Nr(t)},[t]),a=vr(q.useState(function(){return{stripe:i.tag===`sync`?i.stripe:null,elements:i.tag===`sync`?i.stripe.elements(n):null}}),2),o=a[0],s=a[1];q.useEffect(function(){var e=!0,t=function(e){s(function(t){return t.stripe?t:{stripe:e,elements:e.elements(n)}})};return i.tag===`async`&&!o.stripe?i.stripePromise.then(function(n){n&&e&&t(n)}):i.tag===`sync`&&!o.stripe&&t(i.stripe),function(){e=!1}},[i,o,n]);var c=wr(t);q.useEffect(function(){c!==null&&c!==t&&console.warn("Unsupported prop change on Elements: You cannot change the `stripe` prop after setting it.")},[c,t]);var l=wr(n);return q.useEffect(function(){if(o.elements){var e=Ar(n,l,[`clientSecret`,`fonts`]);e&&o.elements.update(e)}},[n,l,o.elements]),q.useEffect(function(){Pr(o.stripe)},[o.stripe]),q.createElement(Fr.Provider,{value:o},r)};Lr.propTypes={stripe:X.default.any,options:X.default.object};var Rr=function(e){return Ir(q.useContext(Fr),e)},zr=function(e){var t=e.children;return t(Rr(`mounts <ElementsConsumer>`))};zr.propTypes={children:X.default.func.isRequired};var Br=q.createContext(null);Br.displayName=`CheckoutContext`;var Vr=function(e){var t=q.useContext(Br),n=q.useContext(Fr);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 Ir(n,e)},Hr=[`mode`],Ur=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},Q=function(e,t,n){var r=`${Ur(e)}Element`,i=t?function(e){Vr(`mounts <${r}>`);var t=e.id,n=e.className;return q.createElement(`div`,{id:t,className:n})}:function(t){var n=t.id,i=t.className,a=t.options,o=a===void 0?{}:a,s=t.onBlur,c=t.onFocus,l=t.onReady,u=t.onChange,d=t.onEscape,f=t.onClick,p=t.onLoadError,m=t.onLoaderStart,h=t.onNetworksChange,g=t.onConfirm,_=t.onCancel,v=t.onShippingAddressChange,y=t.onShippingRateChange,b=t.onSavedPaymentMethodRemove,x=t.onSavedPaymentMethodUpdate,S=t.onAvailablePaymentMethodsChange,C=Vr(`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=vr(q.useState(null),2),O=D[0],k=D[1],A=q.useRef(null),j=q.useRef(null);Z(O,`blur`,s),Z(O,`focus`,c),Z(O,`escape`,d),Z(O,`click`,f),Z(O,`loaderror`,p),Z(O,`loaderstart`,m),Z(O,`networkschange`,h),Z(O,`confirm`,g),Z(O,`cancel`,_),Z(O,`shippingaddresschange`,v),Z(O,`shippingratechange`,y),Z(O,`savedpaymentmethodremove`,b),Z(O,`savedpaymentmethodupdate`,x),Z(O,`availablepaymentmethodschange`,S),Z(O,`change`,u);var M;l&&(M=e===`expressCheckout`?l:function(){l(O)}),Z(O,`ready`,M),q.useLayoutEffect(function(){if(A.current===null&&j.current!==null&&(w||E)){var t=null;if(E){var n=E,i=E;switch(e){case`paymentForm`:t=i.createForm(o);break;case`payment`:t=n.createPaymentElement(o);break;case`address`:if(`mode`in o){var a=o.mode,s=_r(o,Hr);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=wr(o);return q.useEffect(function(){if(A.current){var e=Ar(o,N,[`paymentRequest`]);e&&`update`in A.current&&A.current.update(e)}},[o,N]),q.useLayoutEffect(function(){return function(){if(A.current&&typeof A.current.destroy==`function`)try{A.current.destroy(),A.current=null}catch{}}},[]),q.createElement(`div`,{id:n,className:i,ref:j})};return i.propTypes={id:X.default.string,className:X.default.string,onChange:X.default.func,onBlur:X.default.func,onFocus:X.default.func,onReady:X.default.func,onEscape:X.default.func,onClick:X.default.func,onLoadError:X.default.func,onLoaderStart:X.default.func,onNetworksChange:X.default.func,onConfirm:X.default.func,onCancel:X.default.func,onShippingAddressChange:X.default.func,onShippingRateChange:X.default.func,onSavedPaymentMethodRemove:X.default.func,onSavedPaymentMethodUpdate:X.default.func,onAvailablePaymentMethodsChange:X.default.func,options:X.default.object},i.displayName=r,i.__elementType=e,i},$=typeof window>`u`,Wr=q.createContext(null);Wr.displayName=`EmbeddedCheckoutProviderContext`,Q(`auBankAccount`,$),Q(`card`,$),Q(`cardNumber`,$),Q(`cardExpiry`,$),Q(`cardCvc`,$),Q(`iban`,$),Q(`payment`,$),Q(`expressCheckout`,$),Q(`paymentRequestButton`,$),Q(`linkAuthentication`,$),Q(`contactDetails`,$),Q(`address`,$),Q(`shippingAddress`,$),Q(`paymentMethodMessaging`,$),Q(`taxId`,$),Q(`issuingCardNumberDisplay`,$),Q(`issuingCardCvcDisplay`,$),Q(`issuingCardExpiryDisplay`,$),Q(`issuingCardPinDisplay`,$),Q(`issuingCardCopyButton`,$);var Gr=`dahlia`,Kr=`https://js.stripe.com`,qr=`${Kr}/${Gr}/stripe.js`,Jr=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,Yr=/^https:\/\/js\.stripe\.com\/(v3|[a-z]+)\/stripe\.js(\?.*)?$/,Xr=`loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used`,Zr=function(e){return Jr.test(e)||Yr.test(e)},Qr=function(){for(var e=document.querySelectorAll(`script[src^="${Kr}"]`),t=0;t<e.length;t++){var n=e[t];if(Zr(n.src))return n}return null},$r=function(e){var t=e&&!e.advancedFraudSignals?`?advancedFraudSignals=false`:``,n=document.createElement(`script`);n.src=`${qr}${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},ei=null,ti=null,ni=null,ri=function(e){return function(t){e(Error(`Failed to load Stripe.js`,{cause:t}))}},ii=function(e,t){return function(){window.Stripe?e(window.Stripe):t(Error(`Stripe.js not available`))}},ai=function(e){return ei===null?(ei=new Promise(function(t,n){if(typeof window>`u`||typeof document>`u`){t(null);return}if(window.Stripe&&e&&console.warn(Xr),window.Stripe){t(window.Stripe);return}try{var r=Qr();if(r&&e)console.warn(Xr);else if(!r)r=$r(e);else if(r&&ni!==null&&ti!==null){var i;r.removeEventListener(`load`,ni),r.removeEventListener(`error`,ti),(i=r.parentNode)==null||i.removeChild(r),r=$r(e)}ni=ii(t,n),ti=ri(n),r.addEventListener(`load`,ni),r.addEventListener(`error`,ti)}catch(e){n(e);return}}),ei.catch(function(e){return ei=null,Promise.reject(e)})):ei},oi,si=!1,ci=function(){return oi||(oi=ai(null).catch(function(e){return oi=null,Promise.reject(e)}),oi)};Promise.resolve().then(function(){return ci()}).catch(function(e){si||console.warn(e)});function li(){return typeof document<`u`&&document.documentElement.classList.contains(`dark`)?{theme:`night`}:{theme:`stripe`}}function ui({open:e,onClose:t,onSavedOptimistic:n}){let r=d(w()),{mutate:i,reset:a}=r;return(0,q.useEffect)(()=>{e||a()},[e,i,a]),(0,q.useMemo)(()=>li(),[r.data?.client_secret??null]),(0,J.jsx)(W.Root,{open:e,onOpenChange:e=>{e||t()},children:(0,J.jsxs)(W.Content,{size:`sm`,children:[(0,J.jsx)(W.Header,{children:(0,J.jsx)(W.Title,{children:`Save Payment Method`})}),(0,J.jsx)(W.Body,{className:`min-h-[260px]`,children:(0,J.jsx)(di,{})})]})})}function di(){return(0,q.useEffect)(()=>{console.warn(`[AutoTopUpPaymentMethodModal] VITE_STRIPE_PUBLISHABLE_KEY is not set; the payment-method modal cannot mount Stripe Elements.`)},[]),(0,J.jsx)(B,{tone:`error`,children:`Payment method setup is currently unavailable. Please try again later.`})}function fi(){return(0,J.jsxs)(`div`,{children:[(0,J.jsx)(R,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Payment Method`}),(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`This is the payment method that will be used for automated credit reloads.`})]})}function pi(){let e=l(),t=u(m()),[n,r]=(0,q.useState)(!1),[a,o]=(0,q.useState)(!1),s=d(ae()),c=async()=>{let t=Date.now(),n=e=>e?.stripe_payment_method_updated_at??null,r=n(e.getQueryData(T()));try{await e.invalidateQueries({queryKey:T()})}catch{}for(;Date.now()-t<2e4;){try{let t=await e.fetchQuery(m());if(t.has_payment_method&&n(t)!==r)return}catch{}await new Promise(e=>setTimeout(e,1500))}};if(t.isLoading)return(0,J.jsxs)(z,{padding:`md`,children:[(0,J.jsx)(fi,{}),(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),`Loading…`]})]});if(t.isError||!t.data)return(0,J.jsxs)(z,{padding:`md`,children:[(0,J.jsx)(fi,{}),(0,J.jsx)(`div`,{className:`mt-4`,children:(0,J.jsx)(B,{tone:`error`,children:`Failed to load payment method.`})})]});let f=t.data,p=Qt(f.payment_method_brand??`card`),h=f.payment_method_last4;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(z,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsx)(fi,{}),f.has_payment_method?(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(me,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,J.jsx)(R,{variant:`body-medium-default`,as:`span`,children:p}),h?(0,J.jsxs)(R,{variant:`body-small-default`,as:`div`,className:`text-[var(--content-tertiary)]`,children:[`Ending in `,h]}):null]}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,J.jsx)(i,{variant:`ghost`,onClick:()=>r(!0),children:`Change`}),(0,J.jsx)(i,{variant:`ghost`,onClick:()=>o(!0),disabled:a||s.isPending,leftIcon:(0,J.jsx)(Ge,{className:`h-3.5 w-3.5`}),children:`Remove`})]})]}):(0,J.jsx)(i,{className:`self-start`,onClick:()=>r(!0),children:`Add Card`})]})}),(0,J.jsx)(se,{open:a,title:`Remove payment method?`,message:`Removing your payment method will disable automatic top-ups. You can re-enable them after adding a new payment method.`,confirmLabel:s.isPending?`Removing…`:`Remove`,cancelLabel:`Keep`,destructive:!0,onConfirm:()=>{s.isPending||s.mutate({},{onSuccess:()=>{_(e,void 0,e=>e?{...e,enabled:!1,has_payment_method:!1,payment_method_brand:null,payment_method_last4:null}:ln),o(!1)},onError:()=>{G.error(`Failed to remove payment method. Please try again.`),o(!1)}})},onCancel:()=>{s.isPending||o(!1)}}),(0,J.jsx)(ui,{open:n,onClose:()=>r(!1),onSavedOptimistic:c})]})}var mi={invoices:[]};function hi(e){switch(e){case`paid`:return`positive`;case`open`:return`warning`;case`uncollectible`:return`negative`;default:return`neutral`}}function gi(e,t){let n=t.toUpperCase();try{let t=new Intl.NumberFormat(void 0,{style:`currency`,currency:n}),r=t.resolvedOptions().maximumFractionDigits??2;return t.format(e/10**r)}catch{return`${(e/100).toFixed(2)} ${n}`}}function _i(e){return Ze(new Date(e*1e3),{alwaysShowYear:!0})}function vi(e){let t=document.createElement(`a`);t.href=e,t.target=`_blank`,t.rel=`noopener noreferrer`,document.body.appendChild(t),t.click(),t.remove()}function yi({open:e,onOpenChange:t}){let[r,o]=(0,q.useState)(!1),s=u({queryKey:g(),enabled:e,queryFn:async({signal:e})=>{let{data:t,response:n}=await Oe({throwOnError:!1,signal:e});if(n?.status===404)return mi;if(!n?.ok||!t)throw Error(`Failed to load invoices (${n?.status??`network error`})`);return t}}),c=s.data?.invoices??[],l=c.some(e=>e.invoice_pdf!=null);async function d(){o(!0);try{let{data:e,response:t}=await ke({throwOnError:!1,parseAs:`blob`});if(!t?.ok||!(e instanceof Blob))throw Error(`Failed to download invoices (${t?.status??`network error`})`);let{saveFile:n}=await a(async()=>{let{saveFile:e}=await import(`./native-file-B9T0QAPN.js`).then(e=>e.t);return{saveFile:e}},__vite__mapDeps([0,1,2,3]));await n(e,`invoices.zip`)}catch(e){n(e,{context:`download_all_invoices`}),G.error(`Failed to download invoices.`)}finally{o(!1)}}return(0,J.jsx)(W.Root,{open:e,onOpenChange:t,children:(0,J.jsxs)(W.Content,{size:`lg`,children:[(0,J.jsxs)(W.Header,{children:[(0,J.jsx)(W.Title,{icon:Ke,children:`Invoices`}),(0,J.jsx)(W.Description,{children:`Your billing history. Open an invoice for full details or download it as a PDF.`})]}),(0,J.jsx)(W.Body,{children:s.isLoading?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(R,{as:`span`,variant:`body-small-default`,children:`Loading invoices...`})]}):s.isError?(0,J.jsx)(B,{tone:`error`,children:`Failed to load invoices.`}):c.length===0?(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`py-6 text-center text-[var(--content-tertiary)]`,"data-testid":`invoices-empty`,children:`No Invoices Found`}):(0,J.jsx)(`ul`,{className:`flex flex-col divide-y divide-[var(--border-base)]`,children:c.map(e=>(0,J.jsxs)(`li`,{className:`flex items-center gap-3 py-3`,"data-testid":`invoice-row`,children:[(0,J.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(R,{variant:`body-medium-default`,as:`span`,className:`text-[var(--content-default)]`,children:e.number??`Invoice`}),e.status&&(0,J.jsx)(V,{tone:hi(e.status),children:e.status})]}),(0,J.jsxs)(R,{variant:`body-small-default`,as:`div`,className:`text-[var(--content-tertiary)]`,children:[_i(e.created),` ·`,` `,gi(e.amount_due,e.currency)]})]}),e.hosted_invoice_url&&(0,J.jsx)(i,{asChild:!0,variant:`ghost`,size:`compact`,leftIcon:(0,J.jsx)(ve,{}),children:(0,J.jsx)(`a`,{href:e.hosted_invoice_url,target:`_blank`,rel:`noopener noreferrer`,children:`View`})}),e.invoice_pdf&&(0,J.jsx)(i,{variant:`ghost`,size:`compact`,iconOnly:(0,J.jsx)(ze,{}),"aria-label":`Download invoice PDF`,onClick:()=>vi(e.invoice_pdf)})]},e.id))})}),(0,J.jsxs)(W.Footer,{children:[l&&(0,J.jsx)(i,{variant:`outlined`,leftIcon:r?(0,J.jsx)(K,{className:`animate-spin`}):(0,J.jsx)(ze,{}),disabled:r,onClick:d,children:`Download all`}),(0,J.jsx)(W.Close,{asChild:!0,children:(0,J.jsx)(i,{variant:`primary`,children:`Done`})})]})]})})}var bi={pro:{icon:he,actionLabel:`Manage`,actionVariant:`outlined`,actionTestId:`plan-card-manage-button`,showsRenewal:!0},base:{icon:st,actionLabel:`Upgrade to Pro`,actionVariant:`primary`,actionTestId:`plan-card-upgrade-button`,showsRenewal:!1}},xi=bi.base;function Si(){return(0,J.jsxs)(`div`,{children:[(0,J.jsx)(R,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Plan`}),(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:`Manage which Vellum plan you're on.`})]})}function Ci({onManage:e}){let[t,n]=(0,q.useState)(!1),r=u(M()),a=u(y());if(r.isLoading||a.isLoading)return(0,J.jsxs)(z,{padding:`md`,children:[(0,J.jsx)(Si,{}),(0,J.jsxs)(`div`,{className:`mt-4 flex items-center gap-2 text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),(0,J.jsx)(R,{as:`span`,variant:`body-small-default`,children:`Loading plan...`})]})]});let o=r.data,s=a.data?.plans,c=s?.find(e=>e.id===o?.plan_id);if(r.isError||a.isError||!o||!s||!c)return(0,J.jsx)(B,{tone:`error`,children:`Failed to load plan.`});let l=bi[c.id]??xi,d=l.icon,f=c.name??c.id,p=l.showsRenewal&&(o.cancel_at_period_end===!0||!!o.cancel_at),m=o.status===`canceled`,h=jt(o),g=l.showsRenewal&&!p&&!m&&o.current_period_end,_=l.showsRenewal&&p&&!m&&h,v=c.id===`pro`?c:void 0,b=o.selected_credit_tier??null,x=b==null?void 0:v?.credit_tiers,S=x?.find(e=>e.tier===b),C=S?`${S.label} (${Y(S.price_cents)})`:x?.length?b:null;return(0,J.jsxs)(z,{padding:`lg`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,J.jsx)(Si,{}),(0,J.jsx)(i,{variant:`outlined`,leftIcon:(0,J.jsx)(Ke,{}),onClick:()=>n(!0),"data-testid":`plan-card-invoices-button`,children:`Invoices`})]}),(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)]`,children:(0,J.jsx)(d,{className:`h-4 w-4 text-[var(--content-default)]`})}),(0,J.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,J.jsx)(R,{variant:`body-medium-default`,as:`div`,"data-testid":`plan-card-name`,children:f}),(0,J.jsx)(R,{variant:`body-small-default`,as:`div`,className:`leading-snug text-[var(--content-tertiary)]`,children:(0,J.jsx)(Jt,{features:c.included_features,variant:`inline`})})]}),(0,J.jsx)(i,{variant:l.actionVariant,onClick:e,"data-testid":l.actionTestId,children:l.actionLabel})]}),C&&(0,J.jsxs)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-credit-bundle`,children:[`Monthly credits: `,C]}),g&&(0,J.jsxs)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,"data-testid":`plan-card-renews`,children:[`Renews on `,At(o.current_period_end),`.`]}),_&&(0,J.jsxs)(R,{as:`p`,variant:`body-small-default`,className:`text-[var(--system-mid-strong)]`,"data-testid":`plan-card-cancels`,children:[`Your plan ends on `,At(h),`.`]})]}),(0,J.jsx)(yi,{open:t,onOpenChange:n})]})}var wi=`settings-referral-panel`;function Ti(e){return e.replace(/\.00$/,``)}function Ei(){let{data:e,isLoading:t,isError:n}=u(N()),[r,a]=(0,q.useState)(!1),o=(0,q.useCallback)(e=>{navigator.clipboard.writeText(e).then(()=>{a(!0),G.success(`Copied to clipboard!`),setTimeout(()=>a(!1),2e3)})},[]),s=e?`Share Vellum with friends - you'll each earn ${Ti(e.referrer_credit_amount)} credits when they sign up, up to ${Ti(e.earning_cap)} total.`:`Share Vellum with friends and earn credits for every signup.`;return(0,J.jsx)(z,{padding:`md`,id:wi,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(`div`,{children:[(0,J.jsx)(R,{as:`h2`,variant:`title-medium`,className:`text-[var(--content-default)]`,children:`Earn Free Credits`}),(0,J.jsx)(R,{as:`p`,variant:`body-small-default`,className:`mt-2 text-[var(--content-tertiary)]`,children:s})]}),t?(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),`Loading...`]}):n||!e?(0,J.jsx)(B,{tone:`error`,children:`Failed to load referral information.`}):(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-[200px] flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(Be,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`span`,{className:`flex items-baseline gap-1 text-body-medium-default`,children:[(0,J.jsx)(`span`,{children:Ti(e.total_earned)}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Credits Earned`})]})]}),(0,J.jsxs)(`div`,{className:`flex min-w-[200px] flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,J.jsx)(`span`,{"aria-hidden":!0,className:`flex h-6 w-6 shrink-0 items-center justify-center text-[var(--content-emphasised)]`,children:(0,J.jsx)(qe,{className:`h-3.5 w-3.5`})}),(0,J.jsxs)(`span`,{className:`flex items-baseline gap-1 text-body-medium-default`,children:[(0,J.jsx)(`span`,{children:e.referred_count}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Friends Referred`})]})]}),(0,J.jsx)(i,{variant:`outlined`,onClick:()=>o(e.referral_url),leftIcon:r?(0,J.jsx)(Fe,{className:`h-3.5 w-3.5`}):(0,J.jsx)(Ye,{className:`h-3.5 w-3.5`}),"data-testid":`referral-copy-button`,children:r?`Copied!`:`Copy Share Link`})]})]})})}function Di({icon:e,label:t,from:n,to:r}){return(0,J.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg bg-[var(--surface-base)] p-3`,children:[(0,J.jsx)(`span`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg`,style:{backgroundColor:`color-mix(in oklab, var(--system-positive-strong) 10%, transparent)`},children:(0,J.jsx)(e,{className:`h-4 w-4 text-[var(--system-positive-strong)]`})}),(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:t}),(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)] line-through`,children:n}),(0,J.jsx)(Pe,{className:`h-3 w-3 shrink-0 text-[var(--content-tertiary)]`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:r})]})]})]})}function Oi({open:e,onClose:t}){let n=u({...L(),enabled:e}),r=u({...x(),enabled:e}),a=n.data,o=a?.machine_size||`small`,s=a?.provisioned_storage_gib??null,c=r.data?.max_machine_tier??null,l=r.data?.selected_storage_gib??null,d=xe(c),f=d.length>0?d[d.length-1]:o,p=f!==o,m=l!=null&&(s==null||s<l),h=p||m,[g,_]=(0,q.useState)(null),v=A({onSuccess:()=>{G.success(`Resize started. Changes will apply shortly.`,{id:`assistant-resize`}),_(null),t()},onError:e=>{_(Ee(e,`Failed to resize assistant. Please try again.`))}}),y=v.isPending,b=n.isLoading||r.isLoading;return(0,J.jsx)(W.Root,{open:e,onOpenChange:e=>{e||(_(null),t())},children:(0,J.jsxs)(W.Content,{size:`sm`,children:[(0,J.jsxs)(W.Header,{children:[(0,J.jsx)(W.Title,{icon:Se,children:`Plan Updated`}),(0,J.jsx)(W.Description,{children:`Your new resources are ready. Apply them now to resize your assistant — it will briefly restart.`})]}),(0,J.jsxs)(W.Body,{children:[b?(0,J.jsx)(`div`,{className:`flex items-center justify-center py-6`,children:(0,J.jsx)(K,{className:`h-5 w-5 animate-spin text-[var(--content-tertiary)]`})}):h?(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[p&&(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Di,{icon:pe,label:`Machine`,from:Te[o],to:Te[f]}),(0,J.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-lg bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:`CPU`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:we[f].split(`,`)[0].trim()})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-lg bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,J.jsx)(`span`,{className:`text-label-small-default text-[var(--content-tertiary)]`,children:`Memory`}),(0,J.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-default)]`,children:we[f].split(`,`)[1].trim()})]})]})]}),m&&(0,J.jsx)(Di,{icon:ye,label:`Storage`,from:s==null?`—`:`${s} GiB`,to:`${l} GiB`})]}):(0,J.jsx)(B,{tone:`neutral`,children:`Your assistant is already running at the maximum size for your plan.`}),g&&(0,J.jsx)(`div`,{className:`mt-3`,children:(0,J.jsx)(B,{tone:`error`,children:g})})]}),(0,J.jsxs)(W.Footer,{children:[(0,J.jsx)(i,{variant:`ghost`,onClick:()=>{_(null),t()},children:`Do Later`}),(0,J.jsx)(i,{disabled:b||!h||y||!a?.id,leftIcon:y?(0,J.jsx)(K,{className:`animate-spin`}):void 0,onClick:()=>{if(!a?.id)return;_(null);let e={};p&&(e.machine_size=f),m&&l!=null&&(e.storage_gib=l),v.mutate({path:{id:a.id},body:e})},children:g?`Retry`:`Apply & Restart`})]})]})})}function ki(){let[e]=s(),t=o(),n=l();return(0,q.useEffect)(()=>{let r=e.get(`billing_status`);r&&(r===`success`?(G.success(`Payment received! Your credit balance will update shortly.`,{id:`billing-status`}),n.invalidateQueries({queryKey:te().queryKey})):r===`cancel`&&G.info(`Checkout was cancelled. No credits were added.`,{id:`billing-status`}),t(Ae.settings.billing,{replace:!0}))},[e,t,n]),null}function Ai(){let e=Ue({platformHostedOnly:!0}),t=Ue(),n=We(),r=Ne(),[i,a]=s(),[o,l]=(0,q.useState)(!1),u=(0,q.useCallback)(()=>l(!0),[]),d=(0,q.useCallback)(()=>l(!1),[]),[f,p]=(0,q.useState)(!1),m=(0,q.useCallback)(()=>p(!0),[]);(0,q.useEffect)(()=>{i.has(`adjust_plan`)&&(l(!0),a(e=>{let t=new URLSearchParams(e);return t.delete(`adjust_plan`),t},{replace:!0}))},[i,a]);let h=i.has(`session_id`),g=(0,q.useCallback)(()=>{a(e=>{let t=new URLSearchParams(e);return t.delete(`session_id`),t},{replace:!0})},[a]);if(t===`gated`)return(0,J.jsx)(c,{replace:!0,to:Ae.settings.general});if(t===`disabled`)return(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsx)(Je,{children:`Log in to the Vellum platform to manage billing and usage.`})});if(r)return(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,J.jsx)(K,{className:`h-4 w-4 animate-spin`}),`Loading billing…`]})});let _=n;return!n&&e!==`gated`?(0,J.jsx)(`div`,{className:`space-y-4`,children:(0,J.jsx)(B,{tone:`warning`,children:`Billing isn't available for the current assistant state.`})}):(0,J.jsxs)(`div`,{className:`space-y-4`,children:[(0,J.jsxs)(q.Suspense,{fallback:null,children:[(0,J.jsx)(ki,{}),(0,J.jsx)(Sn,{})]}),_&&(0,J.jsx)(lr,{}),_&&(0,J.jsx)(Ci,{onManage:u}),_&&(0,J.jsx)(Xt,{open:o,onClose:d,onTierUpgraded:m}),(0,J.jsx)(pi,{}),(0,J.jsx)(q.Suspense,{fallback:null,children:(0,J.jsx)(hn,{})}),(0,J.jsx)(Ei,{}),(0,J.jsx)(cr,{}),_&&(0,J.jsx)(wt,{open:h,onClose:g}),_&&(0,J.jsx)(Oi,{open:f,onClose:()=>p(!1)})]})}export{Ai as BillingPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[Object.freeze(JSON.parse(`{"displayName":"BIRD2 Configuration","fileTypes":["conf","bird","bird2","bird3","bird.conf","bird2.conf","bird3.conf"],"foldingStartMarker":"\\\\{\\\\s*$","foldingStopMarker":"^\\\\s*}","name":"bird2","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#ip-addresses"},{"include":"#prefixes"},{"include":"#vpn-rd"},{"include":"#bytestrings"},{"include":"#bgp-paths"},{"include":"#print-statements"},{"include":"#template-definitions"},{"include":"#filter-definitions"},{"include":"#function-definitions"},{"include":"#protocol-definitions"},{"include":"#next-hop-statements"},{"include":"#neighbor-statements"},{"include":"#import-export-statements"},{"include":"#variable-declarations"},{"include":"#method-calls"},{"include":"#function-calls"},{"include":"#method-properties"},{"include":"#route-attributes"},{"include":"#data-types"},{"include":"#constants"},{"include":"#structural-keywords"},{"include":"#protocol-phrases"},{"include":"#functional-keywords"},{"include":"#semantic-modifiers"},{"include":"#builtin-functions"},{"include":"#filter-names"},{"include":"#user-variables"},{"include":"#operators"},{"include":"#numbers"},{"include":"#symbols"},{"include":"#blocks"}],"repository":{"bgp-paths":{"patterns":[{"begin":"\\\\[=","beginCaptures":{"0":{"name":"punctuation.definition.bgp-path.begin.bird"}},"end":"=]","endCaptures":{"0":{"name":"punctuation.definition.bgp-path.end.bird"}},"name":"meta.bgp-path.bird","patterns":[{"match":"[*+?]","name":"keyword.operator.wildcard.bird"},{"match":"\\\\b[0-9]+\\\\b","name":"constant.numeric.asn.bird"},{"include":"#operators"},{"include":"#symbols"}]}]},"blocks":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.begin.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.block.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.set.begin.bird"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.set.end.bird"}},"name":"meta.set.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.tuple.begin.bird"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.tuple.end.bird"}},"name":"meta.tuple.bird","patterns":[{"include":"$self"}]},{"match":";","name":"punctuation.terminator.statement.bird"},{"match":",","name":"punctuation.separator.bird"}]},"builtin-functions":{"patterns":[{"match":"\\\\b(?:defined|unset|roa_check|aspa_check|aspa_check_downstream|aspa_check_upstream|from_hex|format|append|prepend|add|delete|empty|reset|bt_assert|bt_test_suite|bt_test_same)\\\\b","name":"support.function.builtin.bird"}]},"bytestrings":{"patterns":[{"match":"\\\\bhex:\\\\h{2}(?:[-.:\\\\s]*\\\\h{2})*\\\\b","name":"constant.numeric.bytestring.bird"},{"match":"\\\\b(?:\\\\h{2}[-.:\\\\s]*){15,}\\\\h{2}\\\\b","name":"constant.numeric.bytestring.bird"},{"match":"\\\\b\\\\h{32,}\\\\b","name":"constant.numeric.bytestring.bird"}]},"comments":{"patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.bird"}},"end":"$","name":"comment.line.number-sign.bird"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.bird"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.bird"}},"name":"comment.block.bird"}]},"constants":{"patterns":[{"match":"\\\\b(?:on|off|yes|no|true|false)\\\\b","name":"constant.language.boolean.bird"},{"match":"\\\\b(?:empty|unknown|generic|rt|ro|one|ten)\\\\b","name":"constant.language.special.bird"},{"match":"\\\\bSCOPE_(?:HOST|LINK|SITE|ORGANIZATION|UNIVERSE)\\\\b","name":"constant.language.scope.bird"},{"match":"\\\\bRTS_(?:STATIC|INHERIT|DEVICE|RIP|OSPF|OSPF_IA|OSPF_EXT1|OSPF_EXT2|BGP|PIPE|BABEL)\\\\b","name":"constant.language.source.bird"},{"match":"\\\\bRTD_(?:ROUTER|DEVICE|MULTIPATH|BLACKHOLE|UNREACHABLE|PROHIBIT)\\\\b","name":"constant.language.dest.bird"},{"match":"\\\\bROA_(?:UNKNOWN|INVALID|VALID)\\\\b","name":"constant.language.roa.bird"},{"match":"\\\\bASPA_(?:UNKNOWN|INVALID|VALID)\\\\b","name":"constant.language.aspa.bird"},{"match":"\\\\bNET_(?:IP4|IP6|IP6_SADR|VPN4|VPN6|ROA4|ROA6|FLOW4|FLOW6|MPLS)\\\\b","name":"constant.language.net-type.bird"},{"match":"\\\\bMPLS_POLICY_(?:NONE|STATIC|PREFIX|AGGREGATE|VRF)\\\\b","name":"constant.language.mpls.bird"}]},"data-types":{"patterns":[{"match":"\\\\b(?:(?:int|pair|quad|ip|prefix|ec|lc|rd|enum)\\\\s+set|int|bool|ip|prefix|rd|pair|quad|ec|lc|string|bytestring|bgpmask|bgppath|clist|eclist|lclist|set|enum|route)\\\\b","name":"storage.type.bird"}]},"filter-definitions":{"patterns":[{"begin":"\\\\b(filter)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.filter.bird"},"2":{"name":"entity.name.function.filter.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.filter-definition.bird","patterns":[{"include":"$self"}]}]},"filter-names":{"patterns":[{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*_filter\\\\b","name":"entity.name.function.filter.bird"}]},"function-calls":{"patterns":[{"begin":"\\\\b([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.call.bird"}},"end":"\\\\)","name":"meta.function-call.bird","patterns":[{"include":"$self"}]}]},"function-definitions":{"patterns":[{"begin":"\\\\b(function)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"keyword.control.function.bird"},"2":{"name":"entity.name.function.user-defined.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.function-definition.bird","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.bird"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bird"}},"name":"meta.function-parameters.bird","patterns":[{"include":"#data-types"},{"include":"#symbols"}]},{"begin":"->","beginCaptures":{"0":{"name":"keyword.operator.return-type.bird"}},"end":"(?=\\\\{)","name":"meta.function-return-type.bird","patterns":[{"include":"#data-types"}]},{"include":"$self"}]}]},"functional-keywords":{"patterns":[{"match":"\\\\b(?:static|rip|ospf|bgp|babel|rpki|bfd|bmp|device|direct|kernel|pipe|perf|mrt|aggregator|l3vpn|radv)\\\\b","name":"keyword.control.protocol-type.bird"},{"match":"\\\\b(?:graceful|restart|preference|disabled|hold|keepalive|connect|retry|start|delay|error|wait|forget|scan|randomize|router|id)\\\\b","name":"keyword.control.routing.bird"},{"match":"\\\\b(?:interface|type|wired|wireless|tunnel|rxcost|limit|hello|update|interval|port|tx|class|dscp|priority|rx|buffer|length|check|link|rtt|cost|min|max|decay|send|timestamps)\\\\b","name":"keyword.other.interface.bird"},{"match":"\\\\b(?:(?:refresh|retry|expire|transport|ssh|tcp|user|address|version|ignore|private|public|key)|(?:local\\\\s+address|ignore\\\\s+max\\\\s+length|min\\\\s+version|max\\\\s+version|bird\\\\s+private\\\\s+key|remote\\\\s+public\\\\s+key))\\\\b","name":"keyword.other.rpki.bird"},{"match":"\\\\b(?:authentication|none|mac|permissive|password|generate|accept|from|to|algorithm|hmac|sha1|sha256|sha384|sha512|blake2s128|blake2s256|blake2b256|blake2b512)\\\\b","name":"keyword.other.auth.bird"},{"match":"\\\\btime\\\\b","name":"keyword.other.time.bird"},{"match":"\\\\b(?:hostname|description|debug|log|syslog|stderr|bird|protocols|tables|channels|timeouts|passwords|bfd|confederation|cluster|stub|dead|neighbors|area|md5|multihop|passive|rfc1583compat|tick|ls|retransmit|transmit|ack|state|database|summary|external|nssa|translator|always|candidate|never|role|stability|election|action|warn|block|disable|keep|filtered|receive|modify|add|delete|withdraw|unreachable|blackhole|prohibit|unreach|igp_metric|localpref|med|origin|community|large_community|ext_community|as_path|prepend|weight|gateway|scope|onlink|recursive|multipath|igp|channel|sadr|src|learn|persist|via|ng)\\\\b","name":"keyword.other.config.bird"},{"match":"\\\\b(?:flow4|flow6|dst|src|proto|header|dport|sport|icmp|code|tcp|flags|dscp|dont_fragment|is_fragment|first_fragment|last_fragment|fragment|label|offset)\\\\b","name":"keyword.other.flowspec.bird"},{"match":"\\\\b(?:vpn4|vpn6|mpls|aspa|roa4|roa6)\\\\b","name":"keyword.other.address.bird"},{"match":"\\\\b(?:all|none)\\\\b","name":"keyword.other.quick-declaration.bird"}]},"import-export-statements":{"patterns":[{"captures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.filter.bird"},"3":{"name":"entity.name.function.filter.bird"}},"match":"\\\\b(import)\\\\s+(filter)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\b","name":"meta.import-statement.bird"},{"begin":"\\\\b(import)\\\\s+(filter)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.filter.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.import-filter-inline.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(export)\\\\s+(where)\\\\b","beginCaptures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.where.bird"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.bird"}},"name":"meta.export-where-clause.bird","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.filter.bird"},"3":{"name":"entity.name.function.filter.bird"}},"match":"\\\\b(export)\\\\s+(filter)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\b","name":"meta.export-statement.bird"}]},"ip-addresses":{"patterns":[{"match":"\\\\b(?:[0-9]{1,3}\\\\.){3}[0-9]{1,3}(?:/[0-9]{1,2})?\\\\b","name":"constant.numeric.ip.ipv4.bird"},{"match":"\\\\b(?:\\\\h{0,4}:){2,7}\\\\h{0,4}(?:/[0-9]{1,3})?\\\\b","name":"constant.numeric.ip.ipv6.bird"},{"match":"::(?:\\\\h{0,4}:){0,6}\\\\h{0,4}(?:/[0-9]{1,3})?\\\\b","name":"constant.numeric.ip.ipv6.bird"},{"match":"\\\\b(?:\\\\h{0,4}:){1,6}::(?:\\\\h{0,4}:){0,5}\\\\h{0,4}(?:/[0-9]{1,3})?\\\\b","name":"constant.numeric.ip.ipv6.bird"}]},"method-calls":{"patterns":[{"begin":"\\\\.\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.method.bird"}},"end":"\\\\)","name":"meta.method-call.bird","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"variable.other.property.bird"}},"match":"\\\\.\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)","name":"meta.method-access.bird"}]},"method-properties":{"patterns":[{"match":"(?<=\\\\.)\\\\s*(?:first|last|last_nonaggregated|len|asn|data1??|data2|is_v4|ip|src|dst|rd|maxlen|type|mask|min|max)\\\\b(?!\\\\s*\\\\()","name":"support.variable.property.bird"}]},"neighbor-statements":{"patterns":[{"captures":{"1":{"name":"keyword.control.local.bird"},"2":{"name":"entity.name.symbol.local-address.bird"},"3":{"name":"keyword.control.port.bird"},"4":{"name":"constant.numeric.port.bird"},"5":{"name":"keyword.control.as.bird"},"6":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(local)\\\\s+([.:\\\\h]+|[A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')(?:\\\\s+(port)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.local-as-statement.bird"},{"captures":{"1":{"name":"keyword.control.local.bird"},"2":{"name":"keyword.control.as.bird"},"3":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(local)\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.local-as-template-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"constant.numeric.ip-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"},"8":{"name":"keyword.control.port.bird"},"9":{"name":"constant.numeric.port.bird"}},"match":"\\\\b(neighbor)\\\\s+([.:\\\\h]+)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?(?:\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\s+(port)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-port-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"entity.name.symbol.neighbor-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"},"8":{"name":"keyword.control.port.bird"},"9":{"name":"constant.numeric.port.bird"}},"match":"\\\\b(neighbor)\\\\s+('[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\b)[A-Z_a-z][0-9A-Z_a-z]*)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?(?:\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\s+(port)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-port-symbolic-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"constant.numeric.ip-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(neighbor)\\\\s+([.:\\\\h]+)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"entity.name.symbol.neighbor-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(neighbor)\\\\s+('[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\b)[A-Z_a-z][0-9A-Z_a-z]*)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-symbolic-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"keyword.control.as.bird"},"3":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(neighbor)\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-template-statement.bird"},{"captures":{"1":{"name":"keyword.control.source.bird"},"2":{"name":"constant.numeric.ip-address.bird"}},"match":"\\\\b(source address)\\\\s+([.:\\\\h]+)\\\\b","name":"meta.source-address-statement.bird"}]},"next-hop-statements":{"patterns":[{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.ip-version.bird"},"3":{"name":"constant.numeric.ip-address.bird"}},"match":"\\\\b(next hop)\\\\s+(ipv4)\\\\s+([.0-9]+)\\\\b","name":"meta.next-hop-ipv4.bird"},{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.ip-version.bird"},"3":{"name":"constant.numeric.ip-address.bird"}},"match":"\\\\b(next hop)\\\\s+(ipv6)\\\\s+([:\\\\h]+)\\\\b","name":"meta.next-hop-ipv6.bird"},{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.semantic-modifier.bird"}},"match":"\\\\b(next hop)\\\\s+(self)\\\\b","name":"meta.next-hop-simple.bird"},{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.semantic-modifier.bird"}},"match":"\\\\b(extended next hop)\\\\s+(o(?:n|ff))\\\\b","name":"meta.extended-next-hop-statement.bird"}]},"numbers":{"patterns":[{"match":"\\\\b0x\\\\h+\\\\b","name":"constant.numeric.hex.bird"},{"match":"\\\\b[0-9]+\\\\b","name":"constant.numeric.decimal.bird"},{"captures":{"1":{"name":"keyword.other.unit.bird"}},"match":"\\\\b[0-9]+\\\\s*([mu]??s)\\\\b","name":"constant.numeric.time.bird"}]},"operators":{"patterns":[{"match":"==|!=|<=|>=|!~|[<=>~]","name":"keyword.operator.comparison.bird"},{"match":"&&|\\\\|\\\\||!|->","name":"keyword.operator.logical.bird"},{"match":"\\\\+\\\\+","name":"keyword.operator.concat.bird"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.bird"},{"match":"\\\\.\\\\.","name":"keyword.operator.range.bird"},{"match":"\\\\.","name":"keyword.operator.accessor.bird"}]},"prefixes":{"patterns":[{"match":"\\\\b(?:(?:[0-9]{1,3}\\\\.){3}[0-9]{1,3}|(?:\\\\h{0,4}:)+\\\\h{0,4})/[0-9]{1,3}(?:[-+]|\\\\{[0-9]+,[0-9]+})?\\\\b","name":"constant.numeric.prefix.bird"}]},"print-statements":{"patterns":[{"begin":"\\\\b(printn??)\\\\b","beginCaptures":{"1":{"name":"keyword.other.print.bird"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.bird"}},"name":"meta.print-statement.bird","patterns":[{"include":"$self"}]}]},"protocol-definitions":{"patterns":[{"begin":"\\\\b(protocol)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s+(from)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.protocol.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.protocol.bird"},"4":{"name":"keyword.control.template-reference.bird"},"5":{"name":"entity.name.function.template.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.protocol-definition-with-template.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(protocol)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.protocol.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.protocol.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.protocol-definition-with-name.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(protocol)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.protocol.bird"},"2":{"name":"entity.name.type.protocol.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.protocol-definition-anonymous.bird","patterns":[{"include":"$self"}]}]},"protocol-phrases":{"patterns":[{"match":"\\\\b(?:strict\\\\s+bind|zero\\\\s+udp6\\\\s+checksum\\\\s+rx|idle\\\\s+tx\\\\s+interval|multiplier|keyed|meticulous)\\\\b","name":"keyword.other.bfd.phrase.bird"},{"match":"\\\\b(?:send\\\\s+timestamps|rtt\\\\s+(?:cost|min|max|decay)|next\\\\s+hop\\\\s+prefer|prefer|native)\\\\b","name":"keyword.other.babel.phrase.bird"},{"match":"\\\\b(?:next\\\\s+hop\\\\s+(?:self|address|ibgp|ebgp)|link\\\\s+local\\\\s+next\\\\s+hop\\\\s+format|import\\\\s+table|export\\\\s+table|base\\\\s+table|add\\\\s+paths|aigp\\\\s+originate|long\\\\s+lived\\\\s+graceful\\\\s+restart|long\\\\s+lived\\\\s+stale\\\\s+time|dynamic\\\\s+name(?:\\\\s+digits)?|free\\\\s+bind|ttl\\\\s+security|multihop\\\\s+password|rr\\\\s+client|rs\\\\s+client|advertise\\\\s+hostname|interpret\\\\s+communities|deterministic\\\\s+med|default\\\\s+bgp_local_pref|default\\\\s+bgp_med|med\\\\s+metric|igp\\\\s+metric|missing\\\\s+lladdr|gateway\\\\s+address|forwarding\\\\s+addressed|gateway\\\\s+recursive|allow\\\\s+local\\\\s+as|allow\\\\s+bogus\\\\s+as|originate\\\\s+community|full\\\\s+route\\\\s+table|capabilities|primary)\\\\b","name":"keyword.other.bgp.phrase.bird"}]},"route-attributes":{"patterns":[{"match":"\\\\b(?:net|scope|preference|from|gw|proto|source|dest|ifname|ifindex|weight|gw_mpls|gw_mpls_stack|onlink|igp_metric|mpls_label|mpls_policy|mpls_class|bgp_path|bgp_origin|bgp_next_hop|bgp_med|bgp_local_pref|bgp_community|bgp_ext_community|bgp_large_community|bgp_originator_id|bgp_cluster_list|ospf_metric1|ospf_metric2|ospf_tag|ospf_router_id|rip_metric|rip_tag|mypath|mylclist)\\\\b","name":"support.variable.route-attribute.bird"}]},"semantic-modifiers":{"patterns":[{"match":"\\\\b(?:self|on|off|remote|extended)\\\\b","name":"keyword.other.semantic-modifier.bird"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.bird"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.bird"}},"name":"string.quoted.double.bird","patterns":[{"match":"\\\\.","name":"constant.character.escape.bird"}]},{"match":"'[-.0-:A-Z_a-z]+'","name":"entity.name.symbol.quoted.bird"}]},"structural-keywords":{"patterns":[{"match":"\\\\b(?:if|then|else|case|for|do|while|break|continue|return|in)\\\\b","name":"keyword.control.bird"},{"match":"\\\\belse\\\\s*:","name":"keyword.control.case.else.bird"},{"match":"\\\\b(?:accept|reject|error)\\\\b","name":"keyword.control.flow.bird"},{"match":"\\\\b(?:protocol|table|define|include|attribute|eval|ipv4|ipv6|local|as|from|where|cost|limit|action)\\\\b","name":"keyword.control.structure.bird"}]},"symbols":{"patterns":[{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*\\\\b","name":"variable.other.bird"}]},"template-definitions":{"patterns":[{"begin":"\\\\b(template)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s+(from)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.template.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.template.bird"},"4":{"name":"keyword.control.template-reference.bird"},"5":{"name":"entity.name.function.template.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.template-definition-with-from.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(template)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.template.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.template.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.template-definition-with-name.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(template)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.template.bird"},"2":{"name":"entity.name.type.protocol.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.template-definition-anonymous.bird","patterns":[{"include":"$self"}]}]},"user-variables":{"patterns":[{"match":"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b","name":"variable.other.user-defined.bird"}]},"variable-declarations":{"patterns":[{"captures":{"1":{"name":"storage.type.bird"},"2":{"name":"variable.other.declaration.bird"}},"match":"\\\\b((?:int|pair|quad|ip|prefix|ec|lc|rd|enum)\\\\s+set|int|bool|ip|prefix|rd|pair|quad|ec|lc|string|bytestring|bgpmask|bgppath|clist|eclist|lclist|set|enum|route)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)(?:\\\\s*=|;)","name":"meta.variable-declaration.bird"}]},"vpn-rd":{"match":"\\\\b(?:[0-9]+:[0-9]+|[012]:[0-9]+:[0-9]+|(?:[0-9]{1,3}\\\\.){3}[0-9]{1,3}:[0-9]+)\\\\b","name":"constant.numeric.vpn-rd.bird"}},"scopeName":"source.bird2","aliases":["bird"]}`))];export{e as default};
|