PageSourceSearch

https://honeydewcook.com/assets/index-BatIAEjd.js

js honeydewcook.com collected 2026-10-07 03:27:45 UTC 936,892 bytes, 793 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BmVoW8f5.js","assets/what-is-honeydew-DdIaLWg0.js","assets/free-vs-paid-CII1xzvQ.js","assets/supported-languages-BY7_QHjs.js","assets/recipe-saving-and-copyright-XLsBvwIj.js","assets/add-to-shortcuts-Crgw6UDH.js","assets/getting-the-most-out-NMiUkUNP.js","assets/save-from-instagram-BFDWUxj3.js","assets/save-from-facebook-Bur29co2.js","assets/save-from-youtube-F2ZYQCXL.js","assets/save-from-tiktok-C1mfNFYn.js","assets/save-from-pinterest-FuaFryj_.js","assets/save-from-photos-CJ3s6D0Y.js","assets/save-from-notes-BKhaegWq.js","assets/scan-from-cookbooks-C0gA-qks.js","assets/save-from-screenshots-DDqLGvxA.js","assets/add-to-shortcuts-NDurNBjY.js","assets/save-from-screenshots-3kPUmKrL.js","assets/save-from-instagram-CxV9NlPz.js","assets/save-from-facebook-Tsjcdm0H.js","assets/save-from-youtube-CJe-nMXO.js","assets/save-from-tiktok-Cu1rk5Mb.js","assets/save-from-pinterest-C8eOACMJ.js","assets/how-to-view-original-source-B7G1VvEy.js","assets/how-to-add-notes-BZcZf7vl.js","assets/how-to-delete-recipe-Ct2AkJ3T.js","assets/move-recipe-to-cookbook-BTkJz0Uc.js","assets/remove-recipe-from-cookbook-CqjF591y.js","assets/how-to-search-recipes-CRx9eKm4.js","assets/how-to-create-cookbook-6rCj4a8N.js","assets/translate-recipes-DNjzlmFl.js","assets/print-or-share-recipes-DEA_HOzG.js","assets/multiple-devices-CHE7zy1S.js","assets/chrome-extension-DkD7WeR2.js","assets/use-on-computer-BYcLFIsn.js","assets/nutrition-information-COGexsG4.js","assets/grocery-checkout-B0YkwNkQ.js","assets/original-source-disappears-CRUEJBK0.js","assets/recover-deleted-recipes-JR-Hd_o6.js","assets/ai-edit-BsfsicOb.js","assets/meal-planning-Cs8XjA_3.js","assets/household-sharing-E9s_SK6D.js","assets/offline-mode-6eFPafNN.js","assets/one-time-payment-BMt3Q6XB.js","assets/update-payment-method-Cly6olZv.js","assets/charged-twice-C3NZidyB.js","assets/refund-request-QQOkDizq.js","assets/charged-after-free-trial-WA-T1dkd.js","assets/discounts-Danqvpe6.js","assets/switch-billing-plan-5Umkk_ig.js","assets/what-do-you-get
1-with-honeydew-plus-BuyZ8gZE.js","assets/how-much-does-honeydew-cost-iSBD3YEW.js","assets/how-to-check-subscription-CdJmokRc.js","assets/how-to-subscribe-BgoHOoOS.js","assets/lose-recipes-if-cancel-DD2BFbTG.js","assets/how-to-cancel-D1yNCqdh.js","assets/logged-out-lost-recipes-BwDrKH3w.js","assets/asked-to-subscribe-again-C3Bh0M-O.js","assets/sign-in-web-app-lTmchPZ6.js","assets/sign-out-CZW8LHTa.js","assets/cant-reset-password-qLx3HMr5.js","assets/add-password-social-login-DpI0BkHS.js","assets/switch-to-email-login-Bt4kwawG.js","assets/forgot-password-Ch1YGGC1.js","assets/change-display-name-PlTMqblH.js","assets/delete-account-D_3pw7j-.js","assets/share-account-family-x0gJJa9M.js","assets/contact-honeydew-BGpYNYGU.js","assets/not-in-share-options-ZduHRN49.js","assets/app-keeps-crashing-bOTsdzUS.js","assets/error-saving-recipe-hIRKKVmG.js","assets/report-a-bug-CkKzWP7c.js","assets/index-DkbhHhK5.js","assets/what-is-honeydew-DQ1gRr-7.js","assets/free-vs-paid-C9OaUovI.js","assets/supported-languages-Dm4PL2zs.js","assets/recipe-saving-and-copyright-5nLGMsC7.js","assets/add-to-shortcuts-aXGqd3p9.js","assets/getting-the-most-out-DoR1bHGH.js","assets/save-from-instagram-C-kzpQlG.js","assets/save-from-facebook-Bv6G4700.js","assets/save-from-youtube-CU_wWcwb.js","assets/save-from-tiktok-DOuwS8Qi.js","assets/save-from-pinterest-VxIEJfC6.js","assets/save-from-photos-CD2fkmog.js","assets/save-from-notes-iJqsIo3h.js","assets/scan-from-cookbooks-jeT_kxvx.js","assets/save-from-screenshots-CaAReaPV.js","assets/add-to-shortcuts-D6qryQbT.js","assets/save-from-screenshots-DLECakoR.js","assets/save-from-instagram-CM9DHeJx.js","assets/save-from-facebook-DPW9vR7Y.js","assets/save-from-youtube-BtFfEaLF.js","assets/save-from-tiktok-CtmO_HAO.js","assets/save-from-pinterest-cWy-eo20.js","assets/how-to-view-original-source-C4_9zmV-.js","assets/how-to-add-notes-CRqCTmMU.js","assets/how-to-delete-recipe-DNCBik5f.js","assets/move-recipe-to-cookbook-Ds8dopgP.js","assets/remove-recipe-from-cookbook-CI0ruzaz.js","assets/how-to-search-recipes-DO2nQGRj.js","assets/how-to-create-cookbook-mD1_Ojj4.js","assets/translate-recipes-C-rudp7O.js","assets/print-or-share-recipes-DLovTu6D.js","assets/multiple-devices-zqM1JCOC.js","assets/chrome-extension-DDk1ZFVd.js","assets/use-on-computer-6_XT1Y8h.js","assets/nutrition-information-ByiuWCIO.js","assets/grocery-checkout-C7cwK_L1.js","assets/original-source-disappears-Dq1rfE1Z.js","assets/recover-deleted-recipes-Dll98jDr.js","assets/ai-edit-CY5hz2yu.js","assets/meal-planning-BHNMMlE4.js","assets/household-sharing-CpJD9BBh.js","assets/offline-mode-CFUt_3r_.js","assets/one-time-payment-DqWdJrsx.js","assets/update-payment-method-UTH3qcBB.js","assets/charged-twice-CDSa-6w5.js","assets/refund-request-sykYEYIT.js","assets/charged-after-free-trial-B-u6T5st.js","assets/discounts-D0bwi46G.js","assets/switch-billing-plan-BfUiNdMK.js","assets/what-do-you-get
1-with-honeydew-plus-C7QEUwfR.js","assets/how-much-does-honeydew-cost-fzplM2Bo.js","assets/how-to-check-subscription-BxLTTLy8.js","assets/how-to-subscribe-Cnh-kd4e.js","assets/lose-recipes-if-cancel-DFPLCM7Z.js","assets/how-to-cancel-C8MivmGO.js","assets/logged-out-lost-recipes-BZveILV7.js","assets/asked-to-subscribe-again-CDl6RN09.js","assets/sign-in-web-app-bchSIbpf.js","assets/sign-out-TVbNCIvj.js","assets/cant-reset-password-MnPirKdw.js","assets/add-password-social-login-Bj1abSr0.js","assets/switch-to-email-login-Bv-qrfAz.js","assets/forgot-password-DpESwA3E.js","assets/change-display-name-DsAUHBmV.js","assets/delete-account-CBvtSRNo.js","assets/share-account-family-DHE3gaP5.js","assets/contact-honeydew-xIjObp6Q.js","assets/not-in-share-options-DxBki5Yw.js","assets/app-keeps-crashing-D5YXsaVC.js","assets/error-saving-recipe-D-V1Lh_m.js","assets/report-a-bug-BLgWsq3v.js","assets/index-DtW-PfID.js","assets/what-is-honeydew-CnP2rGvB.js","assets/free-vs-paid-DFYWSs_C.js","assets/supported-languages-9BTHGIur.js","assets/recipe-saving-and-copyright-CIXPU6lh.js","assets/add-to-shortcuts-Dbi5w1Sv.js","assets/getting-the-most-out-Spr1yEo0.js","assets/save-from-instagram-ISUN-qx5.js","assets/save-from-facebook-DZVtMS4A.js","assets/save-from-youtube-C4bL2s6z.js","assets/save-from-tiktok-SFBkH_AE.js","assets/save-from-pinterest-Cil6ae8v.js","assets/save-from-photos-NjxgWYM_.js","assets/save-from-notes-CJw2xPf_.js","assets/scan-from-cookbooks-DX3EekIy.js","assets/save-from-screenshots-o73b7Or1.js","assets/add-to-shortcuts-BLAHC7u2.js","assets/save-from-screenshots-Oek9wnjt.js","assets/save-from-instagram-CUFcLnEk.js","assets/save-from-facebook-DyKD7ujN.js","assets/save-from-youtube-6xdNWfSq.js","assets/save-from-tiktok-ClfX0Y9Z.js","assets/save-from-pinterest-D_7tRuFy.js","assets/how-to-view-original-source-IXXEMnOW.js","assets/how-to-add-notes-idk2KZxF.js","assets/how-to-delete-recipe-D5BUC3U0.js","assets/move-recipe-to-cookbook-C2zx4MT2.js","assets/remove-recipe-from-cookbook-qbFb33dQ.js","assets/how-to-search-recipes-CnuROnM8.js","assets/how-to-create-cookbook-D0ymwzPy.js","assets/translate-recipes-c2KjK2k-.js","assets/print-or-share-recipes-TrNmABMI.js","assets/multiple-devices-vZJAqwzk.js","assets/chrome-extension-CtVkUFIc.js","assets/use-on-computer-DQvZcOMD.js","assets/nutrition-information-BJqFcFCt.js","assets/grocery-checkout-0BNY74E5.js","assets/original-source-disappears-CSSkWU0f.js","assets/recover-deleted-recipes-CRqdUBGV.js","assets/ai-edit-DfUwWujh.js","assets/meal-planning-DpSSZKLI.js","assets/household-sharing-CAm_SAyk.js","assets/offline-mode-Bfvno3qJ.js","assets/one-time-payment-DQb9vHkS.js","assets/update-payment-method-HXBDp1X3.js","assets/charged-twice-BKD-ZATn.js","assets/refund-request-C0IB4liN.js","assets/charged-after-free-trial-DJmCficR.js","assets/discounts-DRrqXf4o.js","assets/switch-billing-plan-DQilPIk4.js","assets/what-do-you-get
1-with-honeydew-plus-BnpxX_3q.js","assets/how-much-does-honeydew-cost-D4N5W3E0.js","assets/how-to-check-subscription-DtyUg1dD.js","assets/how-to-subscribe-DgKNyKJX.js","assets/lose-recipes-if-cancel-Cc8Jmjd-.js","assets/how-to-cancel-BUXmucGf.js","assets/logged-out-lost-recipes-Q-iJTvbn.js","assets/asked-to-subscribe-again-DVTgiv1R.js","assets/sign-in-web-app-60cjCNOC.js","assets/sign-out-B16iiLVK.js","assets/cant-reset-password-CMER1cRJ.js","assets/add-password-social-login-CJYnS9Sb.js","assets/switch-to-email-login-kOUbX0C5.js","assets/forgot-password-DSqE7TMl.js","assets/change-display-name-DB92L8kL.js","assets/delete-account-lqioEj3p.js","assets/share-account-family-Dz89_SRX.js","assets/contact-honeydew-CdBdi6XH.js","assets/not-in-share-options-CfdTAYgk.js","assets/app-keeps-crashing-BUopI-AG.js","assets/error-saving-recipe-D_RZwS8e.js","assets/report-a-bug-CclQEcA_.js","assets/index-CQmL7Aoc.js","assets/what-is-honeydew-CVAzZM1o.js","assets/free-vs-paid-Yvl5FtE-.js","assets/supported-languages-BNQI7R2K.js","assets/recipe-saving-and-copyright-BYM9xyOZ.js","assets/add-to-shortcuts-Bd7Lr2WA.js","assets/getting-the-most-out-C8X2VLGS.js","assets/save-from-instagram-DjTcD1rG.js","assets/save-from-facebook-BidEa-tY.js","assets/save-from-youtube-D_c9Si9g.js","assets/save-from-tiktok-DOPm57-x.js","assets/save-from-pinterest-DBvGePtZ.js","assets/save-from-photos-C5JOiqTA.js","assets/save-from-notes-xhCWzwYy.js","assets/scan-from-cookbooks-BirBa322.js","assets/save-from-screenshots-D4NV-wBG.js","assets/add-to-shortcuts-CbSl_739.js","assets/save-from-screenshots-VICgphcc.js","assets/save-from-instagram-0lvL_ljH.js","assets/save-from-facebook-B2e_0j6B.js","assets/save-from-youtube-BY9BsDCH.js","assets/save-from-tiktok-Biukmh-s.js","assets/save-from-pinterest-DzfeId_8.js","assets/how-to-view-original-source-4xHWOybA.js","assets/how-to-add-notes-C7UmoFXC.js","assets/how-to-delete-recipe-D6cjz4o6.js","assets/move-recipe-to-cookbook-B-XxKw_a.js","assets/remove-recipe-from-cookbook-BpEZ2upH.js","assets/how-to-search-recipes-DJxG_krN.js","assets/how-to-create-cookbook-BHM63MpO.js","assets/translate-recipes-qojJ6b_F.js","assets/print-or-share-recipes-CBIGWJhh.js","assets/multiple-devices-CuVTduQ-.js","assets/chrome-extension-5wDc8qpZ.js","assets/use-on-computer-C2rQuyZN.js","assets/nutrition-information-Br_Z-K30.js","assets/grocery-checkout-BKnLoyFb.js","assets/original-source-disappears-b0ipUYre.js","assets/recover-deleted-recipes-DG2QMJJW.js","assets/ai-edit-0keWdId5.js","assets/meal-planning-0iKq7F1l.js","assets/household-sharing-BE0wdC03.js","assets/offline-mode-jUxgHsfg.js","assets/one-time-payment-DdIi6ihR.js","assets/update-payment-method-CfiDLr42.js","assets/charged-twice-BzcmJ66u.js","assets/refund-request-BpEk3d7U.js","assets/charged-after-free-trial-Cri8qAC-.js","assets/discounts-CU2P8vQ0.js","assets/switch-billing-plan-B70y6TZd.js","assets/what-do-you-get
1-with-honeydew-plus-D6frsAQo.js","assets/how-much-does-honeydew-cost-CevTlRq6.js","assets/how-to-check-subscription-DfEYkNbw.js","assets/how-to-subscribe-DyJw82te.js","assets/lose-recipes-if-cancel-Bq5WbToU.js","assets/how-to-cancel-CJ_BEFWt.js","assets/logged-out-lost-recipes-ADQM_nfv.js","assets/asked-to-subscribe-again-DH8YEtmw.js","assets/sign-in-web-app-BFniD3-s.js","assets/sign-out-CiW9Q9u3.js","assets/cant-reset-password-DGDMyQZa.js","assets/add-password-social-login-DJBeihXg.js","assets/switch-to-email-login-CxQfKKcC.js","assets/forgot-password-BiWCtPU0.js","assets/change-display-name-BKFbOpQ7.js","assets/delete-account-6LY57P1F.js","assets/share-account-family-BKV3UBBo.js","assets/contact-honeydew-DQXkZxCn.js","assets/not-in-share-options-B1g9HpAg.js","assets/app-keeps-crashing-DuTHwkL_.js","assets/error-saving-recipe-DpChvWZz.js","assets/report-a-bug-BjXZFSmm.js","assets/index-Bp4pYDko.js","assets/what-is-honeydew-9TG8KEiD.js","assets/free-vs-paid-3TYZ3wUQ.js","assets/supported-languages-D0IzKteV.js","assets/recipe-saving-and-copyright-o5ek5gPe.js","assets/add-to-shortcuts-D3OZg99Y.js","assets/getting-the-most-out-K11WgyTw.js","assets/save-from-instagram-f3fIfc22.js","assets/save-from-facebook-7EyQHc0A.js","assets/save-from-youtube-DqSlcT49.js","assets/save-from-tiktok-WN8Ko7lW.js","assets/save-from-pinterest-B20g3mg-.js","assets/save-from-photos-i9BFNnsb.js","assets/save-from-notes-m1KUZUOR.js","assets/scan-from-cookbooks-CU85rmni.js","assets/save-from-screenshots-nfY5K5NS.js","assets/add-to-shortcuts-C0ZhXkg7.js","assets/save-from-screenshots-CEtpz1kX.js","assets/save-from-instagram-Dsu7G68E.js","assets/save-from-facebook-DFzblTuS.js","assets/save-from-youtube-C4xqr3yL.js","assets/save-from-tiktok-B4e30yiY.js","assets/save-from-pinterest-Bpr5ngqp.js","assets/how-to-view-original-source-BV6aOPGT.js","assets/how-to-add-notes-BjORaIaL.js","assets/how-to-delete-recipe-DM1jLyWi.js","assets/move-recipe-to-cookbook-O88TaQbE.js","assets/remove-recipe-from-cookbook-Bx8rfMKe.js","assets/how-to-search-recipes-D1DioI2S.js","assets/how-to-create-cookbook-BtfLkkNg.js","assets/translate-recipes-BovDzXIJ.js","assets/print-or-share-recipes-DJYu6z5l.js","assets/multiple-devices-CSFBCPSX.js","assets/chrome-extension-CfU5N9q3.js","assets/use-on-computer-CoVJNhfb.js","assets/nutrition-information-CWL-lrjb.js","assets/grocery-checkout-CkUi3p-6.js","assets/original-source-disappears-Cc2Jcg-G.js","assets/recover-deleted-recipes-Dq0u5ASX.js","assets/ai-edit-BDhf-ZAw.js","assets/meal-planning-Cy243aEl.js","assets/household-sharing-Bchl9SR1.js","assets/offline-mode-BMJmy4ct.js","assets/one-time-payment-BusGoBoR.js","assets/update-payment-method-CF6giUR0.js","assets/charged-twice-B8J_Q2Nt.js","assets/refund-request-DHt5D6HF.js","assets/charged-after-free-trial-miI30Ll_.js","assets/discounts-DXGrKddZ.js","assets/switch-billing-plan-GraHt2Zd.js","assets/what-do-you-get
1-with-honeydew-plus-BtfU_QPX.js","assets/how-much-does-honeydew-cost-BOpRfY_s.js","assets/how-to-check-subscription-V7StvXGg.js","assets/how-to-subscribe-BLMKZqmq.js","assets/lose-recipes-if-cancel-CrL0S--Q.js","assets/how-to-cancel-ClFB7ZSd.js","assets/logged-out-lost-recipes-Bfqh5YPh.js","assets/asked-to-subscribe-again-BjLaTnUN.js","assets/sign-in-web-app-BOnCSQ3l.js","assets/sign-out-DVlXPpL0.js","assets/cant-reset-password-DSlx9Q4c.js","assets/add-password-social-login-B5mc94oF.js","assets/switch-to-email-login-Bj6XPvGX.js","assets/forgot-password-CJC4_6nT.js","assets/change-display-name-CmNUDgc1.js","assets/delete-account-COQuODEv.js","assets/share-account-family-BmRyBMHG.js","assets/contact-honeydew-SMs08Icc.js","assets/not-in-share-options-rpkBIJKw.js","assets/app-keeps-crashing-pv35Ey_a.js","assets/error-saving-recipe-6yhokedi.js","assets/report-a-bug-DzQhBOD7.js","assets/index-CrwUIkyX.js","assets/what-is-honeydew-9BkXnUhA.js","assets/free-vs-paid-CBTgy_ML.js","assets/supported-languages-B8hnkEkH.js","assets/recipe-saving-and-copyright-1RvZUZLW.js","assets/add-to-shortcuts-AZCisOwH.js","assets/getting-the-most-out-DHmDv635.js","assets/save-from-instagram-CU5QCnkd.js","assets/save-from-facebook-DpDKAEPf.js","assets/save-from-youtube-ByArEDex.js","assets/save-from-tiktok-D_xeKO8Q.js","assets/save-from-pinterest-CNQort5T.js","assets/save-from-photos-Bem000Mi.js","assets/save-from-notes-BG2RJkcE.js","assets/scan-from-cookbooks-CvBL1qeD.js","assets/save-from-screenshots-nBOqBP5x.js","assets/add-to-shortcuts-BuWKxGw0.js","assets/save-from-screenshots-BAu9sfov.js","assets/save-from-instagram-0cyt88Wl.js","assets/save-from-facebook-DK8zeDSs.js","assets/save-from-youtube-BgUWVj19.js","assets/save-from-tiktok-Bc3npvsk.js","assets/save-from-pinterest-Bd6FALB7.js","assets/how-to-view-original-source-Bt8xU-bU.js","assets/how-to-add-notes-CCbxuRay.js","assets/how-to-delete-recipe-DMZNHqaH.js","assets/move-recipe-to-cookbook-DetJBSop.js","assets/remove-recipe-from-cookbook-B57MZ8Ro.js","assets/how-to-search-recipes-rjaM2IBl.js","assets/how-to-create-cookbook-B0Mz1J0E.js","assets/translate-recipes-DG_gePy9.js","assets/print-or-share-recipes-5XNMdsIN.js","assets/multiple-devices-krDxbtd6.js","assets/chrome-extension-BxV1j7dU.js","assets/use-on-computer-rDXekxAB.js","assets/nutrition-information-D6jJKldK.js","assets/grocery-checkout-DWvfTZUA.js","assets/original-source-disappears-C9HI_Usl.js","assets/recover-deleted-recipes-njW7Z6zy.js","assets/ai-edit-BiftZtli.js","assets/meal-planning-CJxTiFPd.js","assets/household-sharing-HHO1tQR9.js","assets/offline-mode-BJ_smPr1.js","assets/one-time-payment-DT_YJpGe.js","assets/update-payment-method-D3RZca07.js","assets/charged-twice-DCGqxKHP.js","assets/refund-request-CR00q9_B.js","assets/charged-after-free-trial-CCUxhE0r.js","assets/discounts-BKkPsH_G.js","assets/switch-billing-plan-28afbEmr.js","assets/what-do-you-get
1-with-honeydew-plus-BwlznFCH.js","assets/how-much-does-honeydew-cost-CtdBBQys.js","assets/how-to-check-subscription-BDTCYnyR.js","assets/how-to-subscribe-CSbpvzHc.js","assets/lose-recipes-if-cancel-BIGe8vY1.js","assets/how-to-cancel-BP8hzU5Y.js","assets/logged-out-lost-recipes-BHJ5JGzV.js","assets/asked-to-subscribe-again-Civ0QCWv.js","assets/sign-in-web-app-hO83ILbv.js","assets/sign-out-cxF2FNED.js","assets/cant-reset-password-BmehWZvQ.js","assets/add-password-social-login-BTZfj2zV.js","assets/switch-to-email-login-DJ2Kvr0T.js","assets/forgot-password-Bqo6CEcA.js","assets/change-display-name-36FS7Nrh.js","assets/delete-account-DAzJ2EQC.js","assets/share-account-family-uqNzJCz0.js","assets/contact-honeydew-Db82CQ6Y.js","assets/not-in-share-options-Begvv1p-.js","assets/app-keeps-crashing-PMbyAlCc.js","assets/error-saving-recipe-DPUKWI2U.js","assets/report-a-bug-BYJbCmsa.js"])))=>i.map(i=>d[i]);
2var Gx=Object.defineProperty;var Rd=t=>{throw TypeError(t)};var Kx=(t,e,r)=>e in t?Gx(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var St=(t,e,r)=>Kx(t,typeof e!="symbol"?e+"":e,r),Fa=(t,e,r)=>e.has(t)||Rd("Cannot "+r);var P=(t,e,r)=>(Fa(t,e,"read from private field"),r?r.call(t):e.get(t)),te=(t,e,r)=>e.has(t)?Rd("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),Q=(t,e,r,s)=>(Fa(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),Se=(t,e,r)=>(Fa(t,e,"access private method"),r);var ti=(t,e,r,s)=>({set _(n){Q(t,e,n,r)},get _(){return P(t,e,s)}});import{g as Jl,R as S,r as g,j as i,a as Xl,G as tf,c as F,b as rf,C as Ql,P as sf,I as Zl,d as 
2nf,e as Yx,M as Jx,T as Xx,f as Qx}from"./triangle-alert-QszKJRXq.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))s(n);new MutationObserver(n=>{for(const a of n)if(a.type==="childList")for(const o of a.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function r(n){const a={};return n.integrity&&(a.integrity=n.integrity),n.referrerPolicy&&(a.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?a.credentials="include":n.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function s(n){if(n.ep)return;n.ep=!0;const a=r(n);fetch(n.href,a)}})();var Zx=typeof Element<"u",ev=typeof Map=="function",tv=typeof Set=="function",rv=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function _i(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(t.constructor!==e.constructor)return!1;var r,s,n;if(Array.isArray(t)){if(r=t.length,r!=e.length)return!1;for(s=r;s--!==0;)if(!_i(t[s],e[s]))return!1;return!0}var a;if(ev&&t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(a=t.entries();!(s=a.next()).done;)if(!e.has(s.value[0]))return!1;for(a=t.entries();!(s=a.next()).done;)if(!_i(s.value[1],e.get(s.value[0])))return!1;return!0}if(tv&&t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(a=t.entries();!(s=a.next()).done;)if(!e.has(s.value[0]))return!1;return!0}if(rv&&ArrayBuffer.isView(t)&&ArrayBuffer.isView(e)){if(r=t.length,r!=e.length)return!1;for(s=r;s--!==0;)if(t[s]!==e[s])return!1;return!0}if(t.constructor===RegExp)return t.source===e.source&&t.flags===e.flags;if(t.valueOf!==Object.prototype.valueOf&&typeof t.valueOf=="function"&&typeof e.valueOf=="function")return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString&&typeof t.toString=="function"&&typeof e.toString=="function")return t.toString()===e.toString();if(n=Object.keys(t),r=n.length,r!==Object.keys(e).length)return!1;for(s=r;s--!==0;)if(!Object.prototype.hasOwnProperty.call(e,n[s]))return!1;if(Zx&&t instanceof Element)return!1;for(s=r;s--!==0;)if(!((n[s]==="_owner"||n[s]==="__v"||n[s]==="__o")&&t.$$typeof)&&!_i(t[n[s]],e[n[s]]))return!1;return!0}return t!==t&&e!==e}var sv=function(e,r){try{return _i(e,r)}catch(s){if((s.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw s}};const nv=Jl(sv);var iv=function(t,e,r,s,n,a,o,l){if(!t){var c;if(e===void 0)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var d=[r,s,n,a,o,l],u=0;c=new Error(e.replace(/%s/g,function(){return d[u++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}},av=iv;const Od=Jl(av);var ov=function(e,r,s,n){var a=s?s.call(n,e,r):void 0;if(a!==void 0)return!!a;if(e===r)return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;var o=Object.keys(e),l=Object.keys(r);if(o.length!==l.length)return!1;for(var c=Object.prototype.hasOwnProperty.bind(r),d=0;d<o.length;d++){var u=o[d];if(!c(u))return!1;var p=e[u],h=r[u];if(a=s?s.call(n,p,h,u):void 0,a===!1||a===void 0&&p!==h)return!1}return!0};const lv=Jl(ov);var af=(t=>(t.BASE="base",t.BODY="body",t.HEAD="head",t.HTML="html",t.LINK="link",t.META="meta",t.NOSCRIPT="noscript",t.SCRIPT="script",t.STYLE="style",t.TITLE="title",t.FRAGMENT="Symbol(react.fragment)",t))(af||{}),Ua={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]},meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}},Id=Object.values(af),ec={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},cv=Object.entries(ec).reduce((t,[e,r])=>(t[r]=e,t),{}),ot="data-rh",ms={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},gs=(t,e)=>{for(let r=t.length-1;r>=0;r-=1){const s=t[r];
2if(Object.prototype.hasOwnProperty.call(s,e))return s[e]}return null},dv=t=>{let e=gs(t,"title");const r=gs(t,ms.TITLE_TEMPLATE);if(Array.isArray(e)&&(e=e.join("")),r&&e)return r.replace(/%s/g,()=>e);const s=gs(t,ms.DEFAULT_TITLE);return e||s||void 0},uv=t=>gs(t,ms.ON_CHANGE_CLIENT_STATE)||(()=>{}),Ba=(t,e)=>e.filter(r=>typeof r[t]<"u").map(r=>r[t]).reduce((r,s)=>({...r,...s}),{}),hv=(t,e)=>e.filter(r=>typeof r.base<"u").map(r=>r.base).reverse().reduce((r,s)=>{if(!r.length){const n=Object.keys(s);for(let a=0;a<n.length;a+=1){const l=n[a].toLowerCase();if(t.indexOf(l)!==-1&&s[l])return r.concat(s)}}return r},[]),pv=t=>console&&typeof console.warn=="function"&&console.warn(t),Xs=(t,e,r)=>{const s={};return r.filter(n=>Array.isArray(n[t])?!0:(typeof n[t]<"u"&&pv(`Helmet: ${t} should be of type "Array". Instead found type "${typeof n[t]}"`),!1)).map(n=>n[t]).reverse().reduce((n,a)=>{const o={};a.filter(c=>{let d;const u=Object.keys(c);for(let h=0;h<u.length;h+=1){const f=u[h],x=f.toLowerCase();e.indexOf(x)!==-1&&!(d==="rel"&&c[d].toLowerCase()==="canonical")&&!(x==="rel"&&c[x].toLowerCase()==="stylesheet")&&(d=x),e.indexOf(f)!==-1&&(f==="innerHTML"||f==="cssText"||f==="itemprop")&&(d=f)}if(!d||!c[d])return!1;const p=c[d].toLowerCase();return s[d]||(s[d]={}),o[d]||(o[d]={}),s[d][p]?!1:(o[d][p]=!0,!0)}).reverse().forEach(c=>n.push(c));const l=Object.keys(o);for(let c=0;c<l.length;c+=1){const d=l[c],u={...s[d],...o[d]};s[d]=u}return n},[]).reverse()},fv=(t,e)=>{if(Array.isArray(t)&&t.length){for(let r=0;r<t.length;r+=1)if(t[r][e])return!0}return!1},mv=t=>({baseTag:hv(["href"],t),bodyAttributes:Ba("bodyAttributes",t),defer:gs(t,ms.DEFER),encode:gs(t,ms.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:Ba("htmlAttributes",t),linkTags:Xs("link",["rel","href"],t),metaTags:Xs("meta",["name","charset","http-equiv","property","itemprop"],t),noscriptTags:Xs("noscript",["innerHTML"],t),onChangeClientState:uv(t),scriptTags:Xs("script",["src","innerHTML"],t),styleTags:Xs("style",["cssText"],t),title:dv(t),titleAttributes:Ba("titleAttributes",t),prioritizeSeoTags:fv(t,ms.PRIORITIZE_SEO_TAGS)}),of=t=>Array.isArray(t)?t.join(""):t,gv=(t,e)=>{const r=Object.keys(t);for(let s=0;s<r.length;s+=1)if(e[r[s]]&&e[r[s]].includes(t[r[s]]))return!0;return!1},za=(t,e)=>Array.isArray(t)?t.reduce((r,s)=>(gv(s,e)?r.priority.push(s):r.default.push(s),r),{priority:[],default:[]}):{default:t,priority:[]},Dd=(t,e)=>({...t,[e]:void 0}),yv=["noscript","script","style"],Ho=(t,e=!0)=>e===!1?String(t):String(t).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;"),lf=t=>Object.keys(t).reduce((e,r)=>{const s=typeof t[r]<"u"?`${r}="${t[r]}"`:`${r}`;return e?`${e} ${s}`:s},""),xv=(t,e,r,s)=>{const n=lf(r),a=of(e);return n?`<${t} ${ot}="true" ${n}>${Ho(a,s)}</${t}>`:`<${t} ${ot}="true">${Ho(a,s)}</${t}>`},vv=(t,e,r=!0)=>e.reduce((s,n)=>{const a=n,o=Object.keys(a).filter(d=>!(d==="innerHTML"||d==="cssText")).reduce((d,u)=>{const p=typeof a[u]>
2"u"?u:`${u}="${Ho(a[u],r)}"`;return d?`${d} ${p}`:p},""),l=a.innerHTML||a.cssText||"",c=yv.indexOf(t)===-1;return`${s}<${t} ${ot}="true" ${o}${c?"/>":`>${l}</${t}>`}`},""),cf=(t,e={})=>Object.keys(t).reduce((r,s)=>{const n=ec[s];return r[n||s]=t[s],r},e),bv=(t,e,r)=>{const s={key:e,[ot]:!0},n=cf(r,s);return[S.createElement("title",n,e)]},ji=(t,e)=>e.map((r,s)=>{const n={key:s,[ot]:!0};return Object.keys(r).forEach(a=>{const l=ec[a]||a;if(l==="innerHTML"||l==="cssText"){const c=r.innerHTML||r.cssText;n.dangerouslySetInnerHTML={__html:c}}else n[l]=r[a]}),S.createElement(t,n)}),Ge=(t,e,r=!0)=>{switch(t){case"title":return{toComponent:()=>bv(t,e.title,e.titleAttributes),toString:()=>xv(t,e.title,e.titleAttributes,r)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>cf(e),toString:()=>lf(e)};default:return{toComponent:()=>ji(t,e),toString:()=>vv(t,e,r)}}},wv=({metaTags:t,linkTags:e,scriptTags:r,encode:s})=>{const n=za(t,Ua.meta),a=za(e,Ua.link),o=za(r,Ua.script);return{priorityMethods:{toComponent:()=>[...ji("meta",n.priority),...ji("link",a.priority),...ji("script",o.priority)],toString:()=>`${Ge("meta",n.priority,s)} ${Ge("link",a.priority,s)} ${Ge("script",o.priority,s)}`},metaTags:n.default,linkTags:a.default,scriptTags:o.default}},_v=t=>{const{baseTag:e,bodyAttributes:r,encode:s=!0,htmlAttributes:n,noscriptTags:a,styleTags:o,title:l="",titleAttributes:c,prioritizeSeoTags:d}=t;let{linkTags:u,metaTags:p,scriptTags:h}=t,f={toComponent:()=>{},toString:()=>""};return d&&({priorityMethods:f,linkTags:u,metaTags:p,scriptTags:h}=wv(t)),{priority:f,base:Ge("base",e,s),bodyAttributes:Ge("bodyAttributes",r,s),htmlAttributes:Ge("htmlAttributes",n,s),link:Ge("link",u,s),meta:Ge("meta",p,s),noscript:Ge("noscript",a,s),script:Ge("script",h,s),style:Ge("style",o,s),title:Ge("title",{title:l,titleAttributes:c},s)}},Wo=_v,ri=[],df=!!(typeof window<"u"&&window.document&&window.document.createElement),qo=class{constructor(t,e){St(this,"instances",[]);St(this,"canUseDOM",df);St(this,"context");St(this,"value",{setHelmet:t=>{this.context.helmet=t},helmetInstances:{get:()=>this.canUseDOM?ri:this.instances,add:t=>{(this.canUseDOM?ri:this.instances).push(t)},remove:t=>{const e=(this.canUseDOM?ri:this.instances).indexOf(t);(this.canUseDOM?ri:this.instances).splice(e,1)}}});this.context=t,this.canUseDOM=e||!1,e||(t.helmet=Wo({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},jv={},uf=S.createContext(jv),Pr,hf=(Pr=class extends g.Component{constructor(r){super(r);St(this,"helmetData");this.helmetData=new qo(this.props.context||{},Pr.canUseDOM)}render(){return S.createElement(uf.Provider,{value:this.helmetData.value},this.props.children)}},St(Pr,"canUseDOM",df),Pr),Gr=(t,e)=>{const r=document.head||document.querySelector("head"),s=r.querySelectorAll(`${t}[${ot}]`),n=[].slice.call(s),a=[];let o;return e&&e.length&&e.forEach(l=>{const c=document.createElement(t);for(const d in l)if(Object.prototype.hasOwnProperty.call(l,d))if(d==="innerHTML")c.innerHTML=l.innerHTML;else if(d==="cssText")c.styleSheet?c.styleSheet.cssText=l.cssText:c.appendChild(document.createTextNode(l.cssText));else{const u=d,p=typeof l[u]>"u"?"":l[u];c.setAttribute(d,p)}c.setAttribute(ot,"true"),n.some((d,u)=>(o=u,c.isEqualNode(d)))?n.splice(o,1):a.push(c)}),n.forEach(l=>{var c;return(c=l.parentNode)==null?void 0:c.removeChild(l)}),a.forEach(l=>r.appendChild(l)),{oldTags:n,newTags:a}},Go=(t,e)=>{const r=document.getElementsByTagName(t)[0];if(!r)return;const s=r.getAttribute(ot),n=s?s.split(","):[],a=[...n],o=Object.keys(e);for(const l of o){const c=e[l]||"";r.getAttribute(l)!==c&&r.setAttribute(l,c),n.indexOf(l)===-1&&n.push(l);const d=a.indexOf(l);d!==-1&&a.splice(d,1)}for(let l=a.length-1;l>=0;l-=1)r.removeAttribute(a[l]);n.length===a.length?r.removeAttribute(ot):r.getAttribute(ot)!==o.join(",")&&r.setAttribute(ot,o.join(","))},kv=(t,e)=>{typeof t<"u"&&document.title!==t&&(document.title=of(t)),Go("title",e)},Ld=(t,e)=>{const{baseTag:r,bodyAttributes:s,htmlAttributes:n,linkTags:a,metaTags:o,noscriptTags:l,onChangeClientState:c,scriptTags:d,styleTags:u,title:p,titleAttributes:h}=t;Go("body",s),Go("html",n),kv(p,h);const f={baseTag:Gr("base",r),linkTags:Gr("link",a),metaTags:Gr("meta",o),noscriptTags:Gr("noscript",l),scriptTags:Gr("script",d),styleTags:Gr("style",u)},x={},m={};Object.keys(f).forEach(y=>{const{newTags:b,oldTags:w}=f[y];b.length&&(x[y]=b),w.length&&(m[y]=f[y].oldTags)}),e&&e(),c(t,x,m)},Qs=null,Ev=t=>{Qs&&cancelAnimationFrame(Qs),t.defer?Qs=requestAnimationFrame(()=>{Ld(t,()=>{Qs=null})}):(Ld(t),Qs=null)},Tv=Ev,Md=class extends g.Component{constructor(){super(...arguments);St(this,"rendered",!1)}shouldComponentUpdate(e){return!lv(e,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:e}=this.props.context;e.remove(this),this.emitChange()}emitChange(){const{helmetInstances:e,setHelmet:r}=this.props.context;let s=null;const n=mv(e.get().map(a=>{const o={...a.props};return delete o.context,o}));hf.canUseDOM?Tv(n):Wo&&(s=Wo(n)),r(s)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:e}=this.props.context;e.add(this),this.emitChange()}render(){return this.init(),null}},zo,da=(zo=class extends g.Component{shouldComponentUpdate(t){return!nv(Dd(this.props,"helmetData"),Dd(t,"helmetData"))}mapNestedChildrenToProps(t,e){if(!e)return null;switch(t.type){case"script":case"noscript":return{innerHTML:e};case"style":return{cssText:e};default:throw new Error(`<${t.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(t,e,r,s){return{...e,[t.type]:[...e[t.type]||[],{...r,...this.mapNestedChildrenToProps(t,s)}]}}mapObjectTypeChildren(t,e,r,s){switch(t.type){case"title":return{...e,[t.type]:s,titleAttributes:{...r}};case"body":return{...e,bodyAttributes:{...r}};case"html":return{...e,htmlAttributes:{...r}};default:return{...e,[t.type]:{...r}}}}mapArrayTypeChildrenToProps(t,e){let r={...e};return Object.keys(t).forEach(s=>{r={...r,[s]:t[s]}}),r}
2warnOnInvalidChildren(t,e){return Od(Id.some(r=>t.type===r),typeof t.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${Id.join(", ")} are allowed. Helmet does not support rendering <${t.type}> elements. Refer to our API for more information.`),Od(!e||typeof e=="string"||Array.isArray(e)&&!e.some(r=>typeof r!="string"),`Helmet expects a string as a child of <${t.type}>. Did you forget to wrap your children in braces? ( <${t.type}>{\`\`}</${t.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(t,e){let r={};return S.Children.forEach(t,s=>{if(!s||!s.props)return;const{children:n,...a}=s.props,o=Object.keys(a).reduce((c,d)=>(c[cv[d]||d]=a[d],c),{});let{type:l}=s;switch(typeof l=="symbol"?l=l.toString():this.warnOnInvalidChildren(s,n),l){case"Symbol(react.fragment)":e=this.mapChildrenToProps(n,e);break;case"link":case"meta":case"noscript":case"script":case"style":r=this.flattenArrayTypeChildren(s,r,o,n);break;default:e=this.mapObjectTypeChildren(s,e,o,n);break}}),this.mapArrayTypeChildrenToProps(r,e)}render(){const{children:t,...e}=this.props;let r={...e},{helmetData:s}=e;if(t&&(r=this.mapChildrenToProps(t,r)),s&&!(s instanceof qo)){const n=s;s=new qo(n.context,!0),delete r.helmetData}return s?S.createElement(Md,{...r,context:s.value}):S.createElement(uf.Consumer,null,n=>S.createElement(Md,{...r,context:n}))}},St(zo,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),zo);const Av=1,Nv=1e6;let Ha=0;function Cv(){return Ha=(Ha+1)%Number.MAX_SAFE_INTEGER,Ha.toString()}const Wa=new Map,Vd=t=>{if(Wa.has(t))return;const e=setTimeout(()=>{Wa.delete(t),ln({type:"REMOVE_TOAST",toastId:t})},Nv);Wa.set(t,e)},Sv=(t,e)=>{switch(e.type){case"ADD_TOAST":return{...t,toasts:[e.toast,...t.toasts].slice(0,Av)};case"UPDATE_TOAST":return{...t,toasts:t.toasts.map(r=>r.id===e.toast.id?{...r,...e.toast}:r)};case"DISMISS_TOAST":{const{toastId:r}=e;return r?Vd(r):t.toasts.forEach(s=>{Vd(s.id)}),{...t,toasts:t.toasts.map(s=>
2s.id===r||r===void 0?{...s,open:!1}:s)}}case"REMOVE_TOAST":return e.toastId===void 0?{...t,toasts:[]}:{...t,toasts:t.toasts.filter(r=>r.id!==e.toastId)}}},ki=[];let Ei={toasts:[]};function ln(t){Ei=Sv(Ei,t),ki.forEach(e=>{e(Ei)})}function Pv({...t}){const e=Cv(),r=n=>ln({type:"UPDATE_TOAST",toast:{...n,id:e}}),s=()=>ln({type:"DISMISS_TOAST",toastId:e});return ln({type:"ADD_TOAST",toast:{...t,id:e,open:!0,onOpenChange:n=>{n||s()}}}),{id:e,dismiss:s,update:r}}function Rv(){const[t,e]=g.useState(Ei);return g.useEffect(()=>(ki.push(e),()=>{const r=ki.indexOf(e);r>-1&&ki.splice(r,1)}),[t]),{...t,toast:Pv,dismiss:r=>ln({type:"DISMISS_TOAST",toastId:r})}}function re(t,e,{checkForDefaultPrevented:r=!0}={}){return function(n){if(t==null||t(n),r===!1||!n.defaultPrevented)return e==null?void 0:e(n)}}function Ov(t,e){typeof t=="function"?t(e):t!=null&&(t.current=e)}function pf(...t){return e=>t.forEach(r=>Ov(r,e))}function Ee(...t){return g.useCallback(pf(...t),t)}function Iv(t,e=[]){let r=[];function s(a,o){const l=g.createContext(o),c=r.length;r=[...r,o];function d(p){const{scope:h,children:f,...x}=p,m=(h==null?void 0:h[t][c])||l,y=g.useMemo(()=>x,Object.values(x));return i.jsx(m.Provider,{value:y,children:f})}function u(p,h){const f=(h==null?void 0:h[t][c])||l,x=g.useContext(f);if(x)return x;if(o!==void 0)return o;throw new Error(`\`${p}\` must be used within \`${a}\``)}return d.displayName=a+"Provider",[d,u]}const n=()=>{const a=r.map(o=>g.createContext(o));return function(l){const c=(l==null?void 0:l[t])||a;return g.useMemo(()=>({[`__scope${t}`]:{...l,[t]:c}}),[l,c])}};return n.scopeName=t,[s,Dv(n,...e)]}function Dv(...t){const e=t[0];if(t.length===1)return e;const r=()=>{const s=t.map(n=>({useScope:n(),scopeName:n.scopeName}));return function(a){const o=s.reduce((l,{useScope:c,scopeName:d})=>{const p=c(a)[`__scope${d}`];return{...l,...p}},{});return g.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])}};return r.scopeName=e.scopeName,r}var Rs=g.forwardRef((t,e)=>{const{children:r,...s}=t,n=g.Children.toArray(r),a=n.find(Lv);if(a){const o=a.props.children,l=n.map(c=>c===a?g.Children.count(o)>1?g.Children.only(null):g.isValidElement(o)?o.props.children:null:c);return i.jsx(Ko,{...s,ref:e,children:g.isValidElement(o)?g.cloneElement(o,void 0,l):null})}return i.jsx(Ko,{...s,ref:e,children:r})});Rs.displayName="Slot";var Ko=g.forwardRef((t,e)=>{const{children:r,...s}=t;if(g.isValidElement(r)){const n=Vv(r);return g.cloneElement(r,{...Mv(s,r.props),ref:e?pf(e,n):n})}return g.Children.count(r)>1?g.Children.only(null):null});Ko.displayName="SlotClone";var ff=({children:t})=>i.jsx(i.Fragment,{children:t});function Lv(t){return g.isValidElement(t)&&t.type===ff}function Mv(t,e){const r={...e};for(const s in e){const n=t[s],a=e[s];/^on[A-Z]/.test(s)?n&&a?r[s]=(...l)=>{a(...l),n(...l)}:n&&(r[s]=n):s==="style"?r[s]={...n,...a}:s==="className"&&(r[s]=[n,a].filter(Boolean).join(" "))}return{...t,...r}}function Vv(t){var s,n;let e=(s=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:s.get,r=e&&"isReactWarning"in e&&e.isReactWarning;return r?t.ref:(e=(n=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:n.get,r=e&&"isReactWarning"in e&&e.isReactWarning,r?t.props.ref:t.props.ref||t.ref)}function mf(t){const e=t+"CollectionProvider",[r,s]=Iv(e),[n,a]=r(e,{collectionRef:{current:null},itemMap:new Map}),o=f=>{const{scope:x,children:m}=f,y=S.useRef(null),b=S.useRef(new Map).current;return i.jsx(n,{scope:x,itemMap:b,collectionRef:y,children:m})};o.displayName=e;const l=t+"CollectionSlot",c=S.forwardRef((f,x)=>{const{scope:m,children:y}=f,b=a(l,m),w=Ee(x,b.collectionRef);return i.jsx(Rs,{ref:w,children:y})});c.displayName=l;const d=t+"CollectionItemSlot",u="data-radix-collection-item",p=S.forwardRef((f,x)=>{const{scope:m,children:y,...b}=f,w=S.useRef(null),_=Ee(x,w),j=a(d,m);return S.useEffect(()=>(j.itemMap.set(w,{ref:w,...b}),()=>void j.itemMap.delete(w))),i.jsx(Rs,{[u]:"",ref:_,children:y})});p.displayName=d;function h(f){const x=a(t+"CollectionConsumer",f);return S.useCallback(()=>{const y=x.collectionRef.current;if(!y)return[];const b=Array.from(y.querySelectorAll(`[${u}]`));return Array.from(x.itemMap.values()).sort((j,k)=>b.indexOf(j.ref.current)-b.indexOf(k.ref.current))},[x.collectionRef,x.itemMap])}return[{Provider:o,Slot:c,ItemSlot:p},h,s]}function $v(t,e){const r=g.createContext(e),s=a=>{const{children:o,...l}=a,c=g.useMemo(()=>l,Object.values(l));return i.jsx(r.Provider,{value:c,children:o})};s.displayName=t+"Provider";function n(a){const o=g.useContext(r);if(o)return o;if(e!==void 0)return e;throw new Error(`\`${a}\` must be used within \`${t}\``)}return[s,n]}function Vs(t,e=[]){let r=[];function s(a,o){const l=g.createContext(o),c=r.length;r=[...r,o];const d=p=>{var b;const{scope:h,children:f,...x}=p,m=((b=h==null?void 0:h[t])==null?void 0:b[c])||l,y=g.useMemo(()=>x,Object.values(x));return i.jsx(m.Provider,{value:y,children:f})};d.displayName=a+"Provider";function u(p,h){var m;const f=((m=h==null?void 0:h[t])==null?void 0:m[c])||l,x=g.useContext(f);if(x)return x;if(o!==void 0)return o;throw new Error(`\`${p}\` must be used within \`${a}\``)}return[d,u]}const n=()=>{const a=r.map(o=>g.createContext(o));return function(l){const c=(l==null?void 0:l[t])||a;return g.useMemo(()=>({[`__scope${t}`]:{...l,[t]:c}}),[l,c])}};return n.scopeName=t,[s,Fv(n,...e)]}function Fv(...t){const e=t[0];if(t.length===1)return e;const r=()=>{const s=t.map(n=>({useScope:n(),scopeName:n.scopeName}));
vendor: 4,902 bytes, line 2
2return function(a){const o=s.reduce((l,{useScope:c,scopeName:d})=>{const p=c(a)[`__scope${d}`];return{...l,...p}},{});return g.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])}};return r.scopeName=e.scopeName,r}var Uv=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],se=Uv.reduce((t,e)=>{const r=g.forwardRef((s,n)=>{const{asChild:a,...o}=s,l=a?Rs:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),i.jsx(l,{...o,ref:n})});return r.displayName=`Primitive.${e}`,{...t,[e]:r}},{});function gf(t,e){t&&Xl.flushSync(()=>t.dispatchEvent(e))}function Je(t){const e=g.useRef(t);return g.useEffect(()=>{e.current=t}),g.useMemo(()=>(...r)=>{var s;return(s=e.current)==null?void 0:s.call(e,...r)},[])}function Bv(t,e=globalThis==null?void 0:globalThis.document){const r=Je(t);g.useEffect(()=>{const s=n=>{n.key==="Escape"&&r(n)};return e.addEventListener("keydown",s,{capture:!0}),()=>e.removeEventListener("keydown",s,{capture:!0})},[r,e])}var zv="DismissableLayer",Yo="dismissableLayer.update",Hv="dismissableLayer.pointerDownOutside",Wv="dismissableLayer.focusOutside",$d,yf=g.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),ua=g.forwardRef((t,e)=>{const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:s,onPointerDownOutside:n,onFocusOutside:a,onInteractOutside:o,onDismiss:l,...c}=t,d=g.useContext(yf),[u,p]=g.useState(null),h=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,f]=g.useState({}),x=Ee(e,T=>p(T)),m=Array.from(d.layers),[y]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),b=m.indexOf(y),w=u?m.indexOf(u):-1,_=d.layersWithOutsidePointerEventsDisabled.size>0,j=w>=b,k=Gv(T=>{const A=T.target,R=[...d.branches].some(L=>L.contains(A));!j||R||(n==null||n(T),o==null||o(T),T.defaultPrevented||l==null||l())},h),E=Kv(T=>{const A=T.target;[...d.branches].some(L=>L.contains(A))||(a==null||a(T),o==null||o(T),T.defaultPrevented||l==null||l())},h);return Bv(T=>{w===d.layers.size-1&&(s==null||s(T),!T.defaultPrevented&&l&&(T.preventDefault(),l()))},h),g.useEffect(()=>{if(u)return r&&(d.layersWithOutsidePointerEventsDisabled.size===0&&($d=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(u)),d.layers.add(u),Fd(),()=>{r&&d.layersWithOutsidePointerEventsDisabled.size===1&&(h.body.style.pointerEvents=$d)}},[u,h,r,d]),g.useEffect(()=>()=>{u&&(d.layers.delete(u),d.layersWithOutsidePointerEventsDisabled.delete(u),Fd())},[u,d]),g.useEffect(()=>{const T=()=>f({});return document.addEventListener(Yo,T),()=>document.removeEventListener(Yo,T)},[]),i.jsx(se.div,{...c,ref:x,style:{pointerEvents:_?j?"auto":"none":void 0,...t.style},onFocusCapture:re(t.onFocusCapture,E.onFocusCapture),onBlurCapture:re(t.onBlurCapture,E.onBlurCapture),onPointerDownCapture:re(t.onPointerDownCapture,k.onPointerDownCapture)})});ua.displayName=zv;var qv="DismissableLayerBranch",xf=g.forwardRef((t,e)=>{const r=g.useContext(yf),s=g.useRef(null),n=Ee(e,s);return g.useEffect(()=>{const a=s.current;if(a)return r.branches.add(a),()=>{r.branches.delete(a)}},[r.branches]),i.jsx(se.div,{...t,ref:n})});xf.displayName=qv;function Gv(t,e=globalThis==null?void 0:globalThis.document){const r=Je(t),s=g.useRef(!1),n=g.useRef(()=>{});return g.useEffect(()=>{const a=l=>{if(l.target&&!s.current){let c=function(){vf(Hv,r,d,{discrete:!0})};const d={originalEvent:l};l.pointerType==="touch"?(e.removeEventListener("click",n.current),n.current=c,e.addEventListener("click",n.current,{once:!0})):c()}else e.removeEventListener("click",n.current);s.current=!1},o=window.setTimeout(()=>{e.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(o),e.removeEventListener("pointerdown",a),e.removeEventListener("click",n.current)}},[e,r]),{onPointerDownCapture:()=>s.current=!0}}function Kv(t,e=globalThis==null?void 0:globalThis.document){const r=Je(t),s=g.useRef(!1);return g.useEffect(()=>{const n=a=>{a.target&&!s.current&&vf(Wv,r,{originalEvent:a},{discrete:!1})};return e.addEventListener("focusin",n),()=>e.removeEventListener("focusin",n)},[e,r]),{onFocusCapture:()=>s.current=!0,onBlurCapture:()=>s.current=!1}}function Fd(){const t=new CustomEvent(Yo);document.dispatchEvent(t)}function vf(t,e,r,{discrete:s}){const n=r.originalEvent.target,a=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:r});e&&n.addEventListener(t,e,{once:!0}),s?gf(n,a):n.dispatchEvent(a)}var Yv=ua,Jv=xf,Dt=globalThis!=null&&globalThis.document?g.useLayoutEffect:()=>{},Xv="Portal",tc=g.forwardRef((t,e)=>{var l;const{container:r,...s}=t,[n,a]=g.useState(!1);Dt(()=>a(!0),[]);const o=r||n&&((l=globalThis==null?void 0:globalThis.document)==null?void 0:l.body);return o?tf.createPortal(i.jsx(se.div,{...s,ref:e}),o):null});tc.displayName=Xv;function Qv(t,e){return g.useReducer((r,s)=>e[r][s]??r,t)}var mr=t=>{const{present:e,children:r}
2=t,s=Zv(e),n=typeof r=="function"?r({present:s.isPresent}):g.Children.only(r),a=Ee(s.ref,eb(n));return typeof r=="function"||s.isPresent?g.cloneElement(n,{ref:a}):null};mr.displayName="Presence";function Zv(t){const[e,r]=g.useState(),s=g.useRef({}),n=g.useRef(t),a=g.useRef("none"),o=t?"mounted":"unmounted",[l,c]=Qv(o,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return g.useEffect(()=>{const d=si(s.current);a.current=l==="mounted"?d:"none"},[l]),Dt(()=>{const d=s.current,u=n.current;if(u!==t){const h=a.current,f=si(d);t?c("MOUNT"):f==="none"||(d==null?void 0:d.display)==="none"?c("UNMOUNT"):c(u&&h!==f?"ANIMATION_OUT":"UNMOUNT"),n.current=t}},[t,c]),Dt(()=>{if(e){let d;const u=e.ownerDocument.defaultView??window,p=f=>{const m=si(s.current).includes(f.animationName);if(f.target===e&&m&&(c("ANIMATION_END"),!n.current)){const y=e.style.animationFillMode;e.style.animationFillMode="forwards",d=u.setTimeout(()=>{e.style.animationFillMode==="forwards"&&(e.style.animationFillMode=y)})}},h=f=>{f.target===e&&(a.current=si(s.current))};return e.addEventListener("animationstart",h),e.addEventListener("animationcancel",p),e.addEventListener("animationend",p),()=>{u.clearTimeout(d),e.removeEventListener("animationstart",h),e.removeEventListener("animationcancel",p),e.removeEventListener("animationend",p)}}else c("ANIMATION_END")},[e,c]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:g.useCallback(d=>{d&&(s.current=getComputedStyle(d)),r(d)},[])}}function si(t){return(t==null?void 0:t.animationName)||"none"}function eb(t){var s,n;let e=(s=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:s.get,r=e&&"isReactWarning"in e&&e.isReactWarning;return r?t.ref:(e=(n=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:n.get,r=e&&"isReactWarning"in e&&e.isReactWarning,r?t.props.ref:t.props.ref||t.ref)}function $s({prop:t,defaultProp:e,onChange:r=()=>{}}){const[s,n]=tb({defaultProp:e,onChange:r}),a=t!==void 0,o=a?t:s,l=Je(r),c=g.useCallback(d=>{if(a){const p=typeof d=="function"?d(t):d;p!==t&&l(p)}else n(d)},[a,t,n,l]);return[o,c]}function tb({defaultProp:t,onChange:e}){const r=g.useState(t),[s]=r,n=g.useRef(s),a=Je(e);return g.useEffect(()=>{n.current!==s&&(a(s),n.current=s)},[s,n,a]),r}var rb="VisuallyHidden",ha=g.forwardRef((t,e)=>i.jsx(se.span,{...t,ref:e,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...t.style}}));ha.displayName=rb;var sb=ha,rc="ToastProvider",[sc,nb,ib]=mf("Toast"),[bf,m4]=Vs("Toast",[ib]),[ab,pa]=bf(rc),wf=t=>{const{__scopeToast:e,label:r="Notification",duration:s=5e3,swipeDirection:n="right",swipeThreshold:a=50,children:o}=t,[l,c]=g.useState(null),[d,u]=g.useState(0),p=g.useRef(!1),h=g.useRef(!1);return r.trim()||console.error(`Invalid prop \`label\` supplied to \`${rc}\`. Expected non-empty \`string\`.`),i.jsx(sc.Provider,{scope:e,children:i.jsx(ab,{scope:e,label:r,duration:s,swipeDirection:n,swipeThreshold:a,toastCount:d,viewport:l,onViewportChange:c,onToastAdd:g.useCallback(()=>u(f=>f+1),[]),onToastRemove:g.useCallback(()=>u(f=>f-1),[]),isFocusedToastEscapeKeyDownRef:p,isClosePausedRef:h,children:o})})};wf.displayName=rc;var _f="ToastViewport",ob=["F8"],Jo="toast.viewportPause",Xo="toast.viewportResume",jf=g.forwardRef((t,e)=>{const{__scopeToast:r,hotkey:s=ob,label:n="Notifications ({hotkey})",...a}=t,o=pa(_f,r),l=nb(r),c=g.useRef(null),d=g.useRef(null),u=g.useRef(null),p=g.useRef(null),h=Ee(e,p,o.onViewportChange),f=s.join("+").replace(/Key/g,"").replace(/Digit/g,""),x=o.toastCount>0;g.useEffect(()=>{const y=b=>{var _;s.length!==0&&s.every(j=>b[j]||b.code===j)&&((_=p.current)==null||_.focus())};return document.addEventListener("keydown",y),()=>document.removeEventListener("keydown",y)},[s]),g.useEffect(()=>{const y=c.current,b=p.current;if(x&&y&&b){const w=()=>{if(!o.isClosePausedRef.current){const E=new CustomEvent(Jo);b.dispatchEvent(E),o.isClosePausedRef.current=!0}},_=()=>{if(o.isClosePausedRef.current){const E=new CustomEvent(Xo);b.dispatchEvent(E),o.isClosePausedRef.current=!1}},j=E=>{!y.contains(E.relatedTarget)&&_()},k=()=>{y.contains(document.activeElement)||_()};return y.addEventListener("focusin",w),y.addEventListener("focusout",j),y.addEventListener("pointermove",w),y.addEventListener("pointerleave",k),window.addEventListener("blur",w),window.addEventListener("focus",_),()=>{y.removeEventListener("focusin",w),y.removeEventListener("focusout",j),y.removeEventListener("pointermove",w),y.removeEventListener("pointerleave",k),window.removeEventListener("blur",w),window.removeEventListener("focus",_)}}},[x,o.isClosePausedRef]);const m=g.useCallback(({tabbingDirection:y})=>{const w=l().map(_=>{const j=_.ref.current,k=[j,...bb(j)];return y==="forwards"?k:k.reverse()});return(y==="forwards"?w.reverse():w).flat()},[l]);return g.useEffect(()=>{const y=p.current;if(y){const b=w=>{var k,E,T;const _=w.altKey||w.ctrlKey||w.metaKey;if(w.key==="Tab"&&!_){const A=document.activeElement,R=w.shiftKey;if(w.target===y&&R){(k=d.current)==null||k.focus();return}const I=m({tabbingDirection:R?"backwards":"forwards"}),D=I.findIndex(N=>N===A);qa(I.slice(D+1))?w.preventDefault():R?(E=d.current)==null||E.focus():(T=u.current)==null||T.focus()}};return y.addEventListener("keydown",b),()=>y.removeEventListener("keydown",b)}},[l,m]),i.jsxs(Jv,{ref:c,role:"region","aria-label":n.replace("{hotkey}",f),tabIndex:-1,style:{pointerEvents:x?void 0:"none"},children:[x&&i.jsx(Qo,{ref:d,onFocusFromOutsideViewport:()=>{const y=m({tabbingDirection:"forwards"});qa(y)}}),i.jsx(sc.Slot,{scope:r,children:i.jsx(se.ol,{tabIndex:-1,...a,ref:h})}),x&&i.jsx(Qo,{ref:u,onFocusFromOutsideViewport:()=>{const y=m({tabbingDirection:"backwards"});qa(y)}})]})});jf.displayName=_f;var kf="ToastFocusProxy",Qo=g.forwardRef((t,e)=>{const{__scopeToast:r,onFocusFromOutsideViewport:s,...n}=t,a=pa(kf,r);return i.jsx(ha,{"aria-hidden":!0,tabIndex:0,...n,ref:e,style:{position:"fixed"},onFocus:o=>{var d;const l=o.relatedTarget;!((d=a.viewport)!=null&&d.contains(l))&&s()}})});Qo.displayName=kf;var fa="Toast",lb="toast.swipeStart",cb="toast.swipeMove",db="toast.swipeCancel",ub="toast.swipeEnd",Ef=g.forwardRef((t,e)=>{const{forceMount:r,open:s,defaultOpen:n,onOpenChange:a,...o}
2=t,[l=!0,c]=$s({prop:s,defaultProp:n,onChange:a});return i.jsx(mr,{present:r||l,children:i.jsx(fb,{open:l,...o,ref:e,onClose:()=>c(!1),onPause:Je(t.onPause),onResume:Je(t.onResume),onSwipeStart:re(t.onSwipeStart,d=>{d.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:re(t.onSwipeMove,d=>{const{x:u,y:p}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","move"),d.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${p}px`)}),onSwipeCancel:re(t.onSwipeCancel,d=>{d.currentTarget.setAttribute("data-swipe","cancel"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:re(t.onSwipeEnd,d=>{const{x:u,y:p}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","end"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${p}px`),c(!1)})})})});Ef.displayName=fa;var[hb,pb]=bf(fa,{onClose(){}}),fb=g.forwardRef((t,e)=>{const{__scopeToast:r,type:s="foreground",duration:n,open:a,onClose:o,onEscapeKeyDown:l,onPause:c,onResume:d,onSwipeStart:u,onSwipeMove:p,onSwipeCancel:h,onSwipeEnd:f,...x}=t,m=pa(fa,r),[y,b]=g.useState(null),w=Ee(e,N=>b(N)),_=g.useRef(null),j=g.useRef(null),k=n||m.duration,E=g.useRef(0),T=g.useRef(k),A=g.useRef(0),{onToastAdd:R,onToastRemove:L}=m,V=Je(()=>{var M;(y==null?void 0:y.contains(document.activeElement))&&((M=m.viewport)==null||M.focus()),o()}),I=g.useCallback(N=>{!N||N===1/0||(window.clearTimeout(A.current),E.current=new Date().getTime(),A.current=window.setTimeout(V,N))},[V]);g.useEffect(()=>{const N=m.viewport;if(N){const M=()=>{I(T.current),d==null||d()},B=()=>{const O=new Date().getTime()-E.current;T.current=T.current-O,window.clearTimeout(A.current),c==null||c()};return N.addEventListener(Jo,B),N.addEventListener(Xo,M),()=>{N.removeEventListener(Jo,B),N.removeEventListener(Xo,M)}}},[m.viewport,k,c,d,I]),g.useEffect(()=>{a&&!m.isClosePausedRef.current&&I(k)},[a,k,m.isClosePausedRef,I]),g.useEffect(()=>(R(),()=>L()),[R,L]);const D=g.useMemo(()=>y?Rf(y):null,[y]);return m.viewport?i.jsxs(i.Fragment,{children:[D&&i.jsx(mb,{__scopeToast:r,role:"status","aria-live":s==="foreground"?"assertive":"polite","aria-atomic":!0,children:D}),i.jsx(hb,{scope:r,onClose:V,children:Xl.createPortal(i.jsx(sc.ItemSlot,{scope:r,children:i.jsx(Yv,{asChild:!0,onEscapeKeyDown:re(l,()=>{m.isFocusedToastEscapeKeyDownRef.current||V(),m.isFocusedToastEscapeKeyDownRef.current=!1}),children:i.jsx(se.li,{role:"status","aria-live":"off","aria-atomic":!0,tabIndex:0,"data-state":a?"open":"closed","data-swipe-direction":m.swipeDirection,...x,ref:w,style:{userSelect:"none",touchAction:"none",...t.style},onKeyDown:re(t.onKeyDown,N=>{N.key==="Escape"&&(l==null||l(N.nativeEvent),N.nativeEvent.defaultPrevented||(m.isFocusedToastEscapeKeyDownRef.current=!0,V()))}),onPointerDown:re(t.onPointerDown,N=>{N.button===0&&(_.current={x:N.clientX,y:N.clientY})}),onPointerMove:re(t.onPointerMove,N=>{if(!_.current)return;const M=N.clientX-_.current.x,B=N.clientY-_.current.y,O=!!j.current,C=["left","right"].includes(m.swipeDirection),$=["left","up"].includes(m.swipeDirection)?Math.min:Math.max,K=C?$(0,M):0,z=C?0:$(0,B),X=N.pointerType==="touch"?10:2,Z={x:K,y:z},ee={originalEvent:N,delta:Z};O?(j.current=Z,ni(cb,p,ee,{discrete:!1})):Ud(Z,m.swipeDirection,X)?(j.current=Z,ni(lb,u,ee,{discrete:!1}),N.target.setPointerCapture(N.pointerId)):(Math.abs(M)>X||Math.abs(B)>X)&&(_.current=null)}),onPointerUp:re(t.onPointerUp,N=>{const M=j.current,B=N.target;if(B.hasPointerCapture(N.pointerId)&&B.releasePointerCapture(N.pointerId),j.current=null,_.current=null,M){const O=N.currentTarget,C={originalEvent:N,delta:M};Ud(M,m.swipeDirection,m.swipeThreshold)?ni(ub,f,C,{discrete:!0}):ni(db,h,C,{discrete:!0}),O.addEventListener("click",$=>$.preventDefault(),{once:!0})}})})})}),m.viewport)})]}):null}),mb=t=>{const{__scopeToast:e,children:r,...s}=t,n=pa(fa,e),[a,o]=g.useState(!1),[l,c]=g.useState(!1);return xb(()=>o(!0)),g.useEffect(()=>{const d=window.setTimeout(()=>c(!0),1e3);return()=>window.clearTimeout(d)},[]),l?null:i.jsx(tc,{asChild:!0,children:i.jsx(ha,{...s,children:a&&i.jsxs(i.Fragment,{children:[n.label," ",r]})})})},gb="ToastTitle",Tf=g.forwardRef((t,e)=>{const{__scopeToast:r,...s}=t;return i.jsx(se.div,{...s,ref:e})});Tf.displayName=gb;var yb="ToastDescription",Af=g.forwardRef((t,e)=>{const{__scopeToast:r,...s}=t;return i.jsx(se.div,{...s,ref:e})});Af.displayName=yb;var Nf="ToastAction",Cf=g.forwardRef((t,e)=>{const{altText:r,...s}=t;return r.trim()?i.jsx(Pf,{altText:r,asChild:!0,children:i.jsx(nc,{...s,ref:e})}):(console.error(`Invalid prop \`altText\` supplied to \`${Nf}\`. Expected non-empty \`string\`.`),null)});Cf.displayName=Nf;var Sf="ToastClose",nc=g.forwardRef((t,e)=>{const{__scopeToast:r,...s}=t,n=pb(Sf,r);return i.jsx(Pf,{asChild:!0,children:i.jsx(se.button,{type:"button",...s,ref:e,onClick:re(t.onClick,n.onClose)})})});nc.displayName=Sf;var Pf=g.forwardRef((t,e)=>{const{__scopeToast:r,altText:s,...n}=t;return i.jsx(se.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":s||void 0,...n,ref:e})});function Rf(t){const e=[];
vendor: 10,182 bytes, lines 2-112
2return Array.from(t.childNodes).forEach(s=>{if(s.nodeType===s.TEXT_NODE&&s.textContent&&e.push(s.textContent),vb(s)){const n=s.ariaHidden||s.hidden||s.style.display==="none",a=s.dataset.radixToastAnnounceExclude==="";if(!n)if(a){const o=s.dataset.radixToastAnnounceAlt;o&&e.push(o)}else e.push(...Rf(s))}}),e}function ni(t,e,r,{discrete:s}){const n=r.originalEvent.currentTarget,a=new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:r});e&&n.addEventListener(t,e,{once:!0}),s?gf(n,a):n.dispatchEvent(a)}var Ud=(t,e,r=0)=>{const s=Math.abs(t.x),n=Math.abs(t.y),a=s>n;return e==="left"||e==="right"?a&&s>r:!a&&n>r};function xb(t=()=>{}){const e=Je(t);Dt(()=>{let r=0,s=0;return r=window.requestAnimationFrame(()=>s=window.requestAnimationFrame(e)),()=>{window.cancelAnimationFrame(r),window.cancelAnimationFrame(s)}},[e])}function vb(t){return t.nodeType===t.ELEMENT_NODE}function bb(t){const e=[],r=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:s=>{const n=s.tagName==="INPUT"&&s.type==="hidden";return s.disabled||s.hidden||n?NodeFilter.FILTER_SKIP:s.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;r.nextNode();)e.push(r.currentNode);return e}function qa(t){const e=document.activeElement;return t.some(r=>r===e?!0:(r.focus(),document.activeElement!==e))}var wb=wf,Of=jf,If=Ef,Df=Tf,Lf=Af,Mf=Cf,Vf=nc;function $f(t){var e,r,s="";if(typeof t=="string"||typeof t=="number")s+=t;else if(typeof t=="object")if(Array.isArray(t)){var n=t.length;for(e=0;e<n;e++)t[e]&&(r=$f(t[e]))&&(s&&(s+=" "),s+=r)}else for(r in t)t[r]&&(s&&(s+=" "),s+=r);return s}function Ff(){for(var t,e,r=0,s="",n=arguments.length;r<n;r++)(t=arguments[r])&&(e=$f(t))&&(s&&(s+=" "),s+=e);return s}const Bd=t=>typeof t=="boolean"?`${t}`:t===0?"0":t,zd=Ff,ma=(t,e)=>r=>{var s;if((e==null?void 0:e.variants)==null)return zd(t,r==null?void 0:r.class,r==null?void 0:r.className);const{variants:n,defaultVariants:a}=e,o=Object.keys(n).map(d=>{const u=r==null?void 0:r[d],p=a==null?void 0:a[d];if(u===null)return null;const h=Bd(u)||Bd(p);return n[d][h]}),l=r&&Object.entries(r).reduce((d,u)=>{let[p,h]=u;return h===void 0||(d[p]=h),d},{}),c=e==null||(s=e.compoundVariants)===null||s===void 0?void 0:s.reduce((d,u)=>{let{class:p,className:h,...f}=u;return Object.entries(f).every(x=>{let[m,y]=x;return Array.isArray(y)?y.includes({...a,...l}[m]):{...a,...l}[m]===y})?[...d,p,h]:d},[]);return zd(t,o,c,r==null?void 0:r.class,r==null?void 0:r.className)};/**
3 * @license lucide-react v0.462.0 - ISC
4 *
5 * This source code is licensed under the ISC license.
6 * See the LICENSE file in the root directory of this source tree.
7 */const _b=F("AppWindow",[["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}],["path",{d:"M10 4v4",key:"pp8u80"}],["path",{d:"M2 8h20",key:"d11cs7"}],["path",{d:"M6 4v4",key:"1svtjw"}]]);/**
8 * @license lucide-react v0.462.0 - ISC
9 *
10 * This source code is licensed under the ISC license.
11 * See the LICENSE file in the root directory of this source tree.
12 */const Uf=F("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/**
13 * @license lucide-react v0.462.0 - ISC
14 *
15 * This source code is licensed under the ISC license.
16 * See the LICENSE file in the root directory of this source tree.
17 */const ir=F("ArrowRight",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/**
18 * @license lucide-react v0.462.0 - ISC
19 *
20 * This source code is licensed under the ISC license.
21 * See the LICENSE file in the root directory of this source tree.
22 */const ic=F("ArrowUpRight",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);/**
23 * @license lucide-react v0.462.0 - ISC
24 *
25 * This source code is licensed under the ISC license.
26 * See the LICENSE file in the root directory of this source tree.
27 */const jb=F("BookMarked",[["path",{d:"M10 2v8l3-3 3 3V2",key:"sqw3rj"}],["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]]);/**
28 * @license lucide-react v0.462.0 - ISC
29 *
30 * This source code is licensed under the ISC license.
31 * See the LICENSE file in the root directory of this source tree.
32 */const kb=F("BookOpen",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);/**
33 * @license lucide-react v0.462.0 - ISC
34 *
35 * This source code is licensed under the ISC license.
36 * See the LICENSE file in the root directory of this source tree.
37 */const Bf=F("Bookmark",[["path",{d:"m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16z",key:"1fy3hk"}]]);/**
38 * @license lucide-react v0.462.0 - ISC
39 *
40 * This source code is licensed under the ISC license.
41 * See the LICENSE file in the root directory of this source tree.
42 */const Eb=F("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);/**
43 * @license lucide-react v0.462.0 - ISC
44 *
45 * This source code is licensed under the ISC license.
46 * See the LICENSE file in the root directory of this source tree.
47 */const Tb=F("Calculator",[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["line",{x1:"8",x2:"16",y1:"6",y2:"6",key:"x4nwl0"}],["line",{x1:"16",x2:"16",y1:"14",y2:"18",key:"wjye3r"}],["path",{d:"M16 10h.01",key:"1m94wz"}],["path",{d:"M12 10h.01",key:"1nrarc"}],["path",{d:"M8 10h.01",key:"19clt8"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M8 18h.01",key:"lrp35t"}]]);/**
48 * @license lucide-react v0.462.0 - ISC
49 *
50 * This source code is licensed under the ISC license.
51 * See the LICENSE file in the root directory of this source tree.
52 */const zf=F("CalendarDays",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]);/**
53 * @license lucide-react v0.462.0 - ISC
54 *
55 * This source code is licensed under the ISC license.
56 * See the LICENSE file in the root directory of this source tree.
57 */const ac=F("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/**
58 * @license lucide-react v0.462.0 - ISC
59 *
60 * This source code is licensed under the ISC license.
61 * See the LICENSE file in the root directory of this source tree.
62 */const Hf=F("ChefHat",[["path",{d:"M17 21a1 1 0 0 0 1-1v-5.35c0-.457.316-.844.727-1.041a4 4 0 0 0-2.134-7.589 5 5 0 0 0-9.186 0 4 4 0 0 0-2.134 7.588c.411.198.727.585.727 1.041V20a1 1 0 0 0 1 1Z",key:"1qvrer"}],["path",{d:"M6 17h12",key:"1jwigz"}]]);/**
63 * @license lucide-react v0.462.0 - ISC
64 *
65 * This source code is licensed under the ISC license.
66 * See the LICENSE file in the root directory of this source tree.
67 */const Wf=F("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
68 * @license lucide-react v0.462.0 - ISC
69 *
70 * This source code is licensed under the ISC license.
71 * See the LICENSE file in the root directory of this source tree.
72 */const Ab=F("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/**
73 * @license lucide-react v0.462.0 - ISC
74 *
75 * This source code is licensed under the ISC license.
76 * See the LICENSE file in the root directory of this source tree.
77 */const Fn=F("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/**
78 * @license lucide-react v0.462.0 - ISC
79 *
80 * This source code is licensed under the ISC license.
81 * See the LICENSE file in the root directory of this source tree.
82 */const Nb=F("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/**
83 * @license lucide-react v0.462.0 - ISC
84 *
85 * This source code is licensed under the ISC license.
86 * See the LICENSE file in the root directory of this source tree.
87 */const oc=F("CircleCheck",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/**
88 * @license lucide-react v0.462.0 - ISC
89 *
90 * This source code is licensed under the ISC license.
91 * See the LICENSE file in the root directory of this source tree.
92 */const Ga=F("CircleDollarSign",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M16 8h-6a2 2 0 1 0 0 4h4a2 2 0 1 1 0 4H8",key:"1h4pet"}],["path",{d:"M12 18V6",key:"zqpxq5"}]]);/**
93 * @license lucide-react v0.462.0 - ISC
94 *
95 * This source code is licensed under the ISC license.
96 * See the LICENSE file in the root directory of this source tree.
97 */const qf=F("CircleUser",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}],["path",{d:"M7 20.662V19a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v1.662",key:"154egf"}]]);/**
98 * @license lucide-react v0.462.0 - ISC
99 *
100 * This source code is licensed under the ISC license.
101 * See the LICENSE file in the root directory of this source tree.
102 */const Cb=F("Clock3",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16.5 12",key:"1aq6pp"}]]);/**
103 * @license lucide-react v0.462.0 - ISC
104 *
105 * This source code is licensed under the ISC license.
106 * See the LICENSE file in the root directory of this source tree.
107 */const Fs=F("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/**
108 * @license lucide-react v0.462.0 - ISC
109 *
110 * This source code is licensed under the ISC license.
111 * See the LICENSE file in the root directory of this source tree.
112 */const Gf=F("Compass",[["path",{d:"m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z",ke
112y:"9ktpf1"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);/**
113 * @license lucide-react v0.462.0 - ISC
114 *
115 * This source code is licensed under the ISC license.
116 * See the LICENSE file in the root directory of this source tree.
117 */const Kf=F("CreditCard",[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]]);/**
118 * @license lucide-react v0.462.0 - ISC
119 *
120 * This source code is licensed under the ISC license.
121 * See the LICENSE file in the root directory of this source tree.
122 */const Sb=F("Database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);/**
123 * @license lucide-react v0.462.0 - ISC
124 *
125 * This source code is licensed under the ISC license.
126 * See the LICENSE file in the root directory of this source tree.
127 */const Ii=F("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);/**
128 * @license lucide-react v0.462.0 - ISC
129 *
130 * This source code is licensed under the ISC license.
131 * See the LICENSE file in the root directory of this source tree.
132 */const Pb=F("Droplet",[["path",{d:"M12 22a7 7 0 0 0 7-7c0-2-1-3.9-3-5.5s-3.5-4-4-6.5c-.5 2.5-2 4.9-4 6.5C6 11.1 5 13 5 15a7 7 0 0 0 7 7z",key:"c7niix"}]]);/**
133 * @license lucide-react v0.462.0 - ISC
134 *
135 * This source code is licensed under the ISC license.
136 * See the LICENSE file in the root directory of this source tree.
137 */const Rb=F("Dumbbell",[["path",{d:"M14.4 14.4 9.6 9.6",key:"ic80wn"}],["path",{d:"M18.657 21.485a2 2 0 1 1-2.829-2.828l-1.767 1.768a2 2 0 1 1-2.829-2.829l6.364-6.364a2 2 0 1 1 2.829 2.829l-1.768 1.767a2 2 0 1 1 2.828 2.829z",key:"nnl7wr"}],["path",{d:"m21.5 21.5-1.4-1.4",key:"1f1ice"}],["path",{d:"M3.9 3.9 2.5 2.5",key:"1evmna"}],["path",{d:"M6.404 12.768a2 2 0 1 1-2.829-2.829l1.768-1.767a2 2 0 1 1-2.828-2.829l2.828-2.828a2 2 0 1 1 2.829 2.828l1.767-1.768a2 2 0 1 1 2.829 2.829z",key:"yhosts"}]]);/**
138 * @license lucide-react v0.462.0 - ISC
139 *
140 * This source code is licensed under the ISC license.
141 * See the LICENSE file in the root directory of this source tree.
142 */const Ob=F("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
143 * @license lucide-react v0.462.0 - ISC
144 *
145 * This source code is licensed under the ISC license.
146 * See the LICENSE file in the root directory of this source tree.
147 */const Ib=F("FileLock",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["rect",{width:"8",height:"6",x:"8",y:"12",rx:"1",key:"3yr8at"}],["path",{d:"M10 12v-2a2 2 0 1 1 4 0v2",key:"j4i8d"}]]);/**
148 * @license lucide-react v0.462.0 - ISC
149 *
150 * This source code is licensed under the ISC license.
151 * See the LICENSE file in the root directory of this source tree.
152 */const Yf=F("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);/**
153 * @license lucide-react v0.462.0 - ISC
154 *
155 * This source code is licensed under the ISC license.
156 * See the LICENSE file in the root directory of this source tree.
157 */const Db=F("Flame",[["path",{d:"M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z",key:"96xj49"}]]);/**
158 * @license lucide-react v0.462.0 - ISC
159 *
160 * This source code is licensed under the ISC license.
161 * See the LICENSE file in the root directory of this source tree.
162 */const Jf=F("FolderOpen",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);/**
163 * @license lucide-react v0.462.0 - ISC
164 *
165 * This source code is licensed under the ISC license.
166 * See the LICENSE file in the root directory of this source tree.
167 */const Lb=F("Folders",[["path",{d:"M20 17a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3.9a2 2 0 0 1-1.69-.9l-.81-1.2a2 2 0 0 0-1.67-.9H8a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2Z",key:"4u7rpt"}],["path",{d:"M2 8v11a2 2 0 0 0 2 2h14",key:"1eicx1"}]]);/**
168 * @license lucide-react v0.462.0 - ISC
169 *
170 * This source code is licensed under the ISC license.
171 * See the LICENSE file in the root directory of this source tree.
172 */const Xf=F("Heart",[["path",{d:"M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z",key:"c3ymky"}]]);/**
173 * @license lucide-react v0.462.0 - ISC
174 *
175 * This source code is licensed under the ISC license.
176 * See the LICENSE file in the root directory of this source tree.
177 */const Qf=F("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);/**
178 * @license lucide-react v0.462.0 - ISC
179 *
180 * This source code is licensed under the ISC license.
181 * See the LICENSE file in the root directory of this source tree.
182 */const Zf=F("Leaf",[["path",{d:"M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z",key:"nnexq3"}],["path",{d:"M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12",key:"mt58a7"}]]);/**
183 * @license lucide-react v0.462.0 - ISC
184 *
185 * This source code is licensed under the ISC license.
186 * See the LICENSE file in the root directory of this source tree.
187 */const em=F("Lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]);/**
188 * @license lucide-react v0.462.0 - ISC
189 *
190 * This source code is licensed under the ISC license.
191 * See the LICENSE file in the root directory of this source tree.
192 */const Mb=F("Link2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);/**
193 * @license lucide-react v0.462.0 - ISC
194 *
195 * This source code is licensed under the ISC license.
196 * See the LICENSE file in the root directory of this source tree.
197 */const Vb=F("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);/**
198 * @license lucide-react v0.462.0 - ISC
199 *
200 * This source code is licensed under the ISC license.
201 * See the LICENSE file in the root directory of this source tree.
202 */const lc=F("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);/**
203 * @license lucide-react v0.462.0 - ISC
204 *
205 * This source code is licensed under the ISC license.
206 * See the LICENSE file in the root directory of this source tree.
207 */const $b=F("Menu",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]);/**
208 * @license lucide-react v0.462.0 - ISC
209 *
210 * This source code is licensed under the ISC license.
211 * See the LICENSE file in the root directory of this source tree.
212 */const Fb=F("Milk",[["path",{d:"M8 2h8",key:"1ssgc1"}],["path",{d:"M9 2v2.789a4 4 0 0 1-.672 2.219l-.656.984A4 4 0 0 0 7 10.212V20a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-9.789a4 4 0 0 0-.672-2.219l-.656-.984A4 4 0 0 1 15 4.788V2",key:"qtp12x"}],["path",{d:"M7 15a6.472 6.472 0 0 1 5 0 6.47 6.47 0 0 0 5 0",key:"ygeh44"}]]);/**
213 * @license lucide-react v0.462.0 - ISC
214 *
215 * This source code is licensed under the ISC license.
216 * See the LICENSE file in the root directory of this source tree.
217 */const Ub=F("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/**
218 * @license lucide-react v0.462.0 - ISC
219 *
220 * This source code is licensed under the ISC license.
221 * See the LICENSE file in the root directory of this source tree.
222 */const Bb=F("Rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);/**
223 * @license lucide-react v0.462.0 - ISC
224 *
225 * This source code is licensed under the ISC license.
226 * See the LICENSE file in the root directory of this source tree.
227 */const Un=F("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/**
228 * @license lucide-react v0.462.0 - ISC
229 *
230 * This source code is licensed under the ISC license.
231 * See the LICENSE file in the root directory of this source tree.
232 */const zb=F("Share2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]);/**
233 * @license lucide-react v0.462.0 - ISC
234 *
235 * This source code is licensed under the ISC license.
236 * See the LICENSE file in the root directory of this source tree.
237 */const Hb=F("Share",[["path",{d:"M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8",key:"1b2hhj"}],["polyline",{points:"16 6 12 2 8 6",key:"m901s6"}],["line",{x1:"12",x2:"12",y1:"2",y2:"15",key:"1p0rca"}]]);/**
238 * @license lucide-react v0.462.0 - ISC
239 *
240 * This source code is licensed under the ISC license.
241 * See the LICENSE file in the root directory of this source tree.
242 */const cc=F("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/**
243 * @license lucide-react v0.462.0 - ISC
244 *
245 * This source code is licensed under the ISC license.
246 * See the LICENSE file in the root directory of this source tree.
247 */const cn=F("Shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",ke
247y:"oel41y"}]]);/**
248 * @license lucide-react v0.462.0 - ISC
249 *
250 * This source code is licensed under the ISC license.
251 * See the LICENSE file in the root directory of this source tree.
252 */const tm=F("ShoppingBasket",[["path",{d:"m15 11-1 9",key:"5wnq3a"}],["path",{d:"m19 11-4-7",key:"cnml18"}],["path",{d:"M2 11h20",key:"3eubbj"}],["path",{d:"m3.5 11 1.6 7.4a2 2 0 0 0 2 1.6h9.8a2 2 0 0 0 2-1.6l1.7-7.4",key:"yiazzp"}],["path",{d:"M4.5 15.5h15",key:"13mye1"}],["path",{d:"m5 11 4-7",key:"116ra9"}],["path",{d:"m9 11 1 9",key:"1ojof7"}]]);/**
253 * @license lucide-react v0.462.0 - ISC
254 *
255 * This source code is licensed under the ISC license.
256 * See the LICENSE file in the root directory of this source tree.
257 */const Wb=F("ShoppingCart",[["circle",{cx:"8",cy:"21",r:"1",key:"jimo8o"}],["circle",{cx:"19",cy:"21",r:"1",key:"13723u"}],["path",{d:"M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12",key:"9zh506"}]]);/**
258 * @license lucide-react v0.462.0 - ISC
259 *
260 * This source code is licensed under the ISC license.
261 * See the LICENSE file in the root directory of this source tree.
262 */const qb=F("Smartphone",[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]]);/**
263 * @license lucide-react v0.462.0 - ISC
264 *
265 * This source code is licensed under the ISC license.
266 * See the LICENSE file in the root directory of this source tree.
267 */const Bn=F("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/**
268 * @license lucide-react v0.462.0 - ISC
269 *
270 * This source code is licensed under the ISC license.
271 * See the LICENSE file in the root directory of this source tree.
272 */const Gb=F("Star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]);/**
273 * @license lucide-react v0.462.0 - ISC
274 *
275 * This source code is licensed under the ISC license.
276 * See the LICENSE file in the root directory of this source tree.
277 */const Kb=F("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/**
278 * @license lucide-react v0.462.0 - ISC
279 *
280 * This source code is licensed under the ISC license.
281 * See the LICENSE file in the root directory of this source tree.
282 */const Yb=F("TabletSmartphone",[["rect",{width:"10",height:"14",x:"3",y:"8",rx:"2",key:"1vrsiq"}],["path",{d:"M5 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2h-2.4",key:"1j4zmg"}],["path",{d:"M8 18h.01",key:"lrp35t"}]]);/**
283 * @license lucide-react v0.462.0 - ISC
284 *
285 * This source code is licensed under the ISC license.
286 * See the LICENSE file in the root directory of this source tree.
287 */const Jb=F("Terminal",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/**
288 * @license lucide-react v0.462.0 - ISC
289 *
290 * This source code is licensed under the ISC license.
291 * See the LICENSE file in the root directory of this source tree.
292 */const rm=F("ThumbsDown",[["path",{d:"M17 14V2",key:"8ymqnk"}],["path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z",key:"m61m77"}]]);/**
293 * @license lucide-react v0.462.0 - ISC
294 *
295 * This source code is licensed under the ISC license.
296 * See the LICENSE file in the root directory of this source tree.
297 */const sm=F("ThumbsUp",[["path",{d:"M7 10v12",key:"1qc93n"}],["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}]]);/**
298 * @license lucide-react v0.462.0 - ISC
299 *
300 * This source code is licensed under the ISC license.
301 * See the LICENSE file in the root directory of this source tree.
302 */const Di=F("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}
vendor: 8,221 bytes, lines 302-337
302],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/**
303 * @license lucide-react v0.462.0 - ISC
304 *
305 * This source code is licensed under the ISC license.
306 * See the LICENSE file in the root directory of this source tree.
307 */const Xb=F("UserRound",[["circle",{cx:"12",cy:"8",r:"5",key:"1hypcn"}],["path",{d:"M20 21a8 8 0 0 0-16 0",key:"rfgkzh"}]]);/**
308 * @license lucide-react v0.462.0 - ISC
309 *
310 * This source code is licensed under the ISC license.
311 * See the LICENSE file in the root directory of this source tree.
312 */const zn=F("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);/**
313 * @license lucide-react v0.462.0 - ISC
314 *
315 * This source code is licensed under the ISC license.
316 * See the LICENSE file in the root directory of this source tree.
317 */const nm=F("Utensils",[["path",{d:"M3 2v7c0 1.1.9 2 2 2h4a2 2 0 0 0 2-2V2",key:"cjf0a3"}],["path",{d:"M7 2v20",key:"1473qp"}],["path",{d:"M21 15V2a5 5 0 0 0-5 5v6c0 1.1.9 2 2 2h3Zm0 0v7",key:"j28e5"}]]);/**
318 * @license lucide-react v0.462.0 - ISC
319 *
320 * This source code is licensed under the ISC license.
321 * See the LICENSE file in the root directory of this source tree.
322 */const im=F("Video",[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]);/**
323 * @license lucide-react v0.462.0 - ISC
324 *
325 * This source code is licensed under the ISC license.
326 * See the LICENSE file in the root directory of this source tree.
327 */const Qb=F("Wheat",[["path",{d:"M2 22 16 8",key:"60hf96"}],["path",{d:"M3.47 12.53 5 11l1.53 1.53a3.5 3.5 0 0 1 0 4.94L5 19l-1.53-1.53a3.5 3.5 0 0 1 0-4.94Z",key:"1rdhi6"}],["path",{d:"M7.47 8.53 9 7l1.53 1.53a3.5 3.5 0 0 1 0 4.94L9 15l-1.53-1.53a3.5 3.5 0 0 1 0-4.94Z",key:"1sdzmb"}],["path",{d:"M11.47 4.53 13 3l1.53 1.53a3.5 3.5 0 0 1 0 4.94L13 11l-1.53-1.53a3.5 3.5 0 0 1 0-4.94Z",key:"eoatbi"}],["path",{d:"M20 2h2v2a4 4 0 0 1-4 4h-2V6a4 4 0 0 1 4-4Z",key:"19rau1"}],["path",{d:"M11.47 17.47 13 19l-1.53 1.53a3.5 3.5 0 0 1-4.94 0L5 19l1.53-1.53a3.5 3.5 0 0 1 4.94 0Z",key:"tc8ph9"}],["path",{d:"M15.47 13.47 17 15l-1.53 1.53a3.5 3.5 0 0 1-4.94 0L9 15l1.53-1.53a3.5 3.5 0 0 1 4.94 0Z",key:"2m8kc5"}],["path",{d:"M19.47 9.47 21 11l-1.53 1.53a3.5 3.5 0 0 1-4.94 0L13 11l1.53-1.53a3.5 3.5 0 0 1 4.94 0Z",key:"vex3ng"}]]);/**
328 * @license lucide-react v0.462.0 - ISC
329 *
330 * This source code is licensed under the ISC license.
331 * See the LICENSE file in the root directory of this source tree.
332 */const Zb=F("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]]);/**
333 * @license lucide-react v0.462.0 - ISC
334 *
335 * This source code is licensed under the ISC license.
336 * See the LICENSE file in the root directory of this source tree.
337 */const ga=F("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),dc="-",ew=t=>{const e=rw(t),{conflictingClassGroups:r,conflictingClassGroupModifiers:s}=t;return{getClassGroupId:o=>{const l=o.split(dc);return l[0]===""&&l.length!==1&&l.shift(),am(l,e)||tw(o)},getConflictingClassGroupIds:(o,l)=>{const c=r[o]||[];return l&&s[o]?[...c,...s[o]]:c}}},am=(t,e)=>{var o;if(t.length===0)return e.classGroupId;const r=t[0],s=e.nextPart.get(r),n=s?am(t.slice(1),s):void 0;if(n)return n;if(e.validators.length===0)return;const a=t.join(dc);return(o=e.validators.find(({validator:l})=>l(a)))==null?void 0:o.classGroupId},Hd=/^\[(.+)\]$/,tw=t=>{if(Hd.test(t)){const e=Hd.exec(t)[1],r=e==null?void 0:e.substring(0,e.indexOf(":"));if(r)return"arbitrary.."+r}},rw=t=>{const{theme:e,prefix:r}=t,s={nextPart:new Map,validators:[]};return nw(Object.entries(t.classGroups),r).forEach(([a,o])=>{Zo(o,s,a,e)}),s},Zo=(t,e,r,s)=>{t.forEach(n=>{if(typeof n=="string"){const a=n===""?e:Wd(e,n);a.classGroupId=r;return}if(typeof n=="function"){if(sw(n)){Zo(n(s),e,r,s);return}e.validators.push({validator:n,classGroupId:r});return}Object.entries(n).forEach(([a,o])=>{Zo(o,Wd(e,a),r,s)})})},Wd=(t,e)=>{let r=t;return e.split(dc).forEach(s=>{r.nextPart.has(s)||r.nextPart.set(s,{nextPart:new Map,validators:[]}),r=r.nextPart.get(s)}),r},sw=t=>t.isThemeGetter,nw=(t,e)=>e?t.map(([r,s])=>{const n=s.map(a=>typeof a=="string"?e+a:typeof a=="object"?Object.fromEntries(Object.entries(a).map(([o,l])=>[e+o,l])):a);return[r,n]}):t,iw=t=>{if(t<1)return{get:()=>{},set:()=>{}};let e=0,r=new Map,s=new Map;const n=(a,o)=>{r.set(a,o),e++,e>t&&(e=0,s=r,r=new Map)};return{get(a){let o=r.get(a);if(o!==void 0)return o;if((o=s.get(a))!==void 0)return n(a,o),o},set(a,o){r.has(a)?r.set(a,o):n(a,o)}}},om="!",aw=t=>{const{separator:e,experimentalParseClassName:r}=t,s=e.length===1,n=e[0],a=e.length,o=l=>{const c=[];let d=0,u=0,p;for(let y=0;y<l.length;y++){let b=l[y];if(d===0){if(b===n&&(s||l.slice(y,y+a)===e)){c.push(l.slice(u,y)),u=y+a;continue}if(b==="/"){p=y;continue}}b==="["?d++:b==="]"&&d--}const h=c.length===0?l:l.substring(u),f=h.startsWith(om),x=f?h.substring(1):h,m=p&&p>u?p-u:void 0;return{modifiers:c,hasImportantModifier:f,baseClassName:x,maybePostfixModifierPosition:m}};return r?l=>r({className:l,parseClassName:o}):o},ow=t=>{if(t.length<=1)return t;const e=[];let r=[];return t.forEach(s=>{s[0]==="["?(e.push(...r.sort(),s),r=[]):r.push(s)}),e.push(...r.sort()),e},lw=t=>({cache:iw(t.cacheSize),parseClassName:aw(t),...ew(t)}),cw=/\s+/,dw=(t,e)=>{const{parseClassName:r,getClassGroupId:s,getConflictingClassGroupIds:n}=e,a=[],o=t.trim().split(cw);let l="";for(let c=o.length-1;c>=0;c-=1){const d=o[c],{modifiers:u,hasImportantModifier:p,baseClassName:h,maybePostfixModifierPosition:f}=r(d);let x=!!f,m=s(x?h.substring(0,f):h);if(!m){if(!x){l=d+(l.length>0?" "+l:l);continue}if(m=s(h),!m){l=d+(l.length>0?" "+l:l);continue}x=!1}const y=ow(u).join(":"),b=p?y+om:y,w=b+m;if(a.includes(w))continue;a.push(w);const _=n(m,x);for(let j=0;j<_.length;++j){const k=_[j];a.push(b+k)}l=d+(l.length>0?" "+l:l)}return l};function uw(){let t=0,e,r,s="";for(;t<arguments.length;)(e=arguments[t++])&&(r=lm(e))&&(s&&(s+=" "),s+=r);return s}const lm=t=>{if(typeof t=="string")return t;let e,r="";for(let s=0;s<t.length;s++)t[s]&&(e=lm(t[s]))&&(r&&(r+=" "),r+=e);return r};function hw(t,...e){let r,s,n,a=o;function o(c){const d=e.reduce((u,p)=>p(u),t());return r=lw(d),s=r.cache.get,n=r.cache.set,a=l,l(c)}function l(c){const d=s(c);if(d)return d;const u=dw(c,r);return n(c,u),u}return function(){return a(uw.apply(null,arguments))}}const le=t=>{const e=r=>r[t]||[];return e.isThemeGetter=!0,e},cm=/^\[(?:([a-z-]+):)?(.+)\]$/i,pw=/^\d+\/\d+$/,fw=new Set(["px","full","screen"]),mw=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,gw=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,yw=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,xw=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,vw=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Pt=t=>ys(t)||fw.has(t)||pw.test(t),Wt=t=>Us(t,"length",Aw),ys=t=>!!t&&!Number.isNaN(Number(t)),Ka=t=>Us(t,"number",ys),Zs=t=>!!t&&Number.isInteger(Number(t)),bw=t=>t.endsWith("%")&&ys(t.slice(0,-1)),J=t=>cm.test(t),qt=t=>mw.test(t),ww=new Set(["length","size","percentage"]),_w=t=>Us(t,ww,dm),jw=t=>Us(t,"position",dm),kw=new Set(["image","url"]),Ew=t=>Us(t,kw,Cw),Tw=t=>Us(t,"",Nw),en=()=>!0,Us=(t,e,r)=>{const s=cm.exec(t);return s?s[1]?typeof e=="string"?s[1]===e:e.has(s[1]):r(s[2]):!1},Aw=t=>gw.test(t)&&!yw.test(t),dm=()=>!1,Nw=t=>xw.test(t),Cw=t=>vw.test(t),Sw=()=>{const t=le("colors"),e=le("spacing"),r=le("blur"),s=le("brightness"),n=le("borderColor"),a=le("borderRadius"),o=le("borderSpacing"),l=le("borderWidth"),c=le("contrast"),d=le("grayscale"),u=le("hueRotate"),p=le("invert"),h=le("gap"),f=le("gradientColorStops"),x=le("gradientColorStopPositions"),m=le("inset"),y=le("margin"),b=le("op
337acity"),w=le("padding"),_=le("saturate"),j=le("scale"),k=le("sepia"),E=le("skew"),T=le("space"),A=le("translate"),R=()=>["auto","contain","none"],L=()=>["auto","hidden","clip","visible","scroll"],V=()=>["auto",J,e],I=()=>[J,e],D=()=>["",Pt,Wt],N=()=>["auto",ys,J],M=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],B=()=>["solid","dashed","dotted","double","none"],O=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],C=()=>["start","end","center","between","around","evenly","stretch"],$=()=>["","0",J],K=()=>["auto","avoid","all","avoid-page","page","left","right","column"],z=()=>[ys,J];return{cacheSize:500,separator:":",theme:{colors:[en],spacing:[Pt,Wt],blur:["none","",qt,J],brightness:z(),borderColor:[t],borderRadius:["none","","full",qt,J],borderSpacing:I(),borderWidth:D(),contrast:z(),grayscale:$(),hueRotate:z(),invert:$(),gap:I(),gradientColorStops:[t],gradientColorStopPositions:[bw,Wt],inset:V(),margin:V(),opacity:z(),padding:I(),saturate:z(),scale:z(),sepia:$(),skew:z(),space:I(),translate:I()},classGroups:{aspect:[{aspect:["auto","square","video",J]}],container:["container"],columns:[{columns:[qt]}],"break-after":[{"break-after":K()}],"break-before":[{"break-before":K()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...M(),J]}],overflow:[{overflow:L()}],"overflow-x":[{"overflow-x":L()}],"overflow-y":[{"overflow-y":L()}],overscroll:[{overscroll:R()}],"overscroll-x":[{"overscroll-x":R()}],"overscroll-y":[{"overscroll-y":R()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[m]}],"inset-x":[{"inset-x":[m]}],"inset-y":[{"inset-y":[m]}],start:[{start:[m]}],end:[{end:[m]}],top:[{top:[m]}],right:[{right:[m]}],bottom:[{bottom:[m]}],left:[{left:[m]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",Zs,J]}],basis:[{basis:V()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",J]}],grow:[{grow:$()}],shrink:[{shrink:$()}],order:[{order:["first","last","none",Zs,J]}],"grid-cols":[{"grid-cols":[en]}],"col-start-end":[{col:["auto",{span:["full",Zs,J]},J]}],"col-start":[{"col-start":N()}],"col-end":[{"col-end":N()}],"grid-rows":[{"grid-rows":[en]}],"row-start-end":[{row:["auto",{span:[Zs,J]},J]}],"row-start":[{"row-start":N()}],"row-end":[{"row-end":N()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",J]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",J]}],gap:[{gap:[h]}],"gap-x":[{"gap-x":[h]}],"gap-y":[{"gap-y":[h]}],"justify-content":[{justify:["normal",...C()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...C(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...C(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[w]}],px:[{px:[w]}],py:[{py:[w]}],ps:[{ps:[w]}],pe:[{pe:[w]}],pt:[{pt:[w]}],pr:[{pr:[w]}],pb:[{pb:[w]}],pl:[{pl:[w]}],m:[{m:[y]}],mx:[{mx:[y]}],my:[{my:[y]}],ms:[{ms:[y]}],me:[{me:[y]}],mt:[{mt:[y]}],mr:[{mr:[y]}],mb:[{mb:[y]}],ml:[{ml:[y]}],"space-x":[{"space-x":[T]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[T]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",J,e]}],"min-w":[{"min-w":[J,e,"min","max","fit"]}],"max-w":[{"max-w":[J,e,"none","full","min","max","fit","prose",{screen:[qt]},qt]}],h:[{h:[J,e,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[J,e,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[J,e,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[J,e,"auto","min","max","fit"]}],"font-size":[{text:["base",qt,Wt]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",Ka]}],"font-family":[{font:[en]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractons"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",J]}],"line-clamp":[{"line-clamp":["none",ys,Ka]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",Pt,J]}],"list-image":[{"list-image":["none",J]}],"list-style-type":[{list:["none","disc","decimal",J]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[t]}],"placeholder-opacity":[{"placeholder-opacity":[b]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[t]}],"text-opacity":[{"text-opacity":[b]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...B(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",Pt,Wt]}],"underline-offset":[{"underline-offset":["auto",Pt,J]}],"text-decoration-color":[{decoration:[t]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:I()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",J]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",J]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[b]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...M(),jw]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",_w]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},Ew]}],"bg-color":[{bg:[t]}],"gradient-from-pos":[{from:[x]}
vendor: 5,172 bytes, line 337
337],"gradient-via-pos":[{via:[x]}],"gradient-to-pos":[{to:[x]}],"gradient-from":[{from:[f]}],"gradient-via":[{via:[f]}],"gradient-to":[{to:[f]}],rounded:[{rounded:[a]}],"rounded-s":[{"rounded-s":[a]}],"rounded-e":[{"rounded-e":[a]}],"rounded-t":[{"rounded-t":[a]}],"rounded-r":[{"rounded-r":[a]}],"rounded-b":[{"rounded-b":[a]}],"rounded-l":[{"rounded-l":[a]}],"rounded-ss":[{"rounded-ss":[a]}],"rounded-se":[{"rounded-se":[a]}],"rounded-ee":[{"rounded-ee":[a]}],"rounded-es":[{"rounded-es":[a]}],"rounded-tl":[{"rounded-tl":[a]}],"rounded-tr":[{"rounded-tr":[a]}],"rounded-br":[{"rounded-br":[a]}],"rounded-bl":[{"rounded-bl":[a]}],"border-w":[{border:[l]}],"border-w-x":[{"border-x":[l]}],"border-w-y":[{"border-y":[l]}],"border-w-s":[{"border-s":[l]}],"border-w-e":[{"border-e":[l]}],"border-w-t":[{"border-t":[l]}],"border-w-r":[{"border-r":[l]}],"border-w-b":[{"border-b":[l]}],"border-w-l":[{"border-l":[l]}],"border-opacity":[{"border-opacity":[b]}],"border-style":[{border:[...B(),"hidden"]}],"divide-x":[{"divide-x":[l]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[l]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[b]}],"divide-style":[{divide:B()}],"border-color":[{border:[n]}],"border-color-x":[{"border-x":[n]}],"border-color-y":[{"border-y":[n]}],"border-color-s":[{"border-s":[n]}],"border-color-e":[{"border-e":[n]}],"border-color-t":[{"border-t":[n]}],"border-color-r":[{"border-r":[n]}],"border-color-b":[{"border-b":[n]}],"border-color-l":[{"border-l":[n]}],"divide-color":[{divide:[n]}],"outline-style":[{outline:["",...B()]}],"outline-offset":[{"outline-offset":[Pt,J]}],"outline-w":[{outline:[Pt,Wt]}],"outline-color":[{outline:[t]}],"ring-w":[{ring:D()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[t]}],"ring-opacity":[{"ring-opacity":[b]}],"ring-offset-w":[{"ring-offset":[Pt,Wt]}],"ring-offset-color":[{"ring-offset":[t]}],shadow:[{shadow:["","inner","none",qt,Tw]}],"shadow-color":[{shadow:[en]}],opacity:[{opacity:[b]}],"mix-blend":[{"mix-blend":[...O(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":O()}],filter:[{filter:["","none"]}],blur:[{blur:[r]}],brightness:[{brightness:[s]}],contrast:[{contrast:[c]}],"drop-shadow":[{"drop-shadow":["","none",qt,J]}],grayscale:[{grayscale:[d]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[p]}],saturate:[{saturate:[_]}],sepia:[{sepia:[k]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[r]}],"backdrop-brightness":[{"backdrop-brightness":[s]}],"backdrop-contrast":[{"backdrop-contrast":[c]}],"backdrop-grayscale":[{"backdrop-grayscale":[d]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[p]}],"backdrop-opacity":[{"backdrop-opacity":[b]}],"backdrop-saturate":[{"backdrop-saturate":[_]}],"backdrop-sepia":[{"backdrop-sepia":[k]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[o]}],"border-spacing-x":[{"border-spacing-x":[o]}],"border-spacing-y":[{"border-spacing-y":[o]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",J]}],duration:[{duration:z()}],ease:[{ease:["linear","in","out","in-out",J]}],delay:[{delay:z()}],animate:[{animate:["none","spin","ping","pulse","bounce",J]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[j]}],"scale-x":[{"scale-x":[j]}],"scale-y":[{"scale-y":[j]}],rotate:[{rotate:[Zs,J]}],"translate-x":[{"translate-x":[A]}],"translate-y":[{"translate-y":[A]}],"skew-x":[{"skew-x":[E]}],"skew-y":[{"skew-y":[E]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",J]}],accent:[{accent:["auto",t]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",J]}],"caret-color":[{caret:[t]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":I()}],"scroll-mx":[{"scroll-mx":I()}],"scroll-my":[{"scroll-my":I()}],"scroll-ms":[{"scroll-ms":I()}],"scroll-me":[{"scroll-me":I()}],"scroll-mt":[{"scroll-mt":I()}],"scroll-mr":[{"scroll-mr":I()}],"scroll-mb":[{"scroll-mb":I()}],"scroll-ml":[{"scroll-ml":I()}],"scroll-p":[{"scroll-p":I()}],"scroll-px":[{"scroll-px":I()}],"scroll-py":[{"scroll-py":I()}],"scroll-ps":[{"scroll-ps":I()}],"scroll-pe":[{"scroll-pe":I()}],"scroll-pt":[{"scroll-pt":I()}],"scroll-pr":[{"scroll-pr":I()}],"scroll-pb":[{"scroll-pb":I()}],"scroll-pl":[{"scroll-pl":I()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}
337],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",J]}],fill:[{fill:[t,"none"]}],"stroke-w":[{stroke:[Pt,Wt,Ka]}],stroke:[{stroke:[t,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},Pw=hw(Sw);function q(...t){return Pw(Ff(t))}const Rw=wb,um=g.forwardRef(({className:t,...e},r)=>i.jsx(Of,{ref:r,className:q("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",t),...e}));um.displayName=Of.displayName;const Ow=ma("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),hm=g.forwardRef(({className:t,variant:e,...r},s)=>i.jsx(If,{ref:s,className:q(Ow({variant:e}),t),...r}));hm.displayName=If.displayName;const Iw=g.forwardRef(({className:t,...e},r)=>i.jsx(Mf,{ref:r,className:q("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",t),...e}));Iw.displayName=Mf.displayName;const pm=g.forwardRef(({className:t,...e},r)=>i.jsx(Vf,{ref:r,className:q("absolute right-2 top-2 rounded-md p-1 text-foreground
337/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",t),"toast-close":"",...e,children:i.jsx(ga,{className:"h-4 w-4"})}));pm.displayName=Vf.displayName;const fm=g.forwardRef(({className:t,...e},r)=>i.jsx(Df,{ref:r,className:q("text-sm font-semibold",t),...e}));fm.displayName=Df.displayName;const mm=g.forwardRef(({className:t,...e},r)=>i.jsx(Lf,{ref:r,className:q("text-sm opacity-90",t),...e}));mm.displayName=Lf.displayName;function Dw(){const{toasts:t}=Rv();return i.jsxs(Rw,{children:[t.map(function({id:e,title:r,description:s,action:n,...a}){return i.jsxs(hm,{...a,children:[i.jsxs("div",{className:"grid gap-1",children:[r&&i.jsx(fm,{children:r}),s&&i.jsx(mm,{children:s})]}),n,i.jsx(pm,{})]},e)}),i.jsx(um,{})]})}var qd=["light","dark"],Lw="(prefers-color-scheme: dark)",Mw=g.createContext(void 0),Vw={setTheme:t=>{},themes:[]},$w=()=>{var t;return(t=g.useContext(Mw))!=null?t:Vw};g.memo(({forcedTheme:t,storageKey:e,attribute:r,enableSystem:s,enableColorScheme:n,defaultTheme:a,value:o,attrs:l,nonce:c})=>{let d=a==="system",u=r==="class"?`var d=document.documentElement,c=d.classList;${`c.remove(${l.map(x=>`'${x}'`).join(",")})`};`:`var d=document.documentElement,n='${r}',s='setAttribute';`,p=n?qd.includes(a)&&a?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${a}'`:"if(e==='light'||e==='dark')d.style.colorScheme=e":"",h=(x,m=!1,y=!0)=>{let b=o?o[x]:x,w=m?x+"|| ''":`'${b}'`,_="";return n&&y&&!m&&qd.includes(x)&&(_+=`d.style.colorScheme = '${x}';`),r==="class"?m||b?_+=`c.add(${w})`:_+="null":b&&(_+=`d[s](n,${w})`),_},f=t?`!function(){${u}${h(t)}}()`:s?`!function(){try{${u}var e=localStorage.getItem('${e}');if('system'===e||(!e&&${d})){var t='${Lw}',m=window.matchMedia(t);if(m.media!==t||m.matches){${h("dark")}}else{${h("light")}}}else if(e){${o?`var x=${JSON.stringify(o)};`:""}${h(o?"x[e]":"e",!0)}}${d?"":"else{"+h(a,!1,!1)+"}"}${p}}catch(e){}}()`:`!function(){try{${u}var e=localStorage.getItem('${e}');if(e){${o?`var x=${JSON.stringify(o)};`:""}${h(o?"x[e]":"e",!0)}}else{${h(a,!1,!1)};}${p}}catch(t){}}();`;return g.createElement("script",{nonce:c,dangerouslySetInnerHTML:{__html:f}})});var Fw=t=>{switch(t){case"success":return zw;case"info":return Ww;case"warning":return Hw;case"error":return qw;default:return null}},Uw=Array(12).fill(0),Bw=({visible:t})=>S.createElement("div",{className:"sonner-loading-wrapper","data-visible":t},S.createElement("div",{className:"sonner-spinner"},Uw.map((e,r)=>S.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${r}`})))),zw=S.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},S.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),Hw=S.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},S.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),Ww=S.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},S.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),qw=S.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},S.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),Gw=()=>{let[t,e]=S.useState(document.hidden);return S.useEffect(()=>{let r=()=>{e(document.hidden)};return document.addEventListener("visibilitychange",r),()=>window.removeEventListener("visibilitychange",r)},[]),t},el=1,Kw=class{constructor(){this.subscribe=t=>(this.subscribers.push(t),()=>{let e=this.subscribers.indexOf(t);this.subscribers.splice(e,1)}),this.publish=t=>
337{this.subscribers.forEach(e=>e(t))},this.addToast=t=>{this.publish(t),this.toasts=[...this.toasts,t]},this.create=t=>{var e;let{message:r,...s}=t,n=typeof(t==null?void 0:t.id)=="number"||((e=t.id)==null?void 0:e.length)>0?t.id:el++,a=this.toasts.find(l=>l.id===n),o=t.dismissible===void 0?!0:t.dismissible;return a?this.toasts=this.toasts.map(l=>l.id===n?(this.publish({...l,...t,id:n,title:r}),{...l,...t,id:n,dismissible:o,title:r}):l):this.addToast({title:r,...s,dismissible:o,id:n}),n},this.dismiss=t=>(t||this.toasts.forEach(e=>{this.subscribers.forEach(r=>r({id:e.id,dismiss:!0}))}),this.subscribers.forEach(e=>e({id:t,dismiss:!0})),t),this.message=(t,e)=>this.create({...e,message:t}),this.error=(t,e)=>this.create({...e,message:t,type:"error"}),this.success=(t,e)=>this.create({...e,type:"success",message:t}),this.info=(t,e)=>this.create({...e,type:"info",message:t}),this.warning=(t,e)=>this.create({...e,type:"warning",message:t}),this.loading=(t,e)=>this.create({...e,type:"loading",message:t}),this.promise=(t,e)=>{if(!e)return;let r;e.loading!==void 0&&(r=this.create({...e,promise:t,type:"loading",message:e.loading,description:typeof e.description!="function"?e.description:void 0}));let s=t instanceof Promise?t:t(),n=r!==void 0;return s.then(async a=>{if(Jw(a)&&!a.ok){n=!1;let o=typeof e.error=="function"?await e.error(`HTTP error! status: ${a.status}`):e.error,l=typeof e.description=="function"?await e.description(`HTTP error! status: ${a.status}`):e.description;this.create({id:r,type:"error",message:o,description:l})}else if(e.success!==void 0){n=!1;let o=typeof e.success=="function"?await e.success(a):e.success,l=typeof e.description=="function"?await e.description(a):e.description;this.create({id:r,type:"success",message:o,description:l})}}).catch(async a=>{if(e.error!==void 0){n=!1;let o=typeof e.error=="function"?await e.error(a):e.error,l=typeof e.description=="function"?await e.description(a):e.description;this.create({id:r,type:"error",message:o,description:l})}}).finally(()=>{var a;n&&(this.dismiss(r),r=void 0),(a=e.finally)==null||a.call(e)}),r},this.custom=(t,e)=>{let r=(e==null?void 0:e.id)||el++;return this.create({jsx:t(r),id:r,...e}),r},this.subscribers=[],this.toasts=[]}},$e=new Kw,Yw=(t,e)=>{let r=(e==null?void 0:e.id)||el++;return $e.addToast({title:t,...e,id:r}),r},Jw=t=>t&&typeof t=="object"&&"ok"in t&&typeof t.ok=="boolean"&&"status"in t&&typeof t.status=="number",Xw=Yw,Qw=()=>$e.toasts,Gd=Object.assign(Xw,{success:$e.success,info:$e.info,warning:$e.warning,error:$e.error,custom:$e.custom,message:$e.message,promise:$e.promise,dismiss:$e.dismiss,loading:$e.loading},{getHistory:Qw});function Zw(t,{insertAt:e}={}){if(typeof document>"u")return;let r=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css",e==="top"&&r.firstChild?r.insertBefore(s,r.firstChild):r.appendChild(s),s.styleSheet?s.styleSheet.cssText=t:s.appendChild(document.createTextNode(t))}Zw(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999}:where([data-sonner-toaster][data-x-position="right"]){right:max(var(--offset),env(safe-area-inset-right))}:where([data-sonner-toaster][data-x-position="left"]){left:max(var(--offset),env(safe-area-inset-left))}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:max(var(--offset),env(safe-area-inset-top))}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:max(var(--offset),env(safe-area-inset-bottom))}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;
337left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;background:var(--gray1);color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:0;right:0;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}
337:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount, 0px));transition:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation:swipe-out .2s ease-out forwards}@keyframes swipe-out{0%{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount)));opacity:1}to{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount) + var(--lift) * -100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;--mobile-offset: 16px;right:var(--mobile-offset);left:var(--mobile-offset);width:100%}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset)}[data-sonner-toaster][data-y-position=bottom]{bottom:20px}[data-sonner-toaster][data-y-position=top]{top:20px}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset);right:var(--mobile-offset);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}
338`);function ii(t){return t.label!==void 0}var e1=3,t1="32px",r1=4e3,s1=356,n1=14,i1=20,a1=200;function o1(...t){return t.filter(Boolean).join(" ")}var l1=t=>{var e,r,s,n,a,o,l,c,d,u;let{invert:p,toast:h,unstyled:f,interacting:x,setHeights:m,visibleToasts:y,heights:b,index:w,toasts:_,expanded:j,removeToast:k,defaultRichColors:E,closeButton:T,style:A,cancelButtonStyle:R,actionButtonStyle:L,className:V="",descriptionClassName:I="",duration:D,position:N,gap:M,loadingIcon:B,expandByDefault:O,classNames:C,icons:$,closeButtonAriaLabel:K="Close toast",pauseWhenPageIsHidden:z,cn:X}=t,[Z,ee]=S.useState(!1),[ke,ce]=S.useState(!1),[Ct,Ze]=S.useState(!1),[mt,gt]=S.useState(!1),[Xn,zr]=S.useState(0),[vr,Js]=S.useState(0),Qn=S.useRef(null),zt=S.useRef(null),La=w===0,Ma=w+1<=y,Te=h.type,Hr=h.dismissible!==!1,Fx=h.className||"",Ux=h.descriptionClassName||"",Zn=S.useMemo(()=>b.findIndex(Y=>Y.toastId===h.id)||0,[b,h.id]),Bx=S.useMemo(()=>{var Y;return(Y=h.closeButton)!=null?Y:T},[h.closeButton,T]),Ad=S.useMemo(()=>h.duration||D||r1,[h.duration,D]),Va=S.useRef(0),Wr=S.useRef(0),Nd=S.useRef(0),qr=S.useRef(null),[Cd,zx]=N.split("-"),Sd=S.useMemo(()=>b.reduce((Y,oe,ne)=>ne>=Zn?Y:Y+oe.height,0),[b,Zn]),Pd=Gw(),Hx=h.invert||p,$a=Te==="loading";Wr.current=S.useMemo(()=>Zn*M+Sd,[Zn,Sd]),S.useEffect(()=>{ee(!0)},[]),S.useLayoutEffect(()=>{if(!Z)return;let Y=zt.current,oe=Y.style.height;Y.style.height="auto";let ne=Y.getBoundingClientRect().height;Y.style.height=oe,Js(ne),m(yt=>yt.find(xt=>xt.toastId===h.id)?yt.map(xt=>xt.toastId===h.id?{...xt,height:ne}:xt):[{toastId:h.id,height:ne,position:h.position},...yt])},[Z,h.title,h.description,m,h.id]);let Ht=S.useCallback(()=>{ce(!0),zr(Wr.current),m(Y=>Y.filter(oe=>oe.toastId!==h.id)),setTimeout(()=>{k(h)},a1)},[h,k,m,Wr]);S.useEffect(()=>{if(h.promise&&Te==="loading"||h.duration===1/0||h.type==="loading")return;let Y,oe=Ad;return j||x||z&&Pd?(()=>{if(Nd.current<Va.current){let ne=new Date().getTime()-Va.current;oe=oe-ne}
338Nd.current=new Date().getTime()})():oe!==1/0&&(Va.current=new Date().getTime(),Y=setTimeout(()=>{var ne;(ne=h.onAutoClose)==null||ne.call(h,h),Ht()},oe)),()=>clearTimeout(Y)},[j,x,O,h,Ad,Ht,h.promise,Te,z,Pd]),S.useEffect(()=>{let Y=zt.current;if(Y){let oe=Y.getBoundingClientRect().height;return Js(oe),m(ne=>[{toastId:h.id,height:oe,position:h.position},...ne]),()=>m(ne=>ne.filter(yt=>yt.toastId!==h.id))}},[m,h.id]),S.useEffect(()=>{h.delete&&Ht()},[Ht,h.delete]);function Wx(){return $!=null&&$.loading?S.createElement("div",{className:"sonner-loader","data-visible":Te==="loading"},$.loading):B?S.createElement("div",{className:"sonner-loader","data-visible":Te==="loading"},B):S.createElement(Bw,{visible:Te==="loading"})}return S.createElement("li",{"aria-live":h.important?"assertive":"polite","aria-atomic":"true",role:"status",tabIndex:0,ref:zt,className:X(V,Fx,C==null?void 0:C.toast,(e=h==null?void 0:h.classNames)==null?void 0:e.toast,C==null?void 0:C.default,C==null?void 0:C[Te],(r=h==null?void 0:h.classNames)==null?void 0:r[Te]),"data-sonner-toast":"","data-rich-colors":(s=h.richColors)!=null?s:E,"data-styled":!(h.jsx||h.unstyled||f),"data-mounted":Z,"data-promise":!!h.promise,"data-removed":ke,"data-visible":Ma,"data-y-position":Cd,"data-x-position":zx,"data-index":w,"data-front":La,"data-swiping":Ct,"data-dismissible":Hr,"data-type":Te,"data-invert":Hx,"data-swipe-out":mt,"data-expanded":!!(j||O&&Z),style:{"--index":w,"--toasts-before":w,"--z-index":_.length-w,"--offset":`${ke?Xn:Wr.current}px`,"--initial-height":O?"auto":`${vr}px`,...A,...h.style},onPointerDown:Y=>{$a||!Hr||(Qn.current=new Date,zr(Wr.current),Y.target.setPointerCapture(Y.pointerId),Y.target.tagName!=="BUTTON"&&(Ze(!0),qr.current={x:Y.clientX,y:Y.clientY}))},onPointerUp:()=>{var Y,oe,ne,yt;if(mt||!Hr)return;qr.current=null;let xt=Number(((Y=zt.current)==null?void 0:Y.style.getPropertyValue("--swipe-amount").replace("px",""))||0),ei=new Date().getTime()-((oe=Qn.current)==null?void 0:oe.getTime()),qx=Math.abs(xt)/ei;if(Math.abs(xt)>=i1||qx>.11){zr(Wr.current),(ne=h.onDismiss)==null||ne.call(h,h),Ht(),gt(!0);return}(yt=zt.current)==null||yt.style.setProperty("--swipe-amount","0px"),Ze(!1)},onPointerMove:Y=>{var oe;if(!qr.current||!Hr)return;let ne=Y.clientY-qr.current.y,yt=Y.clientX-qr.current.x,xt=(Cd==="top"?Math.min:Math.max)(0,ne),ei=Y.pointerType==="touch"?10:2;Math.abs(xt)>ei?(oe=zt.current)==null||oe.style.setProperty("--swipe-amount",`${ne}px`):Math.abs(yt)>ei&&(qr.current=null)}},Bx&&!h.jsx?S.createElement("button",{"aria-label":K,"data-disabled":$a,"data-close-button":!0,onClick:$a||!Hr?()=>{}:()=>{var Y;Ht(),(Y=h.onDismiss)==null||Y.call(h,h)},className:X(C==null?void 0:C.closeButton,(n=h==null?void 0:h.classNames)==null?void 0:n.closeButton)},S.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},S.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),S.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))):null,h.jsx||S.isValidElement(h.title)?h.jsx||h.title:S.createElement(S.Fragment,null,Te||h.icon||h.promise?S.createElement("div",{"data-icon":"",className:X(C==null?void 0:C.icon,(a=h==null?void 0:h.classNames)==null?void 0:a.icon)},h.promise||h.type==="loading"&&!h.icon?h.icon||Wx():null,h.type!=="loading"?h.icon||($==null?void 0:$[Te])||Fw(Te):null):null,S.createElement("div",{"data-content":"",className:X(C==null?void 0:C.content,(o=h==null?void 0:h.classNames)==null?void 0:o.content)},S.createElement("div",{"data-title":"",className:X(C==null?void 0:C.title,(l=h==null?void 0:h.classNames)==null?void 0:l.title)},h.title),h.description?S.createElement("div",{"data-description":"",className:X(I,Ux,C==null?void 0:C.description,(c=h==null?void 0:h.classNames)==null?void 0:c.description)},h.description):null),S.isValidElement(h.cancel)?h.cancel:h.cancel&&ii(h.cancel)?S.createElement("button",{"data-button":!0,"data-cancel":!0,style:h.cancelButtonStyle||R,onClick:Y=>{var oe,ne;ii(h.cancel)&&Hr&&((ne=(oe=h.cancel).onClick)==null||ne.call(oe,Y),Ht())},className:X(C==null?void 0:C.cancelButton,(d=h==null?void 0:h.classNames)==null?void 0:d.cancelButton)},h.cancel.label):null,S.isValidElement(h.action)?h.action:h.action&&ii(h.action)?S.createElement("button",{"data-button":!0,"data-action":!0,style:h.actionButtonStyle||L,onClick:Y=>{var oe,ne;
338ii(h.action)&&(Y.defaultPrevented||((ne=(oe=h.action).onClick)==null||ne.call(oe,Y),Ht()))},className:X(C==null?void 0:C.actionButton,(u=h==null?void 0:h.classNames)==null?void 0:u.actionButton)},h.action.label):null))};function Kd(){if(typeof window>"u"||typeof document>"u")return"ltr";let t=document.documentElement.getAttribute("dir");return t==="auto"||!t?window.getComputedStyle(document.documentElement).direction:t}var c1=t=>{let{invert:e,position:r="bottom-right",hotkey:s=["altKey","KeyT"],expand:n,closeButton:a,className:o,offset:l,theme:c="light",richColors:d,duration:u,style:p,visibleToasts:h=e1,toastOptions:f,dir:x=Kd(),gap:m=n1,loadingIcon:y,icons:b,containerAriaLabel:w="Notifications",pauseWhenPageIsHidden:_,cn:j=o1}=t,[k,E]=S.useState([]),T=S.useMemo(()=>Array.from(new Set([r].concat(k.filter(z=>z.position).map(z=>z.position)))),[k,r]),[A,R]=S.useState([]),[L,V]=S.useState(!1),[I,D]=S.useState(!1),[N,M]=S.useState(c!=="system"?c:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),B=S.useRef(null),O=s.join("+").replace(/Key/g,"").replace(/Digit/g,""),C=S.useRef(null),$=S.useRef(!1),K=S.useCallback(z=>{var X;(X=k.find(Z=>Z.id===z.id))!=null&&X.delete||$e.dismiss(z.id),E(Z=>Z.filter(({id:ee})=>ee!==z.id))},[k]);return S.useEffect(()=>$e.subscribe(z=>{if(z.dismiss){E(X=>X.map(Z=>Z.id===z.id?{...Z,delete:!0}:Z));return}setTimeout(()=>{tf.flushSync(()=>{E(X=>{let Z=X.findIndex(ee=>ee.id===z.id);return Z!==-1?[...X.slice(0,Z),{...X[Z],...z},...X.slice(Z+1)]:[z,...X]})})})}),[]),S.useEffect(()=>{if(c!=="system"){M(c);return}c==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?M("dark"):M("light")),typeof window<"u"&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",({matches:z})=>{M(z?"dark":"light")})},[c]),S.useEffect(()=>{k.length<=1&&V(!1)},[k]),S.useEffect(()=>{let z=X=>{var Z,ee;s.every(ke=>X[ke]||X.code===ke)&&(V(!0),(Z=B.current)==null||Z.focus()),X.code==="Escape"&&(document.activeElement===B.current||(ee=B.current)!=null&&ee.contains(document.activeElement))&&V(!1)};return document.addEventListener("keydown",z),()=>document.removeEventListener("keydown",z)},[s]),S.useEffect(()=>{if(B.current)return()=>{C.current&&(C.current.focus({preventScroll:!0}),C.current=null,$.current=!1)}},[B.current]),k.length?S.createElement("section",{"aria-label":`${w} ${O}`,tabIndex:-1},T.map((z,X)=>{var Z;let[ee,ke]=z.split("-");return S.createElement("ol",{key:z,dir:x==="auto"?Kd():x,tabIndex:-1,ref:B,className:o,"data-sonner-toaster":!0,"data-theme":N,"data-y-position":ee,"data-x-position":ke,style:{"--front-toast-height":`${((Z=A[0])==null?void 0:Z.height)||0}px`,"--offset":typeof l=="number"?`${l}px`:l||t1,"--width":`${s1}px`,"--gap":`${m}px`,...p},onBlur:ce=>{$.current&&!ce.currentTarget.contains(ce.relatedTarget)&&($.current=!1,C.current&&(C.current.focus({preventScroll:!0}),C.current=null))},onFocus:ce=>{ce.target instanceof HTMLElement&&ce.target.dataset.dismissible==="false"||$.current||($.current=!0,C.current=ce.relatedTarget)},onMouseEnter:()=>V(!0),onMouseMove:()=>V(!0),onMouseLeave:()=>{I||V(!1)},onPointerDown:ce=>{ce.target instanceof HTMLElement&&ce.target.dataset.dismissible==="false"||D(!0)},onPointerUp:()=>D(!1)},k.filter(ce=>!ce.position&&X===0||ce.position===z).map((ce,Ct)=>{var Ze,mt;return S.createElement(l1,{key:ce.id,icons:b,index:Ct,toast:ce,defaultRichColors:d,duration:(Ze=f==null?void 0:f.duration)!=null?Ze:u,className:f==null?void 0:f.className,descriptionClassName:f==null?void 0:f.descriptionClassName,invert:e,visibleToasts:h,closeButton:(mt=f==null?void 0:f.closeButton)!=null?mt:a,interacting:I,position:z,style:f==null?void 0:f.style,unstyled:f==null?void 0:f.unstyled,classNames:f==null?void 0:f.classNames,cancelButtonStyle:f==null?void 0:f.cancelButtonStyle,actionButtonStyle:f==null?void 0:f.actionButtonStyle,removeToast:K,toasts:k.filter(gt=>gt.position==ce.position),heights:A.filter(gt=>gt.position==ce.position),setHeights:R,expandByDefault:n,gap:m,loadingIcon:y,expanded:L,pauseWhenPageIsHidden:_,cn:j})}))})):null};const d1=({...t})=>{const{theme:e="system"}=$w();return i.jsx(c1,{theme:e,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...t})};var ya=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},xa=typeof window>"u"||"Deno"in globalThis;function rt(){}function u1(t,e){return typeof t=="function"?t(e):t}function h1(t){return typeof t=="number"&&t>=0&&t!==1/0}function p1(t,e){return Math.max(t+(e||0)-Date.now(),0)}function Yd(t,e){return typeof t=="function"?t(e):t}function f1(t,e){return typeof t=="function"?t(e):t}function Jd(t,e){const{type:r="all",exact:s,fetchStatus:n,predicate:a,queryKey:o,stale:l}=t;if(o){if(s){if(e.queryHash!==uc(o,e.options))return!1}else if(!bn(e.queryKey,o))return!1}if(r!=="all"){const c=e.isActive();if(r==="active"&&!c||r==="inactive"&&c)return!1}return!(typeof l=="boolean"&&e.isStale()!==l||n&&n!==e.state.fetchStatus||a&&!a(e))}function Xd(t,e){const{exact:r,status:s,predicate:n,mutationKey:a}=t;if(a){if(!e.options.mutationKey)return!1;if(r){if(vn(e.options.mutationKey)!==vn(a))return!1}else if(!bn(e.options.mutationKey,a))return!1}
vendor: 21,720 bytes, line 338
338return!(s&&e.state.status!==s||n&&!n(e))}function uc(t,e){return((e==null?void 0:e.queryKeyHashFn)||vn)(t)}function vn(t){return JSON.stringify(t,(e,r)=>tl(r)?Object.keys(r).sort().reduce((s,n)=>(s[n]=r[n],s),{}):r)}function bn(t,e){return t===e?!0:typeof t!=typeof e?!1:t&&e&&typeof t=="object"&&typeof e=="object"?!Object.keys(e).some(r=>!bn(t[r],e[r])):!1}function gm(t,e){if(t===e)return t;const r=Qd(t)&&Qd(e);if(r||tl(t)&&tl(e)){const s=r?t:Object.keys(t),n=s.length,a=r?e:Object.keys(e),o=a.length,l=r?[]:{};let c=0;for(let d=0;d<o;d++){const u=r?d:a[d];(!r&&s.includes(u)||r)&&t[u]===void 0&&e[u]===void 0?(l[u]=void 0,c++):(l[u]=gm(t[u],e[u]),l[u]===t[u]&&t[u]!==void 0&&c++)}return n===o&&c===n?t:l}return e}function Qd(t){return Array.isArray(t)&&t.length===Object.keys(t).length}function tl(t){if(!Zd(t))return!1;const e=t.constructor;if(e===void 0)return!0;const r=e.prototype;return!(!Zd(r)||!r.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(t)!==Object.prototype)}function Zd(t){return Object.prototype.toString.call(t)==="[object Object]"}function m1(t){return new Promise(e=>{setTimeout(e,t)})}function g1(t,e,r){return typeof r.structuralSharing=="function"?r.structuralSharing(t,e):r.structuralSharing!==!1?gm(t,e):e}function y1(t,e,r=0){const s=[...t,e];return r&&s.length>r?s.slice(1):s}function x1(t,e,r=0){const s=[e,...t];return r&&s.length>r?s.slice(0,-1):s}var hc=Symbol();function ym(t,e){return!t.queryFn&&(e!=null&&e.initialPromise)?()=>e.initialPromise:!t.queryFn||t.queryFn===hc?()=>Promise.reject(new Error(`Missing queryFn: '${t.queryHash}'`)):t.queryFn}var Rr,Qt,js,Gp,v1=(Gp=class extends ya{constructor(){super();te(this,Rr);te(this,Qt);te(this,js);Q(this,js,e=>{if(!xa&&window.addEventListener){const r=()=>e();return window.addEventListener("visibilitychange",r,!1),()=>{window.removeEventListener("visibilitychange",r)}}})}onSubscribe(){P(this,Qt)||this.setEventListener(P(this,js))}onUnsubscribe(){var e;this.hasListeners()||((e=P(this,Qt))==null||e.call(this),Q(this,Qt,void 0))}setEventListener(e){var r;Q(this,js,e),(r=P(this,Qt))==null||r.call(this),Q(this,Qt,e(s=>{typeof s=="boolean"?this.setFocused(s):this.onFocus()}))}setFocused(e){P(this,Rr)!==e&&(Q(this,Rr,e),this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach(r=>{r(e)})}isFocused(){var e;return typeof P(this,Rr)=="boolean"?P(this,Rr):((e=globalThis.document)==null?void 0:e.visibilityState)!=="hidden"}},Rr=new WeakMap,Qt=new WeakMap,js=new WeakMap,Gp),xm=new v1,ks,Zt,Es,Kp,b1=(Kp=class extends ya{constructor(){super();te(this,ks,!0);te(this,Zt);te(this,Es);Q(this,Es,e=>{if(!xa&&window.addEventListener){const r=()=>e(!0),s=()=>e(!1);return window.addEventListener("online",r,!1),window.addEventListener("offline",s,!1),()=>{window.removeEventListener("online",r),window.removeEventListener("offline",s)}}})}onSubscribe(){P(this,Zt)||this.setEventListener(P(this,Es))}onUnsubscribe(){var e;this.hasListeners()||((e=P(this,Zt))==null||e.call(this),Q(this,Zt,void 0))}setEventListener(e){var r;Q(this,Es,e),(r=P(this,Zt))==null||r.call(this),Q(this,Zt,e(this.setOnline.bind(this)))}setOnline(e){P(this,ks)!==e&&(Q(this,ks,e),this.listeners.forEach(s=>{s(e)}))}isOnline(){return P(this,ks)}},ks=new WeakMap,Zt=new WeakMap,Es=new WeakMap,Kp),Li=new b1;function w1(){let t,e;const r=new Promise((n,a)=>{t=n,e=a});r.status="pending",r.catch(()=>{});function s(n){Object.assign(r,n),delete r.resolve,delete r.reject}return r.resolve=n=>{s({status:"fulfilled",value:n}),t(n)},r.reject=n=>{s({status:"rejected",reason:n}),e(n)},r}function _1(t){return Math.min(1e3*2**t,3e4)}function vm(t){return(t??"online")==="online"?Li.isOnline():!0}var bm=class extends Error{constructor(t){super("CancelledError"),this.revert=t==null?void 0:t.revert,this.silent=t==null?void 0:t.silent}};function Ya(t){return t instanceof bm}function wm(t){let e=!1,r=0,s=!1,n;const a=w1(),o=m=>{var y;s||(h(new bm(m)),(y=t.abort)==null||y.call(t))},l=()=>{e=!0},c=()=>{e=!1},d=()=>xm.isFocused()&&(t.networkMode==="always"||Li.isOnline())&&t.canRun(),u=()=>vm(t.networkMode)&&t.canRun(),p=m=>{var y;s||(s=!0,(y=t.onSuccess)==null||y.call(t,m),n==null||n(),a.resolve(m))},h=m=>{var y;s||(s=!0,(y=t.onError)==null||y.call(t,m),n==null||n(),a.reject(m))},f=()=>new Promise(m=>{var y;n=b=>{(s||d())&&m(b)},(y=t.onPause)==null||y.call(t)}).then(()=>{var m;n=void 0,s||(m=t.onContinue)==null||m.call(t)}),x=()=>{if(s)return;let m;const y=r===0?t.initialPromise:void 0;try{m=y??t.fn()}catch(b){m=Promise.reject(b)}Promise.resolve(m).then(p).catch(b=>{var E;if(s)return;const w=t.retry??(xa?0:3),_=t.retryDelay??_1,j=typeof _=="function"?_(r,b):_,k=w===!0||typeof w=="number"&&r<w||typeof w=="function"&&w(r,b);if(e||!k){h(b);return}r++,(E=t.onFail)==null||E.call(t,r,b),m1(j).then(()=>d()?void 0:f()).then(()=>{e?h(b):x()})})};return{promise:a,cancel:o,continue:()=>(n==null||n(),a),cancelRetry:l,continueRetry:c,canStart:u,start:()=>(u()?x():f().then(x),a)}}function j1(){let t=[],e=0,r=l=>{l()},s=l=>{l()},n=l=>setTimeout(l,0);const a=l=>{e?t.push(l):n(()=>{r(l)})},o=()=>{const l=t;t=[],l.length&&n(()=>{s(()=>{l.forEach(c=>{r(c)})})})};return{batch:l=>{let c;e++;try{c=l()}finally{e--,e||o()}return c},batchCalls:l=>(...c)=>{a(()=>{l(...c)})},schedule:a,setNotifyFunction:l=>{r=l},setBatchNotifyFunction:l=>{s=l},setScheduler:l=>{n=l}}}var Ie=j1(),Or,Yp,_m=(Yp=class{constructor(){te(this,Or)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),h1(this.gcTime)&&Q(this,Or,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(xa?1/0:5*60*1e3))}clearGcTimeout(){P(this,Or)&&(clearTimeout(P(this,Or)),Q(this,Or,void 0))}},Or=new WeakMap,Yp),Ts,As,Ke,Pe,Vn,Ir,nt,Rt,Jp,k1=(Jp=class extends _m{constructor(e){super();te(this,nt);te(this,Ts);te(this,As);te(this,Ke);te(this,Pe);te(this,Vn);te(this,Ir);Q(this,Ir,!1),Q(this,Vn,e.defaultOptions),this.setOptions(e.options),this.observers=[],Q(this,Ke,e.cache),this.queryKey=e.queryKey,this.queryHash=e.queryHash,Q(this,Ts,T1(this.options)),this.state=e.state??P(this,Ts),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var e;return(e=P(this,Pe))==null?void 0:e.promise}setOptions(e){this.options={...P(this,Vn),...e},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&P(this,Ke).remove(this)}setData(e,r){const s=g1(this.state.data,e,this.options);return Se(this,nt,Rt).call(this,{data:s,type:"success",dataUpdatedAt:r==null?void 0:r.updatedAt,manual:r==null?void 0:r.manual}),s}setState(e,r){Se(this,nt,Rt).call(this,{type:"setState",state:e,setStateOptions:r})}cancel(e){var s,n;const r=(s=P(this,Pe))==null?void 0:s.promise;return(n=P(this,Pe))==null||n.cancel(e),r?r.then(rt).catch(rt):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(P(this,Ts))}isActive(){return this.observers.some(e=>f1(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===hc||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStale(){return this.state.isInvalidated?!0:this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0}isStaleByTime(e=0){return this.state.isInvalidated||this.state.data===void 0||!p1(this.state.dataUpdatedAt,e)}onFocus(){var r;const e=this.observers.find(s=>s.shouldFetchOnWindowFocus());e==null||e.refetch({cancelRefetch:!1}),(r=P(this,Pe))==null||r.continue()}onOnline(){var r;const e=this.observers.find(s=>s.shouldFetchOnReconnect());e==null||e.refetch({cancelRefetch:!1}),(r=P(this,Pe))==null||r.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),P(this,Ke).notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(r=>r!==e),this.observers.length||(P(this,Pe)&&(P(this,Ir)?P(this,Pe).cancel({revert:!0}):P(this,Pe).cancelRetry()),this.scheduleGc()),P(this,Ke).notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||Se(this,nt,Rt).call(this,{type:"invalidate"})}fetch(e,r){var c,d,u;if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&(r!=null&&r.cancelRefetch))this.cancel({silent:!0});else if(P(this,Pe))return P(this,Pe).continueRetry(),P(this,Pe).promise}if(e&&this.setOptions(e),!this.options.queryFn){const p=this.observers.find(h=>h.options.queryFn);p&&this.setOptions(p.options)}const s=new AbortController,n=p=>{Object.defineProperty(p,"signal",{enumerable:!0,get:()=>(Q(this,Ir,!0),s.signal)})},a=()=>{const p=ym(this.options,r),h={queryKey:this.queryKey,meta:this.meta};return n(h),Q(this,Ir,!1),this.options.persister?this.options.persister(p,h,this):p(h)},o={fetchOptions:r,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:a};n(o),(c=this.options.behavior)==null||c.onFetch(o,this),Q(this,As,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((d=o.fetchOptions)==null?void 0:d.meta))&&Se(this,nt,Rt).call(this,{type:"fetch",meta:(u=o.fetchOptions)==null?void 0:u.meta});const l=p=>{var h,f,x,m;Ya(p)&&p.silent||Se(this,nt,Rt).call(this,{type:"error",error:p}),Ya(p)||((f=(h=P(this,Ke).config).onError)==null||f.call(h,p,this),(m=(x=P(this,Ke).config).onSettled)==null||m.call(x,this.state.data,p,this)),this.scheduleGc()};return Q(this,Pe,wm({initialPromise:r==null?void 0:r.initialPromise,fn:o.fetchFn,abort:s.abort.bind(s),onSuccess:p=>{var h,f,x,m;if(p===void 0){l(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(p)}catch(y){l(y);return}(f=(h=P(this,Ke).config).onSuccess)==null||f.call(h,p,this),(m=(x=P(this,Ke).config).onSettled)==null||m.call(x,p,this.state.error,this),this.scheduleGc()},onError:l,onFail:(p,h)=>{Se(this,nt,Rt).call(this,{type:"failed",failureCount:p,error:h})},onPause:()=>{Se(this,nt,Rt).call(this,{type:"pause"})},onContinue:()=>{Se(this,nt,Rt).call(this,{type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0})),P(this,Pe).start()}},Ts=new WeakMap,As=new WeakMap,Ke=new WeakMap,Pe=new WeakMap,Vn=new WeakMap,Ir=new WeakMap,nt=new WeakSet,Rt=function(e){const r=s=>{switch(e.type){case"failed":return{...s,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...s,fetchStatus:"paused"};case"continue":return{...s,fetchStatus:"fetching"};case"fetch":return{...s,...E1(s.data,this.options),fetchMeta:e.meta??null};case"success":return{...s,data:e.data,dataUpdateCount:s.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const n=e.error;return Ya(n)&&n.revert&&P(this,As)?{...P(this,As),fetchStatus:"idle"}:{...s,error:n,errorUpdateCount:s.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:s.fetchFailureCount+1,fetchFailureReason:n,fetchStatus:"idle",status:"error"};case"invalidate":return{...s,isInvalidated:!0};case"setState":return{...s,...e.state}}};this.state=r(this.state),Ie.batch(()=>{this.observers.forEach(s=>{s.onQueryUpdate()}),P(this,Ke).notify({query:this,type:"updated",action:e})})},Jp);function E1(t,e){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:vm(e.networkMode)?"fetching":"paused",...t===void 0&&{error:null,status:"pending"}}}function T1(t){const e=typeof t.initialData=="function"?t.initialData():t.initialData,r=e!==void 0,s=r?typeof t.initialDataUpdatedAt=="function"?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0;return{data:e,dataUpdateCount:0,dataUpdatedAt:r?s??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:r?"success":"pending",fetchStatus:"idle"}}var vt,Xp,A1=(Xp=class extends ya{constructor(e={}){super();te(this,vt);this.config=e,Q(this,vt,new Map)}build(e,r,s){const n=r.queryKey,a=r.queryHash??uc(n,r);let o=this.get(a);return o||(o=new k1({cache:this,queryKey:n,queryHash:a,options:e.defaultQueryOptions(r),state:s,defaultOptions:e.getQueryDefaults(n)}),this.add(o)),o}add(e){P(this,vt).has(e.queryHash)||(P(this,vt).set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const r=P(this,vt).get(e.queryHash);r&&(e.destroy(),r===e&&P(this,vt).delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){Ie.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return P(this,vt).get(e)}getAll(){return[...P(this,vt).values()]}find(e){const r={exact:!0,...e};return this.getAll().find(s=>Jd(r,s))}findAll(e={}){const r=this.getAll();return Object.keys(e).length>0?r.filter(s=>Jd(e,s)):r}notify(e){Ie.batch(()=>{this.listeners.forEach(r=>{r(e)})})}onFocus(){Ie.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){Ie.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},vt=new WeakMap,Xp),bt,Oe,Dr,wt,Gt,Qp,N1=(Qp=class extends _m{constructor(e){super();te(this,wt);te(this,bt);te(this,Oe);te(this,Dr);this.mutationId=e.mutationId,Q(this,Oe,e.mutationCache),Q(this,bt,[]),this.state=e.state||C1(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){P(this,bt).includes(e)||(P(this,bt).push(e),this.clearGcTimeout(),P(this,Oe).notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){Q(this,bt,P(this,bt).filter(r=>r!==e)),this.scheduleGc(),P(this,Oe).notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){P(this,bt).length||(this.state.status==="pending"?this.scheduleGc():P(this,Oe).remove(this))}continue(){var e;return((e=P(this,Dr))==null?void 0:e.continue())??this.execute(this.state.variables)}async execute(e){var n,a,o,l,c,d,u,p,h,f,x,m,y,b,w,_,j,k,E,T;Q(this,Dr,wm({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error("No mutationFn found")),onFail:(A,R)=>{Se(this,wt,Gt).call(this,{type:"failed",failureCount:A,error:R})},onPause:()=>{Se(this,wt,Gt).call(this,{type:"pause"})},onContinue:()=>{Se(this,wt,Gt).call(this,{type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>P(this,Oe).canRun(this)}));const r=this.state.status==="pending",s=!P(this,Dr).canStart();try{if(!r){Se(this,wt,Gt).call(this,{type:"pending",variables:e,isPaused:s}),await((a=(n=P(this,Oe).config).onMutate)==null?void 0:a.call(n,e,this));const R=await((l=(o=this.options).onMutate)==null?void 0:l.call(o,e));R!==this.state.context&&Se(this,wt,Gt).call(this,{type:"pending",context:R,variables:e,isPaused:s})}const A=await P(this,Dr).start();return await((d=(c=P(this,Oe).config).onSuccess)==null?void 0:d.call(c,A,e,this.state.context,this)),await((p=(u=this.options).onSuccess)==null?void 0:p.call(u,A,e,this.state.context)),await((f=(h=P(this,Oe).config).onSettled)==null?void 0:f.call(h,A,null,this.state.variables,this.state.context,this)),await((m=(x=this.options).onSettled)==null?void 0:m.call(x,A,null,e,this.state.context)),Se(this,wt,Gt).call(this,{type:"success",data:A}),A}catch(A){try{throw await((b=(y=P(this,Oe).config).onError)==null?void 0:b.call(y,A,e,this.state.context,this)),await((_=(w=this.options).onError)==null?void 0:_.call(w,A,e,this.state.context)),await((k=(j=P(this,Oe).config).onSettled)==null?void 0:k.call(j,void 0,A,this.state.variables,this.state.context,this)),await((T=(E=this.options).onSettled)==null?void 0:T.call(E,void 0,A,e,this.state.context)),A}finally{Se(this,wt,Gt).call(this,{type:"error",error:A})}}finally{P(this,Oe).runNext(this)}}},bt=new WeakMap,Oe=new WeakMap,Dr=new WeakMap,wt=new WeakSet,Gt=function(e){const r=s=>{switch(e.type){case"failed":return{...s,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...s,isPaused:!0};case"continue":return{...s,isPaused:!1};case"pending":return{...s,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...s,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...s,data:void 0,error:e.error,failureCount:s.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}};this.state=r(this.state),Ie.batch(()=>{P(this,bt).forEach(s=>{s.onMutationUpdate(e)}),P(this,Oe).notify({mutation:this,type:"updated",action:e})})},Qp);function C1(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Ve,$n,Zp,S1=(Zp=class extends ya{constructor(e={}){super();te(this,Ve);te(this,$n);this.config=e,Q(this,Ve,new Map),Q(this,$n,Date.now())}build(e,r,s){const n=new N1({mutationCache:this,mutationId:++ti(this,$n)._,options:e.defaultMutationOptions(r),state:s});return this.add(n),n}add(e){const r=ai(e),s=P(this,Ve).get(r)??[];s.push(e),P(this,Ve).set(r,s),this.notify({type:"added",mutation:e})}remove(e){var s;const r=ai(e);if(P(this,Ve).has(r)){const n=(s=P(this,Ve).get(r))==null?void 0:s.filter(a=>a!==e);n&&(n.length===0?P(this,Ve).delete(r):P(this,Ve).set(r,n))}this.notify({type:"removed",mutation:e})}canRun(e){var s;const r=(s=P(this,Ve).get(ai(e)))==null?void 0:s.find(n=>n.state.status==="pending");return!r||r===e}runNext(e){var s;const r=(s=P(this,Ve).get(ai(e)))==null?void 0:s.find(n=>n!==e&&n.state.isPaused);return(r==null?void 0:r.continue())??Promise.resolve()}clear(){Ie.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}getAll(){return[...P(this,Ve).values()].flat()}find(e){const r={exact:!0,...e};return this.getAll().find(s=>Xd(r,s))}findAll(e={}){return this.getAll().filter(r=>Xd(e,r))}notify(e){Ie.batch(()=>{this.listeners.forEach(r=>{r(e)})})}resumePausedMutations(){const e=this.getAll().filter(r=>r.state.isPaused);return Ie.batch(()=>Promise.all(e.map(r=>r.continue().catch(rt))))}},Ve=new WeakMap,$n=new WeakMap,Zp);function ai(t){var e;return((e=t.options.scope)==null?void 0:e.id)??String(t.mutationId)}function eu(t){return{onFetch:(e,r)=>{var u,p,h,f,x;const s=e.options,n=(h=(p=(u=e.fetchOptions)==null?void 0:u.meta)==null?void 0:p.fetchMore)==null?void 0:h.direction,a=((f=e.state.data)==null?void 0:f.pages)||[],o=((x=e.state.data)==null?void 0:x.pageParams)||[];let l={pages:[],pageParams:[]},c=0;const d=async()=>{let m=!1;const y=_=>{Object.defineProperty(_,"signal",{enumerable:!0,get:()=>(e.signal.aborted?m=!0:e.signal.addEventListener("abort",()=>{m=!0}),e.signal)})},b=ym(e.options,e.fetchOptions),w=async(_,j,k)=>{if(m)return Promise.reject();if(j==null&&_.pages.length)return Promise.resolve(_);const E={queryKey:e.queryKey,pageParam:j,direction:k?"backward":"forward",meta:e.options.meta};y(E);const T=await b(E),{maxPages:A}=e.options,R=k?x1:y1;return{pages:R(_.pages,T,A),pageParams:R(_.pageParams,j,A)}};if(n&&a.length){const _=n==="backward",j=_?P1:tu,k={pages:a,pageParams:o},E=j(s,k);l=await w(k,E,_)}else{const _=t??a.length;do{const j=c===0?o[0]??s.initialPageParam:tu(s,l);if(c>0&&j==null)break;l=await w(l,j),c++}while(c<_)}return l};e.options.persister?e.fetchFn=()=>{var m,y;return(y=(m=e.options).persister)==null?void 0:y.call(m,d,{queryKey:e.queryKey,meta:e.options.meta,signal:e.signal},r)}:e.fetchFn=d}}}function tu(t,{pages:e,pageParams:r}){const s=e.length-1;return e.length>0?t.getNextPageParam(e[s],e,r[s],r):void 0}function P1(t,{pages:e,pageParams:r}){var s;return e.length>0?(s=t.getPreviousPageParam)==null?void 0:s.call(t,e[0],e,r[0],r):void 0}var ge,er,tr,Ns,Cs,rr,Ss,Ps,ef,R1=(ef=class{constructor(t={}){te(this,ge);te(this,er);te(this,tr);te(this,Ns);te(this,Cs);te(this,rr);te(this,Ss);te(this,Ps);Q(this,ge,t.queryCache||new A1),Q(this,er,t.mutationCache||new S1),Q(this,tr,t.defaultOptions||{}),Q(this,Ns,new Map),Q(this,Cs,new Map),Q(this,rr,0)}mount(){ti(this,rr)._++,P(this,rr)===1&&(Q(this,Ss,xm.subscribe(async t=>{t&&(await this.resumePausedMutations(),P(this,ge).onFocus())})),Q(this,Ps,Li.subscribe(async t=>{t&&(await this.resumePausedMutations(),P(this,ge).onOnline())})))}unmount(){var t,e;ti(this,rr)._--,P(this,rr)===0&&((t=P(this,Ss))==null||t.call(this),Q(this,Ss,void 0),(e=P(this,Ps))==null||e.call(this),Q(this,Ps,void 0))}isFetching(t){return P(this,ge).findAll({...t,fetchStatus:"fetching"}).length}isMutating(t){return P(this,er).findAll({...t,status:"pending"}).length}getQueryData(t){var r;const e=this.defaultQueryOptions({queryKey:t});return(r=P(this,ge).get(e.queryHash))==null?void 0:r.state.data}ensureQueryData(t){const e=this.getQueryData(t.queryKey);if(e===void 0)return this.fetchQuery(t);{const r=this.defaultQueryOptions(t),s=P(this,ge).build(this,r);return t.revalidateIfStale&&s.isStaleByTime(Yd(r.staleTime,s))&&this.prefetchQuery(r),Promise.resolve(e)}}getQueriesData(t){return P(this,ge).findAll(t).map(({queryKey:e,state:r})=>{const s=r.data;return[e,s]})}setQueryData(t,e,r){const s=this.defaultQueryOptions({queryKey:t}),n=P(this,ge).get(s.queryHash),a=n==null?void 0:n.state.data,o=u1(e,a);if(o!==void 0)return P(this,ge).build(this,s).setData(o,{...r,manual:!0})}setQueriesData(t,e,r){return Ie.batch(()=>P(this,ge).findAll(t).map(({queryKey:s})=>[s,this.setQueryData(s,e,r)]))}getQueryState(t){var r;const e=this.defaultQueryOptions({queryKey:t});return(r=P(this,ge).get(e.queryHash))==null?void 0:r.state}removeQueries(t){const e=P(this,ge);Ie.batch(()=>{e.findAll(t).forEach(r=>{e.remove(r)})})}resetQueries(t,e){const r=P(this,ge),s={type:"active",...t};return Ie.batch(()=>(r.findAll(t).forEach(n=>
338{n.reset()}),this.refetchQueries(s,e)))}cancelQueries(t={},e={}){const r={revert:!0,...e},s=Ie.batch(()=>P(this,ge).findAll(t).map(n=>n.cancel(r)));return Promise.all(s).then(rt).catch(rt)}invalidateQueries(t={},e={}){return Ie.batch(()=>{if(P(this,ge).findAll(t).forEach(s=>{s.invalidate()}),t.refetchType==="none")return Promise.resolve();const r={...t,type:t.refetchType??t.type??"active"};return this.refetchQueries(r,e)})}refetchQueries(t={},e){const r={...e,cancelRefetch:(e==null?void 0:e.cancelRefetch)??!0},s=Ie.batch(()=>P(this,ge).findAll(t).filter(n=>!n.isDisabled()).map(n=>{let a=n.fetch(void 0,r);return r.throwOnError||(a=a.catch(rt)),n.state.fetchStatus==="paused"?Promise.resolve():a}));return Promise.all(s).then(rt)}fetchQuery(t){const e=this.defaultQueryOptions(t);e.retry===void 0&&(e.retry=!1);const r=P(this,ge).build(this,e);return r.isStaleByTime(Yd(e.staleTime,r))?r.fetch(e):Promise.resolve(r.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(rt).catch(rt)}fetchInfiniteQuery(t){return t.behavior=eu(t.pages),this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(rt).catch(rt)}ensureInfiniteQueryData(t){return t.behavior=eu(t.pages),this.ensureQueryData(t)}resumePausedMutations(){return Li.isOnline()?P(this,er).resumePausedMutations():Promise.resolve()}getQueryCache(){return P(this,ge)}getMutationCache(){return P(this,er)}getDefaultOptions(){return P(this,tr)}setDefaultOptions(t){Q(this,tr,t)}setQueryDefaults(t,e){P(this,Ns).set(vn(t),{queryKey:t,defaultOptions:e})}getQueryDefaults(t){const e=[...P(this,Ns).values()];let r={};return e.forEach(s=>{bn(t,s.queryKey)&&(r={...r,...s.defaultOptions})}),r}setMutationDefaults(t,e){P(this,Cs).set(vn(t),{mutationKey:t,defaultOptions:e})}getMutationDefaults(t){const e=[...P(this,Cs).values()];let r={};return e.forEach(s=>{bn(t,s.mutationKey)&&(r={...r,...s.defaultOptions})}),r}defaultQueryOptions(t){if(t._defaulted)return t;const e={...P(this,tr).queries,...this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return e.queryHash||(e.queryHash=uc(e.queryKey,e)),e.refetchOnReconnect===void 0&&(e.refetchOnReconnect=e.networkMode!=="always"),e.throwOnError===void 0&&(e.throwOnError=!!e.suspense),!e.networkMode&&e.persister&&(e.networkMode="offlineFirst"),e.enabled!==!0&&e.queryFn===hc&&(e.enabled=!1),e}defaultMutationOptions(t){return t!=null&&t._defaulted?t:{...P(this,tr).mutations,...(t==null?void 0:t.mutationKey)&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){P(this,ge).clear(),P(this,er).clear()}},ge=new WeakMap,er=new WeakMap,tr=new WeakMap,Ns=new WeakMap,Cs=new WeakMap,rr=new WeakMap,Ss=new WeakMap,Ps=new WeakMap,ef),O1=g.createContext(void 0),I1=({client:t,children:e})=>(g.useEffect(()=>(t.mount(),()=>{t.unmount()}),[t]),i.jsx(O1.Provider,{value:t,children:e}));/**
339 * @remix-run/router v1.20.0
340 *
341 * Copyright (c) Remix Software Inc.
342 *
343 * This source code is licensed under the MIT license found in the
344 * LICENSE.md file in the root directory of this source tree.
345 *
346 * @license MIT
347 */function wn(){return wn=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];
vendor: 4,903 bytes, line 347
347for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(t[s]=r[s])}return t},wn.apply(this,arguments)}var sr;(function(t){t.Pop="POP",t.Push="PUSH",t.Replace="REPLACE"})(sr||(sr={}));const ru="popstate";function D1(t){t===void 0&&(t={});function e(s,n){let{pathname:a,search:o,hash:l}=s.location;return rl("",{pathname:a,search:o,hash:l},n.state&&n.state.usr||null,n.state&&n.state.key||"default")}function r(s,n){return typeof n=="string"?n:Mi(n)}return M1(e,r,null,t)}function be(t,e){if(t===!1||t===null||typeof t>"u")throw new Error(e)}function jm(t,e){if(!t){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}function L1(){return Math.random().toString(36).substr(2,8)}function su(t,e){return{usr:t.state,key:t.key,idx:e}}function rl(t,e,r,s){return r===void 0&&(r=null),wn({pathname:typeof t=="string"?t:t.pathname,search:"",hash:""},typeof e=="string"?Bs(e):e,{state:r,key:e&&e.key||s||L1()})}function Mi(t){let{pathname:e="/",search:r="",hash:s=""}=t;return r&&r!=="?"&&(e+=r.charAt(0)==="?"?r:"?"+r),s&&s!=="#"&&(e+=s.charAt(0)==="#"?s:"#"+s),e}function Bs(t){let e={};if(t){let r=t.indexOf("#");r>=0&&(e.hash=t.substr(r),t=t.substr(0,r));let s=t.indexOf("?");s>=0&&(e.search=t.substr(s),t=t.substr(0,s)),t&&(e.pathname=t)}return e}function M1(t,e,r,s){s===void 0&&(s={});let{window:n=document.defaultView,v5Compat:a=!1}=s,o=n.history,l=sr.Pop,c=null,d=u();d==null&&(d=0,o.replaceState(wn({},o.state,{idx:d}),""));function u(){return(o.state||{idx:null}).idx}function p(){l=sr.Pop;let y=u(),b=y==null?null:y-d;d=y,c&&c({action:l,location:m.location,delta:b})}function h(y,b){l=sr.Push;let w=rl(m.location,y,b);d=u()+1;let _=su(w,d),j=m.createHref(w);try{o.pushState(_,"",j)}catch(k){if(k instanceof DOMException&&k.name==="DataCloneError")throw k;n.location.assign(j)}a&&c&&c({action:l,location:m.location,delta:1})}function f(y,b){l=sr.Replace;let w=rl(m.location,y,b);d=u();let _=su(w,d),j=m.createHref(w);o.replaceState(_,"",j),a&&c&&c({action:l,location:m.location,delta:0})}function x(y){let b=n.location.origin!=="null"?n.location.origin:n.location.href,w=typeof y=="string"?y:Mi(y);return w=w.replace(/ $/,"%20"),be(b,"No window.location.(origin|href) available to create URL for href: "+w),new URL(w,b)}let m={get action(){return l},get location(){return t(n,o)},listen(y){if(c)throw new Error("A history only accepts one active listener");return n.addEventListener(ru,p),c=y,()=>{n.removeEventListener(ru,p),c=null}},createHref(y){return e(n,y)},createURL:x,encodeLocation(y){let b=x(y);return{pathname:b.pathname,search:b.search,hash:b.hash}},push:h,replace:f,go(y){return o.go(y)}};return m}var nu;(function(t){t.data="data",t.deferred="deferred",t.redirect="redirect",t.error="error"})(nu||(nu={}));function V1(t,e,r){return r===void 0&&(r="/"),$1(t,e,r,!1)}function $1(t,e,r,s){let n=typeof e=="string"?Bs(e):e,a=pc(n.pathname||"/",r);if(a==null)return null;let o=km(t);F1(o);let l=null;for(let c=0;l==null&&c<o.length;++c){let d=X1(a);l=Y1(o[c],d,s)}return l}function km(t,e,r,s){e===void 0&&(e=[]),r===void 0&&(r=[]),s===void 0&&(s="");let n=(a,o,l)=>{let c={relativePath:l===void 0?a.path||"":l,caseSensitive:a.caseSensitive===!0,childrenIndex:o,route:a};c.relativePath.startsWith("/")&&(be(c.relativePath.startsWith(s),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+s+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(s.length));let d=ar([s,c.relativePath]),u=r.concat(c);a.children&&a.children.length>0&&(be(a.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),km(a.children,e,u,d)),!(a.path==null&&!a.index)&&e.push({path:d,score:G1(d,a.index),routesMeta:u})};return t.forEach((a,o)=>{var l;if(a.path===""||!((l=a.path)!=null&&l.includes("?")))n(a,o);else for(let c of Em(a.path))n(a,o,c)}),e}function Em(t){let e=t.split("/");if(e.length===0)return[];let[r,...s]=e,n=r.endsWith("?"),a=r.replace(/\?$/,"");if(s.length===0)return n?[a,""]:[a];let o=Em(s.join("/")),l=[];return l.push(...o.map(c=>c===""?a:[a,c].join("/"))),n&&l.push(...o),l.map(c=>t.startsWith("/")&&c===""?"/":c)}function F1(t){t.sort((e,r)=>e.score!==r.score?r.score-e.score:K1(e.routesMeta.map(s=>s.childrenIndex),r.routesMeta.map(s=>s.childrenIndex)))}const U1=/^:[\w-]+$/,B1=3,z1=2,H1=1,W1=10,q1=-2,iu=t=>t==="*";function G1(t,e){let r=t.split("/"),s=r.length;return r.some(iu)&&(s+=q1),e&&(s+=z1),r.filter(n=>!iu(n)).reduce((n,a)=>n+(U1.test(a)?B1:a===""?H1:W1),s)}function K1(t,e){return t.length===e.length&&t.slice(0,-1).every((s,n)=>s===e[n])?t[t.length-1]-e[e.length-1]:0}function Y1(t,e,r){let{routesMeta:s}=t,n={},a="/",o=[];for(let l=0;l<s.length;++l){let c=s[l],d=l===s.length-1,u=a==="/"?e:e.slice(a.length)||"/",p=au({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},u),h=c.route;
vendor: 9,388 bytes, lines 347-356
347if(!p&&d&&r&&!s[s.length-1].route.index&&(p=au({path:c.relativePath,caseSensitive:c.caseSensitive,end:!1},u)),!p)return null;Object.assign(n,p.params),o.push({params:n,pathname:ar([a,p.pathname]),pathnameBase:t_(ar([a,p.pathnameBase])),route:h}),p.pathnameBase!=="/"&&(a=ar([a,p.pathnameBase]))}return o}function au(t,e){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[r,s]=J1(t.path,t.caseSensitive,t.end),n=e.match(r);if(!n)return null;let a=n[0],o=a.replace(/(.)\/+$/,"$1"),l=n.slice(1);return{params:s.reduce((d,u,p)=>{let{paramName:h,isOptional:f}=u;if(h==="*"){let m=l[p]||"";o=a.slice(0,a.length-m.length).replace(/(.)\/+$/,"$1")}const x=l[p];return f&&!x?d[h]=void 0:d[h]=(x||"").replace(/%2F/g,"/"),d},{}),pathname:a,pathnameBase:o,pattern:t}}function J1(t,e,r){e===void 0&&(e=!1),r===void 0&&(r=!0),jm(t==="*"||!t.endsWith("*")||t.endsWith("/*"),'Route path "'+t+'" will be treated as if it were '+('"'+t.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+t.replace(/\*$/,"/*")+'".'));let s=[],n="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,l,c)=>(s.push({paramName:l,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return t.endsWith("*")?(s.push({paramName:"*"}),n+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?n+="\\/*$":t!==""&&t!=="/"&&(n+="(?:(?=\\/|$))"),[new RegExp(n,e?void 0:"i"),s]}function X1(t){try{return t.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(e){return jm(!1,'The URL path "'+t+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+e+").")),t}}function pc(t,e){if(e==="/")return t;if(!t.toLowerCase().startsWith(e.toLowerCase()))return null;let r=e.endsWith("/")?e.length-1:e.length,s=t.charAt(r);return s&&s!=="/"?null:t.slice(r)||"/"}function Q1(t,e){e===void 0&&(e="/");let{pathname:r,search:s="",hash:n=""}=typeof t=="string"?Bs(t):t;return{pathname:r?r.startsWith("/")?r:Z1(r,e):e,search:r_(s),hash:s_(n)}}function Z1(t,e){let r=e.replace(/\/+$/,"").split("/");return t.split("/").forEach(n=>{n===".."?r.length>1&&r.pop():n!=="."&&r.push(n)}),r.length>1?r.join("/"):"/"}function Ja(t,e,r,s){return"Cannot include a '"+t+"' character in a manually specified "+("`to."+e+"` field ["+JSON.stringify(s)+"].  Please separate it out to the ")+("`to."+r+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function e_(t){return t.filter((e,r)=>r===0||e.route.path&&e.route.path.length>0)}function fc(t,e){let r=e_(t);return e?r.map((s,n)=>n===r.length-1?s.pathname:s.pathnameBase):r.map(s=>s.pathnameBase)}function mc(t,e,r,s){s===void 0&&(s=!1);let n;typeof t=="string"?n=Bs(t):(n=wn({},t),be(!n.pathname||!n.pathname.includes("?"),Ja("?","pathname","search",n)),be(!n.pathname||!n.pathname.includes("#"),Ja("#","pathname","hash",n)),be(!n.search||!n.search.includes("#"),Ja("#","search","hash",n)));let a=t===""||n.pathname==="",o=a?"/":n.pathname,l;if(o==null)l=r;else{let p=e.length-1;if(!s&&o.startsWith("..")){let h=o.split("/");for(;h[0]==="..";)h.shift(),p-=1;n.pathname=h.join("/")}l=p>=0?e[p]:"/"}let c=Q1(n,l),d=o&&o!=="/"&&o.endsWith("/"),u=(a||o===".")&&r.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const ar=t=>t.join("/").replace(/\/\/+/g,"/"),t_=t=>t.replace(/\/+$/,"").replace(/^\/*/,"/"),r_=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,s_=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t;function n_(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}const Tm=["post","put","patch","delete"];new Set(Tm);const i_=["get",...Tm];new Set(i_);/**
348 * React Router v6.27.0
349 *
350 * Copyright (c) Remix Software Inc.
351 *
352 * This source code is licensed under the MIT license found in the
353 * LICENSE.md file in the root directory of this source tree.
354 *
355 * @license MIT
356 */function _n(){return _n=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(t[s]=r[s])}return t},_n.apply(this,arguments)}const gc=g.createContext(null),a_=g.createContext(null),gr=g.createContext(null),va=g.createContext(null),Ft=g.createContext({outlet:null,matches:[],isDataRoute:!1}),Am=g.createContext(null);function o_(t,e){let{relative:r}=e===void 0?{}:e;zs()||be(!1);let{basename:s,navigator:n}=g.useContext(gr),{hash:a,pathname:o,search:l}=Cm(t,{relative:r}),c=o;return s!=="/"&&(c=o==="/"?s:ar([s,o])),n.createHref({pathname:c,search:l,hash:a})}function zs(){return g.useContext(va)!=null}function He(){return zs()||be(!1),g.useContext(va).location}function Nm(t){g.useContext(gr).static||g.useLayoutEffect(t)}function ba(){let{isDataRoute:t}=g.useContext(Ft);return t?b_():l_()}function l_(){zs()||be(!1);let t=g.useContext(gc),{basename:e,future:r,navigator:s}=g.useContext(gr),{matches:n}=g.useContext(Ft),{pathname:a}=He(),o=JSON.stringify(fc(n,r.v7_relativeSplatPath)),l=g.useRef(!1);return Nm(()=>{l.current=!0}),g.useCallback(function(d,u){if(u===void 0&&(u={}),!l.current)return;if(typeof d=="number"){s.go(d);return}let p=mc(d,JSON.parse(o),a,u.relative==="path");t==null&&e!=="/"&&(p.pathname=p.pathname==="/"?e:ar([e,p.pathname])),(u.replace?s.replace:s.push)(p,u.state,u)},[e,s,o,a,t])}function ut(){let{matches:t}=g.useContext(Ft),e=t[t.length-1];return e?e.params:{}}function Cm(t,e){let{relative:r}=e===void 0?{}:e,{future:s}=g.useContext(gr),{matches:n}=g.useContext(Ft),{pathname:a}=He(),o=JSON.stringify(fc(n,s.v7_relativeSplatPath));return g.useMemo(()=>mc(t,JSON.parse(o),a,r==="path"),[t,o,a,r])}function c_(t,e){return d_(t,e)}function d_(t,e,r,s){zs()||be(!1);let{navigator:n}=g.useContext(gr),{matches:a}=g.useContext(Ft),o=a[a.length-1],l=o?o.params:{};o&&o.pathname;let c=o?o.pathnameBase:"/";o&&o.route;let d=He(),u;if(e){var p;let y=typeof e=="string"?Bs(e):e;c==="/"||(p=y.pathname)!=null&&p.startsWith(c)||be(!1),u=y}else u=d;let h=u.pathname||"/",f=h;if(c!=="/"){let y=c.replace(/^\//,"").split("/");f="/"+h.replace(/^\//,"").split("/").slice(y.length).join("/")}let x=V1(t,{pathname:f}),m=m_(x&&x.map(y=>Object.assign({},y,{params:Object.assign({},l,y.params),pathname:ar([c,n.encodeLocation?n.encodeLocation(y.pathname).pathname:y.pathname]),pathnameBase:y.pathnameBase==="/"?c:ar([c,n.encodeLocation?n.encodeLocation(y.pathnameBase).pathname:y.pathnameBase])})),a,r,s);return e&&m?g.createElement(va.Provider,{value:{location:_n({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:sr.Pop}},m):m}function u_(){let t=v_(),e=n_(t)?t.status+" "+t.statusText:t instanceof Error?t.message:JSON.stringify(t),r=t instanceof Error?t.stack:null,n={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return g.createElement(g.Fragment,null,g.createElement("h2",null,"Unexpected Application Error!"),g.createElement("h3",{style:{fontStyle:"italic"}},e),r?g.createElement("pre",{style:n},r):null,null)}const h_=g.createElement(u_,null);class p_ extends g.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,r){return r.location!==e.location||r.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:r.error,location:r.location,revalidation:e.revalidation||r.revalidation}}componentDidCatch(e,r){console.error("React Router caught the following error during render",e,r)}render(){return this.state.error!==void 0?g.createElement(Ft.Provider,{value:this.props.routeContext},g.createElement(Am.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function f_(t){let{routeContext:e,match:r,children:s}=t,n=g.useContext(gc);return n&&n.static&&n.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(n.staticContext._deepestRenderedBoundaryId=r.route.id),g.createElement(Ft.Provider,{value:e},s)}function m_(t,e,r,s){var n;if(e===void 0&&(e=[]),r===void 0&&(r=null),s===void 0&&(s=null),t==null){var a;if(!r)return null;if(r.errors)t=r.matches;else if((a=s)!=null&&a.v7_partialHydration&&e.length===0&&!r.initialized&&r.matches.length>0)t=r.matches;else return null}let o=t,l=(n=r)==null?void 0:n.errors;if(l!=null){let u=o.findIndex(p=>p.route.id&&(l==null?void 0:l[p.route.id])!==void 0);u>=0||be(!1),o=o.slice(0,Math.min(o.length,u+1))}let c=!1,d=-1;if(r&&s&&s.v7_partialHydration)for(let u=0;u<o.length;u++){let p=o[u];if((p.route.HydrateFallback||p.route.hydrateFallbackElement)&&(d=u),p.route.id){let{loaderData:h,errors:f}=r,x=p.route.loader&&h[p.route.id]===void 0&&(!f||f[p.route.id]===void 0);if(p.route.lazy||x){c=!0,d>=0?o=o.slice(0,d+1):o=[o[0]];break}}}return o.reduceRight((u,p,h)=>{let f,x=!1,m=null,y=null;r&&(f=l&&p.route.id?l[p.route.id]:void 0,m=p.route.errorElement||h_,c&&(d<0&&h===0?(x=!0,y=null):d===h&&(x=!0,y=p.route.hydrateFallbackElement||null)));let b=e.concat(o.slice(0,h+1)),w=()=>{let _;return f?_=m:x?_=y:p.route.Component?_=g.createElement(p.route.Component,null):p.route.element?_=p.route.element:_=u,g.createElement(f_,{match:p,routeC
356ontext:{outlet:u,matches:b,isDataRoute:r!=null},children:_})};return r&&(p.route.ErrorBoundary||p.route.errorElement||h===0)?g.createElement(p_,{location:r.location,revalidation:r.revalidation,component:m,error:f,children:w(),routeContext:{outlet:null,matches:b,isDataRoute:!0}}):w()},null)}var Sm=function(t){return t.UseBlocker="useBlocker",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t}(Sm||{}),Vi=function(t){return t.UseBlocker="useBlocker",t.UseLoaderData="useLoaderData",t.UseActionData="useActionData",t.UseRouteError="useRouteError",t.UseNavigation="useNavigation",t.UseRouteLoaderData="useRouteLoaderData",t.UseMatches="useMatches",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t.UseRouteId="useRouteId",t}(Vi||{});function g_(t){let e=g.useContext(gc);return e||be(!1),e}function y_(t){let e=g.useContext(a_);return e||be(!1),e}function x_(t){let e=g.useContext(Ft);return e||be(!1),e}function Pm(t){let e=x_(),r=e.matches[e.matches.length-1];return r.route.id||be(!1),r.route.id}function v_(){var t;let e=g.useContext(Am),r=y_(Vi.UseRouteError),s=Pm(Vi.UseRouteError);return e!==void 0?e:(t=r.errors)==null?void 0:t[s]}function b_(){let{router:t}=g_(Sm.UseNavigateStable),e=Pm(Vi.UseNavigateStable),r=g.useRef(!1);return Nm(()=>{r.current=!0}),g.useCallback(function(n,a){a===void 0&&(a={}),r.current&&(typeof n=="number"?t.navigate(n):t.navigate(n,_n({fromRouteId:e},a)))},[t,e])}function at(t){let{to:e,replace:r,state:s,relative:n}=t;zs()||be(!1);let{future:a,static:o}=g.useContext(gr),{matches:l}=g.useContext(Ft),{pathname:c}=He(),d=ba(),u=mc(e,fc(l,a.v7_relativeSplatPath),c,n==="path"),p=JSON.stringify(u);return g.useEffect(()=>d(JSON.parse(p),{replace:r,state:s,relative:n}),[d,p,n,r,s]),null}function me(t){be(!1)}function w_(t){let{basename:e="/",children:r=null,location:s,navigationType:n=sr.Pop,navigator:a,static:o=!1,future:l}=t;zs()&&be(!1);let c=e.replace(/^\/*/,"/"),d=g.useMemo(()=>({basename:c,navigator:a,static:o,future:_n({v7_relativeSplatPath:!1},l)}),[c,l,a,o]);typeof s=="string"&&(s=Bs(s));let{pathname:u="/",search:p="",hash:h="",state:f=null,key:x="default"}=s,m=g.useMemo(()=>{let y=pc(u,c);return y==null?null:{location:{pathname:y,search:p,hash:h,state:f,key:x},navigationType:n}},[c,u,p,h,f,x,n]);return m==null?null:g.createElement(gr.Provider,{value:d},g.createElement(va.Provider,{children:r,value:m}))}function __(t){let{children:e,location:r}=t;return c_(sl(e),r)}new Promise(()=>{});function sl(t,e){e===void 0&&(e=[]);let r=[];return g.Children.forEach(t,(s,n)=>{if(!g.isValidElement(s))return;let a=[...e,n];if(s.type===g.Fragment){r.push.apply(r,sl(s.props.children,a));return}s.type!==me&&be(!1),!s.props.index||!s.props.children||be(!1);let o={id:s.props.id||a.join("-"),caseSensitive:s.props.caseSensitive,element:s.props.element,Component:s.props.Component,index:s.props.index,path:s.props.path,loader:s.props.loader,action:s.props.action,errorElement:s.props.errorElement,ErrorBoundary:s.props.ErrorBoundary,hasErrorBoundary:s.props.ErrorBoundary!=null||s.props.errorElement!=null,shouldRevalidate:s.props.shouldRevalidate,handle:s.props.handle,lazy:s.props.lazy};s.props.children&&(o.children=sl(s.props.children,a)),r.push(o)}),r}/**
357 * React Router DOM v6.27.0
358 *
359 * Copyright (c) Remix Software Inc.
360 *
361 * This source code is licensed under the MIT license found in the
362 * LICENSE.md file in the root directory of this source tree.
363 *
364 * @license MIT
365 */function nl(){return nl=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];
365for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(t[s]=r[s])}return t},nl.apply(this,arguments)}function j_(t,e){if(t==null)return{};var r={},s=Object.keys(t),n,a;for(a=0;a<s.length;a++)n=s[a],!(e.indexOf(n)>=0)&&(r[n]=t[n]);return r}function k_(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function E_(t,e){return t.button===0&&(!e||e==="_self")&&!k_(t)}const T_=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],A_="6";try{window.__reactRouterVersion=A_}catch{}const N_="startTransition",ou=rf[N_];function C_(t){let{basename:e,children:r,future:s,window:n}=t,a=g.useRef();a.current==null&&(a.current=D1({window:n,v5Compat:!0}));let o=a.current,[l,c]=g.useState({action:o.action,location:o.location}),{v7_startTransition:d}=s||{},u=g.useCallback(p=>{d&&ou?ou(()=>c(p)):c(p)},[c,d]);return g.useLayoutEffect(()=>o.listen(u),[o,u]),g.createElement(w_,{basename:e,children:r,location:l.location,navigationType:l.action,navigator:o,future:s})}const S_=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",P_=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ae=g.forwardRef(function(e,r){let{onClick:s,relative:n,reloadDocument:a,replace:o,state:l,target:c,to:d,preventScrollReset:u,viewTransition:p}=e,h=j_(e,T_),{basename:f}=g.useContext(gr),x,m=!1;if(typeof d=="string"&&P_.test(d)&&(x=d,S_))try{let _=new URL(window.location.href),j=d.startsWith("//")?new URL(_.protocol+d):new URL(d),k=pc(j.pathname,f);j.origin===_.origin&&k!=null?d=k+j.search+j.hash:m=!0}catch{}let y=o_(d,{relative:n}),b=R_(d,{replace:o,state:l,target:c,preventScrollReset:u,relative:n,viewTransition:p});function w(_){s&&s(_),_.defaultPrevented||b(_)}return g.createElement("a",nl({},h,{href:x||y,onClick:m||a?s:w,ref:r,target:c}))});var lu;(function(t){t.UseScrollRestoration="useScrollRestoration",t.UseSubmit="useSubmit",t.UseSubmitFetcher="useSubmitFetcher",t.UseFetcher="useFetcher",t.useViewTransitionState="useViewTransitionState"})(lu||(lu={}));var cu;(function(t){t.UseFetcher="useFetcher",t.UseFetchers="useFetchers",t.UseScrollRestoration="useScrollRestoration"})(cu||(cu={}));function R_(t,e){let{target:r,replace:s,state:n,preventScrollReset:a,relative:o,viewTransition:l}=e===void 0?{}:e,c=ba(),d=He(),u=Cm(t,{relative:o});return g.useCallback(p=>{if(E_(p,r)){p.preventDefault();let h=s!==void 0?s:Mi(d)===Mi(u);c(t,{replace:h,state:n,preventScrollReset:a,relative:o,viewTransition:l})}},[d,c,u,s,n,r,t,a,o,l])}const Os=46,$i=i.jsx("path",{d:"M4 4h16a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-9l-5 4v-4H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z"}),Rm=i.jsx("path",{d:"M3 9h18v3a7 7 0 0 1-7 7h-4a7 7 0 0 1-7-7V9zm3-5 1.5 3h9L18 4l1.8.9-1.5 3H5.7l-1.5-3L6 4z"}),Om=i.jsx("path",{d:"M6 3h12a1 1 0 0 1 1 1v17l-7-4-7 4V4a1 1 0 0 1 1-1z"}),Im=i.jsx("path",{d:"M10 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-8l-2-2z"}),Dm=i.jsx("path",{d:"M2 3h3l2.6 11.6a2 2 0 0 0 2 1.6h7.9a2 2 0 0 0 2-1.5L21 7H6.6M9 20a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3zm9 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3z"}),Lm=i.jsx("path",{d:"M21 3c0 9.4-5.4 15-12 15a7.6 7.6 0 0 1-2.6-.4c1.9-5 5.7-8 11-9.4-5.7.4-9.9 2.9-12 7.2A8 8 0 0 1 4 11C4 6.3 9.7 3 21 3zM4.6 19.4 6 20.8 3.4 23 2 21.6l2.6-2.2z"}),Mm=i.jsx("path",{d:"M12 2l1.9 5.6L19.5 9.5 13.9 11.4 12 17l-1.9-5.6L4.5 9.5l5.6-1.9L12 2zm6.5 12 .9 2.6 2.6.9-2.6.9-.9 2.6-.9-2.6-2.6-.9 2.6-.9.9-2.6z"}),Vm=i.jsx("path",{d:"M7 2v2h10V2h2v2h1a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h1V2h2zM4 10v10h16V10H4z"}),Fi={bg:"#392822",fg:"#e99575"},Ui={bg:"#1f3038",fg:"#79b8d4"},Bi={bg:"#38262f",fg:"#db8eae"},$m={bg:"#302a3d",fg:"#ad9ad9"},Fm={bg:"#1e3d36",fg:"#9cd0b6"},Um={bg:"#383322",fg:"#d8c56f"},O_=[{size:30,offset:-8,top:-5,tint:Ui,icon:$i,z:3},{size:26,offset:20,top:27,tint:Fi,icon:Rm,z:2},{size:34,offset:47,top:-6,tint:Bi,icon:Om,z:1},{size:28,offset:74,top:11,tint:$m,icon:Im,z:3},{size:32,offset:101,top:24,tint:Um,icon:Dm,z:2},{size:26,offset:128,top:-3,tint:Fm,icon:Lm,z:1},{size:30,offset:155,top:13,tint:Fi,icon:Mm,z:3},{size:34,offset:182,top:-7,tint:Ui,icon:Vm,z:2},{size:28,offset:209,top:26,tint:Bi,icon:$i,z:1}],I_=[{size:28,offset:-8,top:27,tint:Fi,icon:Rm,z:3},{size:34,offset:20,top:-7,tint:Ui,icon:$i,z:2},{size:30,offset:47,top:14,tint:Um,icon:Mm,z:1},{size:26,offset:74,top:-3,tint:Bi,icon:Dm,z:3},{size:32,offset:101,top:25,tint:$m,icon:Om,z:2},{size:28,offset:128,top:8,tint:Fm,icon:Lm,z:1},{size:34,offset:155,top:-8,tint:Fi,icon:Im,z:3},{size:26,offset:182,top:26,tint:Ui,icon:Vm,z:2},{size:30,offset:209,top:9,tint:Bi,icon:$i,z:1}];function du({side:t,chips:e}){return i.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-y-0 hidden w-[240px] min-[861px]:block",style:t==="l"?{left:"0.5%"}:{right:"0.5%"},children:e.map((r,s)=>i.jsx("span",{className:"absolute grid place-items-center rounded-full",style:{width:r.size,height:r.size,top:r.top,zIndex:r.z,background:r.tint.bg,color:r.tint.fg,boxShadow:"0 0 0 1px rgba(255,255,255,.06)",...t==="l"?{left:r.offset}:{right:r.offset}}
365,children:i.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",style:{width:"48%",height:"48%"},children:r.icon})},`${t}-${s}`))})}const yc=({badge:t="✦ NEW ✦",message:e="Chat with your recipes in",linkText:r="Claude",href:s="/mcp",label:n="Announcement"})=>i.jsxs("div",{className:["fixed inset-x-0 top-0 z-[60] flex items-center justify-center gap-[10px]","overflow-hidden px-4 text-[13px] font-semibold sm:text-sm","bg-black dark:bg-black","border-b border-white/10 dark:border-white/[.08]"].join(" "),role:"region","aria-label":n,style:{height:`calc(${Os}px + env(safe-area-inset-top, 0px))`,paddingTop:"env(safe-area-inset-top, 0px)"},children:[i.jsx(du,{side:"l",chips:O_}),i.jsxs("span",{className:"relative z-10 flex items-center gap-2 sm:gap-[10px] whitespace-nowrap text-[11px] min-[360px]:text-[13px] sm:text-sm",children:[i.jsx("span",{className:"text-[#D97757]",children:t}),e&&i.jsx("span",{className:"text-[#f0f2f6]",children:e}),s.startsWith("/")?i.jsx(ae,{to:s,className:"font-bold text-[#D97757] transition-colors hover:text-[#ef9a78]",children:r}):i.jsx("a",{href:s,className:"font-bold text-[#D97757] transition-colors hover:text-[#ef9a78]",children:r})]}),i.jsx(du,{side:"r",chips:I_})]}),D_=ma("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Fr=g.forwardRef(({className:t,variant:e,size:r,asChild:s=!1,...n},a)=>{const o=s?Rs:"button";return i.jsx(o,{className:q(D_({variant:e,size:r,className:t})),ref:a,...n})});Fr.displayName="Button";const Ti=t=>{const e=document.getElementById(t);e&&e.scrollIntoView({behavior:"smooth",block:"start"})},zi={ios:"https://apps.apple.com/us/app/honeydew-capture-recipes/id6714449541?platform=iphone",android:"https://play.google.com/store/apps/details?id=com.redhoney.eatlist"};function Bm(){const[t,e]=g.useState(null);return g.useEffect(()=>{const r=navigator.userAgent;/Android/i.test(r)?e("android"):(/iPhone|iPad|iPod/i.test(r)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1)&&e("ios")},[]),t}var L_=rf.useId||(()=>{}),M_=0;function dn(t){const[e,r]=g.useState(L_());return Dt(()=>{r(s=>s??String(M_++))},[t]),e?`radix-${e}`:""}var Xa="focusScope.autoFocusOnMount",Qa="focusScope.autoFocusOnUnmount",uu={bubbles:!1,cancelable:!0},V_="FocusScope",zm=g.forwardRef((t,e)=>{const{loop:r=!1,trapped:s=!1,onMountAutoFocus:n,onUnmountAutoFocus:a,...o}=t,[l,c]=g.useState(null),d=Je(n),u=Je(a),p=g.useRef(null),h=Ee(e,m=>c(m)),f=g.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;g.useEffect(()=>{if(s){let m=function(_){if(f.paused||!l)return;const j=_.target;l.contains(j)?p.current=j:Kt(p.current,{select:!0})},y=function(_){if(f.paused||!l)return;const j=_.relatedTarget;j!==null&&(l.contains(j)||Kt(p.current,{select:!0}))},b=function(_){if(document.activeElement===document.body)for(const k of _)k.removedNodes.length>0&&Kt(l)};document.addEventListener("focusin",m),document.addEventListener("focusout",y);const w=new MutationObserver(b);return l&&w.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",m),document.removeEventListener("focusout",y),w.disconnect()}}},[s,l,f.paused]),g.useEffect(()=>{if(l){pu.add(f);const m=document.activeElement;if(!l.contains(m)){const b=new CustomEvent(Xa,uu);l.addEventListener(Xa,d),l.dispatchEvent(b),b.defaultPrevented||($_(H_(Hm(l)),{select:!0}),document.activeElement===m&&Kt(l))}return()=>{l.removeEventListener(Xa,d),setTimeout(()=>{const b=new CustomEvent(Qa,uu);l.addEventListener(Qa,u),l.dispatchEvent(b),b.defaultPrevented||Kt(m??document.body,{select:!0}),l.removeEventListener(Qa,u),pu.remove(f)},0)}}},[l,d,u,f]);const x=g.useCallback(m=>{if(!r&&!s||f.paused)return;const y=m.key==="Tab"&&!m.altKey&&!m.ctrlKey&&!m.metaKey,b=document.activeElement;if(y&&b){const w=m.currentTarget,[_,j]=F_(w);_&&j?!m.shiftKey&&b===j?(m.preventDefault(),r&&Kt(_,{select:!0})):m.shiftKey&&b===_&&(m.preventDefault(),r&&Kt(j,{select:!0})):b===w&&m.preventDefault()}},[r,s,f.paused]);return i.jsx(se.div,{tabIndex:-1,...o,ref:h,onKeyDown:x})});zm.displayName=V_;function $_(t,{select:e=!1}={}){const r=document.activeElement;for(const s of t)if(Kt(s,{select:e}),document.activeElement!==r)return}function F_(t){const e=Hm(t),r=hu(e,t),s=hu(e.reverse(),t);return[r,s]}function Hm(t){const e=[],r=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:s=>{const n=s.tagName==="INPUT"&&s.type==="hidden";return s.disabled||s.hidden||n?NodeFilter.FILTER_SKIP:s.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;r.nextNode();)e.push(r.currentNode);return e}function hu(t,e){for(const r of t)if(!U_(r,{upTo:e}))return r}function U_(t,{upTo:e}){if(getComputedStyle(t).visibility==="hidden")return!0;for(;t;){if(e!==void 0&&t===e)return!1;if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1}function B_(t){return t instanceof HTMLInputElement&&"select"in t}function Kt(t,{select:e=!1}={}){if(t&&t.focus){const r=document.activeElement;t.focus({preventScroll:!0}),t!==r&&B_(t)&&e&&t.select()}}var pu=z_();function z_(){let t=[];return{add(e){const r=t[0];e!==r&&(r==null||r.pause()),t=fu(t,e),t.unshift(e)},remove(e){var r;t=fu(t,e),(r=t[0])==null||r.resume()}}}function fu(t,e){const r=[...t],s=r.indexOf(e);return s!==-1&&r.splice(s,1),r}function H_(t){return t.filter(e=>e.tagName!=="A")}var Za=0;function W_(){g.useEffect(()=>{const t=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",t[0]??mu()),document.body.insertAdjacentElement("beforeend",t[1]??mu()),Za++,()=>{Za===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(e
vendor: 6,101 bytes, lines 365-380
365=>e.remove()),Za--}},[])}function mu(){const t=document.createElement("span");return t.setAttribute("data-radix-focus-guard",""),t.tabIndex=0,t.style.outline="none",t.style.opacity="0",t.style.position="fixed",t.style.pointerEvents="none",t}var jt=function(){return jt=Object.assign||function(e){for(var r,s=1,n=arguments.length;s<n;s++){r=arguments[s];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},jt.apply(this,arguments)};function Hs(t,e){var r={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(r[s]=t[s]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,s=Object.getOwnPropertySymbols(t);n<s.length;n++)e.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(t,s[n])&&(r[s[n]]=t[s[n]]);return r}function q_(t,e,r,s){function n(a){return a instanceof r?a:new r(function(o){o(a)})}return new(r||(r=Promise))(function(a,o){function l(u){try{d(s.next(u))}catch(p){o(p)}}function c(u){try{d(s.throw(u))}catch(p){o(p)}}function d(u){u.done?a(u.value):n(u.value).then(l,c)}d((s=s.apply(t,e||[])).next())})}function G_(t,e,r){if(r||arguments.length===2)for(var s=0,n=e.length,a;s<n;s++)(a||!(s in e))&&(a||(a=Array.prototype.slice.call(e,0,s)),a[s]=e[s]);return t.concat(a||Array.prototype.slice.call(e))}var Ai="right-scroll-bar-position",Ni="width-before-scroll-bar",K_="with-scroll-bars-hidden",Y_="--removed-body-scroll-bar-size";function eo(t,e){return typeof t=="function"?t(e):t&&(t.current=e),t}function J_(t,e){var r=g.useState(function(){return{value:t,callback:e,facade:{get current(){return r.value},set current(s){var n=r.value;n!==s&&(r.value=s,r.callback(s,n))}}}})[0];return r.callback=e,r.facade}var X_=typeof window<"u"?g.useLayoutEffect:g.useEffect,gu=new WeakMap;function Q_(t,e){var r=J_(null,function(s){return t.forEach(function(n){return eo(n,s)})});return X_(function(){var s=gu.get(r);if(s){var n=new Set(s),a=new Set(t),o=r.current;n.forEach(function(l){a.has(l)||eo(l,null)}),a.forEach(function(l){n.has(l)||eo(l,o)})}gu.set(r,t)},[t]),r}function Z_(t){return t}function e2(t,e){e===void 0&&(e=Z_);var r=[],s=!1,n={read:function(){if(s)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:t},useMedium:function(a){var o=e(a,s);return r.push(o),function(){r=r.filter(function(l){return l!==o})}},assignSyncMedium:function(a){for(s=!0;r.length;){var o=r;r=[],o.forEach(a)}r={push:function(l){return a(l)},filter:function(){return r}}},assignMedium:function(a){s=!0;var o=[];if(r.length){var l=r;r=[],l.forEach(a),o=r}var c=function(){var u=o;o=[],u.forEach(a)},d=function(){return Promise.resolve().then(c)};d(),r={push:function(u){o.push(u),d()},filter:function(u){return o=o.filter(u),r}}}};return n}function t2(t){t===void 0&&(t={});var e=e2(null);return e.options=jt({async:!0,ssr:!1},t),e}var Wm=function(t){var e=t.sideCar,r=Hs(t,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var s=e.read();if(!s)throw new Error("Sidecar medium not found");return g.createElement(s,jt({},r))};Wm.isSideCarExport=!0;function r2(t,e){return t.useMedium(e),Wm}var qm=t2(),to=function(){},wa=g.forwardRef(function(t,e){var r=g.useRef(null),s=g.useState({onScrollCapture:to,onWheelCapture:to,onTouchMoveCapture:to}),n=s[0],a=s[1],o=t.forwardProps,l=t.children,c=t.className,d=t.removeScrollBar,u=t.enabled,p=t.shards,h=t.sideCar,f=t.noIsolation,x=t.inert,m=t.allowPinchZoom,y=t.as,b=y===void 0?"div":y,w=t.gapMode,_=Hs(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),j=h,k=Q_([r,e]),E=jt(jt({},_),n);return g.createElement(g.Fragment,null,u&&g.createElement(j,{sideCar:qm,removeScrollBar:d,shards:p,noIsolation:f,inert:x,setCallbacks:a,allowPinchZoom:!!m,lockRef:r,gapMode:w}),o?g.cloneElement(g.Children.only(l),jt(jt({},E),{ref:k})):g.createElement(b,jt({},E,{className:c,ref:k}),l))});wa.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};wa.classNames={fullWidth:Ni,zeroRight:Ai};var s2=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function n2(){if(!document)return null;var t=document.createElement("style");t.type="text/css";var e=s2();return e&&t.setAttribute("nonce",e),t}function i2(t,e){t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}function a2(t){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(t)}var o2=function(){var t=0,e=null;return{add:function(r){t==0&&(e=n2())&&(i2(e,r),a2(e)),t++},remove:function(){t--,!t&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}},l2=function(){var t=o2();return function(e,r){g.useEffect(function(){return t.add(e),function(){t.remove()}},[e&&r])}},Gm=function(){var t=l2(),e=function(r){var s=r.styles,n=r.dynamic;return t(s,n),null};return e},c2={left:0,top:0,right:0,gap:0},ro=function(t){return parseInt(t||"",10)||0},d2=function(t){var e=window.getComputedStyle(document.body),r=e[t==="padding"?"paddingLeft":"marginLeft"],s=e[t==="padding"?"paddingTop":"marginTop"],n=e[t==="padding"?"paddingRight":"marginRight"];return[ro(r),ro(s),ro(n)]},u2=function(t){if(t===void 0&&(t="margin"),typeof window>"u")return c2;var e=d2(t),r=document.documentElement.clientWidth,s=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,s-r+e[2]-e[0])}},h2=Gm(),xs="data-scroll-locked",p2=function(t,e,r,s){var n=t.left,a=t.top,o=t.right,l=t.gap;return r===void 0&&(r="margin"),`
366  .`.concat(K_,` {
367   overflow: hidden `).concat(s,`;
368   padding-right: `).concat(l,"px ").concat(s,`;
369  }
370  body[`).concat(xs,`] {
371    overflow: hidden `).concat(s,`;
372    overscroll-behavior: contain;
373    `).concat([e&&"position: relative ".concat(s,";"),r==="margin"&&`
374    padding-left: `.concat(n,`px;
375    padding-top: `).concat(a,`px;
376    padding-right: `).concat(o,`px;
377    margin-left:0;
378    margin-top:0;
379    margin-right: `).concat(l,"px ").concat(s,`;
380    `),r==="padding"&&"padding-right: ".concat(l,"px ").concat(s,";
380")].filter(Boolean).join(""),`
381  }
382  
383  .`).concat(Ai,` {
384    right: `).concat(l,"px ").concat(s,`;
385  }
386  
387  .`).concat(Ni,` {
388    margin-right: `).concat(l,"px ").concat(s,`;
389  }
390  
391  .`).concat(Ai," .").concat(Ai,` {
392    right: 0 `).concat(s,`;
393  }
394  
395  .`).concat(Ni," .").concat(Ni,` {
396    margin-right: 0 `).concat(s,`;
397  }
398  
399  body[`).concat(xs,`] {
400    `).concat(Y_,": ").concat(l,`px;
401  }
402`)},yu=function(){var t=parseInt(document.body.getAttribute(xs)||"0",10);return isFinite(t)?t:0},f2=function(){g.useEffect(function(){return document.body.setAttribute(xs,(yu()+1).toString()),function(){var t=yu()-1;t<=0?document.body.removeAttribute(xs):document.body.setAttribute(xs,t.toString())}},[])},m2=function(t){var e=t.noRelative,r=t.noImportant,s=t.gapMode,n=s===void 0?"margin":s;f2();var a=g.useMemo(function(){return u2(n)},[n]);return g.createElement(h2,{styles:p2(a,!e,n,r?"":"!important")})},il=!1;if(typeof window<"u")try{var oi=Object.defineProperty({},"passive",{get:function(){return il=!0,!0}});window.addEventListener("test",oi,oi),window.removeEventListener("test",oi,oi)}catch{il=!1}var Kr=il?{passive:!1}:!1,g2=function(t){return t.tagName==="TEXTAREA"},Km=function(t,e){if(!(t instanceof Element))return!1;var r=window.getComputedStyle(t);return r[e]!=="hidden"&&!(r.overflowY===r.overflowX&&!g2(t)&&r[e]==="visible")},y2=function(t){return Km(t,"overflowY")},x2=function(t){return Km(t,"overflowX")},xu=function(t,e){var r=e.ownerDocument,s=e;do{typeof ShadowRoot<"u"&&s instanceof ShadowRoot&&(s=s.host);var n=Ym(t,s);if(n){var a=Jm(t,s),o=a[1],l=a[2];if(o>l)return!0}s=s.parentNode}while(s&&s!==r.body);return!1},v2=function(t){var e=t.scrollTop,r=t.scrollHeight,s=t.clientHeight;return[e,r,s]},b2=function(t){var e=t.scrollLeft,r=t.scrollWidth,s=t.clientWidth;return[e,r,s]},Ym=function(t,e){return t==="v"?y2(e):x2(e)},Jm=function(t,e){return t==="v"?v2(e):b2(e)},w2=function(t,e){return t==="h"&&e==="rtl"?-1:1},_2=function(t,e,r,s,n){var a=w2(t,window.getComputedStyle(e).direction),o=a*s,l=r.target,c=e.contains(l),d=!1,u=o>0,p=0,h=0;do{var f=Jm(t,l),x=f[0],m=f[1],y=f[2],b=m-y-a*x;(x||b)&&Ym(t,l)&&(p+=b,h+=x),l instanceof ShadowRoot?l=l.host:l=l.parentNode}while(!c&&l!==document.body||c&&(e.contains(l)||e===l));return(u&&(Math.abs(p)<1||!n)||!u&&(Math.abs(h)<1||!n))&&(d=!0),d},li=function(t){return"changedTouches"in t?[t.changedTouches[0].clientX,t.changedTouches[0].clientY]:[0,0]},vu=function(t){return[t.deltaX,t.deltaY]},bu=function(t){return t&&"current"in t?t.current:t},j2=function(t,e){return t[0]===e[0]&&t[1]===e[1]},k2=function(t){return`
403  .block-interactivity-`.concat(t,` {pointer-events: none;}
404  .allow-interactivity-`).concat(t,` {pointer-events: all;}
405`)},E2=0,Yr=[];function T2(t){var e=g.useRef([]),r=g.useRef([0,0]),s=g.useRef(),n=g.useState(E2++)[0],a=g.useState(Gm)[0],o=g.useRef(t);g.useEffect(function(){o.current=t},[t]),g.useEffect(function(){if(t.inert){document.body.classList.add("block-interactivity-".concat(n));var m=G_([t.lockRef.current],(t.shards||[]).map(bu),!0).filter(Boolean);return m.forEach(function(y){return y.classList.add("allow-interactivity-".concat(n))}),function(){document.body.classList.remove("block-interactivity-".concat(n)),m.forEach(function(y){return y.classList.remove("allow-interactivity-".concat(n))})}}},[t.inert,t.lockRef.current,t.shards]);var l=g.useCallback(function(m,y){if("touches"in m&&m.touches.length===2||m.type==="wheel"&&m.ctrlKey)return!o.current.allowPinchZoom;var b=li(m),w=r.current,_="deltaX"in m?m.deltaX:w[0]-b[0],j="deltaY"in m?m.deltaY:w[1]-b[1],k,E=m.target,T=Math.abs(_)>Math.abs(j)?"h":"v";if("touches"in m&&T==="h"&&E.type==="range")return!1;var A=xu(T,E);if(!A)return!0;if(A?k=T:(k=T==="v"?"h":"v",A=xu(T,E)),!A)return!1;if(!s.current&&"changedTouches"in m&&(_||j)&&(s.current=k),!k)return!0;var R=s.current||k;return _2(R,y,m,R==="h"?_:j,!0)},[]),c=g.useCallback(function(m){var y=m;if(!(!Yr.length||Yr[Yr.length-1]!==a)){var b="deltaY"in y?vu(y):li(y),w=e.current.filter(function(k){return k.name===y.type&&(k.target===y.target||y.target===k.shadowParent)&&j2(k.delta,b)})[0];if(w&&w.should){y.cancelable&&y.preventDefault();return}
vendor: 6,665 bytes, line 405
405if(!w){var _=(o.current.shards||[]).map(bu).filter(Boolean).filter(function(k){return k.contains(y.target)}),j=_.length>0?l(y,_[0]):!o.current.noIsolation;j&&y.cancelable&&y.preventDefault()}}},[]),d=g.useCallback(function(m,y,b,w){var _={name:m,delta:y,target:b,should:w,shadowParent:A2(b)};e.current.push(_),setTimeout(function(){e.current=e.current.filter(function(j){return j!==_})},1)},[]),u=g.useCallback(function(m){r.current=li(m),s.current=void 0},[]),p=g.useCallback(function(m){d(m.type,vu(m),m.target,l(m,t.lockRef.current))},[]),h=g.useCallback(function(m){d(m.type,li(m),m.target,l(m,t.lockRef.current))},[]);g.useEffect(function(){return Yr.push(a),t.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:h}),document.addEventListener("wheel",c,Kr),document.addEventListener("touchmove",c,Kr),document.addEventListener("touchstart",u,Kr),function(){Yr=Yr.filter(function(m){return m!==a}),document.removeEventListener("wheel",c,Kr),document.removeEventListener("touchmove",c,Kr),document.removeEventListener("touchstart",u,Kr)}},[]);var f=t.removeScrollBar,x=t.inert;return g.createElement(g.Fragment,null,x?g.createElement(a,{styles:k2(n)}):null,f?g.createElement(m2,{gapMode:t.gapMode}):null)}function A2(t){for(var e=null;t!==null;)t instanceof ShadowRoot&&(e=t.host,t=t.host),t=t.parentNode;return e}const N2=r2(qm,T2);var Xm=g.forwardRef(function(t,e){return g.createElement(wa,jt({},t,{ref:e,sideCar:N2}))});Xm.classNames=wa.classNames;var C2=function(t){if(typeof document>"u")return null;var e=Array.isArray(t)?t[0]:t;return e.ownerDocument.body},Jr=new WeakMap,ci=new WeakMap,di={},so=0,Qm=function(t){return t&&(t.host||Qm(t.parentNode))},S2=function(t,e){return e.map(function(r){if(t.contains(r))return r;var s=Qm(r);return s&&t.contains(s)?s:(console.error("aria-hidden",r,"in not contained inside",t,". Doing nothing"),null)}).filter(function(r){return!!r})},P2=function(t,e,r,s){var n=S2(e,Array.isArray(t)?t:[t]);di[r]||(di[r]=new WeakMap);var a=di[r],o=[],l=new Set,c=new Set(n),d=function(p){!p||l.has(p)||(l.add(p),d(p.parentNode))};n.forEach(d);var u=function(p){!p||c.has(p)||Array.prototype.forEach.call(p.children,function(h){if(l.has(h))u(h);else try{var f=h.getAttribute(s),x=f!==null&&f!=="false",m=(Jr.get(h)||0)+1,y=(a.get(h)||0)+1;Jr.set(h,m),a.set(h,y),o.push(h),m===1&&x&&ci.set(h,!0),y===1&&h.setAttribute(r,"true"),x||h.setAttribute(s,"true")}catch(b){console.error("aria-hidden: cannot operate on ",h,b)}})};return u(e),l.clear(),so++,function(){o.forEach(function(p){var h=Jr.get(p)-1,f=a.get(p)-1;Jr.set(p,h),a.set(p,f),h||(ci.has(p)||p.removeAttribute(s),ci.delete(p)),f||p.removeAttribute(r)}),so--,so||(Jr=new WeakMap,Jr=new WeakMap,ci=new WeakMap,di={})}},R2=function(t,e,r){r===void 0&&(r="data-aria-hidden");var s=Array.from(Array.isArray(t)?t:[t]),n=C2(t);return n?(s.push.apply(s,Array.from(n.querySelectorAll("[aria-live]"))),P2(s,n,r,"aria-hidden")):function(){return null}},xc="Dialog",[Zm,g4]=Vs(xc),[O2,ht]=Zm(xc),eg=t=>{const{__scopeDialog:e,children:r,open:s,defaultOpen:n,onOpenChange:a,modal:o=!0}=t,l=g.useRef(null),c=g.useRef(null),[d=!1,u]=$s({prop:s,defaultProp:n,onChange:a});return i.jsx(O2,{scope:e,triggerRef:l,contentRef:c,contentId:dn(),titleId:dn(),descriptionId:dn(),open:d,onOpenChange:u,onOpenToggle:g.useCallback(()=>u(p=>!p),[u]),modal:o,children:r})};eg.displayName=xc;var tg="DialogTrigger",rg=g.forwardRef((t,e)=>{const{__scopeDialog:r,...s}=t,n=ht(tg,r),a=Ee(e,n.triggerRef);return i.jsx(se.button,{type:"button","aria-haspopup":"dialog","aria-expanded":n.open,"aria-controls":n.contentId,"data-state":wc(n.open),...s,ref:a,onClick:re(t.onClick,n.onOpenToggle)})});rg.displayName=tg;var vc="DialogPortal",[I2,sg]=Zm(vc,{forceMount:void 0}),ng=t=>{const{__scopeDialog:e,forceMount:r,children:s,container:n}=t,a=ht(vc,e);return i.jsx(I2,{scope:e,forceMount:r,children:g.Children.map(s,o=>i.jsx(mr,{present:r||a.open,children:i.jsx(tc,{asChild:!0,container:n,children:o})}))})};ng.displayName=vc;var Hi="DialogOverlay",ig=g.forwardRef((t,e)=>{const r=sg(Hi,t.__scopeDialog),{forceMount:s=r.forceMount,...n}=t,a=ht(Hi,t.__scopeDialog);return a.modal?i.jsx(mr,{present:s||a.open,children:i.jsx(D2,{...n,ref:e})}):null});ig.displayName=Hi;var D2=g.forwardRef((t,e)=>{const{__scopeDialog:r,...s}=t,n=ht(Hi,r);return i.jsx(Xm,{as:Rs,allowPinchZoom:!0,shards:[n.contentRef],children:i.jsx(se.div,{"data-state":wc(n.open),...s,ref:e,style:{pointerEvents:"auto",...s.style}})})}),Ur="DialogContent",ag=g.forwardRef((t,e)=>{const r=sg(Ur,t.__scopeDialog),{forceMount:s=r.forceMount,...n}=t,a=ht(Ur,t.__scopeDialog);return i.jsx(mr,{present:s||a.open,children:a.modal?i.jsx(L2,{...n,ref:e}):i.jsx(M2,{...n,ref:e})})});ag.displayName=Ur;var L2=g.forwardRef((t,e)=>{const r=ht(Ur,t.__scopeDialog),s=g.useRef(null),n=Ee(e,r.contentRef,s);return g.useEffect(()=>{const a=s.current;if(a)return R2(a)},[]),i.jsx(og,{...t,ref:n,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:re(t.onCloseAutoFocus,a=>{var o;a.preventDefault(),(o=r.triggerRef.current)==null||o.focus()}),onPointerDownOutside:re(t.onPointerDownOutside,a=>{const o=a.detail.originalEvent,l=o.button===0&&o.ctrlKey===!0;(o.button===2||l)&&a.preventDefault()}),onFocusOutside:re(t.onFocusOutside,a=>a.preventDefault())})}),M2=g.forwardRef((t,e)=>{const r=ht(Ur,t.__scopeDialog),s=g.useRef(!1),n=g.useRef(!1);return i.jsx(og,{...t,ref:e,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{var o,l;(o=t.onCloseAutoFocus)==null||o.call(t,a),a.defaultPrevented||(s.current||(l=r.triggerRef.current)==null||l.focus(),a.preventDefault()),s.current=!1,n.current=!1},onInteractOutside:a=>{var c,d;(c=t.onInteractOutside)==null||c.call(t,a),a.defaultPrevented||(s.current=!0,a.detail.originalEvent.type==="pointerdown"&&(n.current=!0));const o=a.target;((d=r.triggerRef.current)==null?void 0:d.contains(o))&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&n.current&&a.preventDefault()}})}),og=g.forwardRef((t,e)=>{const{__scopeDialog:r,trapFocus:s,onOpenAutoFocus:n,onCloseAutoFocus:a,...o}=t,l=ht(Ur,r),c=g.useRef(null),d=Ee(e,c);return W_(),i.jsxs(i.Fragment,{children:[i.jsx(zm,{asChild:!0,loop:!0,trapped:s,onMountAutoFocus:n,onUnmountAutoFocus:a,children:i.jsx(ua,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":wc(l.open),...o,ref:d,onDismiss:()=>l.onOpenChange(!1)})}),i.jsxs(i.Fragment,{children:[i.jsx(V2,{titleId:l.titleId}),i.jsx(F2,{contentRef:c,descriptionId:l.descriptionId})]})]})}),bc="DialogTitle",lg=g.forwardRef((t,e)=>{const{__scopeDialog:r,...s}=t,n=ht(bc,r);return i.jsx(se.h2,{id:n.titleId,...s,ref:e})});
405lg.displayName=bc;var cg="DialogDescription",dg=g.forwardRef((t,e)=>{const{__scopeDialog:r,...s}=t,n=ht(cg,r);return i.jsx(se.p,{id:n.descriptionId,...s,ref:e})});dg.displayName=cg;var ug="DialogClose",hg=g.forwardRef((t,e)=>{const{__scopeDialog:r,...s}=t,n=ht(ug,r);return i.jsx(se.button,{type:"button",...s,ref:e,onClick:re(t.onClick,()=>n.onOpenChange(!1))})});hg.displayName=ug;function wc(t){return t?"open":"closed"}var pg="DialogTitleWarning",[y4,fg]=$v(pg,{contentName:Ur,titleName:bc,docsSlug:"dialog"}),V2=({titleId:t})=>{const e=fg(pg),r=`\`${e.contentName}\` requires a \`${e.titleName}\` for the component to be accessible for screen reader users.
406
407If you want to hide the \`${e.titleName}\`, you can wrap it with our VisuallyHidden component.
408
409For more information, see https://radix-ui.com/primitives/docs/components/${e.docsSlug}`;return g.useEffect(()=>{t&&(document.getElementById(t)||console.error(r))},[r,t]),null},$2="DialogDescriptionWarning",F2=({contentRef:t,descriptionId:e})=>{const s=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${fg($2).contentName}}.`;return g.useEffect(()=>{var a;const n=(a=t.current)==null?void 0:a.getAttribute("aria-describedby");e&&n&&(document.getElementById(e)||console.warn(s))},[s,t,e]),null},U2=eg,B2=rg,z2=ng,mg=ig,gg=ag,yg=lg,xg=dg,H2=hg;const W2=U2,q2=B2,G2=z2,vg=g.forwardRef(({className:t,...e},r)=>i.jsx(mg,{ref:r,className:q("fixed inset-0 z-50 bg-black/80  data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...e}));vg.displayName=mg.displayName;const bg=g.forwardRef(({className:t,children:e,...r},s)=>i.jsxs(G2,{children:[i.jsx(vg,{}),i.jsxs(gg,{ref:s,className:q("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...r,children:[e,i.jsxs(H2,{className:"absolute right-4 top-4 roun
409ded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[i.jsx(ga,{className:"h-4 w-4"}),i.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));bg.displayName=gg.displayName;const wg=g.forwardRef(({className:t,...e},r)=>i.jsx(yg,{ref:r,className:q("text-lg font-semibold leading-none tracking-tight",t),...e}));wg.displayName=yg.displayName;const _g=g.forwardRef(({className:t,...e},r)=>i.jsx(xg,{ref:r,className:q("text-sm text-muted-foreground",t),...e}));_g.displayName=xg.displayName;const K2="https://apps.apple.com/us/app/honeydew-capture-recipes/id6714449541?platform=iphone",Y2="https://play.google.com/store/apps/details?id=com.redhoney.eatlist",J2="/badges/app-store.svg",X2="/badges/google-play.svg",_c=({children:t})=>{const e=Bm();return i.jsxs(W2,{children:[i.jsx(q2,{asChild:!0,onClick:r=>{e&&(r.preventDefault(),window.location.assign(zi[e]))},children:t}),i.jsx(bg,{className:"!rounded-3xl bg-white dark:bg-gray-800 border-none shadow-xl animate-scale-in transition-all p-0 overflow-y-auto max-h-[calc(100dvh-2rem)] !w-[calc(100%-2rem)] max-w-[400px]",children:i.jsxs("div",{className:"p-8 pt-12 flex flex-col items-center justify-center",children:[i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"Honeydew app icon",width:80,height:80,className:"mb-6 h-20 w-20 rounded-[20px] object-contain shadow-[0_16px_36px_rgba(27,43,33,.18)]"}),i.jsx(wg,{className:"text-2xl font-bold text-gray-900 dark:text-gray-100 mb-3 text-center",children:"Download Honeydew"}),i.jsx(_g,{className:"mb-8 text-gray-600 dark:text-gray-300 text-center text-base max-w-[280px]",children:"Get the app to start your cooking journey"}),i.jsxs("div",{className:"flex flex-col min-[400px]:flex-row items-center justify-center gap-3 w-full",children:[i.jsx("a",{href:K2,target:"_blank",rel:"noopener noreferrer",className:"rounded-[9px] transition-transform hover:scale-105 dark:ring-1 dark:ring-white/20","aria-label":"Download on the App Store",children:i.jsx("img",{src:J2,alt:"Download on the App Store",className:"h-12 w-auto object-contain"})}),i.jsx("a",{href:Y2,target:"_blank",rel:"noopener noreferrer",className:"rounded-[9px] transition-transform hover:scale-105 dark:ring-1 dark:ring-white/20","aria-label":"Get it on Google Play",children:i.jsx("img",{src:X2,alt:"Get it on Google Play",className:"h-12 w-auto object-contain"})})]})]})})]})},jg=g.createContext(void 0);function Q2({children:t}){const[e,r]=g.useState("light");g.useEffect(()=>{let n=null;try{const l=localStorage.getItem("theme");(l==="light"||l==="dark")&&(n=l)}catch{}const a=window.matchMedia("(prefers-color-scheme: dark)").matches,o=n||(a?"dark":"light");r(o),o==="dark"?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},[]),g.useEffect(()=>{document.querySelectorAll('meta[name="theme-color"]').forEach(n=>{n.content=e==="dark"?"#0b0b0c":"#ffffff"})},[e]);const s=()=>{const n=e==="light"?"dark":"light";r(n);try{localStorage.setItem("theme",n)}catch{}n==="dark"?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")};return i.jsx(jg.Provider,{value:{theme:e,toggleTheme:s},children:t})}function kg(){const t=g.useContext(jg);if(t===void 0)throw new Error("useTheme must be used within a ThemeProvider");return t}function al({className:t}){const{theme:e,toggleTheme:r}=kg(),s=async n=>{const a=n.clientX,o=n.clientY,l=Math.hypot(Math.max(a,window.innerWidth-a),Math.max(o,window.innerHeight-o));if(!document.startViewTransition||window.matchMedia("(prefers-reduced-motion: reduce)").matches){r();return}await document.startViewTransition(()=>{r()}).ready;const d=[`circle(0px at ${a}px ${o}px)`,`circle(${l}px at ${a}px ${o}px)`];document.documentElement.animate({clipPath:e==="dark"?d.reverse():d},{duration:500,easing:"ease-in-out",pseudoElement:e==="dark"?"::view-transition-old(root)":"::view-transition-new(root)"})};return i.jsxs("button",{onClick:s,className:q("relative inline-flex h-11 w-11 items-center justify-center rounded-full","transition-all duration-500","hover:shadow-md focus:outline-none","select-none touch-manipulation","group",t),style:{WebkitTapHighlightColor:"transparent",WebkitUserSelect:"none",MozUserSelect:"none",msUserSelect:"none",userSelect:"none"},"aria-label":`Switch to ${e==="light"?"dark":"light"} mode`,children:[i.jsxs("div",{className:"relative z-10 flex items-center justify-center",children:[i.jsx(Kb,{className:q("h-5 w-5 rotate-0 scale-100 transition-all duration-500",e==="dark"&&"rotate-90 scale-0","text-yellow-600 dark:text-yellow-400",e==="dark"&&"absolute")}
409),i.jsx(Ub,{className:q("h-5 w-5 rotate-90 scale-0 transition-all duration-500",e==="dark"&&"rotate-0 scale-100","text-slate-700 dark:text-slate-200",e==="light"&&"absolute")})]}),i.jsx("span",{className:q("absolute inset-0 rounded-full","bg-gradient-to-tr transition-opacity duration-500",e==="light"?"from-honeydew-400/0 to-honeydew-600/0 group-hover:from-honeydew-400/15 group-hover:to-honeydew-600/15":"from-honeydew-300/0 to-honeydew-500/0 group-hover:from-honeydew-300/15 group-hover:to-honeydew-500/15")}),i.jsx("span",{className:q("absolute inset-0 rounded-full animate-ping","bg-gradient-to-tr opacity-0 group-hover:opacity-10",e==="light"?"from-honeydew-400 to-honeydew-600":"from-honeydew-300 to-honeydew-500","pointer-events-none")})]})}const no=100,Z2="10px 12px 10px 14px",wu="0 3px 6px 0 rgba(0,0,0,.05), 0 1px 1px 0 rgba(0,0,0,.09)",_u="0 6px 20px 0 rgba(0,0,0,.55), 0 1px 1px 0 rgba(0,0,0,.4)",ju=[{label:"Guides",to:"/guides"},{label:"MCP",to:"/mcp"},{label:"Affiliates",to:"/affiliates"}],pt=({topOffset:t=0})=>{const[e,r]=S.useState(!1),[s,n]=S.useState(!1),{theme:a}=kg(),o=a==="dark",{pathname:l}=He(),c=l==="/",d=S.useRef(null),u=S.useRef(null),p=S.useId();S.useEffect(()=>{r(!1)},[l]),S.useEffect(()=>{if(!e)return;const m=b=>{var w;(w=d.current)!=null&&w.contains(b.target)||r(!1)},y=b=>{var w;b.key==="Escape"&&(r(!1),(w=u.current)==null||w.focus())};return document.addEventListener("pointerdown",m),document.addEventListener("keydown",y),()=>{document.removeEventListener("pointerdown",m),document.removeEventListener("keydown",y)}},[e]),S.useEffect(()=>{const m=()=>{n(window.scrollY>16)};return window.addEventListener("scroll",m,{passive:!0}),()=>window.removeEventListener("scroll",m)},[]);const h=m=>y=>{m.hash&&c&&(y.preventDefault(),Ti(m.hash)),r(!1)},f={borderRadius:no,padding:Z2,maxWidth:s?1040:1160,background:s?o?"rgba(23,23,25,.82)":"rgba(255,255,255,.82)":"transparent",backdropFilter:s?"blur(18px)":"none",WebkitBackdropFilter:s?"blur(18px)":"none",border:`1px solid ${s?o?"rgba(255,255,255,.08)":"rgba(0,0,0,.05)":"transparent"}`,boxShadow:s?o?_u:wu:"none",transition:"max-width .42s cubic-bezier(.22,.8,.32,1), background .35s, box-shadow .35s, border-color .35s, backdrop-filter .35s"},x="text-[15px] font-semibold text-gray-600 dark:text-gray-300 opacity-85 hover:opacity-100 hover:text-honeydew-600 dark:hover:text-honeydew-400 transition-opacity whitespace-nowrap";return i.jsxs("nav",{ref:d,"aria-label":"Main navigation",className:"fixed left-0 right-0 z-50 px-3 pt-4",style:{top:`calc(${t}px + env(safe-area-inset-top, 0px))`},children:[i.jsxs("div",{className:"nav-pill mx-auto flex min-w-0 items-center justify-between gap-2 lg:gap-7",style:f,children:[i.jsxs(ae,{to:"/",className:"nav-brand flex min-w-0 items-center flex-none",children:[i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"Honeydew Logo",style:{width:36,height:36,marginRight:8},className:"nav-brand-icon object-contain"}),i.jsxs("span",{className:"nav-wordmark-gradient font-round text-xl sm:text-2xl font-bold bg-clip-text text-transparent select-none",style:{letterSpacing:"-1px"},children:["Honeydew",i.jsx("sup",{className:"text-[0.6rem] font-normal ml-[1px] text-honeydew-700 dark:text-honeydew-500 opacity-80 mx-[3px] py-0",style:{transform:"translateY(-5px)"},children:"™"})]})]}),i.jsx("div",{className:"hidden lg:flex items-center",style:{gap:28},children:ju.map(m=>m.to==="/guides"?i.jsx("a",{href:m.to,className:x,children:m.label},m.label):i.jsx(ae,{to:m.to,className:x,onClick:h(m),children:m.label},m.label))}),i.jsxs("div",{className:"flex items-center gap-2 flex-none",children:[i.jsx(al,{className:"hidden lg:block"}),i.jsx(_c,{children:i.jsxs(Fr,{className:"bg-[#111214] text-white hover:bg-[#111214] dark:bg-white dark:text-[#0b0b0c] dark:hover:bg-white font-semibold shadow transition-transform duration-[250ms] ease-[cubic-bezier(.3,1.4,.5,1)] hover:scale-105",style:{borderRadius:no,paddingLeft:"0.75rem",paddingRight:"0.75rem",height:"2.75rem",fontSize:"0.95rem"},children:[i.jsx("svg",{viewBox:"0 0 24 24",className:"hidden sm:block mr-2 h-[15px] w-[15px] fill-current","aria-hidden":"true",children:i.jsx("path",{d:"M12 3a1 1 0 0 1 1 1v9.59l3.29-3.3a1 1 0 1 1 1.42 1.42l-5 5a1 1 0 0 1-1.42 0l-5-5a1 1 0 1 1 1.42-1.42l3.29 3.3V4a1 1 0 0 1 1-1Zm-8 15a1 1 0 0 1 1 1v1h14v-1a1 1 0 1 1 2 0v1.5A1.5 1.5 0 0 1 19.5 22h-15A1.5 1.5 0 0 1 3 20.5V19a1 1 0 0 1 1-1Z"})}),i.jsx("span",{className:"hidden md:inline",children:"Get Honeydew App"}),i.jsx("span",{className:"md:hidden",children:"Download"})]})}),i.jsx("button",{ref:u,"aria-expanded":e,"aria-controls":p,className:"lg:hidden h-11 w-11 flex items-center justify-center p-2 text-gray-700 dark:text-gray-200 hover:text-honeydew-600 dark:hover:text-honeydew-400 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-honeydew-600",style:{borderRadius:no},onClick:()=>r(!e),"aria-label":e?"Close menu":"Open menu",children:e?i.jsx(ga,{className:"h-6 w-6"}):i.jsx($b,{className:"h-6 w-6"})})]})]}),e&&i.jsx("div",{id:p,className:"lg:hidden mx-auto mt-2 max-w-[1160px] p-3 bg-white/95 dar
409k:bg-[#171719]/95 border border-black/5 dark:border-white/10 animate-fade-in",style:{borderRadius:22,backdropFilter:"blur(18px)",WebkitBackdropFilter:"blur(18px)",boxShadow:o?_u:wu},children:i.jsxs("div",{className:"flex flex-col space-y-2",children:[ju.map(m=>{const y="flex min-h-11 items-center justify-center rounded-full px-5 text-base font-medium text-gray-700 hover:bg-honeydew-50 dark:text-gray-200 dark:hover:bg-gray-800 focus-visible:outline focus-visible:outline-2 focus-visible:outline-honeydew-600";return m.to==="/guides"?i.jsx("a",{href:m.to,className:y,onClick:h(m),children:m.label},m.label):i.jsx(ae,{to:m.to,className:y,onClick:h(m),children:m.label},m.label)}),i.jsx("div",{className:"flex justify-center pt-1",children:i.jsx(al,{})})]})})]})},ej=({className:t,videoSrc:e,posterSrc:r})=>{const s=g.useRef(null),[n,a]=g.useState(!1);g.useEffect(()=>{const l=s.current;if(!l)return;const c=window.matchMedia("(prefers-reduced-motion: reduce)"),d=navigator.connection;let u=!1;const p=()=>{const f=u&&!c.matches&&!(d!=null&&d.saveData)&&!document.hidden;a(f),f?l.play().catch(()=>{}):l.pause()},h=new IntersectionObserver(([f])=>{u=f.isIntersecting,p()});return h.observe(l),c.addEventListener("change",p),document.addEventListener("visibilitychange",p),()=>{h.disconnect(),c.removeEventListener("change",p),document.removeEventListener("visibilitychange",p)}},[]),g.useEffect(()=>{var l;n&&((l=s.current)==null||l.play().catch(()=>{}))},[n]);const o=e.toLowerCase().endsWith(".gif");return i.jsx("div",{className:q("relative",t),children:i.jsxs("div",{className:"relative h-[522px] w-[250px] min-[901px]:h-[667px] min-[901px]:w-[320px] bg-[#242625] shadow-[0_30px_70px_rgba(18,25,21,.28),0_10px_26px_rgba(0,0,0,.18)] dark:shadow-[0_34px_80px_rgba(0,0,0,.62)] rounded-[2.9rem] border-[7px] border-[#242625] p-[2px] flex items-center justify-center overflow-hidden",children:[i.jsx("div",{className:"absolute right-0 top-36 w-1 h-14 rounded-full bg-[#3a3c3b]"}),i.jsx("div",{className:"relative z-10 w-full h-full rounded-[2.35rem] overflow-hidden shadow-lg",children:o?i.jsx("img",{className:"w-full h-full object-cover",src:e,alt:"Honeydew app preview",loading:"eager"}):i.jsx("video",{className:"w-full h-full object-cover",ref:s,preload:"none","aria-label":"Honeydew app demonstration",muted:!0,loop:!0,playsInline:!0,src:n?e:void 0,poster:r})}),i.jsx("div",{className:"absolute left-4 top-6 h-40 w-36 bg-white/30 rounded-full blur-2xl rotate-12 opacity-60 pointer-events-none"})]})})};function un(t){let e=t[0],r=t[1],s=t[2];return Math.sqrt(e*e+r*r+s*s)}function ol(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function tj(t,e,r,s){return t[0]=e,t[1]=r,t[2]=s,t}function ku(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t}function Eu(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t}function rj(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t}function sj(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t}function io(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}function nj(t,e){let r=e[0]-t[0],s=e[1]-t[1],n=e[2]-t[2];return Math.sqrt(r*r+s*s+n*n)}function ij(t,e){let r=e[0]-t[0],s=e[1]-t[1],n=e[2]-t[2];return r*r+s*s+n*n}function Tu(t){let e=t[0],r=t[1],s=t[2];return e*e+r*r+s*s}function aj(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}function oj(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}function ll(t,e){let r=e[0],s=e[1],n=e[2],a=r*r+s*s+n*n;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t}function Eg(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function Au(t,e,r){let s=e[0],n=e[1],a=e[2],o=r[0],l=r[1],c=r[2];return t[0]=n*c-a*l,t[1]=a*o-s*c,t[2]=s*l-n*o,t}function lj(t,e,r,s){let n=e[0],a=e[1],o=e[2];return t[0]=n+s*(r[0]-n),t[1]=a+s*(r[1]-a),t[2]=o+s*(r[2]-o),t}function cj(t,e,r,s,n){const a=Math.exp(-s*n);let o=e[0],l=e[1],c=e[2];return t[0]=r[0]+(o-r[0])*a,t[1]=r[1]+(l-r[1])*a,t[2]=r[2]+(c-r[2])*a,t}function dj(t,e,r){let s=e[0],n=e[1],a=e[2],o=r[3]*s+r[7]*n+r[11]*a+r[15];return o=o||1,t[0]=(r[0]*s+r[4]*n+r[8]*a+r[12])/o,t[1]=(r[1]*s+r[5]*n+r[9]*a+r[13])/o,t[2]=(r[2]*s+r[6]*n+r[10]*a+r[14])/o,t}function uj(t,e,r){let s=e[0],n=e[1],a=e[2],o=r[3]*s+r[7]*n+r[11]*a+r[15];return o=o||1,t[0]=(r[0]*s+r[4]*n+r[8]*a)/o,t[1]=(r[1]*s+r[5]*n+r[9]*a)/o,t[2]=(r[2]*s+r[6]*n+r[10]*a)/o,t}function hj(t,e,r){let s=e[0],n=e[1],a=e[2];return t[0]=s*r[0]+n*r[3]+a*r[6],t[1]=s*r[1]+n*r[4]+a*r[7],t[2]=s*r[2]+n*r[5]+a*r[8],t}function pj(t,e,r){let s=e[0],n=e[1],a=e[2],o=r[0],l=r[1],c=r[2],d=r[3],u=l*a-c*n,p=c*s-o*a,h=o*n-l*s,f=l*h-c*p,x=c*u-o*h,m=o*p-l*u,y=d*2;return u*=y,p*=y,h*=y,f*=2,x*=2,m*=2,t[0]=s+u+f,t[1]=n+p+x,t[2]=a+h+m,t}const fj=function(){const t=[0,0,0],e=[0,0,0];return function(r,s){ol(t,r),ol(e,s),ll(t,t),ll(e,e);let n=Eg(t,e);return n>1?0:n<-1?Math.PI:Math.acos(n)}}();function mj(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}class lt extends Array{constructor(e=0,r=e,s=e){return super(e,r,s),this}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(e){this[0]=e}set y(e){this[1]=e}set z(e){this[2]=e}set(e,r=e,s=e){return e.length?this.copy(e):(tj(this,e,r,s),this)}copy(e){return ol(this,e),this}add(e,r){return r?ku(this,e,r):ku(this,this,e),this}sub(e,r){return r?Eu(this,e,r):Eu(this,this,e),this}multiply(e){return e.length?rj(this,this,e):io(this,this,e),this}divide(e){return e.length?sj(this,this,e):io(this,this,1/e),this}inverse(e=this){return oj(this,e),this}len(){return un(this)}distance(e){return e?nj(this,e):un(this)}squaredLen(){return Tu(this)}squaredDistance(e){return e?ij(this,e):Tu(this)}negate(e=this){return aj(this,e),this}cross(e,r){return r?Au(this,e,r):Au(this,this,e),this}scale(e){return io(this,this,e),this}normalize(){return ll(this,this),this}dot(e){return Eg(this,e)}equals(e){return mj(this,e)}applyMatrix3(e){return hj(this,this,e),this}applyMatrix4(e){return dj(this,this,e),this}scaleRotateMatrix4(e){return uj(this,this,e),this}applyQuaternion(e){return pj(this,this,e),this}angle(e){return fj(this,e)}lerp(e,r){return lj(this,this,e,r),this}smoothLerp(e,r,s){return cj(this,this,e,r,s),this}clone(){return new lt(this[0],this[1],this[2])}fromArray(e,r=0){return this[0]=e[r],this[1]=e[r+1],this[2]=e[r+2],this}toArray(e=[],r=0){return e[r]=this[0],e[r+1]=this[1],e[r+2]=this[2],e}transformDirection(e){const r=this[0],s=this[1],n=this[2];return this[0]=e[0]*r+e[4]*s+e[8]*n,this[1]=e[1]*r+e[5]*s+e[9]*n,this[2]=e[2]*r+e[6]*s+e[10]*n,this.normalize()}}const Nu=new lt;let gj=1,yj=1,Cu=!1;class xj{constructor(e,r={}){e.canvas||console.error("gl not passed as first argument to Geometry"),this.gl=e,this.attributes=r,this.id=gj++,this.VAOs={},this.drawRange={start:0,count:0},this.instancedCount=0,this.gl.renderer.bindVertexArray(null),this.gl.renderer.currentGeometry=null,this.glState=this.gl.renderer.state;for(let s in r)this.addAttribute(s,r[s])}addAttribute(e,r){if(this.attributes[e]=r,r.id=yj++,r.size=r.size||1,r.type=r.type||(r.data.constructor===Float32Array?this.gl.FLOAT:r.data.constructor===Uint16Array?this.gl.UNSIGNED_SHORT:this.gl.UNSIGNED_INT),r.target=e==="index"?this.gl.ELEMENT_ARRAY_BUFFER:this.gl.ARRAY_BUFFER,r.n
409ormalized=r.normalized||!1,r.stride=r.stride||0,r.offset=r.offset||0,r.count=r.count||(r.stride?r.data.byteLength/r.stride:r.data.length/r.size),r.divisor=r.instanced||0,r.needsUpdate=!1,r.usage=r.usage||this.gl.STATIC_DRAW,r.buffer||this.updateAttribute(r),r.divisor){if(this.isInstanced=!0,this.instancedCount&&this.instancedCount!==r.count*r.divisor)return console.warn("geometry has multiple instanced buffers of different length"),this.instancedCount=Math.min(this.instancedCount,r.count*r.divisor);this.instancedCount=r.count*r.divisor}else e==="index"?this.drawRange.count=r.count:this.attributes.index||(this.drawRange.count=Math.max(this.drawRange.count,r.count))}updateAttribute(e){const r=!e.buffer;r&&(e.buffer=this.gl.createBuffer()),this.glState.boundBuffer!==e.buffer&&(this.gl.bindBuffer(e.target,e.buffer),this.glState.boundBuffer=e.buffer),r?this.gl.bufferData(e.target,e.data,e.usage):this.gl.bufferSubData(e.target,0,e.data),e.needsUpdate=!1}setIndex(e){this.addAttribute("index",e)}setDrawRange(e,r){this.drawRange.start=e,this.drawRange.count=r}setInstancedCount(e){this.instancedCount=e}createVAO(e){this.VAOs[e.attributeOrder]=this.gl.renderer.createVertexArray(),this.gl.renderer.bindVertexArray(this.VAOs[e.attributeOrder]),this.bindAttributes(e)}bindAttributes(e){e.attributeLocations.forEach((r,{name:s,type:n})=>{if(!this.attributes[s]){console.warn(`active attribute ${s} not being supplied`);return}const a=this.attributes[s];this.gl.bindBuffer(a.target,a.buffer),this.glState.boundBuffer=a.buffer;let o=1;n===35674&&(o=2),n===35675&&(o=3),n===35676&&(o=4);const l=a.size/o,c=o===1?0:o*o*4,d=o===1?0:o*4;for(let u=0;u<o;u++)this.gl.vertexAttribPointer(r+u,l,a.type,a.normalized,a.stride+c,a.offset+u*d),this.gl.enableVertexAttribArray(r+u),this.gl.renderer.vertexAttribDivisor(r+u,a.divisor)}),this.attributes.index&&this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.attributes.index.buffer)}draw({program:e,mode:r=this.gl.TRIANGLES}){var n;this.gl.renderer.currentGeometry!==`${this.id}_${e.attributeOrder}`&&(this.VAOs[e.attributeOrder]||this.createVAO(e),this.gl.renderer.bindVertexArray(this.VAOs[e.attributeOrder]),this.gl.renderer.currentGeometry=`${this.id}_${e.attributeOrder}`),e.attributeLocations.forEach((a,{name:o})=>{const l=this.attributes[o];l.needsUpdate&&this.updateAttribute(l)});let s=2;((n=this.attributes.index)==null?void 0:n.type)===this.gl.UNSIGNED_INT&&(s=4),this.isInstanced?this.attributes.index?this.gl.renderer.drawElementsInstanced(r,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*s,this.instancedCount):this.gl.renderer.drawArraysInstanced(r,this.drawRange.start,this.drawRange.count,this.instancedCount):this.attributes.index?this.gl.drawElements(r,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*s):this.gl.drawArrays(r,this.drawRange.start,this.drawRange.count)}getPosition(){const e=this.attributes.position;if(e.data)return e;if(!Cu)return console.warn("No position buffer data found to compute bounds"),Cu=!0}computeBoundingBox(e){e||(e=this.getPosition());const r=e.data,s=e.size;this.bounds||(this.bounds={min:new lt,max:new lt,center:new lt,scale:new lt,radius:1/0});const n=this.bounds.min,a=this.bounds.max,o=this.bounds.center,l=this.bounds.scale;n.set(1/0),a.set(-1/0);for(let c=0,d=r.length;c<d;c+=s){const u=r[c],p=r[c+1],h=r[c+2];n.x=Math.min(u,n.x),n.y=Math.min(p,n.y),n.z=Math.min(h,n.z),a.x=Math.max(u,a.x),a.y=Math.max(p,a.y),a.z=Math.max(h,a.z)}l.sub(a,n),o.add(n,a).divide(2)}computeBoundingSphere(e){e||(e=this.getPosition());const r=e.data,s=e.size;this.bounds||this.computeBoundingBox(e);let n=0;for(let a=0,o=r.length;a<o;a+=s)Nu.fromArray(r,a),n=Math.max(n,this.bounds.center.squaredDistance(Nu));this.bounds.radius=Math.sqrt(n)}remove(){for(let e in this.VAOs)this.gl.renderer.deleteVertexArray(this.VAOs[e]),delete this.VAOs[e];for(let e in this.attributes)this.gl.deleteBuffer(this.attributes[e].buffer),delete this.attributes[e]}}let vj=1;const Su={};class bj{constructor(e,{vertex:r,fragment:s,uniforms:n={},transparent:a=!1,cullFace:o=e.BACK,frontFace:l=e.CCW,depthTest:c=!0,depthWrite:d=!0,depthFunc:u=e.LEQUAL}={}){e.canvas||console.error("gl not passed as first argument to Program"),this.gl=e,this.uniforms=n,this.id=vj++,r||console.warn("vertex shader not supplied"),s||console.warn("fragment shader not supplied"),this.transparent=a,this.cullFace=o,this.frontFace=l,this.depthTest=c,this.depthWrite=d,this.depthFunc=u,this.blendFunc={},this.blendEquation={},this.stencilFunc={},this.stencilOp={},this.transparent&&!this.blendFunc.src&&(this.gl.renderer.premultipliedAlpha?this.setBlendFunc(this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA):this.setBlendFunc(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA)),this.vertexShader=e.createShader(e.VERTEX_SHADER),this.fragmentShader=e.createShader(e.FRAGMENT_SHADER),this.program=e.createProgram(),e.attachShader(this.program,this.vertexShader),e.attachShader(this.program,this.fragmentShader),this.setShaders({vertex:r,fragment:s})}setShaders({vertex:e,fragment:r}){if(e&&(this.gl.shaderSource(this.vertexShader,e),this.gl.compileShader(this.vertexShader),this.gl.getShaderInfoLog(this.vertexShader)!==""&&console.warn(`${this.gl.getShaderInfoLog(this.vertexShader)}
410Vertex Shader
411${Pu(e)}`)),r&&(this.gl.shaderSource(this.fragmentShader,r),this.gl.compileShader(this.fragmentShader),this.gl.getShaderInfoLog(this.fragmentShader)!==""&&console.warn(`${this.gl.getShaderInfoLog(this.fragmentShader)}
412Fragment Shader
413${Pu(r)}`)),this.gl.linkProgram(this.program),!this.gl.getProgramParameter(this.program,this.gl.LINK_STATUS))return console.warn(this.gl.getProgramInfoLog(this.program));this.uniformLocations=new Map;let s=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_UNIFORMS);for(let o=0;o<s;o++){let l=this.gl.getActiveUniform(this.program,o);this.uniformLocations.set(l,this.gl.getUniformLocation(this.program,l.name));const c=l.name.match(/(\w+)/g);l.uniformName=c[0],l.nameComponents=c.slice(1)}this.attributeLocations=new Map;const n=[],a=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES);for(let o=0;o<a;o++){const l=this.gl.getActiveAttrib(this.program,o),c=this.gl.getAttribLocation(this.program,l.name);c!==-1&&(n[c]=l.name,this.attributeLocations.set(l,c))}this.attributeOrder=n.join("")}setBlendFunc(e,r,s,n){this.blendFunc.src=e,this.blendFunc.dst=r,this.blendFunc.srcAlpha=s,this.blendFunc.dstAlpha=n,e&&(this.transparent=!0)}setBlendEquation(e,r){this.blendEquation.modeRGB=e,this.blendEquation.modeAlpha=r}setStencilFunc(e,r,s){this.stencilRef=r,this.stencilFunc.func=e,this.stencilFunc.ref=r,this.stencilFunc.mask=s}setStencilOp(e,r,s){this.stencilOp.stencilFail=e,this.stencilOp.depthFail=r,this.stencilOp.depthPass=s}applyState(){this.depthTest?this.gl.renderer.enable(this.gl.DEPTH_TEST):this.gl.renderer.disable(this.gl.DEPTH_TEST),this.cullFace?this.gl.renderer.enable(this.gl.CULL_FACE):this.gl.renderer.disable(this.gl.CULL_FACE),this.blendFunc.src?this.gl.renderer.enable(this.gl.BLEND):this.gl.renderer.disable(this.gl.BLEND),this.cullFace&&this.gl.renderer.setCullFace(this.cullFace),this.gl.renderer.setFrontFace(this.frontFace),this.gl.renderer.setDepthMask(this.depthWrite),this.gl.renderer.setDepthFunc(this.depthFunc),this.blendFunc.src&&this.gl.renderer.setBlendFunc(this.blendFunc.src,this.blendFunc.dst,this.blendFunc.srcAlpha,this.blendFunc.dstAlpha),this.gl.renderer.setBlendEquation(this.blendEquation.modeRGB,this.blendEquation.modeAlpha),this.stencilFunc.func||this.stencilOp.stencilFail?this.gl.renderer.enable(this.gl.STENCIL_TEST):this.gl.renderer.disable(this.gl.STENCIL_TEST),this.gl.renderer.setStencilFunc(this.stencilFunc.func,this.stencilFunc.ref,this.stencilFunc.mask),this.gl.renderer.setStencilOp(this.stencilOp.stencilFail,this.stencilOp.depthFail,this.stencilOp.depthPass)}use({flipFaces:e=!1}={}){let r=-1;this.gl.renderer.state.currentProgram===this.id||(this.gl.useProgram(this.program),this.gl.renderer.state.currentProgram=this.id
413),this.uniformLocations.forEach((n,a)=>{let o=this.uniforms[a.uniformName];for(const l of a.nameComponents){if(!o)break;if(l in o)o=o[l];else{if(Array.isArray(o.value))break;o=void 0;break}}if(!o)return Ru(`Active uniform ${a.name} has not been supplied`);if(o&&o.value===void 0)return Ru(`${a.name} uniform is missing a value parameter`);if(o.value.texture)return r=r+1,o.value.update(r),ao(this.gl,a.type,n,r);if(o.value.length&&o.value[0].texture){const l=[];return o.value.forEach(c=>{r=r+1,c.update(r),l.push(r)}),ao(this.gl,a.type,n,l)}ao(this.gl,a.type,n,o.value)}),this.applyState(),e&&this.gl.renderer.setFrontFace(this.frontFace===this.gl.CCW?this.gl.CW:this.gl.CCW)}remove(){this.gl.deleteProgram(this.program)}}function ao(t,e,r,s){s=s.length?wj(s):s;const n=t.renderer.state.uniformLocations.get(r);if(s.length)if(n===void 0||n.length!==s.length)t.renderer.state.uniformLocations.set(r,s.slice(0));else{if(_j(n,s))return;n.set?n.set(s):jj(n,s),t.renderer.state.uniformLocations.set(r,n)}else{if(n===s)return;t.renderer.state.uniformLocations.set(r,s)}switch(e){case 5126:return s.length?t.uniform1fv(r,s):t.uniform1f(r,s);case 35664:return t.uniform2fv(r,s);case 35665:return t.uniform3fv(r,s);case 35666:return t.uniform4fv(r,s);case 35670:case 5124:case 35678:case 36306:case 35680:case 36289:return s.length?t.uniform1iv(r,s):t.uniform1i(r,s);case 35671:case 35667:return t.uniform2iv(r,s);case 35672:case 35668:return t.uniform3iv(r,s);case 35673:case 35669:return t.uniform4iv(r,s);case 35674:return t.uniformMatrix2fv(r,!1,s);case 35675:return t.uniformMatrix3fv(r,!1,s);case 35676:return t.uniformMatrix4fv(r,!1,s)}}function Pu(t){let e=t.split(`
414`);for(let r=0;r<e.length;r++)e[r]=r+1+": "+e[r];return e.join(`
415`)}function wj(t){const e=t.length,r=t[0].length;if(r===void 0)return t;const s=e*r;let n=Su[s];n||(Su[s]=n=new Float32Array(s));for(let a=0;a<e;a++)n.set(t[a],a*r);return n}function _j(t,e){if(t.length!==e.length)return!1;for(let r=0,s=t.length;r<s;r++)if(t[r]!==e[r])return!1;return!0}function jj(t,e){for(let r=0,s=t.length;r<s;r++)t[r]=e[r]}let oo=0;function Ru(t){oo>100||(console.warn(t),oo++,oo>100&&console.warn("More than 100 program warnings - stopping logs."))}const lo=new lt;let kj=1;class Ej{constructor({canvas:e=document.createElement("canvas"),width:r=300,height:s=150,dpr:n=1,alpha:a=!1,depth:o=!0,stencil:l=!1,antialias:c=!1,premultipliedAlpha:d=!1,preserveDrawingBuffer:u=!1,powerPreference:p="default",autoClear:h=!0,webgl:f=2}={}){const x={alpha:a,depth:o,stencil:l,antialias:c,premultipliedAlpha:d,preserveDrawingBuffer:u,powerPreference:p};this.dpr=n,this.alpha=a,this.color=!0,this.depth=o,this.stencil=l,this.premultipliedAlpha=d,this.autoClear=h,this.id=kj++,f===2&&(this.gl=e.getContext("webgl2",x)),this.isWebgl2=!!this.gl,this.gl||(this.gl=e.getContext("webgl",x)),this.gl||console.error("unable to create webgl context"),this.gl.renderer=this,this.setSize(r,s),this.state={},this.state.blendFunc={src:this.gl.ONE,dst:this.gl.ZERO},this.state.blendEquation={modeRGB:this.gl.FUNC_ADD},this.state.cullFace=!1,this.state.frontFace=this.gl.CCW,this.state.depthMask=!0,this.state.depthFunc=this.gl.LEQUAL,this.state.premultiplyAlpha=!1,this.state.flipY=!1,this.state.unpackAlignment=4,this.state.framebuffer=null,this.state.viewport={x:0,y:0,width:null,height:null},this.state.textureUnits=[],this.state.activeTextureUnit=0,this.state.boundBuffer=null,this.state.uniformLocations=new Map,this.state.currentProgram=null,this.extensions={},this.isWebgl2?(this.getExtension("EXT_color_buffer_float"),this.getExtension("OES_texture_float_linear")):(this.getExtension("OES_texture_float"),this.getExtension("OES_texture_float_linear"),this.getExtension("OES_texture_half_float"),this.getExtension("OES_texture_half_float_linear"),this.getExtension("OES_element_index_uint"),this.getExtension("OES_standard_derivatives"),this.getExtension("EXT_sRGB"),this.getExtension("WEBGL_depth_texture"),this.getExtension("WEBGL_draw_buffers")),this.getExtension("WEBGL_compressed_texture_astc"),this.getExtension("EXT_texture_compression_bptc"),this.getExtension("WEBGL_compressed_texture_s3tc"),this.getExtension("WEBGL_compressed_texture_etc1"),this.getExtension("WEBGL_compressed_texture_pvrtc"),this.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc"),this.vertexAttribDivisor=this.getExtension("ANGLE_instanced_arrays","vertexAttribDivisor","vertexAttribDivisorANGLE"),this.drawArraysInstanced=this.getExtension("ANGLE_instanced_arrays","drawArraysInstanced","drawArraysInstancedANGLE"),this.drawElementsInstanced=this.getExtension("ANGLE_instanced_arrays","drawElementsInstanced","drawElementsInstancedANGLE"),this.createVertexArray=this.getExtension("OES_vertex_array_object","createVertexArray","createVertexArrayOES"),this.bindVertexArray=this.getExtension("OES_vertex_array_object","bindVertexArray","bindVertexArrayOES"),this.deleteVertexArray=this.getExtension("OES_vertex_array_object","deleteVertexArray","deleteVertexArrayOES"),this.drawBuffers=this.getExtension("WEBGL_draw_buffers","drawBuffers","drawBuffersWEBGL"),this.parameters={},this.parameters.maxTextureUnits=this.gl.getParameter(this.gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS),this.parameters.maxAnisotropy=this.getExtension("EXT_texture_filter_anisotropic")?this.gl.getParameter(this.getExtension("EXT_texture_filter_anisotropic").MAX_TEXTURE_MAX_ANISOTROPY_EXT):0}setSize(e,r){this.width=e,this.height=r,this.gl.canvas.width=e*this.dpr,this.gl.canvas.height=r*this.dpr,this.gl.canvas.style&&Object.assign(this.gl.canvas.style,{width:e+"px",height:r+"px"})}setViewport(e,r,s=0,n=0){this.state.viewport.width===e&&this.state.viewport.height===r||(this.state.viewport.width=e,this.state.viewport.height=r,this.state.viewport.x=s,this.state.viewport.y=n,this.gl.viewport(s,n,e,r))}setScissor(e,r,s=0,n=0){this.gl.scissor(s,n,e,r)}enable(e){this.state[e]!==!0&&(this.gl.enable(e),this.state[e]=!0)}disable(e){this.state[e]!==!1&&(this.gl.disable(e),this.state[e]=!1)}setBlendFunc(e,r,s,n){this.state.blendFunc.src===e&&this.state.blendFunc.dst===r&&this.state.blendFunc.srcAlpha===s&&this.state.blendFunc.dstAlpha===n||(this.state.blendFunc.src=e,this.state.blendFunc.dst=r,this.state.blendFunc.srcAlpha=s,this.state.blendFunc.dstAlpha=n,s!==void 0?this.gl.blendFuncSeparate(e,r,s,n):this.gl.blendFunc(e,r))}setBlendEquation(e,r){e=e||this.gl.FUNC_ADD,!(this.state.blendEquation.modeRGB===e&&this.state.blendEquation.modeAlpha===r)&&(this.state.blendEquation.modeRGB=e,this.state.blendEquation.modeAlpha=r,r!==void 0?this.gl.blendEquationSeparate(e,r):this.gl.blendEquation(e))}setCullFace(e){this.state.cullFace!==e&&(this.state.cullFace=e,this.gl.cullFace(e))}setFrontFace(e){this.state.frontFace!==e&&(this.state.frontFace=e,this.gl.frontFace(e))}setDepthMask(e){this.state.depthMask!==e&&(this.state.depthMask=e,this.gl.depthMask(e))}setDepthFunc(e){this.state.depthFunc!==e&&(this.state.depthFunc=e,this.gl.depthFunc(e))}setStencilMask(e){this.state.stencilMask!==e&&(this.state.stencilMask=e,this.gl.stencilMask(e))}setStencilFunc(e,r,s){this.state.stencilFunc===e&&this.state.stencilRef===r&&this.state.stencilFuncMask===s||(this.state.stencilFunc=e||this.gl.ALWAYS,this.state.stencilRef=r||0,this.state.stencilFuncMask=s||0,this.gl.stencilFunc(e||this.gl.ALWAYS,r||0,s||0))}setStencilOp(e,r,s){this.state.stencilFail===e&&this.state.stencilDepthFail===r&&this.state.stencilDepthPass===s||(this.state.stencilFail=e,this.state.stencilDepthFail=r,this.state.stencilDepthPass=s,this.gl.stencilOp(e,r,s))}activeTexture(e){this.state.activeTextureUnit!==e&&(this.state.activeTextureUnit=e,this.gl.activeTexture(this.gl.TEXTURE0+e))}bindFramebuffer({target:e=this.gl.FRAMEBUFFER,buffer:r=null}={}){this.state.framebuffer!==r&&(this.state.framebuffer=r,this.gl.bindFramebuffer(e,r))}getExtension(e,r,s){return r&&this.gl[r]?this.gl[r].bind(this.gl):(this.extensions[e]||(this.extensions[e]=this.gl.getExtension(e)),r?this.extensions[e]?this.extensions[e][s].bind(this.extensions[e]):null:this.extensions[e])}sortOpaque(e,r){return e.renderOrder!==r.renderOrder?e.renderOrder-r.renderOrder:e.program.id!==r.program.id?e.program.id-r.program.id:e.zDepth!==r.zDepth?e.zDepth-r.zDepth:r.id-e.id}
415sortTransparent(e,r){return e.renderOrder!==r.renderOrder?e.renderOrder-r.renderOrder:e.zDepth!==r.zDepth?r.zDepth-e.zDepth:r.id-e.id}sortUI(e,r){return e.renderOrder!==r.renderOrder?e.renderOrder-r.renderOrder:e.program.id!==r.program.id?e.program.id-r.program.id:r.id-e.id}getRenderList({scene:e,camera:r,frustumCull:s,sort:n}){let a=[];if(r&&s&&r.updateFrustum(),e.traverse(o=>{if(!o.visible)return!0;o.draw&&(s&&o.frustumCulled&&r&&!r.frustumIntersectsMesh(o)||a.push(o))}),n){const o=[],l=[],c=[];a.forEach(d=>{d.program.transparent?d.program.depthTest?l.push(d):c.push(d):o.push(d),d.zDepth=0,!(d.renderOrder!==0||!d.program.depthTest||!r)&&(d.worldMatrix.getTranslation(lo),lo.applyMatrix4(r.projectionViewMatrix),d.zDepth=lo.z)}),o.sort(this.sortOpaque),l.sort(this.sortTransparent),c.sort(this.sortUI),a=o.concat(l,c)}return a}render({scene:e,camera:r,target:s=null,update:n=!0,sort:a=!0,frustumCull:o=!0,clear:l}){s===null?(this.bindFramebuffer(),this.setViewport(this.width*this.dpr,this.height*this.dpr)):(this.bindFramebuffer(s),this.setViewport(s.width,s.height)),(l||this.autoClear&&l!==!1)&&(this.depth&&(!s||s.depth)&&(this.enable(this.gl.DEPTH_TEST),this.setDepthMask(!0)),(this.stencil||!s||s.stencil)&&(this.enable(this.gl.STENCIL_TEST),this.setStencilMask(255)),this.gl.clear((this.color?this.gl.COLOR_BUFFER_BIT:0)|(this.depth?this.gl.DEPTH_BUFFER_BIT:0)|(this.stencil?this.gl.STENCIL_BUFFER_BIT:0))),n&&e.updateMatrixWorld(),r&&r.updateMatrixWorld(),this.getRenderList({scene:e,camera:r,frustumCull:o,sort:a}).forEach(d=>{d.draw({camera:r})})}}function Tj(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}function Aj(t,e,r,s,n){return t[0]=e,t[1]=r,t[2]=s,t[3]=n,t}function Nj(t,e){let r=e[0],s=e[1],n=e[2],a=e[3],o=r*r+s*s+n*n+a*a;return o>0&&(o=1/Math.sqrt(o)),t[0]=r*o,t[1]=s*o,t[2]=n*o,t[3]=a*o,t}function Cj(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function Sj(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function Pj(t,e,r){r=r*.5;let s=Math.sin(r);return t[0]=s*e[0],t[1]=s*e[1],t[2]=s*e[2],t[3]=Math.cos(r),t}function Ou(t,e,r){let s=e[0],n=e[1],a=e[2],o=e[3],l=r[0],c=r[1],d=r[2],u=r[3];return t[0]=s*u+o*l+n*d-a*c,t[1]=n*u+o*c+a*l-s*d,t[2]=a*u+o*d+s*c-n*l,t[3]=o*u-s*l-n*c-a*d,t}function Rj(t,e,r){r*=.5;let s=e[0],n=e[1],a=e[2],o=e[3],l=Math.sin(r),c=Math.cos(r);return t[0]=s*c+o*l,t[1]=n*c+a*l,t[2]=a*c-n*l,t[3]=o*c-s*l,t}function Oj(t,e,r){r*=.5;let s=e[0],n=e[1],a=e[2],o=e[3],l=Math.sin(r),c=Math.cos(r);return t[0]=s*c-a*l,t[1]=n*c+o*l,t[2]=a*c+s*l,t[3]=o*c-n*l,t}function Ij(t,e,r){r*=.5;let s=e[0],n=e[1],a=e[2],o=e[3],l=Math.sin(r),c=Math.cos(r);return t[0]=s*c+n*l,t[1]=n*c-s*l,t[2]=a*c+o*l,t[3]=o*c-a*l,t}function Dj(t,e,r,s){let n=e[0],a=e[1],o=e[2],l=e[3],c=r[0],d=r[1],u=r[2],p=r[3],h,f,x,m,y;return f=n*c+a*d+o*u+l*p,f<0&&(f=-f,c=-c,d=-d,u=-u,p=-p),1-f>1e-6?(h=Math.acos(f),x=Math.sin(h),m=Math.sin((1-s)*h)/x,y=Math.sin(s*h)/x):(m=1-s,y=s),t[0]=m*n+y*c,t[1]=m*a+y*d,t[2]=m*o+y*u,t[3]=m*l+y*p,t}function Lj(t,e){let r=e[0],s=e[1],n=e[2],a=e[3],o=r*r+s*s+n*n+a*a,l=o?1/o:0;return t[0]=-r*l,t[1]=-s*l,t[2]=-n*l,t[3]=a*l,t}function Mj(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3],t}function Vj(t,e){let r=e[0]+e[4]+e[8],s;if(r>0)s=Math.sqrt(r+1),t[3]=.5*s,s=.5/s,t[0]=(e[5]-e[7])*s,t[1]=(e[6]-e[2])*s,t[2]=(e[1]-e[3])*s;else{let n=0;e[4]>e[0]&&(n=1),e[8]>e[n*3+n]&&(n=2);let a=(n+1)%3,o=(n+2)%3;s=Math.sqrt(e[n*3+n]-e[a*3+a]-e[o*3+o]+1),t[n]=.5*s,s=.5/s,t[3]=(e[a*3+o]-e[o*3+a])*s,t[a]=(e[a*3+n]+e[n*3+a])*s,t[o]=(e[o*3+n]+e[n*3+o])*s}return t}function $j(t,e,r="YXZ"){let s=Math.sin(e[0]*.5),n=Math.cos(e[0]*.5),a=Math.sin(e[1]*.5),o=Math.cos(e[1]*.5),l=Math.sin(e[2]*.5),c=Math.cos(e[2]*.5);return r==="XYZ"?(t[0]=s*o*c+n*a*l,t[1]=n*a*c-s*o*l,t[2]=n*o*l+s*a*c,t[3]=n*o*c-s*a*l):r==="YXZ"?(t[0]=s*o*c+n*a*l,t[1]=n*a*c-s*o*l,t[2]=n*o*l-s*a*c,t[3]=n*o*c+s*a*l):r==="ZXY"?(t[0]=s*o*c-n*a*l,t[1]=n*a*c+s*o*l,t[2]=n*o*l+s*a*c,t[3]=n*o*c-s*a*l):r==="ZYX"?(t[0]=s*o*c-n*a*l,t[1]=n*a*c+s*o*l,t[2]=n*o*l-s*a*c,t[3]=n*o*c+s*a*l):r==="YZX"?(t[0]=s*o*c+n*a*l,t[1]=n*a*c+s*o*l,t[2]=n*o*l-s*a*c,t[3]=n*o*c-s*a*l):r==="XZY"&&(t[0]=s*o*c-n*a*l,t[1]=n*a*c-s*o*l,t[2]=n*o*l+s*a*c,t[3]=n*o*c+s*a*l),t}const Fj=Tj,Uj=Aj,Bj=Cj,zj=Nj;class Hj extends Array{constructor(e=0,r=0,s=0,n=1){super(e,r,s,n),this.onChange=()=>{},this._target=this;const a=["0","1","2","3"];return new Proxy(this,{set(o,l){const c=Reflect.set(...arguments);return c&&a.includes(l)&&o.onChange(),c}})}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}get w(){return this[3]}set x(e){this._target[0]=e,this.onChange()}set y(e){this._target[1]=e,this.onChange()}set z(e){this._target[2]=e,this.onChange()}set w(e){this._target[3]=e,this.onChange()}identity(){return Sj(this._target),this.onChange(),this}set(e,r,s,n){return e.length?this.copy(e):(Uj(this._target,e,r,s,n),this.onChange(),this)}rotateX(e){return Rj(this._target,this._target,e),this.onChange(),this}rotateY(e){return Oj(this._target,this._target,e),this.onChange(),this}rotateZ(e){return Ij(this._target,this._target,e),this.onChange(),this}inverse(e=this._target){return Lj(this._target,e),this.onChange(),this}conjugate(e=this._target){return Mj(this._target,e),this.onChange(),this}copy(e){return Fj(this._target,e),this.onChange(),this}normalize(e=this._target){return zj(this._target,e),this.onChange(),this}multiply(e,r){return r?Ou(this._target,e,r):Ou(this._target,this._target,e),this.onChange(),this}dot(e){return Bj(this._target,e)}fromMatrix3(e){return Vj(this._target,e),this.onChange(),this}fromEuler(e,r){return $j(this._target,e,e.order),r||this.onChange(),this}fromAxisAngle(e,r){return Pj(this._target,e,r),this.onChange(),this}slerp(e,r){return Dj(this._target,this._target,e,r),this.onChange(),this}fromArray(e,r=0){return this._target[0]=e[r],this._target[1]=e[r+1],this._target[2]=e[r+2],this._target[3]=e[r+3],this.onChange(),this}toArray(e=[],r=0){return e[r]=this[0],e[r+1]=this[1],e[r+2]=this[2],e[r+3]=this[3],e}}const Wj=1e-6;function qj(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function Gj(t,e,r,s,n,a,o,l,c,d,u,p,h,f,x,m,y){return t[0]=e,t[1]=r,t[2]=s,t[3]=n,t[4]=a,t[5]=o,t[6]=l,t[7]=c,t[8]=d,t[9]=u,t[10]=p,t[11]=h,t[12]=f,t[13]=x,t[14]=m,t[15]=y,t}function Kj(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function Yj(t,e){let r=e[0],s=e[1],n=e[2],a=e[3],o=e[4],l=e[5],c=e[6],d=e[7],u=e[8],p=e[9],h=e[10],f=e[11],x=e[12],m=e[13],y=e[14],b=e[15],w=r*l-s*o,_=r*c-n*o,j=r*d-a*o,k=s*c-n*l,E=s*d-a*l,T=n*d-a*c,A=u*m-p*x,R=u*y-h*x,L=u*b-f*x,V=p*y-h*m,I=p*b-f*m,D=h*b-f*y,N=w*D-_*I+j*V+k*L-E*R+T*A;return N?(N=1/N,t[0]=(l*D-c*I+d*V)*N,t[1]=(n*I-s*D-a*V)*N,t[2]=(m*T-y*E+b*k)*N,t[3]=(h*E-p*T-f*k)*N,t[4]=(c*L-o*D-d*R)*N,t[5]=(r*D-n*L+a*R)*N,t[6]=(y*j-x*T-b*_)*N,t[7]=(u*T-h*j+f*_)*N,t[8]=(o*I-l*L+d*A)*N,t[9]=(s*L-r*I-a*A)*N,t[10]=(x*E-m*j+b*w)*N,t[11]=(p*j-u*E-f*w)*N,t[12]=(l*R-o*V-c*A)*N,t[13]=(r*V-s*R+n*A)*N,t[14]=(m*_-x*k-y*w)*N,t[15]=(u*k-p*_+h*w)*N,t):null}function Tg(t){let e=t[0],r=t[1],s=t[2],n=t[3],a=t[4],o=t[5],l=t[6],c=t[7],d=t[8],u=t[9],p=t[10],h=t[11],f=t[12],x=t[13],m=t[14],y=t[15],b=e*o-r*a,w=e*l-s*a,_=e*c-n*a,j=r*l-s*o,k=r*c-n*o,E=s*c-n*l,T=d*x-u*f,A=d*m-p*f,R=d*y-h*f,L=u*m-p*x,V=u*y-h*x,I=p*y-h*m;return b*I-w*V+_*L+j*R-k*A+E*T}function Iu(t,e,r){let s=e[0],n=e[1],a=e[2],o=e[3],l=e[4],c=e[5],d=e[6],u=e[7],p=e[8],h=e[9],f=e[10],x=e[11],m=e[12],y=e[13],b=e[14],w=e[15],_=r[0],j=r[1],k=r[2],E=r[3];return t[0]=_*s+j*l+k*p+E*m,t[1]=_*n+j*c+k*h+E*y,t[2]=_*a+j*d+k*f+E*b,t[3]=_*o+j*u+k*x+E*w,_=r[4],j=r[5],k=r[6],E=r[7],t[4]=_*s+j*l+k*p+E*m,t[5]=_*n+j*c+k*h+E*y,t[6]=_*a+j*d+k*f+E*b,t[7]=_*o+j*u+k*x+E*w,_=r[8],j=r[9],k=r[10],E=r[11],t[8]=_*s+j*l+k*p+E*m,t[9]=_*n+j*c+k*h+E*y,t[10]=_*a+j*d+k*f+E*b,t[11]=_*o+j*u+k*x+E*w,_=r[12],j=r[13],k=r[14],E=r[15],t[12]=_*s+j*l+k*p+E*m,t[13]=_*n+j*c+k*h+E*y,t[14]=_*a+j*d+k*f+E*b,t[15]=_*o+j*u+k*x+E*w,t}function Jj(t,e,r){let s=r[0],n=r[1],a=r[2],o,l,c,d,u,p,h,f,x,m,y,b;return e===t?(t[12]=e[0]*s+e[4]*n+e[8]*a+e[12],t[13]=e[1]*s+e[5]*n+e[9]*a+e[13],t[14]=e[2]*s+e[6]*n+e[10]*a+e[14],t[15]=e[3]*s+e[7]*n+e[11]*a+e[15]):(o=e[0],l=e[1],c=e[2],d=e[3],u=e[4],p=e[5],h=e[6],f=e[7],x=e[8],m=e[9],y=e[10],b=e[11],t[0]=o,t[1]=l,t[2]=c,t[3]=d,t[4]=u,t[5]=p,t[6]=h,t[7]=f,t[8]=x,t[9]=m,t[10]=y,t[11]=b,t[12]=o*s+u*n+x*a+e[12],t[13]=l*s+p*n+m*a+e[13],t[14]=c*s+h*n+y*a+e[14],t[15]=d*s+f*n+b*a+e[15]),t}function Xj(t,e,r){let s=r[0],n=r[1],a=r[2];return t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t[3]=e[3]*s,t[4]=e[4]*n,t[5]=e[5]*n,t[6]=e[6]*n,t[7]=e[7]*n,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function Qj(t,e,r,s){let n=s[0],a=s[1],o=s[2],l=Math.hypot(n,a,o),c,d,u,p,h,f,x,m,y,b,w,_,j,k,E,T,A,R,L,V,I,D,N,M;return Math.abs(l)<Wj?null:(l=1/l,n*=l,a*=l,o*=l,c=Math.sin(r),d=Math.cos(r),u=1-d,p=e[0],h=e[1],f=e[2],x=e[3],m=e[4],y=e[5],b=e[6],w=e[7],_=e[8],j=e[9],k=e[10],E=e[11],T=n*n*u+d,A=a*n*u+o*c,R=o*n*u-a*c,L=n*a*u-o*c,V=a*a*u+d,I=o*a*u+n*c,D=n*o*u+a*c,N=a*o*u-n*c,M=o*o*u+d,t[0]=p*T+m*A+_*R,t[1]=h*T+y*A+j*R,t[2]=f*T+b*A+k*R,t[3]=x*T+w*A+E*R,t[4]=p*L+m*V+_*I,t[5]=h*L+y*V+j*I,t[6]=f*L+b*V+k*I,t[7]=x*L+w*V+E*I,t[8]=p*D+m*N+_*M,t[9]=h*D+y*N+j*M,t[10]=f*D+b*N+k*M,t[11]=x*D+w*N+E*M,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}function Zj(t,e){return t[0]=e[12],t[1]=e[13],t[2]=e[14],t}function Ag(t,e){let r=e[0],s=e[1],n=e[2],a=e[4],o=e[5],l=e[6],c=e[8],d=e[9],u=e[10];return t[0]=Math.hypot(r,s,n),t[1]=Math.hypot(a,o,l),t[2]=Math.hypot(c,d,u),t}function ek(t){let e=t[0],r=t[1],s=t[2],n=t[4],a=t[5],o=t[6],l=t[8],c=t[9],d=t[10
415];const u=e*e+r*r+s*s,p=n*n+a*a+o*o,h=l*l+c*c+d*d;return Math.sqrt(Math.max(u,p,h))}const Ng=function(){const t=[1,1,1];return function(e,r){let s=t;Ag(s,r);let n=1/s[0],a=1/s[1],o=1/s[2],l=r[0]*n,c=r[1]*a,d=r[2]*o,u=r[4]*n,p=r[5]*a,h=r[6]*o,f=r[8]*n,x=r[9]*a,m=r[10]*o,y=l+p+m,b=0;return y>0?(b=Math.sqrt(y+1)*2,e[3]=.25*b,e[0]=(h-x)/b,e[1]=(f-d)/b,e[2]=(c-u)/b):l>p&&l>m?(b=Math.sqrt(1+l-p-m)*2,e[3]=(h-x)/b,e[0]=.25*b,e[1]=(c+u)/b,e[2]=(f+d)/b):p>m?(b=Math.sqrt(1+p-l-m)*2,e[3]=(f-d)/b,e[0]=(c+u)/b,e[1]=.25*b,e[2]=(h+x)/b):(b=Math.sqrt(1+m-l-p)*2,e[3]=(c-u)/b,e[0]=(f+d)/b,e[1]=(h+x)/b,e[2]=.25*b),e}}();function tk(t,e,r,s){let n=un([t[0],t[1],t[2]]);const a=un([t[4],t[5],t[6]]),o=un([t[8],t[9],t[10]]);Tg(t)<0&&(n=-n),r[0]=t[12],r[1]=t[13],r[2]=t[14];const c=t.slice(),d=1/n,u=1/a,p=1/o;c[0]*=d,c[1]*=d,c[2]*=d,c[4]*=u,c[5]*=u,c[6]*=u,c[8]*=p,c[9]*=p,c[10]*=p,Ng(e,c),s[0]=n,s[1]=a,s[2]=o}function rk(t,e,r,s){const n=t,a=e[0],o=e[1],l=e[2],c=e[3],d=a+a,u=o+o,p=l+l,h=a*d,f=a*u,x=a*p,m=o*u,y=o*p,b=l*p,w=c*d,_=c*u,j=c*p,k=s[0],E=s[1],T=s[2];return n[0]=(1-(m+b))*k,n[1]=(f+j)*k,n[2]=(x-_)*k,n[3]=0,n[4]=(f-j)*E,n[5]=(1-(h+b))*E,n[6]=(y+w)*E,n[7]=0,n[8]=(x+_)*T,n[9]=(y-w)*T,n[10]=(1-(h+m))*T,n[11]=0,n[12]=r[0],n[13]=r[1],n[14]=r[2],n[15]=1,n}function sk(t,e){let r=e[0],s=e[1],n=e[2],a=e[3],o=r+r,l=s+s,c=n+n,d=r*o,u=s*o,p=s*l,h=n*o,f=n*l,x=n*c,m=a*o,y=a*l,b=a*c;return t[0]=1-p-x,t[1]=u+b,t[2]=h-y,t[3]=0,t[4]=u-b,t[5]=1-d-x,t[6]=f+m,t[7]=0,t[8]=h+y,t[9]=f-m,t[10]=1-d-p,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function nk(t,e,r,s,n){let a=1/Math.tan(e/2),o=1/(s-n);return t[0]=a/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(n+s)*o,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*n*s*o,t[15]=0,t}function ik(t,e,r,s,n,a,o){let l=1/(e-r),c=1/(s-n),d=1/(a-o);return t[0]=-2*l,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*c,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*d,t[11]=0,t[12]=(e+r)*l,t[13]=(n+s)*c,t[14]=(o+a)*d,t[15]=1,t}function ak(t,e,r,s){let n=e[0],a=e[1],o=e[2],l=s[0],c=s[1],d=s[2],u=n-r[0],p=a-r[1],h=o-r[2],f=u*u+p*p+h*h;f===0?h=1:(f=1/Math.sqrt(f),u*=f,p*=f,h*=f);let x=c*h-d*p,m=d*u-l*h,y=l*p-c*u;return f=x*x+m*m+y*y,f===0&&(d?l+=1e-6:c?d+=1e-6:c+=1e-6,x=c*h-d*p,m=d*u-l*h,y=l*p-c*u,f=x*x+m*m+y*y),f=1/Math.sqrt(f),x*=f,m*=f,y*=f,t[0]=x,t[1]=m,t[2]=y,t[3]=0,t[4]=p*y-h*m,t[5]=h*x-u*y,t[6]=u*m-p*x,t[7]=0,t[8]=u,t[9]=p,t[10]=h,t[11]=0,t[12]=n,t[13]=a,t[14]=o,t[15]=1,t}function Du(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t[3]=e[3]+r[3],t[4]=e[4]+r[4],t[5]=e[5]+r[5],t[6]=e[6]+r[6],t[7]=e[7]+r[7],t[8]=e[8]+r[8],t[9]=e[9]+r[9],t[10]=e[10]+r[10],t[11]=e[11]+r[11],t[12]=e[12]+r[12],t[13]=e[13]+r[13],t[14]=e[14]+r[14],t[15]=e[15]+r[15],t}function Lu(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t[3]=e[3]-r[3],t[4]=e[4]-r[4],t[5]=e[5]-r[5],t[6]=e[6]-r[6],t[7]=e[7]-r[7],t[8]=e[8]-r[8],t[9]=e[9]-r[9],t[10]=e[10]-r[10],t[11]=e[11]-r[11],t[12]=e[12]-r[12],t[13]=e[13]-r[13],t[14]=e[14]-r[14],t[15]=e[15]-r[15],t}function ok(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*r,t[9]=e[9]*r,t[10]=e[10]*r,t[11]=e[11]*r,t[12]=e[12]*r,t[13]=e[13]*r,t[14]=e[14]*r,t[15]=e[15]*r,t}class Wi extends Array{constructor(e=1,r=0,s=0,n=0,a=0,o=1,l=0,c=0,d=0,u=0,p=1,h=0,f=0,x=0,m=0,y=1){return super(e,r,s,n,a,o,l,c,d,u,p,h,f,x,m,y),this}get x(){return this[12]}get y(){return this[13]}get z(){return this[14]}get w(){return this[15]}set x(e){this[12]=e}set y(e){this[13]=e}set z(e){this[14]=e}set w(e){this[15]=e}set(e,r,s,n,a,o,l,c,d,u,p,h,f,x,m,y){return e.length?this.copy(e):(Gj(this,e,r,s,n,a,o,l,c,d,u,p,h,f,x,m,y),this)}translate(e,r=this){return Jj(this,r,e),this}rotate(e,r,s=this){return Qj(this,s,e,r),this}scale(e,r=this){return Xj(this,r,typeof e=="number"?[e,e,e]:e),this}add(e,r){return r?Du(this,e,r):Du(this,this,e),this}sub(e,r){return r?Lu(this,e,r):Lu(this,this,e),this}multiply(e,r){return e.length?r?Iu(this,e,r):Iu(this,this,e):ok(this,this,e),this}identity(){return Kj(this),this}copy(e){return qj(this,e),this}fromPerspective({fov:e,aspect:r,near:s,far:n}={}){return nk(this,e,r,s,n),this}fromOrthogonal({left:e,right:r,bottom:s,top:n,near:a,far:o}){return ik(this,e,r,s,n,a,o),this}fromQuaternion(e){return sk(this,e),this}setPosition(e){return this.x=e[0],this.y=e[1],this.z=e[2],this}inverse(e=this){return Yj(this,e),this}compose(e,r,s){return rk(this,e,r,s),this}decompose(e,r,s){return tk(this,e,r,s),this}getRotation(e){return Ng(e,this),this}getTranslation(e){return Zj(e,this),this}getScaling(e){return Ag(e,this),this}getMaxScaleOnAxis(){return ek(this)}lookAt(e,r,s){return ak(this,e,r,s),this}determinant(){return Tg(this)}fromArray(e,r=0){return this[0]=e[r],this[1]=e[r+1],this[2]=e[r+2],this[3]=e[r+3],this[4]=e[r+4],this[5
415]=e[r+5],this[6]=e[r+6],this[7]=e[r+7],this[8]=e[r+8],this[9]=e[r+9],this[10]=e[r+10],this[11]=e[r+11],this[12]=e[r+12],this[13]=e[r+13],this[14]=e[r+14],this[15]=e[r+15],this}toArray(e=[],r=0){return e[r]=this[0],e[r+1]=this[1],e[r+2]=this[2],e[r+3]=this[3],e[r+4]=this[4],e[r+5]=this[5],e[r+6]=this[6],e[r+7]=this[7],e[r+8]=this[8],e[r+9]=this[9],e[r+10]=this[10],e[r+11]=this[11],e[r+12]=this[12],e[r+13]=this[13],e[r+14]=this[14],e[r+15]=this[15],e}}function lk(t,e,r="YXZ"){return r==="XYZ"?(t[1]=Math.asin(Math.min(Math.max(e[8],-1),1)),Math.abs(e[8])<.99999?(t[0]=Math.atan2(-e[9],e[10]),t[2]=Math.atan2(-e[4],e[0])):(t[0]=Math.atan2(e[6],e[5]),t[2]=0)):r==="YXZ"?(t[0]=Math.asin(-Math.min(Math.max(e[9],-1),1)),Math.abs(e[9])<.99999?(t[1]=Math.atan2(e[8],e[10]),t[2]=Math.atan2(e[1],e[5])):(t[1]=Math.atan2(-e[2],e[0]),t[2]=0)):r==="ZXY"?(t[0]=Math.asin(Math.min(Math.max(e[6],-1),1)),Math.abs(e[6])<.99999?(t[1]=Math.atan2(-e[2],e[10]),t[2]=Math.atan2(-e[4],e[5])):(t[1]=0,t[2]=Math.atan2(e[1],e[0]))):r==="ZYX"?(t[1]=Math.asin(-Math.min(Math.max(e[2],-1),1)),Math.abs(e[2])<.99999?(t[0]=Math.atan2(e[6],e[10]),t[2]=Math.atan2(e[1],e[0])):(t[0]=0,t[2]=Math.atan2(-e[4],e[5]))):r==="YZX"?(t[2]=Math.asin(Math.min(Math.max(e[1],-1),1)),Math.abs(e[1])<.99999?(t[0]=Math.atan2(-e[9],e[5]),t[1]=Math.atan2(-e[2],e[0])):(t[0]=0,t[1]=Math.atan2(e[8],e[10]))):r==="XZY"&&(t[2]=Math.asin(-Math.min(Math.max(e[4],-1),1)),Math.abs(e[4])<.99999?(t[0]=Math.atan2(e[6],e[5]),t[1]=Math.atan2(e[8],e[0])):(t[0]=Math.atan2(-e[9],e[10]),t[1]=0)),t}const Mu=new Wi;class ck extends Array{constructor(e=0,r=e,s=e,n="YXZ"){super(e,r,s),this.order=n,this.onChange=()=>{},this._target=this;const a=["0","1","2"];return new Proxy(this,{set(o,l){const c=Reflect.set(...arguments);return c&&a.includes(l)&&o.onChange(),c}})}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(e){this._target[0]=e,this.onChange()}set y(e){this._target[1]=e,this.onChange()}set z(e){this._target[2]=e,this.onChange()}set(e,r=e,s=e){return e.length?this.copy(e):(this._target[0]=e,this._target[1]=r,this._target[2]=s,this.onChange(),this)}copy(e){return this._target[0]=e[0],this._target[1]=e[1],this._target[2]=e[2],this.onChange(),this}reorder(e){return this._target.order=e,this.onChange(),this}fromRotationMatrix(e,r=this.order){return lk(this._target,e,r),this.onChange(),this}fromQuaternion(e,r=this.order,s){return Mu.fromQuaternion(e),this._target.fromRotationMatrix(Mu,r),s||this.onChange(),this}fromArray(e,r=0){return this._target[0]=e[r],this._target[1]=e[r+1],this._target[2]=e[r+2],this}toArray(e=[],r=0){return e[r]=this[0],e[r+1]=this[1],e[r+2]=this[2],e}}class dk{constructor(){this.parent=null,this.children=[],this.visible=!0,this.matrix=new Wi,this.worldMatrix=new Wi,this.matrixAutoUpdate=!0,this.worldMatrixNeedsUpdate=!1,this.position=new lt,this.quaternion=new Hj,this.scale=new lt(1),this.rotation=new ck,this.up=new lt(0,1,0),this.rotation._target.onChange=()=>this.quaternion.fromEuler(this.rotation,!0),this.quaternion._target.onChange=()=>this.rotation.fromQuaternion(this.quaternion,void 0,!0)}setParent(e,r=!0){this.parent&&e!==this.parent&&this.parent.removeChild(this,!1),this.parent=e,r&&e&&e.addChild(this,!1)}addChild(e,r=!0){~this.children.indexOf(e)||this.children.push(e),r&&e.setParent(this,!1)}removeChild(e,r=!0){~this.children.indexOf(e)&&this.children.splice(this.children.indexOf(e),1),r&&e.setParent(null,!1)}updateMatrixWorld(e){this.matrixAutoUpdate&&this.updateMatrix(),(this.worldMatrixNeedsUpdate||e)&&(this.parent===null?this.worldMatrix.copy(this.matrix):this.worldMatrix.multiply(this.parent.worldMatrix,this.matrix),this.worldMatrixNeedsUpdate=!1,e=!0);for(let r=0,s=this.children.length;r<s;r++)this.children[r].updateMatrixWorld(e)}updateMatrix(){this.matrix.compose(this.quaternion,this.position,this.scale),this.worldMatrixNeedsUpdate=!0}traverse(e){if(!e(this))for(let r=0,s=this.children.length;r<s;r++)this.children[r].traverse(e)}decompose(){this.matrix.decompose(this.quaternion._target,this.position,this.scale),this.rotation.fromQuaternion(this.quaternion)}lookAt(e,r=!1){r?this.matrix.lookAt(this.position,e,this.up):this.matrix.lookAt(e,this.position,this.up),this.matrix.getRotation(this.quaternion._target),this.rotation.fromQuaternion(this.quaternion)}}function uk(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[4],t[4]=e[5],t[5]=e[6],t[6]=e[8],t[7]=e[9],t[8]=e[10],t}function hk(t,e){let r=e[0],s=e[1],n=e[2],a=e[3],o=r+r,l=s+s,c=n+n,d=r*o,u=s*o,p=s*l,h=n*o,f=n*l,x=n*c,m=a*o,y=a*l,b=a*c;return t[0]=1-p-x,t[3]=u-b,t[6]=h+y,t[1]=u+b,t[4]=1-d-x,t[7]=f-m,t[2]=h-y,t[5]=f+m,t[8]=1-d-p,t}function pk(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t}function fk(t,e,r,s,n,a,o,l,c,d){return t[0]=e,t[1]=r,t[2]=s,t[3]=n,t[4]=a,t[5]=o,t[6]=l,t[7]=c,t[8]=d,t}function mk(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function gk(t,e){let r=e[0],s=e[1],n=e[2],a=e[3],o=e[4],l=e[5],c=e[6],d=e[7],u=e[8],p=u*o-l*d,h=-u*a+l*c,f=d*a-o*c,x=r*p+s*h+n*f;return x?(x=1/x,t[0]=p*x,t[1]=(-u*s+n*d)*x,t[2]=(l*s-n*o)*x,t[3]=h*x,t[4]=(u*r-n*c)*x,t[5]=(-l*r+n*a)*x,t[6]=f*x,t[7]=(-d*r+s*c)*x,t[8]=(o*r-s*a)*x,t):null}function Vu(t,e,r){let s=e[0],n=e[1],a=e[2],o=e[3],l=e[4],c=e[5],d=e[6],u=e[7],p=e[8],h=r[0],f=r[1],x=r[2],m=r[3],y=r[4],b=r[5],w=r[6],_=r[7],j=r[8];return t[0]=h*s+f*o+x*d,t[1]=h*n+f*l+x*u,t[2]=h*a+f*c+x*p,t[3]=m*s+y*o+b*d,t[4]=m*n+y*l+b*u,t[5]=m*a+y*c+b*p,t[6]=w*s+_*o+j*d,t[7]=w*n+_*l+j*u,t[8]=w*a+_*c+j*p,t}function yk(t,e,r){let s=e[0],n=e[1],a=e[2],o=e[3],l=e[4],c=e[5],d=e[6],u=e[7],p=e[8],h=r[0],f=r[1];return t[0]=s,t[1]=n,t[2]=a,t[3]=o,t[4]=l,t[5]=c,t[6]=h*s+f*o+d,t[7]=h*n+f*l+u,t[8]=h*a+f*c+p,t}function xk(t,e,r){let s=e[0],n=e[1],a=e[2],o=e[3],l=e[4],c=e[5],d=e[6],u=e[7],p=e[8],h=Math.sin(r),f=Math.cos(r);return t[0]=f*s+h*o,t[1]=f*n+h*l,t[2]=f*a+h*c,t[3]=f*o-h*s,t[4]=f*l-h*n,t[5]=f*c-h*a,t[6]=d,t[7]=u,t[8]=p,t}function vk(t,e,r){let s=r[0],n=r[1];return t[0]=s*e[0],t[1]=s*e[1],t[2]=s*e[2],t[3]=n*e[3],t[4]=n*e[4],t[5]=n*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t}function bk(t,e){let r=e[0],s=e[1],n=e[2],a=e[3],o=e[4],l=e[5],c=e[6],d=e[7],u=e[8],p=e[9],h=e[10],f=e[11],x=e[12],m=e[13],y=e[14],b=e[15],w=r*l-s*o,_=r*c-n*o,j=r*d-a*o,k=s*c-n*l,E=s*d-a*l,T=n*d-a*c,A=u*m-p*x,R=u*y-h*x,L=u*b-f*x,V=p*y-h*m,I=p*b-f*m,D=h*b-f*y,N=w*D-_*I+j*V+k*L-E*R+T*A;return N?(N=1/N,t[0]=(l*D-c*I+d*V)*N,t[1]=(c*L-o*D-d*R)*N,t[2]=(o*I-l*L+d*A)*N,t[3]=(n*I-s*D-a*V)*N,t[4]=(r*D-n*L+a*R)*N,t[5]=(s*L-r*I-a*A)*N,t[6]=(m*T-y*E+b*k)*N,t[7]=(y*j-x*T-b*_)*N,t[8]=(x*E-m*j+b*w)*N,t):null}class wk extends Array{constructor(e=1,r=0,s=0,n=0,a=1,o=0,l=0,c=0,d=1){return super(e,r,s,n,a,o,l,c,d),this}set(e,r,s,n,a,o,l,c,d){return e.length?this.copy(e):(fk(this,e,r,s,n,a,o,l,c,d),this)}translate(e,r=this){return yk(this,r,e),this}rotate(e,r=this){return xk(this,r,e),this}scale(e,r=this){return vk(this,r,e),this}multiply(e,r){return r?Vu(this,e,r):Vu(this,this,e),this}identity(){return mk(this),this}copy(e){return pk(this,e),this}fromMatrix4(e){return uk(this,e),this}fromQuaternion(e){return hk(this,e),this}fromBasis(e,r,s){return this.set(e[0],e[1],e[2],r[0],r[1],r[2],s[0],s[1],s[2]),this}inverse(e=this){return gk(this,e),this}getNormalMatrix(e){return bk(this,e),this}}let _k=0;class jk extends dk{constructor(e,{geometry:r,program:s,mode:n=e.TRIANGLES,frustumCulled:a=!0,renderOrder:o=0}={}){super(),e.canvas||console.error("gl not passed as first argument to Mesh"),this.gl=e,this.id=_k++,this.geometry=r,this.program=s,this.mode=n,this.frustumCulled=a,this.renderOrder=o,this.modelViewMatrix=new Wi,this.normalMatrix=new wk,this.beforeRenderCallbacks=[],this.afterRenderCallbacks=[]}onBeforeRender(e){return this.beforeRenderCallbacks.push(e),this}onAfterRender(e){return this.afterRenderCallbacks.push(e),this}draw({camera:e}={}){e&&(this.program.uniforms.modelMatrix||Object.assign(this.program.uniforms,{modelMatrix:{value:null},viewMatrix:{value:null},modelViewMatrix:{value:null},normalMatrix:{value:null},projectionMatrix:{value:null},cameraPosition:{value:null}}),this.program.uniforms.projectionMatrix.value=e.projectionMatrix,this.program.uniforms.cameraPosition.value=e.worldPosition,this.program.uniforms.viewMatrix.value=e.viewMatrix,this.modelViewMatrix.multiply(e.viewMatrix,this.worldMatrix),this.normalMatrix.getNormalMatrix(this.modelViewMatrix),this.program.uniforms.modelMatrix.value=this.worldMatrix,this.program.uniforms.modelViewMatrix.value=this.modelViewMatrix,this.program.uniforms.normalMatrix.value=this.normalMatrix),this.beforeRenderCallbacks.forEach(s=>s&&s({mesh:this,camera:e}));let r=this.program.cullFace&&this.worldMatrix.determinant()<0;this.program.use({flipFaces:r}),this.geometry.draw({mode:this.mode,program:this.program}),this.afterRenderCallbacks.forEach(s=>s&&s({mesh:this,camera:e}))}}class kk extends xj{constructor(e,{attributes:r={}}={}){Object.assign(r,{position:{size:2,data:new Float32Array([-1,-1,3,-1,-1,3])},uv:{size:2,data:new Float32Array([0,0,2,0,0,2])}}),super(e,r)}}const Ek="#11d907",$u=t=>{const e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return e?[parseInt(e[1],16)/255,parseInt(e[2],16)/255,parseInt(e[3],16)/255]:[1,1,1]},Fu=(t,e,r)=>{switch(t){case"top-left":return{anchor:[0,-.2*r],dir:[0,1]};case"top-right":return{anchor:[e,-.2*r],dir:[0,1]};case"left":return{anchor:[-.2*e,.5*r],dir:[1,0]};case"right":return{anchor:[(1+.2)*e,.5*r],dir:[-1,0]};case"bottom-left":return{anchor:[0,(1+.2)*r],dir:[0,-1]};case"bottom-center":return{anchor:[.5*e,(1+.2)*r],dir:[0,-1]};case"bottom-right":return{anchor:[e,(1+.2)*r],dir:[0,-1]};default:return{anchor:[.5*e,-.2*r],dir:[0,1]}}},Tk=({raysOrigin:t="top-center",raysColor:e=Ek,raysSpeed:r=1,lightSpread:s=.5,rayLength:n=3,pulsating:a=!1,fadeDistance:o=1,saturation:l=1,followMouse:c=!0,mouseInfluence:d=.1,noiseAmount:u=0,distortion:p=0,opacity:h=.9,additive:f=!0,fadeOut:x=.4,className:m=""})=>{const y=g.useRef(null),b=g.useRef(null),w=g.useRef(null),_=g.useRef({x:.5,y:.5}),j=g.useRef({x:.5,y:.5}),k=g.useRef(null),E=g.useRef(null),T=g.useRef(null),[A,R]=g.useState(!1),[L,V]=g.useState(!1);g.useEffect(()=>{const D=window.matchMedia("(prefers-reduced-motion: reduce)"),N=window.matchMedia("(min-width: 901px)"),M=()=>V(!D.matches&&N.matches);return M(),D.addEventListener("change",M),N.addEventListener("change",M),()=>{D.removeEventListener("change",M),N.removeEventListener("change",M)}},[]);const I=g.useRef(null);return g.useEffect(()=>
415{if(y.current)return I.current=new IntersectionObserver(D=>{const N=D[0];R(N.isIntersecting)},{threshold:.1}),I.current.observe(y.current),()=>{I.current&&(I.current.disconnect(),I.current=null)}},[]),g.useEffect(()=>!L||!A||!y.current?void 0:(T.current&&(T.current(),T.current=null),(async()=>{if(!y.current||(await new Promise(ee=>setTimeout(ee,10)),!y.current))return;const N=new Ej({dpr:Math.min(window.devicePixelRatio,2),alpha:!0});w.current=N;const M=N.gl;for(M.canvas.style.width="100%",M.canvas.style.height="100%",M.clearColor(0,0,0,0),M.enable(M.BLEND),f?M.blendFunc(M.SRC_ALPHA,M.ONE):M.blendFunc(M.SRC_ALPHA,M.ONE_MINUS_SRC_ALPHA);y.current.firstChild;)y.current.removeChild(y.current.firstChild);y.current.appendChild(M.canvas);const B=`
416attribute vec2 position;
417varying vec2 vUv;
418void main() {
419  vUv = position * 0.5 + 0.5;
420  gl_Position = vec4(position, 0.0, 1.0);
421}`,O=`precision highp float;
422
423uniform float iTime;
424uniform vec2  iResolution;
425
426uniform vec2  rayPos;
427uniform vec2  rayDir;
428uniform vec3  raysColor;
429uniform float raysSpeed;
430uniform float lightSpread;
431uniform float rayLength;
432uniform float pulsating;
433uniform float fadeDistance;
434uniform float saturation;
435uniform vec2  mousePos;
436uniform float mouseInfluence;
437uniform float noiseAmount;
438uniform float distortion;
439uniform float opacity;
440uniform float fadeOut;
441
442varying vec2 vUv;
443
444float noise(vec2 st) {
445  return fract(sin(dot(st.xy, vec2(12.9898,78.233))) * 43758.5453123);
446}
447
448float rayStrength(vec2 raySource, vec2 rayRefDirection, vec2 coord,
449                  float seedA, float seedB, float speed) {
450  vec2 sourceToCoord = coord - raySource;
451  vec2 dirNorm = normalize(sourceToCoord);
452  float cosAngle = dot(dirNorm, rayRefDirection);
453
454  float distortedAngle = cosAngle + distortion * sin(iTime * 2.0 + length(sourceToCoord) * 0.01) * 0.2;
455  
456  float spreadFactor = pow(max(distortedAngle, 0.0), 1.0 / max(lightSpread, 0.001));
457
458  float distance = length(sourceToCoord);
459  float maxDistance = iResolution.x * rayLength;
460  float lengthFalloff = clamp((maxDistance - distance) / maxDistance, 0.0, 1.0);
461  
462  float fadeFalloff = clamp((iResolution.x * fadeDistance - distance) / (iResolution.x * fadeDistance), 0.5, 1.0);
463  float pulse = pulsating > 0.5 ? (0.8 + 0.2 * sin(iTime * speed * 3.0)) : 1.0;
464
465  float baseStrength = clamp(
466    (0.45 + 0.15 * sin(distortedAngle * seedA + iTime * speed)) +
467    (0.3 + 0.2 * cos(-distortedAngle * seedB + iTime * speed)),
468    0.0, 1.0
469  );
470
471  return baseStrength * lengthFalloff * fadeFalloff * spreadFactor * pulse;
472}
473
474void mainImage(out vec4 fragColor, in vec2 fragCoord) {
475  vec2 coord = vec2(fragCoord.x, iResolution.y - fragCoord.y);
476  
477  vec2 finalRayDir = rayDir;
478  if (mouseInfluence > 0.0) {
479    vec2 mouseScreenPos = mousePos * iResolution.xy;
480    vec2 mouseDirection = normalize(mouseScreenPos - rayPos);
481    finalRayDir = normalize(mix(rayDir, mouseDirection, mouseInfluence));
482  }
483
484  vec4 rays1 = vec4(1.0) *
485               rayStrength(rayPos, finalRayDir, coord, 36.2214, 21.11349,
486                           1.5 * raysSpeed);
487  vec4 rays2 = vec4(1.0) *
488               rayStrength(rayPos, finalRayDir, coord, 22.3991, 18.0234,
489                           1.1 * raysSpeed);
490
491  fragColor = rays1 * 0.5 + rays2 * 0.4;
492
493  if (noiseAmount > 0.0) {
494    float n = noise(coord * 0.01 + iTime * 0.1);
495    fragColor.rgb *= (1.0 - noiseAmount + noiseAmount * n);
496  }
497
498  float brightness = 1.0 - (coord.y / iResolution.y);
499  fragColor.x *= 0.1 + brightness * 0.8;
500  fragColor.y *= 0.3 + brightness * 0.6;
501  fragColor.z *= 0.5 + brightness * 0.5;
502
503  if (saturation != 1.0) {
504    float gray = dot(fragColor.rgb, vec3(0.299, 0.587, 0.114));
505    fragColor.rgb = mix(vec3(gray), fragColor.rgb, saturation);
506  }
507
508  fragColor.rgb *= raysColor;
509
510  // Bottom fade to avoid harsh boundary with next section
511  if (fadeOut > 0.0) {
512    float v = fragCoord.y / iResolution.y;
513    float mask = smoothstep(0.0, fadeOut, v);
514    fragColor.rgb *= mask;
515  }
516
517  // Alpha based on intensity and global opacity
518  float intensity = clamp(max(fragColor.r, max(fragColor.g, fragColor.b)), 0.0, 1.0);
519  fragColor.a = intensity * opacity;
520}
521
522void main() {
523  vec4 color;
524  mainImage(color, gl_FragCoord.xy);
525  gl_FragColor  = color;
526}`,C={iTime:{value:0},iResolution:{value:[1,1]},rayPos:{value:[0,0]},rayDir:{value:[0,1]},raysColor:{value:$u(e)},raysSpeed:{value:r},lightSpread:{value:s},rayLength:{value:n},pulsating:{value:a?1:0},fadeDistance:{value:o},saturation:{value:l},mousePos:{value:[.5,.5]},mouseInfluence:{value:d},noiseAmount:{value:u},distortion:{value:p},opacity:{value:h},fadeOut:{value:x}};b.current=C;const $=new kk(M),K=new bj(M,{vertex:B,fragment:O,uniforms:C}),z=new jk(M,{geometry:$,program:K});E.current=z;const X=()=>
526{if(!y.current||!N)return;N.dpr=Math.min(window.devicePixelRatio,2);const{clientWidth:ee,clientHeight:ke}=y.current;N.setSize(ee,ke);const ce=N.dpr,Ct=ee*ce,Ze=ke*ce;C.iResolution.value=[Ct,Ze];const{anchor:mt,dir:gt}=Fu(t,Ct,Ze);C.rayPos.value=mt,C.rayDir.value=gt},Z=ee=>{if(!(!w.current||!b.current||!E.current)){C.iTime.value=ee*.001,c&&d>0&&(j.current.x=j.current.x*.92+_.current.x*(1-.92),j.current.y=j.current.y*.92+_.current.y*(1-.92),C.mousePos.value=[j.current.x,j.current.y]);try{N.render({scene:z}),k.current=requestAnimationFrame(Z)}catch(ke){console.warn("WebGL rendering error:",ke);return}}};window.addEventListener("resize",X),X(),k.current=requestAnimationFrame(Z),T.current=()=>{if(k.current&&(cancelAnimationFrame(k.current),k.current=null),window.removeEventListener("resize",X),N)try{const ee=N.gl.canvas,ke=N.gl.getExtension("WEBGL_lose_context");ke&&ke.loseContext(),ee&&ee.parentNode&&ee.parentNode.removeChild(ee)}catch(ee){console.warn("Error during WebGL cleanup:",ee)}w.current=null,b.current=null,E.current=null}})(),()=>{T.current&&(T.current(),T.current=null)}),[L,A,t,e,r,s,n,a,o,l,c,d,u,p,h,f,x]),g.useEffect(()=>{if(!b.current||!y.current||!w.current)return;const D=b.current,N=w.current;D.raysColor.value=$u(e),D.raysSpeed.value=r,D.lightSpread.value=s,D.rayLength.value=n,D.pulsating.value=a?1:0,D.fadeDistance.value=o,D.saturation.value=l,D.mouseInfluence.value=d,D.noiseAmount.value=u,D.distortion.value=p,D.opacity.value=h,D.fadeOut.value=x;const{clientWidth:M,clientHeight:B}=y.current,O=N.dpr,{anchor:C,dir:$}=Fu(t,M*O,B*O);D.rayPos.value=C,D.rayDir.value=$},[e,r,s,t,n,a,o,l,d,u,p,h,x]),g.useEffect(()=>{const D=N=>{if(!y.current||!w.current)return;const M=y.current.getBoundingClientRect(),B=(N.clientX-M.left)/M.width,O=(N.clientY-M.top)/M.height;_.current={x:B,y:O}};if(c)return window.addEventListener("mousemove",D),()=>window.removeEventListener("mousemove",D)},[c]),i.jsx("div",{ref:y,className:`w-full h-full pointer-events-none z-[3] overflow-hidden relative ${m}`.trim()})},co={ios:{label:"Download on the App Store",image:"/badges/app-store.svg"},android:{label:"Get it on Google Play",image:"/badges/google-play.svg"}};function Ak(){const t=Bm(),e=t==="android"?["android","ios"]:["ios","android"];return i.jsx("div",{className:"flex flex-wrap items-center justify-center gap-3",children:e.map(r=>i.jsx("a",{href:zi[r],target:"_blank",rel:"noopener noreferrer","aria-label":co[r].label,className:t&&t!==r?"flex min-h-11 items-center text-sm font-semibold text-gray-600 underline underline-offset-4 dark:text-gray-300":"rounded-[9px] transition-transform hover:scale-105 dark:ring-1 dark:ring-white/20",children:t&&t!==r?`Also on ${r==="ios"?"iPhone":"Android"}`:i.jsx("img",{src:co[r].image,alt:co[r].label,width:r==="ios"?144:162,height:48,className:"h-12 w-auto object-contain"})},r))})}const qi={rating:4.8,count:1601};function It(t){const e=g.useRef(null),[r,s]=g.useState(!1);return g.useEffect(()=>{if(!e.current)return;const n=new window.IntersectionObserver(a=>{a[0].isIntersecting&&(s(!0),n.disconnect())},{threshold:.18,...t});return n.observe(e.current),()=>n.disconnect()},[t]),[e,r]}const Nk="/honeydew-gif-demo-poster.jpg",Ck="/honeydew-gif-demo-mobile.mp4",Sk="/demo-recipe-banana-strawberry-oats.jpg",Pk="/demo-recipe-teriyaki-rice-bowl.jpg",Rk="/honeydew-app-icon-small.png";function Ok(){return i.jsx("div",{className:"relative",children:i.jsx(ej,{className:"size-full",videoSrc:Ck,posterSrc:Nk})})}const Ik=`
527.hd-stage{position:relative;width:100%;max-width:1100px;height:720px;margin:72px auto 0;isolation:isolate;text-align:left}
528
529/* Soft green bloom behind the whole composition (Ellie's .hero-aura). */
530.hd-aura{
531  position:absolute;left:50%;top:46%;width:620px;height:620px;
532  transform:translate(-50%,-50%);border-radius:50%;z-index:0;pointer-events:none;
533  background:radial-gradient(circle,rgba(117,182,158,.20) 0,rgba(224,242,233,.28) 42%,rgba(255,255,255,0) 70%);
534  filter:blur(8px);
535}
536html.dark .hd-aura{
537  background:radial-gradient(circle,rgba(117,182,158,.16) 0,rgba(23,23,25,.35) 44%,rgba(11,11,12,0) 70%);
538}
539
540/* The phone sits dead centre, above the tiles but below the status cards. */
541.hd-device{position:absolute;
541left:50%;top:0;z-index:4;transform:translateX(-50%)}
542
543/* Floating module surface. .ellie-card supplies the 22px radius, blur, border
544   and deep shadow (and its own dark half); this adds only the gloss sweep. */
545.hd-module{position:absolute;z-index:2}
546.hd-module::after{
547  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
548  background:linear-gradient(120deg,rgba(255,255,255,.35),transparent 30%);
549}
550html.dark .hd-module::after{
551  background:linear-gradient(120deg,rgba(255,255,255,.06),transparent 30%);
552}
553.hd-module > *{position:relative;z-index:1}
554
555/* --- Creator tiles --- */
556.hd-tile{
557  width:190px;height:252px;padding:0;display:block;overflow:hidden;border-radius:27px;
558  background:#161a18;border:1px solid rgba(255,255,255,.55);
559  box-shadow:0 26px 52px rgba(23,43,33,.19),0 7px 18px rgba(13,20,16,.12),inset 0 0 0 1px rgba(255,255,255,.16);
560  backdrop-filter:none;-webkit-backdrop-filter:none;
561}
562html.dark .hd-tile{border-color:rgba(255,255,255,.14)}
563.hd-tile::after{
564  z-index:2;background:linear-gradient(180deg,rgba(5,7,6,.82) 0,rgba(5,7,6,.52) 18%,rgba(0,0,0,.08) 45%,transparent 66%);
565}
566.hd-tile-one{left:190px;top:58px;z-index:2;transform:rotate(-4.5deg)}
567.hd-tile-two{right:185px;top:96px;z-index:2;transform:rotate(4deg)}
568.hd-tile-media{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;z-index:1!important}
569.hd-tile-copy{position:absolute!important;left:15px;right:13px;top:15px;z-index:3!important;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.72)}
570.hd-tile-title{font-size:17px;font-weight:650;line-height:1.12;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
571.hd-tile-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px;text-shadow:none}
572.hd-tile-pill{
573  display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;
574  background:rgba(10,14,12,.72);border:1px solid rgba(255,255,255,.18);
575  color:rgba(255,255,255,.96);font-size:10.5px;font-weight:720;line-height:1;
576  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
577  box-shadow:0 3px 10px rgba(0,0,0,.18);
578}
579.hd-tile-pill svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
580
581/* --- Shared module head --- */
582.hd-head{display:flex;align-items:center;gap:11px}
583.hd-icon{
584  width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:none;
585  background:linear-gradient(145deg,#e9f5ef,#d2ead9);color:#3d7a61;box-shadow:inset 0 0 0 1px rgba(61,122,97,.10);
586}
587html.dark .hd-icon{background:linear-gradient(145deg,rgba(117,182,158,.16),rgba(61,122,97,.14));color:#9cd0b6;box-shadow:inset 0 0 0 1px rgba(156,208,182,.14)}
588.hd-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
589.hd-title{font-size:14.5px;font-weight:760;color:#1f2a22;line-height:1.2}
590html.dark .hd-title{color:#e8eaea}
591.hd-sub{font-size:11.5px;color:#7c837e;font-weight:560;margin-top:3px}
592html.dark .hd-sub{color:#9b9da1}
593
594/* --- Importing card --- */
595.hd-importing{left:62px;top:268px;width:320px;padding:18px 18px 16px;z-index:7}
596.hd-state{margin-left:auto;display:flex;align-items:center;gap:6px;color:#3d7a61;font-size:11px;font-weight:750}
597html.dark .hd-state{color:#75b69e}
598.hd-state::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(61,122,97,.14);animation:hdStatusPulse 1.7s ease-in-out infinite}
599.hd-track{height:7px;background:#e6ece8;border-radius:99px;overflow:hidden;margin-top:15px;box-shadow:inset 0 1px 2px rgba(23,43,33,.07)}
600html.dark .hd-track{background:rgba(255,255,255,.09);box-shadow:inset 0 1px 2px rgba(0,0,0,.4)}
601.hd-fill{height:100%;width:74%;border-radius:inherit;background:linear-gradient(90deg,#75b69e,#3d7a61);position:relative;overflow:hidden}
602.hd-fill::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translateX(-100%);animation:hdProgressShine 2.2s ease-in-out infinite}
603.hd-steps{display:flex;justify-content:space-between;gap:8px;margin-top:11px;color:#7c837e;font-size:10.5px;font-weight:650}
604html.dark .hd-steps{color:#8e918f}
605.hd-steps .hd-done{color:#3d7a61}
606html.dark .hd-steps .hd-done{color:#75b69e}
607
608/* --- Thinking card --- */
609.hd-thinking{right:62px;top:300px;width:320px;padding:16px 18px;z-index:7;display:flex;align-items:center;gap:13px}
610.hd-sprite{
611  width:58px;height:58px;overflow:hidden;border-radius:17px;position:relative;flex:none;
612  background:#f2f8f5;box-shadow:inset 0 0 0 1px rgba(31,42,34,.10);
613  animation:hdSpriteBob 2.8s ease-in-out infinite;display:grid;place-items:center;
614}
615html.dark .hd-sprite{background:rgba(117,182,158,.10);box-shadow:inset 0 0 0 1px rgba(156,208,182,.14)}
616.hd-sprite img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
617.hd-thinking-copy{min-width:0;flex:1}
618.hd-thinking-label{font-size:10.5px;letter-spacing:.7px;text-transform:uppercase;color:#3d7a61;font-weight:780;margin-bottom:6px}
619html.dark .hd-thinking-label{color:#9cd0b6}
620.hd-verb{
621  display:block;font-size:14.5px;font-weight:700;white-space:nowrap;
622  background:linear-gradient(90deg,#25322b 20%,#a9b4ae 48%,#25322b 76%);background-size:220% 100%;
623  -webkit-background-clip:text;background-clip:text;color:transparent;animation:hdVerbShimmer 2.4s linear infinite;
624}
625html.dark .hd-verb{background:linear-gradient(90deg,#e8eaea 20%,#6b6f6d 48%,#e8eaea 76%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent}
626.hd-dots{display:flex;gap:4px;margin-top:9px}
627.hd-dots i{width:5px;height:5px;border-radius:50%;background:#4f9777;opacity:.28;animation:hdDotLift 1.2s ease-in-out infinite}
628.hd-dots i:nth-child(2){animation-delay:.16s}
629.hd-dots i:nth-child(3){animation-delay:.32s}
630
631/* --- Instructions (Ellie's summary-card) --- */
632.hd-instructions{right:48px;bottom:16px;width:344px;padding:18px;z-index:7}
633.hd-instructions .hd-head{padding-bottom:12px;border-bottom:1px solid rgba(31,42,34,.08)}
634html.dark .hd-instructions .hd-head{border-bottom-color:rgba(255,255,255,.08)}
635.hd-instructions-copy{font-size:15px;font-weight:560;line-height:1.36;color:#25322b;padding:13px 2px 10px}
636html.dark .hd-instructions-copy{color:#d8dcda}
637.hd-highlight-ingredient,.hd-highlight-time{
638  display:inline;padding:1px 3px;border-radius:5px;font-weight:780;
639  -webkit-box-decoration-break:clone;box-decoration-break:clone;
640}
641.hd-highlight-ingredient{color:#326251;background:rgba(117,182,158,.20)}
642.hd-highlight-time{color:#936f00;background:rgba(229,174,0,.19)}
643html.dark .hd-highlight-ingredient{color:#9cd0b6;background:rgba(117,182,158,.18)}
644html.dark .hd-highlight-time{color:#f1c84b;background:rgba(229,174,0,.16)}
645.hd-source{display:flex;align-items:center;gap:7px;color:#7c837e;font-size:10.5px;font-weight:650}
646html.dark .hd-source{color:#8e918f}
647.hd-source-dot{width:19px;height:19px;border-radius:7px;display:grid;place-items:center;background:#e0f2e9;color:#3d7a61;font-size:10px}
648html.dark .hd-source-dot{background:rgba(117,182,158,.16);color:#9cd0b6}
649.hd-badge{margin-left:auto;padding:4px 8px;border-radius:99px;background:#e0f2e9;color:#3d7a61;font-size:9.5px;font-weight:750}
650html.dark .hd-badge{background:rgba(117,182,158,.16);color:#9cd0b6}
651
652/* --- Ingredients (Ellie's takeaways-card) --- */
653.hd-ingredients{left:48px;bottom:30px;width:342px;padding:18px;z-index:2;transform:rotate(-1.5deg)}
654.hd-ingredients .hd-head{padding-bottom:11px;border-bottom:1px solid rgba(31,42,34,.08)}
655html.dark .hd-ingredients .hd-head{border-bottom-color:rgba(255,255,255,.08)}
656.hd-list{display:flex;flex-direction:column;padding-top:3px}
657.hd-item{display:grid;grid-template-columns:27px 1fr;gap:10px;align-items:start;padding:10px 0;font-size:12px;line-height:1.35;font-weight:650;color:#3b453f}
658html.dark .hd-item{color:#c3c7c5}
659.hd-measure{color:#326251;font-weight:820}
660html.dark .hd-measure{color:#9cd0b6}
661.hd-item + .hd-item{border-top:1px solid rgba(31,42,34,.065)}
662html.dark .hd-item + .hd-item{border-top-color:rgba(255,255,255,.06)}
663.hd-glyph{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;font-size:12px;font-weight:800}
664/* Three tints inside Honeydew's own green ramp — no borrowed accent hues. */
665.hd-item:nth-child(1) .hd-glyph{background:#e0f2e9;color:#326251}
666.hd-item:nth-child(2) .hd-glyph{background:#c4e5d4;color:#2c4f43}
667.hd-item:nth-child(3) .hd-glyph{background:#f5f9f7;color:#4f9777}
668html.dark .hd-item:nth-child(1) .hd-glyph{background:rgba(117,182,158,.18);color:#c4e5d4}
669html.dark .hd-item:nth-child(2) .hd-glyph{background:rgba(79,151,119,.24);color:#e0f2e9}
670html.dark .hd-item:nth-child(3) .hd-glyph{background:rgba(255,255,255,.07);color:#9cd0b6}
671
672@keyframes hdStatusPulse{0%,100%{transform:scale(.85);opacity:.65}50%{transform:scale(1);opacity:1}}
673@keyframes hdProgressShine{0%,28%{transform:translateX(-100%)}70%,100%{transform:translateX(100%)}}
674@keyframes hdSpriteBob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-4px) rotate(1deg)}}
675@keyframes hdVerbShimmer{to{background-position:-220% 0}}
676@keyframes hdDotLift{0%,60%,100%{transform:translateY(0);opacity:.28}30%{transform:translateY(-3px);opacity:.9}}
677
678/* Ellie restacks the whole composition into one column at 900px. Same here:
679   the phone leads, then the modules in narrative order. */
680@media (max-width:900px){
681  .hd-stage{height:auto;display:flex;flex-direction:column;align-items:center;gap:18px;margin-top:56px}
682  .hd-aura{top:300px;width:520px;height:520px}
683  .hd-device,.hd-module{position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none}
684  .hd-device{order:0;margin-bottom:12px}
685  .hd-importing{order:1}
686  .hd-thinking{order:2}
687  .hd-instructions{order:3}
688  .hd-ingredients{order:4}
689  .hd-tile-one{order:5}
690  .hd-tile-two{order:6}
691  .hd-module{width:min(100%,344px)}
692  .hd-thinking,.hd-instructions,.hd-ingredients,.hd-tile-one,.hd-tile-two{display:none}
693  .hd-stage{gap:14px;margin-top:28px}
694  .hd-device{width:250px;max-width:100%;max-height:390px;overflow:hidden;margin-bottom:0;mask-image:linear-gradient(#000 85%,transparent)}
695  .hd-aura{display:none}
696  .hd-module.hd-tile{width:190px;height:252px}
697}
698@media (prefers-reduced-motion:reduce){
699  .hd-fill::after,.hd-sprite,.hd-verb,.hd-dots i,.hd-state::before{animation:none}
700}
701`,Dk=()=>{const[t,e]=It(),[r,s]=It(),[n,a]=It(),[o,l]=It();return i.jsxs("section",{className:"landing-hero relative pt-28 md:pt-[140px] pb-10 text-center overflow-x-clip transition-colors duration-500",children:[i.jsx("style",{children:Ik}),i.jsx("div",{className:"absolute inset-0 z-0 pointer-events-none overflow-hidden","aria-hidden":"true",children:i.jsx(Tk,{raysOrigin:"top-center",raysColor:"#39ff14",raysSpeed:1,lightSpread:.5,rayLength:3,pulsating:!0,fadeDistance:1,saturation:1,followMouse:!0,mou
701seInfluence:.6,noiseAmount:0,distortion:0,opacity:.95,additive:!0,fadeOut:.2})}),i.jsxs("div",{className:"fixed inset-0 z-0 pointer-events-none overflow-hidden","aria-hidden":"true",children:[i.jsx("div",{className:"absolute -left-96 -top-32 w-[700px] h-[380px] bg-gradient-to-br from-honeydew-200/50 to-honeydew-400/40 rounded-full blur-3xl opacity-80 animate-float-slow"}),i.jsx("div",{className:"absolute -right-80 bottom-0 w-[540px] h-[340px] bg-gradient-to-tl from-honeydew-200/40 to-honeydew-500/20 rounded-full blur-2xl opacity-60 animate-float-delayed"}),i.jsx("div",{className:"absolute left-1/2 top-1/3 w-[600px] h-[400px] bg-gradient-to-tr from-honeydew-300/30 to-honeydew-400/20 rounded-full blur-3xl opacity-40 animate-float-medium"})]}),i.jsxs("div",{className:"relative z-20 wrap-ellie flex flex-col items-center",children:[i.jsxs("h1",{ref:t,className:`hero-title display text-[#1f2a22] dark:text-gray-100 rv ${e?"in":""}`,children:["Save"," ",i.jsx("span",{className:"hero-highlight-gradient",children:"recipes"})," ","from anywhere. Keep them all"," ",i.jsx("span",{className:"hero-highlight-gradient",children:"organized"}),"."]}),i.jsx("p",{ref:r,className:`lede mt-[22px] mb-[34px] mx-auto rv ${s?"in":""}`,children:"From social media and screenshots to websites and family favorites, Honeydew turns every recipe you find into one beautifully organized cookbook."}),i.jsx("div",{ref:n,className:`flex items-center justify-center gap-3 rv ${a?"in":""}`,children:i.jsx(Ak,{})}),i.jsxs("a",{href:"https://apps.apple.com/us/app/honeydew-capture-recipes/id6714449541#see-all/reviews",target:"_blank",rel:"noopener noreferrer",className:"mt-5 min-h-11 flex flex-wrap items-center justify-center gap-x-2 text-sm font-semibold text-gray-600 dark:text-gray-300",children:[i.jsx("span",{className:"text-honeydew-700 dark:text-honeydew-300","aria-hidden":"true",children:"★★★★★"}),i.jsxs("span",{children:[qi.rating," on the App Store"]}),i.jsx("span",{"aria-hidden":"true",children:"·"}),i.jsxs("span",{children:[(Math.floor(qi.count/100)*100).toLocaleString("en-US"),"+ ratings"]})]}),i.jsxs("div",{ref:o,className:`hd-stage rv ${l?"in":""}`,"aria-label":"Honeydew turning a saved recipe video into ingredients and steps",children:[i.jsx("div",{className:"hd-aura","aria-hidden":"true"}),i.jsxs("div",{className:"hd-module hd-tile hd-tile-one","aria-label":"Banana Strawberry Oats recipe card",children:[i.jsx("img",{className:"hd-tile-media",src:Sk,alt:"Banana strawberry oats with fresh berries"}),i.jsxs("div",{className:"hd-tile-copy",children:[i.jsx("div",{className:"hd-tile-title",children:"Banana Strawberry Oats"}),i.jsxs("div",{className:"hd-tile-meta","aria-label":"1 serving, 10 minutes",children:[i.jsxs("span",{className:"hd-tile-pill",children:[i.jsxs("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[i.jsx("path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"}),i.jsx("circle",{cx:"9",cy:"7",r:"4"})]}),"1"]}),i.jsxs("span",{className:"hd-tile-pill",children:[i.jsxs("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[i.jsx("circle",{cx:"12",cy:"12",r:"9"}),i.jsx("path",{d:"M12 7v5l3 2"})]}),"10 min"]})]})]})]}),i.jsxs("div",{className:"hd-module hd-tile hd-tile-two","aria-label":"Teriyaki Rice Bowl recipe card",children:[i.jsx("img",{className:"hd-tile-media",src:Pk,alt:"Teriyaki chicken and avocado rice bowl"}),i.jsxs("div",{className:"hd-tile-copy",children:[i.jsx("div",{className:"hd-tile-title",children:"Teriyaki Rice Bowl"}),i.jsxs("div",{className:"hd-tile-meta","aria-label":"2 servings, 25 minutes",children:[i.jsxs("span",{className:"hd-tile-pill",children:[i.jsxs("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[i.jsx("path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"}),i.jsx("circle",{cx:"9",cy:"7",r:"4"}),i.jsx("path",{d:"M19 8v6M22 11h-6"})]}),"2"]}),i.jsxs("span",{className:"hd-tile-pill",children:[i.jsxs("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[i.jsx("circle",{cx:"12",cy:"12",r:"9"}),i.jsx("path",{d:"M12 7v5l3 2"})]}),"25 min"]})]})]})]}),i.jsxs("div",{className:"hd-module ellie-card hd-importing","aria-label":"Importing a saved recipe video",children:[i.jsxs("div",{className:"hd-head",children:[i.jsx("span",{className:"hd-icon","aria-hidden":"true",children:i.jsxs("svg",{viewBox:"0 0 24 24",children:[i.jsx("path",{d:"M12 3v12m0 0 4-4m-4 4-4-4"}),i.jsx("path",{d:"M5 17v2a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-2"})]})}),i.jsxs("div",{children:[i.jsx("div",{className:"hd-title",children:"Importing your recipe"}),i.jsx("div",{className:"hd-sub",children:"Instagram · @grillsidekick"})]}),i.jsx("div",{className:"hd-state",children:"Working"})]}),i.jsx("div",{className:"hd-track",role:"progressbar","aria-label":"Import progress","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":74,children:i.jsx("div",{className:"hd-fill"})}),i.jsxs("div",{className:"hd-steps",children:[i.jsx("span",{className:"hd-done",children:"✓ Video foun
701d"}),i.jsx("span",{className:"hd-done",children:"✓ Transcript"}),i.jsx("span",{children:"Ingredients"}),i.jsx("span",{children:"Steps"})]})]}),i.jsxs("div",{className:"hd-module ellie-card hd-ingredients","aria-label":"Ingredients pulled from the video",children:[i.jsxs("div",{className:"hd-head",children:[i.jsx("span",{className:"hd-icon","aria-hidden":"true",children:i.jsxs("svg",{viewBox:"0 0 24 24",children:[i.jsx("path",{d:"M4 7h16"}),i.jsx("path",{d:"M6 7v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V7"}),i.jsx("path",{d:"M9 7V5a3 3 0 0 1 6 0v2"})]})}),i.jsxs("div",{children:[i.jsx("div",{className:"hd-title",children:"Ingredients"}),i.jsx("div",{className:"hd-sub",children:"30-Minute Coconut Curry Chicken"})]})]}),i.jsxs("div",{className:"hd-list",children:[i.jsxs("div",{className:"hd-item",children:[i.jsx("span",{className:"hd-glyph",children:"1"}),i.jsxs("span",{children:[i.jsx("span",{className:"hd-measure",children:"1½ lb"})," boneless chicken thighs, cut into chunks"]})]}),i.jsxs("div",{className:"hd-item",children:[i.jsx("span",{className:"hd-glyph",children:"2"}),i.jsxs("span",{children:[i.jsx("span",{className:"hd-measure",children:"1 can (14 oz)"})," full-fat coconut milk"]})]}),i.jsxs("div",{className:"hd-item",children:[i.jsx("span",{className:"hd-glyph",children:"3"}),i.jsxs("span",{children:[i.jsx("span",{className:"hd-measure",children:"3 tbsp"})," red curry paste, plus a lime to finish"]})]})]})]}),i.jsx("div",{className:"hd-device",children:i.jsx(Ok,{})}),i.jsxs("div",{className:"hd-module ellie-card hd-thinking","aria-label":"Honeydew is thinking",children:[i.jsx("div",{className:"hd-sprite","aria-hidden":"true",children:i.jsx("img",{src:Rk,alt:""})}),i.jsxs("div",{className:"hd-thinking-copy",children:[i.jsx("div",{className:"hd-thinking-label",children:"Honeydew is thinking"}),i.jsx("span",{className:"hd-verb","aria-hidden":"true",children:"finding the recipe…"}),i.jsx("span",{className:"sr-only",children:"Finding the recipe"}),i.jsxs("div",{className:"hd-dots","aria-hidden":"true",children:[i.jsx("i",{}),i.jsx("i",{}),i.jsx("i",{})]})]})]}),i.jsxs("div",{className:"hd-module ellie-card hd-instructions","aria-label":"Instructions generated from the video",children:[i.jsxs("div",{className:"hd-head",children:[i.jsx("span",{className:"hd-icon","aria-hidden":"true",children:i.jsxs("svg",{viewBox:"0 0 24 24",children:[i.jsx("path",{d:"M12 3 13.7 8.3 19 10l-5.3 1.7L12 17l-1.7-5.3L5 10l5.3-1.7L12 3Z"}),i.jsx("path",{d:"m18.5 16 .8 2.2 2.2.8-2.2.8-.8 2.2-.8-2.2-2.2-.8 2.2-.8.8-2.2Z"})]})}),i.jsxs("div",{children:[i.jsx("div",{className:"hd-title",children:"Instructions"}),i.jsx("div",{className:"hd-sub",children:"Written from the full transcript"})]}),i.jsx("span",{className:"hd-badge",children:"Ready"})]}),i.jsxs("div",{className:"hd-instructions-copy",children:["Sear the ",i.jsx("span",{className:"hd-highlight-ingredient",children:"chicken"})," until golden, then stir the ",i.jsx("span",{className:"hd-highlight-ingredient",children:"curry paste"})," in for a minute until it smells toasty. Pour in the ",i.jsx("span",{className:"hd-highlight-ingredient",children:"coconut milk"})," and simmer ",i.jsx("span",{className:"hd-highlight-time",children:"15 minutes"})," until the sauce thickens. Finish with ",i.jsx("span",{className:"hd-highlight-ingredient",children:"lime"})," and"," ",i.jsx("span",{className:"hd-highlight-ingredient",children:"coriander"}),", and serve over"," ",i.jsx("span",{className:"hd-highlight-ingredient",children:"rice"}),"."]}),i.jsxs("div",{className:"hd-source",children:[i.jsx("span",{className:"hd-source-dot","aria-hidden":"true",children:"▶"}),i.jsx("span",{children:"@thecurryhouse · 0:52"}),i.jsx("span",{style:{marginLeft:"auto"},children:"Saved to your cookbook"})]})]})]}),i.jsxs("div",{className:"hidden",children:[i.jsx("img",{src:"/lovable-uploads/05707eb1-6d03-420b-98c7-fdf38a3dee14.png",alt:"Uneed Daily Winner - 2nd Place",className:"h-12 object-contain"}),i.jsx("img",{src:"/lovable-uploads/5610c62b-f728-49c1-bb2f-feac773b716f.png",alt:"4.8 Average Rating",className:"h-20 object-contain"})]})]})]})},jc=g.createContext({});function kc(t){const e=g.useRef(null);return e.current===null&&(e.current=t()),e.current}const Ec=typeof window<"u",Cg=Ec?g.useLayoutEffect:g.useEffect,_a=g.createContext(null);function Tc(t,e){t.indexOf(e)===-1&&t.push(e)}function Ac(t,e){const r=t.indexOf(e);r>-1&&t.splice(r,1)}const Lt=(t,e,r)=>r>e?e:r<t?t:r;let Gi=()=>{};const Mt={},Sg=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t);function Pg(t){return typeof t=="object"&&t!==null}const Rg=t=>/^0[^.\s]+$/u.test(t);function Nc(t){let e;return()=>(e===void 0&&(e=t()),e)}const Ye=t=>t,Lk=(t,e)=>r=>e(t(r)),Hn=(...t)=>t.reduce(Lk),jn=(t,e,r)=>{const s=e-t;return s===0?1:(r-t)/s};class Cc{constructor(){this.subscriptions=[]}add(e){return Tc(this.subscriptions,e),()=>Ac(this.subscriptions,e)}notify(e,r,s){const n=this.subscriptions.length;if(n)if(n===1)this.subscriptions[0](e,r,s);else for(let a=0;a<n;a++){const o=this.subscriptions[a];o&&o(e,r,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const kt=t=>t*1e3,Et=t=>t/1e3;function Og(t,e){return e?t*(1e3/e):0}const Ig=(t,e,r)=>(((1-3*r+3*e)*t+(3*r-6*e))*t+3*e)*t,Mk=1e-7,Vk=12;function $k(t,e,r,s,n){let a,o,l=0;do o=e+(r-e)/2,a=Ig(o,s,n)-t,a>0?r=o:e=o;while(Math.abs(a)>Mk&&++l<Vk);return o}function Wn(t,e,r,s){if(t===e&&r===s)return Ye;const n=a=>$k(a,0,1,t,r);return a=>a===0||a===1?a:Ig(n(a),e,s)}const Dg=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Lg=t=>e=>1-t(1-e),Mg=Wn(.33,1.53,.69,.99),Sc=Lg(Mg),Vg=Dg(Sc),$g=t=>(t*=2)<1?.5*Sc(t):.5*(2-Math.pow(2,-10*(t-1))),Pc=t=>1-Math.sin(Math.acos(t)),Fg=Lg(Pc),Ug=Dg(Pc),Fk=Wn(.42,0,1,1),Uk=Wn(0,0,.58,1),Bg=Wn(.42,0,.58,1),Bk=t=>Array.isArray(t)&&typeof t[0]!="number",zg=t=>Array.isArray(t)&&typeof t[0]=="number",Uu={linear:Ye,easeIn:Fk,easeInOut:Bg,easeOut:Uk,circIn:Pc,circInOut:Ug,circOut:Fg,backIn:Sc,backInOut:Vg,backOut:Mg,anticipate:$g},zk=t=>typeof t=="string",Bu=t=>{if(zg(t)){Gi(t.length===4);const[e,r,s,n]=t;return Wn(e,r,s,n)}else if(zk(t))return Gi(Uu[t]!==void 0),Uu[t];return t},ui=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],zu={value:null,addProjectionMetrics:null};function Hk(t,e){let r=new Set,s=new Set,n=!1,a=!1;const o=new WeakSet;let l={delta:0,timestamp:0,isProcessing:!1},c=0;function d(p){o.has(p)&&(u.schedule(p),t()),c++,p(l)}const u={schedule:(p,h=!1,f=!1)=>{const m=f&&n?r:s;return h&&o.add(p),m.has(p)||m.add(p),p},cancel:p=>{s.delete(p),o.delete(p)},process:p=>{if(l=p,n){a=!0;return}n=!0,[r,s]=[s,r],r.forEach(d),e&&zu.value&&zu.value.frameloop[e].push(c),c=0,r.clear(),n=!1,a&&(a=!1,u.process(p))}};return u}const Wk=40;function Hg(t,e){let r=!1,s=!0;const n={delta:0,timestamp:0,isProcessing:!1},a=()=>
vendor: 4,224 bytes, line 701
701r=!0,o=ui.reduce((_,j)=>(_[j]=Hk(a,e?j:void 0),_),{}),{setup:l,read:c,resolveKeyframes:d,preUpdate:u,update:p,preRender:h,render:f,postRender:x}=o,m=()=>{const _=Mt.useManualTiming?n.timestamp:performance.now();r=!1,Mt.useManualTiming||(n.delta=s?1e3/60:Math.max(Math.min(_-n.timestamp,Wk),1)),n.timestamp=_,n.isProcessing=!0,l.process(n),c.process(n),d.process(n),u.process(n),p.process(n),h.process(n),f.process(n),x.process(n),n.isProcessing=!1,r&&e&&(s=!1,t(m))},y=()=>{r=!0,s=!0,n.isProcessing||t(m)};return{schedule:ui.reduce((_,j)=>{const k=o[j];return _[j]=(E,T=!1,A=!1)=>(r||y(),k.schedule(E,T,A)),_},{}),cancel:_=>{for(let j=0;j<ui.length;j++)o[ui[j]].cancel(_)},state:n,steps:o}}const{schedule:de,cancel:lr,state:Ce,steps:uo}=Hg(typeof requestAnimationFrame<"u"?requestAnimationFrame:Ye,!0);let Ci;function qk(){Ci=void 0}const Le={now:()=>(Ci===void 0&&Le.set(Ce.isProcessing||Mt.useManualTiming?Ce.timestamp:performance.now()),Ci),set:t=>{Ci=t,queueMicrotask(qk)}},Wg=t=>e=>typeof e=="string"&&e.startsWith(t),Rc=Wg("--"),Gk=Wg("var(--"),Oc=t=>Gk(t)?Kk.test(t.split("/*")[0].trim()):!1,Kk=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Ws={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},kn={...Ws,transform:t=>Lt(0,1,t)},hi={...Ws,default:1},hn=t=>Math.round(t*1e5)/1e5,Ic=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Yk(t){return t==null}const Jk=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Dc=(t,e)=>r=>!!(typeof r=="string"&&Jk.test(r)&&r.startsWith(t)||e&&!Yk(r)&&Object.prototype.hasOwnProperty.call(r,e)),qg=(t,e,r)=>s=>{if(typeof s!="string")return s;const[n,a,o,l]=s.match(Ic);return{[t]:parseFloat(n),[e]:parseFloat(a),[r]:parseFloat(o),alpha:l!==void 0?parseFloat(l):1}},Xk=t=>Lt(0,255,t),ho={...Ws,transform:t=>Math.round(Xk(t))},Nr={test:Dc("rgb","red"),parse:qg("red","green","blue"),transform:({red:t,green:e,blue:r,alpha:s=1})=>"rgba("+ho.transform(t)+", "+ho.transform(e)+", "+ho.transform(r)+", "+hn(kn.transform(s))+")"};function Qk(t){let e="",r="",s="",n="";return t.length>5?(e=t.substring(1,3),r=t.substring(3,5),s=t.substring(5,7),n=t.substring(7,9)):(e=t.substring(1,2),r=t.substring(2,3),s=t.substring(3,4),n=t.substring(4,5),e+=e,r+=r,s+=s,n+=n),{red:parseInt(e,16),green:parseInt(r,16),blue:parseInt(s,16),alpha:n?parseInt(n,16)/255:1}}const cl={test:Dc("#"),parse:Qk,transform:Nr.transform},qn=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),Yt=qn("deg"),Tt=qn("%"),G=qn("px"),Zk=qn("vh"),eE=qn("vw"),Hu={...Tt,parse:t=>Tt.parse(t)/100,transform:t=>Tt.transform(t*100)},ls={test:Dc("hsl","hue"),parse:qg("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:r,alpha:s=1})=>"hsla("+Math.round(t)+", "+Tt.transform(hn(e))+", "+Tt.transform(hn(r))+", "+hn(kn.transform(s))+")"},_e={test:t=>Nr.test(t)||cl.test(t)||ls.test(t),parse:t=>Nr.test(t)?Nr.parse(t):ls.test(t)?ls.parse(t):cl.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?Nr.transform(t):ls.transform(t),getAnimatableNone:t=>{const e=_e.parse(t);return e.alpha=0,_e.transform(e)}},tE=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function rE(t){var e,r;return isNaN(t)&&typeof t=="string"&&(((e=t.match(Ic))==null?void 0:e.length)||0)+(((r=t.match(tE))==null?void 0:r.length)||0)>0}const Gg="number",Kg="color",sE="var",nE="var(",Wu="${}",iE=/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 En(t){const e=t.toString(),r=[],s={color:[],number:[],var:[]},n=[];let a=0;const l=e.replace(iE,c=>(_e.test(c)?(s.color.push(a),n.push(Kg),r.push(_e.parse(c))):c.startsWith(nE)?(s.var.push(a),n.push(sE),r.push(c)):(s.number.push(a),n.push(Gg),r.push(parseFloat(c))),++a,Wu)).split(Wu);return{values:r,split:l,indexes:s,types:n}}function Yg(t){return En(t).values}function Jg(t){const{split:e,types:r}=En(t),s=e.length;return n=>{let a="";for(let o=0;o<s;
vendor: 9,565 bytes, line 701
701o++)if(a+=e[o],n[o]!==void 0){const l=r[o];l===Gg?a+=hn(n[o]):l===Kg?a+=_e.transform(n[o]):a+=n[o]}return a}}const aE=t=>typeof t=="number"?0:_e.test(t)?_e.getAnimatableNone(t):t;function oE(t){const e=Yg(t);return Jg(t)(e.map(aE))}const cr={test:rE,parse:Yg,createTransformer:Jg,getAnimatableNone:oE};function po(t,e,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+(e-t)*6*r:r<1/2?e:r<2/3?t+(e-t)*(2/3-r)*6:t}function lE({hue:t,saturation:e,lightness:r,alpha:s}){t/=360,e/=100,r/=100;let n=0,a=0,o=0;if(!e)n=a=o=r;else{const l=r<.5?r*(1+e):r+e-r*e,c=2*r-l;n=po(c,l,t+1/3),a=po(c,l,t),o=po(c,l,t-1/3)}return{red:Math.round(n*255),green:Math.round(a*255),blue:Math.round(o*255),alpha:s}}function Ki(t,e){return r=>r>0?e:t}const fe=(t,e,r)=>t+(e-t)*r,fo=(t,e,r)=>{const s=t*t,n=r*(e*e-s)+s;return n<0?0:Math.sqrt(n)},cE=[cl,Nr,ls],dE=t=>cE.find(e=>e.test(t));function qu(t){const e=dE(t);if(!e)return!1;let r=e.parse(t);return e===ls&&(r=lE(r)),r}const Gu=(t,e)=>{const r=qu(t),s=qu(e);if(!r||!s)return Ki(t,e);const n={...r};return a=>(n.red=fo(r.red,s.red,a),n.green=fo(r.green,s.green,a),n.blue=fo(r.blue,s.blue,a),n.alpha=fe(r.alpha,s.alpha,a),Nr.transform(n))},dl=new Set(["none","hidden"]);function uE(t,e){return dl.has(t)?r=>r<=0?t:e:r=>r>=1?e:t}function hE(t,e){return r=>fe(t,e,r)}function Lc(t){return typeof t=="number"?hE:typeof t=="string"?Oc(t)?Ki:_e.test(t)?Gu:mE:Array.isArray(t)?Xg:typeof t=="object"?_e.test(t)?Gu:pE:Ki}function Xg(t,e){const r=[...t],s=r.length,n=t.map((a,o)=>Lc(a)(a,e[o]));return a=>{for(let o=0;o<s;o++)r[o]=n[o](a);return r}}function pE(t,e){const r={...t,...e},s={};for(const n in r)t[n]!==void 0&&e[n]!==void 0&&(s[n]=Lc(t[n])(t[n],e[n]));return n=>{for(const a in s)r[a]=s[a](n);return r}}function fE(t,e){const r=[],s={color:0,var:0,number:0};for(let n=0;n<e.values.length;n++){const a=e.types[n],o=t.indexes[a][s[a]],l=t.values[o]??0;r[n]=l,s[a]++}return r}const mE=(t,e)=>{const r=cr.createTransformer(e),s=En(t),n=En(e);return s.indexes.var.length===n.indexes.var.length&&s.indexes.color.length===n.indexes.color.length&&s.indexes.number.length>=n.indexes.number.length?dl.has(t)&&!n.values.length||dl.has(e)&&!s.values.length?uE(t,e):Hn(Xg(fE(s,n),n.values),r):Ki(t,e)};function Qg(t,e,r){return typeof t=="number"&&typeof e=="number"&&typeof r=="number"?fe(t,e,r):Lc(t)(t,e)}const gE=t=>{const e=({timestamp:r})=>t(r);return{start:(r=!0)=>de.update(e,r),stop:()=>lr(e),now:()=>Ce.isProcessing?Ce.timestamp:Le.now()}},Zg=(t,e,r=10)=>{let s="";const n=Math.max(Math.round(e/r),2);for(let a=0;a<n;a++)s+=Math.round(t(a/(n-1))*1e4)/1e4+", ";return`linear(${s.substring(0,s.length-2)})`},Yi=2e4;function Mc(t){let e=0;const r=50;let s=t.next(e);for(;!s.done&&e<Yi;)e+=r,s=t.next(e);return e>=Yi?1/0:e}function yE(t,e=100,r){const s=r({...t,keyframes:[0,e]}),n=Math.min(Mc(s),Yi);return{type:"keyframes",ease:a=>s.next(n*a).value/e,duration:Et(n)}}const xE=5;function e0(t,e,r){const s=Math.max(e-xE,0);return Og(r-t(s),e-s)}const xe={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},mo=.001;function vE({duration:t=xe.duration,bounce:e=xe.bounce,velocity:r=xe.velocity,mass:s=xe.mass}){let n,a,o=1-e;o=Lt(xe.minDamping,xe.maxDamping,o),t=Lt(xe.minDuration,xe.maxDuration,Et(t)),o<1?(n=d=>{const u=d*o,p=u*t,h=u-r,f=ul(d,o),x=Math.exp(-p);return mo-h/f*x},a=d=>{const p=d*o*t,h=p*r+r,f=Math.pow(o,2)*Math.pow(d,2)*t,x=Math.exp(-p),m=ul(Math.pow(d,2),o);return(-n(d)+mo>0?-1:1)*((h-f)*x)/m}):(n=d=>{const u=Math.exp(-d*t),p=(d-r)*t+1;return-mo+u*p},a=d=>{const u=Math.exp(-d*t),p=(r-d)*(t*t);return u*p});const l=5/t,c=wE(n,a,l);if(t=kt(t),isNaN(c))return{stiffness:xe.stiffness,damping:xe.damping,duration:t};{const d=Math.pow(c,2)*s;return{stiffness:d,damping:o*2*Math.sqrt(s*d),duration:t}}}const bE=12;function wE(t,e,r){let s=r;for(let n=1;n<bE;n++)s=s-t(s)/e(s);return s}function ul(t,e){return t*Math.sqrt(1-e*e)}const _E=["duration","bounce"],jE=["stiffness","damping","mass"];function Ku(t,e){return e.some(r=>t[r]!==void 0)}function kE(t){let e={velocity:xe.velocity,stiffness:xe.stiffness,damping:xe.damping,mass:xe.mass,isResolvedFromDuration:!1,...t};if(!Ku(t,jE)&&Ku(t,_E))if(t.visualDuration){const r=t.visualDuration,s=2*Math.PI/(r*1.2),n=s*s,a=2*Lt(.05,1,1-(t.bounce||0))*Math.sqrt(n);e={...e,mass:xe.mass,stiffness:n,damping:a}}else{const r=vE(t);e={...e,...r,mass:xe.mass},e.isResolvedFromDuration=!0}return e}function Ji(t=xe.visualDuration,e=xe.bounce){const r=typeof t!="object"?{visualDuration:t,keyframes:[0,1],bounce:e}:t;let{restSpeed:s,restDelta:n}=r;const a=r.keyframes[0],o=r.keyframes[r.keyframes.length-1],l={done:!1,value:a},{stiffness:c,damping:d,mass:u,duration:p,velocity:h,isResolvedFromDuration:f}=kE({...r,velocity:-Et(r.velocity||0)}),x=h||0,m=d/(2*Math.sqrt(c*u)),y=o-a,b=Et(Math.sqrt(c/u)),w=Math.abs(y)<5;s||(s=w?xe.restSpeed.granular:xe.restSpeed.default),n||(n=w?xe.restDelta.granular:xe.restDelta.default);let _;if(m<1){const k=ul(b,m);_=E=>{const T=Math.exp(-m*b*E);return o-T*((x+m*b*y)/k*Math.sin(k*E)+y*Math.cos(k*E))}}else if(m===1)_=k=>o-Math.exp(-b*k)*(y+(x+b*y)*k);else{const k=b*Math.sqrt(m*m-1);_=E=>{const T=Math.exp(-m*b*E),A=Math.min(k*E,300);return o-T*((x+m*b*y)*Math.sinh(A)+k*y*Math.cosh(A))/k}}const j={calculatedDuration:f&&p||null,next:k=>{const E=_(k);if(f)l.done=k>=p;else{let T=k===0?x:0;m<1&&(T=k===0?kt(x):e0(_,k,E));const A=Math.abs(T)<=s,R=Math.abs(o-E)<=n;l.done=A&&R}return l.value=l.done?o:E,l},toString:()=>{const k=Math.min(Mc(j),Yi),E=Zg(T=>j.next(k*T).value,k,30);return k+"ms "+E},toTransition:()=>{}};return j}Ji.applyToOptions=t=>{const e=yE(t,100,Ji);return t.ease=e.ease,t.duration=kt(e.duration),t.type="keyframes",t};function hl({keyframes:t,velocity:e=0,power:r=.8,timeConstant:s=325,bounceDamping:n=10,bounceStiffness:a=500,modifyTarget:o,min:l,max:c,restDelta:d=.5,restSpeed:u}){const p=t[0],h={done:!1,value:p},f=A=>l!==void 0&&A<l||c!==void 0&&A>c,x=A=>l===void 0?c:c===void 0||Math.abs(l-A)<Math.abs(c-A)?l:c;let m=r*e;const y=p+m,b=o===void 0?y:o(y);b!==y&&(m=b-p);const w=A=>-m*Math.exp(-A/s),_=A=>b+w(A),j=A=>{const R=w(A),L=_(A);h.done=Math.abs(R)<=d,h.value=h.done?b:L};let k,E;const T=A=>{f(h.value)&&(k=A,E=Ji({keyframes:[h.value,x(h.value)],velocity:e0(_,A,h.value),damping:n,stiffness:a,restDelta:d,restSpeed:u}))};return T(0),{calculatedDuration:null,next:A=>{let R=!1;return!E&&k===void 0&&(R=!0,j(A),T(A)),k!==void 0&&A>=k?E.next(A-k):(!R&&j(A),h)}}}function EE(t,e,r){const s=[],n=r||Mt.mix||Qg,a=t.length-1;for(let o=0;o<a;o++){let l=n(t[o],t[o+1]);if(e){const c=Array.isArray(e)?e[o]||Ye:e;l=Hn(c,l)}s.push(l)}return s}function TE(t,e,{clamp:r=!0,ease:s,mixer:n}={}){const a=t.length;if(Gi(a===e.length),a===1)return()=>e[0];if(a===2&&e[0]===e[1])return()=>e[1];const o=t[0]===t[1];t[0]>t[a-1]&&(t=[...t].reverse(),e=[...e].reverse());const l=EE(e,s,n),c=l.length,d=u=>{if(o&&u<t[0])return e[0];let p=0;if(c>1)for(;p<t.length-2&&!(u<t[p+1]);p++);const h=jn(t[p],t[p+1],u);return l[p](h)};return r?u=>d(Lt(t[0],t[a-1],u)):d}function AE(t,e){const r=t[t.length-1];for(let s=1;s<=e;s++){const n=jn(0,e,s);t.push(fe(r,1,n))}}function NE(t){const e=[0];return AE(e,t.length-1),e}function CE(t,e){return t.map(r=>r*e)}function SE(t,e){return t.map(()=>e||Bg).splice(0,t.length-1)}function pn({duration:t=300,keyframes:e,times:r,ease:s="easeInOut"}){const n=Bk(s)?s.map(Bu):Bu(s),a={done:!1,value:e[0]},o=CE(r&&r.length===e.length?r:NE(e),t),l=TE(o,e,{ease:Array.isArray(n)?n:SE(e,n)});return{calculatedDuration:t,next:c=>(a.value=l(c),a.done=c>=t,a)}}const PE=t=>t!==null;function Vc(t,{repeat:e,repeatType:r="loop"},s,n=1){const a=t.filter(PE),l=n<0||e&&r!=="loop"&&e%2===1?0:a.length-1;return!l||s===void 0?a[l]:s}const RE={decay:hl,inertia:hl,tween:pn,keyframes:pn,spring:Ji};function t0(t){typeof t.type=="string"&&(t.type=RE[t.type])}class $c{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,r){return this.finished.then(e,r)}}const OE=t=>t/100;class Fc extends $c{constructor(e){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{var s,n;const{motionValue:r}=this.options;r&&r.updatedAt!==Le.now()&&this.tick(Le.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(n=(s=this.options).onStop)==null||n.call(s))},this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){const{options:e}=this;t0(e);const{type:r=pn,repeat:s=0,repeatDelay:n=0,repeatType:a,velocity:o=0}=e;let{keyframes:l}=e;const c=r||pn;c!==pn&&typeof l[0]!="number"&&(this.mixKeyframes=Hn(OE,Qg(l[0],l[1])),l=[0,100]);const d=c({...e,keyframes:l});a==="mirror"&&(this.mirroredGenerator=c({...e,keyframes:[...l].reverse(),velocity:-o})),d.calculatedDuration===null&&(d.calculatedDuration=Mc(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+n,this.totalDuration=this.resolvedDuration*(s+1)-n,this.generator=d}updateTime(e){const r=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=r}tick(e,r=!1){const{generator:s,totalDuration:n,mixKeyframes:a,mirroredGenerator:o,resolvedDuration:l,calculatedDuration:c}=this;if(this.startTime===null)return s.next(0);const{delay:d=0,keyframes:u,repeat:p,repeatType:h,repeatDelay:f,type:x,onUp
701date:m,finalKeyframe:y}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-n/this.speed,this.startTime)),r?this.currentTime=e:this.updateTime(e);const b=this.currentTime-d*(this.playbackSpeed>=0?1:-1),w=this.playbackSpeed>=0?b<0:b>n;this.currentTime=Math.max(b,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=n);let _=this.currentTime,j=s;if(p){const A=Math.min(this.currentTime,n)/l;let R=Math.floor(A),L=A%1;!L&&A>=1&&(L=1),L===1&&R--,R=Math.min(R,p+1),!!(R%2)&&(h==="reverse"?(L=1-L,f&&(L-=f/l)):h==="mirror"&&(j=o)),_=Lt(0,1,L)*l}const k=w?{done:!1,value:u[0]}:j.next(_);a&&(k.value=a(k.value));let{done:E}=k;!w&&c!==null&&(E=this.playbackSpeed>=0?this.currentTime>=n:this.currentTime<=0);const T=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&E);return T&&x!==hl&&(k.value=Vc(u,this.options,y,this.speed)),m&&m(k.value),T&&this.finish(),k}then(e,r){return this.finished.then(e,r)}get duration(){return Et(this.calculatedDuration)}get time(){return Et(this.currentTime)}set time(e){var r;e=kt(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),(r=this.driver)==null||r.start(!1)}get speed(){return this.playbackSpeed}set speed(e){this.updateTime(Le.now());const r=this.playbackSpeed!==e;this.playbackSpeed=e,r&&(this.time=Et(this.currentTime))}play(){var n,a;if(this.isStopped)return;const{driver:e=gE,startTime:r}=this.options;this.driver||(this.driver=e(o=>this.tick(o))),(a=(n=this.options).onPlay)==null||a.call(n);const s=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=s):this.holdTime!==null?this.startTime=s-this.holdTime:this.startTime||(this.startTime=r??s),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(Le.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var e,r;this.notifyFinished(),this.teardown(),this.state="finished",(r=(e=this.options).onComplete)==null||r.call(e)}cancel(){var e,r;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(r=(e=this.options).onCancel)==null||r.call(e)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}attachTimeline(e){var r;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(r=this.driver)==null||r.stop(),e.observe(this)}}function IE(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const Cr=t=>t*180/Math.PI,pl=t=>{const e=Cr(Math.atan2(t[1],t[0]));return fl(e)},DE={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:pl,rotateZ:pl,skewX:t=>Cr(Math.atan(t[1])),skewY:t=>Cr(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},fl=t=>(t=t%360,t<0&&(t+=360),t),Yu=pl,Ju=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),Xu=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),LE={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Ju,scaleY:Xu,scale:t=>(Ju(t)+Xu(t))/2,rotateX:t=>fl(Cr(Math.atan2(t[6],t[5]))),rotateY:t=>fl(Cr(Math.atan2(-t[2],t[0]))),rotateZ:Yu,rotate:Yu,skewX:t=>Cr(Math.atan(t[4])),skewY:t=>Cr(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function ml(t){return t.includes("scale")?1:0}function gl(t,e){if(!t||t==="none")return ml(e);const r=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,n;if(r)s=LE,n=r;else{const l=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=DE,n=l}if(!n)return ml(e);const a=s[e],o=n[1].split(",").map(VE);return typeof a=="function"?a(o):o[a]}const ME=(t,e)=>{const{transform:r="none"}=getComputedStyle(t);return gl(r,e)};function VE(t){return parseFloat(t.trim())}const qs=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Gs=new Set(qs),Qu=t=>t===Ws||t===G,$E=new Set(["x","y","z"]),FE=qs.filter(t=>!$E.has(t));function UE(t){const e=[];return FE.forEach(r=>{const s=t.getValue(r);s!==void 0&&(e.push([r,s.get()]),s.set(r.startsWith("scale")?1:0))}),e}const Lr={width:({x:t},{paddingLeft:e="0",paddingRight:r="0"})=>t.max-t.min-parseFloat(e)-parseFloat(r),height:({y:t},{paddingTop:e="0",paddingBottom:r="0"})=>t.max-t.min-parseFloat(e)-parseFloat(r),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>gl(e,"x"),y:(t,{transform:e})=>gl(e,"y")};Lr.translateX=Lr.x;Lr.translateY=Lr.y;const Mr=new Set;let yl=!1,xl=!1,vl=!1;function r0(){if(xl){const t=Array.from(Mr).filter(s=>s.needsMeasurement),e=new Set(t.map(s=>s.element)),r=new Map;e.forEach(s=>{const n=UE(s);n.length&&(r.set(s,n),s.render())}),t.forEach(s=>s.measureInitialState()),e.forEach(s=>{s.render();const n=r.get(s);
701n&&n.forEach(([a,o])=>{var l;(l=s.getValue(a))==null||l.set(o)})}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}xl=!1,yl=!1,Mr.forEach(t=>t.complete(vl)),Mr.clear()}function s0(){Mr.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(xl=!0)})}function BE(){vl=!0,s0(),r0(),vl=!1}class Uc{constructor(e,r,s,n,a,o=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=r,this.name=s,this.motionValue=n,this.element=a,this.isAsync=o}scheduleResolve(){this.state="scheduled",this.isAsync?(Mr.add(this),yl||(yl=!0,de.read(s0),de.resolveKeyframes(r0))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:r,element:s,motionValue:n}=this;if(e[0]===null){const a=n==null?void 0:n.get(),o=e[e.length-1];if(a!==void 0)e[0]=a;else if(s&&r){const l=s.readValue(r,o);l!=null&&(e[0]=l)}e[0]===void 0&&(e[0]=o),n&&a===void 0&&n.set(e[0])}IE(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),Mr.delete(this)}cancel(){this.state==="scheduled"&&(Mr.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const zE=t=>t.startsWith("--");function HE(t,e,r){zE(e)?t.style.setProperty(e,r):t.style[e]=r}const WE=Nc(()=>window.ScrollTimeline!==void 0),qE={};function GE(t,e){const r=Nc(t);return()=>qE[e]??r()}const n0=GE(()=>{try{document.createElement("div").animate({opacity:0}
701,{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),an=([t,e,r,s])=>`cubic-bezier(${t}, ${e}, ${r}, ${s})`,Zu={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:an([0,.65,.55,1]),circOut:an([.55,0,1,.45]),backIn:an([.31,.01,.66,-.59]),backOut:an([.33,1.53,.69,.99])};function i0(t,e){if(t)return typeof t=="function"?n0()?Zg(t,e):"ease-out":zg(t)?an(t):Array.isArray(t)?t.map(r=>i0(r,e)||Zu.easeOut):Zu[t]}function KE(t,e,r,{delay:s=0,duration:n=300,repeat:a=0,repeatType:o="loop",ease:l="easeOut",times:c}={},d=void 0){const u={[e]:r};c&&(u.offset=c);const p=i0(l,n);Array.isArray(p)&&(u.easing=p);const h={delay:s,duration:n,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:a+1,direction:o==="reverse"?"alternate":"normal"};return d&&(h.pseudoElement=d),t.animate(u,h)}function a0(t){return typeof t=="function"&&"applyToOptions"in t}function YE({type:t,...e}){return a0(t)&&n0()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class JE extends $c{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,!e)return;const{element:r,name:s,keyframes:n,pseudoElement:a,allowFlatten:o=!1,finalKeyframe:l,onComplete:c}=e;this.isPseudoElement=!!a,this.allowFlatten=o,this.options=e,Gi(typeof e.type!="string");const d=YE(e);this.animation=KE(r,s,n,d,a),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!a){const u=Vc(n,this.options,l,this.speed);this.updateMotionValue?this.updateMotionValue(u):HE(r,s,u),this.animation.cancel()}c==null||c(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var e,r;(r=(e=this.animation).finish)==null||r.call(e)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var e,r;this.isPseudoElement||(r=(e=this.animation).commitStyles)==null||r.call(e)}get duration(){var r,s;const e=((s=(r=this.animation.effect)==null?void 0:r.getComputedTiming)==null?void 0:s.call(r).duration)||0;return Et(Number(e))}get time(){return Et(Number(this.animation.currentTime)||0)}set time(e){this.finishedTime=null,this.animation.currentTime=kt(e)}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(e){this.animation.startTime=e}attachTimeline({timeline:e,observe:r}){var s;return this.allowFlatten&&((s=this.animation.effect)==null||s.updateTiming({easing:"linear"})),this.animation.onfinish=null,e&&WE()?(this.animation.timeline=e,Ye):r(this)}}const o0={anticipate:$g,backInOut:Vg,circInOut:Ug};function XE(t){return t in o0}function QE(t){typeof t.ease=="string"&&XE(t.ease)&&(t.ease=o0[t.ease])}const eh=10;class ZE extends JE{constructor(e){QE(e),t0(e),super(e),e.startTime&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){const{motionValue:r,onUpdate:s,onComplete:n,element:a,...o}=this.options;if(!r)return;if(e!==void 0){r.set(e);return}const l=new Fc({...o,autoplay:!1}),c=kt(this.finishedTime??this.time);r.setWithVelocity(l.sample(c-eh).value,l.sample(c).value,eh),l.stop()}}const th=(t,e)=>e==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(cr.test(t)||t==="0")&&!t.startsWith("url("));function eT(t){const e=t[0];if(t.length===1)return!0;for(let r=0;r<t.length;r++)if(t[r]!==e)return!0}function tT(t,e,r,s){const n=t[0];if(n===null)return!1;if(e==="display"||e==="visibility")return!0;const a=t[t.length-1],o=th(n,e),l=th(a,e);return!o||!l?!1:eT(t)||(r==="spring"||a0(r))&&s}function bl(t){t.duration=0,t.type}const rT=new Set(["opacity","clipPath","filter","transform"]),sT=Nc(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function nT(t){var u;const{motionValue:e,name:r,repeatDelay:s,repeatType:n,damping:a,type:o}=t;if(!(((u=e==null?void 0:e.owner)==null?void 0:u.current)instanceof HTMLElement))return!1;const{onUpdate:c,transformTemplate:d}=e.owner.getProps();return sT()&&r&&rT.has(r)&&(r!=="transform"||!d)&&!c&&!s&&n!=="mirror"&&a!==0&&o!=="inertia"}const iT=40;class aT extends $c{constructor({autoplay:e=!0,delay:r=0,type:s="
701keyframes",repeat:n=0,repeatDelay:a=0,repeatType:o="loop",keyframes:l,name:c,motionValue:d,element:u,...p}){var x;super(),this.stop=()=>{var m,y;this._animation&&(this._animation.stop(),(m=this.stopTimeline)==null||m.call(this)),(y=this.keyframeResolver)==null||y.cancel()},this.createdAt=Le.now();const h={autoplay:e,delay:r,type:s,repeat:n,repeatDelay:a,repeatType:o,name:c,motionValue:d,element:u,...p},f=(u==null?void 0:u.KeyframeResolver)||Uc;this.keyframeResolver=new f(l,(m,y,b)=>this.onKeyframesResolved(m,y,h,!b),c,d,u),(x=this.keyframeResolver)==null||x.scheduleResolve()}onKeyframesResolved(e,r,s,n){this.keyframeResolver=void 0;const{name:a,type:o,velocity:l,delay:c,isHandoff:d,onUpdate:u}=s;this.resolvedAt=Le.now(),tT(e,a,o,l)||((Mt.instantAnimations||!c)&&(u==null||u(Vc(e,s,r))),e[0]=e[e.length-1],bl(s),s.repeat=0);const h={startTime:n?this.resolvedAt?this.resolvedAt-this.createdAt>iT?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:r,...s,keyframes:e},f=!d&&nT(h)?new ZE({...h,element:h.motionValue.owner.current}):new Fc(h);f.finished.then(()=>this.notifyFinished()).catch(Ye),this.pendingTimeline&&(this.stopTimeline=f.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=f}get finished(){return this._animation?this.animation.finished:this._finished}then(e,r){return this.finished.finally(e).then(()=>{})}get animation(){var e;return this._animation||((e=this.keyframeResolver)==null||e.resume(),BE()),this._animation}get duration(){return this.animation.duration}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(){var e;this._animation&&this.animation.cancel(),(e=this.keyframeResolver)==null||e.cancel()}}const oT=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function lT(t){const e=oT.exec(t);if(!e)return[,];const[,r,s,n]=e;return[`--${r??s}`,n]}function l0(t,e,r=1){const[s,n]=lT(t);if(!s)return;const a=window.getComputedStyle(e).getPropertyValue(s);if(a){const o=a.trim();return Sg(o)?parseFloat(o):o}return Oc(n)?l0(n,e,r+1):n}function Bc(t,e){return(t==null?void 0:t[e])??(t==null?void 0:t.default)??t}const c0=new Set(["width","height","top","left","right","bottom",...qs]),cT={test:t=>t==="auto",parse:t=>t},d0=t=>e=>e.test(t),u0=[Ws,G,Tt,Yt,eE,Zk,cT],rh=t=>u0.find(d0(t));function dT(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||Rg(t):!0}const uT=new Set(["brightness","contrast","saturate","opacity"]);function hT(t){const[e,r]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[s]=r.match(Ic)||[];if(!s)return t;const n=r.replace(s,"");let a=uT.has(e)?1:0;return s!==r&&(a*=100),e+"("+a+n+")"}const pT=/\b([a-z-]*)\(.*?\)/gu,wl={...cr,getAnimatableNone:t=>{const e=t.match(pT);return e?e.map(hT).join(" "):t}},sh={...Ws,transform:Math.round},fT={rotate:Yt,rotateX:Yt,rotateY:Yt,rotateZ:Yt,scale:hi,scaleX:hi,scaleY:hi,scaleZ:hi,skew:Yt,skewX:Yt,skewY:Yt,distance:G,translateX:G,translateY:G,translateZ:G,x:G,y:G,z:G,perspective:G,transformPerspective:G,opacity:kn,originX:Hu,originY:Hu,originZ:G},zc={borderWidth:G,borderTopWidth:G,borderRightWidth:G,borderBottomWidth:G,borderLeftWidth:G,borderRadius:G,radius:G,borderTopLeftRadius:G,borderTopRightRadius:G,borderBottomRightRadius:G,borderBottomLeftRadius:G,width:G,maxWidth:G,height:G,maxHeight:G,top:G,right:G,bottom:G,left:G,padding:G,paddingTop:G,paddingRight:G,paddingBottom:G,paddingLeft:G,margin:G,marginTop:G,marginRight:G,marginBottom:G,marginLeft:G,backgroundPositionX:G,backgroundPositionY:G,...fT,zIndex:sh,fillOpacity:kn,strokeOpacity:kn,numOctaves:sh},mT={...zc,color:_e,backgroundColor:_e,outlineColor:_e,fill:_e,stroke:_e,borderColor:_e,borderTopColor:_e,borderRightColor:_e,borderBottomColor:_e,borderLeftColor:_e,filter:wl,WebkitFilter:wl},h0=t=>mT[t];function p0(t,e){let r=h0(t);return r!==wl&&(r=cr),r.getAnimatableNone?r.getAnimatableNone(e):void 0}
vendor: 1,652 bytes, line 701
701const gT=new Set(["auto","none","0"]);function yT(t,e,r){let s=0,n;for(;s<t.length&&!n;){const a=t[s];typeof a=="string"&&!gT.has(a)&&En(a).values.length&&(n=t[s]),s++}if(n&&r)for(const a of e)t[a]=p0(r,n)}class xT extends Uc{constructor(e,r,s,n,a){super(e,r,s,n,a,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:r,name:s}=this;if(!r||!r.current)return;super.readKeyframes();for(let c=0;c<e.length;c++){let d=e[c];if(typeof d=="string"&&(d=d.trim(),Oc(d))){const u=l0(d,r.current);u!==void 0&&(e[c]=u),c===e.length-1&&(this.finalKeyframe=d)}}if(this.resolveNoneKeyframes(),!c0.has(s)||e.length!==2)return;const[n,a]=e,o=rh(n),l=rh(a);if(o!==l)if(Qu(o)&&Qu(l))for(let c=0;c<e.length;c++){const d=e[c];typeof d=="string"&&(e[c]=parseFloat(d))}else Lr[s]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:e,name:r}=this,s=[];for(let n=0;n<e.length;n++)(e[n]===null||dT(e[n]))&&s.push(n);s.length&&yT(e,s,r)}measureInitialState(){const{element:e,unresolvedKeyframes:r,name:s}=this;if(!e||!e.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Lr[s](e.measureViewportBox(),window.getComputedStyle(e.current)),r[0]=this.measuredOrigin;const n=r[r.length-1];n!==void 0&&e.getValue(s,n).jump(n,!1)}measureEndState(){var l;const{element:e,name:r,unresolvedKeyframes:s}=this;if(!e||!e.current)return;const n=e.getValue(r);n&&n.jump(this.measuredOrigin,!1);const a=s.length-1,o=s[a];s[a]=Lr[r](e.measureViewportBox(),window.getComputedStyle(e.current)),o!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=o),(l=this.removedTransforms)!=null&&l.length&&this.removedTransforms.forEac
701h(([c,d])=>{e.getValue(c).set(d)}),this.resolveNoneKeyframes()}}function vT(t,e,r){if(t instanceof EventTarget)return[t];if(typeof t=="string"){const n=document.querySelectorAll(t);return n?Array.from(n):[]}return Array.from(t)}const f0=(t,e)=>e&&typeof t=="number"?e.transform(t):t;function m0(t){return Pg(t)&&"offsetHeight"in t}const nh=30,bT=t=>!isNaN(parseFloat(t));class wT{constructor(e,r={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=s=>{var a;const n=Le.now();if(this.updatedAt!==n&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&((a=this.events.change)==null||a.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=r.owner}setCurrent(e){this.current=e,this.updatedAt=Le.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=bT(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,r){this.events[e]||(this.events[e]=new Cc);const s=this.events[e].add(r);return e==="change"?()=>{s(),de.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,r){this.passiveEffect=e,this.stopPassiveEffect=r}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,r,s){this.set(r),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-s}jump(e,r=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,r&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var e;(e=this.events.change)==null||e.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=Le.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>nh)return 0;const r=Math.min(this.updatedAt-this.prevUpdatedAt,nh);return Og(parseFloat(this.current)-parseFloat(this.prevFrameValue),r)}start(e){return this.stop(),new Promise(r=>{this.hasAnimated=!0,this.animation=e(r),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(){var e,r;(e=this.dependents)==null||e.clear(),(r=this.events.destroy)==null||r.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Is(t,e){return new wT(t,e)}const{schedule:Hc,cancel:x4}=Hg(queueMicrotask,!1),tt={x:!1,y:!1};function g0(){return tt.x||tt.y}function _T(t){return t==="x"||t==="y"?tt[t]?null:(tt[t]=!0,()=>{tt[t]=!1}):tt.x||tt.y?null:(tt.x=tt.y=!0,()=>{tt.x=tt.y=!1})}function y0(t,e){const r=vT(t),s=new AbortController,n={passive:!0,...e,signal:s.signal};return[r,n,()=>s.abort()]}function ih(t){return!(t.pointerType==="touch"||g0())}function jT(t,e,r={}){const[s,n,a]=y0(t,r),o=l=>{if(!ih(l))return;const{target:c}=l,d=e(c,l);if(typeof d!="function"||!c)return;const u=p=>{ih(p)&&(d(p),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,n)};return s.forEach(l=>{l.addEventListener("pointerenter",o,n)}),a}const x0=(t,e)=>e?t===e?!0:x0(t,e.parentElement):!1,Wc=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1,kT=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function ET(t){return kT.has(t.tagName)||t.tabIndex!==-1}const Si=new WeakSet;function ah(t){return e=>{e.key==="Enter"&&t(e)}}function go(t,e){t.dispatchEvent(new PointerEvent("pointer"+e,{isPrimary:!0,bubbles:!0}))}const TT=(t,e)=>{const r=t.currentTarget;if(!r)return;const s=ah(()=>{if(Si.has(r))return;go(r,"down");const n=ah(()=>{go(r,"up")}),a=()=>go(r,"cancel");r.addEventListener("keyup",n,e),r.addEventListener("blur",a,e)});r.addEventListener("keydown",s,e),r.addEventListener("blur",()=>r.removeEventListener("keydown",s),e)};function oh(t){return Wc(t)&&!g0()}function AT(t,e,r={}){const[s,n,a]=y0(t,r),o=l=>{const c=l.currentTarget;if(!oh(l))return;Si.add(c);const d=e(c,l),u=(f,x)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",h),Si.has(c)&&Si.delete(c),oh(f)&&typeof d=="function"&&d(f,{success:x})},p=f=>{u(f,c===window||c===document||r.useGlobalTarget||x0(c,f.target))},h=f=>{u(f,!1)};window.addEventListener("pointerup",p,n),window.addEventListener("pointercancel",h,n)};
vendor: 6,170 bytes, lines 701-709
701return s.forEach(l=>{(r.useGlobalTarget?window:l).addEventListener("pointerdown",o,n),m0(l)&&(l.addEventListener("focus",d=>TT(d,n)),!ET(l)&&!l.hasAttribute("tabindex")&&(l.tabIndex=0))}),a}function v0(t){return Pg(t)&&"ownerSVGElement"in t}function NT(t){return v0(t)&&t.tagName==="svg"}const Re=t=>!!(t&&t.getVelocity),CT=[...u0,_e,cr],ST=t=>CT.find(d0(t)),qc=g.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"});class PT extends g.Component{getSnapshotBeforeUpdate(e){const r=this.props.childRef.current;if(r&&e.isPresent&&!this.props.isPresent){const s=r.offsetParent,n=m0(s)&&s.offsetWidth||0,a=this.props.sizeRef.current;a.height=r.offsetHeight||0,a.width=r.offsetWidth||0,a.top=r.offsetTop,a.left=r.offsetLeft,a.right=n-a.width-a.left}return null}componentDidUpdate(){}render(){return this.props.children}}function RT({children:t,isPresent:e,anchorX:r,root:s}){const n=g.useId(),a=g.useRef(null),o=g.useRef({width:0,height:0,top:0,left:0,right:0}),{nonce:l}=g.useContext(qc);return g.useInsertionEffect(()=>{const{width:c,height:d,top:u,left:p,right:h}=o.current;if(e||!a.current||!c||!d)return;const f=r==="left"?`left: ${p}`:`right: ${h}`;a.current.dataset.motionPopId=n;const x=document.createElement("style");l&&(x.nonce=l);const m=s??document.head;return m.appendChild(x),x.sheet&&x.sheet.insertRule(`
702          [data-motion-pop-id="${n}"] {
703            position: absolute !important;
704            width: ${c}px !important;
705            height: ${d}px !important;
706            ${f}px !important;
707            top: ${u}px !important;
708          }
709        `),()=>{m.contains(x)&&m.removeChild(x)}},[e]),i.jsx(PT,{isPresent:e,childRef:a,sizeRef:o,children:g.cloneElement(t,{ref:a})})}const OT=({children:t,initial:e,isPresent:r,onExitComplete:s,custom:n,presenceAffectsLayout:a,mode:o,anchorX:l,root:c})=>{const d=kc(IT),u=g.useId();let p=!0,h=g.useMemo(()=>(p=!1,{id:u,initial:e,isPresent:r,custom:n,onExitComplete:f=>{d.set(f,!0);for(const x of d.values())if(!x)return;s&&s()},register:f=>(d.set(f,!1),()=>d.delete(f))}),[r,d,s]);return a&&p&&(h={...h}),g.useMemo(()=>{d.forEach((f,x)=>d.set(x,!1))},[r]),g.useEffect(()=>{!r&&!d.size&&s&&s()},[r]),o==="popLayout"&&(t=i.jsx(RT,{isPresent:r,anchorX:l,root:c,children:t})),i.jsx(_a.Provider,{value:h,children:t})};function IT(){return new Map}function b0(t=!0){const e=g.useContext(_a);if(e===null)return[!0,null];const{isPresent:r,onExitComplete:s,register:n}=e,a=g.useId();g.useEffect(()=>{if(t)return n(a)},[t]);const o=g.useCallback(()=>t&&s&&s(a),[a,s,t]);return!r&&s?[!1,o]:[!0]}const pi=t=>t.key||"";function lh(t){const e=[];return g.Children.forEach(t,r=>{g.isValidElement(r)&&e.push(r)}),e}const w0=({children:t,custom:e,initial:r=!0,onExitComplete:s,presenceAffectsLayout:n=!0,mode:a="sync",propagate:o=!1,anchorX:l="left",root:c})=>{const[d,u]=b0(o),p=g.useMemo(()=>lh(t),[t]),h=o&&!d?[]:p.map(pi),f=g.useRef(!0),x=g.useRef(p),m=kc(()=>new Map),[y,b]=g.useState(p),[w,_]=g.useState(p);Cg(()=>{f.current=!1,x.current=p;for(let E=0;E<w.length;E++){const T=pi(w[E]);h.includes(T)?m.delete(T):m.get(T)!==!0&&m.set(T,!1)}},[w,h.length,h.join("-")]);const j=[];if(p!==y){let E=[...p];for(let T=0;T<w.length;T++){const A=w[T],R=pi(A);h.includes(R)||(E.splice(T,0,A),j.push(A))}return a==="wait"&&j.length&&(E=j),_(lh(E)),b(p),null}const{forceRender:k}=g.useContext(jc);return i.jsx(i.Fragment,{children:w.map(E=>{const T=pi(E),A=o&&!d?!1:p===w||h.includes(T),R=()=>{if(m.has(T))m.set(T,!0);else return;let L=!0;m.forEach(V=>{V||(L=!1)}),L&&(k==null||k(),_(x.current),o&&(u==null||u()),s&&s())};return i.jsx(OT,{isPresent:A,initial:!f.current||r?void 0:!1,custom:e,presenceAffectsLayout:n,mode:a,root:c,onExitComplete:A?void 0:R,anchorX:l,children:E},T)})})},_0=g.createContext({strict:!1}),ch={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"]},Ds={};for(const t in ch)Ds[t]={isEnabled:e=>ch[t].some(r=>!!e[r])};function DT(t){for(const e in t)Ds[e]={...Ds[e],...t[e]}}const LT=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","ignoreStrict","viewport"]);function Xi(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||LT.has(t)}let j0=t=>!Xi(t);function MT(t){typeof t=="function"&&(j0=e=>e.startsWith("on")?!Xi(e):t(e))}try{MT(require("@emotion/is-prop-valid").default)}catch{}function VT(t,e,r){const s={};for(const n in t)n==="values"&&typeof t.values=="object"||(j0(n)||r===!0&&Xi(n)||!e&&!Xi(n)||t.draggable&&n.startsWith("onDrag"))&&(s[n]=t[n]);return s}const ja=g.createContext({});function ka(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function Tn(t){return typeof t=="string"||Array.isArray(t)}const Gc=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Kc=["initial",...Gc];function Ea(t){return ka(t.animate)||Kc.some(e=>Tn(t[e]))}function k0(t){return!!(Ea(t)||t.variants)}function $T(t,e){if(Ea(t)){const{initial:r,animate:s}=t;return{initial:r===!1||Tn(r)?r:void 0,animate:Tn(s)?s:void 0}}return t.inherit!==!1?e:{}}function FT(t){const{initial:e,animate:r}=$T(t,g.useContext(ja));return g.useMemo(()=>({initial:e,animate:r}),[dh(e),dh(r)])}function dh(t){return Array.isArray(t)?t.join(" "):t}const An={};function UT(t){for(const e in t)An[e]=t[e],Rc(e)&&(An[e].isCSSVariable=!0)}function E0(t,{layout:e,layoutId:r}){return Gs.has(t)||t.startsWith("origin")||(e||r!==void 0)&&(!!A
709n[t]||t==="opacity")}const BT={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},zT=qs.length;function HT(t,e,r){let s="",n=!0;for(let a=0;a<zT;a++){const o=qs[a],l=t[o];if(l===void 0)continue;let c=!0;if(typeof l=="number"?c=l===(o.startsWith("scale")?1:0):c=parseFloat(l)===0,!c||r){const d=f0(l,zc[o]);if(!c){n=!1;const u=BT[o]||o;s+=`${u}(${d}) `}r&&(e[o]=d)}}return s=s.trim(),r?s=r(e,n?"":s):n&&(s="none"),s}function Yc(t,e,r){const{style:s,vars:n,transformOrigin:a}=t;let o=!1,l=!1;for(const c in e){const d=e[c];if(Gs.has(c)){o=!0;continue}else if(Rc(c)){n[c]=d;continue}else{const u=f0(d,zc[c]);c.startsWith("origin")?(l=!0,a[c]=u):s[c]=u}}if(e.transform||(o||r?s.transform=HT(e,t.transform,r):s.transform&&(s.transform="none")),l){const{originX:c="50%",originY:d="50%",originZ:u=0}=a;s.transformOrigin=`${c} ${d} ${u}`}}const Jc=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function T0(t,e,r){for(const s in e)!Re(e[s])&&!E0(s,r)&&(t[s]=e[s])}function WT({transformTemplate:t},e){return g.useMemo(()=>{const r=Jc();return Yc(r,e,t),Object.assign({},r.vars,r.style)},[e])}function qT(t,e){const r=t.style||{},s={};return T0(s,r,t),Object.assign(s,WT(t,e)),s}function GT(t,e){const r={},s=qT(t,e);return t.drag&&t.dragListener!==!1&&(r.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(r.tabIndex=0),r.style=s,r}const KT={offset:"stroke-dashoffset",array:"stroke-dasharray"},YT={offset:"strokeDashoffset",array:"strokeDasharray"};function JT(t,e,r=1,s=0,n=!0){t.pathLength=1;const a=n?KT:YT;t[a.offset]=G.transform(-s);const o=G.transform(e),l=G.transform(r);t[a.array]=`${o} ${l}`}function A0(t,{attrX:e,attrY:r,attrScale:s,pathLength:n,pathSpacing:a=1,pathOffset:o=0,...l},c,d,u){if(Yc(t,l,d),c){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:p,style:h}=t;p.transform&&(h.transform=p.transform,delete p.transform),(h.transform||p.transformOrigin)&&(h.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),h.transform&&(h.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete p.transformBox),e!==void 0&&(p.x=e),r!==void 0&&(p.y=r),s!==void 0&&(p.scale=s),n!==void 0&&JT(p,n,a,o,!1)}const N0=()=>({...Jc(),attrs:{}}),C0=t=>typeof t=="string"&&t.toLowerCase()==="svg";function XT(t,e,r,s){const n=g.useMemo(()=>{const a=N0();return A0(a,e,C0(s),t.transformTemplate,t.style),{...a.attrs,style:{...a.style}}},[e]);if(t.style){const a={};T0(a,t.style,t),n.style={...a,...n.style}}return n}const QT=["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 Xc(t){return typeof t!="string"||t.includes("-")?!1:!!(QT.indexOf(t)>-1||/[A-Z]/u.test(t))}function ZT(t,e,r,{latestValues:s},n,a=!1){const l=(Xc(t)?XT:GT)(e,s,n,t),c=VT(e,typeof t=="string",a),d=t!==g.Fragment?{...c,...l,ref:r}:{},{children:u}=e,p=g.useMemo(()=>Re(u)?u.get():u,[u]);return g.createElement(t,{...d,children:p})}function uh(t){const e=[{},{}];return t==null||t.values.forEach((r,s)=>{e[0][s]=r.get(),e[1][s]=r.getVelocity()}),e}function Qc(t,e,r,s){if(typeof e=="function"){const[n,a]=uh(s);e=e(r!==void 0?r:t.custom,n,a)}if(typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"){const[n,a]=uh(s);e=e(r!==void 0?r:t.custom,n,a)}return e}function Pi(t){return Re(t)?t.get():t}function eA({scrapeMotionValuesFromProps:t,createRenderState:e},r,s,n){return{latestValues:tA(r,s,n,t),renderState:e()}}function tA(t,e,r,s){const n={},a=s(t,{});for(const h in a)n[h]=Pi(a[h]);let{initial:o,animate:l}=t;const c=Ea(t),d=k0(t);e&&d&&!c&&t.inherit!==!1&&(o===void 0&&(o=e.initial),l===void 0&&(l=e.animate));let u=r?r.initial===!1:!1;u=u||o===!1;const p=u?l:o;if(p&&typeof p!="boolean"&&!ka(p)){const h=Array.isArray(p)?p:[p];for(let f=0;f<h.length;f++){const x=Qc(t,h[f]);if(x){const{transitionEnd:m,transition:y,...b}=x;for(const w in b){let _=b[w];if(Array.isArray(_)){const j=u?_.length-1:0;_=_[j]}_!==null&&(n[w]=_)}for(const w in m)n[w]=m[w]}}}return n}const S0=t=>(e,r)=>{const s=g.useContext(ja),n=g.useContext(_a),a=()=>eA(t,e,s,n);return r?a():kc(a)};function Zc(t,e,r){var a;const{style:s}=t,n={};
vendor: 7,785 bytes, line 709
709for(const o in s)(Re(s[o])||e.style&&Re(e.style[o])||E0(o,t)||((a=r==null?void 0:r.getValue(o))==null?void 0:a.liveStyle)!==void 0)&&(n[o]=s[o]);return n}const rA=S0({scrapeMotionValuesFromProps:Zc,createRenderState:Jc});function P0(t,e,r){const s=Zc(t,e,r);for(const n in t)if(Re(t[n])||Re(e[n])){const a=qs.indexOf(n)!==-1?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n;s[a]=t[n]}return s}const sA=S0({scrapeMotionValuesFromProps:P0,createRenderState:N0}),nA=Symbol.for("motionComponentSymbol");function cs(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function iA(t,e,r){return g.useCallback(s=>{s&&t.onMount&&t.onMount(s),e&&(s?e.mount(s):e.unmount()),r&&(typeof r=="function"?r(s):cs(r)&&(r.current=s))},[e])}const ed=t=>t.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),aA="framerAppearId",R0="data-"+ed(aA),O0=g.createContext({});function oA(t,e,r,s,n){var m,y;const{visualElement:a}=g.useContext(ja),o=g.useContext(_0),l=g.useContext(_a),c=g.useContext(qc).reducedMotion,d=g.useRef(null);s=s||o.renderer,!d.current&&s&&(d.current=s(t,{visualState:e,parent:a,props:r,presenceContext:l,blockInitialAnimation:l?l.initial===!1:!1,reducedMotionConfig:c}));const u=d.current,p=g.useContext(O0);u&&!u.projection&&n&&(u.type==="html"||u.type==="svg")&&lA(d.current,r,n,p);const h=g.useRef(!1);g.useInsertionEffect(()=>{u&&h.current&&u.update(r,l)});const f=r[R0],x=g.useRef(!!f&&!((m=window.MotionHandoffIsComplete)!=null&&m.call(window,f))&&((y=window.MotionHasOptimisedAnimation)==null?void 0:y.call(window,f)));return Cg(()=>{u&&(h.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),x.current&&u.animationState&&u.animationState.animateChanges())}),g.useEffect(()=>{u&&(!x.current&&u.animationState&&u.animationState.animateChanges(),x.current&&(queueMicrotask(()=>{var b;(b=window.MotionHandoffMarkAsComplete)==null||b.call(window,f)}),x.current=!1),u.enteringChildren=void 0)}),u}function lA(t,e,r,s){const{layoutId:n,layout:a,drag:o,dragConstraints:l,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=e;t.projection=new r(t.latestValues,e["data-framer-portal-id"]?void 0:I0(t.parent)),t.projection.setOptions({layoutId:n,layout:a,alwaysMeasureLayout:!!o||l&&cs(l),visualElement:t,animationType:typeof a=="string"?a:"both",initialPromotionConfig:s,crossfade:u,layoutScroll:c,layoutRoot:d})}function I0(t){if(t)return t.options.allowProjection!==!1?t.projection:I0(t.parent)}function yo(t,{forwardMotionProps:e=!1}={},r,s){r&&DT(r);const n=Xc(t)?sA:rA;function a(l,c){let d;const u={...g.useContext(qc),...l,layoutId:cA(l)},{isStatic:p}=u,h=FT(l),f=n(l,p);if(!p&&Ec){dA();const x=uA(u);d=x.MeasureLayout,h.visualElement=oA(t,f,u,s,x.ProjectionNode)}return i.jsxs(ja.Provider,{value:h,children:[d&&h.visualElement?i.jsx(d,{visualElement:h.visualElement,...u}):null,ZT(t,l,iA(f,h.visualElement,c),f,p,e)]})}a.displayName=`motion.${typeof t=="string"?t:`create(${t.displayName??t.name??""})`}`;const o=g.forwardRef(a);return o[nA]=t,o}function cA({layoutId:t}){const e=g.useContext(jc).id;return e&&t!==void 0?e+"-"+t:t}function dA(t,e){g.useContext(_0).strict}function uA(t){const{drag:e,layout:r}=Ds;if(!e&&!r)return{};const s={...e,...r};return{MeasureLayout:e!=null&&e.isEnabled(t)||r!=null&&r.isEnabled(t)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}function hA(t,e){if(typeof Proxy>"u")return yo;const r=new Map,s=(a,o)=>yo(a,o,t,e),n=(a,o)=>s(a,o);return new Proxy(n,{get:(a,o)=>o==="create"?s:(r.has(o)||r.set(o,yo(o,void 0,t,e)),r.get(o))})}function D0({top:t,left:e,right:r,bottom:s}){return{x:{min:e,max:r},y:{min:t,max:s}}}function pA({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}function fA(t,e){if(!e)return t;const r=e({x:t.left,y:t.top}),s=e({x:t.right,y:t.bottom});return{top:r.y,left:r.x,bottom:s.y,right:s.x}}function xo(t){return t===void 0||t===1}function _l({scale:t,scaleX:e,scaleY:r}){return!xo(t)||!xo(e)||!xo(r)}function jr(t){return _l(t)||L0(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function L0(t){return hh(t.x)||hh(t.y)}function hh(t){return t&&t!=="0%"}function Qi(t,e,r){const s=t-r,n=e*s;return r+n}function ph(t,e,r,s,n){return n!==void 0&&(t=Qi(t,n,s)),Qi(t,r,s)+e}function jl(t,e=0,r=1,s,n){t.min=ph(t.min,e,r,s,n),t.max=ph(t.max,e,r,s,n)}function M0(t,{x:e,y:r}){jl(t.x,e.translate,e.scale,e.originPoint),jl(t.y,r.translate,r.scale,r.originPoint)}const fh=.999999999999,mh=1.0000000000001;function mA(t,e,r,s=!1){const n=r.length;if(!n)return;e.x=e.y=1;let a,o;for(let l=0;l<n;l++){a=r[l],o=a.projectionDelta;const{visualElement:c}=a.options;c&&c.props.style&&c.props.style.display==="contents"||(s&&a.options.layoutScroll&&a.scroll&&a!==a.root&&us(t,{x:-a.scroll.offset.x,y:-a.scroll.offset.y}),o&&(e.x*=o.x.scale,e.y*=o.y.scale,M0(t,o)),s&&jr(a.latestValues)&&us(t,a.latestValues))}e.x<mh&&e.x>fh&&(e.x=1),e.y<mh&&e.y>fh&&(e.y=1)}function ds(t,e){t.min=t.min+e,t.max=t.max+e}function gh(t,e,r,s,n=.5){const a=fe(t.min,t.max,n);jl(t,e,r,a,s)}function us(t,e){gh(t.x,e.x,e.scaleX,e.scale,e.originX),gh(t.y,e.y,e.scaleY,e.scale,e.originY)}function V0(t,e){return D0(fA(t.getBoundingClientRect(),e))}function gA(t,e,r){const s=V0(t,r),{scroll:n}=e;return n&&(ds(s.x,n.offset.x),ds(s.y,n.offset.y)),s}const yh=()=>({translate:0,scale:1,origin:0,originPoint:0}),hs=()=>({x:yh(),y:yh()}),xh=()=>({min:0,max:0}),ve=()=>({x:xh(),y:xh()}),Zi={current:null},td={current:!1};function $0(){if(td.current=!0,!!Ec)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>Zi.current=t.matches;t.addEventListener("change",e),e()}else Zi.current=!1}const yA=new WeakMap;function xA(t,e,r){for(const s in e){const n=e[s],a=r[s];if(Re(n))t.addValue(s,n);else if(Re(a))t.addValue(s,Is(n,{owner:t}));else if(a!==n)if(t.hasValue(s)){const o=t.getValue(s);o.liveStyle===!0?o.jump(n):o.hasAnimated||o.set(n)}else{const o=t.getStaticValue(s);t.addValue(s,Is(o!==void 0?o:n,{owner:t}))}}for(const s in r)e[s]===void 0&&t.removeValue(s);return e}const vh=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class vA{scrapeMotionValuesFromProps(e,r,s){return{}}constructor({parent:e,props:r,presenceContext:s,reducedMotionConfig:n,blockInitialAnimation:a,visualState:o},l={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=Uc,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},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=()=>{const h=Le.now();this.renderScheduledAt<h&&(this.renderScheduledAt=h,de.render(this.render,!1,!0))};const{latestValues:c,renderState:d}=o;this.latestValues=c,this.baseTarget={...c},this.initialValues=r.initial?{...c}:{},this.renderState=d,this.parent=e,this.props=r,this.presenceContext=s,this.depth=e?e.depth+1:0,this.reducedMotionConfig=n,this.options=l,this.blockInitialAnimation=!!a,this.isControllingVariants=Ea(r),this.isVariantNode=k0(r),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:u,...p}=this.scrapeMotionValuesFromProps(r,{},this);for(const h in p){const f=p[h];c[h]!==void 0&&Re(f)&&f.set(c[h])}}mount(e){var r;this.current=e,yA.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.forEac
709h((s,n)=>this.bindToMotionValue(n,s)),td.current||$0(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:Zi.current,(r=this.parent)==null||r.addChild(this),this.update(this.props,this.presenceContext)}unmount(){var e;this.projection&&this.projection.unmount(),lr(this.notifyUpdate),lr(this.render),this.valueSubscriptions.forEach(r=>r()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),(e=this.parent)==null||e.removeChild(this);for(const r in this.events)this.events[r].clear();for(const r in this.features){const s=this.features[r];s&&(s.unmount(),s.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,r){this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)();const s=Gs.has(e);s&&this.onBindTransform&&this.onBindTransform();const n=r.on("change",o=>{this.latestValues[e]=o,this.props.onUpdate&&de.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let a;window.MotionCheckAppearSync&&(a=window.MotionCheckAppearSync(this,e,r)),this.valueSubscriptions.set(e,()=>{n(),a&&a(),r.owner&&r.stop()})}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 Ds){const r=Ds[e];if(!r)continue;const{isEnabled:s,Feature:n}=r;if(!this.features[e]&&n&&s(this.props)&&(this.features[e]=new n(this)),this.features[e]){const a=this.features[e];a.isMounted?a.update():(a.mount(),a.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):ve()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,r){this.latestValues[e]=r}update(e,r){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=r;for(let s=0;s<vh.length;s++){const n=vh[s];this.propEventSubscriptions[n]&&(this.propEventSubscriptions[n](),delete this.propEventSubscriptions[n]);const a="on"+n,o=e[a];o&&(this.propEventSubscriptions[n]=this.on(n,o))}this.prevMotionValues=xA(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){const r=this.getClosestVariantNode();if(r)return r.variantChildren&&r.variantChildren.add(e),()=>r.variantChildren.delete(e)}addValue(e,r){const s=this.values.get(e);r!==s&&(s&&this.removeValue(e),this.bindToMotionValue(e,r),this.values.set(e,r),this.latestValues[e]=r.get())}removeValue(e){this.values.delete(e);const r=this.valueSubscriptions.get(e);r&&(r(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,r){if(this.props.values&&this.props.values[e])return this.props.values[e];let s=this.values.get(e);return s===void 0&&r!==void 0&&(s=Is(r===null?void 0:r,{owner:this}),this.addValue(e,s)),s}readValue(e,r){let s=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return s!=null&&(typeof s=="string"&&(Sg(s)||Rg(s))?s=parseFloat(s):!ST(s)&&cr.test(r)&&(s=p0(e,r)),this.setBaseTarget(e,Re(s)?s.get():s)),Re(s)?s.get():s}setBaseTarget(e,r){this.baseTarget[e]=r}getBaseTarget(e){var a;const{initial:r}=this.props;let s;if(typeof r=="string"||typeof r=="object"){const o=Qc(this.props,r,(a=this.presenceContext)==null?void 0:a.custom);o&&(s=o[e])}if(r&&s!==void 0)return s;const n=this.getBaseTargetFromProps(this.props,e);return n!==void 0&&!Re(n)?n:this.initialValues[e]!==void 0&&s===void 0?void 0:this.baseTarget[e]}on(e,r){return this.events[e]||(this.events[e]=new Cc),this.events[e].add(r)}notify(e,...r){this.events[e]&&this.events[e].notify(...r)}scheduleRenderMicrotask(){Hc.render(this.render)}}class F0 extends vA{constructor(){super(...arguments),this.KeyframeResolver=xT}sortInstanceNodePosition(e,r){return e.compareDocumentPosition(r)&2?1:-1}getBaseTargetFromProps(e,r){return e.style?e.style[r]:void 0}removeValueFromRenderState(e,{vars:r,style:s}){delete r[e],delete s[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;Re(e)&&(this.childSubscription=e.on("change",r=>{this.current&&(this.current.textContent=`${r}`)}))}}function U0(t,{style:e,vars:r},s,n){const a=t.style;let o;for(o in e)a[o]=e[o];n==null||n.applyProjectionStyles(a,s);for(o in r)a.setProperty(o,r[o])}function bA(t){return window.getComputedStyle(t)}class wA extends F0{constructor(){super(...arguments),this.type="html",this.renderInstance=U0}readValueFromInstance(e,r){var s;if(Gs.has(r))return(s=this.projection)!=null&&s.isProjecting?ml(r):ME(e,r);{const n=bA(e),a=(Rc(r)?n.getPropertyValue(r):n[r])||0;
vendor: 6,529 bytes, line 709
709return typeof a=="string"?a.trim():a}}measureInstanceViewportBox(e,{transformPagePoint:r}){return V0(e,r)}build(e,r,s){Yc(e,r,s.transformTemplate)}scrapeMotionValuesFromProps(e,r,s){return Zc(e,r,s)}}const B0=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"]);function _A(t,e,r,s){U0(t,e,void 0,s);for(const n in e.attrs)t.setAttribute(B0.has(n)?n:ed(n),e.attrs[n])}class jA extends F0{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=ve}getBaseTargetFromProps(e,r){return e[r]}readValueFromInstance(e,r){if(Gs.has(r)){const s=h0(r);return s&&s.default||0}return r=B0.has(r)?r:ed(r),e.getAttribute(r)}scrapeMotionValuesFromProps(e,r,s){return P0(e,r,s)}build(e,r,s){A0(e,r,this.isSVGTag,s.transformTemplate,s.style)}renderInstance(e,r,s,n){_A(e,r,s,n)}mount(e){this.isSVGTag=C0(e.tagName),super.mount(e)}}const kA=(t,e)=>Xc(t)?new jA(e):new wA(e,{allowProjection:t!==g.Fragment});function vs(t,e,r){const s=t.getProps();return Qc(s,e,r!==void 0?r:s.custom,t)}const kl=t=>Array.isArray(t);function EA(t,e,r){t.hasValue(e)?t.getValue(e).set(r):t.addValue(e,Is(r))}function TA(t){return kl(t)?t[t.length-1]||0:t}function AA(t,e){const r=vs(t,e);let{transitionEnd:s={},transition:n={},...a}=r||{};a={...a,...s};for(const o in a){const l=TA(a[o]);EA(t,o,l)}}function NA(t){return!!(Re(t)&&t.add)}function El(t,e){const r=t.getValue("willChange");if(NA(r))return r.add(e);if(!r&&Mt.WillChange){const s=new Mt.WillChange("auto");t.addValue("willChange",s),s.add(e)}}function z0(t){return t.props[R0]}const CA=t=>t!==null;function SA(t,{repeat:e,repeatType:r="loop"},s){const n=t.filter(CA),a=e&&r!=="loop"&&e%2===1?0:n.length-1;return!a||s===void 0?n[a]:s}const PA={type:"spring",stiffness:500,damping:25,restSpeed:10},RA=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),OA={type:"keyframes",duration:.8},IA={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},DA=(t,{keyframes:e})=>e.length>2?OA:Gs.has(t)?t.startsWith("scale")?RA(e[1]):PA:IA;function LA({when:t,delay:e,delayChildren:r,staggerChildren:s,staggerDirection:n,repeat:a,repeatType:o,repeatDelay:l,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const rd=(t,e,r,s={},n,a)=>o=>{const l=Bc(s,t)||{},c=l.delay||s.delay||0;let{elapsed:d=0}=s;d=d-kt(c);const u={keyframes:Array.isArray(r)?r:[null,r],ease:"easeOut",velocity:e.getVelocity(),...l,delay:-d,onUpdate:h=>{e.set(h),l.onUpdate&&l.onUpdate(h)},onComplete:()=>{o(),l.onComplete&&l.onComplete()},name:t,motionValue:e,element:a?void 0:n};LA(l)||Object.assign(u,DA(t,u)),u.duration&&(u.duration=kt(u.duration)),u.repeatDelay&&(u.repeatDelay=kt(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let p=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(bl(u),u.delay===0&&(p=!0)),(Mt.instantAnimations||Mt.skipAnimations)&&(p=!0,bl(u),u.delay=0),u.allowFlatten=!l.type&&!l.ease,p&&!a&&e.get()!==void 0){const h=SA(u.keyframes,l);if(h!==void 0){de.update(()=>{u.onUpdate(h),u.onComplete()});return}}return l.isSync?new Fc(u):new aT(u)};function MA({protectedKeys:t,needsAnimating:e},r){const s=t.hasOwnProperty(r)&&e[r]!==!0;return e[r]=!1,s}function H0(t,e,{delay:r=0,transitionOverride:s,type:n}={}){let{transition:a=t.getDefaultTransition(),transitionEnd:o,...l}=e;s&&(a=s);const c=[],d=n&&t.animationState&&t.animationState.getState()[n];for(const u in l){const p=t.getValue(u,t.latestValues[u]??null),h=l[u];if(h===void 0||d&&MA(d,u))continue;const f={delay:r,...Bc(a||{},u)},x=p.get();if(x!==void 0&&!p.isAnimating&&!Array.isArray(h)&&h===x&&!f.velocity)continue;let m=!1;if(window.MotionHandoffAnimation){const b=z0(t);if(b){const w=window.MotionHandoffAnimation(b,u,de);w!==null&&(f.startTime=w,m=!0)}}El(t,u),p.start(rd(u,p,h,t.shouldReduceMotion&&c0.has(u)?{type:!1}:f,t,m));const y=p.animation;y&&c.push(y)}return o&&Promise.all(c).then(()=>{de.update(()=>{o&&AA(t,o)})}),c}function W0(t,e,r,s=0,n=1){const a=Array.from(t).sort((d,u)=>d.sortNodePosition(u)).indexOf(e),o=t.size,l=(o-1)*s;return typeof r=="function"?r(a,o):n===1?a*s:l-a*s}function Tl(t,e,r={}){var c;const s=vs(t,e,r.type==="exit"?(c=t.presenceContext)==null?void 0:c.custom:void 0);let{transition:n=t.getDefaultTransition()||{}}=s||{};r.transitionOverride&&(n=r.transitionOverride);const a=s?()=>Promise.all(H0(t,s,r)):()=>Promise.resolve(),o=t.variantChildren&&t.variantChildren.size?(d=0)=>{const{delayChildren:u=0,staggerChildren:p,staggerDirection:h}=n;return VA(t,e,d,u,p,h,r)}:()=>Promise.resolve(),{when:l}=n;if(l){const[d,u]=l==="beforeChildren"?[a,o]:[o,a];return d().then(()=>u())}else return Promise.all([a(),o(r.delay)])}function VA(t,e,r=0,s=0,n=0,a=1,o){const l=[];for(const c of t.variantChildren)c.notify("AnimationStart",e),l.push(Tl(c,e,{...o,delay:r+(typeof s=="function"?0:s)+W0(t.variantChildren,c,s,n,a)}).then(()=>c.notify("AnimationComplete",e)));return Promise.all(l)}function $A(t,e,r={}){t.notify("AnimationStart",e);let s;if(Array.isArray(e)){const n=e.map(a=>Tl(t,a,r));s=Promise.all(n)}else if(typeof e=="string")s=Tl(t,e,r);else{const n=typeof e=="function"?vs(t,e,r.custom):e;s=Promise.all(H0(t,n,r))}return s.then(()=>{t.notify("AnimationComplete",e)})}function q0(t,e){if(!Array.isArray(e))return!1;const r=e.length;if(r!==t.length)return!1;for(let s=0;s<r;s++)if(e[s]!==t[s])return!1;return!0}const FA=Kc.length;function G0(t){if(!t)return;if(!t.isControllingVariants){const r=t.parent?G0(t.parent)||{}:{};return t.props.initial!==void 0&&(r.initial=t.props.initial),r}const e={};for(let r=0;r<FA;r++){const s=Kc[r],n=t.props[s];(Tn(n)||n===!1)&&(e[s]=n)}return e}const UA=[...Gc].reverse(),BA=Gc.length;function zA(t){return e=>Promise.all(e.map(({animation:r,options:s})=>$A(t,r,s)))}function HA(t){let e=zA(t),r=bh(),s=!0;const n=c=>(d,u)=>{var h;const p=vs(t,u,c==="exit"?(h=t.presenceContext)==null?void 0:h.custom:void 0);if(p){const{transition:f,transitionEnd:x,...m}=p;d={...d,...m,...x}}return d};function a(c){e=c(t)}function o(c){const{props:d}=t,u=G0(t.parent)||{},p=[],h=new Set;let f={},x=1/0;for(let y=0;y<BA;y++){const b=UA[y],w=r[b],_=d[b]!==void 0?d[b]:u[b],j=Tn(_),k=b===c?w.isActive:null;k===!1&&(x=y);let E=_===u[b]&&_!==d[b]&&j;if(E&&s&&t.manuallyAnimateOnMount&&(E=!1),w.protectedKeys={...f}
vendor: 23,474 bytes, line 709
709,!w.isActive&&k===null||!_&&!w.prevProp||ka(_)||typeof _=="boolean")continue;const T=WA(w.prevProp,_);let A=T||b===c&&w.isActive&&!E&&j||y>x&&j,R=!1;const L=Array.isArray(_)?_:[_];let V=L.reduce(n(b),{});k===!1&&(V={});const{prevResolvedValues:I={}}=w,D={...I,...V},N=O=>{A=!0,h.has(O)&&(R=!0,h.delete(O)),w.needsAnimating[O]=!0;const C=t.getValue(O);C&&(C.liveStyle=!1)};for(const O in D){const C=V[O],$=I[O];if(f.hasOwnProperty(O))continue;let K=!1;kl(C)&&kl($)?K=!q0(C,$):K=C!==$,K?C!=null?N(O):h.add(O):C!==void 0&&h.has(O)?N(O):w.protectedKeys[O]=!0}w.prevProp=_,w.prevResolvedValues=V,w.isActive&&(f={...f,...V}),s&&t.blockInitialAnimation&&(A=!1);const M=E&&T;A&&(!M||R)&&p.push(...L.map(O=>{const C={type:b};if(typeof O=="string"&&s&&!M&&t.manuallyAnimateOnMount&&t.parent){const{parent:$}=t,K=vs($,O);if($.enteringChildren&&K){const{delayChildren:z}=K.transition||{};C.delay=W0($.enteringChildren,t,z)}}return{animation:O,options:C}}))}if(h.size){const y={};if(typeof d.initial!="boolean"){const b=vs(t,Array.isArray(d.initial)?d.initial[0]:d.initial);b&&b.transition&&(y.transition=b.transition)}h.forEach(b=>{const w=t.getBaseTarget(b),_=t.getValue(b);_&&(_.liveStyle=!0),y[b]=w??null}),p.push({animation:y})}let m=!!p.length;return s&&(d.initial===!1||d.initial===d.animate)&&!t.manuallyAnimateOnMount&&(m=!1),s=!1,m?e(p):Promise.resolve()}function l(c,d){var p;if(r[c].isActive===d)return Promise.resolve();(p=t.variantChildren)==null||p.forEach(h=>{var f;return(f=h.animationState)==null?void 0:f.setActive(c,d)}),r[c].isActive=d;const u=o(c);for(const h in r)r[h].protectedKeys={};return u}return{animateChanges:o,setActive:l,setAnimateFunction:a,getState:()=>r,reset:()=>{r=bh(),s=!0}}}function WA(t,e){return typeof e=="string"?e!==t:Array.isArray(e)?!q0(e,t):!1}function br(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function bh(){return{animate:br(!0),whileInView:br(),whileHover:br(),whileTap:br(),whileDrag:br(),whileFocus:br(),exit:br()}}class yr{constructor(e){this.isMounted=!1,this.node=e}update(){}}class qA extends yr{constructor(e){super(e),e.animationState||(e.animationState=HA(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();ka(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:r}=this.node.prevProps||{};e!==r&&this.updateAnimationControlsSubscription()}unmount(){var e;this.node.animationState.reset(),(e=this.unmountControls)==null||e.call(this)}}let GA=0;class KA extends yr{constructor(){super(...arguments),this.id=GA++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:r}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===s)return;const n=this.node.animationState.setActive("exit",!e);r&&!e&&n.then(()=>{r(this.id)})}mount(){const{register:e,onExitComplete:r}=this.node.presenceContext||{};r&&r(this.id),e&&(this.unmount=e(this.id))}unmount(){}}const YA={animation:{Feature:qA},exit:{Feature:KA}};function Nn(t,e,r,s={passive:!0}){return t.addEventListener(e,r,s),()=>t.removeEventListener(e,r)}function Gn(t){return{point:{x:t.pageX,y:t.pageY}}}const JA=t=>e=>Wc(e)&&t(e,Gn(e));function fn(t,e,r,s){return Nn(t,e,JA(r),s)}const K0=1e-4,XA=1-K0,QA=1+K0,Y0=.01,ZA=0-Y0,eN=0+Y0;function De(t){return t.max-t.min}function tN(t,e,r){return Math.abs(t-e)<=r}function wh(t,e,r,s=.5){t.origin=s,t.originPoint=fe(e.min,e.max,t.origin),t.scale=De(r)/De(e),t.translate=fe(r.min,r.max,t.origin)-t.originPoint,(t.scale>=XA&&t.scale<=QA||isNaN(t.scale))&&(t.scale=1),(t.translate>=ZA&&t.translate<=eN||isNaN(t.translate))&&(t.translate=0)}function mn(t,e,r,s){wh(t.x,e.x,r.x,s?s.originX:void 0),wh(t.y,e.y,r.y,s?s.originY:void 0)}function _h(t,e,r){t.min=r.min+e.min,t.max=t.min+De(e)}function rN(t,e,r){_h(t.x,e.x,r.x),_h(t.y,e.y,r.y)}function jh(t,e,r){t.min=e.min-r.min,t.max=t.min+De(e)}function gn(t,e,r){jh(t.x,e.x,r.x),jh(t.y,e.y,r.y)}function qe(t){return[t("x"),t("y")]}const J0=({current:t})=>t?t.ownerDocument.defaultView:null,kh=(t,e)=>Math.abs(t-e);function sN(t,e){const r=kh(t.x,e.x),s=kh(t.y,e.y);return Math.sqrt(r**2+s**2)}class X0{constructor(e,r,{transformPagePoint:s,contextWindow:n=window,dragSnapToOrigin:a=!1,distanceThreshold:o=3}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const h=bo(this.lastMoveEventInfo,this.history),f=this.startEvent!==null,x=sN(h.offset,{x:0,y:0})>=this.distanceThreshold;if(!f&&!x)return;const{point:m}=h,{timestamp:y}=Ce;this.history.push({...m,timestamp:y});const{onStart:b,onMove:w}=this.handlers;f||(b&&b(this.lastMoveEvent,h),this.startEvent=this.lastMoveEvent),w&&w(this.lastMoveEvent,h)},this.handlePointerMove=(h,f)=>{this.lastMoveEvent=h,this.lastMoveEventInfo=vo(f,this.transformPagePoint),de.update(this.updatePoint,!0)},this.handlePointerUp=(h,f)=>{this.end();const{onEnd:x,onSessionEnd:m,resumeAnimation:y}=this.handlers;if(this.dragSnapToOrigin&&y&&y(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const b=bo(h.type==="pointercancel"?this.lastMoveEventInfo:vo(f,this.transformPagePoint),this.history);this.startEvent&&x&&x(h,b),m&&m(h,b)},!Wc(e))return;this.dragSnapToOrigin=a,this.handlers=r,this.transformPagePoint=s,this.distanceThreshold=o,this.contextWindow=n||window;const l=Gn(e),c=vo(l,this.transformPagePoint),{point:d}=c,{timestamp:u}=Ce;this.history=[{...d,timestamp:u}];const{onSessionStart:p}=r;p&&p(e,bo(c,this.history)),this.removeListeners=Hn(fn(this.contextWindow,"pointermove",this.handlePointerMove),fn(this.contextWindow,"pointerup",this.handlePointerUp),fn(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),lr(this.updatePoint)}}function vo(t,e){return e?{point:e(t.point)}:t}function Eh(t,e){return{x:t.x-e.x,y:t.y-e.y}}function bo({point:t},e){return{point:t,delta:Eh(t,Q0(e)),offset:Eh(t,nN(e)),velocity:iN(e,.1)}}function nN(t){return t[0]}function Q0(t){return t[t.length-1]}function iN(t,e){if(t.length<2)return{x:0,y:0};let r=t.length-1,s=null;const n=Q0(t);for(;r>=0&&(s=t[r],!(n.timestamp-s.timestamp>kt(e)));)r--;if(!s)return{x:0,y:0};const a=Et(n.timestamp-s.timestamp);if(a===0)return{x:0,y:0};const o={x:(n.x-s.x)/a,y:(n.y-s.y)/a};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function aN(t,{min:e,max:r},s){return e!==void 0&&t<e?t=s?fe(e,t,s.min):Math.max(t,e):r!==void 0&&t>r&&(t=s?fe(r,t,s.max):Math.min(t,r)),t}function Th(t,e,r){return{min:e!==void 0?t.min+e:void 0,max:r!==void 0?t.max+r-(t.max-t.min):void 0}}function oN(t,{top:e,left:r,bottom:s,right:n}){return{x:Th(t.x,r,n),y:Th(t.y,e,s)}}function Ah(t,e){let r=e.min-t.min,s=e.max-t.max;return e.max-e.min<t.max-t.min&&([r,s]=[s,r]),{min:r,max:s}}function lN(t,e){return{x:Ah(t.x,e.x),y:Ah(t.y,e.y)}}function cN(t,e){let r=.5;const s=De(t),n=De(e);return n>s?r=jn(e.min,e.max-s,t.min):s>n&&(r=jn(t.min,t.max-n,e.min)),Lt(0,1,r)}function dN(t,e){const r={};return e.min!==void 0&&(r.min=e.min-t.min),e.max!==void 0&&(r.max=e.max-t.min),r}const Al=.35;function uN(t=Al){return t===!1?t=0:t===!0&&(t=Al),{x:Nh(t,"left","right"),y:Nh(t,"top","bottom")}}function Nh(t,e,r){return{min:Ch(t,e),max:Ch(t,r)}}function Ch(t,e){return typeof t=="number"?t:t[e]||0}const hN=new WeakMap;class pN{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=ve(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=e}start(e,{snapToCursor:r=!1,distanceThreshold:s}={}){const{presenceContext:n}=this.visualElement;if(n&&n.isPresent===!1)return;const a=p=>{const{dragSnapToOrigin:h}=this.getProps();h?this.pauseAnimation():this.stopAnimation(),r&&this.snapToCursor(Gn(p).point)},o=(p,h)=>{const{drag:f,dragPropagation:x,onDragStart:m}=this.getProps();if(f&&!x&&(this.openDragLock&&this.openDragLock(),this.openDragLock=_T(f),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=h,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),qe(b=>{let w=this.getAxisMotionValue(b).get()||0;if(Tt.test(w)){const{projection:_}=this.visualElement;if(_&&_.layout){const j=_.layout.layoutBox[b];j&&(w=De(j)*(parseFloat(w)/100))}}this.originPoint[b]=w}),m&&de.postRender(()=>m(p,h)),El(this.visualElement,"transform");const{animationState:y}=this.visualElement;y&&y.setActive("whileDrag",!0)},l=(p,h)=>{this.latestPointerEvent=p,this.latestPanInfo=h;const{dragPropagation:f,dragDirectionLock:x,onDirectionLock:m,onDrag:y}=this.getProps();if(!f&&!this.openDragLock)return;const{offset:b}=h;if(x&&this.currentDirection===null){this.currentDirection=fN(b),this.currentDirection!==null&&m&&m(this.currentDirection);return}this.updateAxis("x",h.point,b),this.updateAxis("y",h.point,b),this.visualElement.render(),y&&y(p,h)},c=(p,h)=>{this.latestPointerEvent=p,this.latestPanInfo=h,this.stop(p,h),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>qe(p=>{var h;return this.getAnimationState(p)==="paused"&&((h=this.getAxisMotionValue(p).animation)==null?void 0:h.play())}),{dragSnapToOrigin:u}=this.getProps();this.panSession=new X0(e,{onSessionStart:a,onStart:o,onMove:l,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:s,contextWindow:J0(this.visualElement)})}stop(e,r){const s=e||this.latestPointerEvent,n=r||this.latestPanInfo,a=this.isDragging;if(this.cancel(),!a||!n||!s)return;const{velocity:o}=n;this.startAnimation(o);const{onDragEnd:l}=this.getProps();l&&de.postRender(()=>l(s,n))}cancel(){this.isDragging=!1;const{projection:e,animationState:r}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:s}=this.getProps();!s&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),r&&r.setActive("whileDrag",!1)}updateAxis(e,r,s){const{drag:n}=this.getProps();if(!s||!fi(e,n,this.currentDirection))return;const a=this.getAxisMotionValue(e);let o=this.originPoint[e]+s[e];this.constraints&&this.constraints[e]&&(o=aN(o,this.constraints[e],this.elastic[e])),a.set(o)}resolveConstraints(){var a;const{dragConstraints:e,dragElastic:r}=this.getProps(),s=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(a=this.visualElement.projection)==null?void 0:a.layout,n=this.constraints;e&&cs(e)?this.constraints||(this.constraints=this.resolveRefConstraints()):e&&s?this.constraints=oN(s.layoutBox,e):this.constraints=!1,this.elastic=uN(r),n!==this.constraints&&s&&this.constraints&&!this.hasMutatedConstraints&&qe(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=dN(s.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:r}=this.getProps();if(!e||!cs(e))return!1;const s=e.current,{projection:n}=this.visualElement;if(!n||!n.layout)return!1;const a=gA(s,n.root,this.visualElement.getTransformPagePoint());let o=lN(n.layout.layoutBox,a);if(r){const l=r(pA(o));this.hasMutatedConstraints=!!l,l&&(o=D0(l))}return o}startAnimation(e){const{drag:r,dragMomentum:s,dragElastic:n,dragTransition:a,dragSnapToOrigin:o,onDragTransitionEnd:l}=this.getProps(),c=this.constraints||{},d=qe(u=>{if(!fi(u,r,this.currentDirection))return;let p=c&&c[u]||{};o&&(p={min:0,max:0});const h=n?200:1e6,f=n?40:1e7,x={type:"inertia",velocity:s?e[u]:0,bounceStiffness:h,bounceDamping:f,timeConstant:750,restDelta:1,restSpeed:10,...a,...p};return this.startAxisValueAnimation(u,x)});return Promise.all(d).then(l)}startAxisValueAnimation(e,r){const s=this.getAxisMotionValue(e);return El(this.visualElement,e),s.start(rd(e,s,0,r,this.visualElement,!1))}stopAnimation(){qe(e=>this.getAxisMotionValue(e).stop())}pauseAnimation(){qe(e=>{var r;return(r=this.getAxisMotionValue(e).animation)==null?void 0:r.pause()})}getAnimationState(e){var r;return(r=this.getAxisMotionValue(e).animation)==null?void 0:r.state}getAxisMotionValue(e){const r=`_drag${e.toUpperCase()}`,s=this.visualElement.getProps(),n=s[r];return n||this.visualElement.getValue(e,(s.initial?s.initial[e]:void 0)||0)}snapToCursor(e){qe(r=>{const{drag:s}=this.getProps();if(!fi(r,s,this.currentDirection))return;const{projection:n}=this.visualElement,a=this.getAxisMotionValue(r);if(n&&n.layout){const{min:o,max:l}=n.layout.layoutBox[r];a.set(e[r]-fe(o,l,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:r}=this.getProps(),{projection:s}=this.visualElement;if(!cs(r)||!s||!this.constraints)return;this.stopAnimation();const n={x:0,y:0};qe(o=>{const l=this.getAxisMotionValue(o);if(l&&this.constraints!==!1){const c=l.get();n[o]=cN({min:c,max:c},this.constraints[o])}});const{transformTemplate:a}=this.visualElement.getProps();this.visualElement.current.style.transform=a?a({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),qe(o=>{if(!fi(o,e,null))return;const l=this.getAxisMotionValue(o),{min:c,max:d}=this.constraints[o];l.set(fe(c,d,n[o]))})}addListeners(){if(!this.visualElement.current)return;hN.set(this.visualElement,this);const e=this.visualElement.current,r=fn(e,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),s=()=>{const{dragConstraints:c}=this.getProps();cs(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:n}=this.visualElement,a=n.addEventListener("measure",s);n&&!n.layout&&(n.root&&n.root.updateScroll(),n.updateLayout()),de.read(s);const o=Nn(window,"resize",()=>this.scalePositionWithinConstraints()),l=n.addEventListener("didUpdate",({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(qe(u=>{const p=this.getAxisMotionValue(u);p&&(this.originPoint[u]+=c[u].translate,p.set(p.get()+c[u].translate))}),this.visualElement.render())});return()=>{o(),r(),a(),l&&l()}}getProps(){const e=this.visualElement.getProps(),{drag:r=!1,dragDirectionLock:s=!1,dragPropagation:n=!1,dragConstraints:a=!1,dragElastic:o=Al,dragMomentum:l=!0}=e;return{...e,drag:r,dragDirectionLock:s,dragPropagation:n,dragConstraints:a,dragElastic:o,dragMomentum:l}}}function fi(t,e,r){return(e===!0||e===t)&&(r===null||r===t)}function fN(t,e=10){let r=null;return Math.abs(t.y)>e?r="y":Math.abs(t.x)>e&&(r="x"),r}class mN extends yr{constructor(e){super(e),this.removeGroupControls=Ye,this.removeListeners=Ye,this.controls=new pN(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Ye}unmount(){this.removeGroupControls(),this.removeListeners()}}const Sh=t=>(e,r)=>{t&&de.postRender(()=>t(e,r))};class gN extends yr{constructor(){super(...arguments),this.removePointerDownListener=Ye}onPointerDown(e){this.session=new X0(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:J0(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:r,onPan:s,onPanEnd:n}=this.node.getProps();return{onSessionStart:Sh(e),onStart:Sh(r),onMove:s,onEnd:(a,o)=>{delete this.session,n&&de.postRender(()=>n(a,o))}}}mount(){this.removePointerDownListener=fn(this.node.current,"pointerdown",e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const Ri={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Ph(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const tn={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(G.test(t))t=parseFloat(t);else return t;const r=Ph(t,e.target.x),s=Ph(t,e.target.y);return`${r}% ${s}%`}},yN={correct:(t,{treeScale:e,projectionDelta:r})=>{const s=t,n=cr.parse(t);if(n.length>5)return s;const a=cr.createTransformer(t),o=typeof n[0]!="number"?1:0,l=r.x.scale*e.x,c=r.y.scale*e.y;n[0+o]/=l,n[1+o]/=c;const d=fe(l,c,.5);return typeof n[2+o]=="number"&&(n[2+o]/=d),typeof n[3+o]=="number"&&(n[3+o]/=d),a(n)}};let wo=!1;class xN extends g.Component{componentDidMount(){const{visualElement:e,layoutGroup:r,switchLayoutGroup:s,layoutId:n}=this.props,{projection:a}=e;UT(vN),a&&(r.group&&r.group.add(a),s&&s.register&&n&&s.register(a),wo&&a.root.didUpdate(),a.addEventListener("animationComplete",()=>{this.safeToRemove()}),a.setOptions({...a.options,onExitComplete:()=>this.safeToRemove()})),Ri.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:r,visualElement:s,drag:n,isPresent:a}=this.props,{projection:o}=s;return o&&(o.isPresent=a,wo=!0,n||e.layoutDependency!==r||r===void 0||e.isPresent!==a?o.willUpdate():this.safeToRemove(),e.isPresent!==a&&(a?o.promote():o.relegate()||de.postRender(()=>{const l=o.getStack();(!l||!l.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),Hc.postRender(()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:e,layoutGroup:r,switchLayoutGroup:s}=this.props,{projection:n}=e;wo=!0,n&&(n.scheduleCheckAfterUnmount(),r&&r.group&&r.group.remove(n),s&&s.deregister&&s.deregister(n))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function Z0(t){const[e,r]=b0(),s=g.useContext(jc);return i.jsx(xN,{...t,layoutGroup:s,switchLayoutGroup:g.useContext(O0),isPresent:e,safeToRemove:r})}const vN={borderRadius:{...tn,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:tn,borderTopRightRadius:tn,borderBottomLeftRadius:tn,borderBottomRightRadius:tn,boxShadow:yN};function bN(t,e,r){const s=Re(t)?t:Is(t);return s.start(rd("",s,e,r)),s.animation}const wN=(t,e)=>t.depth-e.depth;class _N{constructor(){this.children=[],this.isDirty=!1}add(e){Tc(this.children,e),this.isDirty=!0}remove(e){Ac(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(wN),this.isDirty=!1,this.children.forEach(e)}}function jN(t,e){const r=Le.now(),s=({timestamp:n})=>{const a=n-r;a>=e&&(lr(s),t(a-e))};return de.setup(s,!0),()=>lr(s)}const ey=["TopLeft","TopRight","BottomLeft","BottomRight"],kN=ey.length,Rh=t=>typeof t=="string"?parseFloat(t):t,Oh=t=>typeof t=="number"||G.test(t);function EN(t,e,r,s,n,a){n?(t.opacity=fe(0,r.opacity??1,TN(s)),t.opacityExit=fe(e.opacity??1,0,AN(s))):a&&(t.opacity=fe(e.opacity??1,r.opacity??1,s));for(let o=0;o<kN;o++){const l=`border${ey[o]}Radius`;let c=Ih(e,l),d=Ih(r,l);if(c===void 0&&d===void 0)continue;c||(c=0),d||(d=0),c===0||d===0||Oh(c)===Oh(d)?(t[l]=Math.max(fe(Rh(c),Rh(d),s),0),(Tt.test(d)||Tt.test(c))&&(t[l]+="%")):t[l]=d}(e.rotate||r.rotate)&&(t.rotate=fe(e.rotate||0,r.rotate||0,s))}function Ih(t,e){return t[e]!==void 0?t[e]:t.borderRadius}const TN=ty(0,.5,Fg),AN=ty(.5,.95,Ye);function ty(t,e,r){return s=>s<t?0:s>e?1:r(jn(t,e,s))}function Dh(t,e){t.min=e.min,t.max=e.max}function We(t,e){Dh(t.x,e.x),Dh(t.y,e.y)}function Lh(t,e){t.translate=e.translate,t.scale=e.scale,t.originPoint=e.originPoint,t.origin=e.origin}function Mh(t,e,r,s,n){return t-=e,t=Qi(t,1/r,s),n!==void 0&&(t=Qi(t,1/n,s)),t}function NN(t,e=0,r=1,s=.5,n,a=t,o=t){if(Tt.test(e)&&(e=parseFloat(e),e=fe(o.min,o.max,e/100)-o.min),typeof e!="number")return;let l=fe(a.min,a.max,s);t===a&&(l-=e),t.min=Mh(t.min,e,r,l,n),t.max=Mh(t.max,e,r,l,n)}function Vh(t,e,[r,s,n],a,o){NN(t,e[r],e[s],e[n],e.scale,a,o)}const CN=["x","scaleX","originX"],SN=["y","scaleY","originY"];function $h(t,e,r,s){Vh(t.x,e,CN,r?r.x:void 0,s?s.x:void 0),Vh(t.y,e,SN,r?r.y:void 0,s?s.y:void 0)}function Fh(t){return t.translate===0&&t.scale===1}function ry(t){return Fh(t.x)&&Fh(t.y)}function Uh(t,e){return t.min===e.min&&t.max===e.max}function PN(t,e){return Uh(t.x,e.x)&&Uh(t.y,e.y)}function Bh(t,e){return Math.round(t.min)===Math.round(e.min)&&Math.round(t.max)===Math.round(e.max)}function sy(t,e){return Bh(t.x,e.x)&&Bh(t.y,e.y)}function zh(t){return De(t.x)/De(t.y)}function Hh(t,e){return t.translate===e.translate&&t.scale===e.scale&&t.originPoint===e.originPoint}class RN{constructor(){this.members=[]}add(e){Tc(this.members,e),e.scheduleRender()}remove(e){if(Ac(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const r=this.members[this.members.length-1];r&&this.promote(r)}}relegate(e){const r=this.members.findIndex(n=>e===n);if(r===0)return!1;let s;for(let n=r;n>=0;n--){const a=this.members[n];if(a.isPresent!==!1){s=a;break}}return s?(this.promote(s),!0):!1}promote(e,r){const s=this.lead;if(e!==s&&(this.prevLead=s,this.lead=e,e.show(),s)){s.instance&&s.scheduleRender(),e.scheduleRender(),e.resumeFrom=s,r&&(e.resumeFrom.preserveOpacity=!0),s.snapshot&&(e.snapshot=s.snapshot,e.snapshot.latestValues=s.animationValues||s.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:n}=e.options;n===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(e=>{const{options:r,resumingFrom:s}=e;r.onExitComplete&&r.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(e=>{e.instance&&e.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function ON(t,e,r){let s="";const n=t.x.translate/e.x,a=t.y.translate/e.y,o=(r==null?void 0:r.z)||0;if((n||a||o)&&(s=`translate3d(${n}px, ${a}px, ${o}px) `),(e.x!==1||e.y!==1)&&(s+=`scale(${1/e.x}, ${1/e.y}) `),r){const{transformPerspective:d,rotate:u,rotateX:p,rotateY:h,skewX:f,skewY:x}=r;d&&(s=`perspective(${d}px) ${s}`),u&&(s+=`rotate(${u}deg) `),p&&(s+=`rotateX(${p}deg) `),h&&(s+=`rotateY(${h}deg) `),f&&(s+=`skewX(${f}deg) `),x&&(s+=`skewY(${x}deg) `)}const l=t.x.scale*e.x,c=t.y.scale*e.y;return(l!==1||c!==1)&&(s+=`scale(${l}, ${c})`),s||"none"}const _o=["","X","Y","Z"],IN=1e3;let DN=0;function jo(t,e,r,s){const{latestValues:n}=e;n[t]&&(r[t]=n[t],e.setStaticValue(t,0),s&&(s[t]=0))}function ny(t){if(t.hasCheckedOptimisedAppear=!0,t.root===t)return;const{visualElement:e}=t.options;if(!e)return;const r=z0(e);if(window.MotionHasOptimisedAnimation(r,"transform")){const{layout:n,layoutId:a}=t.options;window.MotionCancelOptimisedAnimation(r,"transform",de,!(n||a))}const{parent:s}=t;s&&!s.hasCheckedOptimisedAppear&&ny(s)}function iy({attachResizeListener:t,defaultParent:e,measureScroll:r,checkIsScrollRoot:s,resetTransform:n}){return class{constructor(o={},l=e==null?void 0:e()){this.id=DN++,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.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>
vendor: 4,304 bytes, line 709
709{this.projectionUpdateScheduled=!1,this.nodes.forEach(VN),this.nodes.forEach(BN),this.nodes.forEach(zN),this.nodes.forEach($N)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=o,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0;for(let c=0;c<this.path.length;c++)this.path[c].shouldResetTransform=!0;this.root===this&&(this.nodes=new _N)}addEventListener(o,l){return this.eventHandlers.has(o)||this.eventHandlers.set(o,new Cc),this.eventHandlers.get(o).add(l)}notifyListeners(o,...l){const c=this.eventHandlers.get(o);c&&c.notify(...l)}hasListeners(o){return this.eventHandlers.has(o)}mount(o){if(this.instance)return;this.isSVG=v0(o)&&!NT(o),this.instance=o;const{layoutId:l,layout:c,visualElement:d}=this.options;if(d&&!d.current&&d.mount(o),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(c||l)&&(this.isLayoutDirty=!0),t){let u,p=0;const h=()=>this.root.updateBlockedByResize=!1;de.read(()=>{p=window.innerWidth}),t(o,()=>{const f=window.innerWidth;f!==p&&(p=f,this.root.updateBlockedByResize=!0,u&&u(),u=jN(h,250),Ri.hasAnimatedSinceResize&&(Ri.hasAnimatedSinceResize=!1,this.nodes.forEach(Gh)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&d&&(l||c)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:p,hasRelativeLayoutChanged:h,layout:f})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const x=this.options.transition||d.getDefaultTransition()||KN,{onLayoutAnimationStart:m,onLayoutAnimationComplete:y}=d.getProps(),b=!this.targetLayout||!sy(this.targetLayout,f),w=!p&&h;if(this.options.layoutRoot||this.resumeFrom||w||p&&(b||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const _={...Bc(x,"layout"),onPlay:m,onComplete:y};(d.shouldReduceMotion||this.options.layoutRoot)&&(_.delay=0,_.type=!1),this.startAnimation(_),this.setAnimationOrigin(u,w)}else p||Gh(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=f})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const o=this.getStack();o&&o.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),lr(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(HN),this.animationId++)}getTransformTemplate(){const{visualElement:o}=this.options;return o&&o.getProps().transformTemplate}willUpdate(o=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&ny(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const p=this.path[u];p.shouldResetTransform=!0,p.updateScroll("snapshot"),p.options.layoutRoot&&p.willUpdate(!1)}const{layoutId:l,layout:c}=this.options;if(l===void 0&&!c)return;const d=this.getTransformTemplate();this.prevTransformTemplateValue=d?d(this.latestValues,""):void 0,this.updateSnapshot(),o&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(Wh);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(qh);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(UN),this.nodes.forEach(LN),this.nodes.forEach(MN)):this.nodes.forEach(qh),this.clearAllSnapshots();const l=Le.now();Ce.delta=Lt(0,1e3/60,l-Ce.timestamp),Ce.timestamp=l,Ce.isProcessing=!0,uo.update.process(Ce),uo.preRender.process(Ce),uo.render.process(Ce),Ce.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,Hc.read(this.scheduleUpdate))}
vendor: 6,205 bytes, line 709
709clearAllSnapshots(){this.nodes.forEach(FN),this.sharedNodes.forEach(WN)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,de.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){de.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!De(this.snapshot.measuredBox.x)&&!De(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 c=0;c<this.path.length;c++)this.path[c].updateScroll();const o=this.layout;this.layout=this.measure(!1),this.layoutCorrected=ve(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:l}=this.options;l&&l.notify("LayoutMeasure",this.layout.layoutBox,o?o.layoutBox:void 0)}updateScroll(o="measure"){let l=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===o&&(l=!1),l&&this.instance){const c=s(this.instance);this.scroll={animationId:this.root.animationId,phase:o,isRoot:c,offset:r(this.instance),wasRoot:this.scroll?this.scroll.isRoot:c}}}resetTransform(){if(!n)return;const o=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,l=this.projectionDelta&&!ry(this.projectionDelta),c=this.getTransformTemplate(),d=c?c(this.latestValues,""):void 0,u=d!==this.prevTransformTemplateValue;o&&this.instance&&(l||jr(this.latestValues)||u)&&(n(this.instance,d),this.shouldResetTransform=!1,this.scheduleRender())}measure(o=!0){const l=this.measurePageBox();let c=this.removeElementScroll(l);return o&&(c=this.removeTransform(c)),YN(c),{animationId:this.root.animationId,measuredBox:l,layoutBox:c,latestValues:{},source:this.id}}measurePageBox(){var d;const{visualElement:o}=this.options;if(!o)return ve();const l=o.measureViewportBox();if(!(((d=this.scroll)==null?void 0:d.wasRoot)||this.path.some(JN))){const{scroll:u}=this.root;u&&(ds(l.x,u.offset.x),ds(l.y,u.offset.y))}return l}removeElementScroll(o){var c;const l=ve();if(We(l,o),(c=this.scroll)!=null&&c.wasRoot)return l;for(let d=0;d<this.path.length;d++){const u=this.path[d],{scroll:p,options:h}=u;u!==this.root&&p&&h.layoutScroll&&(p.wasRoot&&We(l,o),ds(l.x,p.offset.x),ds(l.y,p.offset.y))}return l}applyTransform(o,l=!1){const c=ve();We(c,o);for(let d=0;d<this.path.length;d++){const u=this.path[d];!l&&u.options.layoutScroll&&u.scroll&&u!==u.root&&us(c,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),jr(u.latestValues)&&us(c,u.latestValues)}return jr(this.latestValues)&&us(c,this.latestValues),c}removeTransform(o){const l=ve();We(l,o);for(let c=0;c<this.path.length;c++){const d=this.path[c];if(!d.instance||!jr(d.latestValues))continue;_l(d.latestValues)&&d.updateSnapshot();const u=ve(),p=d.measurePageBox();We(u,p),$h(l,d.latestValues,d.snapshot?d.snapshot.layoutBox:void 0,u)}return jr(this.latestValues)&&$h(l,this.latestValues),l}setTargetDelta(o){this.targetDelta=o,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(o){this.options={...this.options,...o,crossfade:o.crossfade!==void 0?o.crossfade:!0}}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!==Ce.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(o=!1){var h;const l=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=l.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=l.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=l.isSharedProjectionDirty);const c=!!this.resumingFrom||this!==l;if(!(o||c&&this.isSharedProjectionDirty||this.isProjectionDirty||(h=this.parent)!=null&&h.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:p}=this.options;if(!(!this.layout||!(u||p))){if(this.resolvedRelativeTargetAt=Ce.timestamp,!this.targetDelta&&!this.relativeTarget){const f=this.getClosestProjectingParent();f&&f.layout&&this.animationProgress!==1?(this.relativeParent=f,this.forceRelativeParentToResolveTarget(),this.relativeTarget=ve(),this.relativeTargetOrigin=ve(),gn(this.relativeTargetOrigin,this.layout.layoutBox,f.layout.layoutBox),We(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=ve(),this.targetWithTransforms=ve()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),rN(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):We(this.target,this.layout.layoutBox),M0(this.target,this.targetDelta)):We(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget)){this.attemptToResolveRelativeTarget=!1;const f=this.getClosestProjectingParent();f&&!!f.resumingFrom==!!this.resumingFrom&&!f.options.layoutScroll&&f.target&&this.animationProgress!==1?(this.relativeParent=f,this.forceRelativeParentToResolveTarget(),this.relativeTarget=ve(),this.relativeTargetOrigin=ve(),gn(this.relativeTargetOrigin,this.target,f.target),We(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||_l(this.parent.latestValues)||L0(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}calcProjection(){var x;const o=this.getLead(),l=!!this.resumingFrom||this!==o;let c=!0;if((this.isProjectionDirty||(x=this.parent)!=null&&x.isProjectionDirty)&&
vendor: 4,158 bytes, line 709
709(c=!1),l&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(c=!1),this.resolvedRelativeTargetAt===Ce.timestamp&&(c=!1),c)return;const{layout:d,layoutId:u}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(d||u))return;We(this.layoutCorrected,this.layout.layoutBox);const p=this.treeScale.x,h=this.treeScale.y;mA(this.layoutCorrected,this.treeScale,this.path,l),o.layout&&!o.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(o.target=o.layout.layoutBox,o.targetWithTransforms=ve());const{target:f}=o;if(!f){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(Lh(this.prevProjectionDelta.x,this.projectionDelta.x),Lh(this.prevProjectionDelta.y,this.projectionDelta.y)),mn(this.projectionDelta,this.layoutCorrected,f,this.latestValues),(this.treeScale.x!==p||this.treeScale.y!==h||!Hh(this.projectionDelta.x,this.prevProjectionDelta.x)||!Hh(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",f))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(o=!0){var l;if((l=this.options.visualElement)==null||l.scheduleRender(),o){const c=this.getStack();c&&c.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=hs(),this.projectionDelta=hs(),this.projectionDeltaWithTransform=hs()}setAnimationOrigin(o,l=!1){const c=this.snapshot,d=c?c.latestValues:{},u={...this.latestValues},p=hs();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!l;const h=ve(),f=c?c.source:void 0,x=this.layout?this.layout.source:void 0,m=f!==x,y=this.getStack(),b=!y||y.members.length<=1,w=!!(m&&!b&&this.options.crossfade===!0&&!this.path.some(GN));this.animationProgress=0;let _;this.mixTargetDelta=j=>{const k=j/1e3;Kh(p.x,o.x,k),Kh(p.y,o.y,k),this.setTargetDelta(p),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(gn(h,this.layout.layoutBox,this.relativeParent.layout.layoutBox),qN(this.relativeTarget,this.relativeTargetOrigin,h,k),_&&PN(this.relativeTarget,_)&&(this.isProjectionDirty=!1),_||(_=ve()),We(_,this.relativeTarget)),m&&(this.animationValues=u,EN(u,d,this.latestValues,k,w,b)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=k},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(o){var l,c,d;this.notifyListeners("animationStart"),(l=this.currentAnimation)==null||l.stop(),(d=(c=this.resumingFrom)==null?void 0:c.currentAnimation)==null||d.stop(),this.pendingAnimation&&(lr(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=de.update(()=>{Ri.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=Is(0)),this.currentAnimation=bN(this.motionValue,[0,1e3],{...o,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),o.onUpdate&&o.onUpdate(u)},onStop:()=>{},onComplete:()=>{o.onComplete&&o.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);const o=this.getStack();o&&o.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(IN),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const o=this.getLead();let{targetWithTransforms:l,target:c,layout:d,latestValues:u}=o;if(!(!l||!c||!d)){if(this!==o&&this.layout&&d&&ay(this.options.animationType,this.layout.layoutBox,d.layoutBox)){c=this.target||ve();const p=De(this.layout.layoutBox.x);
vendor: 9,875 bytes, line 709
709c.x.min=o.target.x.min,c.x.max=c.x.min+p;const h=De(this.layout.layoutBox.y);c.y.min=o.target.y.min,c.y.max=c.y.min+h}We(l,c),us(l,u),mn(this.projectionDeltaWithTransform,this.layoutCorrected,l,u)}}registerSharedNode(o,l){this.sharedNodes.has(o)||this.sharedNodes.set(o,new RN),this.sharedNodes.get(o).add(l);const d=l.options.initialPromotionConfig;l.promote({transition:d?d.transition:void 0,preserveFollowOpacity:d&&d.shouldPreserveFollowOpacity?d.shouldPreserveFollowOpacity(l):void 0})}isLead(){const o=this.getStack();return o?o.lead===this:!0}getLead(){var l;const{layoutId:o}=this.options;return o?((l=this.getStack())==null?void 0:l.lead)||this:this}getPrevLead(){var l;const{layoutId:o}=this.options;return o?(l=this.getStack())==null?void 0:l.prevLead:void 0}getStack(){const{layoutId:o}=this.options;if(o)return this.root.sharedNodes.get(o)}promote({needsReset:o,transition:l,preserveFollowOpacity:c}={}){const d=this.getStack();d&&d.promote(this,c),o&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const o=this.getStack();return o?o.relegate(this):!1}resetSkewAndRotation(){const{visualElement:o}=this.options;if(!o)return;let l=!1;const{latestValues:c}=o;if((c.z||c.rotate||c.rotateX||c.rotateY||c.rotateZ||c.skewX||c.skewY)&&(l=!0),!l)return;const d={};c.z&&jo("z",o,d,this.animationValues);for(let u=0;u<_o.length;u++)jo(`rotate${_o[u]}`,o,d,this.animationValues),jo(`skew${_o[u]}`,o,d,this.animationValues);o.render();for(const u in d)o.setStaticValue(u,d[u]),this.animationValues&&(this.animationValues[u]=d[u]);o.scheduleRender()}applyProjectionStyles(o,l){if(!this.instance||this.isSVG)return;if(!this.isVisible){o.visibility="hidden";return}const c=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,o.visibility="",o.opacity="",o.pointerEvents=Pi(l==null?void 0:l.pointerEvents)||"",o.transform=c?c(this.latestValues,""):"none";return}const d=this.getLead();if(!this.projectionDelta||!this.layout||!d.target){this.options.layoutId&&(o.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,o.pointerEvents=Pi(l==null?void 0:l.pointerEvents)||""),this.hasProjected&&!jr(this.latestValues)&&(o.transform=c?c({},""):"none",this.hasProjected=!1);return}o.visibility="";const u=d.animationValues||d.latestValues;this.applyTransformsToTarget();let p=ON(this.projectionDeltaWithTransform,this.treeScale,u);c&&(p=c(u,p)),o.transform=p;const{x:h,y:f}=this.projectionDelta;o.transformOrigin=`${h.origin*100}% ${f.origin*100}% 0`,d.animationValues?o.opacity=d===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:o.opacity=d===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const x in An){if(u[x]===void 0)continue;const{correct:m,applyTo:y,isCSSVariable:b}=An[x],w=p==="none"?u[x]:m(u[x],d);if(y){const _=y.length;for(let j=0;j<_;j++)o[y[j]]=w}else b?this.options.visualElement.renderState.vars[x]=w:o[x]=w}this.options.layoutId&&(o.pointerEvents=d===this?Pi(l==null?void 0:l.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(o=>{var l;return(l=o.currentAnimation)==null?void 0:l.stop()}),this.root.nodes.forEach(Wh),this.root.sharedNodes.clear()}}}function LN(t){t.updateLayout()}function MN(t){var r;const e=((r=t.resumeFrom)==null?void 0:r.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&e&&t.hasListeners("didUpdate")){const{layoutBox:s,measuredBox:n}=t.layout,{animationType:a}=t.options,o=e.source!==t.layout.source;a==="size"?qe(p=>{const h=o?e.measuredBox[p]:e.layoutBox[p],f=De(h);h.min=s[p].min,h.max=h.min+f}):ay(a,e.layoutBox,s)&&qe(p=>{const h=o?e.measuredBox[p]:e.layoutBox[p],f=De(s[p]);h.max=h.min+f,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[p].max=t.relativeTarget[p].min+f)});const l=hs();mn(l,s,e.layoutBox);const c=hs();o?mn(c,t.applyTransform(n,!0),e.measuredBox):mn(c,s,e.layoutBox);const d=!ry(l);let u=!1;if(!t.resumeFrom){const p=t.getClosestProjectingParent();if(p&&!p.resumeFrom){const{snapshot:h,layout:f}=p;if(h&&f){const x=ve();gn(x,e.layoutBox,h.layoutBox);const m=ve();gn(m,s,f.layoutBox),sy(x,m)||(u=!0),p.options.layoutRoot&&(t.relativeTarget=m,t.relativeTargetOrigin=x,t.relativeParent=p)}}}t.notifyListeners("didUpdate",{layout:s,snapshot:e,delta:c,layoutDelta:l,hasLayoutChanged:d,hasRelativeLayoutChanged:u})}else if(t.isLead()){const{onExitComplete:s}=t.options;s&&s()}t.options.transition=void 0}function VN(t){t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function $N(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function FN(t){t.clearSnapshot()}function Wh(t){t.clearMeasurements()}function qh(t){t.isLayoutDirty=!1}function UN(t){const{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function Gh(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function BN(t){t.resolveTargetDelta()}function zN(t){t.calcProjection()}function HN(t){t.resetSkewAndRotation()}function WN(t){t.removeLeadSnapshot()}function Kh(t,e,r){t.translate=fe(e.translate,0,r),t.scale=fe(e.scale,1,r),t.origin=e.origin,t.originPoint=e.originPoint}function Yh(t,e,r,s){t.min=fe(e.min,r.min,s),t.max=fe(e.max,r.max,s)}function qN(t,e,r,s){Yh(t.x,e.x,r.x,s),Yh(t.y,e.y,r.y,s)}function GN(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const KN={duration:.45,ease:[.4,0,.1,1]},Jh=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),Xh=Jh("applewebkit/")&&!Jh("chrome/")?Math.round:Ye;function Qh(t){t.min=Xh(t.min),t.max=Xh(t.max)}function YN(t){Qh(t.x),Qh(t.y)}function ay(t,e,r){return t==="position"||t==="preserve-aspect"&&!tN(zh(e),zh(r),.2)}function JN(t){var e;return t!==t.root&&((e=t.scroll)==null?void 0:e.wasRoot)}const XN=iy({attachResizeListener:(t,e)=>Nn(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),ko={current:void 0},oy=iy({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!ko.current){const t=new XN({});t.mount(window),t.setOptions({layoutScroll:!0}),ko.current=t}return ko.current},resetTransform:(t,e)=>{t.style.transform=e!==void 0?e:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),QN={pan:{Feature:gN},drag:{Feature:mN,ProjectionNode:oy,MeasureLayout:Z0}};function Zh(t,e,r){const{props:s}=t;t.animationState&&s.whileHover&&t.animationState.setActive("whileHover",r==="Start");const n="onHover"+r,a=s[n];a&&de.postRender(()=>a(e,Gn(e)))}class ZN extends yr{mount(){const{current:e}=this.node;e&&(this.unmount=jT(e,(r,s)=>(Zh(this.node,s,"Start"),n=>Zh(this.node,n,"End"))))}unmount(){}}class eC extends yr{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=Hn(Nn(this.node.current,"focus",()=>this.onFocus()),Nn(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function ep(t,e,r){const{props:s}=t;if(t.current instanceof HTMLButtonElement&&t.current.disabled)return;t.animationState&&s.whileTap&&t.animationState.setActive("whileTap",r==="Start");const n="onTap"+(r==="End"?"":r),a=s[n];a&&de.postRender(()=>a(e,Gn(e)))}class tC extends yr{mount(){const{current:e}=this.node;e&&(this.unmount=AT(e,(r,s)=>(ep(this.node,s,"Start"),(n,{success:a})=>ep(this.node,n,a?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Nl=new WeakMap,Eo=new WeakMap,rC=t=>{const e=Nl.get(t.target);e&&e(t)},sC=t=>{t.forEach(rC)};function nC({root:t,...e}){const r=t||document;Eo.has(r)||Eo.set(r,{});const s=Eo.get(r),n=JSON.stringify(e);return s[n]||(s[n]=new IntersectionObserver(sC,{root:t,...e})),s[n]}function iC(t,e,r){const s=nC(e);return Nl.set(t,r),s.observe(t),()=>{Nl.delete(t),s.unobserve(t)}}const aC={some:0,all:1};class oC extends yr{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:r,margin:s,amount:n="some",once:a}=e,o={root:r?r.current:void 0,rootMargin:s,threshold:typeof n=="number"?n:aC[n]},l=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,a&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:u,onViewportLeave:p}=this.node.getProps(),h=d?u:p;h&&h(c)};return iC(this.node.current,o,l)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:e,prevProps:r}=this.node;["amount","margin","root"].some(lC(e,r))&&this.startObserver()}unmount(){}}function lC({viewport:t={}},{viewport:e={}}={}){return r=>t[r]!==e[r]}const cC={inView:{Feature:oC},tap:{Feature:tC},focus:{Feature:eC},hover:{Feature:ZN}},dC={layout:{ProjectionNode:oy,MeasureLayout:Z0}},uC={...YA,...cC,...QN,...dC},_t=hA(uC,kA);function ly(){!td.current&&$0();const[t]=g.useState(Zi.current);return t}function rn(...t){return t.filter(Boolean).join(" ")}const cy=g.forwardRef((t,e)=>{const{texts:r,transition:s={type:"spring",damping:25,stiffness:300,layout:{duration:.35,ease:"easeInOut"}},initial:n={y:"100%",opacity:0}
709,animate:a={y:0,opacity:1},exit:o={y:"-120%",opacity:0},animatePresenceMode:l="wait",animatePresenceInitial:c=!1,rotationInterval:d=2e3,staggerDuration:u=0,staggerFrom:p="first",loop:h=!0,auto:f=!0,splitBy:x="characters",onNext:m,mainClassName:y,splitLevelClassName:b,elementLevelClassName:w,stabilizeWidth:_=!1,...j}=t,[k,E]=g.useState(0),T=O=>{if(typeof Intl<"u"&&Intl.Segmenter){const C=new Intl.Segmenter("en",{granularity:"grapheme"});return Array.from(C.segment(O),$=>$.segment)}return Array.from(O)},A=g.useMemo(()=>{const O=r[k]??"";if(x==="characters"){const C=O.split(" ");return C.map(($,K)=>({characters:T($),needsSpace:K!==C.length-1}))}return x==="words"?O.split(" ").map((C,$,K)=>({characters:[C],needsSpace:$!==K.length-1})):x==="lines"?O.split(`
710`).map((C,$,K)=>({characters:[C],needsSpace:$!==K.length-1})):O.split(x).map((C,$,K)=>({characters:[C],needsSpace:$!==K.length-1}))},[r,k,x]),R=g.useMemo(()=>r.reduce((O,C)=>C.length>O.length?C:O,""),[r]),L=g.useCallback((O,C)=>{const $=C;if(p==="first")return O*u;if(p==="last")return($-1-O)*u;if(p==="center"){const K=Math.floor($/2);return Math.abs(K-O)*u}if(p==="random"){const K=Math.floor(Math.random()*$);return Math.abs(K-O)*u}return Math.abs(p-O)*u},[p,u]),V=g.useCallback(O=>{E(O),m&&m(O)},[m]),I=g.useCallback(()=>{const O=k===r.length-1?h?0:k:k+1;O!==k&&V(O)},[k,r.length,h,V]),D=g.useCallback(()=>{const O=k===0?h?r.length-1:k:k-1;O!==k&&V(O)},[k,r.length,h,V]),N=g.useCallback(O=>{const C=Math.max(0,Math.min(O,r.length-1));C!==k&&V(C)},[r.length,k,V]),M=g.useCallback(()=>{k!==0&&V(0)},[k,V]);g.useImperativeHandle(e,()=>({next:I,previous:D,jumpTo:N,reset:M}),[I,D,N,M]);const B=ly();return g.useEffect(()=>{if(B||!f||window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;const O=setInterval(I,d);return()=>clearInterval(O)},[I,d,f,B]),B?i.jsx("span",{className:y,children:r[0]}):i.jsxs(_t.span,{className:rn("text-rotate",y,_&&"relative"),...j,layout:!0,transition:s,children:[i.jsx("span",{className:"text-rotate-sr-only",children:r[k]}),_&&i.jsx("span",{"aria-hidden":"true",className:rn(x==="lines"?"text-rotate-lines":"text-rotate","invisible"),children:R}),i.jsx("span",{className:_?"absolute left-0 top-0":void 0,"aria-hidden":"true",children:i.jsx(w0,{mode:l,initial:c,children:i.jsx(_t.span,{className:rn(x==="lines"?"text-rotate-lines":"text-rotate"),layout:!0,children:A.map((O,C,$)=>{const K=$.slice(0,C).reduce((z,X)=>z+X.characters.length,0);return i.jsxs("span",{className:rn("text-rotate-word",b),children:[O.characters.map((z,X)=>i.jsx(_t.span,{initial:n,animate:a,exit:o,transition:{...s,delay:L(K+X,$.reduce((Z,ee)=>Z+ee.characters.length,0))},className:rn("text-rotate-element",w),children:z},X)),O.needsSpace&&i.jsx("span",{className:"text-rotate-space",children:" "})]},C)})},k)})})]})});cy.displayName="RotatingText";const hC=["Recipe","Photo","Social Media","Video","Post","Screenshot","Cook Book","Website","Idea","Texts","Notes"],pC=()=>i.jsxs("h2",{className:"display text-[#1f2a22] dark:text-gray-100 flex flex-wrap items-center justify-center gap-x-4 gap-y-2 max-w-full",children:[i.jsx("span",{children:"Import Any"}),i.jsx(cy,{texts:hC,mainClassName:"display inline-flex items-center justify-center px-4 py-1 md:py-2 bg-honeydew-200 text-honeydew-900 dark:bg-honeydew-400/20 dark:text-honeydew-200 overflow-hidden rounded-ellie",staggerFrom:"last",initial:{y:"100%"},animate:{y:0},exit:{y:"-120%"},staggerDuration:.02,splitLevelClassName:"overflow-hidden pb-0.5",animatePresenceMode:"popLayout",transition:{type:"spring",damping:32,stiffness:420,layout:{duration:.35,ease:"easeInOut"}},rotationInterval:1600})]}),tp="https://apps.apple.com/us/app/honeydew-capture-recipes/id6714449541?platform=iphone",fC="https://play.google.com/store/apps/details?id=com.redhoney.eatlist",mC="/badges/app-store.svg",gC="/badges/google-play.svg",dr=({children:t,className:e="",delayMs:r=0})=>{const[s,n]=It();return i.jsx("div",{ref:s,className:`rv ${n?"in":""} ${e}`,style:r?{transitionDelay:`${r}ms`}:void 0,children:t})},yC=({title:t,lede:e})=>i.jsxs(dr,{className:"section-head",children:[i.jsx("h2",{className:"display text-[#1f2a22] dark:text-gray-100",children:t}),i.jsx("p",{className:"lede",children:e})]}),rp=({children:t})=>i.jsx("div",{className:"text-honeydew-600 dark:text-honeydew-400 font-bold text-[15px] tracking-[0.2px] mb-2.5 uppercase",children:t}),xC=()=>i.jsx("span",{className:"w-[26px] h-[26px] rounded-full grid place-items-center flex-none bg-honeydew-600 text-white dark:bg-honeydew-400 dark:text-honeydew-950",children:i.jsx("svg",{viewBox:"0 0 24 24",className:"w-3 h-3",fill:"none",stroke:"currentColor",strokeWidth:3.4,strokeLinecap:"round","aria-hidden":"true",children:i.jsx("path",{d:"m4.5 12.5 5 5 10-11"})})}),vC=[{name:"Facebook",position:"left-[1%] sm:left-[10%] lg:left-[15%] top-[7%]",size:"h-[62px] w-[62px] sm:h-[84px] sm:w-[84px]",iconSize:"h-10 w-10 sm:h-14 sm:w-14",iconOffset:"-translate-x-[2px]",surface:"bg-gradient-to-br from-[#70ACFF] via-[#1877F2] to-[#0753C7] text-white",icon:i.jsx("svg",{viewBox:"0 0 24 24",fill:"
710currentColor","aria-hidden":"true",children:i.jsx("path",{d:"M13.5 21v-7.5h2.6l.4-3h-3V8.6c0-.9.3-1.5 1.5-1.5h1.6V4.4c-.3 0-1.3-.1-2.4-.1-2.4 0-4 1.5-4 4.1v2.1H7.5v3h2.7V21h3.3z"})})},{name:"TikTok",position:"left-[-5%] sm:left-[-1%] lg:left-[2%] top-[35%]",size:"h-[58px] w-[58px] sm:h-[70px] sm:w-[70px]",iconOffset:"-translate-x-[2px]",surface:"bg-gradient-to-br from-[#25F4EE] via-[#141414] to-[#FE2C55] text-white",icon:i.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:i.jsx("path",{d:"M16.5 3c.4 2.2 1.7 3.6 3.9 3.8v2.5c-1.3.1-2.6-.2-3.8-.9v5.9c0 4.3-3.6 6.9-7.1 5.6-2.4-.9-3.7-3.3-3.4-5.8.3-2.4 2.3-4.3 4.7-4.5.5 0 .9 0 1.4.1v2.7c-1.7-.5-3.2.5-3.4 2-.2 1.4.8 2.6 2.2 2.8 1.4.1 2.6-.9 2.7-2.3V3h2.8z"})})},{name:"YouTube",position:"left-[2%] sm:left-[7%] lg:left-[11%] top-[57%]",size:"h-[59px] w-[59px] sm:h-[74px] sm:w-[74px]",surface:"bg-gradient-to-br from-[#FF7A7A] via-[#FF0000] to-[#A90000] text-white",icon:i.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.9,strokeLinejoin:"round","aria-hidden":"true",children:[i.jsx("rect",{x:"2.5",y:"5",width:"19",height:"14",rx:"4"}),i.jsx("path",{d:"m10.5 9.2 4.5 2.8-4.5 2.8V9.2z",fill:"currentColor",stroke:"none"})]})},{name:"Images",position:"left-[3%] sm:left-[13%] lg:left-[19%] top-[78%]",size:"h-[60px] w-[60px] sm:h-[78px] sm:w-[78px]",surface:"bg-gradient-to-br from-[#7357FF] to-[#42A5F5] text-white",icon:i.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.9,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[i.jsx("rect",{x:"3",y:"4",width:"18",height:"16",rx:"3"}),i.jsx("path",{d:"m5 16 4-4 3 3 3-3 4 4"}),i.jsx("circle",{cx:"9",cy:"9",r:"1.4"})]})},{name:"Instagram",position:"right-[-2%] sm:right-[7%] lg:right-[10%] top-[17%]",size:"h-[64px] w-[64px] sm:h-[88px] sm:w-[88px]",surface:"bg-gradient-to-br from-[#833AB4] via-[#E1306C] to-[#FCAF45] text-white",icon:i.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.9,"aria-hidden":"true",children:[i.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"5"}),i.jsx("circle",{cx:"12",cy:"12",r:"4"}),i.jsx("circle",{cx:"17.2",cy:"6.8",r:"1.1",fill:"currentColor",stroke:"none"})]})},{name:"Pinterest",position:"right-0 sm:right-[3%] lg:right-[5%] top-[51%]",size:"h-[58px] w-[58px] sm:h-[72px] sm:w-[72px]",iconOffset:"-translate-x-[2px]",surface:"bg-gradient-to-br from-[#FF778B] via-[#E60023] to-[#8F0017] text-white",icon:i.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:i.jsx("path",{d:"M12 2a10 10 0 0 0-3.65 19.31c-.09-1.64-.02-3.61.41-5.44l1.29-5.47s-.33-.66-.33-1.63c0-1.53.89-2.67 1.99-2.67.94 0 1.39.7 1.39 1.55 0 .94-.6 2.35-.91 3.66-.26 1.09.55 1.98 1.63 1.98 1.96 0 3.46-2.07 3.46-5.06 0-2.65-1.9-4.5-4.63-4.5-3.16 0-5.02 2.36-5.02 4.81 0 .95.37 1.98.83 2.54.09.11.1.2.07.31l-.31 1.28c-.05.21-.17.25-.4.15-1.48-.69-2.41-2.84-2.41-4.57 0-3.72 2.7-7.14 7.79-7.14 4.09 0 7.27 2.92 7.27 6.83 0 4.07-2.56 7.34-6.11 7.34-1.19 0-2.31-.62-2.69-1.35l-.73 2.79c-.27 1.02-.99 2.3-1.47 3.08A10 10 0 1 0 12 2z"})})},{name:"Websites",position:"right-[7%] sm:right-[16%] lg:right-[20%] top-[76%]",size:"h-[61px] w-[61px] sm:h-[80px] sm:w-[80px]",surface:"bg-gradient-to-br from-[#75B69E] to-[#326251] text-white",icon:i.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.9,strokeLinecap:"round","aria-hidden":"true",children:[i.jsx("circle",{cx:"12",cy:"12",r:"9"}),i.jsx("path",{d:"M3.5 9.5h17M3.5 14.5h17M12 3c2.4 2.6 3.6 5.6 3.6 9s-1.2 6.4-3.6 9c-2.4-2.6-3.6-5.6-3.6-9S9.6 5.6 12 3z"})]})}],bC=()=>i.jsx("section",{className:"ellie-section",children:i.jsxs("div",{className:"wrap-ellie",children:[i.jsxs("div",{className:"section-head",children:[i.jsx(pC,{}),i.jsx("p",{className:"lede",children:"A Reel, a TikTok, a screenshot, a photo of a cookbook page, a link a friend sent you. If there's a recipe in it, Honeydew can read it."})]}),i.jsx(dr,{children:i.jsxs("div",{className:"relative isolate mx-auto h-[660px] sm:h-[790px] max-w-[860px] overflow-visible",children:[i.jsx("div",{"aria-hidden":"true",className:"absolute left-1/2 top-[42%] z-0 h-[520px] sm:h-[640px] w-[min(720px,96vw)] -translate-x-1/2 -translate-y-1/2 roun
710ded-[50%] border border-dashed border-honeydew-500/20 dark:border-honeydew-300/15"}),i.jsxs("div",{"aria-hidden":"true",className:"absolute left-1/2 top-[43%] z-[1] h-[760px] sm:h-[860px] w-[min(940px,120vw)] -translate-x-1/2 -translate-y-1/2 opacity-[.85] dark:opacity-70 pointer-events-none",children:[i.jsx("span",{className:"absolute left-[5%] top-[3%] h-[280px] w-[280px] sm:h-[350px] sm:w-[350px] rounded-full bg-[#1877F2]/24 blur-[105px] sm:blur-[135px]"}),i.jsx("span",{className:"absolute left-[28%] top-[2%] h-[340px] w-[340px] sm:h-[440px] sm:w-[440px] rounded-full blur-[105px] sm:blur-[135px]",style:{backgroundColor:"rgba(66,133,255,.56)"}}),i.jsx("span",{className:"absolute -left-[5%] top-[28%] h-[270px] w-[270px] sm:h-[330px] sm:w-[330px] rounded-full bg-[#25F4EE]/28 blur-[105px] sm:blur-[135px]"}),i.jsx("span",{className:"absolute left-[5%] top-[51%] h-[260px] w-[260px] sm:h-[320px] sm:w-[320px] rounded-full bg-[#FF0000]/30 blur-[100px] sm:blur-[130px]"}),i.jsx("span",{className:"absolute bottom-[-7%] left-[15%] h-[280px] w-[280px] sm:h-[350px] sm:w-[350px] rounded-full bg-[#7357FF]/30 blur-[105px] sm:blur-[135px]"}),i.jsx("span",{className:"absolute right-[-1%] top-[8%] h-[360px] w-[360px] sm:h-[460px] sm:w-[460px] rounded-full bg-[#E1306C]/46 blur-[115px] sm:blur-[145px]"}),i.jsx("span",{className:"absolute -right-[5%] top-[39%] h-[330px] w-[330px] sm:h-[420px] sm:w-[420px] rounded-full bg-[#E60023]/40 blur-[110px] sm:blur-[140px]"}),i.jsx("span",{className:"absolute bottom-[2%] right-[-5%] h-[400px] w-[400px] sm:h-[520px] sm:w-[520px] rounded-full blur-[105px] sm:blur-[135px]",style:{backgroundColor:"rgba(69,196,142,.66)"}}),i.jsx("span",{className:"absolute right-[10%] top-[17%] h-[230px] w-[230px] sm:h-[300px] sm:w-[300px] rounded-full bg-[#FCAF45]/34 blur-[95px] sm:blur-[120px]"})]}),i.jsx("ul",{className:"absolute inset-0 z-[3]","aria-label":"Import recipes from Facebook, TikTok, YouTube, Instagram, Pinterest, websites, and images",children:vC.map(t=>i.jsx("li",{className:`absolute ${t.position}`,"aria-label":t.name,children:i.jsx("span",{className:`grid ${t.size} place-items-center rounded-full border-[3px] border-white shadow-[0_16px_34px_rgba(24,42,34,.22)] dark:shadow-[0_18px_38px_rgba(0,0,0,.46)] ${t.surface}`,children:i.jsx("span",{className:`${t.iconSize??"h-8 w-8 sm:h-12 sm:w-12"} ${t.iconOffset??""} [&>svg]:h-full [&>svg]:w-full [&>svg]:overflow-visible`,children:t.icon})})},t.name))}),i.jsx("div",{className:"absolute left-1/2 top-0 z-[2] w-[270px] -translate-x-1/2 sm:w-[350px]",children:i.jsxs("div",{className:"relative overflow-hidden rounded-[44px] sm:rounded-[55px] border-[6px] sm:border-[8px] border-[#242625] bg-[#242625] p-[2px] shadow-[0_34px_80px_rgba(27,43,33,.24),0_10px_28px_rgba(18,25,21,.16)] dark:shadow-[0_36px_90px_rgba(0,0,0,.62)]",style:{WebkitMaskImage:"linear-gradient(to bottom,#000 0%,#000 79%,rgba(0,0,0,.92) 85%,rgba(0,0,0,.42) 94%,transparent 100%)",maskImage:"linear-gradient(to bottom,#000 0%,#000 79%,rgba(0,0,0,.92) 85%,rgba(0,0,0,.42) 94%,transparent 100%)"},children:[i.jsx("img",{src:"/honeydew-all-recipes-mobile.webp",alt:"Honeydew All Recipes screen showing a searchable collection of saved recipes",className:"block h-auto w-full rounded-[36px] sm:rounded-[45px]",loading:"lazy"}),i.jsx("span",{"aria-hidden":"true",className:"absolute left-1/2 top-[11px] sm:top-[14px] h-[18px] sm:h-[23px] w-[76px] sm:w-[98px] -translate-x-1/2 rounded-full bg-black/95 shadow-[0_1px_2px_rgba(255,255,255,.12)]"})]})})]})})]})}),wC=()=>i.jsxs("div",{className:"flex isolate items-center justify-center","aria-hidden":"true",children:[i.jsx("span",{className:"z-0 grid h-12 w-12 -rotate-6 place-items-center rounded-[15px] border-2 border-white bg-[#f2eee8] shadow-[0_12px_26px_rgba(217,119,87,.24)] sm:h-14 sm:w-14",children:i.jsx("img",{src:"https://unpkg.com/@lobehub/[email protected]/icons/claude-color.svg",alt:"",className:"h-7 w-7 sm:h-8 sm:w-8"})}),i.jsx("span",{className:"z-10 -ml-4 grid h-12 w-12 rotate-3 place-items-center rounded-[15px] border-2 border-white bg-white text-[#101211] shadow-[0_12px_26px_rgba(23,25,24,.18)] sm:h-14 sm:w-14",children:i.jsx("img",{src:"https://unpkg.com/@lobehub/[email protected]/icons/openai.svg",alt:"",className:"h-7 w-7 sm:h-8 sm:w-8"})}),i.jsx("span",{className:"relative z-30 -ml-4 grid h-[68px] w-[68px] place-items-center overflow-hidden rounded-[21px] border-2 border-white bg-[#eff8f1] shadow-[0_18px_40px_rgba(43,113,78,.24)] sm:h-[78px] sm:w-[78px]",children:i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"",className:"h-full w-full object-cover"})}),i.jsx("span",{className:"z-20 -ml-4 grid h-12 w-12 -rotate-3 place-items-center rounded-[15p
710x] border-2 border-white bg-[#f4f7ff] shadow-[0_12px_26px_rgba(77,112,214,.18)] sm:h-14 sm:w-14",children:i.jsx("img",{src:"https://unpkg.com/@lobehub/[email protected]/icons/gemini-color.svg",alt:"",className:"h-7 w-7 sm:h-8 sm:w-8"})}),i.jsx("span",{className:"z-0 -ml-4 grid h-12 w-12 rotate-6 place-items-center rounded-[15px] border-2 border-white bg-[#f5f5f3] shadow-[0_12px_26px_rgba(23,25,24,.16)] sm:h-14 sm:w-14",children:i.jsx("img",{src:"https://unpkg.com/@lobehub/[email protected]/icons/grok.svg",alt:"",className:"h-7 w-7 sm:h-8 sm:w-8"})})]}),_C=()=>i.jsx("section",{className:"ellie-section pt-0 md:pt-10",children:i.jsx("div",{className:"wrap-ellie",children:i.jsx(dr,{children:i.jsxs("div",{className:"relative isolate overflow-hidden rounded-[32px] border border-honeydew-700/10 bg-gradient-to-br from-[#eef8f1] via-[#f7fbf8] to-[#e2f2e8] px-6 py-8 shadow-[0_24px_65px_rgba(36,83,61,.12)] dark:border-white/10 dark:from-[#14231b] dark:via-[#101713] dark:to-[#182b21] sm:px-9 lg:px-12 lg:py-9",children:[i.jsx("span",{className:"pointer-events-none absolute -left-16 -top-24 -z-10 h-64 w-64 rounded-full bg-[#70acff]/20 blur-[80px] dark:bg-[#70acff]/12"}),i.jsx("span",{className:"pointer-events-none absolute -bottom-28 right-[9%] -z-10 h-72 w-72 rounded-full bg-honeydew-400/30 blur-[90px] dark:bg-honeydew-400/14"}),i.jsxs("div",{className:"grid items-center gap-8 lg:grid-cols-[260px_minmax(0,1fr)_auto] lg:gap-10",children:[i.jsx(wC,{}),i.jsxs("div",{className:"text-center lg:text-left",children:[i.jsx("p",{className:"mb-2 text-[11px] font-black uppercase tracking-[0.16em] text-honeydew-700 dark:text-honeydew-300",children:"Honeydew MCP"}),i.jsx("h2",{className:"display text-[clamp(28px,3.2vw,42px)] leading-[1.02] text-[#1f2a22] dark:text-gray-100",children:"Your cookbook, wherever you ask."}),i.jsx("p",{className:"mt-3 max-w-[620px] text-[15px] font-medium leading-6 text-[#5d6861] dark:text-white/55 sm:text-[16px]",children:"Connect Honeydew to Claude, ChatGPT, and other AI assistants. Ask about your saved recipes in plain language."})]}),i.jsx("div",{className:"flex flex-col items-center gap-3 lg:items-end",children:i.jsxs(ae,{to:"/mcp",className:"inline-flex min-h-12 items-center justify-center gap-2 rounded-full bg-[#1f2a22] px-6 text-[14px] font-bold text-white shadow-[0_7px_0_#75b69e] transition hover:-translate-y-0.5 hover:bg-[#2c3b31] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 focus-visible:ring-offset-2 dark:bg-honeydew-300 dark:text-[#142019] dark:shadow-[0_7px_0_#326251] dark:hover:bg-honeydew-200",children:["Connect Honeydew",i.jsx(ir,{className:"h-4 w-4"})]})})]})]})})})}),jC=[[{name:"Banana Strawberry Oats",image:"recipe_oats_strawberry",time:10,servings:1},{name:"Creamy Carbonara",image:"recipe_carbonara",time:25,servings:4},{name:"Lamb Chops Dinner",image:"recipe_lamb_chops",time:30,servings:2},{name:"Healthy Chicken Meal Prep",image:"recipe_chicken_meal_prep",time:45,servings:5},{name:"Homestyle Carrots & Mash",image:"recipe_carrots_mash",time:35,servings:2},{name:"Espresso Martini",image:"recipe_espresso_martini",time:5,servings:1}],[{name:"Best Chocolate Waffle",image:"recipe_chocolate_waffle",time:20,servings:2},{name:"Blueberry Açaí Bowl",image:"recipe_acai_bowl",time:8,servings:1},{name:"Creamy Iced Latte",image:"recipe_iced_latte",time:5,servings:1},{name:"Pancake Meal Prep",image:"recipe_pancake_meal_prep",time:25,servings:4},{name:"Pumpkin Spice Twist",image:"recipe_pumpkin_spice",time:15,servings:2},{name:"Summer Smoothies",image:"recipe_summer_smoothies",time:5,servings:2}],[{name:"Croissant Sandwiches",image:"recipe_croissant_sandwich",time:15,servings:2},{name:"Chocolate Chip Cookies",image:"recipe_choc_chip_cookies",time:30,servings:12},{name:"Sausage & Egg Meal Prep",image:"recipe_sausage_egg_prep",time:35,servings:3},{name:"Shrimp Caprese Salad",image:"recipe_shrimp_caprese",time:15,servings:2},{name:"Summer Fruit Bowl",image:"recipe_summer_fruit_bowl",time:10,servings:4},{name:"Teriyaki Rice Bowl",image:"recipe_teriyaki_rice",time:25,servings:2}]],kC=({recipe:t})=>i.jsxs("article",{className:"relative aspect-[116/148] w-full overflow-hidden rounded-[15p
710x] bg-[#dfe9e2] shadow-[0_8px_18px_rgba(20,37,28,.14)] ring-1 ring-black/[.05] dark:ring-white/10",children:[i.jsx("img",{src:`/recipe-marquee/${t.image}.webp`,alt:"",className:"h-full w-full object-cover",loading:"lazy"}),i.jsx("div",{className:"absolute inset-0 bg-gradient-to-b from-black/38 via-transparent to-black/72"}),i.jsx("h4",{className:"absolute inset-x-2 top-2 text-[10px] font-extrabold leading-[1.12] text-white drop-shadow-[0_1px_3px_rgba(0,0,0,.7)]",children:t.name}),i.jsxs("div",{className:"absolute bottom-2 left-1/2 flex -translate-x-1/2 items-center gap-1 rounded-full border border-white/30 bg-black/32 px-1.5 py-1 text-[8px] font-bold text-white backdrop-blur-md",children:[i.jsxs("span",{className:"inline-flex items-center gap-0.5 whitespace-nowrap",children:[i.jsx(zn,{className:"h-2.5 w-2.5"}),t.servings]}),i.jsx("span",{className:"h-2.5 w-px bg-white/35"}),i.jsxs("span",{className:"inline-flex items-center gap-0.5 whitespace-nowrap",children:[i.jsx(Fs,{className:"h-2.5 w-2.5"}),t.time,"m"]})]})]}),EC=()=>i.jsx("div",{className:"relative h-[420px] w-full self-stretch overflow-hidden lg:h-full",children:i.jsx("div",{className:"grid h-full grid-cols-3 gap-2 overflow-hidden",children:jC.map((t,e)=>i.jsx("div",{className:"relative min-w-0 overflow-hidden",children:i.jsx("div",{className:e===1?"recipe-marquee-column-down":"recipe-marquee-column-up",style:{animationDuration:`${[42,48,44][e]}s`,animationDelay:`${[0,-17,-26][e]}s`},children:[0,1].map(r=>i.jsx("div",{className:"flex flex-col gap-2 pb-2",children:t.map(s=>i.jsx(kC,{recipe:s},`${r}-${s.name}`))},r))})},e))})}),TC=()=>i.jsx("section",{className:"ellie-section pt-0",children:i.jsxs("div",{className:"wrap-ellie",children:[i.jsxs(dr,{className:"section-head",children:[i.jsxs("div",{className:"mb-7 flex isolate items-center justify-center -space-x-4 sm:-space-x-6","aria-hidden":"true",children:[i.jsx("span",{className:"z-0 grid h-[68px] w-[68px] place-items-center rounded-full border-2 border-white/80 bg-[#aaa4df] text-[38px] shadow-[0_12px_28px_rgba(64,54,120,.14)] sm:h-[82px] sm:w-[82px] sm:text-[46px]",children:"👨🏼‍🦳"}),i.jsx("span",{className:"z-10 grid h-[72px] w-[72px] place-items-center rounded-full border-2 border-white/80 bg-[#a9d8c8] text-[40px] shadow-[0_12px_28px_rgba(48,108,86,.14)] sm:h-[88px] sm:w-[88px] sm:text-[49px]",children:"👩🏽"}),i.jsx("span",{className:"relative z-30 grid h-[92px] w-[92px] place-items-center rounded-full border-2 border-white/80 bg-gradient-to-br from-[#ffd21c] via-[#ffae0b] to-[#ff8b00] shadow-[0_16px_34px_rgba(255,151,0,.32),inset_0_1px_2px_rgba(255,255,255,.65)] sm:h-[112px] sm:w-[112px]",children:i.jsx("svg",{viewBox:"0 0 24 24",className:"h-12 w-12 text-white drop-shadow-[0_3px_3px_rgba(190,92,0,.22)] sm:h-[58px] sm:w-[58px]",fill:"currentColor",children:i.jsx("path",{d:"m12 2.7 2.72 5.51 6.08.88-4.4 4.29 1.04 6.06L12 16.58l-5.44 2.86 1.04-6.06-4.4-4.29 6.08-.88L12 2.7Z"})})}),i.jsx("span",{className:"z-10 grid h-[72px] w-[72px] place-items-center rounded-full border-2 border-white/80 bg-[#f5d68d] text-[40px] shadow-[0_12px_28px_rgba(138,99,31,.14)] sm:h-[88px] sm:w-[88px] sm:text-[49px]",children:"👩🏾"}),i.jsx("span",{className:"z-0 grid h-[68px] w-[68px] place-items-center rounded-full border-2 border-white/80 bg-[#f4d8c9] text-[38px] shadow-[0_12px_28px_rgba(132,75,49,.14)] sm:h-[82px] sm:w-[82px] sm:text-[46px]",children:"👩🏻‍🦰"})]}),i.jsx("h2",{className:"display text-[#1f2a22] dark:text-gray-100",children:"Share with everyone in the house"}),i.jsx("p",{className:"lede",children:"Everybody in the house can search through each other's saved recipes and contribute to the grocery list and meal plan."})]}),i.jsx(dr,{children:i.jsx("div",{className:"ellie-card overflow-hidden rounded-ellie-lg p-0 lg:h-[460px]",children:i.jsxs("div",{className:"grid h-full items-stretch lg:grid-cols-[minmax(0,1fr)_390px]",children:[i.jsxs("div",{className:"p-6 md:p-10 lg:p-12",children:[i.jsxs("div",{className:"mb-2.5 flex items-center gap-2 text-honeydew-700 dark:text-honeydew-300",children:[i.jsx(Un,{className:"h-4 w-4 flex-none",strokeWidth:2.5}),i.jsx("div",{className:"mb-0 text-[15px] font-bold uppercase tracking-[0.2px]",children:"Every recipe, understood"})]}),i.jsx("h3",{className:"display text-[clamp(28px,3.4vw,40px)] text-[#1f2a22] dark:text-gray-100",children:"Never lose a recipe again"}),i.jsx("p",{className:"lede mt-4",children:"Honeydew reads each recipe as it saves it, so everything inside stays findable long after you have forgotten where it came from."}),i.jsx("div",{className:"flex flex-col gap-4 mt-7",children:["Full ingredient lists","Step-by-step instructions","Times, servings and notes","Smart tags & collections"].map(t=>i.jsxs("div",{className:"flex items-center gap-3.5 text-[clamp(17px,2vw,22px)] font-bold text-[#1f2a22] dark:text-gray-100",children:[i.jsx(xC,{}),t]},t))})]}),i.jsx(EC,{})]})})})]})}),AC=[{day:"Monday",meals:[{title:"Banana Strawberry Oats",image:"recipe_oats_strawberry",meal:"Breakfast",time:10},{title:"Croissant Sandwiches",image:"recipe_croissant_sandwich",meal:"Lunch",time:15},{title:"Summer Fruit Bowl",image:"recipe_summer_fruit_bowl",meal:"Snack",time:10}]},{day:"Wednesday",meals:[{title:"Teriyaki Rice Bowl",image:"recipe_teriyaki_rice",meal:"Dinner",time:25}]},{day:"Friday",meals:[{title:"Shrimp Caprese Salad",image:"recipe_shrimp_caprese",meal:"Lunch",time:15},{title:"Creamy Carbonara",image:"recipe_carbonara",meal:"Dinner",time:25}]}],NC={Breakfast:"bg-amber-500/14 text-amber-700 dark:bg-amber-400/15 dark:text-amber-300",Lunch:"bg-sky-500/14 text-sky-700 dark:bg-sky-400/15 dark:text-sky-300",Snack:"bg-rose-500/14 text-rose-700 dark:bg-rose-400/15 dark:text-rose-300",Dinner:"bg-violet-500/14 text-violet-700 dark:bg-violet-400/15 dark:text-violet-300"},sp=({name:t})=>i.jsxs("span",{className:"inline-flex h-5 max-w-[112px] items-center gap-1 rounded-full bg-black/[.055] px-2 text-[9px] font-semibold text-black/45 dark:bg-white/[.08] dark:text-white/45",children:[i.jsx(nm,{className:"h-2.5 w-2.5 flex-none"}),i.jsx("span",{className:"truncate",children:t})]}),CC=({item:t})=>{const e=!!(t.stackCount&&t.stackCount>=2),r=e&&!t.expanded;return i.jsxs("div",{"data-grocery-item":t.id,className:`relative transition-opacity duration-300 ${t.checked?"opacity-60":"opacity-100"}`,children:[i.jsxs("div",{className:`relative transition-[padding] duration-500 ease-out ${r?"pb-2.5":"pb-0"}`,children:[r?i.jsx("span",{"aria-hidden":"true",className:"absolute inset-x-2 top-2 h-14 roun
710ded-[15px] border border-black/[.07] bg-white/90 shadow-[0_5px_13px_rgba(20,32,25,.08)] dark:border-white/[.08] dark:bg-[#202221] dark:shadow-[0_6px_15px_rgba(0,0,0,.28)]"}):null,i.jsxs("div",{className:"relative z-10 flex h-14 items-center gap-2 rounded-[16px] border border-black/[.055] bg-white px-3 shadow-[0_3px_14px_rgba(20,32,25,.10)] dark:border-white/[.07] dark:bg-[#242625] dark:shadow-[0_5px_17px_rgba(0,0,0,.3)]",children:[i.jsx("span",{className:`grid h-6 w-6 flex-none place-items-center rounded-full border-2 transition-all duration-300 ${t.checked?"border-[#45a374] bg-[#45a374] text-white shadow-[0_0_0_4px_rgba(69,163,116,.12)]":"border-black/20 text-transparent dark:border-white/25"}`,children:i.jsx("svg",{viewBox:"0 0 24 24",className:"h-3 w-3",fill:"none",stroke:"currentColor",strokeWidth:3.4,strokeLinecap:"round","aria-hidden":"true",children:i.jsx("path",{d:"m4.5 12.5 5 5 10-11"})})}),i.jsx("span",{className:"flex-none whitespace-nowrap text-[13px] font-bold text-honeydew-700 dark:text-honeydew-300",children:t.amount}),i.jsxs("div",{className:"min-w-0 flex-1",children:[i.jsx("div",{className:`truncate text-[14px] font-medium text-[#1f2a22] transition-[text-decoration-color] duration-300 dark:text-gray-100 ${t.checked?"line-through decoration-black/35 dark:decoration-white/35":""}`,children:t.name}),i.jsx("div",{className:"mt-0.5 flex min-w-0 gap-1",children:t.recipes.map(s=>i.jsx(sp,{name:s},s))})]}),e?i.jsxs("span",{className:"inline-flex h-7 flex-none items-center gap-1 rounded-full bg-honeydew-100 px-2.5 text-[10px] font-bold text-honeydew-800 dark:bg-honeydew-500/15 dark:text-honeydew-300",children:[t.stackCount," items",i.jsx(Wf,{className:`h-3 w-3 transition-transform duration-500 ${t.expanded?"rotate-180":"rotate-0"}`,strokeWidth:2.6})]}):null]})]}),e?i.jsx("div",{className:`grid transition-[grid-template-rows,opacity,margin] duration-500 ease-out ${t.expanded?"mt-2 grid-rows-[1fr] opacity-100":"mt-0 grid-rows-[0fr] opacity-0"}`,children:i.jsx("div",{className:"overflow-hidden",children:i.jsx("div",{className:"ml-8 mr-2 space-y-1.5 rounded-[14px] border border-black/[.055] bg-black/[.025] p-2 dark:border-white/[.07] dark:bg-white/[.035]",children:[{amount:"1 cup",recipe:"Pasta Marinara"},{amount:"2 cups",recipe:"Cherry Pie"}].map(s=>i.jsxs("div",{className:"flex h-8 items-center gap-2 rounded-[10px] bg-white/80 px-2.5 dark:bg-[#242625]",children:[i.jsx("span",{className:"w-12 flex-none text-[10px] font-bold text-honeydew-700 dark:text-honeydew-300",children:s.amount}),i.jsx(sp,{name:s.recipe})]},s.recipe))})})}):null]})},np=({name:t,color:e,left:r,top:s,tapping:n,labelSide:a="right"})=>i.jsx("div",{"aria-hidden":"true","data-collaborator":t,className:"pointer-events-none absolute z-30 transition-[left,top] duration-700 ease-[cubic-bezier(.22,1,.36,1)]",style:{left:r,top:s},children:i.jsxs("div",{className:`relative transition-transform duration-150 ${n?"scale-[.82]":"scale-100"}`,children:[n?i.jsx("span",{className:"absolute -left-2 -top-2 h-5 w-5 animate-ping rounded-full opacity-35",style:{backgroundColor:e}}):null,i.jsx("svg",{viewBox:"0 0 30 32",className:"h-7 w-7 drop-shadow-[0_3px_5px_rgba(0,0,0,.2)]","aria-hidden":"true",children:i.jsx("path",{d:"M4.2 2.8 25.1 18l-9.2 1.7-5.1 8.3L4.2 2.8Z",fill:e,stroke:"white",strokeWidth:"2.2",strokeLinejoin:"round"})}),i.jsx("span",{className:`absolute top-4 whitespace-nowrap rounded-full px-2.5 py-1 text-[10px] font-bold text-white shadow-[0_5px_14px_rgba(0,0,0,.18)] ${a==="left"?"right-5":"left-5"}`,style:{backgroundColor:e},children:t})]})}),SC=()=>{const[t,e]=S.useState(0);S.useEffect(()=>{if(window.matchMedia("(prefers-reduced-motion: reduce)").matches){e(0);return}const l=[1200,900,500,850,550,1900,900];let c,d=0;const u=()=>{c=window.setTimeout(()=>{d=(d+1)%l.length,e(d),u()},l[d])};return u(),()=>window.clearTimeout(c)},[]);const r=t>=2&&t<=5,s=t>=4&&t<=5,n=[{id:"tomatoes",name:"Tomatoes",amount:"8",section:"Produce",recipes:["Pasta Marinara"],checked:r},{id:"cherries",name:"Cherries",amount:"5 cups",section:"Produce",recipes:["Cherry Pie"]}],a=[{id:"butter",name:"Butter",amount:"1 stick",section:"Dairy",recipes:["Cherry Pie"]},{id:"milk",name:"Milk",amount:"3 cups",section:"Dairy",recipes:["Pasta Marinara","Cherry Pie"],stackCount:2,expanded:s}],o=(l,c,d)=>c.length?i.jsxs("div",{className:"space-y-2",children:[i.jsxs("div",{className:"flex items-center gap-2 px-1 text-[#1f2a22] dark:text-gray-100",children:[i.jsx(d,{className:"h-4 w-4",strokeWidth:2.3}),i.jsx("span",{className:"text-[14px] font-bold",children:l})]}),i.jsx("div",{className:"space-y-2",children:c.map(u=>i.jsx(CC,{item:u},u.id))})]}):null;return i.jsxs("div",{className:"relative mt-8 min-h-[410px] space-y-4","data-demo-phase":t,"aria-label":"A shared grocery list where Chris checks tomatoes while Chelsea expands the combined milk item",children:[i.jsxs("div",{className:"relative z-10 space-y-4",children:[o("Produce",n,Zf),o("Dairy",a,Fb)]}),i.jsx(np,{name:"Chris",color:"#4f7cff",left:t===1||t===2?"23px":t>
710=3&&t<=5?"68%":"78%",top:t===1||t===2?"54px":t>=3&&t<=5?"112px":"8px",tapping:t===2}),i.jsx(np,{name:"Chelsea",color:"#df5eab",left:t===3||t===4?"calc(100% - 48px)":t===5?"30%":"15%",top:t===3||t===4?"285px":t===5?"360px":"195px",tapping:t===4,labelSide:"left"})]})},PC=()=>i.jsx("section",{className:"ellie-section pt-0",children:i.jsxs("div",{className:"wrap-ellie",children:[i.jsx(yC,{title:"From recipe to grocery list",lede:"Pick your recipes for the week, and Honeydew builds one organized grocery list with quantities combined and everything grouped by aisle."}),i.jsx(dr,{children:i.jsxs("div",{className:"grocery-story grid min-w-0 grid-cols-[minmax(0,1fr)] gap-6 lg:grid-cols-2",children:[i.jsxs("div",{className:"ellie-card min-w-0 rounded-ellie-md p-5 md:p-10",children:[i.jsx(rp,{children:"Plan the week"}),i.jsx("h3",{className:"display text-[clamp(24px,2.6vw,34px)] text-[#1f2a22] dark:text-gray-100",children:"Drop recipes onto days"}),i.jsx("p",{className:"lede text-[17px] mt-3.5",children:"Add breakfast, lunch, snacks, and dinner to the week. Move anything later, and your grocery list updates with it."}),i.jsx("div",{className:"mt-8 space-y-5",children:AC.map(t=>i.jsxs("div",{children:[i.jsx("div",{className:"mb-2 text-[11px] font-bold uppercase tracking-[.7px] text-honeydew-700 dark:text-honeydew-300",children:t.day}),i.jsx("div",{className:"grid gap-2 sm:grid-cols-2",children:t.meals.map(e=>i.jsxs("div",{className:"flex min-w-0 items-center gap-3 rounded-[16px] border border-honeydew-500/10 bg-honeydew-50/70 p-2.5 dark:border-white/10 dark:bg-white/[.04]",children:[i.jsx("img",{src:`/recipe-marquee/${e.image}.webp`,alt:"",className:"h-14 w-14 flex-none rounded-[12px] object-cover",loading:"lazy"}),i.jsxs("div",{className:"flex min-w-0 flex-1 flex-col justify-center",children:[i.jsx("div",{className:"line-clamp-2 text-[12.5px] font-bold leading-tight text-[#1f2a22] dark:text-gray-100",children:e.title}),i.jsxs("div",{className:"mt-1.5 flex items-center gap-1.5",children:[i.jsx("span",{className:`rounded-full px-2 py-0.5 text-[9.5px] font-bold ${NC[e.meal]}`,children:e.meal}),i.jsxs("span",{className:"inline-flex items-center gap-0.5 text-[9.5px] font-semibold text-black/40 dark:text-white/40",children:[i.jsx(Fs,{className:"h-2.5 w-2.5"}),e.time,"m"]})]})]})]},`${t.day}-${e.title}`))})]},t.day))})]}),i.jsxs("div",{className:"ellie-card min-w-0 rounded-ellie-md p-5 md:p-10",children:[i.jsx(rp,{children:"One trip, one list"}),i.jsx("h3",{className:"display text-[clamp(24px,2.6vw,34px)] text-[#1f2a22] dark:text-gray-100",children:"Your groceries, sorted by aisle"}),i.jsx("p",{className:"lede text-[17px] mt-3.5",children:"Ingredients from every recipe become one shared list, organized and ready for whoever is shopping."}),i.jsx(SC,{})]})]})})]})}),RC=()=>i.jsxs("section",{className:"relative overflow-hidden text-center pt-16 pb-16 md:pt-[130px] md:pb-[120px]",children:[i.jsx("div",{"aria-hidden":"true",className:"absolute inset-0 pointer-events-none bg-gradient-to-b from-transparent via-honeydew-100/40 to-transparent dark:via-honeydew-900/20"}),i.jsx("div",{className:"relative wrap-ellie",children:i.jsxs(dr,{className:"flex flex-col items-center",children:[i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"Honeydew app icon",width:96,height:96,className:"w-24 h-24 rounded-[24px] mb-[30px] shadow-[0_24px_56px_rgba(27,43,33,.18)]"}),i.jsx("h2",{className:"display text-[#1f2a22] dark:text-gray-100",children:"Your cookbook starts here"}),i.jsx("p",{className:"lede mt-[18px] mb-8 mx-auto",children:"Save it once, cook it all week. Honeydew is free on iPhone and Android."}),i.jsxs("a",{href:tp,target:"_blank",rel:"noopener noreferrer",className:"btn-pill bg-[#111214] text-white dark:bg-white dark:text-[#0b0b0c]",children:[i.jsx("svg",{viewBox:"0 0 24 24",className:"w-[18px] h-[18px] fill-current","aria-hidden":"true",children:i.jsx("path",{d:"M17.05 12.54c-.03-2.89 2.36-4.28 2.47-4.35-1.35-1.97-3.44-2.24-4.18-2.27-1.78-.18-3.47 1.05-4.37 1.05-.9 0-2.29-1.02-3.77-1-1.94.03-3.72 1.13-4.72 2.86-2.01 3.49-.51 8.66 1.45 11.49.96 1.39 2.1 2.94 3.6 2.88 1.45-.06 1.99-.93 3.74-.93s2.24.93 3.77.9c1.56-.03 2.54-1.41 3.49-2.8 1.1-1.6 1.55-3.16 1.57-3.24-.03
710-.02-3.02-1.16-3.05-4.59zM14.16 4.06c.8-.97 1.34-2.31 1.19-3.65-1.15.05-2.55.77-3.38 1.73-.74.86-1.39 2.23-1.22 3.54 1.29.1 2.6-.65 3.41-1.62z"})}),"Download Honeydew"]}),i.jsxs("div",{className:"mt-6 flex items-center justify-center gap-3",children:[i.jsx("a",{href:tp,target:"_blank",rel:"noopener noreferrer",className:"rounded-[9px] transition-transform hover:scale-105 dark:ring-1 dark:ring-white/20","aria-label":"Download on the App Store",children:i.jsx("img",{src:mC,alt:"Download on the App Store",className:"h-10 w-auto object-contain"})}),i.jsx("a",{href:fC,target:"_blank",rel:"noopener noreferrer",className:"rounded-[9px] transition-transform hover:scale-105 dark:ring-1 dark:ring-white/20","aria-label":"Get it on Google Play",children:i.jsx("img",{src:gC,alt:"Get it on Google Play",className:"h-10 w-auto object-contain"})})]})]})})]});function OC(t){const e=g.useRef({value:t,previous:t});return g.useMemo(()=>(e.current.value!==t&&(e.current.previous=e.current.value,e.current.value=t),e.current.previous),[t])}function dy(t){const[e,r]=g.useState(void 0);return Dt(()=>{if(t){r({width:t.offsetWidth,height:t.offsetHeight});const s=new ResizeObserver(n=>{if(!Array.isArray(n)||!n.length)return;const a=n[0];let o,l;if("borderBoxSize"in a){const c=a.borderBoxSize,d=Array.isArray(c)?c[0]:c;o=d.inlineSize,l=d.blockSize}else o=t.offsetWidth,l=t.offsetHeight;r({width:o,height:l})});return s.observe(t,{box:"border-box"}),()=>s.unobserve(t)}else r(void 0)},[t]),e}var sd="Checkbox",[IC,b4]=Vs(sd),[DC,LC]=IC(sd),uy=g.forwardRef((t,e)=>{const{__scopeCheckbox:r,name:s,checked:n,defaultChecked:a,required:o,disabled:l,value:c="on",onCheckedChange:d,form:u,...p}=t,[h,f]=g.useState(null),x=Ee(e,j=>f(j)),m=g.useRef(!1),y=h?u||!!h.closest("form"):!0,[b=!1,w]=$s({prop:n,defaultProp:a,onChange:d}),_=g.useRef(b);return g.useEffect(()=>{const j=h==null?void 0:h.form;if(j){const k=()=>w(_.current);return j.addEventListener("reset",k),()=>j.removeEventListener("reset",k)}},[h,w]),i.jsxs(DC,{scope:r,state:b,disabled:l,children:[i.jsx(se.button,{type:"button",role:"checkbox","aria-checked":or(b)?"mixed":b,"aria-required":o,"data-state":fy(b),"data-disabled":l?"":void 0,disabled:l,value:c,...p,ref:x,onKeyDown:re(t.onKeyDown,j=>{j.key==="Enter"&&j.preventDefault()}),onClick:re(t.onClick,j=>{w(k=>or(k)?!0:!k),y&&(m.current=j.isPropagationStopped(),m.current||j.stopPropagation())})}),y&&i.jsx(MC,{control:h,bubbles:!m.current,name:s,value:c,checked:b,required:o,disabled:l,form:u,style:{transform:"translateX(-100%)"},defaultChecked:or(a)?!1:a})]})});uy.displayName=sd;var hy="CheckboxIndicator",py=g.forwardRef((t,e)=>{const{__scopeCheckbox:r,forceMount:s,...n}=t,a=LC(hy,r);return i.jsx(mr,{present:s||or(a.state)||a.state===!0,children:i.jsx(se.span,{"data-state":fy(a.state),"data-disabled":a.disabled?"":void 0,...n,ref:e,style:{pointerEvents:"none",...t.style}})})});py.displayName=hy;var MC=t=>{const{control:e,checked:r,bubbles:s=!0,defaultChecked:n,...a}=t,o=g.useRef(null),l=OC(r),c=dy(e);g.useEffect(()=>{const u=o.current,p=window.HTMLInputElement.prototype,f=Object.getOwnPropertyDescriptor(p,"checked").set;if(l!==r&&f){const x=new Event("click",{bubbles:s});u.indeterminate=or(r),f.call(u,or(r)?!1:r),u.dispatchEvent(x)}},[l,r,s]);const d=g.useRef(or(r)?!1:r);return i.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n??d.current,...a,tabIndex:-1,ref:o,style:{...t.style,...c,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})};function or(t){return t==="indeterminate"}function fy(t){return or(t)?"indeterminate":t?"checked":"unchecked"}var my=uy,VC=py;const gy=g.forwardRef(({className:t,...e},r)=>i.jsx(my,{ref:r,className:q("peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",t),...e,children:i.jsx(VC,{className:q("flex items-center justify-center text-current"),children:i.jsx(Ql,{className:"h-4 w-4"})})}));gy.displayName=my.displayName;function $C({value:t}){return i.jsx("span",{children:t})}function FC({text:t,waitTime:e=2e3,alwaysVisibleCount:r=0}){const[s,n]=g.useState(t.substring(0,r)),[a,o]=g.useState(r),[l,c]=g.useState(!1);return g.useEffect(()=>{if(!l){const d=setTimeout(()=>{c(!0)},e);return()=>clearTimeout(d)}},[l,e]),g.useEffect(()=>{if(l&&a<t.length){const d=setTimeout(()=>{n(t.substring(0,a+1)),o(a+1)},100);return()=>clearTimeout(d)}},[a,t,l]),i.jsx("span",{children:s})}const yy=S.memo(({className:t,children:e,delay:r=1e3,itemsToShow:s=3})=>{const n=ly(),[a,o]=g.useState([]),l=S.Children.toArray(e);return g.useEffect(()=>{if(a.length===0){o(Array.from({length:Math.min(s,l.length)},(d,u)=>u));return}if(n)return;const c=setInterval(()=>{o(d=>{const u=[...d];u.shift();const p=(d[d.length-1]+1)%l.length;return u.push(p),u})},r);return()=>clearInterval(c)},[l.length,r,s,a.length,n]),n?i.jsx("div",{className:q("flex flex-col gap-1",t),children:l.slice(0,s)}):i.jsx("div",{className:q("flex flex-col gap-1 relative",t),style:{minHeight:`${s*40}px`},children:i.jsx(w0,{mode:"popLayout",children:a.map((c,d)=>i.jsx(UC,{position:d,children:l[c]},c))})})});yy.displayName="AnimatedList";function UC({children:t,position:e}){return i.jsx(_t.div,{initial:{opacity:0,y:-20,scale:.9}
710,animate:{opacity:1,y:e*36,scale:1,transition:{type:"spring",stiffness:350,damping:25}},exit:{opacity:0,scale:.8,transition:{duration:.2}},className:"absolute w-full",style:{position:"absolute",top:0},children:t})}const BC=[{day:"Mon",meal:"Angus Burger",time:"50m"},{day:"Tue",meal:"Tikka Masala",time:"2hr"},{day:"Wed",meal:"Tacos",time:"25m"},{day:"Thu",meal:"Glow Bowl",time:"10m"},{day:"Fri",meal:"Mediterranean",time:"45m"}],zC=[{name:"Chicken breasts",amount:"2 lb",checked:!1},{name:"Basil",amount:"1 tsp",checked:!0},{name:"Breadcrumbs",amount:"1/2 cup",checked:!1}];function xr({children:t,className:e}){return i.jsx("div",{className:q("relative w-full overflow-hidden rounded-2xl p-4",e),children:t})}function HC(){return i.jsxs(xr,{className:"flex flex-col bg-honeydew-100 dark:bg-honeydew-900/20",children:[i.jsx("div",{className:"font-bold text-honeydew-700 dark:text-honeydew-400",children:"Highly rated"}),i.jsxs("div",{className:"mt-auto flex justify-end items-baseline",children:[i.jsx("div",{className:"text-4xl font-black text-honeydew-800/80 dark:text-honeydew-300 md:text-6xl",children:i.jsx($C,{value:"4.8"})}),i.jsx("sup",{className:"text-xl text-honeydew-600 dark:text-honeydew-400 ml-1",children:"★"})]})]})}function WC(){const t=[{name:"Spicy Thai Noodles",user:"@sarah_k"},{name:"Grandma's Apple Pie",user:"@mike_chef"},{name:"Vegan Buddha Bowl",user:"@healthy_eats"},{name:"Korean BBQ Tacos",user:"@fusion_fan"},{name:"Classic Tiramisu",user:"@italian_love"},{name:"Honey Garlic Salmon",user:"@quick_meals"},{name:"Mushroom Risotto",user:"@comfort_food"},{name:"Green Smoothie Bowl",user:"@morning_fuel"}];return i.jsxs(xr,{className:"relative flex flex-col bg-gradient-to-br from-honeydew-400 to-honeydew-500 dark:from-honeydew-600/30 dark:to-honeydew-700/30 sm:col-span-2",children:[i.jsx("div",{className:"mb-1",children:i.jsx("strong",{className:"text-lg font-semibold text-white dark:text-honeydew-100",children:"1M+ recipes saved"})}),i.jsx("div",{className:"relative flex-1 min-h-[108px]",children:i.jsx(yy,{delay:2500,itemsToShow:3,children:t.map((e,r)=>i.jsxs("div",{className:"flex items-center gap-2 bg-white/20 dark:bg-honeydew-900/20 backdrop-blur-sm rounded-lg px-2.5 py-1.5 text-white dark:text-honeydew-100",children:[i.jsx(Bf,{className:"size-3.5 text-white/90 dark:text-honeydew-200/90 flex-shrink-0"}),i.jsxs("div",{className:"flex-1 min-w-0",children:[i.jsx("p",{className:"text-xs font-medium truncate",children:e.name}),i.jsxs("p",{className:"text-[10px] text-white/70 dark:text-honeydew-300/60",children:[e.user," just saved"]})]})]},r))})})]})}const ip=[{servings:2,ingredients:["1 cup rice","½ lb chicken","1 tbsp sauce"]},{servings:4,ingredients:["2 cups rice","1 lb chicken","2 tbsp sauce"]},{servings:6,ingredients:["3 cups rice","1½ lb chicken","3 tbsp sauce"]},{servings:8,ingredients:["4 cups rice","2 lb chicken","4 tbsp sauce"]},{servings:6,ingredients:["3 cups rice","1½ lb chicken","3 tbsp sauce"]},{servings:4,ingredients:["2 cups rice","1 lb chicken","2 tbsp sauce"]}];function qC(){const[t,e]=g.useState(0);g.useEffect(()=>{if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;const n=window.setInterval(()=>{e(a=>(a+1)%ip.length)},1300);return()=>window.clearInterval(n)},[]);const r=ip[t],s=(r.servings-2)/6*100;return i.jsxs(xr,{className:"relative flex flex-col bg-pink-100 dark:bg-pink-900/20 overflow-hidden p-3",children:[i.jsx("strong",{className:"relative z-10 text-xs font-semibold text-pink-800 dark:text-pink-200",children:"Scale Recipes Up or Down"}),i.jsxs("div",{className:"mt-2 flex min-h-[118px] flex-1 items-stretch gap-3",children:[i.jsxs("div",{className:"relative mx-1 my-2 w-3 flex-none","aria-hidden":"true",children:[i.jsx("span",{className:"absolute inset-y-0 left-1/2 w-1 -translate-x-1/2 rounded-full bg-pink-300/80 dark:bg-pink-800/80"}),i.jsx("span",{className:"absolute left-1/2 grid h-4 w-4 -translate-x-1/2 translate-y-1/2 place-items-center rounded-full border-2 border-white bg-pink-600 shadow-[0_3px_8px_rgba(190,24,93,.28)] transition-[bottom] duration-700 ease-in-out dark:bg-pink-400",style:{bottom:`${s}%`}})]}),i.jsxs("div",{className:"min-w-0 flex-1",children:[i.jsxs("div",{className:"flex items-center gap-2 rounded-xl bg-white/65 px-2.5 py-2 text-pink-900 shadow-sm dark:bg-black/15 dark:text-pink-100",children:[i.jsx("span",{className:"grid h-7 w-7 place-items-center rounded-full bg-pink-500/15 text-pink-700 dark:text-pink-300",children:i.jsx(zn,{className:"h-4 w-4"})}),i.jsxs("div",{children:[i.jsx("div",{className:"text-[9px] font-bold uppercase tracking-[0.12em] text-pink-600/70 dark:text-pink-300/65",children:"Servings"}),i.jsx("div",{className:"text-lg font-black leading-none transition-all duration-500",children:r.servings})]})]}),i.jsx("div",{className:"mt-2 space-y-1",children:r.ingredients.map((n,a)=>i.jsx("div",{className:"rounded-md bg-white/45 px-2 py-1 text-[10px] font-semibold text-pink-900 transition-all duration-500 dark:bg-black/10 dark:text-pink-100",children:n},a))})]})]})]})}function GC(){return i.jsxs(xr,{className:"flex flex-col gap-3 bg-gradient-to-br from-blue-100 to-blue-200 dark:from-blue-900/30 dark:to-blue-800/30 sm:col-span-2",children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx("div",{className:"text-xl font-black text-blue-800 dark:text-blue-300",children:"Generate grocery list"}
710),i.jsx(Wb,{className:"size-6 text-blue-600 dark:text-blue-400"})]}),i.jsx("div",{className:"space-y-2",children:zC.map((t,e)=>i.jsxs("div",{className:"flex items-center gap-2 bg-white/60 dark:bg-gray-800/40 backdrop-blur-sm rounded-lg px-3 py-2",children:[i.jsx(gy,{checked:t.checked,className:"border-blue-500"}),i.jsxs("span",{className:"text-sm font-medium text-blue-900 dark:text-blue-100",children:[i.jsx("span",{className:"text-blue-600 dark:text-blue-400",children:t.amount})," ",t.name]})]},e))}),i.jsxs("div",{className:"flex items-center justify-between mt-auto",children:[i.jsx("span",{className:"text-2xl font-bold text-blue-700 dark:text-blue-300",children:"35 Items"}),i.jsx("button",{className:"px-3 py-1 bg-blue-500 hover:bg-blue-600 text-white rounded-full text-sm font-medium transition-colors",children:"Auto Sort"})]})]})}function KC(){return i.jsxs(xr,{className:"flex flex-col bg-gradient-to-br from-purple-100 to-purple-200 dark:from-purple-900/30 dark:to-purple-800/30 sm:col-span-2",children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx("h3",{className:"text-xl font-black text-purple-800 dark:text-purple-300",children:"Weekly Meal Plan"}),i.jsx(ac,{className:"size-6 text-purple-600 dark:text-purple-400"})]}),i.jsx("div",{className:"grid grid-cols-5 gap-1.5 my-3",children:BC.map((t,e)=>i.jsxs("div",{className:"flex flex-col bg-white/60 dark:bg-gray-800/40 backdrop-blur-sm rounded-lg p-2 min-h-[80px]",children:[i.jsx("span",{className:"text-xs font-bold text-purple-600 dark:text-purple-400",children:t.day}),i.jsx("span",{className:"text-xs text-purple-900 dark:text-purple-100 truncate mt-1 flex-1",children:t.meal}),i.jsxs("div",{className:"mt-2 space-y-1",children:[i.jsx("div",{className:"bg-purple-400/30 dark:bg-purple-500/30 rounded-full px-2 py-0.5",children:i.jsxs("span",{className:"text-[10px] text-purple-700 dark:text-purple-300 font-medium flex items-center gap-0.5 justify-center",children:[i.jsx(Fs,{className:"size-2.5"}),t.time]})}),i.jsx("div",{className:"bg-purple-300/40 dark:bg-purple-400/40 rounded-full px-2 py-0.5",children:i.jsx("span",{className:"text-[10px] text-purple-700 dark:text-purple-300 font-medium text-center block",children:"Ready"})})]})]},e))}),i.jsx("div",{className:"mt-auto",children:i.jsxs("button",{className:"flex items-center gap-2 px-3 py-1 bg-purple-500 hover:bg-purple-600 text-white rounded-full text-sm font-medium transition-colors",children:[i.jsx(sf,{size:16}),"Quick Add"]})})]})}function YC(){const t=[{question:"Can you meal plan my week?",answer:"Sure, I just planned 4 recipes for you!"},{question:"What's in my grocery list?",answer:"35 items ready - chicken, basil, breadcrumbs..."},{question:"Find quick dinner recipes",answer:"Found 12 recipes under 30 minutes!"}],[e,r]=g.useState(0),[s,n]=g.useState(0);return g.useEffect(()=>{const a=setTimeout(()=>{r(o=>(o+1)%t.length),n(o=>o+1)},7e3);return()=>clearTimeout(a)},[e,t.length]),i.jsxs(xr,{className:"flex flex-col bg-orange-300 dark:bg-orange-900/30",children:[i.jsx(Eb,{className:"size-8 md:size-12 text-orange-700 dark:text-orange-400"}),i.jsx("strong",{className:"mt-1 inline-block text-sm text-orange-900 dark:text-orange-200",children:"Integrated AI"}),i.jsxs("div",{className:"mt-auto",children:[i.jsx("div",{className:"text-sm font-medium text-orange-900 dark:text-orange-100",children:t[e].question}),i.jsx("div",{className:"font-semibold text-orange-900 dark:text-orange-100",children:i.jsx(FC,{text:t[e].answer,waitTime:1e3,alwaysVisibleCount:0},s)})]})]})}function JC(){return i.jsxs(xr,{className:"flex flex-col gap-2 bg-gradient-to-br from-rose-100 to-rose-200 dark:from-rose-900/30 dark:to-rose-800/30",children:[i.jsxs("div",{className:"space-y-2",children:[i.jsx("div",{className:"w-full -rotate-1 rounded-full bg-rose-400 dark:bg-rose-600 py-2 text-center font-semibold text-white text-sm",children:"Quick & Easy"}),i.jsx("div",{className:"w-full rotate-1 rounded-full bg-rose-400 dark:bg-rose-600 py-2 text-center font-semibold text-white text-sm",children:"Vegetarian"}),i.jsx("div",{className:"w-full rounded-full bg-rose-400 dark:bg-rose-600 py-2 text-center font-semibold text-white text-sm",children:"Family Favorite"})]}),i.jsx("div",{className:"text-xs text-center text-rose-700 dark:text-rose-300 font-medium mt
710-auto",children:"Smart categorization"})]})}function XC(){const t=[{label:"Calories",value:90,unit:"",color:"bg-gray-700 dark:bg-gray-600"},{label:"Protein",value:25,unit:"g",color:"bg-orange-500 dark:bg-orange-600"},{label:"Fat",value:16,unit:"g",color:"bg-yellow-500 dark:bg-yellow-600"},{label:"Carbs",value:50,unit:"g",color:"bg-green-500 dark:bg-green-600"},{label:"Fiber",value:3,unit:"g",color:"bg-red-500 dark:bg-red-600"}],e=t.reduce((a,o)=>a+o.value,0),r=.7,s=1.3,n=t.map(a=>({...a,flex:Math.max(r,Math.min(s,.8+a.value/e*1.2))}));return i.jsxs(xr,{className:"relative flex flex-col bg-gradient-to-br from-amber-100 to-amber-200 dark:from-amber-900/30 dark:to-amber-800/30 sm:col-span-2",children:[i.jsxs("div",{className:"flex items-center justify-between mb-3",children:[i.jsxs("div",{children:[i.jsx("div",{className:"text-lg font-black text-amber-800 dark:text-amber-300",children:"Nutrition Tracking"}),i.jsx("p",{className:"text-xs text-amber-700 dark:text-amber-400",children:"Daily nutritional intake"})]}),i.jsx(Hf,{className:"size-4 text-amber-600 dark:text-amber-400"})]}),i.jsx("div",{className:"flex items-stretch justify-between gap-1.5 h-20",children:n.map((a,o)=>i.jsxs("div",{className:`flex flex-col items-center justify-center ${a.color} rounded-xl p-2`,style:{flex:a.flex},children:[i.jsxs("div",{className:"text-xl font-bold text-white",children:[a.value,i.jsx("span",{className:"text-xs font-normal",children:a.unit})]}),i.jsx("div",{className:"text-xs text-white/90 font-medium",children:a.label})]},o))})]})}function ap(){return i.jsx("div",{className:"w-full max-w-6xl mx-auto p-4",children:i.jsxs("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-4",children:[i.jsx(HC,{}),i.jsx(WC,{}),i.jsx(qC,{}),i.jsx(GC,{}),i.jsx(KC,{}),i.jsx(YC,{}),i.jsx(JC,{}),i.jsx(XC,{})]})})}const QC=()=>{const[t,e]=It();return i.jsx("section",{ref:t,className:"ellie-section",children:i.jsxs("div",{className:"container mx-auto px-4",children:[i.jsxs("div",{className:`section-head wrap-ellie rv ${e?"in":""}`,children:[i.jsx("h2",{className:"display text-gray-900 dark:text-gray-100",children:"Everything You Need in One App"}),i.jsx("p",{className:"lede",children:"From recipe capture to meal planning, grocery lists to AI assistance - Honeydew brings all your kitchen needs together seamlessly"})]}),i.jsxs("div",{className:"min-[901px]:hidden mx-auto max-w-xl space-y-3",children:[[["Save it once","Import from social posts, websites, screenshots, and cookbook photos."],["Plan your week","Pick meals and share the plan with your household."],["Shop with one list","Combine ingredients into a grocery list organized by aisle."]].map(([r,s])=>i.jsxs("div",{className:"ellie-card p-5",children:[i.jsx("h3",{className:"text-lg font-bold text-[#1f2a22] dark:text-gray-100",children:r}),i.jsx("p",{className:"mt-1 text-base text-gray-600 dark:text-gray-300",children:s})]},r)),i.jsxs("details",{className:"rounded-2xl border border-honeydew-500/20",children:[i.jsx("summary",{className:"cursor-pointer min-h-11 px-5 py-3 font-semibold text-honeydew-700 dark:text-honeydew-300",children:"Explore more features"}),i.jsx(ap,{})]})]}),i.jsx("div",{className:`hidden min-[901px]:block rv ${e?"in":""}`,style:{transitionDelay:"200ms"},children:i.jsx(ap,{})})]})})},ZC=()=>i.jsx("section",{className:"ellie-section pt-0","aria-labelledby":"alternative-apps-title",children:i.jsx("div",{className:"wrap-ellie",children:i.jsxs(dr,{className:"mx-auto flex max-w-[1120px] flex-col items-center text-center",children:[i.jsx("h2",{id:"alternative-apps-title",className:"display max-w-[1050px] text-[clamp(27px,4.2vw,45px)] text-[#1f2a22] dark:text-gray-100",children:"Are you looking for a ReciMe or Paprika alternative?"}),i.jsx("p",{className:"mt-6 max-w-[900px] text-[clamp(14px,1.6vw,19px)] font-medium leading-[1.48] text-[#66686d] dark:text-[#9b9da1]",children:"Honeydew is a modern, more versatile alternative to apps like ReciMe and Paprika. Import recipes from videos, links, and images with the latest AI models for the most accurate imports and a better-organized library. Honeydew integrates deeply with iOS and Android and has best-in-class integrations for chat services like Claude and ChatGPT."})]})})});function op({className:t,reverse:e,pauseOnHover:r=!1,children:s,vertical:n=!1,repeat:a=4,...o}
710){return i.jsx("div",{...o,className:q("group flex overflow-hidden p-2 [--duration:40s] [--gap:1rem] [gap:var(--gap)]",{"flex-row":!n,"flex-col":n},t),children:Array(a).fill(0).map((l,c)=>i.jsx("div",{className:q("flex shrink-0 justify-around [gap:var(--gap)]",{"animate-marquee flex-row":!n,"animate-marquee-vertical flex-col":n,"group-hover:[animation-play-state:paused]":r,"[animation-direction:reverse]":e}),children:s},c))})}const ea=[{name:"Sarah M.",body:"Honeydew has transformed the way I cook. I'm saving so much time and enjoying new recipes every week!",img:"https://avatar.vercel.sh/sarah"},{name:"Mark T.",body:"I used to waste so much food. Now with Honeydew's meal planning, I buy exactly what I need and save money!",img:"https://avatar.vercel.sh/mark"},{name:"Priya K.",body:"Being able to import recipes from anywhere has built my cookbook faster than I ever imagined.",img:"https://avatar.vercel.sh/priya"},{name:"James L.",body:"The smart grocery lists save me hundreds of dollars a month. I love how it suggests recipes based on what I already have!",img:"https://avatar.vercel.sh/james"},{name:"Maria R.",body:"As a chef, I appreciate the recipe import feature. It's made organizing my personal recipes so much easier.",img:"https://avatar.vercel.sh/maria"},{name:"David K.",body:"Honeydew has made meal planning fun again. The interface is intuitive and the suggestions are spot on!",img:"https://avatar.vercel.sh/david"},{name:"Emily C.",body:"The ingredient substitution feature is a game-changer for my dietary restrictions. I can adapt any recipe easily!",img:"https://avatar.vercel.sh/emily"},{name:"Alex P.",body:"My family of five uses Honeydew for all our meal planning. The household sharing feature keeps everyone organized.",img:"https://avatar.vercel.sh/alex"},{name:"Jessica W.",body:"I love being able to snap a photo of a recipe and have it automatically imported. So convenient!",img:"https://avatar.vercel.sh/jessica"},{name:"Michael B.",body:"The calorie and macro calculator has helped me stick to my health goals while still enjoying great meals.",img:"https://avatar.vercel.sh/michael"},{name:"Lisa H.",body:"Honeydew's recipe translation feature lets me try recipes from around the world. It's like having a personal chef!",img:"https://avatar.vercel.sh/lisa"},{name:"Ryan G.",body:"As someone who meal preps weekly, Honeydew's grocery list feature is indispensable. It's saved me countless trips to the store.",img:"https://avatar.vercel.sh/ryan"}],lp=ea.slice(0,ea.length/2),eS=ea.slice(ea.length/2),To=({img:t,name:e,body:r})=>i.jsxs("figure",{className:q("relative h-full w-56 cursor-pointer overflow-hidden rounded-xl border p-3","border-gray-950/[.1] bg-gray-950/[.01] hover:bg-gray-950/[.05]","dark:border-gray-50/[.1] dark:bg-gray-50/[.10] dark:hover:bg-gray-50/[.15]"),children:[i.jsxs("div",{className:"flex flex-row items-center gap-2",children:[i.jsx("img",{className:"rounded-full",width:"32",height:"32",alt:"",src:t}),i.jsx("div",{className:"flex flex-col",children:i.jsx("figcaption",{className:"text-sm font-medium dark:text-white",children:e})})]}),i.jsx("blockquote",{className:"mt-2 text-sm dark:text-gray-200",children:r})]}),tS=()=>{const[t,e]=It();return i.jsxs("section",{ref:t,className:`py-14 bg-transparent transition-opacity duration-700 ${e?"opacity-100 animate-fade-in":"opacity-0"}`,children:[i.jsx("div",{className:"container mx-auto px-4 sm:px-6 lg:px-8",children:i.jsxs("div",{className:`mx-auto mb-12 max-w-5xl text-center transition-all duration-700 ${e?"animate-fade-in":"opacity-0 translate-y-10"}`,children:[i.jsx("h2",{className:"display mb-4 text-[#1f2a22] dark:text-gray-100",children:"What Our Users Are Saying"}),i.jsx("p",{className:"lede mx-auto",children:"Join thousands of home cooks who have simplified their cooking journey"})]})}),i.jsx("div",{className:"flex gap-3 overflow-x-auto px-5 pb-3 snap-x snap-mandatory min-[901px]:hidden","aria-label":"Customer reviews",children:lp.slice(0,3).map(r=>i.jsx("div",{className:"shrink-0 snap-center",children:i.jsx(To,{...r})},r.name))}),i.jsx("div",{className:"hidden min-[901px]:block relative w-screen -ml-[50vw] left-[50%] overflow-hidden",children:i.jsxs("div",{className:"flex w-full flex-col items-center justify-center overflow-hidden",children:[i.jsx(op,{pauseOnHover:!0,className:"[--duration:35s]",children:lp.map((r,s)=>i.jsx(To,{...r},`${r.name}-${s}`))}),i.jsx(op,{reverse:!0,pauseOnHover:!0,className:"[--duration:35s]",children:eS.map((r,s)=>i.jsx(To,{...r},`${r.name}-${s}`))}),i.jsx("div",{className:"pointer-events-none absolute inset-y-0 left-0 w-1/4 bg-gradient-to-r from-background"}),i.jsx("div",{className:"pointer-events-none absolute inset-y-0 right-0 w-1/4 bg-gradient-to-l from-background"})]})}),i.jsx("div",{className:"container mx-auto px-4 sm:px-6 lg:px-8",children:i.jsxs("div",{className:`mt-12 text-center transition-all duration-700 ${e?"animate-fade-in":"opacity-0 translate-y-10"}`,children:[i.jsx("p",{className:"text-xl text-gray-600 dark:text-gray-400 mb-6",children:"Join thousands of home cooks already using Honeydew"}),i.jsx(_c,{children:i.jsxs("button",{className:"inline-flex h-[2.4rem] items-center justify-center rounded-full bg-[#111214] px-5 text-[0.95rem] font-semibold text-white shadow transition-transform duration-[250ms] ease-[cubic-bezier(.3,1.4,.5,1)] hover:scale-105 hover:bg-[#111214] dark:bg-white dark:text-[#0b0b0c] dark:hover:bg-white",children:[i.jsx("svg",{viewBox:"0 0 24 24",className:"mr-2 h-[15px] w-[15px] fill-current","aria-hidden":"true",children:i.jsx("path",{d:"M12 3a1 1 0 0 1 1 1v9.59l3.29-3.3a1 1 0 1 1 1.42 1.42l-5 5a1 1 0 0 1-1.42 0l-5-5a1 1 0 1 1 1.42-1.42l3.29 3.3V4a1 1 0 0 1 1-1Zm-8 15a1 1 0 0 1 1 1v1h14v-1a1 1 0 1 1 2 0v1.5A1.5 1.5 0 0 1 19.5 22h-15A1.5 1.5 0 0 1 3 20.5V19a1 1 0 0 1 1-1Z"})}),"Download for Free"]})})]})})]})},rS=[{q:"How does the AI recipe import work?",a:"Simply paste a recipe URL or share a link from any website. Our AI automatically extracts ingredients, instructions, and cooking details, saving them to your recipe collection in seconds."},{q:"Can I import recipes from photos or social media?",a:"Yes! With Honeydew Plus, you can capture recipes from photos, screenshots, or social media posts. Our AI recognizes text from images and converts them into structured recipes."},{q:"How does meal planning work?",a:"Plan your meals by week or month, drag and drop recipes onto your calendar, and Honeydew automatically generates a smart grocery list based on your selected recipes."},{q:"What are smart ingredient substitutions?",a:"Our AI suggests ingredient alternatives based on dietary restrictions, allergies, or what you have on hand. Perfect for adapting recipes to your needs or pantry inventory."},{q:"How does household sharing work?",a:"Share your recipes, meal plans, and grocery lists with up to 6 family members. Everyone can contribute to meal planning and see real-time updates to shared lists."}],sS=()=>{const[t,e]=It(),[r,s]=g.useState(0);return i.jsx("section",{id:"faq",ref:t,className:"ellie-section bg-transparent",children:i.jsxs("div",{className:"wrap-ellie",children:[i.jsx("div",{className:`section-head rv ${e?"in":""}`,children:i.jsx("h2",{className:"display text-gray-900 dark:text-gray-50",children:"Frequently Asked Questions"})}),i.jsx("div",{className:`ellie-card mx-auto max-w-[760px] px-6 py-2 sm:px-10 sm:py-4 rv ${e?"in":""}`,style:{transitionDelay:"120ms"},children:rS.map((n,a)=>{const o=r===a;return i.jsxs("div",{className:"border-b border-gray-900/[0.07] last:border-b-0 dark:border-white/[0.08]",children:[i.jsx("h3",{children:i.jsxs("button",{type:"button",onClick:()=>s(o?null:a),"aria-expanded":o,"aria-controls":`faq-answer-${a}`,className:"flex w-full items-center justify-between gap-6 py-6 text-left",children:[i.jsx("span",{className:"font-round text-[17px] sm:text-[19px] font-semibold leading-snug tracking-[-0.2px] text-gray-900 dark:text-gray-50",children:n.q}),i.jsx("svg",{viewBox:"0 0 24 24","aria-hidden":"true",className:`h-5 w-5 flex-none text-honeydew-600 transition-transform duration-300 dark:text-honeydew-300 ${o?"rotate-180":""}`,children:i.jsx("path",{d:"M6 9.5L12 15.5L18 9.5",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]})}),i.jsx("div",{id:`faq-answer-${a}`,className:`grid transition-all duration-300 ease-out ${o?"grid-rows-[1fr] opacity-100":"grid-rows-[0fr] opacity-0"}`,children:i.jsx("div",{className:"overflow-hidden",children:i.jsx("p",{className:"lede pb-7 pr-2",children:n.a})})})]},n.q)})})]})})},nS=[{slug:"recipe-scaler",path:"/tools/recipe-scaler",group:"Recipes",name:"Ingredient-Aware Recipe Scaler",image:"/tool-art/recipe-scaler.webp",blurb:"Resize ingredient amounts while flagging the ones that need a cook's judgment.",does:"Scale measurable amounts, preserve as-needed ingredients, and flag eggs, leaveners, salt, and spices for a second look.",status:"live",updatedAt:"2026-08-25",ctSlug:"recipe-scaler"},{slug:"kitchen-conversions",path:"/tools/kitchen-conversions",group:"Conversions",name:"Kitchen Conversion Calculator",image:"/tool-art/kitchen-conversions.webp",blurb:"Convert common cooking measurements without mixing up weight and volume.",does:"Convert tablespoons, cups, fluid ounces, weight ounces, and grams with ingredient-aware answers where density matters.",status:"live",updatedAt:"2026-08-25",ctSlug:"kitchen-conversions"},{slug:"tablespoons-cups",path:"/tools/kitchen-conversions/tablespoons-cups",group:"Conversions",name:"Tablespoons and Cups Converter",image:"/tool-art/tablespoons-cups.webp",blurb:"Move between tablespoons and US cups with clean kitchen fractions.",does:"Convert tablespoons to cups or cups to tablespoons, including quarter-cup and third-cup amounts.",status:"live",updatedAt:"2026-08-25",ctSlug:"tablespoons-cups"},{slug:"ounces-cups",path:"/tools/kitchen-conversions/ounces-cups",group:"Conversions",name:"Ounces and Cups Converter",image:"/tool-art/ounces-cups.webp",blurb:"Get the right answer for fluid ounces or ingredient weight.",does:"Convert fluid ounces directly and weight ounces by the density of flour, sugar, butter, and other common ingredients.",status:"live",updatedAt:"2026-08-25",ctSlug:"ounces-cups"},{slug:"grams-cups",path:"/tools/kitchen-conversions/grams-cups",group:"Conversions",name:"Grams and Cups Converter",image:"/tool-art/grams-cups.webp",blurb:"Convert grams and cups using the ingredient you are actually measuring.",does:"Use practical grams-per-cup values for common baking and cooking ingredients instead of treating every ingredient like water.",status:"live",updatedAt:"2026-08-25",ctSlug:"grams-cups"}],iS=nS,Qe=()=>{const t="https://apps.apple.com/us/app/honeydew-capture-recipes/id6714449541?platform=iphone",e="https://play.google.com/store/apps/details?id=com.redhoney.eatlist",r="https://chromewebstore.google.com/detail/honeydew-recipe
710-extension/ghmgbichjjckdcfcmpbfcegfaokaahdn",s="/badges/app-store.svg",n="/badges/google-play.svg",[a,o]=It(),l="block text-[15px] font-semibold text-white opacity-[.82] hover:opacity-100 transition-opacity duration-200",c="text-[13px] font-bold uppercase tracking-[0.8px] text-white/[0.64] mb-4";return i.jsxs("footer",{className:"relative isolate overflow-hidden min-h-[820px] md:min-h-[660px] pt-[72px] pb-[calc(2rem+env(safe-area-inset-bottom,0px))] text-white bg-honeydew-950",children:[i.jsx("div",{"aria-hidden":!0,className:"absolute inset-0 z-0 pointer-events-none bg-cover bg-no-repeat bg-[position:58%_center] md:bg-center",style:{backgroundImage:"url('/ellie/footer-landscape.webp')"}}),i.jsx("div",{"aria-hidden":!0,className:"absolute inset-0 z-0 pointer-events-none",style:{background:"linear-gradient(180deg, rgba(18,29,31,.18), rgba(18,29,31,.31) 58%, rgba(18,29,31,.78)),linear-gradient(90deg, rgba(12,24,27,.24), transparent 58%)"}}),i.jsxs("div",{className:"wrap-ellie relative z-[1] min-h-[716px] md:min-h-[556px] flex flex-col",children:[i.jsxs("div",{ref:a,className:`rv${o?" in":""} grid gap-10 grid-cols-1 sm:grid-cols-2 lg:grid-cols-[2fr_1fr_1fr_1fr_1fr]`,children:[i.jsxs("div",{children:[i.jsxs(ae,{to:"/",className:"flex items-center gap-2.5 text-[18px] font-bold mb-3.5 w-fit",children:[i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"",className:"w-8 h-8 rounded-lg object-contain"}),i.jsx("span",{children:"Honeydew"})]}),i.jsx("p",{className:"text-[14.5px] font-medium leading-[1.5] text-white/[0.76] max-w-[240px]",children:"The recipes you save, turned into a week of dinners you actually cook."})]}),i.jsxs("div",{children:[i.jsx("h3",{className:c,children:"Product"}),i.jsxs("div",{className:"space-y-3",children:[i.jsx("button",{onClick:()=>Ti("features"),className:`${l} text-left`,children:"Recipe Import"}),i.jsx("button",{onClick:()=>Ti("meal-planning"),className:`${l} text-left`,children:"Meal Planning"}),i.jsx("button",{onClick:()=>Ti("recipes"),className:`${l} text-left`,children:"Recipe Management"}),i.jsx("a",{href:"/guides/grocery-list-ideas",className:l,children:"Grocery Lists"}),i.jsx("a",{href:"/tools",className:l,children:"Free Tools"}),i.jsx("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:l,children:"Download"})]})]}),i.jsxs("div",{children:[i.jsx("h3",{className:c,children:"Company"}),i.jsxs("div",{className:"space-y-3",children:[i.jsx(ae,{to:"/redhoney",className:l,children:"RedHoney"}),i.jsx(ae,{to:"/affiliates",className:l,children:"Affiliates"}),i.jsx(ae,{to:"/support",className:l,children:"Support Center"}),i.jsx("a",{href:"/guides",className:l,children:"Guides"}),i.jsx(ae,{to:"/privacy-policy",className:l,children:"Privacy Policy"}),i.jsx(ae,{to:"/terms-of-service",className:l,children:"Terms of Service"})]})]}),i.jsxs("div",{children:[i.jsx("h3",{className:c,children:"Integration"}),i.jsxs("div",{className:"space-y-3",children:[i.jsx(ae,{to:"/mcp",className:l,children:"Honeydew MCP"}),i.jsx("a",{href:r,target:"_blank",rel:"noopener noreferrer",className:l,children:"Chrome Extension"}),i.jsx(ae,{to:"/support/en/first-steps-ios/add-to-shortcuts",className:l,children:"iOS Share Sheet"})]})]}),i.jsxs("div",{children:[i.jsx("h3",{className:c,children:"Free Tools"}),i.jsx("div",{className:"space-y-3",children:iS.map(d=>i.jsx("a",{href:d.status==="live"?d.path:`/tools#${d.slug}`,className:l,children:d.name},d.slug))})]})]}),i.jsxs("div",{className:"mt-auto pt-5 border-t border-white/25 flex flex-col-reverse md:flex-row md:items-center md:justify-between gap-6",children:[i.jsxs("div",{className:"text-center md:text-left",children:[i.jsxs("p",{className:"text-[13.5px] font-medium text-white/[0.66]",children:["© ",new Date().getFullYear()," Red Honey LLC. All rights reserved."]}),i.jsx("p",{className:"mt-2 text-xs text-white/40 max-w-xl",children:"Honeydew™ and the Honeydew logo are trademarks of Red Honey LLC. All other trademarks are the property of their respective owners."})]}),i.jsxs("div",{className:"flex flex-wrap justify-center md:justify-end gap-3 shrink-0",children:[i.jsx("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"rounded-[12px] ring-1 ring-white/20 transition-transform duration-300 hover:-translate-y-0.5",children:i.jsx("img",{src:s,alt:"Download on App Store",className:"h-12 object-contain"})}),i.jsx("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:"rounded-[12px] ring-1 ring-white/20 transition-transform duration-300 hover:-translate-y-0.5",children:i.jsx("img",{src:n,alt:"Get it on Google Play",className:"h-12 object-contain"})})]})]})]})]})},aS="https://orbitalfocus.app",oS="https://apps.apple.com/app/orbital-focus-deep-work-timer/id6779767493",lS=()=>i.jsx("section",{className:"relative overflow-hidden px-5 pb-24 md:pb-28","aria-labelledby":"other-apps-heading",children:i.jsxs("div",{className:"wrap-ellie",children:[i.jsxs("header",{className:"mb-8 text-center md:text-left",children:[i.jsx("p",{className:"mb-3 text-[12px] font-bold uppercase tracking-[0.16em] text-honeydew-700 dark:text-honeydew-300",children:"More from Red Honey"}),i.jsx("h2",{id:"other-apps-heading",className:"display text-[clamp(34px,5vw,56px)] leading-[1.02] text-[#1f2a22] dark:text-gray-100",children:"Check out our other apps"})]}),i.jsxs("article",{className:"relative isolate grid min-h-[560px] overflow-hidden rounded-[40px] border border-white/10 bg-[#070b16] text-white shadow-[0_35px_90px_rgba(12,20,39,.25)] lg:grid-cols-[1.05fr_.95fr]",children:[i.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-0 -z-10",style:{background:"radial-gradient(circle at 78% 28%, rgba(62,142,255,.24), transparent 26rem), radial-gradient(circle at 18% 90%, rgba(117,182,158,.12), transparent 25rem), #070b16"}}),i.jsxs("div",{className:"flex flex-col justify-center p-8 sm:p-12 lg:p-16",children:[i.jsxs("div",{className:"mb-8 flex items-center gap-4",children:[i.jsx("img",{src:"/other-apps/orbital-focus-icon.png",alt:"Orbital Focus app icon",width:72,height:72,loading:"lazy",className:"h-[72px] w-[72px] rounded-[18px] border border-white/15 shadow-[0_18px_40px_rgba(0,0,0,.4)]"}),i.jsxs("div",{children:[i.jsx("p",{className:"text-[12px] font-bold uppercase tracking-[0.14em] text-[#7db7ff]",children:"Focus timer"}),i.jsx("h3",{className:"mt-1 text-[24px] font-bold tracking-[-0.03em]",children:"Orbital Focus"})]})]}),i.jsx("h3",{className:"max-w-[520px] text-[clamp(38px,5vw,64px)] font-bold leading-[0.98] tracking-[-0.055em]",children:"Turn focus into spaceflight."}),i.jsx("p",{className:"mt-6 max-w-[540px] text-[17px] font-medium leading-[1.7] text-white/70 sm:text-[19px]",children:"Every focu
710s session becomes a rocket mission. Pick a destination, start the timer, and stay on task until you arrive."}),i.jsxs("div",{className:"mt-9 flex flex-col gap-3 sm:flex-row",children:[i.jsxs("a",{href:aS,target:"_blank",rel:"noopener noreferrer",className:"inline-flex min-h-12 items-center justify-center gap-2 rounded-full bg-white px-6 text-[15px] font-bold text-[#070b16] transition-transform duration-200 hover:-translate-y-0.5",children:["Explore Orbital Focus",i.jsx(ic,{className:"h-4 w-4","aria-hidden":"true"})]}),i.jsxs("a",{href:oS,target:"_blank",rel:"noopener noreferrer",className:"inline-flex min-h-12 items-center justify-center gap-2 rounded-full border border-white/20 bg-white/[0.06] px-6 text-[15px] font-bold text-white transition-colors duration-200 hover:bg-white/[0.12]",children:[i.jsx(Bb,{className:"h-4 w-4","aria-hidden":"true"}),"Download for iPhone"]})]}),i.jsx("p",{className:"mt-5 text-[12px] font-semibold tracking-[0.02em] text-white/40",children:"Available for iPhone, iPad, and Android"})]}),i.jsxs("div",{className:"relative min-h-[460px] overflow-hidden lg:min-h-full",children:[i.jsx("div",{"aria-hidden":"true",className:"absolute left-1/2 top-1/2 h-[420px] w-[620px] -translate-x-1/2 -translate-y-1/2 rotate-[-16deg] rounded-[50%] border border-[#56a5ff]/35 shadow-[0_0_48px_rgba(45,136,255,.2)]"}),i.jsx("div",{"aria-hidden":"true",className:"absolute left-1/2 top-1/2 h-[300px] w-[500px] -translate-x-1/2 -translate-y-1/2 rotate-[18deg] rounded-[50%] border border-white/10"}),i.jsx("div",{"aria-hidden":"true",className:"absolute left-[12%] top-[18%] h-1.5 w-1.5 rounded-full bg-white/80 shadow-[100px_80px_0_rgba(255,255,255,.65),280px_-20px_0_rgba(255,255,255,.5),360px_160px_0_rgba(255,255,255,.7),180px_310px_0_rgba(255,255,255,.45)]"}),i.jsx("div",{className:"absolute inset-x-0 bottom-0 flex justify-center px-8 pt-12",children:i.jsx("img",{src:"/other-apps/orbital-focus-home.webp",alt:"Orbital Focus home screen showing a mission map, Begin Mission button, mission log, fleet, trends, and replay history",width:470,height:1024,loading:"lazy",className:"w-[min(78vw,310px)] rounded-t-[44px] border-x border-t border-white/15 shadow-[0_30px_90px_rgba(0,0,0,.6)]"})})]})]})]})}),ft=({title:t,description:e,canonical:r,ogImage:s,ogType:n="website",article:a,noindex:o=!1})=>{const l=He(),c="https://honeydewcook.com",d=`${c}/lovable-uploads/bc4b0356-e29a-4c6b-bda6-68e33dfdb14d.png`,u=t.includes("Honeydew")?t:`${t} | Honeydew`,p=s||d,h=r||`${c}${l.pathname}`;return i.jsxs(da,{children:[i.jsx("title",{children:u}),i.jsx("meta",{name:"description",content:e}),i.jsx("link",{rel:"canonical",href:h}),o?i.jsx("meta",{name:"robots",content:"noindex, nofollow"}):i.jsx("meta",{name:"robots",content:"index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"}),i.jsx("meta",{property:"og:type",content:n}),i.jsx("meta",{property:"og:url",content:h}),i.jsx("meta",{property:"og:title",content:u}),i.jsx("meta",{property:"og:description",content:e}),i.jsx("meta",{property:"og:image",content:p}),i.jsx("meta",{property:"og:site_name",content:"Honeydew"}),i.jsx("meta",{property:"og:locale",content:"en_US"}),i.jsx("meta",{name:"twitter:card",content:"summary_large_image"}),i.jsx("meta",{name:"twitter:url",content:h}),i.jsx("meta",{name:"twitter:title",content:u}),i.jsx("meta",{name:"twitter:description",content:e}),i.jsx("meta",{name:"twitter:image",content:p}),a&&n==="article"&&i.jsxs(i.Fragment,{children:[a.publishedTime&&i.jsx("meta",{property:"article:published_time",content:a.publishedTime}),a.modifiedTime&&i.jsx("meta",{property:"article:modified_time",content:a.modifiedTime}),a.author&&i.jsx("meta",{property:"article:author",content:a.author}),a.tags&&a.tags.map(f=>i.jsx("meta",{property:"article:tag",content:f},f))]}),i.jsx("meta",{name:"theme-color",content:"#ffffff",media:"(prefers-color-scheme: light)"}),i.jsx("meta",{name:"theme-color",content:"#0b0b0c",media:"(prefers-color-scheme: dark)"}),i.jsx("meta",{name:"mobile-web-app-capable",content:"yes"}),i.jsx("meta",{name:"apple-mobile-web-app-status-bar-style",content:"default"})]})},Ao=t=>{const r=(()=>{const n="https://honeydewcook.com";return t.type==="software"?{"@context":"https://schema.org","@type":"SoftwareApplication",name:"Honeydew",operatingSystem:"iOS, Android",applicationCategory:"LifestyleApplication",description:"Save recipes, plan meals, and create organized grocery lists.",offers:{"@type":"Offer",price:"0",priceCurrency:"USD"},aggregateRating:{"@type":"AggregateRating",ratingValue:qi.rating,ratingCount:qi.count,bestRating:5,worstRating:1},downloadUrl:[zi.ios,zi.android]}:t.type==="organization"?{"@context":"https://schema.org","@type":"Organization",name:"Honeydew",description:"Recipe capture and meal planning application",url:n,logo:`${n}/lovable-uploads/bc4b0356-e29a-4c6b-bda6-68e33dfdb14d.png`,sameAs:[],contactPoint:{"@type":"ContactPoint",email:"[email protected]",contactType:"Customer Service"}}:t.type==="website"?{"@context":"https://schema.org","@type":"WebSite",name:"Honeydew",description:"Recipe capture and meal planning application",url:n}:t.type==="article"?{"@context":"https://schema.org","@type":t.schemaType||"BlogPosting",headline:t.title,de
710scription:t.description,image:Array.isArray(t.image)?t.image:t.image?[t.image]:[`${n}/lovable-uploads/bc4b0356-e29a-4c6b-bda6-68e33dfdb14d.png`],datePublished:t.datePublished,dateModified:t.dateModified||t.datePublished,author:{"@type":t.authorType||"Person",name:t.authorName||"Chris Habib",...t.authorRole?{jobTitle:t.authorRole}:{},...t.authorBio?{description:t.authorBio}:{},...t.authorUrl?{url:t.authorUrl}:{},...t.authorType!=="Organization"?{worksFor:{"@type":"Organization",name:"Red Honey",url:n}}:{}},publisher:{"@type":"Organization",name:"Honeydew",logo:{"@type":"ImageObject",url:`${n}/lovable-uploads/bc4b0356-e29a-4c6b-bda6-68e33dfdb14d.png`}},mainEntityOfPage:{"@type":"WebPage","@id":t.url}}:null})();if(!r)return null;const s=JSON.stringify(r,null,0).replace(/</g,"\\u003c");return i.jsx(da,{children:i.jsx("script",{type:"application/ld+json",children:s})})},cS=()=>i.jsxs("div",{className:"home-page min-h-screen bg-white dark:bg-[#0b0b0c] transition-colors duration-300",children:[i.jsx(ft,{title:"Honeydew - Recipe Capture & Meal Planning App",description:"Save recipes from any website, plan your meals, and generate smart grocery lists. Available on iOS and Android. Simplify your cooking with Honeydew.",canonical:"https://honeydewcook.com/",ogType:"website"}),i.jsx(Ao,{type:"organization"}),i.jsx(Ao,{type:"website"}),i.jsx(Ao,{type:"software"}),i.jsx(yc,{}),i.jsx(pt,{topOffset:Os}),i.jsxs("main",{style:{paddingTop:`calc(${Os}px + env(safe-area-inset-top, 0px))`},children:[i.jsx(Dk,{}),i.jsx("div",{id:"reviews",className:"-my-14 scroll-mt-[90px]",children:i.jsx(tS,{})}),i.jsx(bC,{}),i.jsx("div",{className:"[&>section]:pt-0",children:i.jsx(QC,{})}),i.jsx(TC,{}),i.jsx(_C,{}),i.jsx(PC,{}),i.jsx(ZC,{}),i.jsx("div",{id:"pricing",className:"scroll-mt-[40px]",children:i.jsx(sS,{})}),i.jsx(RC,{}),i.jsx(lS,{})]}),i.jsx(Qe,{})]}),dS=()=>{const t=He();return g.useEffect(()=>{console.error("404 Error: User attempted to access non-existent route:",t.pathname)},[t.pathname]),i.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gray-100",children:i.jsxs("div",{className:"text-center",children:[i.jsx("h1",{className:"text-4xl font-bold mb-4",children:"404"}),i.jsx("p",{className:"text-xl text-gray-600 mb-4",children:"Oops! Page not found"}),i.jsx("a",{href:"/",className:"text-blue-500 hover:text-blue-700 underline",children:"Return to Home"})]})})},he=g.forwardRef(({className:t,...e},r)=>i.jsx("div",{ref:r,className:q("rounded-lg border bg-card text-card-foreground shadow-sm",t),...e}));he.displayName="Card";const uS=g.forwardRef(({className:t,...e},r)=>i.jsx("div",{ref:r,className:q("flex flex-col space-y-1.5 p-6",t),...e}));uS.displayName="CardHeader";const hS=g.forwardRef(({className:t,...e},r)=>i.jsx("h3",{ref:r,className:q("text-2xl font-semibold leading-none tracking-tight",t),...e}));hS.displayName="CardTitle";const pS=g.forwardRef(({className:t,...e},r)=>i.jsx("p",{ref:r,className:q("text-sm text-muted-foreground",t),...e}));pS.displayName="CardDescription";const pe=g.forwardRef(({className:t,...e},r)=>i.jsx("div",{ref:r,className:q("p-6 pt-0",t),...e}));pe.displayName="CardContent";const fS=g.forwardRef(({className:t,...e},r)=>i.jsx("div",{ref:r,className:q("flex items-center p-6 pt-0",t),...e}));fS.displayName="CardFooter";const mS=()=>i.jsxs("div",{className:"min-h-screen bg-gradient-to-b from-gray-50 to-white dark:from-gray-900 dark:to-gray-800",children:[i.jsx(ft,{title:"Privacy Policy - Honeydew",description:"Read Honeydew's privacy policy to understand how we collect, use, and protect your personal information.",ogType:"website"}),i.jsx(pt,{}),i.jsx("main",{className:"container mx-auto px-4 py-12 max-w-4xl",children:i.jsxs("div",{className:"space-y-8",children:[i.jsxs("div",{className:"text-center mb-12",children:[i.jsx("h1",{className:"text-4xl font-bold mb-4 bg-gradient-to-r from-honeydew-600 to-honeydew-800 bg-clip-text text-transparent mx-0 py-0 my-[41px]",children:"Privacy Policy"}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-400",children:["Last updated: ",new Date().toLocaleDateString()]})]}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 border-2 border-honeydew-300 dark:border-honeydew-700 bg-gradient-to-br from-honeydew-50 to-white dark:from-honeydew-950/20 dark:to-gray-900",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Di,{className:"w-8 h-8 text-honeydew-600"}),i.jsx("h2",{className:"text-2xl font-bold text-honeydew-700 dark:text-honeydew-400",children:"Delete your account"})]}),i.jsx("p",{className:"text-gray-700 dark:text-gray-300 leading-relaxed",children:"You can request deleti
710on of your Honeydew account at any time. When you request account deletion, we will permanently delete:"}),i.jsxs("ul",{className:"space-y-2 text-gray-600 dark:text-gray-400 leading-relaxed ml-4",children:[i.jsx("li",{children:"• All personal information (name, email, account details)"}),i.jsx("li",{children:"• All recipes, meal plans, and saved content"}),i.jsx("li",{children:"• Usage data and interaction history"}),i.jsx("li",{children:"• Device information and system details"})]}),i.jsxs("p",{className:"text-gray-700 dark:text-gray-300 leading-relaxed font-medium",children:[i.jsx("strong",{children:"Deletion timing:"})," Your account and data will be permanently deleted within 30 days after you confirm deletion through the verification link we send. We delete your data immediately when you remove your account. The deletion process is irreversible."]}),i.jsxs("p",{className:"text-gray-700 dark:text-gray-300 leading-relaxed",children:[i.jsx("strong",{children:"Retention exceptions:"})," We may retain certain information if required by law or necessary for fraud prevention, legal compliance, or other legitimate business purposes."]}),i.jsxs("p",{className:"text-gray-700 dark:text-gray-300 leading-relaxed",children:[i.jsx("strong",{children:"Important:"})," If you have an active subscription through the Apple App Store or Google Play Store, you must cancel your subscription separately through the respective store. Account deletion does not automatically cancel in-app purchases or subscriptions."]}),i.jsx("div",{className:"pt-4",children:i.jsx(ae,{to:"/delete-account",children:i.jsxs(Fr,{className:"w-full sm:w-auto bg-honeydew-600 hover:bg-honeydew-700 text-white font-semibold text-base px-6 py-3",children:[i.jsx(Di,{className:"w-5 h-5 mr-2"}),"Request Account Deletion"]})})})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6",children:[i.jsx("h2",{className:"text-2xl font-semibold mb-4 text-honeydew-700 dark:text-honeydew-400",children:"Ownership Disclaimer"}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"The Honeydew app, website, including all of its content, features, and services, is owned and managed by Red Honey LLC. Red Honey LLC is responsible for the site's operations, maintenance, and the accuracy of its content. All business transactions, user interactions, and data management are conducted under Red Honey LLC."})]})}),i.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(qf,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Information We Collect"})]}),i.jsxs("ul",{className:"space-y-3 text-gray-600 dark:text-gray-300 leading-relaxed",children:[i.jsx("li",{children:"• Personal Information: Name, email address, and account details"}),i.jsx("li",{children:"• Usage Information: App interactions and feature usage"}),i.jsx("li",{children:"• Device Information: Device type and system details"})]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(zb,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"How We Share Your Information"})]}),i.jsxs("ul",{className:"space-y-3 text-gray-600 dark:text-gray-300 leading-relaxed",children:[i.jsx("li",{children:"• Service Providers: Trusted third-party services"}),i.jsx("li",{children:"• Legal Requirements: When required by law"}),i.jsx("li",{children:"• Business Transfers: During mergers or acquisitions"})]})]})})]}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Ob,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Face Data & Hands-Free Mode"})]}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:["We use Apple's TrueDepth APIs ",i.jsx("strong",{children:"solely"})," to power Hands-Free Mode, and ",i.jsx("strong",{children:"all processing happens entirely on your device"}),". The TrueDepth camera (available on iPhone X and later) is used only to detect eye-wink gestures so you can navigate recipe steps without touching your device. This feature relies on Apple's ARKit framework to read facial blend shape coefficients (specifically eye blink values) in real time, on device. We do not use TrueDepth APIs for any purpose other than Hands-Free Mode, and n
710o face data ever leaves your device."]}),i.jsxs("ul",{className:"space-y-3 text-gray-600 dark:text-gray-300 leading-relaxed",children:[i.jsxs("li",{children:[i.jsx("strong",{children:"On-device only:"})," All TrueDepth and face data is processed locally on your device. None of it is ever transmitted to our servers or any third party."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Sole purpose:"})," TrueDepth APIs are used exclusively for Hands-Free Mode gesture detection. They are never used for authentication, advertising, profiling, or any other feature."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Collection:"})," We access face geometry data solely to detect wink gestures. No facial images, face maps, or biometric identifiers are collected or created."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Storage:"})," Face data is never stored on your device or on our servers. All data exists only in temporary memory during an active Hands-Free Mode session and is discarded immediately when the session ends."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Sharing:"})," Face data is never shared with any third parties, including analytics providers, advertisers, or service providers."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Retention:"})," Face data is not retained. It is discarded in real time after each gesture detection frame."]})]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Bn,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"AI Connector (Claude & other assistants)"})]}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:["If you connect Honeydew to an AI assistant via our connector (see"," ",i.jsx(ae,{to:"/connector",className:"font-semibold text-honeydew-600 hover:text-honeydew-800 underline",children:"honeydewcook.com/connector"}),"), the following applies. The connector is ",i.jsx("strong",{children:"read-only"})," and scoped to your own account."]}),i.jsxs("ul",{className:"space-y-3 text-gray-600 dark:text-gray-300 leading-relaxed",children:[i.jsxs("li",{children:[i.jsx("strong",{children:"What it accesses:"})," Only the recipes, folders, and tags in your own Honeydew account, and only when you ask the assistant a question that needs them."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"What we store:"})," An encrypted authentication token so the connector can fetch your recipes on your behalf. We do ",i.jsx("strong",{children:"not"})," store your recipe content — it's fetched live and returned to the assistant you connected."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"How it's shared:"})," Requested recipe data is returned to the AI assistant you explicitly connected (e.g., Claude or ChatGPT), subject to that provider's privacy policy. We don't sell your data. Service providers: Google Firebase (your account & recipes) and Cloudflare (hosting & encrypted token storage)."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Retention & control:"})," The stored token is kept until you disconnect the connector (in your AI client's settings) or revoke access, after which it's deleted."]})]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Vb,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Security"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"We implement appropriate security measures to protect your personal information from unauthorized access, disclosure, alteration, and destruction. However, no method of transmission over the internet or electronic storage is 100% secure, and we cannot guarantee absolute security. We delete your data immediately when you remove your account."})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Xb,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Children's Privacy"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"Our app is not intended for use by children under the age of 17. We do not knowingly collect personal information from children under 17. If we become aware that we have collected personal information from a child under 17, we will take steps to delete such information."})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(cn,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Changes to This Privacy Policy"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"We may update this Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on our app. You are advised to review this Privacy Policy periodically for any changes."})]})})]})}),i.jsx(Qe,{})]}),gS=()=>i.jsxs("div",{className:"min-h-screen bg-gradient-to-b from-gray-50 to-white dark:from-gray-900 dark:to-gray-800",children:[i.jsx(ft,{title:"Terms of Service - Honeydew",description:"Read Honeydew's terms of service and end user license agreement for using our recipe capture and meal planning application.",ogType:"website"}),i.jsx(pt,{}),i.jsx("main",{className:"container mx-auto px-4 py-12 max-w-4xl",children:i.jsxs("div",{className:"space-y-8",children:[i.jsxs("div",{className:"text-center mb-12 my-[50px]",children:[i.jsx("h1",{className:"text-4xl font-bold mb-4 bg-gradient-to-r from-honeydew-600 to-honeydew-800 bg-clip-text text-transparent",children:"Licensed Application 
710End User License Agreement"}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-400",children:["Last updated: ",new Date().toLocaleDateString()]})]}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Yf,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Ownership and License"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:'The Mac App Store Products and App Store Products (collectively, "App Store Product(s)") are licensed, not sold, to you. Your license is subject to your prior acceptance of this Licensed Application End User License Agreement ("Standard EULA").'})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Ib,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Scope of License"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"This license granted to you for the Licensed Application by Licensor is limited to a nontransferable license to use the Licensed Application on any Apple-branded products that you own or control. You may not distribute, rent, lease, lend, sell, transfer, redistribute, or sublicense the Licensed Application."})]})}),i.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(cn,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Data Usage"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"You agree that Licensor may collect and use technical data and related information to facilitate updates, support, and other services. This information will be used in a form that does not personally identify you."})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(cc,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Termination"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"The license is effective until terminated. Your rights will terminate automatically without notice if you fail to comply with any terms. Upon termination, you shall cease all use and destroy all copies of the Licensed Application."})]})})]}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Bn,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"AI Connector"})]}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:["If you connect Honeydew to an AI assistant (e.g., Claude) via our connector at"," ",i.jsx("a",{href:"/connector",className:"font-semibold text-honeydew-600 hover:text-honeydew-800 underline",children:"honeydewcook.com/connector"}),", you agree that: the connector provides ",i.jsx("strong",{children:"read-only"}),` access to the recipes, folders, and tags in your own Honeydew account; you will sign in only with your own credentials and are responsible for activity under your connection; and you will not use it to attempt to access data you don't own, to disrupt the service, or for any unlawful purpose. The connector is provided "as is" and you may disconnect it at any time in your AI client's settings. Data handling is described 
710in our `,i.jsx("a",{href:"/privacy-policy",className:"font-semibold text-honeydew-600 hover:text-honeydew-800 underline",children:"Privacy Policy"}),"."]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(cn,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Warranty Disclaimer"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed uppercase font-semibold",children:'The Licensed Application is provided "AS IS" and "AS AVAILABLE", with all faults and without warranty of any kind.'}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"The Licensor disclaims all warranties and conditions with respect to the Licensed Application, either express, implied, or statutory. This includes warranties of merchantability, fitness for a particular purpose, accuracy, and noninfringement of third-party rights."})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 dark:bg-gray-800 dark:border-gray-700",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(cn,{className:"w-6 h-6 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Governing Law"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"The laws of the State of California, excluding its conflicts of law rules, govern this license and your use of the Licensed Application. Your use may also be subject to other local, state, national, or international laws."})]})})]})}),i.jsx(Qe,{})]}),yS=({breadcrumbs:t,title:e,subtitle:r,toc:s,children:n})=>i.jsxs("div",{className:"min-h-screen bg-white dark:bg-gray-950 text-gray-900 dark:text-gray-100",children:[i.jsx(pt,{}),i.jsxs("div",{className:"container mx-auto px-4 sm:px-6 lg:px-8 pt-28 pb-24 max-w-6xl",children:[i.jsx("nav",{"aria-label":"Breadcrumb",className:"flex flex-wrap items-center gap-1.5 text-sm text-gray-500 dark:text-gray-400 mb-8",children:t.map((a,o)=>i.jsxs("span",{className:"flex items-center gap-1.5",children:[o>0&&i.jsx(Fn,{className:"w-3.5 h-3.5 text-gray-300 dark:text-gray-600"}),a.to?i.jsx(ae,{to:a.to,className:"hover:text-honeydew-600 dark:hover:text-honeydew-400 transition-colors",children:a.label}):i.jsx("span",{className:"text-gray-700 dark:text-gray-300",children:a.label})]},`${a.label}-${o}`))}),i.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-[minmax(0,1fr)_220px] gap-12 lg:gap-16",children:[i.jsxs("article",{className:"min-w-0",children:[i.jsxs("header",{className:"mb-10 pb-8 border-b border-gray-200 dark:border-gray-800",children:[i.jsx("h1",{className:"text-3xl md:text-4xl font-bold tracking-tight mb-4",children:e}),r&&i.jsx("p",{className:"text-lg text-gray-600 dark:text-gray-400 leading-relaxed",children:r})]}),i.jsx("div",{className:"space-y-12",children:n})]}),s&&s.length>0&&i.jsx("aside",{className:"hidden lg:block",children:i.jsxs("div",{className:"sticky top-28",children:[i.jsx("p",{className:"text-xs font-semibold uppercase tracking-wider text-gray-400 dark:text-gray-500 mb-4",children:"On this page"}),i.jsx("ul",{className:"space-y-1 border-l border-gray-200 dark:border-gray-800",children:s.map(a=>i.jsx("li",{children:i.jsx("a",{href:`#${a.id}`,className:"block py-1 pl-4 -ml-px border-l border-transparent text-sm text-gray-500 dark:text-gray-400 hover:text-honeydew-600 dark:hover:text-honeydew-400 hover:border-honeydew-500 transition-colors",children:a.label})},a.id))})]})})]})]}),i.jsx(Qe,{})]}),sn=({id:t,title:e,children:r})=>i.jsxs("section",{id:t,className:"scroll-mt-28",children:[i.jsx("h2",{className:"text-2xl font-bold tracking-tight mb-4",children:e}),i.jsx("div",{className:"space-y-4",children:r})]}),Xr=({children:t})=>i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:t}),xS=({children:t})=>i.jsx("ul",{className:"space-y-2 text-gray-600 dark:text-gray-300 leading-relaxed list-disc pl-5 marker:text-honeydew-500",children:t}),vS=({variant:t="note",title:e,children:r})=>{const s=t==="tip"?em:Zl,n=e??(t==="tip"?"Tip":"Note");return i.jsxs("div",{className:"rounded-r-lg border-l-4 border-honeydew-500 bg-honeydew-50/70 dark:bg-honeydew-950/20 px-5 py-4",children:[i.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[i.jsx(s,{className:"w-4 h-4 text-honeydew-600 dark:text-honeydew-400"}),i.jsx("span",{className:"text-sm font-semibold text-honeydew-700 dark:text-honeydew-300",children:n})]}),i.jsx("div",{className:"text-gray-600 dark:text-gray-300 leading-relaxed text-[0.95rem]",children:r})]})},bS="https://apps.apple.com/us/app/honeydew-capture-recipes/id6714449541?platform=iphone",wS="https://play.google.com/store/apps/details?id=com.redhoney.eatlist",_S="https://developer.apple.com/assets/elements/badges/download-on-the-app-store.svg",jS="https://upload.wikimedia.org/wikipedia/commons/7/78/Google_Play_Store_badge_EN.svg",kS=[{id:"who-we-are",label:"Who we are"},{id:"what-we-care-about",label:"What we care about"},{id:"our-apps",label:"Our apps"},{id:"why-redhoney",label:"Why RedHoney"}
710,{id:"how-we-choose",label:"How we choose"}],ES=()=>i.jsxs(i.Fragment,{children:[i.jsx(ft,{title:"RedHoney - About Us",description:"RedHoney is the small app studio behind Honeydew. We build mobile apps for everyday life, rooted in a family tradition of beekeeping.",ogType:"website"}),i.jsxs(yS,{breadcrumbs:[{label:"Honeydew",to:"/"},{label:"Company"},{label:"RedHoney"}],title:"RedHoney",subtitle:"RedHoney is the parent company of Honeydew. We are a small app studio focused on making the best app experiences for the moments that show up in real life.",toc:kS,children:[i.jsx(vS,{title:"At a glance",children:"RedHoney is a small, hands-on app studio. Our first app, Honeydew, is available today on the Apple App Store and Google Play."}),i.jsxs(sn,{id:"who-we-are",title:"Who we are",children:[i.jsx(Xr,{children:"RedHoney is the parent company of Honeydew. We are a small app studio focused on making the best app experiences for our users. We build apps we actually use every day in our personal, working, and family lives."}),i.jsx(Xr,{children:"We are a small team that genuinely loves making mobile app experiences that solve things people and families run into every day. Staying small keeps us close to the product, close to user feedback, and honest about whether something feels good enough to use every day."})]}),i.jsx(sn,{id:"what-we-care-about",title:"What we care about",children:i.jsxs(xS,{children:[i.jsx("li",{children:"Building around everyday problems that people and families actually run into."}),i.jsx("li",{children:"Making mobile experiences feel clear, warm, and reliable."}),i.jsx("li",{children:"Caring about the small details that make an app easy to trust."})]})}),i.jsxs(sn,{id:"our-apps",title:"Our apps",children:[i.jsx(Xr,{children:"Honeydew is our first app out in the world. It helps people save recipes, organize what they want to cook, plan meals, and make grocery lists from the recipes they already love. You can find our apps on the Apple App Store and Google Play Store."}),i.jsxs("div",{className:"flex flex-wrap items-center gap-4 pt-2",children:[i.jsx("a",{href:bS,target:"_blank",rel:"noopener noreferrer",className:"transition-transform hover:scale-105",children:i.jsx("img",{src:_S,alt:"Download on the App Store",className:"h-12 object-contain"})}),i.jsx("a",{href:wS,target:"_blank",rel:"noopener noreferrer",className:"transition-transform hover:scale-105",children:i.jsx("img",{src:jS,alt:"Get it on Google Play",className:"h-12 object-contain"})})]})]}),i.jsxs(sn,{id:"why-redhoney",title:"Why RedHoney",children:[i.jsx(Xr,{children:"The name RedHoney comes from our founder's family history. Our founder's great grandfather started keeping bees as a hobby, and that tradition has carried on through the generations to today. RedHoney is a nod to that history and to a family that has always loved bees."}),i.jsx(Xr,{children:"Honeydew is our first app out in the world, but the spirit behind both names is the same: thoughtful work, built with care, for the people closest to us."})]}),i.jsx(sn,{id:"how-we-choose",title:"How we choose what to build",children:i.jsx(Xr,{children:"We start with the routines we understand best: cooking, family planning, home life, work days, and the little bits of friction that tend to pile up. If an app can make one of those moments calmer, faster, or easier to enjoy, it is worth our attention."})})]})]}),Kn=g.forwardRef(({className:t,type:e,...r},s)=>i.jsx("input",{type:e,className:q("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",t),ref:s,...r}));Kn.displayName="Input";var TS="Label",xy=g.forwardRef((t,e)=>i.jsx(se.label,{...t,ref:e,onMouseDown:r=>{var n;r.target.closest("button, input, select, textarea")||((n=t.onMouseDown)==null||n.call(t,r),!r.defaultPrevented&&r.detail>1&&r.preventDefault())}}));xy.displayName=TS;var vy=xy;const AS=ma("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Cl=g.forwardRef(({className:t,...e},r)=>i.jsx(vy,{ref:r,className:q(AS(),t),...e}));Cl.displayName=vy.displayName;const by=g.forwardRef(({className:t,...e},r)=>i.jsx("textarea",{className:q("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm r
710ing-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",t),ref:r,...e}));by.displayName="Textarea";const NS=()=>{const[t,e]=g.useState(""),[r,s]=g.useState(""),[n,a]=g.useState(!1),o=l=>{l.preventDefault();const c=encodeURIComponent("Account Deletion Request - Honeydew"),d=encodeURIComponent(`I would like to request deletion of my Honeydew account.
711
712Email: ${t}
713
714Additional information:
715${r||"None"}`);window.location.href=`mailto:[email protected]?subject=${c}&body=${d}`,a(!0)};return i.jsxs("div",{className:"min-h-screen bg-gradient-to-b from-gray-50 to-white dark:from-gray-900 dark:to-gray-800",children:[i.jsx(ft,{title:"Delete your Honeydew account - Honeydew",description:"Request deletion of your Honeydew account. Learn about what data is deleted, timing, and account deletion policies.",ogType:"website"}),i.jsx(pt,{}),i.jsx("main",{className:"container mx-auto px-4 py-12 max-w-4xl",children:i.jsxs("div",{className:"space-y-8",children:[i.jsxs("div",{className:"text-center mb-12",children:[i.jsx("div",{className:"flex justify-center mb-4",children:i.jsx(Di,{className:"w-16 h-16 text-honeydew-600"})}),i.jsx("h1",{className:"text-4xl font-bold mb-4 bg-gradient-to-r from-honeydew-600 to-honeydew-800 bg-clip-text text-transparent",children:"Delete your Honeydew account"}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-400 text-lg",children:["Owned and managed by ",i.jsx("strong",{children:"Red Honey LLC"})]})]}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 border-2 border-honeydew-200 dark:border-honeydew-800",children:i.jsxs(pe,{className:"p-6 space-y-6",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Nb,{className:"w-6 h-6 text-honeydew-600"}),i.jsx("h2",{className:"text-2xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Request Account Deletion"})]}),i.jsxs("p",{className:"text-gray-700 dark:text-gray-300 leading-relaxed",children:["To request deletion of your Honeydew account, please fill out the form below or contact us directly at"," ",i.jsx("a",{href:"mailto:[email protected]?subject=Account Deletion Request - Honeydew",className:"font-semibold text-honeydew-600 hover:text-honeydew-800 underline",children:"[email protected]"}),". We will process your request and send you a verification link to confirm the deletion."]}),n?i.jsx("div",{className:"p-4 bg-green-50 dark:bg-green-900/20 border border-green-200 dark:border-green-800 rounded-md",children:i.jsxs("p",{className:"text-green-800 dark:text-green-200 font-medium",children:["Your email client should have opened. If it didn't, please send an email directly to"," ",i.jsx("a",{href:"mailto:[email protected]?subject=Account Deletion Request - Honeydew",className:"underline font-semibold",children:"[email protected]"})," ","with your account deletion request."]})}):i.jsxs("form",{onSubmit:o,className:"space-y-4",children:[i.jsxs("div",{className:"space-y-2",children:[i.jsx(Cl,{htmlFor:"email",className:"text-base font-medium",children:"Email Address *"}),i.jsx(Kn,{id:"email",type:"email",required:!0,value:t,onChange:l=>e(l.target.value),placeholder:"[email protected]",className:"w-full"})]}),i.jsxs("div",{className:"space-y-2",children:[i.jsx(Cl,{htmlFor:"message",className:"text-base font-medium",children:"Additional Information (Optional)"}),i.jsx(by,{id:"message",value:r,onChange:l=>s(l.target.value),placeholder:"Any additional information about your account deletion request...",className:"min-h-[100px]"})]}),i.jsxs(Fr,{type:"submit",className:"w-full bg-honeydew-600 hover:bg-honeydew-700 text-white",size:"lg",children:[i.jsx(lc,{className:"w-4 h-4 mr-2"}),"Request Account Deletion"]})]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Di,{className:"w-6 h-6 text-honeydew-600"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"What Will Be Deleted"})]}),i.jsxs("ul",{className:"space-y-2 text-gray-600 dark:text-gray-300 leading-relaxed",children:[i.jsx("li",{children:"• All personal information associated with your account (name, email address, account details)"}),i.jsx("li",{children:"• All recipes, meal plans, and saved content you've created"}),i.jsx("li",{children:"• Usage data and app interaction history"}),i.jsx("li",{children:"• Device information and system details"}),i.jsx("li",{children:"• All other data associated with your Honeydew account"})]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Fs,{className:"w-6 h-6 text-honeydew-600"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Deletion Timing"})]}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:["Once you confirm account deleti
715on through the verification link we send, your account and all associated data will be ",i.jsx("strong",{children:"permanently deleted within 30 days"}),". We delete your data immediately when you remove your account, and the deletion process is irreversible."]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(cn,{className:"w-6 h-6 text-honeydew-600"}),i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Data Retention Exceptions"})]}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"We may retain certain information if required by law or if necessary for fraud prevention, legal compliance, or other legitimate business purposes. This may include:"}),i.jsxs("ul",{className:"space-y-2 text-gray-600 dark:text-gray-300 leading-relaxed ml-4",children:[i.jsx("li",{children:"• Information required to comply with legal obligations"}),i.jsx("li",{children:"• Data necessary for fraud prevention and security"}),i.jsx("li",{children:"• Records needed for resolving disputes or enforcing agreements"})]})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300 border-2 border-orange-200 dark:border-orange-800",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsx(Kf,{className:"w-6 h-6 text-orange-600"}),i.jsx("h2",{className:"text-xl font-semibold text-orange-700 dark:text-orange-400",children:"Important: Store Subscriptions"})]}),i.jsx("p",{className:"text-gray-700 dark:text-gray-300 leading-relaxed font-medium",children:i.jsx("strong",{children:"If you have an active subscription through the Apple App Store or Google Play Store, you must cancel your subscription separately through the respective store before or after requesting account deletion."})}),i.jsx("p",{className:"text-gray-600 dark:text-gray-400 leading-relaxed text-sm",children:"Account deletion through Honeydew does not automatically cancel in-app purchases or subscriptions managed through Apple or Google. Please cancel these through your device's settings or the respective store before your next billing cycle."})]})}),i.jsx(he,{className:"shadow-lg hover:shadow-xl transition-shadow duration-300",children:i.jsxs(pe,{className:"p-6 space-y-4",children:[i.jsx("h2",{className:"text-xl font-semibold text-honeydew-700 dark:text-honeydew-400",children:"Need Help?"}),i.jsxs("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:["If you have questions about account deletion or need assistance, please contact us at"," ",i.jsx("a",{href:"mailto:[email protected]",className:"font-semibold text-honeydew-600 hover:text-honeydew-800 underline",children:"[email protected]"}),". You can also review our"," ",i.jsx("a",{href:"/privacy-policy",className:"font-semibold text-honeydew-600 hover:text-honeydew-800 underline",children:"Privacy Policy"})," ","for more information about how we handle your data."]})]})})]})}),i.jsx(Qe,{})]})},Er="https://mcp.honeydewcook.app/mcp",ns="https://mcp.honeydewcook.app/docs",ps={claude:"https://unpkg.com/@lobehub/[email protected]/icons/claude-color.svg",chatgpt:"https://unpkg.com/@lobehub/[email protected]/icons/openai.svg",cursor:"https://unpkg.com/@lobehub/[email protected]/icons/cursor.svg",gemini:"https://unpkg.com/@lobehub/[email protected]/icons/gemini-color.svg",grok:"https://unpkg.com/@lobehub/[email protected]/icons/grok.svg"},cp=`claude mcp add --scope user --transport http honeydew ${Er}
716claude mcp login honeydew`,No=`{
717  "mcpServers": {
718    "honeydew": {
719      "url": "${Er}"
720    }
721  }
722}`,nr=[{key:"claude",name:"Claude",icon:ps.claude,accent:"#d97757",iconBackground:"#f2eee8",iconFit:"contain",defaultMode:"mcp",guides:{mcp:{copyValue:Er,copyLabel:"Connector URL",copyTitle:"Copy the Honeydew connector URL",copyDescription:"You will paste this URL into Claude in the next step.",setupTitle:"Go to Claude → Connectors",setupDescription:"Open Customize → Connectors → Add custom connector. Name it Honeydew, paste the URL, and leave the advanced OAuth fields blank.",setupUrl:"https://claude.ai/settings/connectors",setupLabel:"Open Claude Connectors",finishTitle:"Connect, sign in, and cook",finishDescription:"Use the same Apple, Google, or Email login you use in Honeydew, approve access, then ask Claude about your recipes.",finishUrl:"https://claude.ai/new",finishLabel:"Start in Claude"},cli:{copyValue:cp,copyDisplayValue:"claude mcp add … && claude mcp login honeydew",copyLabel:"Claude Code commands",copyTitle:"Copy the Claude Code commands",copyDescription:"Use the command-line route when you want Honeydew available across Claude Code sessions.",setupTitle:"Run both commands in Terminal",setupDescription:"The first command adds Honeydew for your user. The second starts the browser-based Honeydew sign-in.",setupUrl:"https://code.claude.com/docs/en/mcp",setupLabel:"Open Claude Code MCP docs",finishTitle:"Return to Claude Code",finishDescription:"After sign-in, ask Claude Code to list the Honeydew tools or find a recipe in your cookbook.",finishUrl:"https://claude.com/product/claude-code",finishLabel:"Open Claude Code"}}},{key:"chatgpt",name:"ChatGPT",icon:ps.chatgpt,accent:"#10a37f",iconBackgroun
722d:"#ffffff",iconFit:"contain",defaultMode:"mcp",guides:{mcp:{copyValue:Er,copyLabel:"Connector URL",copyTitle:"Copy the Honeydew connector URL",copyDescription:"You will add this as a custom MCP connection in ChatGPT.",setupTitle:"Add Honeydew in ChatGPT",setupDescription:"Open Apps or Connectors, enable custom connections if your plan requires it, then add Honeydew with the URL above.",setupUrl:"https://chatgpt.com/plugins",setupLabel:"Open ChatGPT Apps",finishTitle:"Connect, sign in, and ask",finishDescription:"Complete Honeydew sign-in, approve the requested access, and ask ChatGPT to use your cookbook.",finishUrl:"https://chatgpt.com/",finishLabel:"Start in ChatGPT"},cli:{copyValue:No,copyDisplayValue:'{ "mcpServers": { "honeydew": { "url": "…" } } }',copyLabel:"MCP configuration",copyTitle:"Copy the portable MCP config",copyDescription:"ChatGPT normally uses its browser setup. This config is useful in compatible desktop and developer clients.",setupTitle:"Add it to your MCP client",setupDescription:"Paste the config into a client that accepts mcpServers JSON, then enable Honeydew and start sign-in.",setupUrl:ns,setupLabel:"Open Honeydew connector docs",finishTitle:"Approve access",finishDescription:"Use the same sign-in provider as the Honeydew app, then return to your AI client.",finishUrl:"https://chatgpt.com/",finishLabel:"Open ChatGPT"}}},{key:"cursor",name:"Cursor",icon:ps.cursor,accent:"#9cd0b6",iconBackground:"#14120b",iconFit:"cover",defaultMode:"mcp",guides:{mcp:{copyValue:Er,copyLabel:"Connector URL",copyTitle:"Copy the Honeydew connector URL",copyDescription:"Keep this remote URL handy for Cursor settings.",setupTitle:"Add a remote MCP server",setupDescription:"Open Cursor Settings → Tools & MCP, add a new server named Honeydew, and use the remote HTTP URL.",setupUrl:"https://cursor.com/docs/context/model-context-protocol",setupLabel:"Open Cursor MCP docs",finishTitle:"Sign in from Cursor",finishDescription:"Enable Honeydew, complete the browser sign-in, and ask Cursor Agent to list your recipe tools.",finishUrl:"https://cursor.com/",finishLabel:"Open Cursor"},cli:{copyValue:No,copyDisplayValue:'{ "mcpServers": { "honeydew": { "url": "…" } } }',copyLabel:"Cursor MCP config",copyTitle:"Copy the Cursor MCP config",copyDescription:"Use this JSON when you prefer to configure Cursor manually.",setupTitle:"Add it to mcp.json",setupDescription:"Paste the block into your Cursor MCP configuration, save it, and enable Honeydew from Cursor Settings.",setupUrl:"https://cursor.com/docs/context/model-context-protocol",setupLabel:"Open Cursor MCP docs",finishTitle:"Complete Honeydew sign-in",finishDescription:"Return to Cursor after OAuth and use the Honeydew tools from an Agent conversation.",finishUrl:"https://cursor.com/",finishLabel:"Open Cursor"}}},{key:"claude-code",name:"Claude Code",icon:ps.claude,accent:"#d97757",iconBackground:"#202122",iconFit:"contain",defaultMode:"cli",guides:{mcp:{copyValue:Er,copyLabel:"Connector URL",copyTitle:"Copy the Honeydew connector URL",copyDescription:"Claude Code connects to this remote HTTP MCP endpoint.",setupTitle:"Add the remote server",setupDescription:"Use the HTTP transport, name the server honeydew, and set user scope if you want it in every project.",setupUrl:"https://code.claude.com/docs/en/mcp",setupLabel:"Open Claude Code MCP docs",finishTitle:"Authenticate and ask",finishDescription:"Run the login flow, approve access in your browser, and return to Claude Code.",finishUrl:"https://claude.com/product/claude-code",finishLabel:"Open Claude Code"},cli:{copyValue:cp,copyDisplayValue:"claude mcp add … && claude mcp login honeydew",copyLabel:"Claude Code commands",copyTitle:"Copy the Claude Code commands",copyDescription:"The commands add Honeydew at user scope, then start sign-in.",setupTitle:"Run both commands in Terminal",setupDescription:"Claude Code will recognize the server, open Honeydew sign-in, and save the connection after approval.",setupUrl:"https://code.claude.com/docs/en/mcp",setupLabel:"Open Claude Code MCP docs",finishTitle:"Return to Claude Code",finishDescription:"Ask Claude Code to search your cookbook, build a meal plan, or add ingredients to the grocery list.",finishUrl:"https://claude.com/product/claude-code",finishLabel:"Open Claude Code"}}},{key:"other",name:"Other apps",icon:"/honeydew-app-icon-small.png",accent:"#75b69e",iconBackgroun
722d:"#eff8f1",iconFit:"cover",defaultMode:"mcp",guides:{mcp:{copyValue:Er,copyLabel:"Connector URL",copyTitle:"Copy the Honeydew connector URL",copyDescription:"Use this in any client that supports remote HTTP MCP servers and OAuth sign-in.",setupTitle:"Add a custom MCP server",setupDescription:"Name it Honeydew, choose remote HTTP or Streamable HTTP, paste the URL, and leave custom OAuth fields blank.",setupUrl:ns,setupLabel:"Open Honeydew connector docs",finishTitle:"Sign in and approve access",finishDescription:"Use the same Apple, Google, or Email account as the app. Menu labels and availability vary by client.",finishUrl:ns,finishLabel:"View setup notes"},cli:{copyValue:No,copyDisplayValue:'{ "mcpServers": { "honeydew": { "url": "…" } } }',copyLabel:"MCP configuration",copyTitle:"Copy the portable MCP config",copyDescription:"This common JSON shape works in clients that accept mcpServers config.",setupTitle:"Paste it into your client config",setupDescription:"Save, enable Honeydew, and follow the browser sign-in prompt. Consult your client's MCP docs for its exact file location.",setupUrl:ns,setupLabel:"Open Honeydew connector docs",finishTitle:"Return to your AI app",finishDescription:"Once connected, ask the app to list Honeydew tools before trying your first cookbook request.",finishUrl:ns,finishLabel:"View connector docs"}}}],Co=[{key:"search",label:"Find dinner",eyebrow:"Cookbook search",prompt:"What recipes do I have with chicken and spinach that take under 30 minutes?",intro:"I’ll search your Honeydew cookbook for chicken and spinach, then keep only the recipes that fit your time limit.",progress:"I found three saved recipes that match.",tools:["search_recipes"],toolLabel:"Honeydew recipe search",response:"Here are the best matches from your own cookbook, ordered by estimated time.",followUpPrompt:"Add the ingredients for Lemon Chicken Orzo to our grocery list.",followUpResponse:"Done. I added the recipe ingredients and merged two items that were already on your shared list.",followUpTools:["add_recipe_to_grocery_list"],resultTitle:"Quick chicken dinners",resultKicker:"Your saved recipes",resultStatus:"3 matches",resultMetric:"22 min",resultMetricLabel:"quickest recipe",resultRows:[{label:"Lemon Chicken Orzo",value:"22 min",detail:"Chicken · Spinach · Lemon",tone:"green"},{label:"Creamy Tuscan Chicken",value:"25 min",detail:"Chicken · Spinach · Parmesan",tone:"orange"},{label:"Chicken Pesto Pasta",value:"28 min",detail:"Chicken · Spinach · Basil",tone:"blue"}]},{key:"save",label:"Save a recipe",eyebrow:"Recipe capture",prompt:"Save this sheet-pan gnocchi recipe to Honeydew and tag it dinner and vegetarian.",intro:"I’ll turn the recipe you shared into a structured Honeydew recipe with ingredients, directions, and tags.",progress:"The recipe is structured and ready to save.",tools:["create_recipe","add_recipe_tags"],toolLabel:"Honeydew recipe saving",response:"Saved. I also added both tags so you can find it later from the app or any connected assistant.",followUpPrompt:"Put it in my Weeknight Dinners folder too.",followUpResponse:"Added. Sheet-Pan Gnocchi is now in Weeknight Dinners without creating a duplicate recipe.",followUpTools:["add_recipes_to_folder"],resultTitle:"Sheet-Pan Gnocchi",resultKicker:"Saved to Honeydew",resultStatus:"Dinner · Vegetarian",resultMetric:"35 min",resultMetricLabel:"estimated time",resultRows:[{label:"Ingredients",value:"11",detail:"Structured and ready to scale",tone:"green"},{label:"Directions",value:"5 steps",detail:"Ordered cooking instructions",tone:"orange"},{label:"Cookbook",value:"Saved",detail:"Available across your devices",tone:"blue"}]},{key:"grocery",label:"Grocery list",eyebrow:"Shared household",prompt:"Add everything for creamy carbonara to our grocery list, then organize it by aisle.",intro:"I’ll load the saved carbonara ingredients, add them to your shared list, merge duplicates, and organize the result.",progress:"Eight ingredients were added and grouped into four store sections.",tools:["add_recipe_to_grocery_list","organize_grocery_list"],toolLabel:"Honeydew shared grocery list",response:"Your homegroup grocery list is updated. Existing eggs and parmesan were merged instead of duplicated.",followUpPrompt:"Great. Check off the eggs because we already bought those.",followUpResponse:"Eggs are checked off. Everyone in your homegroup will see the change.",followUpTools:["set_grocery_items_checked"],resultTitle:"Carbonara groceries",resultKicker:"Shared grocery list",resultStatus:"8 items · 4 sections",resultMetric:"2 merged",resultMetricLabel:"duplicate items",resultRows:[{label:"Dairy & Eggs",value:"3 items",detail
722:"Eggs · Parmesan · Pecorino",tone:"green"},{label:"Meat",value:"1 item",detail:"Guanciale",tone:"orange"},{label:"Pantry",value:"4 items",detail:"Pasta · Pepper · Salt · Oil",tone:"blue"}]},{key:"meal-plan",label:"Plan the week",eyebrow:"Meal planning",prompt:"Plan three quick dinners next week from recipes I already saved.",intro:"I’ll search your dinners, compare their timing, and add three different meals to your shared plan.",progress:"I found a balanced set with no dinner over 35 minutes.",tools:["search_recipes","add_to_meal_plan"],toolLabel:"Honeydew meal planner",response:"Monday, Wednesday, and Friday are planned. Everyone in your homegroup can see the update.",followUpPrompt:"Swap Friday’s gnocchi for my creamy carbonara.",followUpResponse:"Done. Friday now has Creamy Carbonara, and the gnocchi recipe is still safely saved in your cookbook.",followUpTools:["remove_from_meal_plan","add_to_meal_plan"],resultTitle:"Next week’s dinners",resultKicker:"Shared meal plan",resultStatus:"3 dinners added",resultMetric:"29 min",resultMetricLabel:"average cook time",resultRows:[{label:"Monday",value:"25 min",detail:"Chicken Pesto Pasta",tone:"green"},{label:"Wednesday",value:"28 min",detail:"Teriyaki Rice Bowls",tone:"orange"},{label:"Friday",value:"34 min",detail:"Sheet-Pan Gnocchi",tone:"blue"}]},{key:"recent",label:"Recent saves",eyebrow:"Cookbook activity",prompt:"What did I save recently, and which one is best for lunch tomorrow?",intro:"I’ll load your latest saved recipes and compare their time, serving size, and tags.",progress:"Your five most recent recipes are ready.",tools:["list_recent_recipes"],toolLabel:"Honeydew recent recipes",response:"The teriyaki rice bowl is the strongest lunch fit because it is tagged lunch and makes two servings in 20 minutes.",followUpPrompt:"Add that one to lunch next Thursday.",followUpResponse:"Added Teriyaki Rice Bowl to next Thursday’s shared meal plan as lunch.",followUpTools:["add_to_meal_plan"],resultTitle:"Recent recipe saves",resultKicker:"From your cookbook",resultStatus:"5 recipes",resultMetric:"2 servings",resultMetricLabel:"tomorrow’s lunch",resultRows:[{label:"Teriyaki Rice Bowl",value:"Best fit",detail:"20 min · Lunch",tone:"green"},{label:"Banana Strawberry Oats",value:"10 min",detail:"Breakfast · 1 serving",tone:"orange"},{label:"Creamy Carbonara",value:"25 min",detail:"Dinner · 4 servings",tone:"blue"}]}],wy=[{name:"search_recipes",title:"Search recipes",description:"Search your saved recipes by text, tags, and favorites.",category:"recipes",preview:"search",scope:"Read",featured:!0},{name:"get_recipe_detail",title:"Recipe details",description:"Load ingredients, steps, notes, nutrition, timing, and servings for one recipe.",category:"recipes",preview:"recipe",scope:"Read",featured:!0},{name:"list_recent_recipes",title:"Recent recipes",description:"See the recipes you saved most recently, ready for follow-up questions.",category:"recipes",preview:"recent",scope:"Read",featured:!0},{name:"list_folders",title:"List folders",description:"Load the folders that organize your personal recipe library.",category:"organize",preview:"folder",scope:"Read"},{name:"search_folders",title:"Search folders",description:"Find the right recipe collection by folder name.",category:"organize",preview:"folder",scope:"Read"},{name:"list_tags",title:"List tags",description:"See the tags used across your saved recipes.",category:"organize",preview:"tags",scope:"Read"},{name:"create_recipe",title:"Save a recipe",description:"Create a structured Honeydew recipe from content you share with your assistant.",category:"recipes",preview:"recipe",scope:"Write",featured:!0},{name:"update_recipe_details",title:"Edit recipe details",description:"Update a recipe’s title, ingredients, steps, nutrition, timing, or servings.",category:"recipes",preview:"edit",scope:"Write"},{name:"set_recipe_photo_from_url",title:"Set a recipe photo",description:"Import a durable cover photo for a saved recipe from a URL.",category:"organize",preview:"photo",scope:"Write"},{name:"set_recipe_favorite",title:"Favorite a recipe",description:"Add or remove a saved recipe from your favorites.",category:"organize",preview:"recipe",scope:"Write"},{name:"add_recipe_tags",title:"Add recipe tags",description:"Attach useful tags to a saved recipe for easier discovery.",category:"organize",preview:"tags",scope:"Write"},{name:"remove_recipe_tags",title:"Remove recipe tags",description:"Clean up tags that no longer belong on a recipe.",category:"organize",preview:"tags",scope:"Write"},{name:"append_recipe_note",title:"Add a recipe note",description:"Append a personal note without replacing existing notes.",category:"organize",preview:"edit",scope:"Write"},{name:"create_folder",title:"Create a folder",description:"Make a new collection for organizing recipes.",category:"organize",preview:"folder",scope:"Write"},{name:"rename_folder",title:"Rename a folder",description:"Give an existing recipe collection a clearer name.",category:"organize",preview:"folder",scope:"Write"},{name:"add_recipes_to_folder",title:"Add recipes to a folder",description:"Place one or more saved recipes into a collection.",category:"organize",preview:"folder",scope:"Write"},{name:"remove_recipes_from_folder",title:"Remove recipes from a folder",description:"Take recipes out of a collection without deleting the recipes.",category:"organize",preview:"folder",scope:"Write"},{name:"get_grocery_list",title:"Read the grocery list",description:"Load your homegroup’s shared grocery list grouped by store section.",category:"grocery",preview:"grocery",scope:"Homegroup",featured:!0},{name:"add_grocery_items",title:"Add grocery items",description:"Add loose grocery items to the household’s shared list.",category:"grocery",preview:"grocery",scope:"Homegroup"},{name:"add_recipe_to_grocery_list",title:"Recipe to grocery list",description:"Add every ingredient from a saved recipe to the shared list.",category:"grocery",preview:"grocery",scope:"Homegroup",featured:!0},{name:"set_grocery_items_checked",title:"Check off groceries",description:"Mark grocery items checked or return them to the active list.",category:"grocery",preview:"grocery",scope:"Homegroup"},{name:"remove_grocery_items",title:"Remove grocery items",description:"Remove items that the household no longer needs.",category:"grocery",preview:"grocery",scope:"Homegroup"},{name:"organize_grocery_list",title:"Organize the grocery list",description:"Merge duplicates and s
722ort the shared list by aisle, like the app’s Organize button.",category:"grocery",preview:"grocery",scope:"Homegroup",featured:!0},{name:"get_meal_plan",title:"Read the meal plan",description:"Load the household’s shared meal plan for a date range.",category:"meal-plan",preview:"meal-plan",scope:"Homegroup"},{name:"add_to_meal_plan",title:"Add to the meal plan",description:"Schedule a saved recipe on the shared household meal plan.",category:"meal-plan",preview:"meal-plan",scope:"Homegroup",featured:!0},{name:"remove_from_meal_plan",title:"Remove from the meal plan",description:"Take a planned recipe off a day without changing the saved recipe.",category:"meal-plan",preview:"meal-plan",scope:"Homegroup"}],Ta=wy.length,_y=[{question:"How does Honeydew connect to AI assistants?",answer:"Honeydew uses MCP, the Model Context Protocol. Add the remote connector URL to a compatible AI client, sign in with Honeydew, approve the requested access, and the assistant can call Honeydew tools inside the conversation."},{question:"Which AI apps can I use?",answer:"This page includes setup help for Claude, ChatGPT, Cursor, Claude Code, and other remote-MCP clients. Availability, menu labels, plans, and workspace permissions vary by app and version."},{question:"What can the connector do?",answer:`The current catalog has ${Ta} tools. It can search and read recipes, save and edit recipe details, organize folders and tags, and work with a homegroup’s shared grocery list and meal plan when you approve that access.`},{question:"Can it delete my recipes?",answer:"No. Recipes cannot be deleted through the connector. It can update recipe details and organization with your permission, and it can remove grocery items, meal-plan entries, tags, or folder membership when you ask."},{question:"Do I need an API key?",answer:"No. Honeydew uses browser-based sign-in. Choose Apple, Google, or Email and use the same provider you use in the Honeydew app."},{question:"Why does my cookbook look empty?",answer:"Apple, Google, and Email are separate Honeydew account types. Disconnect and reconnect the connector, then sign in with the exact same provider you use in the app."},{question:"Why are grocery or meal-plan tools unavailable?",answer:"Those tools sync through a Honeydew homegroup. Create one in the app under Settings → Homegroup, even if it is only you, then reconnect or try the request again."},{question:"Can I disconnect Honeydew later?",answer:"Yes. Remove or disconnect Honeydew from your AI client’s connector settings at any time. You can reconnect later with the same server URL."}],CS=[{label:"Recipe Guides",to:"/guides"},{label:"Free Recipe Tools",to:"/tools"},{label:"Support Center",to:"/support"},{label:"Privacy",to:"/privacy-policy"},{label:"Terms",to:"/terms-of-service"},{label:"Honeydew Home",to:"/"}];function Sl({provider:t,className:e=""}){return i.jsx("span",{className:`relative grid shrink-0 place-items-center overflow-hidden rounded-[12px] ${e}`,style:{backgroundColor:t.iconBackground,boxShadow:`0 9px 28px ${t.accent}28`},"aria-hidden":"true",children:i.jsx("img",{src:t.icon,alt:"",className:`h-full w-full ${t.iconFit==="contain"?"object-contain p-[14%]":"object-cover"}`})})}function SS({compact:t=!1}){const e=t?"h-11 w-11 sm:h-14 sm:w-14":"h-[52px] w-[52px] sm:h-16 sm:w-16",r=t?"h-[64px] w-[64px] sm:h-[74px] sm:w-[74px]":"h-[76px] w-[76px] sm:h-[92px] sm:w-[92px]",s=[nr[0],nr[1],{...nr[4],key:"other",name:"Gemini",icon:ps.gemini,iconBackground:"#f5f7ff",accent:"#5a7bea"},{...nr[4],key:"other",name:"Grok",icon:ps.grok,iconBackground:"#f4f4f2",accent:"#202322"}];return i.jsxs("div",{className:"flex isolate items-center justify-center","aria-label":"Honeydew with compatible AI assistants",children:[s.slice(0,2).map((n,a)=>i.jsx(Sl,{provider:n,className:`${e} ${a===0?"":"-ml-5 sm:-ml-6"} ${["z-10 rotate-3","z-20 -rotate-2"][a]} border-2 border-white dark:border-white/85`},`${n.name}-${a}`)),i.jsx("span",{className:`relative z-30 -ml-5 grid ${r} place-items-center overflow-hidden rounded-[24px] border-2 border-white bg-[#eff8f1] shadow-[0_20px_48px_rgba(54,126,86,.28)] ring-1 ring-honeydew-800/10 sm:-ml-6 dark:border-white/85 dark:bg-[#142019] dark:shadow-[0_20px_50px_rgba(117,182,158,.18)]`,children:i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"Honeydew",className:"h-full w-full object-cover"})}),s.slice(2).map((n,a)=>i.jsx(Sl,{provider:n,className:`${e} -ml-5 sm:-ml-6 ${["z-20 rotate-2","z-10 -rotate-5"][a]} border-2 border-white dark:border-white/85`},`${n.name}-${a}`))]})}async function PS(t){if(navigator.clipboard&&window.isSecureContext){await navigator.clipboard.writeText(t);return}const e=document.createElement("textarea");e.value=t,e.setAttribute("readonly",""),e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select();const r=document.execCommand("copy");if(e.remove(),!r)throw new Error("Clipboard copy failed")}function So({children:t}){return i.jsx("span",{className:"grid h-8 w-8 place-items-center rounded-full bg-honeydew-900/[0.07] text-sm font-black text-honeydew-900 dark:bg-white/[0.09] dar
722k:text-white",children:t})}function RS(){const[t,e]=g.useState("claude"),[r,s]=g.useState("mcp"),[n,a]=g.useState(null),o=nr.find(d=>d.key===t)??nr[0],l=o.guides[r],c=async()=>{try{await PS(l.copyValue),a(l.copyValue),Gd.success(`${l.copyLabel} copied`,{description:`Use it to finish the ${o.name} setup.`}),window.setTimeout(()=>a(null),1800)}catch{Gd.error(`Could not copy ${l.copyLabel.toLowerCase()}`)}};return i.jsxs("div",{className:"overflow-hidden rounded-[30px] border border-honeydew-900/10 bg-white/80 p-1.5 shadow-[0_32px_90px_rgba(31,72,47,.15)] backdrop-blur-xl dark:border-white/[0.08] dark:bg-[#202223] dark:shadow-[0_32px_90px_rgba(0,0,0,.4)]",children:[i.jsxs("div",{className:"flex flex-col gap-3 px-2 py-2.5 lg:flex-row lg:items-center lg:justify-between",children:[i.jsx("div",{className:"flex min-w-0 items-center gap-1 overflow-x-auto pb-1 lg:pb-0",role:"tablist","aria-label":"Choose an AI provider",children:nr.map(d=>{const u=d.key===t;return i.jsxs("button",{type:"button",role:"tab","aria-selected":u,onClick:()=>{e(d.key),s(d.defaultMode)},className:`inline-flex h-10 shrink-0 items-center gap-2 rounded-full px-3.5 text-sm font-bold transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 ${u?"bg-[#1f2a22] text-white shadow-sm dark:bg-white dark:text-[#17191a]":"text-[#687169] hover:bg-honeydew-900/[0.05] hover:text-[#1f2a22] dark:text-white/65 dark:hover:bg-white/[0.06] dark:hover:text-white"}`,children:[i.jsx(Sl,{provider:d,className:"h-5 w-5 rounded-md"}),d.name]},d.key)})}),i.jsxs("div",{className:"flex w-fit items-center rounded-full border border-honeydew-900/10 bg-honeydew-900/[0.04] p-1 dark:border-white/[0.06] dark:bg-white/[0.055]",role:"tablist","aria-label":"Choose setup method",children:[i.jsxs("button",{type:"button",role:"tab","aria-selected":r==="mcp",onClick:()=>s("mcp"),className:`inline-flex h-8 items-center gap-2 rounded-full px-3 text-[11px] font-black uppercase tracking-[0.08em] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 ${r==="mcp"?"bg-white text-honeydew-900 shadow-sm dark:bg-white/[0.12] dark:text-white":"text-honeydew-900/45 hover:text-honeydew-900/75 dark:text-white/45 dark:hover:text-white/75"}`,children:[i.jsx(Mb,{className:"h-3.5 w-3.5"}),"MCP"]}),i.jsxs("button",{type:"button",role:"tab","aria-selected":r==="cli",onClick:()=>s("cli"),className:`inline-flex h-8 items-center gap-2 rounded-full px-3 text-[11px] font-black uppercase tracking-[0.08em] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 ${r==="cli"?"bg-white text-honeydew-900 shadow-sm dark:bg-white/[0.12] dark:text-white":"text-honeydew-900/45 hover:text-honeydew-900/75 dark:text-white/45 dark:hover:text-white/75"}`,children:[i.jsx(Jb,{className:"h-3.5 w-3.5"}),"CLI"]})]})]}),i.jsxs("div",{className:"grid overflow-hidden rounded-[25px] border border-honeydew-900/[0.08] bg-[#f7faf8] lg:grid-cols-3 dark:border-white/[0.05] dark:bg-[#121415]",role:"tabpanel","aria-label":`${o.name} ${r.toUpperCase()} setup`,children:[i.jsxs("div",{className:"flex min-h-[286px] flex-col border-b border-honeydew-900/[0.08] p-5 sm:p-6 lg:border-b-0 lg:border-r lg:p-7 dark:border-white/[0.06]",children:[i.jsx(So,{children:"1"}),i.jsx("h3",{className:"mt-7 font-round text-lg font-bold text-[#1f2a22] dark:text-white",children:l.copyTitle}),i.jsx("p",{className:"mt-2 text-sm font-medium leading-6 text-[#687169] dark:text-white/43",children:l.copyDescription}),i.jsxs("button",{type:"button",onClick:c,className:"group mt-auto flex min-h-14 w-full items-center gap-3 rounded-[15px] border border-honeydew-900/[0.08] bg-white px-4 text-left transition hover:border-honeydew-500/40 hover:bg-honeydew-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 dark:border-white/[0.05] dark:bg-white/[0.07] dark:hover:border-honeydew-400/35 dark:hover:bg-white/[0.1]","aria-label":`Copy ${l.copyLabel.toLowerCase()} for ${o.name}`,children:[i.jsx("code",{className:"min-w-0 flex-1 truncate text-[12px] font-semibold text-honeydew-900 sm:text-sm dark:text-white/85",children:l.copyDisplayValue??l.copyValue}),n===l.copyValue?i.jsx(Ql,{className:"h-4 w-4 shrink-0 text-honeydew-600 dark:text-honeydew-300"}):i.jsx(nf,{className:"h-4 w-4 shrink-0 text-honeydew-900/45 transition group-hover:text-honeydew-600 dark:text-white/60 dark:group-hover:text-honeydew-300"})]})]}),i.jsxs("div",{className:"flex min-h-[286px] flex-col border-b border-honeydew-900/[0.08] p-5 sm:p-6 lg:border-b-0 lg:border-r lg:p-7 dark:border-white/[0.06]",children:[i.jsx(So,{children:"2"}),i.jsx("h3",{className:"mt-7 font-round text-lg font-bold text-[#1f2a22] dark:text-white",children:l.setupTitle}),i.jsx("p",{className:"mt-2 text-sm font-medium leading-6 text-[#687169] dark:text-white/43",children:l.setupDescription}),i.jsxs("a",{href:l.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"mt-auto inline-flex min-h-12 w-fit items-center justify-center gap-2 rounded-full border border-honeydew-900/10 bg-white px-5 text-sm font-bold text-[#1f2a22] transition hover:-translate-y-0.5 hover:border-honeydew-500/35 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 dark:border-white/[0.07] dark:bg-white/[0.055] dark:text-white dark:hover:border-honeydew-300/30 dark:hover:bg-white/[0.09]",children:[l.setupLabel,i.jsx(ic,{className:"h-4 w-4"})]})]}),i.jsxs("div",{className:"flex min-h-[286px] flex-col p-5 sm:p-6 lg:p-7",children:[i.jsx(So,{children:"3"}),i.jsx("h3",{className:"mt-7 font-round text-lg font-bold text-[#1f2a22] dark:text-white",children:l.finishTitle}),i.jsx("p",{className:"mt-2 text-sm font-medium leading-6 text-[#687169] dark:text-white/43",children:l.finishDescription}),i.jsxs("a",{href:l.finishUrl,target:"_blank",rel:"noopener noreferrer",className:"mt-auto inline-flex min-h-12 w-fit items-center justify-center gap-2 rounded-full bg-[#1f2a22] px-5 text-sm font-bold text-white shadow-[0_6px_0_#75b69e] transition hover:-translate-y-0.5 hover:bg-[#2c3b31] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 dark:bg-honeydew-300 dark:text-[#142019] dark:shadow-[0_6px_0_#326251] dark:hover:bg-honeydew-200",children:[i.jsx(Bn,{className:"h-4 w-4"}),l.finishLabel]})]})]}),i.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-x-5 gap-y-2 px-4 py-5 text-xs font-semibold text-[#657068] dark:text-white/38 sm:text-sm",children:[i.jsxs("span",{className:"inline-flex items-center gap-2",children:[i.jsx(cc,{className:"h-4 w-4 text-honeydew-600 dark:text-honeydew-300"}),"Browser sign-in"]}),i.jsx("span",{children:"Remote MCP"}),i.jsxs("span",{children:[Ta," live tools"]})]})]})}const OS={search:Un,save:jb,grocery:tm,"meal-plan":zf,recent:Cb},IS={green:"border-honeydew-500/25 bg-honeydew-500/[0.09] text-honeydew-800 dark:text-honeydew-200",orange:"border-orange-400/25 bg-orange-400/[0.09] text-orange-700 dark:text-orange-300",blue:"border-sky-400/25 bg-sky-4
72200/[0.09] text-sky-700 dark:text-sky-300"};function dp({tools:t}){return i.jsx("div",{className:"mt-2 flex flex-wrap gap-1.5","aria-label":"Honeydew tools used by Claude",children:t.map(e=>i.jsxs("span",{className:"inline-flex min-h-7 items-center gap-1.5 rounded-full border border-honeydew-500/20 bg-honeydew-500/[0.065] px-2.5 py-1 text-[10px] font-bold text-honeydew-900/55 dark:border-honeydew-300/15 dark:bg-honeydew-300/[0.055] dark:text-white/50","aria-label":`Claude used the Honeydew tool ${e}`,children:[i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"",className:"h-4 w-4 rounded-[5px] object-cover"}),i.jsx("span",{className:"whitespace-nowrap",children:"Claude used Honeydew"}),i.jsx("span",{"aria-hidden":"true",className:"opacity-35",children:"·"}),i.jsx("code",{className:"font-mono text-[9px] font-bold text-honeydew-800/65 dark:text-honeydew-200/65",children:e})]},e))})}function DS(){const[t,e]=g.useState("search"),r=Co.find(n=>n.key===t)??Co[0],s=nr[0];return i.jsx("section",{id:"how-it-works",className:"scroll-mt-28 px-4 py-24 sm:px-6 md:py-32",children:i.jsxs("div",{className:"mx-auto max-w-[1220px]",children:[i.jsxs("div",{className:"text-center",children:[i.jsx("p",{className:"text-[11px] font-black uppercase tracking-[0.16em] text-honeydew-700 dark:text-honeydew-300",children:"One request, real Honeydew actions"}),i.jsx("h2",{className:"display mx-auto mt-4 max-w-[900px] text-[#1f2a22] dark:text-gray-100",children:"How does Honeydew MCP work?"})]}),i.jsx("div",{className:"mx-auto mt-9 flex w-fit max-w-full items-center gap-1 overflow-x-auto rounded-full border border-honeydew-900/10 bg-white/80 p-1.5 shadow-sm backdrop-blur dark:border-white/[0.07] dark:bg-[#202223]",role:"tablist","aria-label":"Choose a Honeydew MCP example",children:Co.map(n=>{const a=OS[n.key],o=n.key===t;return i.jsxs("button",{type:"button",role:"tab","aria-selected":o,onClick:()=>e(n.key),className:`inline-flex h-10 shrink-0 items-center gap-2 rounded-full px-3.5 text-sm font-bold transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 sm:px-4 ${o?"bg-[#1f2a22] text-white dark:bg-white dark:text-[#161819]":"text-[#718077] hover:bg-honeydew-900/[0.04] hover:text-[#1f2a22] dark:text-white/45 dark:hover:bg-white/[0.05] dark:hover:text-white/75"}`,children:[i.jsx(a,{className:"h-4 w-4"}),n.label]},n.key)})}),i.jsxs("div",{className:"mt-11 grid overflow-hidden rounded-[30px] border border-honeydew-900/10 bg-white/85 shadow-[0_34px_100px_rgba(31,72,47,.16)] backdrop-blur lg:grid-cols-[minmax(0,1.56fr)_minmax(360px,1fr)] dark:border-white/[0.08] dark:bg-[#1b1d1e] dark:shadow-[0_34px_100px_rgba(0,0,0,.34)]",children:[i.jsxs("div",{className:"flex min-h-[660px] flex-col border-b border-honeydew-900/[0.08] p-6 sm:p-8 lg:border-b-0 lg:border-r lg:p-9 dark:border-white/[0.07]",children:[i.jsxs("div",{className:"flex items-center justify-between gap-4 border-b border-honeydew-900/[0.08] pb-5 dark:border-white/[0.07]",children:[i.jsxs("div",{children:[i.jsx("p",{className:"text-[10px] font-black uppercase tracking-[0.13em] text-honeydew-700 dark:text-honeydew-300",children:"Example conversation"}),i.jsx("p",{className:"mt-1 font-round text-lg font-bold text-[#1f2a22] dark:text-white",children:"You + Claude + Honeydew"})]}),i.jsxs("div",{className:"flex -space-x-2","aria-hidden":"true",children:[i.jsx("span",{className:"grid h-9 w-9 place-items-center rounded-full border-2 border-white bg-[#1f2a22] text-[11px] font-black text-white dark:border-[#1b1d1e]",children:"You"}),i.jsx("span",{className:"grid h-9 w-9 place-items-center overflow-hidden rounded-full border-2 border-white bg-white dark:border-[#1b1d1e]",children:i.jsx("img",{src:s.icon,alt:"",className:"h-full w-full object-contain p-1.5"})}),i.jsx("span",{className:"grid h-9 w-9 place-items-center overflow-hidden rounded-full border-2 border-white bg-honeydew-50 dark:border-[#1b1d1e] dark:bg-[#142019]",children:i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"",className:"h-full w-full object-cover"})})]})]}),i.jsxs("div",{className:"mt-6 animate-fade-in space-y-4 text-[14px] font-medium leading-6 text-[#4f5c54] sm:text-[15px] dark:text-white/72","aria-label":"Illustrative conversation",children:[i.jsx("div",{className:"flex justify-end",children:i.jsxs("div",{className:"max-w-[86%]",children:[i.jsx("p",{className:"mb-1.5 text-right text-[10px] font-black uppercase tracking-[0.1em] text-honeydew-900/38 dark:text-white/35",children:"You"}),i.jsx("div",{className:"rounded-[20px] rounded-br-[6px] bg-[#1f2a22] px-4 py-3.5 text-white shadow-sm dark:bg-honeydew-300 dark:text-[#142019]",children:r.prompt})]})}),i.jsxs("div",{className:"flex items-start gap-3",children:[i.jsx("span",{className:"mt-5 grid h-8 w-8 shrink-0 place-items-center overflow-hidden rounded-full bg-white shadow-sm",children:i.jsx("img",{src:s.icon,alt:"",className:"h-full w-full object-contain p-1.5"})}),i.jsxs("div",{className:"max-w-[86%]",children:[i.jsx("p",{className:"mb-1.5 text-[10px] font-black uppercase tracking-[0.1em] text-honeydew-900/38 dark:text-white/35",children:"Claude"}),i.jsxs("div",{className:"rounded-[20px] rounded-bl-[6px] border border-honeydew-900/[0.08] bg-[#f5f8f6] px-4 py-3.5 dar
722k:border-white/[0.07] dark:bg-white/[0.055]",children:[i.jsx("p",{children:r.intro}),i.jsx("p",{className:"mt-2",children:r.progress})]}),i.jsx(dp,{tools:r.tools})]})]}),i.jsxs("div",{className:"flex items-start gap-3",children:[i.jsx("span",{className:"mt-5 grid h-8 w-8 shrink-0 place-items-center overflow-hidden rounded-full bg-white shadow-sm",children:i.jsx("img",{src:s.icon,alt:"",className:"h-full w-full object-contain p-1.5"})}),i.jsxs("div",{className:"max-w-[86%]",children:[i.jsx("p",{className:"mb-1.5 text-[10px] font-black uppercase tracking-[0.1em] text-honeydew-900/38 dark:text-white/35",children:"Claude"}),i.jsx("div",{className:"rounded-[20px] rounded-bl-[6px] border border-honeydew-900/[0.08] bg-[#f5f8f6] px-4 py-3.5 dark:border-white/[0.07] dark:bg-white/[0.055]",children:r.response})]})]}),i.jsx("div",{className:"flex justify-end",children:i.jsxs("div",{className:"max-w-[82%]",children:[i.jsx("p",{className:"mb-1.5 text-right text-[10px] font-black uppercase tracking-[0.1em] text-honeydew-900/38 dark:text-white/35",children:"You · Follow-up"}),i.jsx("div",{className:"rounded-[20px] rounded-br-[6px] bg-[#1f2a22] px-4 py-3.5 text-white shadow-sm dark:bg-honeydew-300 dark:text-[#142019]",children:r.followUpPrompt})]})}),i.jsxs("div",{className:"flex items-start gap-3",children:[i.jsx("span",{className:"mt-5 grid h-8 w-8 shrink-0 place-items-center overflow-hidden rounded-full bg-white shadow-sm",children:i.jsx("img",{src:s.icon,alt:"",className:"h-full w-full object-contain p-1.5"})}),i.jsxs("div",{className:"max-w-[86%]",children:[i.jsx("p",{className:"mb-1.5 text-[10px] font-black uppercase tracking-[0.1em] text-honeydew-900/38 dark:text-white/35",children:"Claude"}),i.jsx("div",{className:"rounded-[20px] rounded-bl-[6px] border border-honeydew-900/[0.08] bg-[#f5f8f6] px-4 py-3.5 dark:border-white/[0.07] dark:bg-white/[0.055]",children:r.followUpResponse}),i.jsx(dp,{tools:r.followUpTools})]})]})]},r.key),i.jsxs("div",{className:"mt-auto flex items-center gap-4 pt-8 text-honeydew-900/30 dark:text-white/30",children:[i.jsx("button",{type:"button",className:"rounded-md p-1 hover:text-honeydew-700 dark:hover:text-white","aria-label":"Like example response",children:i.jsx(sm,{className:"h-4 w-4"})}),i.jsx("button",{type:"button",className:"rounded-md p-1 hover:text-honeydew-700 dark:hover:text-white","aria-label":"Dislike example response",children:i.jsx(rm,{className:"h-4 w-4"})}),i.jsx("button",{type:"button",className:"rounded-md p-1 hover:text-honeydew-700 dark:hover:text-white","aria-label":"Copy example response",children:i.jsx(nf,{className:"h-4 w-4"})}),i.jsx("button",{type:"button",className:"rounded-md p-1 hover:text-honeydew-700 dark:hover:text-white","aria-label":"Regenerate example response",children:i.jsx(Yx,{className:"h-4 w-4"})})]})]}),i.jsxs("div",{className:"flex min-h-[620px] flex-col bg-gradient-to-b from-honeydew-50/45 to-transparent p-6 sm:p-9 lg:p-10 dark:from-honeydew-950/20",children:[i.jsxs("div",{className:"flex items-center justify-center gap-2 font-round text-base font-bold text-[#1f2a22] dark:text-white",children:[i.jsx(oc,{className:"h-5 w-5 text-honeydew-600 dark:text-honeydew-300"}),"Result"]}),i.jsxs("div",{className:"my-auto animate-fade-in",children:[i.jsxs("div",{className:"relative overflow-hidden rounded-[25px] border border-honeydew-900/[0.09] bg-white p-5 shadow-[0_26px_70px_rgba(31,72,47,.16)] sm:p-6 dark:border-white/[0.08] dark:bg-[#111415] dark:shadow-[0_26px_70px_rgba(0,0,0,.38)]",children:[i.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-0 top-0 h-40 bg-[radial-gradient(circle_at_82%_0%,rgba(117,182,158,.28),transparent_58%)] dark:bg-[radial-gradient(circle_at_82%_0%,rgba(156,208,182,.18),transparent_58%)]"}),i.jsxs("div",{className:"relative",children:[i.jsxs("div",{className:"flex items-start justify-between gap-4",children:[i.jsxs("div",{children:[i.jsx("p",{className:"text-[10px] font-black uppercase tracking-[0.12em] text-honeydew-700 dark:text-honeydew-300",children:r.resultKicker}),i.jsx("h3",{className:"mt-2 font-round text-2xl font-bold tracking-[-0.025em] text-[#1f2a22] dark:text-white",children:r.resultTitle}),i.jsx("p",{className:"mt-1 text-xs font-semibold text-[#758078] dark:text-white/38",children:r.resultStatus})]}),i.jsx("span",{className:"grid h-11 w-11 shrink-0 place-items-center overflow-hidden rounded-[14px] border border-honeydew-500/20 bg-honeydew-50 dark:bg-[#142019]",children:i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"",className:"h-full w-full object-cover"})})]}),i.jsxs("div",{className:"mt-7 rounded-[19px] border border-honeydew-500/20 bg-honeydew-500/[0.07] p-5",children:[i.jsx("p",{className:"font-round text-4xl font-bold tracking-[-0.045em] text-[#1f2a22] dark:text-white",children:r.resultMetric}),i.jsx("p",{className:"mt-1 text-xs font-black uppercase tracking-[0.08em] text-honeydew-700/75 dark:text-honeydew-300/75",children:r.resultMetricLabel})]}),i.jsx("div",{className:"mt-4 space-y-3",children:r.resultRows.map(n=>i.jsxs("div",{className:"flex items-center justify-between gap-4 roun
722ded-[17px] border border-honeydew-900/[0.07] bg-[#f7faf8] p-4 dark:border-white/[0.065] dark:bg-white/[0.035]",children:[i.jsxs("div",{className:"min-w-0",children:[i.jsx("p",{className:"truncate text-sm font-bold text-[#1f2a22] dark:text-white",children:n.label}),i.jsx("p",{className:"mt-1 truncate text-xs text-[#748078] dark:text-white/38",children:n.detail})]}),i.jsx("span",{className:`shrink-0 rounded-full border px-2.5 py-1 text-xs font-black ${IS[n.tone]}`,children:n.value})]},n.label))}),i.jsxs("p",{className:"mt-5 flex items-center gap-2 text-[10px] font-semibold leading-4 text-honeydew-900/38 dark:text-white/32",children:[i.jsx(cc,{className:"h-3.5 w-3.5 shrink-0 text-honeydew-600 dark:text-honeydew-300"}),"Illustrative result using live Honeydew connector capabilities."]})]})]}),i.jsxs("div",{className:"mt-4 flex flex-wrap items-center justify-center gap-5 text-xs font-bold text-[#647068] dark:text-white/52",children:[i.jsxs("span",{className:"inline-flex items-center gap-2",children:[i.jsx(Sb,{className:"h-4 w-4 text-honeydew-600 dark:text-honeydew-300"}),r.toolLabel]}),i.jsxs("span",{className:"inline-flex items-center gap-2",children:[i.jsx(zn,{className:"h-4 w-4"}),"Account scoped"]})]})]},`${r.key}-result`)]})]})]})})}function LS(){return i.jsx("section",{id:"demo-video","aria-labelledby":"demo-video-title",className:"scroll-mt-28 px-4 pb-20 sm:px-6 md:pb-28",children:i.jsxs("div",{className:"mx-auto max-w-[900px]",children:[i.jsxs("div",{className:"mb-7 text-center",children:[i.jsx("p",{className:"text-[11px] font-black uppercase tracking-[0.16em] text-honeydew-700 dark:text-honeydew-300",children:"See it in action"}),i.jsx("h2",{id:"demo-video-title",className:"display mt-4 text-[#1f2a22] dark:text-gray-100",children:"Your Honeydew cookbook, inside ChatGPT"}),i.jsx("p",{className:"mt-4 text-base font-medium text-[#5e6962] dark:text-white/60",children:"Watch the 10-second demo (sped up) of Honeydew MCP in use."})]}),i.jsx("div",{className:"overflow-hidden rounded-3xl border border-honeydew-900/10 bg-black shadow-xl dark:border-white/10",children:i.jsxs("video",{controls:!0,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,preload:"metadata",poster:"/videos/honeydew-mcp-demo-poster.jpg",width:1900,height:2e3,"aria-label":"Honeydew MCP demo in ChatGPT",className:"mx-auto block max-h-[75vh] w-full object-contain",children:[i.jsx("source",{src:"/videos/honeydew-mcp-demo.mp4",type:"video/mp4"}),i.jsx("a",{href:"/videos/honeydew-mcp-demo.mp4",children:"Download the Honeydew MCP demo video"})]})}),i.jsx("div",{className:"mt-5 text-center",children:i.jsxs("a",{href:"/videos/honeydew-mcp-demo.mp4",download:"honeydew-mcp-demo.mp4",className:"inline-flex items-center gap-2 rounded-full border border-honeydew-700/20 px-5 py-3 text-sm font-bold text-honeydew-700 transition hover:bg-honeydew-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 dark:text-honeydew-300 dark:hover:bg-white/5",children:[i.jsx(Ii,{"aria-hidden":"true",className:"h-4 w-4"})," Download demo video ",i.jsx("span",{className:"font-normal opacity-70",children:"MP4 · 433 KB"})]})})]})})}const MS={recipes:kb,organize:Lb,grocery:tm,"meal-plan":zf},VS={recipes:"border-honeydew-500/20 bg-honeydew-500/[0.07] text-honeydew-700 dark:text-honeydew-200",organize:"border-orange-400/20 bg-orange-400/[0.07] text-orange-700 dark:text-orange-200",grocery:"border-sky-400/20 bg-sky-400/[0.07] text-sky-700 dark:text-sky-200","meal-plan":"border-grape-400/20 bg-grape-400/[0.07] text-grape-700 dark:text-grape-200"};function $S({tool:t}){const e=MS[t.category];return i.jsxs("div",{className:`flex min-h-10 w-full items-center gap-2.5 rounded-full border px-3.5 py-2 ${VS[t.category]}`,children:[i.jsx(e,{className:"h-4 w-4 shrink-0"}),i.jsx("span",{className:"min-w-0 truncate font-round text-[13px] font-bold text-[#1f2a22] dark:text-white",children:t.title})]})}function FS(){return i.jsx("section",{id:"tools",className:"scroll-mt-28 px-4 py-24 sm:px-6 md:py-32",children:i.jsxs("div",{className:"mx-auto max-w-[1220px]",children:[i.jsxs("div",{className:"text-center",children:[i.jsxs("p",{className:"text-[11px] font-black uppercase tracking-[0.16em] text-honeydew-700 dark:text-honeydew-300",children:[Ta," ways to work with Honeydew"]}),i.jsxs("h2",{className:"display mx-auto mt-4 max-w-[960px] text-[#1f2a22] dark:text-gray-100",children:["Explore Honeydew tools in ",i.jsx("span",{className:"hero-highlight-gradient",children:"your AI"})]}),i.jsx("p",{className:"mx-auto mt-5 max-w-2xl text-sm font-semibold leading-6 text-[#667168] dark:text-white/42 sm:text-base",children:"Search, save, organize, shop, and meal plan with Honeydew from your AI assistant."})]}),i.jsxs("div",{className:"relative mt-12 rounded-[30px] border border-honeydew-900/[0.08] bg-white/60 p-4 shadow-[0_26px_80px_rgba(31,72,47,.08)] backdrop-blur sm:p-5 md:p-6 dark:border-white/[0.06] dark:bg-white/[0.025] dark:shadow-none",children:[i.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-[12%] top-0 -z-10 h-52 rounded-full bg-honeydew-300/20 blur-[90px] dark:bg-honeydew-300/10"}),i.jsx("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:wy.map(t=>i.jsx($S,{tool:t}
722,t.name))})]})]})})}const jy="Connect Honeydew to compatible AI assistants. Search and save recipes, organize your cookbook, and collaborate on grocery lists and meal plans through one secure MCP connection.";function US(){const t={"@context":"https://schema.org","@type":"WebPage",name:"Honeydew MCP for your AI",description:jy,url:"https://honeydewcook.com/mcp",publisher:{"@type":"Organization",name:"Honeydew",url:"https://honeydewcook.com"}},e={"@context":"https://schema.org","@type":"FAQPage",mainEntity:_y.map(r=>({"@type":"Question",name:r.question,acceptedAnswer:{"@type":"Answer",text:r.answer}}))};return i.jsxs(da,{children:[i.jsx("script",{type:"application/ld+json",children:JSON.stringify(t)}),i.jsx("script",{type:"application/ld+json",children:JSON.stringify(e)})]})}function BS(){const[t,e]=g.useState(0);return i.jsx("section",{id:"faq",className:"scroll-mt-28 px-4 py-24 sm:px-6 md:py-32",children:i.jsxs("div",{className:"mx-auto max-w-[1040px]",children:[i.jsxs("div",{className:"text-center",children:[i.jsx("p",{className:"text-[11px] font-black uppercase tracking-[0.16em] text-honeydew-700 dark:text-honeydew-300",children:"The important details"}),i.jsx("h2",{className:"display mx-auto mt-4 text-[#1f2a22] dark:text-gray-100",children:"Questions, answered."})]}),i.jsx("div",{className:"mt-14 overflow-hidden rounded-[30px] border border-honeydew-900/[0.08] bg-white/70 px-5 shadow-[0_26px_75px_rgba(31,72,47,.09)] backdrop-blur sm:px-8 dark:border-white/[0.07] dark:bg-[#17191a]/80 dark:shadow-[0_26px_75px_rgba(0,0,0,.22)]",children:_y.map((r,s)=>{const n=s===t,a=`mcp-faq-answer-${s}`;return i.jsxs("div",{className:"border-b border-honeydew-900/[0.08] last:border-b-0 dark:border-white/[0.07]",children:[i.jsxs("button",{type:"button","aria-expanded":n,"aria-controls":a,onClick:()=>e(n?-1:s),className:"flex min-h-[76px] w-full items-center justify-between gap-6 py-5 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-honeydew-500 sm:min-h-[84px]",children:[i.jsx("span",{className:"font-round text-lg font-bold tracking-[-0.01em] text-[#1f2a22] dark:text-white sm:text-xl",children:r.question}),i.jsx("span",{className:"grid h-10 w-10 shrink-0 place-items-center rounded-full bg-honeydew-900/[0.04] text-honeydew-900/45 dark:bg-white/[0.045] dark:text-white/45",children:n?i.jsx(Jx,{className:"h-5 w-5"}):i.jsx(sf,{className:"h-5 w-5"})})]}),i.jsx("div",{id:a,className:`grid transition-[grid-template-rows,opacity] duration-200 ease-out ${n?"grid-rows-[1fr] opacity-100":"grid-rows-[0fr] opacity-0"}`,children:i.jsx("div",{className:"overflow-hidden",children:i.jsx("p",{className:"max-w-[900px] pb-8 pr-12 text-base font-medium leading-7 text-[#657068] dark:text-white/47 sm:text-lg sm:leading-8",children:r.answer})})})]},r.question)})})]})})}function zS(){return i.jsx("section",{className:"px-4 pb-28 pt-8 sm:px-6 md:pb-36 md:pt-16",children:i.jsxs("div",{className:"mx-auto max-w-[1200px]",children:[i.jsxs("div",{className:"text-center",children:[i.jsx("h2",{className:"display text-[clamp(34px,5vw,52px)] text-[#1f2a22] dark:text-gray-100",children:"Explore more Honeydew."}),i.jsx("div",{className:"mx-auto mt-9 flex max-w-[960px] flex-wrap justify-center gap-2.5",children:CS.map(t=>i.jsx("a",{href:t.to,className:"rounded-full border border-honeydew-900/[0.08] bg-white/65 px-4 py-2.5 text-sm font-bold text-honeydew-900/55 transition hover:border-honeydew-500/30 hover:bg-honeydew-500/[0.07] hover:text-honeydew-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 dark:border-white/[0.06] dark:bg-white/[0.04] dark:text-white/45 dark:hover:border-honeydew-300/25 dark:hover:bg-honeydew-300/[0.07] dark:hover:text-white",children:t.label},`${t.label}-${t.to}`))})]}),i.jsxs("div",{className:"relative isolate mt-16 overflow-hidden rounded-[34px] border border-honeydew-700/10 bg-gradient-to-br from-[#eef8f1] via-[#f7fbf8] to-[#e2f2e8] px-6 py-8 shadow-[0_24px_65px_rgba(36,83,61,.12)] dark:border-white/10 dark:from-[#14231b] dark:via-[#101713] dark:to-[#182b21] sm:px-9 lg:px-12 lg:py-9",children:[i.jsx("span",{className:"pointer-events-none absolute -left-16 -top-24 -z-10 h-64 w-64 roun
722ded-full bg-[#70acff]/20 blur-[80px] dark:bg-[#70acff]/12"}),i.jsx("span",{className:"pointer-events-none absolute -bottom-28 right-[9%] -z-10 h-72 w-72 rounded-full bg-honeydew-400/30 blur-[90px] dark:bg-honeydew-400/14"}),i.jsxs("div",{className:"grid items-center gap-7 lg:grid-cols-[auto_minmax(0,1fr)_auto] lg:gap-10",children:[i.jsx("span",{className:"mx-auto grid h-[76px] w-[76px] place-items-center overflow-hidden rounded-[22px] border-2 border-white shadow-[0_18px_40px_rgba(43,113,78,.22)] lg:mx-0",children:i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"",className:"h-full w-full object-cover"})}),i.jsxs("div",{className:"text-center lg:text-left",children:[i.jsx("p",{className:"text-[11px] font-black uppercase tracking-[0.16em] text-honeydew-700 dark:text-honeydew-300",children:"Start with your cookbook"}),i.jsx("h3",{className:"mt-2 font-round text-[clamp(28px,3.2vw,42px)] font-bold leading-[1.02] text-[#1f2a22] dark:text-gray-100",children:"Save recipes first. Ask anything next."}),i.jsx("p",{className:"mt-3 max-w-[620px] text-[15px] font-medium leading-6 text-[#5d6861] dark:text-white/55 sm:text-[16px]",children:"Download Honeydew for free, build your cookbook, and bring it into any compatible AI assistant."})]}),i.jsx(_c,{children:i.jsxs("button",{type:"button",className:"mx-auto inline-flex min-h-12 items-center justify-center gap-2 rounded-full bg-[#1f2a22] px-6 text-[14px] font-bold text-white shadow-[0_7px_0_#75b69e] transition hover:-translate-y-0.5 hover:bg-[#2c3b31] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 focus-visible:ring-offset-2 dark:bg-honeydew-300 dark:text-[#142019] dark:shadow-[0_7px_0_#326251] dark:hover:bg-honeydew-200 lg:mx-0",children:["Get Honeydew App",i.jsx(ir,{className:"h-4 w-4"})]})})]})]})]})})}const HS=()=>i.jsxs("div",{className:"min-h-screen overflow-hidden bg-[#fbfdfb] text-[#1f2a22] transition-colors duration-300 dark:bg-[#0b0b0c] dark:text-white",children:[i.jsx(ft,{title:"Honeydew MCP for Your AI",description:jy,canonical:"https://honeydewcook.com/mcp",ogType:"website"}),i.jsx(US,{}),i.jsx(yc,{}),i.jsx(pt,{topOffset:Os}),i.jsxs("main",{children:[i.jsxs("section",{className:"relative overflow-hidden px-4 pb-10 pt-[174px] sm:px-6 sm:pt-[188px] md:pb-14 md:pt-[202px]",children:[i.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-0 top-0 h-[760px] bg-[radial-gradient(circle_at_50%_9%,rgba(117,182,158,.23),transparent_35%),radial-gradient(circle_at_18%_36%,rgba(112,172,255,.10),transparent_28%),radial-gradient(circle_at_82%_34%,rgba(217,119,87,.10),transparent_26%)] dark:bg-[radial-gradient(circle_at_50%_9%,rgba(117,182,158,.14),transparent_35%),radial-gradient(circle_at_18%_36%,rgba(112,172,255,.07),transparent_28%),radial-gradient(circle_at_82%_34%,rgba(217,119,87,.065),transparent_26%)]"}),i.jsxs("div",{className:"relative mx-auto max-w-[1220px]",children:[i.jsx(SS,{}),i.jsxs("div",{className:"mt-8 text-center",children:[i.jsx("p",{className:"text-[11px] font-black uppercase tracking-[0.18em] text-honeydew-700 dark:text-honeydew-300",children:"Model Context Protocol"}),i.jsxs("h1",{className:"display hero-title mx-auto mt-5 max-w-[1100px] text-[clamp(48px,7.4vw,82px)] leading-[0.95] tracking-[-0.045em] text-[#1f2a22] dark:text-white",children:["Honeydew MCP for ",i.jsx("span",{className:"hero-highlight-gradient",children:"your AI"})]}),i.jsx("p",{className:"mx-auto mt-7 max-w-3xl text-balance text-base font-semibold leading-7 text-[#5e6962] dark:text-white/48 sm:text-lg",children:"Bring your saved recipes, folders, grocery list, and meal plan into compatible AI chats and coding agents through one secure connection."}),i.jsxs("nav",{className:"mt-8 flex flex-wrap items-center justify-center gap-x-5 gap-y-2 text-sm font-bold text-honeydew-900/48 dark:text-white/42","aria-label":"MCP page sections",children:[i.jsx("a",{href:"#demo-video",className:"transition hover:text-honeydew-700 dark:hover:text-honeydew-300",children:"Watch demo"}),i.jsx("span",{"aria-hidden":"true",className:"h-1 w-1 rounded-full bg-honeydew-900/20 dark:bg-white/20"}),i.jsx("a",{href:"#setup",className:"transition hover:text-honeydew-700 dark:hover:text-honeydew-300",children:"Connect"}),i.jsx("span",{"aria-hidden":"true",className:"h-1 w-1 rounded-full bg-honeydew-900/20 dark:bg-white/20"}),i.jsx("a",{href:"#how-it-works",className:"transition hover:text-honeydew-700 dark:hover:text-honeydew-300",children:"How it works"}),i.jsx("span",{"aria-hidden":"true",className:"h-1 w-1 rounded-full bg-honeydew-900/20 dark:bg-white/20"}),i.jsx("a",{href:"#tools",className:"transition hover:text-honeydew-700 dark:hover:text-honeydew-300",children:"Tools"}),i.jsx("span",{"aria-hidden":"true",className:"h-1 w-1 rounded-full bg-honeydew-900/20 dark:bg-white/20"}),i.jsx("a",{href:"#faq",className:"transition hover:text-honeydew-700 dark:hover:text-honeydew-300",children:"FAQ"})]})]})]})]}),i.jsx(LS,{}),i.jsx("section",{id:"setup",className:"scroll-mt-28 px-4 pb-20 sm:px-6 md:pb-28",children:i.jsxs("div",{className:"mx-auto max-w-[1220px]",children:[i.jsx(RS,{}),i.jsxs("div",{className:"mt-7 flex flex-col items-center justify-center gap-3 text-center text-xs font-semibold leading-5 text-[#657068] dark:text-white/38 sm:flex-row sm:flex-wrap sm:text-sm",children:[i.jsxs("span",{className:"inline-flex items-center gap-2",children:[i.jsx(oc,{className:"h-4 w-4 text-honeydew-600 dark:text-honeydew-300"}),Ta," live tools · Browser sign-in · Recipes cannot be deleted"]}),i.jsxs("a",{href:ns,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 font-bold text-honeydew-700 hover:text-honeydew-500 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-honeydew-500 dark:text-honeydew-300",children:["Check the live connector docs ",i.jsx(ic,{className:"h-3.5 w-3.5"})]})]})]})}),i.jsx("div",{className:"border-t border-honeydew-900/[0.055] dark:border-white/[0.04]",children:i.jsx(DS,{})}),i.jsx("div",{className:"border-t border-honeydew-900/[0.055] dark:border-white/[0.04]",children:i.jsx(FS,{})}),i.jsx("div",{className:"border-t border-honeydew-900/[0.055] dark:border-white/[0.04]",children:i.jsx(BS,{})}),i.jsx(zS,{})]}),i.jsx(Qe,{})]}),Pl=.25,up=6.99;function WS(t,e,r){if(!Number.isSafeInteger(t)||t<0||![e,r].every(a=>Number.isFinite(a)&&a>=0&&a<=1e4))return null;const s=Math.round(e*100),n=Math.round(r*100);return{low:Math.round(t*s*Pl)/100,high:Math.round(t*n*Pl)/100}}const hp=t=>new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:2,maximumFractionDigits:2}).format(t);function qS(){const[t,e]=g.useState(!1),[r,s]=g.useState("100"),[n,a]=g.useState(1e4);g.useEffect(()=>e(!0),[]);const o=p=>{s(p);const h=Number(p);Number.isSafeInteger(h)&&h>n&&a(h)},l=/^\d+$/.test(r)?Number(r):NaN,c=Number.isSafeInteger(l)&&l>=0,d=WS(l,up,up*3),u=c?null:"Enter a valid, nonnegative whole number of subscribers.";return i.jsxs("section",{id:"earnings-calculator",className:"amb-calculator amb-wrap amb-section","aria-labelledby":"earnings-title",children:[i.jsxs("div",{className:"amb-calculator-heading",children:[i.jsxs("p",{className:"amb-eyebrow",children:[i.jsx(Tb,{size:15,"aria-hidden":"true"})," A little napkin math"]}),i.jsxs("h2",{id:"earnings-title",children:["Your referrals.",i.jsx("br",{}
722),i.jsx("span",{children:"What could they earn?"})]}),i.jsx("p",{children:"Choose how many paying subscribers you could bring to Honeydew. Estimate your share of their subscription revenue during their first 3 months."})]}),i.jsxs("div",{className:"amb-calculator-card",children:[i.jsxs("div",{className:"amb-calculator-inputs",children:[i.jsxs("div",{className:"amb-subscriber-row",children:[i.jsx("label",{htmlFor:"converted-subscribers",children:"Subscribers you convert"}),i.jsx(Kn,{id:"converted-subscribers",type:"number",inputMode:"numeric",min:0,step:1,value:r,disabled:!t,onChange:p=>o(p.target.value),"aria-invalid":!c,"aria-describedby":"earnings-input-help earnings-error"})]}),i.jsx("input",{className:"amb-subscriber-slider",type:"range",min:0,max:n,step:1,value:c?l:0,disabled:!t,onChange:p=>o(p.target.value),"aria-label":"Adjust converted subscribers","aria-valuetext":`${c?l:0} paying subscribers`}),i.jsxs("div",{className:"amb-slider-labels","aria-hidden":"true",children:[i.jsx("span",{children:"0"}),i.jsxs("span",{children:[n.toLocaleString("en-US")," subscribers"]}
722)]}),i.jsx("div",{className:"amb-subscriber-presets","aria-label":"Subscriber examples",children:[25,100,500,1e3].map(p=>i.jsx("button",{type:"button",disabled:!t,"aria-pressed":l===p,onClick:()=>s(String(p)),children:p.toLocaleString("en-US")},p))}),i.jsxs("p",{id:"earnings-input-help",className:"amb-calc-helper",children:[i.jsx("strong",{children:"There’s no limit to how many subscribers you can refer."})," Enter a higher number to estimate beyond the slider’s range. Each paying subscriber is counted once."]}),i.jsx("p",{id:"earnings-error",className:"amb-calc-error",role:"status",children:u})]}),i.jsxs("div",{className:"amb-calculator-result",children:[i.jsx("p",{className:"amb-eyebrow",children:"Estimated commission"}),i.jsx("div",{className:"amb-earnings-output","aria-live":"polite","aria-atomic":"true",children:d?i.jsxs(i.Fragment,{children:[i.jsx("strong",{"data-earnings":"low",children:hp(d.low)}),i.jsx("span",{className:"amb-earnings-to",children:"to"}),i.jsx("strong",{"data-earnings":"high",children:hp(d.high)}),i.jsx("p",{children:"Total for these subscribers’ first 3 months"})]}):i.jsxs(i.Fragment,{children:[i.jsxs("strong",{className:"amb-earnings-empty",children:["Let's run",i.jsx("br",{}),"the numbers."]}),i.jsx("p",{children:u?"Check your inputs to see an estimate.":"Enter your subscriber count to see your earnings range."})]})}),i.jsxs("div",{className:"amb-calc-rate",children:[i.jsxs("strong",{children:[Pl*100,"%"]}),i.jsxs("span",{children:["Your share of subscription revenue",i.jsx("br",{}),"during each referral’s first 3 months"]})]}),i.jsx("p",{className:"amb-calc-formula",children:"The range models monthly subscribers who pay for 1 to 3 months."}),i.jsxs("p",{className:"amb-calc-note",children:[i.jsx(Zl,{size:16,"aria-hidden":"true"}),"Estimates in USD, not guaranteed earnings. Annual plans, offers, refunds, and regional pricing can change the amount. Payouts are monthly."]})]})]}),i.jsx("noscript",{children:i.jsx("p",{className:"amb-calc-helper",children:"Enable JavaScript to use the calculator. To estimate manually, multiply the number of subscribers by their subscription revenue in the first 3 months, then multiply by 25%."})})]})}const GS=[{kind:"screenshot",label:"Your recipe collection",src:"/honeydew-all-recipes-latest.png",filename:"honeydew-recipe-collection.png",format:"PNG",width:1179,height:2556,alt:"Honeydew recipe collection with saved meals and tabs for groceries, planning, and discovery"},{kind:"screenshot",label:"Inside a recipe",src:"/guides/best-recipe-apps/honeydew-recipe-detail.webp",filename:"honeydew-recipe-detail.webp",format:"WebP",width:720,height:1561,alt:"Honeydew recipe detail with a food photo, nutrition, ingredients, and cooking tools"},{kind:"screenshot",label:"The weekly meal plan",src:"/guides/best-recipe-apps/honeydew-meal-plan.webp",filename:"honeydew-meal-plan.webp",format:"WebP",width:720,height:996,alt:"Honeydew meal planner showing recipes arranged by day of the week"},{kind:"brand",label:"Honeydew app icon",src:"/honeydew-app-icon-small.png",filename:"honeydew-app-icon.png",format:"PNG",width:167,height:167,alt:"Honeydew app icon"}],ky="https://honeydew.wwk.link/apply/default",Vr="[email protected]",KS="Honeydew Affiliate Program | Food Creator Affiliate Program",YS="Get paid to post recipes with the Honeydew affiliate program. Earn 25% of subscription revenue for each referred user's first 3 months. No follower minimum.",JS=[{question:"How much do I earn?",answer:"You earn 25% of subscription revenue for each referred user's first 3 months. Commission is paid monthly."},{question:"When am I paid?",answer:"Payouts are monthly, via Stripe Connect, PayPal, or Wise. Your personal dashboard shows your earnings, codes, payouts, and performance."},{question:"Do I need a big following?",answer:"No. There is no follower minimum. If you create food or lifestyle content and want to share Honeydew with your audience, apply. Answer 3 questions and get automatically approved. The application takes about 2 minutes."},{question:"How do my followers use my code?",answer:"Share your personal code and link with your audience. Followers enter your co
722de inside the Honeydew app during onboarding, on the paywall, or in settings."},{question:"Can I promote on any platform?",answer:"Yes. Share Honeydew on TikTok, Instagram, YouTube, your newsletter, your blog, or other platforms where you create content. Follow each platform's rules and clearly disclose your partnership."},{question:"Do I need to disclose the partnership?",answer:"Yes. Follow FTC and local disclosure rules. Make the partnership clear alongside your recommendation, for example with a visible #ad. Do not bury the disclosure in a long list of hashtags."},{question:"What can't I do?",answer:"No self-referrals, no coupon or deal sites, and no misleading claims. Share your real experience with Honeydew and keep your recommendations honest."}],XS=[{title:"Eligibility",placeholder:"To be completed: participant eligibility, location and age requirements, and application review criteria."},{title:"Commission & payment",placeholder:"To be completed: full commission and payment terms, including attribution, refunds, payout timing, fees, and tax responsibilities."},{title:"Prohibited practices",placeholder:"To be completed: full rules covering self-referrals, coupon and deal sites, misleading claims, and other prohibited promotion methods."},{title:"Disclosure",placeholder:"To be completed: partnership disclosure requirements and applicable platform and local rules."},{title:"Termination",placeholder:"To be completed: how either party can end participation and how outstanding commissions are handled."}];function QS(){const t=GS.find(e=>e.kind==="brand");return i.jsx("section",{id:"press-kit",className:"amb-press amb-section","aria-labelledby":"press-kit-title",children:i.jsxs("div",{className:"amb-wrap",children:[i.jsxs("div",{className:"amb-press-heading",children:[i.jsxs("div",{children:[i.jsx("p",{className:"amb-eyebrow",children:"Press kit"}),i.jsxs("h2",{id:"press-kit-title",children:["A few things for",i.jsx("br",{}),i.jsx("span",{children:"your next post."})]}),i.jsx("p",{children:"Download our app screenshots and icon in one pack. Need something specific? Get in touch below."})]}),i.jsxs("div",{className:"amb-press-pack",children:[i.jsxs("a",{href:"/media/honeydew-press-kit.zip",download:"honeydew-press-kit.zip",className:"amb-asset-download",children:[i.jsx(Ii,{size:18,"aria-hidden":"true"})," Download asset pack"]}),i.jsx("span",{children:"ZIP · 3 screenshots + app icon"})]})]}),i.jsxs("div",{className:"amb-press-bottom",children:[i.jsxs("div",{className:"amb-icon-download",children:[i.jsx("img",{src:t.src,alt:t.alt,width:64,height:64,loading:"lazy"}),i.jsxs("div",{children:[i.jsx("h3",{children:t.label}),i.jsxs("a",{className:"amb-text-link",href:t.src,download:t.filename,children:["Download icon ",i.jsx(Ii,{size:15,"aria-hidden":"true"})]})]})]}),i.jsxs("div",{className:"amb-asset-contact",children:[i.jsx(lc,{size:23,"aria-hidden":"true"}),i.jsxs("div",{children:[i.jsx("h3",{children:"Need something else?"}),i.jsxs("p",{children:["For more assets, a different size, or a specific request, reach out to ",i.jsx("a",{href:`mailto:${Vr}?subject=Honeydew%20asset%20request`,children:Vr}),"."]})]})]})]})]})})}var nd="Collapsible",[ZS,Ey]=Vs(nd),[eP,id]=ZS(nd),Ty=g.forwardRef((t,e)=>{const{__scopeCollapsible:r,open:s,defaultOpen:n,disabled:a,onOpenChange:o,...l}=t,[c=!1,d]=$s({prop:s,defaultProp:n,onChange:o});return i.jsx(eP,{scope:r,disabled:a,contentId:dn(),open:c,onOpenToggle:g.useCallback(()=>d(u=>!u),[d]),children:i.jsx(se.div,{"data-state":od(c),"data-disabled":a?"":void 0,...l,ref:e})})});Ty.displayName=nd;var Ay="CollapsibleTrigger",Ny=g.forwardRef((t,e)=>{const{__scopeCollapsible:r,...s}=t,n=id(Ay,r);return i.jsx(se.button,{type:"button","aria-controls":n.contentId,"aria-expanded":n.open||!1,"data-state":od(n.open),"data-disabled":n.disabled?"":void 0,disabled:n.disabled,...s,ref:e,onClick:re(t.onClick,n.onOpenToggle)})});Ny.displayName=Ay;var ad="CollapsibleContent",Cy=g.forwardRef((t,e)=>{const{forceMount:r,...s}=t,n=id(ad,t.__scopeCollapsible);return i.jsx(mr,{present:r||n.open,children:({present:a})=>i.jsx(tP,{...s,ref:e,present:a})})});Cy.displayName=ad;var tP=g.forwardRef((t,e)=>{const{__scopeCollapsible:r,present:s,children:n,...a}=t,o=id(ad,r),[l,c]=g.useState(s),d=g.useRef(null),u=Ee(e,d),p=g.useRef(0),h=p.current,f=g.useRef(0),x=f.current,m=o.open||l,y=g.useRef(m),b=g.useRef();return g.useEffect(()=>{const w=requestAnimationFrame(()=>y.current=!1);return()=>cancelAnimationFrame(w)},[]),Dt(()=>{const w=d.current;if(w){b.current=b.current||{transitionDuration:w.style.transitionDuration,animationName:w.style.animationName},w.style.transitionDuration="0s",w.style.animationName="none";const _=w.getBoundingClientRect();p.current=_.height,f.current=_.width,y.current||(w.style.transitionDuration=b.current.transitionDuration,w.style.animationName=b.current.animationName),c(s)}},[o.open,s]),i.jsx(se.div,{"data-state":od(o.open),"data-disabled":o.disabled?"":void 0,id:o.contentId,hidden:!m,...a,ref:u,style:{"--radix-collapsible-content-height":h?`${h}px`:void 0,"--radix-collapsible-content-width":x?`${x}px`:void 0,...t.style},children:m&&n})});function od(t){return t?"open":"closed"}var rP=Ty,sP=Ny,nP=Cy,iP=g.createContext(void 0);function aP(t){const e=g.useContext(iP);return t||e||"ltr"}var Ut="Accordion",oP=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[ld,lP,cP]=mf(Ut),[Aa,w4]=Vs(Ut,[cP,Ey]),cd=Ey(),Sy=S.forwardRef((t,e)=>{const{type:r,...s}=t,n=s,a=s;return i.jsx(ld.Provider,{scope:t.__scopeAccordion,children:r==="multiple"?i.jsx(pP,{...a,ref:e}):i.jsx(hP,{...n,ref:e})})});Sy.displayName=Ut;var[Py,dP]=Aa(Ut),[Ry,uP]=Aa(Ut,{collapsible:!1}),hP=S.forwardRef((t,e)=>{const{value:r,defaultValue:s,onValueChange:n=()=>{},collapsible:a=!1,...o}=t,[l,c]=$s({prop:r,defaultProp:s,onChange:n});return i.jsx(Py,{scope:t.__scopeAccordion,value:l?[l]:[],onItemOpen:c,onItemClose:S.useCallback(()=>a&&c(""),[a,c]),children:i.jsx(Ry,{scope:t.__scopeAccordion,collapsible:a,children:i.jsx(Oy,{...o,ref:e})})})}),pP=S.forwardRef((t,e)=>{const{value:r,defaultValue:s,onValueChange:n=()=>{},...a}=t,[o=[],l]=$s({prop:r,defaultProp:s,onChange:n}),c=S.useCallback(u=>l((p=[])=>[...p,u]),[l]),d=S.useCallback(u=>l((p=[])=>p.filter(h=>h!==u)),[l]);return i.jsx(Py,{scope:t.__scopeAccordion,value:o,onItemOpen:c,onItemClose:d,children:i.jsx(Ry,{scope:t.__scopeAccordion,collapsible:!0,children:i.jsx(Oy,{...a,ref:e})})})}),[fP,Na]=Aa(Ut),Oy=S.forwardRef((t,e)=>{const{__scopeAccordion:r,disabled:s,dir:n,orientation:a="vertical",...o}=t,l=S.useRef(null),c=Ee(l,e),d=lP(r),p=aP(n)==="ltr",h=re(t.onKeyDown,f=>{var A;if(!oP.includes(f.key))return;const x=f.target,m=d().filter(R=>{var L;return!((L=R.ref.current)!=null&&L.disabled)}),y=m.findIndex(R=>R.ref.current===x),b=m.length;if(y===-1)return;f.preventDefault();let w=y;const _=0,j=b-1,k=()=>{w=y+1,w>j&&(w=_)},E=()=>{w=y-1,w<_&&(w=j)};switch(f.key){case"Home":w=_;break;case"End":w=j;break;case"ArrowRight":a==="horizontal"&&(p?k():E());break;case"ArrowDown":a==="vertical"&&k();break;case"ArrowLeft":a==="horizontal"&&(p?E():k());break;case"ArrowUp":a==="vertical"&&E();break}const T=w%b;(A=m[T].ref.current)==null||A.focus()});return i.jsx(fP,{scope:r,disabled:s,direction:n,orientation:a,children:i.jsx(ld.Slot,{scope:r,children:i.jsx(se.div,{...o,"data-orientation":a,ref:c,onKeyDown:s?void 0:h})})})}),ta="AccordionItem",[mP,dd]=Aa(ta),Iy=S.forwardRef((t,e)=>{const{__scopeAccordion:r,value:s,...n}=t,a=Na(ta,r),o=dP(ta,r),l=cd(r),c=dn(),d=s&&o.value.includes(s)||!1,u=a.disabled||t.disabled;return i.jsx(mP,{scope:r,open:d,disabled:u,triggerId:c,children:i.jsx(rP,{"data-orientation":a.orientation,"data-state":Fy(d),...l,...n,ref:e,disabled:u,open:d,onOpenChange:p=>{p?o.onItemOpen(s):o.onItemClose(s)}})})});Iy.displayName=ta;var Dy="AccordionHeader",Ly=S.forwardRef((t,e)=>{const{__scopeAccordion:r,...s}=t,n=Na(Ut,r),a=dd(Dy,r);return i.jsx(se.h3,{"data-orientation":n.orientation,"data-state":Fy(a.open),"data-disabled":a.disabled?"":void 0,...s,ref:e})});Ly.displayName=Dy;var Rl="AccordionTrigger",My=S.forwardRef((t,e)=>{const{__scopeAccordion:r,...s}=t,n=Na(Ut,r),a=dd(Rl,r),o=uP(Rl,r),l=cd(r);return i.jsx(ld.ItemSlot,{scope:r,children:i.jsx(sP,{"aria-disabled":a.open&&!o.collapsible||void 0,"data-orientation":n.orientation,id:a.triggerId,...l,...s,ref:e})})});My.displayName=Rl;var Vy="AccordionContent",$y=S.forwardRef((t,e)=>{const{__scopeAccordion:r,...s}=t,n=Na(Ut,r),a=dd(Vy,r),o=cd(r);return i.jsx(nP,{role:"region","aria-labelledby":a.triggerId,"data-orientation":n.orientation,...o,...s,ref:e,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...t.style}})});$y.displayName=Vy;function Fy(t){return t?"open":"closed"}var gP=Sy,yP=Iy,xP=Ly,Uy=My,By=$y;const vP=gP,zy=g.forwardRef(({className:t,...e},r)=>i.jsx(yP,{ref:r,className:q("border-b",t),...e}));zy.displayName="AccordionItem";const Hy=g.forwardRef(({className:t,children:e,...r},s)=>i.jsx(xP,{className:"flex",children:i.jsxs(Uy,{ref:s,className:q("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",t),...r,children:[e,i.jsx(Wf,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));Hy.displayName=Uy.displayName;const Wy=g.forwardRef(({className:t,children:e,...r},s)=>i.jsx(By,{ref:s,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...r,children:i.jsx("div",{className:q("pb-4 pt-0",t),children:e})}));Wy.displayName=By.displayName;const bP=[{icon:Hf,name:"Recipe developers"},{icon:nm,name:"Meal-prep creators"},{icon:Xf,name:"Family cooks"},{icon:Zf,name:"Nutrition & wellness"},{icon:im,name:"Food & lifestyle creators"},{icon:lc,name:"Newsletter & blog writers"}];function mi({compact:t=!1}){return i.jsxs("a",{className:`amb-apply${t?" amb-apply-compact":""}`,href:ky,children:["Apply now ",i.jsx(ir,{size:18,"aria-hidden":"true"})]})}function wP(){const t=g.useRef(null),{hash:e}=He();return g.useEffect(()=>{var r;["#press-kit","#earnings-calculator"].includes(e)&&((r=document.getElementById(e.slice(1)))==null||r.scrollIntoView())},[e]),g.useEffect(()=>{const r=window.matchMedia("(prefers-reduced-motion: reduce)");
722if(r.matches||!t.current)return;const s=new IntersectionObserver(a=>{for(const o of a)o.isIntersecting&&(o.target.animate([{transform:"translateY(16px)"},{transform:"translateY(0)"}],{duration:450,easing:"ease-out"}),s.unobserve(o.target))},{threshold:.12});t.current.querySelectorAll("[data-amb-reveal]").forEach(a=>s.observe(a));const n=()=>{r.matches&&s.disconnect()};return r.addEventListener("change",n),()=>{s.disconnect(),r.removeEventListener("change",n)}},[]),i.jsxs("div",{ref:t,className:"amb-page amb-affiliates-page",children:[i.jsx(ft,{title:KS,description:YS,canonical:"https://honeydewcook.com/affiliates",ogImage:"https://honeydewcook.com/honeydew-release-1-8-5.webp"}),i.jsx("a",{className:"amb-skip",href:"#amb-main",children:"Skip to content"}),i.jsx(yc,{badge:"",message:"",linkText:"Earn 25% for each referral - No limit!",href:ky,label:"Affiliate program applications are open"}),i.jsx(pt,{topOffset:Os}),i.jsxs("main",{id:"amb-main",style:{paddingTop:Os},children:[i.jsxs("section",{className:"amb-hero amb-wrap",children:[i.jsxs("div",{className:"amb-hero-copy",children:[i.jsxs("p",{className:"amb-eyebrow",children:[i.jsx("span",{})," Honeydew affiliate program"]}),i.jsxs("h1",{children:["Your recipes.",i.jsx("br",{}),"Your people.",i.jsx("br",{}),i.jsxs("span",{children:["A little extra",i.jsx("br",{className:"amb-desktop-break"})," dough."]})]}),i.jsx("p",{className:"amb-intro",children:"You bring good food to the feed. Help your audience bring it to the table, and earn when they subscribe to Honeydew."}),i.jsxs("div",{className:"amb-hero-actions",children:[i.jsx(mi,{}),i.jsxs("a",{href:"#how-it-works",className:"amb-text-link",children:["How it works ",i.jsx(ir,{size:16,"aria-hidden":"true"})]})]}),i.jsxs("p",{className:"amb-reassurance",children:["Takes 2 minutes ",i.jsx("span",{"aria-hidden":"true",children:"·"})," No follower minimum"]}),i.jsxs("div",{className:"amb-hero-resources",children:[i.jsxs("a",{className:"amb-text-link amb-press-jump",href:"#earnings-calculator",children:["Estimate your earnings ",i.jsx(Ga,{size:14,"aria-hidden":"true"})]}),i.jsxs("a",{className:"amb-text-link amb-press-jump",href:"#press-kit",children:["Download press kit ",i.jsx(Ii,{size:14,"aria-hidden":"true"})]})]})]}),i.jsxs("div",{className:"amb-hero-art","aria-label":"Recipes saved in Honeydew and affiliate commission details",children:[i.jsx("div",{className:"amb-art-orbit","aria-hidden":"true"}),i.jsxs("figure",{className:"amb-recipe-print",children:[i.jsx("img",{src:"/recipe-marquee/recipe_choc_chip_cookies.webp",alt:"Freshly baked chocolate chip cookies",width:"300",height:"400"}),i.jsxs("figcaption",{children:["Good food deserves a save.",i.jsx(Xf,{size:16,"aria-hidden":"true"})]})]}),i.jsx("div",{className:"amb-phone",children:i.jsx("img",{src:"/honeydew-all-recipes-latest.png",alt:"Honeydew app showing saved recipes, with tabs for groceries, meal planning, and discovery",width:"1179",height:"2556",fetchPriority:"high"})}),i.jsxs("div",{className:"amb-commission-note",children:[i.jsx("span",{className:"amb-note-icon",children:i.jsx(Ga,{"aria-hidden":"true",size:23})}),i.jsxs("div",{children:[i.jsx("span",{className:"amb-note-label",children:"A good thing to share"}),i.jsx("strong",{children:"25% commission"}),i.jsxs("p",{children:["Of subscription revenue for each",i.jsx("br",{}),"referred user's first 3 months."]})]})]}),i.jsxs("span",{className:"amb-art-caption",children:[i.jsx(Bf,{size:14,"aria-hidden":"true"})," From their feed to their cookbook"]})]})]}),i.jsxs("section",{className:"amb-proof amb-wrap","aria-label":"Honeydew at a glance",children:[i.jsxs("div",{children:[i.jsxs("strong",{children:["4.8 ",i.jsx(Gb,{size:23,fill:"currentColor","aria-hidden":"true"})]}),i.jsx("span",{children:"App Store rating"})]}),i.jsxs("div",{children:[i.jsx("strong",{children:"1M+"}),i.jsx("span",{children:"Recipes saved to Honeydew"})]}),i.jsxs("div",{children:[i.jsx("strong",{className:"amb-platform-proof",children:"iOS + Android"}),i.jsx("span",{children:"Good food, on both platforms"})]})]}),i.jsxs("section",{className:"amb-about amb-wrap amb-section","data-amb-reveal":!0,children:[i.jsxs("div",{children:[i.jsx("p",{className:"amb-eyebrow",children:"Meet your new kitchen sidekick"}
722),i.jsxs("h2",{children:["Less “where did I save it?”",i.jsx("br",{}),i.jsx("span",{children:"More “what's for dinner?”"})]})]}),i.jsxs("div",{children:[i.jsx("p",{children:"Honeydew turns saved recipes into meals you'll actually make. Save recipes from TikTok, Instagram, YouTube, and the web, organize them in your own cookbook, plan your week, and build your grocery list. All in one app."}),i.jsxs("a",{className:"amb-text-link",href:"/",children:["Meet Honeydew ",i.jsx(ir,{size:16,"aria-hidden":"true"})]})]})]}),i.jsxs("section",{className:"amb-benefits amb-wrap amb-section","aria-labelledby":"amb-benefits-title",children:[i.jsx("p",{className:"amb-eyebrow",children:"Good taste. Good partnership."}),i.jsxs("h2",{id:"amb-benefits-title",children:["You create. ",i.jsx("span",{children:"Let's grow together."})]}),i.jsxs("div",{className:"amb-benefit-grid",children:[i.jsxs("article",{className:"amb-benefit amb-benefit-main","data-amb-reveal":!0,children:[i.jsx("span",{className:"amb-icon",children:i.jsx(im,{"aria-hidden":"true"})}),i.jsxs("h3",{children:["Earn from content",i.jsx("br",{}),"you already create."]}),i.jsx("p",{children:"The weeknight dinner. The Sunday meal prep. The recipe everyone asks for. Show how you use Honeydew, and share your code with the people who cook along."}),i.jsxs("div",{className:"amb-food-row","aria-hidden":"true",children:[i.jsx("img",{src:"/recipe-marquee/recipe_chicken_meal_prep.webp",alt:"",width:"200",height:"220",loading:"lazy"}),i.jsx("img",{src:"/recipe-marquee/recipe_carbonara.webp",alt:"",width:"200",height:"220",loading:"lazy"}),i.jsx("img",{src:"/recipe-marquee/recipe_oats_strawberry.webp",alt:"",width:"200",height:"220",loading:"lazy"})]}),i.jsx("span",{className:"amb-card-footnote",children:"Your content. Your voice. Your code."})]}),i.jsxs("article",{className:"amb-benefit amb-benefit-earn","data-amb-reveal":!0,children:[i.jsx("span",{className:"amb-icon",children:i.jsx(Ga,{"aria-hidden":"true"})}),i.jsxs("h3",{children:["A share of every",i.jsx("br",{}),"subscriber you refer."]}),i.jsxs("p",{children:["Earn ",i.jsx("strong",{children:"25% of subscription revenue for the referred user's first 3 months"}),", paid monthly. See your earnings and payouts in your own dashboard."]}),i.jsx("div",{className:"amb-months","aria-label":"25 percent of subscription revenue in months one, two, and three",children:[1,2,3].map(r=>i.jsxs("div",{children:[i.jsxs("span",{children:["Month ",r]}),i.jsx("strong",{children:"25%"})]},r))})]}),i.jsxs("article",{className:"amb-benefit amb-benefit-grow","data-amb-reveal":!0,children:[i.jsx("span",{className:"amb-icon",children:i.jsx(Bn,{"aria-hidden":"true"})}),i.jsx("h3",{children:"Room for seconds."}),i.jsx("p",{children:"There’s room to grow beyond your code, with opportunities for featured placements and bigger deals for top performers."}),i.jsx("span",{className:"amb-grow-caption",children:"Let's see what we can cook up."})]})]})]}),i.jsx(qS,{}),i.jsx("section",{id:"how-it-works",className:"amb-how amb-section","aria-labelledby":"amb-how-title",children:i.jsxs("div",{className:"amb-wrap",children:[i.jsx("p",{className:"amb-eyebrow",children:"A simple recipe"}),i.jsxs("h2",{id:"amb-how-title",children:["Three steps to ",i.jsx("span",{children:"your first referral."})]}),i.jsxs("ol",{className:"amb-steps",children:[i.jsxs("li",{"data-amb-reveal":!0,children:[i.jsx("span",{className:"amb-step-number",children:"01"}),i.jsx("h3",{children:"Answer 3 questions"}),i.jsx("p",{children:"Tell us about yourself and your content, and get automatically approved. It takes about 2 minutes. No follower minimum."})]}),i.jsxs("li",{"data-amb-reveal":!0,children:[i.jsx("span",{className:"amb-step-number",children:"02"}),i.jsx("h3",{children:"Get your code & link"}),i.jsx("p",{children:"After automatic approval, you'll get a personal code and link to share. Your followers enter your code inside the Honeydew app."})]}),i.jsxs("li",{"data-amb-reveal":!0,children:[i.jsx("span",{className:"amb-step-number",children:"03"}),i.jsx("h3",{children:"Earn monthly"}),i.jsx("p",{children:"Earn 25% of subscription revenue for each referred user's first 3 months. Track earnings, codes, payouts, and performance in your dashboard."})]})]}),i.jsxs("div",{className:"amb-how-footer",children:[i.jsxs("span",{children:[i.jsx(Ql,{size:17,"aria-hidden":"true"})," Monthly payouts via Stripe Connect, PayPal, or Wise"]}),i.jsx(mi,{compact:!0})]})]})}),i.jsxs("section",{className:"amb-audience amb-section amb-wrap","data-amb-reveal":!0,children:[i.jsxs("div",{children:[i.jsx("p",{className:"amb-eyebrow",children:"Pull up a chair"}),i.jsxs("h2",{children:["If your people love food,",i.jsx("br",{}),i.jsx("span",{children:"you're in the right place."})]}),i.jsx("p",{children:"You don't need a huge audience. Just a love of sharing good food, kitchen routines, or the little things that make everyday cooking easier."}),i.jsx("div",{className:"amb-platforms","aria-label":"Creator platforms",children:["TikTok","Instagram","YouTube","Newsletters","Blogs"].map(r=>i.jsx("span",{children:r},r))})]}),i.jsx("ul",{className:"amb-niches",children:bP.map(({icon:r,name:s})=>i.jsxs("li",{children:[i.jsx(r,{size:20,"aria-hidden":"true"}),s]},s))})]}),i.jsx(QS,{}),i.jsxs("section",{className:"amb-faq amb-wrap amb-section","aria-labelledby":"amb-faq-title",children:[i.jsxs("div",{children:[i.jsx("p",{className:"amb-eyebrow",children:"Before you dig in"}),i.jsxs("h2",{id:"amb-faq-title",children:["The details,",i.jsx("br",{}),i.jsx("span",{children:"served simply."})]}),i.jsx("p",{children:"Something else on your mind?"}),i.jsxs("a",{href:`mailto:${Vr}`,className:"amb-text-link",children:["Get in touch ",i.jsx(ir,{size:16,"aria-hidden":"true"})]})]}),i.jsx(vP,{type:"single",collapsible:!0,defaultValue:"faq-0",className:"amb-accordion",children:JS.map((r,s)=>i.jsxs(zy,{value:`faq-${s}`,children:[i.jsx(Hy,{className:"text-left",children:r.question}),i.jsxs(Wy,{forceMount:!0,children:[i.jsx("p",{children:r.answer}),s===5&&i.jsx("a",{className:"amb-inline-link",href:"https://www.ftc.gov/business-guidance/resources/disclosures-101-social-media-influencers",children:"Read the FTC disclosure guide"})]})]},r.question))}),i.jsx("noscript",{children:i.jsx("style",{children:".amb-accordion [role=region] { display:block!important; height:auto!important; animation:none!important; }"})})]}),i.jsxs("section",{className:"amb-closing amb-wrap","data-amb-reveal":!0,children:[i.jsx("img",{src:"/honeydew-app-icon-small.png",alt:"",width:"64",height:"64",loading:"lazy"}),i.jsx("p",{className:"amb-eyebrow",children:"Bring something good to the table"}),i.jsxs("h2",{children:["Become a",i.jsx("br",{}),"Honeydew Affiliate."]}),i.jsx("p",{children:"Share the app that helps your audience save it, plan it, and cook it."}),i.jsx(mi,{}),i.jsxs("p",{className:"amb-reassurance",children:["Takes 2 minutes ",i.jsx("span",{"aria-hidden":"true",children:"·"})," No follower minimum"]})]}),i.jsxs("div",{className:"amb-program-note amb-wrap",children:[i.jsx("a",{href:"/affiliates/terms",children:"Program terms (draft)"}),i.jsxs("span",{children:["Questions? ",i.jsx("a",{href:`mailto:${Vr}`,children:Vr})]})]})]}),i.jsx(Qe,{}),i.jsxs("div",{className:"amb-mobile-apply",children:[i.jsxs("div",{children:[i.jsx("strong",{children:"Your next good thing."}),i.jsx("span",{children:"2 minutes · No follower minimum"})]}),i.jsx(mi,{compact:!0})]})]})}function _P(){return i.jsxs("div",{className:"amb-page amb-terms-page",children:[i.jsx(ft,{title:"Honeydew Affiliate Program Terms (Draft)",de
722scription:"Draft terms for the Honeydew Affiliate Program. Eligibility, commission and payment, prohibited practices, disclosure, and termination.",canonical:"https://honeydewcook.com/affiliates/terms",noindex:!0}),i.jsx(pt,{}),i.jsxs("main",{className:"amb-wrap amb-terms",children:[i.jsxs("a",{href:"/affiliates",className:"amb-text-link",children:[i.jsx(Uf,{size:16,"aria-hidden":"true"})," Affiliate program"]}),i.jsx("p",{className:"amb-eyebrow",children:"Draft for founder review"}),i.jsx("h1",{children:"Affiliate program terms"}),i.jsxs("p",{className:"amb-terms-notice",children:["These terms are being prepared. This page is a draft and does not yet contain the complete program terms. For current participation details, contact ",i.jsx("a",{href:`mailto:${Vr}`,children:Vr}),"."]}),XS.map(t=>i.jsxs("section",{children:[i.jsx("h2",{children:t.title}),i.jsx("p",{children:t.placeholder})]},t.title))]}),i.jsx(Qe,{})]})}const jP=()=>i.jsxs("div",{className:"min-h-screen bg-gradient-to-b from-gray-50 to-white dark:from-gray-900 dark:to-gray-800",children:[i.jsx(ft,{title:"Account Confirmed - Honeydew",description:"Your Honeydew account has been successfully confirmed. Start organizing your recipes and meal plans today!",ogType:"website"}),i.jsx(pt,{}),i.jsx("main",{className:"container mx-auto px-4 py-20 max-w-2xl",children:i.jsxs("div",{className:"flex flex-col items-center text-center space-y-8",children:[i.jsxs(_t.div,{initial:{scale:0,rotate:-180},animate:{scale:1,rotate:0},transition:{type:"spring",stiffness:200,damping:15,delay:.1},className:"relative",children:[i.jsx("div",{className:"absolute inset-0 bg-honeydew-400/30 dark:bg-honeydew-500/20 rounded-full blur-2xl scale-150"}),i.jsx("div",{className:"relative bg-gradient-to-br from-honeydew-400 to-honeydew-600 p-6 rounded-full shadow-lg shadow-honeydew-500/30",children:i.jsx(oc,{className:"w-16 h-16 text-white",strokeWidth:2.5})}),i.jsx(_t.div,{initial:{opacity:0,scale:0},animate:{opacity:1,scale:1},transition:{delay:.5},className:"absolute -top-2 -right-2",children:i.jsx(Bn,{className:"w-8 h-8 text-yellow-400"})})]}),i.jsxs(_t.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.3},className:"space-y-4",children:[i.jsx("h1",{className:"text-4xl md:text-5xl font-bold bg-gradient-to-r from-honeydew-600 to-honeydew-800 dark:from-honeydew-400 dark:to-honeydew-600 bg-clip-text text-transparent",children:"Account Confirmed!"}),i.jsx("p",{className:"text-xl text-gray-600 dark:text-gray-400 max-w-md mx-auto",children:"Welcome to Honeydew! Your account is now active and ready to use."})]}),i.jsxs(_t.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.5},className:"bg-white dark:bg-gray-800/50 rounded-2xl p-8 shadow-lg border border-honeydew-100 dark:border-honeydew-900/50 w-full space-y-6",children:[i.jsx("h2",{className:"text-lg font-semibold text-gray-800 dark:text-gray-200",children:"What's next?"}),i.jsxs("ul",{className:"space-y-4 text-left",children:[i.jsxs("li",{className:"flex items-start gap-3",children:[i.jsx("div",{className:"mt-1 w-5 h-5 rounded-full bg-honeydew-100 dark:bg-honeydew-900/50 flex items-center justify-center flex-shrink-0",children:i.jsx("span",{className:"text-honeydew-600 dark:text-honeydew-400 text-xs font-bold",children:"1"})}),i.jsx("span",{className:"text-gray-600 dark:text-gray-400",children:"Open the Honeydew app on your device"})]}),i.jsxs("li",{className:"flex items-start gap-3",children:[i.jsx("div",{className:"mt-1 w-5 h-5 rounded-full bg-honeydew-100 dark:bg-honeydew-900/50 flex items-center justify-center flex-shrink-0",children:i.jsx("span",{className:"text-honeydew-600 dark:text-honeydew-400 text-xs font-bold",children:"2"})}),i.jsx("span",{className:"text-gray-600 dark:text-gray-400",children:"Sign in with your confirmed email address"})]}),i.jsxs("li",{className:"flex items-start gap-3",children:[i.jsx("div",{className:"mt-1 w-5 h-5 rounded-full bg-honeydew-100 dark:bg-honeydew-900/50 flex items-center justify-center flex-shrink-0",children:i.jsx("span",{className:"text-honeydew-600 dark:text-honeydew-400 text-xs font-bold",children:"3"})}),i.jsx("span",{className:"text-gray-600 dark:text-gray-400",children:"Start saving recipes and planning meals!"})]})]})]}),i.jsxs(_t.div,{initial:{opacity:0,y:20}
722,animate:{opacity:1,y:0},transition:{delay:.7},className:"flex flex-col sm:flex-row gap-4 w-full sm:w-auto",children:[i.jsx(Fr,{asChild:!0,size:"lg",className:"bg-honeydew-600 hover:bg-honeydew-700 text-white shadow-lg shadow-honeydew-500/25",children:i.jsxs("a",{href:"/",children:["Explore Honeydew",i.jsx(ir,{className:"ml-2 w-4 h-4"})]})}),i.jsx(Fr,{asChild:!0,variant:"outline",size:"lg",className:"border-honeydew-200 dark:border-honeydew-800 hover:bg-honeydew-50 dark:hover:bg-honeydew-900/20",children:i.jsx("a",{href:"/collections",children:"Browse Recipe Collections"})})]}),i.jsxs(_t.p,{initial:{opacity:0},animate:{opacity:1},transition:{delay:.9},className:"text-sm text-gray-500 dark:text-gray-500",children:["Having trouble?"," ",i.jsx("a",{href:"mailto:[email protected]",className:"text-honeydew-600 hover:text-honeydew-700 dark:text-honeydew-400 dark:hover:text-honeydew-300 underline",children:"Contact support"})]})]})}),i.jsx(Qe,{})]}),kP=ma("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function Ol({className:t,variant:e,...r}){return i.jsx("div",{className:q(kP({variant:e}),t),...r})}const EP=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);
722class ud extends Error{constructor(e,r="FunctionsError",s){super(e),this.name=r,this.context=s}}class TP extends ud{constructor(e){super("Failed to send a request to the Edge Function","FunctionsFetchError",e)}}class pp extends ud{constructor(e){super("Relay Error invoking the Edge Function","FunctionsRelayError",e)}}class fp extends ud{constructor(e){super("Edge Function returned a non-2xx status code","FunctionsHttpError",e)}}var Il;(function(t){t.Any="any",t.ApNortheast1="ap-northeast-1",t.ApNortheast2="ap-northeast-2",t.ApSouth1="ap-south-1",t.ApSoutheast1="ap-southeast-1",t.ApSoutheast2="ap-southeast-2",t.CaCentral1="ca-central-1",t.EuCentral1="eu-central-1",t.EuWest1="eu-west-1",t.EuWest2="eu-west-2",t.EuWest3="eu-west-3",t.SaEast1="sa-east-1",t.UsEast1="us-east-1",t.UsWest1="us-west-1",t.UsWest2="us-west-2"})(Il||(Il={}));class AP{constructor(e,{headers:r={},customFetch:s,region:n=Il.Any}={}){this.url=e,this.headers=r,this.region=n,this.fetch=EP(s)}setAuth(e){this.headers.Authorization=`Bearer ${e}`}invoke(e){return q_(this,arguments,void 0,function*(r,s={}){var n;let a,o;try{const{headers:l,method:c,body:d,signal:u,timeout:p}=s;let h={},{region:f}=s;f||(f=this.region);const x=new URL(`${this.url}/${r}`);f&&f!=="any"&&(h["x-region"]=f,x.searchParams.set("forceFunctionRegion",f));let m;d&&(l&&!Object.prototype.hasOwnProperty.call(l,"Content-Type")||!l)?typeof Blob<"u"&&d instanceof Blob||d instanceof ArrayBuffer?(h["Content-Type"]="application/octet-stream",m=d):typeof d=="string"?(h["Content-Type"]="text/plain",m=d):typeof FormData<"u"&&d instanceof FormData?m=d:(h["Content-Type"]="application/json",m=JSON.stringify(d)):m=d;let y=u;p&&(o=new AbortController,a=setTimeout(()=>o.abort(),p),u?(y=o.signal,u.addEventListener("abort",()=>o.abort())):y=o.signal);const b=yield this.fetch(x.toString(),{method:c||"POST",headers:Object.assign(Object.assign(Object.assign({},h),this.headers),l),body:m,signal:y}).catch(k=>{throw new TP(k)}),w=b.headers.get("x-relay-error");if(w&&w==="true")throw new pp(b);if(!b.ok)throw new fp(b);let _=((n=b.headers.get("Content-Type"))!==null&&n!==void 0?n:"text/plain").split(";")[0].trim(),j;return _==="application/json"?j=yield b.json():_==="application/octet-stream"||_==="application/pdf"?j=yield b.blob():_==="text/event-stream"?j=b:_==="multipart/form-data"?j=yield b.formData():j=yield b.text(),{data:j,error:null,response:b}}catch(l){return{data:null,error:l,response:l instanceof fp||l instanceof pp?l.context:void 0}}finally{a&&clearTimeout(a)}})}}var NP=class extends Error{constructor(t){super(t.message),this.name="PostgrestError",this.details=t.details,this.hint=t.hint,this.co
722de=t.code}},CP=class{constructor(t){var e,r;this.shouldThrowOnError=!1,this.method=t.method,this.url=t.url,this.headers=new Headers(t.headers),this.schema=t.schema,this.body=t.body,this.shouldThrowOnError=(e=t.shouldThrowOnError)!==null&&e!==void 0?e:!1,this.signal=t.signal,this.isMaybeSingle=(r=t.isMaybeSingle)!==null&&r!==void 0?r:!1,t.fetch?this.fetch=t.fetch:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}setHeader(t,e){return this.headers=new Headers(this.headers),this.headers.set(t,e),this}then(t,e){var r=this;this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers.set("Accept-Profile",this.schema):this.headers.set("Content-Profile",this.schema)),this.method!=="GET"&&this.method!=="HEAD"&&this.headers.set("Content-Type","application/json");const s=this.fetch;let n=s(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async a=>{let o=null,l=null,c=null,d=a.status,u=a.statusText;if(a.ok){var p,h;if(r.method!=="HEAD"){var f;const b=await a.text();b===""||(r.headers.get("Accept")==="text/csv"||r.headers.get("Accept")&&(!((f=r.headers.get("Accept"))===null||f===void 0)&&f.includes("application/vnd.pgrst.plan+text"))?l=b:l=JSON.parse(b))}const m=(p=r.headers.get("Prefer"))===null||p===void 0?void 0:p.match(/count=(exact|planned|estimated)/),y=(h=a.headers.get("content-range"))===null||h===void 0?void 0:h.split("/");m&&y&&y.length>1&&(c=parseInt(y[1])),r.isMaybeSingle&&r.method==="GET"&&Array.isArray(l)&&(l.length>1?(o={code:"PGRST116",details:`Results contain ${l.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},l=null,c=null,d=406,u="Not Acceptable"):l.length===1?l=l[0]:l=null)}else{var x;const m=await a.text();try{o=JSON.parse(m),Array.isArray(o)&&a.status===404&&(l=[],o=null,d=200,u="OK")}catch{a.status===404&&m===""?(d=204,u="No Content"):o={message:m}}if(o&&r.isMaybeSingle&&(!(o==null||(x=o.details)===null||x===void 0)&&x.includes("0 rows"))&&(o=null,d=200,u="OK"),o&&r.shouldThrowOnError)throw new NP(o)}return{error:o,data:l,count:c,status:d,statusText:u}});return this.shouldThrowOnError||(n=n.catch(a=>{var o;let l="";const c=a==null?void 0:a.cause;if(c){var d,u,p,h;const x=(d=c==null?void 0:c.message)!==null&&d!==void 0?d:"",m=(u=c==null?void 0:c.code)!==null&&u!==void 0?u:"";l=`${(p=a==null?void 0:a.name)!==null&&p!==void 0?p:"FetchError"}: ${a==null?void 0:a.message}`,l+=`
723
724Caused by: ${(h=c==null?void 0:c.name)!==null&&h!==void 0?h:"Error"}: ${x}`,m&&(l+=` (${m})`),c!=null&&c.stack&&(l+=`
725${c.stack}`)}else{var f;l=(f=a==null?void 0:a.stack)!==null&&f!==void 0?f:""}return{error:{message:`${(o=a==null?void 0:a.name)!==null&&o!==void 0?o:"FetchError"}: ${a==null?void 0:a.message}`,details:l,hint:"",code:""},data:null,count:null,status:0,statusText:""}})),n.then(t,e)}returns(){return this}overrideTypes(){return this}},SP=class extends CP{select(t){let e=!1;const r=(t??"*").split("").map(s=>/\s/.test(s)&&!e?"":(s==='"'&&(e=!e),s)).join("");return this.url.searchParams.set("select",r),this.headers.append("Prefer","return=representation"),this}order(t,{ascending:e=!0,nullsFirst:r,foreignTable:s,referencedTable:n=s}={}){const a=n?`${n}.order`:"order",o=this.url.searchParams.get(a);return this.url.searchParams.set(a,`${o?`${o},`:""}${t}.${e?"asc":"desc"}${r===void 0?"":r?".nullsfirst":".nullslast"}`),this}limit(t,{foreignTable:e,referencedTable:r=e}={}){const s=typeof r>"u"?"limit":`${r}.limit`;return this.url.searchParams.set(s,`${t}`),this}range(t,e,{foreignTable:r,referencedTable:s=r}={}){const n=typeof s>"u"?"offset":`${s}.offset`,a=typeof s>"u"?"limit":`${s}.limit`;return this.url.searchParams.set(n,`${t}`),this.url.searchParams.set(a,`${e-t+1}`),this}abortSignal(t){return this.signal=t,this}single(){return this.headers.set("Accept","application/vnd.pgrst.object+json"),this}maybeSingle(){return this.method==="GET"?this.headers.set("Accept","application/json"):this.headers.set("Accept","application/vnd.pgrst.object+json"),this.isMaybeSingle=!0,this}csv(){return this.headers.set("Accept","text/csv"),this}geojson(){return this.headers.set("Accept","application/geo+json"),this}
725explain({analyze:t=!1,verbose:e=!1,settings:r=!1,buffers:s=!1,wal:n=!1,format:a="text"}={}){var o;const l=[t?"analyze":null,e?"verbose":null,r?"settings":null,s?"buffers":null,n?"wal":null].filter(Boolean).join("|"),c=(o=this.headers.get("Accept"))!==null&&o!==void 0?o:"application/json";return this.headers.set("Accept",`application/vnd.pgrst.plan+${a}; for="${c}"; options=${l};`),a==="json"?this:this}rollback(){return this.headers.append("Prefer","tx=rollback"),this}returns(){return this}maxAffected(t){return this.headers.append("Prefer","handling=strict"),this.headers.append("Prefer",`max-affected=${t}`),this}};const mp=new RegExp("[,()]");var is=class extends SP{eq(t,e){return this.url.searchParams.append(t,`eq.${e}`),this}neq(t,e){return this.url.searchParams.append(t,`neq.${e}`),this}gt(t,e){return this.url.searchParams.append(t,`gt.${e}`),this}gte(t,e){return this.url.searchParams.append(t,`gte.${e}`),this}lt(t,e){return this.url.searchParams.append(t,`lt.${e}`),this}lte(t,e){return this.url.searchParams.append(t,`lte.${e}`),this}like(t,e){return this.url.searchParams.append(t,`like.${e}`),this}likeAllOf(t,e){return this.url.searchParams.append(t,`like(all).{${e.join(",")}}`),this}likeAnyOf(t,e){return this.url.searchParams.append(t,`like(any).{${e.join(",")}}`),this}ilike(t,e){return this.url.searchParams.append(t,`ilike.${e}`),this}ilikeAllOf(t,e){return this.url.searchParams.append(t,`ilike(all).{${e.join(",")}}`),this}ilikeAnyOf(t,e){return this.url.searchParams.append(t,`ilike(any).{${e.join(",")}}`),this}regexMatch(t,e){return this.url.searchParams.append(t,`match.${e}`),this}regexIMatch(t,e){return this.url.searchParams.append(t,`imatch.${e}`),this}is(t,e){return this.url.searchParams.append(t,`is.${e}`),this}isDistinct(t,e){return this.url.searchParams.append(t,`isdistinct.${e}`),this}in(t,e){const r=Array.from(new Set(e)).map(s=>typeof s=="string"&&mp.test(s)?`"${s}"`:`${s}`).join(",");return this.url.searchParams.append(t,`in.(${r})`),this}notIn(t,e){const r=Array.from(new Set(e)).map(s=>typeof s=="string"&&mp.test(s)?`"${s}"`:`${s}`).join(",");return this.url.searchParams.append(t,`not.in.(${r})`),this}contains(t,e){return typeof e=="string"?this.url.searchParams.append(t,`cs.${e}`):Array.isArray(e)?this.url.searchParams.append(t,`cs.{${e.join(",")}}`):this.url.searchParams.append(t,`cs.${JSON.stringify(e)}`),this}containedBy(t,e){return typeof e=="string"?this.url.searchParams.append(t,`cd.${e}`):Array.isArray(e)?this.url.searchParams.append(t,`cd.{${e.join(",")}}`):this.url.searchParams.append(t,`cd.${JSON.stringify(e)}`),this}rangeGt(t,e){return this.url.searchParams.append(t,`sr.${e}`),this}rangeGte(t,e){return this.url.searchParams.append(t,`nxl.${e}`),this}rangeLt(t,e){return this.url.searchParams.append(t,`sl.${e}`),this}rangeLte(t,e){return this.url.searchParams.append(t,`nxr.${e}`),this}rangeAdjacent(t,e){return this.url.searchParams.append(t,`adj.${e}`),this}overlaps(t,e){return typeof e=="string"?this.url.searchParams.append(t,`ov.${e}`):this.url.searchParams.append(t,`ov.{${e.join(",")}}`),this}textSearch(t,e,{config:r,type:s}={}){let n="";s==="plain"?n="pl":s==="phrase"?n="ph":s==="websearch"&&(n="w");const a=r===void 0?"":`(${r})`;return this.url.searchParams.append(t,`${n}fts${a}.${e}`),this}match(t){return Object.entries(t).forEach(([e,r])=>{this.url.searchParams.append(e,`eq.${r}`)}),this}not(t,e,r){return this.url.searchParams.append(t,`not.${e}.${r}`),this}or(t,{foreignTable:e,referencedTable:r=e}={}){const s=r?`${r}.or`:"or";return this.url.searchParams.append(s,`(${t})`),this}filter(t,e,r){return this.url.searchParams.append(t,`${e}.${r}`),this}},PP=class{constructor(t,{headers:e={},schema:r,fetch:s}){this.url=t,this.headers=new Headers(e),this.schema=r,this.fetch=s}select(t,e){const{head:r=!1,count:s}=e??{},n=r?"HEAD":"GET";let a=!1;const o=(t??"*").split("").map(l=>/\s/.test(l)&&!a?"":(l==='"'&&(a=!a),l)).join("");return this.url.searchParams.set("select",o),s&&this.headers.append("Prefer",`count=${s}`),new is({method:n,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch})}insert(t,{count:e,defaultToNull:r=!0}={}){var s;const n="POST";if(e&&this.headers.append("Prefer",`count=${e}`),r||this.headers.append("Prefer","missing=default"),Array.isArray(t)){const a=t.reduce((o,l)=>o.concat(Object.keys(l)),[]);if(a.length>
7250){const o=[...new Set(a)].map(l=>`"${l}"`);this.url.searchParams.set("columns",o.join(","))}}return new is({method:n,url:this.url,headers:this.headers,schema:this.schema,body:t,fetch:(s=this.fetch)!==null&&s!==void 0?s:fetch})}upsert(t,{onConflict:e,ignoreDuplicates:r=!1,count:s,defaultToNull:n=!0}={}){var a;const o="POST";if(this.headers.append("Prefer",`resolution=${r?"ignore":"merge"}-duplicates`),e!==void 0&&this.url.searchParams.set("on_conflict",e),s&&this.headers.append("Prefer",`count=${s}`),n||this.headers.append("Prefer","missing=default"),Array.isArray(t)){const l=t.reduce((c,d)=>c.concat(Object.keys(d)),[]);if(l.length>0){const c=[...new Set(l)].map(d=>`"${d}"`);this.url.searchParams.set("columns",c.join(","))}}return new is({method:o,url:this.url,headers:this.headers,schema:this.schema,body:t,fetch:(a=this.fetch)!==null&&a!==void 0?a:fetch})}update(t,{count:e}={}){var r;const s="PATCH";return e&&this.headers.append("Prefer",`count=${e}`),new is({method:s,url:this.url,headers:this.headers,schema:this.schema,body:t,fetch:(r=this.fetch)!==null&&r!==void 0?r:fetch})}delete({count:t}={}){var e;const r="DELETE";return t&&this.headers.append("Prefer",`count=${t}`),new is({method:r,url:this.url,headers:this.headers,schema:this.schema,fetch:(e=this.fetch)!==null&&e!==void 0?e:fetch})}},RP=class qy{constructor(e,{headers:r={},schema:s,fetch:n}={}){this.url=e,this.headers=new Headers(r),this.schemaName=s,this.fetch=n}from(e){if(!e||typeof e!="string"||e.trim()==="")throw new Error("Invalid relation name: relation must be a non-empty string.");return new PP(new URL(`${this.url}/${e}`),{headers:new Headers(this.headers),schema:this.schemaName,fetch:this.fetch})}schema(e){return new qy(this.url,{headers:this.headers,schema:e,fetch:this.fetch})}rpc(e,r={},{head:s=!1,get:n=!1,count:a}={}){var o;let l;const c=new URL(`${this.url}/rpc/${e}`);let d;s||n?(l=s?"HEAD":"GET",Object.entries(r).filter(([p,h])=>h!==void 0).map(([p,h])=>[p,Array.isArray(h)?`{${h.join(",")}}`:`${h}`]).forEach(([p,h])=>{c.searchParams.append(p,h)})):(l="POST",d=r);const u=new Headers(this.headers);return a&&u.set("Prefer",`count=${a}`),new is({method:l,url:c,headers:u,schema:this.schemaName,body:d,fetch:(o=this.fetch)!==null&&o!==void 0?o:fetch})}};class OP{constructor(){}static detectEnvironment(){var e;if(typeof WebSocket<"u")return{type:"native",constructor:WebSocket};if(typeof globalThis<"u"&&typeof globalThis.WebSocket<"u")return{type:"native",constructor:globalThis.WebSocket};if(typeof global<"u"&&typeof global.WebSocket<"u")return{type:"native",constructor:global.WebSocket};if(typeof globalThis<"u"&&typeof globalThis.WebSocketPair<"u"&&typeof globalThis.WebSocket>"u")return{type:"cloudflare",error:"Cloudflare Workers detected. WebSocket clients are not supported in Cloudflare Workers.",workaround:"Use Cloudflare Workers WebSocket API for server-side WebSocket handling, or deploy to a different runtime."};if(typeof globalThis<"u"&&globalThis.EdgeRuntime||typeof navigator<"u"&&(!((e=navigator.userAgent)===null||e===void 0)&&e.includes("Vercel-Edge")))return{type:"unsupported",error:"Edge runtime detected (Vercel Edge/Netlify Edge). WebSockets are not supported in edge functions.",workaround:"Use serverless functions or a different deployment target for WebSocket functionality."};if(typeof process<"u"){const r=process.versions;if(r&&r.node){const s=r.node,n=parseInt(s.replace(/^v/,"").split(".")[0]);return n>=22?typeof globalThis.WebSocket<"u"?{type:"native",constructor:globalThis.WebSocket}:{type:"unsupported",error:`Node.js ${n} detected but native WebSocket not found.`,workaround:"Provide a WebSocket implementation via the transport option."}:{type:"unsupported",error:`Node.js ${n} detected without native WebSocket support.`,workaround:`For Node.js < 22, install "ws" package and provide it via the transport option:
726import ws from "ws"
727new RealtimeClient(url, { transport: ws })`}}}return{type:"unsupported",error:"Unknown JavaScript runtime without WebSocket support.",workaround:"Ensure you're running in a supported environment (browser, Node.js, Deno) or provide a custom WebSocket implementation."}}static getWebSocketConstructor(){const e=this.detectEnvironment();if(e.constructor)return e.constructor;let r=e.error||"WebSocket not supported in this environment.";throw e.workaround&&(r+=`
728
729Suggested solution: ${e.workaround}`),new Error(r)}static createWebSocket(e,r){const s=this.getWebSocketConstructor();return new s(e,r)}static isWebSocketSupported(){try{const e=this.detectEnvironment();return e.type==="native"||e.type==="ws"}catch{return!1}}}const IP="2.89.0",DP=`realtime-js/${IP}`,Gy="1.0.0",LP="2.0.0",gp=Gy,Dl=1e4,MP=1e3,VP=100;var Jt;(function(t){t[t.connecting=0]="connecting",t[t.open=1]="open",t[t.closing=2]="closing",t[t.closed=3]="closed"})(Jt||(Jt={}));var je;(function(t){t.closed="closed",t.errored="errored",t.joined="joined",t.joining="joining",t.leaving="leaving"})(je||(je={}));var it;(function(t){t.close="phx_close",t.error="phx_error",t.join="phx_join",t.reply="phx_reply",t.leave="phx_leave",t.access_token="access_token"})(it||(it={}));var Ll;(function(t){t.websocket="websocket"})(Ll||(Ll={}));var Tr;(function(t){t.Connecting="connecting",t.Open="open",t.Closing="closing",t.Closed="closed"})(Tr||(Tr={}));class $P{constructor(e){this.HEADER_LENGTH=1,this.USER_BROADCAST_PUSH_META_LENGTH=6,this.KINDS={userBroadcastPush:3,userBroadcast:4},this.BINARY_ENCODING=0,this.JSON_ENCODING=1,this.BROADCAST_EVENT="broadcast",this.allowedMetadataKeys=[],this.allowedMetadataKeys=e??[]}encode(e,r){if(e.event===this.BROADCAST_EVENT&&!(e.payload instanceof ArrayBuffer)&&typeof e.payload.event=="string")return r(this._binaryEncodeUserBroadcastPush(e));let s=[e.join_ref,e.ref,e.topic,e.event,e.payload];return r(JSON.stringify(s))}_binaryEncodeUserBroadcastPush(e){var r;return this._isArrayBuffer((r=e.payload)===null||r===void 0?void 0:r.payload)?this._encodeBinaryUserBroadcastPush(e):this._encodeJsonUserBroadcastPush(e)}_encodeBinaryUserBroadcastPush(e){var r,s;const n=(s=(r=e.payload)===null||r===void 0?void 0:r.payload)!==null&&s!==void 0?s:new ArrayBuffer(0);return this._encodeUserBroadcastPush(e,this.BINARY_ENCODING,n)}_encodeJsonUserBroadcastPush(e){var r,s;const n=(s=(r=e.payload)===null||r===void 0?void 0:r.payload)!==null&&s!==void 0?s:{},o=new TextEncoder().encode(JSON.stringify(n)).buffer;return this._encodeUserBroadcastPush(e,this.JSON_ENCODING,o)}_encodeUserBroadcastPush(e,r,s){var n,a;const o=e.topic,l=(n=e.ref)!==null&&n!==void 0?n:"",c=(a=e.join_ref)!==null&&a!==void 0?a:"",d=e.payload.event,u=this.allowedMetadataKeys?this._pick(e.payload,this.allowedMetadataKeys):{},p=Object.keys(u).length===0?"":JSON.stringify(u);if(c.length>255)throw new Error(`joinRef length ${c.length} exceeds maximum of 255`);if(l.length>255)throw new Error(`ref length ${l.length} exceeds maximum of 255`);if(o.length>255)throw new Error(`topic length ${o.length} exceeds maximum of 255`);if(d.length>255)throw new Error(`userEvent length ${d.length} exceeds maximum of 255`);if(p.length>255)throw new Error(`metadata length ${p.length} exceeds maximum of 255`);const h=this.USER_BROADCAST_PUSH_META_LENGTH+c.length+l.length+o.length+d.length+p.length,f=new ArrayBuffer(this.HEADER_LENGTH+h);let x=new DataView(f),m=0;x.setUint8(m++,this.KINDS.userBroadcastPush),x.setUint8(m++,c.length),x.setUint8(m++,l.length),x.setUint8(m++,o.length),x.setUint8(m++,d.length),x.setUint8(m++,p.length),x.setUint8(m++,r),Array.from(c,b=>x.setUint8(m++,b.charCodeAt(0))),Array.from(l,b=>x.setUint8(m++,b.charCodeAt(0))),Array.from(o,b=>x.setUint8(m++,b.charCodeAt(0))),Array.from(d,b=>x.setUint8(m++,b.charCodeAt(0))),Array.from(p,b=>x.setUint8(m++,b.charCodeAt(0)));var y=new Uint8Array(f.byteLength+s.byteLength);return y.set(new Uint8Array(f),0),y.set(new Uint8Array(s),f.byteLength),y.buffer}decode(e,r){if(this._isArrayBuffer(e)){let s=this._binaryDecode(e);return r(s)}if(typeof e=="string"){const s=JSON.parse(e),[n,a,o,l,c]=s;return r({join_ref:n,ref:a,topic:o,event:l,payload:c})}return r({})}_binaryDecode(e){const r=new DataView(e),s=r.getUint8(0),n=new TextDecoder;switch(s){case this.KINDS.userBroadcast:return this._decodeUserBroadcast(e,r,n)}}_decodeUserBroadcast(e,r,s){const n=r.getUint8(1),a=r.getUint8(2),o=r.getUint8(3),l=r.getUint8(4);let c=this.HEADER_LENGTH+4;const d=s.decode(e.slice(c,c+n));c=c+n;const u=s.decode(e.slice(c,c+a));c=c+a;
729const p=s.decode(e.slice(c,c+o));c=c+o;const h=e.slice(c,e.byteLength),f=l===this.JSON_ENCODING?JSON.parse(s.decode(h)):h,x={type:this.BROADCAST_EVENT,event:u,payload:f};return o>0&&(x.meta=JSON.parse(p)),{join_ref:null,ref:null,topic:d,event:this.BROADCAST_EVENT,payload:x}}_isArrayBuffer(e){var r;return e instanceof ArrayBuffer||((r=e==null?void 0:e.constructor)===null||r===void 0?void 0:r.name)==="ArrayBuffer"}_pick(e,r){return!e||typeof e!="object"?{}:Object.fromEntries(Object.entries(e).filter(([s])=>r.includes(s)))}}class Ky{constructor(e,r){this.callback=e,this.timerCalc=r,this.timer=void 0,this.tries=0,this.callback=e,this.timerCalc=r}reset(){this.tries=0,clearTimeout(this.timer),this.timer=void 0}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}}var ie;(function(t){t.abstime="abstime",t.bool="bool",t.date="date",t.daterange="daterange",t.float4="float4",t.float8="float8",t.int2="int2",t.int4="int4",t.int4range="int4range",t.int8="int8",t.int8range="int8range",t.json="json",t.jsonb="jsonb",t.money="money",t.numeric="numeric",t.oid="oid",t.reltime="reltime",t.text="text",t.time="time",t.timestamp="timestamp",t.timestamptz="timestamptz",t.timetz="timetz",t.tsrange="tsrange",t.tstzrange="tstzrange"})(ie||(ie={}));const yp=(t,e,r={})=>{var s;const n=(s=r.skipTypes)!==null&&s!==void 0?s:[];return e?Object.keys(e).reduce((a,o)=>(a[o]=FP(o,t,e,n),a),{}):{}},FP=(t,e,r,s)=>{const n=e.find(l=>
729l.name===t),a=n==null?void 0:n.type,o=r[t];return a&&!s.includes(a)?Yy(a,o):Ml(o)},Yy=(t,e)=>{if(t.charAt(0)==="_"){const r=t.slice(1,t.length);return HP(e,r)}switch(t){case ie.bool:return UP(e);case ie.float4:case ie.float8:case ie.int2:case ie.int4:case ie.int8:case ie.numeric:case ie.oid:return BP(e);case ie.json:case ie.jsonb:return zP(e);case ie.timestamp:return WP(e);case ie.abstime:case ie.date:case ie.daterange:case ie.int4range:case ie.int8range:case ie.money:case ie.reltime:case ie.text:case ie.time:case ie.timestamptz:case ie.timetz:case ie.tsrange:case ie.tstzrange:return Ml(e);default:return Ml(e)}},Ml=t=>t,UP=t=>{switch(t){case"t":return!0;case"f":return!1;default:return t}},BP=t=>{if(typeof t=="string"){const e=parseFloat(t);if(!Number.isNaN(e))return e}return t},zP=t=>{if(typeof t=="string")try{return JSON.parse(t)}catch{return t}return t},HP=(t,e)=>{if(typeof t!="string")return t;const r=t.length-1,s=t[r];if(t[0]==="{"&&s==="}"){let a;const o=t.slice(1,r);try{a=JSON.parse("["+o+"]")}catch{a=o?o.split(","):[]}return a.map(l=>Yy(e,l))}return t},WP=t=>typeof t=="string"?t.replace(" ","T"):t,Jy=t=>{const e=new URL(t);return e.protocol=e.protocol.replace(/^ws/i,"http"),e.pathname=e.pathname.replace(/\/+$/,"").replace(/\/socket\/websocket$/i,"").replace(/\/socket$/i,"").replace(/\/websocket$/i,""),e.pathname===""||e.pathname==="/"?e.pathname="/api/broadcast":e.pathname=e.pathname+"/api/broadcast",e.href};class Po{constructor(e,r,s={},n=Dl){this.channel=e,this.event=r,this.payload=s,this.timeout=n,this.sent=!1,this.timeoutTimer=void 0,this.ref="",this.receivedResp=null,this.recHooks=[],this.refEvent=null}resend(e){this.timeout=e,this._cancelRefEvent(),this.ref="",this.refEvent=null,this.receivedResp=null,this.sent=!1,this.send()}send(){this._hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload,ref:this.ref,join_ref:this.channel._joinRef()}))}updatePayload(e){this.payload=Object.assign(Object.assign({},this.payload),e)}receive(e,r){var s;return this._hasReceived(e)&&r((s=this.receivedResp)===null||s===void 0?void 0:s.response),this.recHooks.push({status:e,callback:r}),this}startTimeout(){if(this.timeoutTimer)return;this.ref=this.channel.socket._makeRef(),this.refEvent=this.channel._replyEventName(this.ref);const e=r=>{this._cancelRefEvent(),this._cancelTimeout(),this.receivedResp=r,this._matchReceive(r)};this.channel._on(this.refEvent,{},e),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}trigger(e,r){this.refEvent&&this.channel._trigger(this.refEvent,{status:e,response:r})}destroy(){this._cancelRefEvent(),this._cancelTimeout()}_cancelRefEvent(){this.refEvent&&this.channel._off(this.refEvent,{})}_cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=void 0}_matchReceive({status:e,response:r}){this.recHooks.filter(s=>s.status===e).forEach(s=>s.callback(r))}_hasReceived(e){return this.receivedResp&&this.receivedResp.status===e}}var xp;(function(t){t.SYNC="sync",t.JOIN="join",t.LEAVE="leave"})(xp||(xp={}));class yn{constructor(e,r){this.channel=e,this.state={},this.pendingDiffs=[],this.joinRef=null,this.enabled=!1,this.caller={onJoin:()=>{},onLeave:()=>{},onSync:()=>{}};const s=(r==null?void 0:r.events)||{state:"presence_state",diff:"presence_diff"};this.channel._on(s.state,{},n=>{const{onJoin:a,onLeave:o,onSync:l}=this.caller;this.joinRef=this.channel._joinRef(),this.state=yn.syncState(this.state,n,a,o),this.pendingDiffs.forEach(c=>{this.state=yn.syncDiff(this.state,c,a,o)}),this.pendingDiffs=[],l()}),this.channel._on(s.diff,{},n=>{const{onJoin:a,onLeave:o,onSync:l}=this.caller;this.inPendingSyncState()?this.pendingDiffs.push(n):(this.state=yn.syncDiff(this.state,n,a,o),l())}),this.onJoin((n,a,o)=>{this.channel._trigger("presence",{event:"join",key:n,currentPresences:a,newPresences:o})}),this.onLeave((n,a,o)=>{this.channel._trigger("presence",{event:"leave",key:n,currentPresences:a,leftPresences:o})}),this.onSync(()=>{this.channel._trigger("presence",{event:"sync"})})}static syncState(e,r,s,n){const a=this.cloneDeep(e),o=this.transformState(r),l={},c={};return this.map(a,(d,u)=>{o[d]||(c[d]=u)}),this.map(o,(d,u)=>{const p=a[d];if(p){const h=u.map(y=>y.presence_ref),f=p.map(y=>y.presence_ref),x=u.filter(y=>f.indexOf(y.presence_ref)<0),m=p.filter(y=>h.indexOf(y.presence_ref)<0);x.length>0&&(l[d]=x),m.length>0&&(c[d]=m)}else l[d]=u}),this.syncDiff(a,{joins:l,leaves:c},s,n)}static syncDiff(e,r,s,n){const{joins:a,leaves:o}={joins:this.transformState(r.joins),leaves:this.transformState(r.leaves)};return s||(s=()=>{}),n||(n=()=>{}),this.map(a,(l,c)=>{var d;const u=(d=e[l])!==null&&d!==void 0?d:[];if(e[l]=this.cloneDeep(c),u.length>0){const p=e[l].map(f=>f.presence_ref),h=u.filter(f=>p.indexOf(f.presence_ref)<0);e[l].unshift(...h)}s(l,u,c)}),this.map(o,(l,c)=>{let d=e[l];
729if(!d)return;const u=c.map(p=>p.presence_ref);d=d.filter(p=>u.indexOf(p.presence_ref)<0),e[l]=d,n(l,d,c),d.length===0&&delete e[l]}),e}static map(e,r){return Object.getOwnPropertyNames(e).map(s=>r(s,e[s]))}static transformState(e){return e=this.cloneDeep(e),Object.getOwnPropertyNames(e).reduce((r,s)=>{const n=e[s];return"metas"in n?r[s]=n.metas.map(a=>(a.presence_ref=a.phx_ref,delete a.phx_ref,delete a.phx_ref_prev,a)):r[s]=n,r},{})}static cloneDeep(e){return JSON.parse(JSON.stringify(e))}onJoin(e){this.caller.onJoin=e}onLeave(e){this.caller.onLeave=e}onSync(e){this.caller.onSync=e}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel._joinRef()}}var vp;(function(t){t.ALL="*",t.INSERT="INSERT",t.UPDATE="UPDATE",t.DELETE="DELETE"})(vp||(vp={}));var xn;(function(t){t.BROADCAST="broadcast",t.PRESENCE="presence",t.POSTGRES_CHANGES="postgres_changes",t.SYSTEM="system"})(xn||(xn={}));var Ot;(function(t){t.SUBSCRIBED="SUBSCRIBED",t.TIMED_OUT="TIMED_OUT",t.CLOSED="CLOSED",t.CHANNEL_ERROR="CHANNEL_ERROR"})(Ot||(Ot={}));class fs{constructor(e,r={config:{}},s){var n,a;if(this.topic=e,this.params=r,this.socket=s,this.bindings={},this.state=je.closed,this.joinedOnce=!1,this.pushBuffer=[],this.subTopic=e.replace(/^realtime:/i,""),this.params.config=Object.assign({broadcast:{ack:!1,self:!1},presence:{key:"",enabled:!1},private:!1},r.config),this.timeout=this.socket.timeout,this.joinPush=new Po(this,it.join,this.params,this.timeout),this.rejoinTimer=new Ky(()=>this._rejoinUntilConnected(),this.socket.reconnectAfterMs),this.joinPush.receive("ok",()=>{this.state=je.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(o=>o.send()),this.pushBuffer=[]}),this._onClose(()=>{this.rejoinTimer.reset(),this.socket.log("channel",`close ${this.topic} ${this._joinRef()}`),this.state=je.closed,this.socket._remove(this)}),this._onError(o=>{this._isLeaving()||this._isClosed()||(this.socket.log("channel",`error ${this.topic}`,o),this.state=je.errored,this.rejoinTimer.scheduleTimeout())}),this.joinPush.receive("timeout",()=>{this._isJoining()&&(this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout),this.state=je.errored,this.rejoinTimer.scheduleTimeout())}),this.joinPush.receive("error",o=>{this._isLeaving()||this._isClosed()||(this.socket.log("channel",`error ${this.topic}`,o),this.state=je.errored,this.rejoinTimer.scheduleTimeout())}),this._on(it.reply,{},(o,l)=>{this._trigger(this._replyEventName(l),o)}),this.presence=new yn(this),this.broadcastEndpointURL=Jy(this.socket.endPoint),this.private=this.params.config.private||!1,!this.private&&(!((a=(n=this.params.config)===null||n===void 0?void 0:n.broadcast)===null||a===void 0)&&a.replay))throw`tried to use replay on public channel '${this.topic}'. It must be a private channel.`}subscribe(e,r=this.timeout){var s,n,a;if(this.socket.isConnected()||this.socket.connect(),this.state==je.closed){const{config:{broadcast:o,presence:l,private:c}}=this.params,d=(n=(s=this.bindings.postgres_changes)===null||s===void 0?void 0:s.map(f=>f.filter))!==null&&n!==void 0?n:[],u=!!this.bindings[xn.PRESENCE]&&this.bindings[xn.PRESENCE].length>0||((a=this.params.config.presence)===null||a===void 0?void 0:a.enabled)===!0,p={},h={broadcast:o,presence:Object.assign(Object.assign({},l),{enabled:u}),postgres_changes:d,private:c};this.socket.accessTokenValue&&(p.access_token=this.socket.accessTokenValue),this._onError(f=>e==null?void 0:e(Ot.CHANNEL_ERROR,f)),this._onClose(()=>e==null?void 0:e(Ot.CLOSED)),this.updateJoinPayload(Object.assign({config:h},p)),this.joinedOnce=!0,this._rejoin(r),this.joinPush.receive("ok",async({postgres_changes:f})=>{var x;if(this.socket._isManualToken()||this.socket.setAuth(),f===void 0){e==null||e(Ot.SUBSCRIBED);return}else{const m=this.bindings.postgres_changes,y=(x=m==null?void 0:m.length)!==null&&x!==void 0?x:0,b=[];for(let w=0;w<y;w++){const _=m[w],{filter:{event:j,schema:k,table:E,filter:T}}=_,A=f&&f[w];if(A&&A.event===j&&fs.isFilterValueEqual(A.schema,k)&&fs.isFilterValueEqual(A.table,E)&&fs.isFilterValueEqual(A.filter,T))b.push(Object.assign(Object.assign({},_),{id:A.id}));else{this.unsubscribe(),this.state=je.errored,e==null||e(Ot.CHANNEL_ERROR,new Error("mismatch between server and client bindings for postgres changes"));return}}this.bindings.postgres_changes=b,e&&e(Ot.SUBSCRIBED);return}}).receive("error",f=>{this.state=je.errored,e==null||e(Ot.CHANNEL_ERROR,new Error(JSON.stringify(Object.values(f).join(", ")||"error")))}).receive("timeout",()=>{e==null||e(Ot.TIMED_OUT)})}return this}presenceState(){return this.presence.state}async track(e,r={}){return await this.send({type:"presence",event:"track",payload:e},r.timeout||this.timeout)}async untrack(e={}){return await this.send({type:"presence",event:"untrack"},e)}on(e,r,s){return this.state===je.joined&&e===xn.PRESENCE&&(this.socket.log("channel",`resubscribe to ${this.topic} due to change in presence callbacks on joined channel`),this.unsubscribe().then(async()=>await this.subscribe())),this._on(e,r,s)}async httpSend(e,r,s={}){var n;if(r==null)return Promise.reject("Payload is required for httpSend()");const a={apikey:this.socket.apiKey?this.socket.apiKey:"","Content-Type":"application/json"};this.socket.accessTokenValue&&(a.Authorization=`Bearer ${this.socket.accessTokenValue}`);const o={method:"POST",headers:a,body:JSON.stringify({messages:[{topic:this.subTopic,event:e,payload:r,private:this.private}]})},l=await this._fetchWithTimeout(this.broadcastEndpointURL,o,(n=s.timeout)!==null&&n!==void 0?n:this.timeout);if(l.status===202)return{success:!0};let c=l.statusText;
729try{const d=await l.json();c=d.error||d.message||c}catch{}return Promise.reject(new Error(c))}async send(e,r={}){var s,n;if(!this._canPush()&&e.type==="broadcast"){console.warn("Realtime send() is automatically falling back to REST API. This behavior will be deprecated in the future. Please use httpSend() explicitly for REST delivery.");const{event:a,payload:o}=e,l={apikey:this.socket.apiKey?this.socket.apiKey:"","Content-Type":"application/json"};this.socket.accessTokenValue&&(l.Authorization=`Bearer ${this.socket.accessTokenValue}`);const c={method:"POST",headers:l,body:JSON.stringify({messages:[{topic:this.subTopic,event:a,payload:o,private:this.private}]})};try{const d=await this._fetchWithTimeout(this.broadcastEndpointURL,c,(s=r.timeout)!==null&&s!==void 0?s:this.timeout);return await((n=d.body)===null||n===void 0?void 0:n.cancel()),d.ok?"ok":"error"}catch(d){return d.name==="AbortError"?"timed out":"error"}}else return new Promise(a=>{var o,l,c;const d=this._push(e.type,e,r.timeout||this.timeout);e.type==="broadcast"&&!(!((c=(l=(o=this.params)===null||o===void 0?void 0:o.config)===null||l===void 0?void 0:l.broadcast)===null||c===void 0)&&c.ack)&&a("ok"),d.receive("ok",()=>a("ok")),d.receive("error",()=>a("error")),d.receive("timeout",()=>a("timed out"))})}updateJoinPayload(e){this.joinPush.updatePayload(e)}unsubscribe(e=this.timeout){this.state=je.leaving;const r=()=>{this.socket.log("channel",`leave ${this.topic}`),this._trigger(it.close,"leave",this._joinRef())};this.joinPush.destroy();let s=null;return new Promise(n=>{s=new Po(this,it.leave,{},e),s.receive("ok",()=>{r(),n("ok")}).receive("timeout",()=>{r(),n("timed out")}).receive("error",()=>{n("error")}),s.send(),this._canPush()||s.trigger("ok",{})}).finally(()=>{s==null||s.destroy()})}teardown(){this.pushBuffer.forEach(e=>e.destroy()),this.pushBuffer=[],this.rejoinTimer.reset(),this.joinPush.destroy(),this.state=je.closed,this.bindings={}}async _fetchWithTimeout(e,r,s){const n=new AbortController,a=setTimeout(()=>n.abort(),s),o=await this.socket.fetch(e,Object.assign(Object.assign({},r),{signal:n.signal}));return clearTimeout(a),o}_push(e,r,s=this.timeout){if(!this.joinedOnce)throw`tried to push '${e}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`;let n=new Po(this,e,r,s);return this._canPush()?n.send():this._addToPushBuffer(n),n}_addToPushBuffer(e){if(e.startTimeout(),this.pushBuffer.push(e),this.pushBuffer.length>VP){const r=this.pushBuffer.shift();r&&(r.destroy(),this.socket.log("channel",`discarded push due to buffer overflow: ${r.event}`,r.payload))}}_onMessage(e,r,s){return r}_isMember(e){return this.topic===e}_joinRef(){return this.joinPush.ref}_trigger(e,r,s){var n,a;const o=e.toLocaleLowerCase(),{close:l,error:c,leave:d,join:u}=it;if(s&&[l,c,d,u].indexOf(o)>=0&&s!==this._joinRef())return;let h=this._onMessage(o,r,s);if(r&&!h)throw"channel onMessage callbacks must return the payload, modified or unmodified";["insert","update","delete"].includes(o)?(n=this.bindings.postgres_changes)===null||n===void 0||n.filter(f=>{var x,m,y;return((x=f.filter)===null||x===void 0?void 0:x.event)==="*"||((y=(m=f.filter)===null||m===void 0?void 0:m.event)===null||y===void 0?void 0:y.toLocaleLowerCase())===o}).map(f=>f.callback(h,s)):(a=this.bindings[o])===null||a===void 0||a.filter(f=>{var x,m,y,b,w,_;if(["broadcast","presence","postgres_changes"].includes(o))if("id"in f){const j=f.id,k=(x=f.filter)===null||x===void 0?void 0:x.event;return j&&((m=r.ids)===null||m===void 0?void 0:m.includes(j))&&(k==="*"||(k==null?void 0:k.toLocaleLowerCase())===((y=r.data)===null||y===void 0?void 0:y.type.toLocaleLowerCase()))}else{const j=(w=(b=f==null?void 0:f.filter)===null||b===void 0?void 0:b.event)===null||w===void 0?void 0:w.toLocaleLowerCase();return j==="*"||j===((_=r==null?void 0:r.event)===null||_===void 0?void 0:_.toLocaleLowerCase())}else return f.type.toLocaleLowerCase()===o}).map(f=>{if(typeof h=="object"&&"ids"in h){const x=h.data,{schema:m,table:y,commit_timestamp:b,type:w,errors:_}=x;h=Object.assign(Object.assign({},{schema:m,table:y,commit_timestamp:b,eventType:w,new:{},old:{},errors:_}),this._getPayloadRecords(x))}f.callback(h,s)})}_isClosed(){return this.state===je.closed}_isJoined(){return this.state===je.joined}_isJoining(){return this.state===je.joining}_isLeaving(){return this.state===je.leaving}_replyEventName(e){return`chan_reply_${e}`}_on(e,r,s){const n=e.toLocaleLowerCase(),a={type:n,filter:r,callback:s};return this.bindings[n]?this.bindings[n].push(a):this.bindings[n]=[a],this}_off(e,r){const s=e.toLocaleLowerCase();return this.bindings[s]&&(this.bindings[s]=this.bindings[s].filter(n=>{var a;return!(((a=n.type)===null||a===void 0?void 0:a.toLocaleLowerCase())===s&&fs.isEqual(n.filter,r))})),this}static isEqual(e,r){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(const s in e)if(e[s]!==r[s])return!1;return!0}static isFilterValueEqual(e,r){return(e??void 0)===(r??void 0)}_rejoinUntilConnected(){this.rejoinTimer.scheduleTimeout(),this.socket.isConnected()&&this._rejoin()}_onClose(e){this._on(it.close,{},e)}_onError(e){this._on(it.error,{},r=>e(r))}_canPush(){return this.socket.isConnected()&&this._isJoined()}_rejoin(e=this.timeout){this._isLeaving()||(this.socket._leaveOpenTopic(this.topic),this.state=je.joining,this.joinPush.resend(e))}_getPayloadRecords(e){const r={new:{},old:{}};return(e.type==="INSERT"||e.type==="UPDATE")&&(r.new=yp(e.columns,e.record)),(e.type==="UPDATE"||e.type==="DELETE")&&(r.old=yp(e.columns,e.old_record)),r}}const Ro=()=>{},gi={HEARTBEAT_INTERVAL:25e3,RECONNECT_DELAY:10,HEARTBEAT_TIMEOUT_FALLBACK:100},qP=[1e3,2e3,5e3,1e4],GP=1e4,KP=`
730  addEventListener("message", (e) => {
731    if (e.data.event === "start") {
732      setInterval(() => postMessage({ event: "keepAlive" }), e.data.interval);
733    }
734  });`;class YP{constructor(e,r){var s;if(this.accessTokenValue=null,this.apiKey=null,this._manuallySetToken=!1,this.channels=new Array,this.endPoint="",this.httpEndpoint="",this.headers={},this.params={},this.timeout=Dl,this.transport=null,this.heartbeatIntervalMs=gi.HEARTBEAT_INTERVAL,this.heartbeatTimer=void 0,this.pendingHeartbeatRef=null,this.heartbeatCallback=Ro,this.ref=0,this.reconnectTimer=null,this.vsn=gp,this.logger=Ro,this.conn=null,this.sendBuffer=[],this.serializer
734=new $P,this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this.accessToken=null,this._connectionState="disconnected",this._wasManualDisconnect=!1,this._authPromise=null,this._resolveFetch=n=>n?(...a)=>n(...a):(...a)=>fetch(...a),!(!((s=r==null?void 0:r.params)===null||s===void 0)&&s.apikey))throw new Error("API key is required to connect to Realtime");this.apiKey=r.params.apikey,this.endPoint=`${e}/${Ll.websocket}`,this.httpEndpoint=Jy(e),this._initializeOptions(r),this._setupReconnectionTimer(),this.fetch=this._resolveFetch(r==null?void 0:r.fetch)}connect(){if(!(this.isConnecting()||this.isDisconnecting()||this.conn!==null&&this.isConnected())){if(this._setConnectionState("connecting"),this.accessToken&&!this._authPromise&&this._setAuthSafely("connect"),this.transport)this.conn=new this.transport(this.endpointURL());else try{this.conn=OP.createWebSocket(this.endpointURL())}catch(e){this._setConnectionState("disconnected");const r=e.message;throw r.includes("Node.js")?new Error(`${r}
735
736To use Realtime in Node.js, you need to provide a WebSocket implementation:
737
738Option 1: Use Node.js 22+ which has native WebSocket support
739Option 2: Install and provide the "ws" package:
740
741  npm install ws
742
743  import ws from "ws"
744  const client = new RealtimeClient(url, {
745    ...options,
746    transport: ws
747  })`):new Error(`WebSocket not available: ${r}`)}this._setupConnectionHandlers()}}endpointURL(){return this._appendParams(this.endPoint,Object.assign({},this.params,{vsn:this.vsn}))}disconnect(e,r){if(!this.isDisconnecting())if(this._setConnectionState("disconnecting",!0),this.conn){const s=setTimeout(()=>{this._setConnectionState("disconnected")},100);this.conn.onclose=()=>{clearTimeout(s),this._setConnectionState("disconnected")},typeof this.conn.close=="function"&&(e?this.conn.close(e,r??""):this.conn.close()),this._teardownConnection()}else this._setConnectionState("disconnected")}getChannels(){return this.channels}async removeChannel(e){const r=await e.unsubscribe();return this.channels.length===0&&this.disconnect(),r}async removeAllChannels(){const e=await Promise.all(this.channels.map(r=>r.unsubscribe()));return this.channels=[],this.disconnect(),e}log(e,r,s){this.logger(e,r,s)}connectionState(){switch(this.conn&&this.conn.readyState){case Jt.connecting:return Tr.Connecting;case Jt.open:return Tr.Open;case Jt.closing:return Tr.Closing;default:return Tr.Closed}}isConnected(){return this.connectionState()===Tr.Open}isConnecting(){return this._connectionState==="connecting"}isDisconnecting(){return this._connectionState==="disconnecting"}channel(e,r={config:{}}){const s=`realtime:${e}`,n=this.getChannels().find(a=>a.topic===s);if(n)return n;{const a=new fs(`realtime:${e}`,r,this);return this.channels.push(a),a}}push(e){const{topic:r,event:s,payload:n,ref:a}=e,o=()=>{this.encode(e,l=>{var c;(c=this.conn)===null||c===void 0||c.send(l)})};this.log("push",`${r} ${s} (${a})`,n),this.isConnected()?o():this.sendBuffer.push(o)}async setAuth(e=null){this._authPromise=this._performAuth(e);try{await this._authPromise}finally{this._authPromise=null}}_isManualToken(){return this._manuallySetToken}async sendHeartbeat(){var e;if(!this.isConnected()){try{this.heartbeatCallback("disconnected")}catch(r){this.log("error","error in heartbeat callback",r)}return}if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null,this.log("transport","heartbeat timeout. Attempting to re-establish connection");try{this.heartbeatCallback("timeout")}catch(r){this.log("error","error in heartbeat callback",r)}this._wasManualDisconnect=!1,(e=this.conn)===null||e===void 0||e.close(MP,"heartbeat timeout"),setTimeout(()=>{var r;this.isConnected()||(r=this.reconnectTimer)===null||r===void 0||r.sc
747heduleTimeout()},gi.HEARTBEAT_TIMEOUT_FALLBACK);return}this.pendingHeartbeatRef=this._makeRef(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef});try{this.heartbeatCallback("sent")}catch(r){this.log("error","error in heartbeat callback",r)}this._setAuthSafely("heartbeat")}onHeartbeat(e){this.heartbeatCallback=e}flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(e=>e()),this.sendBuffer=[])}_makeRef(){let e=this.ref+1;return e===this.ref?this.ref=0:this.ref=e,this.ref.toString()}_leaveOpenTopic(e){let r=this.channels.find(s=>s.topic===e&&(s._isJoined()||s._isJoining()));r&&(this.log("transport",`leaving duplicate topic "${e}"`),r.unsubscribe())}_remove(e){this.channels=this.channels.filter(r=>r.topic!==e.topic)}_onConnMessage(e){this.decode(e.data,r=>{if(r.topic==="phoenix"&&r.event==="phx_reply")try{this.heartbeatCallback(r.payload.status==="ok"?"ok":"error")}catch(d){this.log("error","error in heartbeat callback",d)}r.ref&&r.ref===this.pendingHeartbeatRef&&(this.pendingHeartbeatRef=null);const{topic:s,event:n,payload:a,ref:o}=r,l=o?`(${o})`:"",c=a.status||"";this.log("receive",`${c} ${s} ${n} ${l}`.trim(),a),this.channels.filter(d=>d._isMember(s)).forEach(d=>d._trigger(n,a,o)),this._triggerStateCallbacks("message",r)})}_clearTimer(e){var r;e==="heartbeat"&&this.heartbeatTimer?(clearInterval(this.heartbeatTimer),this.heartbeatTimer=void 0):e==="reconnect"&&((r=this.reconnectTimer)===null||r===void 0||r.reset())}_clearAllTimers(){this._clearTimer("heartbeat"),this._clearTimer("reconnect")}_setupConnectionHandlers(){this.conn&&("binaryType"in this.conn&&(this.conn.binaryType="arraybuffer"),this.conn.onopen=()=>this._onConnOpen(),this.conn.onerror=e=>this._onConnError(e),this.conn.onmessage=e=>this._onConnMessage(e),this.conn.onclose=e=>this._onConnClose(e),this.conn.readyState===Jt.open&&this._onConnOpen())}_teardownConnection(){if(this.conn){if(this.conn.readyState===Jt.open||this.conn.readyState===Jt.connecting)try{this.conn.close()}catch(e){this.log("error","Error closing connection",e)}this.conn.onopen=null,this.conn.onerror=null,this.conn.onmessage=null,this.conn.onclose=null,this.conn=null}this._clearAllTimers(),this._terminateWorker(),this.channels.forEach(e=>e.teardown())}_onConnOpen(){this._setConnectionState("connected"),this.log("transport",`connected to ${this.endpointURL()}`),(this._authPromise||(this.accessToken&&!this.accessTokenValue?this.setAuth():Promise.resolve())).then(()=>{this.flushSendBuffer()}).catch(r=>{this.log("error","error waiting for auth on connect",r),this.flushSendBuffer()}),this._clearTimer("reconnect"),this.worker?this.workerRef||this._startWorkerHeartbeat():this._startHeartbeat(),this._triggerStateCallbacks("open")}_startHeartbeat(){this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.heartbeatTimer=setInterval(()=>this.sendHeartbeat(),this.heartbeatIntervalMs)}_startWorkerHeartbeat(){this.workerUrl?this.log("worker",`starting worker for from ${this.workerUrl}`):this.log("worker","starting default worker");const e=this._workerObjectUrl(this.workerUrl);this.workerRef=new Worker(e),this.workerRef.onerror=r=>{this.log("worker","worker error",r.message),this._terminateWorker()},this.workerRef.onmessage=r=>{r.data.event==="keepAlive"&&this.sendHeartbeat()},this.workerRef.postMessage({event:"start",interval:this.heartbeatIntervalMs})}_terminateWorker(){this.workerRef&&(this.log("worker","terminating worker"),this.workerRef.terminate(),this.workerRef=void 0)}_onConnClose(e){var r;this._setConnectionState("disconnected"),this.log("transport","close",e),this._triggerChanError(),this._clearTimer("heartbeat"),this._wasManualDisconnect||(r=this.reconnectTimer)===null||r===void 0||r.sc
747heduleTimeout(),this._triggerStateCallbacks("close",e)}_onConnError(e){this._setConnectionState("disconnected"),this.log("transport",`${e}`),this._triggerChanError(),this._triggerStateCallbacks("error",e)}_triggerChanError(){this.channels.forEach(e=>e._trigger(it.error))}_appendParams(e,r){if(Object.keys(r).length===0)return e;const s=e.match(/\?/)?"&":"?",n=new URLSearchParams(r);return`${e}${s}${n}`}_workerObjectUrl(e){let r;if(e)r=e;else{const s=new Blob([KP],{type:"application/javascript"});r=URL.createObjectURL(s)}return r}_setConnectionState(e,r=!1){this._connectionState=e,e==="connecting"?this._wasManualDisconnect=!1:e==="disconnecting"&&(this._wasManualDisconnect=r)}async _performAuth(e=null){let r,s=!1;if(e)r=e,s=!0;else if(this.accessToken)try{r=await this.accessToken()}catch(n){this.log("error","Error fetching access token from callback",n),r=this.accessTokenValue}else r=this.accessTokenValue;s?this._manuallySetToken=!0:this.accessToken&&(this._manuallySetToken=!1),this.accessTokenValue!=r&&(this.accessTokenValue=r,this.channels.forEach(n=>{const a={access_token:r,version:DP};r&&n.updateJoinPayload(a),n.joinedOnce&&n._isJoined()&&n._push(it.access_token,{access_token:r})}))}async _waitForAuthIfNeeded(){this._authPromise&&await this._authPromise}_setAuthSafely(e="general"){this._isManualToken()||this.setAuth().catch(r=>{this.log("error",`Error setting auth in ${e}`,r)})}_triggerStateCallbacks(e,r){try{this.stateChangeCallbacks[e].forEach(s=>{try{s(r)}catch(n){this.log("error",`error in ${e} callback`,n)}})}catch(s){this.log("error",`error triggering ${e} callbacks`,s)}}_setupReconnectionTimer(){this.reconnectTimer=new Ky(async()=>{setTimeout(async()=>{await this._waitForAuthIfNeeded(),this.isConnected()||this.connect()},gi.RECONNECT_DELAY)},this.reconnectAfterMs)}_initializeOptions(e){var r,s,n,a,o,l,c,d,u,p,h,f;switch(this.transport=(r=e==null?void 0:e.transport)!==null&&r!==void 0?r:null,this.timeout=(s=e==null?void 0:e.timeout)!==null&&s!==void 0?s:Dl,this.heartbeatIntervalMs=(n=e==null?void 0:e.heartbeatIntervalMs)!==null&&n!==void 0?n:gi.HEARTBEAT_INTERVAL,this.worker=(a=e==null?void 0:e.worker)!==null&&a!==void 0?a:!1,this.accessToken=(o=e==null?void 0:e.accessToken)!==null&&o!==void 0?o:null,this.heartbeatCallback=(l=e==null?void 0:e.heartbeatCallback)!==null&&l!==void 0?l:Ro,this.vsn=(c=e==null?void 0:e.vsn)!==null&&c!==void 0?c:gp,e!=null&&e.params&&(this.params=e.params),e!=null&&e.logger&&(this.logger=e.logger),(e!=null&&e.logLevel||e!=null&&e.log_level)&&(this.logLevel=e.logLevel||e.log_level,this.params=Object.assign(Object.assign({},this.params),{log_level:this.logLevel})),this.reconnectAfterMs=(d=e==null?void 0:e.reconnectAfterMs)!==null&&d!==void 0?d:x=>qP[x-1]||GP,this.vsn){case Gy:this.encode=(u=e==null?void 0:e.encode)!==null&&u!==void 0?u:(x,m)=>m(JSON.stringify(x)),this.decode=(p=e==null?void 0:e.decode)!==null&&p!==void 0?p:(x,m)=>m(JSON.parse(x));break;case LP:this.encode=(h=e==null?void 0:e.encode)!==null&&h!==void 0?h:this.serializer.encode.bind(this.serializer),this.decode=(f=e==null?void 0:e.decode)!==null&&f!==void 0?f:this.serializer.decode.bind(this.serializer);break;default:throw new Error(`Unsupported serializer version: ${this.vsn}`)}if(this.worker){if(typeof window<"u"&&!window.Worker)throw new Error("Web Worker is not supported");this.workerUrl=e==null?void 0:e.workerUrl}}}var Cn=class extends Error{constructor(t,e){var r;super(t),this.name="IcebergError",this.status=e.status,this.icebergType=e.icebergType,this.icebergCode=e.icebergCode,this.details=e.details,this.isCommitStateUnknown=e.icebergType==="CommitStateUnknownException"||[500,502,504].includes(e.status)&&((r=e.icebergType)==null?void 0:r.includes("CommitState"))===!0}isNotFound(){return this.status===404}isConflict(){return this.status===409}isAuthenticationTimeout(){return this.status===419}};function JP(t,e,r){const s=new URL(e,t);if(r)for(const[n,a]of Object.entries(r))a!==void 0&&s.searchParams.set(n,a);return s.toString()}async function XP(t){return!t||t.type==="none"?{}:t.type==="bearer"?{Authorization:`Bearer ${t.token}`}:t.type==="header"?{[t.name]:t.value}:t.type==="custom"?await t.getHeaders():{}}function QP(t){const e=t.fetchImpl??globalThis.fetch;return{async request({method:r,path:s,query:n,body:a,headers:o}){const l=JP(t.baseUrl,s,n),c=await XP(t.auth),d=await e(l,{method:r,headers:{...a?{"Content-Type":"application/json"}:{},...c,...o},body:a?JSON.stringify(a):void 0}),u=await d.text(),p=(d.headers.get("content-type")||"").includes("application/json"),h=p&&u?JSON.parse(u):u;if(!d.ok){const f=p?h:void 0,x=f==null?void 0:f.error;throw new Cn((x==null?void 0:x.message)??`Request failed with status ${d.status}`,{status:d.status,icebergType:x==null?void 0:x.type,icebergCode:x==null?void 0:x.code,details:f})}return{status:d.status,headers:d.headers,data:h}}}}function yi(t){return t.join("�")}var ZP=class{constructor(t,e=""){this.client=t,this.prefix=e}async listNamespaces(t){const e=t?{parent:yi(t.namespace)}:void 0;return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces`,query:e})).data.namespaces.map(s=>({namespace:s}))}async createNamespace(t,e){const r={namespace:t.namespace,properties:e==null?void 0:e.properties};return(await this.client.request({method:"POST",path:`${this.prefix}/namespaces`,body:r})).data}async dropNamespace(t){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${yi(t.namespace)}`})}async loadNamespaceMetadata(t){return{properties:(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${yi(t.namespace)}`})).data.properties}}async namespaceExists(t){try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${yi(t.namespace)}`}),!0}catch(e){if(e instanceof Cn&&e.status===404)return!1;throw e}}async createNamespaceIfNotExists(t,e){try{return await this.createNamespace(t,e)}catch(r){if(r instanceof Cn&&r.status===409)return;throw r}}};function Qr(t){return t.join("�")}var eR=class{constructor(t,e="",r){this.client=t,this.prefix=e,this.accessDelegation=r}async listTables(t){return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${Qr(t.namespace)}/tables`})).data.identifiers}async createTable(t,e){const r={};return this.accessDelegation&&(r["X-Iceberg-Access-Delegation"]=this.accessDelegation),(await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${Qr(t.namespace)}/tables`,body:e,headers:r})).data.metadata}async updateTable(t,e){const r=await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${Qr(t.namespace)}
747/tables/${t.name}`,body:e});return{"metadata-location":r.data["metadata-location"],metadata:r.data.metadata}}async dropTable(t,e){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${Qr(t.namespace)}/tables/${t.name}`,query:{purgeRequested:String((e==null?void 0:e.purge)??!1)}})}async loadTable(t){const e={};return this.accessDelegation&&(e["X-Iceberg-Access-Delegation"]=this.accessDelegation),(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${Qr(t.namespace)}/tables/${t.name}`,headers:e})).data.metadata}async tableExists(t){const e={};this.accessDelegation&&(e["X-Iceberg-Access-Delegation"]=this.accessDelegation);try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${Qr(t.namespace)}/tables/${t.name}`,headers:e}),!0}catch(r){if(r instanceof Cn&&r.status===404)return!1;throw r}}async createTableIfNotExists(t,e){try{return await this.createTable(t,e)}catch(r){if(r instanceof Cn&&r.status===409)return await this.loadTable({namespace:t.namespace,name:e.name});throw r}}},tR=class{constructor(t){var s;let e="v1";t.catalogName&&(e+=`/${t.catalogName}`);const r=t.baseUrl.endsWith("/")?t.baseUrl:`${t.baseUrl}/`;this.client=QP({baseUrl:r,auth:t.auth,fetchImpl:t.fetch}),this.accessDelegation=(s=t.accessDelegation)==null?void 0:s.join(","),this.namespaceOps=new ZP(this.client,e),this.tableOps=new eR(this.client,e,this.accessDelegation)}async listNamespaces(t){return this.namespaceOps.listNamespaces(t)}async createNamespace(t,e){return this.namespaceOps.createNamespace(t,e)}async dropNamespace(t){await this.namespaceOps.dropNamespace(t)}async loadNamespaceMetadata(t){return this.namespaceOps.loadNamespaceMetadata(t)}async listTables(t){return this.tableOps.listTables(t)}async createTable(t,e){return this.tableOps.createTable(t,e)}async updateTable(t,e){return this.tableOps.updateTable(t,e)}async dropTable(t,e){await this.tableOps.dropTable(t,e)}async loadTable(t){return this.tableOps.loadTable(t)}async namespaceExists(t){return this.namespaceOps.namespaceExists(t)}async tableExists(t){return this.tableOps.tableExists(t)}async createNamespaceIfNotExists(t,e){return this.namespaceOps.createNamespaceIfNotExists(t,e)}async createTableIfNotExists(t,e){return this.tableOps.createTableIfNotExists(t,e)}},Ca=class extends Error{constructor(t){super(t),this.__isStorageError=!0,this.name="StorageError"}};function ue(t){return typeof t=="object"&&t!==null&&"__isStorageError"in t}var rR=class extends Ca{constructor(t,e,r){super(t),this.name="StorageApiError",this.status=e,this.statusCode=r}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},Vl=class extends Ca{constructor(t,e){super(t),this.name="StorageUnknownError",this.originalError=e}};const hd=t=>t?(...e)=>t(...e):(...e)=>fetch(...e),sR=()=>Response,$l=t=>{if(Array.isArray(t))return t.map(r=>$l(r));if(typeof t=="function"||t!==Object(t))return t;const e={};return Object.entries(t).forEach(([r,s])=>{const n=r.replace(/([-_][a-z])/gi,a=>a.toUpperCase().replace(/[-_]/g,""));e[n]=$l(s)}),e},nR=t=>{if(typeof t!="object"||t===null)return!1;const e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},iR=t=>!t||typeof t!="string"||t.length===0||t.length>100||t.trim()!==t||t.includes("/")||t.includes("\\")?!1:/^[\w!.\*'() &$@=;:+,?-]+$/.test(t);function Sn(t){"@babel/helpers - typeof";return Sn=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Sn(t)}function aR(t,e){if(Sn(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var s=r.call(t,e||"default");if(Sn(s)!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function oR(t){var e=aR(t,"string");return Sn(e)=="symbol"?e:e+""}function lR(t,e,r){return(e=oR(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function bp(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,s)}return r}function W(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};
747e%2?bp(Object(r),!0).forEach(function(s){lR(t,s,r[s])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):bp(Object(r)).forEach(function(s){Object.defineProperty(t,s,Object.getOwnPropertyDescriptor(r,s))})}return t}const Oo=t=>{var e;return t.msg||t.message||t.error_description||(typeof t.error=="string"?t.error:(e=t.error)===null||e===void 0?void 0:e.message)||JSON.stringify(t)},cR=async(t,e,r)=>{t instanceof await sR()&&!(r!=null&&r.noResolveJson)?t.json().then(s=>{const n=t.status||500,a=(s==null?void 0:s.statusCode)||n+"";e(new rR(Oo(s),n,a))}).catch(s=>{e(new Vl(Oo(s),s))}):e(new Vl(Oo(t),t))},dR=(t,e,r,s)=>{const n={method:t,headers:(e==null?void 0:e.headers)||{}};return t==="GET"||!s?n:(nR(s)?(n.headers=W({"Content-Type":"application/json"},e==null?void 0:e.headers),n.body=JSON.stringify(s)):n.body=s,e!=null&&e.duplex&&(n.duplex=e.duplex),W(W({},n),r))};async function Yn(t,e,r,s,n,a){return new Promise((o,l)=>{t(r,dR(e,s,n,a)).then(c=>{if(!c.ok)throw c;return s!=null&&s.noResolveJson?c:c.json()}).then(c=>o(c)).catch(c=>cR(c,l,s))})}async function Pn(t,e,r,s){return Yn(t,"GET",e,r,s)}async function st(t,e,r,s,n){return Yn(t,"POST",e,s,n,r)}async function Fl(t,e,r,s,n){return Yn(t,"PUT",e,s,n,r)}async function uR(t,e,r,s){return Yn(t,"HEAD",e,W(W({},r),{},{noResolveJson:!0}),s)}async function pd(t,e,r,s,n){return Yn(t,"DELETE",e,s,n,r)}var hR=class{constructor(t,e){this.downloadFn=t,this.shouldThrowOnError=e}then(t,e){return this.execute().then(t,e)}async execute(){var t=this;try{return{data:(await t.downloadFn()).body,error:null}}catch(e){if(t.shouldThrowOnError)throw e;if(ue(e))return{data:null,error:e};throw e}}};let Xy;Xy=Symbol.toStringTag;var pR=class{constructor(t,e){this.downloadFn=t,this.shouldThrowOnError=e,this[Xy]="BlobDownloadBuilder",this.promise=null}asStream(){return new hR(this.downloadFn,this.shouldThrowOnError)}then(t,e){return this.getPromise().then(t,e)}catch(t){return this.getPromise().catch(t)}finally(t){return this.getPromise().finally(t)}getPromise(){return this.promise||(this.promise=this.execute()),this.promise}async execute(){var t=this;try{return{data:await(await t.downloadFn()).blob(),error:null}}catch(e){if(t.shouldThrowOnError)throw e;if(ue(e))return{data:null,error:e};throw e}}};const fR={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},wp={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1};var mR=class{constructor(t,e={},r,s){this.shouldThrowOnError=!1,this.url=t,this.headers=e,this.bucketId=r,this.fetch=hd(s)}throwOnError(){return this.shouldThrowOnError=!0,this}async uploadOrUpdate(t,e,r,s){var n=this;try{let a;const o=W(W({},wp),s);let l=W(W({},n.headers),t==="POST"&&{"x-upsert":String(o.upsert)});const c=o.metadata;typeof Blob<"u"&&r instanceof Blob?(a=new FormData,a.append("cacheControl",o.cacheControl),c&&a.append("metadata",n.encodeMetadata(c)),a.append("",r)):typeof FormData<"u"&&r instanceof FormData?(a=r,a.has("cacheControl")||a.append("cacheControl",o.cacheControl),c&&!a.has("metadata")&&a.append("metadata",n.encodeMetadata(c))):(a=r,l["cache-control"]=`max-age=${o.cacheControl}`,l["content-type"]=o.contentType,c&&(l["x-metadata"]=n.toBase64(n.encodeMetadata(c))),(typeof ReadableStream<"u"&&a instanceof ReadableStream||a&&typeof a=="object"&&"pipe"in a&&typeof a.pipe=="function")&&!o.duplex&&(o.duplex="half")),s!=null&&s.headers&&(l=W(W({},l),s.headers));const d=n._removeEmptyFolders(e),u=n._getFinalPath(d),p=await(t=="PUT"?Fl:st)(n.fetch,`${n.url}/object/${u}`,a,W({headers:l},o!=null&&o.duplex?{duplex:o.duplex}:{}));return{data:{path:d,id:p.Id,fullPath:p.Key},error:null}}catch(a){if(n.shouldThrowOnError)throw a;if(ue(a))return{data:null,error:a};throw a}}async upload(t,e,r){return this.uploadOrUpdate("POST",t,e,r)}async uploadToSignedUrl(t,e,r,s){var n=this;const a=n._removeEmptyFolders(t),o=n._getFinalPath(a),l=new URL(n.url+`/object/upload/sign/${o}`);l.searchParams.set("token",e);try{let c;const d=W({upsert:wp.upsert},s),u=W(W({},n.headers),{"x-upsert":String(d.upsert)});return typeof Blob<"u"&&r instanceof Blob?(c=new FormData,c.append("cacheControl",d.cacheControl),c.append("",r)):typeof FormData<"u"&&r instanceof FormData?(c=r,c.append("cacheControl",d.cacheControl)):(c=r,u["cache-control"]=`max-age=${d.cacheControl}`,u["content-type"]=d.contentType),{data:{path:a,fullPath:(await Fl(n.fetch,l.toString(),c,{headers:u})).Key},error:null}}catch(c){if(n.shouldThrowOnError)throw c;if(ue(c))return{data:null,error:c};throw c}}async createSignedUploadUrl(t,e){var r=this;try{let s=r._getFinalPath(t);const n=W({},r.headers);e!=null&&e.upsert&&(n["x-upsert"]="true");const a=await st(r.fetch,`${r.url}/object/upload/sign/${s}`,{},{headers:n}),o=new URL(r.url+a.url),l=o.searchParams.get("token");if(!l)throw new Ca("No token returned by API");return{data:{signedUrl:o.toString(),path:t,token:l},error:null}}catch(s){if(r.shouldThrowOnError)throw s;if(ue(s))return{data:null,error:s};throw s}}async update(t,e,r){return this.uploadOrUpdate("PUT",t,e,r)}
747async move(t,e,r){var s=this;try{return{data:await st(s.fetch,`${s.url}/object/move`,{bucketId:s.bucketId,sourceKey:t,destinationKey:e,destinationBucket:r==null?void 0:r.destinationBucket},{headers:s.headers}),error:null}}catch(n){if(s.shouldThrowOnError)throw n;if(ue(n))return{data:null,error:n};throw n}}async copy(t,e,r){var s=this;try{return{data:{path:(await st(s.fetch,`${s.url}/object/copy`,{bucketId:s.bucketId,sourceKey:t,destinationKey:e,destinationBucket:r==null?void 0:r.destinationBucket},{headers:s.headers})).Key},error:null}}catch(n){if(s.shouldThrowOnError)throw n;if(ue(n))return{data:null,error:n};throw n}}async createSignedUrl(t,e,r){var s=this;try{let n=s._getFinalPath(t),a=await st(s.fetch,`${s.url}/object/sign/${n}`,W({expiresIn:e},r!=null&&r.transform?{transform:r.transform}:{}),{headers:s.headers});const o=r!=null&&r.download?`&download=${r.download===!0?"":r.download}`:"";return a={signedUrl:encodeURI(`${s.url}${a.signedURL}${o}`)},{data:a,error:null}}catch(n){if(s.shouldThrowOnError)throw n;if(ue(n))return{data:null,error:n};throw n}}async createSignedUrls(t,e,r){var s=this;try{const n=await st(s.fetch,`${s.url}/object/sign/${s.bucketId}`,{expiresIn:e,paths:t},{headers:s.headers}),a=r!=null&&r.download?`&download=${r.download===!0?"":r.download}`:"";return{data:n.map(o=>W(W({},o),{},{signedUrl:o.signedURL?encodeURI(`${s.url}${o.signedURL}${a}`):null})),error:null}}catch(n){if(s.shouldThrowOnError)throw n;if(ue(n))return{data:null,error:n};throw n}}download(t,e){const r=typeof(e==null?void 0:e.transform)<"u"?"render/image/authenticated":"object",s=this.transformOptsToQueryString((e==null?void 0:e.transform)||{}),n=s?`?${s}`:"",a=this._getFinalPath(t),o=()=>Pn(this.fetch,`${this.url}/${r}/${a}${n}`,{headers:this.headers,noResolveJson:!0});return new pR(o,this.shouldThrowOnError)}async info(t){var e=this;const r=e._getFinalPath(t);try{return{data:$l(await Pn(e.fetch,`${e.url}/object/info/${r}`,{headers:e.headers})),error:null}}catch(s){if(e.shouldThrowOnError)throw s;if(ue(s))return{data:null,error:s};throw s}}async exists(t){var e=this;const r=e._getFinalPath(t);try{return await uR(e.fetch,`${e.url}/object/${r}`,{headers:e.headers}),{data:!0,error:null}}catch(s){if(e.shouldThrowOnError)throw s;if(ue(s)&&s instanceof Vl){const n=s.originalError;if([400,404].includes(n==null?void 0:n.status))return{data:!1,error:s}}throw s}}getPublicUrl(t,e){const r=this._getFinalPath(t),s=[],n=e!=null&&e.download?`download=${e.download===!0?"":e.download}`:"";n!==""&&s.push(n);const a=typeof(e==null?void 0:e.transform)<"u"?"render/image":"object",o=this.transformOptsToQueryString((e==null?void 0:e.transform)||{});o!==""&&s.push(o);let l=s.join("&");return l!==""&&(l=`?${l}`),{data:{publicUrl:encodeURI(`${this.url}/${a}/public/${r}${l}`)}}}async remove(t){var e=this;try{return{data:await pd(e.fetch,`${e.url}/object/${e.bucketId}`,{prefixes:t},{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}async list(t,e,r){var s=this;try{const n=W(W(W({},fR),e),{},{prefix:t||""});return{data:await st(s.fetch,`${s.url}/object/list/${s.bucketId}`,n,{headers:s.headers},r),error:null}}catch(n){if(s.shouldThrowOnError)throw n;if(ue(n))return{data:null,error:n};throw n}}async listV2(t,e){var r=this;try{const s=W({},t);return{data:await st(r.fetch,`${r.url}/object/list-v2/${r.bucketId}`,s,{headers:r.headers},e),error:null}}catch(s){if(r.shouldThrowOnError)throw s;if(ue(s))return{data:null,error:s};throw s}}encodeMetadata(t){return JSON.stringify(t)}toBase64(t){return typeof Buffer<"u"?Buffer.from(t).toString("base64"):btoa(t)}_getFinalPath(t){return`${this.bucketId}/${t.replace(/^\/+/,"")}`}_removeEmptyFolders(t){return t.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(t){const e=[];return t.width&&e.push(`width=${t.width}`),t.height&&e.push(`height=${t.height}`),t.resize&&e.push(`resize=${t.resize}`),t.format&&e.push(`format=${t.format}`),t.quality&&e.push(`quality=${t.quality}`),e.join("&")}};const Qy="2.89.0",Zy={"X-Client-Info":`storage-js/${Qy}`};var gR=class{constructor(t,e={},r,s){this.shouldThrowOnError=!1;const n=new URL(t);s!=null&&s.useNewHostname&&/supabase\.(co|in|red)$/.test(n.hostname)&&!n.hostname.includes("storage.supabase.")&&(n.hostname=n.hostname.replace("supabase.","storage.supabase.")),this.url=n.href.replace(/\/$/,""),this.headers=W(W({},Zy),e),this.fetch=hd(r)}throwOnError(){return this.shouldThrowOnError=!0,this}async listBuckets(t){var e=this;try{const r=e.listBucketOptionsToQueryString(t);return{data:await Pn(e.fetch,`${e.url}/bucket${r}`,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}async getBucket(t){var e=this;try{return{data:await Pn(e.fetch,`${e.url}/bucket/${t}`,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}async createBucket(t,e={public:!1}){var r=this;try{return{data:await st(r.fetch,`${r.url}/bucket`,{id:t,name:t,type:e.type,public:e.public,file_size_limit:e.fileSizeLimit,allowed_mime_types:e.allowedMimeTypes},{headers:r.headers}),error:null}}catch(s){if(r.shouldThrowOnError)throw s;if(ue(s))return{data:null,error:s};throw s}}async updateBucket(t,e){var r=this;try{return{data:await Fl(r.fetch,`${r.url}/bucket/${t}`,{id:t,name:t,public:e.public,file_size_limit:e.fileSizeLimit,allowed_mime_types:e.allowedMimeTypes},{headers:r.headers}),error:null}}catch(s){if(r.shouldThrowOnError)throw s;if(ue(s))return{data:null,error:s};throw s}}async emptyBucket(t){var e=this;try{return{data:await st(e.fetch,`${e.url}/bucket/${t}/empty`,{},{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}async deleteBucket(t){var e=this;try{return{data:await pd(e.fetch,`${e.url}/bucket/${t}`,{},{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}listBucketOptionsToQueryString(t){const e={};return t&&("limit"in t&&(e.limit=String(t.limit)),"offset"in t&&(e.offset=String(t.offset)),t.search&&(e.search=t.search),t.sortColumn&&(e.sortColumn=t.sortColumn),t.sortOrder&&(e.sortOrder=t.sortOrder)),Object.keys(e).length>0?"?"+new URLSearchParams(e).toString():""}},yR=class{constructor(t,e={},r){this.shouldThrowOnError=!1,this.url=t.replace(/\/$/,""),this.headers=W(W({},Zy),e),this.fetch=hd(r)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(t){var e=this;try{return{data:await st(e.fetch,`${e.url}/bucket`,{name:t},{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}async listBuckets(t){var e=this;
747try{const r=new URLSearchParams;(t==null?void 0:t.limit)!==void 0&&r.set("limit",t.limit.toString()),(t==null?void 0:t.offset)!==void 0&&r.set("offset",t.offset.toString()),t!=null&&t.sortColumn&&r.set("sortColumn",t.sortColumn),t!=null&&t.sortOrder&&r.set("sortOrder",t.sortOrder),t!=null&&t.search&&r.set("search",t.search);const s=r.toString(),n=s?`${e.url}/bucket?${s}`:`${e.url}/bucket`;return{data:await Pn(e.fetch,n,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}async deleteBucket(t){var e=this;try{return{data:await pd(e.fetch,`${e.url}/bucket/${t}`,{},{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(ue(r))return{data:null,error:r};throw r}}from(t){var e=this;if(!iR(t))throw new Ca("Invalid bucket name: File, folder, and bucket names must follow AWS object key naming guidelines and should avoid the use of any other characters.");const r=new tR({baseUrl:this.url,catalogName:t,auth:{type:"custom",getHeaders:async()=>e.headers},fetch:this.fetch}),s=this.shouldThrowOnError;return new Proxy(r,{get(n,a){const o=n[a];return typeof o!="function"?o:async(...l)=>{try{return{data:await o.apply(n,l),error:null}}catch(c){if(s)throw c;return{data:null,error:c}}}}})}};const fd={"X-Client-Info":`storage-js/${Qy}`,"Content-Type":"application/json"};var ex=class extends Error{constructor(t){super(t),this.__isStorageVectorsError=!0,this.name="StorageVectorsError"}};function Ue(t){return typeof t=="object"&&t!==null&&"__isStorageVectorsError"in t}var Io=class extends ex{constructor(t,e,r){super(t),this.name="StorageVectorsApiError",this.status=e,this.statusCode=r}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},xR=class extends ex{constructor(t,e){super(t),this.name="StorageVectorsUnknownError",this.originalError=e}};const md=t=>t?(...e)=>t(...e):(...e)=>fetch(...e),vR=t=>{if(typeof t!="object"||t===null)return!1;const e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},_p=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),bR=async(t,e,r)=>{if(t&&typeof t=="object"&&"status"in t&&"ok"in t&&typeof t.status=="number"&&!(r!=null&&r.noResolveJson)){const s=t.status||500,n=t;if(typeof n.json=="function")n.json().then(a=>{const o=(a==null?void 0:a.statusCode)||(a==null?void 0:a.code)||s+"";e(new Io(_p(a),s,o))}).catch(()=>{const a=s+"";e(new Io(n.statusText||`HTTP ${s} error`,s,a))});else{const a=s+"";e(new Io(n.statusText||`HTTP ${s} error`,s,a))}}else e(new xR(_p(t),t))},wR=(t,e,r,s)=>{const n={method:t,headers:(e==null?void 0:e.headers)||{}};return s?(vR(s)?(n.headers=W({"Content-Type":"application/json"},e==null?void 0:e.headers),n.body=JSON.stringify(s)):n.body=s,W(W({},n),r)):n};async function _R(t,e,r,s,n,a){return new Promise((o,l)=>{t(r,wR(e,s,n,a)).then(c=>{if(!c.ok)throw c;if(s!=null&&s.noResolveJson)return c;const d=c.headers.get("content-type");return!d||!d.includes("application/json")?{}:c.json()}).then(c=>o(c)).catch(c=>bR(c,l,s))})}async function Be(t,e,r,s,n){return _R(t,"POST",e,s,n,r)}var jR=class{constructor(t,e={},r){this.shouldThrowOnError=!1,this.url=t.replace(/\/$/,""),this.headers=W(W({},fd),e),this.fetch=md(r)}throwOnError(){return this.shouldThrowOnError=!0,this}async createIndex(t){var e=this;try{return{data:await Be(e.fetch,`${e.url}/CreateIndex`,t,{headers:e.headers})||{},error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async getIndex(t,e){var r=this;try{return{data:await Be(r.fetch,`${r.url}/GetIndex`,{vectorBucketName:t,indexName:e},{headers:r.headers}),error:null}}catch(s){if(r.shouldThrowOnError)throw s;if(Ue(s))return{data:null,error:s};throw s}}async listIndexes(t){var e=this;try{return{data:await Be(e.fetch,`${e.url}/ListIndexes`,t,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async deleteIndex(t,e){var r=this;try{return{data:await Be(r.fetch,`${r.url}/DeleteIndex`,{vectorBucketName:t,indexName:e},{headers:r.headers})||{},error:null}}catch(s){if(r.shouldThrowOnError)throw s;if(Ue(s))return{data:null,error:s};throw s}}},kR=class{constructor(t,e={},r){this.shouldThrowOnError=!1,this.url=t.replace(/\/$/,""),this.headers=W(W({},fd),e),this.fetch=md(r)}throwOnError(){return this.shouldThrowOnError=!0,this}async putVectors(t){var e=this;try{if(t.vectors.length<1||t.vectors.length>500)throw new Error("Vector batch size must be between 1 and 500 items");return{data:await Be(e.fetch,`${e.url}/PutVectors`,t,{headers:e.headers})||{},error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async getVectors(t){var e=this;try{return{data:await Be(e.fetch,`${e.url}/GetVectors`,t,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async listVectors(t){var e=this;try{if(t.segmentCount!==void 0){if(t.segmentCount<1||t.segmentCount>16)throw new Error("segmentCount must be between 1 and 16");
747if(t.segmentIndex!==void 0&&(t.segmentIndex<0||t.segmentIndex>=t.segmentCount))throw new Error(`segmentIndex must be between 0 and ${t.segmentCount-1}`)}return{data:await Be(e.fetch,`${e.url}/ListVectors`,t,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async queryVectors(t){var e=this;try{return{data:await Be(e.fetch,`${e.url}/QueryVectors`,t,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async deleteVectors(t){var e=this;try{if(t.keys.length<1||t.keys.length>500)throw new Error("Keys batch size must be between 1 and 500 items");return{data:await Be(e.fetch,`${e.url}/DeleteVectors`,t,{headers:e.headers})||{},error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}},ER=class{constructor(t,e={},r){this.shouldThrowOnError=!1,this.url=t.replace(/\/$/,""),this.headers=W(W({},fd),e),this.fetch=md(r)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(t){var e=this;try{return{data:await Be(e.fetch,`${e.url}/CreateVectorBucket`,{vectorBucketName:t},{headers:e.headers})||{},error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async getBucket(t){var e=this;try{return{data:await Be(e.fetch,`${e.url}/GetVectorBucket`,{vectorBucketName:t},{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async listBuckets(t={}){var e=this;try{return{data:await Be(e.fetch,`${e.url}/ListVectorBuckets`,t,{headers:e.headers}),error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}async deleteBucket(t){var e=this;try{return{data:await Be(e.fetch,`${e.url}/DeleteVectorBucket`,{vectorBucketName:t},{headers:e.headers})||{},error:null}}catch(r){if(e.shouldThrowOnError)throw r;if(Ue(r))return{data:null,error:r};throw r}}},TR=class extends ER{constructor(t,e={}){super(t,e.headers||{},e.fetch)}from(t){return new AR(this.url,this.headers,t,this.fetch)}async createBucket(t){var e=()=>super.createBucket,r=this;return e().call(r,t)}async getBucket(t){var e=()=>super.getBucket,r=this;return e().call(r,t)}async listBuckets(t={}){var e=()=>super.listBuckets,r=this;return e().call(r,t)}async deleteBucket(t){var e=()=>super.deleteBucket,r=this;return e().call(r,t)}},AR=class extends jR{constructor(t,e,r,s){super(t,e,s),this.vectorBucketName=r}async createIndex(t){var e=()=>super.createIndex,r=this;return e().call(r,W(W({},t),{},{vectorBucketName:r.vectorBucketName}))}async listIndexes(t={}){var e=()=>super.listIndexes,r=this;return e().call(r,W(W({},t),{},{vectorBucketName:r.vectorBucketName}))}async getIndex(t){var e=()=>super.getIndex,r=this;return e().call(r,r.vectorBucketName,t)}async deleteIndex(t){var e=()=>super.deleteIndex,r=this;return e().call(r,r.vectorBucketName,t)}index(t){return new NR(this.url,this.headers,this.vectorBucketName,t,this.fetch)}},NR=class extends kR{constructor(t,e,r,s,n){super(t,e,n),this.vectorBucketName=r,this.indexName=s}async putVectors(t){var e=()=>super.putVectors,r=this;return e().call(r,W(W({},t),{},{vectorBucketName:r.vectorBucketName,indexName:r.indexName}))}async getVectors(t){var e=()=>super.getVectors,r=this;return e().call(r,W(W({},t),{},{vectorBucketName:r.vectorBucketName,indexName:r.indexName}))}async listVectors(t={}){var e=()=>super.listVectors,r=this;return e().call(r,W(W({},t),{},{vectorBucketName:r.vectorBucketName,indexName:r.indexName}))}async queryVectors(t){var e=()=>super.queryVectors,r=this;return e().call(r,W(W({},t),{},{vectorBucketName:r.vectorBucketName,indexName:r.indexName}))}async deleteVectors(t){var e=()=>super.deleteVectors,r=this;return e().call(r,W(W({},t),{},{vectorBucketName:r.vectorBucketName,indexName:r.indexName}))}},CR=class extends gR{constructor(t,e={},r,s){super(t,e,r,s)}from(t){return new mR(this.url,this.headers,t,this.fetch)}get vectors(){return new TR(this.url+"/vector",{headers:this.headers,fetch:this.fetch})}get analytics(){return new yR(this.url+"/iceberg",this.headers,this.fetch)}};const tx="2.89.0",as=30*1e3,Ul=3,Do=Ul*as,SR="http://localhost:9999",PR="supabase.auth.token",RR={"X-Client-Info":`gotrue-js/${tx}`},Bl="X-Supabase-Api-Version",rx={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}},OR=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}$|[a-z0-9_-]{2}$)$/i,IR=10*60*1e3;
747class Rn extends Error{constructor(e,r,s){super(e),this.__isAuthError=!0,this.name="AuthError",this.status=r,this.code=s}}function U(t){return typeof t=="object"&&t!==null&&"__isAuthError"in t}class DR extends Rn{constructor(e,r,s){super(e,r,s),this.name="AuthApiError",this.status=r,this.code=s}}function LR(t){return U(t)&&t.name==="AuthApiError"}class Ar extends Rn{constructor(e,r){super(e),this.name="AuthUnknownError",this.originalError=r}}class Bt extends Rn{constructor(e,r,s,n){super(e,s,n),this.name=r,this.status=s}}class Me extends Bt{constructor(){super("Auth session missing!","AuthSessionMissingError",400,void 0)}}function MR(t){return U(t)&&t.name==="AuthSessionMissingError"}class Zr extends Bt{constructor(){super("Auth session or user missing","AuthInvalidTokenResponseError",500,void 0)}}class xi extends Bt{constructor(e){super(e,"AuthInvalidCredentialsError",400,void 0)}}class vi extends Bt{constructor(e,r=null){super(e,"AuthImplicitGrantRedirectError",500,void 0),this.details=null,this.details=r}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}function VR(t){return U(t)&&t.name==="AuthImplicitGrantRedirectError"}class jp extends Bt{constructor(e,r=null){super(e,"AuthPKCEGrantCodeExchangeError",500,void 0),this.details=null,this.details=r}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class $R extends Bt{constructor(){super("PKCE code verifier not found in storage. This can happen if the auth flow was initiated in a different browser or device, or if the storage was cleared. For SSR frameworks (Next.js, SvelteKit, etc.), use @supabase/ssr on both the server and client to store the code verifier in cookies.","AuthPKCECodeVerifierMissingError",400,"pkce_code_verifier_not_found")}}class zl extends Bt{constructor(e,r){super(e,"AuthRetryableFetchError",r,void 0)}}function Lo(t){return U(t)&&t.name==="AuthRetryableFetchError"}class kp extends Bt{constructor(e,r,s){super(e,"AuthWeakPasswordError",r,"weak_password"),this.reasons=s}}class Hl extends Bt{constructor(e){super(e,"AuthInvalidJwtError",400,"invalid_jwt")}}const ra="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".split(""),Ep=` 	
748\r=`.split(""),FR=(()=>{const t=new Array(128);for(let e=0;e<t.length;e+=1)t[e]=-1;for(let e=0;e<Ep.length;e+=1)t[Ep[e].charCodeAt(0)]=-2;for(let e=0;e<ra.length;e+=1)t[ra[e].charCodeAt(0)]=e;return t})();function Tp(t,e,r){if(t!==null)for(e.queue=e.queue<<8|t,e.queuedBits+=8;e.queuedBits>=6;){const s=e.queue>>e.queuedBits-6&63;r(ra[s]),e.queuedBits-=6}else if(e.queuedBits>0)for(e.queue=e.queue<<6-e.queuedBits,e.queuedBits=6;e.queuedBits>=6;){const s=e.queue>>e.queuedBits-6&63;r(ra[s]),e.queuedBits-=6}}function sx(t,e,r){const s=FR[t];if(s>-1)for(e.queue=e.queue<<6|s,e.queuedBits+=6;e.queuedBits>=8;)r(e.queue>>e.queuedBits-8&255),e.queuedBits-=8;else{if(s===-2)return;throw new Error(`Invalid Base64-URL character "${String.fromCharCode(t)}"`)}}function Ap(t){const e=[],r=o=>{e.push(String.fromCodePoint(o))},s={utf8seq:0,codepoint:0},n={queue:0,queuedBits:0},a=o=>{zR(o,s,r)};for(let o=0;o<t.length;o+=1)sx(t.charCodeAt(o),n,a);return e.join("")}function UR(t,e){if(t<=127){e(t);return}else if(t<=2047){e(192|t>>6),e(128|t&63);return}else if(t<=65535){e(224|t>>12),e(128|t>>6&63),e(128|t&63);return}else if(t<=1114111){e(240|t>>18),e(128|t>>12&63),e(128|t>>6&63),e(128|t&63);return}throw new Error(`Unrecognized Unicode codepoint: ${t.toString(16)}`)}function BR(t,e){for(let r=0;r<t.length;r+=1){let s=t.charCodeAt(r);if(s>55295&&s<=56319){const n=(s-55296)*1024&65535;s=(t.charCodeAt(r+1)-56320&65535|n)+65536,r+=1}UR(s,e)}}function zR(t,e,r){if(e.utf8seq===0){if(t<=127){r(t);return}for(let s=1;s<6;s+=1)if(!(t>>7-s&1)){e.utf8seq=s;break}if(e.utf8seq===2)e.codepoint=t&31;else if(e.utf8seq===3)e.codepoint=t&15;else if(e.utf8seq===4)e.codepoint=t&7;else throw new Error("Invalid UTF-8 sequence");e.utf8seq-=1}else if(e.utf8seq>0){if(t<=127)throw new Error("Invalid UTF-8 sequence");e.codepoint=e.codepoint<<6|t&63,e.utf8seq-=1,e.utf8seq===0&&r(e.codepoint)}}function bs(t){const e=[],r={queue:0,queuedBits:0},s=n=>{e.push(n)};for(let n=0;n<t.length;n+=1)sx(t.charCodeAt(n),r,s);return new Uint8Array(e)}function HR(t){const e=[];return BR(t,r=>e.push(r)),new Uint8Array(e)}function Sr(t){const e=[],r={queue:0,queuedBits:0},s=n=>{e.push(n)};return t.forEach(n=>Tp(n,r,s)),Tp(null,r,s),e.join("")}function WR(t){return Math.round(Date.now()/1e3)+t}function qR(){return Symbol("auth-callback")}const Ne=()=>typeof window<"u"&&typeof document<"u",wr={tested:!1,writable:!1},nx=()=>
748{if(!Ne())return!1;try{if(typeof globalThis.localStorage!="object")return!1}catch{return!1}if(wr.tested)return wr.writable;const t=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(t,t),globalThis.localStorage.removeItem(t),wr.tested=!0,wr.writable=!0}catch{wr.tested=!0,wr.writable=!1}return wr.writable};function GR(t){const e={},r=new URL(t);if(r.hash&&r.hash[0]==="#")try{new URLSearchParams(r.hash.substring(1)).forEach((n,a)=>{e[a]=n})}catch{}return r.searchParams.forEach((s,n)=>{e[n]=s}),e}const ix=t=>t?(...e)=>t(...e):(...e)=>fetch(...e),KR=t=>typeof t=="object"&&t!==null&&"status"in t&&"ok"in t&&"json"in t&&typeof t.json=="function",os=async(t,e,r)=>{await t.setItem(e,JSON.stringify(r))},_r=async(t,e)=>{const r=await t.getItem(e);if(!r)return null;try{return JSON.parse(r)}catch{return r}},Ae=async(t,e)=>{await t.removeItem(e)};class Sa{constructor(){this.promise=new Sa.promiseConstructor((e,r)=>{this.resolve=e,this.reject=r})}}Sa.promiseConstructor=Promise;function Mo(t){const e=t.split(".");if(e.length!==3)throw new Hl("Invalid JWT structure");for(let s=0;s<e.length;s++)if(!OR.test(e[s]))throw new Hl("JWT not in base64url format");return{header:JSON.parse(Ap(e[0])),payload:JSON.parse(Ap(e[1])),signature:bs(e[2]),raw:{header:e[0],payload:e[1]}}}async function YR(t){return await new Promise(e=>{setTimeout(()=>e(null),t)})}function JR(t,e){return new Promise((s,n)=>{(async()=>{for(let a=0;a<1/0;a++)try{const o=await t(a);if(!e(a,null,o)){s(o);return}}catch(o){if(!e(a,o)){n(o);return}}})()})}function XR(t){return("0"+t.toString(16)).substr(-2)}function QR(){const e=new Uint32Array(56);if(typeof crypto>"u"){const r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~",s=r.length;let n="";for(let a=0;a<56;a++)n+=r.charAt(Math.floor(Math.random()*s));return n}return crypto.getRandomValues(e),Array.from(e,XR).join("")}async function ZR(t){const r=new TextEncoder().encode(t),s=await crypto.subtle.digest("SHA-256",r),n=new Uint8Array(s);return Array.from(n).map(a=>String.fromCharCode(a)).join("")}async function e5(t){if(!(typeof crypto<"u"&&typeof crypto.subtle<"u"&&typeof TextEncoder<"u"))return console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256."),t;const r=await ZR(t);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function es(t,e,r=!1){const s=QR();let n=s;r&&(n+="/PASSWORD_RECOVERY"),await os(t,`${e}-code-verifier`,n);const a=await e5(s);return[a,s===a?"plain":"s256"]}const t5=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function r5(t){const e=t.headers.get(Bl);
748if(!e||!e.match(t5))return null;try{return new Date(`${e}T00:00:00.0Z`)}catch{return null}}function s5(t){if(!t)throw new Error("Missing exp claim");const e=Math.floor(Date.now()/1e3);if(t<=e)throw new Error("JWT has expired")}function n5(t){switch(t){case"RS256":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case"ES256":return{name:"ECDSA",namedCurve:"P-256",hash:{name:"SHA-256"}};default:throw new Error("Invalid alg claim")}}const i5=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;function ts(t){if(!i5.test(t))throw new Error("@supabase/auth-js: Expected parameter to be UUID but is not")}function Vo(){const t={};return new Proxy(t,{get:(e,r)=>{if(r==="__isUserNotAvailableProxy")return!0;if(typeof r=="symbol"){const s=r.toString();if(s==="Symbol(Symbol.toPrimitive)"||s==="Symbol(Symbol.toStringTag)"||s==="Symbol(util.inspect.custom)")return}throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Accessing the "${r}" property of the session object is not supported. Please use getUser() instead.`)},set:(e,r)=>{throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Setting the "${r}" property of the session object is not supported. Please use getUser() to fetch a user object you can manipulate.`)},deleteProperty:(e,r)=>{throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Deleting the "${r}" property of the session object is not supported. Please use getUser() to fetch a user object you can manipulate.`)}})}function a5(t,e){return new Proxy(t,{get:(r,s,n)=>{if(s==="__isInsecureUserWarningProxy")return!0;if(typeof s=="symbol"){const a=s.toString();if(a==="Symbol(Symbol.toPrimitive)"||a==="Symbol(Symbol.toStringTag)"||a==="Symbol(util.inspect.custom)"||a==="Symbol(nodejs.util.inspect.custom)")return Reflect.get(r,s,n)}return!e.value&&typeof s=="string"&&(console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and may not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server."),e.value=!0),Reflect.get(r,s,n)}})}function Np(t){return JSON.parse(JSON.stringify(t))}const kr=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),o5=[502,503,504];async function Cp(t){var e;if(!KR(t))throw new zl(kr(t),0);if(o5.includes(t.status))throw new zl(kr(t),t.status);let r;try{r=await t.json()}catch(a){throw new Ar(kr(a),a)}let s;const n=r5(t);if(n&&n.getTime()>=rx["2024-01-01"].timestamp&&typeof r=="object"&&r&&typeof r.code=="string"?s=r.code:typeof r=="object"&&r&&typeof r.error_code=="string"&&(s=r.error_code),s){if(s==="weak_password")throw new kp(kr(r),t.status,((e=r.weak_password)===null||e===void 0?void 0:e.reasons)||[]);if(s==="session_not_found")throw new Me}else if(typeof r=="object"&&r&&typeof r.weak_password=="object"&&r.weak_password&&Array.isArray(r.weak_password.reasons)&&r.weak_password.reasons.length&&r.weak_password.reasons.reduce((a,o)=>a&&typeof o=="string",!0))throw new kp(kr(r),t.status,r.weak_password.reasons);throw new DR(kr(r),t.status||500,s)}const l5=(t,e,r,s)=>{const n={method:t,headers:(e==null?void 0:e.headers)||{}};return t==="GET"?n:(n.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},e==null?void 0:e.headers),n.body=JSON.stringify(s),Object.assign(Object.assign({},n),r))};async function H(t,e,r,s){var n;const a=Object.assign({},s==null?void 0:s.headers);a[Bl]||(a[Bl]=rx["2024-01-01"].name),s!=null&&s.jwt&&(a.Authorization=`Bearer ${s.jwt}`);const o=(n=s==null?void 0:s.query)!==null&&n!==void 0?n:{};s!=null&&s.redirectTo&&(o.redirect_to=s.redirectTo);const l=Object.keys(o).length?"?"+new URLSearchParams(o).toString():"",c=await c5(t,e,r+l,{headers:a,noResolveJson:s==null?void 0:s.noResolveJson},{},s==null?void 0:s.body);return s!=null&&s.xform?s==null?void 0:s.xform(c):{data:Object.assign({},c),error:null}}async function c5(t,e,r,s,n,a){const o=l5(e,s,n,a);let l;try{l=await t(r,Object.assign({},o))}catch(c){throw console.error(c),new zl(kr(c),0)}if(l.ok||await Cp(l),s!=null&&s.noResolveJson)return l;try{return await l.json()}catch(c){await Cp(c)}}function et(t){var e;let r=null;h5(t)&&(r=Object.assign({},t),t.expires_at||(r.expires_at=WR(t.expires_in)));const s=(e=t.user)!==null&&e!==void 0?e:t;return{data:{session:r,user:s},error:null}}function Sp(t){const e=et(t);return!e.error&&t.weak_password&&typeof t.weak_password=="object"&&Array.isArray(t.weak_password.reasons)&&t.weak_password.reasons.length&&t.weak_password.message&&typeof t.weak_password.message=="string"&&t.weak_password.reasons.reduce((r,s)=>r&&typeof s=="string",!0)&&(e.data.weak_password=t.weak_password),e}function Xt(t){var e;return{data:{user:(e=t.user)!==null&&e!==void 0?e:t},error:null}}function d5(t){return{data:t,error:null}}function u5(t){const{action_link:e,email_otp:r,hashed_token:s,redirect_to:n,verification_type:a}=t,o=Hs(t,["action_link","email_otp","hashed_token","redirect_to","verification_type"]),l={action_link:e,email_otp:r,hashed_token:s,redirect_to:n,verification_type:a},c=Object.assign({},o);return{data:{properties:l,user:c},error:null}}function Pp(t){return t}function h5(t){return t.access_token&&t.refresh_token&&t.expires_in}const $o=["global","local","others"];class p5{constructor({url:e="",headers:r={},fetch:s}){this.url=e,this.headers=r,this.fetch=ix(s),this.mfa={listFactors:this._listFactors.bind(this),deleteFactor:this._deleteFactor.bind(this)},this.oauth={listClients:this._listOAuthClients.bind(this),createClient:this._createOAuthClient.bind(this),getClient:this._getOAuthClient.bind(this),updateClient:this._updateOAuthClient.bind(this),deleteClient:this._deleteOAuthClient.bind(this),regenerateClientSecret:this._regenerateOAuthClientSecret.bind(this)}}async signOut(e,r=$o[0]){if($o.indexOf(r)<0)throw new Error(`@supabase/auth-js: Parameter scope must be one of ${$o.join(", ")}`);try{return await H(this.fetch,"POST",`${this.url}/logout?scope=${r}`,{headers:this.headers,jwt:e,noResolveJson:!0}),{data:null,error:null}}catch(s){if(U(s))return{data:null,error:s};throw s}}async inviteUserByEmail(e,r={}){try{return await H(this.fetch,"POST",`${this.url}/invite`,{body:{email:e,data:r.data},headers:this.headers,redirectTo:r.redirectTo,xform:Xt})}catch(s){if(U(s))return{data:{user:null},error:s};throw s}}async generateLink(e){try{const{options:r}=e,s=Hs(e,["options"]),n=Object.assign(Object.assign({},s),r);return"newEmail"in s&&(n.new_email=s==null?void 0:s.newEmail,delete n.newEmail),await H(this.fetch,"POST",`${this.url}/admin/generate_link`,{body:n,headers:this.headers,xform:u5,redirectTo:r==null?void 0:r.redirectTo})}catch(r){if(U(r))return{data:{properties:null,user:null},error:r};throw r}}async createUser(e){try{return await H(this.fetch,"POST",`${this.url}/admin/users`,{body:e,headers:this.headers,xform:Xt})}catch(r){if(U(r))return{data:{user:null},error:r};throw r}}async listUsers(e){var r,s,n,a,o,l,c;try{const d={nextPage:null,lastPage:0,total:0},u=await H(this.fetch,"GET",`${this.url}/admin/users`,{headers:this.headers,noResolveJson:!0,query:{page:(s=(r=e==null?void 0:e.page)===null||r===void 0?void 0:r.toString())!==null&&s!==void 0?s:"",per_page:(a=(n=e==null?void 0:e.perPage)===null||n===void 0?void 0:n.toString())!==null&&a!==void 0?a:""},xform:Pp});if(u.error)throw u.error;const p=await u.json(),h=(o=u.headers.get("x-total-count"))!==null&&o!==void 0?o:0,f=(c=(l=u.headers.get("link"))===null||l===void 0?void 0:l.split(","))!==null&&c!==void 0?c:[];return f.length>0&&(f.forEach(x=>{const m=parseInt(x.split(";")[0].split("=")[1].substring(0,1)),y=JSON.parse(x.split(";")[1].split("=")[1]);d[`${y}Page`]=m}),d.total=parseInt(h)),{data:Object.assign(Object.assign({},p),d),error:null}}catch(d){if(U(d))return{data:{users:[]},error:d};throw d}}async getUserById(e){ts(e);try{return await H(this.fetch,"GET",`${this.url}/admin/users/${e}`,{headers:this.headers,xform:Xt})}catch(r){if(U(r))return{data:{user:null},error:r};throw r}}async updateUserById(e,r){ts(e);try{return await H(this.fetch,"PUT",`${this.url}/admin/users/${e}`,{body:r,headers:this.headers,xform:Xt})}catch(s){if(U(s))return{data:{user:null},error:s};throw s}}async deleteUser(e,r=!1){ts(e);
748try{return await H(this.fetch,"DELETE",`${this.url}/admin/users/${e}`,{headers:this.headers,body:{should_soft_delete:r},xform:Xt})}catch(s){if(U(s))return{data:{user:null},error:s};throw s}}async _listFactors(e){ts(e.userId);try{const{data:r,error:s}=await H(this.fetch,"GET",`${this.url}/admin/users/${e.userId}/factors`,{headers:this.headers,xform:n=>({data:{factors:n},error:null})});return{data:r,error:s}}catch(r){if(U(r))return{data:null,error:r};throw r}}async _deleteFactor(e){ts(e.userId),ts(e.id);try{return{data:await H(this.fetch,"DELETE",`${this.url}/admin/users/${e.userId}/factors/${e.id}`,{headers:this.headers}),error:null}}catch(r){if(U(r))return{data:null,error:r};throw r}}async _listOAuthClients(e){var r,s,n,a,o,l,c;try{const d={nextPage:null,lastPage:0,total:0},u=await H(this.fetch,"GET",`${this.url}/admin/oauth/clients`,{headers:this.headers,noResolveJson:!0,query:{page:(s=(r=e==null?void 0:e.page)===null||r===void 0?void 0:r.toString())!==null&&s!==void 0?s:"",per_page:(a=(n=e==null?void 0:e.perPage)===null||n===void 0?void 0:n.toString())!==null&&a!==void 0?a:""},xform:Pp});if(u.error)throw u.error;const p=await u.json(),h=(o=u.headers.get("x-total-count"))!==null&&o!==void 0?o:0,f=(c=(l=u.headers.get("link"))===null||l===void 0?void 0:l.split(","))!==null&&c!==void 0?c:[];return f.length>0&&(f.forEach(x=>{const m=parseInt(x.split(";")[0].split("=")[1].substring(0,1)),y=JSON.parse(x.split(";")[1].split("=")[1]);d[`${y}Page`]=m}),d.total=parseInt(h)),{data:Object.assign(Object.assign({},p),d),error:null}}catch(d){if(U(d))return{data:{clients:[]},error:d};throw d}}async _createOAuthClient(e){try{return await H(this.fetch,"POST",`${this.url}/admin/oauth/clients`,{body:e,headers:this.headers,xform:r=>({data:r,error:null})})}catch(r){if(U(r))return{data:null,error:r};throw r}}async _getOAuthClient(e){try{return await H(this.fetch,"GET",`${this.url}/admin/oauth/clients/${e}`,{headers:this.headers,xform:r=>({data:r,error:null})})}catch(r){if(U(r))return{data:null,error:r};throw r}}async _updateOAuthClient(e,r){try{return await H(this.fetch,"PUT",`${this.url}/admin/oauth/clients/${e}`,{body:r,headers:this.headers,xform:s=>({data:s,error:null})})}catch(s){if(U(s))return{data:null,error:s};throw s}}async _deleteOAuthClient(e){try{return await H(this.fetch,"DELETE",`${this.url}/admin/oauth/clients/${e}`,{headers:this.headers,noResolveJson:!0}),{data:null,error:null}}catch(r){if(U(r))return{data:null,error:r};throw r}}async _regenerateOAuthClientSecret(e){try{return await H(this.fetch,"POST",`${this.url}/admin/oauth/clients/${e}/regenerate_secret`,{headers:this.headers,xform:r=>({data:r,error:null})})}catch(r){if(U(r))return{data:null,error:r};throw r}}}function Rp(t={}){return{getItem:e=>t[e]||null,setItem:(e,r)=>{t[e]=r},removeItem:e=>{delete t[e]}}}const rs={debug:!!(globalThis&&nx()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug")==="true")};class ax extends Error{constructor(e){super(e),this.isAcquireTimeout=!0}}class f5 extends ax{}async function m5(t,e,r){rs.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquire lock",t,e);const s=new globalThis.AbortController;return e>0&&setTimeout(()=>{s.abort(),rs.debug&&console.log("@supabase/gotrue-js: navigatorLock acquire timed out",t)},e),await Promise.resolve().then(()=>globalThis.navigator.locks.request(t,e===0?{mode:"exclusive",ifAvailable:!0}:{mode:"exclusive",signal:s.signal},async n=>{if(n){rs.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquired",t,n.name);try{return await r()}finally{rs.debug&&console.log("@supabase/gotrue-js: navigatorLock: released",t,n.name)}}else{if(e===0)throw rs.debug&&console.log("@supabase/gotrue-js: navigatorLock: not immediately available",t),new f5(`Acquiring an exclusive Navigator LockManager lock "${t}" immediately failed`);if(rs.debug)try{const a=await globalThis.navigator.locks.query();console.log("@supabase/gotrue-js: Navigator LockManager state",JSON.stringify(a,null,"  "))}catch(a){console.warn("@supabase/gotrue-js: Error when querying Navigator LockManager state",a)}return console.warn("@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request"),await r()}}))}function g5(){if(typeof globalThis!="object")try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__}catch{typeof self<"u"&&(self.globalThis=self)}}function ox(t){if(!/^0x[a-fA-F0-9]{40}$/.test(t))throw new Error(`@supabase/auth-js: Address "${t}
748" is invalid.`);return t.toLowerCase()}function y5(t){return parseInt(t,16)}function x5(t){const e=new TextEncoder().encode(t);return"0x"+Array.from(e,s=>s.toString(16).padStart(2,"0")).join("")}function v5(t){var e;const{chainId:r,domain:s,expirationTime:n,issuedAt:a=new Date,nonce:o,notBefore:l,requestId:c,resources:d,scheme:u,uri:p,version:h}=t;{if(!Number.isInteger(r))throw new Error(`@supabase/auth-js: Invalid SIWE message field "chainId". Chain ID must be a EIP-155 chain ID. Provided value: ${r}`);if(!s)throw new Error('@supabase/auth-js: Invalid SIWE message field "domain". Domain must be provided.');if(o&&o.length<8)throw new Error(`@supabase/auth-js: Invalid SIWE message field "nonce". Nonce must be at least 8 characters. Provided value: ${o}`);if(!p)throw new Error('@supabase/auth-js: Invalid SIWE message field "uri". URI must be provided.');if(h!=="1")throw new Error(`@supabase/auth-js: Invalid SIWE message field "version". Version must be '1'. Provided value: ${h}`);if(!((e=t.statement)===null||e===void 0)&&e.includes(`
749`))throw new Error(`@supabase/auth-js: Invalid SIWE message field "statement". Statement must not include '\\n'. Provided value: ${t.statement}`)}const f=ox(t.address),x=u?`${u}://${s}`:s,m=t.statement?`${t.statement}
750`:"",y=`${x} wants you to sign in with your Ethereum account:
751${f}
752
753${m}`;let b=`URI: ${p}
754Version: ${h}
755Chain ID: ${r}${o?`
756Nonce: ${o}`:""}
757Issued At: ${a.toISOString()}`;if(n&&(b+=`
758Expiration Time: ${n.toISOString()}`),l&&(b+=`
759Not Before: ${l.toISOString()}`),c&&(b+=`
760Request ID: ${c}`),d){let w=`
761Resources:`;for(const _ of d){if(!_||typeof _!="string")throw new Error(`@supabase/auth-js: Invalid SIWE message field "resources". Every resource must be a valid string. Provided value: ${_}`);w+=`
762- ${_}`}b+=w}return`${y}
763${b}`}class we extends Error{constructor({message:e,code:r,cause:s,name:n}){var a;super(e,{cause:s}),this.__isWebAuthnError=!0,this.name=(a=n??(s instanceof Error?s.name:void 0))!==null&&a!==void 0?a:"Unknown Error",this.code=r}}class sa extends we{constructor(e,r){super({code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:r,message:e}),this.name="WebAuthnUnknownError",this.originalError=r}}function b5({error:t,options:e}){var r,s,n;const{publicKey:a}=e;if(!a)throw Error("options was missing required publicKey property");if(t.name==="AbortError"){if(e.signal instanceof AbortSignal)return new we({message:"Registration ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:t})}else if(t.name==="ConstraintError"){if(((r=a.authenticatorSelection)===null||r===void 0?void 0:r.requireResidentKey)===!0)return new we({message:"Discoverable credentials were required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_DISCOVERABLE_CREDENTIAL_SUPPORT",cause:t});if(e.mediation==="conditional"&&((s=a.authenticatorSelection)===null||s===void 0?void 0:s.userVerification)==="required")return new we({message:"User verification was required during automatic registration but it could not be performed",code:"ERROR_AUTO_REGISTER_USER_VERIFICATION_FAILURE",cause:t});if(((n=a.authenticatorSelection)===null||n===void 0?void 0:n.userVerification)==="required")return new we({message:"User verification was required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_USER_VERIFICATION_SUPPORT",cause:t})}else{if(t.name==="InvalidStateError")return new we({message:"The authenticator was previously registered",code:"ERROR_AUTHENTICATOR_PREVIOUSLY_REGISTERED",cause:t});if(t.name==="NotAllowedError")return new we({message:t.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t});if(t.name==="NotSupportedError")return a.pubKeyCredParams.filter(l=>l.type==="public-key").length===0?new we({message:'No entry in pubKeyCredParams was of type "public-key"',code:"ERROR_MALFORMED_PUBKEYCREDPARAMS",cause:t}):new we({message:"No available authenticator supported any of the specified pubKeyCredParams algorithms",code:"ERROR_AUTHENTICATOR_NO_SUPPORTED_PUBKEYCREDPARAMS_ALG",cause:t});if(t.name==="SecurityError"){const o=window.location.hostname;if(lx(o)){if(a.rp.id!==o)return new we({message:`The RP ID "${a.rp.id}
763" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:t})}else return new we({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:t})}else if(t.name==="TypeError"){if(a.user.id.byteLength<1||a.user.id.byteLength>64)return new we({message:"User ID was not between 1 and 64 characters",code:"ERROR_INVALID_USER_ID_LENGTH",cause:t})}else if(t.name==="UnknownError")return new we({message:"The authenticator was unable to process the specified options, or could not create a new credential",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:t})}return new we({message:"a Non-Webauthn related error has occurred",code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t})}function w5({error:t,options:e}){const{publicKey:r}=e;if(!r)throw Error("options was missing required publicKey property");if(t.name==="AbortError"){if(e.signal instanceof AbortSignal)return new we({message:"Authentication ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:t})}else{if(t.name==="NotAllowedError")return new we({message:t.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t});if(t.name==="SecurityError"){const s=window.location.hostname;if(lx(s)){if(r.rpId!==s)return new we({message:`The RP ID "${r.rpId}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:t})}else return new we({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:t})}else if(t.name==="UnknownError")return new we({message:"The authenticator was unable to process the specified options, or could not create a new assertion signature",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:t})}return new we({message:"a Non-Webauthn related error has occurred",code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t})}class _5{createNewAbortSignal(){if(this.controller){const r=new Error("Cancelling existing WebAuthn API call for new one");r.name="AbortError",this.controller.abort(r)}const e=new AbortController;return this.controller=e,e.signal}cancelCeremony(){if(this.controller){const e=new Error("Manually cancelling existing WebAuthn API call");e.name="AbortError",this.controller.abort(e),this.controller=void 0}}}const j5=new _5;function k5(t){if(!t)throw new Error("Credential creation options are required");if(typeof PublicKeyCredential<"u"&&"parseCreationOptionsFromJSON"in PublicKeyCredential&&typeof PublicKeyCredential.parseCreationOptionsFromJSON=="function")return PublicKeyCredential.parseCreationOptionsFromJSON(t);const{challenge:e,user:r,excludeCredentials:s}=t,n=Hs(t,["challenge","user","excludeCredentials"]),a=bs(e).buffer,o=Object.assign(Object.assign({},r),{id:bs(r.id).buffer}),l=Object.assign(Object.assign({},n),{challenge:a,user:o});if(s&&s.length>0){l.excludeCredentials=new Array(s.length);for(let c=0;c<s.length;c++){const d=s[c];l.excludeCredentials[c]=Object.assign(Object.assign({},d),{id:bs(d.id).buffer,type:d.type||"public-key",transports:d.transports})}}return l}function E5(t){if(!t)throw new Error("Credential request options are required");if(typeof PublicKeyCredential<"u"&&"parseRequestOptionsFromJSON"in PublicKeyCredential&&typeof PublicKeyCredential.parseRequestOptionsFromJSON=="function")return PublicKeyCredential.parseRequestOptionsFromJSON(t);const{challenge:e,allowCredentials:r}=t,s=Hs(t,["challenge","allowCredentials"]),n=bs(e).buffer,a=Object.assign(Object.assign({},s),{challenge:n});if(r&&r.length>0){a.allowCredentials=new Array(r.length);for(let o=0;o<r.length;o++){const l=r[o];a.allowCredentials[o]=Object.assign(Object.assign({},l),{id:bs(l.id).buffer,type:l.type||"public-key",transports:l.transports})}}return a}function T5(t){var e;if("toJSON"in t&&typeof t.toJSON=="function")return t.toJSON();const r=t;return{id:t.id,rawId:t.id,response:{attestationObject:Sr(new Uint8Array(t.response.attestationObject)),clientDataJSON:Sr(new 
763Uint8Array(t.response.clientDataJSON))},type:"public-key",clientExtensionResults:t.getClientExtensionResults(),authenticatorAttachment:(e=r.authenticatorAttachment)!==null&&e!==void 0?e:void 0}}function A5(t){var e;if("toJSON"in t&&typeof t.toJSON=="function")return t.toJSON();const r=t,s=t.getClientExtensionResults(),n=t.response;return{id:t.id,rawId:t.id,response:{authenticatorData:Sr(new Uint8Array(n.authenticatorData)),clientDataJSON:Sr(new Uint8Array(n.clientDataJSON)),signature:Sr(new Uint8Array(n.signature)),userHandle:n.userHandle?Sr(new Uint8Array(n.userHandle)):void 0},type:"public-key",clientExtensionResults:s,authenticatorAttachment:(e=r.authenticatorAttachment)!==null&&e!==void 0?e:void 0}}function lx(t){return t==="localhost"||/^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i.test(t)}function Op(){var t,e;return!!(Ne()&&"PublicKeyCredential"in window&&window.PublicKeyCredential&&"credentials"in navigator&&typeof((t=navigator==null?void 0:navigator.credentials)===null||t===void 0?void 0:t.create)=="function"&&typeof((e=navigator==null?void 0:navigator.credentials)===null||e===void 0?void 0:e.get)=="function")}async function N5(t){try{const e=await navigator.credentials.create(t);return e?e instanceof PublicKeyCredential?{data:e,error:null}:{data:null,error:new sa("Browser returned unexpected credential type",e)}:{data:null,error:new sa("Empty credential response",e)}}catch(e){return{data:null,error:b5({error:e,options:t})}}}async function C5(t){try{const e=await navigator.credentials.get(t);return e?e instanceof PublicKeyCredential?{data:e,error:null}:{data:null,error:new sa("Browser returned unexpected credential type",e)}:{data:null,error:new sa("Empty credential response",e)}}catch(e){return{data:null,error:w5({error:e,options:t})}}}const S5={hints:["security-key"],authenticatorSelection:{authenticatorAttachment:"cross-platform",requireResidentKey:!1,userVerification:"preferred",residentKey:"discouraged"},attestation:"direct"},P5={userVerification:"preferred",hints:["security-key"],attestation:"direct"};function na(...t){const e=n=>n!==null&&typeof n=="object"&&!Array.isArray(n),r=n=>n instanceof ArrayBuffer||ArrayBuffer.isView(n),s={};for(const n of t)if(n)for(const a in n){const o=n[a];if(o!==void 0)if(Array.isArray(o))s[a]=o;else if(r(o))s[a]=o;else if(e(o)){const l=s[a];e(l)?s[a]=na(l,o):s[a]=na(o)}else s[a]=o}return s}function R5(t,e){return na(S5,t,e||{})}function O5(t,e){return na(P5,t,e||{})}class I5{constructor(e){this.client=e,this.enroll=this._enroll.bind(this),this.challenge=this._challenge.bind(this),this.verify=this._verify.bind(this),this.authenticate=this._authenticate.bind(this),this.register=this._register.bind(this)}async _enroll(e){return this.client.mfa.enroll(Object.assign(Object.assign({},e),{factorType:"webauthn"}))}async _challenge({factorId:e,webauthn:r,friendlyName:s,signal:n},a){try{const{data:o,error:l}=await this.client.mfa.challenge({factorId:e,webauthn:r});if(!o)return{data:null,error:l};const c=n??j5.createNewAbortSignal();if(o.webauthn.type==="create"){const{user:d}=o.webauthn.credential_options.publicKey;d.name||(d.name=`${d.id}:${s}`),d.displayName||(d.displayName=d.name)}switch(o.webauthn.type){case"create":{const d=R5(o.webauthn.credential_options.publicKey,a==null?void 0:a.create),{data:u,error:p}=await N5({publicKey:d,signal:c});return u?{data:{factorId:e,challengeId:o.id,webauthn:{type:o.webauthn.type,credential_response:u}},error:null}:{data:null,error:p}}case"request":{const d=O5(o.webauthn.credential_options.publicKey,a==null?void 0:a.request),{data:u,error:p}=await C5(Object.assign(Object.assign({},o.webauthn.credential_options),{publicKey:d,signal:c}));return u?{data:{factorId:e,challengeId:o.id,webauthn:{type:o.webauthn.type,credential_response:u}},error:null}:{data:null,error:p}}}}catch(o){return U(o)?{data:null,error:o}:{data:null,error:new Ar("Unexpected error in challenge",o)}}}async _verify({challengeId:e,factorId:r,webauthn:s}){return this.client.mfa.verify({factorId:r,challengeId:e,webauthn:s})}async _authenticate({factorId:e,webauthn:{rpId:r=typeof window<"u"?window.location.hostname:void 0,rpOrigins:s=typeof window<"u"?[window.location.origin]:void 0,signal:n}={}},a){if(!r)return{data:null,error:new Rn("rpId is required for WebAuthn authentication")};try{if(!Op())return{data:null,error:new Ar("Browser does not support WebAuthn",null)};const{data:o,error:l}=await this.challenge({factorId:e,webauthn:{rpId:r,rpOrigins:s},signal:n},{request:a});if(!o)return{data:null,error:l};const{webauthn:c}=o;return this._verify({factorId:e,challengeId:o.challengeId,webauthn:{type:c.type,rpId:r,rpOrigins:s,credential_response:c.credential_response}})}catch(o){return U(o)?{data:null,error:o}:{data:null,error:new Ar("Unexpected error in authenticate",o)}}}async _register({friendlyName:e,webauthn:{rpId:r=typeof window<"u"?window.location.hostname:void 0,rpOrigins:s=typeof window<"u"?[window.location.origin]:void 0,signal:n}={}},a){if(!r)return{data:null,error:new Rn("rpId is required for WebAuthn registration")};try{if(!Op())return{data:null,error:new Ar("Browser does not support WebAuthn",null)};const{data:o,error:l}=await this._enroll({friendlyName:e});if(!o)return await this.client.mfa.listFactors().then(u=>{var p;return(p=u.data)===null||p===void 0?void 0:p.all.find(h=>h.factor_type==="webauthn"&&h.friendly_name===e&&h.status!=="unverified")}).then(u=>u?this.client.mfa.unenroll({factorId:u==null?void 0:u.id}):void 0),{data:null,error:l};const{data:c,error:d}=await this._challenge({factorId:o.id,friendlyName:o.friendly_name,webauthn:{rpId:r,rpOrigins:s},signal:n},{create:a});return c?this._verify({factorId:o.id,challengeId:c.challengeId,webauthn:{rpId:r,rpOrigins:s,type:c.webauthn.type,credential_response:c.webauthn.credential_response}}):{data:null,error:d}}catch(o){return U(o)?{data:null,error:o}:{data:null,error:new Ar("Unexpected error in register",o)}}}}g5();const D5={url:SR,storageKey:PR,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:RR,flowType:"implicit",debug:!1,hasCustomAuthorizationHeader:!1,throwOnError:!1};async function Ip(t,e,r){return await r()}const ss={};class On{get jwks(){var e,r;return(r=(e=ss[this.storageKey])===null||e===void 0?void 0:e.jwks)!==null&&r!==void 0?r:{keys:[]}}set jwks(e){ss[this.storageKey]=Object.assign(Object.assign({},ss[this.storageKey]),{jwks:e})}get jwks_cached_at(){var e,r;return(r=(e=ss[this.storageKey])===null||e===void 0?void 0:e.cachedAt)!==null&&r!==void 0?r:Number.MIN_SAFE_INTEGER}set jwks_cached_at(e){ss[this.storageKey]=Object.assign(Object.assign({},ss[this.storageKey]),{cachedAt:e})}constructor(e){var r,s,n;this.userStorage=null,this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.initializePromise=null,this.detectSessionInUrl=!0,this.hasCustomAuthorizationHeader=!1,this.suppressGetSessionWarning=!1,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log;const a=Object.assign(Object.assign({},D5),e);if(this.storageKey=a.storageKey,this.instanceID=(r=On.nextInstanceID[this.storageKey])!==null&&r!==void 0?r:0,On.nextInstanceID[this.storageKey]=this.instanceID+1,this.logDebugMessages=!!a.debug,typeof a.debug=="function"&&(this.logger=a.debug),this.instanceID>0&&Ne()){const o=`${this._logPrefix()} Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.`;console.warn(o),this.logDebugMessages&&console.trace(o)}if(this.persistSession=a.persistSession,this.autoRefreshToken=a.autoRefreshToken,this.admin=new p5({url:a.url,headers:a.headers,fetch:a.fetch}),this.url=a.url,this.headers=a.headers,this.fetch=ix(a.fetch),this.lock=a.lock||Ip,this.detectSessionInUrl=a.detectSessionInUrl,this.flowType=a.flowType,this.hasCustomAuthorizationHeader=a.hasCustomAuthorizationHeader,this.throwOnError=a.throwOnError,a.lock?this.lock=a.lock:this.persistSession&&Ne()&&(!((s=globalThis==null?void 0:globalThis.navigator)===null||s===void 0)&&s.locks)?this.lock=m5:this.lock=Ip,this.jwks||(this.jwks={keys:[]},this.jwks_cached_at=Number.MIN_SAFE_INTEGER),this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this),webauthn:new I5(this)}
763,this.oauth={getAuthorizationDetails:this._getAuthorizationDetails.bind(this),approveAuthorization:this._approveAuthorization.bind(this),denyAuthorization:this._denyAuthorization.bind(this),listGrants:this._listOAuthGrants.bind(this),revokeGrant:this._revokeOAuthGrant.bind(this)},this.persistSession?(a.storage?this.storage=a.storage:nx()?this.storage=globalThis.localStorage:(this.memoryStorage={},this.storage=Rp(this.memoryStorage)),a.userStorage&&(this.userStorage=a.userStorage)):(this.memoryStorage={},this.storage=Rp(this.memoryStorage)),Ne()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(o){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",o)}(n=this.broadcastChannel)===null||n===void 0||n.addEventListener("message",async o=>{this._debug("received broadcast notification from other tab or client",o),await this._notifyAllSubscribers(o.data.event,o.data.session,!1)})}this.initialize()}isThrowOnErrorEnabled(){return this.throwOnError}_returnResult(e){if(this.throwOnError&&e&&e.error)throw e.error;return e}_logPrefix(){return`GoTrueClient@${this.storageKey}:${this.instanceID} (${tx}) ${new Date().toISOString()}`}_debug(...e){return this.logDebugMessages&&this.logger(this._logPrefix(),...e),this}async initialize(){return this.initializePromise?await this.initializePromise:(this.initializePromise=(async()=>await this._acquireLock(-1,async()=>await this._initialize()))(),await this.initializePromise)}async _initialize(){var e;try{let r={},s="none";if(Ne()&&(r=GR(window.location.href),this._isImplicitGrantCallback(r)?s="implicit":await this._isPKCECallback(r)&&(s="pkce")),Ne()&&this.detectSessionInUrl&&s!=="none"){const{data:n,error:a}=await this._getSessionFromURL(r,s);if(a){if(this._debug("#_initialize()","error detecting session from URL",a),VR(a)){const c=(e=a.details)===null||e===void 0?void 0:e.code;if(c==="identity_already_exists"||c==="identity_not_found"||c==="single_identity_not_deletable")return{error:a}}return await this._removeSession(),{error:a}}const{session:o,redirectType:l}=n;return this._debug("#_initialize()","detected session in URL",o,"redirect type",l),await this._saveSession(o),setTimeout(async()=>{l==="recovery"?await this._notifyAllSubscribers("PASSWORD_RECOVERY",o):await this._notifyAllSubscribers("SIGNED_IN",o)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(r){return U(r)?this._returnResult({error:r}):this._returnResult({error:new Ar("Unexpected error during initialization",r)})}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(e){var r,s,n;try{const a=await H(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(s=(r=e==null?void 0:e.options)===null||r===void 0?void 0:r.data)!==null&&s!==void 0?s:{},gotrue_meta_security:{captcha_token:(n=e==null?void 0:e.options)===null||n===void 0?void 0:n.captchaToken}},xform:et}),{data:o,error:l}=a;if(l||!o)return this._returnResult({data:{user:null,session:null},error:l});const c=o.session,d=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",c)),this._returnResult({data:{user:d,session:c},error:null})}catch(a){if(U(a))return this._returnResult({data:{user:null,session:null},error:a});throw a}}async signUp(e){var r,s,n;try{let a;if("email"in e){const{email:u,password:p,options:h}=e;let f=null,x=null;this.flowType==="pkce"&&([f,x]=await es(this.storage,this.storageKey)),a=await H(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:h==null?void 0:h.emailRedirectTo,body:{email:u,password:p,data:(r=h==null?void 0:h.data)!==null&&r!==void 0?r:{},gotrue_meta_security:{captcha_token:h==null?void 0:h.captchaToken},code_challenge:f,code_challenge_method:x},xform:et})}else if("phone"in e){const{phone:u,password:p,options:h}=e;a=await H(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:u,password:p,data:(s=h==null?void 0:h.data)!==null&&s!==void 0?s:{},channel:(n=h==null?void 0:h.channel)!==null&&n!==void 0?n:"sms",gotrue_meta_security:{captcha_token:h==null?void 0:h.captchaToken}},xform:et})}else throw new xi("You must provide either an email or phone number and a password");const{data:o,error:l}=a;if(l||!o)return await Ae(this.storage,`${this.storageKey}-code-verifier`),this._returnResult({data:{user:null,session:null},error:l});const c=o.session,d=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",c)),this._returnResult({data:{user:d,session:c},error:null})}catch(a){if(await Ae(this.storage,`${this.storageKey}-code-verifier`),U(a))return this._returnResult({data:{user:null,session:null},error:a});throw a}}async signInWithPassword(e){try{let r;if("email"in e){const{email:a,password:o,options:l}=e;r=await H(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:a,password:o,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken}},xform:Sp})}else if("phone"in e){const{phone:a,password:o,options:l}=e;r=await H(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:a,password:o,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken}},xform:Sp})}else throw new xi("You must provide either an email or phone number and a password");const{data:s,error:n}=r;if(n)return this._returnResult({data:{user:null,session:null},error:n});if(!s||!s.session||!s.user){const a=new Zr;return this._returnResult({data:{user:null,session:null},error:a})}return s.session&&(await this._saveSession(s.session),await this._notifyAllSubscribers("SIGNED_IN",s.session)),this._returnResult({data:Object.assign({user:s.user,session:s.session},s.weak_password?{weakPassword:s.weak_password}:null),error:n})}catch(r){if(U(r))return this._returnResult({data:{user:null,session:null},error:r});throw r}}async signInWithOAuth(e){var r,s,n,a;return await this._handleProviderSignIn(e.provider,{redirectTo:(r=e.options)===null||r===void 0?void 0:r.redirectTo,scopes:(s=e.options)===null||s===void 0?void 0:s.scopes,queryParams:(n=e.options)===null||n===void 0?void 0:n.queryParams,skipBrowserRedirect:(a=e.options)===null||a===void 0?void 0:a.skipBrowserRedirect})}async exchangeCodeForSession(e){return await this.initializePromise,this._acquireLock(-1,async()=>this._exchangeCodeForSession(e))}async signInWithWeb3(e){const{chain:r}=e;switch(r){case"ethereum":return await this.signInWithEthereum(e);case"solana":return await this.signInWithSolana(e);default:throw new Error(`@supabase/auth-js: Unsupported chain "${r}"`)}}async signInWithEthereum(e){var r,s,n,a,o,l,c,d,u,p,h;let f,x;if("message"in e)f=e.message,x=e.signature;else{const{chain:m,wallet:y,statement:b,options:w}=e;let _;if(Ne())if(typeof y=="object")_=y;else{const R=window;if("ethereum"in R&&typeof R.ethereum=="object"&&"request"in R.ethereum&&typeof R.ethereum.request=="function")_=R.ethereum;else throw new Error("@supabase/auth-js: No compatible Ethereum wallet interface on the window object (window.ethereum) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'ethereum', wallet: resolvedUserWallet }) instead.")}else{if(typeof y!="object"||!(w!=null&&w.url))throw new Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");_=y}const j=new URL((r=w==null?void 0:w.url)!==null&&r!==void 0?r:window.location.href),k=await _.request({method:"eth_requestAccounts"}).then(R=>R).catch(()=>{throw new Error("@supabase/auth-js: Wallet method eth_requestAccounts is missing or invalid")});if(!k||k.length===0)throw new Error("@supabase/auth-js: No accounts available. Please ensure the wallet is connected.");const E=ox(k[0]);let T=(s=w==null?void 0:w.signInWithEthereum)===null||s===void 0?void 0:s.chainId;if(!T){const R=await _.request({method:"eth_chainId"});T=y5(R)}const A={domain:j.host,address:E,statement:b,uri:j.href,version:"1",chainId:T,nonce:(n=w==null?void 0:w.signInWithEthereum)===null||n===void 0?void 0:n.nonce,issuedAt:(o=(a=w==null?void 0:w.signInWithEthereum)===null||a===void 0?void 0:a.issuedAt)!==null&&o!==void 0?o:new Date,expirationTime:(l=w==null?void 0:w.signInWithEthereum)===null||l===void 0?void 0:l.expirationTime,notBefore:(c=w==null?void 0:w.signInWithEthereum)===null||c===void 0?void 0:c.notBefore,requestId:(d=w==null?void 0:w.signInWithEthereum)===null||d===void 0?void 0:d.requestId,resources:(u=w==null?void 0:w.signInWithEthereum)===null||u===void 0?void 0:u.resources};f=v5(A),x=await _.request({method:"personal_sign",params:[x5(f),E]})}try{const{data:m,error:y}=await H(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"ethereum",message:f,signature:x},!((p=e.options)===null||p===void 0)&&p.captchaToken?{gotrue_meta_security:{captcha_token:(h=e.options)===null||h===void 0?void 0:h.captchaToken}}:null),xform:et});if(y)throw y;if(!m||!m.session||!m.user){const b=new Zr;return this._returnResult({data:{user:null,session:null},error:b})}return m.session&&(await this._saveSession(m.session),await this._notifyAllSubscribers("SIGNED_IN",m.session)),this._returnResult({data:Object.assign({},m),error:y})}catch(m){if(U(m))return this._returnResult({data:{user:null,session:null},error:m});throw m}}async signInWithSolana(e){var r,s,n,a,o,l,c,d,u,p,h,f;let x,m;if("message"in e)x=e.message,m=e.signature;else{const{chain:y,wallet:b,statement:w,options:_}=e;let j;if(Ne())if(typeof b=="object")j=b;else{const E=window;if("solana"in E&&typeof E.solana=="object"&&("signIn"in E.solana&&typeof E.solana.signIn=="function"||"signMessage"in E.solana&&typeof E.solana.signMessage=="function"))j=E.solana;else throw new Error("@supabase/auth-js: No compatible Solana wallet interface on the window object (window.solana) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'solana', wallet: resolvedUserWallet }) instead.")}else{if(typeof b!="object"||!(_!=null&&_.url))throw new Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");j=b}const k=new URL((r=_==null?void 0:_.url)!==null&&r!==void 0?r:window.location.href);if("signIn"in j&&j.signIn){const E=await j.signIn(Object.assign(Object.assign(Object.assign({issuedAt:new Date().toISOString()},_==null?void 0:_.signInWithSolana),{version:"1",domain:k.host,uri:k.href}),w?{statement:w}:null));let T;if(Array.isArray(E)&&E[0]&&typeof E[0]=="object")T=E[0];else if(E&&typeof E=="object"&&"signedMessage"in E&&"signature"in E)T=E;else throw new Error("@supabase/auth-js: Wallet method signIn() returned unrecognized value");if("signedMessage"in T&&"signature"in T&&(typeof T.signedMessage=="string"||T.signedMessage instanceof Uint8Array)&&T.signature instanceof Uint8Array)x=typeof T.signedMessage=="string"?T.signedMessage:new TextDecoder().decode(T.signedMessage),m=T.signature;else throw new Error("@supabase/auth-js: Wallet method signIn() API returned object without signedMessage and signature fields")}else{if(!("signMessage"in j)||typeof j.signMessage!="function"||!("publicKey"in j)||typeof j!="object"||!j.publicKey||!("toBase58"in j.publicKey)||typeof j.publicKey.toBase58!="function")throw new Error("@supabase/auth-js: Wallet does not have a compatible signMessage() and publicKey.toBase58() API");x=[`${k.host} wants you to sign in with your Solana account:`,j.publicKey.toBase58(),...w?["",w,""]:[""],"Version: 1",`URI: ${k.href}`,`Issued At: ${(n=(s=_==null?void 0:_.signInWithSolana)===null||s===void 0?void 0:s.issuedAt)!==null&&n!==void 0?n:new Date().toISOString()}`,...!((a=_==null?void 0:_.signInWithSolana)===null||a===void 0)&&a.notBefore?[`Not Before: ${_.signInWithSolana.notBefore}`]:[],...!((o=_==null?void 0:_.signInWithSolana)===null||o===void 0)&&o.expirationTime?[`Expiration Time: ${_.signInWithSolana.expirationTime}`]:[],...!((l=_==null?void 0:_.signInWithSolana)===null||l===void 0)&&l.chainId?[`Chain ID: ${_.signInWithSolana.chainId}`]:[],...!((c=_==null?void 0:_.signInWithSolana)===null||c===void 0)&&c.nonce?[`Nonce: ${_.signInWithSolana.nonce}`]:[],...!((d=_==null?void 0:_.signInWithSolana)===null||d===void 0)&&d.requestId?[`Request ID: ${_.signInWithSolana.requestId}`]:[],...!((p=(u=_==null?void 0:_.signInWithSolana)===null||u===void 0?void 0:u.resources)===null||p===void 0)&&p.length?["Resources",..._.signInWithSolana.resources.map(T=>`- ${T}`)]:[]].join(`
764`);const E=await j.signMessage(new TextEncoder().encode(x),"utf8");if(!E||!(E instanceof Uint8Array))throw new Error("@supabase/auth-js: Wallet signMessage() API returned an recognized value");m=E}}try{const{data:y,error:b}=await H(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"solana",message:x,signature:Sr(m)}
764,!((h=e.options)===null||h===void 0)&&h.captchaToken?{gotrue_meta_security:{captcha_token:(f=e.options)===null||f===void 0?void 0:f.captchaToken}}:null),xform:et});if(b)throw b;if(!y||!y.session||!y.user){const w=new Zr;return this._returnResult({data:{user:null,session:null},error:w})}return y.session&&(await this._saveSession(y.session),await this._notifyAllSubscribers("SIGNED_IN",y.session)),this._returnResult({data:Object.assign({},y),error:b})}catch(y){if(U(y))return this._returnResult({data:{user:null,session:null},error:y});throw y}}async _exchangeCodeForSession(e){const r=await _r(this.storage,`${this.storageKey}-code-verifier`),[s,n]=(r??"").split("/");try{if(!s&&this.flowType==="pkce")throw new $R;const{data:a,error:o}=await H(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:e,code_verifier:s},xform:et});if(await Ae(this.storage,`${this.storageKey}-code-verifier`),o)throw o;if(!a||!a.session||!a.user){const l=new Zr;return this._returnResult({data:{user:null,session:null,redirectType:null},error:l})}return a.session&&(await this._saveSession(a.session),await this._notifyAllSubscribers("SIGNED_IN",a.session)),this._returnResult({data:Object.assign(Object.assign({},a),{redirectType:n??null}),error:o})}catch(a){if(await Ae(this.storage,`${this.storageKey}-code-verifier`),U(a))return this._returnResult({data:{user:null,session:null,redirectType:null},error:a});throw a}}async signInWithIdToken(e){try{const{options:r,provider:s,token:n,access_token:a,nonce:o}=e,l=await H(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:s,id_token:n,access_token:a,nonce:o,gotrue_meta_security:{captcha_token:r==null?void 0:r.captchaToken}},xform:et}),{data:c,error:d}=l;if(d)return this._returnResult({data:{user:null,session:null},error:d});if(!c||!c.session||!c.user){const u=new Zr;return this._returnResult({data:{user:null,session:null},error:u})}return c.session&&(await this._saveSession(c.session),await this._notifyAllSubscribers("SIGNED_IN",c.session)),this._returnResult({data:c,error:d})}catch(r){if(U(r))return this._returnResult({data:{user:null,session:null},error:r});throw r}}async signInWithOtp(e){var r,s,n,a,o;try{if("email"in e){const{email:l,options:c}=e;let d=null,u=null;this.flowType==="pkce"&&([d,u]=await es(this.storage,this.storageKey));const{error:p}=await H(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:l,data:(r=c==null?void 0:c.data)!==null&&r!==void 0?r:{},create_user:(s=c==null?void 0:c.shouldCreateUser)!==null&&s!==void 0?s:!0,gotrue_meta_security:{captcha_token:c==null?void 0:c.captchaToken},code_challenge:d,code_challenge_method:u},redirectTo:c==null?void 0:c.emailRedirectTo});return this._returnResult({data:{user:null,session:null},error:p})}if("phone"in e){const{phone:l,options:c}=e,{data:d,error:u}=await H(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:l,data:(n=c==null?void 0:c.data)!==null&&n!==void 0?n:{},create_user:(a=c==null?void 0:c.shouldCreateUser)!==null&&a!==void 0?a:!0,gotrue_meta_security:{captcha_token:c==null?void 0:c.captchaToken},channel:(o=c==null?void 0:c.channel)!==null&&o!==void 0?o:"sms"}});return this._returnResult({data:{user:null,session:null,messageId:d==null?void 0:d.message_id},error:u})}throw new xi("You must provide either an email or phone number.")}catch(l){if(await Ae(this.storage,`${this.storageKey}-code-verifier`),U(l))return this._returnResult({data:{user:null,session:null},error:l});throw l}}async verifyOtp(e){var r,s;try{let n,a;"options"in e&&(n=(r=e.options)===null||r===void 0?void 0:r.redirectTo,a=(s=e.options)===null||s===void 0?void 0:s.captchaToken);const{data:o,error:l}=await H(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},e),{gotrue_meta_security:{captcha_token:a}}),redirectTo:n,xform:et});if(l)throw l;if(!o)throw new Error("An error occurred on token verification.");const c=o.session,d=o.user;return c!=null&&c.access_token&&(await this._saveSession(c),await this._notifyAllSubscribers(e.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",c)),this._returnResult({data:{user:d,session:c},error:null})}catch(n){if(U(n))return this._returnResult({data:{user:null,session:null},error:n});throw n}}async signInWithSSO(e){var r,s,n,a,o;try{let l=null,c=null;this.flowType==="pkce"&&([l,c]=await es(this.storage,this.storageKey));const d=await H(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in e?{provider_id:e.providerId}:null),"domain"in e?{domain:e.domain}:null),{redirect_to:(s=(r=e.options)===null||r===void 0?void 0:r.redirectTo)!==null&&s!==void 0?s:void 0}),!((n=e==null?void 0:e.options)===null||n===void 0)&&n.captchaToken?{gotrue_meta_security:{captcha_token:e.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:l,code_challenge_method:c}),headers:this.headers,xform:d5});return!((a=d.data)===null||a===void 0)&&a.url&&Ne()&&!(!((o=e.options)===null||o===void 0)&&o.skipBrowserRedirect)&&window.location.assign(d.data.url),this._returnResult(d)}catch(l){if(await Ae(this.storage,`${this.storageKey}-code-verifier`),U(l))return this._returnResult({data:null,error:l});throw l}}async reauthenticate(){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._reauthenticate())}async _reauthenticate(){try{return await this._useSession(async e=>{const{data:{session:r},error:s}=e;if(s)throw s;if(!r)throw new Me;const{error:n}=await H(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:r.access_token});return this._returnResult({data:{user:null,session:null},error:n})})}catch(e){if(U(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async resend(e){try{const r=`${this.url}/resend`;if("email"in e){const{email:s,type:n,options:a}=e,{error:o}=await H(this.fetch,"POST",r,{headers:this.headers,body:{email:s,type:n,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}},redirectTo:a==null?void 0:a.emailRedirectTo});return this._returnResult({data:{user:null,session:null},error:o})}else if("phone"in e){const{phone:s,type:n,options:a}=e,{data:o,error:l}=await H(this.fetch,"POST",r,{headers:this.headers,body:{phone:s,type:n,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}}});return this._returnResult({data:{user:null,session:null,messageId:o==null?void 0:o.message_id},error:l})}throw new xi("You must provide either an email or phone number and a type")}catch(r){if(U(r))return this._returnResult({data:{user:null,session:null},error:r});throw r}}async getSession(){return await this.initializePromise,await this._acquireLock(-1,async()=>this._useSession(async r=>r))}async _acquireLock(e,r){this._debug("#_acquireLock","begin",e);try{if(this.lockAcquired){const s=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),n=(async()=>(await s,await r()))();return this.pendingInLock.push((async()=>{try{await n}catch{}})()),n}return await this.lock(`lock:${this.storageKey}`,e,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;const s=r();for(this.pendingInLock.push((async()=>{try{await s}catch{}})()),await s;this.pendingInLock.length;){const n=[...this.pendingInLock];await Promise.all(n),this.pendingInLock.splice(0,n.length)}return await s}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(e){this._debug("#_useSession","begin");try{const r=await this.__loadSession();return await e(r)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lockAcquired||this._debug("#__loadSession()","used outside of an acquired lock!",new Error().stack);try{let e=null;const r=await _r(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",r),r!==null&&(this._isValidSession(r)?e=r:(this._debug("#getSession()","session from storage is not val
764id"),await this._removeSession())),!e)return{data:{session:null},error:null};const s=e.expires_at?e.expires_at*1e3-Date.now()<Do:!1;if(this._debug("#__loadSession()",`session has${s?"":" not"} expired`,"expires_at",e.expires_at),!s){if(this.userStorage){const o=await _r(this.userStorage,this.storageKey+"-user");o!=null&&o.user?e.user=o.user:e.user=Vo()}if(this.storage.isServer&&e.user&&!e.user.__isUserNotAvailableProxy){const o={value:this.suppressGetSessionWarning};e.user=a5(e.user,o),o.value&&(this.suppressGetSessionWarning=!0)}return{data:{session:e},error:null}}const{data:n,error:a}=await this._callRefreshToken(e.refresh_token);return a?this._returnResult({data:{session:null},error:a}):this._returnResult({data:{session:n},error:null})}finally{this._debug("#__loadSession()","end")}}async getUser(e){if(e)return await this._getUser(e);await this.initializePromise;const r=await this._acquireLock(-1,async()=>await this._getUser());return r.data.user&&(this.suppressGetSessionWarning=!0),r}async _getUser(e){try{return e?await H(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:e,xform:Xt}):await this._useSession(async r=>{var s,n,a;const{data:o,error:l}=r;if(l)throw l;return!(!((s=o.session)===null||s===void 0)&&s.access_token)&&!this.hasCustomAuthorizationHeader?{data:{user:null},error:new Me}:await H(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(a=(n=o.session)===null||n===void 0?void 0:n.access_token)!==null&&a!==void 0?a:void 0,xform:Xt})})}catch(r){if(U(r))return MR(r)&&(await this._removeSession(),await Ae(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({data:{user:null},error:r});throw r}}async updateUser(e,r={}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._updateUser(e,r))}async _updateUser(e,r={}){try{return await this._useSession(async s=>{const{data:n,error:a}=s;
764if(a)throw a;if(!n.session)throw new Me;const o=n.session;let l=null,c=null;this.flowType==="pkce"&&e.email!=null&&([l,c]=await es(this.storage,this.storageKey));const{data:d,error:u}=await H(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:r==null?void 0:r.emailRedirectTo,body:Object.assign(Object.assign({},e),{code_challenge:l,code_challenge_method:c}),jwt:o.access_token,xform:Xt});if(u)throw u;return o.user=d.user,await this._saveSession(o),await this._notifyAllSubscribers("USER_UPDATED",o),this._returnResult({data:{user:o.user},error:null})})}catch(s){if(await Ae(this.storage,`${this.storageKey}-code-verifier`),U(s))return this._returnResult({data:{user:null},error:s});throw s}}async setSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._setSession(e))}async _setSession(e){try{if(!e.access_token||!e.refresh_token)throw new Me;const r=Date.now()/1e3;let s=r,n=!0,a=null;const{payload:o}=Mo(e.access_token);if(o.exp&&(s=o.exp,n=s<=r),n){const{data:l,error:c}=await this._callRefreshToken(e.refresh_token);if(c)return this._returnResult({data:{user:null,session:null},error:c});if(!l)return{data:{user:null,session:null},error:null};a=l}else{const{data:l,error:c}=await this._getUser(e.access_token);if(c)throw c;a={access_token:e.access_token,refresh_token:e.refresh_token,user:l.user,token_type:"bearer",expires_in:s-r,expires_at:s},await this._saveSession(a),await this._notifyAllSubscribers("SIGNED_IN",a)}return this._returnResult({data:{user:a.user,session:a},error:null})}catch(r){if(U(r))return this._returnResult({data:{session:null,user:null},error:r});throw r}}async refreshSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._refreshSession(e))}async _refreshSession(e){try{return await this._useSession(async r=>{var s;if(!e){const{data:o,error:l}=r;if(l)throw l;e=(s=o.session)!==null&&s!==void 0?s:void 0}if(!(e!=null&&e.refresh_token))throw new Me;const{data:n,error:a}=await this._callRefreshToken(e.refresh_token);return a?this._returnResult({data:{user:null,session:null},error:a}):n?this._returnResult({data:{user:n.user,session:n},error:null}):this._returnResult({data:{user:null,session:null},error:null})})}catch(r){if(U(r))return this._returnResult({data:{user:null,session:null},error:r});throw r}}async _getSessionFromURL(e,r){try{if(!Ne())throw new vi("No browser detected.");if(e.error||e.error_description||e.error_code)throw new vi(e.error_description||"Error in URL with unspecified error_description",{error:e.error||"unspecified_error",code:e.error_code||"unspecified_code"});switch(r){case"implicit":if(this.flowType==="pkce")throw new jp("Not a valid PKCE flow url.");break;case"pkce":if(this.flowType==="implicit")throw new vi("Not a valid implicit grant flow url.");break;default:}if(r==="pkce"){if(this._debug("#_initialize()","begin","is PKCE flow",!0),!e.code)throw new jp("No code detected.");const{data:w,error:_}=await this._exchangeCodeForSession(e.code);if(_)throw _;const j=new URL(window.location.href);return j.searchParams.delete("code"),window.history.replaceState(window.history.state,"",j.toString()),{data:{session:w.session,redirectType:null},error:null}}const{provider_token:s,provider_refresh_token:n,access_token:a,refresh_token:o,expires_in:l,expires_at:c,token_type:d}=e;if(!a||!l||!o||!d)throw new vi("No session defined in URL");const u=Math.round(Date.now()/1e3),p=parseInt(l);let h=u+p;c&&(h=parseInt(c));const f=h-u;f*1e3<=as&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${f}s, should have been closer to ${p}s`);const x=h-p;u-x>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",x,h,u):u-x<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clock for skew",x,h,u);const{data:m,error:y}=await this._getUser(a);if(y)throw y;const b={provider_token:s,provider_refresh_token:n,access_token:a,expires_in:p,expires_at:h,refresh_token:o,token_type:d,user:m.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),this._returnResult({data:{session:b,redirectType:e.type},error:null})}catch(s){if(U(s))return this._returnResult({data:{session:null,redirectType:null},error:s});throw s}}_isImplicitGrantCallback(e){return typeof this.detectSessionInUrl=="function"?this.detectSessionInUrl(new URL(window.location.href),e):!!(e.access_token||e.error_description)}async _isPKCECallback(e){const r=await _r(this.storage,`${this.storageKey}-code-verifier`);return!!(e.code&&r)}async signOut(e={scope:"global"}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._signOut(e))}async _signOut({scope:e}={scope:"global"}){return await this._useSession(async r=>{var s;const{data:n,error:a}=r;if(a)return this._returnResult({error:a});const o=(s=n.session)===null||s===void 0?void 0:s.access_token;if(o){const{error:l}=await this.admin.signOut(o,e);
764if(l&&!(LR(l)&&(l.status===404||l.status===401||l.status===403)))return this._returnResult({error:l})}return e!=="others"&&(await this._removeSession(),await Ae(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({error:null})})}onAuthStateChange(e){const r=qR(),s={id:r,callback:e,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",r),this.stateChangeEmitters.delete(r)}};return this._debug("#onAuthStateChange()","registered callback with id",r),this.stateChangeEmitters.set(r,s),(async()=>(await this.initializePromise,await this._acquireLock(-1,async()=>{this._emitInitialSession(r)})))(),{data:{subscription:s}}}async _emitInitialSession(e){return await this._useSession(async r=>{var s,n;try{const{data:{session:a},error:o}=r;if(o)throw o;await((s=this.stateChangeEmitters.get(e))===null||s===void 0?void 0:s.callback("INITIAL_SESSION",a)),this._debug("INITIAL_SESSION","callback id",e,"session",a)}catch(a){await((n=this.stateChangeEmitters.get(e))===null||n===void 0?void 0:n.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",e,"error",a),console.error(a)}})}async resetPasswordForEmail(e,r={}){let s=null,n=null;this.flowType==="pkce"&&([s,n]=await es(this.storage,this.storageKey,!0));try{return await H(this.fetch,"POST",`${this.url}/recover`,{body:{email:e,code_challenge:s,code_challenge_method:n,gotrue_meta_security:{captcha_token:r.captchaToken}},headers:this.headers,redirectTo:r.redirectTo})}catch(a){if(await Ae(this.storage,`${this.storageKey}-code-verifier`),U(a))return this._returnResult({data:null,error:a});throw a}}async getUserIdentities(){var e;try{const{data:r,error:s}=await this.getUser();if(s)throw s;return this._returnResult({data:{identities:(e=r.user.identities)!==null&&e!==void 0?e:[]},error:null})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}}async linkIdentity(e){return"token"in e?this.linkIdentityIdToken(e):this.linkIdentityOAuth(e)}async linkIdentityOAuth(e){var r;try{const{data:s,error:n}=await this._useSession(async a=>{var o,l,c,d,u;const{data:p,error:h}=a;if(h)throw h;const f=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,e.provider,{redirectTo:(o=e.options)===null||o===void 0?void 0:o.redirectTo,scopes:(l=e.options)===null||l===void 0?void 0:l.scopes,queryParams:(c=e.options)===null||c===void 0?void 0:c.queryParams,skipBrowserRedirect:!0});return await H(this.fetch,"GET",f,{headers:this.headers,jwt:(u=(d=p.session)===null||d===void 0?void 0:d.access_token)!==null&&u!==void 0?u:void 0})});if(n)throw n;return Ne()&&!(!((r=e.options)===null||r===void 0)&&r.skipBrowserRedirect)&&window.location.assign(s==null?void 0:s.url),this._returnResult({data:{provider:e.provider,url:s==null?void 0:s.url},error:null})}catch(s){if(U(s))return this._returnResult({data:{provider:e.provider,url:null},error:s});throw s}}async linkIdentityIdToken(e){return await this._useSession(async r=>{var s;try{const{error:n,data:{session:a}}=r;if(n)throw n;const{options:o,provider:l,token:c,access_token:d,nonce:u}=e,p=await H(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,jwt:(s=a==null?void 0:a.access_token)!==null&&s!==void 0?s:void 0,body:{provider:l,id_token:c,access_token:d,nonce:u,link_identity:!0,gotrue_meta_security:{captcha_token:o==null?void 0:o.captchaToken}},xform:et}),{data:h,error:f}=p;return f?this._returnResult({data:{user:null,session:null},error:f}):!h||!h.session||!h.user?this._returnResult({data:{user:null,session:null},error:new Zr}):(h.session&&(await this._saveSession(h.session),await this._notifyAllSubscribers("USER_UPDATED",h.session)),this._returnResult({data:h,error:f}))}catch(n){if(await Ae(this.storage,`${this.storageKey}-code-verifier`),U(n))return this._returnResult({data:{user:null,session:null},error:n});throw n}})}async unlinkIdentity(e){try{return await this._useSession(async r=>{var s,n;const{data:a,error:o}=r;if(o)throw o;return await H(this.fetch,"DELETE",`${this.url}/user/identities/${e.identity_id}`,{headers:this.headers,jwt:(n=(s=a.session)===null||s===void 0?void 0:s.access_token)!==null&&n!==void 0?n:void 0})})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}}async _refreshAccessToken(e){const r=`#_refreshAccessToken(${e.substring(0,5)}...)`;this._debug(r,"begin");try{const s=Date.now();return await JR(async n=>(n>0&&await YR(200*Math.pow(2,n-1)),this._debug(r,"refreshing attempt",n),await H(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:e},headers:this.headers,xform:et})),(n,a)=>{const o=200*Math.pow(2,n);return a&&Lo(a)&&Date.now()+o-s<as})}catch(s){if(this._debug(r,"error",s),U(s))return this._returnResult({data:{session:null,user:null},error:s});throw s}finally{this._debug(r,"end")}}_isValidSession(e){return typeof e=="object"&&e!==null&&"access_token"in e&&"refresh_token"in e&&"expires_at"in e}async _handleProviderSignIn(e,r){const s=await this._getUrlForProvider(`${this.url}/authorize`,e,{redirectTo:r.redirectTo,scopes:r.scopes,queryParams:r.queryParams});return this._debug("#_handleProviderSignIn()","provider",e,"options",r,"url",s),Ne()&&!r.skipBrowserRedirect&&window.location.assign(s),{data:{provider:e,url:s},error:null}}async _recoverAndRefresh(){var e,r;const s="#_recoverAndRefresh()";this._debug(s,"begin");try{const n=await _r(this.storage,this.storageKey);if(n&&this.userStorage){let o=await _r(this.userStorage,this.storageKey+"-user");!this.storage.isServer&&Object.is(this.storage,this.userStorage)&&!o&&(o={user:n.user},await os(this.userStorage,this.storageKey+"-user",o)),n.user=(e=o==null?void 0:o.user)!==null&&e!==void 0?e:Vo()}else if(n&&!n.user&&!n.user){const o=await _r(this.storage,this.storageKey+"-user");o&&(o!=null&&o.user)?(n.user=o.user,await Ae(this.storage,this.storageKey+"-user"),await os(this.storage,this.storageKey,n)):n.user=Vo()}if(this._debug(s,"session from storage",n),!this._isValidSession(n)){this._debug(s,"session is not val
764id"),n!==null&&await this._removeSession();return}const a=((r=n.expires_at)!==null&&r!==void 0?r:1/0)*1e3-Date.now()<Do;if(this._debug(s,`session has${a?"":" not"} expired with margin of ${Do}s`),a){if(this.autoRefreshToken&&n.refresh_token){const{error:o}=await this._callRefreshToken(n.refresh_token);o&&(console.error(o),Lo(o)||(this._debug(s,"refresh failed with a non-retryable error, removing the session",o),await this._removeSession()))}}else if(n.user&&n.user.__isUserNotAvailableProxy===!0)try{const{data:o,error:l}=await this._getUser(n.access_token);!l&&(o!=null&&o.user)?(n.user=o.user,await this._saveSession(n),await this._notifyAllSubscribers("SIGNED_IN",n)):this._debug(s,"could not get user data, skipping SIGNED_IN notification")}catch(o){console.error("Error getting user data:",o),this._debug(s,"error getting user data, skipping SIGNED_IN notification",o)}else await this._notifyAllSubscribers("SIGNED_IN",n)}catch(n){this._debug(s,"error",n),console.error(n);return}finally{this._debug(s,"end")}}async _callRefreshToken(e){var r,s;if(!e)throw new Me;if(this.refreshingDeferred)return this.refreshingDeferred.promise;const n=`#_callRefreshToken(${e.substring(0,5)}...)`;this._debug(n,"begin");try{this.refreshingDeferred=new Sa;const{data:a,error:o}=await this._refreshAccessToken(e);if(o)throw o;if(!a.session)throw new Me;await this._saveSession(a.session),await this._notifyAllSubscribers("TOKEN_REFRESHED",a.session);const l={data:a.session,error:null};return this.refreshingDeferred.resolve(l),l}catch(a){if(this._debug(n,"error",a),U(a)){const o={data:null,error:a};return Lo(a)||await this._removeSession(),(r=this.refreshingDeferred)===null||r===void 0||r.resolve(o),o}throw(s=this.refreshingDeferred)===null||s===void 0||s.reject(a),a}finally{this.refreshingDeferred=null,this._debug(n,"end")}}async _notifyAllSubscribers(e,r,s=!0){const n=`#_notifyAllSubscribers(${e})`;this._debug(n,"begin",r,`broadcast = ${s}`);try{this.broadcastChannel&&s&&this.broadcastChannel.postMessage({event:e,session:r});const a=[],o=Array.from(this.stateChangeEmitters.values()).map(async l=>{try{await l.callback(e,r)}catch(c){a.push(c)}});if(await Promise.all(o),a.length>0){for(let l=0;l<a.length;l+=1)console.error(a[l]);throw a[0]}}finally{this._debug(n,"end")}}async _saveSession(e){this._debug("#_saveSession()",e),this.suppressGetSessionWarning=!0,await Ae(this.storage,`${this.storageKey}-code-verifier`);const r=Object.assign({},e),s=r.user&&r.user.__isUserNotAvailableProxy===!0;if(this.userStorage){!s&&r.user&&await os(this.userStorage,this.storageKey+"-user",{user:r.user});const n=Object.assign({},r);delete n.user;const a=Np(n);await os(this.storage,this.storageKey,a)}else{const n=Np(r);await os(this.storage,this.storageKey,n)}}async _removeSession(){this._debug("#_removeSession()"),this.suppressGetSessionWarning=!1,await Ae(this.storage,this.storageKey),await Ae(this.storage,this.storageKey+"-code-verifier"),await Ae(this.storage,this.storageKey+"-user"),this.userStorage&&await Ae(this.userStorage,this.storageKey+"-user"),await this._notifyAllSubscribers("SIGNED_OUT",null)}_removeVisibilityChangedCallback(){this._debug("#_removeVisibilityChangedCallback()");const e=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{e&&Ne()&&(window!=null&&window.removeEventListener)&&window.removeEventListener("visibilitychange",e)}catch(r){console.error("removing visibilitychange callback failed",r)}}async _startAutoRefresh(){await this._stopAutoRefresh(),this._debug("#_startAutoRefresh()");const e=setInterval(()=>this._autoRefreshTokenTick(),as);this.autoRefreshTicker=e,e&&typeof e=="object"&&typeof e.unref=="function"?e.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(e),setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const e=this.autoRefreshTicker;this.autoRefreshTicker=null,e&&clearInterval(e)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,async()=>{try{const e=Date.now();try{return await this._useSession(async r=>{const{data:{session:s}}=r;if(!s||!s.refresh_token||!s.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const n=Math.floor((s.expires_at*1e3-e)/as);this._debug("#_autoRefreshTokenTick()",`access token expires in ${n} ticks, a tick lasts ${as}ms, refresh threshold is ${Ul} ticks`),n<=Ul&&await this._callRefreshToken(s.refresh_token)})}catch(r){console.error("Auto refresh tick failed with error. This is likely a transient error.",r)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(e){if(e.isAcquireTimeout||e instanceof ax)this._debug("auto refresh token tick lock not available");else throw e}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!Ne()||!(window!=null&&window.addEventListener))return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>await this._onVisibilityChanged(!1),window==null||window.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(e){console.error("_handleVisibilityChange",e)}}async _onVisibilityChanged(e){const r=`#_onVisibilityChanged(${e})`;this._debug(r,"visibilityState",document.visibilityState),document.visibilityState==="visible"?(this.autoRefreshToken&&this._startAutoRefresh(),e||(
764await this.initializePromise,await this._acquireLock(-1,async()=>{if(document.visibilityState!=="visible"){this._debug(r,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()}))):document.visibilityState==="hidden"&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(e,r,s){const n=[`provider=${encodeURIComponent(r)}`];if(s!=null&&s.redirectTo&&n.push(`redirect_to=${encodeURIComponent(s.redirectTo)}`),s!=null&&s.scopes&&n.push(`scopes=${encodeURIComponent(s.scopes)}`),this.flowType==="pkce"){const[a,o]=await es(this.storage,this.storageKey),l=new URLSearchParams({code_challenge:`${encodeURIComponent(a)}`,code_challenge_method:`${encodeURIComponent(o)}`});n.push(l.toString())}if(s!=null&&s.queryParams){const a=new URLSearchParams(s.queryParams);n.push(a.toString())}return s!=null&&s.skipBrowserRedirect&&n.push(`skip_http_redirect=${s.skipBrowserRedirect}`),`${e}?${n.join("&")}`}async _unenroll(e){try{return await this._useSession(async r=>{var s;const{data:n,error:a}=r;return a?this._returnResult({data:null,error:a}):await H(this.fetch,"DELETE",`${this.url}/factors/${e.factorId}`,{headers:this.headers,jwt:(s=n==null?void 0:n.session)===null||s===void 0?void 0:s.access_token})})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}}async _enroll(e){try{return await this._useSession(async r=>{var s,n;const{data:a,error:o}=r;if(o)return this._returnResult({data:null,error:o});const l=Object.assign({friendly_name:e.friendlyName,factor_type:e.factorType},e.factorType==="phone"?{phone:e.phone}:e.factorType==="totp"?{issuer:e.issuer}:{}),{data:c,error:d}=await H(this.fetch,"POST",`${this.url}/factors`,{body:l,headers:this.headers,jwt:(s=a==null?void 0:a.session)===null||s===void 0?void 0:s.access_token});return d?this._returnResult({data:null,error:d}):(e.factorType==="totp"&&c.type==="totp"&&(!((n=c==null?void 0:c.totp)===null||n===void 0)&&n.qr_code)&&(c.totp.qr_code=`data:image/svg+xml;utf-8,${c.totp.qr_code}`),this._returnResult({data:c,error:null}))})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}}async _verify(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async r=>{var s;const{data:n,error:a}=r;if(a)return this._returnResult({data:null,error:a});const o=Object.assign({challenge_id:e.challengeId},"webauthn"in e?{webauthn:Object.assign(Object.assign({},e.webauthn),{credential_response:e.webauthn.type==="create"?T5(e.webauthn.credential_response):A5(e.webauthn.credential_response)})}:{code:e.code}),{data:l,error:c}=await H(this.fetch,"POST",`${this.url}/factors/${e.factorId}/verify`,{body:o,headers:this.headers,jwt:(s=n==null?void 0:n.session)===null||s===void 0?void 0:s.access_token});return c?this._returnResult({data:null,error:c}):(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+l.expires_in},l)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",l),this._returnResult({data:l,error:c}))})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}})}async _challenge(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async r=>{var s;const{data:n,error:a}=r;if(a)return this._returnResult({data:null,error:a});const o=await H(this.fetch,"POST",`${this.url}/factors/${e.factorId}/challenge`,{body:e,headers:this.headers,jwt:(s=n==null?void 0:n.session)===null||s===void 0?void 0:s.access_token});if(o.error)return o;const{data:l}=o;if(l.type!=="webauthn")return{data:l,error:null};switch(l.webauthn.type){case"create":return{data:Object.assign(Object.assign({},l),{webauthn:Object.assign(Object.assign({},l.webauthn),{credential_options:Object.assign(Object.assign({},l.webauthn.credential_options),{publicKey:k5(l.webauthn.credential_options.publicKey)})})}),error:null};case"request":return{data:Object.assign(Object.assign({},l),{webauthn:Object.assign(Object.assign({},l.webauthn),{credential_options:Object.assign(Object.assign({},l.webauthn.credential_options),{publicKey:E5(l.webauthn.credential_options.publicKey)})})}),error:null}}})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}})}async _challengeAndVerify(e){const{data:r,error:s}=await this._challenge({factorId:e.factorId});return s?this._returnResult({data:null,error:s}):await this._verify({factorId:e.factorId,challengeId:r.id,code:e.code})}async _listFactors(){var e;const{data:{user:r},error:s}=await this.getUser();if(s)return{data:null,error:s};const n={all:[],phone:[],totp:[],webauthn:[]};for(const a of(e=r==null?void 0:r.factors)!==null&&e!==void 0?e:[])n.all.push(a),a.status==="verified"&&n[a.factor_type].push(a);return{data:n,error:null}}async _getAuthenticatorAssuranceLevel(){var e,r;const{data:{session:s},error:n}
764=await this.getSession();if(n)return this._returnResult({data:null,error:n});if(!s)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const{payload:a}=Mo(s.access_token);let o=null;a.aal&&(o=a.aal);let l=o;((r=(e=s.user.factors)===null||e===void 0?void 0:e.filter(u=>u.status==="verified"))!==null&&r!==void 0?r:[]).length>0&&(l="aal2");const d=a.amr||[];return{data:{currentLevel:o,nextLevel:l,currentAuthenticationMethods:d},error:null}}async _getAuthorizationDetails(e){try{return await this._useSession(async r=>{const{data:{session:s},error:n}=r;return n?this._returnResult({data:null,error:n}):s?await H(this.fetch,"GET",`${this.url}/oauth/authorizations/${e}`,{headers:this.headers,jwt:s.access_token,xform:a=>({data:a,error:null})}):this._returnResult({data:null,error:new Me})})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}}async _approveAuthorization(e,r){try{return await this._useSession(async s=>{const{data:{session:n},error:a}=s;if(a)return this._returnResult({data:null,error:a});if(!n)return this._returnResult({data:null,error:new Me});const o=await H(this.fetch,"POST",`${this.url}/oauth/authorizations/${e}/consent`,{headers:this.headers,jwt:n.access_token,body:{action:"approve"},xform:l=>({data:l,error:null})});return o.data&&o.data.redirect_url&&Ne()&&!(r!=null&&r.skipBrowserRedirect)&&window.location.assign(o.data.redirect_url),o})}catch(s){if(U(s))return this._returnResult({data:null,error:s});throw s}}async _denyAuthorization(e,r){try{return await this._useSession(async s=>{const{data:{session:n},error:a}=s;
764if(a)return this._returnResult({data:null,error:a});if(!n)return this._returnResult({data:null,error:new Me});const o=await H(this.fetch,"POST",`${this.url}/oauth/authorizations/${e}/consent`,{headers:this.headers,jwt:n.access_token,body:{action:"deny"},xform:l=>({data:l,error:null})});return o.data&&o.data.redirect_url&&Ne()&&!(r!=null&&r.skipBrowserRedirect)&&window.location.assign(o.data.redirect_url),o})}catch(s){if(U(s))return this._returnResult({data:null,error:s});throw s}}async _listOAuthGrants(){try{return await this._useSession(async e=>{const{data:{session:r},error:s}=e;return s?this._returnResult({data:null,error:s}):r?await H(this.fetch,"GET",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:r.access_token,xform:n=>({data:n,error:null})}):this._returnResult({data:null,error:new Me})})}catch(e){if(U(e))return this._returnResult({data:null,error:e});throw e}}async _revokeOAuthGrant(e){try{return await this._useSession(async r=>{const{data:{session:s},error:n}=r;return n?this._returnResult({data:null,error:n}):s?(await H(this.fetch,"DELETE",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:s.access_token,query:{client_id:e.clientId},noResolveJson:!0}),{data:{},error:null}):this._returnResult({data:null,error:new Me})})}catch(r){if(U(r))return this._returnResult({data:null,error:r});throw r}}async fetchJwk(e,r={keys:[]}){let s=r.keys.find(l=>l.kid===e);if(s)return s;const n=Date.now();if(s=this.jwks.keys.find(l=>l.kid===e),s&&this.jwks_cached_at+IR>n)return s;const{data:a,error:o}=await H(this.fetch,"GET",`${this.url}/.well-known/jwks.json`,{headers:this.headers});if(o)throw o;return!a.keys||a.keys.length===0||(this.jwks=a,this.jwks_cached_at=n,s=a.keys.find(l=>l.kid===e),!s)?null:s}async getClaims(e,r={}){try{let s=e;if(!s){const{data:f,error:x}
764=await this.getSession();if(x||!f.session)return this._returnResult({data:null,error:x});s=f.session.access_token}const{header:n,payload:a,signature:o,raw:{header:l,payload:c}}=Mo(s);r!=null&&r.allowExpired||s5(a.exp);const d=!n.alg||n.alg.startsWith("HS")||!n.kid||!("crypto"in globalThis&&"subtle"in globalThis.crypto)?null:await this.fetchJwk(n.kid,r!=null&&r.keys?{keys:r.keys}:r==null?void 0:r.jwks);if(!d){const{error:f}=await this.getUser(s);if(f)throw f;return{data:{claims:a,header:n,signature:o},error:null}}const u=n5(n.alg),p=await crypto.subtle.importKey("jwk",d,u,!0,["verify"]);if(!await crypto.subtle.verify(u,p,o,HR(`${l}.${c}`)))throw new Hl("Invalid JWT signature");return{data:{claims:a,header:n,signature:o},error:null}}catch(s){if(U(s))return this._returnResult({data:null,error:s});throw s}}}On.nextInstanceID={};const L5=On,M5="2.89.0";let on="";typeof Deno<"u"?on="deno":typeof document<"u"?on="web":typeof navigator<"u"&&navigator.product==="ReactNative"?on="react-native":on="node";const V5={"X-Client-Info":`supabase-js-${on}/${M5}`},$5={headers:V5},F5={schema:"public"},U5={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},B5={};function In(t){"@babel/helpers - typeof";return In=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},In(t)}function z5(t,e){if(In(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var s=r.call(t,e||"default");if(In(s)!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function H5(t){var e=z5(t,"string");return In(e)=="symbol"?e:e+""}function W5(t,e,r){return(e=H5(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Dp(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,s)}return r}function ye(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Dp(Object(r),!0).forEach(function(s){W5(t,s,r[s])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Dp(Object(r)).forEach(function(s){Object.defineProperty(t,s,Object.getOwnPropertyDescriptor(r,s))})}return t}const q5=t=>t?(...e)=>t(...e):(...e)=>fetch(...e),G5=()=>Headers,K5=(t,e,r)=>{const s=q5(r),n=G5();return async(a,o)=>{var l;const c=(l=await e())!==null&&l!==void 0?l:t;let d=new n(o==null?void 0:o.headers);return d.has("apikey")||d.set("apikey",t),d.has("Authorization")||d.set("Authorization",`Bearer ${c}`),s(a,ye(ye({},o),{},{headers:d}))}};function Y5(t){return t.endsWith("/")?t:t+"/"}function J5(t,e){var r,s;const{db:n,auth:a,realtime:o,global:l}=t,{db:c,auth:d,realtime:u,global:p}=e,h={db:ye(ye({},c),n),auth:ye(ye({},d),a),realtime:ye(ye({},u),o),storage:{},global:ye(ye(ye({},p),l),{},{headers:ye(ye({},(r=p==null?void 0:p.headers)!==null&&r!==void 0?r:{}),(s=l==null?void 0:l.headers)!==null&&s!==void 0?s:{})}),accessToken:async()=>""};return t.accessToken?h.accessToken=t.accessToken:delete h.accessToken,h}function X5(t){const e=t==null?void 0:t.trim();if(!e)throw new Error("supabaseUrl is required.");if(!e.match(/^https?:\/\//i))throw new Error("Invalid supabaseUrl: Must be a valid HTTP or HTTPS URL.");try{return new URL(Y5(e))}catch{throw Error("Invalid supabaseUrl: Provided URL is malformed.")}}var Q5=class extends L5{constructor(t){super(t)}},Z5=class{constructor(t,e,r){var s,n;this.supabaseUrl=t,this.supabaseKey=e;const a=X5(t);if(!e)throw new Error("supabaseKey is required.");this.realtimeUrl=new URL("realtime/v1",a),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",a),this.storageUrl=new URL("storage/v1",a),this.functionsUrl=new URL("functions/v1",a);const o=`sb-${a.hostname.split(".")[0]}-auth-token`,l={db:F5,realtime:B5,auth:ye(ye({},U5),{},{storageKey:o}),global:$5},c=J5(r??{},l);if(this.storageKey=(s=c.auth.storageKey)!==null&&s!==void 0?s:"",this.headers=(n=c.global.headers)!==null&&n!==void 0?n:{},c.accessToken)this.accessToken=c.accessToken,this.auth=new Proxy({},{get:(u,p)=>{throw new Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(p)} is not possible`)}});else{var d;this.auth=this._initSupabaseAuthClient((d=c.auth)!==null&&d!==void 0?d:{},this.headers,c.global.fetch)}this.fetch=K5(e,this._getAccessToken.bind(this),c.global.fetch),this.realtime=this._initRealtimeClient(ye({headers:this.headers,accessToken:this._getAccessToken.bind(this)},c.realtime)),this.accessToken&&this.accessToken().then(u=>this.realtime.setAuth(u)).catch(u=>console.warn("Failed to set initial Realtime auth token:",u)),this.rest=new RP(new URL("rest/v1",a).href,{headers:this.headers,schema:c.db.schema,fetch:this.fetch}),this.storage=new CR(this.storageUrl.href,this.headers,this.fetch,r==null?void 0:r.storage),c.accessToken||this._listenForAuthEvents()}get functions(){return new AP(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}from(t){return this.rest.from(t)}schema(t){return this.rest.schema(t)}rpc(t,e={},r={head:!1,get:!1,count:void 0}){return this.rest.rpc(t,e,r)}channel(t,e={config:{}}){return this.realtime.channel(t,e)}getChannels(){return this.realtime.getChannels()}removeChannel(t){return this.realtime.removeChannel(t)}removeAllChannels(){return this.realtime.removeAllChannels()}async _getAccessToken(){var t=this,e,r;if(t.accessToken)return await t.accessToken();const{data:s}=await t.auth.getSession();return(e=(r=s.session)===null||r===void 0?void 0:r.access_token)!==null&&e!==void 0?e:t.supabaseKey}_initSupabaseAuthClient({autoRefreshToken:t,persistSession:e,detectSessionInUrl:r,storage:s,userStorage:n,storageKey:a,flowType:o,lock:l,debug:c,throwOnError:d},u,p){const h={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new Q5({url:this.authUrl.href,headers:ye(ye({},h),u),storageKey:a,autoRefreshToken:t,persistSession:e,detectSessionInUrl:r,storage:s,userStorage:n,flowType:o,lock:l,debug:c,throwOnError:d,fetch:p,hasCustomAuthorizationHeader:Object.keys(this.headers).some(f=>f.toLowerCase()==="authorization")})}_initRealtimeClient(t){return new YP(this.realtimeUrl.href,ye(ye({},t),{},{params:ye(ye({},{apikey:this.supabaseKey}),t==null?void 0:t.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((t,e)=>{this._handleTokenChanged(t,"CLIENT",e==null?void 0:e.access_token)})}_handleTokenChanged(t,e,r){(t==="TOKEN_REFRESHED"||t==="SIGNED_IN")&&this.changedAccessToken!==r?(this.changedAccessToken=r,this.realtime.setAuth(r)):t==="SIGNED_OUT"&&(this.realtime.setAuth(),e=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}};
764const eO=(t,e,r)=>new Z5(t,e,r);function tO(){if(typeof window<"u"||typeof process>"u")return!1;const t=process.version;if(t==null)return!1;const e=t.match(/^v(\d+)\./);return e?parseInt(e[1],10)<=18:!1}tO()&&console.warn("⚠️  Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. Please upgrade to Node.js 20 or later. For more information, visit: https://github.com/orgs/supabase/discussions/37217");const rO="https://hefrltwljprplbvzdrxq.supabase.co",sO="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImhlZnJsdHdsanBycGxidnpkcnhxIiwicm9sZSI6ImFub24iLCJpYXQiOjE3Njc1NzMxMzgsImV4cCI6MjA4MzE0OTEzOH0.ILx-rHm_d4977oovDAZu1X4FI_9Iyl-emgmEsodKHVc",ws=eO(rO,sO);function nO(){const[t,e]=g.useState([]),[r,s]=g.useState(!0),[n,a]=g.useState(null);return g.useEffect(()=>{async function o(){try{s(!0),a(null);const{data:l,error:c}=await ws.from("collections").select(`
765            id,
766            name,
767            description,
768            theme,
769            cover_image_url,
770            tags,
771            published_at
772          `).eq("status","published").not("published_at","is",null).order("published_at",{ascending:!1});if(c)throw c;if(!l||l.length===0){e([]);return}const d=l.map(y=>y.id),{data:u,error:p}=await ws.from("collection_recipes").select("collection_id, recipe_id, sort_order").in("collection_id",d).order("sort_order",{ascending:!0});if(p)throw p;const h=[...new Set((u||[]).map(y=>y.recipe_id))];let f={};if(h.length>0){const{data:y}=await ws.from("recipes").select("id, image_url").in("id",h);f=(y||[]).reduce((b,w)=>(b[w.id]=w.image_url,b),{})}const x={};(u||[]).forEach(y=>{x[y.collection_id]||(x[y.collection_id]=[]),x[y.collection_id].push(y)});const m=l.map(y=>{const b=x[y.id]||[],w=b.slice(0,6).map(_=>f[_.recipe_id]).filter(Boolean);return{id:y.id,name:y.name,description:y.description,theme:y.theme,cover_image_url:y.cover_image_url,tags:y.tags,published_at:y.published_at,recipe_count:b.length,recipe_images:w}});e(m)}catch(l){console.error("Error fetching collections:",l),a(l instanceof Error?l.message:"Failed to load collections")}finally{s(!1)}}o()},[]),{collections:t,loading:r,error:n}}function iO(t){const[e,r]=g.useState(null),[s,n]=g.useState(!0),[a,o]=g.useState(null);return g.useEffect(()=>{if(!t){n(!1);return}async function l(){try{n(!0),o(null);const{data:c,error:d}=await ws.from("collections").select(`
773            id,
774            name,
775            description,
776            theme,
777            cover_image_url,
778            tags,
779            published_at
780          `).eq("id",t).eq("status","published").single();if(d)throw d.code==="PGRST116"?new Error("Collection not found or not published"):d;const{data:u,error:p}=await ws.from("collection_recipes").select("recipe_id, sort_order").eq("collection_id",t).order("sort_order",{ascending:!0});if(p)throw p;let h=[];if(u&&u.length>0){const f=u.map(b=>b.recipe_id),{data:x,error:m}=await ws.from("recipes").select(`
781              id,
782              recipe_name,
783              image_url,
784              user_notes,
785              servings,
786              estimatedtime,
787              calories,
788              protein,
789              carbs,
790              fat,
791              ingredients,
792              instructions
793            `).in("id",f);if(m)throw m;const y=new Map((x==null?void 0:x.map(b=>[b.id,b]))||[]);h=u.map(b=>{const w=y.get(b.recipe_id);return w?{...w,sort_order:b.sort_order}:null}).filter(Boolean)}r({id:c.id,name:c.name,description:c.description,theme:c.theme,cover_image_url:c.cover_image_url,tags:c.tags,published_at:c.published_at,recipe_count:h.length,recipes:h})}catch(c){console.error("Error fetching collection:",c),o(c instanceof Error?c.message:"Failed to load collection")}finally{n(!1)}}l()},[t]),{collection:e,loading:s,error:a}}function aO({images:t,totalCount:e}){if(t.length===0)return i.jsx("div",{className:"aspect-video rounded-xl bg-gradient-to-br from-honeydew-100 to-honeydew-200 dark:from-honeydew-900/30 dark:to-honeydew-800/30 flex items-center justify-center",children:i.jsx(Jf,{className:"w-12 h-12 text-honeydew-500/50"})});if(t.length===1)return i.jsxs("div",{className:"aspect-video rounded-xl overflow-hidden bg-gray-200 dark:bg-gray-700 relative",children:[i.jsx("img",{src:t[0],alt:"",className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300"}),e>1&&i.jsxs("div",{className:"absolute bottom-2 right-2 bg-black/60 text-white text-xs font-medium px-2 py-1 rounded",children:["+",e-1]})]});if(t.length===2)return i.jsxs("div",{className:"aspect-video rounded-xl overflow-hidden bg-gray-200 dark:bg-gray-700 grid grid-cols-2 gap-0.5 relative",children:[t.map((n,a)=>i.jsx("img",{src:n,alt:"",className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300"},a)),e>2&&i.jsxs("div",{className:"absolute bottom-2 right-2 bg-black/60 text-white text-xs font-medium px-2 py-1 rounded",children:["+",e-2]})]});if(t.length===3)return i.jsxs("div",{className:"aspect-video rounded-xl overflow-hidden bg-gray-200 dark:bg-gray-700 grid grid-cols-2 grid-rows-2 gap-0.5 relative",children:[i.jsx("img",{src:t[0],alt:"",className:"w-full h-full object-cover row-span-2 group-hover:scale-105 transition-transform duration-300"}),i.jsx("img",{src:t[1],alt:"",className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300"}),i.jsx("img",{src:t[2],alt:"",className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300"}),e>3&&i.jsxs("div",{className:"absolute bottom-2 right-2 bg-black/60 text-white text-xs font-medium px-2 py-1 rounded",children:["+",e-3]})]});const r=t.slice(0,4),s=e-4;return i.jsx("div",{className:"aspect-video rounded-xl overflow-hidden bg-gray-200 dark:bg-gray-700 grid grid-cols-2 grid-rows-2 gap-0.5",children:r.map((n,a)=>i.jsxs("div",{className:"relative overflow-hidden",children:[i.jsx("img",{src:n,alt:"",className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300"}),a===3&&s>0&&i.jsx("div",{className:"absolute inset-0 bg-black/50 flex items-center justify-center",children:i.jsxs("span",{className:"text-white font-semibold text-lg",children:["+",s]})})]},a))})}const oO=()=>{const[t,e]=g.useState(""),{collections:r,loading:s,error:n}=nO(),a=r.filter(l=>l.name.toLowerCase().includes(t.toLowerCase())||(l.description||"").toLowerCase().includes(t.toLowerCase())||(l.tags||[]).some(c=>c.toLowerCase().includes(t.toLowerCase()))),o=l=>new Date(l).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"});return i.jsxs("div",{className:"min-h-screen bg-gradient-to-br from-white to-honeydew-50 dark:from-gray-900 dark:to-gray-800",children:[i.jsx(ft,{title:"Recipe Collections - Honeydew",description:"Browse our curated recipe collections. Find inspiration for your next meal with themed recipe roundups.",ogType:"website"}),i.jsx(pt,{}),i.jsx("div",{className:"pt-32 pb-16",children:i.jsxs("div",{className:"container mx-auto px-6 max-w-6xl",children:[i.jsxs("div",{className:"text-center mb-12 animate-fade-in",children:[i.jsx("h1",{className:"text-4xl md:text-5xl font-bold text-gray-900 dark:text-gray-100 mb-6",children:"Recipe Collections"}),i.jsx("p",{className:"text-lg text-gray-600 dark:text-gray-300 mb-8 max-w-2xl mx-auto",children:"Curated recipe collections to inspire your cooking"}),i.jsxs("div",{className:"max-w-xl mx-auto relative",children:[i.jsx(Un,{className:"absolute left-4 top-1/2 transform -translate-y-1/2 text-gray-400 h-5 w-5"}),i.jsx(Kn,{type:"text",placeholder:"Search collections...",value:t,onChange:l=>e(l.target.value),className:"pl-12 h-12 bg-white dark:bg-gray-800 border-gray-200 dark:border-gray-700 focus:border-honeydew-500 dark:focus:border-honeydew-400 transition-colors"})]})]}),s&&i.jsxs("div",{className:"text-center py-12 animate-fade-in",children:[i.jsx("div",{className:"inline-block h-8 w-8 animate-spin rounded-full border-4 border-solid border-honeydew-600 border-r-transparent"}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 mt-4",children:"Loading collections..."})]}),n&&i.jsx("div",{className:"text-center py-12 animate-fade-in",children:i.jsx("p",{className:"text-red-600 dark:text-red-400",children:n})}),!s&&!n&&i.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-8 animate-fade-in",children:a.map(l
793=>i.jsxs(ae,{to:`/collections/${l.id}`,className:"group bg-white dark:bg-gray-800 rounded-2xl shadow-lg hover:shadow-xl transition-all duration-300 overflow-hidden hover:-translate-y-1",children:[i.jsx("div",{className:"p-4 pb-0",children:i.jsx(aO,{images:l.recipe_images||[],totalCount:l.recipe_count||0})}),i.jsxs("div",{className:"p-6 pt-4",children:[l.tags&&l.tags.length>0&&i.jsxs("div",{className:"flex flex-wrap gap-1.5 mb-3",children:[l.tags.slice(0,3).map((c,d)=>i.jsx(Ol,{className:"bg-honeydew-100 text-honeydew-700 dark:bg-honeydew-900/30 dark:text-honeydew-400 hover:bg-honeydew-200 text-xs",children:c},d)),l.tags.length>3&&i.jsxs(Ol,{variant:"secondary",className:"text-xs",children:["+",l.tags.length-3]})]}),i.jsx("h2",{className:"text-xl font-bold text-gray-900 dark:text-gray-100 mb-2 group-hover:text-honeydew-600 dark:group-hover:text-honeydew-400 transition-colors",children:l.name}),l.description&&i.jsx("p",{className:"text-gray-600 dark:text-gray-300 mb-4 line-clamp-2",children:l.description}),i.jsxs("div",{className:"flex items-center gap-4 text-sm text-gray-500 dark:text-gray-400",children:[i.jsxs("span",{className:"px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-700",children:[l.recipe_count||0," recipes"]}),l.published_at&&i.jsxs("div",{className:"flex items-center gap-1",children:[i.jsx(ac,{className:"h-4 w-4"}),i.jsx("span",{children:o(l.published_at)})]})]}),i.jsxs("div",{className:"mt-4 flex items-center text-honeydew-600 dark:text-honeydew-400 font-medium group-hover:gap-2 transition-all",children:[i.jsx("span",{children:"View collection"}),i.jsx(ir,{className:"h-4 w-4 group-hover:translate-x-1 transition-transform"})]})]})]},l.id))}),!s&&!n&&a.length===0&&i.jsxs("div",{className:"text-center py-12 animate-fade-in",children:[i.jsx(Jf,{className:"w-16 h-16 mx-auto text-gray-400 mb-4"}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 text-lg",children:t?`No collections found matching "${t}"`:"No collections published yet. Check back soon!"})]})]})}),i.jsx(Qe,{})]})},lO="https://apps.apple.com/us/app/honeydew-capture-recipes/id6714449541?platform=iphone",cO="https://play.google.com/store/apps/details?id=com.redhoney.eatlist",dO="https://developer.apple.com/assets/elements/badges/download-on-the-app-store.svg",uO="https://upload.wikimedia.org/wikipedia/commons/7/78/Google_Play_Store_badge_EN.svg";function cx(){return i.jsx("div",{className:"p-4 rounded-xl bg-gradient-to-r from-orange-400 via-orange-500 to-orange-600 shadow-lg",children:i.jsxs("div",{className:"flex flex-col sm:flex-row items-center gap-3",children:[i.jsx("img",{src:"/lovable-uploads/bc4b0356-e29a-4c6b-bda6-68e33dfdb14d.png",alt:"Honeydew",className:"w-11 h-11 object-contain flex-shrink-0"}),i.jsxs("div",{className:"flex-1 min-w-0 text-center sm:text-left",children:[i.jsx("p",{className:"text-white font-bold text-sm",children:"Save any recipe with one tap"}),i.jsxs("div",{className:"flex items-center justify-center sm:justify-start gap-1.5 text-white/90 text-base mt-0.5",children:[i.jsx(Hb,{className:"w-4 h-4"}),i.jsx("span",{children:"Share"}),i.jsx("span",{className:"mx-1",children:"to"}),i.jsx("span",{children:"Honeydew"})]})]}),i.jsxs("div",{className:"flex gap-2 flex-shrink-0",children:[i.jsx("a",{href:lO,target:"_blank",rel:"noopener noreferrer",className:"hover:opacity-90 transition-opacity",children:i.jsx("img",{src:dO,alt:"App Store",className:"h-10 object-contain"})}),i.jsx("a",{href:cO,target:"_blank",rel:"noopener noreferrer",className:"hover:opacity-90 transition-opacity",children:i.jsx("img",{src:uO,alt:"Play Store",className:"h-10 object-contain"})})]})]})})}function hO({recipe:t,onClick:e}){return i.jsxs("button",{onClick:e,className:"group text-left bg-white dark:bg-gray-800 rounded-2xl shadow-lg hover:shadow-xl transition-all duration-300 overflow-hidden hover:-translate-y-1 w-full",children:[t.image_url?i.jsx("div",{className:"aspect-video overflow-hidden bg-gray-200 dark:bg-gray-700",children:i.jsx("img",{src:t.image_url,alt:t.recipe_name,className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300"})}):i.jsx("div",{className:"aspect-video bg-gradient-to-br from-gray-100 to-gray-200 dark:from-gray-800 dark:to-gray-700 flex items-center justify-center",children:i.jsx(Qf,{className:"w-12 h-12 text-gray-400/50"})}),i.jsxs("div",{className:"p-4",children:[i.jsx("h3",{className:"font-semibold text-gray-900 dark:text-gray-100 group-hover:text-honeydew-600 dark:group-hover:text-honeydew-400 transition-colors line-clamp-2",children:t.recipe_name}),i.jsxs("div",{className:"flex flex-wrap items-center gap-1.5 mt-3",children:[t.calories&&i.jsxs("span",{className:"text-[10px] font-medium px-1.5 py-0.5 rounded-full bg-orange-100/80 text-orange-700 dark:bg-orange-900/40 dark:text-orange-300",children:[t.calories," cal"]}
793),t.protein&&i.jsxs("span",{className:"text-[10px] font-medium px-1.5 py-0.5 rounded-full bg-blue-100/80 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300",children:[t.protein,"g P"]}),t.carbs&&i.jsxs("span",{className:"text-[10px] font-medium px-1.5 py-0.5 rounded-full bg-amber-100/80 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300",children:[t.carbs,"g C"]}),t.fat&&i.jsxs("span",{className:"text-[10px] font-medium px-1.5 py-0.5 rounded-full bg-rose-100/80 text-rose-700 dark:bg-rose-900/40 dark:text-rose-300",children:[t.fat,"g F"]}),i.jsx("span",{className:"flex-1"}),t.estimatedtime&&i.jsxs("span",{className:"flex items-center gap-1 text-[10px] font-medium px-1.5 py-0.5 rounded-full bg-gray-100/80 text-gray-600 dark:bg-gray-700/80 dark:text-gray-300",children:[i.jsx(Fs,{className:"w-3 h-3"}),t.estimatedtime]}),t.servings&&i.jsxs("span",{className:"flex items-center gap-1 text-[10px] font-medium px-1.5 py-0.5 rounded-full bg-gray-100/80 text-gray-600 dark:bg-gray-700/80 dark:text-gray-300",children:[i.jsx(zn,{className:"w-3 h-3"}),t.servings]})]})]})]})}function pO({recipe:t,onClose:e,onPrev:r,onNext:s,hasPrev:n,hasNext:a}){return i.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4",children:[i.jsx("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm",onClick:e}),i.jsxs("div",{className:"relative bg-white dark:bg-gray-900 rounded-2xl shadow-2xl max-w-2xl w-full max-h-[90vh] overflow-hidden flex flex-col animate-fade-in",children:[i.jsx("button",{onClick:e,className:"absolute top-4 right-4 z-10 p-2 rounded-full bg-black/20 hover:bg-black/40 text-white transition-colors",children:i.jsx(ga,{className:"w-5 h-5"})}),n&&i.jsx("button",{onClick:r,className:"absolute left-4 top-1/2 -translate-y-1/2 z-10 p-2 rounded-full bg-black/20 hover:bg-black/40 text-white transition-colors",children:i.jsx(Ab,{className:"w-6 h-6"})}),a&&i.jsx("button",{onClick:s,className:"absolute right-4 top-1/2 -translate-y-1/2 z-10 p-2 rounded-full bg-black/20 hover:bg-black/40 text-white transition-colors",children:i.jsx(Fn,{className:"w-6 h-6"})}),i.jsxs("div",{className:"overflow-y-auto flex-1",children:[t.image_url&&i.jsx("div",{className:"aspect-video bg-gray-200 dark:bg-gray-700",children:i.jsx("img",{src:t.image_url,alt:t.recipe_name,className:"w-full h-full object-cover"})}),i.jsxs("div",{className:"p-6 space-y-6",children:[i.jsx("div",{children:i.jsx("h2",{className:"text-2xl font-bold text-gray-900 dark:text-gray-100",children:t.recipe_name})}),i.jsxs("div",{className:"flex flex-wrap gap-3",children:[t.estimatedtime&&i.jsxs("div",{className:"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-gray-100 dark:bg-gray-800 text-sm",children:[i.jsx(Fs,{className:"w-4 h-4 text-gray-500"}),t.estimatedtime]}),t.servings&&i.jsxs("div",{className:"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-gray-100 dark:bg-gray-800 text-sm",children:[i.jsx(zn,{className:"w-4 h-4 text-gray-500"}),t.servings," servings"]})]}),(t.calories||t.protein||t.carbs||t.fat)&&i.jsxs("div",{className:"p-4 rounded-xl bg-gray-50 dark:bg-gray-800/50",children:[i.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Nutrition (per serving)"}),i.jsxs("div",{className:"grid grid-cols-4 gap-3",children:[t.calories&&i.jsxs("div",{className:"text-center p-3 rounded-lg bg-orange-50 dark:bg-orange-900/20",children:[i.jsx(Db,{className:"w-5 h-5 mx-auto text-orange-500 mb-1"}),i.jsx("div",{className:"text-lg font-bold text-orange-700 dark:text-orange-400",children:t.calories}),i.jsx("div",{className:"text-xs text-orange-600/70 dark:text-orange-400/70",children:"Calories"})]}),t.protein&&i.jsxs("div",{className:"text-center p-3 rounded-lg bg-blue-50 dark:bg-blue-900/20",children:[i.jsx(Rb,{className:"w-5 h-5 mx-auto text-blue-500 mb-1"}),i.jsxs("div",{className:"text-lg font-bold text-blue-700 dark:text-blue-400",children:[t.protein,"g"]}),i.jsx("div",{className:"text-xs text-blue-600/70 dark:text-blue-400/70",children:"Protein"})]}),t.carbs&&i.jsxs("div",{className:"text-center p-3 rounded-lg bg-amber-50 dark:bg-amber-900/20",children:[i.jsx(Qb,{className:"w-5 h-5 mx-auto text-amber-500 mb-1"}),i.jsxs("div",{className:"text-lg font-bold text-amber-700 dark:text-amber-400",children:[t.carbs,"g"]}),i.jsx("div",{className:"text-xs text-amber-600/70 dark:text-amber-400/70",children:"Carbs"})]}),t.fat&&i.jsxs("div",{className:"text-center p-3 rounded-lg bg-rose-50 dark:bg-rose-900/20",children:[i.jsx(Pb,{className:"w-5 h-5 mx-auto text-rose-500 mb-1"}),i.jsxs("div",{className:"text-lg font-bold text-rose-700 dark:text-rose-400",children:[t.fat,"g"]}),i.jsx("div",{className:"text-xs text-rose-600/70 dark:text-rose-400/70",children:"Fat"})]})]})]}),i.jsx(cx,{}),t.ingredients&&t.ingredients.length>0&&i.jsxs("div",{className:"p-4 rounded-xl bg-gray-50 dark:bg-gray-800/50",children:[i.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Ingredients"}),i.jsx("ul",{className:"space-y-2",children:t.ingredients.map((o,l)=>{const c=o.amount,d=Number(c),u=c!=null&&c!==""&&!isNaN(d)&&d>0;return i.jsxs("li",{className:"flex items-start gap-2 text-sm",children:[i.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-honeydew-500 mt-2 flex-shrink-0"}),i.jsxs("span",{children:[u&&i.jsxs("span",{className:"font-medium",children:[c," "]}),o.measurement_unit&&i.jsxs("span",{children:[o.measurement_unit," "]}),o.ingredient_name]})]},l)})})]}),t.instructions&&t.instructions.length>0&&i.jsxs("div",{className:"p-4 rounded-xl bg-gray-50 dark:bg-gray-800/50",children:[i.jsx("h3",{className:"text-sm font-semibold mb-3",children:"Instructions"}),i.jsx("ol",{className:"space-y-4",children:t.instructions.sort((o,l)=>
793(o.step_number||0)-(l.step_number||0)).map((o,l)=>i.jsxs("li",{className:"flex gap-3 text-sm",children:[i.jsx("span",{className:"flex-shrink-0 w-6 h-6 rounded-full bg-honeydew-100 dark:bg-honeydew-900/30 text-honeydew-700 dark:text-honeydew-400 flex items-center justify-center text-xs font-semibold",children:o.step_number||l+1}),i.jsx("p",{className:"flex-1 pt-0.5",children:o.instruction_text||o.description||o})]},l))})]}),t.user_notes&&i.jsxs("div",{className:"p-4 rounded-xl bg-gray-50 dark:bg-gray-800/50",children:[i.jsx("h3",{className:"text-sm font-semibold mb-2",children:"Notes"}),i.jsx("p",{className:"text-sm text-gray-600 dark:text-gray-300 whitespace-pre-wrap",children:t.user_notes})]})]})]})]})]})}const fO=()=>{var p;const{id:t}=ut(),[e,r]=g.useState(""),[s,n]=g.useState(null),{collection:a,loading:o,error:l}=iO(t),c=(a==null?void 0:a.recipes.filter(h=>h.recipe_name.toLowerCase().includes(e.toLowerCase())))||[],d=h=>new Date(h).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),u=s!==null?c[s]:null;return i.jsxs("div",{className:"min-h-screen bg-gradient-to-br from-white to-honeydew-50 dark:from-gray-900 dark:to-gray-800",children:[i.jsx(ft,{title:a?`${a.name} - Recipe Collection`:"Recipe Collection - Honeydew",description:(a==null?void 0:a.description)||"A curated collection of recipes from Honeydew",ogType:"website"}),i.jsx(pt,{}),i.jsx("div",{className:"pt-32 pb-16",children:i.jsxs("div",{className:"container mx-auto px-6 max-w-6xl",children:[i.jsxs(ae,{to:"/collections",className:"inline-flex items-center gap-2 text-gray-600 dark:text-gray-400 hover:text-honeydew-600 dark:hover:text-honeydew-400 mb-8 transition-colors",children:[i.jsx(Uf,{className:"w-4 h-4"}),"Back to Collections"]}),o&&i.jsxs("div",{className:"text-center py-12 animate-fade-in",children:[i.jsx("div",{className:"inline-block h-8 w-8 animate-spin rounded-full border-4 border-solid border-honeydew-600 border-r-transparent"}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 mt-4",children:"Loading collection..."})]}),l&&i.jsxs("div",{className:"text-center py-12 animate-fade-in",children:[i.jsx("p",{className:"text-red-600 dark:text-red-400",children:l}),i.jsx(ae,{to:"/collections",children:i.jsx(Fr,{className:"mt-4",children:"Back to Collections"})})]}),!o&&!l&&a&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"mb-12 animate-fade-in",children:[i.jsx("div",{className:"flex flex-wrap gap-2 mb-4",children:(p=a.tags)==null?void 0:p.map((h,f)=>i.jsx(Ol,{className:"bg-honeydew-100 text-honeydew-700 dark:bg-honeydew-900/30 dark:text-honeydew-400",children:h},f))}),i.jsx("h1",{className:"text-4xl md:text-5xl font-bold text-gray-900 dark:text-gray-100 mb-4",children:a.name}),a.description&&i.jsx("p",{className:"text-lg text-gray-600 dark:text-gray-300 mb-4 max-w-3xl",children:a.description}),i.jsxs("div",{className:"flex items-center gap-4 text-sm text-gray-500 dark:text-gray-400",children:[i.jsxs("span",{className:"px-3 py-1 rounded-full bg-gray-100 dark:bg-gray-800",children:[a.recipe_count," recipes"]}),a.published_at&&i.jsxs("div",{className:"flex items-center gap-1",children:[i.jsx(ac,{className:"h-4 w-4"}),i.jsxs("span",{children:["Published ",d(a.published_at)]})]})]}),i.jsxs("div",{className:"max-w-xl mt-8 relative",children:[i.jsx(Un,{className:"absolute left-4 top-1/2 transform -translate-y-1/2 text-gray-400 h-5 w-5"}),i.jsx(Kn,{type:"text",placeholder:"Search recipes in this collection...",value:e,onChange:h=>r(h.target.value),className:"pl-12 h-12 bg-white dark:bg-gray-800 border-gray-200 dark:border-gray-700 focus:border-honeydew-500 dark:focus:border-honeydew-400 transition-colors"})]})]}),i.jsx("div",{className:"mb-8 max-w-2xl",children:i.jsx(cx,{})}),i.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6 animate-fade-in",children:c.map((h,f)=>i.jsx(hO,{recipe:h,onClick:()=>n(f)},h.id))}),c.length===0&&i.jsxs("div",{className:"text-center py-12 animate-fade-in",children:[i.jsx(Qf,{className:"w-16 h-16 mx-auto text-gray-400 mb-4"}),i.jsx("p",{className:"text-gray-600 dark:text-gray-300 text-lg",children:e?`No recipes found matching "${e}"`:"No recipes in this collection"})]})]})]})}),i.jsx(Qe,{}),u&&i.jsx(pO,{recipe:u,onClose:()=>n(null),onPrev:()=>n(h=>h!==null&&h>0?h-1:h),onNext:()=>n(h=>h!==null&&h<c.length-1?h+1:h),hasPrev:s!==null&&s>0,hasNext:s!==null&&s<c.length-1})]})},mO=["top","right","bottom","left"],ur=Math.min,Fe=Math.max,ia=Math.round,bi=Math.floor,hr=t=>({x:t,y:t}
vendor: 2,282 bytes, line 793
793),gO={left:"right",right:"left",bottom:"top",top:"bottom"},yO={start:"end",end:"start"};function Wl(t,e,r){return Fe(t,ur(e,r))}function Vt(t,e){return typeof t=="function"?t(e):t}function $t(t){return t.split("-")[0]}function Ks(t){return t.split("-")[1]}function gd(t){return t==="x"?"y":"x"}function yd(t){return t==="y"?"height":"width"}function pr(t){return["top","bottom"].includes($t(t))?"y":"x"}function xd(t){return gd(pr(t))}function xO(t,e,r){r===void 0&&(r=!1);const s=Ks(t),n=xd(t),a=yd(n);let o=n==="x"?s===(r?"end":"start")?"right":"left":s==="start"?"bottom":"top";return e.reference[a]>e.floating[a]&&(o=aa(o)),[o,aa(o)]}function vO(t){const e=aa(t);return[ql(t),e,ql(e)]}function ql(t){return t.replace(/start|end/g,e=>yO[e])}function bO(t,e,r){const s=["left","right"],n=["right","left"],a=["top","bottom"],o=["bottom","top"];switch(t){case"top":case"bottom":return r?e?n:s:e?s:n;case"left":case"right":return e?a:o;default:return[]}}function wO(t,e,r,s){const n=Ks(t);let a=bO($t(t),r==="start",s);return n&&(a=a.map(o=>o+"-"+n),e&&(a=a.concat(a.map(ql)))),a}function aa(t){return t.replace(/left|right|bottom|top/g,e=>gO[e])}function _O(t){return{top:0,right:0,bottom:0,left:0,...t}}function dx(t){return typeof t!="number"?_O(t):{top:t,right:t,bottom:t,left:t}}function oa(t){const{x:e,y:r,width:s,height:n}=t;return{width:s,height:n,top:r,left:e,right:e+s,bottom:r+n,x:e,y:r}}function Lp(t,e,r){let{reference:s,floating:n}=t;const a=pr(e),o=xd(e),l=yd(o),c=$t(e),d=a==="y",u=s.x+s.width/2-n.width/2,p=s.y+s.height/2-n.height/2,h=s[l]/2-n[l]/2;let f;switch(c){case"top":f={x:u,y:s.y-n.height};break;case"bottom":f={x:u,y:s.y+s.height};break;case"right":f={x:s.x+s.width,y:p};break;case"left":f={x:s.x-n.width,y:p};break;default:f={x:s.x,y:s.y}}switch(Ks(e)){case"start":f[o]-=h*(r&&d?-1:1);break;case"end":f[o]+=h*(r&&d?-1:1);break}return f}const jO=async(t,e,r)=>{const{placement:s="bottom",strategy:n="absolute",middleware:a=[],platform:o}=r,l=a.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(e));let d=await o.getElementRects({reference:t,floating:e,strategy:n}),{x:u,y:p}=Lp(d,s,c),h=s,f={},x=0;for(let m=0;m<l.length;m++){const{name:y,fn:b}=l[m],{x:w,y:_,data:j,reset:k}=await b({x:u,y:p,initialPlacement:s,placement:h,strategy:n,middlewareData:f,re
vendor: 9,374 bytes, line 793
793cts:d,platform:o,elements:{reference:t,floating:e}});u=w??u,p=_??p,f={...f,[y]:{...f[y],...j}},k&&x<=50&&(x++,typeof k=="object"&&(k.placement&&(h=k.placement),k.rects&&(d=k.rects===!0?await o.getElementRects({reference:t,floating:e,strategy:n}):k.rects),{x:u,y:p}=Lp(d,h,c)),m=-1)}return{x:u,y:p,placement:h,strategy:n,middlewareData:f}};async function Dn(t,e){var r;e===void 0&&(e={});const{x:s,y:n,platform:a,rects:o,elements:l,strategy:c}=t,{boundary:d="clippingAncestors",rootBoundary:u="viewport",elementContext:p="floating",altBoundary:h=!1,padding:f=0}=Vt(e,t),x=dx(f),y=l[h?p==="floating"?"reference":"floating":p],b=oa(await a.getClippingRect({element:(r=await(a.isElement==null?void 0:a.isElement(y)))==null||r?y:y.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(l.floating)),boundary:d,rootBoundary:u,strategy:c})),w=p==="floating"?{x:s,y:n,width:o.floating.width,height:o.floating.height}:o.reference,_=await(a.getOffsetParent==null?void 0:a.getOffsetParent(l.floating)),j=await(a.isElement==null?void 0:a.isElement(_))?await(a.getScale==null?void 0:a.getScale(_))||{x:1,y:1}:{x:1,y:1},k=oa(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:w,offsetParent:_,strategy:c}):w);return{top:(b.top-k.top+x.top)/j.y,bottom:(k.bottom-b.bottom+x.bottom)/j.y,left:(b.left-k.left+x.left)/j.x,right:(k.right-b.right+x.right)/j.x}}const kO=t=>({name:"arrow",options:t,async fn(e){const{x:r,y:s,placement:n,rects:a,platform:o,elements:l,middlewareData:c}=e,{element:d,padding:u=0}=Vt(t,e)||{};if(d==null)return{};const p=dx(u),h={x:r,y:s},f=xd(n),x=yd(f),m=await o.getDimensions(d),y=f==="y",b=y?"top":"left",w=y?"bottom":"right",_=y?"clientHeight":"clientWidth",j=a.reference[x]+a.reference[f]-h[f]-a.floating[x],k=h[f]-a.reference[f],E=await(o.getOffsetParent==null?void 0:o.getOffsetParent(d));let T=E?E[_]:0;(!T||!await(o.isElement==null?void 0:o.isElement(E)))&&(T=l.floating[_]||a.floating[x]);const A=j/2-k/2,R=T/2-m[x]/2-1,L=ur(p[b],R),V=ur(p[w],R),I=L,D=T-m[x]-V,N=T/2-m[x]/2+A,M=Wl(I,N,D),B=!c.arrow&&Ks(n)!=null&&N!==M&&a.reference[x]/2-(N<I?L:V)-m[x]/2<0,O=B?N<I?N-I:N-D:0;return{[f]:h[f]+O,data:{[f]:M,centerOffset:N-M-O,...B&&{alignmentOffset:O}},reset:B}}}),EO=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var r,s;const{placement:n,middlewareData:a,rects:o,initialPlacement:l,platform:c,elements:d}=e,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:h,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:m=!0,...y}=Vt(t,e);if((r=a.arrow)!=null&&r.alignmentOffset)return{};const b=$t(n),w=pr(l),_=$t(l)===l,j=await(c.isRTL==null?void 0:c.isRTL(d.floating)),k=h||(_||!m?[aa(l)]:vO(l)),E=x!=="none";!h&&E&&k.push(...wO(l,m,x,j));const T=[l,...k],A=await Dn(e,y),R=[];let L=((s=a.flip)==null?void 0:s.overflows)||[];if(u&&R.push(A[b]),p){const N=xO(n,o,j);R.push(A[N[0]],A[N[1]])}if(L=[...L,{placement:n,overflows:R}],!R.every(N=>N<=0)){var V,I;const N=(((V=a.flip)==null?void 0:V.index)||0)+1,M=T[N];if(M)return{data:{index:N,overflows:L},reset:{placement:M}};let B=(I=L.filter(O=>O.overflows[0]<=0).sort((O,C)=>O.overflows[1]-C.overflows[1])[0])==null?void 0:I.placement;if(!B)switch(f){case"bestFit":{var D;const O=(D=L.filter(C=>{if(E){const $=pr(C.placement);return $===w||$==="y"}return!0}).map(C=>[C.placement,C.overflows.filter($=>$>0).reduce(($,K)=>$+K,0)]).sort((C,$)=>C[1]-$[1])[0])==null?void 0:D[0];O&&(B=O);break}case"initialPlacement":B=l;break}if(n!==B)return{reset:{placement:B}}}return{}}}};function Mp(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function Vp(t){return mO.some(e=>t[e]>=0)}const TO=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:r}=e,{strategy:s="referenceHidden",...n}=Vt(t,e);switch(s){case"referenceHidden":{const a=await Dn(e,{...n,elementContext:"reference"}),o=Mp(a,r.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:Vp(o)}}}case"escaped":{const a=await Dn(e,{...n,altBoundary:!0}),o=Mp(a,r.floating);return{data:{escapedOffsets:o,escaped:Vp(o)}}}default:return{}}}}};async function AO(t,e){const{placement:r,platform:s,elements:n}=t,a=await(s.isRTL==null?void 0:s.isRTL(n.floating)),o=$t(r),l=Ks(r),c=pr(r)==="y",d=["left","top"].includes(o)?-1:1,u=a&&c?-1:1,p=Vt(e,t);let{mainAxis:h,crossAxis:f,alignmentAxis:x}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return l&&typeof x=="number"&&(f=l==="end"?x*-1:x),c?{x:f*u,y:h*d}:{x:h*d,y:f*u}}const NO=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var r,s;const{x:n,y:a,placement:o,middlewareData:l}=e,c=await AO(e,t);return o===((r=l.offset)==null?void 0:r.placement)&&(s=l.arrow)!=null&&s.alignmentOffset?{}:{x:n+c.x,y:a+c.y,data:{...c,placement:o}}}}},CO=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:r,y:s,placement:n}=e,{mainAxis:a=!0,crossAxis:o=!1,limiter:l={fn:y=>{let{x:b,y:w}=y;return{x:b,y:w}}},...c}=Vt(t,e),d={x:r,y:s},u=await Dn(e,c),p=pr($t(n)),h=gd(p);let f=d[h],x=d[p];if(a){const y=h==="y"?"top":"left",b=h==="y"?"bottom":"right",w=f+u[y],_=f-u[b];f=Wl(w,f,_)}if(o){const y=p==="y"?"top":"left",b=p==="y"?"bottom":"right",w=x+u[y],_=x-u[b];x=Wl(w,x,_)}const m=l.fn({...e,[h]:f,[p]:x});return{...m,data:{x:m.x-r,y:m.y-s,enabled:{[h]:a,[p]:o}}}}}},SO=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:r,y:s,placement:n,rects:a,middlewareData:o}=e,{offset:l=0,mainAxis:c=!0,crossAxis:d=!0}=Vt(t,e),u={x:r,y:s},p=pr(n),h=gd(p);let f=u[h],x=u[p];const m=Vt(l,e),y=typeof m=="number"?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(c){const _=h==="y"?"height":"width",j=a.reference[h]-a.floating[_]+y.mainAxis,k=a.reference[h]+a.reference[_]-y.mainAxis;f<j?f=j:f>k&&(f=k)}if(d){var b,w;const _=h==="y"?"width":"height",j=["top","left"].includes($t(n)),k=a.reference[p]-a.floating[_]+(j&&((b=o.offset)==null?void 0:b[p])||0)+(j?0:y.crossAxis),E=a.reference[p]+a.reference[_]+(j?0:((w=o.offset)==null?void 0:w[p])||0)-(j?y.crossAxis:0);x<k?x=k:x>E&&(x=E)}return{[h]:f,[p]:x}}}},PO=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){var r,s;const{placement:n,rects:a,platform:o,elements:l}=e,{apply:c=()=>{},...d}=Vt(t,e),u=await Dn(e,d),p=$t(n),h=Ks(n),f=pr(n)==="y",{width:x,height:m}=a.floating;let y,b;p==="top"||p==="bottom"?(y=p,b=h===(await(o.isRTL==null?void 0:o.isRTL(l.floating))?"start":"end")?"left":"right"):(b=p,y=h==="end"?"top":"bottom");const w=m-u.top-u.bottom,_=x-u.left-u.right,j=ur(m-u[y],w),k=ur(x-u[b],_),E=!e.middlewareData.shift;let T=j,A=k;if((r=e.middlewareData.shift)!=null&&r.enabled.x&&(A=_),(s=e.middlewareData.shift)!=null&&s.enabled.y&&(T=w),E&&!h){const L=Fe(u.left,0),V=Fe(u.right,0),I=Fe(u.top,0),D=Fe(u.bottom,0);f?A=x-2*(L!==0||V!==0?L+V:Fe(u.left,u.right)):T=m-2*(I!==0||D!==0?I+D:Fe(u.top,u.bottom))}await c({...e,availableWidth:A,availableHeight:T});const R=await o.getDimensions(l.floating);return x!==R.width||m!==R.height?{reset:{rects:!0}}:{}}}};function Pa(){return typeof window<"u"}function Ys(t){return ux(t)?(t.nodeName||"").toLowerCase():"#document"}function ze(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function Nt(t){var e;return(e=(ux(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function ux(t){return Pa()?t instanceof Node||t instanceof ze(t).Node:!1}function ct(t){return Pa()?t instanceof Element||t instanceof ze(t).Element:!1}function At(t){return Pa()?t instanceof HTMLElement||t instanceof ze(t).HTMLElement:!1}function $p(t){return!Pa()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof ze(t).ShadowRoot}function Jn(t){const{overflow:e,overflowX:r,overflowY:s,display:n}=dt(t);return/auto|scroll|overlay|hidden|clip/.test(e+s+r)&&!["inline","contents"].includes(n)}function RO(t){return["table","td","th"].includes(Ys(t))}function Ra(t){return[":popover-open",":modal"].some(e=>{try{return t.matches(e)}catch{return!1}})}function vd(t){const e=bd(),r=ct(t)?dt(t):t;return r.transform!=="none"||r.perspective!=="none"||(r.containerType?r.containerType!=="normal":!1)||!e&&(r.backdropFilter?r.backdropFilter!=="none":!1)||!e&&(r.filter?r.filter!=="none":!1)||["transform","perspective","filter"].some(s=>(r.willChange||"").includes(s))||["paint","layout","strict","content"].some(s=>(r.contain||"").includes(s))}function OO(t){let e=fr(t);for(;At(e)&&!Ls(e);){if(vd(e))return e;if(Ra(e))return null;e=fr(e)}return null}function bd(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Ls(t){return["html","body","#document"].includes(Ys(t))}function dt(t){return ze(t).getComputedStyle(t)}function Oa(t){return ct(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function fr(t){if(Ys(t)==="html")return t;const e=t.assignedSlot||t.parentNode||$p(t)&&t.host||Nt(t);return $p(e)?e.host:e}function hx(t){const e=fr(t);return Ls(e)?t.ownerDocument?t.ownerDocument.body:t.body:At(e)&&Jn(e)?e:hx(e)}function Ln(t,e,r){var s;e===void 0&&(e=[]),r===void 0&&(r=!0);const n=hx(t),a=n===((s=t.ownerDocument)==null?void 0:s.body),o=ze(n);if(a){const l=Gl(o);
vendor: 6,533 bytes, line 793
793return e.concat(o,o.visualViewport||[],Jn(n)?n:[],l&&r?Ln(l):[])}return e.concat(n,Ln(n,[],r))}function Gl(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function px(t){const e=dt(t);let r=parseFloat(e.width)||0,s=parseFloat(e.height)||0;const n=At(t),a=n?t.offsetWidth:r,o=n?t.offsetHeight:s,l=ia(r)!==a||ia(s)!==o;return l&&(r=a,s=o),{width:r,height:s,$:l}}function wd(t){return ct(t)?t:t.contextElement}function _s(t){const e=wd(t);if(!At(e))return hr(1);const r=e.getBoundingClientRect(),{width:s,height:n,$:a}=px(e);let o=(a?ia(r.width):r.width)/s,l=(a?ia(r.height):r.height)/n;return(!o||!Number.isFinite(o))&&(o=1),(!l||!Number.isFinite(l))&&(l=1),{x:o,y:l}}const IO=hr(0);function fx(t){const e=ze(t);return!bd()||!e.visualViewport?IO:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function DO(t,e,r){return e===void 0&&(e=!1),!r||e&&r!==ze(t)?!1:e}function Br(t,e,r,s){e===void 0&&(e=!1),r===void 0&&(r=!1);const n=t.getBoundingClientRect(),a=wd(t);let o=hr(1);e&&(s?ct(s)&&(o=_s(s)):o=_s(t));const l=DO(a,r,s)?fx(a):hr(0);let c=(n.left+l.x)/o.x,d=(n.top+l.y)/o.y,u=n.width/o.x,p=n.height/o.y;if(a){const h=ze(a),f=s&&ct(s)?ze(s):s;let x=h,m=Gl(x);for(;m&&s&&f!==x;){const y=_s(m),b=m.getBoundingClientRect(),w=dt(m),_=b.left+(m.clientLeft+parseFloat(w.paddingLeft))*y.x,j=b.top+(m.clientTop+parseFloat(w.paddingTop))*y.y;c*=y.x,d*=y.y,u*=y.x,p*=y.y,c+=_,d+=j,x=ze(m),m=Gl(x)}}return oa({width:u,height:p,x:c,y:d})}function LO(t){let{elements:e,rect:r,offsetParent:s,strategy:n}=t;const a=n==="fixed",o=Nt(s),l=e?Ra(e.floating):!1;if(s===o||l&&a)return r;let c={scrollLeft:0,scrollTop:0},d=hr(1);const u=hr(0),p=At(s);if((p||!p&&!a)&&((Ys(s)!=="body"||Jn(o))&&(c=Oa(s)),At(s))){const h=Br(s);d=_s(s),u.x=h.x+s.clientLeft,u.y=h.y+s.clientTop}return{width:r.width*d.x,height:r.height*d.y,x:r.x*d.x-c.scrollLeft*d.x+u.x,y:r.y*d.y-c.scrollTop*d.y+u.y}}function MO(t){return Array.from(t.getClientRects())}function Kl(t,e){const r=Oa(t).scrollLeft;return e?e.left+r:Br(Nt(t)).left+r}function VO(t){const e=Nt(t),r=Oa(t),s=t.ownerDocument.body,n=Fe(e.scrollWidth,e.clientWidth,s.scrollWidth,s.clientWidth),a=Fe(e.scrollHeight,e.clientHeight,s.scrollHeight,s.clientHeight);let o=-r.scrollLeft+Kl(t);const l=-r.scrollTop;return dt(s).direction==="rtl"&&(o+=Fe(e.clientWidth,s.clientWidth)-n),{width:n,height:a,x:o,y:l}}function $O(t,e){const r=ze(t),s=Nt(t),n=r.visualViewport;let a=s.clientWidth,o=s.clientHeight,l=0,c=0;if(n){a=n.width,o=n.height;const d=bd();(!d||d&&e==="fixed")&&(l=n.offsetLeft,c=n.offsetTop)}return{width:a,height:o,x:l,y:c}}function FO(t,e){const r=Br(t,!0,e==="fixed"),s=r.top+t.clientTop,n=r.left+t.clientLeft,a=At(t)?_s(t):hr(1),o=t.clientWidth*a.x,l=t.clientHeight*a.y,c=n*a.x,d=s*a.y;return{width:o,height:l,x:c,y:d}}function Fp(t,e,r){let s;if(e==="viewport")s=$O(t,r);else if(e==="document")s=VO(Nt(t));else if(ct(e))s=FO(e,r);else{const n=fx(t);s={...e,x:e.x-n.x,y:e.y-n.y}}return oa(s)}function mx(t,e){const r=fr(t);return r===e||!ct(r)||Ls(r)?!1:dt(r).position==="fixed"||mx(r,e)}function UO(t,e){const r=e.get(t);if(r)return r;let s=Ln(t,[],!1).filter(l=>ct(l)&&Ys(l)!=="body"),n=null;const a=dt(t).position==="fixed";let o=a?fr(t):t;for(;ct(o)&&!Ls(o);){const l=dt(o),c=vd(o);!c&&l.position==="fixed"&&(n=null),(a?!c&&!n:!c&&l.position==="static"&&!!n&&["absolute","fixed"].includes(n.position)||Jn(o)&&!c&&mx(t,o))?s=s.filter(u=>u!==o):n=l,o=fr(o)}return e.set(t,s),s}function BO(t){let{element:e,boundary:r,rootBoundary:s,strategy:n}=t;const o=[...r==="clippingAncestors"?Ra(e)?[]:UO(e,this._c):[].concat(r),s],l=o[0],c=o.reduce((d,u)=>{const p=Fp(e,u,n);return d.top=Fe(p.top,d.top),d.right=ur(p.right,d.right),d.bottom=ur(p.bottom,d.bottom),d.left=Fe(p.left,d.left),d},Fp(e,l,n));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function zO(t){const{width:e,height:r}=px(t);return{width:e,height:r}}function HO(t,e,r){const s=At(e),n=Nt(e),a=r==="fixed",o=Br(t,!0,a,e);let l={scrollLeft:0,scrollTop:0};const c=hr(0);if(s||!s&&!a)if((Ys(e)!=="body"||Jn(n))&&(l=Oa(e)),s){const f=Br(e,!0,a,e);c.x=f.x+e.clientLeft,c.y=f.y+e.clientTop}else n&&(c.x=Kl(n));let d=0,u=0;if(n&&!s&&!a){const f=n.getBoundingClientRect();u=f.top+l.scrollTop,d=f.left+l.scrollLeft-Kl(n,f)}const p=o.left+l.scrollLeft-c.x-d,h=o.top+l.scrollTop-c.y-u;return{x:p,y:h,width:o.width,height:o.height}}function Fo(t){return dt(t).position==="static"}function Up(t,e){if(!At(t)||dt(t).position==="fixed")return null;if(e)return e(t);let r=t.offsetParent;return Nt(t)===r&&(r=r.ownerDocument.body),r}function gx(t,e){const r=ze(t);if(Ra(t))return r;if(!At(t)){let n=fr(t);for(;n&&!Ls(n);){if(ct(n)&&!Fo(n))return n;n=fr(n)}return r}let s=Up(t,e);for(;s&&RO(s)&&Fo(s);)s=Up(s,e);return s&&Ls(s)&&Fo(s)&&!vd(s)?r:s||OO(t)||r}const WO=async function(t){const e=this.getOffsetParent||gx,r=this.getDimensions,s=await r(t.floating);return{reference:HO(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:s.width,height:s.height}}};function qO(t){return dt(t).direction==="rtl"}const GO={convertOffsetParentRelativeRectToViewportRelativeRect:LO,getDocumentElement:Nt,getClippingRect:BO,getOffsetParent:gx,getElementRects:WO,getClientRects:MO,getDimensions:zO,getScale:_s,isElement:ct,isRTL:qO};function KO(t,e){let r=null,s;const n=Nt(t);function a(){var l;clearTimeout(s),(l=r)==null||l.disconnect(),r=null}function o(l,c){l===void 0&&(l=!1),c===void 0&&(c=1),a();const{left:d,top:u,width:p,height:h}=t.getBoundingClientRect();if(l||e(),!p||!h)return;const f=bi(u),x=bi(n.clientWidth-(d+p)),m=bi(n.clientHeight-(u+h)),y=bi(d),w={rootMargin:-f+"px "+-x+"px "+-m+"px "+-y+"px",threshold:Fe(0,ur(1,c))||1};let _=!0;function j(k){const E=k[0].intersectionRatio;if(E!==c){if(!_)return o();E?o(!1,E):s=setTimeout(()=>{o(!1,1e-7)},1e3)}_=!1}try{r=new IntersectionObserver(j,{...w,root:n.ownerDocument})}catch{r=new IntersectionObserver(j,w)}r.observe(t)}return o(!0),a}function YO(t,e,r,s){s===void 0&&(s={});const{ancestorScroll:n=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:c=!1}=s,d=wd(t),u=n||a?[...d?Ln(d):[],...Ln(e)]:[];u.forEach(b=>{n&&b.addEventListener("scroll",r,{passive:!0}),a&&b.addEventListener("resize",r)});const p=d&&l?KO(d,r):null;let h=-1,f=null;o&&(f=new ResizeObserver(b=>{let[w]=b;w&&w.target===d&&f&&(f.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var _;(_=f)==null||_.observe(e)})),r()}),d&&!c&&f.observe(d),f.observe(e));
vendor: 9,488 bytes, line 793
793let x,m=c?Br(t):null;c&&y();function y(){const b=Br(t);m&&(b.x!==m.x||b.y!==m.y||b.width!==m.width||b.height!==m.height)&&r(),m=b,x=requestAnimationFrame(y)}return r(),()=>{var b;u.forEach(w=>{n&&w.removeEventListener("scroll",r),a&&w.removeEventListener("resize",r)}),p==null||p(),(b=f)==null||b.disconnect(),f=null,c&&cancelAnimationFrame(x)}}const JO=NO,XO=CO,QO=EO,ZO=PO,eI=TO,Bp=kO,tI=SO,rI=(t,e,r)=>{const s=new Map,n={platform:GO,...r},a={...n.platform,_c:s};return jO(t,e,{...n,platform:a})};var Oi=typeof document<"u"?g.useLayoutEffect:g.useEffect;function la(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if(typeof t=="function"&&t.toString()===e.toString())return!0;let r,s,n;if(t&&e&&typeof t=="object"){if(Array.isArray(t)){if(r=t.length,r!==e.length)return!1;for(s=r;s--!==0;)if(!la(t[s],e[s]))return!1;return!0}if(n=Object.keys(t),r=n.length,r!==Object.keys(e).length)return!1;for(s=r;s--!==0;)if(!{}.hasOwnProperty.call(e,n[s]))return!1;for(s=r;s--!==0;){const a=n[s];if(!(a==="_owner"&&t.$$typeof)&&!la(t[a],e[a]))return!1}return!0}return t!==t&&e!==e}function yx(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function zp(t,e){const r=yx(t);return Math.round(e*r)/r}function Uo(t){const e=g.useRef(t);return Oi(()=>{e.current=t}),e}function sI(t){t===void 0&&(t={});const{placement:e="bottom",strategy:r="absolute",middleware:s=[],platform:n,elements:{reference:a,floating:o}={},transform:l=!0,whileElementsMounted:c,open:d}=t,[u,p]=g.useState({x:0,y:0,strategy:r,placement:e,middlewareData:{},isPositioned:!1}),[h,f]=g.useState(s);la(h,s)||f(s);const[x,m]=g.useState(null),[y,b]=g.useState(null),w=g.useCallback(C=>{C!==E.current&&(E.current=C,m(C))},[]),_=g.useCallback(C=>{C!==T.current&&(T.current=C,b(C))},[]),j=a||x,k=o||y,E=g.useRef(null),T=g.useRef(null),A=g.useRef(u),R=c!=null,L=Uo(c),V=Uo(n),I=Uo(d),D=g.useCallback(()=>{if(!E.current||!T.current)return;const C={placement:e,strategy:r,middleware:h};V.current&&(C.platform=V.current),rI(E.current,T.current,C).then($=>{const K={...$,isPositioned:I.current!==!1};N.current&&!la(A.current,K)&&(A.current=K,Xl.flushSync(()=>{p(K)}))})},[h,e,r,V,I]);Oi(()=>{d===!1&&A.current.isPositioned&&(A.current.isPositioned=!1,p(C=>({...C,isPositioned:!1})))},[d]);const N=g.useRef(!1);Oi(()=>(N.current=!0,()=>{N.current=!1}),[]),Oi(()=>{if(j&&(E.current=j),k&&(T.current=k),j&&k){if(L.current)return L.current(j,k,D);D()}},[j,k,D,L,R]);const M=g.useMemo(()=>({reference:E,floating:T,setReference:w,setFloating:_}),[w,_]),B=g.useMemo(()=>({reference:j,floating:k}),[j,k]),O=g.useMemo(()=>{const C={position:r,left:0,top:0};if(!B.floating)return C;const $=zp(B.floating,u.x),K=zp(B.floating,u.y);return l?{...C,transform:"translate("+$+"px, "+K+"px)",...yx(B.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:$,top:K}},[r,l,B.floating,u.x,u.y]);return g.useMemo(()=>({...u,update:D,refs:M,elements:B,floatingStyles:O}),[u,D,M,B,O])}const nI=t=>{function e(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:t,fn(r){const{element:s,padding:n}=typeof t=="function"?t(r):t;return s&&e(s)?s.current!=null?Bp({element:s.current,padding:n}).fn(r):{}:s?Bp({element:s,padding:n}).fn(r):{}}}},iI=(t,e)=>({...JO(t),options:[t,e]}),aI=(t,e)=>({...XO(t),options:[t,e]}),oI=(t,e)=>({...tI(t),options:[t,e]}),lI=(t,e)=>({...QO(t),options:[t,e]}),cI=(t,e)=>({...ZO(t),options:[t,e]}),dI=(t,e)=>({...eI(t),options:[t,e]}),uI=(t,e)=>({...nI(t),options:[t,e]});var hI="Arrow",xx=g.forwardRef((t,e)=>{const{children:r,width:s=10,height:n=5,...a}=t;return i.jsx(se.svg,{...a,ref:e,width:s,height:n,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:t.asChild?r:i.jsx("polygon",{points:"0,0 30,0 15,10"})})});xx.displayName=hI;var pI=xx;function fI(t,e=[]){let r=[];function s(a,o){const l=g.createContext(o),c=r.length;r=[...r,o];function d(p){const{scope:h,children:f,...x}=p,m=(h==null?void 0:h[t][c])||l,y=g.useMemo(()=>x,Object.values(x));return i.jsx(m.Provider,{value:y,children:f})}function u(p,h){const f=(h==null?void 0:h[t][c])||l,x=g.useContext(f);if(x)return x;if(o!==void 0)return o;throw new Error(`\`${p}\` must be used within \`${a}\``)}return d.displayName=a+"Provider",[d,u]}const n=()=>{const a=r.map(o=>g.createContext(o));return function(l){const c=(l==null?void 0:l[t])||a;return g.useMemo(()=>({[`__scope${t}`]:{...l,[t]:c}}),[l,c])}};return n.scopeName=t,[s,mI(n,...e)]}function mI(...t){const e=t[0];if(t.length===1)return e;const r=()=>{const s=t.map(n=>({useScope:n(),scopeName:n.scopeName}));return function(a){const o=s.reduce((l,{useScope:c,scopeName:d})=>{const p=c(a)[`__scope${d}`];return{...l,...p}},{});return g.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])}};return r.scopeName=e.scopeName,r}var vx="Popper",[bx,wx]=fI(vx),[_4,_x]=bx(vx),jx="PopperAnchor",kx=g.forwardRef((t,e)=>{const{__scopePopper:r,virtualRef:s,...n}=t,a=_x(jx,r),o=g.useRef(null),l=Ee(e,o);return g.useEffect(()=>{a.onAnchorChange((s==null?void 0:s.current)||o.current)}),s?null:i.jsx(se.div,{...n,ref:l})});kx.displayName=jx;var _d="PopperContent",[gI,yI]=bx(_d),Ex=g.forwardRef((t,e)=>{var Ct,Ze,mt,gt,Xn,zr;const{__scopePopper:r,side:s="bottom",sideOffset:n=0,align:a="center",alignOffset:o=0,arrowPadding:l=0,avoidCollisions:c=!0,collisionBoundary:d=[],collisionPadding:u=0,sticky:p="partial",hideWhenDetached:h=!1,updatePositionStrategy:f="optimized",onPlaced:x,...m}=t,y=_x(_d,r),[b,w]=g.useState(null),_=Ee(e,vr=>w(vr)),[j,k]=g.useState(null),E=dy(j),T=(E==null?void 0:E.width)??0,A=(E==null?void 0:E.height)??0,R=s+(a!=="center"?"-"+a:""),L=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},V=Array.isArray(d)?d:[d],I=V.length>0,D={padding:L,boundary:V.filter(vI),altBoundary:I},{refs:N,floatingStyles:M,placement:B,isPositioned:O,middlewareData:C}=sI({strategy:"fixed",placement:R,whileElementsMounted:(...vr)=>YO(...vr,{animationFrame:f==="always"}),elements:{reference:y.anchor},middleware:[iI({mainAxis:n+A,alignmentAxis:o}),c&&aI({mainAxis:!0,crossAxis:!1,limiter:p==="partial"?oI():void 0,...D}),c&&lI({...D}),cI({...D,apply:({elements:vr,rects:Js,availableWidth:Qn,availableHeight:zt})=>{const{width:La,height:Ma}=Js.reference,Te=vr.floating.style;Te.setProperty("--radix-popper-available-width",`${Qn}px`),Te.setProperty("--radix-popper-available-height",`${zt}px`),Te.setProperty("--radix-popper-anchor-width",`${La}px`),Te.setProperty("--radix-popper-anchor-height",`${Ma}px`)}}),j&&uI({element:j,padding:l}),bI({arrowWidth:T,arrowHeight:A}),h&&dI({strategy:"referenceHidden",...D})]}),[$,K]=Nx(B),z=Je(x);Dt(()=>{O&&(z==null||z())},[O,z]);const X=(Ct=C.arrow)==null?void 0:Ct.x,Z=(Ze=C.arrow)==null?void 0:Ze.y,ee=((mt=C.arrow)==null?void 0:mt.centerOffset)!==0,[ke,ce]=g.useState();return Dt(()=>{b&&ce(window.getComputedStyle(b).zIndex)},[b]),i.jsx("div",{ref:N.setFloating,"data-radix-popper-content-wrapper":"",style:{...M,transform:O?M.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ke,"--radix-popper-transform-origin":[(gt=C.transformOrigin)==null?void 0:gt.x,(Xn=C.transformOrigin)==null?void 0:Xn.y].join(" "),...((zr=C.hide)==null?void 0:zr.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:i.jsx(gI,{scope:r,placedSide:$,onArrowChange:k,arrowX:X,arrowY:Z,shouldHideArrow:ee,children:i.jsx(se.div,{"data-side":$,"data-align":K,...m,ref:_,style:{...m.style,animation:O?void 0:"none"}})})})});Ex.displayName=_d;var Tx="PopperArrow",xI={top:"bottom",right:"left",bottom:"top",left:"right"},Ax=g.forwardRef(function(e,r){const{__scopePopper:s,...n}=e,a=yI(Tx,s),o=xI[a.placedSide];return i.jsx("span",{ref:a.onArrowChange,style:{position:"absolute",left:a.arrowX,top:a.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[a.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[a.placedSide],visibility:a.shouldHideArrow?"hidden":void 0},children:i.jsx(pI,{...n,ref:r,style:{...n.style,display:"block"}})})});Ax.displayName=Tx;function vI(t){return t!==null}var bI=t=>({name:"transformOrigin",options:t,fn(e){var y,b,w;const{placement:r,rects:s,middlewareData:n}=e,o=((y=n.arrow)==null?void 0:y.centerOffset)!==0,l=o?0:t.arrowWidth,c=o?0:t.arrowHeight,[d,u]=Nx(r),p={start:"0%",center:"50%",end:"100%"}[u],h=(((b=n.arrow)==null?void 0:b.x)??0)+l/2,f=(((w=n.arrow)==null?void 0:w.y)??0)+c/2;let x="",m="";return d==="bottom"?(x=o?p:`${h}px`,m=`${-c}px`):d==="top"?(x=o?p:`${h}px`,m=`${s.floating.height+c}px`):d==="right"?(x=`${-c}px`,m=o?p:`${f}px`):d==="left"&&(x=`${s.floating.width+c}px`,m=o?p:`${f}px`),{data:{x,y:m}}}});function Nx(t){const[e,r="center"]=t.split("-");return[e,r]}var wI=kx,_I=Ex,jI=Ax,[Ia,j4]=Vs("Tooltip",[wx]),jd=wx(),Cx="TooltipProvider",kI=700,Hp="tooltip.open",[EI,Sx]=Ia(Cx),Px=t=>{const{__scopeTooltip:e,delayDuration:r=kI,skipDelayDuration:s=300,disableHoverableContent:n=!1,children:a}=t,[o,l]=g.useState(!0),c=g.useRef(!1),d=g.useRef(0);return g.useEffect(()=>{const u=d.current;return()=>window.clearTimeout(u)},[]),i.jsx(EI,{scope:e,isOpenDelayed:o,delayDuration:r,onOpen:g.useCallback(()=>{window.clearTimeout(d.current),l(!1)},[]),onClose:g.useCallback(()=>{window.clearTimeout(d.current),d.current=window.setTimeout(()=>l(!0),s)},[s]),isPointerInTransitRef:c,onPointerInTransitChange:g.useCallback(u=>{c.current=u},[]),disableHoverableContent:n,children:a})};Px.displayName=Cx;
vendor: 4,011 bytes, line 793
793var Rx="Tooltip",[k4,Da]=Ia(Rx),Yl="TooltipTrigger",TI=g.forwardRef((t,e)=>{const{__scopeTooltip:r,...s}=t,n=Da(Yl,r),a=Sx(Yl,r),o=jd(r),l=g.useRef(null),c=Ee(e,l,n.onTriggerChange),d=g.useRef(!1),u=g.useRef(!1),p=g.useCallback(()=>d.current=!1,[]);return g.useEffect(()=>()=>document.removeEventListener("pointerup",p),[p]),i.jsx(wI,{asChild:!0,...o,children:i.jsx(se.button,{"aria-describedby":n.open?n.contentId:void 0,"data-state":n.stateAttribute,...s,ref:c,onPointerMove:re(t.onPointerMove,h=>{h.pointerType!=="touch"&&!u.current&&!a.isPointerInTransitRef.current&&(n.onTriggerEnter(),u.current=!0)}),onPointerLeave:re(t.onPointerLeave,()=>{n.onTriggerLeave(),u.current=!1}),onPointerDown:re(t.onPointerDown,()=>{d.current=!0,document.addEventListener("pointerup",p,{once:!0})}),onFocus:re(t.onFocus,()=>{d.current||n.onOpen()}),onBlur:re(t.onBlur,n.onClose),onClick:re(t.onClick,n.onClose)})})});TI.displayName=Yl;var AI="TooltipPortal",[E4,NI]=Ia(AI,{forceMount:void 0}),Ms="TooltipContent",Ox=g.forwardRef((t,e)=>{const r=NI(Ms,t.__scopeTooltip),{forceMount:s=r.forceMount,side:n="top",...a}=t,o=Da(Ms,t.__scopeTooltip);return i.jsx(mr,{present:s||o.open,children:o.disableHoverableContent?i.jsx(Ix,{side:n,...a,ref:e}):i.jsx(CI,{side:n,...a,ref:e})})}),CI=g.forwardRef((t,e)=>{const r=Da(Ms,t.__scopeTooltip),s=Sx(Ms,t.__scopeTooltip),n=g.useRef(null),a=Ee(e,n),[o,l]=g.useState(null),{trigger:c,onClose:d}=r,u=n.current,{onPointerInTransitChange:p}=s,h=g.useCallback(()=>{l(null),p(!1)},[p]),f=g.useCallback((x,m)=>{const y=x.currentTarget,b={x:x.clientX,y:x.clientY},w=OI(b,y.getBoundingClientRect()),_=II(b,w),j=DI(m.getBoundingClientRect()),k=MI([..._,...j]);l(k),p(!0)},[p]);return g.useEffect(()=>()=>h(),[h]),g.useEffect(()=>{if(c&&u){const x=y=>f(y,u),m=y=>f(y,c);return c.addEventListener("pointerleave",x),u.addEventListener("pointerleave",m),()=>{c.removeEventListener("pointerleave",x),u.removeEventListener("pointerleave",m)}}},[c,u,f,h]),g.useEffect(()=>{if(o){const x=m=>{const y=m.target,b={x:m.clientX,y:m.clientY},w=(c==null?void 0:c.contains(y))||(u==null?void 0:u.contains(y)),_=!LI(b,o);w?h():_&&(h(),d())};return document.addEventListener("pointermove",x),()=>document.removeEventListener("pointermove",x)}},[c,u,o,d,h]),i.jsx(Ix,{...t,ref:a})}),[SI,PI]=Ia(Rx,{isInside:!1}),Ix=g.forwardRef((t,e)=>{const{__scopeTooltip:r,children:s,"aria-label":n,onEscapeKeyDown:a,onPointerDownOutside:o,...l}=t,c=Da(Ms,r),d=jd(r),{onClose:u}=c;return g.useEffect(()=>(document.addEventListener(Hp,u),()=>document.removeEventListener(Hp,u)),[u]),g.useEffect(()=>{if(c.trigger){const p=h=>{const f=h.target;f!=null&&f.contains(c.trigger)&&u()};return window.addEventListener("scroll",p,{capture:!0}),()=>window.removeEventListener("scroll",p,{capture:!0})}},[c.trigger,u]),i.jsx(ua,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:p=>p.preventDefault(),onDismiss:u,children:i.jsxs(_I,{"data-state":c.stateAttribute,...d,...l,ref:e,style:{...l.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[i.jsx(ff,{children:s}),i.jsx(SI,{scope:r,isInside:!0,children:i.jsx(sb,{id:c.contentId,role:"tooltip",children:n||s})})]})})});Ox.displayName=Ms;var Dx="TooltipArrow",RI=g.forwardRef((t,e)=>{const{__scopeTooltip:r,...s}=t,n=jd(r);return PI(Dx,r).isInside?null:i.jsx(jI,{...n,...s,ref:e})});RI.displayName=Dx;function OI(t,e){const r=Math.abs(e.top-t.y),s=Math.abs(e.bottom-t.y),n=Math.abs(e.right-t.x),a=Math.abs(e.left-t.x);switch(Math.min(r,s,n,a)){case a:return"left";case n:return"right";case r:return"top";case s:return"bottom";default:throw new Error("unreachable")}}function II(t,e,r=5){const s=[];
793switch(e){case"top":s.push({x:t.x-r,y:t.y+r},{x:t.x+r,y:t.y+r});break;case"bottom":s.push({x:t.x-r,y:t.y-r},{x:t.x+r,y:t.y-r});break;case"left":s.push({x:t.x+r,y:t.y-r},{x:t.x+r,y:t.y+r});break;case"right":s.push({x:t.x-r,y:t.y-r},{x:t.x-r,y:t.y+r});break}return s}function DI(t){const{top:e,right:r,bottom:s,left:n}=t;return[{x:n,y:e},{x:r,y:e},{x:r,y:s},{x:n,y:s}]}function LI(t,e){const{x:r,y:s}=t;let n=!1;for(let a=0,o=e.length-1;a<e.length;o=a++){const l=e[a].x,c=e[a].y,d=e[o].x,u=e[o].y;c>s!=u>s&&r<(d-l)*(s-c)/(u-c)+l&&(n=!n)}return n}function MI(t){const e=t.slice();return e.sort((r,s)=>r.x<s.x?-1:r.x>s.x?1:r.y<s.y?-1:r.y>s.y?1:0),VI(e)}function VI(t){if(t.length<=1)return t.slice();const e=[];for(let s=0;s<t.length;s++){const n=t[s];for(;e.length>=2;){const a=e[e.length-1],o=e[e.length-2];if((a.x-o.x)*(n.y-o.y)>=(a.y-o.y)*(n.x-o.x))e.pop();else break}e.push(n)}e.pop();const r=[];for(let s=t.length-1;s>=0;s--){const n=t[s];for(;r.length>=2;){const a=r[r.length-1],o=r[r.length-2];if((a.x-o.x)*(n.y-o.y)>=(a.y-o.y)*(n.x-o.x))r.pop();else break}r.push(n)}return r.pop(),e.length===1&&r.length===1&&e[0].x===r[0].x&&e[0].y===r[0].y?e:e.concat(r)}var $I=Px,Lx=Ox;const FI=$I,UI=g.forwardRef(({className:t,sideOffset:e=4,...r},s)=>i.jsx(Lx,{ref:s,sideOffset:e,className:q("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...r}));UI.displayName=Lx.displayName;const BI=()=>{try{if(console.log("🔄 Initializing Rybbit Analytics..."),document.querySelector('script[src="https://app.rybbit.io/api/script.js"]')){console.log("✅ Rybbit script already loaded");return}const t=document.createElement("script");t.src="https://app.rybbit.io/api/script.js",t.setAttribute("data-site-id","8"),t.defer=!0,t.onload=()=>{console.log("✅ Rybbit Analytics loaded successfully"),setTimeout(()=>{if(typeof window.rybbit=="function"){console.log("✅ Rybbit function available - analytics ready!");try{window.rybbit("pageview"),console.log("📄 Initial pageview tracked")}catch(e){console.warn("⚠️ Initial pageview failed:",e)}}else console.warn("⚠️ Rybbit function not available yet")},1e3)},t.onerror=()=>{console.error("❌ Failed to load Rybbit Analytics script")},document.head.appendChild(t)}catch(t){console.error("Failed to initialize Rybbit Analytics:",t)}},zI=t=>{try{if(typeof window.rybbit=="function"){const e=t||window.location.pathname;window.rybbit("pageview",e),console.log(`📄 Tracked pageview: ${e}`)}else console.warn("⚠️ Cannot track pageview - Rybbit not loaded yet")}catch(e){console.error("❌ Failed to track pageview:",e)}},Bo=768;function HI(){const[t,e]=g.useState(void 0);return g.useEffect(()=>{const r=window.matchMedia(`(max-width: ${Bo-1}px)`),s=()=>{e(window.innerWidth<Bo)};return r.addEventListener("change",s),e(window.innerWidth<Bo),()=>r.removeEventListener("change",s)},[]),!!t}const WI=()=>{const t=HI(),{pathname:e}=He();return t?i.jsx("div",{className:`fixed right-6 z-50 md:hidden ${e==="/affiliates"||e==="/affiliates/"?"bottom-[110px]":"bottom-[calc(1.5rem+env(safe-area-inset-bottom,0px))]"}`,children:i.jsxs("div",{className:"relative",children:[i.jsx("div",{className:"absolute inset-0 rounded-full bg-gradient-to-r from-honeydew-400 to-honeydew-600 opacity-20 blur-xl animate-pulse"}),i.jsx("div",{className:"relative bg-white dark:bg-gray-800 rounded-full p-3 shadow-2xl border border-honeydew-400/30 dark:border-honeydew-600/30 backdrop-blur-sm",children:i.jsx(al,{className:"scale-125"})})]})}):null},qI="modulepreload",GI=function(t){return"/"+t},Wp={},v=function(e,r,s){let n=Promise.resolve();if(r&&r.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));n=Promise.allSettled(r.map(c=>{if(c=GI(c),c in Wp)return;Wp[c]=!0;const d=c.endsWith(".css"),u=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${u}`))return;const p=document.createElement("link");if(p.rel=d?"stylesheet":qI,d||(p.as="script"),p.crossOrigin="",p.href=c,l&&p.setAttribute("nonce",l),document.head.appendChild(p),d)return new Promise((h,f)=>{p.addEventListener("load",h),p.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${c}`)))})}))}function a(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return n.then(o=>{for(const l of o||[])l.status==="rejected"&&a(l.reason);return e().catch(a)})},ca=(t,e,r)=>{const s=t[e];return s?typeof s=="function"?s():Promise.resolve(s):new Promise((n,a)=>{(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(a.bind(null,new Error("Unknown variable dynamic import: "+e+(e.split("/").length!==r?". Note that variables only represent file names one level deep.":""))))})},$r=[{code:"en",name:"English",nativeName:"English",flag:"🇺🇸",dir:"ltr"},{code:"fr",name:"French",nativeName:"Français",flag:"🇫🇷",dir:"ltr"},{code:"es",name:"Spanish",nativeName:"Español",flag:"🇪🇸",dir:"ltr"},{code:"pt",name:"Portuguese",nativeName:"Português",flag:"🇧🇷",dir:"ltr"},{code:"nl",name:"Dutch",nativeName:"Nederlands",flag:"🇳🇱",dir:"ltr"},{code:"ar",name:"Arabic",nativeName:"العربية",flag:"🇸🇦",dir:"rtl"}],Xe={en:{searchPlaceholder:"Search for help...",searchNoResults:"No results found",breadcrumbHome:"Home",supportCenter:"Support Center",relatedArticles:"Related Articles",lastUpdated:"Last updated",wasHelpful:"Was this article helpful?",thanksFeedback:"Thanks for your feedback!",yes:"Yes",no:"No",backToCollection:"Back",articles:"articles",viewAll:"View all"},fr:{searchPlaceholder:"Rechercher de l'aide...",searchNoResults:"Aucun résultat trouvé",breadcrumbHome:"Accueil",supportCenter:"Centre d'aide",relatedArticles:"Articles connexes",lastUpdated:"Dernière mise à jour",wasHelpful:"Cet article vous a-t-il été utile ?",thanksFeedback:"Merci pour votre retour !",yes:"Oui",no:"Non",backToCollection:"Retour",articles:"articles",viewAll:"Voir tout"},es:{searchPlaceholder:"Buscar ayuda...",searchNoResults:"No se encontraron resultados",breadcrumbHome:"Inicio",supportCenter:"Centro de ayuda",relatedArticles:"Artículos relacionados",lastUpdated:"Última actualización",wasHelpful:"¿Te resultó útil este artículo?",thanksFeedback:"¡Gracias por tu opinión!",yes:"Sí",no:"No",backToCollection:"Volver",articles:"artículos",viewAll:"Ver todo"},pt:{searchPlaceholder:"Pesquisar ajuda...",searchNoResults:"Nenhum resultado encontrado",breadcrumbHome:"Início",supportCenter:"Central de ajuda",relatedArticles:"Artigos relacionados",lastUpdated:"Última atualização",wasHelpful:"Este artigo foi útil?",thanksFeedback:"Obrigado pelo seu feedback!",yes:"Sim",no:"Não",backToCollection:"Voltar",articles:"artigos",viewAll:"Ver tudo"},nl:{searchPlaceholder:"Zoek naar hulp...",searchNoResults:"Geen resultaten gevonden",breadcrumbHome:"Home",supportCenter:"Helpcentrum",relatedArticles:"Gerelateerde artikelen",lastUpdated:"Laatst bijgewerkt",wasHelpful:"Was dit artikel nuttig?",thanksFeedback:"Bedankt voor je feedback!",yes:"Ja",no:"Nee",backToCollection:"Terug",articles:"artikelen",viewAll:"Bekijk alles"},ar:{searchPlaceholder:"ابحث عن مساعدة...",searchNoResults:"لم يتم العثور على نتائج",breadcrumbHome:"الرئيسية",supportCenter:"مركز الدعم",relatedArticles:"مقالات ذات صلة",lastUpdated:"آخر تحديث",wasHelpful:"هل كانت هذه المقالة مفيدة؟",thanksFeedback:"شكراً لملاحظاتك!",yes:"نعم",no:"لا",backToCollection:"رجوع",articles:"مقالات",viewAll:"عرض الكل"}},KI=$r.map(t=>t.code);function kd(t){return KI.includes(t)}function YI(t){return $r.find(e=>e.code===t)||$r[0]}async function Mx(t){return(await ca(Object.assign({
793"../data/support/ar/index.ts":()=>v(()=>import("./index-BmVoW8f5.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71])),
793"../data/support/en/index.ts":()=>v(()=>import("./index-DkbhHhK5.js"),__vite__mapDeps([72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143])),
793"../data/support/es/index.ts":()=>v(()=>import("./index-DtW-PfID.js"),__vite__mapDeps([144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215])),
793"../data/support/fr/index.ts":()=>v(()=>import("./index-CQmL7Aoc.js"),__vite__mapDeps([216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287])),
793"../data/support/nl/index.ts":()=>v(()=>import("./index-Bp4pYDko.js"),__vite__mapDeps([288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359])),
793"../data/support/pt/index.ts":()=>v(()=>import("./index-CrwUIkyX.js"),__vite__mapDeps([360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431]))}),`../data/support/${t}/index.ts`,5)).collections}async function JI(t){return(await ca(Object.assign({
793"../data/support/ar/index.ts":()=>v(()=>import("./index-BmVoW8f5.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71])),
793"../data/support/en/index.ts":()=>v(()=>import("./index-DkbhHhK5.js"),__vite__mapDeps([72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143])),
793"../data/support/es/index.ts":()=>v(()=>import("./index-DtW-PfID.js"),__vite__mapDeps([144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215])),
793"../data/support/fr/index.ts":()=>v(()=>import("./index-CQmL7Aoc.js"),__vite__mapDeps([216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287])),
793"../data/support/nl/index.ts":()=>v(()=>import("./index-Bp4pYDko.js"),__vite__mapDeps([288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359])),
793"../data/support/pt/index.ts":()=>v(()=>import("./index-CrwUIkyX.js"),__vite__mapDeps([360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431]))}),`../data/support/${t}/index.ts`,5)).searchIndex}async function Vx(t,e,r){try{const s=await ca(Object.assign({
793"../data/support/ar/discover-honeydew/free-vs-paid.json":()=>v(()=>import("./free-vs-paid-CII1xzvQ.js"),[]),
793"../data/support/ar/discover-honeydew/recipe-saving-and-copyright.json":()=>v(()=>import("./recipe-saving-and-copyright-XLsBvwIj.js"),[]),
793"../data/support/ar/discover-honeydew/supported-languages.json":()=>v(()=>import("./supported-languages-BY7_QHjs.js"),[]),
793"../data/support/ar/discover-honeydew/what-is-honeydew.json":()=>v(()=>import("./what-is-honeydew-DdIaLWg0.js"),[]),
793"../data/support/ar/first-steps-android/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-NDurNBjY.js"),[]),
793"../data/support/ar/first-steps-ios/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-Crgw6UDH.js"),[]),
793"../data/support/ar/first-steps-ios/getting-the-most-out.json":()=>v(()=>import("./getting-the-most-out-NMiUkUNP.js"),[]),
793"../data/support/ar/fixing-issues/app-keeps-crashing.json":()=>v(()=>import("./app-keeps-crashing-bOTsdzUS.js"),[]),
793"../data/support/ar/fixing-issues/contact-honeydew.json":()=>v(()=>import("./contact-honeydew-BGpYNYGU.js"),[]),
793"../data/support/ar/fixing-issues/error-saving-recipe.json":()=>v(()=>import("./error-saving-recipe-hIRKKVmG.js"),[]),
793"../data/support/ar/fixing-issues/not-in-share-options.json":()=>v(()=>import("./not-in-share-options-ZduHRN49.js"),[]),
793"../data/support/ar/fixing-issues/report-a-bug.json":()=>v(()=>import("./report-a-bug-CkKzWP7c.js"),[]),
793"../data/support/ar/plans-and-payments/charged-after-free-trial.json":()=>v(()=>import("./charged-after-free-trial-WA-T1dkd.js"),[]),
793"../data/support/ar/plans-and-payments/charged-twice.json":()=>v(()=>import("./charged-twice-C3NZidyB.js"),[]),
793"../data/support/ar/plans-and-payments/discounts.json":()=>v(()=>import("./discounts-Danqvpe6.js"),[]),
793"../data/support/ar/plans-and-payments/how-much-does-honeydew-cost.json":()=>v(()=>import("./how-much-does-honeydew-cost-iSBD3YEW.js"),[]),
793"../data/support/ar/plans-and-payments/how-to-cancel.json":()=>v(()=>import("./how-to-cancel-D1yNCqdh.js"),[]),
793"../data/support/ar/plans-and-payments/how-to-check-subscription.json":()=>v(()=>import("./how-to-check-subscription-CdJmokRc.js"),[]),
793"../data/support/ar/plans-and-payments/how-to-subscribe.json":()=>v(()=>import("./how-to-subscribe-BgoHOoOS.js"),[]),
793"../data/support/ar/plans-and-payments/lose-recipes-if-cancel.json":()=>v(()=>import("./lose-recipes-if-cancel-DD2BFbTG.js"),[]),
793"../data/support/ar/plans-and-payments/one-time-payment.json":()=>v(()=>import("./one-time-payment-BMt3Q6XB.js"),[]),
793"../data/support/ar/plans-and-payments/refund-request.json":()=>v(()=>import("./refund-request-QQOkDizq.js"),[]),
793"../data/support/ar/plans-and-payments/switch-billing-plan.json":()=>v(()=>import("./switch-billing-plan-5Umkk_ig.js"),[]),
793"../data/support/ar/plans-and-payments/update-payment-method.json":()=>v(()=>import("./update-payment-method-Cly6olZv.js"),[]),
793"../data/support/ar/plans-and-payments/what-do-you-get-with-honeydew-plus.json":()=>v(()=>import("./what-do-you-get-with-honeydew-plus-BuyZ8gZE.js"),[]),
793"../data/support/ar/using-the-app/ai-edit.json":()=>v(()=>import("./ai-edit-BsfsicOb.js"),[]),
793"../data/support/ar/using-the-app/chrome-extension.json":()=>v(()=>import("./chrome-extension-DkD7WeR2.js"),[]),
793"../data/support/ar/using-the-app/grocery-checkout.json":()=>v(()=>import("./grocery-checkout-B0YkwNkQ.js"),[]),
793"../data/support/ar/using-the-app/household-sharing.json":()=>v(()=>import("./household-sharing-E9s_SK6D.js"),[]),
793"../data/support/ar/using-the-app/how-to-add-notes.json":()=>v(()=>import("./how-to-add-notes-BZcZf7vl.js"),[]),
793"../data/support/ar/using-the-app/how-to-create-cookbook.json":()=>v(()=>import("./how-to-create-cookbook-6rCj4a8N.js"),[]),
793"../data/support/ar/using-the-app/how-to-delete-recipe.json":()=>v(()=>import("./how-to-delete-recipe-Ct2AkJ3T.js"),[]),
793"../data/support/ar/using-the-app/how-to-search-recipes.json":()=>v(()=>import("./how-to-search-recipes-CRx9eKm4.js"),[]),
793"../data/support/ar/using-the-app/how-to-view-original-source.json":()=>v(()=>import("./how-to-view-original-source-B7G1VvEy.js"),[]),
793"../data/support/ar/using-the-app/meal-planning.json":()=>v(()=>import("./meal-planning-Cs8XjA_3.js"),[]),
793"../data/support/ar/using-the-app/move-recipe-to-cookbook.json":()=>v(()=>import("./move-recipe-to-cookbook-BTkJz0Uc.js"),[]),
793"../data/support/ar/using-the-app/multiple-devices.json":()=>v(()=>import("./multiple-devices-CHE7zy1S.js"),[]),
793"../data/support/ar/using-the-app/nutrition-information.json":()=>v(()=>import("./nutrition-information-COGexsG4.js"),[]),
793"../data/support/ar/using-the-app/offline-mode.json":()=>v(()=>import("./offline-mode-6eFPafNN.js"),[]),
793"../data/support/ar/using-the-app/original-source-disappears.json":()=>v(()=>import("./original-source-disappears-CRUEJBK0.js"),[]),
793"../data/support/ar/using-the-app/print-or-share-recipes.json":()=>v(()=>import("./print-or-share-recipes-DEA_HOzG.js"),[]),
793"../data/support/ar/using-the-app/recover-deleted-recipes.json":()=>v(()=>import("./recover-deleted-recipes-JR-Hd_o6.js"),[]),
793"../data/support/ar/using-the-app/remove-recipe-from-cookbook.json":()=>v(()=>import("./remove-recipe-from-cookbook-CqjF591y.js"),[]),
793"../data/support/ar/using-the-app/translate-recipes.json":()=>v(()=>import("./translate-recipes-DNjzlmFl.js"),[]),
793"../data/support/ar/using-the-app/use-on-computer.json":()=>v(()=>import("./use-on-computer-BYcLFIsn.js"),[]),
793"../data/support/ar/your-account/add-password-social-login.json":()=>v(()=>import("./add-password-social-login-DpI0BkHS.js"),[]),
793"../data/support/ar/your-account/asked-to-subscribe-again.json":()=>v(()=>import("./asked-to-subscribe-again-C3Bh0M-O.js"),[]),
793"../data/support/ar/your-account/cant-reset-password.json":()=>v(()=>import("./cant-reset-password-qLx3HMr5.js"),[]),
793"../data/support/ar/your-account/change-display-name.json":()=>v(()=>import("./change-display-name-PlTMqblH.js"),[]),
793"../data/support/ar/your-account/delete-account.json":()=>v(()=>import("./delete-account-D_3pw7j-.js"),[]),
793"../data/support/ar/your-account/forgot-password.json":()=>v(()=>import("./forgot-password-Ch1YGGC1.js"),[]),
793"../data/support/ar/your-account/logged-out-lost-recipes.json":()=>v(()=>import("./logged-out-lost-recipes-BwDrKH3w.js"),[]),
793"../data/support/ar/your-account/share-account-family.json":()=>v(()=>import("./share-account-family-x0gJJa9M.js"),[]),
793"../data/support/ar/your-account/sign-in-web-app.json":()=>v(()=>import("./sign-in-web-app-lTmchPZ6.js"),[]),
793"../data/support/ar/your-account/sign-out.json":()=>v(()=>import("./sign-out-CZW8LHTa.js"),[]),
793"../data/support/ar/your-account/switch-to-email-login.json":()=>v(()=>import("./switch-to-email-login-Bt4kwawG.js"),[]),
793"../data/support/en/discover-honeydew/free-vs-paid.json":()=>v(()=>import("./free-vs-paid-C9OaUovI.js"),[]),
793"../data/support/en/discover-honeydew/recipe-saving-and-copyright.json":()=>v(()=>import("./recipe-saving-and-copyright-5nLGMsC7.js"),[]),
793"../data/support/en/discover-honeydew/supported-languages.json":()=>v(()=>import("./supported-languages-Dm4PL2zs.js"),[]),
793"../data/support/en/discover-honeydew/what-is-honeydew.json":()=>v(()=>import("./what-is-honeydew-DQ1gRr-7.js"),[]),
793"../data/support/en/first-steps-android/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-D6qryQbT.js"),[]),
793"../data/support/en/first-steps-ios/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-aXGqd3p9.js"),[]),
793"../data/support/en/first-steps-ios/getting-the-most-out.json":()=>v(()=>import("./getting-the-most-out-DoR1bHGH.js"),[]),
793"../data/support/en/fixing-issues/app-keeps-crashing.json":()=>v(()=>import("./app-keeps-crashing-D5YXsaVC.js"),[]),
793"../data/support/en/fixing-issues/contact-honeydew.json":()=>v(()=>import("./contact-honeydew-xIjObp6Q.js"),[]),
793"../data/support/en/fixing-issues/error-saving-recipe.json":()=>v(()=>import("./error-saving-recipe-D-V1Lh_m.js"),[]),
793"../data/support/en/fixing-issues/not-in-share-options.json":()=>v(()=>import("./not-in-share-options-DxBki5Yw.js"),[]),
793"../data/support/en/fixing-issues/report-a-bug.json":()=>v(()=>import("./report-a-bug-BLgWsq3v.js"),[]),
793"../data/support/en/plans-and-payments/charged-after-free-trial.json":()=>v(()=>import("./charged-after-free-trial-B-u6T5st.js"),[]),
793"../data/support/en/plans-and-payments/charged-twice.json":()=>v(()=>import("./charged-twice-CDSa-6w5.js"),[]),
793"../data/support/en/plans-and-payments/discounts.json":()=>v(()=>import("./discounts-D0bwi46G.js"),[]),
793"../data/support/en/plans-and-payments/how-much-does-honeydew-cost.json":()=>v(()=>import("./how-much-does-honeydew-cost-fzplM2Bo.js"),[]),
793"../data/support/en/plans-and-payments/how-to-cancel.json":()=>v(()=>import("./how-to-cancel-C8MivmGO.js"),[]),
793"../data/support/en/plans-and-payments/how-to-check-subscription.json":()=>v(()=>import("./how-to-check-subscription-BxLTTLy8.js"),[]),
793"../data/support/en/plans-and-payments/how-to-subscribe.json":()=>v(()=>import("./how-to-subscribe-Cnh-kd4e.js"),[]),
793"../data/support/en/plans-and-payments/lose-recipes-if-cancel.json":()=>v(()=>import("./lose-recipes-if-cancel-DFPLCM7Z.js"),[]),
793"../data/support/en/plans-and-payments/one-time-payment.json":()=>v(()=>import("./one-time-payment-DqWdJrsx.js"),[]),
793"../data/support/en/plans-and-payments/refund-request.json":()=>v(()=>import("./refund-request-sykYEYIT.js"),[]),
793"../data/support/en/plans-and-payments/switch-billing-plan.json":()=>v(()=>import("./switch-billing-plan-BfUiNdMK.js"),[]),
793"../data/support/en/plans-and-payments/update-payment-method.json":()=>v(()=>import("./update-payment-method-UTH3qcBB.js"),[]),
793"../data/support/en/plans-and-payments/what-do-you-get-with-honeydew-plus.json":()=>v(()=>import("./what-do-you-get-with-honeydew-plus-C7QEUwfR.js"),[]),
793"../data/support/en/using-the-app/ai-edit.json":()=>v(()=>import("./ai-edit-CY5hz2yu.js"),[]),
793"../data/support/en/using-the-app/chrome-extension.json":()=>v(()=>import("./chrome-extension-DDk1ZFVd.js"),[]),
793"../data/support/en/using-the-app/grocery-checkout.json":()=>v(()=>import("./grocery-checkout-C7cwK_L1.js"),[]),
793"../data/support/en/using-the-app/household-sharing.json":()=>v(()=>import("./household-sharing-CpJD9BBh.js"),[]),
793"../data/support/en/using-the-app/how-to-add-notes.json":()=>v(()=>import("./how-to-add-notes-CRqCTmMU.js"),[]),
793"../data/support/en/using-the-app/how-to-create-cookbook.json":()=>v(()=>import("./how-to-create-cookbook-mD1_Ojj4.js"),[]),
793"../data/support/en/using-the-app/how-to-delete-recipe.json":()=>v(()=>import("./how-to-delete-recipe-DNCBik5f.js"),[]),
793"../data/support/en/using-the-app/how-to-search-recipes.json":()=>v(()=>import("./how-to-search-recipes-DO2nQGRj.js"),[]),
793"../data/support/en/using-the-app/how-to-view-original-source.json":()=>v(()=>import("./how-to-view-original-source-C4_9zmV-.js"),[]),
793"../data/support/en/using-the-app/meal-planning.json":()=>v(()=>import("./meal-planning-BHNMMlE4.js"),[]),
793"../data/support/en/using-the-app/move-recipe-to-cookbook.json":()=>v(()=>import("./move-recipe-to-cookbook-Ds8dopgP.js"),[]),
793"../data/support/en/using-the-app/multiple-devices.json":()=>v(()=>import("./multiple-devices-zqM1JCOC.js"),[]),
793"../data/support/en/using-the-app/nutrition-information.json":()=>v(()=>import("./nutrition-information-ByiuWCIO.js"),[]),
793"../data/support/en/using-the-app/offline-mode.json":()=>v(()=>import("./offline-mode-CFUt_3r_.js"),[]),
793"../data/support/en/using-the-app/original-source-disappears.json":()=>v(()=>import("./original-source-disappears-Dq1rfE1Z.js"),[]),
793"../data/support/en/using-the-app/print-or-share-recipes.json":()=>v(()=>import("./print-or-share-recipes-DLovTu6D.js"),[]),
793"../data/support/en/using-the-app/recover-deleted-recipes.json":()=>v(()=>import("./recover-deleted-recipes-Dll98jDr.js"),[]),
793"../data/support/en/using-the-app/remove-recipe-from-cookbook.json":()=>v(()=>import("./remove-recipe-from-cookbook-CI0ruzaz.js"),[]),
793"../data/support/en/using-the-app/translate-recipes.json":()=>v(()=>import("./translate-recipes-C-rudp7O.js"),[]),
793"../data/support/en/using-the-app/use-on-computer.json":()=>v(()=>import("./use-on-computer-6_XT1Y8h.js"),[]),
793"../data/support/en/your-account/add-password-social-login.json":()=>v(()=>import("./add-password-social-login-Bj1abSr0.js"),[]),
793"../data/support/en/your-account/asked-to-subscribe-again.json":()=>v(()=>import("./asked-to-subscribe-again-CDl6RN09.js"),[]),
793"../data/support/en/your-account/cant-reset-password.json":()=>v(()=>import("./cant-reset-password-MnPirKdw.js"),[]),
793"../data/support/en/your-account/change-display-name.json":()=>v(()=>import("./change-display-name-DsAUHBmV.js"),[]),
793"../data/support/en/your-account/delete-account.json":()=>v(()=>import("./delete-account-CBvtSRNo.js"),[]),
793"../data/support/en/your-account/forgot-password.json":()=>v(()=>import("./forgot-password-DpESwA3E.js"),[]),
793"../data/support/en/your-account/logged-out-lost-recipes.json":()=>v(()=>import("./logged-out-lost-recipes-BZveILV7.js"),[]),
793"../data/support/en/your-account/share-account-family.json":()=>v(()=>import("./share-account-family-DHE3gaP5.js"),[]),
793"../data/support/en/your-account/sign-in-web-app.json":()=>v(()=>import("./sign-in-web-app-bchSIbpf.js"),[]),
793"../data/support/en/your-account/sign-out.json":()=>v(()=>import("./sign-out-TVbNCIvj.js"),[]),
793"../data/support/en/your-account/switch-to-email-login.json":()=>v(()=>import("./switch-to-email-login-Bv-qrfAz.js"),[]),
793"../data/support/es/discover-honeydew/free-vs-paid.json":()=>v(()=>import("./free-vs-paid-DFYWSs_C.js"),[]),
793"../data/support/es/discover-honeydew/recipe-saving-and-copyright.json":()=>v(()=>import("./recipe-saving-and-copyright-CIXPU6lh.js"),[]),
793"../data/support/es/discover-honeydew/supported-languages.json":()=>v(()=>import("./supported-languages-9BTHGIur.js"),[]),
793"../data/support/es/discover-honeydew/what-is-honeydew.json":()=>v(()=>import("./what-is-honeydew-CnP2rGvB.js"),[]),
793"../data/support/es/first-steps-android/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-BLAHC7u2.js"),[]),
793"../data/support/es/first-steps-ios/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-Dbi5w1Sv.js"),[]),
793"../data/support/es/first-steps-ios/getting-the-most-out.json":()=>v(()=>import("./getting-the-most-out-Spr1yEo0.js"),[]),
793"../data/support/es/fixing-issues/app-keeps-crashing.json":()=>v(()=>import("./app-keeps-crashing-BUopI-AG.js"),[]),
793"../data/support/es/fixing-issues/contact-honeydew.json":()=>v(()=>import("./contact-honeydew-CdBdi6XH.js"),[]),
793"../data/support/es/fixing-issues/error-saving-recipe.json":()=>v(()=>import("./error-saving-recipe-D_RZwS8e.js"),[]),
793"../data/support/es/fixing-issues/not-in-share-options.json":()=>v(()=>import("./not-in-share-options-CfdTAYgk.js"),[]),
793"../data/support/es/fixing-issues/report-a-bug.json":()=>v(()=>import("./report-a-bug-CclQEcA_.js"),[]),
793"../data/support/es/plans-and-payments/charged-after-free-trial.json":()=>v(()=>import("./charged-after-free-trial-DJmCficR.js"),[]),
793"../data/support/es/plans-and-payments/charged-twice.json":()=>v(()=>import("./charged-twice-BKD-ZATn.js"),[]),
793"../data/support/es/plans-and-payments/discounts.json":()=>v(()=>import("./discounts-DRrqXf4o.js"),[]),
793"../data/support/es/plans-and-payments/how-much-does-honeydew-cost.json":()=>v(()=>import("./how-much-does-honeydew-cost-D4N5W3E0.js"),[]),
793"../data/support/es/plans-and-payments/how-to-cancel.json":()=>v(()=>import("./how-to-cancel-BUXmucGf.js"),[]),
793"../data/support/es/plans-and-payments/how-to-check-subscription.json":()=>v(()=>import("./how-to-check-subscription-DtyUg1dD.js"),[]),
793"../data/support/es/plans-and-payments/how-to-subscribe.json":()=>v(()=>import("./how-to-subscribe-DgKNyKJX.js"),[]),
793"../data/support/es/plans-and-payments/lose-recipes-if-cancel.json":()=>v(()=>import("./lose-recipes-if-cancel-Cc8Jmjd-.js"),[]),
793"../data/support/es/plans-and-payments/one-time-payment.json":()=>v(()=>import("./one-time-payment-DQb9vHkS.js"),[]),
793"../data/support/es/plans-and-payments/refund-request.json":()=>v(()=>import("./refund-request-C0IB4liN.js"),[]),
793"../data/support/es/plans-and-payments/switch-billing-plan.json":()=>v(()=>import("./switch-billing-plan-DQilPIk4.js"),[]),
793"../data/support/es/plans-and-payments/update-payment-method.json":()=>v(()=>import("./update-payment-method-HXBDp1X3.js"),[]),
793"../data/support/es/plans-and-payments/what-do-you-get-with-honeydew-plus.json":()=>v(()=>import("./what-do-you-get-with-honeydew-plus-BnpxX_3q.js"),[]),
793"../data/support/es/using-the-app/ai-edit.json":()=>v(()=>import("./ai-edit-DfUwWujh.js"),[]),
793"../data/support/es/using-the-app/chrome-extension.json":()=>v(()=>import("./chrome-extension-CtVkUFIc.js"),[]),
793"../data/support/es/using-the-app/grocery-checkout.json":()=>v(()=>import("./grocery-checkout-0BNY74E5.js"),[]),
793"../data/support/es/using-the-app/household-sharing.json":()=>v(()=>import("./household-sharing-CAm_SAyk.js"),[]),
793"../data/support/es/using-the-app/how-to-add-notes.json":()=>v(()=>import("./how-to-add-notes-idk2KZxF.js"),[]),
793"../data/support/es/using-the-app/how-to-create-cookbook.json":()=>v(()=>import("./how-to-create-cookbook-D0ymwzPy.js"),[]),
793"../data/support/es/using-the-app/how-to-delete-recipe.json":()=>v(()=>import("./how-to-delete-recipe-D5BUC3U0.js"),[]),
793"../data/support/es/using-the-app/how-to-search-recipes.json":()=>v(()=>import("./how-to-search-recipes-CnuROnM8.js"),[]),
793"../data/support/es/using-the-app/how-to-view-original-source.json":()=>v(()=>import("./how-to-view-original-source-IXXEMnOW.js"),[]),
793"../data/support/es/using-the-app/meal-planning.json":()=>v(()=>import("./meal-planning-DpSSZKLI.js"),[]),
793"../data/support/es/using-the-app/move-recipe-to-cookbook.json":()=>v(()=>import("./move-recipe-to-cookbook-C2zx4MT2.js"),[]),
793"../data/support/es/using-the-app/multiple-devices.json":()=>v(()=>import("./multiple-devices-vZJAqwzk.js"),[]),
793"../data/support/es/using-the-app/nutrition-information.json":()=>v(()=>import("./nutrition-information-BJqFcFCt.js"),[]),
793"../data/support/es/using-the-app/offline-mode.json":()=>v(()=>import("./offline-mode-Bfvno3qJ.js"),[]),
793"../data/support/es/using-the-app/original-source-disappears.json":()=>v(()=>import("./original-source-disappears-CSSkWU0f.js"),[]),
793"../data/support/es/using-the-app/print-or-share-recipes.json":()=>v(()=>import("./print-or-share-recipes-TrNmABMI.js"),[]),
793"../data/support/es/using-the-app/recover-deleted-recipes.json":()=>v(()=>import("./recover-deleted-recipes-CRqdUBGV.js"),[]),
793"../data/support/es/using-the-app/remove-recipe-from-cookbook.json":()=>v(()=>import("./remove-recipe-from-cookbook-qbFb33dQ.js"),[]),
793"../data/support/es/using-the-app/translate-recipes.json":()=>v(()=>import("./translate-recipes-c2KjK2k-.js"),[]),
793"../data/support/es/using-the-app/use-on-computer.json":()=>v(()=>import("./use-on-computer-DQvZcOMD.js"),[]),
793"../data/support/es/your-account/add-password-social-login.json":()=>v(()=>import("./add-password-social-login-CJYnS9Sb.js"),[]),
793"../data/support/es/your-account/asked-to-subscribe-again.json":()=>v(()=>import("./asked-to-subscribe-again-DVTgiv1R.js"),[]),
793"../data/support/es/your-account/cant-reset-password.json":()=>v(()=>import("./cant-reset-password-CMER1cRJ.js"),[]),
793"../data/support/es/your-account/change-display-name.json":()=>v(()=>import("./change-display-name-DB92L8kL.js"),[]),
793"../data/support/es/your-account/delete-account.json":()=>v(()=>import("./delete-account-lqioEj3p.js"),[]),
793"../data/support/es/your-account/forgot-password.json":()=>v(()=>import("./forgot-password-DSqE7TMl.js"),[]),
793"../data/support/es/your-account/logged-out-lost-recipes.json":()=>v(()=>import("./logged-out-lost-recipes-Q-iJTvbn.js"),[]),
793"../data/support/es/your-account/share-account-family.json":()=>v(()=>import("./share-account-family-Dz89_SRX.js"),[]),
793"../data/support/es/your-account/sign-in-web-app.json":()=>v(()=>import("./sign-in-web-app-60cjCNOC.js"),[]),
793"../data/support/es/your-account/sign-out.json":()=>v(()=>import("./sign-out-B16iiLVK.js"),[]),
793"../data/support/es/your-account/switch-to-email-login.json":()=>v(()=>import("./switch-to-email-login-kOUbX0C5.js"),[]),
793"../data/support/fr/discover-honeydew/free-vs-paid.json":()=>v(()=>import("./free-vs-paid-Yvl5FtE-.js"),[]),
793"../data/support/fr/discover-honeydew/recipe-saving-and-copyright.json":()=>v(()=>import("./recipe-saving-and-copyright-BYM9xyOZ.js"),[]),
793"../data/support/fr/discover-honeydew/supported-languages.json":()=>v(()=>import("./supported-languages-BNQI7R2K.js"),[]),
793"../data/support/fr/discover-honeydew/what-is-honeydew.json":()=>v(()=>import("./what-is-honeydew-CVAzZM1o.js"),[]),
793"../data/support/fr/first-steps-android/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-CbSl_739.js"),[]),
793"../data/support/fr/first-steps-ios/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-Bd7Lr2WA.js"),[]),
793"../data/support/fr/first-steps-ios/getting-the-most-out.json":()=>v(()=>import("./getting-the-most-out-C8X2VLGS.js"),[]),
793"../data/support/fr/fixing-issues/app-keeps-crashing.json":()=>v(()=>import("./app-keeps-crashing-DuTHwkL_.js"),[]),
793"../data/support/fr/fixing-issues/contact-honeydew.json":()=>v(()=>import("./contact-honeydew-DQXkZxCn.js"),[]),
793"../data/support/fr/fixing-issues/error-saving-recipe.json":()=>v(()=>import("./error-saving-recipe-DpChvWZz.js"),[]),
793"../data/support/fr/fixing-issues/not-in-share-options.json":()=>v(()=>import("./not-in-share-options-B1g9HpAg.js"),[]),
793"../data/support/fr/fixing-issues/report-a-bug.json":()=>v(()=>import("./report-a-bug-BjXZFSmm.js"),[]),
793"../data/support/fr/plans-and-payments/charged-after-free-trial.json":()=>v(()=>import("./charged-after-free-trial-Cri8qAC-.js"),[]),
793"../data/support/fr/plans-and-payments/charged-twice.json":()=>v(()=>import("./charged-twice-BzcmJ66u.js"),[]),
793"../data/support/fr/plans-and-payments/discounts.json":()=>v(()=>import("./discounts-CU2P8vQ0.js"),[]),
793"../data/support/fr/plans-and-payments/how-much-does-honeydew-cost.json":()=>v(()=>import("./how-much-does-honeydew-cost-CevTlRq6.js"),[]),
793"../data/support/fr/plans-and-payments/how-to-cancel.json":()=>v(()=>import("./how-to-cancel-CJ_BEFWt.js"),[]),
793"../data/support/fr/plans-and-payments/how-to-check-subscription.json":()=>v(()=>import("./how-to-check-subscription-DfEYkNbw.js"),[]),
793"../data/support/fr/plans-and-payments/how-to-subscribe.json":()=>v(()=>import("./how-to-subscribe-DyJw82te.js"),[]),
793"../data/support/fr/plans-and-payments/lose-recipes-if-cancel.json":()=>v(()=>import("./lose-recipes-if-cancel-Bq5WbToU.js"),[]),
793"../data/support/fr/plans-and-payments/one-time-payment.json":()=>v(()=>import("./one-time-payment-DdIi6ihR.js"),[]),
793"../data/support/fr/plans-and-payments/refund-request.json":()=>v(()=>import("./refund-request-BpEk3d7U.js"),[]),
793"../data/support/fr/plans-and-payments/switch-billing-plan.json":()=>v(()=>import("./switch-billing-plan-B70y6TZd.js"),[]),
793"../data/support/fr/plans-and-payments/update-payment-method.json":()=>v(()=>import("./update-payment-method-CfiDLr42.js"),[]),
793"../data/support/fr/plans-and-payments/what-do-you-get-with-honeydew-plus.json":()=>v(()=>import("./what-do-you-get-with-honeydew-plus-D6frsAQo.js"),[]),
793"../data/support/fr/using-the-app/ai-edit.json":()=>v(()=>import("./ai-edit-0keWdId5.js"),[]),
793"../data/support/fr/using-the-app/chrome-extension.json":()=>v(()=>import("./chrome-extension-5wDc8qpZ.js"),[]),
793"../data/support/fr/using-the-app/grocery-checkout.json":()=>v(()=>import("./grocery-checkout-BKnLoyFb.js"),[]),
793"../data/support/fr/using-the-app/household-sharing.json":()=>v(()=>import("./household-sharing-BE0wdC03.js"),[]),
793"../data/support/fr/using-the-app/how-to-add-notes.json":()=>v(()=>import("./how-to-add-notes-C7UmoFXC.js"),[]),
793"../data/support/fr/using-the-app/how-to-create-cookbook.json":()=>v(()=>import("./how-to-create-cookbook-BHM63MpO.js"),[]),
793"../data/support/fr/using-the-app/how-to-delete-recipe.json":()=>v(()=>import("./how-to-delete-recipe-D6cjz4o6.js"),[]),
793"../data/support/fr/using-the-app/how-to-search-recipes.json":()=>v(()=>import("./how-to-search-recipes-DJxG_krN.js"),[]),
793"../data/support/fr/using-the-app/how-to-view-original-source.json":()=>v(()=>import("./how-to-view-original-source-4xHWOybA.js"),[]),
793"../data/support/fr/using-the-app/meal-planning.json":()=>v(()=>import("./meal-planning-0iKq7F1l.js"),[]),
793"../data/support/fr/using-the-app/move-recipe-to-cookbook.json":()=>v(()=>import("./move-recipe-to-cookbook-B-XxKw_a.js"),[]),
793"../data/support/fr/using-the-app/multiple-devices.json":()=>v(()=>import("./multiple-devices-CuVTduQ-.js"),[]),
793"../data/support/fr/using-the-app/nutrition-information.json":()=>v(()=>import("./nutrition-information-Br_Z-K30.js"),[]),
793"../data/support/fr/using-the-app/offline-mode.json":()=>v(()=>import("./offline-mode-jUxgHsfg.js"),[]),
793"../data/support/fr/using-the-app/original-source-disappears.json":()=>v(()=>import("./original-source-disappears-b0ipUYre.js"),[]),
793"../data/support/fr/using-the-app/print-or-share-recipes.json":()=>v(()=>import("./print-or-share-recipes-CBIGWJhh.js"),[]),
793"../data/support/fr/using-the-app/recover-deleted-recipes.json":()=>v(()=>import("./recover-deleted-recipes-DG2QMJJW.js"),[]),
793"../data/support/fr/using-the-app/remove-recipe-from-cookbook.json":()=>v(()=>import("./remove-recipe-from-cookbook-BpEZ2upH.js"),[]),
793"../data/support/fr/using-the-app/translate-recipes.json":()=>v(()=>import("./translate-recipes-qojJ6b_F.js"),[]),
793"../data/support/fr/using-the-app/use-on-computer.json":()=>v(()=>import("./use-on-computer-C2rQuyZN.js"),[]),
793"../data/support/fr/your-account/add-password-social-login.json":()=>v(()=>import("./add-password-social-login-DJBeihXg.js"),[]),
793"../data/support/fr/your-account/asked-to-subscribe-again.json":()=>v(()=>import("./asked-to-subscribe-again-DH8YEtmw.js"),[]),
793"../data/support/fr/your-account/cant-reset-password.json":()=>v(()=>import("./cant-reset-password-DGDMyQZa.js"),[]),
793"../data/support/fr/your-account/change-display-name.json":()=>v(()=>import("./change-display-name-BKFbOpQ7.js"),[]),
793"../data/support/fr/your-account/delete-account.json":()=>v(()=>import("./delete-account-6LY57P1F.js"),[]),
793"../data/support/fr/your-account/forgot-password.json":()=>v(()=>import("./forgot-password-BiWCtPU0.js"),[]),
793"../data/support/fr/your-account/logged-out-lost-recipes.json":()=>v(()=>import("./logged-out-lost-recipes-ADQM_nfv.js"),[]),
793"../data/support/fr/your-account/share-account-family.json":()=>v(()=>import("./share-account-family-BKV3UBBo.js"),[]),
793"../data/support/fr/your-account/sign-in-web-app.json":()=>v(()=>import("./sign-in-web-app-BFniD3-s.js"),[]),
793"../data/support/fr/your-account/sign-out.json":()=>v(()=>import("./sign-out-CiW9Q9u3.js"),[]),
793"../data/support/fr/your-account/switch-to-email-login.json":()=>v(()=>import("./switch-to-email-login-CxQfKKcC.js"),[]),
793"../data/support/nl/discover-honeydew/free-vs-paid.json":()=>v(()=>import("./free-vs-paid-3TYZ3wUQ.js"),[]),
793"../data/support/nl/discover-honeydew/recipe-saving-and-copyright.json":()=>v(()=>import("./recipe-saving-and-copyright-o5ek5gPe.js"),[]),
793"../data/support/nl/discover-honeydew/supported-languages.json":()=>v(()=>import("./supported-languages-D0IzKteV.js"),[]),
793"../data/support/nl/discover-honeydew/what-is-honeydew.json":()=>v(()=>import("./what-is-honeydew-9TG8KEiD.js"),[]),
793"../data/support/nl/first-steps-android/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-C0ZhXkg7.js"),[]),
793"../data/support/nl/first-steps-ios/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-D3OZg99Y.js"),[]),
793"../data/support/nl/first-steps-ios/getting-the-most-out.json":()=>v(()=>import("./getting-the-most-out-K11WgyTw.js"),[]),
793"../data/support/nl/fixing-issues/app-keeps-crashing.json":()=>v(()=>import("./app-keeps-crashing-pv35Ey_a.js"),[]),
793"../data/support/nl/fixing-issues/contact-honeydew.json":()=>v(()=>import("./contact-honeydew-SMs08Icc.js"),[]),
793"../data/support/nl/fixing-issues/error-saving-recipe.json":()=>v(()=>import("./error-saving-recipe-6yhokedi.js"),[]),
793"../data/support/nl/fixing-issues/not-in-share-options.json":()=>v(()=>import("./not-in-share-options-rpkBIJKw.js"),[]),
793"../data/support/nl/fixing-issues/report-a-bug.json":()=>v(()=>import("./report-a-bug-DzQhBOD7.js"),[]),
793"../data/support/nl/plans-and-payments/charged-after-free-trial.json":()=>v(()=>import("./charged-after-free-trial-miI30Ll_.js"),[]),
793"../data/support/nl/plans-and-payments/charged-twice.json":()=>v(()=>import("./charged-twice-B8J_Q2Nt.js"),[]),
793"../data/support/nl/plans-and-payments/discounts.json":()=>v(()=>import("./discounts-DXGrKddZ.js"),[]),
793"../data/support/nl/plans-and-payments/how-much-does-honeydew-cost.json":()=>v(()=>import("./how-much-does-honeydew-cost-BOpRfY_s.js"),[]),
793"../data/support/nl/plans-and-payments/how-to-cancel.json":()=>v(()=>import("./how-to-cancel-ClFB7ZSd.js"),[]),
793"../data/support/nl/plans-and-payments/how-to-check-subscription.json":()=>v(()=>import("./how-to-check-subscription-V7StvXGg.js"),[]),
793"../data/support/nl/plans-and-payments/how-to-subscribe.json":()=>v(()=>import("./how-to-subscribe-BLMKZqmq.js"),[]),
793"../data/support/nl/plans-and-payments/lose-recipes-if-cancel.json":()=>v(()=>import("./lose-recipes-if-cancel-CrL0S--Q.js"),[]),
793"../data/support/nl/plans-and-payments/one-time-payment.json":()=>v(()=>import("./one-time-payment-BusGoBoR.js"),[]),
793"../data/support/nl/plans-and-payments/refund-request.json":()=>v(()=>import("./refund-request-DHt5D6HF.js"),[]),
793"../data/support/nl/plans-and-payments/switch-billing-plan.json":()=>v(()=>import("./switch-billing-plan-GraHt2Zd.js"),[]),
793"../data/support/nl/plans-and-payments/update-payment-method.json":()=>v(()=>import("./update-payment-method-CF6giUR0.js"),[]),
793"../data/support/nl/plans-and-payments/what-do-you-get-with-honeydew-plus.json":()=>v(()=>import("./what-do-you-get-with-honeydew-plus-BtfU_QPX.js"),[]),
793"../data/support/nl/using-the-app/ai-edit.json":()=>v(()=>import("./ai-edit-BDhf-ZAw.js"),[]),
793"../data/support/nl/using-the-app/chrome-extension.json":()=>v(()=>import("./chrome-extension-CfU5N9q3.js"),[]),
793"../data/support/nl/using-the-app/grocery-checkout.json":()=>v(()=>import("./grocery-checkout-CkUi3p-6.js"),[]),
793"../data/support/nl/using-the-app/household-sharing.json":()=>v(()=>import("./household-sharing-Bchl9SR1.js"),[]),
793"../data/support/nl/using-the-app/how-to-add-notes.json":()=>v(()=>import("./how-to-add-notes-BjORaIaL.js"),[]),
793"../data/support/nl/using-the-app/how-to-create-cookbook.json":()=>v(()=>import("./how-to-create-cookbook-BtfLkkNg.js"),[]),
793"../data/support/nl/using-the-app/how-to-delete-recipe.json":()=>v(()=>import("./how-to-delete-recipe-DM1jLyWi.js"),[]),
793"../data/support/nl/using-the-app/how-to-search-recipes.json":()=>v(()=>import("./how-to-search-recipes-D1DioI2S.js"),[]),
793"../data/support/nl/using-the-app/how-to-view-original-source.json":()=>v(()=>import("./how-to-view-original-source-BV6aOPGT.js"),[]),
793"../data/support/nl/using-the-app/meal-planning.json":()=>v(()=>import("./meal-planning-Cy243aEl.js"),[]),
793"../data/support/nl/using-the-app/move-recipe-to-cookbook.json":()=>v(()=>import("./move-recipe-to-cookbook-O88TaQbE.js"),[]),
793"../data/support/nl/using-the-app/multiple-devices.json":()=>v(()=>import("./multiple-devices-CSFBCPSX.js"),[]),
793"../data/support/nl/using-the-app/nutrition-information.json":()=>v(()=>import("./nutrition-information-CWL-lrjb.js"),[]),
793"../data/support/nl/using-the-app/offline-mode.json":()=>v(()=>import("./offline-mode-BMJmy4ct.js"),[]),
793"../data/support/nl/using-the-app/original-source-disappears.json":()=>v(()=>import("./original-source-disappears-Cc2Jcg-G.js"),[]),
793"../data/support/nl/using-the-app/print-or-share-recipes.json":()=>v(()=>import("./print-or-share-recipes-DJYu6z5l.js"),[]),
793"../data/support/nl/using-the-app/recover-deleted-recipes.json":()=>v(()=>import("./recover-deleted-recipes-Dq0u5ASX.js"),[]),
793"../data/support/nl/using-the-app/remove-recipe-from-cookbook.json":()=>v(()=>import("./remove-recipe-from-cookbook-Bx8rfMKe.js"),[]),
793"../data/support/nl/using-the-app/translate-recipes.json":()=>v(()=>import("./translate-recipes-BovDzXIJ.js"),[]),
793"../data/support/nl/using-the-app/use-on-computer.json":()=>v(()=>import("./use-on-computer-CoVJNhfb.js"),[]),
793"../data/support/nl/your-account/add-password-social-login.json":()=>v(()=>import("./add-password-social-login-B5mc94oF.js"),[]),
793"../data/support/nl/your-account/asked-to-subscribe-again.json":()=>v(()=>import("./asked-to-subscribe-again-BjLaTnUN.js"),[]),
793"../data/support/nl/your-account/cant-reset-password.json":()=>v(()=>import("./cant-reset-password-DSlx9Q4c.js"),[]),
793"../data/support/nl/your-account/change-display-name.json":()=>v(()=>import("./change-display-name-CmNUDgc1.js"),[]),
793"../data/support/nl/your-account/delete-account.json":()=>v(()=>import("./delete-account-COQuODEv.js"),[]),
793"../data/support/nl/your-account/forgot-password.json":()=>v(()=>import("./forgot-password-CJC4_6nT.js"),[]),
793"../data/support/nl/your-account/logged-out-lost-recipes.json":()=>v(()=>import("./logged-out-lost-recipes-Bfqh5YPh.js"),[]),
793"../data/support/nl/your-account/share-account-family.json":()=>v(()=>import("./share-account-family-BmRyBMHG.js"),[]),
793"../data/support/nl/your-account/sign-in-web-app.json":()=>v(()=>import("./sign-in-web-app-BOnCSQ3l.js"),[]),
793"../data/support/nl/your-account/sign-out.json":()=>v(()=>import("./sign-out-DVlXPpL0.js"),[]),
793"../data/support/nl/your-account/switch-to-email-login.json":()=>v(()=>import("./switch-to-email-login-Bj6XPvGX.js"),[]),
793"../data/support/pt/discover-honeydew/free-vs-paid.json":()=>v(()=>import("./free-vs-paid-CBTgy_ML.js"),[]),
793"../data/support/pt/discover-honeydew/recipe-saving-and-copyright.json":()=>v(()=>import("./recipe-saving-and-copyright-1RvZUZLW.js"),[]),
793"../data/support/pt/discover-honeydew/supported-languages.json":()=>v(()=>import("./supported-languages-B8hnkEkH.js"),[]),
793"../data/support/pt/discover-honeydew/what-is-honeydew.json":()=>v(()=>import("./what-is-honeydew-9BkXnUhA.js"),[]),
793"../data/support/pt/first-steps-android/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-BuWKxGw0.js"),[]),
793"../data/support/pt/first-steps-ios/add-to-shortcuts.json":()=>v(()=>import("./add-to-shortcuts-AZCisOwH.js"),[]),
793"../data/support/pt/first-steps-ios/getting-the-most-out.json":()=>v(()=>import("./getting-the-most-out-DHmDv635.js"),[]),
793"../data/support/pt/fixing-issues/app-keeps-crashing.json":()=>v(()=>import("./app-keeps-crashing-PMbyAlCc.js"),[]),
793"../data/support/pt/fixing-issues/contact-honeydew.json":()=>v(()=>import("./contact-honeydew-Db82CQ6Y.js"),[]),
793"../data/support/pt/fixing-issues/error-saving-recipe.json":()=>v(()=>import("./error-saving-recipe-DPUKWI2U.js"),[]),
793"../data/support/pt/fixing-issues/not-in-share-options.json":()=>v(()=>import("./not-in-share-options-Begvv1p-.js"),[]),
793"../data/support/pt/fixing-issues/report-a-bug.json":()=>v(()=>import("./report-a-bug-BYJbCmsa.js"),[]),
793"../data/support/pt/plans-and-payments/charged-after-free-trial.json":()=>v(()=>import("./charged-after-free-trial-CCUxhE0r.js"),[]),
793"../data/support/pt/plans-and-payments/charged-twice.json":()=>v(()=>import("./charged-twice-DCGqxKHP.js"),[]),
793"../data/support/pt/plans-and-payments/discounts.json":()=>v(()=>import("./discounts-BKkPsH_G.js"),[]),
793"../data/support/pt/plans-and-payments/how-much-does-honeydew-cost.json":()=>v(()=>import("./how-much-does-honeydew-cost-CtdBBQys.js"),[]),
793"../data/support/pt/plans-and-payments/how-to-cancel.json":()=>v(()=>import("./how-to-cancel-BP8hzU5Y.js"),[]),
793"../data/support/pt/plans-and-payments/how-to-check-subscription.json":()=>v(()=>import("./how-to-check-subscription-BDTCYnyR.js"),[]),
793"../data/support/pt/plans-and-payments/how-to-subscribe.json":()=>v(()=>import("./how-to-subscribe-CSbpvzHc.js"),[]),
793"../data/support/pt/plans-and-payments/lose-recipes-if-cancel.json":()=>v(()=>import("./lose-recipes-if-cancel-BIGe8vY1.js"),[]),
793"../data/support/pt/plans-and-payments/one-time-payment.json":()=>v(()=>import("./one-time-payment-DT_YJpGe.js"),[]),
793"../data/support/pt/plans-and-payments/refund-request.json":()=>v(()=>import("./refund-request-CR00q9_B.js"),[]),
793"../data/support/pt/plans-and-payments/switch-billing-plan.json":()=>v(()=>import("./switch-billing-plan-28afbEmr.js"),[]),
793"../data/support/pt/plans-and-payments/update-payment-method.json":()=>v(()=>import("./update-payment-method-D3RZca07.js"),[]),
793"../data/support/pt/plans-and-payments/what-do-you-get-with-honeydew-plus.json":()=>v(()=>import("./what-do-you-get-with-honeydew-plus-BwlznFCH.js"),[]),
793"../data/support/pt/using-the-app/ai-edit.json":()=>v(()=>import("./ai-edit-BiftZtli.js"),[]),
793"../data/support/pt/using-the-app/chrome-extension.json":()=>v(()=>import("./chrome-extension-BxV1j7dU.js"),[]),
793"../data/support/pt/using-the-app/grocery-checkout.json":()=>v(()=>import("./grocery-checkout-DWvfTZUA.js"),[]),
793"../data/support/pt/using-the-app/household-sharing.json":()=>v(()=>import("./household-sharing-HHO1tQR9.js"),[]),
793"../data/support/pt/using-the-app/how-to-add-notes.json":()=>v(()=>import("./how-to-add-notes-CCbxuRay.js"),[]),
793"../data/support/pt/using-the-app/how-to-create-cookbook.json":()=>v(()=>import("./how-to-create-cookbook-B0Mz1J0E.js"),[]),
793"../data/support/pt/using-the-app/how-to-delete-recipe.json":()=>v(()=>import("./how-to-delete-recipe-DMZNHqaH.js"),[]),
793"../data/support/pt/using-the-app/how-to-search-recipes.json":()=>v(()=>import("./how-to-search-recipes-rjaM2IBl.js"),[]),
793"../data/support/pt/using-the-app/how-to-view-original-source.json":()=>v(()=>import("./how-to-view-original-source-Bt8xU-bU.js"),[]),
793"../data/support/pt/using-the-app/meal-planning.json":()=>v(()=>import("./meal-planning-CJxTiFPd.js"),[]),
793"../data/support/pt/using-the-app/move-recipe-to-cookbook.json":()=>v(()=>import("./move-recipe-to-cookbook-DetJBSop.js"),[]),
793"../data/support/pt/using-the-app/multiple-devices.json":()=>v(()=>import("./multiple-devices-krDxbtd6.js"),[]),
793"../data/support/pt/using-the-app/nutrition-information.json":()=>v(()=>import("./nutrition-information-D6jJKldK.js"),[]),
793"../data/support/pt/using-the-app/offline-mode.json":()=>v(()=>import("./offline-mode-BJ_smPr1.js"),[]),
793"../data/support/pt/using-the-app/original-source-disappears.json":()=>v(()=>import("./original-source-disappears-C9HI_Usl.js"),[]),
793"../data/support/pt/using-the-app/print-or-share-recipes.json":()=>v(()=>import("./print-or-share-recipes-5XNMdsIN.js"),[]),
793"../data/support/pt/using-the-app/recover-deleted-recipes.json":()=>v(()=>import("./recover-deleted-recipes-njW7Z6zy.js"),[]),
793"../data/support/pt/using-the-app/remove-recipe-from-cookbook.json":()=>v(()=>import("./remove-recipe-from-cookbook-B57MZ8Ro.js"),[]),
793"../data/support/pt/using-the-app/translate-recipes.json":()=>v(()=>import("./translate-recipes-DG_gePy9.js"),[]),
793"../data/support/pt/using-the-app/use-on-computer.json":()=>v(()=>import("./use-on-computer-rDXekxAB.js"),[]),
793"../data/support/pt/your-account/add-password-social-login.json":()=>v(()=>import("./add-password-social-login-BTZfj2zV.js"),[]),
793"../data/support/pt/your-account/asked-to-subscribe-again.json":()=>v(()=>import("./asked-to-subscribe-again-Civ0QCWv.js"),[]),
793"../data/support/pt/your-account/cant-reset-password.json":()=>v(()=>import("./cant-reset-password-BmehWZvQ.js"),[]),
793"../data/support/pt/your-account/change-display-name.json":()=>v(()=>import("./change-display-name-36FS7Nrh.js"),[]),
793"../data/support/pt/your-account/delete-account.json":()=>v(()=>import("./delete-account-DAzJ2EQC.js"),[]),
793"../data/support/pt/your-account/forgot-password.json":()=>v(()=>import("./forgot-password-Bqo6CEcA.js"),[]),
793"../data/support/pt/your-account/logged-out-lost-recipes.json":()=>v(()=>import("./logged-out-lost-recipes-BHJ5JGzV.js"),[]),
793"../data/support/pt/your-account/share-account-family.json":()=>v(()=>import("./share-account-family-uqNzJCz0.js"),[]),
793"../data/support/pt/your-account/sign-in-web-app.json":()=>v(()=>import("./sign-in-web-app-hO83ILbv.js"),[]),
793"../data/support/pt/your-account/sign-out.json":()=>v(()=>import("./sign-out-cxF2FNED.js"),[]),
793"../data/support/pt/your-account/switch-to-email-login.json":()=>v(()=>import("./switch-to-email-login-DJ2Kvr0T.js"),[])}),`../data/support/${t}/${e}/${r}.json`,6);return s.default||s}catch{const n=(await Mx(t)).find(a=>a.slug===e);if(n!=null&&n.subCollections)for(const a of n.subCollections)try{const o=await ca(Object.assign({
793"../data/support/ar/first-steps-android/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-Tsjcdm0H.js"),[]),
793"../data/support/ar/first-steps-android/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-CxV9NlPz.js"),[]),
793"../data/support/ar/first-steps-android/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-C8eOACMJ.js"),[]),
793"../data/support/ar/first-steps-android/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-3kPUmKrL.js"),[]),
793"../data/support/ar/first-steps-android/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-Cu1rk5Mb.js"),[]),
793"../data/support/ar/first-steps-android/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-CJe-nMXO.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-Bur29co2.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-BFDWUxj3.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-notes.json":()=>v(()=>import("./save-from-notes-BKhaegWq.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-photos.json":()=>v(()=>import("./save-from-photos-CJ3s6D0Y.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-FuaFryj_.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-DDqLGvxA.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-C1mfNFYn.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-F2ZYQCXL.js"),[]),
793"../data/support/ar/first-steps-ios/saving-recipes/scan-from-cookbooks.json":()=>v(()=>import("./scan-from-cookbooks-C0gA-qks.js"),[]),
793"../data/support/en/first-steps-android/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-DPW9vR7Y.js"),[]),
793"../data/support/en/first-steps-android/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-CM9DHeJx.js"),[]),
793"../data/support/en/first-steps-android/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-cWy-eo20.js"),[]),
793"../data/support/en/first-steps-android/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-DLECakoR.js"),[]),
793"../data/support/en/first-steps-android/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-CtmO_HAO.js"),[]),
793"../data/support/en/first-steps-android/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-BtFfEaLF.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-Bv6G4700.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-C-kzpQlG.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-notes.json":()=>v(()=>import("./save-from-notes-iJqsIo3h.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-photos.json":()=>v(()=>import("./save-from-photos-CD2fkmog.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-VxIEJfC6.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-CaAReaPV.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-DOuwS8Qi.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-CU_wWcwb.js"),[]),
793"../data/support/en/first-steps-ios/saving-recipes/scan-from-cookbooks.json":()=>v(()=>import("./scan-from-cookbooks-jeT_kxvx.js"),[]),
793"../data/support/es/first-steps-android/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-DyKD7ujN.js"),[]),
793"../data/support/es/first-steps-android/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-CUFcLnEk.js"),[]),
793"../data/support/es/first-steps-android/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-D_7tRuFy.js"),[]),
793"../data/support/es/first-steps-android/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-Oek9wnjt.js"),[]),
793"../data/support/es/first-steps-android/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-ClfX0Y9Z.js"),[]),
793"../data/support/es/first-steps-android/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-6xdNWfSq.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-DZVtMS4A.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-ISUN-qx5.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-notes.json":()=>v(()=>import("./save-from-notes-CJw2xPf_.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-photos.json":()=>v(()=>import("./save-from-photos-NjxgWYM_.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-Cil6ae8v.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-o73b7Or1.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-SFBkH_AE.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-C4bL2s6z.js"),[]),
793"../data/support/es/first-steps-ios/saving-recipes/scan-from-cookbooks.json":()=>v(()=>import("./scan-from-cookbooks-DX3EekIy.js"),[]),
793"../data/support/fr/first-steps-android/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-B2e_0j6B.js"),[]),
793"../data/support/fr/first-steps-android/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-0lvL_ljH.js"),[]),
793"../data/support/fr/first-steps-android/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-DzfeId_8.js"),[]),
793"../data/support/fr/first-steps-android/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-VICgphcc.js"),[]),
793"../data/support/fr/first-steps-android/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-Biukmh-s.js"),[]),
793"../data/support/fr/first-steps-android/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-BY9BsDCH.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-BidEa-tY.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-DjTcD1rG.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-notes.json":()=>v(()=>import("./save-from-notes-xhCWzwYy.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-photos.json":()=>v(()=>import("./save-from-photos-C5JOiqTA.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-DBvGePtZ.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-D4NV-wBG.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-DOPm57-x.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-D_c9Si9g.js"),[]),
793"../data/support/fr/first-steps-ios/saving-recipes/scan-from-cookbooks.json":()=>v(()=>import("./scan-from-cookbooks-BirBa322.js"),[]),
793"../data/support/nl/first-steps-android/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-DFzblTuS.js"),[]),
793"../data/support/nl/first-steps-android/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-Dsu7G68E.js"),[]),
793"../data/support/nl/first-steps-android/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-Bpr5ngqp.js"),[]),
793"../data/support/nl/first-steps-android/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-CEtpz1kX.js"),[]),
793"../data/support/nl/first-steps-android/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-B4e30yiY.js"),[]),
793"../data/support/nl/first-steps-android/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-C4xqr3yL.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-7EyQHc0A.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-f3fIfc22.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-notes.json":()=>v(()=>import("./save-from-notes-m1KUZUOR.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-photos.json":()=>v(()=>import("./save-from-photos-i9BFNnsb.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-B20g3mg-.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-nfY5K5NS.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-WN8Ko7lW.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-DqSlcT49.js"),[]),
793"../data/support/nl/first-steps-ios/saving-recipes/scan-from-cookbooks.json":()=>v(()=>import("./scan-from-cookbooks-CU85rmni.js"),[]),
793"../data/support/pt/first-steps-android/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-DK8zeDSs.js"),[]),
793"../data/support/pt/first-steps-android/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-0cyt88Wl.js"),[]),
793"../data/support/pt/first-steps-android/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-Bd6FALB7.js"),[]),
793"../data/support/pt/first-steps-android/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-BAu9sfov.js"),[]),
793"../data/support/pt/first-steps-android/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-Bc3npvsk.js"),[]),
793"../data/support/pt/first-steps-android/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-BgUWVj19.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-facebook.json":()=>v(()=>import("./save-from-facebook-DpDKAEPf.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-instagram.json":()=>v(()=>import("./save-from-instagram-CU5QCnkd.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-notes.json":()=>v(()=>import("./save-from-notes-BG2RJkcE.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-photos.json":()=>v(()=>import("./save-from-photos-Bem000Mi.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-pinterest.json":()=>v(()=>import("./save-from-pinterest-CNQort5T.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-screenshots.json":()=>v(()=>import("./save-from-screenshots-nBOqBP5x.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-tiktok.json":()=>v(()=>import("./save-from-tiktok-D_xeKO8Q.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/save-from-youtube.json":()=>v(()=>import("./save-from-youtube-ByArEDex.js"),[]),
793"../data/support/pt/first-steps-ios/saving-recipes/scan-from-cookbooks.json":()=>v(()=>import("./scan-from-cookbooks-CvBL1qeD.js"),[])
793}),`../data/support/${t}/${e}/${a.slug}/${r}.json`,7);return o.default||o}catch{continue}return null}}function XI(t,e){for(const r of t){if(r.articles.includes(e))return r;if(r.subCollections){for(const s of r.subCollections)if(s.articles.includes(e))return r}}return null}function wi(t){return t.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"")}const nn="https://honeydewcook.com";function Mn({children:t,title:e,description:r,canonicalPath:s}){const{lang:n="en"}=ut(),a=YI(n),o=e?`${e} - Honeydew Support`:"Support Center - Honeydew",l=r||"Get help with Honeydew. Find answers to common questions about saving recipes, managing your account, and more.",c=`${nn}/lovable-uploads/bc4b0356-e29a-4c6b-bda6-68e33dfdb14d.png`,d=s?s.replace(`/support/${n}`,""):"";return i.jsxs("div",{dir:a.dir,className:"min-h-screen bg-gradient-to-br from-white to-honeydew-50/30 dark:from-gray-950 dark:to-gray-900",children:[i.jsxs(da,{children:[i.jsx("title",{children:o}),i.jsx("meta",{name:"description",content:l}),i.jsx("meta",{name:"robots",content:"index, follow"}),i.jsx("html",{lang:n,dir:a.dir}),s&&i.jsx("link",{rel:"canonical",href:`${nn}${s}`}),i.jsx("meta",{property:"og:title",content:o}),i.jsx("meta",{property:"og:description",content:l}),i.jsx("meta",{property:"og:type",content:"website"}),i.jsx("meta",{property:"og:image",content:c}),i.jsx("meta",{property:"og:site_name",content:"Honeydew"}),s&&i.jsx("meta",{property:"og:url",content:`${nn}${s}`}),i.jsx("meta",{name:"twitter:card",content:"summary"}),i.jsx("meta",{name:"twitter:title",content:o}),i.jsx("meta",{name:"twitter:description",content:l}),i.jsx("meta",{name:"twitter:image",content:c}),$r.map(u=>i.jsx("link",{rel:"alternate",hrefLang:u.code,href:`${nn}/support/${u.code}${d}`},u.code)),i.jsx("link",{rel:"alternate",hrefLang:"x-default",href:`${nn}/support/en${d}`})]}),i.jsx("header",{className:"sticky top-0 z-50 bg-white/95 dark:bg-gray-950/95 backdrop-blur-md border-b border-gray-200/50 dark:border-gray-800/50",children:i.jsxs("div",{className:"max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 h-14 flex items-center justify-between",children:[i.jsxs(ae,{to:"/",className:"flex items-center gap-2",children:[i.jsx("img",{src:"/lovable-uploads/bc4b0356-e29a-4c6b-bda6-68e33dfdb14d.png",alt:"Honeydew",className:"h-7 w-7"}),i.jsx("span",{className:"font-bold text-lg bg-gradient-to-r from-honeydew-600 to-honeydew-700 dark:from-honeydew-400 dark:to-honeydew-500 bg-clip-text text-transparent",children:"Honeydew"})]}),i.jsxs("nav",{className:"flex items-center gap-4 text-sm font-medium",children:[i.jsx(ae,{to:"/",className:"text-gray-500 dark:text-gray-400 hover:text-honeydew-600 dark:hover:text-honeydew-400 transition-colors",children:"Home"}),i.jsx("a",{href:"/guides",className:"text-gray-500 dark:text-gray-400 hover:text-honeydew-600 dark:hover:text-honeydew-400 transition-colors",children:"Guides"}),i.jsx(ae,{to:`/support/${n}`,className:"text-honeydew-600 dark:text-honeydew-400 font-semibold",children:"Support"})]})]})}),i.jsx("main",{className:"pt-8 pb-16 px-4 sm:px-6 lg:px-8",children:i.jsx("div",{className:"max-w-4xl mx-auto",children:t})}),i.jsx(Qe,{})]})}function QI(t){const[e,r]=g.useState([]),[s,n]=g.useState(""),[a,o]=g.useState([]),l=g.useRef();g.useEffect(()=>{JI(t).then(r).catch(()=>r([]))},[t]);const c=g.useCallback(d=>{if(n(d),l.current&&clearTimeout(l.current),!d.trim()){o([]);return}l.current=setTimeout(()=>{const p=wi(d).split(/\s+/).filter(Boolean),h=e.map(f=>{const x=wi(f.title),m=wi(f.description),y=f.keywords.map(wi);let b=0;for(const w of p)x.includes(w)&&(b+=10),m.includes(w)&&(b+=5),y.some(_=>_.includes(w))&&(b+=3);return{entry:f,score:b}}).filter(f=>f.score>0).sort((f,x)=>x.score-f.score).slice(0,10).map(f=>f.entry);o(h)},200)},[e]);return{query:s,search:c,results:a}}function ZI(){const{lang:t="en"}=ut(),e=Xe[t]||Xe.en,{query:r,search:s,results:n}=QI(t),[a,o]=g.useState(!1),l=g.useRef(null),c=ba();return g.useEffect(()=>{function d(u){l.current&&!l.current.contains(u.target)&&o(!1)}return document.addEventListener("mousedown",d),()=>document.removeEventListener("mousedown",d)},[]),i.jsxs("div",{ref:l,className:"relative w-full max-w-2xl mx-auto",children:[i.jsxs("div",{className:"relative",children:[i.jsx(Un,{className:q("absolute top-1/2 -translate-y-1/2 h-5 w-5 text-gray-400 dark:text-gray-500",t==="ar"?"right-4":"left-4")}),i.jsx("input",{type:"text",value:r,onChange:d=>{s(d.target.value),o(!0)},onFocus:()=>r&&o(!0),placeholder:e.searchPlaceholder,className:q("w-full py-3.5 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-xl text-gray-900 dark:text-gray-100 placeholder-gray-400 dark:placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-honeydew-500 dark:focus:ring-honeydew-400 focus:border-transparent shadow-sm transition-shadow focus:shadow-md",t==="ar"?"pr-12 pl-4":"pl-12 pr-4")})]}),a&&r&&i.jsx("div",{className:"absolute z-50 w-full mt-2 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-xl shadow-lg overflow-hidden",children:n.length>0?i.jsx("ul",{className:"divide-y divide-gray-100 dark:divide-gray-700",children:n.map(d=>i.jsx("li",{children:i.jsxs("button",{className:"w-full text-left px-4 py-3 hover:bg-honeydew-50 dark:hover:bg-gray-700 transition-colors",onClick:()=>{c(`/support/${t}/${d.collectionSlug}/${d.slug}`),o(!1),s("")},children:[i.jsx("p",{className:"text-sm font-medium text-gray-900 dark:text-gray-100",children:d.title}),i.jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:d.collection})]})},`${d.collectionSlug}-${d.slug}`))}):i.jsx("p",{className:"px-4 py-3 text-sm text-gray-500 dark:text-gray-400",children:e.searchNoResults})})]})}const e4={compass:Gf,smartphone:qb,"tablet-smartphone":Yb,"app-window":_b,"credit-card":Kf,"user-circle":qf,wrench:Zb};function t4({collection:t}){var o;const{lang:e="en"}=ut(),r=Xe[e]||Xe.en,s=e4[t.icon]||Gf,n=e==="ar",a=t.articles.length+(((o=t.subCollections)==null?void 0:o.reduce((l,c)=>l+c.articles.length,0))||0);return i.jsx(ae,{to:`/support/${e}/${t.slug}`,className:"group block p-6 bg-white dark:bg-gray-800/50 border border-gray-200 dark:border-gray-700/50 rounded-xl hover:border-honeydew-300 dark:hover:border-honeydew-600/50 hover:shadow-md transition-all",children:i.jsxs("div",{className:"flex items-start justify-between",children:[i.jsxs("div",{className:q("flex items-start gap-4",n&&"flex-row-reverse"),children:[i.jsx("div",{className:"flex-shrink-0 w-10 h-10 rounded-lg bg-honeydew-50 dark:bg-honeydew-900/30 flex items-center justify-center",children:i.jsx(s,{className:"h-5 w-5 text-honeydew-600 dark:text-honeydew-400"})}),i.jsxs("div",{children:[i.jsx("h3",{className:"font-semibold text-gray-900 dark:text-gray-100 group-hover:text-honeydew-600 dark:group-hover:text-honeydew-400 transition-colors",children:t.title}),i.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400 mt-1",children:t.description}),i.jsxs("p",{className:"text-xs text-gray-400 dark:text-gray-500 mt-2",children:[a," ",r.articles]})]})]}),i.jsx(Fn,{className:q("h-5 w-5 text-gray-300 dark:text-gray-600 group-hover:text-honeydew-500 transition-colors flex-shrink-0 mt-1",n&&"rotate-180")}
793)]})})}function Ed(){const{lang:t="en"}=ut(),e=ba(),r=He(),s=n=>{const a=r.pathname.replace(`/support/${t}`,`/support/${n}`);e(a)};return $r.find(n=>n.code===t)||$r[0],i.jsxs("div",{className:"relative inline-block",children:[i.jsx("select",{value:t,onChange:n=>s(n.target.value),className:"appearance-none bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-lg px-3 py-1.5 pe-8 text-sm text-gray-700 dark:text-gray-300 focus:outline-none focus:ring-2 focus:ring-honeydew-500 cursor-pointer",children:$r.map(n=>i.jsxs("option",{value:n.code,children:[n.flag," ",n.nativeName]},n.code))}),i.jsx("div",{className:"absolute inset-y-0 end-2 flex items-center pointer-events-none",children:i.jsx("svg",{className:"h-4 w-4 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:i.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})})]})}function Td(t){const[e,r]=g.useState([]),[s,n]=g.useState(!0),[a,o]=g.useState(null);return g.useEffect(()=>{let l=!1;return n(!0),o(null),Mx(t).then(c=>{l||r(c)}).catch(c=>{l||o(c.message)}).finally(()=>{l||n(!1)}),()=>{l=!0}},[t]),{collections:e,loading:s,error:a}}function r4(t,e,r){const[s,n]=g.useState(null),[a,o]=g.useState(!0),[l,c]=g.useState(null);return g.useEffect(()=>{let d=!1;return o(!0),c(null),Vx(t,e,r).then(u=>{d||(u?n(u):c("Article not found"))}).catch(u=>{d||c(u.message)}).finally(()=>{d||o(!1)}),()=>{d=!0}},[t,e,r]),{article:s,loading:a,error:l}}function s4(){const{lang:t="en"}=ut(),e=Xe[t]||Xe.en,r=kd(t),{collections:s,loading:n}=Td(r?t:"en");return r?i.jsxs(Mn,{title:e.supportCenter,description:"Get help with Honeydew. Find answers to common questions about saving recipes, managing your account, subscriptions, and more.",canonicalPath:`/support/${t}`,children:[i.jsxs("div",{className:"text-center mb-10",children:[i.jsx("div",{className:"flex justify-end mb-4",children:i.jsx(Ed,{})}),i.jsx("h1",{className:"text-3xl sm:text-4xl font-bold text-gray-900 dark:text-gray-100 mb-3",children:e.supportCenter}),i.jsxs("p",{className:"text-gray-500 dark:text-gray-400 text-lg mb-8",children:[t==="en"&&"How can we help you today?",t==="fr"&&"Comment pouvons-nous vous aider aujourd'hui ?",t==="es"&&"¿Cómo podemos ayudarte hoy?",t==="pt"&&"Como podemos ajudá-lo hoje?",t==="nl"&&"Hoe kunnen we je vandaag helpen?",t==="ar"&&"كيف يمكننا مساعدتك اليوم؟"]}),i.jsx(ZI,{})]}),n?i.jsx("div",{className:"grid gap-4 sm:grid-cols-2",children:Array.from({length:6}).map((a,o)=>i.jsx("div",{className:"h-32 rounded-xl bg-gray-100 dark:bg-gray-800 animate-pulse"},o))}):i.jsx("div",{className:"grid gap-4 sm:grid-cols-2",children:s.sort((a,o)=>a.order-o.order).map(a=>i.jsx(t4,{collection:a},a.slug))})]}):i.jsx(at,{to:"/support/en",replace:!0})}function $x({items:t}){const{lang:e="en"}=ut(),r=Xe[e]||Xe.en,s=e==="ar",n=[{label:r.supportCenter,href:`/support/${e}`},...t];return i.jsx("nav",{"aria-label":"Breadcrumb",className:"mb-6",children:i.jsx("ol",{className:"flex flex-wrap items-center gap-1 text-sm text-gray-500 dark:text-gray-400",children:n.map((a,o)=>i.jsxs("li",{className:"flex items-center gap-1",children:[o>0&&i.jsx(Fn,{className:q("h-3.5 w-3.5 flex-shrink-0",s&&"rotate-180")}),a.href&&o<n.length-1?i.jsx(ae,{to:a.href,className:"hover:text-honeydew-600 dark:hover:text-honeydew-400 transition-colors",children:a.label}):i.jsx("span",{className:"text-gray-700 dark:text-gray-200 font-medium",children:a.label})]},o))})})}function qp({articles:t,collectionSlug:e}){const{lang:r="en"}=ut(),s=r==="ar";return i.jsx("ul",{className:"divide-y divide-gray-100 dark:divide-gray-700/50",children:t.map(n=>i.jsx("li",{children:i.jsxs(ae,{to:`/support/${r}/${e}/${n.slug}`,className:"flex items-center justify-between py-3.5 px-1 group hover:bg-honeydew-50/50 dark:hover:bg-gray-800/50 rounded-lg transition-colors -mx-1 px-3",children:[i.jsxs("div",{className:q("flex items-center gap-3",s&&"flex-row-reverse"),children:[i.jsx(Yf,{className:"h-4 w-4 text-gray-400 dark:text-gray-500 flex-shrink-0"}),i.jsx("span",{className:"text-gray-700 dark:text-gray-300 group-hover:text-honeydew-600 dark:group-hover:text-honeydew-400 transition-colors",children:n.title})]}),i.jsx(Fn,{className:q("h-4 w-4 text-gray-300 dark:text-gray-600 group-hover:text-honeydew-500 transition-colors flex-shrink-0",s&&"rotate-180")}
793)]})},n.slug))})}function n4(){var d;const{lang:t="en",collectionSlug:e=""}=ut(),r=kd(t),{collections:s,loading:n}=Td(r?t:"en"),[a,o]=g.useState({}),l=s.find(u=>u.slug===e);if(g.useEffect(()=>{var h;if(!l)return;const u=[...l.articles,...((h=l.subCollections)==null?void 0:h.flatMap(f=>f.articles))||[]];(async()=>{const f={};await Promise.all(u.map(async x=>{const m=await Vx(t,e,x);m&&(f[x]=m.title)})),o(f)})()},[l,t,e]),!r)return i.jsx(at,{to:"/support/en",replace:!0});if(n)return i.jsx(Mn,{canonicalPath:`/support/${t}/${e}`,children:i.jsxs("div",{className:"animate-pulse space-y-4",children:[i.jsx("div",{className:"h-8 w-48 bg-gray-200 dark:bg-gray-700 rounded"}),i.jsx("div",{className:"h-4 w-96 bg-gray-200 dark:bg-gray-700 rounded"}),Array.from({length:5}).map((u,p)=>i.jsx("div",{className:"h-12 bg-gray-100 dark:bg-gray-800 rounded-lg"},p))]})});if(!l)return i.jsx(at,{to:`/support/${t}`,replace:!0});const c=l.articles.map(u=>({slug:u,title:a[u]||u.replace(/-/g," ")}));return i.jsxs(Mn,{title:l.title,description:l.description,canonicalPath:`/support/${t}/${e}`,children:[i.jsx("div",{className:"flex justify-end mb-4",children:i.jsx(Ed,{})}),i.jsx($x,{items:[{label:l.title}]}),i.jsxs("div",{className:"mb-8",children:[i.jsx("h1",{className:"text-2xl sm:text-3xl font-bold text-gray-900 dark:text-gray-100 mb-2",children:l.title}),i.jsx("p",{className:"text-gray-500 dark:text-gray-400",children:l.description})]}),c.length>0&&i.jsx("div",{className:"bg-white dark:bg-gray-800/50 border border-gray-200 dark:border-gray-700/50 rounded-xl p-6 mb-6",children:i.jsx(qp,{articles:c,collectionSlug:e})}),(d=l.subCollections)==null?void 0:d.map(u=>{const p=u.articles.map(h=>({slug:h,title:a[h]||h.replace(/-/g," ")}));return i.jsxs("div",{className:"bg-white dark:bg-gray-800/50 border border-gray-200 dark:border-gray-700/50 rounded-xl p-6 mb-6",children:[i.jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-gray-100 mb-1",children:u.title}),i.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400 mb-4",children:u.description}),i.jsx(qp,{articles:p,collectionSlug:e})]},u.slug)})]})}const i4={info:{icon:Zl,bg:"bg-blue-50 dark:bg-blue-900/20",border:"border-blue-200 dark:border-blue-800",text:"text-blue-800 dark:text-blue-300",iconColor:"text-blue-500"},warning:{icon:Xx,bg:"bg-amber-50 dark:bg-amber-900/20",border:"border-amber-200 dark:border-amber-800",text:"text-amber-800 dark:text-amber-300",iconColor:"text-amber-500"},tip:{icon:em,bg:"bg-green-50 dark:bg-green-900/20",border:"border-green-200 dark:border-green-800",text:"text-green-800 dark:text-green-300",iconColor:"text-green-500"}};function a4({content:t}){return i.jsx("div",{className:"prose prose-gray dark:prose-invert max-w-none",children:t.map((e,r)=>{var s,n,a;switch(e.type){case"paragraph":return i.jsx("p",{className:"text-gray-700 dark:text-gray-300 leading-relaxed mb-4",children:e.text},r);case"heading":{const o=`h${e.level||2}`,l={2:"text-xl font-bold mt-8 mb-3",3:"text-lg font-semibold mt-6 mb-2",4:"text-base font-semibold mt-4 mb-2"};return i.jsx(o,{className:q(l[e.level||2],"text-gray-900 dark:text-gray-100"),children:e.text},r)}case"list":return e.ordered?i.jsx("ol",{className:"list-decimal list-inside space-y-2 mb-4 text-gray-700 dark:text-gray-300",children:(s=e.items)==null?void 0:s.map((o,l)=>i.jsx("li",{children:o},l))},r):i.jsx("ul",{className:"list-disc list-inside space-y-2 mb-4 text-gray-700 dark:text-gray-300",children:(n=e.items)==null?void 0:n.map((o,l)=>i.jsx("li",{children:o},l))},r);case"callout":{const o=e.variant||"info",l=i4[o],c=l.icon;return i.jsxs("div",{className:q("flex gap-3 p-4 rounded-lg border mb-4",l.bg,l.border),children:[i.jsx(c,{className:q("h-5 w-5 flex-shrink-0 mt-0.5",l.iconColor)}),i.jsx("p",{className:q("text-sm",l.text),children:e.text})]},r)}case"steps":return i.jsx("div",{className:"space-y-4 mb-6",children:(a=e.steps)==null?void 0:a.map((o,l)=>i.jsxs("div",{className:"flex gap-4",children:[i.jsx("div",{className:"flex-shrink-0 w-7 h-7 rounded-full bg-honeydew-100 dark:bg-honeydew-900/30 flex items-center justify-center text-sm font-semibold text-honeydew-700 dark:text-honeydew-400",children:l+1}),i.jsxs("div",{className:"pt-0.5",children:[i.jsx("p",{className:"font-medium text-gray-900 dark:text-gray-100",children:o.title}),i.jsx("p",{className:"text-sm text-gray-600 dark:text-gray-400 mt-0.5",children:o.description})]})]},l))},r);case"image":return i.jsxs("figure",{className:"mb-6",children:[i.jsx("img",{src:e.src,alt:e.alt||"",loading:"lazy",className:"rounded-lg shadow-sm w-full"}),e.alt&&i.jsx("figcaption",{className:"text-xs text-gray-500 dark:text-gray-400 mt-2 text-center",children:e.alt})]},r);case"divider":return i.jsx("hr",{className:"my-8 border-gray-200 dark:border-gray-700"},r);case"video":return i.jsx("div",{className:"mb-6 aspect-video rounded-lg overflow-hidden",children:i.jsx("iframe",{src:e.url,className:"w-full h-full",allowFullScreen:!0,loading:"lazy"})},r);case"code":return i.jsx("pre",{className:"bg-gray-100 dark:bg-gray-800 rounded-lg p-4 mb-4 overflow-x-auto",children:i.jsx("code",{className:"text-sm text-gray-800 dark:text-gray-200",children:e.code})},r);default:return null}})})}function o4({articleSlug:t}){const{lang:e="en"}=ut(),r=Xe[e]||Xe.en,[s,n]=g.useState(null),a=`support-feedback-${t}`;g.useEffect(()=>{const l=localStorage.getItem(a);(l==="yes"||l==="no")&&n(l)}
793,[a]);const o=l=>{n(l),localStorage.setItem(a,l)};return s?i.jsx("div",{className:"mt-12 pt-6 border-t border-gray-200 dark:border-gray-700 text-center",children:i.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:r.thanksFeedback})}):i.jsxs("div",{className:"mt-12 pt-6 border-t border-gray-200 dark:border-gray-700 text-center",children:[i.jsx("p",{className:"text-sm text-gray-600 dark:text-gray-400 mb-3",children:r.wasHelpful}),i.jsxs("div",{className:"flex items-center justify-center gap-3",children:[i.jsxs("button",{onClick:()=>o("yes"),className:"flex items-center gap-2 px-4 py-2 rounded-lg border border-gray-200 dark:border-gray-700 text-sm text-gray-600 dark:text-gray-400 hover:border-green-300 hover:text-green-600 dark:hover:border-green-700 dark:hover:text-green-400 hover:bg-green-50 dark:hover:bg-green-900/20 transition-all",children:[i.jsx(sm,{className:"h-4 w-4"}),r.yes]}),i.jsxs("button",{onClick:()=>o("no"),className:"flex items-center gap-2 px-4 py-2 rounded-lg border border-gray-200 dark:border-gray-700 text-sm text-gray-600 dark:text-gray-400 hover:border-red-300 hover:text-red-600 dark:hover:border-red-700 dark:hover:text-red-400 hover:bg-red-50 dark:hover:bg-red-900/20 transition-all",children:[i.jsx(rm,{className:"h-4 w-4"}),r.no]})]})]})}function l4(){const{lang:t="en",collectionSlug:e="",articleSlug:r=""}=ut(),s=Xe[t]||Xe.en,n=kd(t),{article:a,loading:o,error:l}=r4(n?t:"en",e,r),{collections:c}=Td(n?t:"en"),d=c.find(p=>p.slug===e);if(!n)return i.jsx(at,{to:"/support/en",replace:!0});if(o)return i.jsx(Mn,{canonicalPath:`/support/${t}/${e}/${r}`,children:i.jsxs("div",{className:"animate-pulse space-y-4",children:[i.jsx("div",{className:"h-4 w-48 bg-gray-200 dark:bg-gray-700 rounded"}),i.jsx("div",{className:"h-8 w-96 bg-gray-200 dark:bg-gray-700 rounded"}),i.jsx("div",{className:"h-4 w-64 bg-gray-200 dark:bg-gray-700 rounded"}),i.jsx("div",{className:"space-y-3 mt-8",children:Array.from({length:6}).map((p,h)=>i.jsx("div",{className:"h-4 bg-gray-100 dark:bg-gray-800 rounded",style:{width:`${80-h*10}%`}},h))})]})});if(l||!a)return i.jsx(at,{to:`/support/${t}/${e}`,replace:!0});const u=[{label:(d==null?void 0:d.title)||e,href:`/support/${t}/${e}`},{label:a.title}];return i.jsxs(Mn,{title:a.title,description:a.description,canonicalPath:`/support/${t}/${e}/${r}`,children:[i.jsx("div",{className:"flex justify-end mb-4",children:i.jsx(Ed,{})}),i.jsx($x,{items:u}),i.jsxs("article",{className:"bg-white dark:bg-gray-800/50 border border-gray-200 dark:border-gray-700/50 rounded-xl p-6 sm:p-8",children:[i.jsxs("header",{className:"mb-6",children:[i.jsx("h1",{className:"text-2xl sm:text-3xl font-bold text-gray-900 dark:text-gray-100 mb-2",children:a.title}),i.jsxs("p",{className:"text-sm text-gray-400 dark:text-gray-500",children:[s.lastUpdated,": ",new Date(a.lastUpdated).toLocaleDateString(t,{year:"numeric",month:"long",day:"numeric"})]})]}),i.jsx(a4,{content:a.content}),a.relatedArticles&&a.relatedArticles.length>0&&i.jsxs("div",{className:"mt-10 pt-6 border-t border-gray-200 dark:border-gray-700",children:[i.jsx("h3",{className:"text-sm font-semibold text-gray-500 dark:text-gray-400 uppercase tracking-wider mb-3",children:s.relatedArticles}),i.jsx("ul",{className:"space-y-2",children:a.relatedArticles.map(p=>{const h=XI(c,p),f=(h==null?void 0:h.slug)||e;return i.jsx("li",{children:i.jsx(ae,{to:`/support/${t}/${f}/${p}`,className:"text-honeydew-600 dark:text-honeydew-400 hover:underline text-sm",children:p.replace(/-/g," ").replace(/\b\w/g,x=>x.toUpperCase())})},p)})})]}),i.jsx(o4,{articleSlug:r})]})]})}const c4=new R1,d4=()=>{const t=He();return g.useEffect(()=>{zI(t.pathname)},[t.pathname]),null},u4=()=>{const t=He();return g.useEffect(()=>{t.hash||window.scrollTo({top:0,left:0,behavior:"instant"})},[t.pathname,t.hash]),null},h4=()=>(g.useEffect(()=>{BI()},[]),i.jsx(Q2,{children:i.jsx(I1,{client:c4,children:i.jsx(C_,{children:i.jsxs(FI,{children:[i.jsx(d4,{}),i.jsx(u4,{}),i.jsx(Dw,{}),i.jsx(d1,{}),i.jsx(WI,{}),i.jsxs(__,{children:[i.jsx(me,{path:"/",element:i.jsx(cS,{})}),i.jsx(me,{path:"/press-kit",element:i.jsx(at,{to:"/affiliates#press-kit",replace:!0})}),i.jsx(me,{path:"/redhoney",element:i.jsx(ES,{})}),i.jsx(me,{path:"/privacy-policy",element:i.jsx(mS,{})}),i.jsx(me,{path:"/terms-of-service",element:i.jsx(gS,{})}),i.jsx(me,{path:"/mcp",element:i.jsx(HS,{})}),i.jsx(me,{path:"/affiliates",element:i.jsx(wP,{})}),i.jsx(me,{path:"/affiliates/terms",element:i.jsx(_P,{})}),i.jsx(me,{path:"/ambassadors",element:i.jsx(at,{to:"/affiliates",replace:!0})}),i.jsx(me,{path:"/ambassadors/terms",element:i.jsx(at,{to:"/affiliates/terms",replace:!0})}),i.jsx(me,{path:"/creators",element:i.jsx(at,{to:"/affiliates",replace:!0})}),i.jsx(me,{path:"/connector",element:i.jsx(at,{to:"/mcp",replace:!0})}),i.jsx(me,{path:"/delete-account",element:i.jsx(NS,{})}),i.jsx(me,{path:"/account-confirmed",element:i.jsx(jP,{})}),i.jsx(me,{path:"/collections",element:i.jsx(oO,{})}),i.jsx(me,{path:"/collections/:id",element:i.jsx(fO,{})}),i.jsx(me,{path:"/support",element:i.jsx(at,{to:"/support/en",replace:!0})}),i.jsx(me,{path:"/support/:lang",element:i.jsx(s4,{})}),i.jsx(me,{path:"/support/:lang/:collectionSlug",element:i.jsx(n4,{})}),i.jsx(me,{path:"/support/:lang/:collectionSlug/:articleSlug",element:i.jsx(l4,{})}),i.jsx(me,{path:"*",element:i.jsx(dS,{})})]})]})})})}));Qx(document.getElementById("root")).render(i.jsx(hf,{children:i.jsx(h4,{})}));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.