@vellumai/web 0.10.1 → 0.10.2-dev.202606241743.799fce7
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/AnimatePresence-iz8Br0FI.js +9 -0
- package/dist/assets/{BundleConfirmPage-B1RL5CT5.js → BundleConfirmPage-C_kiR0mX.js} +1 -1
- package/dist/assets/about-page-C-EuogDv.js +1 -0
- package/dist/assets/{account-page-CHiDb1yX.js → account-page-C6e1Asus.js} +1 -1
- package/dist/assets/{add-credits-modal-GSsxaybq.js → add-credits-modal-DJoCPMh2.js} +1 -1
- package/dist/assets/{advanced-page-9dJbjOiT.js → advanced-page-cg1PhSPO.js} +1 -1
- package/dist/assets/ai-page-BnfOtN01.js +1 -0
- package/dist/assets/{api-CjVG_nMi.js → api-6kAubuZs.js} +1 -1
- package/dist/assets/{api-key-screen-BBajxzG8.js → api-key-screen-D9aVUIn1.js} +1 -1
- package/dist/assets/app-info-WEMzhSvW.js +1 -0
- package/dist/assets/{archive-page-DDar_tND.js → archive-page-Cl-42cit.js} +1 -1
- package/dist/assets/assistant-api-DiaFE2Op.js +1 -0
- package/dist/assets/{assistant-feature-flag-store-BD9zTDcP.js → assistant-feature-flag-store-EI2AQmwy.js} +1 -1
- package/dist/assets/{assistant-identity-store-DaDnhbxy.js → assistant-identity-store-ADxStqSC.js} +1 -1
- package/dist/assets/{assistant-status-panel-CFhkAfJY.js → assistant-status-panel-D5I0z06N.js} +1 -1
- package/dist/assets/auth-store-C7FE9LLc.js +7 -0
- package/dist/assets/billing-page-CN5y2WzV.js +3 -0
- package/dist/assets/{bookmarks-page-DyjSZPPW.js → bookmarks-page-CWM61uFz.js} +1 -1
- package/dist/assets/brain-Bs6LnfHO.js +1 -0
- package/dist/assets/browser-DKUVpLgv.js +2 -0
- package/dist/assets/{build-state-CMpEWWjf.js → build-state-htTId11f.js} +1 -1
- package/dist/assets/{capture-error-AoUURkgi.js → capture-error-BaKOqBjF.js} +1 -1
- package/dist/assets/check-BCNZ91b3.js +1 -0
- package/dist/assets/{client-feature-flag-store-DjN8fxHA.js → client-feature-flag-store-9mwvhzvF.js} +1 -1
- package/dist/assets/{command-palette-DJgHXop1.js → command-palette-CfBCI30i.js} +1 -1
- package/dist/assets/{command-palette-window-page-CSaRzD87.js → command-palette-window-page-DySNbPQt.js} +1 -1
- package/dist/assets/community-page-ByWB-99j.js +1 -0
- package/dist/assets/{connect-page-B0Pym3dJ.js → connect-page-DoYSgFSC.js} +1 -1
- package/dist/assets/{consent-controls-o06cSwWt.js → consent-controls-BW_93Vr6.js} +1 -1
- package/dist/assets/{contacts-gateway-11r4y5pQ.js → contacts-gateway-BxaKCzE9.js} +1 -1
- package/dist/assets/contacts-page-route-Dmjrm2yB.js +1 -0
- package/dist/assets/{conversation-queries-DF1Lujnm.js → conversation-queries-BdtoA-7l.js} +1 -1
- package/dist/assets/{danger-zone-redirect-page-iCmRnyei.js → danger-zone-redirect-page-D1ZS4oVi.js} +1 -1
- package/dist/assets/debug-page-CugNTSKJ.js +2 -0
- package/dist/assets/{deploy-dialogs-DygUf1og.js → deploy-dialogs-CAuGaoSA.js} +1 -1
- package/dist/assets/{developer-page-C5desNav.js → developer-page-DbDerqdt.js} +1 -1
- package/dist/assets/devices-page-DycMCNRJ.js +1 -0
- package/dist/assets/diagnostics-D5xXiLo-.js +1 -0
- package/dist/assets/dictation-overlay-page-CI5MMdBN.js +1 -0
- package/dist/assets/document-viewer-page-Bmjw5eSp.js +1 -0
- package/dist/assets/earn-credits-modal-DgQkqCm2.js +1 -0
- package/dist/assets/{emails-page-Duy9jhr6.js → emails-page-BzFjSyUg.js} +1 -1
- package/dist/assets/esm-5V2_V7Ao.js +1 -0
- package/dist/assets/{esm-B9FuN3Io.js → esm-CJjEymow.js} +2 -2
- package/dist/assets/esm-CYrzAUNH.js +2 -0
- package/dist/assets/esm-ClC_4zcn.js +2 -0
- package/dist/assets/esm-CxEFp02j.js +2 -0
- package/dist/assets/esm-_pMRHia8.js +2 -0
- package/dist/assets/feature-flag-catalog-DteSxDgH.js +1 -0
- package/dist/assets/file-editor-Dh3eICZH.js +1 -0
- package/dist/assets/file-text-ClqzuFsu.js +1 -0
- package/dist/assets/general-page-DUZnH9XY.js +1 -0
- package/dist/assets/hatching-screen-DhFPt7WB.js +1 -0
- package/dist/assets/home-page-route-Bd7ObM7a.js +1 -0
- package/dist/assets/{hosting-screen--kBc2JgZ.js → hosting-screen-Bgq-tjdc.js} +1 -1
- package/dist/assets/identity-page-route-CBFg4dip.js +1 -0
- package/dist/assets/index-ApY1f9HM.css +2 -0
- package/dist/assets/index-C1jO2jSf.js +132 -0
- package/dist/assets/inspect-page-1wdViQPR.js +7 -0
- package/dist/assets/install-JN9UhT9x.js +1 -0
- package/dist/assets/integrations-page-BW3ymc1u.js +1 -0
- package/dist/assets/{intelligence-layout-DgkmPrJl.js → intelligence-layout-Cw4Ct2E0.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-page-waVolRQN.js → keyboard-shortcuts-page-RHuyNXXr.js} +1 -1
- package/dist/assets/{library-detail-page-eMzOqx_B.js → library-detail-page-ewP7To6o.js} +1 -1
- package/dist/assets/library-page-B_i0rXlO.js +1 -0
- package/dist/assets/{local-mode-BD2zqd9I.js → local-mode-BrXxQB_p.js} +1 -1
- package/dist/assets/{login-flow-DVsR7fEC.js → login-flow-C4XRX0tn.js} +1 -1
- package/dist/assets/login-page-C_SbIj4D.js +1 -0
- package/dist/assets/{logout-page-DRRS14hP.js → logout-page-DLTSSk6O.js} +1 -1
- package/dist/assets/{logs-layout-CSvew4_d.js → logs-layout-C5XwLOh9.js} +1 -1
- package/dist/assets/mcp-page-CMII6AAx.js +1 -0
- package/dist/assets/{memory-router-playground-page-A2zlGskJ.js → memory-router-playground-page-CWGJ8ZIM.js} +1 -1
- package/dist/assets/messages-BwtkPX8a.js +13 -0
- package/dist/assets/{metric-card-CgO1F06f.js → metric-card-J-OmNSo1.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-R6nyuXZ1.js → mobile-sidebar-drawer-CXeucWIM.js} +1 -1
- package/dist/assets/monitor-AzR2uZb7.js +1 -0
- package/dist/assets/{native-file-LJQTmnKy.js → native-file-CI0ZuErz.js} +2 -2
- package/dist/assets/notifications-page-DI_zXOSz.js +1 -0
- package/dist/assets/{oauth-complete-page-BJudfLeY.js → oauth-complete-page-r3tyyWop.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-HRhzTWe_.js → oauth-popup-complete-page-BADB15NE.js} +1 -1
- package/dist/assets/{pairing-page-DS3k_UyF.js → pairing-page-lApAtFfB.js} +1 -1
- package/dist/assets/{password-reset-page-CDvLTa8S.js → password-reset-page-CetrP6IO.js} +1 -1
- package/dist/assets/{platform-loopback-page-CKI-92-q.js → platform-loopback-page-sne9LAr3.js} +1 -1
- package/dist/assets/plugin-detail-page-B_7UYTKm.js +1 -0
- package/dist/assets/{plugins-page-BxfKs2Np.js → plugins-page-BAnBQ1M_.js} +1 -1
- package/dist/assets/prechat-CHU0E2N5.js +1 -0
- package/dist/assets/prechat-route-BjBm6H7-.js +1 -0
- package/dist/assets/{prefs-DP4g-Qgi.js → prefs-Be9dTh3B.js} +1 -1
- package/dist/assets/{privacy-page-Vq50i0Wv.js → privacy-page-BoYGnqAX.js} +1 -1
- package/dist/assets/privacy-screen-CMhrQ3nh.js +1 -0
- package/dist/assets/{provider-callback-page-tWLMyImI.js → provider-callback-page-VDmHVeXO.js} +1 -1
- package/dist/assets/{provider-key-g87caUSW.js → provider-key-DVsrhw9C.js} +1 -1
- package/dist/assets/{provider-signup-page-CBPV-1Ih.js → provider-signup-page-cZoYlk_R.js} +1 -1
- package/dist/assets/proxy-BMd4CkvC.js +1 -0
- package/dist/assets/{quick-input-page-CEPPTVs7.js → quick-input-page-JeFYpvqi.js} +1 -1
- package/dist/assets/{react-query.gen-CRARj4mG.js → react-query.gen-B0Od5MEZ.js} +1 -1
- package/dist/assets/{react-query.gen-4ZMhZ-fj.js → react-query.gen-DeL3wFEA.js} +1 -1
- package/dist/assets/{research-mock-page-Dln6TeKV.js → research-mock-page-DasQDyN8.js} +1 -1
- package/dist/assets/research-onboarding-route-DJzU6M0o.js +36 -0
- package/dist/assets/{resize-errors-CXz-pd2h.js → resize-errors-l1gkz4Wc.js} +1 -1
- package/dist/assets/{resolved-assistants-store-DLNFVaZL.js → resolved-assistants-store-Cpb8fS5G.js} +1 -1
- package/dist/assets/{return-to-DxTXKF-C.js → return-to-DoZNVn3w.js} +1 -1
- package/dist/assets/{review-terms-screen-DuORfqOE.js → review-terms-screen-HE0UB521.js} +1 -1
- package/dist/assets/risk-badge-CBIupvNj.js +1 -0
- package/dist/assets/{schedules-MF0cMAPX.js → schedules-DRUBtF8F.js} +1 -1
- package/dist/assets/{sdk.gen-DtKkd6hs.js → sdk.gen-D4xWFnu5.js} +1 -1
- package/dist/assets/{sdk.gen-0RzHFsEa.js → sdk.gen-DSjI3deY.js} +1 -1
- package/dist/assets/select-assistant-screen-4uOjCPKt.js +1 -0
- package/dist/assets/{settings-layout-Co57Zw8f.js → settings-layout-D514WCV_.js} +1 -1
- package/dist/assets/share-feedback-modal-uf6DidiV.js +1 -0
- package/dist/assets/{sidebar-tree-D0lNnpA6.js → sidebar-tree-DQq22ToB.js} +1 -1
- package/dist/assets/signup-page-_oBdk8ha.js +1 -0
- package/dist/assets/{signup-shell-CEJE1QSw.js → signup-shell-B9Jgwn6n.js} +1 -1
- package/dist/assets/skills-page-DkTSKMjA.js +1 -0
- package/dist/assets/{sound-manager-RQj5g2kL.js → sound-manager-DbZ5uKZZ.js} +1 -1
- package/dist/assets/{sounds-page-DFXhvf_o.js → sounds-page-D1gXuTqp.js} +1 -1
- package/dist/assets/{step-indicator-dots-Bx_0xTIr.js → step-indicator-dots-D50_VzXD.js} +1 -1
- package/dist/assets/subagent-detail-panel-Cz_BpfzN.js +4 -0
- package/dist/assets/subagent-store-CdQ9IO-6.js +3 -0
- package/dist/assets/{system-events-page-BJJteZri.js → system-events-page-DCNticD2.js} +1 -1
- package/dist/assets/{system-events-redirect-page-CheSz42h.js → system-events-redirect-page-DEnjgb69.js} +1 -1
- package/dist/assets/{tiptap-document-editor-C8FlNAsc.js → tiptap-document-editor-C6UlHVBO.js} +2 -2
- package/dist/assets/tool-call-status-DNS6Y_vi.js +1 -0
- package/dist/assets/tool-detail-panel-r69r_Kbn.js +2 -0
- package/dist/assets/trace-page-YcXysBt-.js +1 -0
- package/dist/assets/{upgrade-cancel-page-BQJOrigy.js → upgrade-cancel-page-C34Io1_I.js} +1 -1
- package/dist/assets/{upgrade-success-page-BPRZMLDu.js → upgrade-success-page-DwL1yfEf.js} +1 -1
- package/dist/assets/{usage-page-DU36h2RZ.js → usage-page-uw9eR78e.js} +1 -1
- package/dist/assets/{use-active-assistant-id-BlwRimQH.js → use-active-assistant-id-CuamPYIw.js} +1 -1
- package/dist/assets/{use-bus-subscription-D-1qIPnj.js → use-bus-subscription-CKWguMzy.js} +1 -1
- package/dist/assets/use-is-org-ready-CXy5WSa5.js +1 -0
- package/dist/assets/{use-onboarding-login-BZ4ismb6.js → use-onboarding-login-D6sPCtKW.js} +1 -1
- package/dist/assets/{use-plugin-drift-C3gz_rng.js → use-plugin-drift-v7NzMOhO.js} +1 -1
- package/dist/assets/{use-reduced-motion-DgX4o6QR.js → use-reduced-motion-DomgCP7o.js} +1 -1
- package/dist/assets/user-plus-Chk2BJ7O.js +1 -0
- package/dist/assets/{utils-DugRzWBW.js → utils-eWxz_g-8.js} +1 -1
- package/dist/assets/{viewer-store-9Ag85lFC.js → viewer-store-Dmp0L2nm.js} +1 -1
- package/dist/assets/{voice-page-DB2h9uqJ.js → voice-page-C52t6d2F.js} +1 -1
- package/dist/assets/weather-forecast-display-CxwRnzix.js +1 -0
- package/dist/assets/{web-DuA0h7oK.js → web-B426K90I.js} +1 -1
- package/dist/assets/{web-ByMNu3A_.js → web-BDmMa2Ah.js} +1 -1
- package/dist/assets/{web-CUTiBnsF.js → web-BI7Og_dq.js} +1 -1
- package/dist/assets/{web-CyTCBnAZ.js → web-BjJEIboG.js} +1 -1
- package/dist/assets/{web-B4ULoQq5.js → web-BsjDq2-Z.js} +1 -1
- package/dist/assets/{web-CvCsdCeT.js → web-C5TKmyZ7.js} +1 -1
- package/dist/assets/{web-DTFLfPeG.js → web-CkqagAoR.js} +1 -1
- package/dist/assets/{welcome-screen-z3RULgvo.js → welcome-screen-CAKcPhjI.js} +1 -1
- package/dist/assets/workflow-detail-panel-i4SnfufH.js +1 -0
- package/dist/assets/workflow-status-B53qU9DS.js +1 -0
- package/dist/assets/workspace-page-BgcGxXvz.js +1 -0
- package/dist/index.html +94 -81
- package/package.json +1 -1
- package/dist/assets/about-page-B-yNJBih.js +0 -1
- package/dist/assets/ai-page-Du6k7XV_.js +0 -1
- package/dist/assets/assistant-api-BX_B1xSC.js +0 -1
- package/dist/assets/auth-store-CbVvQiBR.js +0 -7
- package/dist/assets/billing-page-BByuYpJa.js +0 -3
- package/dist/assets/community-page-BuuYKT7i.js +0 -1
- package/dist/assets/contacts-page-route-YQf7Dxxo.js +0 -1
- package/dist/assets/debug-page-CXi6rNhS.js +0 -2
- package/dist/assets/devices-page-mF5RECdQ.js +0 -1
- package/dist/assets/dictation-overlay-page-DL5K7HYW.js +0 -1
- package/dist/assets/document-viewer-page-C2oFS1wI.js +0 -1
- package/dist/assets/dollar-sign-D_XmiHA-.js +0 -1
- package/dist/assets/earn-credits-modal-DsuqrJTY.js +0 -1
- package/dist/assets/esm-BIUrrGWd.js +0 -2
- package/dist/assets/esm-BT7uz_mC.js +0 -2
- package/dist/assets/esm-BU45yXtJ.js +0 -2
- package/dist/assets/esm-D51SsTmc.js +0 -2
- package/dist/assets/esm-KT7CwnAY.js +0 -1
- package/dist/assets/feature-flag-catalog-RZLmDa1F.js +0 -1
- package/dist/assets/file-editor-n2sYGdD-.js +0 -1
- package/dist/assets/general-page-BSdbq26O.js +0 -1
- package/dist/assets/hatching-screen-BRgjqSLd.js +0 -1
- package/dist/assets/home-page-route-CV_mh2wJ.js +0 -1
- package/dist/assets/identity-page-route-CDcFNfWw.js +0 -1
- package/dist/assets/index-BvIwFdLE.css +0 -2
- package/dist/assets/index-Cx6vyW7T.js +0 -155
- package/dist/assets/inspect-page-D03CXXMs.js +0 -7
- package/dist/assets/install-JGbHHiCV.js +0 -1
- package/dist/assets/integrations-page-BFPmyQdR.js +0 -1
- package/dist/assets/library-page-BwoQ9K34.js +0 -1
- package/dist/assets/login-page-DYLjbG5w.js +0 -1
- package/dist/assets/mcp-page-CUehr_wQ.js +0 -1
- package/dist/assets/notifications-page-DcIQm_jh.js +0 -1
- package/dist/assets/plugin-detail-page-THfWbuJx.js +0 -1
- package/dist/assets/prechat-route-uavNUOzg.js +0 -1
- package/dist/assets/privacy-screen-1ITDKJ6D.js +0 -1
- package/dist/assets/proxy-l3iqYpig.js +0 -1
- package/dist/assets/research-onboarding-route-HWXEnr-H.js +0 -30
- package/dist/assets/select-assistant-screen-C2pCQCeh.js +0 -1
- package/dist/assets/share-feedback-modal-C4yo471J.js +0 -1
- package/dist/assets/signup-page-P4juei29.js +0 -1
- package/dist/assets/skills-page-KI_k-igb.js +0 -1
- package/dist/assets/subagent-detail-panel-eXMmoVu4.js +0 -4
- package/dist/assets/subagent-status-DOJQZKTk.js +0 -1
- package/dist/assets/tool-detail-panel-DgVn-kKw.js +0 -2
- package/dist/assets/trace-page-CZICq31J.js +0 -1
- package/dist/assets/use-is-org-ready-CRkh60tU.js +0 -1
- package/dist/assets/weather-forecast-display-DoCG5fqI.js +0 -1
- package/dist/assets/workflow-detail-panel-uiydoHie.js +0 -1
- package/dist/assets/workspace-page-9B98Z90n.js +0 -1
- /package/dist/assets/{account-shell-BBL0HqTX.js → account-shell-m8OhdsLC.js} +0 -0
- /package/dist/assets/{api-errors-D3EsNrwn.js → api-errors-B-g6gvNv.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-f4-fradg.js → avatar-bundled-components-DcSzXpA_.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-DMT4wmUm.js → avatar-svg-compositor-CZqTxX-j.js} +0 -0
- /package/dist/assets/{bookmark-C8arQ3wm.js → bookmark-C3S-p0MQ.js} +0 -0
- /package/dist/assets/{bug-BuL3O3_2.js → bug-DDcuQ3au.js} +0 -0
- /package/dist/assets/{build.umd-CPG-O6Se.js → build.umd-C-9hxmJK.js} +0 -0
- /package/dist/assets/{cable-C0pEWbc5.js → cable-DeiZJhx5.js} +0 -0
- /package/dist/assets/{calendar-BCNBN7PC.js → calendar-DS3F8MRx.js} +0 -0
- /package/dist/assets/{chevron-left-o_oJAd6A.js → chevron-left-BSPjMq8L.js} +0 -0
- /package/dist/assets/{chevron-right-BNHlGCTg.js → chevron-right-CWG30kI8.js} +0 -0
- /package/dist/assets/{chevron-up-BnW-hcOL.js → chevron-up-vUqVm-q3.js} +0 -0
- /package/dist/assets/{circle-alert-bz1ccYRI.js → circle-alert-CIThYDGJ.js} +0 -0
- /package/dist/assets/{circle-check-DBzb54Kz.js → circle-check-Cfl8Yl_j.js} +0 -0
- /package/dist/assets/{client.gen-0CkwJ2Ya.js → client.gen-4zzwm6UN.js} +0 -0
- /package/dist/assets/{client.gen-DzaL5PKF.js → client.gen-BnoNy2w0.js} +0 -0
- /package/dist/assets/{cloud-off-BWmMU3G-.js → cloud-off-fMC5iwVY.js} +0 -0
- /package/dist/assets/{code-Bju_p7d-.js → code-BhoMjTYO.js} +0 -0
- /package/dist/assets/{composer-focus-D-P0cGAF.js → composer-focus-BZr63Cvs.js} +0 -0
- /package/dist/assets/{conversation-selection-CrdMTnwx.js → conversation-selection-CNu7j2Xb.js} +0 -0
- /package/dist/assets/{conversation-store-I2d3A6Tv.js → conversation-store-nVJwhymp.js} +0 -0
- /package/dist/assets/{cpu-DpzMm9_m.js → cpu-D1r7PLan.js} +0 -0
- /package/dist/assets/{credit-card-CN7yFHhB.js → credit-card-BwN95biV.js} +0 -0
- /package/dist/assets/{definitions-B4RRVbRh.js → definitions--qkv65-s.js} +0 -0
- /package/dist/assets/{detail-card-QPVpO5cj.js → detail-card-jO9NyAKk.js} +0 -0
- /package/dist/assets/{dist-3i_EPbLt.js → dist-CzyDxYAs.js} +0 -0
- /package/dist/assets/{domain-field-ChoXVdlk.js → domain-field-CNW1t3OC.js} +0 -0
- /package/dist/assets/{edit-chat-session-DXSCprPw.js → edit-chat-session-BYvbyTwd.js} +0 -0
- /package/dist/assets/{effective-timezone-DBaPUyaX.js → effective-timezone-DAkNzd21.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-C0EjtsOi.js → emoji-catalog-data-D1w5YRAh.js} +0 -0
- /package/dist/assets/{environment-store-DoO5ZqXZ.js → environment-store-C-h-XXc-.js} +0 -0
- /package/dist/assets/{event-bus-CFhOgvB8.js → event-bus-CBil9JQT.js} +0 -0
- /package/dist/assets/{external-link-DAovIsxF.js → external-link-RJkZLlff.js} +0 -0
- /package/dist/assets/{format-B2A6k4bb.js → format-C-Aoc3OC.js} +0 -0
- /package/dist/assets/{format-date-Cx9GZ7-D.js → format-date-C51RKaFF.js} +0 -0
- /package/dist/assets/{format-file-size-Br1LCKQi.js → format-file-size-BsHnxzq6.js} +0 -0
- /package/dist/assets/{globe-CfKniRIP.js → globe-atPvTfX9.js} +0 -0
- /package/dist/assets/{google-logo-DNkI-jCf.js → google-logo-C0Ye7zqf.js} +0 -0
- /package/dist/assets/{haptics-BCTVEX6s.js → haptics-CKwMH4eq.js} +0 -0
- /package/dist/assets/{hard-drive-DggmyfjR.js → hard-drive-CxwXPeeK.js} +0 -0
- /package/dist/assets/{impersonate-version-flag-BksY65Mo.js → impersonate-version-flag-Caig8rhF.js} +0 -0
- /package/dist/assets/{info-DXbzDupm.js → info-DKfsKkAk.js} +0 -0
- /package/dist/assets/{lib-BVvJNDCQ.js → lib-Ck-V6pPR.js} +0 -0
- /package/dist/assets/{link-2-Dmka5LJV.js → link-2-DAUpNv36.js} +0 -0
- /package/dist/assets/{llm-dimension-ovOt_D6t.js → llm-dimension-DAAJ-1sE.js} +0 -0
- /package/dist/assets/{loader-circle-Cw1KvvLK.js → loader-circle-BU6b8vrp.js} +0 -0
- /package/dist/assets/{log-in-CUDpYpYW.js → log-in-F2ivXAeS.js} +0 -0
- /package/dist/assets/{minimize-2-CPmn1RIm.js → minimize-2-Ps3BPNpX.js} +0 -0
- /package/dist/assets/{misc-Dm72afTZ.js → misc-CBD9JJCY.js} +0 -0
- /package/dist/assets/{moon-Be4Pgk5X.js → moon-shagZJqX.js} +0 -0
- /package/dist/assets/{mutation-error-BjiE6W0q.js → mutation-error-C1_ICE-g.js} +0 -0
- /package/dist/assets/{native-deep-link-CYaeyOfj.js → native-deep-link-DmJ7Ty6z.js} +0 -0
- /package/dist/assets/{page-shell-W5IMIXQq.js → page-shell-tozCEPBk.js} +0 -0
- /package/dist/assets/{pdf-DhvXjkis.js → pdf-Bi0PDaJC.js} +0 -0
- /package/dist/assets/{pencil-Dm2eFMe3.js → pencil-CKTX3v1w.js} +0 -0
- /package/dist/assets/{prechat-names-CkLrL-Jh.js → prechat-names-JWGOLvFL.js} +0 -0
- /package/dist/assets/{public-asset-CH9GPeL_.js → public-asset-BTisO-cB.js} +0 -0
- /package/dist/assets/{reduced-motion-8QnGN6lg.js → reduced-motion-BZH7waJ6.js} +0 -0
- /package/dist/assets/{refresh-cw-YXbpNg95.js → refresh-cw-d--DqlE0.js} +0 -0
- /package/dist/assets/{routes-B9xcBuuC.js → routes-DlW6mpdp.js} +0 -0
- /package/dist/assets/{save-CQ2-kSlv.js → save-BOCvrkQo.js} +0 -0
- /package/dist/assets/{semver-aan9RUyA.js → semver-DpUibCte.js} +0 -0
- /package/dist/assets/{setting-row-BHlMSre_.js → setting-row-DFBId7mH.js} +0 -0
- /package/dist/assets/{sparkles-C8hCShdb.js → sparkles-DzoKZLdI.js} +0 -0
- /package/dist/assets/{triangle-alert-AqQQTwUZ.js → triangle-alert-B3q5kQ4P.js} +0 -0
- /package/dist/assets/{typed-storage-qVehRaS3.js → typed-storage-Chj38wph.js} +0 -0
- /package/dist/assets/{usage-window-DbWHZkbr.js → usage-window-BTrQei8M.js} +0 -0
- /package/dist/assets/{use-is-mobile-D_0cze0t.js → use-is-mobile-BF5x8sr8.js} +0 -0
- /package/dist/assets/{x-BeVbiDS2.js → x-Cb3jFpZR.js} +0 -0
- /package/dist/assets/{xterm-B74sC241.js → xterm-BJTDHDUK.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-By7PlC-c.js → xterm-addon-fit-Ba7bgpoc.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D7s2Q_uG.js";import{d as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as i}from"./QueryClientProvider-DKhXIxGb.js";import{t as a}from"./useQuery-B45lW1Kk.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./menu-CdoNX1qx.js";import"./src-BJj2O5XB.js";import{t as c}from"./confirm-dialog-SpCsmAdG.js";import{t as l}from"./input-Ch7OC6ME.js";import{n as u,t as d}from"./panel-item-BLQE_l-g.js";import{n as f}from"./toast-CxaZ5f1d.js";import{t as p}from"./arrow-up-nBfZxfhi.js";import{t as m}from"./globe-CfKniRIP.js";import{s as h,t as g}from"./sdk.gen-DtKkd6hs.js";import{C as _,n as v,t as y}from"./react-query.gen-4ZMhZ-fj.js";import{a as b}from"./routes-B9xcBuuC.js";import{n as x}from"./use-is-mobile-D_0cze0t.js";import{i as S,r as C}from"./viewer-store-9Ag85lFC.js";import{t as w}from"./misc-Dm72afTZ.js";import{Ai as T,Fi as E,G as D,Kr as O,Mr as k,Mt as A,Nr as j,Tt as M,at as N,bi as P,ni as F,ot as I,ri as L}from"./index-Cx6vyW7T.js";import{t as R}from"./deploy-dialogs-DygUf1og.js";import{t as z}from"./use-active-assistant-id-BlwRimQH.js";import{t as B}from"./page-shell-W5IMIXQq.js";import{t as V}from"./format-date-Cx9GZ7-D.js";var H=e(t(),1),U=o();function W({app:e,isDeleting:t,onConfirm:n,onCancel:r}){return(0,U.jsx)(c,{open:e!==null,title:`Delete app`,message:e?`"${e.name}" will be permanently removed.`:``,confirmLabel:t?`Deleting…`:`Delete`,destructive:!0,onConfirm:n,onCancel:r})}function G(e){return e===1?`1 word`:`${e} words`}function K({document:e,onOpen:t}){return(0,U.jsxs)(`div`,{className:`group relative flex flex-col gap-2`,children:[(0,U.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:w(`relative flex w-full cursor-pointer flex-col items-center justify-center gap-2 overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)]`,`aspect-[16/10]`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:[(0,U.jsx)(T,{size:34,className:`text-[var(--content-tertiary)]`}),(0,U.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:G(e.wordCount)})]}),(0,U.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,U.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.title}),(0,U.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:V(new Date(e.updatedAt))})]})]})}function q({fileInputRef:e,isImporting:t,onImportBundle:r,onNewConversation:i}){return(0,U.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4 py-24`,children:[(0,U.jsx)(`input`,{ref:e,type:`file`,accept:`.vellum`,className:`hidden`,onChange:r}),(0,U.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,U.jsx)(P,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,U.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Your library is empty`}),(0,U.jsx)(`p`,{className:`max-w-md text-center text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:`Ask your assistant to build something, or import a shared app`}),(0,U.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[i?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(n,{variant:`primary`,size:`regular`,onClick:i,children:`New Conversation`}),(0,U.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:`or`})]}):null,(0,U.jsxs)(n,{variant:`outlined`,size:`regular`,onClick:()=>e.current?.click(),disabled:t,children:[t?(0,U.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,U.jsx)(k,{size:14}),(0,U.jsx)(`span`,{className:`ml-1.5`,children:`Import .vellum File`})]})]})]})}function J({app:e,assistantId:t,isPinned:n,onOpen:r,onPin:i,onDelete:a,onDeploy:o,justImported:s,onAnimationEnd:c}){let[l,u]=(0,H.useState)(!1),d=(0,H.useCallback)(()=>S(t,e.id),[t,e.id]),p=(0,H.useCallback)(async()=>{if(!l){u(!0);try{await I(t,e.id,e.name),f.success(`App exported`,{description:`${e.name}.vellum`})}catch(e){f.error(`Failed to share app`,{description:e instanceof Error?e.message:void 0})}finally{u(!1)}}},[t,e.id,e.name,l]),[m,h]=(0,H.useState)(!1),g=x();return(0,U.jsxs)(`div`,{className:w(`group relative flex flex-col gap-2`,s&&`animate-[card-entrance_400ms_ease-out]`),onAnimationEnd:s?c:void 0,children:[(0,U.jsx)(`button`,{type:`button`,onClick:()=>r(e.id),className:w(`relative w-full cursor-pointer overflow-hidden rounded-xl`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:(0,U.jsx)(D,{name:e.name,icon:e.icon,loadHtml:d})}),(0,U.jsx)(`div`,{className:w(`absolute right-2 top-2 z-20 transition-opacity`,`max-md:opacity-100`,`md:group-hover:opacity-100 md:group-focus-within:opacity-100`,m?`opacity-100`:`md:opacity-0`),children:(0,U.jsx)(Y,{appName:e.name,isPinned:n,open:m,onOpenChange:h,onPin:()=>i(e),onDelete:a?()=>a(e):void 0,onShare:p,onDeploy:o,isMobile:g})}),(0,U.jsxs)(`button`,{type:`button`,onClick:()=>r(e.id),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,U.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.name}),(0,U.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:V(new Date(e.createdAt))})]})]})}function Y({appName:e,isPinned:t,open:r,onOpenChange:i,onPin:a,onDelete:o,onShare:c,onDeploy:l,isMobile:f}){return f?(0,U.jsxs)(u.Root,{open:r,onOpenChange:i,children:[(0,U.jsx)(u.Trigger,{asChild:!0,children:(0,U.jsx)(n,{variant:`primary`,size:`compact`,iconOnly:(0,U.jsx)(E,{}),"aria-label":`App actions`,onClick:e=>e.stopPropagation()})}),(0,U.jsxs)(u.Content,{children:[(0,U.jsx)(u.Header,{className:`sr-only`,children:(0,U.jsx)(u.Title,{children:e})}),(0,U.jsxs)(u.Body,{className:`pt-0`,children:[(0,U.jsx)(d,{icon:t?L:F,label:t?`Unpin`:`Pin`,onSelect:()=>{i(!1),a()}}),c?(0,U.jsx)(d,{icon:p,label:(0,U.jsxs)(`span`,{className:`flex flex-col gap-0.5 overflow-visible whitespace-normal`,children:[(0,U.jsx)(`span`,{children:`Share`}),(0,U.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Export as .vellum file`})]}),onSelect:()=>{i(!1),c()}}):null,l?(0,U.jsx)(d,{icon:m,label:(0,U.jsxs)(`span`,{className:`flex flex-col gap-0.5 overflow-visible whitespace-normal`,children:[(0,U.jsx)(`span`,{children:`Deploy to Vercel`}),(0,U.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Publish as a static page`})]}),onSelect:()=>{i(!1),l()}}):null,o?(0,U.jsx)(d,{icon:j,label:`Delete`,onSelect:()=>{i(!1),o()}}):null]})]})]}):(0,U.jsxs)(s.Root,{open:r,onOpenChange:i,children:[(0,U.jsx)(s.Trigger,{asChild:!0,children:(0,U.jsx)(n,{variant:`primary`,size:`compact`,iconOnly:(0,U.jsx)(E,{}),"aria-label":`App actions`,onClick:e=>e.stopPropagation()})}),(0,U.jsxs)(s.Content,{align:`end`,sideOffset:4,children:[(0,U.jsx)(s.Item,{leftIcon:t?(0,U.jsx)(L,{size:14}):(0,U.jsx)(F,{size:14}),onSelect:()=>a(),className:`whitespace-nowrap`,children:t?`Unpin`:`Pin`}),c?(0,U.jsx)(s.Item,{leftIcon:(0,U.jsx)(p,{size:14}),onSelect:()=>c(),className:`whitespace-nowrap`,children:`Share`}):null,l?(0,U.jsx)(s.Item,{leftIcon:(0,U.jsx)(m,{size:14}),onSelect:()=>l(),className:`whitespace-nowrap`,children:`Deploy to Vercel`}):null,o?(0,U.jsx)(s.Item,{leftIcon:(0,U.jsx)(j,{size:14,className:`text-red-600`}),onSelect:()=>o(),className:`whitespace-nowrap text-red-600 data-[highlighted]:text-red-700`,children:`Delete`}):null]})]})}function X({title:e,apps:t,assistantId:n,pinnedAppIds:r,lastImportedAppId:i,onOpen:a,onPin:o,onDelete:s,onDeploy:c,onAnimationEnd:l}){return t.length===0?null:(0,U.jsxs)(`section`,{children:[(0,U.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:e}),(0,U.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:t.map(e=>(0,U.jsx)(J,{app:e,assistantId:n,isPinned:r.has(e.id),onOpen:a,onPin:o,onDelete:s,justImported:e.id===i,onAnimationEnd:l,onDeploy:c?()=>c(e.id):void 0},e.id))})]})}var Z=(e,t)=>t.updatedAt-e.updatedAt||t.createdAt-e.createdAt;function Q(e){let t=M.use.pinnedAppIds(),{data:n=[],isLoading:r,error:i}=a({...y({path:{assistant_id:e}}),select:e=>e.apps}),{data:o=[],isLoading:s,error:c}=a({..._({path:{assistant_id:e}}),select:e=>e.documents}),l=r||s,u=i&&c?i instanceof Error?i.message:`Failed to load library`:null,[d,f]=(0,H.useState)(``),p=(0,H.useMemo)(()=>{if(!d.trim())return n;let e=d.toLowerCase();return n.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e))},[n,d]);return{apps:n,documents:o,filteredApps:p,pinnedApps:(0,H.useMemo)(()=>p.filter(e=>t.has(e.id)).sort(Z),[p,t]),recentApps:(0,H.useMemo)(()=>p.filter(e=>!t.has(e.id)).sort(Z),[p,t]),filteredDocuments:(0,H.useMemo)(()=>{if(!d.trim())return o;let e=d.toLowerCase();return o.filter(t=>t.title.toLowerCase().includes(e))},[o,d]),searchText:d,setSearchText:f,loading:l,error:u}}async function $(e,t){let{data:n,error:r,response:i}=await h({path:{assistant_id:e},body:t,bodySerializer:e=>e,headers:{"Content-Type":`application/octet-stream`},throwOnError:!1});if(!i||!i.ok){let e=(r&&typeof r==`object`&&`message`in r?r.message:null)??`Failed to import app.`;throw Error(e)}return n}function ee({assistantId:e,assistantName:t,title:r,onNewConversation:a,onOpenDocument:o,onOpenApp:s}){let c=i(),u=M.use.togglePin(),d=M.use.pinnedAppIds(),p=N.use.isDeploying(),{apps:m,documents:h,filteredApps:_,pinnedApps:y,recentApps:b,filteredDocuments:x,searchText:w,setSearchText:T,loading:E,error:D}=Q(e),[A,j]=(0,H.useState)(null),[P,F]=(0,H.useState)(!1),I=(0,H.useCallback)(async()=>{let t=A;if(!(!t||P)){F(!0);try{await g({path:{assistant_id:e,id:t.id},throwOnError:!0}),C(e,t.id),c.invalidateQueries({queryKey:v({path:{assistant_id:e}})}),d.has(t.id)&&u(t),j(null)}catch(e){f.error(e instanceof Error?e.message:`Failed to delete app`)}finally{F(!1)}}},[A,P,e,d,u,c]),L=(0,H.useCallback)(()=>{P||j(null)},[P]),z=(0,H.useRef)(null),[B,V]=(0,H.useState)(!1),G=(0,H.useCallback)(async t=>{let n=t.target.files?.[0];if(!(!n||B)){V(!0);try{let t=await $(e,n);await c.invalidateQueries({queryKey:v({path:{assistant_id:e}})}),f.success(t.name+` imported`),s(t.appId)}catch(e){f.error(e instanceof Error?e.message:`Failed to import app`)}finally{V(!1),z.current&&(z.current.value=``)}}},[e,B,c,s]),J=(0,H.useCallback)(async t=>{if(p)return;let n=m.find(e=>e.id===t)?.name??`this app`;try{let r=await S(e,t);N.getState().deployApp(e,t,n,r)}catch{N.getState().deployApp(e,t,n,``)}},[e,p,m]),Y=(0,H.useCallback)(e=>u(e),[u]);return E?(0,U.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,U.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--primary-base)]`,role:`status`,"aria-label":`Loading apps`})}):D?(0,U.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,U.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:D}),(0,U.jsx)(`button`,{type:`button`,className:`rounded-lg bg-[var(--primary-base)] px-4 py-2 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)]`,onClick:()=>window.location.reload(),children:`Retry`})]}):m.length===0&&h.length===0?(0,U.jsx)(q,{fileInputRef:z,isImporting:B,onImportBundle:G,onNewConversation:a?()=>a():void 0}):(0,U.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[(0,U.jsxs)(`div`,{className:`mb-4 flex shrink-0 items-center justify-between gap-4`,children:[r?(0,U.jsx)(`h1`,{className:`text-title-large text-[var(--content-default)]`,children:r}):(0,U.jsx)(`span`,{}),(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(`input`,{ref:z,type:`file`,accept:`.vellum`,className:`hidden`,onChange:G}),(0,U.jsxs)(n,{variant:`outlined`,size:`regular`,onClick:()=>z.current?.click(),disabled:B,children:[B?(0,U.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,U.jsx)(k,{size:14}),(0,U.jsx)(`span`,{className:`ml-1.5`,children:`Import`})]})]})]}),(0,U.jsx)(`div`,{className:`mb-6 shrink-0`,children:(0,U.jsx)(l,{fullWidth:!0,type:`text`,placeholder:`Search your library`,value:w,onChange:e=>T(e.target.value),leftIcon:(0,U.jsx)(O,{size:16})})}),(0,U.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:_.length===0&&x.length===0?(0,U.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,U.jsx)(O,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,U.jsxs)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:[`No apps or documents matched “`,w,`”`]})]}):(0,U.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,U.jsx)(X,{title:`Pinned`,apps:y,assistantId:e,pinnedAppIds:d,onOpen:s,onPin:Y,onDelete:j,onDeploy:J}),(0,U.jsx)(X,{title:`Recents`,apps:b,assistantId:e,pinnedAppIds:d,onOpen:s,onPin:Y,onDelete:j,onDeploy:J}),x.length>0?(0,U.jsxs)(`section`,{children:[(0,U.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:`Documents`}),(0,U.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:x.map(e=>(0,U.jsx)(K,{document:e,onOpen:e=>{o&&o(e)}},e.surfaceId))})]}):null]})}),(0,U.jsx)(R,{assistantId:e,assistantName:t,onStartConversation:a}),(0,U.jsx)(W,{app:A,isDeleting:P,onConfirm:I,onCancel:L})]})}function te(){let e=z(),t=r();return(0,U.jsx)(B,{children:(0,U.jsx)(ee,{assistantId:e,title:`Library`,onNewConversation:(0,H.useCallback)(e=>{A(t,{prompt:e})},[t]),onOpenDocument:(0,H.useCallback)(e=>{t(b.document(e))},[t]),onOpenApp:(0,H.useCallback)(e=>{t(b.library.app(e))},[t])})})}export{te as LibraryPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D7s2Q_uG.js";import{h as r,t as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./cn-DvW5mxZR.js";import"./src-BJj2O5XB.js";import{F as s,N as c,P as l}from"./auth-store-CbVvQiBR.js";import{a as u}from"./routes-B9xcBuuC.js";import{n as d,r as f}from"./login-flow-DVsR7fEC.js";import{t as p}from"./public-asset-CH9GPeL_.js";import{t as m}from"./google-logo-DNkI-jCf.js";import{mi as h,q as g}from"./index-Cx6vyW7T.js";var _=e(t(),1),v=a();function y({children:e}){return(0,v.jsxs)(`div`,{className:`fixed inset-0 z-50 flex flex-col items-center justify-center bg-[var(--surface-base)] text-[var(--content-default)]`,children:[(0,v.jsx)(`img`,{src:p(`/vellum-logo.svg`),alt:`Vellum`,width:220,height:66,className:`block dark:hidden`}),(0,v.jsx)(`img`,{src:p(`/vellum-logo-white.svg`),alt:`Vellum`,width:220,height:66,className:`hidden dark:block`}),e,(0,v.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute left-1/2 w-full max-w-[900px] -translate-x-1/2`,style:{bottom:0},children:(0,v.jsx)(`img`,{src:p(`/login-background-characters.svg`),alt:``,width:880,height:182,className:`h-auto w-full`})})]})}function b(){return(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(`div`,{className:`pointer-events-none absolute top-[120px] left-1/2 z-0 -translate-x-1/2`,children:(0,v.jsx)(`img`,{src:p(`/vellum-logo-white.svg`),alt:`Vellum`,width:92,height:28})}),(0,v.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute right-0 bottom-0 left-1/2 z-0 w-full max-w-[1100px] -translate-x-1/2`,children:(0,v.jsx)(`img`,{src:p(`/login-background-characters.svg`),alt:``,width:880,height:182,className:`h-auto w-full`})})]})}var x=`flex w-full max-w-[448px] flex-col gap-6 rounded-lg border border-[var(--border-disabled)] bg-[var(--surface-lift)] p-6`;function S({children:e}){return(0,v.jsx)(`div`,{className:x,children:e})}function C({children:e}){return(0,v.jsx)(`h1`,{className:`text-title-large text-center text-[var(--content-emphasised)]`,children:e})}function w({children:e,className:t}){return(0,v.jsx)(`p`,{className:o(`text-body-small-default text-center text-[var(--system-negative-strong)]`,t),children:e})}function T({children:e}){return(0,v.jsx)(`div`,{className:`dark`,children:(0,v.jsxs)(`div`,{className:`relative min-h-screen overflow-x-hidden bg-[var(--surface-base)] text-[var(--content-default)]`,children:[(0,v.jsx)(b,{}),(0,v.jsx)(`div`,{className:`relative z-10 flex min-h-screen flex-col items-center justify-center px-4`,children:e})]})})}function E({signUpHref:e}){return(0,v.jsxs)(`p`,{className:`text-body-small-default flex justify-center gap-1`,children:[(0,v.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Don't have an account?`}),(0,v.jsx)(i,{to:e,className:`font-medium text-[var(--content-emphasised)] hover:underline`,children:`Sign up`})]})}function D({returnTo:e,loading:t,errorMessage:r,onProviderClick:i}){let a=e?`${u.account.signup}?returnTo=${encodeURIComponent(e)}`:u.account.signup;return(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(C,{children:`Sign in to Vellum`}),r&&(0,v.jsx)(w,{children:r}),(0,v.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,v.jsx)(n,{type:`button`,variant:`outlined`,fullWidth:!0,onClick:()=>i(`AppleOAuth`),disabled:t,leftIcon:(0,v.jsx)(g,{}),className:`max-w-[300px] gap-3`,children:`Continue with Apple`}),(0,v.jsx)(n,{type:`button`,variant:`outlined`,fullWidth:!0,onClick:()=>i(`GoogleOAuth`),disabled:t,leftIcon:(0,v.jsx)(m,{}),className:`max-w-[300px] gap-3`,children:`Continue with Google`}),(0,v.jsx)(n,{type:`button`,variant:`outlined`,fullWidth:!0,onClick:()=>i(),disabled:t,leftIcon:(0,v.jsx)(h,{}),className:`max-w-[300px] gap-3`,children:`Continue with Email`})]}),(0,v.jsx)(E,{signUpHref:a})]})}var O={signup_closed:`Sign-ups are currently closed. Visit vellum.ai/community to request access.`};function k({returnTo:e}){let[t,r]=(0,_.useState)(null),[i,a]=(0,_.useState)(!1),o=async()=>{r(null),a(!0);try{await l({returnTo:e??null})}catch(e){let t=e&&typeof e==`object`&&`code`in e?e.code:void 0;if(t===`USER_CANCELLED`){a(!1);return}if(t===`AUTH_ERROR`){let t=e&&typeof e==`object`&&`data`in e&&e.data&&typeof e.data==`object`&&`authError`in e.data&&typeof e.data.authError==`string`?e.data.authError:void 0;r((t&&O[t])??`Something went wrong. Please try again.`)}else console.error(`[native-auth] auth flow failed:`,e),r(`Something went wrong. Please try again.`);a(!1)}};return(0,v.jsx)(y,{children:(0,v.jsxs)(`div`,{className:`z-10 mt-8 flex w-full max-w-[320px] flex-col items-center gap-3`,children:[t&&(0,v.jsx)(w,{className:`max-w-[280px]`,children:t}),(0,v.jsx)(n,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>{o()},disabled:i,className:`max-w-[300px]`,children:`Sign in`})]})})}function A({returnTo:e}){let[t,n]=(0,_.useState)(null),[r,i]=(0,_.useState)(!1),a=f(e),o=async t=>{n(null),i(!0);try{await c(d,a,{...t?{providerHint:t}:{},returnTo:e})}catch(e){console.error(`[web-login] auth flow failed:`,e),n(`Something went wrong. Please try again.`),i(!1)}};return(0,v.jsx)(T,{children:(0,v.jsx)(S,{children:(0,v.jsx)(D,{returnTo:e,loading:r,errorMessage:t,onProviderClick:e=>{o(e)}})})})}function j(){let[e]=r(),t=s(),n=e.get(`returnTo`);return t?(0,v.jsx)(k,{returnTo:n}):(0,v.jsx)(A,{returnTo:n})}export{j as LoginPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D7s2Q_uG.js";import{n as r}from"./QueryClientProvider-DKhXIxGb.js";import{t as i}from"./useQuery-B45lW1Kk.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./card-BibIM9x3.js";import{t as s}from"./confirm-dialog-SpCsmAdG.js";import{t as c}from"./input-Ch7OC6ME.js";import{t as l}from"./toggle-95p73HGd.js";import{t as u}from"./modal-CHuPOsJJ.js";import{n as d}from"./toast-CxaZ5f1d.js";import{t as f}from"./skill-row-DDoJmniT.js";import{t as p}from"./cable-C0pEWbc5.js";import{t as m}from"./chevron-right-BNHlGCTg.js";import{t as h}from"./circle-alert-bz1ccYRI.js";import{t as g}from"./circle-check-DBzb54Kz.js";import{t as _}from"./loader-circle-Cw1KvvLK.js";import{t as v}from"./refresh-cw-YXbpNg95.js";import{t as y}from"./client.gen-0CkwJ2Ya.js";import{$r as b,Nr as x,Qr as S,Si as C,ta as w}from"./index-Cx6vyW7T.js";import{t as T}from"./use-active-assistant-id-BlwRimQH.js";var E=e(t(),1),D=a(),O=[{value:`sse`,label:`SSE`},{value:`streamable-http`,label:`Streamable HTTP`},{value:`stdio`,label:`Stdio (command)`}];function k({open:e,onClose:t,onAdd:r,isPending:i}){let[a,o]=(0,E.useState)(``),[s,l]=(0,E.useState)(`sse`),[d,f]=(0,E.useState)(``),[m,h]=(0,E.useState)(``),[g,_]=(0,E.useState)(``),v=(0,E.useCallback)(()=>{o(``),l(`sse`),f(``),h(``),_(``)},[]),y=(0,E.useCallback)(()=>{i||(v(),t())},[i,v,t]),b=(0,E.useCallback)(()=>{let e=a.trim();if(!e)return;let t={name:e,transportType:s};if(s===`stdio`){let e=m.trim();if(!e)return;t.command=e;let n=g.trim();n&&(t.args=n.split(/\s+/))}else{let e=d.trim();if(!e)return;t.url=e}r(t)},[a,s,d,m,g,r]),x=s===`stdio`,S=a.trim()&&(x?m.trim():d.trim());return(0,D.jsx)(u.Root,{open:e,onOpenChange:e=>{e||y()},children:(0,D.jsxs)(u.Content,{size:`md`,children:[(0,D.jsxs)(u.Header,{children:[(0,D.jsx)(u.Title,{icon:p,children:`Add MCP Server`}),(0,D.jsx)(u.Description,{children:`Connect to a Model Context Protocol server to extend available tools.`})]}),(0,D.jsx)(u.Body,{children:(0,D.jsxs)(`div`,{className:`space-y-4`,children:[(0,D.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,D.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-name`,children:`Server name`}),(0,D.jsx)(c,{id:`mcp-name`,type:`text`,value:a,onChange:e=>o(e.target.value),placeholder:`my-server`,fullWidth:!0,autoFocus:!0})]}),(0,D.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,D.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-transport`,children:`Transport`}),(0,D.jsx)(`select`,{id:`mcp-transport`,value:s,onChange:e=>l(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:O.map(e=>(0,D.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),x?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,D.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-command`,children:`Command`}),(0,D.jsx)(c,{id:`mcp-command`,type:`text`,value:m,onChange:e=>h(e.target.value),placeholder:`npx -y @modelcontextprotocol/server-example`,fullWidth:!0})]}),(0,D.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,D.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-args`,children:`Arguments (space-separated)`}),(0,D.jsx)(c,{id:`mcp-args`,type:`text`,value:g,onChange:e=>_(e.target.value),placeholder:`--port 3000`,fullWidth:!0})]})]}):(0,D.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,D.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-url`,children:`Server URL`}),(0,D.jsx)(c,{id:`mcp-url`,type:`url`,value:d,onChange:e=>f(e.target.value),placeholder:`https://example.com/mcp`,fullWidth:!0})]})]})}),(0,D.jsxs)(u.Footer,{children:[(0,D.jsx)(n,{variant:`ghost`,onClick:y,disabled:i,children:`Cancel`}),(0,D.jsx)(n,{variant:`primary`,onClick:b,disabled:!S||i,children:i?`Adding...`:`Add Server`})]})]})})}async function A(e){let{data:t,response:n}=await y.get({url:`/v1/assistants/{assistant_id}/internal/mcp/list`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP servers: ${n?.status}`);return t}async function j(e){let{data:t,response:n}=await y.get({url:`/v1/assistants/{assistant_id}/internal/mcp/tools-summary`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP tools summary: ${n?.status}`);return t}async function M(e,t){let{response:n}=await y.post({url:`/v1/assistants/{assistant_id}/internal/mcp/update`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to update MCP server: ${n?.status}`)}async function N(e,t){let{response:n}=await y.post({url:`/v1/assistants/{assistant_id}/internal/mcp/add`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to add MCP server: ${n?.status}`)}async function P(e,t){let{response:n}=await y.post({url:`/v1/assistants/{assistant_id}/internal/mcp/remove`,path:{assistant_id:e},body:{name:t}});if(!n?.ok)throw Error(`Failed to remove MCP server: ${n?.status}`)}async function F(e){let{response:t}=await y.post({url:`/v1/assistants/{assistant_id}/internal/mcp/reload`,path:{assistant_id:e},body:{}});if(!t?.ok)throw Error(`Failed to reload MCP servers: ${t?.status}`)}var I={connected:{icon:g,label:`Connected`,className:`text-[var(--system-positive-strong)]`},"needs-auth":{icon:C,label:`Needs Auth`,className:`text-[var(--system-warning-strong)]`},disabled:{icon:S,label:`Disabled`,className:`text-[var(--content-tertiary)]`}},L={icon:h,label:`Error`,className:`text-[var(--system-negative-strong)]`};function R({server:e,toolsSummary:t,onToggleEnabled:r,onRemove:i,onConfigure:a,isUpdating:s}){let[c,u]=(0,E.useState)(!1),d=I[e.status]??L,p=d.icon,h=(0,E.useCallback)(t=>r(e.id,t),[r,e.id]),g=(0,E.useCallback)(()=>i(e.id),[i,e.id]),v=(0,E.useCallback)(()=>a(e.id),[a,e.id]),y=(0,E.useCallback)(()=>u(e=>!e),[]);return(0,D.jsx)(o.Root,{children:(0,D.jsxs)(o.Body,{children:[(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,D.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:(0,D.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e.id}),(0,D.jsxs)(`span`,{className:`flex items-center gap-1 text-label-medium-default ${d.className}`,children:[(0,D.jsx)(p,{className:`h-3.5 w-3.5`}),d.label]})]}),(0,D.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,D.jsx)(`span`,{children:e.transport.type}),t?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,D.jsxs)(`span`,{children:[t.toolCount,` `,t.toolCount===1?`tool`:`tools`]}),(0,D.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,D.jsxs)(`span`,{children:[`~`,t.estimatedTokens.toLocaleString(),` tokens`]})]}):null]})]})}),(0,D.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[s?(0,D.jsx)(_,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}):null,(0,D.jsx)(l,{checked:e.enabled,onChange:h,disabled:s,"aria-label":`${e.enabled?`Disable`:`Enable`} ${e.id}`}),(0,D.jsx)(n,{variant:`ghost`,size:`compact`,onClick:v,tooltip:`Configure`,children:`Configure`}),(0,D.jsx)(n,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,D.jsx)(x,{}),onClick:g,tooltip:`Remove server`,"aria-label":`Remove ${e.id}`})]})]}),t&&t.tools.length>0?(0,D.jsxs)(`div`,{className:`mt-3 border-t border-[var(--border-base)] pt-2`,children:[(0,D.jsxs)(`button`,{type:`button`,onClick:y,className:`flex w-full cursor-pointer items-center gap-1 text-body-small-default text-[var(--content-secondary)] hover:text-[var(--content-default)]`,children:[c?(0,D.jsx)(w,{className:`h-3.5 w-3.5`}):(0,D.jsx)(m,{className:`h-3.5 w-3.5`}),t.toolCount,` registered `,t.toolCount===1?`tool`:`tools`]}),c?(0,D.jsx)(`div`,{className:`mt-2 max-h-60 space-y-1 overflow-y-auto`,children:t.tools.map(e=>(0,D.jsx)(f,{title:(0,D.jsx)(`span`,{className:`font-medium text-[var(--content-default)]`,children:e.name}),subtitle:e.description||void 0,action:(0,D.jsxs)(`span`,{className:`whitespace-nowrap text-body-small-default text-[var(--content-tertiary)]`,children:[`~`,e.estimatedTokens.toLocaleString(),` tok`]})},e.name))}):null]}):null]})})}var z=[`low`,`medium`,`high`];function B({server:e,toolsSummary:t,onClose:r,onSave:i,isPending:a}){let[o,s]=(0,E.useState)(`medium`);(0,E.useEffect)(()=>{e&&s(e.defaultRiskLevel)},[e]);let c=(0,E.useCallback)(()=>{e&&i(e.id,{name:e.id,defaultRiskLevel:o})},[e,o,i]),l=(0,E.useCallback)(()=>{a||r()},[a,r]);return e?(0,D.jsx)(u.Root,{open:!!e,onOpenChange:e=>{e||l()},children:(0,D.jsxs)(u.Content,{size:`lg`,children:[(0,D.jsxs)(u.Header,{children:[(0,D.jsx)(u.Title,{icon:p,children:e.id}),(0,D.jsxs)(u.Description,{children:[e.transport.type,` transport · `,e.status]})]}),(0,D.jsx)(u.Body,{children:(0,D.jsxs)(`div`,{className:`space-y-5`,children:[(0,D.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,D.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-risk`,children:`Default risk level`}),(0,D.jsx)(`select`,{id:`mcp-risk`,value:o,onChange:e=>s(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:z.map(e=>(0,D.jsx)(`option`,{value:e,children:e.charAt(0).toUpperCase()+e.slice(1)},e))})]}),t&&t.tools.length>0?(0,D.jsxs)(`div`,{className:`space-y-2`,children:[(0,D.jsxs)(`h3`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`Registered tools (`,t.toolCount,`)`]}),(0,D.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Total estimated token overhead: ~`,t.estimatedTokens.toLocaleString(),` tokens`]}),(0,D.jsx)(`div`,{className:`max-h-64 overflow-y-auto rounded-lg border border-[var(--border-base)]`,children:(0,D.jsxs)(`table`,{className:`w-full text-body-small-default`,children:[(0,D.jsx)(`thead`,{children:(0,D.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] bg-[var(--surface-base)]`,children:[(0,D.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:`Tool`}),(0,D.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:`Description`}),(0,D.jsx)(`th`,{className:`px-3 py-2 text-right font-medium text-[var(--content-secondary)]`,children:`Tokens`})]})}),(0,D.jsx)(`tbody`,{children:t.tools.map(e=>(0,D.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] last:border-b-0`,children:[(0,D.jsx)(`td`,{className:`px-3 py-2 font-medium text-[var(--content-default)]`,children:e.name}),(0,D.jsx)(`td`,{className:`max-w-xs truncate px-3 py-2 text-[var(--content-tertiary)]`,children:e.description||`—`}),(0,D.jsxs)(`td`,{className:`px-3 py-2 text-right text-[var(--content-tertiary)]`,children:[`~`,e.estimatedTokens.toLocaleString()]})]},e.name))})]})})]}):null]})}),(0,D.jsxs)(u.Footer,{children:[(0,D.jsx)(n,{variant:`ghost`,onClick:l,disabled:a,children:`Cancel`}),(0,D.jsx)(n,{variant:`primary`,onClick:c,disabled:a,children:a?`Saving...`:`Save`})]})]})}):null}var V=`mcp-servers`,H=`mcp-tools-summary`;function U(){let e=T(),t=r(),[a,o]=(0,E.useState)(!1),[c,l]=(0,E.useState)(null),[u,f]=(0,E.useState)(null),[m,h]=(0,E.useState)(new Set),[g,y]=(0,E.useState)(!1),[x,S]=(0,E.useState)(!1),[C,w]=(0,E.useState)(!1),[O,I]=(0,E.useState)(!1),{data:L,isLoading:z,isError:U}=i({queryKey:[V,e],queryFn:()=>A(e)}),{data:W}=i({queryKey:[H,e],queryFn:()=>j(e)}),G=(0,E.useCallback)(()=>{t.invalidateQueries({queryKey:[V,e]}),t.invalidateQueries({queryKey:[H,e]})},[t,e]),K=(0,E.useMemo)(()=>{let e=new Map;if(W)for(let t of W.servers)e.set(t.serverId,t);return e},[W]),q=(0,E.useMemo)(()=>!c||!L?null:L.servers.find(e=>e.id===c)??null,[c,L]),J=(0,E.useCallback)(async(t,n)=>{h(e=>new Set(e).add(t));try{await M(e,{name:t,enabled:n}),G()}catch{d.error(`Failed to ${n?`enable`:`disable`} ${t}`)}finally{h(e=>{let n=new Set(e);return n.delete(t),n})}},[e,G]),Y=(0,E.useCallback)(async()=>{if(u){S(!0);try{await P(e,u),G(),d.success(`Removed ${u}`),f(null)}catch{d.error(`Failed to remove ${u}`)}finally{S(!1)}}},[u,e,G]),X=(0,E.useCallback)(async t=>{y(!0);try{await N(e,t),G(),d.success(`Added ${t.name}`),o(!1)}catch{d.error(`Failed to add ${t.name}`)}finally{y(!1)}},[e,G]),Z=(0,E.useCallback)(async(t,n)=>{w(!0);try{await M(e,n),G(),d.success(`Updated ${t}`),l(null)}catch{d.error(`Failed to update ${t}`)}finally{w(!1)}},[e,G]),Q=(0,E.useCallback)(async()=>{I(!0);try{await F(e),G(),d.success(`MCP servers reloaded`)}catch{d.error(`Failed to reload MCP servers`)}finally{I(!1)}},[e,G]),$=L?.servers??[];return(0,D.jsxs)(`div`,{className:`space-y-4`,children:[(0,D.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,D.jsxs)(`div`,{children:[(0,D.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:`MCP Servers`}),(0,D.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`Manage Model Context Protocol server connections and their registered tools.`})]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:(0,D.jsx)(v,{className:O?`animate-spin`:``}),onClick:Q,disabled:O,tooltip:`Reload all servers`,"aria-label":`Reload MCP servers`}),(0,D.jsx)(n,{variant:`primary`,size:`compact`,leftIcon:(0,D.jsx)(b,{}),onClick:()=>o(!0),children:`Add Server`})]})]}),W?(0,D.jsxs)(`div`,{className:`flex gap-4 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,D.jsxs)(`span`,{children:[W.totalToolCount,` total `,W.totalToolCount===1?`tool`:`tools`]}),(0,D.jsxs)(`span`,{children:[`~`,W.totalEstimatedTokens.toLocaleString(),` total tokens`]})]}):null,z?(0,D.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,D.jsx)(_,{className:`h-4 w-4 animate-spin`}),(0,D.jsx)(`span`,{children:`Loading MCP servers...`})]}):U?(0,D.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load MCP servers. Check that an assistant is running.`}):$.length===0?(0,D.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center`,children:[(0,D.jsx)(p,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,D.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`No MCP Servers`}),(0,D.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Add an MCP server to extend your assistant with external tools.`})]}):(0,D.jsx)(`div`,{className:`space-y-2`,children:$.map(e=>(0,D.jsx)(R,{server:e,toolsSummary:K.get(e.id),onToggleEnabled:J,onRemove:f,onConfigure:l,isUpdating:m.has(e.id)},e.id))}),(0,D.jsx)(k,{open:a,onClose:()=>o(!1),onAdd:X,isPending:g}),(0,D.jsx)(B,{server:q,toolsSummary:c?K.get(c):void 0,onClose:()=>l(null),onSave:Z,isPending:C}),(0,D.jsx)(s,{open:!!u,title:`Remove MCP Server`,message:`Are you sure you want to remove "${u}"? This will disconnect all tools provided by this server.`,confirmLabel:`Remove`,destructive:!0,isPending:x,onConfirm:Y,onCancel:()=>f(null)})]})}function W(){return(0,D.jsx)(U,{})}export{W as McpPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{r as n}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as r}from"./QueryClientProvider-DKhXIxGb.js";import{t as i}from"./useQuery-B45lW1Kk.js";import{t as a}from"./useMutation-Lj4VunQV.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./menu-CdoNX1qx.js";import{t as c}from"./notice-CynJKEow.js";import{t as l}from"./popover-BsF65jZY.js";import{t as u}from"./input-Ch7OC6ME.js";import{n as d,t as f}from"./panel-item-BLQE_l-g.js";import{n as p}from"./toast-CxaZ5f1d.js";import{t as m}from"./createLucideIcon-BlMXrA59.js";import{t as h}from"./bell-DB1SrBre.js";import{t as g}from"./loader-circle-Cw1KvvLK.js";import{t as _}from"./moon-Be4Pgk5X.js";import{t as v}from"./triangle-alert-AqQQTwUZ.js";import{a as y}from"./routes-B9xcBuuC.js";import{n as b}from"./use-is-mobile-D_0cze0t.js";import{ct as x,dt as S,ft as C,lt as w,mt as T,pt as E,ut as D}from"./react-query.gen-CRARj4mG.js";import{Jt as O,Kt as k,na as A,qt as j,x as M}from"./index-Cx6vyW7T.js";import{t as N}from"./mutation-error-BjiE6W0q.js";import{r as P}from"./format-date-Cx9GZ7-D.js";var F=m(`bell-off`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),I=m(`check-check`,[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]),L=e(t(),1);function R(e){e.invalidateQueries({queryKey:D()}),e.invalidateQueries({queryKey:T()})}function z(e){return e.snoozed_until?new Date(e.snoozed_until)>new Date:!1}var B=[{label:`1 hour`,hours:1},{label:`4 hours`,hours:4},{label:`24 hours`,hours:24},{label:`1 week`,hours:168}],V=o();function H({notificationId:e,currentlySnoozed:t,children:n}){let i=r(),o=a(E()),c=b(),[l,u]=(0,L.useState)(!1),p=()=>R(i),m=t=>{let n=new Date(new Date().getTime()+t*60*60*1e3).toISOString();o.mutate({path:{id:e},body:{snoozed_until:n}},{onSuccess:p,onError:N(`Failed to snooze notification`)})},h=()=>{o.mutate({path:{id:e},body:{snoozed_until:null}},{onSuccess:p,onError:N(`Failed to clear snooze`)})};return c?(0,V.jsxs)(d.Root,{open:l,onOpenChange:u,children:[(0,V.jsx)(d.Trigger,{asChild:!0,children:n}),(0,V.jsxs)(d.Content,{children:[(0,V.jsx)(d.Header,{children:(0,V.jsx)(d.Title,{children:`Snooze until…`})}),(0,V.jsxs)(d.Body,{children:[B.map(({label:e,hours:t})=>(0,V.jsx)(f,{label:e,onSelect:()=>{o.isPending||(u(!1),m(t))}},e)),t&&(0,V.jsx)(f,{label:`Clear snooze`,onSelect:()=>{o.isPending||(u(!1),h())}})]})]})]}):(0,V.jsxs)(s.Root,{open:l,onOpenChange:u,children:[(0,V.jsx)(s.Trigger,{children:n}),(0,V.jsxs)(s.Content,{align:`start`,className:`min-w-[12rem]`,children:[(0,V.jsx)(s.Label,{children:`Snooze until…`}),B.map(({label:e,hours:t})=>(0,V.jsx)(s.Item,{disabled:o.isPending,onSelect:()=>m(t),children:e},e)),t&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(s.Separator,{}),(0,V.jsx)(s.Item,{disabled:o.isPending,onSelect:()=>h(),children:`Clear snooze`})]})]})]})}function U({existingRules:e,onClose:t,onPauseCreated:n,onPauseDeleted:i,hideTitle:o=!1}){let s=r(),c=a(S()),l=a(C()),[d,f]=(0,L.useState)(``),p=()=>R(s),m=()=>{let e=new Date(new Date().getTime()+365*24*60*60*1e3).toISOString();c.mutate({body:{notification_type:`alert`,dedupe_key_prefix:``,reason:d.trim()||`User requested pause`,expires_at:e}},{onSuccess:e=>{n(e),p(),t()},onError:N(`Failed to pause alerts`)})},h=e=>{l.mutate({path:{rule_id:e}},{onSuccess:()=>{i(e),p(),t()},onError:N(`Failed to resume alerts`)})},_=c.isPending||l.isPending;return(0,V.jsxs)(`div`,{children:[!o&&(0,V.jsx)(`p`,{className:`mb-2 text-body-medium-default text-[var(--content-default)]`,children:`Pause alerts`}),e.length>0?(0,V.jsxs)(`div`,{className:`space-y-2`,children:[(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Active pause rules:`}),e.map(e=>(0,V.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-2 py-2`,children:[(0,V.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,V.jsx)(`p`,{className:`truncate text-body-small-default text-[var(--content-default)]`,children:e.reason||`All alerts paused`}),e.expires_at&&(0,V.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Expires `,P(e.expires_at)]})]}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>h(e.id),disabled:_,className:`ml-2 shrink-0 cursor-pointer rounded px-2 py-1 text-body-small-default text-[var(--system-negative-strong)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:`Resume`})]},e.id))]}):(0,V.jsxs)(`div`,{className:`space-y-2`,children:[(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Temporarily mute all alert notifications.`}),(0,V.jsx)(u,{type:`text`,value:d,onChange:e=>f(e.target.value),placeholder:`Reason (optional)`}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>m(),disabled:_,className:`w-full cursor-pointer rounded-md bg-[var(--primary-base)] px-3 py-1.5 text-body-medium-default text-[var(--content-inset)] transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50`,children:c.isPending?(0,V.jsxs)(`span`,{className:`flex items-center justify-center gap-2`,children:[(0,V.jsx)(g,{className:`h-3 w-3 animate-spin`}),`Pausing…`]}):`Pause all alerts`})]})]})}function W({notification:e,onAck:t,isAcking:n}){let r=e.notification_type===`alert`,i=z(e),a=!e.is_read;return(0,V.jsxs)(`div`,{className:`relative rounded-lg border border-[var(--border-base)] p-4`,style:{background:e.is_resolved?`var(--surface-base)`:`var(--surface-lift)`,opacity:e.is_resolved?.75:1},children:[(0,V.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,V.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col items-start gap-1`,children:[(0,V.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[a&&!e.is_resolved&&(0,V.jsx)(`span`,{"aria-hidden":!0,className:`h-2 w-2 shrink-0 rounded-full bg-[var(--primary-base)]`}),r&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-negative-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,V.jsx)(v,{className:`h-3 w-3`}),`Alert`]}),i&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--surface-base)] px-2 py-0.5 text-body-small-default text-[var(--content-secondary)]`,children:[(0,V.jsx)(_,{className:`h-3 w-3`}),`Snoozed`]}),e.is_resolved&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-positive-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,children:[(0,V.jsx)(A,{className:`h-3 w-3`}),`Resolved`]})]}),(0,V.jsx)(`h3`,{className:`text-body-medium-default leading-tight`,style:{color:e.is_resolved?`var(--content-secondary)`:`var(--content-default)`},children:e.title}),e.body&&(0,V.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-secondary)]`,children:e.body})]})}),(0,V.jsxs)(`div`,{className:`mt-3 flex items-center gap-3 text-body-small-default text-[var(--content-secondary)]`,children:[(0,V.jsxs)(`span`,{children:[`Last seen `,P(e.last_seen_at)]}),e.occurrence_count>1&&(0,V.jsxs)(`span`,{children:[`· `,e.occurrence_count,`× occurrences`]})]}),!e.is_resolved&&(0,V.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 border-t border-[var(--border-base)] pt-3`,children:[(0,V.jsxs)(`button`,{type:`button`,onClick:()=>t(e.id,a),disabled:n,className:`flex cursor-pointer items-center gap-1.5 rounded-md px-3 py-1.5 text-body-small-default transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,style:{background:a?`var(--primary-base)`:`var(--surface-base)`,color:a?`var(--content-inset)`:`var(--content-secondary)`},children:[n?(0,V.jsx)(g,{className:`h-3 w-3 animate-spin`}):(0,V.jsx)(A,{className:`h-3 w-3`}),a?`Mark as read`:`Mark as unread`]}),(0,V.jsx)(H,{notificationId:e.id,currentlySnoozed:i,children:(0,V.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,children:[(0,V.jsx)(_,{className:`h-3 w-3`}),i?`Change snooze`:`Snooze`]})})]})]})}function G(){let e=O({platformHostedOnly:!0}),t=k(),o=j(),s=r(),u=b(),[f,m]=(0,L.useState)(`open`),[_,v]=(0,L.useState)(!1),[S,C]=(0,L.useState)([]),{data:T,isLoading:E,isError:D,refetch:A}=i({...w({query:{status:f}}),enabled:e===`full`&&t}),N=e===`full`&&o||(t?E:!1);(0,L.useEffect)(()=>{!t&&_&&v(!1)},[t,_]);let P=t?D:!1,z=t?T?.results??[]:[],B=z.filter(e=>!e.is_read&&!e.is_resolved),H=a(x()),[G,K]=(0,L.useState)(new Set),[q,J]=(0,L.useState)(!1),Y=(0,L.useCallback)(()=>R(s),[s]),X=async(e,t)=>{K(t=>new Set(t).add(e));try{await H.mutateAsync({path:{id:e},body:{acknowledged:t}}),Y()}catch(e){p.error(e instanceof Error?e.message:`Failed to update notification`)}finally{K(t=>{let n=new Set(t);return n.delete(e),n})}},Z=async()=>{if(!(B.length===0||q)){J(!0);try{await Promise.allSettled(B.map(e=>H.mutateAsync({path:{id:e.id},body:{acknowledged:!0}})))}finally{Y(),J(!1)}}},Q=(0,V.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,title:`Pause alerts`,children:[(0,V.jsx)(F,{className:`h-3.5 w-3.5`}),`Pause alerts`]}),$=(0,V.jsx)(U,{existingRules:S,onClose:()=>v(!1),onPauseCreated:e=>C(t=>[...t,e]),onPauseDeleted:e=>C(t=>t.filter(t=>t.id!==e))});return e===`gated`?(0,V.jsx)(n,{replace:!0,to:y.settings.general}):e===`disabled`?(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,V.jsx)(h,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,V.jsxs)(`div`,{className:`flex-1`,children:[(0,V.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]})]}),(0,V.jsx)(M,{children:`Log in to the Vellum platform to view notifications.`})]}):(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,V.jsx)(h,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,V.jsxs)(`div`,{className:`flex-1`,children:[(0,V.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]}),t&&(u?(0,V.jsxs)(d.Root,{open:_,onOpenChange:v,children:[(0,V.jsx)(d.Trigger,{asChild:!0,children:Q}),(0,V.jsxs)(d.Content,{children:[(0,V.jsx)(d.Header,{children:(0,V.jsx)(d.Title,{children:`Pause alerts`})}),(0,V.jsx)(d.Body,{children:(0,V.jsx)(U,{existingRules:S,onClose:()=>v(!1),onPauseCreated:e=>C(t=>[...t,e]),onPauseDeleted:e=>C(t=>t.filter(t=>t.id!==e)),hideTitle:!0})})]})]}):(0,V.jsxs)(l.Root,{open:_,onOpenChange:v,children:[(0,V.jsx)(l.Trigger,{asChild:!0,children:Q}),(0,V.jsx)(l.Content,{align:`end`,className:`w-72`,children:$})]}))]}),(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(`div`,{className:`flex gap-1 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-1`,children:[`open`,`resolved`].map(e=>{let t=f===e;return(0,V.jsx)(`button`,{type:`button`,onClick:()=>m(e),className:`cursor-pointer rounded px-3 py-1 text-body-small-default capitalize transition-colors`,style:{background:t?`var(--surface-lift)`:`transparent`,color:t?`var(--content-default)`:`var(--content-secondary)`,boxShadow:t?`0 1px 2px rgba(0,0,0,0.08)`:void 0},children:e},e)})}),f===`open`&&B.length>1&&(0,V.jsxs)(`button`,{type:`button`,onClick:()=>void Z(),disabled:q,className:`ml-auto flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-transparent px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:[q?(0,V.jsx)(g,{className:`h-3 w-3 animate-spin`}):(0,V.jsx)(I,{className:`h-3 w-3`}),`Mark all as read (`,B.length,`)`]})]}),N?(0,V.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,V.jsx)(g,{className:`h-4 w-4 animate-spin`}),`Loading notifications…`]}):P?(0,V.jsxs)(c,{tone:`error`,children:[`Failed to load notifications.`,` `,(0,V.jsx)(`button`,{type:`button`,onClick:()=>void A(),className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}):z.length===0?(0,V.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,children:[(0,V.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,V.jsx)(h,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,V.jsxs)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`No `,f,` notifications`]}),(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:f===`open`?`You're all caught up!`:`Nothing to show here.`})]}):(0,V.jsx)(`div`,{className:`space-y-3`,children:z.map(e=>(0,V.jsx)(W,{notification:e,onAck:(e,t)=>void X(e,t),isAcking:G.has(e.id)},e.id))})]})}export{G as NotificationsPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D7s2Q_uG.js";import{d as r,p as i,r as a,t as o}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as s}from"./QueryClientProvider-DKhXIxGb.js";import{t as c}from"./useQuery-B45lW1Kk.js";import{t as l}from"./jsx-runtime-CVSDxk6A.js";import{t as u}from"./card-BibIM9x3.js";import"./src-BJj2O5XB.js";import{t as d}from"./confirm-dialog-SpCsmAdG.js";import{n as f}from"./toast-CxaZ5f1d.js";import{t as p}from"./arrow-left-CP-EhDNF.js";import{t as m}from"./external-link-DAovIsxF.js";import{t as h}from"./loader-circle-Cw1KvvLK.js";import{t as g}from"./triangle-alert-AqQQTwUZ.js";import{$ as _,Ht as v,Q as y,Ut as b,Wt as x,it as S,nt as C,tt as w}from"./react-query.gen-4ZMhZ-fj.js";import{a as T}from"./routes-B9xcBuuC.js";import{t as E}from"./assistant-feature-flag-store-BD9zTDcP.js";import{Li as D,Nr as O,ca as k,ea as A,j}from"./index-Cx6vyW7T.js";import{t as M}from"./use-active-assistant-id-BlwRimQH.js";import{n as N,r as P,t as F}from"./use-plugin-drift-C3gz_rng.js";var I=e(t(),1),L=l();function R(e){return e?e.slice(0,7):`unknown`}function z(){let e=E.use.hasHydrated(),t=E.use.externalPlugins(),l=M(),{name:m}=i(),h=r(),g=s(),[D,O]=(0,I.useState)(!1),[k,A]=(0,I.useState)(!1),P=c({...y({path:{assistant_id:l,name:m??``}}),enabled:!!l&&!!m}),z=P.data?.installed??!1,G=N({assistantId:l,name:m??``,enabled:z}).data,K=(0,I.useCallback)(()=>{g.invalidateQueries({queryKey:C({path:{assistant_id:l}})}),g.invalidateQueries({queryKey:S({path:{assistant_id:l}})}),m&&(g.invalidateQueries({queryKey:_({path:{assistant_id:l,name:m}})}),g.invalidateQueries({queryKey:w({path:{assistant_id:l,name:m}})}))},[l,m,g]),q=x({onSuccess:()=>{K(),f.success(`Installed ${m??`plugin`}`)}}),J=v({onSuccess:()=>{K(),h(T.plugins)}}),Y=b({onSuccess:e=>{K(),f.success(e.outcome===`already-up-to-date`?`${m??`Plugin`} is already up to date`:`Upgraded ${m??`plugin`} to ${R(e.toCommit)}`)}});if(!e)return null;if(!t)return(0,L.jsx)(a,{to:T.identity,replace:!0});if(!m)return(0,L.jsx)(a,{to:T.plugins,replace:!0});let X=()=>{q.mutate({path:{assistant_id:l},body:{name:m}})},Z=()=>{O(!1),J.mutate({path:{assistant_id:l,name:m}})},Q=()=>{Y.mutate({path:{assistant_id:l,name:m},body:{}})},ee=()=>{if(F(G)){A(!0);return}Q()},te=()=>{A(!1),Q()},$=P.data??null;return(0,L.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col`,children:[(0,L.jsxs)(`div`,{className:`mb-4 flex items-start gap-3`,children:[(0,L.jsx)(n,{asChild:!0,variant:`ghost`,children:(0,L.jsx)(o,{to:T.plugins,"aria-label":`Back to plugins`,children:(0,L.jsx)(p,{"aria-hidden":!0})})}),(0,L.jsx)(B,{name:m,plugin:$,drift:G,onInstall:X,onRemove:()=>O(!0),onUpgrade:ee,isInstalling:q.isPending,isRemoving:J.isPending,isUpgrading:Y.isPending})]}),(q.isError||J.isError||Y.isError)&&(0,L.jsx)(W,{message:q.isError?`Failed to install plugin. Please try again.`:J.isError?`Failed to remove plugin. Please try again.`:`Failed to upgrade plugin. Please try again.`}),(0,L.jsx)(u.Root,{asChild:!0,children:(0,L.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-6 py-5`,children:P.isLoading?(0,L.jsx)(H,{}):P.isError||!$?(0,L.jsx)(U,{}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(V,{plugin:$}),$.readme?(0,L.jsx)(j,{content:$.readme}):(0,L.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`This plugin doesn't ship a README.`})]})})}),(0,L.jsx)(d,{open:D,title:`Remove plugin`,message:`Remove "${$?.name??m}" from this assistant?`,confirmLabel:`Remove`,destructive:!0,onConfirm:Z,onCancel:()=>O(!1)}),(0,L.jsx)(d,{open:k,title:`Upgrade plugin`,message:`"${$?.name??m}" has local edits that will be overwritten by the upgrade. Continue?`,confirmLabel:`Upgrade anyway`,destructive:!0,onConfirm:te,onCancel:()=>A(!1)})]})}function B({name:e,plugin:t,drift:r,onInstall:i,onRemove:a,onUpgrade:o,isInstalling:s,isRemoving:c,isUpgrading:l}){let u=t?.installed??!1,d=t?.source?.kind===`github`,f=t?.artifact??null,p=r?.status===`update-available`,m=p?`Upgrade ${R(r?.local?.commit??null)} \u2192 ${R(r?.remote?.commit??null)}`:void 0;return(0,L.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3 sm:flex-row sm:items-center`,children:[(0,L.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,L.jsx)(`div`,{className:`flex h-10 w-10 shrink-0 items-center justify-center text-2xl`,children:d?`📦`:`🧩`}),(0,L.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,L.jsx)(`h2`,{className:`truncate text-title-medium`,style:{color:`var(--content-default)`},children:t?.name??e}),t?.version?(0,L.jsxs)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[`v`,t.version]}):null,d?(0,L.jsx)(`span`,{className:`shrink-0 rounded px-1.5 py-0.5 text-body-small-default`,style:{backgroundColor:`var(--surface-secondary)`,color:`var(--content-tertiary)`},children:`external`}):null,p?(0,L.jsx)(P,{}):null]}),t?.description?(0,L.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t.description}):null]})]}),t?u?(0,L.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[f?(0,L.jsx)(n,{asChild:!0,leftIcon:(0,L.jsx)(D,{"aria-hidden":!0}),children:(0,L.jsx)(`a`,{href:f.url,download:!0,children:f.label??`Download`})}):null,p?(0,L.jsx)(n,{type:`button`,onClick:o,disabled:l,title:m,leftIcon:l?(0,L.jsx)(h,{className:`animate-spin`,"aria-hidden":!0}):(0,L.jsx)(A,{"aria-hidden":!0}),children:`Upgrade`}):null,(0,L.jsx)(n,{type:`button`,variant:`dangerOutline`,onClick:a,disabled:c,leftIcon:c?(0,L.jsx)(h,{className:`animate-spin`,"aria-hidden":!0}):(0,L.jsx)(O,{"aria-hidden":!0}),children:`Remove`})]}):(0,L.jsx)(n,{type:`button`,onClick:i,disabled:s,leftIcon:s?(0,L.jsx)(h,{className:`animate-spin`,"aria-hidden":!0}):(0,L.jsx)(k,{"aria-hidden":!0}),children:`Install`}):null]})}function V({plugin:e}){let t=[{label:`Source`,value:e.source?.kind===`github`?e.source.repo:`Local`,href:(e.source?.kind===`github`?`https://github.com/${e.source.repo}`:null)??void 0}];return e.homepage&&t.push({label:`Homepage`,value:e.homepage,href:e.homepage}),e.license&&t.push({label:`License`,value:e.license}),(0,L.jsx)(`dl`,{className:`mb-5 grid gap-x-6 gap-y-2 border-b pb-5 sm:grid-cols-[max-content_1fr]`,style:{borderColor:`var(--border-base)`},children:t.map(e=>(0,L.jsxs)(`div`,{className:`contents`,children:[(0,L.jsx)(`dt`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e.label}),(0,L.jsx)(`dd`,{className:`min-w-0 truncate text-body-small-default`,style:{color:`var(--content-secondary)`},children:e.href?(0,L.jsxs)(`a`,{href:e.href,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 underline`,style:{color:`var(--primary-base, #60a5fa)`},children:[e.value,(0,L.jsx)(m,{className:`h-3 w-3`,"aria-hidden":!0})]}):e.value})]},e.label))})}function H(){return(0,L.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,L.jsx)(h,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function U(){return(0,L.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,style:{color:`var(--content-tertiary)`},children:[(0,L.jsx)(g,{className:`h-6 w-6`,"aria-hidden":!0}),(0,L.jsx)(`p`,{className:`text-body-medium-default`,children:`We couldn't load this plugin.`}),(0,L.jsx)(`p`,{className:`text-body-small-default`,children:`It may not exist, or your assistant may be on an older build.`})]})}function W({message:e}){return(0,L.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 rounded px-3 py-2 text-body-small-default`,style:{backgroundColor:`var(--surface-secondary)`,color:`var(--content-warning, var(--content-tertiary))`},role:`alert`,children:[(0,L.jsx)(g,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),e]})}export{z as PluginDetailPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D7s2Q_uG.js";import{d as r,h as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as a}from"./QueryClientProvider-DKhXIxGb.js";import{t as o}from"./useQuery-B45lW1Kk.js";import{t as s}from"./jsx-runtime-CVSDxk6A.js";import{t as c}from"./card-BibIM9x3.js";import{t as l}from"./input-Ch7OC6ME.js";import{c as u,f as d,o as f}from"./local-mode-BD2zqd9I.js";import{t as p}from"./is-electron-C_ZTVhv8.js";import{n as m}from"./resolved-assistants-store-DLNFVaZL.js";import{t as h}from"./chevron-left-o_oJAd6A.js";import{t as g}from"./loader-circle-Cw1KvvLK.js";import{t as _}from"./pencil-Dm2eFMe3.js";import{t as v}from"./x-BeVbiDS2.js";import{F as y,X as b,Y as x,a as S,n as C,o as w}from"./auth-store-CbVvQiBR.js";import{t as T}from"./client.gen-DzaL5PKF.js";import{a as E}from"./routes-B9xcBuuC.js";import{o as D,r as O}from"./prefs-DP4g-Qgi.js";import{t as k}from"./client-feature-flag-store-DjN8fxHA.js";import{b as ee,r as A,yt as te}from"./react-query.gen-CRARj4mG.js";import{t as j}from"./public-asset-CH9GPeL_.js";import{Ct as ne,Fi as M,H as N,U as re,V as P,_n as F,_t as I,c as ie,d as ae,dt as oe,ft as L,gn as se,gt as ce,l as le,mt as R,na as z,pt as B,s as ue,vn as de,wt as fe,yn as pe}from"./index-Cx6vyW7T.js";import{c as me,i as he,n as V,o as ge,r as _e,s as ve,t as H}from"./step-indicator-dots-Bx_0xTIr.js";import{n as ye,r as be}from"./prechat-names-CkLrL-Jh.js";var U=e(t(),1);async function xe(){try{let{data:e,response:t}=await T.get({url:`/v1/onboarding/recipe/`,throwOnError:!1});if(!t?.ok||!e)return null;let n=e;return typeof n.cohort!=`string`||!Array.isArray(n.tasks)||typeof n.tone!=`string`||typeof n.bootstrap_template!=`string`||typeof n.initial_message!=`string`||!Array.isArray(n.skills)||typeof n.skip_prechat!=`boolean`?null:{cohort:n.cohort,tasks:n.tasks,tone:n.tone,bootstrapTemplate:n.bootstrap_template,initialMessage:n.initial_message,skills:n.skills,skipPrechat:n.skip_prechat}}catch{return null}}var W=s(),Se=[{label:`Push notifications`,detail:`stay in the loop even when the browser is closed`},{label:`Biometric login`,detail:`Face ID & Touch ID for instant, secure access`},{label:`Native haptics`,detail:`tactile feedback that feels part of the device`},{label:`Home screen access`,detail:`launch your assistant with a single tap`}];function Ce({onComplete:e}){function t(){le(),ue(),e()}return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-md flex-col items-center justify-center px-6 pb-40 text-center`,children:[(0,W.jsx)(`div`,{className:`mb-8 flex size-16 items-center justify-center rounded-2xl border`,style:{background:`var(--surface-overlay)`,borderColor:`var(--border-element)`,boxShadow:`0 1px 3px rgba(0,0,0,0.06), 0 4px 12px rgba(0,0,0,0.04)`,animation:`fadeInUp 0.3s ease-out both`},children:(0,W.jsxs)(`svg`,{width:`28`,height:`28`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,style:{color:`var(--content-default)`},"aria-hidden":!0,children:[(0,W.jsx)(`rect`,{x:`5`,y:`2`,width:`14`,height:`20`,rx:`3`}),(0,W.jsx)(`line`,{x1:`12`,y1:`18`,x2:`12`,y2:`18.01`})]})}),(0,W.jsx)(`p`,{className:`text-label-small-default mb-3 uppercase tracking-[0.2em]`,style:{color:`var(--content-tertiary)`,animation:`fadeInUp 0.3s ease-out 0.05s both`},children:`One more thing`}),(0,W.jsx)(`h1`,{className:`mb-3 text-3xl font-semibold tracking-tight`,style:{color:`var(--content-default)`,animation:`fadeInUp 0.3s ease-out 0.1s both`},children:`Your assistant, in your pocket.`}),(0,W.jsx)(`p`,{className:`text-body-medium-lighter mb-10 max-w-sm`,style:{color:`var(--content-secondary)`,animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`The iOS app keeps your assistant a tap away — with push notifications, biometric login, and native haptics.`}),(0,W.jsx)(`div`,{className:`mb-10 w-full rounded-xl border px-5 py-4`,style:{background:`var(--surface-overlay)`,borderColor:`var(--border-element)`,animation:`fadeInUp 0.3s ease-out 0.2s both`},children:(0,W.jsx)(`ul`,{className:`space-y-4`,children:Se.map((e,t)=>(0,W.jsxs)(`li`,{className:`flex items-start gap-3`,style:{animation:`fadeInUp 0.3s ease-out ${.25+t*.05}s both`},children:[(0,W.jsx)(`span`,{className:`mt-0.5 flex size-5 shrink-0 items-center justify-center rounded-full`,style:{background:`var(--system-positive-weak)`},children:(0,W.jsx)(z,{size:12,style:{color:`var(--system-positive-strong)`}})}),(0,W.jsxs)(`span`,{className:`text-left`,children:[(0,W.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),(0,W.jsxs)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[` — `,e.detail]})]})]},e.label))})}),(0,W.jsxs)(`div`,{className:`flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.45s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:t,className:`h-11 text-base`,children:`Download on the App Store`}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:e,className:`h-11 text-base`,children:`Continue in browser`})]})]})})}var G=`google`,we=[{id:`gmail`,label:`Gmail`,logoSrc:j(`/images/integrations/gmail.svg`)},{id:`google-calendar`,label:`Google Calendar`,logoSrc:j(`/images/integrations/google-calendar.svg`)},{id:`google-drive`,label:`Google Drive`,logoSrc:j(`/images/integrations/google-drive.svg`)}];function Te({assistantId:e,assistantName:t,onConnect:r,onSkip:i,onBack:o}){let s=p(),c=a(),l=y(),u=(0,U.useRef)(null),d=(0,U.useRef)(null),f=(0,U.useRef)(null),m=(0,U.useRef)(null),_=(0,U.useRef)(null),v=(0,U.useRef)(null),b=(0,U.useRef)(null),[x,S]=(0,U.useState)(!1),C=(0,U.useCallback)(()=>{d.current=null,S(!1)},[]),w=(0,U.useCallback)(()=>{_.current&&=(window.removeEventListener(`message`,_.current),null),v.current&&=(window.removeEventListener(`storage`,v.current),null)},[]),T=(0,U.useCallback)(()=>{u.current&&!u.current.closed&&u.current.close(),u.current=null,f.current&&=(clearInterval(f.current),null),m.current&&=(clearTimeout(m.current),null)},[]),D=te();(0,U.useEffect)(()=>()=>{f.current&&clearInterval(f.current),m.current&&clearTimeout(m.current),u.current&&!u.current.closed&&u.current.close(),_.current&&window.removeEventListener(`message`,_.current),v.current&&window.removeEventListener(`storage`,v.current),b.current&&=(b.current(),null)},[]);let O=(0,U.useCallback)(async e=>{try{return(await c.fetchQuery({...ee({path:{assistant_id:e}}),staleTime:0})).find(e=>e.provider===G&&e.connected)??null}catch{return null}},[c]),k=(0,U.useCallback)(async()=>{let e=d.current?.platformAssistantId;T(),C(),r((e?await O(e):null)?.scopes_granted??[])},[C,T,O,r]),A=(0,U.useCallback)(e=>{e.type===`vellum:oauth-complete`&&(!d.current||e.requestId!==d.current.requestId||(e.oauthStatus===`connected`?k():(T(),C())))},[C,T,k]),j=(0,U.useCallback)(e=>{let t=d.current;if(!t)return;let n=oe(e,window.location.origin,t.requestId);n&&A(n)},[A]),M=(0,U.useCallback)(e=>{let t=d.current;if(!t)return;let n=L(e,t.requestId);n&&(A(n),window.localStorage.removeItem(R(t.requestId)))},[A]);ce((0,U.useCallback)(e=>{let t=d.current;t&&e.requestId===t.requestId&&A({type:`vellum:oauth-complete`,requestId:e.requestId,oauthStatus:e.oauthStatus,oauthProvider:e.oauthProvider,oauthCode:e.oauthCode})},[A]));let N=(0,U.useCallback)(()=>{let t=crypto.randomUUID();if(w(),_.current=j,v.current=M,l){S(!0),(async()=>{let n;try{n=await re(e)}catch{C();return}d.current={requestId:t,platformAssistantId:n},D.mutate({path:{assistant_id:n,provider:G},body:{requested_scopes:[],redirect_after_connect:`${E.account.oauth.popupComplete}?requestId=${t}&native=1`}},{onSuccess(e){ne(e.connect_url)},onError(){C()}})})(),window.addEventListener(`message`,j),window.addEventListener(`storage`,M),b.current&&b.current();let n=fe(()=>{let e=d.current;if(!e){n(),b.current=null;return}(async()=>{let t=await O(e.platformAssistantId);d.current&&(t?await k():C(),w(),n(),b.current=null)})()});b.current=n;return}let n=window.open(``,`_blank`,`width=500,height=600`);if(n===null){w();return}u.current=n,S(!0),window.addEventListener(`message`,j),window.addEventListener(`storage`,M),f.current=setInterval(()=>{u.current&&u.current.closed&&d.current&&!m.current&&(m.current=setTimeout(async()=>{m.current=null;let e=d.current;if(!e)return;let t=window.localStorage.getItem(R(e.requestId));if(t)try{let n=JSON.parse(t);if(B(n,e.requestId)){A(n),window.localStorage.removeItem(R(e.requestId)),w();return}}catch{}let n=await O(e.platformAssistantId);d.current&&(n?await k():(T(),C()),w())},1e3))},100),(async()=>{let n;try{n=await re(e)}catch{T(),C(),w();return}d.current={requestId:t,platformAssistantId:n},D.mutate({path:{assistant_id:n,provider:G},body:{requested_scopes:[],redirect_after_connect:`${E.account.oauth.popupComplete}?requestId=${t}`}},{onSuccess(e){u.current&&!u.current.closed?u.current.location.href=e.connect_url:d.current&&(T(),C(),w())},onError(){T(),C(),w()}})})()},[e,C,T,O,A,j,M,k,l,w,D]),P=t||`your assistant`,F=t||`Your assistant`;return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex w-full max-w-md flex-col items-center ${s?`min-h-full px-8 pt-11 pb-8 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,W.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,W.jsx)(`button`,{type:`button`,onClick:o,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,W.jsx)(h,{className:`h-4 w-4`})}),(0,W.jsx)(`h1`,{className:`text-center ${s?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`Connect Google`}),(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,W.jsx)(`p`,{className:`mt-4 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`If you use Google, ${P} can use Gmail, Calendar, and Drive with your permission.`}),(0,W.jsx)(`div`,{className:`mt-6 flex items-stretch justify-center gap-3`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:we.map(e=>(0,W.jsxs)(`div`,{className:`flex w-24 flex-col items-center gap-2.5 rounded-2xl bg-[var(--surface-lift)] px-3 pb-3 pt-4`,children:[(0,W.jsx)(`img`,{src:e.logoSrc,alt:``,width:28,height:28,className:`h-7 w-7 object-contain`,loading:`eager`}),(0,W.jsx)(`span`,{className:`text-center text-xs leading-tight text-[var(--content-tertiary)]`,children:e.label})]},e.id))}),(0,W.jsx)(`p`,{className:`mt-8 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.25s both`},children:`${F} will never send email, change calendar events, or edit files without your permission. You can disconnect at any time.`}),(0,W.jsxs)(`div`,{className:`${s?`mt-auto`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.35s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:N,disabled:x||D.isPending,className:`${s?`h-9`:`h-11 text-base`}`,children:x||D.isPending?(0,W.jsxs)(`span`,{className:`flex items-center justify-center gap-2`,children:[(0,W.jsx)(g,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}),`Waiting for authorization...`]}):`Connect Google`}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:i,disabled:x||D.isPending,className:`${s?`h-9`:`h-11 text-base`}`,children:`Skip for now`})]})]})})}function Ee({userName:e,assistantName:t,selectedGroupId:r,displayedAssistantNames:i,onUserNameChange:a,onAssistantNameChange:o,onGroupChange:s,onBack:c,onComplete:u,onSkip:d}){let f=p();return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex w-full max-w-md flex-col items-center ${f?`min-h-full px-8 pt-11 pb-8 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,W.jsxs)(`div`,{className:`grid w-full items-center ${c?`grid-cols-[auto_1fr_auto]`:``}`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[c?(0,W.jsx)(`button`,{type:`button`,onClick:c,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,W.jsx)(h,{className:`h-4 w-4`})}):null,(0,W.jsx)(`h1`,{className:`text-center ${f?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`Let's get to know each other.`}),c?(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`}):null]}),(0,W.jsx)(`p`,{className:`mt-2 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`You can change these any time.`}),(0,W.jsxs)(`div`,{className:`${f?`mt-6`:`mt-8`} flex w-full flex-col ${f?`gap-4`:`gap-6`}`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(l,{label:`Your name`,placeholder:`Your name`,value:e,onChange:e=>a(e.target.value),fullWidth:!0}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsx)(l,{label:`What should I go by?`,placeholder:`Assistant name`,value:t,onChange:e=>o(e.target.value),fullWidth:!0}),(0,W.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`A few to try`}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:i.map(e=>{let n=e===t;return(0,W.jsx)(`button`,{type:`button`,onClick:()=>o(e),"aria-pressed":n,className:`cursor-pointer rounded-full border px-3 py-1 text-label-small-default transition-colors ${n?`border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--content-inset)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] text-[var(--content-secondary)] hover:bg-[var(--surface-base)]`}`,children:e},e)})})]}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Pick a vibe`}),(0,W.jsx)(`div`,{className:`grid grid-cols-2 gap-2`,children:ye.map(e=>(0,W.jsx)(De,{group:e,isActive:r===e.id,onToggle:()=>s(r===e.id?null:e.id)},e.id))})]})]}),(0,W.jsxs)(`div`,{className:`${f?`mt-auto`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:u,className:`${f?`h-9`:`h-11 text-base`}`,children:`Let's go`}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:d,className:`${f?`h-9`:`h-11 text-base`}`,children:`Skip`})]})]})})}function De({group:e,isActive:t,onToggle:n}){return(0,W.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,"aria-label":`${e.label}, ${e.descriptor}`,className:`flex cursor-pointer flex-col items-start gap-0.5 rounded-lg border p-3 text-left transition-colors ${t?`border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--content-inset)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,W.jsx)(`span`,{className:`text-body-medium-default ${t?`text-[var(--content-inset)]`:`text-[var(--content-default)]`}`,children:e.descriptor}),(0,W.jsx)(`span`,{className:`text-body-small-default ${t?`text-[var(--content-inset)] opacity-60`:`text-[var(--content-tertiary)]`}`,children:e.tagline})]})}function Oe({userName:e,assistantName:t,displayedAssistantNames:r,onUserNameChange:i,onAssistantNameChange:a,onBack:o,onContinue:s,onSkip:c,currentStep:u,totalSteps:d}){return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-md flex-col px-6 pb-40 text-[var(--content-default)]`,children:[(0,W.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center pb-4`,style:{paddingTop:`calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 1rem)`,animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[o?(0,W.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:(0,W.jsx)(h,{}),onClick:o,"aria-label":`Back`}):(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`}),(0,W.jsx)(`div`,{className:`flex justify-center`,children:(0,W.jsx)(H,{current:u,total:d})}),(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,W.jsxs)(`div`,{className:`flex flex-1 flex-col items-center pt-4`,children:[(0,W.jsx)(`h1`,{className:`text-center text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:`Let's get to know each other.`}),(0,W.jsx)(`p`,{className:`mt-2 text-center text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`You can change these any time.`}),(0,W.jsxs)(`div`,{className:`mt-8 flex w-full flex-col gap-6`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(l,{label:`Your name`,placeholder:`Your name`,value:e,onChange:e=>i(e.target.value),fullWidth:!0}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsx)(l,{label:`What should I go by?`,placeholder:`Assistant name`,value:t,onChange:e=>a(e.target.value),fullWidth:!0}),(0,W.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`A few to try`}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:r.map(e=>{let n=e===t;return(0,W.jsx)(`button`,{type:`button`,onClick:()=>a(e),"aria-pressed":n,className:`cursor-pointer rounded-full border px-3 py-1 text-label-small-default transition-colors ${n?`border-[var(--primary-base)] bg-[var(--primary-base)] text-[var(--content-inset)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] text-[var(--content-secondary)] hover:bg-[var(--surface-base)]`}`,children:e},e)})})]})]})]}),(0,W.jsxs)(`div`,{className:`flex w-full flex-col gap-2 pb-4`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:s,className:`h-11 text-base`,children:`Continue`}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:c,className:`h-11 text-base`,children:`Skip`})]})]})})}var ke=[{id:`chatgpt`,label:`ChatGPT`,logoSrc:j(`/images/prior-assistants/chatgpt.svg`)},{id:`claude`,label:`Claude`,logoSrc:j(`/images/prior-assistants/claude.svg`)},{id:`openclaw`,label:`OpenClaw`,logoSrc:j(`/images/prior-assistants/openclaw.png`)},{id:`hermes`,label:`Hermes`,logoSrc:j(`/images/prior-assistants/hermes.png`)},{id:`manus`,label:`Manus`,logoSrc:j(`/images/prior-assistants/manus.svg`)},{id:`gemini`,label:`Gemini`,logoSrc:j(`/images/prior-assistants/gemini.svg`)},{id:`copilot`,label:`Copilot`,logoSrc:j(`/images/prior-assistants/copilot.svg`)}];function Ae({selectedAssistants:e,onChange:t,onBack:r,onContinue:i,onSkip:a}){let o=p(),[s,u]=(0,U.useState)(()=>K(e)),[d,f]=(0,U.useState)(()=>s.length>0),m=(0,U.useRef)(q(e));(0,U.useEffect)(()=>{let t=q(e);if(t===m.current)return;let n=K(e);u(n),f(e=>e||n.length>0),m.current=t},[e]),(0,U.useEffect)(()=>{let n=new Set([...e].filter(e=>!e.startsWith(`other:`))),r=new Set;for(let e of s.split(`,`)){let t=e.trim();t&&(r.has(t)||(r.add(t),n.add(`other:${t}`)))}je(n,e)||(m.current=q(n),t(n))},[s]);let g=n=>{let r=new Set(e);r.has(n)?r.delete(n):r.add(n),t(r)},y=(0,U.useMemo)(()=>{let e=new Set;return s.split(`,`).map(e=>e.trim()).filter(t=>!t||e.has(t)?!1:(e.add(t),!0))},[s]),b=e.size===0?`Continue`:`Continue · ${e.size} selected`;return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex w-full max-w-2xl flex-col items-center ${o?`min-h-full px-8 pt-11 pb-8 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,W.jsxs)(`div`,{className:`grid w-full items-center grid-cols-[auto_1fr_auto]`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,W.jsx)(`button`,{type:`button`,onClick:r,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,W.jsx)(h,{className:`h-4 w-4`})}),(0,W.jsx)(`h1`,{className:`text-center ${o?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`Have you used any of these?`}),(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,W.jsx)(`p`,{className:`${o?`mt-3`:`mt-4`} text-center text-body-medium-lighter text-[var(--content-${o?`secondary`:`tertiary`})]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`If you've built anything with another assistant, I can help you bring it over.`}),(0,W.jsxs)(`div`,{className:`${o?`mt-4`:`mt-8`} grid w-full grid-cols-2 gap-2 sm:grid-cols-3 md:grid-cols-4`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:[ke.map(t=>(0,W.jsx)(Me,{assistant:t,selected:e.has(t.id),onToggle:()=>g(t.id)},t.id)),d?null:(0,W.jsx)(Ne,{onClick:()=>f(!0)})]}),d?(0,W.jsx)(c,{padding:`md`,className:`mt-3 w-full border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_8%,transparent)]`,children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(_,{className:`h-3.5 w-3.5 text-[var(--content-secondary)]`,"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`text-body-medium-default prechat-md-regular text-[var(--content-default)]`,children:`Something else`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>{f(!1),u(``)},"aria-label":`Dismiss custom assistants`,className:`ml-auto inline-flex h-6 w-6 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] hover:bg-[var(--surface-base)]`,children:(0,W.jsx)(v,{className:`h-3 w-3`,"aria-hidden":`true`})})]}),(0,W.jsx)(l,{"aria-label":`Other assistants`,placeholder:`e.g. Perplexity, Poe, Character.AI...`,value:s,onChange:e=>u(e.target.value),helperText:`Separate multiple assistants with commas`,fullWidth:!0}),y.length>0?(0,W.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:y.map(e=>(0,W.jsx)(`span`,{className:`rounded-full bg-[var(--primary-base)] px-3 py-1 text-label-small-default text-[var(--content-inset)]`,children:e},e))}):null]})}):null,(0,W.jsxs)(`div`,{className:`${o?`mt-auto`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:e.size===0,onClick:i,className:`${o?`h-9`:`h-11 text-base`}`,children:b}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:a,className:`${o?`h-9`:`h-11 text-base`}`,children:`I haven't used any`})]})]})})}function je(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function K(e){return[...e].filter(e=>e.startsWith(`other:`)).map(e=>e.slice(6)).sort().join(`, `)}function q(e){return[...e].filter(e=>e.startsWith(`other:`)).sort().join(`|`)}function Me({assistant:e,selected:t,onToggle:n}){return(0,W.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,"aria-label":e.label,className:`relative flex h-[88px] w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border p-2 transition-colors ${t?`border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_10%,transparent)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,W.jsx)(Pe,{assistant:e,size:32}),(0,W.jsx)(`span`,{className:`line-clamp-2 text-center text-label-medium-default text-[var(--content-default)]`,children:e.label}),t?(0,W.jsx)(`span`,{"aria-hidden":`true`,className:`absolute right-2 top-2 flex h-4 w-4 items-center justify-center rounded-full bg-[var(--primary-base)]`,children:(0,W.jsx)(z,{className:`h-2.5 w-2.5 text-[var(--content-inset)]`,"aria-hidden":`true`})}):null]})}function Ne({onClick:e}){return(0,W.jsxs)(`button`,{type:`button`,onClick:e,"aria-label":`Something else`,className:`flex h-[88px] w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border border-[var(--border-element)] bg-[var(--surface-lift)] p-2 transition-colors hover:bg-[var(--surface-base)]`,children:[(0,W.jsx)(`span`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,W.jsx)(M,{className:`h-4 w-4 text-[var(--content-secondary)]`,"aria-hidden":`true`})}),(0,W.jsx)(`span`,{className:`line-clamp-2 text-center text-label-medium-default text-[var(--content-default)]`,children:`Something else`})]})}function Pe({assistant:e,size:t}){if(e.logoSrc)return e.logoSrcDark?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`flex items-center justify-center dark:hidden`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,W.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})}),(0,W.jsx)(`span`,{className:`hidden items-center justify-center dark:flex`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,W.jsx)(`img`,{src:e.logoSrcDark,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})})]}):(0,W.jsx)(`span`,{className:`flex items-center justify-center`,style:{width:t,height:t},children:(0,W.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})});let n=e.label.slice(0,2).toUpperCase();return(0,W.jsx)(`span`,{className:`flex items-center justify-center rounded-full bg-[var(--surface-base)] text-label-small-default text-[var(--content-default)]`,style:{width:t,height:t},"aria-hidden":`true`,children:n})}function Fe({selectedTasks:e,onChange:t,onBack:r,onContinue:i,onSkip:a}){let o=p(),s=n=>{let r=new Set(e);r.has(n)?r.delete(n):r.add(n),t(r)};return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${o?`min-h-full px-8 pt-11 pb-8 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,W.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,W.jsx)(`button`,{type:`button`,onClick:r,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,W.jsx)(h,{className:`h-4 w-4`})}),(0,W.jsx)(`h1`,{className:`text-center ${o?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`What are you working on?`}),(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,W.jsx)(`p`,{className:`${o?`mt-2`:`mt-4`} text-center text-body-medium-lighter text-[var(--content-${o?`secondary`:`tertiary`})]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`Pick the one or two you do most — you can select more if it really is all of it.`}),(0,W.jsx)(`div`,{className:`${o?`mt-6`:`mt-8`} flex w-full flex-col ${o?`gap-1`:`gap-2`}`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:P.map(t=>{let n=N[t.iconKey],r=e.has(t.id);return(0,W.jsxs)(`button`,{type:`button`,onClick:()=>s(t.id),"aria-pressed":r,className:`group flex w-full cursor-pointer items-center ${o?`gap-2 p-3`:`gap-3 px-4 py-3`} rounded-lg border text-left transition-colors ${r?`border-[var(--primary-base)] bg-[var(--primary-base)]/10`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,W.jsx)(`div`,{className:`flex w-6 shrink-0 items-center justify-center text-[var(--content-secondary)]`,children:n?(0,W.jsx)(n,{className:`h-4 w-4`}):null}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`div`,{className:`text-body-medium-default prechat-md-regular text-[var(--content-default)]`,children:t.label}),(0,W.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:t.sublabel})]}),(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`flex h-5 w-5 shrink-0 items-center justify-center rounded-md ${r?`bg-[var(--primary-base)]`:`border-[1.5px] border-[var(--border-element)]`}`,children:r?(0,W.jsx)(z,{className:`h-3 w-3 text-[var(--content-inset)]`}):null})]},t.id)})}),(0,W.jsxs)(`div`,{className:`${o?`mt-auto`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:e.size===0,onClick:i,className:`${o?`h-9`:`h-11 text-base`}`,children:`Continue`}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:a,className:`${o?`h-9`:`h-11 text-base`}`,children:`I'll set this up later`})]})]})})}var Ie=new Set([`gmail`,`google-calendar`,`google-drive`]),Le=[{id:`gmail`,label:`Gmail`,logoSrc:j(`/images/integrations/gmail.svg`)},{id:`outlook`,label:`Outlook`,logoSrc:j(`/images/integrations/outlook.png`)},{id:`google-calendar`,label:`Google Calendar`,logoSrc:j(`/images/integrations/google-calendar.svg`)},{id:`slack`,label:`Slack`,logoSrc:j(`/images/integrations/slack.svg`)},{id:`notion`,label:`Notion`,logoSrc:j(`/images/integrations/notion.svg`)},{id:`linear`,label:`Linear`,logoSrc:j(`/images/integrations/linear-light-logo.svg`)},{id:`jira`,label:`Jira`,logoSrc:j(`/images/integrations/jira.svg`)},{id:`github`,label:`GitHub`,logoSrc:j(`/images/integrations/github.svg`),logoSrcDark:j(`/images/integrations/github-dark.svg`)},{id:`figma`,label:`Figma`,logoSrc:j(`/images/integrations/figma.svg`)},{id:`google-drive`,label:`Google Drive`,logoSrc:j(`/images/integrations/google-drive.svg`)},{id:`excel`,label:`Excel`,logoSrc:j(`/images/integrations/excel.svg`)},{id:`apple-notes`,label:`Apple Notes`,logoSrc:j(`/images/integrations/apple-notes.svg`)}];function J(e){let t=e.map(e=>e.startsWith(`other:`)?e.slice(6):e);return Array.from(new Set(t)).sort()}function Re({selectedTools:e,onChange:t,onBack:r,onContinue:i,onSkip:a}){let o=p(),[s,u]=(0,U.useState)(()=>Y(e)),[d,f]=(0,U.useState)(()=>s.length>0),m=(0,U.useRef)(X(e));(0,U.useEffect)(()=>{let t=X(e);if(t===m.current)return;let n=Y(e);u(n),f(e=>e||n.length>0),m.current=t},[e]),(0,U.useEffect)(()=>{let n=new Set([...e].filter(e=>!e.startsWith(`other:`))),r=new Set;for(let e of s.split(`,`)){let t=e.trim();t&&(r.has(t)||(r.add(t),n.add(`other:${t}`)))}ze(n,e)||(m.current=X(n),t(n))},[s]);let g=n=>{let r=new Set(e);r.has(n)?r.delete(n):r.add(n),t(r)},y=(0,U.useMemo)(()=>{let e=new Set;return s.split(`,`).map(e=>e.trim()).filter(t=>!t||e.has(t)?!1:(e.add(t),!0))},[s]),b=e.size===0?`Continue`:`Continue · ${e.size} selected`;return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex w-full max-w-2xl flex-col items-center ${o?`min-h-full px-8 pt-11 pb-8 electron-prechat-type`:`px-6 pt-12 pb-40`} text-[var(--content-default)]`,children:[(0,W.jsxs)(`div`,{className:`grid w-full items-center ${r?`grid-cols-[auto_1fr_auto]`:``}`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[r?(0,W.jsx)(`button`,{type:`button`,onClick:r,"aria-label":`Back`,className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors hover:bg-[var(--surface-base)]`,children:(0,W.jsx)(h,{className:`h-4 w-4`})}):null,(0,W.jsx)(`h1`,{className:`text-center ${o?`text-title-large`:`text-3xl font-semibold tracking-tight`}`,children:`What do you use?`}),r?(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`}):null]}),(0,W.jsx)(`p`,{className:`${o?`mt-3`:`mt-4`} text-center text-body-medium-lighter text-[var(--content-${o?`secondary`:`tertiary`})]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`This helps me tailor how I assist you. No connections needed — you can set those up later.`}),(0,W.jsxs)(`div`,{className:`grid w-full gap-2 ${o?`mt-4 grid-cols-4`:`mt-8 grid-cols-2 sm:grid-cols-3 md:grid-cols-4`}`,style:{animation:`fadeInUp 0.3s ease-out 0.2s both`},children:[Le.map(t=>(0,W.jsx)(Z,{tool:t,selected:e.has(t.id),onToggle:()=>g(t.id),electron:o},t.id)),d?null:(0,W.jsx)(Q,{onClick:()=>f(!0),electron:o})]}),d?(0,W.jsx)(c,{padding:o?`sm`:`md`,className:`mt-3 w-full border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_8%,transparent)]`,children:(0,W.jsxs)(`div`,{className:`flex flex-col ${o?`gap-2`:`gap-3`}`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(_,{className:`h-3.5 w-3.5 text-[var(--content-secondary)]`,"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`text-body-medium-default prechat-md-regular text-[var(--content-default)]`,children:`Something else`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>{f(!1),u(``)},"aria-label":`Dismiss custom tools`,className:`ml-auto inline-flex h-6 w-6 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] hover:bg-[var(--surface-base)]`,children:(0,W.jsx)(v,{className:`h-3 w-3`,"aria-hidden":`true`})})]}),(0,W.jsx)(l,{"aria-label":`Other tools`,placeholder:`e.g. Trello, Basecamp, Asana...`,value:s,onChange:e=>u(e.target.value),helperText:`Separate multiple tools with commas`,fullWidth:!0}),y.length>0?(0,W.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:y.map(e=>(0,W.jsx)(`span`,{className:`rounded-full bg-[var(--primary-base)] px-3 py-1 text-label-small-default text-[var(--content-inset)]`,children:e},e))}):null]})}):null,(0,W.jsxs)(`div`,{className:`${o?`mt-auto`:`mt-8`} flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:e.size===0,onClick:i,className:`${o?`h-9`:`h-11 text-base`}`,children:b}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:a,className:`${o?`h-9`:`h-11 text-base`}`,children:`I'll set this up later`})]})]})})}function ze(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function Y(e){return[...e].filter(e=>e.startsWith(`other:`)).map(e=>e.slice(6)).sort().join(`, `)}function X(e){return[...e].filter(e=>e.startsWith(`other:`)).sort().join(`|`)}function Z({tool:e,selected:t,onToggle:n,electron:r}){return(0,W.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,"aria-label":e.label,className:`relative flex ${r?`h-[72px]`:`h-[88px]`} w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border p-2 transition-colors ${t?`border-[var(--primary-base)] bg-[color-mix(in_srgb,var(--primary-base)_10%,transparent)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,W.jsx)($,{tool:e,size:32}),(0,W.jsx)(`span`,{className:`${r?`w-full truncate`:`line-clamp-2`} text-center text-label-medium-default text-[var(--content-default)]`,children:e.label}),t?(0,W.jsx)(`span`,{"aria-hidden":`true`,className:`absolute right-2 top-2 flex h-4 w-4 items-center justify-center rounded-full bg-[var(--primary-base)]`,children:(0,W.jsx)(z,{className:`h-2.5 w-2.5 text-[var(--content-inset)]`,"aria-hidden":`true`})}):null]})}function Q({onClick:e,electron:t}){return(0,W.jsxs)(`button`,{type:`button`,onClick:e,"aria-label":`Something else`,className:`flex ${t?`min-h-[72px]`:`h-[88px]`} w-full cursor-pointer flex-col items-center justify-center gap-1.5 rounded-lg border border-[var(--border-element)] bg-[var(--surface-lift)] p-2 transition-colors hover:bg-[var(--surface-base)]`,children:[(0,W.jsx)(`span`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,W.jsx)(M,{className:`h-4 w-4 text-[var(--content-secondary)]`,"aria-hidden":`true`})}),(0,W.jsx)(`span`,{className:`line-clamp-2 text-center text-label-medium-default text-[var(--content-default)]`,children:`Something else`})]})}function $({tool:e,size:t}){if(e.logoSrc)return e.logoSrcDark?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`flex items-center justify-center dark:hidden`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,W.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})}),(0,W.jsx)(`span`,{className:`hidden items-center justify-center dark:flex`,style:{width:t,height:t},"aria-hidden":`true`,children:(0,W.jsx)(`img`,{src:e.logoSrcDark,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})})]}):(0,W.jsx)(`span`,{className:`flex items-center justify-center`,style:{width:t,height:t},children:(0,W.jsx)(`img`,{src:e.logoSrc,alt:``,width:t,height:t,className:`max-h-full max-w-full object-contain`,loading:`eager`})});let n=e.label.slice(0,2).toUpperCase();return(0,W.jsx)(`span`,{className:`flex items-center justify-center rounded-full bg-[var(--surface-base)] text-label-small-default text-[var(--content-default)]`,style:{width:t,height:t},"aria-hidden":`true`,children:n})}function Be({selectedGroupId:e,onGroupChange:t,onBack:r,onContinue:i,onSkip:a,currentStep:o,totalSteps:s}){return(0,W.jsx)(I,{showCreatureFooter:!1,children:(0,W.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-md flex-col px-6 pb-40 text-[var(--content-default)]`,children:[(0,W.jsxs)(`div`,{className:`grid w-full grid-cols-[auto_1fr_auto] items-center pb-4`,style:{paddingTop:`calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 1rem)`,animation:`fadeInUp 0.3s ease-out 0.1s both`},children:[(0,W.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:(0,W.jsx)(h,{}),onClick:r,"aria-label":`Back`}),(0,W.jsx)(`div`,{className:`flex justify-center`,children:(0,W.jsx)(H,{current:o,total:s})}),(0,W.jsx)(`div`,{"aria-hidden":`true`,className:`h-8 w-8`})]}),(0,W.jsxs)(`div`,{className:`flex flex-1 flex-col items-center pt-4`,children:[(0,W.jsx)(`h1`,{className:`w-full text-left text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:`What's my vibe?`}),(0,W.jsx)(`p`,{className:`mt-2 w-full text-left text-body-medium-lighter text-[var(--content-secondary)]`,style:{animation:`fadeInUp 0.3s ease-out 0.15s both`},children:`You can change this any time.`}),(0,W.jsx)(`div`,{className:`mt-8 flex w-full flex-col gap-3`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:ye.map(n=>{let r=e===n.id;return(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(r?null:n.id),"aria-pressed":r,className:`flex cursor-pointer items-center justify-between rounded-xl border px-4 py-4 text-left transition-colors ${r?`border-[var(--content-default)] bg-[var(--surface-lift)]`:`border-[var(--border-element)] bg-[var(--surface-lift)] hover:bg-[var(--surface-base)]`}`,children:[(0,W.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:n.descriptor}),(0,W.jsx)(`span`,{className:`flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors ${r?`border-[var(--content-default)]`:`border-[var(--content-disabled)]`}`,children:r&&(0,W.jsx)(`span`,{className:`h-2.5 w-2.5 rounded-full bg-[var(--content-default)]`})})]},n.id)})})]}),(0,W.jsxs)(`div`,{className:`flex w-full flex-col gap-2 pb-4`,style:{animation:`fadeInUp 0.3s ease-out 0.3s both`},children:[(0,W.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,onClick:i,className:`h-11 text-base`,children:`Continue`}),(0,W.jsx)(n,{variant:`ghost`,size:`regular`,fullWidth:!0,onClick:a,className:`h-11 text-base`,children:`Skip`})]})]})})}function Ve(e){let[t,n]=(0,U.useState)(()=>(e??``).trim()),r=(0,U.useRef)(!1);return(0,U.useEffect)(()=>{if(r.current)return;let t=(e??``).trim();t&&n(e=>e||t)},[e]),{value:t,onChange:(0,U.useCallback)(e=>{r.current=!0,n(e)},[])}}var He=[`gmail`,`google-calendar`,`google-drive`],Ue=`experiment-activation-flow-2026-06-03`,We=`BOOTSTRAP-ACTIVATION-RAIL.md`;function Ge(e,t,n){return t?.initialMessage?t.initialMessage:n?F(e):se}function Ke(e){let{mode:t,recipe:n}=e,r=e.connectedScopes!==void 0,i;i=t===`native`?{tools:[],tasks:[],tone:e.tone,googleConnected:!1}:t===`paredDown`?{tools:r?[...He]:[],tasks:n?.tasks??[],tone:e.tone,googleConnected:r}:{tools:J([...e.selectedTools]),tasks:[...e.selectedTasks].sort(),tone:e.tone},n&&(i.cohort=n.cohort,i.bootstrapTemplate=n.bootstrapTemplate,i.skills=n.skills),e.activationFlowEnabled&&(i.cohort=Ue,i.bootstrapTemplate=We);let a=e.userName.trim();a&&(i.userName=a);let o=e.occupation?.trim();o&&(i.occupation=o);let s=e.assistantName.trim();return s&&(i.assistantName=s),t===`paredDown`?r&&(i.googleScopes=e.connectedScopes):t===`control`&&(r?(i.googleConnected=!0,i.googleScopes=e.connectedScopes):e.googleConnected?(i.googleConnected=!0,i.googleScopes=e.googleScopes):i.googleConnected=!1),t===`control`&&e.selectedPriorAssistants.size>0&&(i.priorAssistants=J([...e.selectedPriorAssistants])),i.initialMessage=Ge(i,e.activationFlowEnabled?null:n,e.selfIntroGreetingEnabled),i}function qe(e){return!e.localMode||e.platformSession===`present`?!0:e.platformSession===`unknown`&&e.hasCachedPlatformAssistant}function Je(e){let{paredDown:t}=e;return[{id:`name`,funnelStep:V.nameVibe,enabled:!0},{id:`taskTone`,funnelStep:V.controlWorkType,enabled:!t},{id:`tools`,funnelStep:V.controlTools,enabled:!t},{id:`priorAssistants`,funnelStep:V.controlPriorAssistants,enabled:!t&&e.canOfferPriorAssistants},{id:`google`,funnelStep:t?V.gmailConnect:V.controlGmailConnect,enabled:e.canOfferGoogleStep&&(t||e.hasGoogleTool)},{id:`iosApp`,funnelStep:V.controlGetApp,enabled:!t&&e.showIOSAppStep}].filter(e=>e.enabled).map(({enabled:e,...t})=>t)}function Ye(){return[{id:`nativeName`,funnelStep:null},{id:`nativeVibe`,funnelStep:null}]}var Xe=`1`;function Ze(e){return e===`nativeVibe`||e===Xe?`nativeVibe`:null}function Qe(e,t){let n=e.findIndex(e=>e.id===t);return n<0?null:e[n+1]?.id??null}function $e(e,t){let n=e.findIndex(e=>e.id===t);return n<=0?null:e[n-1]?.id??null}function et(){let e=r(),t=y(),n=D()&&O();return(0,U.useEffect)(()=>{!n&&!t&&e(E.onboarding.privacy,{replace:!0})},[n,t,e]),t||n}function tt(e,t){let n=e?`prechat_native_screen:${e}`:null,[r,i]=(0,U.useState)(()=>t?`nativeName`:`name`),a=(0,U.useCallback)(e=>{if(n)try{e===null?sessionStorage.removeItem(n):sessionStorage.setItem(n,e)}catch{}},[n]);return(0,U.useLayoutEffect)(()=>{if(n)try{let e=Ze(sessionStorage.getItem(n));e&&i(e)}catch{}},[n]),(0,U.useEffect)(()=>{t&&a(r===`nativeVibe`?`nativeVibe`:null)},[t,r,a]),{currentStep:r,setCurrentStep:i,clearPersistedStep:(0,U.useCallback)(()=>{a(null)},[a])}}var nt=3;function rt(){let e=u();return e?.cloud===`vellum`?e.assistantId:f()[0]?.assistantId??null}function it(){let e=r(),[t]=i(),n=t.get(`preview`)===`true`,a=C.use.user(),s=S(),c=w(),l=a?.id??null,u=a?.firstName??``,f=a?.lastName??``,p=y(),h=m.use.activeAssistantId(),g=d(),_=ae()&&!ie(),v=k.use.stringFlags().preChatOnboardingExperiment20260606??`control`,T=(k.use.stringFlags().experimentActivationFlow20260603??`control`)===`variant-a`,D=k.use.selfIntroGreeting(),O=ge(v),ee=ve()??O,te=ee===_e.paredDown,j=g?rt():null,ne=et(),{currentStep:M,setCurrentStep:N,clearPersistedStep:re}=tt(l,p),P=C.use.platformSession(),F=b(P),[I,oe]=(0,U.useState)(()=>new Set),[L,se]=(0,U.useState)(()=>new Set),[ce,le]=(0,U.useState)(()=>new Set),{value:R,onChange:z}=Ve(g&&!F?``:u||f),[B,ue]=(0,U.useState)(null),[fe]=(0,U.useState)(()=>be()),[V,H]=(0,U.useState)(``),[ye,Se]=(0,U.useState)(!1),[G,we]=(0,U.useState)([]),{data:De}=o({...A(),enabled:!c&&s&&(!g||F)}),{data:ke,isLoading:je}=o({queryKey:[`onboarding-recipe`,l],queryFn:xe,enabled:!c&&s&&!p&&!g,staleTime:1/0}),K=ke??null,q=De?.id??h??j,Me=qe({localMode:g,platformSession:P,hasCachedPlatformAssistant:j!==null}),Ne=Me,Pe=Me,Le=async()=>{await x.checkAssistant(),e(`${E.assistant}?onboarding=1`,{replace:!0})};function J(e,t=ee){n||he(e,{userId:l,variant:me(t)})}let ze=[...I].some(e=>Ie.has(e)),Y=p?Ye():Je({paredDown:te,canOfferPriorAssistants:Pe,canOfferGoogleStep:n?!1:Ne,hasGoogleTool:ze,showIOSAppStep:_});function X(t){if(n){e(-1);return}pe(Ke({mode:p?`native`:te?`paredDown`:`control`,recipe:p?null:K,selectedTools:I,selectedTasks:L,selectedPriorAssistants:t?.selectedPriorAssistants??ce,tone:B??K?.tone??`grounded`,userName:R,assistantName:V,selfIntroGreetingEnabled:D,activationFlowEnabled:p?void 0:T,googleConnected:ye,googleScopes:G,connectedScopes:t?.connectedScopes}));let r=V.trim();r&&de(r),p?(re(),e(E.onboarding.privacy)):(x.markExpectingFirstMessage(),Le())}let Z=(e,t)=>{e.funnelStep&&J(e.funnelStep);let n=Qe(Y,e.id);n?N(n):X(t)},Q=e=>{let t=$e(Y,e.id);t&&N(t)};if(!ne||je)return null;let $=Y.find(e=>e.id===M)??Y[0];return $?$.id===`nativeName`?(0,W.jsx)(Oe,{userName:R,assistantName:V,displayedAssistantNames:fe,onUserNameChange:z,onAssistantNameChange:H,onContinue:()=>Z($),onSkip:()=>Z($),currentStep:0,totalSteps:nt}):$.id===`nativeVibe`?(0,W.jsx)(Be,{selectedGroupId:B,onGroupChange:ue,onBack:()=>Q($),onContinue:()=>Z($),onSkip:()=>Z($),currentStep:1,totalSteps:nt}):$.id===`name`?(0,W.jsx)(Ee,{userName:R,assistantName:V,selectedGroupId:B,displayedAssistantNames:fe,onUserNameChange:z,onAssistantNameChange:H,onGroupChange:ue,onComplete:()=>Z($),onSkip:()=>Z($)}):$.id===`taskTone`?(0,W.jsx)(Fe,{selectedTasks:L,onChange:se,onBack:()=>Q($),onContinue:()=>Z($),onSkip:()=>Z($)}):$.id===`tools`?(0,W.jsx)(Re,{selectedTools:I,onChange:oe,onBack:()=>Q($),onContinue:()=>Z($),onSkip:()=>Z($)}):$.id===`priorAssistants`?(0,W.jsx)(Ae,{selectedAssistants:ce,onChange:le,onBack:()=>Q($),onContinue:()=>Z($),onSkip:()=>{let e=new Set;le(e),Z($,{selectedPriorAssistants:e})}}):$.id===`google`?q?(0,W.jsx)(Te,{assistantId:q,assistantName:V,onConnect:e=>{Se(!0),we(e),Z($,{connectedScopes:e})},onSkip:()=>Z($),onBack:()=>Q($)}):null:$.id===`iosApp`?(0,W.jsx)(Ce,{onComplete:()=>Z($)}):null:null}function at(){return(0,W.jsx)(it,{})}export{at as PreChatRoute};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D7s2Q_uG.js";import{d as r,h as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./is-electron-C_ZTVhv8.js";import{F as s,i as c,m as l,n as u}from"./auth-store-CbVvQiBR.js";import{a as d}from"./routes-B9xcBuuC.js";import{d as f,f as p,l as m,u as h}from"./prefs-DP4g-Qgi.js";import{t as g}from"./client-feature-flag-store-DjN8fxHA.js";import{_t as _}from"./index-Cx6vyW7T.js";import{a as v,c as y,i as b,n as x,o as S,t as C}from"./step-indicator-dots-Bx_0xTIr.js";import{n as w,t as T}from"./consent-controls-o06cSwWt.js";var E=e(t(),1),D=a();function O(){let e=r(),[t]=i(),a=u.use.user()?.id??null,O=o(),k=s(),A=S(g.use.stringFlags().preChatOnboardingExperiment20260606??`control`),[j,M]=h(),[N,P]=f(),[F,I]=p(),[L,R]=m(),z=c();(0,E.useEffect)(()=>{k||v()},[k]);let B=t.get(`preview`)===`true`,V=(0,E.useCallback)(e=>{},[]),H=B?V:M,U=B?V:P,W=B?V:I,G=B?V:R,K=(0,E.useCallback)(()=>{if(B){e(`${d.onboarding.prechat}?preview=true`);return}if(l({userId:a,tos:F,privacy:L,shareAnalytics:j,shareDiagnostics:N,hasPlatformSession:z}),!k){let e=y(A);b(x.privacyTos,{userId:a,variant:e})}let n=t.get(`hosting`),r=new URLSearchParams;n&&r.set(`hosting`,n);let i=r.toString();e(`${d.onboarding.hatching}${i?`?${i}`:``}`)},[L,z,k,B,e,A,t,j,N,F,a]);return(0,D.jsx)(_,{children:(0,D.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${O?`min-h-full px-8 pt-21 pb-4 electron-prechat-type`:`px-6 py-16`} text-[var(--content-default)]`,children:[k&&(0,D.jsx)(`div`,{className:`mb-8 flex w-full justify-center`,style:{animation:`fadeInUp 0.3s ease-out 0.1s both`},children:(0,D.jsx)(C,{current:2,total:3})}),(0,D.jsx)(`h1`,{className:O?`text-title-large`:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Before You Start`}),(0,D.jsx)(`p`,{className:`text-center text-body-medium-lighter text-[var(--content-tertiary)] ${O?`mt-3.5`:`mt-4`}`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Choose your privacy preferences. You can update these anytime in the Settings.`}),(0,D.jsx)(w,{electron:O,shareAnalytics:j,shareDiagnostics:N,onShareAnalyticsChange:H,onShareDiagnosticsChange:U,className:`mt-8 w-full`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`}}),(0,D.jsx)(T,{electron:O,privacyConsent:L,tosAccepted:F,onPrivacyChange:G,onTosChange:W,className:`mt-6 w-full`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`}}),(0,D.jsxs)(`div`,{className:`mt-8 flex w-full flex-col ${O?`gap-2.5`:`gap-2`}`,style:{animation:`fadeInUp 0.5s ease-out 0.55s both`},children:[(0,D.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:!F||!L,onClick:K,className:O?void 0:`h-11 text-base`,children:`Start`}),(0,D.jsx)(n,{variant:`outlined`,size:`regular`,fullWidth:!0,onClick:()=>e(-1),className:O?void 0:`h-11 text-base`,children:`Back`})]})]})})}export{O as PrivacyScreen};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,n as t,o as n,r}from"./chunk-jRWAZmH_.js";import{t as i}from"./react-DJZBPgpf.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{n as o,r as s,t as c}from"./reduced-motion-8QnGN6lg.js";var l=a(),u=n(i(),1),d=(0,u.createContext)({});function f(e){let t=(0,u.useRef)(null);return t.current===null&&(t.current=e()),t.current}var p=typeof window<`u`?u.useLayoutEffect:u.useEffect,m=(0,u.createContext)(null);function h(e,t){e.indexOf(t)===-1&&e.push(t)}function g(e,t){let n=e.indexOf(t);n>-1&&e.splice(n,1)}var _=(e,t,n)=>n>t?t:n<e?e:n,v=()=>{},y={},b=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e),x=e=>typeof e==`object`&&!!e,S=e=>/^0[^.\s]+$/u.test(e);function C(e){let t;return()=>(t===void 0&&(t=e()),t)}var w=e=>e,T=(...e)=>e.reduce((e,t)=>n=>t(e(n))),E=(e,t,n)=>{let r=t-e;return r?(n-e)/r:1},ee=class{constructor(){this.subscriptions=[]}add(e){return h(this.subscriptions,e),()=>g(this.subscriptions,e)}notify(e,t,n){let r=this.subscriptions.length;if(r)if(r===1)this.subscriptions[0](e,t,n);else for(let i=0;i<r;i++){let r=this.subscriptions[i];r&&r(e,t,n)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}},D=e=>e*1e3,O=e=>e/1e3,te=(e,t)=>t?1e3/t*e:0,ne=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,re=1e-7,ie=12;function ae(e,t,n,r,i){let a,o,s=0;do o=t+(n-t)/2,a=ne(o,r,i)-e,a>0?n=o:t=o;while(Math.abs(a)>re&&++s<ie);return o}function oe(e,t,n,r){if(e===t&&n===r)return w;let i=t=>ae(t,0,1,e,n);return e=>e===0||e===1?e:ne(i(e),t,r)}var se=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,ce=e=>t=>1-e(1-t),le=oe(.33,1.53,.69,.99),ue=ce(le),de=se(ue),fe=e=>e>=1?1:(e*=2)<1?.5*ue(e):.5*(2-2**(-10*(e-1))),pe=e=>1-Math.sin(Math.acos(e)),me=ce(pe),he=se(pe),ge=oe(.42,0,1,1),_e=oe(0,0,.58,1),ve=oe(.42,0,.58,1),ye=e=>Array.isArray(e)&&typeof e[0]!=`number`,be=e=>Array.isArray(e)&&typeof e[0]==`number`,xe={linear:w,easeIn:ge,easeInOut:ve,easeOut:_e,circIn:pe,circInOut:he,circOut:me,backIn:ue,backInOut:de,backOut:le,anticipate:fe},Se=e=>typeof e==`string`,Ce=e=>{if(be(e)){e.length;let[t,n,r,i]=e;return oe(t,n,r,i)}else if(Se(e))return xe[e],`${e}`,xe[e];return e},we=[`setup`,`read`,`resolveKeyframes`,`preUpdate`,`update`,`preRender`,`render`,`postRender`],k={value:null,addProjectionMetrics:null};function Te(e,t){let n=new Set,r=new Set,i=!1,a=!1,o=new WeakSet,s={delta:0,timestamp:0,isProcessing:!1},c=0;function l(t){o.has(t)&&(u.schedule(t),e()),c++,t(s)}let u={schedule:(e,t=!1,a=!1)=>{let s=a&&i?n:r;return t&&o.add(e),s.add(e),e},cancel:e=>{r.delete(e),o.delete(e)},process:e=>{if(s=e,i){a=!0;return}i=!0;let o=n;n=r,r=o,n.forEach(l),t&&k.value&&k.value.frameloop[t].push(c),c=0,n.clear(),i=!1,a&&(a=!1,u.process(e))}};return u}var Ee=40;function De(e,t){let n=!1,r=!0,i={delta:0,timestamp:0,isProcessing:!1},a=()=>n=!0,o=we.reduce((e,n)=>(e[n]=Te(a,t?n:void 0),e),{}),{setup:s,read:c,resolveKeyframes:l,preUpdate:u,update:d,preRender:f,render:p,postRender:m}=o,h=()=>{let a=y.useManualTiming,o=a?i.timestamp:performance.now();n=!1,a||(i.delta=r?1e3/60:Math.max(Math.min(o-i.timestamp,Ee),1)),i.timestamp=o,i.isProcessing=!0,s.process(i),c.process(i),l.process(i),u.process(i),d.process(i),f.process(i),p.process(i),m.process(i),i.isProcessing=!1,n&&t&&(r=!1,e(h))},g=()=>{n=!0,r=!0,i.isProcessing||e(h)};return{schedule:we.reduce((e,t)=>{let r=o[t];return e[t]=(e,t=!1,i=!1)=>(n||g(),r.schedule(e,t,i)),e},{}),cancel:e=>{for(let t=0;t<we.length;t++)o[we[t]].cancel(e)},state:i,steps:o}}var{schedule:A,cancel:j,state:M,steps:Oe}=De(typeof requestAnimationFrame<`u`?requestAnimationFrame:w,!0),ke;function Ae(){ke=void 0}var N={now:()=>(ke===void 0&&N.set(M.isProcessing||y.useManualTiming?M.timestamp:performance.now()),ke),set:e=>{ke=e,queueMicrotask(Ae)}},je={layout:0,mainThread:0,waapi:0},Me=e=>t=>typeof t==`string`&&t.startsWith(e),Ne=Me(`--`),Pe=Me(`var(--`),Fe=e=>Pe(e)?Ie.test(e.split(`/*`)[0].trim()):!1,Ie=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Le(e){return typeof e==`string`?e.split(`/*`)[0].includes(`var(--`):!1}var Re={test:e=>typeof e==`number`,parse:parseFloat,transform:e=>e},ze={...Re,transform:e=>_(0,1,e)},Be={...Re,default:1},Ve=e=>Math.round(e*1e5)/1e5,He=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Ue(e){return e==null}var We=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Ge=(e,t)=>n=>!!(typeof n==`string`&&We.test(n)&&n.startsWith(e)||t&&!Ue(n)&&Object.prototype.hasOwnProperty.call(n,t)),Ke=(e,t,n)=>r=>{if(typeof r!=`string`)return r;let[i,a,o,s]=r.match(He);return{[e]:parseFloat(i),[t]:parseFloat(a),[n]:parseFloat(o),alpha:s===void 0?1:parseFloat(s)}},qe=e=>_(0,255,e),Je={...Re,transform:e=>Math.round(qe(e))},P={test:Ge(`rgb`,`red`),parse:Ke(`red`,`green`,`blue`),transform:({red:e,green:t,blue:n,alpha:r=1})=>`rgba(`+Je.transform(e)+`, `+Je.transform(t)+`, `+Je.transform(n)+`, `+Ve(ze.transform(r))+`)`};function Ye(e){let t=``,n=``,r=``,i=``;return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}}var Xe={test:Ge(`#`),parse:Ye,transform:P.transform},Ze=e=>({test:t=>typeof t==`string`&&t.endsWith(e)&&t.split(` `).length===1,parse:parseFloat,transform:t=>`${t}${e}`}),F=Ze(`deg`),I=Ze(`%`),L=Ze(`px`),Qe=Ze(`vh`),$e=Ze(`vw`),et={...I,parse:e=>I.parse(e)/100,transform:e=>I.transform(e*100)},tt={test:Ge(`hsl`,`hue`),parse:Ke(`hue`,`saturation`,`lightness`),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>`hsla(`+Math.round(e)+`, `+I.transform(Ve(t))+`, `+I.transform(Ve(n))+`, `+Ve(ze.transform(r))+`)`},R={test:e=>P.test(e)||Xe.test(e)||tt.test(e),parse:e=>P.test(e)?P.parse(e):tt.test(e)?tt.parse(e):Xe.parse(e),transform:e=>typeof e==`string`?e:e.hasOwnProperty(`red`)?P.transform(e):tt.transform(e),getAnimatableNone:e=>{let t=R.parse(e);return t.alpha=0,R.transform(t)}},nt=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function rt(e){return isNaN(e)&&typeof e==`string`&&(e.match(He)?.length||0)+(e.match(nt)?.length||0)>0}var it=`number`,at=`color`,ot=`var`,st=`var(`,ct="${}",lt=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function ut(e){let t=e.toString(),n=[],r={color:[],number:[],var:[]},i=[],a=0;return{values:n,split:t.replace(lt,e=>(R.test(e)?(r.color.push(a),i.push(at),n.push(R.parse(e))):e.startsWith(st)?(r.var.push(a),i.push(ot),n.push(e)):(r.number.push(a),i.push(it),n.push(parseFloat(e))),++a,ct)).split(ct),indexes:r,types:i}}function dt(e){return ut(e).values}function ft({split:e,types:t}){let n=e.length;return r=>{let i=``;for(let a=0;a<n;a++)if(i+=e[a],r[a]!==void 0){let e=t[a];e===it?i+=Ve(r[a]):e===at?i+=R.transform(r[a]):i+=r[a]}return i}}function pt(e){return ft(ut(e))}var mt=e=>typeof e==`number`?0:R.test(e)?R.getAnimatableNone(e):e,ht=(e,t)=>typeof e==`number`?t?.trim().endsWith(`/`)?e:0:mt(e);function gt(e){let t=ut(e);return ft(t)(t.values.map((e,n)=>ht(e,t.split[n])))}var z={test:rt,parse:dt,createTransformer:pt,getAnimatableNone:gt};function _t(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function vt({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,a=0,o=0;if(!t)i=a=o=n;else{let r=n<.5?n*(1+t):n+t-n*t,s=2*n-r;i=_t(s,r,e+1/3),a=_t(s,r,e),o=_t(s,r,e-1/3)}return{red:Math.round(i*255),green:Math.round(a*255),blue:Math.round(o*255),alpha:r}}function yt(e,t){return n=>n>0?t:e}var B=(e,t,n)=>e+(t-e)*n,bt=(e,t,n)=>{let r=e*e,i=n*(t*t-r)+r;return i<0?0:Math.sqrt(i)},xt=[Xe,P,tt],St=e=>xt.find(t=>t.test(e));function Ct(e){let t=St(e);if(`${e}`,!t)return!1;let n=t.parse(e);return t===tt&&(n=vt(n)),n}var wt=(e,t)=>{let n=Ct(e),r=Ct(t);if(!n||!r)return yt(e,t);let i={...n};return e=>(i.red=bt(n.red,r.red,e),i.green=bt(n.green,r.green,e),i.blue=bt(n.blue,r.blue,e),i.alpha=B(n.alpha,r.alpha,e),P.transform(i))},Tt=new Set([`none`,`hidden`]);function Et(e,t){return Tt.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function Dt(e,t){return n=>B(e,t,n)}function Ot(e){return typeof e==`number`?Dt:typeof e==`string`?Fe(e)?yt:R.test(e)?wt:Mt:Array.isArray(e)?kt:typeof e==`object`?R.test(e)?wt:At:yt}function kt(e,t){let n=[...e],r=n.length,i=e.map((e,n)=>Ot(e)(e,t[n]));return e=>{for(let t=0;t<r;t++)n[t]=i[t](e);return n}}function At(e,t){let n={...e,...t},r={};for(let i in n)e[i]!==void 0&&t[i]!==void 0&&(r[i]=Ot(e[i])(e[i],t[i]));return e=>{for(let t in r)n[t]=r[t](e);return n}}function jt(e,t){let n=[],r={color:0,var:0,number:0};for(let i=0;i<t.values.length;i++){let a=t.types[i],o=e.indexes[a][r[a]];n[i]=e.values[o]??0,r[a]++}return n}var Mt=(e,t)=>{let n=z.createTransformer(t),r=ut(e),i=ut(t);return r.indexes.var.length===i.indexes.var.length&&r.indexes.color.length===i.indexes.color.length&&r.indexes.number.length>=i.indexes.number.length?Tt.has(e)&&!i.values.length||Tt.has(t)&&!r.values.length?Et(e,t):T(kt(jt(r,i),i.values),n):(`${e}${t}`,yt(e,t))};function Nt(e,t,n){return typeof e==`number`&&typeof t==`number`&&typeof n==`number`?B(e,t,n):Ot(e)(e,t)}var Pt=e=>{let t=({timestamp:t})=>e(t);return{start:(e=!0)=>A.update(t,e),stop:()=>j(t),now:()=>M.isProcessing?M.timestamp:N.now()}},Ft=(e,t,n=10)=>{let r=``,i=Math.max(Math.round(t/n),2);for(let t=0;t<i;t++)r+=Math.round(e(t/(i-1))*1e4)/1e4+`, `;return`linear(${r.substring(0,r.length-2)})`},It=2e4;function Lt(e){let t=0,n=e.next(t);for(;!n.done&&t<2e4;)t+=50,n=e.next(t);return t>=2e4?1/0:t}function Rt(e,t=100,n){let r=n({...e,keyframes:[0,t]}),i=Math.min(Lt(r),It);return{type:`keyframes`,ease:e=>r.next(i*e).value/t,duration:O(i)}}var V={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1};function zt(e,t){return e*Math.sqrt(1-t*t)}var Bt=12;function Vt(e,t,n){let r=n;for(let n=1;n<Bt;n++)r-=e(r)/t(r);return r}var Ht=.001;function Ut({duration:e=V.duration,bounce:t=V.bounce,velocity:n=V.velocity,mass:r=V.mass}){let i,a;V.maxDuration;let o=1-t;o=_(V.minDamping,V.maxDamping,o),e=_(V.minDuration,V.maxDuration,O(e)),o<1?(i=t=>{let r=t*o,i=r*e,a=r-n,s=zt(t,o),c=Math.exp(-i);return Ht-a/s*c},a=t=>{let r=t*o*e,a=r*n+n,s=o**2*t**2*e,c=Math.exp(-r),l=zt(t**2,o);return(-i(t)+Ht>0?-1:1)*((a-s)*c)/l}):(i=t=>{let r=Math.exp(-t*e),i=(t-n)*e+1;return-Ht+r*i},a=t=>Math.exp(-t*e)*((n-t)*(e*e)));let s=5/e,c=Vt(i,a,s);if(e=D(e),isNaN(c))return{stiffness:V.stiffness,damping:V.damping,duration:e};{let t=c**2*r;return{stiffness:t,damping:o*2*Math.sqrt(r*t),duration:e}}}var Wt=[`duration`,`bounce`],Gt=[`stiffness`,`damping`,`mass`];function Kt(e,t){return t.some(t=>e[t]!==void 0)}function qt(e){let t={velocity:V.velocity,stiffness:V.stiffness,damping:V.damping,mass:V.mass,isResolvedFromDuration:!1,...e};if(!Kt(e,Gt)&&Kt(e,Wt))if(t.velocity=0,e.visualDuration){let n=e.visualDuration,r=2*Math.PI/(n*1.2),i=r*r,a=2*_(.05,1,1-(e.bounce||0))*Math.sqrt(i);t={...t,mass:V.mass,stiffness:i,damping:a}}else{let n=Ut({...e,velocity:0});t={...t,...n,mass:V.mass},t.isResolvedFromDuration=!0}return t}function Jt(e=V.visualDuration,t=V.bounce){let n=typeof e==`object`?e:{visualDuration:e,keyframes:[0,1],bounce:t},{restSpeed:r,restDelta:i}=n,a=n.keyframes[0],o=n.keyframes[n.keyframes.length-1],s={done:!1,value:a},{stiffness:c,damping:l,mass:u,duration:d,velocity:f,isResolvedFromDuration:p}=qt({...n,velocity:-O(n.velocity||0)}),m=f||0,h=l/(2*Math.sqrt(c*u)),g=o-a,_=O(Math.sqrt(c/u)),v=Math.abs(g)<5;r||=v?V.restSpeed.granular:V.restSpeed.default,i||=v?V.restDelta.granular:V.restDelta.default;let y,b,x,S,C,w;if(h<1)x=zt(_,h),S=(m+h*_*g)/x,y=e=>o-Math.exp(-h*_*e)*(S*Math.sin(x*e)+g*Math.cos(x*e)),C=h*_*S+g*x,w=h*_*g-S*x,b=e=>Math.exp(-h*_*e)*(C*Math.sin(x*e)+w*Math.cos(x*e));else if(h===1){y=e=>o-Math.exp(-_*e)*(g+(m+_*g)*e);let e=m+_*g;b=t=>Math.exp(-_*t)*(_*e*t-m)}else{let e=_*Math.sqrt(h*h-1);y=t=>{let n=Math.exp(-h*_*t),r=Math.min(e*t,300);return o-n*((m+h*_*g)*Math.sinh(r)+e*g*Math.cosh(r))/e};let t=(m+h*_*g)/e,n=h*_*t-g*e,r=h*_*g-t*e;b=t=>{let i=Math.exp(-h*_*t),a=Math.min(e*t,300);return i*(n*Math.sinh(a)+r*Math.cosh(a))}}let T={calculatedDuration:p&&d||null,velocity:e=>D(b(e)),next:e=>{if(!p&&h<1){let t=Math.exp(-h*_*e),n=Math.sin(x*e),a=Math.cos(x*e),c=o-t*(S*n+g*a),l=D(t*(C*n+w*a));return s.done=Math.abs(l)<=r&&Math.abs(o-c)<=i,s.value=s.done?o:c,s}let t=y(e);if(p)s.done=e>=d;else{let n=D(b(e));s.done=Math.abs(n)<=r&&Math.abs(o-t)<=i}return s.value=s.done?o:t,s},toString:()=>{let e=Math.min(Lt(T),It),t=Ft(t=>T.next(e*t).value,e,30);return e+`ms `+t},toTransition:()=>{}};return T}Jt.applyToOptions=e=>{let t=Rt(e,100,Jt);return e.ease=t.ease,e.duration=D(t.duration),e.type=`keyframes`,e};var Yt=5;function Xt(e,t,n){let r=Math.max(t-Yt,0);return te(n-e(r),t-r)}function Zt({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:i=10,bounceStiffness:a=500,modifyTarget:o,min:s,max:c,restDelta:l=.5,restSpeed:u}){let d=e[0],f={done:!1,value:d},p=e=>s!==void 0&&e<s||c!==void 0&&e>c,m=e=>s===void 0?c:c===void 0||Math.abs(s-e)<Math.abs(c-e)?s:c,h=n*t,g=d+h,_=o===void 0?g:o(g);_!==g&&(h=_-d);let v=e=>-h*Math.exp(-e/r),y=e=>_+v(e),b=e=>{let t=v(e),n=y(e);f.done=Math.abs(t)<=l,f.value=f.done?_:n},x,S,C=e=>{p(f.value)&&(x=e,S=Jt({keyframes:[f.value,m(f.value)],velocity:Xt(y,e,f.value),damping:i,stiffness:a,restDelta:l,restSpeed:u}))};return C(0),{calculatedDuration:null,next:e=>{let t=!1;return!S&&x===void 0&&(t=!0,b(e),C(e)),x!==void 0&&e>=x?S.next(e-x):(!t&&b(e),f)}}}function Qt(e,t,n){let r=[],i=n||y.mix||Nt,a=e.length-1;for(let n=0;n<a;n++){let a=i(e[n],e[n+1]);t&&(a=T(Array.isArray(t)?t[n]||w:t,a)),r.push(a)}return r}function $t(e,t,{clamp:n=!0,ease:r,mixer:i}={}){let a=e.length;if(t.length,a===1)return()=>t[0];if(a===2&&t[0]===t[1])return()=>t[1];let o=e[0]===e[1];e[0]>e[a-1]&&(e=[...e].reverse(),t=[...t].reverse());let s=Qt(t,r,i),c=s.length,l=n=>{if(o&&n<e[0])return t[0];let r=0;if(c>1)for(;r<e.length-2&&!(n<e[r+1]);r++);let i=E(e[r],e[r+1],n);return s[r](i)};return n?t=>l(_(e[0],e[a-1],t)):l}function en(e,t){let n=e[e.length-1];for(let r=1;r<=t;r++){let i=E(0,t,r);e.push(B(n,1,i))}}function tn(e){let t=[0];return en(t,e.length-1),t}function nn(e,t){return e.map(e=>e*t)}function rn(e,t){return e.map(()=>t||ve).splice(0,e.length-1)}function an({duration:e=300,keyframes:t,times:n,ease:r=`easeInOut`}){let i=ye(r)?r.map(Ce):Ce(r),a={done:!1,value:t[0]},o=$t(nn(n&&n.length===t.length?n:tn(t),e),t,{ease:Array.isArray(i)?i:rn(t,i)});return{calculatedDuration:e,next:t=>(a.value=o(t),a.done=t>=e,a)}}var on=e=>e!==null;function sn(e,{repeat:t,repeatType:n=`loop`},r,i=1){let a=e.filter(on),o=i<0||t&&n!==`loop`&&t%2==1?0:a.length-1;return!o||r===void 0?a[o]:r}var cn={decay:Zt,inertia:Zt,tween:an,keyframes:an,spring:Jt};function ln(e){typeof e.type==`string`&&(e.type=cn[e.type])}var un=class{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,t){return this.finished.then(e,t)}},dn=e=>e/100,fn=class extends un{constructor(e){super(),this.state=`idle`,this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.delayState={done:!1,value:void 0},this.stop=()=>{let{motionValue:e}=this.options;e&&e.updatedAt!==N.now()&&this.tick(N.now()),this.isStopped=!0,this.state!==`idle`&&(this.teardown(),this.options.onStop?.())},je.mainThread++,this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){let{options:e}=this;ln(e);let{type:t=an,repeat:n=0,repeatDelay:r=0,repeatType:i,velocity:a=0}=e,{keyframes:o}=e,s=t||an;s!==an&&typeof o[0]!=`number`&&(this.mixKeyframes=T(dn,Nt(o[0],o[1])),o=[0,100]);let c=s({...e,keyframes:o});i===`mirror`&&(this.mirroredGenerator=s({...e,keyframes:[...o].reverse(),velocity:-a})),c.calculatedDuration===null&&(c.calculatedDuration=Lt(c));let{calculatedDuration:l}=c;this.calculatedDuration=l,this.resolvedDuration=l+r,this.totalDuration=this.resolvedDuration*(n+1)-r,this.generator=c}updateTime(e){let t=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime===null?this.currentTime=t:this.currentTime=this.holdTime}tick(e,t=!1){let{generator:n,totalDuration:r,mixKeyframes:i,mirroredGenerator:a,resolvedDuration:o,calculatedDuration:s}=this;if(this.startTime===null)return n.next(0);let{delay:c=0,keyframes:l,repeat:u,repeatType:d,repeatDelay:f,type:p,onUpdate:m,finalKeyframe:h}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-r/this.speed,this.startTime)),t?this.currentTime=e:this.updateTime(e);let g=this.currentTime-c*(this.playbackSpeed>=0?1:-1),v=this.playbackSpeed>=0?g<0:g>r;this.currentTime=Math.max(g,0),this.state===`finished`&&this.holdTime===null&&(this.currentTime=r);let y=this.currentTime,b=n;if(u){let e=Math.min(this.currentTime,r)/o,t=Math.floor(e),n=e%1;!n&&e>=1&&(n=1),n===1&&t--,t=Math.min(t,u+1),t%2&&(d===`reverse`?(n=1-n,f&&(n-=f/o)):d===`mirror`&&(b=a)),y=_(0,1,n)*o}let x;v?(this.delayState.value=l[0],x=this.delayState):x=b.next(y),i&&!v&&(x.value=i(x.value));let{done:S}=x;!v&&s!==null&&(S=this.playbackSpeed>=0?this.currentTime>=r:this.currentTime<=0);let C=this.holdTime===null&&(this.state===`finished`||this.state===`running`&&S);return C&&p!==Zt&&(x.value=sn(l,this.options,h,this.speed)),m&&m(x.value),C&&this.finish(),x}then(e,t){return this.finished.then(e,t)}get duration(){return O(this.calculatedDuration)}get iterationDuration(){let{delay:e=0}=this.options||{};return this.duration+O(e)}get time(){return O(this.currentTime)}set time(e){e=D(e),this.currentTime=e,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state=`paused`,this.holdTime=e,this.tick(e))}getGeneratorVelocity(){let e=this.currentTime;if(e<=0)return this.options.velocity||0;if(this.generator.velocity)return this.generator.velocity(e);let t=this.generator.next(e).value;return Xt(e=>this.generator.next(e).value,e,t)}get speed(){return this.playbackSpeed}set speed(e){let t=this.playbackSpeed!==e;t&&this.driver&&this.updateTime(N.now()),this.playbackSpeed=e,t&&this.driver&&(this.time=O(this.currentTime))}play(){if(this.isStopped)return;let{driver:e=Pt,startTime:t}=this.options;this.driver||=e(e=>this.tick(e)),this.options.onPlay?.();let n=this.driver.now();this.state===`finished`?(this.updateFinished(),this.startTime=n):this.holdTime===null?this.startTime||=t??n:this.startTime=n-this.holdTime,this.state===`finished`&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state=`running`,this.driver.start()}pause(){this.state=`paused`,this.updateTime(N.now()),this.holdTime=this.currentTime}complete(){this.state!==`running`&&this.play(),this.state=`finished`,this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state=`finished`,this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state=`idle`,this.stopDriver(),this.startTime=this.holdTime=null,je.mainThread--}stopDriver(){this.driver&&=(this.driver.stop(),void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}attachTimeline(e){return this.options.allowFlatten&&(this.options.type=`keyframes`,this.options.ease=`linear`,this.initAnimation()),this.driver?.stop(),e.observe(this)}};function pn(e){for(let t=1;t<e.length;t++)e[t]??(e[t]=e[t-1])}var H=e=>e*180/Math.PI,mn=e=>gn(H(Math.atan2(e[1],e[0]))),hn={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:mn,rotateZ:mn,skewX:e=>H(Math.atan(e[1])),skewY:e=>H(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},gn=e=>(e%=360,e<0&&(e+=360),e),_n=mn,vn=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),yn=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),bn={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:vn,scaleY:yn,scale:e=>(vn(e)+yn(e))/2,rotateX:e=>gn(H(Math.atan2(e[6],e[5]))),rotateY:e=>gn(H(Math.atan2(-e[2],e[0]))),rotateZ:_n,rotate:_n,skewX:e=>H(Math.atan(e[4])),skewY:e=>H(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function xn(e){return+!!e.includes(`scale`)}function Sn(e,t){if(!e||e===`none`)return xn(t);let n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u),r,i;if(n)r=bn,i=n;else{let t=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=hn,i=t}if(!i)return xn(t);let a=r[t],o=i[1].split(`,`).map(wn);return typeof a==`function`?a(o):o[a]}var Cn=(e,t)=>{let{transform:n=`none`}=getComputedStyle(e);return Sn(n,t)};function wn(e){return parseFloat(e.trim())}var Tn=[`transformPerspective`,`x`,`y`,`z`,`translateX`,`translateY`,`translateZ`,`scale`,`scaleX`,`scaleY`,`rotate`,`rotateX`,`rotateY`,`rotateZ`,`skew`,`skewX`,`skewY`],En=new Set([...Tn,`pathRotation`]),Dn=e=>e===Re||e===L,On=new Set([`x`,`y`,`z`]),kn=Tn.filter(e=>!On.has(e));function An(e){let t=[];return kn.forEach(n=>{let r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(+!!n.startsWith(`scale`)))}),t}var U={width:({x:e},{paddingLeft:t=`0`,paddingRight:n=`0`,boxSizing:r})=>{let i=e.max-e.min;return r===`border-box`?i:i-parseFloat(t)-parseFloat(n)},height:({y:e},{paddingTop:t=`0`,paddingBottom:n=`0`,boxSizing:r})=>{let i=e.max-e.min;return r===`border-box`?i:i-parseFloat(t)-parseFloat(n)},top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>Sn(t,`x`),y:(e,{transform:t})=>Sn(t,`y`)};U.translateX=U.x,U.translateY=U.y;var W=new Set,jn=!1,Mn=!1,Nn=!1;function Pn(){if(Mn){let e=Array.from(W).filter(e=>e.needsMeasurement),t=new Set(e.map(e=>e.element)),n=new Map;t.forEach(e=>{let t=An(e);t.length&&(n.set(e,t),e.render())}),e.forEach(e=>e.measureInitialState()),t.forEach(e=>{e.render();let t=n.get(e);t&&t.forEach(([t,n])=>{e.getValue(t)?.set(n)})}),e.forEach(e=>e.measureEndState()),e.forEach(e=>{e.suspendedScrollY!==void 0&&window.scrollTo(0,e.suspendedScrollY)})}Mn=!1,jn=!1,W.forEach(e=>e.complete(Nn)),W.clear()}function Fn(){W.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(Mn=!0)})}function In(){Nn=!0,Fn(),Pn(),Nn=!1}var Ln=class{constructor(e,t,n,r,i,a=!1){this.state=`pending`,this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=t,this.name=n,this.motionValue=r,this.element=i,this.isAsync=a}scheduleResolve(){this.state=`scheduled`,this.isAsync?(W.add(this),jn||(jn=!0,A.read(Fn),A.resolveKeyframes(Pn))):(this.readKeyframes(),this.complete())}readKeyframes(){let{unresolvedKeyframes:e,name:t,element:n,motionValue:r}=this;if(e[0]===null){let i=r?.get(),a=e[e.length-1];if(i!==void 0)e[0]=i;else if(n&&t){let r=n.readValue(t,a);r!=null&&(e[0]=r)}e[0]===void 0&&(e[0]=a),r&&i===void 0&&r.set(e[0])}pn(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state=`complete`,this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),W.delete(this)}cancel(){this.state===`scheduled`&&(W.delete(this),this.state=`pending`)}resume(){this.state===`pending`&&this.scheduleResolve()}},Rn=e=>e.startsWith(`--`);function zn(e,t,n){Rn(t)?e.style.setProperty(t,n):e.style[t]=n}var Bn={};function Vn(e,t){let n=C(e);return()=>Bn[t]??n()}var Hn=Vn(()=>window.ScrollTimeline!==void 0,`scrollTimeline`),Un=Vn(()=>{try{document.createElement(`div`).animate({opacity:0},{easing:`linear(0, 1)`})}catch{return!1}return!0},`linearEasing`),Wn=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,Gn={linear:`linear`,ease:`ease`,easeIn:`ease-in`,easeOut:`ease-out`,easeInOut:`ease-in-out`,circIn:Wn([0,.65,.55,1]),circOut:Wn([.55,0,1,.45]),backIn:Wn([.31,.01,.66,-.59]),backOut:Wn([.33,1.53,.69,.99])};function Kn(e,t){if(e)return typeof e==`function`?Un()?Ft(e,t):`ease-out`:be(e)?Wn(e):Array.isArray(e)?e.map(e=>Kn(e,t)||Gn.easeOut):Gn[e]}function qn(e,t,n,{delay:r=0,duration:i=300,repeat:a=0,repeatType:o=`loop`,ease:s=`easeOut`,times:c}={},l=void 0){let u={[t]:n};c&&(u.offset=c);let d=Kn(s,i);Array.isArray(d)&&(u.easing=d),k.value&&je.waapi++;let f={delay:r,duration:i,easing:Array.isArray(d)?`linear`:d,fill:`both`,iterations:a+1,direction:o===`reverse`?`alternate`:`normal`};l&&(f.pseudoElement=l);let p=e.animate(u,f);return k.value&&p.finished.finally(()=>{je.waapi--}),p}function Jn(e){return typeof e==`function`&&`applyToOptions`in e}function Yn({type:e,...t}){return Jn(e)&&Un()?e.applyToOptions(t):(t.duration??=300,t.ease??=`easeOut`,t)}var Xn=class extends un{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!e)return;let{element:t,name:n,keyframes:r,pseudoElement:i,allowFlatten:a=!1,finalKeyframe:o,onComplete:s}=e;this.isPseudoElement=!!i,this.allowFlatten=a,this.options=e,e.type;let c=Yn(e);this.animation=qn(t,n,r,c,i),c.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!i){let e=sn(r,this.options,o,this.speed);this.updateMotionValue&&this.updateMotionValue(e),zn(t,n,e),this.animation.cancel()}s?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state===`finished`&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;let{state:e}=this;e===`idle`||e===`finished`||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){let e=this.options?.element;!this.isPseudoElement&&e?.isConnected&&this.animation.commitStyles?.()}get duration(){let e=this.animation.effect?.getComputedTiming?.().duration||0;return O(Number(e))}get iterationDuration(){let{delay:e=0}=this.options||{};return this.duration+O(e)}get time(){return O(Number(this.animation.currentTime)||0)}set time(e){let t=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=D(e),t&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime===null?this.animation.playState:`finished`}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(e){this.manualStartTime=this.animation.startTime=e}attachTimeline({timeline:e,rangeStart:t,rangeEnd:n,observe:r}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:`linear`}),this.animation.onfinish=null,e&&Hn()?(this.animation.timeline=e,t&&(this.animation.rangeStart=t),n&&(this.animation.rangeEnd=n),w):r(this)}},Zn={anticipate:fe,backInOut:de,circInOut:he};function Qn(e){return e in Zn}function $n(e){typeof e.ease==`string`&&Qn(e.ease)&&(e.ease=Zn[e.ease])}var er=10,tr=class extends Xn{constructor(e){$n(e),ln(e),super(e),e.startTime!==void 0&&e.autoplay!==!1&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){let{motionValue:t,onUpdate:n,onComplete:r,element:i,...a}=this.options;if(!t)return;if(e!==void 0){t.set(e);return}let o=new fn({...a,autoplay:!1}),s=Math.max(er,N.now()-this.startTime),c=_(0,er,s-er),l=o.sample(s).value,{name:u}=this.options;i&&u&&zn(i,u,l),t.setWithVelocity(o.sample(Math.max(0,s-c)).value,l,c),o.stop()}},nr=(e,t)=>t===`zIndex`?!1:!!(typeof e==`number`||Array.isArray(e)||typeof e==`string`&&(z.test(e)||e===`0`)&&!e.startsWith(`url(`));function rr(e){let t=e[0];if(e.length===1)return!0;for(let n=0;n<e.length;n++)if(e[n]!==t)return!0}function ir(e,t,n,r){let i=e[0];if(i===null)return!1;if(t===`display`||t===`visibility`)return!0;let a=e[e.length-1],o=nr(i,t),s=nr(a,t);return`${t}${i}${a}${o?a:i}`,!o||!s?!1:rr(e)||(n===`spring`||Jn(n))&&r}function ar(e){e.duration=0,e.type=`keyframes`}var or=new Set([`opacity`,`clipPath`,`filter`,`transform`]),sr=/^(?:oklch|oklab|lab|lch|color|color-mix|light-dark)\(/;function cr(e){for(let t=0;t<e.length;t++)if(typeof e[t]==`string`&&sr.test(e[t]))return!0;return!1}var lr=new Set([`color`,`backgroundColor`,`outlineColor`,`fill`,`stroke`,`borderColor`,`borderTopColor`,`borderRightColor`,`borderBottomColor`,`borderLeftColor`]),ur=C(()=>Object.hasOwnProperty.call(Element.prototype,`animate`));function dr(e){let{motionValue:t,name:n,repeatDelay:r,repeatType:i,damping:a,type:o,keyframes:s}=e;if(!(t?.owner?.current instanceof HTMLElement))return!1;let{onUpdate:c,transformTemplate:l}=t.owner.getProps();return ur()&&n&&(or.has(n)||lr.has(n)&&cr(s))&&(n!==`transform`||!l)&&!c&&!r&&i!==`mirror`&&a!==0&&o!==`inertia`}var fr=40,pr=class extends un{constructor({autoplay:e=!0,delay:t=0,type:n=`keyframes`,repeat:r=0,repeatDelay:i=0,repeatType:a=`loop`,keyframes:o,name:s,motionValue:c,element:l,...u}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=N.now();let d={autoplay:e,delay:t,type:n,repeat:r,repeatDelay:i,repeatType:a,name:s,motionValue:c,element:l,...u},f=l?.KeyframeResolver||Ln;this.keyframeResolver=new f(o,(e,t,n)=>this.onKeyframesResolved(e,t,d,!n),s,c,l),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(e,t,n,r){this.keyframeResolver=void 0;let{name:i,type:a,velocity:o,delay:s,isHandoff:c,onUpdate:l}=n;this.resolvedAt=N.now();let u=!0;ir(e,i,a,o)||(u=!1,(y.instantAnimations||!s)&&l?.(sn(e,n,t)),e[0]=e[e.length-1],ar(n),n.repeat=0);let d={startTime:r?this.resolvedAt&&this.resolvedAt-this.createdAt>fr?this.resolvedAt:this.createdAt:void 0,finalKeyframe:t,...n,keyframes:e},f=u&&!c&&dr(d),p=d.motionValue?.owner?.current,m;if(f)try{m=new tr({...d,element:p})}catch{m=new fn(d)}else m=new fn(d);m.finished.then(()=>{this.notifyFinished()}).catch(w),this.pendingTimeline&&=(this.stopTimeline=m.attachTimeline(this.pendingTimeline),void 0),this._animation=m}get finished(){return this._animation?this.animation.finished:this._finished}then(e,t){return this.finished.finally(e).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),In()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(e){this.animation.time=e}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(e){this.animation.speed=e}get startTime(){return this.animation.startTime}attachTimeline(e){return this._animation?this.stopTimeline=this.animation.attachTimeline(e):this.pendingTimeline=e,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}};function mr(e,t,n,r=0,i=1){let a=Array.from(e).sort((e,t)=>e.sortNodePosition(t)).indexOf(t),o=e.size,s=(o-1)*r;return typeof n==`function`?n(a,o):i===1?a*r:s-a*r}var hr=30,gr=e=>!isNaN(parseFloat(e)),_r={current:void 0},vr=class{constructor(e,t={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=e=>{let t=N.now();if(this.updatedAt!==t&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(e),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(let e of this.dependents)e.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=t.owner}setCurrent(e){this.current=e,this.updatedAt=N.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=gr(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on(`change`,e)}on(e,t){this.events[e]||(this.events[e]=new ee);let n=this.events[e].add(t);return e===`change`?()=>{n(),A.read(()=>{this.events.change.getSize()||this.stop()})}:n}clearListeners(){for(let e in this.events)this.events[e].clear()}attach(e,t){this.passiveEffect=e,this.stopPassiveEffect=t}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,t,n){this.set(t),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-n}jump(e,t=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,t&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(e){this.dependents||=new Set,this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return _r.current&&_r.current.push(this),this.current}getPrevious(){return this.prev}getVelocity(){let e=N.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>hr)return 0;let t=Math.min(this.updatedAt-this.prevUpdatedAt,hr);return te(parseFloat(this.current)-parseFloat(this.prevFrameValue),t)}start(e){return this.stop(),new Promise(t=>{this.hasAnimated=!0,this.animation=e(t),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}};function yr(e,t){return new vr(e,t)}function br(e,t){if(e?.inherit&&t){let{inherit:n,...r}=e;return{...t,...r}}return e}function xr(e,t){let n=e?.[t]??e?.default??e;return n===e?n:br(n,e)}var Sr={type:`spring`,stiffness:500,damping:25,restSpeed:10},Cr=e=>({type:`spring`,stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),wr={type:`keyframes`,duration:.8},Tr={type:`keyframes`,ease:[.25,.1,.35,1],duration:.3},Er=(e,{keyframes:t})=>t.length>2?wr:En.has(e)?e.startsWith(`scale`)?Cr(t[1]):Sr:Tr,Dr=new Set([`when`,`delay`,`delayChildren`,`staggerChildren`,`staggerDirection`,`repeat`,`repeatType`,`repeatDelay`,`from`,`elapsed`]);function Or(e){for(let t in e)if(!Dr.has(t))return!0;return!1}var kr=(e,t,n,r={},i,a)=>o=>{let s=xr(r,e)||{},c=s.delay||r.delay||0,{elapsed:l=0}=r;l-=D(c);let u={keyframes:Array.isArray(n)?n:[null,n],ease:`easeOut`,velocity:t.getVelocity(),...s,delay:-l,onUpdate:e=>{t.set(e),s.onUpdate&&s.onUpdate(e)},onComplete:()=>{o(),s.onComplete&&s.onComplete()},name:e,motionValue:t,element:a?void 0:i};Or(s)||Object.assign(u,Er(e,u)),u.duration&&=D(u.duration),u.repeatDelay&&=D(u.repeatDelay),u.from!==void 0&&(u.keyframes[0]=u.from);let d=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(ar(u),u.delay===0&&(d=!0)),(y.instantAnimations||y.skipAnimations||i?.shouldSkipAnimations||s.skipAnimations)&&(d=!0,ar(u),u.delay=0),u.allowFlatten=!s.type&&!s.ease,d&&!a&&t.get()!==void 0){let e=sn(u.keyframes,s);if(e!==void 0){A.update(()=>{u.onUpdate(e),u.onComplete()});return}}return s.isSync?new fn(u):new pr(u)},Ar=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function jr(e){let t=Ar.exec(e);if(!t)return[,];let[,n,r,i]=t;return[`--${n??r}`,i]}function Mr(e,t,n=1){`${e}`;let[r,i]=jr(e);if(!r)return;let a=window.getComputedStyle(t).getPropertyValue(r);if(a){let e=a.trim();return b(e)?parseFloat(e):e}return Fe(i)?Mr(i,t,n+1):i}function Nr(e){let t=[{},{}];return e?.values.forEach((e,n)=>{t[0][n]=e.get(),t[1][n]=e.getVelocity()}),t}function Pr(e,t,n,r){if(typeof t==`function`){let[i,a]=Nr(r);t=t(n===void 0?e.custom:n,i,a)}if(typeof t==`string`&&(t=e.variants&&e.variants[t]),typeof t==`function`){let[i,a]=Nr(r);t=t(n===void 0?e.custom:n,i,a)}return t}function G(e,t,n){let r=e.getProps();return Pr(r,t,n===void 0?r.custom:n,e)}var Fr=new Set([`width`,`height`,`top`,`left`,`right`,`bottom`,...Tn]),Ir=e=>Array.isArray(e);function Lr(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,yr(n))}function Rr(e){return Ir(e)?e[e.length-1]||0:e}function zr(e,t){let{transitionEnd:n={},transition:r={},...i}=G(e,t)||{};i={...i,...n};for(let t in i)Lr(e,t,Rr(i[t]))}var K=e=>!!(e&&e.getVelocity);function Br(e){return!!(K(e)&&e.add)}function Vr(e,t){let n=e.getValue(`willChange`);if(Br(n))return n.add(t);if(!n&&y.WillChange){let n=new y.WillChange(`auto`);e.addValue(`willChange`,n),n.add(t)}}function Hr(e){return e.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}var Ur=`data-`+Hr(`framerAppearId`);function Wr(e){return e.props[Ur]}function Gr({protectedKeys:e,needsAnimating:t},n){let r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function Kr(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:a,transitionEnd:o,...s}=t,c=e.getDefaultTransition();a=a?br(a,c):c;let l=a?.reduceMotion,u=a?.skipAnimations;r&&(a=r);let d=[],f=i&&e.animationState&&e.animationState.getState()[i],p=a?.path;p&&p.animateVisualElement(e,s,a,n,d);for(let t in s){let r=e.getValue(t,e.latestValues[t]??null),i=s[t];if(i===void 0||f&&Gr(f,t))continue;let o={delay:n,...xr(a||{},t)};u&&(o.skipAnimations=!0);let c=r.get();if(c!==void 0&&!r.isAnimating()&&!Array.isArray(i)&&i===c&&!o.velocity){A.update(()=>r.set(i));continue}let p=!1;if(window.MotionHandoffAnimation){let n=Wr(e);if(n){let e=window.MotionHandoffAnimation(n,t,A);e!==null&&(o.startTime=e,p=!0)}}Vr(e,t);let m=l??e.shouldReduceMotion;r.start(kr(t,r,i,m&&Fr.has(t)?{type:!1}:o,e,p));let h=r.animation;h&&d.push(h)}if(o){let t=()=>A.update(()=>{o&&zr(e,o)});d.length?Promise.all(d).then(t):t()}return d}function qr(e,t,n={}){let r=G(e,t,n.type===`exit`?e.presenceContext?.custom:void 0),{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);let a=r?()=>Promise.all(Kr(e,r,n)):()=>Promise.resolve(),o=e.variantChildren&&e.variantChildren.size?(r=0)=>{let{delayChildren:a=0,staggerChildren:o,staggerDirection:s}=i;return Jr(e,t,r,a,o,s,n)}:()=>Promise.resolve(),{when:s}=i;if(s){let[e,t]=s===`beforeChildren`?[a,o]:[o,a];return e().then(()=>t())}else return Promise.all([a(),o(n.delay)])}function Jr(e,t,n=0,r=0,i=0,a=1,o){let s=[];for(let c of e.variantChildren)c.notify(`AnimationStart`,t),s.push(qr(c,t,{...o,delay:n+(typeof r==`function`?0:r)+mr(e.variantChildren,c,r,i,a)}).then(()=>c.notify(`AnimationComplete`,t)));return Promise.all(s)}function Yr(e,t,n={}){e.notify(`AnimationStart`,t);let r;if(Array.isArray(t)){let i=t.map(t=>qr(e,t,n));r=Promise.all(i)}else if(typeof t==`string`)r=qr(e,t,n);else{let i=typeof t==`function`?G(e,t,n.custom):t;r=Promise.all(Kr(e,i,n))}return r.then(()=>{e.notify(`AnimationComplete`,t)})}var Xr={test:e=>e===`auto`,parse:e=>e},Zr=e=>t=>t.test(e),Qr=[Re,L,I,F,$e,Qe,Xr],$r=e=>Qr.find(Zr(e));function ei(e){return typeof e==`number`?e===0:e===null?!0:e===`none`||e===`0`||S(e)}var ti=new Set([`brightness`,`contrast`,`saturate`,`opacity`]);function ni(e){let[t,n]=e.slice(0,-1).split(`(`);if(t===`drop-shadow`)return e;let[r]=n.match(He)||[];if(!r)return e;let i=n.replace(r,``),a=+!!ti.has(t);return r!==n&&(a*=100),t+`(`+a+i+`)`}var ri=/\b([a-z-]*)\(.*?\)/gu,ii={...z,getAnimatableNone:e=>{let t=e.match(ri);return t?t.map(ni).join(` `):e}},ai={...z,getAnimatableNone:e=>{let t=z.parse(e);return z.createTransformer(e)(t.map(e=>typeof e==`number`?0:typeof e==`object`?{...e,alpha:1}:e))}},oi={...Re,transform:Math.round},si={borderWidth:L,borderTopWidth:L,borderRightWidth:L,borderBottomWidth:L,borderLeftWidth:L,borderRadius:L,borderTopLeftRadius:L,borderTopRightRadius:L,borderBottomRightRadius:L,borderBottomLeftRadius:L,width:L,maxWidth:L,height:L,maxHeight:L,top:L,right:L,bottom:L,left:L,inset:L,insetBlock:L,insetBlockStart:L,insetBlockEnd:L,insetInline:L,insetInlineStart:L,insetInlineEnd:L,padding:L,paddingTop:L,paddingRight:L,paddingBottom:L,paddingLeft:L,paddingBlock:L,paddingBlockStart:L,paddingBlockEnd:L,paddingInline:L,paddingInlineStart:L,paddingInlineEnd:L,margin:L,marginTop:L,marginRight:L,marginBottom:L,marginLeft:L,marginBlock:L,marginBlockStart:L,marginBlockEnd:L,marginInline:L,marginInlineStart:L,marginInlineEnd:L,fontSize:L,backgroundPositionX:L,backgroundPositionY:L,rotate:F,pathRotation:F,rotateX:F,rotateY:F,rotateZ:F,scale:Be,scaleX:Be,scaleY:Be,scaleZ:Be,skew:F,skewX:F,skewY:F,distance:L,translateX:L,translateY:L,translateZ:L,x:L,y:L,z:L,perspective:L,transformPerspective:L,opacity:ze,originX:et,originY:et,originZ:L,zIndex:oi,fillOpacity:ze,strokeOpacity:ze,numOctaves:oi},ci={...si,color:R,backgroundColor:R,outlineColor:R,fill:R,stroke:R,borderColor:R,borderTopColor:R,borderRightColor:R,borderBottomColor:R,borderLeftColor:R,filter:ii,WebkitFilter:ii,mask:ai,WebkitMask:ai},li=e=>ci[e],ui=new Set([ii,ai]);function di(e,t){let n=li(e);return ui.has(n)||(n=z),n.getAnimatableNone?n.getAnimatableNone(t):void 0}var fi=new Set([`auto`,`none`,`0`]);function pi(e,t,n){let r=0,i;for(;r<e.length&&!i;){let t=e[r];typeof t==`string`&&!fi.has(t)&&ut(t).values.length&&(i=e[r]),r++}if(i&&n)for(let r of t)e[r]=di(n,i)}var mi=class extends Ln{constructor(e,t,n,r,i){super(e,t,n,r,i,!0)}readKeyframes(){let{unresolvedKeyframes:e,element:t,name:n}=this;if(!t||!t.current)return;super.readKeyframes();for(let n=0;n<e.length;n++){let r=e[n];if(typeof r==`string`&&(r=r.trim(),Fe(r))){let i=Mr(r,t.current);i!==void 0&&(e[n]=i),n===e.length-1&&(this.finalKeyframe=r)}}if(this.resolveNoneKeyframes(),!Fr.has(n)||e.length!==2)return;let[r,i]=e,a=$r(r),o=$r(i);if(Le(r)!==Le(i)&&U[n]){this.needsMeasurement=!0;return}if(a!==o)if(Dn(a)&&Dn(o))for(let t=0;t<e.length;t++){let n=e[t];typeof n==`string`&&(e[t]=parseFloat(n))}else U[n]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){let{unresolvedKeyframes:e,name:t}=this,n=[];for(let t=0;t<e.length;t++)(e[t]===null||ei(e[t]))&&n.push(t);n.length&&pi(e,n,t)}measureInitialState(){let{element:e,unresolvedKeyframes:t,name:n}=this;if(!e||!e.current)return;n===`height`&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=U[n](e.measureViewportBox(),window.getComputedStyle(e.current)),t[0]=this.measuredOrigin;let r=t[t.length-1];r!==void 0&&e.getValue(n,r).jump(r,!1)}measureEndState(){let{element:e,name:t,unresolvedKeyframes:n}=this;if(!e||!e.current)return;let r=e.getValue(t);r&&r.jump(this.measuredOrigin,!1);let i=n.length-1,a=n[i];n[i]=U[t](e.measureViewportBox(),window.getComputedStyle(e.current)),a!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=a),this.removedTransforms?.length&&this.removedTransforms.forEach(([t,n])=>{e.getValue(t).set(n)}),this.resolveNoneKeyframes()}};function hi(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e==`string`){let r=document;t&&(r=t.current);let i=n?.[e]??r.querySelectorAll(e);return i?Array.from(i):[]}return Array.from(e).filter(e=>e!=null)}var gi=(e,t)=>t&&typeof e==`number`?t.transform(e):e;function _i(e){return x(e)&&`offsetHeight`in e&&!(`ownerSVGElement`in e)}var{schedule:vi,cancel:yi}=De(queueMicrotask,!1),q={x:!1,y:!1};function bi(){return q.x||q.y}function xi(e){return e===`x`||e===`y`?q[e]?null:(q[e]=!0,()=>{q[e]=!1}):q.x||q.y?null:(q.x=q.y=!0,()=>{q.x=q.y=!1})}function Si(e,t){let n=hi(e),r=new AbortController;return[n,{passive:!0,...t,signal:r.signal},()=>r.abort()]}function Ci(e){return!(e.pointerType===`touch`||bi())}function wi(e,t,n={}){let[r,i,a]=Si(e,n);return r.forEach(e=>{let n=!1,r=!1,a,o=()=>{e.removeEventListener(`pointerleave`,u)},s=e=>{a&&=(a(e),void 0),o()},c=e=>{n=!1,window.removeEventListener(`pointerup`,c),window.removeEventListener(`pointercancel`,c),r&&(r=!1,s(e))},l=()=>{n=!0,window.addEventListener(`pointerup`,c,i),window.addEventListener(`pointercancel`,c,i)},u=e=>{if(e.pointerType!==`touch`){if(n){r=!0;return}s(e)}};e.addEventListener(`pointerenter`,n=>{if(!Ci(n))return;r=!1;let o=t(e,n);typeof o==`function`&&(a=o,e.addEventListener(`pointerleave`,u,i))},i),e.addEventListener(`pointerdown`,l,i)}),a}var Ti=(e,t)=>t?e===t?!0:Ti(e,t.parentElement):!1,Ei=e=>e.pointerType===`mouse`?typeof e.button!=`number`||e.button<=0:e.isPrimary!==!1,Di=new Set([`BUTTON`,`INPUT`,`SELECT`,`TEXTAREA`,`A`]);function Oi(e){return Di.has(e.tagName)||e.isContentEditable===!0}var ki=new Set([`INPUT`,`SELECT`,`TEXTAREA`]);function Ai(e){return ki.has(e.tagName)||e.isContentEditable===!0}var ji=new WeakSet;function Mi(e){return t=>{t.key===`Enter`&&e(t)}}function Ni(e,t){e.dispatchEvent(new PointerEvent(`pointer`+t,{isPrimary:!0,bubbles:!0}))}var Pi=(e,t)=>{let n=e.currentTarget;if(!n)return;let r=Mi(()=>{if(ji.has(n))return;Ni(n,`down`);let e=Mi(()=>{Ni(n,`up`)});n.addEventListener(`keyup`,e,t),n.addEventListener(`blur`,()=>Ni(n,`cancel`),t)});n.addEventListener(`keydown`,r,t),n.addEventListener(`blur`,()=>n.removeEventListener(`keydown`,r),t)};function Fi(e){return Ei(e)&&!bi()}var Ii=new WeakSet;function Li(e,t,n={}){let[r,i,a]=Si(e,n),o=e=>{let r=e.currentTarget;if(!Fi(e)||Ii.has(e))return;ji.add(r),n.stopPropagation&&Ii.add(e);let a=t(r,e),o=(e,t)=>{window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,c),ji.has(r)&&ji.delete(r),Fi(e)&&typeof a==`function`&&a(e,{success:t})},s=e=>{o(e,r===window||r===document||n.useGlobalTarget||Ti(r,e.target))},c=e=>{o(e,!1)};window.addEventListener(`pointerup`,s,i),window.addEventListener(`pointercancel`,c,i)};return r.forEach(e=>{(n.useGlobalTarget?window:e).addEventListener(`pointerdown`,o,i),_i(e)&&(e.addEventListener(`focus`,e=>Pi(e,i)),!Oi(e)&&!e.hasAttribute(`tabindex`)&&(e.tabIndex=0))}),a}function Ri(e){return x(e)&&`ownerSVGElement`in e}var zi=new WeakMap,Bi,Vi=(e,t,n)=>(r,i)=>i&&i[0]?i[0][e+`Size`]:Ri(r)&&`getBBox`in r?r.getBBox()[t]:r[n],Hi=Vi(`inline`,`width`,`offsetWidth`),Ui=Vi(`block`,`height`,`offsetHeight`);function Wi({target:e,borderBoxSize:t}){zi.get(e)?.forEach(n=>{n(e,{get width(){return Hi(e,t)},get height(){return Ui(e,t)}})})}function Gi(e){e.forEach(Wi)}function Ki(){typeof ResizeObserver>`u`||(Bi=new ResizeObserver(Gi))}function qi(e,t){Bi||Ki();let n=hi(e);return n.forEach(e=>{let n=zi.get(e);n||(n=new Set,zi.set(e,n)),n.add(t),Bi?.observe(e)}),()=>{n.forEach(e=>{let n=zi.get(e);n?.delete(t),n?.size||Bi?.unobserve(e)})}}var Ji=new Set,Yi;function Xi(){Yi=()=>{let e={get width(){return window.innerWidth},get height(){return window.innerHeight}};Ji.forEach(t=>t(e))},window.addEventListener(`resize`,Yi)}function Zi(e){return Ji.add(e),Yi||Xi(),()=>{Ji.delete(e),!Ji.size&&typeof Yi==`function`&&(window.removeEventListener(`resize`,Yi),Yi=void 0)}}function Qi(e,t){return typeof e==`function`?Zi(e):qi(e,t)}function $i(e){return Ri(e)&&e.tagName===`svg`}var ea=[...Qr,R,z],ta=e=>ea.find(Zr(e)),na=()=>({translate:0,scale:1,origin:0,originPoint:0}),ra=()=>({x:na(),y:na()}),ia=()=>({min:0,max:0}),J=()=>({x:ia(),y:ia()}),aa=new WeakMap;function oa(e){return typeof e==`object`&&!!e&&typeof e.start==`function`}function sa(e){return typeof e==`string`||Array.isArray(e)}var ca=[`animate`,`whileInView`,`whileFocus`,`whileHover`,`whileTap`,`whileDrag`,`exit`],la=[`initial`,...ca];function ua(e){return oa(e.animate)||la.some(t=>sa(e[t]))}function da(e){return!!(ua(e)||e.variants)}function fa(e,t,n){for(let r in t){let i=t[r],a=n[r];if(K(i))e.addValue(r,i);else if(K(a))e.addValue(r,yr(i,{owner:e}));else if(a!==i)if(e.hasValue(r)){let t=e.getValue(r);t.liveStyle===!0?t.jump(i):t.hasAnimated||t.set(i)}else{let t=e.getStaticValue(r);e.addValue(r,yr(t===void 0?i:t,{owner:e}))}}for(let r in n)t[r]===void 0&&e.removeValue(r);return t}var pa=[`AnimationStart`,`AnimationComplete`,`Update`,`BeforeLayoutMeasure`,`LayoutMeasure`,`LayoutAnimationStart`,`LayoutAnimationComplete`],ma={};function ha(e){ma=e}function ga(){return ma}var _a=class{scrapeMotionValuesFromProps(e,t,n){return{}}constructor({parent:e,props:t,presenceContext:n,reducedMotionConfig:r,skipAnimations:i,blockInitialAnimation:a,visualState:o},s={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=Ln,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify(`Update`,this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{let e=N.now();this.renderScheduledAt<e&&(this.renderScheduledAt=e,A.render(this.render,!1,!0))};let{latestValues:c,renderState:l}=o;this.latestValues=c,this.baseTarget={...c},this.initialValues=t.initial?{...c}:{},this.renderState=l,this.parent=e,this.props=t,this.presenceContext=n,this.depth=e?e.depth+1:0,this.reducedMotionConfig=r,this.skipAnimationsConfig=i,this.options=s,this.blockInitialAnimation=!!a,this.isControllingVariants=ua(t),this.isVariantNode=da(t),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);let{willChange:u,...d}=this.scrapeMotionValuesFromProps(t,{},this);for(let e in d){let t=d[e];c[e]!==void 0&&K(t)&&t.set(c[e])}}mount(e){if(this.hasBeenMounted)for(let e in this.initialValues)this.values.get(e)?.jump(this.initialValues[e]),this.latestValues[e]=this.initialValues[e];this.current=e,aa.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((e,t)=>this.bindToMotionValue(t,e)),this.reducedMotionConfig===`never`?this.shouldReduceMotion=!1:this.reducedMotionConfig===`always`?this.shouldReduceMotion=!0:(o.current||c(),this.shouldReduceMotion=s.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),j(this.notifyUpdate),j(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(let e in this.events)this.events[e].clear();for(let e in this.features){let t=this.features[e];t&&(t.unmount(),t.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??=new Set,this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,t){if(this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)(),t.accelerate&&or.has(e)&&this.current instanceof HTMLElement){let{factory:n,keyframes:r,times:i,ease:a,duration:o}=t.accelerate,s=new Xn({element:this.current,name:e,keyframes:r,times:i,ease:a,duration:D(o)}),c=n(s);this.valueSubscriptions.set(e,()=>{c(),s.cancel()});return}let n=En.has(e);n&&this.onBindTransform&&this.onBindTransform();let r=t.on(`change`,t=>{this.latestValues[e]=t,this.props.onUpdate&&A.preRender(this.notifyUpdate),n&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()}),i;typeof window<`u`&&window.MotionCheckAppearSync&&(i=window.MotionCheckAppearSync(this,e,t)),this.valueSubscriptions.set(e,()=>{r(),i&&i()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e=`animation`;for(e in ma){let t=ma[e];if(!t)continue;let{isEnabled:n,Feature:r}=t;if(!this.features[e]&&r&&n(this.props)&&(this.features[e]=new r(this)),this.features[e]){let t=this.features[e];t.isMounted?t.update():(t.mount(),t.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):J()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,t){this.latestValues[e]=t}update(e,t){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=t;for(let t=0;t<pa.length;t++){let n=pa[t];this.propEventSubscriptions[n]&&(this.propEventSubscriptions[n](),delete this.propEventSubscriptions[n]);let r=e[`on`+n];r&&(this.propEventSubscriptions[n]=this.on(n,r))}this.prevMotionValues=fa(this,this.scrapeMotionValuesFromProps(e,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(e){let t=this.getClosestVariantNode();if(t)return t.variantChildren&&t.variantChildren.add(e),()=>t.variantChildren.delete(e)}addValue(e,t){let n=this.values.get(e);t!==n&&(n&&this.removeValue(e),this.bindToMotionValue(e,t),this.values.set(e,t),this.latestValues[e]=t.get())}removeValue(e){this.values.delete(e);let t=this.valueSubscriptions.get(e);t&&(t(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,t){if(this.props.values&&this.props.values[e])return this.props.values[e];let n=this.values.get(e);return n===void 0&&t!==void 0&&(n=yr(t===null?void 0:t,{owner:this}),this.addValue(e,n)),n}readValue(e,t){let n=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return n!=null&&(typeof n==`string`&&(b(n)||S(n))?n=parseFloat(n):!ta(n)&&z.test(t)&&(n=di(e,t)),this.setBaseTarget(e,K(n)?n.get():n)),K(n)?n.get():n}setBaseTarget(e,t){this.baseTarget[e]=t}getBaseTarget(e){let{initial:t}=this.props,n;if(typeof t==`string`||typeof t==`object`){let r=Pr(this.props,t,this.presenceContext?.custom);r&&(n=r[e])}if(t&&n!==void 0)return n;let r=this.getBaseTargetFromProps(this.props,e);return r!==void 0&&!K(r)?r:this.initialValues[e]!==void 0&&n===void 0?void 0:this.baseTarget[e]}on(e,t){return this.events[e]||(this.events[e]=new ee),this.events[e].add(t)}notify(e,...t){this.events[e]&&this.events[e].notify(...t)}scheduleRenderMicrotask(){vi.render(this.render)}},va=class extends _a{constructor(){super(...arguments),this.KeyframeResolver=mi}sortInstanceNodePosition(e,t){return e.compareDocumentPosition(t)&2?1:-1}getBaseTargetFromProps(e,t){let n=e.style;return n?n[t]:void 0}removeValueFromRenderState(e,{vars:t,style:n}){delete t[e],delete n[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);let{children:e}=this.props;K(e)&&(this.childSubscription=e.on(`change`,e=>{this.current&&(this.current.textContent=`${e}`)}))}},Y=class{constructor(e){this.isMounted=!1,this.node=e}update(){}};function ya({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function ba({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function xa(e,t){if(!t)return e;let n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function Sa(e){return e===void 0||e===1}function Ca({scale:e,scaleX:t,scaleY:n}){return!Sa(e)||!Sa(t)||!Sa(n)}function wa(e){return Ca(e)||Ta(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function Ta(e){return Ea(e.x)||Ea(e.y)}function Ea(e){return e&&e!==`0%`}function Da(e,t,n){return n+t*(e-n)}function Oa(e,t,n,r,i){return i!==void 0&&(e=Da(e,i,r)),Da(e,n,r)+t}function ka(e,t=0,n=1,r,i){e.min=Oa(e.min,t,n,r,i),e.max=Oa(e.max,t,n,r,i)}function Aa(e,{x:t,y:n}){ka(e.x,t.translate,t.scale,t.originPoint),ka(e.y,n.translate,n.scale,n.originPoint)}var ja=.999999999999,Ma=1.0000000000001;function Na(e,t,n,r=!1){let i=n.length;if(!i)return;t.x=t.y=1;let a,o;for(let s=0;s<i;s++){a=n[s],o=a.projectionDelta;let{visualElement:i}=a.options;i&&i.props.style&&i.props.style.display===`contents`||(r&&a.options.layoutScroll&&a.scroll&&a!==a.root&&(X(e.x,-a.scroll.offset.x),X(e.y,-a.scroll.offset.y)),o&&(t.x*=o.x.scale,t.y*=o.y.scale,Aa(e,o)),r&&wa(a.latestValues)&&Ia(e,a.latestValues,a.layout?.layoutBox))}t.x<Ma&&t.x>ja&&(t.x=1),t.y<Ma&&t.y>ja&&(t.y=1)}function X(e,t){e.min+=t,e.max+=t}function Pa(e,t,n,r,i=.5){ka(e,t,n,B(e.min,e.max,i),r)}function Fa(e,t){return typeof e==`string`?parseFloat(e)/100*(t.max-t.min):e}function Ia(e,t,n){let r=n??e;Pa(e.x,Fa(t.x,r.x),t.scaleX,t.scale,t.originX),Pa(e.y,Fa(t.y,r.y),t.scaleY,t.scale,t.originY)}function La(e,t){return ya(xa(e.getBoundingClientRect(),t))}function Ra(e,t,n){let r=La(e,n),{scroll:i}=t;return i&&(X(r.x,i.offset.x),X(r.y,i.offset.y)),r}var za={x:`translateX`,y:`translateY`,z:`translateZ`,transformPerspective:`perspective`},Ba=Tn.length;function Va(e,t,n){let r=``,i=!0;for(let a=0;a<Ba;a++){let o=Tn[a],s=e[o];if(s===void 0)continue;let c=!0;if(typeof s==`number`)c=s===+!!o.startsWith(`scale`);else{let e=parseFloat(s);c=o.startsWith(`scale`)?e===1:e===0}if(!c||n){let e=gi(s,si[o]);if(!c){i=!1;let t=za[o]||o;r+=`${t}(${e}) `}n&&(t[o]=e)}}let a=e.pathRotation;return a&&(i=!1,r+=`rotate(${gi(a,si.pathRotation)}) `),r=r.trim(),n?r=n(t,i?``:r):i&&(r=`none`),r}function Ha(e,t,n){let{style:r,vars:i,transformOrigin:a}=e,o=!1,s=!1;for(let e in t){let n=t[e];if(En.has(e)){o=!0;continue}else if(Ne(e)){i[e]=n;continue}else{let t=gi(n,si[e]);e.startsWith(`origin`)?(s=!0,a[e]=t):r[e]=t}}if(t.transform||(o||n?r.transform=Va(t,e.transform,n):r.transform&&=`none`),s){let{originX:e=`50%`,originY:t=`50%`,originZ:n=0}=a;r.transformOrigin=`${e} ${t} ${n}`}}function Ua(e,{style:t,vars:n},r,i){let a=e.style,o;for(o in t)a[o]=t[o];for(o in i?.applyProjectionStyles(a,r),n)a.setProperty(o,n[o])}function Wa(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}var Ga={correct:(e,t)=>{if(!t.target)return e;if(typeof e==`string`)if(L.test(e))e=parseFloat(e);else return e;return`${Wa(e,t.target.x)}% ${Wa(e,t.target.y)}%`}},Ka={correct:(e,{treeScale:t,projectionDelta:n})=>{let r=e,i=z.parse(e);if(i.length>5)return r;let a=z.createTransformer(e),o=typeof i[0]==`number`?0:1,s=n.x.scale*t.x,c=n.y.scale*t.y;i[0+o]/=s,i[1+o]/=c;let l=B(s,c,.5);return typeof i[2+o]==`number`&&(i[2+o]/=l),typeof i[3+o]==`number`&&(i[3+o]/=l),a(i)}},qa={borderRadius:{...Ga,applyTo:[`borderTopLeftRadius`,`borderTopRightRadius`,`borderBottomLeftRadius`,`borderBottomRightRadius`]},borderTopLeftRadius:Ga,borderTopRightRadius:Ga,borderBottomLeftRadius:Ga,borderBottomRightRadius:Ga,boxShadow:Ka};function Ja(e,{layout:t,layoutId:n}){return En.has(e)||e.startsWith(`origin`)||(t||n!==void 0)&&(!!qa[e]||e===`opacity`)}function Ya(e,t,n){let r=e.style,i=t?.style,a={};if(!r)return a;for(let t in r)(K(r[t])||i&&K(i[t])||Ja(t,e)||n?.getValue(t)?.liveStyle!==void 0)&&(a[t]=r[t]);return a}function Xa(e){return window.getComputedStyle(e)}var Za=class extends va{constructor(){super(...arguments),this.type=`html`,this.renderInstance=Ua}readValueFromInstance(e,t){if(En.has(t))return this.projection?.isProjecting?xn(t):Cn(e,t);{let n=Xa(e),r=(Ne(t)?n.getPropertyValue(t):n[t])||0;return typeof r==`string`?r.trim():r}}measureInstanceViewportBox(e,{transformPagePoint:t}){return La(e,t)}build(e,t,n){Ha(e,t,n.transformTemplate)}scrapeMotionValuesFromProps(e,t,n){return Ya(e,t,n)}},Qa={offset:`stroke-dashoffset`,array:`stroke-dasharray`},$a={offset:`strokeDashoffset`,array:`strokeDasharray`};function eo(e,t,n=1,r=0,i=!0){e.pathLength=1;let a=i?Qa:$a;e[a.offset]=`${-r}`,e[a.array]=`${t} ${n}`}var to=[`offsetDistance`,`offsetPath`,`offsetRotate`,`offsetAnchor`];function no(e,{attrX:t,attrY:n,attrScale:r,pathLength:i,pathSpacing:a=1,pathOffset:o=0,...s},c,l,u){if(Ha(e,s,l),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};let{attrs:d,style:f}=e;d.transform&&(f.transform=d.transform,delete d.transform),(f.transform||d.transformOrigin)&&(f.transformOrigin=d.transformOrigin??`50% 50%`,delete d.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??`fill-box`,delete d.transformBox);for(let e of to)d[e]!==void 0&&(f[e]=d[e],delete d[e]);t!==void 0&&(d.x=t),n!==void 0&&(d.y=n),r!==void 0&&(d.scale=r),i!==void 0&&eo(d,i,a,o,!1)}var ro=new Set([`baseFrequency`,`diffuseConstant`,`kernelMatrix`,`kernelUnitLength`,`keySplines`,`keyTimes`,`limitingConeAngle`,`markerHeight`,`markerWidth`,`numOctaves`,`targetX`,`targetY`,`surfaceScale`,`specularConstant`,`specularExponent`,`stdDeviation`,`tableValues`,`viewBox`,`gradientTransform`,`pathLength`,`startOffset`,`textLength`,`lengthAdjust`]),io=e=>typeof e==`string`&&e.toLowerCase()===`svg`;function ao(e,t,n,r){Ua(e,t,void 0,r);for(let n in t.attrs)e.setAttribute(ro.has(n)?n:Hr(n),t.attrs[n])}function oo(e,t,n){let r=Ya(e,t,n);for(let n in e)if(K(e[n])||K(t[n])){let t=Tn.indexOf(n)===-1?n:`attr`+n.charAt(0).toUpperCase()+n.substring(1);r[t]=e[n]}return r}var so=class extends va{constructor(){super(...arguments),this.type=`svg`,this.isSVGTag=!1,this.measureInstanceViewportBox=J}getBaseTargetFromProps(e,t){return e[t]}readValueFromInstance(e,t){if(En.has(t)){let e=li(t);return e&&e.default||0}return t=ro.has(t)?t:Hr(t),e.getAttribute(t)}scrapeMotionValuesFromProps(e,t,n){return oo(e,t,n)}build(e,t,n){no(e,t,this.isSVGTag,n.transformTemplate,n.style)}renderInstance(e,t,n,r){ao(e,t,n,r)}mount(e){this.isSVGTag=io(e.tagName),super.mount(e)}},co=la.length;function lo(e){if(!e)return;if(!e.isControllingVariants){let t=e.parent&&lo(e.parent)||{};return e.props.initial!==void 0&&(t.initial=e.props.initial),t}let t={};for(let n=0;n<co;n++){let r=la[n],i=e.props[r];(sa(i)||i===!1)&&(t[r]=i)}return t}function uo(e,t){if(!Array.isArray(t))return!1;let n=t.length;if(n!==e.length)return!1;for(let r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0}var fo=[...ca].reverse(),po=ca.length;function mo(e){return t=>Promise.all(t.map(({animation:t,options:n})=>Yr(e,t,n)))}function ho(e){let t=mo(e),n=vo(),r=!0,i=!1,a=t=>(n,r)=>{let i=G(e,r,t===`exit`?e.presenceContext?.custom:void 0);if(i){let{transition:e,transitionEnd:t,...r}=i;n={...n,...r,...t}}return n};function o(n){t=n(e)}function s(o){let{props:s}=e,c=lo(e.parent)||{},l=[],u=new Set,d={},f=1/0;for(let t=0;t<po;t++){let p=fo[t],m=n[p],h=s[p]===void 0?c[p]:s[p],g=sa(h),_=p===o?m.isActive:null;_===!1&&(f=t);let v=h===c[p]&&h!==s[p]&&g;if(v&&(r||i)&&e.manuallyAnimateOnMount&&(v=!1),m.protectedKeys={...d},!m.isActive&&_===null||!h&&!m.prevProp||oa(h)||typeof h==`boolean`)continue;if(p===`exit`&&m.isActive&&_!==!0){m.prevResolvedValues&&(d={...d,...m.prevResolvedValues});continue}let y=go(m.prevProp,h),b=y||p===o&&m.isActive&&!v&&g||t>f&&g,x=!1,S=Array.isArray(h)?h:[h],C=S.reduce(a(p),{});_===!1&&(C={});let{prevResolvedValues:w={}}=m,T={...w,...C},E=t=>{b=!0,u.has(t)&&(x=!0,u.delete(t)),m.needsAnimating[t]=!0;let n=e.getValue(t);n&&(n.liveStyle=!1)};for(let e in T){let t=C[e],n=w[e];if(d.hasOwnProperty(e))continue;let r=!1;r=Ir(t)&&Ir(n)?!uo(t,n)||y:t!==n,r?t==null?u.add(e):E(e):t!==void 0&&u.has(e)?E(e):m.protectedKeys[e]=!0}m.prevProp=h,m.prevResolvedValues=C,m.isActive&&(d={...d,...C}),(r||i)&&e.blockInitialAnimation&&(b=!1);let ee=v&&y;b&&(!ee||x)&&l.push(...S.map(t=>{let n={type:p};if(typeof t==`string`&&(r||i)&&!ee&&e.manuallyAnimateOnMount&&e.parent){let{parent:r}=e,i=G(r,t);if(r.enteringChildren&&i){let{delayChildren:t}=i.transition||{};n.delay=mr(r.enteringChildren,e,t)}}return{animation:t,options:n}}))}if(u.size){let t={};if(typeof s.initial!=`boolean`){let n=G(e,Array.isArray(s.initial)?s.initial[0]:s.initial);n&&n.transition&&(t.transition=n.transition)}u.forEach(n=>{let r=e.getBaseTarget(n),i=e.getValue(n);i&&(i.liveStyle=!0),t[n]=r??null}),l.push({animation:t})}let p=!!l.length;return r&&(s.initial===!1||s.initial===s.animate)&&!e.manuallyAnimateOnMount&&(p=!1),r=!1,i=!1,p?t(l):Promise.resolve()}function c(t,r){if(n[t].isActive===r)return Promise.resolve();e.variantChildren?.forEach(e=>e.animationState?.setActive(t,r)),n[t].isActive=r;let i=s(t);for(let e in n)n[e].protectedKeys={};return i}return{animateChanges:s,setActive:c,setAnimateFunction:o,getState:()=>n,reset:()=>{n=vo(),i=!0}}}function go(e,t){return typeof t==`string`?t!==e:Array.isArray(t)?!uo(t,e):!1}function _o(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function vo(){return{animate:_o(!0),whileInView:_o(),whileHover:_o(),whileTap:_o(),whileDrag:_o(),whileFocus:_o(),exit:_o()}}function yo(e,t){e.min=t.min,e.max=t.max}function Z(e,t){yo(e.x,t.x),yo(e.y,t.y)}function bo(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}var xo=1e-4,So=1-xo,Co=1+xo,wo=.01,To=0-wo,Eo=0+wo;function Q(e){return e.max-e.min}function Do(e,t,n){return Math.abs(e-t)<=n}function Oo(e,t,n,r=.5){e.origin=r,e.originPoint=B(t.min,t.max,e.origin),e.scale=Q(n)/Q(t),e.translate=B(n.min,n.max,e.origin)-e.originPoint,(e.scale>=So&&e.scale<=Co||isNaN(e.scale))&&(e.scale=1),(e.translate>=To&&e.translate<=Eo||isNaN(e.translate))&&(e.translate=0)}function ko(e,t,n,r){Oo(e.x,t.x,n.x,r?r.originX:void 0),Oo(e.y,t.y,n.y,r?r.originY:void 0)}function Ao(e,t,n,r=0){e.min=(r?B(n.min,n.max,r):n.min)+t.min,e.max=e.min+Q(t)}function jo(e,t,n,r){Ao(e.x,t.x,n.x,r?.x),Ao(e.y,t.y,n.y,r?.y)}function Mo(e,t,n,r=0){let i=r?B(n.min,n.max,r):n.min;e.min=t.min-i,e.max=e.min+Q(t)}function No(e,t,n,r){Mo(e.x,t.x,n.x,r?.x),Mo(e.y,t.y,n.y,r?.y)}function Po(e,t,n,r,i){return e-=t,e=Da(e,1/n,r),i!==void 0&&(e=Da(e,1/i,r)),e}function Fo(e,t=0,n=1,r=.5,i,a=e,o=e){if(I.test(t)&&(t=parseFloat(t),t=B(o.min,o.max,t/100)-o.min),typeof t!=`number`)return;let s=B(a.min,a.max,r);e===a&&(s-=t),e.min=Po(e.min,t,n,s,i),e.max=Po(e.max,t,n,s,i)}function Io(e,t,[n,r,i],a,o){Fo(e,t[n],t[r],t[i],t.scale,a,o)}var Lo=[`x`,`scaleX`,`originX`],Ro=[`y`,`scaleY`,`originY`];function zo(e,t,n,r){Io(e.x,t,Lo,n?n.x:void 0,r?r.x:void 0),Io(e.y,t,Ro,n?n.y:void 0,r?r.y:void 0)}function Bo(e){return e.translate===0&&e.scale===1}function Vo(e){return Bo(e.x)&&Bo(e.y)}function Ho(e,t){return e.min===t.min&&e.max===t.max}function Uo(e,t){return Ho(e.x,t.x)&&Ho(e.y,t.y)}function Wo(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function Go(e,t){return Wo(e.x,t.x)&&Wo(e.y,t.y)}function Ko(e){return Q(e.x)/Q(e.y)}function qo(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function $(e){return[e(`x`),e(`y`)]}function Jo(e,t,n){let r=``,i=e.x.translate/t.x,a=e.y.translate/t.y,o=n?.z||0;if((i||a||o)&&(r=`translate3d(${i}px, ${a}px, ${o}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){let{transformPerspective:e,rotate:t,pathRotation:i,rotateX:a,rotateY:o,skewX:s,skewY:c}=n;e&&(r=`perspective(${e}px) ${r}`),t&&(r+=`rotate(${t}deg) `),i&&(r+=`rotate(${i}deg) `),a&&(r+=`rotateX(${a}deg) `),o&&(r+=`rotateY(${o}deg) `),s&&(r+=`skewX(${s}deg) `),c&&(r+=`skewY(${c}deg) `)}let s=e.x.scale*t.x,c=e.y.scale*t.y;return(s!==1||c!==1)&&(r+=`scale(${s}, ${c})`),r||`none`}var Yo=[`borderTopLeftRadius`,`borderTopRightRadius`,`borderBottomLeftRadius`,`borderBottomRightRadius`],Xo=Yo.length,Zo=e=>typeof e==`string`?parseFloat(e):e,Qo=e=>typeof e==`number`||L.test(e);function $o(e,t,n,r,i,a){i?(e.opacity=B(0,n.opacity??1,ts(r)),e.opacityExit=B(t.opacity??1,0,ns(r))):a&&(e.opacity=B(t.opacity??1,n.opacity??1,r));for(let i=0;i<Xo;i++){let a=Yo[i],o=es(t,a),s=es(n,a);o===void 0&&s===void 0||(o||=0,s||=0,o===0||s===0||Qo(o)===Qo(s)?(e[a]=Math.max(B(Zo(o),Zo(s),r),0),(I.test(s)||I.test(o))&&(e[a]+=`%`)):e[a]=s)}(t.rotate||n.rotate)&&(e.rotate=B(t.rotate||0,n.rotate||0,r))}function es(e,t){return e[t]===void 0?e.borderRadius:e[t]}var ts=rs(0,.5,me),ns=rs(.5,.95,w);function rs(e,t,n){return r=>r<e?0:r>t?1:n(E(e,t,r))}function is(e,t,n){let r=K(e)?e:yr(e);return r.start(kr(``,r,t,n)),r.animation}function as(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}var os=(e,t)=>e.depth-t.depth,ss=class{constructor(){this.children=[],this.isDirty=!1}add(e){h(this.children,e),this.isDirty=!0}remove(e){g(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(os),this.isDirty=!1,this.children.forEach(e)}};function cs(e,t){let n=N.now(),r=({timestamp:i})=>{let a=i-n;a>=t&&(j(r),e(a-t))};return A.setup(r,!0),()=>j(r)}function ls(e){return K(e)?e.get():e}var us=class{constructor(){this.members=[]}add(e){h(this.members,e);for(let t=this.members.length-1;t>=0;t--){let n=this.members[t];if(n===e||n===this.lead||n===this.prevLead)continue;let r=n.instance;(!r||r.isConnected===!1)&&!n.snapshot&&(g(this.members,n),n.unmount())}e.scheduleRender()}remove(e){if(g(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){let e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(e){for(let t=this.members.indexOf(e)-1;t>=0;t--){let e=this.members[t];if(e.isPresent!==!1&&e.instance?.isConnected!==!1)return this.promote(e),!0}return!1}promote(e,t){let n=this.lead;if(e!==n&&(this.prevLead=n,this.lead=e,e.show(),n)){n.updateSnapshot(),e.scheduleRender();let{layoutDependency:r}=n.options,{layoutDependency:i}=e.options;(r===void 0||r!==i)&&(e.resumeFrom=n,t&&(n.preserveOpacity=!0),n.snapshot&&(e.snapshot=n.snapshot,e.snapshot.latestValues=n.animationValues||n.latestValues),e.root?.isUpdating&&(e.isLayoutDirty=!0)),e.options.crossfade===!1&&n.hide()}}exitAnimationComplete(){this.members.forEach(e=>{e.options.onExitComplete?.(),e.resumingFrom?.options.onExitComplete?.()})}scheduleRender(){this.members.forEach(e=>e.instance&&e.scheduleRender(!1))}removeLeadSnapshot(){this.lead?.snapshot&&(this.lead.snapshot=void 0)}},ds={hasAnimatedSinceResize:!0,hasEverUpdated:!1},fs={nodes:0,calculatedTargetDeltas:0,calculatedProjections:0},ps=[``,`X`,`Y`,`Z`],ms=1e3,hs=0;function gs(e,t,n,r){let{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function _s(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;let{visualElement:t}=e.options;if(!t)return;let n=Wr(t);if(window.MotionHasOptimisedAnimation(n,`transform`)){let{layout:t,layoutId:r}=e.options;window.MotionCancelOptimisedAnimation(n,`transform`,A,!(t||r))}let{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&_s(r)}function vs({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(e={},n=t?.()){this.id=hs++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,k.value&&(fs.nodes=fs.calculatedTargetDeltas=fs.calculatedProjections=0),this.nodes.forEach(xs),this.nodes.forEach(As),this.nodes.forEach(js),this.nodes.forEach(Ss),k.addProjectionMetrics&&k.addProjectionMetrics(fs)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=e,this.root=n?n.root||n:this,this.path=n?[...n.path,n]:[],this.parent=n,this.depth=n?n.depth+1:0;for(let e=0;e<this.path.length;e++)this.path[e].shouldResetTransform=!0;this.root===this&&(this.nodes=new ss)}addEventListener(e,t){return this.eventHandlers.has(e)||this.eventHandlers.set(e,new ee),this.eventHandlers.get(e).add(t)}notifyListeners(e,...t){let n=this.eventHandlers.get(e);n&&n.notify(...t)}hasListeners(e){return this.eventHandlers.has(e)}mount(t){if(this.instance)return;this.isSVG=Ri(t)&&!$i(t),this.instance=t;let{layoutId:n,layout:r,visualElement:i}=this.options;if(i&&!i.current&&i.mount(t),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(r||n)&&(this.isLayoutDirty=!0),e){let n,r=0,i=()=>this.root.updateBlockedByResize=!1;A.read(()=>{r=window.innerWidth}),e(t,()=>{let e=window.innerWidth;e!==r&&(r=e,this.root.updateBlockedByResize=!0,n&&n(),n=cs(i,250),ds.hasAnimatedSinceResize&&(ds.hasAnimatedSinceResize=!1,this.nodes.forEach(ks)))})}n&&this.root.registerSharedNode(n,this),this.options.animate!==!1&&i&&(n||r)&&this.addEventListener(`didUpdate`,({delta:e,hasLayoutChanged:t,hasRelativeLayoutChanged:n,layout:r})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}let a=this.options.transition||i.getDefaultTransition()||Rs,{onLayoutAnimationStart:o,onLayoutAnimationComplete:s}=i.getProps(),c=!this.targetLayout||!Go(this.targetLayout,r),l=!t&&n;if(this.options.layoutRoot||this.resumeFrom||l||t&&(c||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);let t={...xr(a,`layout`),onPlay:o,onComplete:s};(i.shouldReduceMotion||this.options.layoutRoot)&&(t.delay=0,t.type=!1),this.startAnimation(t),this.setAnimationOrigin(e,l,t.path)}else t||ks(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=r})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);let e=this.getStack();e&&e.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),j(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(Ms),this.animationId++)}getTransformTemplate(){let{visualElement:e}=this.options;return e&&e.getProps().transformTemplate}willUpdate(e=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&_s(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let e=0;e<this.path.length;e++){let t=this.path[e];t.shouldResetTransform=!0,(typeof t.latestValues.x==`string`||typeof t.latestValues.y==`string`)&&(t.isLayoutDirty=!0),t.updateScroll(`snapshot`),t.options.layoutRoot&&t.willUpdate(!1)}let{layoutId:t,layout:n}=this.options;if(t===void 0&&!n)return;let r=this.getTransformTemplate();this.prevTransformTemplateValue=r?r(this.latestValues,``):void 0,this.updateSnapshot(),e&&this.notifyListeners(`willUpdate`)}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){let e=this.updateBlockedByResize;this.unblockUpdate(),this.updateBlockedByResize=!1,this.clearAllSnapshots(),e&&this.nodes.forEach(Ts),this.nodes.forEach(ws);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(Es);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(Ds),this.nodes.forEach(Os),this.nodes.forEach(ys),this.nodes.forEach(bs)):this.nodes.forEach(Es),this.clearAllSnapshots();let e=N.now();M.delta=_(0,1e3/60,e-M.timestamp),M.timestamp=e,M.isProcessing=!0,Oe.update.process(M),Oe.preRender.process(M),Oe.render.process(M),M.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,vi.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(Cs),this.sharedNodes.forEach(Ns)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,A.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){A.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Q(this.snapshot.measuredBox.x)&&!Q(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let e=0;e<this.path.length;e++)this.path[e].updateScroll();let e=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected||=J(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners(`measure`,this.layout.layoutBox);let{visualElement:t}=this.options;t&&t.notify(`LayoutMeasure`,this.layout.layoutBox,e?e.layoutBox:void 0)}updateScroll(e=`measure`){let t=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===e&&(t=!1),t&&this.instance){let t=r(this.instance);this.scroll={animationId:this.root.animationId,phase:e,isRoot:t,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:t}}}resetTransform(){if(!i)return;let e=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,t=this.projectionDelta&&!Vo(this.projectionDelta),n=this.getTransformTemplate(),r=n?n(this.latestValues,``):void 0,a=r!==this.prevTransformTemplateValue;e&&this.instance&&(t||wa(this.latestValues)||a)&&(i(this.instance,r),this.shouldResetTransform=!1,this.scheduleRender())}measure(e=!0){let t=this.measurePageBox(),n=this.removeElementScroll(t);return e&&(n=this.removeTransform(n)),Hs(n),{animationId:this.root.animationId,measuredBox:t,layoutBox:n,latestValues:{},source:this.id}}measurePageBox(){let{visualElement:e}=this.options;if(!e)return J();let t=e.measureViewportBox();if(!(this.scroll?.wasRoot||this.path.some(Ws))){let{scroll:e}=this.root;e&&(X(t.x,e.offset.x),X(t.y,e.offset.y))}return t}removeElementScroll(e){let t=J();if(Z(t,e),this.scroll?.wasRoot)return t;for(let n=0;n<this.path.length;n++){let r=this.path[n],{scroll:i,options:a}=r;r!==this.root&&i&&a.layoutScroll&&(i.wasRoot&&Z(t,e),X(t.x,i.offset.x),X(t.y,i.offset.y))}return t}applyTransform(e,t=!1,n){let r=n||J();Z(r,e);for(let e=0;e<this.path.length;e++){let n=this.path[e];!t&&n.options.layoutScroll&&n.scroll&&n!==n.root&&(X(r.x,-n.scroll.offset.x),X(r.y,-n.scroll.offset.y)),wa(n.latestValues)&&Ia(r,n.latestValues,n.layout?.layoutBox)}return wa(this.latestValues)&&Ia(r,this.latestValues,this.layout?.layoutBox),r}removeTransform(e){let t=J();Z(t,e);for(let e=0;e<this.path.length;e++){let n=this.path[e];if(!wa(n.latestValues))continue;let r;n.instance&&(Ca(n.latestValues)&&n.updateSnapshot(),r=J(),Z(r,n.measurePageBox())),zo(t,n.latestValues,n.snapshot?.layoutBox,r)}return wa(this.latestValues)&&zo(t,this.latestValues),t}setTargetDelta(e){this.targetDelta=e,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(e){this.options={...this.options,...e,crossfade:e.crossfade===void 0?!0:e.crossfade}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==M.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(e=!1){let t=this.getLead();this.isProjectionDirty||=t.isProjectionDirty,this.isTransformDirty||=t.isTransformDirty,this.isSharedProjectionDirty||=t.isSharedProjectionDirty;let n=!!this.resumingFrom||this!==t;if(!(e||n&&this.isSharedProjectionDirty||this.isProjectionDirty||this.parent?.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;let{layout:r,layoutId:i}=this.options;if(!this.layout||!(r||i))return;this.resolvedRelativeTargetAt=M.timestamp;let a=this.getClosestProjectingParent();a&&this.linkedParentVersion!==a.layoutVersion&&!a.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(this.options.layoutAnchor!==!1&&a&&a.layout?this.createRelativeTarget(a,this.layout.layoutBox,a.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=J(),this.targetWithTransforms=J()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),jo(this.target,this.relativeTarget,this.relativeParent.target,this.options.layoutAnchor||void 0)):this.targetDelta?(this.resumingFrom?this.applyTransform(this.layout.layoutBox,!1,this.target):Z(this.target,this.layout.layoutBox),Aa(this.target,this.targetDelta)):Z(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,this.options.layoutAnchor!==!1&&a&&!!a.resumingFrom==!!this.resumingFrom&&!a.options.layoutScroll&&a.target&&this.animationProgress!==1?this.createRelativeTarget(a,this.target,a.target):this.relativeParent=this.relativeTarget=void 0),k.value&&fs.calculatedTargetDeltas++)}getClosestProjectingParent(){if(!(!this.parent||Ca(this.parent.latestValues)||Ta(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(e,t,n){this.relativeParent=e,this.linkedParentVersion=e.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=J(),this.relativeTargetOrigin=J(),No(this.relativeTargetOrigin,t,n,this.options.layoutAnchor||void 0),Z(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){let e=this.getLead(),t=!!this.resumingFrom||this!==e,n=!0;if((this.isProjectionDirty||this.parent?.isProjectionDirty)&&(n=!1),t&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(n=!1),this.resolvedRelativeTargetAt===M.timestamp&&(n=!1),n)return;let{layout:r,layoutId:i}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(r||i))return;Z(this.layoutCorrected,this.layout.layoutBox);let a=this.treeScale.x,o=this.treeScale.y;Na(this.layoutCorrected,this.treeScale,this.path,t),e.layout&&!e.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(e.target=e.layout.layoutBox,e.targetWithTransforms=J());let{target:s}=e;if(!s){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(bo(this.prevProjectionDelta.x,this.projectionDelta.x),bo(this.prevProjectionDelta.y,this.projectionDelta.y)),ko(this.projectionDelta,this.layoutCorrected,s,this.latestValues),(this.treeScale.x!==a||this.treeScale.y!==o||!qo(this.projectionDelta.x,this.prevProjectionDelta.x)||!qo(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners(`projectionUpdate`,s)),k.value&&fs.calculatedProjections++}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(e=!0){if(this.options.visualElement?.scheduleRender(),e){let e=this.getStack();e&&e.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=ra(),this.projectionDelta=ra(),this.projectionDeltaWithTransform=ra()}setAnimationOrigin(e,t=!1,n){let r=this.snapshot,i=r?r.latestValues:{},a={...this.latestValues},o=ra();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!t;let s=J(),c=(r?r.source:void 0)!==(this.layout?this.layout.source:void 0),l=this.getStack(),u=!l||l.members.length<=1,d=!!(c&&!u&&this.options.crossfade===!0&&!this.path.some(Ls));this.animationProgress=0;let f,p=n?.interpolateProjection(e);this.mixTargetDelta=t=>{let n=t/1e3,r=p?.(n);r?(o.x.translate=r.x,o.x.scale=B(e.x.scale,1,n),o.x.origin=e.x.origin,o.x.originPoint=e.x.originPoint,o.y.translate=r.y,o.y.scale=B(e.y.scale,1,n),o.y.origin=e.y.origin,o.y.originPoint=e.y.originPoint):(Ps(o.x,e.x,n),Ps(o.y,e.y,n)),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(No(s,this.layout.layoutBox,this.relativeParent.layout.layoutBox,this.options.layoutAnchor||void 0),Is(this.relativeTarget,this.relativeTargetOrigin,s,n),f&&Uo(this.relativeTarget,f)&&(this.isProjectionDirty=!1),f||=J(),Z(f,this.relativeTarget)),c&&(this.animationValues=a,$o(a,i,this.latestValues,n,d,u)),r&&r.rotate!==void 0&&(this.animationValues||=a,this.animationValues.pathRotation=r.rotate),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=n},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(e){this.notifyListeners(`animationStart`),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&=(j(this.pendingAnimation),void 0),this.pendingAnimation=A.update(()=>{ds.hasAnimatedSinceResize=!0,je.layout++,this.motionValue||=yr(0),this.motionValue.jump(0,!1),this.currentAnimation=is(this.motionValue,[0,1e3],{...e,velocity:0,isSync:!0,onUpdate:t=>{this.mixTargetDelta(t),e.onUpdate&&e.onUpdate(t)},onStop:()=>{je.layout--},onComplete:()=>{je.layout--,e.onComplete&&e.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);let e=this.getStack();e&&e.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners(`animationComplete`)}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(ms),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){let e=this.getLead(),{targetWithTransforms:t,target:n,layout:r,latestValues:i}=e;if(!(!t||!n||!r)){if(this!==e&&this.layout&&r&&Us(this.options.animationType,this.layout.layoutBox,r.layoutBox)){n=this.target||J();let t=Q(this.layout.layoutBox.x);n.x.min=e.target.x.min,n.x.max=n.x.min+t;let r=Q(this.layout.layoutBox.y);n.y.min=e.target.y.min,n.y.max=n.y.min+r}Z(t,n),Ia(t,i),ko(this.projectionDeltaWithTransform,this.layoutCorrected,t,i)}}registerSharedNode(e,t){this.sharedNodes.has(e)||this.sharedNodes.set(e,new us),this.sharedNodes.get(e).add(t);let n=t.options.initialPromotionConfig;t.promote({transition:n?n.transition:void 0,preserveFollowOpacity:n&&n.shouldPreserveFollowOpacity?n.shouldPreserveFollowOpacity(t):void 0})}isLead(){let e=this.getStack();return e?e.lead===this:!0}getLead(){let{layoutId:e}=this.options;return e&&this.getStack()?.lead||this}getPrevLead(){let{layoutId:e}=this.options;return e?this.getStack()?.prevLead:void 0}getStack(){let{layoutId:e}=this.options;if(e)return this.root.sharedNodes.get(e)}promote({needsReset:e,transition:t,preserveFollowOpacity:n}={}){let r=this.getStack();r&&r.promote(this,n),e&&(this.projectionDelta=void 0,this.needsReset=!0),t&&this.setOptions({transition:t})}relegate(){let e=this.getStack();return e?e.relegate(this):!1}resetSkewAndRotation(){let{visualElement:e}=this.options;if(!e)return;let t=!1,{latestValues:n}=e;if((n.z||n.rotate||n.rotateX||n.rotateY||n.rotateZ||n.skewX||n.skewY)&&(t=!0),!t)return;let r={};n.z&&gs(`z`,e,r,this.animationValues);for(let t=0;t<ps.length;t++)gs(`rotate${ps[t]}`,e,r,this.animationValues),gs(`skew${ps[t]}`,e,r,this.animationValues);e.render();for(let t in r)e.setStaticValue(t,r[t]),this.animationValues&&(this.animationValues[t]=r[t]);e.scheduleRender()}applyProjectionStyles(e,t){if(!this.instance||this.isSVG)return;if(!this.isVisible){e.visibility=`hidden`;return}let n=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,e.visibility=``,e.opacity=``,e.pointerEvents=ls(t?.pointerEvents)||``,e.transform=n?n(this.latestValues,``):`none`;return}let r=this.getLead();if(!this.projectionDelta||!this.layout||!r.target){this.options.layoutId&&(e.opacity=this.latestValues.opacity===void 0?1:this.latestValues.opacity,e.pointerEvents=ls(t?.pointerEvents)||``),this.hasProjected&&!wa(this.latestValues)&&(e.transform=n?n({},``):`none`,this.hasProjected=!1);return}e.visibility=``;let i=r.animationValues||r.latestValues;this.applyTransformsToTarget();let a=Jo(this.projectionDeltaWithTransform,this.treeScale,i);n&&(a=n(i,a)),e.transform=a;let{x:o,y:s}=this.projectionDelta;e.transformOrigin=`${o.origin*100}% ${s.origin*100}% 0`,r.animationValues?e.opacity=r===this?i.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:i.opacityExit:e.opacity=r===this?i.opacity===void 0?``:i.opacity:i.opacityExit===void 0?0:i.opacityExit;for(let t in qa){if(i[t]===void 0)continue;let{correct:n,applyTo:o,isCSSVariable:s}=qa[t],c=a===`none`?i[t]:n(i[t],r);if(o){let t=o.length;for(let n=0;n<t;n++)e[o[n]]=c}else s?this.options.visualElement.renderState.vars[t]=c:e[t]=c}this.options.layoutId&&(e.pointerEvents=r===this?ls(t?.pointerEvents)||``:`none`)}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(e=>e.currentAnimation?.stop()),this.root.nodes.forEach(ws),this.root.sharedNodes.clear()}}}function ys(e){e.updateLayout()}function bs(e){let t=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners(`didUpdate`)){let{layoutBox:n,measuredBox:r}=e.layout,{animationType:i}=e.options,a=t.source!==e.layout.source;if(i===`size`)$(e=>{let r=a?t.measuredBox[e]:t.layoutBox[e],i=Q(r);r.min=n[e].min,r.max=r.min+i});else if(i===`x`||i===`y`){let e=i===`x`?`y`:`x`;yo(a?t.measuredBox[e]:t.layoutBox[e],n[e])}else Us(i,t.layoutBox,n)&&$(r=>{let i=a?t.measuredBox[r]:t.layoutBox[r],o=Q(n[r]);i.max=i.min+o,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[r].max=e.relativeTarget[r].min+o)});let o=ra();ko(o,n,t.layoutBox);let s=ra();a?ko(s,e.applyTransform(r,!0),t.measuredBox):ko(s,n,t.layoutBox);let c=!Vo(o),l=!1;if(!e.resumeFrom){let r=e.getClosestProjectingParent();if(r&&!r.resumeFrom){let{snapshot:i,layout:a}=r;if(i&&a){let o=e.options.layoutAnchor||void 0,s=J();No(s,t.layoutBox,i.layoutBox,o);let c=J();No(c,n,a.layoutBox,o),Go(s,c)||(l=!0),r.options.layoutRoot&&(e.relativeTarget=c,e.relativeTargetOrigin=s,e.relativeParent=r)}}}e.notifyListeners(`didUpdate`,{layout:n,snapshot:t,delta:s,layoutDelta:o,hasLayoutChanged:c,hasRelativeLayoutChanged:l})}else if(e.isLead()){let{onExitComplete:t}=e.options;t&&t()}e.options.transition=void 0}function xs(e){k.value&&fs.nodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty),e.isTransformDirty||=e.parent.isTransformDirty)}function Ss(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function Cs(e){e.clearSnapshot()}function ws(e){e.clearMeasurements()}function Ts(e){e.isLayoutDirty=!0,e.updateLayout()}function Es(e){e.isLayoutDirty=!1}function Ds(e){e.isAnimationBlocked&&e.layout&&!e.isLayoutDirty&&(e.snapshot=e.layout,e.isLayoutDirty=!0)}function Os(e){let{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify(`BeforeLayoutMeasure`),e.resetTransform()}function ks(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function As(e){e.resolveTargetDelta()}function js(e){e.calcProjection()}function Ms(e){e.resetSkewAndRotation()}function Ns(e){e.removeLeadSnapshot()}function Ps(e,t,n){e.translate=B(t.translate,0,n),e.scale=B(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Fs(e,t,n,r){e.min=B(t.min,n.min,r),e.max=B(t.max,n.max,r)}function Is(e,t,n,r){Fs(e.x,t.x,n.x,r),Fs(e.y,t.y,n.y,r)}function Ls(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}var Rs={duration:.45,ease:[.4,0,.1,1]},zs=e=>typeof navigator<`u`&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Bs=zs(`applewebkit/`)&&!zs(`chrome/`)?Math.round:w;function Vs(e){e.min=Bs(e.min),e.max=Bs(e.max)}function Hs(e){Vs(e.x),Vs(e.y)}function Us(e,t,n){return e===`position`||e===`preserve-aspect`&&!Do(Ko(t),Ko(n),.2)}function Ws(e){return e!==e.root&&e.scroll?.wasRoot}var Gs=vs({attachResizeListener:(e,t)=>as(e,`resize`,t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),Ks={current:void 0},qs=vs({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!Ks.current){let e=new Gs({});e.mount(window),e.setOptions({layoutScroll:!0}),Ks.current=e}return Ks.current},resetTransform:(e,t)=>{e.style.transform=t===void 0?`none`:t},checkIsScrollRoot:e=>window.getComputedStyle(e).position===`fixed`}),Js=(0,u.createContext)({transformPagePoint:e=>e,isStatic:!1,reducedMotion:`never`});function Ys(e=!0){let t=(0,u.useContext)(m);if(t===null)return[!0,null];let{isPresent:n,onExitComplete:r,register:i}=t,a=(0,u.useId)();(0,u.useEffect)(()=>{if(e)return i(a)},[e]);let o=(0,u.useCallback)(()=>e&&r&&r(a),[a,r,e]);return!n&&r?[!1,o]:[!0]}var Xs=(0,u.createContext)({strict:!1}),Zs={animation:[`animate`,`variants`,`whileHover`,`whileTap`,`exit`,`whileInView`,`whileFocus`,`whileDrag`],exit:[`exit`],drag:[`drag`,`dragControls`],focus:[`whileFocus`],hover:[`whileHover`,`onHoverStart`,`onHoverEnd`],tap:[`whileTap`,`onTap`,`onTapStart`,`onTapCancel`],pan:[`onPan`,`onPanStart`,`onPanSessionStart`,`onPanEnd`],inView:[`whileInView`,`onViewportEnter`,`onViewportLeave`],layout:[`layout`,`layoutId`]},Qs=!1;function $s(){if(Qs)return;let e={};for(let t in Zs)e[t]={isEnabled:e=>Zs[t].some(t=>!!e[t])};ha(e),Qs=!0}function ec(){return $s(),ga()}function tc(e){let t=ec();for(let n in e)t[n]={...t[n],...e[n]};ha(t)}var nc=new Set(`animate.exit.variants.initial.style.values.variants.transition.transformTemplate.custom.inherit.onBeforeLayoutMeasure.onAnimationStart.onAnimationComplete.onUpdate.onDragStart.onDrag.onDragEnd.onMeasureDragConstraints.onDirectionLock.onDragTransitionEnd._dragX._dragY.onHoverStart.onHoverEnd.onViewportEnter.onViewportLeave.globalTapTarget.propagate.ignoreStrict.viewport`.split(`.`));function rc(e){return e.startsWith(`while`)||e.startsWith(`drag`)&&e!==`draggable`||e.startsWith(`layout`)||e.startsWith(`onTap`)||e.startsWith(`onPan`)||e.startsWith(`onLayout`)||nc.has(e)}var ic=r({default:()=>ac}),ac,oc=t((()=>{throw ac={},Error(`Could not resolve "@emotion/is-prop-valid" imported by "framer-motion". Is it installed?`)})),sc=e=>!rc(e);function cc(e){typeof e==`function`&&(sc=t=>t.startsWith(`on`)?!rc(t):e(t))}try{cc((oc(),e(ic)).default)}catch{}function lc(e,t,n){let r={};for(let i in e)i===`values`&&typeof e.values==`object`||K(e[i])||(sc(i)||n===!0&&rc(i)||!t&&!rc(i)||e.draggable&&i.startsWith(`onDrag`))&&(r[i]=e[i]);return r}var uc=(0,u.createContext)({});function dc(e,t){if(ua(e)){let{initial:t,animate:n}=e;return{initial:t===!1||sa(t)?t:void 0,animate:sa(n)?n:void 0}}return e.inherit===!1?{}:t}function fc(e){let{initial:t,animate:n}=dc(e,(0,u.useContext)(uc));return(0,u.useMemo)(()=>({initial:t,animate:n}),[pc(t),pc(n)])}function pc(e){return Array.isArray(e)?e.join(` `):e}var mc=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function hc(e,t,n){for(let r in t)!K(t[r])&&!Ja(r,n)&&(e[r]=t[r])}function gc({transformTemplate:e},t){return(0,u.useMemo)(()=>{let n=mc();return Ha(n,t,e),Object.assign({},n.vars,n.style)},[t])}function _c(e,t){let n=e.style||{},r={};return hc(r,n,e),Object.assign(r,gc(e,t)),r}function vc(e,t){let n={},r=_c(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout=`none`,r.touchAction=e.drag===!0?`none`:`pan-${e.drag===`x`?`y`:`x`}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}var yc=()=>({...mc(),attrs:{}});function bc(e,t,n,r){let i=(0,u.useMemo)(()=>{let n=yc();return no(n,t,io(r),e.transformTemplate,e.style),{...n.attrs,style:{...n.style}}},[t]);if(e.style){let t={};hc(t,e.style,e),i.style={...t,...i.style}}return i}var xc=[`animate`,`circle`,`defs`,`desc`,`ellipse`,`g`,`image`,`line`,`filter`,`marker`,`mask`,`metadata`,`path`,`pattern`,`polygon`,`polyline`,`rect`,`stop`,`switch`,`symbol`,`svg`,`text`,`tspan`,`use`,`view`];function Sc(e){return typeof e!=`string`||e.includes(`-`)?!1:!!(xc.indexOf(e)>-1||/[A-Z]/u.test(e))}function Cc(e,t,n,{latestValues:r},i,a=!1,o){let s=(o??Sc(e)?bc:vc)(t,r,i,e),c=lc(t,typeof e==`string`,a),l=e===u.Fragment?{}:{...c,...s,ref:n},{children:d}=t,f=(0,u.useMemo)(()=>K(d)?d.get():d,[d]);return(0,u.createElement)(e,{...l,children:f})}function wc({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,i){return{latestValues:Tc(n,r,i,e),renderState:t()}}function Tc(e,t,n,r){let i={},a=r(e,{});for(let e in a)i[e]=ls(a[e]);let{initial:o,animate:s}=e,c=ua(e),l=da(e);t&&l&&!c&&e.inherit!==!1&&(o===void 0&&(o=t.initial),s===void 0&&(s=t.animate));let u=n?n.initial===!1:!1;u||=o===!1;let d=u?s:o;if(d&&typeof d!=`boolean`&&!oa(d)){let t=Array.isArray(d)?d:[d];for(let n=0;n<t.length;n++){let r=Pr(e,t[n]);if(r){let{transitionEnd:e,transition:t,...n}=r;for(let e in n){let t=n[e];if(Array.isArray(t)){let e=u?t.length-1:0;t=t[e]}t!==null&&(i[e]=t)}for(let t in e)i[t]=e[t]}}}return i}var Ec=e=>(t,n)=>{let r=(0,u.useContext)(uc),i=(0,u.useContext)(m),a=()=>wc(e,t,r,i);return n?a():f(a)},Dc=Ec({scrapeMotionValuesFromProps:Ya,createRenderState:mc}),Oc=Ec({scrapeMotionValuesFromProps:oo,createRenderState:yc}),kc=Symbol.for(`motionComponentSymbol`);function Ac(e,t,n){let r=(0,u.useRef)(n);(0,u.useInsertionEffect)(()=>{r.current=n});let i=(0,u.useRef)(null);return(0,u.useCallback)(n=>{n&&e.onMount?.(n),t&&(n?t.mount(n):t.unmount());let a=r.current;if(typeof a==`function`)if(n){let e=a(n);typeof e==`function`&&(i.current=e)}else i.current?(i.current(),i.current=null):a(n);else a&&(a.current=n)},[t])}var jc=(0,u.createContext)({});function Mc(e){return e&&typeof e==`object`&&Object.prototype.hasOwnProperty.call(e,`current`)}function Nc(e,t,n,r,i,a){let{visualElement:o}=(0,u.useContext)(uc),s=(0,u.useContext)(Xs),c=(0,u.useContext)(m),l=(0,u.useContext)(Js),d=l.reducedMotion,f=l.skipAnimations,h=(0,u.useRef)(null),g=(0,u.useRef)(!1);r||=s.renderer,!h.current&&r&&(h.current=r(e,{visualState:t,parent:o,props:n,presenceContext:c,blockInitialAnimation:c?c.initial===!1:!1,reducedMotionConfig:d,skipAnimations:f,isSVG:a}),g.current&&h.current&&(h.current.manuallyAnimateOnMount=!0));let _=h.current,v=(0,u.useContext)(jc);_&&!_.projection&&i&&(_.type===`html`||_.type===`svg`)&&Pc(h.current,n,i,v);let y=(0,u.useRef)(!1);(0,u.useInsertionEffect)(()=>{_&&y.current&&_.update(n,c)});let b=n[Ur],x=(0,u.useRef)(!!b&&typeof window<`u`&&!window.MotionHandoffIsComplete?.(b)&&window.MotionHasOptimisedAnimation?.(b));return p(()=>{g.current=!0,_&&(y.current=!0,window.MotionIsMounted=!0,_.updateFeatures(),_.scheduleRenderMicrotask(),x.current&&_.animationState&&_.animationState.animateChanges())}),(0,u.useEffect)(()=>{_&&(!x.current&&_.animationState&&_.animationState.animateChanges(),x.current&&=(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(b)}),!1),_.enteringChildren=void 0)}),_}function Pc(e,t,n,r){let{layoutId:i,layout:a,drag:o,dragConstraints:s,layoutScroll:c,layoutRoot:l,layoutAnchor:u,layoutCrossfade:d}=t;e.projection=new n(e.latestValues,t[`data-framer-portal-id`]?void 0:Fc(e.parent)),e.projection.setOptions({layoutId:i,layout:a,alwaysMeasureLayout:!!o||s&&Mc(s),visualElement:e,animationType:typeof a==`string`?a:`both`,initialPromotionConfig:r,crossfade:d,layoutScroll:c,layoutRoot:l,layoutAnchor:u})}function Fc(e){if(e)return e.options.allowProjection===!1?Fc(e.parent):e.projection}function Ic(e,{forwardMotionProps:t=!1,type:n}={},r,i){r&&tc(r);let a=n?n===`svg`:Sc(e),o=a?Oc:Dc;function s(n,s){let c,d={...(0,u.useContext)(Js),...n,layoutId:Lc(n)},{isStatic:f}=d,p=fc(n),m=o(n,f);if(!f&&typeof window<`u`){Rc(d,r);let t=zc(d);c=t.MeasureLayout,p.visualElement=Nc(e,m,d,i,t.ProjectionNode,a)}return(0,l.jsxs)(uc.Provider,{value:p,children:[c&&p.visualElement?(0,l.jsx)(c,{visualElement:p.visualElement,...d}):null,Cc(e,n,Ac(m,p.visualElement,s),m,f,t,a)]})}s.displayName=`motion.${typeof e==`string`?e:`create(${e.displayName??e.name??``})`}`;let c=(0,u.forwardRef)(s);return c[kc]=e,c}function Lc({layoutId:e}){let t=(0,u.useContext)(d).id;return t&&e!==void 0?t+`-`+e:e}function Rc(e,t){(0,u.useContext)(Xs).strict}function zc(e){let{drag:t,layout:n}=ec();if(!t&&!n)return{};let r={...t,...n};return{MeasureLayout:t?.isEnabled(e)||n?.isEnabled(e)?r.MeasureLayout:void 0,ProjectionNode:r.ProjectionNode}}function Bc(e,t){if(typeof Proxy>`u`)return Ic;let n=new Map,r=(n,r)=>Ic(n,r,e,t);return new Proxy((e,t)=>r(e,t),{get:(i,a)=>a===`create`?r:(n.has(a)||n.set(a,Ic(a,void 0,e,t)),n.get(a))})}var Vc=(e,t)=>t.isSVG??Sc(e)?new so(t):new Za(t,{allowProjection:e!==u.Fragment}),Hc=class extends Y{constructor(e){super(e),e.animationState||=ho(e)}updateAnimationControlsSubscription(){let{animate:e}=this.node.getProps();oa(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){let{animate:e}=this.node.getProps(),{animate:t}=this.node.prevProps||{};e!==t&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}},Uc=0,Wc={animation:{Feature:Hc},exit:{Feature:class extends Y{constructor(){super(...arguments),this.id=Uc++,this.isExitComplete=!1}update(){if(!this.node.presenceContext)return;let{isPresent:e,onExitComplete:t}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===n)return;if(e&&n===!1){if(this.isExitComplete){let{initial:e,custom:t}=this.node.getProps();if(typeof e==`string`||typeof e==`object`&&e&&!Array.isArray(e)){let n=G(this.node,e,t);if(n){let{transition:e,transitionEnd:t,...r}=n;for(let e in r)this.node.getValue(e)?.jump(r[e])}}this.node.animationState.reset(),this.node.animationState.animateChanges()}else this.node.animationState.setActive(`exit`,!1);this.isExitComplete=!1;return}let r=this.node.animationState.setActive(`exit`,!e);t&&!e&&r.then(()=>{this.isExitComplete=!0,t(this.id)})}mount(){let{register:e,onExitComplete:t}=this.node.presenceContext||{};t&&t(this.id),e&&(this.unmount=e(this.id))}unmount(){}}}};function Gc(e){return{point:{x:e.pageX,y:e.pageY}}}var Kc=e=>t=>Ei(t)&&e(t,Gc(t));function qc(e,t,n,r){return as(e,t,Kc(n),r)}var Jc=({current:e})=>e?e.ownerDocument.defaultView:null,Yc=(e,t)=>Math.abs(e-t);function Xc(e,t){let n=Yc(e.x,t.x),r=Yc(e.y,t.y);return Math.sqrt(n**2+r**2)}var Zc=new Set([`auto`,`scroll`]),Qc=class{constructor(e,t,{transformPagePoint:n,contextWindow:r=window,dragSnapToOrigin:i=!1,distanceThreshold:a=3,element:o}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.lastRawMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=e=>{this.handleScroll(e.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;this.lastRawMoveEventInfo&&(this.lastMoveEventInfo=$c(this.lastRawMoveEventInfo,this.transformPagePoint));let e=tl(this.lastMoveEventInfo,this.history),t=this.startEvent!==null,n=Xc(e.offset,{x:0,y:0})>=this.distanceThreshold;if(!t&&!n)return;let{point:r}=e,{timestamp:i}=M;this.history.push({...r,timestamp:i});let{onStart:a,onMove:o}=this.handlers;t||(a&&a(this.lastMoveEvent,e),this.startEvent=this.lastMoveEvent),o&&o(this.lastMoveEvent,e)},this.handlePointerMove=(e,t)=>{this.lastMoveEvent=e,this.lastRawMoveEventInfo=t,this.lastMoveEventInfo=$c(t,this.transformPagePoint),A.update(this.updatePoint,!0)},this.handlePointerUp=(e,t)=>{this.end();let{onEnd:n,onSessionEnd:r,resumeAnimation:i}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&i&&i(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;let a=tl(e.type===`pointercancel`?this.lastMoveEventInfo:$c(t,this.transformPagePoint),this.history);this.startEvent&&n&&n(e,a),r&&r(e,a)},!Ei(e))return;this.dragSnapToOrigin=i,this.handlers=t,this.transformPagePoint=n,this.distanceThreshold=a,this.contextWindow=r||window;let s=$c(Gc(e),this.transformPagePoint),{point:c}=s,{timestamp:l}=M;this.history=[{...c,timestamp:l}];let{onSessionStart:u}=t;u&&u(e,tl(s,this.history)),this.removeListeners=T(qc(this.contextWindow,`pointermove`,this.handlePointerMove),qc(this.contextWindow,`pointerup`,this.handlePointerUp),qc(this.contextWindow,`pointercancel`,this.handlePointerUp)),o&&this.startScrollTracking(o)}startScrollTracking(e){let t=e.parentElement;for(;t;){let e=getComputedStyle(t);(Zc.has(e.overflowX)||Zc.has(e.overflowY))&&this.scrollPositions.set(t,{x:t.scrollLeft,y:t.scrollTop}),t=t.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener(`scroll`,this.onElementScroll,{capture:!0}),window.addEventListener(`scroll`,this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener(`scroll`,this.onElementScroll,{capture:!0}),window.removeEventListener(`scroll`,this.onWindowScroll)}}handleScroll(e){let t=this.scrollPositions.get(e);if(!t)return;let n=e===window,r=n?{x:window.scrollX,y:window.scrollY}:{x:e.scrollLeft,y:e.scrollTop},i={x:r.x-t.x,y:r.y-t.y};i.x===0&&i.y===0||(n?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=i.x,this.lastMoveEventInfo.point.y+=i.y):this.history.length>0&&(this.history[0].x-=i.x,this.history[0].y-=i.y),this.scrollPositions.set(e,r),A.update(this.updatePoint,!0))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),j(this.updatePoint)}};function $c(e,t){return t?{point:t(e.point)}:e}function el(e,t){return{x:e.x-t.x,y:e.y-t.y}}function tl({point:e},t){return{point:e,delta:el(e,rl(t)),offset:el(e,nl(t)),velocity:il(t,.1)}}function nl(e){return e[0]}function rl(e){return e[e.length-1]}function il(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null,i=rl(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>D(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&i.timestamp-r.timestamp>D(t)*2&&(r=e[1]);let a=O(i.timestamp-r.timestamp);if(a===0)return{x:0,y:0};let o={x:(i.x-r.x)/a,y:(i.y-r.y)/a};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function al(e,{min:t,max:n},r){return t!==void 0&&e<t?e=r?B(t,e,r.min):Math.max(e,t):n!==void 0&&e>n&&(e=r?B(n,e,r.max):Math.min(e,n)),e}function ol(e,t,n){return{min:t===void 0?void 0:e.min+t,max:n===void 0?void 0:e.max+n-(e.max-e.min)}}function sl(e,{top:t,left:n,bottom:r,right:i}){return{x:ol(e.x,n,i),y:ol(e.y,t,r)}}function cl(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,r]=[r,n]),{min:n,max:r}}function ll(e,t){return{x:cl(e.x,t.x),y:cl(e.y,t.y)}}function ul(e,t){let n=.5,r=Q(e),i=Q(t);return i>r?n=E(t.min,t.max-r,e.min):r>i&&(n=E(e.min,e.max-i,t.min)),_(0,1,n)}function dl(e,t){let n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}var fl=.35;function pl(e=fl){return e===!1?e=0:e===!0&&(e=fl),{x:ml(e,`left`,`right`),y:ml(e,`top`,`bottom`)}}function ml(e,t,n){return{min:hl(e,t),max:hl(e,n)}}function hl(e,t){return typeof e==`number`?e:e[t]||0}var gl=new WeakMap,_l=class{constructor(e){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=J(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=e}start(e,{snapToCursor:t=!1,distanceThreshold:n}={}){let{presenceContext:r}=this.visualElement;if(r&&r.isPresent===!1)return;let i=e=>{t&&this.snapToCursor(Gc(e).point),this.stopAnimation()},a=(e,t)=>{let{drag:n,dragPropagation:r,onDragStart:i}=this.getProps();if(n&&!r&&(this.openDragLock&&this.openDragLock(),this.openDragLock=xi(n),!this.openDragLock))return;this.latestPointerEvent=e,this.latestPanInfo=t,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),$(e=>{let t=this.getAxisMotionValue(e).get()||0;if(I.test(t)){let{projection:n}=this.visualElement;if(n&&n.layout){let r=n.layout.layoutBox[e];r&&(t=Q(r)*(parseFloat(t)/100))}}this.originPoint[e]=t}),i&&A.update(()=>i(e,t),!1,!0),Vr(this.visualElement,`transform`);let{animationState:a}=this.visualElement;a&&a.setActive(`whileDrag`,!0)},o=(e,t)=>{this.latestPointerEvent=e,this.latestPanInfo=t;let{dragPropagation:n,dragDirectionLock:r,onDirectionLock:i,onDrag:a}=this.getProps();if(!n&&!this.openDragLock)return;let{offset:o}=t;if(r&&this.currentDirection===null){this.currentDirection=xl(o),this.currentDirection!==null&&i&&i(this.currentDirection);return}this.updateAxis(`x`,t.point,o),this.updateAxis(`y`,t.point,o),this.visualElement.render(),a&&A.update(()=>a(e,t),!1,!0)},s=(e,t)=>{this.latestPointerEvent=e,this.latestPanInfo=t,this.stop(e,t),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>{let{dragSnapToOrigin:e}=this.getProps();(e||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:l}=this.getProps();this.panSession=new Qc(e,{onSessionStart:i,onStart:a,onMove:o,onSessionEnd:s,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:l,distanceThreshold:n,contextWindow:Jc(this.visualElement),element:this.visualElement.current})}stop(e,t){let n=e||this.latestPointerEvent,r=t||this.latestPanInfo,i=this.isDragging;if(this.cancel(),!i||!r||!n)return;let{velocity:a}=r;this.startAnimation(a);let{onDragEnd:o}=this.getProps();o&&A.postRender(()=>o(n,r))}cancel(){this.isDragging=!1;let{projection:e,animationState:t}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.endPanSession();let{dragPropagation:n}=this.getProps();!n&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),t&&t.setActive(`whileDrag`,!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(e,t,n){let{drag:r}=this.getProps();if(!n||!bl(e,r,this.currentDirection))return;let i=this.getAxisMotionValue(e),a=this.originPoint[e]+n[e];this.constraints&&this.constraints[e]&&(a=al(a,this.constraints[e],this.elastic[e])),i.set(a)}resolveConstraints(){let{dragConstraints:e,dragElastic:t}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,r=this.constraints;e&&Mc(e)?this.constraints||=this.resolveRefConstraints():e&&n?this.constraints=sl(n.layoutBox,e):this.constraints=!1,this.elastic=pl(t),r!==this.constraints&&!Mc(e)&&n&&this.constraints&&!this.hasMutatedConstraints&&$(e=>{this.constraints!==!1&&this.getAxisMotionValue(e)&&(this.constraints[e]=dl(n.layoutBox[e],this.constraints[e]))})}resolveRefConstraints(){let{dragConstraints:e,onMeasureDragConstraints:t}=this.getProps();if(!e||!Mc(e))return!1;let n=e.current,{projection:r}=this.visualElement;if(!r||!r.layout)return!1;r.root&&(r.root.scroll=void 0,r.root.updateScroll());let i=Ra(n,r.root,this.visualElement.getTransformPagePoint()),a=ll(r.layout.layoutBox,i);if(t){let e=t(ba(a));this.hasMutatedConstraints=!!e,e&&(a=ya(e))}return a}startAnimation(e){let{drag:t,dragMomentum:n,dragElastic:r,dragTransition:i,dragSnapToOrigin:a,onDragTransitionEnd:o}=this.getProps(),s=this.constraints||{},c=$(o=>{if(!bl(o,t,this.currentDirection))return;let c=s&&s[o]||{};(a===!0||a===o)&&(c={min:0,max:0});let l=r?200:1e6,u=r?40:1e7,d={type:`inertia`,velocity:n?e[o]:0,bounceStiffness:l,bounceDamping:u,timeConstant:750,restDelta:1,restSpeed:10,...i,...c};return this.startAxisValueAnimation(o,d)});return Promise.all(c).then(o)}startAxisValueAnimation(e,t){let n=this.getAxisMotionValue(e);return Vr(this.visualElement,e),n.start(kr(e,n,0,t,this.visualElement,!1))}stopAnimation(){$(e=>this.getAxisMotionValue(e).stop())}getAxisMotionValue(e){let t=`_drag${e.toUpperCase()}`;return this.visualElement.getProps()[t]||this.visualElement.getValue(e,this.visualElement.latestValues[e]??0)}snapToCursor(e){$(t=>{let{drag:n}=this.getProps();if(!bl(t,n,this.currentDirection))return;let{projection:r}=this.visualElement,i=this.getAxisMotionValue(t);if(r&&r.layout){let{min:n,max:a}=r.layout.layoutBox[t],o=i.get()||0;i.set(e[t]-B(n,a,.5)+o)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;let{drag:e,dragConstraints:t}=this.getProps(),{projection:n}=this.visualElement;if(!Mc(t)||!n||!this.constraints)return;this.stopAnimation();let r={x:0,y:0};$(e=>{let t=this.getAxisMotionValue(e);if(t&&this.constraints!==!1){let n=t.get();r[e]=ul({min:n,max:n},this.constraints[e])}});let{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},``):`none`,n.root&&n.root.updateScroll(),n.updateLayout(),this.constraints=!1,this.resolveConstraints(),$(t=>{if(!bl(t,e,null))return;let n=this.getAxisMotionValue(t),{min:i,max:a}=this.constraints[t];n.set(B(i,a,r[t]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;gl.set(this.visualElement,this);let e=this.visualElement.current,t=qc(e,`pointerdown`,t=>{let{drag:n,dragListener:r=!0}=this.getProps(),i=t.target,a=i!==e&&Ai(i);n&&r&&!a&&this.start(t)}),n,r=()=>{let{dragConstraints:t}=this.getProps();Mc(t)&&t.current&&(this.constraints=this.resolveRefConstraints(),n||=yl(e,t.current,()=>this.scalePositionWithinConstraints()))},{projection:i}=this.visualElement,a=i.addEventListener(`measure`,r);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),A.read(r);let o=as(window,`resize`,()=>this.scalePositionWithinConstraints()),s=i.addEventListener(`didUpdate`,(({delta:e,hasLayoutChanged:t})=>{this.isDragging&&t&&($(t=>{let n=this.getAxisMotionValue(t);n&&(this.originPoint[t]+=e[t].translate,n.set(n.get()+e[t].translate))}),this.visualElement.render())}));return()=>{o(),t(),a(),s&&s(),n&&n()}}getProps(){let e=this.visualElement.getProps(),{drag:t=!1,dragDirectionLock:n=!1,dragPropagation:r=!1,dragConstraints:i=!1,dragElastic:a=fl,dragMomentum:o=!0}=e;return{...e,drag:t,dragDirectionLock:n,dragPropagation:r,dragConstraints:i,dragElastic:a,dragMomentum:o}}};function vl(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function yl(e,t,n){let r=Qi(e,vl(n)),i=Qi(t,vl(n));return()=>{r(),i()}}function bl(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function xl(e,t=10){let n=null;return Math.abs(e.y)>t?n=`y`:Math.abs(e.x)>t&&(n=`x`),n}var Sl=class extends Y{constructor(e){super(e),this.removeGroupControls=w,this.removeListeners=w,this.controls=new _l(e)}mount(){let{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||w}update(){let{dragControls:e}=this.node.getProps(),{dragControls:t}=this.node.prevProps||{};e!==t&&(this.removeGroupControls(),e&&(this.removeGroupControls=e.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}},Cl=e=>(t,n)=>{e&&A.update(()=>e(t,n),!1,!0)},wl=class extends Y{constructor(){super(...arguments),this.removePointerDownListener=w}onPointerDown(e){this.session=new Qc(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Jc(this.node)})}createPanHandlers(){let{onPanSessionStart:e,onPanStart:t,onPan:n,onPanEnd:r}=this.node.getProps();return{onSessionStart:Cl(e),onStart:Cl(t),onMove:Cl(n),onEnd:(e,t)=>{delete this.session,r&&A.postRender(()=>r(e,t))}}}mount(){this.removePointerDownListener=qc(this.node.current,`pointerdown`,e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}},Tl=!1,El=class extends u.Component{componentDidMount(){let{visualElement:e,layoutGroup:t,switchLayoutGroup:n,layoutId:r}=this.props,{projection:i}=e;i&&(t.group&&t.group.add(i),n&&n.register&&r&&n.register(i),Tl&&i.root.didUpdate(),i.addEventListener(`animationComplete`,()=>{this.safeToRemove()}),i.setOptions({...i.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),ds.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){let{layoutDependency:t,visualElement:n,drag:r,isPresent:i}=this.props,{projection:a}=n;return a?(a.isPresent=i,e.layoutDependency!==t&&a.setOptions({...a.options,layoutDependency:t}),Tl=!0,r||e.layoutDependency!==t||t===void 0||e.isPresent!==i?a.willUpdate():this.safeToRemove(),e.isPresent!==i&&(i?a.promote():a.relegate()||A.postRender(()=>{let e=a.getStack();(!e||!e.members.length)&&this.safeToRemove()})),null):null}componentDidUpdate(){let{visualElement:e,layoutAnchor:t}=this.props,{projection:n}=e;n&&(n.options.layoutAnchor=t,n.root.didUpdate(),vi.postRender(()=>{!n.currentAnimation&&n.isLead()&&this.safeToRemove()}))}componentWillUnmount(){let{visualElement:e,layoutGroup:t,switchLayoutGroup:n}=this.props,{projection:r}=e;Tl=!0,r&&(r.scheduleCheckAfterUnmount(),t&&t.group&&t.group.remove(r),n&&n.deregister&&n.deregister(r))}safeToRemove(){let{safeToRemove:e}=this.props;e&&e()}render(){return null}};function Dl(e){let[t,n]=Ys(),r=(0,u.useContext)(d);return(0,l.jsx)(El,{...e,layoutGroup:r,switchLayoutGroup:(0,u.useContext)(jc),isPresent:t,safeToRemove:n})}var Ol={pan:{Feature:wl},drag:{Feature:Sl,ProjectionNode:qs,MeasureLayout:Dl}};function kl(e,t,n){let{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive(`whileHover`,n===`Start`);let i=r[`onHover`+n];i&&A.postRender(()=>i(t,Gc(t)))}var Al=class extends Y{mount(){let{current:e}=this.node;e&&(this.unmount=wi(e,(e,t)=>(kl(this.node,t,`Start`),e=>kl(this.node,e,`End`))))}unmount(){}},jl=class extends Y{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(`:focus-visible`)}catch{e=!0}!e||!this.node.animationState||(this.node.animationState.setActive(`whileFocus`,!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive(`whileFocus`,!1),this.isActive=!1)}mount(){this.unmount=T(as(this.node.current,`focus`,()=>this.onFocus()),as(this.node.current,`blur`,()=>this.onBlur()))}unmount(){}};function Ml(e,t,n){let{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive(`whileTap`,n===`Start`);let i=r[`onTap`+(n===`End`?``:n)];i&&A.postRender(()=>i(t,Gc(t)))}var Nl=class extends Y{mount(){let{current:e}=this.node;if(!e)return;let{globalTapTarget:t,propagate:n}=this.node.props;this.unmount=Li(e,(e,t)=>(Ml(this.node,t,`Start`),(e,{success:t})=>Ml(this.node,e,t?`End`:`Cancel`)),{useGlobalTarget:t,stopPropagation:n?.tap===!1})}unmount(){}},Pl=new WeakMap,Fl=new WeakMap,Il=e=>{let t=Pl.get(e.target);t&&t(e)},Ll=e=>{e.forEach(Il)};function Rl({root:e,...t}){let n=e||document;Fl.has(n)||Fl.set(n,{});let r=Fl.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(Ll,{root:e,...t})),r[i]}function zl(e,t,n){let r=Rl(t);return Pl.set(e,n),r.observe(e),()=>{Pl.delete(e),r.unobserve(e)}}var Bl={some:0,all:1},Vl=class extends Y{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.stopObserver?.();let{viewport:e={}}=this.node.getProps(),{root:t,margin:n,amount:r=`some`,once:i}=e,a={root:t?t.current:void 0,rootMargin:n,threshold:typeof r==`number`?r:Bl[r]},o=e=>{let{isIntersecting:t}=e;if(this.isInView===t||(this.isInView=t,i&&!t&&this.hasEnteredView))return;t&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive(`whileInView`,t);let{onViewportEnter:n,onViewportLeave:r}=this.node.getProps(),a=t?n:r;a&&a(e)};this.stopObserver=zl(this.node.current,a,o)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>`u`)return;let{props:e,prevProps:t}=this.node;[`amount`,`margin`,`root`].some(Hl(e,t))&&this.startObserver()}unmount(){this.stopObserver?.(),this.hasEnteredView=!1,this.isInView=!1}};function Hl({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}var Ul={inView:{Feature:Vl},tap:{Feature:Nl},focus:{Feature:jl},hover:{Feature:Al}},Wl={layout:{ProjectionNode:qs,MeasureLayout:Dl}},Gl=Bc({...Wc,...Ul,...Ol,...Wl},Vc);export{Yr as a,m as c,d,_i as i,p as l,Ys as n,zr as o,Js as r,v as s,Gl as t,f as u};
|