react-grab 0.1.33 → 0.1.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -22
- package/dist/copy-content-BVdIJS-d.d.cts +218 -0
- package/dist/copy-content-CZBjwiz6.d.ts +218 -0
- package/dist/core/index.cjs +1 -1
- package/dist/core/index.d.cts +2 -2
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.js +1 -1
- package/dist/core--Ufj16_R.js +22 -0
- package/dist/core--g1aIj2P.cjs +16 -0
- package/dist/core-58frx10s.js +21 -0
- package/dist/core-6WHLinaP.cjs +22 -0
- package/dist/core-8hT_aem6.cjs +16 -0
- package/dist/core-B04T5GVi.js +23 -0
- package/dist/core-B0VVBCnw.cjs +16 -0
- package/dist/core-B2Fb14V5.cjs +21 -0
- package/dist/core-B2KP8L5M.js +22 -0
- package/dist/core-B2doJOtN.cjs +16 -0
- package/dist/core-B3ei2CmJ.cjs +16 -0
- package/dist/core-B4UZXEzF.cjs +16 -0
- package/dist/core-B4fokp5c.js +23 -0
- package/dist/core-B4mcQjIW.cjs +16 -0
- package/dist/core-B4op93Jm.js +16 -0
- package/dist/core-B61jKle0.js +22 -0
- package/dist/core-B7-ZXWFD.js +21 -0
- package/dist/core-B8-HrDOV.js +23 -0
- package/dist/core-B8Qoj_Uu.js +16 -0
- package/dist/core-BAybPvu0.js +16 -0
- package/dist/core-BCoxaMuv.js +22 -0
- package/dist/core-BFUbt-Lr.cjs +16 -0
- package/dist/core-BFs0o0ry.cjs +16 -0
- package/dist/core-BFtyedBy.cjs +21 -0
- package/dist/core-BK3dbxMw.cjs +16 -0
- package/dist/core-BS6dlci7.js +16 -0
- package/dist/core-BSJSAr9t.cjs +23 -0
- package/dist/core-BShyP6v6.cjs +23 -0
- package/dist/core-BVCK03rH.cjs +16 -0
- package/dist/core-BZ-oKEob.cjs +16 -0
- package/dist/core-B_AsSPHz.js +23 -0
- package/dist/core-Bfp2AINN.cjs +23 -0
- package/dist/core-BhZjFvho.js +16 -0
- package/dist/core-BhfWpuzf.cjs +16 -0
- package/dist/core-BiXQdZjv.cjs +21 -0
- package/dist/core-BkCAY-6t.cjs +23 -0
- package/dist/core-BkHiZtUw.cjs +16 -0
- package/dist/core-BlCRSmTs.cjs +22 -0
- package/dist/core-BmWjaBiL.js +16 -0
- package/dist/core-BmlPgqbf.js +21 -0
- package/dist/core-Bmsc35N2.js +16 -0
- package/dist/core-BqGFVds-.cjs +16 -0
- package/dist/core-BqlaX0mO.js +16 -0
- package/dist/core-Br3-SZtp.cjs +16 -0
- package/dist/core-BrTobpFq.js +16 -0
- package/dist/core-BrWkCelW.cjs +16 -0
- package/dist/core-BtBnSqSp.js +16 -0
- package/dist/core-By8r6FNh.js +16 -0
- package/dist/core-C-ix7khG.js +22 -0
- package/dist/core-C3t1u5we.cjs +16 -0
- package/dist/core-C8EAzl4C.cjs +22 -0
- package/dist/core-C8gbQjmB.cjs +16 -0
- package/dist/core-C9W8Rk56.cjs +21 -0
- package/dist/core-CB43TUtW.cjs +22 -0
- package/dist/core-CJE2rmiu.js +16 -0
- package/dist/core-CMKd1SgC.cjs +16 -0
- package/dist/core-CNozueCf.js +16 -0
- package/dist/core-CQmdTUA-.js +16 -0
- package/dist/core-CSrz73MQ.js +23 -0
- package/dist/core-Cc09jN7g.cjs +16 -0
- package/dist/core-CcRJXtp4.cjs +16 -0
- package/dist/core-CcfWW8Yl.js +16 -0
- package/dist/core-CdoXsvsW.js +16 -0
- package/dist/core-CeEIf9A2.js +16 -0
- package/dist/core-CjcWLnZy.cjs +23 -0
- package/dist/core-CjqP4v2-.cjs +23 -0
- package/dist/core-CkD3vLFE.cjs +23 -0
- package/dist/core-CkiTaENw.cjs +16 -0
- package/dist/core-CnAMxMzZ.js +16 -0
- package/dist/core-CpZmNWbD.js +21 -0
- package/dist/core-CvgdmQ4p.js +22 -0
- package/dist/core-CxsODFDQ.cjs +16 -0
- package/dist/core-Cy4XMOO0.js +23 -0
- package/dist/core-Cz9O7gHH.cjs +16 -0
- package/dist/core-D0ky-6qT.cjs +22 -0
- package/dist/core-D9-l5I-_.cjs +16 -0
- package/dist/core-DEwKIq5J.cjs +16 -0
- package/dist/core-DFfTC69x.cjs +16 -0
- package/dist/core-DILYG446.js +16 -0
- package/dist/core-DKn94t_L.js +16 -0
- package/dist/core-DM-_GEhu.js +16 -0
- package/dist/core-DO-NwFws.js +16 -0
- package/dist/core-DODQNUmx.js +23 -0
- package/dist/core-DOPBacgQ.js +16 -0
- package/dist/core-DOb5ZaB5.js +16 -0
- package/dist/core-DOr6dvSK.cjs +23 -0
- package/dist/core-DR0Ro3q8.cjs +16 -0
- package/dist/core-DTcMkp10.cjs +16 -0
- package/dist/core-DTsROgB4.cjs +23 -0
- package/dist/core-DXQG3Wk9.js +23 -0
- package/dist/core-DXglqx_w.cjs +22 -0
- package/dist/core-DZ9x860t.cjs +16 -0
- package/dist/core-DZEKGXRR.js +22 -0
- package/dist/core-DZZ5G9na.js +16 -0
- package/dist/core-DbA9kq9x.js +21 -0
- package/dist/core-DfZtR6Kt.cjs +16 -0
- package/dist/core-Dgp8uIuC.js +4569 -0
- package/dist/core-DiEmqghi.js +16 -0
- package/dist/core-DlRuOC3A.cjs +23 -0
- package/dist/core-DnGsYklN.js +16 -0
- package/dist/core-DpoYsdkP.js +16 -0
- package/dist/core-DujSA1aI.cjs +16 -0
- package/dist/core-DxiziFMu.cjs +16 -0
- package/dist/core-Dy9ynhXB.js +16 -0
- package/dist/core-EHhBxHJ_.js +21 -0
- package/dist/core-G6p5b8ak.js +16 -0
- package/dist/core-H-_PbkBe.js +16 -0
- package/dist/core-JXJ0gE1j.cjs +22 -0
- package/dist/core-KoODoP9-.cjs +16 -0
- package/dist/core-LXhhDWv1.cjs +16 -0
- package/dist/core-QYSP7a25.cjs +16 -0
- package/dist/core-RWZw5had.js +23 -0
- package/dist/core-SZQqhCwV.js +23 -0
- package/dist/core-UpW6Z6Mk.cjs +21 -0
- package/dist/core-VscwhGe-.js +16 -0
- package/dist/core-WK1KkWG3.js +16 -0
- package/dist/core-X5YFIG5j.js +16 -0
- package/dist/core-XFT_Fkcw.js +16 -0
- package/dist/core-YQNuPG-3.cjs +16 -0
- package/dist/core-aViTfdTA.js +16 -0
- package/dist/core-b9fESdKU.cjs +16 -0
- package/dist/core-bUZ42VWj.cjs +4460 -0
- package/dist/core-eHkZbc2W.cjs +16 -0
- package/dist/core-gdUwD7JK.js +16 -0
- package/dist/core-jYKdSVlJ.cjs +21 -0
- package/dist/core-l8_Z4q-L.js +16 -0
- package/dist/core-q3XmQbpc.js +16 -0
- package/dist/core-rJjaR48p.js +16 -0
- package/dist/core-umpo-qTC.cjs +16 -0
- package/dist/core-vVsOKocN.js +16 -0
- package/dist/core-wQfD_pOM.cjs +23 -0
- package/dist/extract-element-css-0f3q-q7b.js +10 -0
- package/dist/extract-element-css-6J5DTdGN.cjs +336 -0
- package/dist/extract-element-css-B0mG017l.cjs +10 -0
- package/dist/extract-element-css-B1yr8Mpm.cjs +10 -0
- package/dist/extract-element-css-B3-IjvrV.js +10 -0
- package/dist/extract-element-css-BD8JAeoQ.cjs +10 -0
- package/dist/extract-element-css-BDBThjvO.cjs +10 -0
- package/dist/extract-element-css-BDF8Dsxi.cjs +10 -0
- package/dist/extract-element-css-BH2TCwmX.js +10 -0
- package/dist/extract-element-css-BIhJpEw3.js +10 -0
- package/dist/extract-element-css-BJ5IWmx6.cjs +10 -0
- package/dist/extract-element-css-BK5crNDH.js +10 -0
- package/dist/extract-element-css-BKago1jD.cjs +10 -0
- package/dist/extract-element-css-BOm7HBmq.cjs +10 -0
- package/dist/extract-element-css-BSpO2ilP.cjs +10 -0
- package/dist/extract-element-css-BUcxktuZ.js +10 -0
- package/dist/extract-element-css-BWBXnTPc.js +10 -0
- package/dist/extract-element-css-BctgCnqi.cjs +10 -0
- package/dist/extract-element-css-BlVzutos.js +10 -0
- package/dist/extract-element-css-BmiTc_Mk.js +10 -0
- package/dist/extract-element-css-BpXvHRvz.js +10 -0
- package/dist/extract-element-css-BvgbpVrI.js +10 -0
- package/dist/extract-element-css-C1tUbLOr.js +10 -0
- package/dist/extract-element-css-C2PYWNnN.cjs +10 -0
- package/dist/extract-element-css-C3RsAz33.js +10 -0
- package/dist/extract-element-css-C9TJ3qu4.cjs +10 -0
- package/dist/extract-element-css-CAyHke4c.js +10 -0
- package/dist/extract-element-css-CBMVWErt.cjs +10 -0
- package/dist/extract-element-css-CMVYWMgY.js +10 -0
- package/dist/extract-element-css-CUcY2ELh.cjs +10 -0
- package/dist/extract-element-css-CWZuIQQk.cjs +10 -0
- package/dist/extract-element-css-C_F87DWh.js +10 -0
- package/dist/extract-element-css-CcOv00u_.js +10 -0
- package/dist/extract-element-css-ClUN8rFQ.js +319 -0
- package/dist/extract-element-css-CllNZlHg.cjs +10 -0
- package/dist/extract-element-css-Cp3VzwsP.cjs +10 -0
- package/dist/extract-element-css-CuxQoy6m.cjs +10 -0
- package/dist/extract-element-css-CwaJovy6.js +10 -0
- package/dist/extract-element-css-D-ERlFXC.cjs +10 -0
- package/dist/extract-element-css-D1aWSxyg.js +10 -0
- package/dist/extract-element-css-D5rZpeek.js +10 -0
- package/dist/extract-element-css-DE-GktJ-.cjs +10 -0
- package/dist/extract-element-css-DGaQuxEj.js +10 -0
- package/dist/extract-element-css-DGf1_gmY.cjs +10 -0
- package/dist/extract-element-css-DHByDPFC.cjs +10 -0
- package/dist/extract-element-css-DMYDBqW4.js +10 -0
- package/dist/extract-element-css-DQhNHcHg.cjs +10 -0
- package/dist/extract-element-css-DRI296aF.js +10 -0
- package/dist/extract-element-css-DTyWMO7X.js +10 -0
- package/dist/extract-element-css-D_AtWyYd.cjs +10 -0
- package/dist/extract-element-css-DajcFN4D.cjs +10 -0
- package/dist/extract-element-css-DbsQg6dD.js +10 -0
- package/dist/extract-element-css-DeiBTDrG.js +10 -0
- package/dist/extract-element-css-Dg3hSOh_.cjs +10 -0
- package/dist/extract-element-css-Do-5VPcW.js +10 -0
- package/dist/extract-element-css-DoROI1Lu.js +10 -0
- package/dist/extract-element-css-DtPOE8Qf.js +10 -0
- package/dist/extract-element-css-DyHXp0kV.js +10 -0
- package/dist/extract-element-css-HQfFXyjl.cjs +10 -0
- package/dist/extract-element-css-JN4bPqiH.cjs +10 -0
- package/dist/extract-element-css-JmWO6AFd.cjs +10 -0
- package/dist/extract-element-css-KqQpDZ3u.js +10 -0
- package/dist/extract-element-css-LWV4qZnB.js +10 -0
- package/dist/extract-element-css-VQDyterf.cjs +10 -0
- package/dist/extract-element-css-X8oGGyC9.js +10 -0
- package/dist/extract-element-css-_52JSItY.cjs +10 -0
- package/dist/extract-element-css-_9FOk1X7.js +10 -0
- package/dist/extract-element-css-kWe0BrvE.cjs +10 -0
- package/dist/extract-element-css-xgQzkNfU.cjs +10 -0
- package/dist/extract-element-css-zpC79GoB.cjs +10 -0
- package/dist/freeze-updates-44ijEDa3.cjs +52 -0
- package/dist/freeze-updates-B-KM0P-S.js +55 -0
- package/dist/freeze-updates-B3BTWdin.js +52 -0
- package/dist/freeze-updates-B46IFLUc.js +52 -0
- package/dist/freeze-updates-B4Dd2NgX.cjs +55 -0
- package/dist/freeze-updates-B4sixfxL.cjs +55 -0
- package/dist/freeze-updates-B8XVmCbU.cjs +52 -0
- package/dist/freeze-updates-B9KiLr4J.js +53 -0
- package/dist/freeze-updates-BBXKN548.cjs +52 -0
- package/dist/freeze-updates-BCJY18RM.js +52 -0
- package/dist/freeze-updates-BFqQ7DfD.cjs +53 -0
- package/dist/freeze-updates-BIu5xw5I.cjs +55 -0
- package/dist/freeze-updates-BZyoCSfS.js +53 -0
- package/dist/freeze-updates-BgSzy4TP.cjs +52 -0
- package/dist/freeze-updates-Bh5uFj9M.cjs +53 -0
- package/dist/freeze-updates-Bl_wpv3s.js +53 -0
- package/dist/freeze-updates-BlxJUz-r.js +55 -0
- package/dist/freeze-updates-BzlaSiwx.js +53 -0
- package/dist/freeze-updates-C-n3vnIe.cjs +53 -0
- package/dist/freeze-updates-C19JTP7M.js +55 -0
- package/dist/freeze-updates-C2oMSGYa.js +55 -0
- package/dist/freeze-updates-C5e9EmRj.js +55 -0
- package/dist/freeze-updates-CAD_rBn-.cjs +52 -0
- package/dist/freeze-updates-CK3vDjxD.js +55 -0
- package/dist/freeze-updates-CPL37KUf.cjs +3145 -0
- package/dist/freeze-updates-CUfAvadN.js +52 -0
- package/dist/freeze-updates-CYI91QSS.js +52 -0
- package/dist/freeze-updates-CYLr9HLu.cjs +52 -0
- package/dist/freeze-updates-CcGZPbDa.cjs +53 -0
- package/dist/freeze-updates-CobOgm67.cjs +55 -0
- package/dist/freeze-updates-CqgugC0v.cjs +55 -0
- package/dist/freeze-updates-CvoDbgCn.cjs +55 -0
- package/dist/freeze-updates-CzNFqLh4.js +55 -0
- package/dist/freeze-updates-D-wqPzkS.cjs +53 -0
- package/dist/freeze-updates-D2K4dx91.js +55 -0
- package/dist/freeze-updates-DDJeC30f.cjs +55 -0
- package/dist/freeze-updates-DGd0kTS0.cjs +55 -0
- package/dist/freeze-updates-DHwYYvlF.js +52 -0
- package/dist/freeze-updates-DI2WrF4x.cjs +53 -0
- package/dist/freeze-updates-DISihwcW.cjs +55 -0
- package/dist/freeze-updates-DIXfS3oc.js +55 -0
- package/dist/freeze-updates-DJ_kd3MS.cjs +52 -0
- package/dist/freeze-updates-DQa7cAMD.js +52 -0
- package/dist/freeze-updates-DUhtP6Qh.cjs +53 -0
- package/dist/freeze-updates-DUrm6t8c.js +52 -0
- package/dist/freeze-updates-DVQXyNiy.js +52 -0
- package/dist/freeze-updates-DYnenNAx.js +53 -0
- package/dist/freeze-updates-D_k5kTsT.js +55 -0
- package/dist/freeze-updates-Daef1yLv.js +53 -0
- package/dist/freeze-updates-Dh6MIxrS.cjs +52 -0
- package/dist/freeze-updates-Diu7g9r6.cjs +52 -0
- package/dist/freeze-updates-DjDBr_oh.js +53 -0
- package/dist/freeze-updates-DkS4-mx9.cjs +52 -0
- package/dist/freeze-updates-DoeDby5W.js +52 -0
- package/dist/freeze-updates-Dp5H7855.js +53 -0
- package/dist/freeze-updates-DuFU4W3a.cjs +52 -0
- package/dist/freeze-updates-F_aGQXqR.js +55 -0
- package/dist/freeze-updates-HHHOlV6s.js +52 -0
- package/dist/freeze-updates-Iz-KAPxe.js +2755 -0
- package/dist/freeze-updates-JRtE2hMi.js +53 -0
- package/dist/freeze-updates-QRM0VlPw.cjs +52 -0
- package/dist/freeze-updates-RwvSZOO_.cjs +55 -0
- package/dist/freeze-updates-Tr7M7QVD.cjs +55 -0
- package/dist/freeze-updates-WLO3XKoj.cjs +53 -0
- package/dist/freeze-updates-YrXN1_2z.js +52 -0
- package/dist/freeze-updates-bnVMmz_x.cjs +53 -0
- package/dist/freeze-updates-dlxsMPrr.cjs +55 -0
- package/dist/freeze-updates-z2Ak9jr6.js +55 -0
- package/dist/index-5bXwDEQz.d.ts +446 -0
- package/dist/index-AOuLP5ui.d.cts +203 -0
- package/dist/index-B3INoNjJ.d.ts +461 -0
- package/dist/index-Beii_ZY2.d.ts +203 -0
- package/dist/index-BvBIePAo.d.cts +446 -0
- package/dist/index-C188F1-K.d.ts +460 -0
- package/dist/index-Cmlk2psk.d.cts +460 -0
- package/dist/index-CpD0mJy2.d.cts +461 -0
- package/dist/index-D4VTvmm1.d.cts +203 -0
- package/dist/index-DASKclJI.d.ts +203 -0
- package/dist/index-DZaWv0Sy.d.ts +461 -0
- package/dist/index-DxRpK6Tz.d.cts +461 -0
- package/dist/index-HrbjUEIv.d.ts +461 -0
- package/dist/index-iOOBO4Tu.d.cts +461 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.global.js +25 -19
- package/dist/index.iife.js +25 -19
- package/dist/index.js +1 -1
- package/dist/primitives.cjs +1 -1
- package/dist/primitives.d.cts +13 -2
- package/dist/primitives.d.ts +13 -2
- package/dist/primitives.js +1 -1
- package/dist/renderer-03E_Z-oG.cjs +9 -0
- package/dist/renderer-2FkGa8yQ.cjs +9 -0
- package/dist/renderer-2qf4XT0a.cjs +9 -0
- package/dist/renderer-4WLOXegj.js +9 -0
- package/dist/renderer-5OkvqZ27.cjs +9 -0
- package/dist/renderer-70hOclWm.js +9 -0
- package/dist/renderer-7PW4LWCI.js +9 -0
- package/dist/renderer-88pIB89V.cjs +9 -0
- package/dist/renderer-9QsCcfWA.cjs +9 -0
- package/dist/renderer-B0DLjOcW.js +9 -0
- package/dist/renderer-B28zz1-T.cjs +9 -0
- package/dist/renderer-B2kpCtoY.cjs +9 -0
- package/dist/renderer-BB0mKzDq.cjs +9 -0
- package/dist/renderer-BNYQfBKy.cjs +9 -0
- package/dist/renderer-BQCd2ezw.js +9 -0
- package/dist/renderer-BRyXuhLV.js +9 -0
- package/dist/renderer-BSjQmsCr.js +9 -0
- package/dist/renderer-BT6S4lrE.js +9 -0
- package/dist/renderer-BWb6GNsI.js +9 -0
- package/dist/renderer-Bc_LPRgB.js +9 -0
- package/dist/renderer-Bi3BGqK6.js +9 -0
- package/dist/renderer-Bo9Hj0Nz.cjs +9 -0
- package/dist/renderer-BrHbCsT-.cjs +9 -0
- package/dist/renderer-BrrTBbU_.cjs +9 -0
- package/dist/renderer-BtD4lYaA.cjs +9 -0
- package/dist/renderer-BwW5L228.cjs +9 -0
- package/dist/renderer-Bzq6OP1Q.cjs +9 -0
- package/dist/renderer-C60Irhis.cjs +9 -0
- package/dist/renderer-C667p9Ts.js +9 -0
- package/dist/renderer-CGDYcfpq.js +9 -0
- package/dist/renderer-CJs3DW7F.js +9 -0
- package/dist/renderer-CRtXJ6gz.js +9 -0
- package/dist/renderer-CSGre_uQ.js +9 -0
- package/dist/renderer-CU622nBs.cjs +9 -0
- package/dist/renderer-CZU0dUK9.js +9 -0
- package/dist/renderer-C_8ChDyN.js +9 -0
- package/dist/renderer-CaWdbJaJ.js +9 -0
- package/dist/renderer-CbIWDh9l.js +9 -0
- package/dist/renderer-Cbq6Rx1G.cjs +9 -0
- package/dist/renderer-CeCJd7_M.cjs +9 -0
- package/dist/renderer-ChrLxxjc.cjs +9 -0
- package/dist/renderer-CrOSekQx.cjs +9 -0
- package/dist/renderer-CrbJ1q93.cjs +9 -0
- package/dist/renderer-CwxBLDdk.js +9 -0
- package/dist/renderer-D2P_eRJ3.js +9 -0
- package/dist/renderer-D6bxtXXz.cjs +9 -0
- package/dist/renderer-D6oIEAce.cjs +9 -0
- package/dist/renderer-D6qViFpF.js +9 -0
- package/dist/renderer-D8fyDtUL.cjs +9 -0
- package/dist/renderer-DGXjcXzg.js +9 -0
- package/dist/renderer-DIQRqnHu.cjs +9 -0
- package/dist/renderer-DL6fAUQn.js +9 -0
- package/dist/renderer-DNQ9_mCu.js +3887 -0
- package/dist/renderer-DNWIs1VC.js +9 -0
- package/dist/renderer-DSjEGpz-.js +9 -0
- package/dist/renderer-DT7LZQtO.cjs +9 -0
- package/dist/renderer-DXeyOozP.js +9 -0
- package/dist/renderer-DdIChCSD.cjs +9 -0
- package/dist/renderer-DeWbPCuO.cjs +9 -0
- package/dist/renderer-Dlno_pdb.js +9 -0
- package/dist/renderer-DnYy5FOZ.js +9 -0
- package/dist/renderer-Dq7B2igO.js +9 -0
- package/dist/renderer-DtkrTfo1.cjs +9 -0
- package/dist/renderer-IibG__VV.js +9 -0
- package/dist/renderer-JmnYl4I6.js +9 -0
- package/dist/renderer-LNHnA-cT.cjs +3887 -0
- package/dist/renderer-Q0qVTIQc.js +9 -0
- package/dist/renderer-QW3s3A0S.cjs +9 -0
- package/dist/renderer-QpKM_dpy.js +9 -0
- package/dist/renderer-XmhoGb9V.cjs +9 -0
- package/dist/renderer-YUdjQ8nt.cjs +9 -0
- package/dist/renderer-_81FJC2J.js +9 -0
- package/dist/renderer-aqAvQN6V.cjs +9 -0
- package/dist/renderer-bnYZTPia.cjs +9 -0
- package/dist/renderer-kJC7KhNe.cjs +9 -0
- package/dist/renderer-nXRFY18V.js +9 -0
- package/dist/renderer-s5lBiYLe.js +9 -0
- package/dist/renderer-y9QnqihM.cjs +9 -0
- package/dist/state-7SBySxTA.cjs +9 -0
- package/dist/state-8yi9xrye.js +9 -0
- package/dist/state-9r5nglSb.js +9 -0
- package/dist/state-B0T1D-ks.cjs +9 -0
- package/dist/state-BA6QsS82.js +9 -0
- package/dist/state-BGtrXdJj.js +9 -0
- package/dist/state-BJlvi-2E.cjs +9 -0
- package/dist/state-BN964xZ5.js +9 -0
- package/dist/state-BO1NAkWD.js +9 -0
- package/dist/state-BO3AE8Fe.js +9 -0
- package/dist/state-BV9PmYfz.js +9 -0
- package/dist/state-BYF5b0D5.js +9 -0
- package/dist/state-Baa6Ci7k.js +9 -0
- package/dist/state-Bd2gljHi.js +9 -0
- package/dist/state-Bd6VTjeM.js +9 -0
- package/dist/state-BeBXGZmh.cjs +9 -0
- package/dist/state-BfN8pmY2.js +9 -0
- package/dist/state-Bpf5_85U.js +9 -0
- package/dist/state-BsfONYv7.cjs +9 -0
- package/dist/state-C-rvuJYD.cjs +9 -0
- package/dist/state-C0Ow0XmM.js +9 -0
- package/dist/state-C5Bj0Buz.js +9 -0
- package/dist/state-C6EfW8-M.js +9 -0
- package/dist/state-C6rrzEh-.cjs +9 -0
- package/dist/state-CEnDdOqw.cjs +9 -0
- package/dist/state-CGmKE82n.js +9 -0
- package/dist/state-CI0P3gEI.js +9 -0
- package/dist/state-CI2DgSGN.cjs +9 -0
- package/dist/state-CJLktzcx.cjs +9 -0
- package/dist/state-CNep2ElU.cjs +9 -0
- package/dist/state-CSGI31dx.js +9 -0
- package/dist/state-CUcDVMOr.js +1696 -0
- package/dist/state-CVzxiIHS.cjs +9 -0
- package/dist/state-C_MfICQQ.cjs +9 -0
- package/dist/state-CepA6OBG.cjs +9 -0
- package/dist/state-CfDNgfQC.cjs +9 -0
- package/dist/state-CfWNsT73.cjs +9 -0
- package/dist/state-Cl-Qsozk.cjs +9 -0
- package/dist/state-Cm5Lwn2E.js +9 -0
- package/dist/state-CvjZor_U.cjs +9 -0
- package/dist/state-CyD129tM.cjs +9 -0
- package/dist/state-CyUr2qMd.js +9 -0
- package/dist/state-D-fLHGyJ.js +9 -0
- package/dist/state-D0E4SXeX.js +9 -0
- package/dist/state-D2TlmfBW.cjs +9 -0
- package/dist/state-D6btATEI.js +9 -0
- package/dist/state-D9ZV8boi.cjs +9 -0
- package/dist/state-DCtMfI4R.cjs +9 -0
- package/dist/state-DGLq4GOX.js +9 -0
- package/dist/state-DJqo4o5A.js +9 -0
- package/dist/state-DMYmMd2O.cjs +9 -0
- package/dist/state-DUXEd2RT.cjs +9 -0
- package/dist/state-DZl9i9YY.js +9 -0
- package/dist/state-DcBwFGAn.js +9 -0
- package/dist/state-Dd1plgdI.cjs +9 -0
- package/dist/state-Dgh4g_LN.cjs +1293 -0
- package/dist/state-DiSiK2-w.cjs +9 -0
- package/dist/state-Dr92AOzO.js +9 -0
- package/dist/state-Dt428m3l.cjs +9 -0
- package/dist/state-DzPMjkFn.js +9 -0
- package/dist/state-LIGdfh87.cjs +9 -0
- package/dist/state-MC-BcccL.js +9 -0
- package/dist/state-P55CkQ4f.cjs +9 -0
- package/dist/state-Tb5KTyit.cjs +9 -0
- package/dist/state-_frBwcTV.cjs +9 -0
- package/dist/state-eM6WYht4.js +9 -0
- package/dist/state-nEfTr66e.cjs +9 -0
- package/dist/state-tAT5fWsb.cjs +9 -0
- package/dist/state-xjSIX0_u.js +9 -0
- package/dist/state-ze3D7XUZ.cjs +9 -0
- package/dist/styles.css +2 -2
- package/package.json +9 -8
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license MIT
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) 2025 Aiden Bai
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import{A as e,C as t,D as n,F as r,L as i,M as a,N as o,O as s,P as c,R as l,S as u,a as d,c as f,g as p,h as m,i as h,k as g,l as _,n as v,o as ee,r as y,s as te,t as ne}from"./state-D-fLHGyJ.js";import{A as re,E as b,F as ie,J as ae,M as oe,N as se,P as x,R as ce,S as le,T as ue,U as de,X as fe,Y as S,Z as C,_ as pe,a as me,b as w,c as he,ct as ge,d as _e,f as ve,g as ye,h as be,i as xe,j as Se,k as Ce,l as we,lt as T,m as Te,o as Ee,p as De,r as Oe,s as ke,t as Ae,u as je,v as Me,w as Ne,y as Pe}from"./freeze-updates-DVQXyNiy.js";import{i as Fe,n as Ie,r as Le,t as E}from"./extract-element-css-B3-IjvrV.js";var Re=`/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
|
|
10
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Geist", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:4px;--font-weight-medium:500;--font-weight-semibold:600;--radius-sm:4px;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-badge-pop:cubic-bezier(.34, 1.36, .64, 1);--ease-badge-close:cubic-bezier(.4, 0, .2, 1);--ease-text-swap:ease-out;--animate-rg-badge-slide:rg-badge-slide .26s cubic-bezier(.22, 1, .36, 1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.touch-hitbox{position:relative}.touch-hitbox:before{content:"";width:100%;min-width:44px;height:100%;min-height:44px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.-top-1{top:calc(var(--spacing) * -1)}.top-0{top:calc(var(--spacing) * 0)}.-right-1{right:calc(var(--spacing) * -1)}.left-0{left:calc(var(--spacing) * 0)}.z-1{z-index:1}.z-10{z-index:10}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.m-0{margin:calc(var(--spacing) * 0)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.-ml-\\[2px\\]{margin-left:-2px}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.box-border{box-sizing:border-box}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-\\[18px\\]{width:18px;height:18px}.h-0{height:calc(var(--spacing) * 0)}.h-2\\.5{height:calc(var(--spacing) * 2.5)}.h-\\[17px\\]{height:17px}.h-fit{height:fit-content}.h-full{height:100%}.max-h-\\[240px\\]{max-height:240px}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-4{min-height:calc(var(--spacing) * 4)}.w-0{width:calc(var(--spacing) * 0)}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-2\\.5{min-width:calc(var(--spacing) * 2.5)}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.origin-center{transform-origin:50%}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.interactive-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}@media (hover:hover) and (pointer:fine){.interactive-scale:hover{transform:scale(1.05)}}.interactive-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.96)}.press-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.press-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.97)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.\\[scrollbar-width\\:thin\\]{scrollbar-width:thin}.\\[scrollbar-color\\:transparent_transparent\\]{scrollbar-color:transparent transparent}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-\\[5px\\]{gap:5px}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\\[10px\\]{border-radius:10px}.rounded-full{border-radius:3.40282e38px}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[\\#B3B3B3\\]{border-color:#b3b3b3}.border-t-\\[\\#D9D9D9\\]{border-top-color:#d9d9d9}.bg-\\[\\#FEF2F2\\]{background-color:#fef2f2}.bg-black{background-color:var(--color-black)}.bg-black\\/5{background-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.bg-black\\/5{background-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing) * 0)}.px-0\\.5{padding-inline:calc(var(--spacing) * .5)}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-\\[3px\\]{padding-inline:3px}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-px{padding-block:1px}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.text-left{text-align:left}.font-sans{font-family:var(--font-sans)}.text-\\[8px\\]{font-size:8px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.wrap-break-word{overflow-wrap:break-word}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-\\[\\#71717a\\]{color:#71717a}.text-\\[\\#B3B3B3\\]{color:#b3b3b3}.text-\\[\\#B91C1C\\]{color:#b91c1c}.text-\\[\\#B91C1C\\]\\/50{color:oklab(50.542% .168942 .0880134/.5)}.text-black{color:var(--color-black)}.text-black\\/25{color:#00000040}@supports (color:color-mix(in lab, red, red)){.text-black\\/25{color:color-mix(in oklab, var(--color-black) 25%, transparent)}}.text-black\\/30{color:#0000004d}@supports (color:color-mix(in lab, red, red)){.text-black\\/30{color:color-mix(in oklab, var(--color-black) 30%, transparent)}}.text-black\\/40{color:#0006}@supports (color:color-mix(in lab, red, red)){.text-black\\/40{color:color-mix(in oklab, var(--color-black) 40%, transparent)}}.text-black\\/50{color:#00000080}@supports (color:color-mix(in lab, red, red)){.text-black\\/50{color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.text-black\\/60{color:#0009}@supports (color:color-mix(in lab, red, red)){.text-black\\/60{color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.text-black\\/70{color:#000000b3}@supports (color:color-mix(in lab, red, red)){.text-black\\/70{color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.text-black\\/85{color:#000000d9}@supports (color:color-mix(in lab, red, red)){.text-black\\/85{color:color-mix(in oklab, var(--color-black) 85%, transparent)}}.text-white{color:var(--color-white)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter-\\[drop-shadow\\(0px_1px_2px_\\#51515133\\)\\]{filter:drop-shadow(0 1px 2px #51515133)}.filter-\\[drop-shadow\\(0px_1px_2px_\\#51515140\\)\\]{filter:drop-shadow(0 1px 2px #51515140)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\,opacity\\]{transition-property:grid-template-columns,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\,opacity\\]{transition-property:grid-template-rows,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\,margin\\,width\\]{transition-property:opacity,transform,margin,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\]{transition-property:top,left,width,height,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\,filter\\]{transition-property:transform,opacity,filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.\\[transition-duration\\:500ms\\,400ms\\,500ms\\]{transition-duration:.5s,.4s,.5s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-badge-pop{--tw-ease:var(--ease-badge-pop);transition-timing-function:var(--ease-badge-pop)}.ease-drawer{--tw-ease:var(--ease-drawer);transition-timing-function:var(--ease-drawer)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.ease-spring{--tw-ease:var(--ease-spring);transition-timing-function:var(--ease-spring)}.ease-text-swap{--tw-ease:var(--ease-text-swap);transition-timing-function:var(--ease-text-swap)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-\\[transform\\,opacity\\,filter\\]{will-change:transform,opacity,filter}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.\\[grid-area\\:1\\/1\\]{grid-area:1/1}.group-data-\\[open\\=false\\]\\/badge\\:scale-0:is(:where(.group\\/badge)[data-open=false] *){--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-data-\\[open\\=false\\]\\/badge\\:opacity-0:is(:where(.group\\/badge)[data-open=false] *){opacity:0}.group-data-\\[open\\=false\\]\\/badge\\:blur-\\[2px\\]:is(:where(.group\\/badge)[data-open=false] *){--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.group-data-\\[open\\=false\\]\\/badge\\:\\[transition-duration\\:180ms\\,180ms\\,180ms\\]:is(:where(.group\\/badge)[data-open=false] *){transition-duration:.18s,.18s,.18s}.group-data-\\[open\\=false\\]\\/badge\\:ease-badge-close:is(:where(.group\\/badge)[data-open=false] *){--tw-ease:var(--ease-badge-close);transition-timing-function:var(--ease-badge-close)}.group-data-\\[state\\=a\\]\\/badge\\:translate-y-0:is(:where(.group\\/badge)[data-state=a] *){--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=a\\]\\/badge\\:translate-y-2:is(:where(.group\\/badge)[data-state=a] *){--tw-translate-y:calc(var(--spacing) * 2);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=a\\]\\/badge\\:opacity-0:is(:where(.group\\/badge)[data-state=a] *){opacity:0}.group-data-\\[state\\=a\\]\\/badge\\:opacity-100:is(:where(.group\\/badge)[data-state=a] *){opacity:1}.group-data-\\[state\\=a\\]\\/badge\\:blur-\\[2px\\]:is(:where(.group\\/badge)[data-state=a] *){--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.group-data-\\[state\\=b\\]\\/badge\\:-translate-y-2:is(:where(.group\\/badge)[data-state=b] *){--tw-translate-y:calc(var(--spacing) * -2);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=b\\]\\/badge\\:translate-y-0:is(:where(.group\\/badge)[data-state=b] *){--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=b\\]\\/badge\\:opacity-0:is(:where(.group\\/badge)[data-state=b] *){opacity:0}.group-data-\\[state\\=b\\]\\/badge\\:opacity-100:is(:where(.group\\/badge)[data-state=b] *){opacity:1}.group-data-\\[state\\=b\\]\\/badge\\:blur-\\[2px\\]:is(:where(.group\\/badge)[data-state=b] *){--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.before\\:\\!min-h-full:before{content:var(--tw-content);min-height:100%!important}.before\\:\\!min-w-full:before{content:var(--tw-content);min-width:100%!important}@media (hover:hover){.hover\\:\\[scrollbar-color\\:rgba\\(0\\,0\\,0\\,0\\.15\\)_transparent\\]:hover{scrollbar-color:#00000026 transparent}.hover\\:bg-\\[\\#F5F5F5\\]:hover{background-color:#f5f5f5}.hover\\:bg-\\[\\#FEE2E2\\]:hover{background-color:#fee2e2}.hover\\:bg-black\\/10:hover{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-black\\/10:hover{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.hover\\:text-black:hover{color:var(--color-black)}.hover\\:opacity-100:hover{opacity:1}}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:opacity-40:disabled{opacity:.4}.data-\\[open\\=true\\]\\:animate-rg-badge-slide[data-open=true]{animation:var(--animate-rg-badge-slide)}}:host{all:initial;direction:ltr}@keyframes rg-badge-slide{0%{transform:translate(-8.2px,12.4px)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){[data-react-grab-unread-indicator],[data-react-grab-unread-indicator] *{transition:none!important;animation:none!important}}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-3px)}30%{transform:translate(3px)}45%{transform:translate(-3px)}60%{transform:translate(3px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}@keyframes success-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes icon-loader-spin{0%{opacity:1}50%{opacity:.5}to{opacity:.2}}.icon-loader-bar{animation:.5s linear infinite icon-loader-spin}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer-text{color:#0000;background:linear-gradient(90deg,#71717a 0%,#a1a1aa 25%,#71717a 50%,#a1a1aa 75%,#71717a 100%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:2.5s linear infinite shimmer}@keyframes clock-flash{0%{transform:scale(1)}25%{transform:scale(1.2)}50%{transform:scale(.92)}75%{transform:scale(1.05)}to{transform:scale(1)}}.animate-clock-flash{will-change:transform;animation:.4s ease-out clock-flash}.animate-shake{will-change:transform;animation:.3s ease-out shake}.animate-success-pop{will-change:transform, opacity;animation:.35s cubic-bezier(.34,1.56,.64,1) both success-pop}@supports (-webkit-touch-callout:none){textarea[data-react-grab-input]{font-size:16px}}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-contain-size{syntax:"*";inherits:false}@property --tw-contain-layout{syntax:"*";inherits:false}@property --tw-contain-paint{syntax:"*";inherits:false}@property --tw-contain-style{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-content{syntax:"*";inherits:false;initial-value:""}`;const D=Symbol(`store-raw`),O=Symbol(`store-node`),k=Symbol(`store-has`),ze=Symbol(`store-self`);function Be(e){let t=e[u];if(!t&&(Object.defineProperty(e,u,{value:t=new Proxy(e,Ke)}),!Array.isArray(e))){let n=Object.keys(e),r=Object.getOwnPropertyDescriptors(e);for(let i=0,a=n.length;i<a;i++){let a=n[i];r[a].get&&Object.defineProperty(e,a,{enumerable:r[a].enumerable,get:r[a].get.bind(t)})}}return t}function A(e){let t;return typeof e==`object`&&!!e&&(e[u]||!(t=Object.getPrototypeOf(e))||t===Object.prototype||Array.isArray(e))}function j(e,t=new Set){let n,r,i,a;if(n=e!=null&&e[D])return n;if(!A(e)||t.has(e))return e;if(Array.isArray(e)){Object.isFrozen(e)?e=e.slice(0):t.add(e);for(let n=0,a=e.length;n<a;n++)i=e[n],(r=j(i,t))!==i&&(e[n]=r)}else{Object.isFrozen(e)?e=Object.assign({},e):t.add(e);let n=Object.keys(e),o=Object.getOwnPropertyDescriptors(e);for(let s=0,c=n.length;s<c;s++)a=n[s],!o[a].get&&(i=e[a],(r=j(i,t))!==i&&(e[a]=r))}return e}function Ve(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function He(e,t,n){if(e[t])return e[t];let[r,i]=c(n,{equals:!1,internal:!0});return r.$=i,e[t]=r}function Ue(e,t){let n=Reflect.getOwnPropertyDescriptor(e,t);return!n||n.get||!n.configurable||t===u||t===O?n:(delete n.value,delete n.writable,n.get=()=>e[u][t],n)}function We(e){r()&&He(Ve(e,O),ze)()}function Ge(e){return We(e),Reflect.ownKeys(e)}const Ke={get(e,n,i){if(n===D)return e;if(n===u)return i;if(n===t)return We(e),i;let a=Ve(e,O),o=a[n],s=o?o():e[n];if(n===O||n===k||n===`__proto__`)return s;if(!o){let t=Object.getOwnPropertyDescriptor(e,n);r()&&(typeof s!=`function`||e.hasOwnProperty(n))&&!(t&&t.get)&&(s=He(a,n,s)())}return A(s)?Be(s):s},has(e,n){return n===D||n===u||n===t||n===O||n===k||n===`__proto__`?!0:(r()&&He(Ve(e,k),n)(),n in e)},set(){return!0},deleteProperty(){return!0},ownKeys:Ge,getOwnPropertyDescriptor:Ue};function M(e,t,n,r=!1){if(!r&&e[t]===n)return;let i=e[t],a=e.length;n===void 0?(delete e[t],e[k]&&e[k][t]&&i!==void 0&&e[k][t].$()):(e[t]=n,e[k]&&e[k][t]&&i===void 0&&e[k][t].$());let o=Ve(e,O),s;if((s=He(o,t,i))&&s.$(()=>n),Array.isArray(e)&&e.length!==a){for(let t=e.length;t<a;t++)(s=o[t])&&s.$();(s=He(o,`length`,a))&&s.$(e.length)}(s=o[ze])&&s.$()}function qe(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];M(e,i,t[i])}}function Je(e,t){if(typeof t==`function`&&(t=t(e)),t=j(t),Array.isArray(t)){if(e===t)return;let n=0,r=t.length;for(;n<r;n++){let r=t[n];e[n]!==r&&M(e,n,r)}M(e,`length`,r)}else qe(e,t)}function N(e,t,n=[]){let r,i=e;if(t.length>1){r=t.shift();let a=typeof r,o=Array.isArray(e);if(Array.isArray(r)){for(let i=0;i<r.length;i++)N(e,[r[i]].concat(t),n);return}else if(o&&a===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&N(e,[i].concat(t),n);return}else if(o&&a===`object`){let{from:i=0,to:a=e.length-1,by:o=1}=r;for(let r=i;r<=a;r+=o)N(e,[r].concat(t),n);return}else if(t.length>1){N(e[r],t,[r].concat(n));return}i=e[r],n=[r].concat(n)}let a=t[0];typeof a==`function`&&(a=a(i,n),a===i)||r===void 0&&a==null||(a=j(a),r===void 0||A(i)&&A(a)&&!Array.isArray(a)?qe(i,a):M(e,r,a))}function Ye(...[e,t]){let r=j(e||{}),i=Array.isArray(r),a=Be(r);function o(...e){n(()=>{i&&e.length===1?Je(r,e[0]):N(r,e)})}return[a,o]}const P=new WeakMap,Xe={get(e,t){if(t===D)return e;let n=e[t],r;return A(n)?P.get(n)||(P.set(n,r=new Proxy(n,Xe)),r):n},set(e,t,n){return M(e,t,j(n)),!0},deleteProperty(e,t){return M(e,t,void 0,!0),!0}};function F(e){return t=>{if(A(t)){let n;(n=P.get(t))||P.set(t,n=new Proxy(t,Xe)),e(n)}return t}}const Ze=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),Qe=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return Ze(n)?n:null},$e=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=Qe(e);if(t===null)return null;r.push(t)}return r},et=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,tt=e=>e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[15]===1,I=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=$e(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,tt(n)?`none`:`matrix3d(${n[0]}, ${n[1]}, ${n[2]}, ${n[3]}, ${n[4]}, ${n[5]}, ${n[6]}, ${n[7]}, ${n[8]}, ${n[9]}, ${n[10]}, ${n[11]}, 0, 0, 0, ${n[15]})`}else{let t=e.length-1,n=$e(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return et(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},nt=e=>e.isIdentity?`none`:e.is2D?et(e.a,e.b,e.c,e.d)?`none`:`matrix(${e.a}, ${e.b}, ${e.c}, ${e.d}, 0, 0)`:e.m11===1&&e.m12===0&&e.m13===0&&e.m14===0&&e.m21===0&&e.m22===1&&e.m23===0&&e.m24===0&&e.m31===0&&e.m32===0&&e.m33===1&&e.m34===0&&e.m44===1?`none`:`matrix3d(${e.m11}, ${e.m12}, ${e.m13}, ${e.m14}, ${e.m21}, ${e.m22}, ${e.m23}, ${e.m24}, ${e.m31}, ${e.m32}, ${e.m33}, ${e.m34}, 0, 0, 0, ${e.m44})`;let rt=new WeakMap,it=new WeakMap,at=new WeakMap;const ot=()=>{rt=new WeakMap,it=new WeakMap,at=new WeakMap},st=(e,t)=>{let n=it.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return it.set(e,{transform:i,timestamp:t}),i},ct=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=st(a,n);if(e!==`none`)i=i?new DOMMatrix(e).multiply(i):new DOMMatrix(e);else if(!r&&!i&&o>=3)return`none`;a=a.parentElement,o++}return i?(r&&(i=i.multiply(new DOMMatrix(t))),nt(i)):r?I(t):`none`},lt=(e,t,n)=>{let r=at.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return at.set(e,{borderRadius:i,timestamp:n}),i},ut=(e,t,n,r)=>{let i=ct(e,n.transform,r),a=lt(e,n,r);if(i!==`none`&&e instanceof HTMLElement){let n=e.offsetWidth,r=e.offsetHeight;if(n>0&&r>0){let e=t.left+t.width*.5,o=t.top+t.height*.5;return{borderRadius:a,height:r,transform:i,width:n,x:e-n*.5,y:o-r*.5}}}return{borderRadius:a,height:t.height,transform:i,width:t.width,x:t.left,y:t.top}},L=e=>{let t=performance.now(),n=rt.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=ut(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return rt.set(e,{bounds:r,timestamp:t}),r},R=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),dt=e=>({current:{state:`idle`},selectionInteractionLockDepth:0,wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:e.keyHoldDuration,pointer:{x:C,y:C},dragStart:{x:C,y:C},copyStart:{x:C,y:C},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,lastCopiedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:``,viewportVersion:0,grabbedBoxes:[],labelInstances:[],isTouchMode:!1,theme:e.theme,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),ft=e=>{let[t,n]=Ye(dt(e)),r=e=>{n(F(t=>{e(t),t.frozenElement=t.frozenElements.length>0?t.frozenElements[0]:null,t.frozenDragRect=null}))},i=()=>{r(e=>{e.frozenElements=[]})},a=e=>{n(`current`,F(t=>{t.state===`active`&&(t.phase=e)}))},o={startHold:e=>{e!==void 0&&n(`keyHoldDuration`,e),n(`current`,{state:`holding`,startedAt:Date.now()})},releaseHold:()=>{t.current.state===`holding`&&n(`current`,{state:`idle`})},activate:()=>{n(F(e=>{e.current={state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1},e.activationTimestamp=Date.now(),e.previouslyFocusedElement=document.activeElement}))},deactivate:()=>{n(F(e=>{e.current={state:`idle`},e.wasActivatedByToggle=!1,e.pendingCommentMode=!1,e.inputText=``,e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null,e.activationTimestamp=null,e.previouslyFocusedElement=null,e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null,e.lastCopiedElement=null}))},toggle:()=>{t.activationTimestamp===null?(n(`wasActivatedByToggle`,!0),o.activate()):o.deactivate()},freeze:()=>{if(t.current.state===`active`){let e=t.frozenElement??t.detectedElement;e&&n(`frozenElement`,e),a(`frozen`)}},unfreeze:()=>{t.current.state===`active`&&(n(F(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),a(`hovering`))},startDrag:(e,r)=>{t.current.state===`active`&&(r||i(),n(`dragStart`,{x:e.x+window.scrollX,y:e.y+window.scrollY}),a(`dragging-select`))},startDragReposition:()=>{t.current.state===`active`&&t.current.phase===`dragging-select`&&a(`dragging-reposition`)},stopDragReposition:()=>{t.current.state===`active`&&t.current.phase===`dragging-reposition`&&a(`dragging-select`)},shiftDragStart:e=>{t.current.state===`active`&&t.current.phase===`dragging-reposition`&&n(`dragStart`,t=>({x:t.x+e.x,y:t.y+e.y}))},endDrag:()=>{t.current.state===`active`&&(t.current.phase===`dragging-select`||t.current.phase===`dragging-reposition`)&&(n(`dragStart`,{x:C,y:C}),a(`justDragged`))},cancelDrag:()=>{t.current.state===`active`&&(t.current.phase===`dragging-select`||t.current.phase===`dragging-reposition`)&&(n(`dragStart`,{x:C,y:C}),a(`hovering`))},finishJustDragged:()=>{t.current.state===`active`&&t.current.phase===`justDragged`&&a(`hovering`)},startCopy:()=>{let e=t.current.state===`active`;n(`current`,{state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:e=>{e&&n(`lastCopiedElement`,e);let r=t.current.state===`copying`?t.current.wasActive:!1;n(`current`,{state:`justCopied`,copiedAt:Date.now(),wasActive:r})},finishJustCopied:()=>{t.current.state===`justCopied`&&(t.current.wasActive&&!t.wasActivatedByToggle?(i(),n(`current`,{state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})):o.deactivate())},enterPromptMode:(e,r)=>{let{x:i}=R(L(r));n(`copyStart`,e),n(`copyOffsetFromCenterX`,e.x-i),n(`pointer`,e),n(`frozenElement`,r),n(`wasActivatedByToggle`,!0),t.current.state===`active`?n(`current`,F(e=>{e.state===`active`&&(e.isPromptMode=!0,e.phase=`frozen`)})):(n(`current`,{state:`active`,phase:`frozen`,isPromptMode:!0,isPendingDismiss:!1}),n(`activationTimestamp`,Date.now()),n(`previouslyFocusedElement`,document.activeElement))},exitPromptMode:()=>{t.current.state===`active`&&n(`current`,F(e=>{e.state===`active`&&(e.isPromptMode=!1,e.isPendingDismiss=!1)}))},setInputText:e=>{n(`inputText`,e)},clearInputText:()=>{n(`inputText`,``)},setPendingDismiss:e=>{t.current.state===`active`&&n(`current`,F(t=>{t.state===`active`&&(t.isPendingDismiss=e)}))},setPointer:e=>{n(`pointer`,e)},setDetectedElement:e=>{n(`detectedElement`,e)},setFrozenElement:e=>{r(t=>{t.frozenElements=[e]})},setFrozenElements:e=>{r(t=>{t.frozenElements=e})},toggleFrozenElement:e=>{r(t=>{let n=t.frozenElements.indexOf(e);n>=0?t.frozenElements.splice(n,1):t.frozenElements.push(e)})},addFrozenElements:e=>{r(t=>{for(let n of e)t.frozenElements.includes(n)||t.frozenElements.push(n)})},setFrozenDragRect:e=>{n(`frozenDragRect`,e)},setCopyStart:(e,t)=>{let{x:r}=R(L(t));n(`copyStart`,e),n(`copyOffsetFromCenterX`,e.x-r)},setLastGrabbed:e=>{n(`lastGrabbedElement`,e)},clearLastCopied:()=>{n(`lastCopiedElement`,null)},setWasActivatedByToggle:e=>{n(`wasActivatedByToggle`,e)},setPendingCommentMode:e=>{n(`pendingCommentMode`,e)},setTouchMode:e=>{n(`isTouchMode`,e)},incrementSelectionInteractionLockDepth:()=>{n(`selectionInteractionLockDepth`,e=>e+1)},decrementSelectionInteractionLockDepth:()=>{n(`selectionInteractionLockDepth`,e=>Math.max(0,e-1))},setSelectionSource:(e,t)=>{n(F(n=>{n.selectionFilePath=e,n.selectionLineNumber=t}))},incrementViewportVersion:()=>{n(`viewportVersion`,e=>e+1)},addGrabbedBox:e=>{n(`grabbedBoxes`,t=>[...t,e])},removeGrabbedBox:e=>{n(`grabbedBoxes`,t=>t.filter(t=>t.id!==e))},clearGrabbedBoxes:()=>{n(`grabbedBoxes`,[])},addLabelInstance:e=>{n(`labelInstances`,t=>[...t,e])},updateLabelInstance:(e,r,i)=>{let a=t.labelInstances.findIndex(t=>t.id===e);a!==-1&&n(`labelInstances`,a,F(e=>{e.status=r,i!==void 0&&(e.errorMessage=i)}))},removeLabelInstance:e=>{n(`labelInstances`,t=>t.filter(t=>t.id!==e))},clearLabelInstances:()=>{n(`labelInstances`,[])},showContextMenu:(e,t)=>{let{x:r,y:i}=R(L(t));n(F(n=>{n.contextMenuPosition=e,n.contextMenuElement=t,n.contextMenuClickOffset={x:e.x-r,y:e.y-i}}))},hideContextMenu:()=>{n(F(e=>{e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null}))},updateContextMenuPosition:()=>{let e=t.contextMenuElement,r=t.contextMenuClickOffset;if(!e||!r||!_(e))return;let{x:i,y:a}=R(L(e));n(`contextMenuPosition`,{x:i+r.x,y:a+r.y})}};return{store:t,actions:o}},pt=`data-react-grab`,mt=e=>{if(!document.body)return;let t=document.querySelectorAll(`[${pt}]`);for(let n of t)n!==e&&n.parentNode!==e&&(n.shadowRoot||n.remove());document.body.appendChild(e)},ht=e=>{if(document.body){mt(e);return}let t=()=>{document.removeEventListener(`DOMContentLoaded`,t),mt(e)};document.addEventListener(`DOMContentLoaded`,t,{once:!0})},gt=e=>{let t=document.querySelectorAll(`[${pt}]`);for(let e of t){let t=e.shadowRoot?.querySelector(`[${pt}]`);if(t instanceof HTMLDivElement)return t;e.remove()}let n=document.createElement(`div`);n.setAttribute(pt,`true`),oe(n),n.style.zIndex=String(T),n.style.position=`fixed`,n.style.inset=`0`,n.style.pointerEvents=`none`,n.style.contain=`strict`;let r=n.attachShadow({mode:`open`}),i=document.createElement(`style`),a=se();a&&(i.nonce=a),i.textContent=`@import url("https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap");\n${e??``}`,r.appendChild(i);let o=document.createElement(`div`);return o.setAttribute(pt,`true`),r.appendChild(o),ht(n),setTimeout(()=>{mt(n)},S),o},z=()=>{},_t=()=>({activate:z,deactivate:z,toggle:z,comment:z,isActive:()=>!1,isEnabled:()=>!1,setEnabled:z,getToolbarState:()=>null,setToolbarState:z,onToolbarStateChange:()=>z,dispose:z,copyElement:()=>Promise.resolve(!1),getSource:()=>Promise.resolve(null),getStackContext:()=>Promise.resolve(``),getState:()=>({isActive:!1,isDragging:!1,isCopying:!1,isPromptMode:!1,isSelectionBoxVisible:!1,isDragBoxVisible:!1,targetElement:null,dragBounds:null,grabbedBoxes:[],labelInstances:[],selectionFilePath:null,toolbarState:null}),setOptions:z,registerPlugin:z,unregisterPlugin:z,getPlugins:()=>[],getDisplayName:()=>null}),vt=()=>{let e=new AbortController;return{signal:e.signal,abort:()=>e.abort(),addWindowListener:(t,n,r={})=>{window.addEventListener(t,n,{...r,signal:e.signal})},addDocumentListener:(t,n,r={})=>{document.addEventListener(t,n,{...r,signal:e.signal})}}},yt=async(e,t={})=>(await Promise.allSettled(e.map(e=>w(e,t)))).map(e=>e.status===`fulfilled`?e.value:``),bt=e=>{if(e.length===0)return[];let t=Math.min(...e.map(e=>e.length)),n=0;for(let r=1;r<=t;r++){let t=e[0][e[0].length-r];if(!e.every(e=>e[e.length-r]===t))break;n=r}return n===0?[]:e[0].slice(e[0].length-n)},xt=e=>{let t=e.indexOf(`
|
|
11
|
+
in `);return t===-1?{htmlPreview:e,stackLines:[]}:{htmlPreview:e.slice(0,t),stackLines:e.slice(t).split(`
|
|
12
|
+
`).filter(e=>e.trim().length>0)}},St=(e,t)=>`[${t+1}]\n${e}`,Ct=e=>{if(e.length<=1)return e[0]??``;let t=e.map(xt),n=bt(t.map(e=>e.stackLines));if(n.length===0)return e.map(St).join(`
|
|
13
|
+
|
|
14
|
+
`);if(t.every(e=>e.stackLines.length===n.length))return`${t.map((e,t)=>`[${t+1}] ${e.htmlPreview}`).join(`
|
|
15
|
+
`)}\n (all from the same component stack)\n${n.join(`
|
|
16
|
+
`)}`;let r=[];for(let i=0;i<t.length;i++){let a=t[i];if(i===0){r.push(St(e[0],0));continue}let o=a.stackLines.slice(0,a.stackLines.length-n.length),s=o.length>0?`\n${o.join(`
|
|
17
|
+
`)}`:``;r.push(`[${i+1}]\n${a.htmlPreview}${s}\n (remaining stack same as [1])`)}return r.join(`
|
|
18
|
+
|
|
19
|
+
`)},wt=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,B=e=>e instanceof Error?e:Error(String(e)),Tt=async(e,t,n,r)=>{let i=!1,a=``;await t.onBeforeCopy(n);try{let o,s;if(e.getContent)o=await e.getContent(n);else{let i=await yt(n,{maxLines:e.maxContextLines}),a=(await Promise.all(i.map((e,r)=>e.trim()?t.transformSnippet(e,n[r]):Promise.resolve(``)))).map((e,t)=>({snippet:e,element:n[t]})).filter(({snippet:e})=>e.trim());o=Ct(a.map(({snippet:e})=>e)),s=a.map(({snippet:e,element:t})=>({tagName:t.localName,content:e,commentText:r}))}if(o.trim()){let c=await t.transformCopyContent(o,n);a=r?`${r}\n\n${c}`:c,i=Fe(a,{componentName:e.componentName,entries:s})}}catch(e){t.onCopyError(B(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},V=(e,t)=>{let n=Math.max(e.left,t.left),r=Math.max(e.top,t.top),i=Math.min(e.right,t.right),a=Math.min(e.bottom,t.bottom);return Math.max(0,i-n)*Math.max(0,a-r)},Et=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,Dt=e=>e.sort((e,t)=>{if(e===t)return 0;let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING?-1:n&Node.DOCUMENT_POSITION_PRECEDING?1:0}),Ot=e=>{if(e.width<=0||e.height<=0)return[];let t=window.innerWidth,n=window.innerHeight,r=e.x,i=e.y,a=e.x+e.width,o=e.y+e.height,s=r+e.width/2,c=i+e.height/2,l=d(Math.ceil(e.width/32),3,20),u=d(Math.ceil(e.height/32),3,20),f=l*u,p=f>100?Math.sqrt(100/f):1,m=d(Math.floor(l*p),3,20),h=d(Math.floor(u*p),3,20),g=new Set,_=[],v=(e,r)=>{let i=d(Math.round(e),0,t-1),a=d(Math.round(r),0,n-1),o=`${i}:${a}`;g.has(o)||(g.add(o),_.push({x:i,y:a}))};v(r+1,i+1),v(a-1,i+1),v(r+1,o-1),v(a-1,o-1),v(s,i+1),v(s,o-1),v(r+1,c),v(a-1,c),v(s,c);for(let t=0;t<m;t+=1){let n=r+(t+.5)/m*e.width;for(let t=0;t<h;t+=1)v(n,i+(t+.5)/h*e.height)}return _},H=(e,t,n)=>{let r={left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height},i=new Set,a=Ot(e);Te();try{for(let e of a){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)i.add(e)}}finally{De()}let o=[];for(let e of i)!n&&pe(e)||t(e)&&o.push(e);let s=new Map;for(let e of o)s.set(e,e.getBoundingClientRect());let c=[];for(let e of o){let t=s.get(e);if(t.width<=0||t.height<=0)continue;let i={left:t.left,top:t.top,right:t.left+t.width,bottom:t.top+t.height};if(n){let n=V(r,i),a=t.width*t.height;a>0&&n/a>=.75&&c.push(e)}else Et(i,r)&&c.push(e)}return Dt(c)},U=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),kt=(e,t,n=!0)=>U(H(e,t,n)),At=(e,t)=>e.width<=0?0:d((t.x-e.x)/e.width,0,1),jt=e=>{let t=window.innerWidth,n=window.innerHeight,r=Math.max(0,e.x),i=Math.min(t,e.x+e.width),a=Math.max(0,e.y),o=Math.min(n,e.y+e.height);return{x:(r+i)/2,y:(a+o)/2}},Mt=()=>{ot(),je(),be()},Nt=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),Pt=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Ft=e=>({...e,borderRadius:`0px`,transform:`none`}),W=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),It=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:W.has(e),Lt=(e,t)=>{if(!e||!t)return!1;let n=e.toLowerCase();return t===`Space`?n===`space`||n===` `:t.startsWith(`Key`)?t.slice(3).toLowerCase()===n:t.startsWith(`Digit`)?t.slice(5)===n:!1},Rt={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},zt=e=>{let t=e.split(`+`).map(e=>e.trim().toLowerCase()),n={metaKey:!1,ctrlKey:!1,shiftKey:!1,altKey:!1,key:null};for(let e of t){let t=Rt[e];t?n[t]=!0:n.key=e}return n},Bt=e=>{if(typeof e==`function`)return e;let t=zt(e),n=t.key;return e=>{if(n===null){let n=t.metaKey?e.metaKey||e.key===`Meta`:!0,r=t.ctrlKey?e.ctrlKey||e.key===`Control`:!0,i=t.shiftKey?e.shiftKey||e.key===`Shift`:!0,a=t.altKey?e.altKey||e.key===`Alt`:!0,o=n&&r&&i&&a,s=[t.metaKey,t.ctrlKey,t.shiftKey,t.altKey].filter(Boolean).length,c=[e.metaKey||e.key===`Meta`,e.ctrlKey||e.key===`Control`,e.shiftKey||e.key===`Shift`,e.altKey||e.key===`Alt`].filter(Boolean).length;return o&&c>=s}let r=e.key?.toLowerCase()===n||Lt(n,e.code),i=t.metaKey||t.ctrlKey||t.shiftKey||t.altKey?(t.metaKey?e.metaKey:!0)&&(t.ctrlKey?e.ctrlKey:!0)&&(t.shiftKey?e.shiftKey:!0)&&(t.altKey?e.altKey:!0):!e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey;return r&&i}},Vt=e=>!e||typeof e==`function`?{metaKey:h(),ctrlKey:!h(),shiftKey:!1,altKey:!1,key:null}:zt(e),Ht=(e,t)=>{if(t.activationKey)return Bt(t.activationKey)(e);let n=(h()?e.metaKey:e.ctrlKey)&&!e.shiftKey&&!e.altKey;return!!(e.key&&n&&It(e.key,e.code))},Ut=e=>{if(e.length===0)return{x:0,y:0,width:0,height:0};if(e.length===1)return e[0];let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e)t=Math.min(t,a.x),n=Math.min(n,a.y),r=Math.max(r,a.x+a.width),i=Math.max(i,a.y+a.height);return{x:t,y:n,width:r-t,height:i-n}},Wt={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},G=(e,t)=>({enabled:t.enabled??e.enabled,hue:t.hue??e.hue,selectionBox:{enabled:t.selectionBox?.enabled??e.selectionBox.enabled},dragBox:{enabled:t.dragBox?.enabled??e.dragBox.enabled},grabbedBoxes:{enabled:t.grabbedBoxes?.enabled??e.grabbedBoxes.enabled},elementLabel:{enabled:t.elementLabel?.enabled??e.elementLabel.enabled},toolbar:{enabled:t.toolbar?.enabled??e.toolbar.enabled}}),Gt={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},Kt=(e={})=>{let t=new Map,n={},[r,i]=Ye({theme:Wt,options:{...Gt,...e},actions:[]}),a=()=>{let r=Wt,a={...Gt,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=G(r,e.theme)),e.options&&(a={...a,...e.options}),e.actions)for(let t of e.actions)o.push(t);a={...a,...n},i(`theme`,r),i(`options`,a),i(`actions`,o)},o=(e,t)=>{n[e]=t,i(`options`,e,t)},s=[`activationMode`,`keyHoldDuration`,`allowActivationInsideInput`,`maxContextLines`,`activationKey`,`getContent`,`freezeReactUpdates`],c=e=>{for(let t of s)e[t]!==void 0&&o(t,e[t])},l=(e,n)=>{t.has(e.name)&&u(e.name);let r=e.setup?.(n,_)??{};e.theme&&(r.theme=r.theme?G(G(Wt,e.theme),r.theme):e.theme),e.actions&&(r.actions=[...e.actions,...r.actions??[]]),e.hooks&&(r.hooks=r.hooks?{...e.hooks,...r.hooks}:e.hooks),e.options&&(r.options=r.options?{...e.options,...r.options}:e.options),t.set(e.name,{plugin:e,config:r}),a()},u=e=>{let n=t.get(e);n&&(n.config.cleanup&&n.config.cleanup(),t.delete(e),a())},d=()=>Array.from(t.keys()),f=(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&t(...n)}},p=(e,...n)=>{let r=!1;for(let{config:i}of t.values()){let t=i.hooks?.[e];t&&t(...n)===!0&&(r=!0)}return r},m=async(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&await t(...n)}},h=async(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=await t(i,...r))}return i},g=(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=t(i,...r))}return i},_={onActivate:()=>f(`onActivate`),onDeactivate:()=>f(`onDeactivate`),onElementHover:e=>f(`onElementHover`,e),onElementSelect:e=>{let n=!1,r;for(let{config:i}of t.values()){let t=i.hooks?.onElementSelect;if(t){let i=t(e);i===!0?n=!0:i instanceof Promise&&(n=!0,r=i)}}return{wasIntercepted:n,pendingResult:r}},onDragStart:(e,t)=>f(`onDragStart`,e,t),onDragEnd:(e,t)=>f(`onDragEnd`,e,t),onBeforeCopy:async e=>m(`onBeforeCopy`,e),transformCopyContent:async(e,t)=>h(`transformCopyContent`,e,t),onAfterCopy:(e,t)=>f(`onAfterCopy`,e,t),onCopySuccess:(e,t)=>f(`onCopySuccess`,e,t),onCopyError:e=>f(`onCopyError`,e),onStateChange:e=>f(`onStateChange`,e),onPromptModeChange:(e,t)=>f(`onPromptModeChange`,e,t),onSelectionBox:(e,t,n)=>f(`onSelectionBox`,e,t,n),onDragBox:(e,t)=>f(`onDragBox`,e,t),onGrabbedBox:(e,t)=>f(`onGrabbedBox`,e,t),onElementLabel:(e,t,n)=>f(`onElementLabel`,e,t,n),onContextMenu:(e,t)=>f(`onContextMenu`,e,t),onOpenFile:(e,t)=>p(`onOpenFile`,e,t),transformHtmlContent:async(e,t)=>h(`transformHtmlContent`,e,t),transformAgentContext:async(e,t)=>h(`transformAgentContext`,e,t),transformActionContext:e=>g(`transformActionContext`,e),transformOpenFileUrl:(e,t,n)=>g(`transformOpenFileUrl`,e,t,n),transformSnippet:async(e,t)=>h(`transformSnippet`,e,t)};return{register:l,unregister:u,getPluginNames:d,setOptions:c,store:r,hooks:_}},qt=(e,t)=>{let n=[],r=(n,r)=>{let i=jt(t(n)),a=ve(i.x,i.y).filter(e),o=a.indexOf(n);return o===-1?null:a[o+r]??null},i=e=>{let t=r(e,1);return t&&(n.push(e),n.length>50&&(n=n.slice(-50))),t},a=e=>{if(n.length>0){let e=n.pop();if(_(e))return e}return r(e,-1)},o=e=>e instanceof SVGElement&&!(e instanceof SVGSVGElement),s=e=>{let t=e.getBoundingClientRect();return t.width>=16||t.height>=16},c=(e,t)=>Math.abs(e.x-t.x)<=2&&Math.abs(e.y-t.y)<=2&&Math.abs(e.width-t.width)<=2&&Math.abs(e.height-t.height)<=2,l=t=>e(t)&&!o(t)&&s(t),u=(e,t)=>{let n=e.getBoundingClientRect(),r=e=>!c(e.getBoundingClientRect(),n),i=e=>{if(e instanceof SVGSVGElement)return null;let n=Array.from(e.children),a=t?n:n.reverse();for(let e of a)if(t){if(l(e)&&r(e))return e;let t=i(e);if(t)return t}else{let t=i(e);if(t)return t;if(l(e)&&r(e))return e}return null},a=e=>t?e.nextElementSibling:e.previousElementSibling,o=null;if(t&&(o=i(e)),!o){let n=e;for(;n;){let e=a(n);for(;e;){if(l(e)&&r(e)){o=e;break}let t=i(e);if(t){o=t;break}e=a(e)}if(o)break;let s=n.parentElement;if(!t&&s&&l(s)){o=s;break}n=s}}return o};return{findNext:(e,t)=>{switch(e){case`ArrowUp`:return i(t);case`ArrowDown`:return a(t);case`ArrowRight`:return u(t,!0);case`ArrowLeft`:return u(t,!1);default:return null}},clearHistory:()=>{n=[]}}},Jt=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Vt(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},Yt=()=>{let e=new WeakSet,t=Object.getOwnPropertyDescriptor(KeyboardEvent.prototype,`key`),n=!1;if(t?.get&&!t.get.__reactGrabPatched){n=!0;let r=t.get,i=function(){return e.has(this)?``:r.call(this)};i.__reactGrabPatched=!0,Object.defineProperty(KeyboardEvent.prototype,`key`,{get:i,configurable:!0})}return{claimedEvents:e,originalKeyDescriptor:t,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,`key`,t)}}},Xt=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),Zt=(e,t,n)=>{let r=null,i=()=>{if(!t()){a();return}let o=e(),s=Xt(o.x,o.y),c=0,l=0;if(s.top&&(l-=10),s.bottom&&(l+=10),s.left&&(c-=10),s.right&&(c+=10),c!==0||l!==0){let e=window.scrollX,t=window.scrollY;window.scrollBy(c,l);let r=window.scrollX-e,i=window.scrollY-t;(r!==0||i!==0)&&n?.({x:r,y:i})}r=s.top||s.bottom||s.left||s.right?re(i):null},a=()=>{r!==null&&(Ce(r),r=null)};return{start:i,stop:a,isActive:()=>r!==null}},Qt=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},$t=()=>{try{let e=`0.1.33`,t=`data:image/svg+xml;base64,${btoa(`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 294 294"><path fill="#ff40e0" d="M145 47c25-20 50-27 67-17 16 9 23 30 20 60 0 2-1 5-1 7l-2 13h-1l-12-4c-8-3-17-5-25-6l-17-3c-10-1-20-1-29-1-10 0-20 0-29 1-6 8-11 16-16 24-5 9-9 17-13 26 4 9 8 18 13 26s10 16 16 24l11 14c5 7 11 13 18 19l10 8s-1 0 0 0l-11 9c-17 14-35 22-49 22-6 0-13-2-18-5-16-9-23-30-20-59 1-3 1-5 1-8-30-12-48-29-48-50 0-18 14-35 41-47 2-1 5-2 7-3 0-2 0-5-1-7-3-30 4-51 20-60 18-10 42-3 68 17M71 201c-1 2-1 4-1 5-2 24 3 41 13 47h1c11 7 30 1 51-15-10-9-18-18-26-29-13-1-26-4-38-8m9-38c-3 9-5 17-7 26 8 2 17 4 25 6-3-5-6-10-9-16-3-5-6-10-9-16m-19-53c-2 1-3 1-5 2-21 10-34 23-34 35 0 13 14 27 39 37 3-12 7-25 12-37-5-12-9-24-12-37m37-10c-8 1-17 3-25 6 2 8 4 16 7 25 3-5 6-11 9-16zm-3-61c-4-1-8 0-12 2-10 7-15 24-13 47 0 2 0 3 1 5 12-4 25-6 38-8 8-10 16-20 26-29-15-11-29-17-40-17m111 2c-4-2-8-3-12-2-11 0-25 5-40 17 10 9 19 19 26 29 13 2 26 4 39 8v-5c3-23-2-40-13-47m-61 23c-7 6-13 13-19 19h37c-6-6-12-13-18-19"/><mask id="a"><path fill="#fff" d="m235 85-133 27 28 133 133-27Z"/></mask><path fill="#ff40e0" d="m137 130 76 11c8 1 9 11 3 15l-28 16-4 32c-1 8-10 10-14 4l-41-66c-3-6 1-13 8-12" mask="url(#a)"/></svg>`)}`;console.log(`%cReact Grab${` v${e}`}%c\nhttps://react-grab.com`,`background: #330039; color: #ffffff; border: 1px solid #d75fcb; padding: 4px 4px 4px 24px; border-radius: 4px; background-image: url("${t}"); background-size: 16px 16px; background-repeat: no-repeat; background-position: 4px center; display: inline-block; margin-bottom: 4px;`,``),navigator.onLine&&!Qt()&&fetch(`https://www.react-grab.com/api/version?source=browser&v=${e}&t=${Date.now()}`,{referrerPolicy:`origin`,keepalive:!0,priority:`low`,cache:`no-store`}).then(e=>e.text()).then(t=>{t&&t!==e&&console.warn(`[React Grab] v${e} is outdated (latest: v${t}). Run \`npx grab@latest upgrade\` to upgrade.`)}).catch(()=>null)}catch{}},en=e=>typeof e==`object`&&!!e,K=e=>{if(!en(e))return null;let t={};return typeof e.enabled==`boolean`&&(t.enabled=e.enabled),(e.activationMode===`toggle`||e.activationMode===`hold`)&&(t.activationMode=e.activationMode),typeof e.keyHoldDuration==`number`&&Number.isFinite(e.keyHoldDuration)&&(t.keyHoldDuration=e.keyHoldDuration),typeof e.allowActivationInsideInput==`boolean`&&(t.allowActivationInsideInput=e.allowActivationInsideInput),typeof e.maxContextLines==`number`&&Number.isFinite(e.maxContextLines)&&(t.maxContextLines=e.maxContextLines),typeof e.activationKey==`string`&&(t.activationKey=e.activationKey),typeof e.freezeReactUpdates==`boolean`&&(t.freezeReactUpdates=e.freezeReactUpdates),Object.keys(t).length===0?null:t},tn=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?K(JSON.parse(e)):null}catch{return null}},nn=e=>e===`Enter`||e===`NumpadEnter`,rn=(e,t)=>e.x>=t.x&&e.x<=t.x+t.width&&e.y>=t.y&&e.y<=t.y+t.height,an=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),on=an({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),sn={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},cn={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:e=>{e.filePath&&(e.hooks.onOpenFile(e.filePath,e.lineNumber)||we(e.filePath,e.lineNumber,e.hooks.transformOpenFileUrl),e.hideContextMenu(),e.cleanup())}}]},ln=(e,t)=>t?`${e}\n${t}`:e,un=an({name:`copy-html`,contextMenuAction:e=>({id:`copy-html`,label:`Copy HTML`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>{let n=t.elements.map(e=>b(e.outerHTML)).join(`
|
|
20
|
+
|
|
21
|
+
`),r=await t.hooks.transformHtmlContent(n,t.elements);return r?Fe(ln(r,await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}):!1})}})}),dn=an({name:`copy-styles`,contextMenuAction:e=>({id:`copy-styles`,label:`Copy styles`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>Fe(ln(t.elements.map(Ie).join(`
|
|
22
|
+
|
|
23
|
+
`),await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}))}}),cleanup:E}),fn=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,q=`react-grab-comment-items`,pn=`react-grab-history-items`,mn=`react-grab-clear-confirmed`,hn=()=>{try{let e=sessionStorage.getItem(pn);e&&!sessionStorage.getItem(q)&&sessionStorage.setItem(q,e),sessionStorage.removeItem(pn)}catch{}},gn=()=>{try{let e=sessionStorage.getItem(q);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},J=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},Y=e=>{let t=e;for(;t.length>0;){let e=JSON.stringify(t);if(new Blob([e]).size<=2097152)return t;t=t.slice(0,-1)}return t},_n=e=>{vn=Y(e);try{sessionStorage.setItem(q,JSON.stringify(vn))}catch{}return vn};let vn=[],yn=!1;typeof window<`u`&&(hn(),vn=gn(),yn=J(mn));const bn=()=>vn,xn=e=>_n([{...e,id:fn(`comment`)},...vn].slice(0,20)),Sn=e=>{_n(vn.filter(t=>t.id!==e))},Cn=()=>_n([]),wn=()=>yn,Tn=()=>{yn=!0;try{sessionStorage.setItem(mn,`1`)}catch{}},En=e=>{let t=e.left+e.width/2,n=e.top+e.height/2,r=n,i=window.innerHeight-n,a=t,o=window.innerWidth-t,s=Math.min(r,i,a,o);return s===r?`top`:s===a?`left`:s===o?`right`:`bottom`},Dn=[on,sn,un,dn,cn];let On=!1;const kn=new Set,An=t=>{if(typeof window>`u`)return _t();let r={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,...tn(),...t};if(r.enabled===!1||On)return _t();On=!0,$t();let{enabled:u,...d}=r;return o(t=>{let r=!1,o,u=Kt(d),{store:b,actions:S}=ft({theme:Wt,keyHoldDuration:u.store.options.keyHoldDuration??100}),C=e(()=>b.current.state===`holding`),w=e(()=>b.current.state===`active`),be=e(()=>b.current.state===`active`&&b.current.phase===`frozen`),T=e(()=>b.current.state===`active`&&(b.current.phase===`dragging-select`||b.current.phase===`dragging-reposition`)),Te=e(()=>{if(!T())return!1;let e=Math.abs(b.pointer.x+window.scrollX-b.dragStart.x),t=Math.abs(b.pointer.y+window.scrollY-b.dragStart.y);return e>2||t>2}),De=e(()=>b.current.state===`active`&&b.current.phase===`dragging-reposition`),Ie=e(()=>b.current.state===`active`&&b.current.phase===`justDragged`),E=e(()=>b.current.state===`copying`),D=e(()=>E()||b.selectionInteractionLockDepth>0),O=e(()=>b.current.state===`justCopied`),k=e(()=>b.current.state===`active`&&!!b.current.isPromptMode),ze=e(()=>b.pendingCommentMode||k()),Be=e(()=>b.current.state===`active`&&!!b.current.isPromptMode&&!!b.current.isPendingDismiss);g(i(w,(e,t)=>{e&&!t?(Oe(b.pointer.x,b.pointer.y),ke(),document.body.style.touchAction=`none`):!e&&t&&(xe(),he(),document.body.style.touchAction=``)}));let A=ne(),[j,Ve]=c(A?!A.collapsed:!0),[He,Ue]=c(0),[We,Ge]=c(0),[Ke,M]=c(A),[qe,Je]=c(!1),[N,Ye]=c(bn()),[P,Xe]=c(null),[F,Ze]=c(null),[Qe,$e]=c(null),et,tt=null,I=new Map,[nt,rt]=c(0),[it,at]=c(!1),ot=[],st=new WeakMap,ct=()=>{st=new WeakMap},lt=()=>{Rt(!1),ct()},ut=e=>{let t=Ke()??ne(),n={edge:t?.edge??`bottom`,ratio:t?.ratio??.5,collapsed:t?.collapsed??!1,enabled:t?.enabled??!0,defaultAction:t?.defaultAction??`comment`,...e};v(n),M(n);for(let e of kn)e(n)},dt=e=>I.get(e)??[],pt=e=>{let t=e.elementSelectors??[];if(t.length===0)return[];let n=[];for(let e of t)if(e)try{let t=document.querySelector(e);_(t)&&n.push(t)}catch{}return n},mt=e=>{let t=dt(e.id),n=t.filter(e=>_(e));if(t.length>0&&n.length===t.length)return n;let r=pt(e);return r.length>0?(I.set(e.id,r),r):n},ht=e=>mt(e)[0],z=e(()=>{P();let e=new Set;for(let t of N())mt(t).length===0&&e.add(t.id);return e},void 0,{equals:(e,t)=>{if(e.size!==t.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}}),_t=()=>{U.timerId!==null&&(clearTimeout(U.timerId),U.timerId=null)},yt=()=>{U.copyWaiting=!1,U.holdTimerFired=!1,U.startTimestamp=null};g(()=>{if(b.current.state!==`holding`){_t();return}U.startTimestamp=Date.now(),U.timerId=window.setTimeout(()=>{if(U.timerId=null,U.copyWaiting){U.holdTimerFired=!0;return}S.activate()},b.keyHoldDuration),l(_t)}),g(()=>{if(b.current.state!==`active`||b.current.phase!==`justDragged`)return;let e=setTimeout(()=>{S.finishJustDragged()},de);l(()=>clearTimeout(e))}),g(()=>{if(b.current.state!==`justCopied`)return;let e=setTimeout(()=>{S.finishJustCopied()},de);l(()=>clearTimeout(e))}),g(i(C,(e,t=!1)=>{!t||e||!w()||(u.store.options.activationMode!==`hold`&&S.setWasActivatedByToggle(!0),u.hooks.onActivate())}));let bt=(e,t,n)=>{St(e,t,n),S.clearInputText()},xt=()=>{let e=b.frozenElement||X();e&&S.enterPromptMode({x:b.pointer.x,y:b.pointer.y},e)},St=(e,t,n)=>{S.setCopyStart({x:t,y:n},e)},B={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},V=null,[Et,Dt]=c(null),Ot=(e,t)=>{V!==null&&clearTimeout(V),Dt(null),V=window.setTimeout(()=>{Dt({x:e,y:t}),V=null},32)},H=null,U={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},W=null,[Lt,Rt]=c(!1),zt=0,Vt=!1,G=null,Gt=()=>{Vt=!0,G!==null&&window.clearTimeout(G),G=window.setTimeout(()=>{Vt=!1,G=null},de)},Qt=()=>{G!==null&&(window.clearTimeout(G),G=null),Vt=!1},$t=0,en=0,K=null,tn=null,an=null,[on,sn]=c(!1),[cn,ln]=c(null),[un,dn]=c(void 0),[q,pn]=c([]),[mn,hn]=c(0),gn=qt(ye,L),J=Zt(()=>b.pointer,()=>T(),e=>{if(De()){if(S.shiftDragStart(e),W){W={x:W.x+e.x,y:W.y+e.y};return}let{pageX:t,pageY:n}=Zn(b.pointer.x,b.pointer.y);W={x:t,y:n}}}),Y=e(()=>w()&&!E()),_n=new Map,vn=(e,t)=>{let n=fn(`grabbed`),r={id:n,bounds:e,createdAt:Date.now(),element:t};S.addGrabbedBox(r),u.hooks.onGrabbedBox(e,t);let i=window.setTimeout(()=>{_n.delete(n),S.removeGrabbedBox(n)},de);_n.set(n,i)},yn=async e=>{let t=await Promise.all(e.map(async e=>{let t=await ue(e),n=t?.componentName??null,r=t?.filePath,i=t?.lineNumber??void 0,a=t?.columnNumber??void 0;n||=Pe(e);let o=e instanceof HTMLElement?e.innerText?.slice(0,100):void 0;return{tagName:x(e),id:e.id||void 0,className:e.getAttribute(`class`)||void 0,textContent:o,componentName:n??void 0,filePath:r,lineNumber:i,columnNumber:a}}));window.dispatchEvent(new CustomEvent(`react-grab:element-selected`,{detail:{elements:t}}))},An=new Map,jn=e=>{let t=An.get(e);t!==void 0&&(window.clearTimeout(t),An.delete(e))},Mn=()=>{for(let e of An.values())window.clearTimeout(e);An.clear()},Nn=e=>{jn(e);let t=window.setTimeout(()=>{An.delete(e),S.updateLabelInstance(e,`fading`),setTimeout(()=>{An.delete(e),S.removeLabelInstance(e)},150)},de);An.set(e,t)},Pn=(e,t)=>{if(t)jn(e);else{let t=b.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&Nn(e)}},Fn=(e,t,n,r,i)=>{S.clearLabelInstances(),Mn();let a=fn(`label`),o=e.x+e.width/2,s=e.width/2,c=i?.mouseX,l=c===void 0?void 0:c-o,u={id:a,bounds:e,boundsMultiple:i?.boundsMultiple,tagName:t,componentName:n,status:r,createdAt:Date.now(),element:i?.element,elements:i?.elements,mouseX:c,mouseXOffsetFromCenter:l,mouseXOffsetRatio:l!==void 0&&s>0?l/s:void 0,hideArrow:i?.hideArrow};return S.addLabelInstance(u),a},In=()=>{Mn(),S.clearLabelInstances()},Ln=(e,t,n)=>{t?S.updateLabelInstance(e,`copied`):S.updateLabelInstance(e,`error`,n||`Unknown error`),Nn(e)},Rn=async(e,t,n,r)=>{Qt(),b.current.state!==`copying`&&S.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=wt(e,`Action failed`)}t&&Ln(t,i,a),b.current.state===`copying`&&(i&&S.completeCopy(n),r?Q():i?(S.activate(),Gt()):S.unfreeze())},zn=e=>{let{copiedElements:t,content:n,extraPrompt:r,elementName:i,tagName:a,componentName:o}=e;if(u.hooks.onCopySuccess(t,n),!r)return;let s=t.length>0;if(s){let e=N();for(let[n,i]of I.entries()){if(!(i.length===t.length&&i.every((e,n)=>e===t[n])))continue;let a=e.find(e=>e.id===n);if(a&&a.commentText===r){Sn(n),I.delete(n);break}}}let c=t.map((e,t)=>Le(e,t===0)),l=xn({content:n,elementName:i??`element`,tagName:a??`div`,componentName:o??void 0,elementsCount:t.length,previewBounds:t.map(e=>L(e)),elementSelectors:c,commentText:r,timestamp:Date.now()});Ye(l),rt(e=>e+1);let d=l[0];d&&s&&I.set(d.id,[...t]);let f=new Set(l.map(e=>e.id));for(let e of I.keys())f.has(e)||I.delete(e)},Bn=(e,t,n)=>{let r=e[0],i=n??(r?Pe(r):null),a=r?x(r):null,o=i??a??void 0;return Tt({maxContextLines:u.store.options.maxContextLines,getContent:u.store.options.getContent,componentName:o},{onBeforeCopy:u.hooks.onBeforeCopy,transformSnippet:u.hooks.transformSnippet,transformCopyContent:u.hooks.transformCopyContent,onAfterCopy:u.hooks.onAfterCopy,onCopySuccess:(e,n)=>{zn({copiedElements:e,content:n,extraPrompt:t,elementName:o,tagName:a,componentName:i})},onCopyError:u.hooks.onCopyError},e,t)},Vn=async(e,t,n)=>{if(e.length===0)return;let r=[],i=[];for(let t of e){let{wasIntercepted:e,pendingResult:n}=u.hooks.onElementSelect(t);e||r.push(t),n&&i.push(n),u.store.theme.grabbedBoxes.enabled&&vn(L(t),t)}if(await Se(),r.length>0)await Bn(r,t,n);else if(i.length>0&&!(await Promise.all(i)).every(Boolean))throw Error(`Failed to copy`);yn(e)},Hn=e=>{let{element:t,cursorX:n,selectedElements:r,extraPrompt:i,shouldDeactivateAfter:a,onComplete:o,dragRect:s}=e,c=r??[t],l=s??b.frozenDragRect,u=c.length>1,d=l&&u?Nt(l):Ft(L(t)),f=u?d.x+d.width/2:n,p=x(t);Qt(),S.startCopy();let m=p?Fn(d,p,void 0,`copying`,{element:t,mouseX:f,elements:r}):null;le(t).then(async e=>{await Rn(()=>Vn(c,i,e??void 0),m,t,a),o?.()}).catch(e=>{m&&Ln(m,!1,wt(e,`Action failed`)),b.current.state===`copying`&&S.unfreeze()})},X=e(()=>{if(b.viewportVersion,!Y()||Te()||D())return null;let e=b.detectedElement;return _(e)?e:null}),Un=e(()=>b.frozenElement||(be()?null:X()));g(()=>{let e=b.detectedElement;if(!e)return;let t=setInterval(()=>{_(e)||S.setDetectedElement(null)},100);l(()=>clearInterval(t))}),g(i(Un,e=>{if(K!==null&&(clearTimeout(K),K=null),!e){ln(null);return}K=window.setTimeout(()=>{K=null,ln(e)},100)})),l(()=>{K!==null&&(clearTimeout(K),K=null)}),g(()=>{let e=b.frozenElements;l(Ee(e))}),g(i(w,e=>{e&&u.store.options.freezeReactUpdates&&l(Ae())}));let Wn=()=>{if(b.isTouchMode&&T()){let e=b.detectedElement;return!e||pe(e)?void 0:e}let e=Un();if(!(!e||pe(e)))return e},Gn=e(()=>Wn()),Kn=()=>Gn()?b.isTouchMode&&T()?Y():Y()&&!Te():!1,qn=e(()=>{b.viewportVersion;let e=b.frozenElements;if(e.length===0)return[];let t=b.frozenDragRect;return t&&e.length>1?[Nt(t)]:e.filter(e=>e!==null).map(e=>L(e))}),Jn=e(()=>{if(!Lt()||b.pendingCommentMode||on())return null;let e=b.detectedElement;return!_(e)||pe(e)||b.frozenElements.includes(e)?null:e}),Yn=e(()=>{b.viewportVersion;let e=Jn();if(e)return L(e)}),Xn=e(()=>{b.viewportVersion;let e=b.frozenElements;if(e.length>0){let t=qn();if(e.length===1){let e=t[0];if(e)return e}let n=b.frozenDragRect;return n?t[0]??Nt(n):Ft(Ut(t))}let t=Gn();if(t)return L(t)}),Zn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),Qn=(e,t)=>{let{pageX:n,pageY:r}=Zn(e,t);return{x:Math.abs(n-b.dragStart.x),y:Math.abs(r-b.dragStart.y)}},$n=e(()=>{if(!T())return!1;let e=Qn(b.pointer.x,b.pointer.y);return e.x>2||e.y>2}),er=(e,t)=>{let{pageX:n,pageY:r}=Zn(e,t),i=Math.min(b.dragStart.x,n),a=Math.min(b.dragStart.y,r),o=Math.abs(n-b.dragStart.x),s=Math.abs(r-b.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},tr=e=>e.code===`Space`||e.key===` `,nr=()=>{if(!T())return;S.startDragReposition();let{pageX:e,pageY:t}=Zn(b.pointer.x,b.pointer.y);W={x:e,y:t}},rr=()=>{S.stopDragReposition(),W=null},ir=e(()=>{if(b.viewportVersion,!$n())return;let e=er(b.pointer.x,b.pointer.y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),ar=e(()=>{if(b.viewportVersion,!$n())return[];let e=Et();if(!e)return[];let t=er(e.x,e.y),n=kt(t,ye);return(n.length>0?n:kt(t,ye,!1)).map(e=>L(e))}),or=e(()=>{let e=ar();if(e.length>0)return e;let t=Yn();return t?[...qn(),t]:qn()}),sr=e(()=>(b.viewportVersion,k()||b.frozenElements.length<2?[]:b.frozenElements.filter(_).map(e=>{let t=L(e),n=st.get(e),r=n===void 0?void 0:t.x+t.width*n,i=Pe(e)??void 0;return{tagName:x(e)||`element`,componentName:i,bounds:t,mouseX:r}}))),cr=e(()=>{if(E()||k()){b.viewportVersion;let e=b.frozenElement||X();return e?{x:R(L(e)).x+b.copyOffsetFromCenterX,y:b.copyStart.y}:{x:b.copyStart.x,y:b.copyStart.y}}return{x:b.pointer.x,y:b.pointer.y}}),lr=e(()=>{if(!Lt()||b.frozenElements.length!==1)return;b.viewportVersion;let e=b.frozenElements[0];if(!_(e))return;let t=st.get(e);if(t===void 0)return;let n=L(e);return n.x+n.width*t});g(i(()=>[X(),b.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&S.setLastGrabbed(null),e&&u.hooks.onElementHover(e)})),g(i(()=>X(),e=>{let t=++$t,n=()=>{$t===t&&S.setSelectionSource(null,null)};if(!e){n();return}ue(e).then(e=>{if($t===t){if(!e){n();return}S.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{$t===t&&S.setSelectionSource(null,null)})}));let ur=e(()=>b.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),dr=e(()=>b.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));g(i(e(()=>{let e=w(),t=T(),n=E(),r=k(),i=X(),a=ir(),o=u.store.theme.enabled,s=u.store.theme.selectionBox.enabled,c=u.store.theme.dragBox.enabled,l=$n(),d=Un(),f=O();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(o&&s&&e&&!n&&!f&&!t&&d!=null),isDragBoxVisible:!!(o&&c&&e&&!n&&l),targetElement:i,dragBounds:a?{x:a.x,y:a.y,width:a.width,height:a.height}:null,grabbedBoxes:[...ur()],labelInstances:[...dr()],selectionFilePath:b.selectionFilePath,toolbarState:Ke()}}),e=>{u.hooks.onStateChange(e)})),g(i(()=>[k(),b.pointer.x,b.pointer.y,X()],([e,t,n,r])=>{u.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),g(i(()=>[ci(),Xn(),X()],([e,t,n])=>{u.hooks.onSelectionBox(!!e,t??null,n)})),g(i(()=>[hi(),ir()],([e,t])=>{u.hooks.onDragBox(!!e,t??null)})),g(i(()=>[_i(),gi(),cr(),X(),b.selectionFilePath,b.selectionLineNumber],([e,t,n,r,i,a])=>{u.hooks.onElementLabel(!!e,t,{x:n.x,y:n.y,content:``,element:r??void 0,tagName:r&&x(r)||void 0,filePath:i??void 0,lineNumber:a??void 0})}));let Z=null,fr=e=>{if(e){if(!Z){Z=document.createElement(`style`),Z.setAttribute(`data-react-grab-cursor`,``);let e=se();e&&(Z.nonce=e),oe(Z),document.head.appendChild(Z)}Z.textContent=`* { cursor: ${e} !important; }`}else Z&&=(Z.remove(),null)};g(i(()=>[w(),E(),k()],([e,t,n])=>{fr(t?`progress`:e&&!n?`crosshair`:null)}));let pr=()=>{let e=C();S.activate(),e||u.hooks.onActivate()},Q=()=>{let e=T(),t=b.previouslyFocusedElement;rr(),S.deactivate(),lt(),Lr(),tn=null,sn(!1),e&&(document.body.style.userSelect=``),H&&window.clearTimeout(H),J.stop(),t instanceof HTMLElement&&_(t)&&t.focus(),u.hooks.onDeactivate()},mr=()=>{C()&&S.releaseHold(),w()&&Q(),Qt()},hr=()=>{S.setWasActivatedByToggle(!0),pr()},gr=()=>{S.clearLastCopied();let e=[...b.frozenElements],t=b.frozenElement||X(),n=k()?b.inputText.trim():``;if(!t){Q();return}let r=e.length>0?e:[t],i=r.map(e=>L(e))[0],{x:a,y:o}=R(i),s=a+b.copyOffsetFromCenterX;S.setPointer({x:a,y:o}),S.exitPromptMode(),S.clearInputText(),Hn({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},_r=()=>{if(S.clearLastCopied(),k()){if(Be()){S.clearInputText(),Q();return}S.setPendingDismiss(!0),Ge(e=>e+1)}},vr=()=>{S.clearInputText(),Q()},yr=()=>{S.setPendingDismiss(!1)},br=()=>{let e=b.frozenElement||X();e&&bt(e,b.pointer.x,b.pointer.y),xt()},xr=()=>{if(w())Q();else if(j()){let e=Ke()?.defaultAction??`comment`;e===`comment`?S.setPendingCommentMode(!0):(an=e,sn(!0)),hr()}},Sr=(e,t,n)=>{S.setPendingCommentMode(!1),S.clearInputText(),S.enterPromptMode({x:t,y:n},e)},Cr=(e,t)=>{lt(),S.showContextMenu(t,e),Lr(),Ki(),u.hooks.onContextMenu(e,t)},wr=(e,t)=>{let n=an;if(an=null,!n)return;let r=u.store.actions.find(e=>e.id===n);if(!r){Ji(ce),Cr(e,t);return}let i=L(e),a=Ei({element:e,filePath:b.selectionFilePath??void 0,lineNumber:b.selectionLineNumber??void 0,tagName:x(e)||void 0,componentName:un(),position:t,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:i,fallbackSelectionBounds:[i],position:t}});r.onAction(a)},Tr=()=>{if(j()){if(w()&&ze()){Q();return}S.setPendingCommentMode(!0),w()||hr()}},Er=(e,t,n)=>{let r=n&&Lt()&&!T()&&!b.pendingCommentMode&&!on();if(!j()||k()||be()&&!r||D()||b.contextMenuPosition!==null)return;if(S.setPointer({x:e,y:t}),B.latestPointerX=e,B.latestPointerY=t,r){let n=_e(e,t);n!==b.detectedElement&&S.setDetectedElement(n);return}let i=performance.now(),a=B.pendingDetectionScheduledAt>0&&i-B.pendingDetectionScheduledAt<200;if(i-B.lastDetectionTimestamp>=32&&!a&&(B.lastDetectionTimestamp=i,B.pendingDetectionScheduledAt=i,setTimeout(()=>{let e=_e(B.latestPointerX,B.latestPointerY);e!==b.detectedElement&&S.setDetectedElement(e),B.pendingDetectionScheduledAt=0})),T()){if(De()){let{pageX:n,pageY:r}=Zn(e,t);W&&S.shiftDragStart({x:n-W.x,y:r-W.y}),W={x:n,y:r}}Ot(e,t);let n=Xt(e,t),r=n.top||n.bottom||n.left||n.right;r&&!J.isActive()?J.start():!r&&J.isActive()&&J.stop()}},Dr=(e,t,n)=>!Y()||D()?!1:(!n&&Lt()&<(),S.startDrag({x:e,y:t},n),S.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,Ot(e,t),u.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),Or=(e,t)=>{let n=b.frozenElements.includes(e),r=b.frozenElements.length===0;if(!n){let n=At(L(e),t);st.set(e,n),r&&dn(Pe(e)??void 0)}S.toggleFrozenElement(e),je();let i=b.frozenElements.includes(e);if(i||st.delete(e),b.frozenElements.length===0){lt(),S.unfreeze();return}me(b.frozenElements),Rt(!0),S.setPointer(t),S.setLastGrabbed(i?e:b.frozenElements[b.frozenElements.length-1]),S.freeze(),Lr()},kr=()=>{lt();let e=b.frozenElements.filter(_);if(e.length===0){S.unfreeze();return}Hn({element:e[0],cursorX:b.pointer.x,selectedElements:e,shouldDeactivateAfter:b.wasActivatedByToggle})},Ar=(e,t,n)=>{let r=kt(e,ye),i=r.length>0?r:kt(e,ye,!1);if(i.length===0)return;let a=n&&!b.pendingCommentMode&&!on();if(a&&S.addFrozenElements(i),me(a?b.frozenElements:i),u.hooks.onDragEnd(i,e),a){let e=i[i.length-1];Rt(!0),je(),S.setPointer(R(L(e))),S.setLastGrabbed(e),S.freeze(),Lr();return}let o=i[0],s=R(L(o));S.setPointer(s),S.setFrozenElements(i);let c=Pt(e);if(S.setFrozenDragRect(c),S.freeze(),S.setLastGrabbed(o),b.pendingCommentMode){Sr(o,s.x,s.y);return}if(on()){sn(!1),an?wr(o,s):Cr(o,s);return}let l=b.wasActivatedByToggle&&!t;Hn({element:o,cursorX:s.x,selectedElements:i,shouldDeactivateAfter:l,dragRect:c})},jr=e=>{for(let t of b.frozenElements)if(_(t)&&rn(e,L(t)))return t;return null},Mr=(e,t,n,r)=>{let i=_(b.frozenElement)?b.frozenElement:null,a=_(tn)?tn:null,o=ve(e,t).find(ye)??null,s=o??(_(b.detectedElement)?b.detectedElement:null),c=s??i??a;if(!c)return;if(r&&!b.pendingCommentMode&&!on()){o!==null&&Or(o,{x:e,y:t});return}let l,d,f=s===null&&i===c,p=s===null&&i===null&&a===c;if(f)l=b.pointer.x,d=b.pointer.y;else if(p){let e=R(L(c));l=e.x,d=e.y}else l=e,d=t;if(tn=null,b.pendingCommentMode){Sr(c,l,d);return}if(on()){sn(!1);let{wasIntercepted:e}=u.hooks.onElementSelect(c);if(e)return;me([c]),S.setFrozenElement(c);let t={x:l,y:d};S.setPointer(t),S.freeze(),an?wr(c,t):Cr(c,t);return}let m=b.wasActivatedByToggle&&!n;S.setLastGrabbed(c),Hn({element:c,cursorX:l,shouldDeactivateAfter:m})},Nr=()=>{T()&&(rr(),S.cancelDrag(),J.stop(),document.body.style.userSelect=``)},Pr=(e,t,n,r)=>{if(!T())return;V!==null&&(clearTimeout(V),V=null),Dt(null);let i=Qn(e,t),a=i.x>2||i.y>2,o=a?er(e,t):null;a?S.endDrag():S.cancelDrag(),rr(),J.stop(),document.body.style.userSelect=``,o?Ar(o,n,r):Mr(e,t,n,r)},$=vt(),Fr=Yt(),Ir=e=>{let t;try{t=Fr.originalKeyDescriptor?.get?Fr.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||nn(e.code),r=w()||C();return n&&r&&!k()&&!b.wasActivatedByToggle&&Qe()===null?(Fr.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};$.addDocumentListener(`keydown`,Ir,{capture:!0}),$.addDocumentListener(`keyup`,Ir,{capture:!0}),$.addDocumentListener(`keypress`,Ir,{capture:!0});let Lr=()=>{pn([]),hn(0),gn.clearHistory()},Rr=e=>{S.setFrozenElement(e),S.freeze(),tn=e;let t=R(L(e));S.setPointer(t),b.contextMenuPosition!==null&&S.showContextMenu(t,e)},zr=e=>{let t=jt(L(e)),n=ve(t.x,t.y).filter(ye).reverse();pn(n),hn(Math.max(0,n.indexOf(e)))},Br=e=>{let t=q()[e];t&&(hn(e),gn.clearHistory(),Rr(t))},Vr=e=>{if(!w()||k()||Lt()||!ie.has(e.key))return!1;let t=Un(),n=!t;if(t||=_e(window.innerWidth/2,window.innerHeight/2),!t)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Lr();let r=gn.findNext(e.key,t);return!r&&!n?!1:(e.preventDefault(),e.stopPropagation(),Rr(r??t),!0)}q().length===0&&zr(t);let r=gn.findNext(e.key,t)??t;e.preventDefault(),e.stopPropagation(),Rr(r);let i=q().indexOf(r);return i===-1?zr(r):hn(i),!0},Hr=e=>{if(!nn(e.code)||f(e)||D())return!1;let t=b.lastCopiedElement;if(!C()&&!k()&&!w()&&t&&_(t)&&!b.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let n=R(L(t));return S.setPointer(n),bt(t,n.x,n.y),S.setFrozenElement(t),S.clearLastCopied(),xt(),w()||pr(),!0}if(C()&&!k()){e.preventDefault(),e.stopImmediatePropagation();let t=b.frozenElement||X();return t&&bt(t,b.pointer.x,b.pointer.y),S.setPointer({x:b.pointer.x,y:b.pointer.y}),t&&S.setFrozenElement(t),xt(),H!==null&&(window.clearTimeout(H),H=null),w()||pr(),!0}return!1},Ur=e=>{if(e.key?.toLowerCase()!==`o`||k()||!w()||!(e.metaKey||e.ctrlKey))return!1;let t=b.selectionFilePath,n=b.selectionLineNumber;return t?(e.preventDefault(),e.stopPropagation(),u.hooks.onOpenFile(t,n??void 0)||we(t,n??void 0,u.hooks.transformOpenFileUrl),!0):!1},Wr=e(()=>q().map(e=>({tagName:x(e)||`element`,componentName:Pe(e)??void 0}))),Gr=e(()=>({items:Wr(),activeIndex:mn(),isVisible:q().length>0})),Kr=e=>{if(!(!u.store.options.allowActivationInsideInput&&f(e))&&!(!Ht(e,u.store.options)&&((e.metaKey||e.ctrlKey)&&!ae.includes(e.key)&&!nn(e.code)&&(w()&&!b.wasActivatedByToggle?Q():C()&&(_t(),yt(),S.releaseHold())),!nn(e.code)||!C()))){if((w()||C())&&!k()&&(e.preventDefault(),nn(e.code)&&e.stopImmediatePropagation()),w()){if(b.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||e.repeat)return;H!==null&&window.clearTimeout(H),H=window.setTimeout(()=>{Q()},200);return}if(C()&&e.repeat){if(U.copyWaiting){let e=U.holdTimerFired;yt(),e&&S.activate()}return}if(!(E()||O())&&!C()){let t=u.store.options.keyHoldDuration??100;f(e)?ee(e)?t+=600:t+=400:te()&&(t+=600),yt(),S.startHold(t)}}};$.addWindowListener(`keydown`,e=>{if(Ir(e),!j()){Ht(e,u.store.options)&&!e.repeat&&Ue(e=>e+1);return}let t=nn(e.code)&&C()&&!k(),n=y(e,`data-react-grab-input`);if(k()&&Ht(e,u.store.options)&&!e.repeat&&!n){e.preventDefault(),e.stopPropagation(),_r();return}if(e.key===`Escape`&&Qe()!==null)return;if(e.key===`Escape`&&P()!==null){Ii();return}if(e.key===`Escape`&&F()!==null){Li();return}let r=y(e,`data-react-grab-ignore-events`)&&!t;if(k()||r)return e.key===`Escape`&&(k()?_r():b.wasActivatedByToggle&&Q()),r&&ie.has(e.key)&&Vr(e),void 0;if(T()&&tr(e)){e.repeat||nr(),e.preventDefault(),e.stopPropagation();return}if(e.key===`Escape`&&(C()||b.wasActivatedByToggle)){Q();return}w()&&!ae.includes(e.key)&&e.preventDefault();let i=Date.now()-zt<200;Vr(e)||Hr(e)||Ur(e)||i||Kr(e)},{capture:!0}),$.addWindowListener(`keyup`,e=>{if(Ir(e))return;if(tr(e)&&De()&&(rr(),e.preventDefault(),e.stopPropagation()),e.key===`Shift`&&Lt()){T()&&Nr(),kr();return}if(y(e,`data-react-grab-ignore-events`))return;let t=Jt(u.store.options),n=t.metaKey||t.ctrlKey?h()?!e.metaKey:!e.ctrlKey:t.shiftKey&&!e.shiftKey||t.altKey&&!e.altKey,r=u.store.options.activationKey?typeof u.store.options.activationKey==`function`?u.store.options.activationKey(e):Bt(u.store.options.activationKey)(e):It(e.key,e.code);if(O()||Vt){(r||n)&&(Qt(),Q());return}if(!C()&&!w()||k())return;let i=!!u.store.options.activationKey,a=u.store.options.activationMode===`hold`,o=T();if(w()){let e=b.contextMenuPosition!==null;if(n){if(b.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||e)return;Q()}else if(a&&r){if(H!==null&&(window.clearTimeout(H),H=null),e||o)return;Q()}else !i&&r&&H!==null&&(window.clearTimeout(H),H=null);return}if(r||n){if(b.wasActivatedByToggle&&u.store.options.activationMode!==`hold`)return;if(C()||U.holdTimerFired&&n){_t();let t=(U.startTimestamp?Date.now()-U.startTimestamp:0)>=200,n=U.holdTimerFired&&t&&(u.store.options.allowActivationInsideInput||!f(e));yt(),n?S.activate():S.releaseHold()}else Q()}},{capture:!0}),$.addDocumentListener(`copy`,()=>{C()&&(U.copyWaiting=!0)}),$.addWindowListener(`keypress`,Ir,{capture:!0}),$.addWindowListener(`pointermove`,e=>{if(!e.isPrimary)return;let t=e.pointerType===`touch`;S.setTouchMode(t),!y(e,`data-react-grab-ignore-events`)&&b.contextMenuPosition===null&&(D()||t&&!C()&&!w()||((t?C():w())&&!k()&&be()&&!e.shiftKey&&!Lt()&&(S.unfreeze(),Lr()),Er(e.clientX,e.clientY,e.shiftKey)))},{passive:!0}),$.addWindowListener(`pointerdown`,e=>{if(e.button===0&&e.isPrimary&&(S.setTouchMode(e.pointerType===`touch`),!y(e,`data-react-grab-ignore-events`)&&b.contextMenuPosition===null&&F()===null)){if(k()){let t=Xn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?gr():_r();return}if(D()){e.preventDefault(),e.stopImmediatePropagation();return}Dr(e.clientX,e.clientY,e.shiftKey)&&(e.pointerId!==void 0&&document.documentElement.setPointerCapture(e.pointerId),e.preventDefault(),e.stopImmediatePropagation())}},{capture:!0}),$.addWindowListener(`pointerup`,e=>{if(e.button!==0||!e.isPrimary||y(e,`data-react-grab-ignore-events`)||b.contextMenuPosition!==null)return;let t=Y()||D()||T(),n=e.metaKey||e.ctrlKey;Pr(e.clientX,e.clientY,n,e.shiftKey),t&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),$.addWindowListener(`contextmenu`,e=>{if(!Y()||E()||k())return;let t=y(e,`data-react-grab-ignore-events`),n={x:e.clientX,y:e.clientY},r=t&&b.frozenElements.length>1?jr(n):null;if(t&&q().length>0)Lr();else if(t&&!r)return;if(b.contextMenuPosition!==null){e.preventDefault();return}e.preventDefault(),e.stopPropagation();let i=r??_e(e.clientX,e.clientY);if(!i)return;let a=b.frozenElements;a.length>1&&a.includes(i)?me(a):(me([i]),S.setFrozenElement(i)),S.setPointer(n),S.freeze(),Cr(i,n)},{capture:!0}),$.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Nr()}),$.addWindowListener(`click`,e=>{y(e,`data-react-grab-ignore-events`)||b.contextMenuPosition===null&&(Y()||E()||Ie())&&(e.preventDefault(),e.stopImmediatePropagation(),b.wasActivatedByToggle&&!E()&&!k()&&!e.shiftKey&&(C()?S.setWasActivatedByToggle(!1):Q()))},{capture:!0}),$.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){S.clearGrabbedBoxes();let e=b.activationTimestamp;w()&&!k()&&e!==null&&Date.now()-e>500&&Q()}}),$.addWindowListener(`blur`,()=>{Nr(),C()&&(_t(),S.releaseHold(),yt()),lt()}),$.addWindowListener(`focus`,()=>{zt=Date.now()}),$.addWindowListener(`focusin`,e=>{y(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let qr=()=>{if(!(b.isTouchMode&&!C()&&!w())&&j()&&!k()&&!D()&&!be()&&!T()&&b.contextMenuPosition===null&&b.frozenElements.length===0){let e=_e(b.pointer.x,b.pointer.y);S.setDetectedElement(e)}},Jr=null,Yr=null,Xr=()=>{Mt(),qr(),S.incrementViewportVersion(),S.updateContextMenuPosition()};$.addWindowListener(`scroll`,Xr,{capture:!0});let Zr=window.innerWidth,Qr=window.innerHeight;$.addWindowListener(`resize`,()=>{let e=window.innerWidth,t=window.innerHeight;if(Zr>0&&Qr>0){let n=e/Zr,r=t/Qr,i=Math.abs(n-r)<ge,a=Math.abs(n-1)>ge;i&&a&&S.setPointer({x:b.pointer.x*n,y:b.pointer.y*r})}Zr=e,Qr=t,Xr()});let $r=window.visualViewport;if($r){let{signal:e}=$;$r.addEventListener(`resize`,Xr,{signal:e}),$r.addEventListener(`scroll`,Xr,{signal:e})}let ei=()=>{Yr===null&&(Yr=re(()=>{Yr=null,S.incrementViewportVersion()}))};g(()=>{if(u.store.theme.enabled&&(w()||E()||b.labelInstances.length>0||b.grabbedBoxes.length>0)){if(Jr!==null)return;Jr=window.setInterval(()=>{ei()},100);return}Jr!==null&&(window.clearInterval(Jr),Jr=null),Yr!==null&&(Ce(Yr),Yr=null)}),l(()=>{Jr!==null&&window.clearInterval(Jr),Yr!==null&&Ce(Yr)}),$.addDocumentListener(`copy`,e=>{k()||y(e,`data-react-grab-ignore-events`)||(Y()||E())&&e.preventDefault()},{capture:!0}),l(()=>{$.abort(),V!==null&&window.clearTimeout(V),H&&window.clearTimeout(H),Qt(),tt!==null&&Ce(tt),_n.forEach(e=>window.clearTimeout(e)),_n.clear(),Mn(),J.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,fr(null),Fr.restore()});let ti=gt(Re),ni=e(()=>u.store.theme.enabled),ri=e(()=>u.store.theme.selectionBox.enabled),ii=e(()=>u.store.theme.elementLabel.enabled),ai=e(()=>u.store.theme.dragBox.enabled),oi=e(()=>O()||qe()&&!be()),si=e(()=>ar().length>0),ci=e(()=>!ni()||!ri()||oi()?!1:si()?!0:Kn()),li=e(()=>{let e=Gn();if(e)return x(e)||void 0});g(i(()=>cn(),e=>{let t=++en;if(!e){dn(void 0);return}let n=Pe(e)??void 0;dn(n),le(e).then(e=>{en===t&&dn(e??n)}).catch(()=>{en===t&&dn(n)})}));let ui=e(()=>b.contextMenuPosition!==null||!ii()||oi()?!1:Kn()),di=new Map,fi=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?L(n):e.bounds,i=di.get(e.id),a=i&&i.bounds.x===r.x&&i.bounds.y===r.y&&i.bounds.width===r.width&&i.bounds.height===r.height;if(i&&i.status===e.status&&i.errorMessage===e.errorMessage&&a)return i;let o=r.x+r.width/2,s=r.width/2,c;c=e.mouseXOffsetRatio!==void 0&&s>0?o+e.mouseXOffsetRatio*s:e.mouseXOffsetFromCenter===void 0?e.mouseX??o:o+e.mouseXOffsetFromCenter;let l={...e,bounds:r,mouseX:c};return di.set(e.id,l),l},pi=e(()=>{if(!ni()||!u.store.theme.grabbedBoxes.enabled)return[];b.viewportVersion;let e=new Set(b.labelInstances.map(e=>e.id));for(let t of di.keys())e.has(t)||di.delete(t);return b.labelInstances.map(fi)}),mi=e(()=>!ni()||!u.store.theme.grabbedBoxes.enabled?[]:(b.viewportVersion,b.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:L(e.element)}))),hi=e(()=>ni()&&ai()&&Y()&&$n()),gi=e(()=>E()?`processing`:`hover`),_i=e(()=>{if(!ni())return!1;let e=ii(),t=k(),n=E(),r=Y(),i=T(),a=!!Un(),o=qe(),s=be();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),vi=e(()=>{b.viewportVersion;let e=b.contextMenuElement;return e?L(e):null}),yi=e(()=>(b.viewportVersion,b.contextMenuPosition)),bi=e(()=>{let e=b.contextMenuElement;if(!e)return;let t=b.frozenElements.length;return t>1?`${t} elements`:x(e)||void 0}),[xi]=a(()=>({element:b.contextMenuElement,frozenCount:b.frozenElements.length}),async({element:e,frozenCount:t})=>{if(e&&!(t>1))return await le(e)??void 0}),[Si]=a(()=>b.contextMenuElement,async e=>e?ue(e):null),Ci=async e=>{S.incrementSelectionInteractionLockDepth();try{return await e()}finally{S.decrementSelectionInteractionLockDepth()}},wi=(e,t,n,r,i)=>async a=>{await Ci(async()=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??b.contextMenuPosition??b.pointer,l=qn(),u=vi()??o,d=t.length>1,f=d?Ft(Ut(l)):u,p=b.wasActivatedByToggle,m;if(m=d?l:u?[u]:s,S.hideContextMenu(),f){let i=d?f.x+f.width/2:c.x,o=Fn(f,n||`element`,r,`copying`,{element:e,mouseX:i,elements:d?t:void 0,boundsMultiple:m}),s=!1,l;try{s=await a(),s||(l=`Failed to copy`)}catch(e){l=wt(e,`Action failed`)}Ln(o,s,l)}else try{await a()}catch{}p?Q():S.unfreeze()})},Ti=()=>{setTimeout(()=>{S.hideContextMenu()},0)},Ei=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:o,performWithFeedbackOptions:s,shouldDeferHideContextMenu:c,onBeforeCopy:l,onBeforePrompt:d,customEnterPromptMode:f}=e,p=b.frozenElements.length>0?b.frozenElements:[t],m=c?Ti:S.hideContextMenu,h={element:t,elements:p,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:f??(()=>{In(),d?.(),bt(t,o.x,o.y),S.setPointer({x:o.x,y:o.y}),S.setFrozenElement(t),xt(),w()||pr(),m()}),copy:()=>{l?.(),Hn({element:t,cursorX:o.x,selectedElements:p.length>1?p:void 0,shouldDeactivateAfter:b.wasActivatedByToggle}),m()},hooks:{transformHtmlContent:u.hooks.transformHtmlContent,onOpenFile:u.hooks.onOpenFile,transformOpenFileUrl:u.hooks.transformOpenFileUrl},performWithFeedback:wi(t,p,i,a,s),hideContextMenu:m,cleanup:()=>{b.wasActivatedByToggle?Q():S.unfreeze()}},g=u.hooks.transformActionContext(h);return{...h,...g}},Di=e(()=>{let e=b.contextMenuElement;if(!e)return;let t=Si(),n=b.contextMenuPosition??b.pointer;return Ei({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:bi(),componentName:xi(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{tn=null},customEnterPromptMode:()=>{In(),S.clearInputText(),S.enterPromptMode(n,e),Ti()}})}),Oi=()=>{setTimeout(()=>{S.hideContextMenu(),Q()},0)},ki=()=>{for(let{boxId:e,labelId:t}of ot)S.removeGrabbedBox(e),t&&S.removeLabelInstance(t);ot=[]},Ai=(e,t,n,r)=>{if(t.length!==0)for(let[i,a]of t.entries()){let t=n[i],o=`${r}-${e.id}-${i}`;S.addGrabbedBox({id:o,bounds:a,createdAt:0,element:t});let s=null;i===0&&(s=`${r}-label-${e.id}`,S.addLabelInstance({id:s,bounds:a,tagName:e.tagName,componentName:e.componentName,elementsCount:e.elementsCount,status:`idle`,isPromptMode:!!e.commentText,inputValue:e.commentText??void 0,createdAt:0,element:t,mouseX:a.x+a.width/2})),ot.push({boxId:o,labelId:s})}},ji=(e,t)=>{let n=mt(e);Ai(e,n.map(e=>L(e)),n,t)},Mi=()=>{tt!==null&&(Ce(tt),tt=null)},Ni=e=>{Mi();let t=()=>{e(),tt=re(t)};t()},Pi=()=>{if(!et)return null;let e=et.getBoundingClientRect(),t=En(e);return t===`left`||t===`right`?{x:t===`left`?e.right:e.left,y:e.top+e.height/2,edge:t,toolbarWidth:e.width}:{x:e.left+e.width/2,y:t===`top`?e.bottom:e.top,edge:t,toolbarWidth:e.width}},Fi=e=>{Ni(()=>{let t=Pi();t&&e(t)})},Ii=()=>{Vi(),Hi(),Mi(),ki(),Xe(null),at(!1)},Li=()=>{Mi(),Ze(null)},Ri=()=>{S.hideContextMenu(),Li(),Gi(),Ye(bn()),Fi(Xe)},zi=null,Bi=null,Vi=()=>{zi!==null&&(clearTimeout(zi),zi=null)},Hi=()=>{Bi!==null&&(clearTimeout(Bi),Bi=null)},Ui=()=>{Bi=setTimeout(()=>{Bi=null,Ii()},200)},Wi=()=>{Ii(),Li(),Fi($e)},Gi=()=>{Mi(),$e(null)},Ki=()=>{Ii(),Li(),Gi()},qi=()=>{F()===null?(S.hideContextMenu(),Ii(),Gi(),Fi(Ze)):Li()},Ji=e=>{ut({defaultAction:e})},Yi=()=>{Vi(),Hi(),P()===null?(ki(),Ri()):it()?(ki(),at(!1)):Ii()},Xi=e=>{Fe(e.content,{tagName:e.tagName,componentName:e.componentName??e.elementName,commentText:e.commentText});let t=ht(e);t&&(In(),re(()=>{if(!_(t))return;let n=L(t),r=Fn(n,e.tagName,e.componentName,`copied`,{element:t,mouseX:n.x+n.width/2});r&&Nn(r)}))},Zi=e=>{ki(),k()&&(S.exitPromptMode(),S.clearInputText());let t=ht(e);if(e.commentText&&t){let n=R(L(t));S.enterPromptMode(n,t),S.setInputText(e.commentText)}else Xi(e)},Qi=()=>{ki();let e=N();if(e.length===0)return;let t=Ct(e.map(e=>e.content)),r=e[0];Fe(t,{componentName:r.componentName??r.tagName,entries:e.map(e=>({tagName:e.tagName,componentName:e.componentName??e.elementName,content:e.content,commentText:e.commentText}))}),wn()?ia():Wi(),In(),re(()=>{n(()=>{for(let t of e){let e=mt(t);for(let n of e){let e=L(n),r=fn(`label`);S.addLabelInstance({id:r,bounds:e,tagName:t.tagName,componentName:t.componentName,status:`copied`,createdAt:Date.now(),element:n,mouseX:e.x+e.width/2}),Nn(r)}}})})},$i=e=>{if(ki(),!e)return;let t=N().find(t=>t.id===e);t&&ji(t,`comment-hover`)},ea=e=>{Vi(),ki(),e?(Hi(),P()===null&&Qe()===null&&(ra(),zi=setTimeout(()=>{zi=null,at(!0),Ri()},200))):it()&&Ui()},ta=e=>{e?Hi():it()&&Ui()},na=e=>{ki(),e?(Hi(),ra()):it()&&Ui()},ra=()=>{for(let e of N())ji(e,`comment-all-hover`)},ia=()=>{I.clear(),Ye(Cn()),Ii()},aa=e=>{let t=b.labelInstances.find(t=>t.id===e);if(!t?.element||!_(t.element))return;let n=t.element,r=R(L(n)),i={x:t.mouseX??r.x,y:r.y},a=t.elements&&t.elements.length>0?t.elements.filter(e=>_(e)):[n];setTimeout(()=>{w()||(S.setWasActivatedByToggle(!0),pr()),S.setPointer(i),S.setFrozenElements(a),a.length>1&&t.bounds&&S.setFrozenDragRect(Pt(t.bounds)),S.freeze(),S.showContextMenu(i,n)},0)};g(()=>{let e=u.store.theme.hue;e===0?ti.style.filter=``:ti.style.filter=`hue-rotate(${e}deg)`}),u.store.theme.enabled&&import(`./renderer-s5lBiYLe.js`).then(({ReactGrabRenderer:e})=>{r||(o=p(()=>s(e,{get selectionVisible(){return ci()},get selectionBounds(){return Xn()},get selectionBoundsMultiple(){return or()},get selectionShouldSnap(){return b.frozenElements.length>0||ar().length>0},get selectionElementsCount(){return b.frozenElements.length},get frozenLabelEntries(){return sr()},get selectionFilePath(){return b.selectionFilePath??void 0},get selectionLineNumber(){return b.selectionLineNumber??void 0},get selectionTagName(){return li()},get selectionComponentName(){return un()},get selectionLabelVisible(){return ui()},selectionLabelStatus:`idle`,get selectionArrowNavigationState(){return Gr()},onArrowNavigationSelect:Br,get labelInstances(){return pi()},get dragVisible(){return hi()},get dragBounds(){return ir()},get grabbedBoxes(){return mi()},get mouseX(){return m(()=>b.frozenElements.length>1)()?void 0:lr()??cr().x},get isFrozen(){return be()||w()||qe()},get inputValue(){return b.inputText},get isPromptMode(){return k()},onShowContextMenuInstance:aa,onLabelInstanceHoverChange:Pn,get onInputChange(){return S.setInputText},onInputSubmit:()=>void gr(),onToggleExpand:br,get isPendingDismiss(){return Be()},get selectionLabelShakeCount(){return We()},onConfirmDismiss:vr,onCancelDismiss:yr,get toolbarVisible(){return u.store.theme.toolbar.enabled},get isActive(){return w()},onToggleActive:xr,get enabled(){return j()},get shakeCount(){return He()},onToolbarStateChange:e=>{M(e),e.enabled!==j()&&(Ve(e.enabled),e.enabled||(mr(),Ki())),kn.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(kn.add(e),()=>{kn.delete(e)}),onToolbarSelectHoverChange:Je,onToolbarRef:e=>{et=e},get contextMenuPosition(){return yi()},get contextMenuBounds(){return vi()},get contextMenuTagName(){return bi()},get contextMenuComponentName(){return xi()},get contextMenuHasFilePath(){return!!Si()?.filePath},get actions(){return u.store.actions},get actionContext(){return Di()},onContextMenuDismiss:Oi,onContextMenuHide:Ti,get commentItems(){return N()},get commentsDisconnectedItemIds(){return z()},get commentItemCount(){return N().length},get clockFlashTrigger(){return nt()},get commentsDropdownPosition(){return P()},get isCommentsPinned(){return m(()=>P()!==null)()&&!it()},onToggleComments:Yi,onCopyAll:Qi,onCopyAllHover:na,onCommentsButtonHover:ea,onCommentItemSelect:Zi,onCommentItemHover:$i,onCommentsCopyAll:Qi,onCommentsCopyAllHover:na,onCommentsClear:ia,onCommentsDismiss:Ii,onCommentsDropdownHover:ta,get toolbarMenuPosition(){return F()},get toolbarMenuActions(){return u.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return Ke()?.defaultAction??`comment`},onSetDefaultAction:Ji,onToggleToolbarMenu:qi,onToolbarMenuDismiss:Li,get clearPromptPosition(){return Qe()},onClearCommentsConfirm:()=>{Tn(),Gi(),ia()},onClearCommentsCancel:Gi}),ti))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let oa={activate:()=>{S.setPendingCommentMode(!1),!w()&&j()&&hr()},deactivate:()=>{(w()||E())&&Q()},toggle:()=>{w()?Q():j()&&hr()},comment:Tr,isActive:()=>w(),isEnabled:()=>j(),setEnabled:e=>{e!==j()&&(Ve(e),ut({enabled:e,collapsed:!e}),e||(mr(),Ki()))},getToolbarState:()=>ne(),setToolbarState:e=>{let t=ne(),n=e.collapsed??t?.collapsed??!1,r={edge:e.edge??t?.edge??`bottom`,ratio:e.ratio??t?.ratio??.5,collapsed:n,enabled:!n,defaultAction:e.defaultAction??t?.defaultAction??`comment`};v(r),M(r),r.enabled!==j()&&(Ve(r.enabled),r.enabled||(mr(),Ki())),kn.forEach(e=>e(r))},onToolbarStateChange:e=>(kn.add(e),()=>{kn.delete(e)}),dispose:()=>{r=!0,On=!1,o?.(),Vi(),Hi(),Mi(),kn.clear(),t()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await Bn(t)},getSource:async e=>{let t=await ue(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:Ne,getState:()=>({isActive:w(),isDragging:T(),isCopying:E(),isPromptMode:k(),isSelectionBoxVisible:!!ci(),isDragBoxVisible:!!hi(),targetElement:X(),dragBounds:ir()??null,grabbedBoxes:[...ur()],labelInstances:[...dr()],selectionFilePath:b.selectionFilePath,toolbarState:Ke()}),setOptions:e=>{u.setOptions(e)},registerPlugin:e=>{u.register(e,oa)},unregisterPlugin:e=>{u.unregister(e)},getPlugins:()=>u.getPluginNames(),getDisplayName:Pe};for(let e of Dn)u.register(e,oa);return setTimeout(()=>{Me(!0)},fe),oa})};export{yt as a,Wt as i,cn as n,sn as r,An as t};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license MIT
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) 2025 Aiden Bai
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import{A as e,B as t,C as n,F as r,G as i,H as a,I as o,K as s,L as c,R as l,U as u,V as d,_ as f,g as p,h as m,i as h,j as g,m as _,n as ee,o as te,r as v,t as ne,w as re}from"./state-BGtrXdJj.js";import{A as ie,E as y,F as ae,J as oe,M as se,N as ce,P as b,R as le,S as ue,T as de,U as fe,X as pe,Y as x,Z as S,_ as me,a as he,b as C,c as ge,ct as _e,d as ve,f as ye,g as be,h as xe,i as Se,j as Ce,k as we,l as Te,lt as w,m as Ee,o as De,p as Oe,r as ke,s as Ae,st as je,t as Me,u as Ne,v as Pe,w as Fe,y as Ie}from"./freeze-updates-DYnenNAx.js";import{n as T,r as Le,t as E}from"./extract-element-css-BWBXnTPc.js";var Re=`/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
|
|
10
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Geist", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:4px;--font-weight-medium:500;--font-weight-semibold:600;--radius-sm:4px;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-badge-pop:cubic-bezier(.34, 1.36, .64, 1);--ease-badge-close:cubic-bezier(.4, 0, .2, 1);--ease-text-swap:ease-out;--animate-rg-badge-slide:rg-badge-slide .26s cubic-bezier(.22, 1, .36, 1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.touch-hitbox{position:relative}.touch-hitbox:before{content:"";width:100%;min-width:44px;height:100%;min-height:44px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-1{top:calc(var(--spacing) * -1)}.top-0{top:calc(var(--spacing) * 0)}.-right-1{right:calc(var(--spacing) * -1)}.left-0{left:calc(var(--spacing) * 0)}.z-1{z-index:1}.z-10{z-index:10}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.m-0{margin:calc(var(--spacing) * 0)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.-ml-\\[2px\\]{margin-left:-2px}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.box-border{box-sizing:border-box}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-\\[18px\\]{width:18px;height:18px}.h-0{height:calc(var(--spacing) * 0)}.h-2\\.5{height:calc(var(--spacing) * 2.5)}.h-\\[17px\\]{height:17px}.h-fit{height:fit-content}.h-full{height:100%}.max-h-\\[240px\\]{max-height:240px}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-4{min-height:calc(var(--spacing) * 4)}.w-0{width:calc(var(--spacing) * 0)}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-2\\.5{min-width:calc(var(--spacing) * 2.5)}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.origin-center{transform-origin:50%}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.interactive-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}@media (hover:hover) and (pointer:fine){.interactive-scale:hover{transform:scale(1.05)}}.interactive-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.96)}.press-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.press-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.97)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-\\[5px\\]{gap:5px}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\\[10px\\]{border-radius:10px}.rounded-full{border-radius:3.40282e38px}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[\\#B3B3B3\\]{border-color:#b3b3b3}.border-t-\\[\\#D9D9D9\\]{border-top-color:#d9d9d9}.bg-\\[\\#FEF2F2\\]{background-color:#fef2f2}.bg-black{background-color:var(--color-black)}.bg-black\\/5{background-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.bg-black\\/5{background-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing) * 0)}.px-0\\.5{padding-inline:calc(var(--spacing) * .5)}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-\\[3px\\]{padding-inline:3px}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-px{padding-block:1px}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.text-left{text-align:left}.font-sans{font-family:var(--font-sans)}.text-\\[8px\\]{font-size:8px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.wrap-break-word{overflow-wrap:break-word}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-\\[\\#71717a\\]{color:#71717a}.text-\\[\\#B3B3B3\\]{color:#b3b3b3}.text-\\[\\#B91C1C\\]{color:#b91c1c}.text-\\[\\#B91C1C\\]\\/50{color:oklab(50.542% .168942 .0880134/.5)}.text-black{color:var(--color-black)}.text-black\\/25{color:#00000040}@supports (color:color-mix(in lab, red, red)){.text-black\\/25{color:color-mix(in oklab, var(--color-black) 25%, transparent)}}.text-black\\/30{color:#0000004d}@supports (color:color-mix(in lab, red, red)){.text-black\\/30{color:color-mix(in oklab, var(--color-black) 30%, transparent)}}.text-black\\/40{color:#0006}@supports (color:color-mix(in lab, red, red)){.text-black\\/40{color:color-mix(in oklab, var(--color-black) 40%, transparent)}}.text-black\\/50{color:#00000080}@supports (color:color-mix(in lab, red, red)){.text-black\\/50{color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.text-black\\/60{color:#0009}@supports (color:color-mix(in lab, red, red)){.text-black\\/60{color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.text-black\\/70{color:#000000b3}@supports (color:color-mix(in lab, red, red)){.text-black\\/70{color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.text-black\\/85{color:#000000d9}@supports (color:color-mix(in lab, red, red)){.text-black\\/85{color:color-mix(in oklab, var(--color-black) 85%, transparent)}}.text-white{color:var(--color-white)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter-\\[drop-shadow\\(0px_1px_2px_\\#51515133\\)\\]{filter:drop-shadow(0 1px 2px #51515133)}.filter-\\[drop-shadow\\(0px_1px_2px_\\#51515140\\)\\]{filter:drop-shadow(0 1px 2px #51515140)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\,opacity\\]{transition-property:grid-template-columns,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\,opacity\\]{transition-property:grid-template-rows,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\,margin\\,width\\]{transition-property:opacity,transform,margin,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\]{transition-property:top,left,width,height,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\,filter\\]{transition-property:transform,opacity,filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.\\[transition-duration\\:500ms\\,400ms\\,500ms\\]{transition-duration:.5s,.4s,.5s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-badge-pop{--tw-ease:var(--ease-badge-pop);transition-timing-function:var(--ease-badge-pop)}.ease-drawer{--tw-ease:var(--ease-drawer);transition-timing-function:var(--ease-drawer)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.ease-spring{--tw-ease:var(--ease-spring);transition-timing-function:var(--ease-spring)}.ease-text-swap{--tw-ease:var(--ease-text-swap);transition-timing-function:var(--ease-text-swap)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-\\[transform\\,opacity\\,filter\\]{will-change:transform,opacity,filter}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.\\[grid-area\\:1\\/1\\]{grid-area:1/1}.\\[scrollbar-color\\:transparent_transparent\\]{scrollbar-color:transparent transparent}.\\[scrollbar-width\\:thin\\]{scrollbar-width:thin}.group-data-\\[open\\=false\\]\\/badge\\:scale-0:is(:where(.group\\/badge)[data-open=false] *){--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-data-\\[open\\=false\\]\\/badge\\:opacity-0:is(:where(.group\\/badge)[data-open=false] *){opacity:0}.group-data-\\[open\\=false\\]\\/badge\\:blur-\\[2px\\]:is(:where(.group\\/badge)[data-open=false] *){--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.group-data-\\[open\\=false\\]\\/badge\\:\\[transition-duration\\:180ms\\,180ms\\,180ms\\]:is(:where(.group\\/badge)[data-open=false] *){transition-duration:.18s,.18s,.18s}.group-data-\\[open\\=false\\]\\/badge\\:ease-badge-close:is(:where(.group\\/badge)[data-open=false] *){--tw-ease:var(--ease-badge-close);transition-timing-function:var(--ease-badge-close)}.group-data-\\[state\\=a\\]\\/badge\\:translate-y-0:is(:where(.group\\/badge)[data-state=a] *){--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=a\\]\\/badge\\:translate-y-2:is(:where(.group\\/badge)[data-state=a] *){--tw-translate-y:calc(var(--spacing) * 2);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=a\\]\\/badge\\:opacity-0:is(:where(.group\\/badge)[data-state=a] *){opacity:0}.group-data-\\[state\\=a\\]\\/badge\\:opacity-100:is(:where(.group\\/badge)[data-state=a] *){opacity:1}.group-data-\\[state\\=a\\]\\/badge\\:blur-\\[2px\\]:is(:where(.group\\/badge)[data-state=a] *){--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.group-data-\\[state\\=b\\]\\/badge\\:-translate-y-2:is(:where(.group\\/badge)[data-state=b] *){--tw-translate-y:calc(var(--spacing) * -2);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=b\\]\\/badge\\:translate-y-0:is(:where(.group\\/badge)[data-state=b] *){--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\\[state\\=b\\]\\/badge\\:opacity-0:is(:where(.group\\/badge)[data-state=b] *){opacity:0}.group-data-\\[state\\=b\\]\\/badge\\:opacity-100:is(:where(.group\\/badge)[data-state=b] *){opacity:1}.group-data-\\[state\\=b\\]\\/badge\\:blur-\\[2px\\]:is(:where(.group\\/badge)[data-state=b] *){--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.before\\:\\!min-h-full:before{content:var(--tw-content);min-height:100%!important}.before\\:\\!min-w-full:before{content:var(--tw-content);min-width:100%!important}@media (hover:hover){.hover\\:bg-\\[\\#F5F5F5\\]:hover{background-color:#f5f5f5}.hover\\:bg-\\[\\#FEE2E2\\]:hover{background-color:#fee2e2}.hover\\:bg-black\\/10:hover{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-black\\/10:hover{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.hover\\:text-black:hover{color:var(--color-black)}.hover\\:opacity-100:hover{opacity:1}.hover\\:\\[scrollbar-color\\:rgba\\(0\\,0\\,0\\,0\\.15\\)_transparent\\]:hover{scrollbar-color:#00000026 transparent}}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:opacity-40:disabled{opacity:.4}.data-\\[open\\=true\\]\\:animate-rg-badge-slide[data-open=true]{animation:var(--animate-rg-badge-slide)}}:host{all:initial;direction:ltr}@keyframes rg-badge-slide{0%{transform:translate(-8.2px,12.4px)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){[data-react-grab-unread-indicator],[data-react-grab-unread-indicator] *{transition:none!important;animation:none!important}}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-3px)}30%{transform:translate(3px)}45%{transform:translate(-3px)}60%{transform:translate(3px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}@keyframes success-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes icon-loader-spin{0%{opacity:1}50%{opacity:.5}to{opacity:.2}}.icon-loader-bar{animation:.5s linear infinite icon-loader-spin}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer-text{color:#0000;background:linear-gradient(90deg,#71717a 0%,#a1a1aa 25%,#71717a 50%,#a1a1aa 75%,#71717a 100%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:2.5s linear infinite shimmer}@keyframes clock-flash{0%{transform:scale(1)}25%{transform:scale(1.2)}50%{transform:scale(.92)}75%{transform:scale(1.05)}to{transform:scale(1)}}.animate-clock-flash{will-change:transform;animation:.4s ease-out clock-flash}.animate-shake{will-change:transform;animation:.3s ease-out shake}.animate-success-pop{will-change:transform, opacity;animation:.35s cubic-bezier(.34,1.56,.64,1) both success-pop}@supports (-webkit-touch-callout:none){textarea[data-react-grab-input]{font-size:16px}}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-contain-size{syntax:"*";inherits:false}@property --tw-contain-layout{syntax:"*";inherits:false}@property --tw-contain-paint{syntax:"*";inherits:false}@property --tw-contain-style{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-content{syntax:"*";inherits:false;initial-value:""}`;const D=Symbol(`store-raw`),O=Symbol(`store-node`),k=Symbol(`store-has`),ze=Symbol(`store-self`);function Be(t){let n=t[e];if(!n&&(Object.defineProperty(t,e,{value:n=new Proxy(t,Ke)}),!Array.isArray(t))){let e=Object.keys(t),r=Object.getOwnPropertyDescriptors(t);for(let i=0,a=e.length;i<a;i++){let a=e[i];r[a].get&&Object.defineProperty(t,a,{enumerable:r[a].enumerable,get:r[a].get.bind(n)})}}return n}function A(t){let n;return typeof t==`object`&&!!t&&(t[e]||!(n=Object.getPrototypeOf(t))||n===Object.prototype||Array.isArray(t))}function j(e,t=new Set){let n,r,i,a;if(n=e!=null&&e[D])return n;if(!A(e)||t.has(e))return e;if(Array.isArray(e)){Object.isFrozen(e)?e=e.slice(0):t.add(e);for(let n=0,a=e.length;n<a;n++)i=e[n],(r=j(i,t))!==i&&(e[n]=r)}else{Object.isFrozen(e)?e=Object.assign({},e):t.add(e);let n=Object.keys(e),o=Object.getOwnPropertyDescriptors(e);for(let s=0,c=n.length;s<c;s++)a=n[s],!o[a].get&&(i=e[a],(r=j(i,t))!==i&&(e[a]=r))}return e}function Ve(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function He(e,t,n){if(e[t])return e[t];let[r,i]=a(n,{equals:!1,internal:!0});return r.$=i,e[t]=r}function Ue(t,n){let r=Reflect.getOwnPropertyDescriptor(t,n);return!r||r.get||!r.configurable||n===e||n===O?r:(delete r.value,delete r.writable,r.get=()=>t[e][n],r)}function We(e){u()&&He(Ve(e,O),ze)()}function Ge(e){return We(e),Reflect.ownKeys(e)}const Ke={get(t,n,r){if(n===D)return t;if(n===e)return r;if(n===g)return We(t),r;let i=Ve(t,O),a=i[n],o=a?a():t[n];if(n===O||n===k||n===`__proto__`)return o;if(!a){let e=Object.getOwnPropertyDescriptor(t,n);u()&&(typeof o!=`function`||t.hasOwnProperty(n))&&!(e&&e.get)&&(o=He(i,n,o)())}return A(o)?Be(o):o},has(t,n){return n===D||n===e||n===g||n===O||n===k||n===`__proto__`?!0:(u()&&He(Ve(t,k),n)(),n in t)},set(){return!0},deleteProperty(){return!0},ownKeys:Ge,getOwnPropertyDescriptor:Ue};function M(e,t,n,r=!1){if(!r&&e[t]===n)return;let i=e[t],a=e.length;n===void 0?(delete e[t],e[k]&&e[k][t]&&i!==void 0&&e[k][t].$()):(e[t]=n,e[k]&&e[k][t]&&i===void 0&&e[k][t].$());let o=Ve(e,O),s;if((s=He(o,t,i))&&s.$(()=>n),Array.isArray(e)&&e.length!==a){for(let t=e.length;t<a;t++)(s=o[t])&&s.$();(s=He(o,`length`,a))&&s.$(e.length)}(s=o[ze])&&s.$()}function qe(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];M(e,i,t[i])}}function Je(e,t){if(typeof t==`function`&&(t=t(e)),t=j(t),Array.isArray(t)){if(e===t)return;let n=0,r=t.length;for(;n<r;n++){let r=t[n];e[n]!==r&&M(e,n,r)}M(e,`length`,r)}else qe(e,t)}function Ye(e,t,n=[]){let r,i=e;if(t.length>1){r=t.shift();let a=typeof r,o=Array.isArray(e);if(Array.isArray(r)){for(let i=0;i<r.length;i++)Ye(e,[r[i]].concat(t),n);return}else if(o&&a===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&Ye(e,[i].concat(t),n);return}else if(o&&a===`object`){let{from:i=0,to:a=e.length-1,by:o=1}=r;for(let r=i;r<=a;r+=o)Ye(e,[r].concat(t),n);return}else if(t.length>1){Ye(e[r],t,[r].concat(n));return}i=e[r],n=[r].concat(n)}let a=t[0];typeof a==`function`&&(a=a(i,n),a===i)||r===void 0&&a==null||(a=j(a),r===void 0||A(i)&&A(a)&&!Array.isArray(a)?qe(i,a):M(e,r,a))}function Xe(...[e,t]){let n=j(e||{}),i=Array.isArray(n),a=Be(n);function o(...e){r(()=>{i&&e.length===1?Je(n,e[0]):Ye(n,e)})}return[a,o]}const Ze=new WeakMap,Qe={get(e,t){if(t===D)return e;let n=e[t],r;return A(n)?Ze.get(n)||(Ze.set(n,r=new Proxy(n,Qe)),r):n},set(e,t,n){return M(e,t,j(n)),!0},deleteProperty(e,t){return M(e,t,void 0,!0),!0}};function N(e){return t=>{if(A(t)){let n;(n=Ze.get(t))||Ze.set(t,n=new Proxy(t,Qe)),e(n)}return t}}const $e=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),et=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return $e(n)?n:null},tt=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=et(e);if(t===null)return null;r.push(t)}return r},nt=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,P=e=>e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[15]===1,rt=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=tt(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,P(n)?`none`:`matrix3d(${n[0]}, ${n[1]}, ${n[2]}, ${n[3]}, ${n[4]}, ${n[5]}, ${n[6]}, ${n[7]}, ${n[8]}, ${n[9]}, ${n[10]}, ${n[11]}, 0, 0, 0, ${n[15]})`}else{let t=e.length-1,n=tt(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return nt(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},it=e=>e.isIdentity?`none`:e.is2D?nt(e.a,e.b,e.c,e.d)?`none`:`matrix(${e.a}, ${e.b}, ${e.c}, ${e.d}, 0, 0)`:e.m11===1&&e.m12===0&&e.m13===0&&e.m14===0&&e.m21===0&&e.m22===1&&e.m23===0&&e.m24===0&&e.m31===0&&e.m32===0&&e.m33===1&&e.m34===0&&e.m44===1?`none`:`matrix3d(${e.m11}, ${e.m12}, ${e.m13}, ${e.m14}, ${e.m21}, ${e.m22}, ${e.m23}, ${e.m24}, ${e.m31}, ${e.m32}, ${e.m33}, ${e.m34}, 0, 0, 0, ${e.m44})`;let at=new WeakMap,ot=new WeakMap,st=new WeakMap;const ct=()=>{at=new WeakMap,ot=new WeakMap,st=new WeakMap},lt=(e,t)=>{let n=ot.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return ot.set(e,{transform:i,timestamp:t}),i},ut=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=lt(a,n);if(e!==`none`)i=i?new DOMMatrix(e).multiply(i):new DOMMatrix(e);else if(!r&&!i&&o>=3)return`none`;a=a.parentElement,o++}return i?(r&&(i=i.multiply(new DOMMatrix(t))),it(i)):r?rt(t):`none`},dt=(e,t,n)=>{let r=st.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return st.set(e,{borderRadius:i,timestamp:n}),i},ft=(e,t,n,r)=>{let i=ut(e,n.transform,r),a=dt(e,n,r);if(i!==`none`&&e instanceof HTMLElement){let n=e.offsetWidth,r=e.offsetHeight;if(n>0&&r>0){let e=t.left+t.width*.5,o=t.top+t.height*.5;return{borderRadius:a,height:r,transform:i,width:n,x:e-n*.5,y:o-r*.5}}}return{borderRadius:a,height:t.height,transform:i,width:t.width,x:t.left,y:t.top}},F=e=>{let t=performance.now(),n=at.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=ft(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return at.set(e,{bounds:r,timestamp:t}),r},I=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),pt=e=>({current:{state:`idle`},selectionInteractionLockDepth:0,wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:e.keyHoldDuration,pointer:{x:S,y:S},dragStart:{x:S,y:S},copyStart:{x:S,y:S},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,lastCopiedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:``,viewportVersion:0,grabbedBoxes:[],labelInstances:[],isTouchMode:!1,theme:e.theme,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),mt=e=>{let[t,n]=Xe(pt(e)),r=e=>{n(N(t=>{e(t),t.frozenElement=t.frozenElements.length>0?t.frozenElements[0]:null,t.frozenDragRect=null}))},i=()=>{r(e=>{e.frozenElements=[]})},a=e=>{n(`current`,N(t=>{t.state===`active`&&(t.phase=e)}))},o={startHold:e=>{e!==void 0&&n(`keyHoldDuration`,e),n(`current`,{state:`holding`,startedAt:Date.now()})},releaseHold:()=>{t.current.state===`holding`&&n(`current`,{state:`idle`})},activate:()=>{n(N(e=>{e.current={state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1},e.activationTimestamp=Date.now(),e.previouslyFocusedElement=document.activeElement}))},deactivate:()=>{n(N(e=>{e.current={state:`idle`},e.wasActivatedByToggle=!1,e.pendingCommentMode=!1,e.inputText=``,e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null,e.activationTimestamp=null,e.previouslyFocusedElement=null,e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null,e.lastCopiedElement=null}))},toggle:()=>{t.activationTimestamp===null?(n(`wasActivatedByToggle`,!0),o.activate()):o.deactivate()},freeze:()=>{if(t.current.state===`active`){let e=t.frozenElement??t.detectedElement;e&&n(`frozenElement`,e),a(`frozen`)}},unfreeze:()=>{t.current.state===`active`&&(n(N(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),a(`hovering`))},startDrag:(e,r)=>{t.current.state===`active`&&(r||i(),n(`dragStart`,{x:e.x+window.scrollX,y:e.y+window.scrollY}),a(`dragging-select`))},startDragReposition:()=>{t.current.state===`active`&&t.current.phase===`dragging-select`&&a(`dragging-reposition`)},stopDragReposition:()=>{t.current.state===`active`&&t.current.phase===`dragging-reposition`&&a(`dragging-select`)},shiftDragStart:e=>{t.current.state===`active`&&t.current.phase===`dragging-reposition`&&n(`dragStart`,t=>({x:t.x+e.x,y:t.y+e.y}))},endDrag:()=>{t.current.state===`active`&&(t.current.phase===`dragging-select`||t.current.phase===`dragging-reposition`)&&(n(`dragStart`,{x:S,y:S}),a(`justDragged`))},cancelDrag:()=>{t.current.state===`active`&&(t.current.phase===`dragging-select`||t.current.phase===`dragging-reposition`)&&(n(`dragStart`,{x:S,y:S}),a(`hovering`))},finishJustDragged:()=>{t.current.state===`active`&&t.current.phase===`justDragged`&&a(`hovering`)},startCopy:()=>{let e=t.current.state===`active`;n(`current`,{state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:e=>{e&&n(`lastCopiedElement`,e);let r=t.current.state===`copying`?t.current.wasActive:!1;n(`current`,{state:`justCopied`,copiedAt:Date.now(),wasActive:r})},finishJustCopied:()=>{t.current.state===`justCopied`&&(t.current.wasActive&&!t.wasActivatedByToggle?(i(),n(`current`,{state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})):o.deactivate())},enterPromptMode:(e,r)=>{let{x:i}=I(F(r));n(`copyStart`,e),n(`copyOffsetFromCenterX`,e.x-i),n(`pointer`,e),n(`frozenElement`,r),n(`wasActivatedByToggle`,!0),t.current.state===`active`?n(`current`,N(e=>{e.state===`active`&&(e.isPromptMode=!0,e.phase=`frozen`)})):(n(`current`,{state:`active`,phase:`frozen`,isPromptMode:!0,isPendingDismiss:!1}),n(`activationTimestamp`,Date.now()),n(`previouslyFocusedElement`,document.activeElement))},exitPromptMode:()=>{t.current.state===`active`&&n(`current`,N(e=>{e.state===`active`&&(e.isPromptMode=!1,e.isPendingDismiss=!1)}))},setInputText:e=>{n(`inputText`,e)},clearInputText:()=>{n(`inputText`,``)},setPendingDismiss:e=>{t.current.state===`active`&&n(`current`,N(t=>{t.state===`active`&&(t.isPendingDismiss=e)}))},setPointer:e=>{n(`pointer`,e)},setDetectedElement:e=>{n(`detectedElement`,e)},setFrozenElement:e=>{r(t=>{t.frozenElements=[e]})},setFrozenElements:e=>{r(t=>{t.frozenElements=e})},toggleFrozenElement:e=>{r(t=>{let n=t.frozenElements.indexOf(e);n>=0?t.frozenElements.splice(n,1):t.frozenElements.push(e)})},addFrozenElements:e=>{r(t=>{for(let n of e)t.frozenElements.includes(n)||t.frozenElements.push(n)})},setFrozenDragRect:e=>{n(`frozenDragRect`,e)},setCopyStart:(e,t)=>{let{x:r}=I(F(t));n(`copyStart`,e),n(`copyOffsetFromCenterX`,e.x-r)},setLastGrabbed:e=>{n(`lastGrabbedElement`,e)},clearLastCopied:()=>{n(`lastCopiedElement`,null)},setWasActivatedByToggle:e=>{n(`wasActivatedByToggle`,e)},setPendingCommentMode:e=>{n(`pendingCommentMode`,e)},setTouchMode:e=>{n(`isTouchMode`,e)},incrementSelectionInteractionLockDepth:()=>{n(`selectionInteractionLockDepth`,e=>e+1)},decrementSelectionInteractionLockDepth:()=>{n(`selectionInteractionLockDepth`,e=>Math.max(0,e-1))},setSelectionSource:(e,t)=>{n(N(n=>{n.selectionFilePath=e,n.selectionLineNumber=t}))},incrementViewportVersion:()=>{n(`viewportVersion`,e=>e+1)},addGrabbedBox:e=>{n(`grabbedBoxes`,t=>[...t,e])},removeGrabbedBox:e=>{n(`grabbedBoxes`,t=>t.filter(t=>t.id!==e))},clearGrabbedBoxes:()=>{n(`grabbedBoxes`,[])},addLabelInstance:e=>{n(`labelInstances`,t=>[...t,e])},updateLabelInstance:(e,r,i)=>{let a=t.labelInstances.findIndex(t=>t.id===e);a!==-1&&n(`labelInstances`,a,N(e=>{e.status=r,i!==void 0&&(e.errorMessage=i)}))},removeLabelInstance:e=>{n(`labelInstances`,t=>t.filter(t=>t.id!==e))},clearLabelInstances:()=>{n(`labelInstances`,[])},showContextMenu:(e,t)=>{let{x:r,y:i}=I(F(t));n(N(n=>{n.contextMenuPosition=e,n.contextMenuElement=t,n.contextMenuClickOffset={x:e.x-r,y:e.y-i}}))},hideContextMenu:()=>{n(N(e=>{e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null}))},updateContextMenuPosition:()=>{let e=t.contextMenuElement,r=t.contextMenuClickOffset;if(!e||!r||!f(e))return;let{x:i,y:a}=I(F(e));n(`contextMenuPosition`,{x:i+r.x,y:a+r.y})}};return{store:t,actions:o}},ht=`data-react-grab`,gt=e=>{if(!document.body)return;let t=document.querySelectorAll(`[${ht}]`);for(let n of t)n!==e&&n.parentNode!==e&&(n.shadowRoot||n.remove());document.body.appendChild(e)},_t=e=>{if(document.body){gt(e);return}let t=()=>{document.removeEventListener(`DOMContentLoaded`,t),gt(e)};document.addEventListener(`DOMContentLoaded`,t,{once:!0})},vt=e=>{let t=document.querySelectorAll(`[${ht}]`);for(let e of t){let t=e.shadowRoot?.querySelector(`[${ht}]`);if(t instanceof HTMLDivElement)return t;e.remove()}let n=document.createElement(`div`);n.setAttribute(ht,`true`),se(n),n.style.zIndex=String(w),n.style.position=`fixed`,n.style.inset=`0`,n.style.pointerEvents=`none`,n.style.contain=`strict`;let r=n.attachShadow({mode:`open`}),i=document.createElement(`style`),a=ce();a&&(i.nonce=a),i.textContent=`@import url("https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap");\n${e??``}`,r.appendChild(i);let o=document.createElement(`div`);return o.setAttribute(ht,`true`),r.appendChild(o),_t(n),setTimeout(()=>{gt(n)},x),o},L=()=>{},yt=()=>({activate:L,deactivate:L,toggle:L,comment:L,isActive:()=>!1,isEnabled:()=>!1,setEnabled:L,getToolbarState:()=>null,setToolbarState:L,onToolbarStateChange:()=>L,dispose:L,copyElement:()=>Promise.resolve(!1),getSource:()=>Promise.resolve(null),getStackContext:()=>Promise.resolve(``),getState:()=>({isActive:!1,isDragging:!1,isCopying:!1,isPromptMode:!1,isSelectionBoxVisible:!1,isDragBoxVisible:!1,targetElement:null,dragBounds:null,grabbedBoxes:[],labelInstances:[],selectionFilePath:null,toolbarState:null}),setOptions:L,registerPlugin:L,unregisterPlugin:L,getPlugins:()=>[],getDisplayName:()=>null}),bt=()=>{let e=new AbortController;return{signal:e.signal,abort:()=>e.abort(),addWindowListener:(t,n,r={})=>{window.addEventListener(t,n,{...r,signal:e.signal})},addDocumentListener:(t,n,r={})=>{document.addEventListener(t,n,{...r,signal:e.signal})}}},xt=e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`),St=(e,t)=>{let n=t?.componentName??`div`,r={version:je,content:e,entries:t?.entries??[{tagName:t?.tagName,componentName:n,content:e,commentText:t?.commentText}],timestamp:Date.now()},i=t=>{t.preventDefault(),t.clipboardData?.setData(`text/plain`,e),t.clipboardData?.setData(`text/html`,`<meta charset='utf-8'><pre><code>${xt(e)}</code></pre>`),t.clipboardData?.setData(`application/x-react-grab`,JSON.stringify(r))};document.addEventListener(`copy`,i);let a=document.createElement(`textarea`);a.value=e,a.style.position=`fixed`,a.style.left=`-9999px`,a.ariaHidden=`true`,document.body.appendChild(a),a.select();try{return typeof document.execCommand==`function`?document.execCommand(`copy`):!1}finally{document.removeEventListener(`copy`,i),a.remove()}},Ct=async(e,t={})=>(await Promise.allSettled(e.map(e=>C(e,t)))).map(e=>e.status===`fulfilled`?e.value:``),wt=e=>e.length<=1?e[0]??``:e.map((e,t)=>`[${t+1}]\n${e}`).join(`
|
|
11
|
+
|
|
12
|
+
`),Tt=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,R=e=>e instanceof Error?e:Error(String(e)),Et=async(e,t,n,r)=>{let i=!1,a=``;await t.onBeforeCopy(n);try{let o,s;if(e.getContent)o=await e.getContent(n);else{let i=await Ct(n,{maxLines:e.maxContextLines}),a=(await Promise.all(i.map((e,r)=>e.trim()?t.transformSnippet(e,n[r]):Promise.resolve(``)))).map((e,t)=>({snippet:e,element:n[t]})).filter(({snippet:e})=>e.trim());o=wt(a.map(({snippet:e})=>e)),s=a.map(({snippet:e,element:t})=>({tagName:t.localName,content:e,commentText:r}))}if(o.trim()){let c=await t.transformCopyContent(o,n);a=r?`${r}\n\n${c}`:c,i=St(a,{componentName:e.componentName,entries:s})}}catch(e){t.onCopyError(R(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},z=(e,t)=>{let n=Math.max(e.left,t.left),r=Math.max(e.top,t.top),i=Math.min(e.right,t.right),a=Math.min(e.bottom,t.bottom);return Math.max(0,i-n)*Math.max(0,a-r)},Dt=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,Ot=e=>e.sort((e,t)=>{if(e===t)return 0;let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING?-1:n&Node.DOCUMENT_POSITION_PRECEDING?1:0}),kt=e=>{if(e.width<=0||e.height<=0)return[];let t=window.innerWidth,n=window.innerHeight,r=e.x,i=e.y,a=e.x+e.width,o=e.y+e.height,s=r+e.width/2,c=i+e.height/2,l=te(Math.ceil(e.width/32),3,20),u=te(Math.ceil(e.height/32),3,20),d=l*u,f=d>100?Math.sqrt(100/d):1,p=te(Math.floor(l*f),3,20),m=te(Math.floor(u*f),3,20),h=new Set,g=[],_=(e,r)=>{let i=te(Math.round(e),0,t-1),a=te(Math.round(r),0,n-1),o=`${i}:${a}`;h.has(o)||(h.add(o),g.push({x:i,y:a}))};_(r+1,i+1),_(a-1,i+1),_(r+1,o-1),_(a-1,o-1),_(s,i+1),_(s,o-1),_(r+1,c),_(a-1,c),_(s,c);for(let t=0;t<p;t+=1){let n=r+(t+.5)/p*e.width;for(let t=0;t<m;t+=1)_(n,i+(t+.5)/m*e.height)}return g},B=(e,t,n)=>{let r={left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height},i=new Set,a=kt(e);Ee();try{for(let e of a){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)i.add(e)}}finally{Oe()}let o=[];for(let e of i)!n&&me(e)||t(e)&&o.push(e);let s=new Map;for(let e of o)s.set(e,e.getBoundingClientRect());let c=[];for(let e of o){let t=s.get(e);if(t.width<=0||t.height<=0)continue;let i={left:t.left,top:t.top,right:t.left+t.width,bottom:t.top+t.height};if(n){let n=z(r,i),a=t.width*t.height;a>0&&n/a>=.75&&c.push(e)}else Dt(i,r)&&c.push(e)}return Ot(c)},V=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),At=(e,t,n=!0)=>V(B(e,t,n)),jt=e=>{let t=window.innerWidth,n=window.innerHeight,r=Math.max(0,e.x),i=Math.min(t,e.x+e.width),a=Math.max(0,e.y),o=Math.min(n,e.y+e.height);return{x:(r+i)/2,y:(a+o)/2}},Mt=()=>{ct(),Ne(),xe()},Nt=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),Pt=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Ft=e=>({...e,borderRadius:`0px`,transform:`none`}),H=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),It=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:H.has(e),Lt=(e,t)=>{if(!e||!t)return!1;let n=e.toLowerCase();return t===`Space`?n===`space`||n===` `:t.startsWith(`Key`)?t.slice(3).toLowerCase()===n:t.startsWith(`Digit`)?t.slice(5)===n:!1},U={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},Rt=e=>{let t=e.split(`+`).map(e=>e.trim().toLowerCase()),n={metaKey:!1,ctrlKey:!1,shiftKey:!1,altKey:!1,key:null};for(let e of t){let t=U[e];t?n[t]=!0:n.key=e}return n},zt=e=>{if(typeof e==`function`)return e;let t=Rt(e),n=t.key;return e=>{if(n===null){let n=t.metaKey?e.metaKey||e.key===`Meta`:!0,r=t.ctrlKey?e.ctrlKey||e.key===`Control`:!0,i=t.shiftKey?e.shiftKey||e.key===`Shift`:!0,a=t.altKey?e.altKey||e.key===`Alt`:!0,o=n&&r&&i&&a,s=[t.metaKey,t.ctrlKey,t.shiftKey,t.altKey].filter(Boolean).length,c=[e.metaKey||e.key===`Meta`,e.ctrlKey||e.key===`Control`,e.shiftKey||e.key===`Shift`,e.altKey||e.key===`Alt`].filter(Boolean).length;return o&&c>=s}let r=e.key?.toLowerCase()===n||Lt(n,e.code),i=t.metaKey||t.ctrlKey||t.shiftKey||t.altKey?(t.metaKey?e.metaKey:!0)&&(t.ctrlKey?e.ctrlKey:!0)&&(t.shiftKey?e.shiftKey:!0)&&(t.altKey?e.altKey:!0):!e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey;return r&&i}},Bt=e=>!e||typeof e==`function`?{metaKey:h(),ctrlKey:!h(),shiftKey:!1,altKey:!1,key:null}:Rt(e),Vt=(e,t)=>{if(t.activationKey)return zt(t.activationKey)(e);let n=(h()?e.metaKey:e.ctrlKey)&&!e.shiftKey&&!e.altKey;return!!(e.key&&n&&It(e.key,e.code))},Ht=e=>{if(e.length===0)return{x:0,y:0,width:0,height:0};if(e.length===1)return e[0];let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e)t=Math.min(t,a.x),n=Math.min(n,a.y),r=Math.max(r,a.x+a.width),i=Math.max(i,a.y+a.height);return{x:t,y:n,width:r-t,height:i-n}},Ut={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},W=(e,t)=>({enabled:t.enabled??e.enabled,hue:t.hue??e.hue,selectionBox:{enabled:t.selectionBox?.enabled??e.selectionBox.enabled},dragBox:{enabled:t.dragBox?.enabled??e.dragBox.enabled},grabbedBoxes:{enabled:t.grabbedBoxes?.enabled??e.grabbedBoxes.enabled},elementLabel:{enabled:t.elementLabel?.enabled??e.elementLabel.enabled},toolbar:{enabled:t.toolbar?.enabled??e.toolbar.enabled}}),Wt={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},Gt=(e={})=>{let t=new Map,n={},[r,i]=Xe({theme:Ut,options:{...Wt,...e},actions:[]}),a=()=>{let r=Ut,a={...Wt,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=W(r,e.theme)),e.options&&(a={...a,...e.options}),e.actions)for(let t of e.actions)o.push(t);a={...a,...n},i(`theme`,r),i(`options`,a),i(`actions`,o)},o=(e,t)=>{n[e]=t,i(`options`,e,t)},s=[`activationMode`,`keyHoldDuration`,`allowActivationInsideInput`,`maxContextLines`,`activationKey`,`getContent`,`freezeReactUpdates`],c=e=>{for(let t of s)e[t]!==void 0&&o(t,e[t])},l=(e,n)=>{t.has(e.name)&&u(e.name);let r=e.setup?.(n,_)??{};e.theme&&(r.theme=r.theme?W(W(Ut,e.theme),r.theme):e.theme),e.actions&&(r.actions=[...e.actions,...r.actions??[]]),e.hooks&&(r.hooks=r.hooks?{...e.hooks,...r.hooks}:e.hooks),e.options&&(r.options=r.options?{...e.options,...r.options}:e.options),t.set(e.name,{plugin:e,config:r}),a()},u=e=>{let n=t.get(e);n&&(n.config.cleanup&&n.config.cleanup(),t.delete(e),a())},d=()=>Array.from(t.keys()),f=(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&t(...n)}},p=(e,...n)=>{let r=!1;for(let{config:i}of t.values()){let t=i.hooks?.[e];t&&t(...n)===!0&&(r=!0)}return r},m=async(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&await t(...n)}},h=async(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=await t(i,...r))}return i},g=(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=t(i,...r))}return i},_={onActivate:()=>f(`onActivate`),onDeactivate:()=>f(`onDeactivate`),onElementHover:e=>f(`onElementHover`,e),onElementSelect:e=>{let n=!1,r;for(let{config:i}of t.values()){let t=i.hooks?.onElementSelect;if(t){let i=t(e);i===!0?n=!0:i instanceof Promise&&(n=!0,r=i)}}return{wasIntercepted:n,pendingResult:r}},onDragStart:(e,t)=>f(`onDragStart`,e,t),onDragEnd:(e,t)=>f(`onDragEnd`,e,t),onBeforeCopy:async e=>m(`onBeforeCopy`,e),transformCopyContent:async(e,t)=>h(`transformCopyContent`,e,t),onAfterCopy:(e,t)=>f(`onAfterCopy`,e,t),onCopySuccess:(e,t)=>f(`onCopySuccess`,e,t),onCopyError:e=>f(`onCopyError`,e),onStateChange:e=>f(`onStateChange`,e),onPromptModeChange:(e,t)=>f(`onPromptModeChange`,e,t),onSelectionBox:(e,t,n)=>f(`onSelectionBox`,e,t,n),onDragBox:(e,t)=>f(`onDragBox`,e,t),onGrabbedBox:(e,t)=>f(`onGrabbedBox`,e,t),onElementLabel:(e,t,n)=>f(`onElementLabel`,e,t,n),onContextMenu:(e,t)=>f(`onContextMenu`,e,t),onOpenFile:(e,t)=>p(`onOpenFile`,e,t),transformHtmlContent:async(e,t)=>h(`transformHtmlContent`,e,t),transformAgentContext:async(e,t)=>h(`transformAgentContext`,e,t),transformActionContext:e=>g(`transformActionContext`,e),transformOpenFileUrl:(e,t,n)=>g(`transformOpenFileUrl`,e,t,n),transformSnippet:async(e,t)=>h(`transformSnippet`,e,t)};return{register:l,unregister:u,getPluginNames:d,setOptions:c,store:r,hooks:_}},Kt=(e,t)=>{let n=[],r=(n,r)=>{let i=jt(t(n)),a=ye(i.x,i.y).filter(e),o=a.indexOf(n);return o===-1?null:a[o+r]??null},i=e=>{let t=r(e,1);return t&&(n.push(e),n.length>50&&(n=n.slice(-50))),t},a=e=>{if(n.length>0){let e=n.pop();if(f(e))return e}return r(e,-1)},o=e=>e instanceof SVGElement&&!(e instanceof SVGSVGElement),s=e=>{let t=e.getBoundingClientRect();return t.width>=16||t.height>=16},c=(e,t)=>Math.abs(e.x-t.x)<=2&&Math.abs(e.y-t.y)<=2&&Math.abs(e.width-t.width)<=2&&Math.abs(e.height-t.height)<=2,l=t=>e(t)&&!o(t)&&s(t),u=(e,t)=>{let n=e.getBoundingClientRect(),r=e=>!c(e.getBoundingClientRect(),n),i=e=>{if(e instanceof SVGSVGElement)return null;let n=Array.from(e.children),a=t?n:n.reverse();for(let e of a)if(t){if(l(e)&&r(e))return e;let t=i(e);if(t)return t}else{let t=i(e);if(t)return t;if(l(e)&&r(e))return e}return null},a=e=>t?e.nextElementSibling:e.previousElementSibling,o=null;if(t&&(o=i(e)),!o){let n=e;for(;n;){let e=a(n);for(;e;){if(l(e)&&r(e)){o=e;break}let t=i(e);if(t){o=t;break}e=a(e)}if(o)break;let s=n.parentElement;if(!t&&s&&l(s)){o=s;break}n=s}}return o};return{findNext:(e,t)=>{switch(e){case`ArrowUp`:return i(t);case`ArrowDown`:return a(t);case`ArrowRight`:return u(t,!0);case`ArrowLeft`:return u(t,!1);default:return null}},clearHistory:()=>{n=[]}}},qt=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Bt(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},Jt=()=>{let e=new WeakSet,t=Object.getOwnPropertyDescriptor(KeyboardEvent.prototype,`key`),n=!1;if(t?.get&&!t.get.__reactGrabPatched){n=!0;let r=t.get,i=function(){return e.has(this)?``:r.call(this)};i.__reactGrabPatched=!0,Object.defineProperty(KeyboardEvent.prototype,`key`,{get:i,configurable:!0})}return{claimedEvents:e,originalKeyDescriptor:t,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,`key`,t)}}},Yt=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),Xt=(e,t,n)=>{let r=null,i=()=>{if(!t()){a();return}let o=e(),s=Yt(o.x,o.y),c=0,l=0;if(s.top&&(l-=10),s.bottom&&(l+=10),s.left&&(c-=10),s.right&&(c+=10),c!==0||l!==0){let e=window.scrollX,t=window.scrollY;window.scrollBy(c,l);let r=window.scrollX-e,i=window.scrollY-t;(r!==0||i!==0)&&n?.({x:r,y:i})}r=s.top||s.bottom||s.left||s.right?ie(i):null},a=()=>{r!==null&&(we(r),r=null)};return{start:i,stop:a,isActive:()=>r!==null}},Zt=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},Qt=()=>{try{let e=`0.1.33`,t=`data:image/svg+xml;base64,${btoa(`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 294 294"><path fill="#ff40e0" d="M145 47c25-20 50-27 67-17 16 9 23 30 20 60 0 2-1 5-1 7l-2 13h-1l-12-4c-8-3-17-5-25-6l-17-3c-10-1-20-1-29-1-10 0-20 0-29 1-6 8-11 16-16 24-5 9-9 17-13 26 4 9 8 18 13 26s10 16 16 24l11 14c5 7 11 13 18 19l10 8s-1 0 0 0l-11 9c-17 14-35 22-49 22-6 0-13-2-18-5-16-9-23-30-20-59 1-3 1-5 1-8-30-12-48-29-48-50 0-18 14-35 41-47 2-1 5-2 7-3 0-2 0-5-1-7-3-30 4-51 20-60 18-10 42-3 68 17M71 201c-1 2-1 4-1 5-2 24 3 41 13 47h1c11 7 30 1 51-15-10-9-18-18-26-29-13-1-26-4-38-8m9-38c-3 9-5 17-7 26 8 2 17 4 25 6-3-5-6-10-9-16-3-5-6-10-9-16m-19-53c-2 1-3 1-5 2-21 10-34 23-34 35 0 13 14 27 39 37 3-12 7-25 12-37-5-12-9-24-12-37m37-10c-8 1-17 3-25 6 2 8 4 16 7 25 3-5 6-11 9-16zm-3-61c-4-1-8 0-12 2-10 7-15 24-13 47 0 2 0 3 1 5 12-4 25-6 38-8 8-10 16-20 26-29-15-11-29-17-40-17m111 2c-4-2-8-3-12-2-11 0-25 5-40 17 10 9 19 19 26 29 13 2 26 4 39 8v-5c3-23-2-40-13-47m-61 23c-7 6-13 13-19 19h37c-6-6-12-13-18-19"/><mask id="a"><path fill="#fff" d="m235 85-133 27 28 133 133-27Z"/></mask><path fill="#ff40e0" d="m137 130 76 11c8 1 9 11 3 15l-28 16-4 32c-1 8-10 10-14 4l-41-66c-3-6 1-13 8-12" mask="url(#a)"/></svg>`)}`;console.log(`%cReact Grab${` v${e}`}%c\nhttps://react-grab.com`,`background: #330039; color: #ffffff; border: 1px solid #d75fcb; padding: 4px 4px 4px 24px; border-radius: 4px; background-image: url("${t}"); background-size: 16px 16px; background-repeat: no-repeat; background-position: 4px center; display: inline-block; margin-bottom: 4px;`,``),navigator.onLine&&!Zt()&&fetch(`https://www.react-grab.com/api/version?source=browser&v=${e}&t=${Date.now()}`,{referrerPolicy:`origin`,keepalive:!0,priority:`low`,cache:`no-store`}).then(e=>e.text()).then(t=>{t&&t!==e&&console.warn(`[React Grab] v${e} is outdated (latest: v${t}). Run \`npx grab@latest upgrade\` to upgrade.`)}).catch(()=>null)}catch{}},$t=e=>typeof e==`object`&&!!e,G=e=>{if(!$t(e))return null;let t={};return typeof e.enabled==`boolean`&&(t.enabled=e.enabled),(e.activationMode===`toggle`||e.activationMode===`hold`)&&(t.activationMode=e.activationMode),typeof e.keyHoldDuration==`number`&&Number.isFinite(e.keyHoldDuration)&&(t.keyHoldDuration=e.keyHoldDuration),typeof e.allowActivationInsideInput==`boolean`&&(t.allowActivationInsideInput=e.allowActivationInsideInput),typeof e.maxContextLines==`number`&&Number.isFinite(e.maxContextLines)&&(t.maxContextLines=e.maxContextLines),typeof e.activationKey==`string`&&(t.activationKey=e.activationKey),typeof e.freezeReactUpdates==`boolean`&&(t.freezeReactUpdates=e.freezeReactUpdates),Object.keys(t).length===0?null:t},en=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?G(JSON.parse(e)):null}catch{return null}},tn=e=>e===`Enter`||e===`NumpadEnter`,K=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),nn=K({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),rn={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},an={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:e=>{e.filePath&&(e.hooks.onOpenFile(e.filePath,e.lineNumber)||Te(e.filePath,e.lineNumber,e.hooks.transformOpenFileUrl),e.hideContextMenu(),e.cleanup())}}]},on=(e,t)=>t?`${e}\n${t}`:e,sn=K({name:`copy-html`,contextMenuAction:e=>({id:`copy-html`,label:`Copy HTML`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>{let n=t.elements.map(e=>y(e.outerHTML)).join(`
|
|
13
|
+
|
|
14
|
+
`),r=await t.hooks.transformHtmlContent(n,t.elements);return r?St(on(r,await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}):!1})}})}),cn=K({name:`copy-styles`,contextMenuAction:e=>({id:`copy-styles`,label:`Copy styles`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>St(on(t.elements.map(T).join(`
|
|
15
|
+
|
|
16
|
+
`),await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}))}}),cleanup:E}),ln=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,un=`react-grab-comment-items`,dn=`react-grab-history-items`,fn=`react-grab-clear-confirmed`,pn=()=>{try{let e=sessionStorage.getItem(dn);e&&!sessionStorage.getItem(un)&&sessionStorage.setItem(un,e),sessionStorage.removeItem(dn)}catch{}},q=()=>{try{let e=sessionStorage.getItem(un);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},J=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},mn=e=>{let t=e;for(;t.length>0;){let e=JSON.stringify(t);if(new Blob([e]).size<=2097152)return t;t=t.slice(0,-1)}return t},hn=e=>{gn=mn(e);try{sessionStorage.setItem(un,JSON.stringify(gn))}catch{}return gn};let gn=[],Y=!1;typeof window<`u`&&(pn(),gn=q(),Y=J(fn));const _n=()=>gn,vn=e=>hn([{...e,id:ln(`comment`)},...gn].slice(0,20)),yn=e=>{hn(gn.filter(t=>t.id!==e))},bn=()=>hn([]),xn=()=>Y,Sn=()=>{Y=!0;try{sessionStorage.setItem(fn,`1`)}catch{}},Cn=e=>{let t=e.left+e.width/2,n=e.top+e.height/2,r=n,i=window.innerHeight-n,a=t,o=window.innerWidth-t,s=Math.min(r,i,a,o);return s===r?`top`:s===a?`left`:s===o?`right`:`bottom`},wn=[nn,rn,sn,cn,an];let Tn=!1;const En=new Set,Dn=e=>{if(typeof window>`u`)return yt();let u={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,...en(),...e};if(u.enabled===!1||Tn)return yt();Tn=!0,Qt();let{enabled:g,...te}=u;return d(e=>{let u=!1,d,g=Gt(te),{store:y,actions:x}=mt({theme:Ut,keyHoldDuration:g.store.options.keyHoldDuration??100}),S=l(()=>y.current.state===`holding`),C=l(()=>y.current.state===`active`),xe=l(()=>y.current.state===`active`&&y.current.phase===`frozen`),w=l(()=>y.current.state===`active`&&(y.current.phase===`dragging-select`||y.current.phase===`dragging-reposition`)),Ee=l(()=>{if(!w())return!1;let e=Math.abs(y.pointer.x+window.scrollX-y.dragStart.x),t=Math.abs(y.pointer.y+window.scrollY-y.dragStart.y);return e>2||t>2}),Oe=l(()=>y.current.state===`active`&&y.current.phase===`dragging-reposition`),je=l(()=>y.current.state===`active`&&y.current.phase===`justDragged`),T=l(()=>y.current.state===`copying`),E=l(()=>T()||y.selectionInteractionLockDepth>0),D=l(()=>y.current.state===`justCopied`),O=l(()=>y.current.state===`active`&&!!y.current.isPromptMode),k=l(()=>y.pendingCommentMode||O()),ze=l(()=>y.current.state===`active`&&!!y.current.isPromptMode&&!!y.current.isPendingDismiss);c(i(C,(e,t)=>{e&&!t?(ke(y.pointer.x,y.pointer.y),Ae(),document.body.style.touchAction=`none`):!e&&t&&(Se(),ge(),document.body.style.touchAction=``)}));let Be=ne(),[A,j]=a(Be?!Be.collapsed:!0),[Ve,He]=a(0),[Ue,We]=a(0),[Ge,Ke]=a(Be),[M,qe]=a(!1),[Je,Ye]=a(_n()),[Xe,Ze]=a(null),[Qe,N]=a(null),[$e,et]=a(null),tt,nt=null,P=new Map,[rt,it]=a(0),[at,ot]=a(!1),st=[],ct=new WeakMap,lt=()=>{ct=new WeakMap},ut=e=>{let t=Ge()??ne(),n={edge:t?.edge??`bottom`,ratio:t?.ratio??.5,collapsed:t?.collapsed??!1,enabled:t?.enabled??!0,defaultAction:t?.defaultAction??`comment`,...e};ee(n),Ke(n);for(let e of En)e(n)},dt=e=>P.get(e)??[],ft=e=>{let t=e.elementSelectors??[];if(t.length===0)return[];let n=[];for(let e of t)if(e)try{let t=document.querySelector(e);f(t)&&n.push(t)}catch{}return n},pt=e=>{let t=dt(e.id),n=t.filter(e=>f(e));if(t.length>0&&n.length===t.length)return n;let r=ft(e);return r.length>0?(P.set(e.id,r),r):n},ht=e=>pt(e)[0],gt=l(()=>{Xe();let e=new Set;for(let t of Je())pt(t).length===0&&e.add(t.id);return e},void 0,{equals:(e,t)=>{if(e.size!==t.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}}),_t=()=>{V.timerId!==null&&(clearTimeout(V.timerId),V.timerId=null)},L=()=>{V.copyWaiting=!1,V.holdTimerFired=!1,V.startTimestamp=null};c(()=>{if(y.current.state!==`holding`){_t();return}V.startTimestamp=Date.now(),V.timerId=window.setTimeout(()=>{if(V.timerId=null,V.copyWaiting){V.holdTimerFired=!0;return}x.activate()},y.keyHoldDuration),s(_t)}),c(()=>{if(y.current.state!==`active`||y.current.phase!==`justDragged`)return;let e=setTimeout(()=>{x.finishJustDragged()},fe);s(()=>clearTimeout(e))}),c(()=>{if(y.current.state!==`justCopied`)return;let e=setTimeout(()=>{x.finishJustCopied()},fe);s(()=>clearTimeout(e))}),c(i(S,(e,t=!1)=>{!t||e||!C()||(g.store.options.activationMode!==`hold`&&x.setWasActivatedByToggle(!0),g.hooks.onActivate())}));let yt=(e,t,n)=>{Ct(e,t,n),x.clearInputText()},xt=()=>{let e=y.frozenElement||X();e&&x.enterPromptMode({x:y.pointer.x,y:y.pointer.y},e)},Ct=(e,t,n)=>{x.setCopyStart({x:t,y:n},e)},R={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},z=null,[Dt,Ot]=a(null),kt=(e,t)=>{z!==null&&clearTimeout(z),Ot(null),z=window.setTimeout(()=>{Ot({x:e,y:t}),z=null},32)},B=null,V={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},H=null,[Lt,U]=a(!1),Rt=0,Bt=!1,W=null,Wt=()=>{Bt=!0,W!==null&&window.clearTimeout(W),W=window.setTimeout(()=>{Bt=!1,W=null},fe)},Zt=()=>{W!==null&&(window.clearTimeout(W),W=null),Bt=!1},Qt=0,$t=0,G=null,en=null,K=!1,nn=null,[rn,an]=a(null),[on,sn]=a(void 0),[cn,un]=a([]),[dn,fn]=a(0),pn=Kt(be,F),q=Xt(()=>y.pointer,()=>w(),e=>{if(Oe()){if(x.shiftDragStart(e),H){H={x:H.x+e.x,y:H.y+e.y};return}let{pageX:t,pageY:n}=qn(y.pointer.x,y.pointer.y);H={x:t,y:n}}}),J=l(()=>C()&&!T()),mn=new Map,hn=(e,t)=>{let n=ln(`grabbed`),r={id:n,bounds:e,createdAt:Date.now(),element:t};x.addGrabbedBox(r),g.hooks.onGrabbedBox(e,t);let i=window.setTimeout(()=>{mn.delete(n),x.removeGrabbedBox(n)},fe);mn.set(n,i)},gn=async e=>{let t=await Promise.all(e.map(async e=>{let t=await de(e),n=t?.componentName??null,r=t?.filePath,i=t?.lineNumber??void 0,a=t?.columnNumber??void 0;n||=Ie(e);let o=e instanceof HTMLElement?e.innerText?.slice(0,100):void 0;return{tagName:b(e),id:e.id||void 0,className:e.getAttribute(`class`)||void 0,textContent:o,componentName:n??void 0,filePath:r,lineNumber:i,columnNumber:a}}));window.dispatchEvent(new CustomEvent(`react-grab:element-selected`,{detail:{elements:t}}))},Y=new Map,Dn=e=>{let t=Y.get(e);t!==void 0&&(window.clearTimeout(t),Y.delete(e))},On=()=>{for(let e of Y.values())window.clearTimeout(e);Y.clear()},kn=e=>{Dn(e);let t=window.setTimeout(()=>{Y.delete(e),x.updateLabelInstance(e,`fading`),setTimeout(()=>{Y.delete(e),x.removeLabelInstance(e)},150)},fe);Y.set(e,t)},An=(e,t)=>{if(t)Dn(e);else{let t=y.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&kn(e)}},jn=(e,t,n,r,i)=>{x.clearLabelInstances(),On();let a=ln(`label`),o=e.x+e.width/2,s=e.width/2,c=i?.mouseX,l=c===void 0?void 0:c-o,u={id:a,bounds:e,boundsMultiple:i?.boundsMultiple,tagName:t,componentName:n,status:r,createdAt:Date.now(),element:i?.element,elements:i?.elements,mouseX:c,mouseXOffsetFromCenter:l,mouseXOffsetRatio:l!==void 0&&s>0?l/s:void 0,hideArrow:i?.hideArrow};return x.addLabelInstance(u),a},Mn=()=>{On(),x.clearLabelInstances()},Nn=(e,t,n)=>{t?x.updateLabelInstance(e,`copied`):x.updateLabelInstance(e,`error`,n||`Unknown error`),kn(e)},Pn=async(e,t,n,r)=>{Zt(),y.current.state!==`copying`&&x.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=Tt(e,`Action failed`)}t&&Nn(t,i,a),y.current.state===`copying`&&(i&&x.completeCopy(n),r?Q():i?(x.activate(),Wt()):x.unfreeze())},Fn=e=>{let{copiedElements:t,content:n,extraPrompt:r,elementName:i,tagName:a,componentName:o}=e;if(g.hooks.onCopySuccess(t,n),!r)return;let s=t.length>0;if(s){let e=Je();for(let[n,i]of P.entries()){if(!(i.length===t.length&&i.every((e,n)=>e===t[n])))continue;let a=e.find(e=>e.id===n);if(a&&a.commentText===r){yn(n),P.delete(n);break}}}let c=t.map((e,t)=>Le(e,t===0)),l=vn({content:n,elementName:i??`element`,tagName:a??`div`,componentName:o??void 0,elementsCount:t.length,previewBounds:t.map(e=>F(e)),elementSelectors:c,commentText:r,timestamp:Date.now()});Ye(l),it(e=>e+1);let u=l[0];u&&s&&P.set(u.id,[...t]);let d=new Set(l.map(e=>e.id));for(let e of P.keys())d.has(e)||P.delete(e)},In=(e,t,n)=>{let r=e[0],i=n??(r?Ie(r):null),a=r?b(r):null,o=i??a??void 0;return Et({maxContextLines:g.store.options.maxContextLines,getContent:g.store.options.getContent,componentName:o},{onBeforeCopy:g.hooks.onBeforeCopy,transformSnippet:g.hooks.transformSnippet,transformCopyContent:g.hooks.transformCopyContent,onAfterCopy:g.hooks.onAfterCopy,onCopySuccess:(e,n)=>{Fn({copiedElements:e,content:n,extraPrompt:t,elementName:o,tagName:a,componentName:i})},onCopyError:g.hooks.onCopyError},e,t)},Ln=async(e,t,n)=>{if(e.length===0)return;let r=[],i=[];for(let t of e){let{wasIntercepted:e,pendingResult:n}=g.hooks.onElementSelect(t);e||r.push(t),n&&i.push(n),g.store.theme.grabbedBoxes.enabled&&hn(F(t),t)}if(await Ce(),r.length>0)await In(r,t,n);else if(i.length>0&&!(await Promise.all(i)).every(Boolean))throw Error(`Failed to copy`);gn(e)},Rn=e=>{let{element:t,cursorX:n,selectedElements:r,extraPrompt:i,shouldDeactivateAfter:a,onComplete:o,dragRect:s}=e,c=r??[t],l=s??y.frozenDragRect,u=c.length>1,d=l&&u?Nt(l):Ft(F(t)),f=u?d.x+d.width/2:n,p=b(t);Zt(),x.startCopy();let m=p?jn(d,p,void 0,`copying`,{element:t,mouseX:f,elements:r}):null;ue(t).then(async e=>{await Pn(()=>Ln(c,i,e??void 0),m,t,a),o?.()}).catch(e=>{m&&Nn(m,!1,Tt(e,`Action failed`)),y.current.state===`copying`&&x.unfreeze()})},X=l(()=>{if(y.viewportVersion,!J()||Ee()||E())return null;let e=y.detectedElement;return f(e)?e:null}),zn=l(()=>y.frozenElement||(xe()?null:X()));c(()=>{let e=y.detectedElement;if(!e)return;let t=setInterval(()=>{f(e)||x.setDetectedElement(null)},100);s(()=>clearInterval(t))}),c(i(zn,e=>{if(G!==null&&(clearTimeout(G),G=null),!e){an(null);return}G=window.setTimeout(()=>{G=null,an(e)},100)})),s(()=>{G!==null&&(clearTimeout(G),G=null)}),c(()=>{let e=y.frozenElements;s(De(e))}),c(i(C,e=>{e&&g.store.options.freezeReactUpdates&&s(Me())}));let Bn=()=>{if(y.isTouchMode&&w()){let e=y.detectedElement;return!e||me(e)?void 0:e}let e=zn();if(!(!e||me(e)))return e},Vn=l(()=>Bn()),Hn=()=>Vn()?y.isTouchMode&&w()?J():J()&&!Ee():!1,Un=l(()=>{y.viewportVersion;let e=y.frozenElements;if(e.length===0)return[];let t=y.frozenDragRect;return t&&e.length>1?[Nt(t)]:e.filter(e=>e!==null).map(e=>F(e))}),Wn=l(()=>{if(!Lt()||y.pendingCommentMode||K)return null;let e=y.detectedElement;return!f(e)||me(e)||y.frozenElements.includes(e)?null:e}),Gn=l(()=>{y.viewportVersion;let e=Wn();if(e)return F(e)}),Kn=l(()=>{y.viewportVersion;let e=y.frozenElements;if(e.length>0){let t=Un();if(e.length===1){let e=t[0];if(e)return e}let n=y.frozenDragRect;return n?t[0]??Nt(n):Ft(Ht(t))}let t=Vn();if(t)return F(t)}),qn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),Jn=(e,t)=>{let{pageX:n,pageY:r}=qn(e,t);return{x:Math.abs(n-y.dragStart.x),y:Math.abs(r-y.dragStart.y)}},Yn=l(()=>{if(!w())return!1;let e=Jn(y.pointer.x,y.pointer.y);return e.x>2||e.y>2}),Xn=(e,t)=>{let{pageX:n,pageY:r}=qn(e,t),i=Math.min(y.dragStart.x,n),a=Math.min(y.dragStart.y,r),o=Math.abs(n-y.dragStart.x),s=Math.abs(r-y.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},Zn=e=>e.code===`Space`||e.key===` `,Qn=()=>{if(!w())return;x.startDragReposition();let{pageX:e,pageY:t}=qn(y.pointer.x,y.pointer.y);H={x:e,y:t}},$n=()=>{x.stopDragReposition(),H=null},er=l(()=>{if(y.viewportVersion,!Yn())return;let e=Xn(y.pointer.x,y.pointer.y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),tr=l(()=>{if(y.viewportVersion,!Yn())return[];let e=Dt();if(!e)return[];let t=Xn(e.x,e.y),n=At(t,be);return(n.length>0?n:At(t,be,!1)).map(e=>F(e))}),nr=l(()=>{let e=tr();if(e.length>0)return e;let t=Gn();return t?[...Un(),t]:Un()}),rr=l(()=>(y.viewportVersion,O()||y.frozenElements.length<2?[]:y.frozenElements.filter(f).map(e=>({tagName:b(e)||`element`,componentName:Ie(e)??void 0,bounds:F(e)})))),ir=l(()=>{if(T()||O()){y.viewportVersion;let e=y.frozenElement||X();return e?{x:I(F(e)).x+y.copyOffsetFromCenterX,y:y.copyStart.y}:{x:y.copyStart.x,y:y.copyStart.y}}return{x:y.pointer.x,y:y.pointer.y}}),ar=l(()=>{if(!Lt()||y.frozenElements.length!==1)return;y.viewportVersion;let e=y.frozenElements[0];if(!f(e))return;let t=ct.get(e);if(t===void 0)return;let n=F(e);return n.x+n.width*t});c(i(()=>[X(),y.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&x.setLastGrabbed(null),e&&g.hooks.onElementHover(e)})),c(i(()=>X(),e=>{let t=++Qt,n=()=>{Qt===t&&x.setSelectionSource(null,null)};if(!e){n();return}de(e).then(e=>{if(Qt===t){if(!e){n();return}x.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{Qt===t&&x.setSelectionSource(null,null)})}));let or=l(()=>y.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),sr=l(()=>y.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));c(i(l(()=>{let e=C(),t=w(),n=T(),r=O(),i=X(),a=er(),o=g.store.theme.enabled,s=g.store.theme.selectionBox.enabled,c=g.store.theme.dragBox.enabled,l=Yn(),u=zn(),d=D();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(o&&s&&e&&!n&&!d&&!t&&u!=null),isDragBoxVisible:!!(o&&c&&e&&!n&&l),targetElement:i,dragBounds:a?{x:a.x,y:a.y,width:a.width,height:a.height}:null,grabbedBoxes:[...or()],labelInstances:[...sr()],selectionFilePath:y.selectionFilePath,toolbarState:Ge()}}),e=>{g.hooks.onStateChange(e)})),c(i(()=>[O(),y.pointer.x,y.pointer.y,X()],([e,t,n,r])=>{g.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),c(i(()=>[ri(),Kn(),X()],([e,t,n])=>{g.hooks.onSelectionBox(!!e,t??null,n)})),c(i(()=>[ui(),er()],([e,t])=>{g.hooks.onDragBox(!!e,t??null)})),c(i(()=>[fi(),di(),ir(),X(),y.selectionFilePath,y.selectionLineNumber],([e,t,n,r,i,a])=>{g.hooks.onElementLabel(!!e,t,{x:n.x,y:n.y,content:``,element:r??void 0,tagName:r&&b(r)||void 0,filePath:i??void 0,lineNumber:a??void 0})}));let Z=null,cr=e=>{if(e){if(!Z){Z=document.createElement(`style`),Z.setAttribute(`data-react-grab-cursor`,``);let e=ce();e&&(Z.nonce=e),se(Z),document.head.appendChild(Z)}Z.textContent=`* { cursor: ${e} !important; }`}else Z&&=(Z.remove(),null)};c(i(()=>[C(),T(),O()],([e,t,n])=>{cr(t?`progress`:e&&!n?`crosshair`:null)}));let lr=()=>{let e=S();x.activate(),e||g.hooks.onActivate()},Q=()=>{let e=w(),t=y.previouslyFocusedElement;$n(),x.deactivate(),U(!1),Mr(),en=null,K=!1,e&&(document.body.style.userSelect=``),B&&window.clearTimeout(B),q.stop(),t instanceof HTMLElement&&f(t)&&t.focus(),g.hooks.onDeactivate()},ur=()=>{S()&&x.releaseHold(),C()&&Q(),Zt()},dr=()=>{x.setWasActivatedByToggle(!0),lr()},fr=()=>{x.clearLastCopied();let e=[...y.frozenElements],t=y.frozenElement||X(),n=O()?y.inputText.trim():``;if(!t){Q();return}let r=e.length>0?e:[t],i=r.map(e=>F(e))[0],{x:a,y:o}=I(i),s=a+y.copyOffsetFromCenterX;x.setPointer({x:a,y:o}),x.exitPromptMode(),x.clearInputText(),Rn({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},pr=()=>{if(x.clearLastCopied(),O()){if(ze()){x.clearInputText(),Q();return}x.setPendingDismiss(!0),We(e=>e+1)}},mr=()=>{x.clearInputText(),Q()},hr=()=>{x.setPendingDismiss(!1)},gr=()=>{let e=y.frozenElement||X();e&&yt(e,y.pointer.x,y.pointer.y),xt()},_r=()=>{if(C())Q();else if(A()){let e=Ge()?.defaultAction??`comment`;e===`comment`?x.setPendingCommentMode(!0):(nn=e,K=!0),dr()}},vr=(e,t,n)=>{x.setPendingCommentMode(!1),x.clearInputText(),x.enterPromptMode({x:t,y:n},e)},yr=(e,t)=>{U(!1),x.showContextMenu(t,e),Mr(),Vi(),g.hooks.onContextMenu(e,t)},br=(e,t)=>{let n=nn;if(nn=null,!n)return;let r=g.store.actions.find(e=>e.id===n);if(!r){Ui(le),yr(e,t);return}let i=F(e),a=xi({element:e,filePath:y.selectionFilePath??void 0,lineNumber:y.selectionLineNumber??void 0,tagName:b(e)||void 0,componentName:on(),position:t,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:i,fallbackSelectionBounds:[i],position:t}});r.onAction(a)},xr=()=>{if(A()){if(C()&&k()){Q();return}x.setPendingCommentMode(!0),C()||dr()}},Sr=(e,t,n)=>{let r=n&&Lt()&&!w()&&!y.pendingCommentMode&&!K;if(!A()||O()||xe()&&!r||E()||y.contextMenuPosition!==null)return;if(x.setPointer({x:e,y:t}),R.latestPointerX=e,R.latestPointerY=t,r){let n=ve(e,t);n!==y.detectedElement&&x.setDetectedElement(n);return}let i=performance.now(),a=R.pendingDetectionScheduledAt>0&&i-R.pendingDetectionScheduledAt<200;if(i-R.lastDetectionTimestamp>=32&&!a&&(R.lastDetectionTimestamp=i,R.pendingDetectionScheduledAt=i,setTimeout(()=>{let e=ve(R.latestPointerX,R.latestPointerY);e!==y.detectedElement&&x.setDetectedElement(e),R.pendingDetectionScheduledAt=0})),w()){if(Oe()){let{pageX:n,pageY:r}=qn(e,t);H&&x.shiftDragStart({x:n-H.x,y:r-H.y}),H={x:n,y:r}}kt(e,t);let n=Yt(e,t),r=n.top||n.bottom||n.left||n.right;r&&!q.isActive()?q.start():!r&&q.isActive()&&q.stop()}},Cr=(e,t,n)=>!J()||E()?!1:(!n&&Lt()&&(U(!1),lt()),x.startDrag({x:e,y:t},n),x.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,kt(e,t),g.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),wr=(e,t)=>{let n=y.frozenElements.includes(e);x.toggleFrozenElement(e),Ne();let r=y.frozenElements.includes(e);if(r&&!n){let n=F(e),r=n.width>0?Math.max(0,Math.min(1,(t.x-n.x)/n.width)):0;ct.set(e,r)}else r||ct.delete(e);if(y.frozenElements.length===0){U(!1),lt(),x.unfreeze();return}he(y.frozenElements),U(!0),x.setPointer(t),x.setLastGrabbed(r?e:y.frozenElements[y.frozenElements.length-1]),x.freeze(),Mr()},Tr=()=>{U(!1),lt();let e=y.frozenElements.filter(f);if(e.length===0){x.unfreeze();return}Rn({element:e[0],cursorX:y.pointer.x,selectedElements:e,shouldDeactivateAfter:y.wasActivatedByToggle})},Er=(e,t,n)=>{let r=At(e,be),i=r.length>0?r:At(e,be,!1);if(i.length===0)return;let a=n&&!y.pendingCommentMode&&!K;if(a&&x.addFrozenElements(i),he(a?y.frozenElements:i),g.hooks.onDragEnd(i,e),a){let e=i[i.length-1];U(!0),Ne(),x.setPointer(I(F(e))),x.setLastGrabbed(e),x.freeze(),Mr();return}let o=i[0],s=I(F(o));x.setPointer(s),x.setFrozenElements(i);let c=Pt(e);if(x.setFrozenDragRect(c),x.freeze(),x.setLastGrabbed(o),y.pendingCommentMode){vr(o,s.x,s.y);return}if(K){K=!1,nn?br(o,s):yr(o,s);return}let l=y.wasActivatedByToggle&&!t;Rn({element:o,cursorX:s.x,selectedElements:i,shouldDeactivateAfter:l,dragRect:c})},Dr=(e,t,n,r)=>{let i=f(y.frozenElement)?y.frozenElement:null,a=f(en)?en:null,o=ye(e,t).find(be)??null,s=o??(f(y.detectedElement)?y.detectedElement:null),c=s??i??a;if(!c)return;if(r&&!y.pendingCommentMode&&!K){o!==null&&wr(o,{x:e,y:t});return}let l,u,d=s===null&&i===c,p=s===null&&i===null&&a===c;if(d)l=y.pointer.x,u=y.pointer.y;else if(p){let e=I(F(c));l=e.x,u=e.y}else l=e,u=t;if(en=null,y.pendingCommentMode){vr(c,l,u);return}if(K){K=!1;let{wasIntercepted:e}=g.hooks.onElementSelect(c);if(e)return;he([c]),x.setFrozenElement(c);let t={x:l,y:u};x.setPointer(t),x.freeze(),nn?br(c,t):yr(c,t);return}let m=y.wasActivatedByToggle&&!n;x.setLastGrabbed(c),Rn({element:c,cursorX:l,shouldDeactivateAfter:m})},Or=()=>{w()&&($n(),x.cancelDrag(),q.stop(),document.body.style.userSelect=``)},kr=(e,t,n,r)=>{if(!w())return;z!==null&&(clearTimeout(z),z=null),Ot(null);let i=Jn(e,t),a=i.x>2||i.y>2,o=a?Xn(e,t):null;a?x.endDrag():x.cancelDrag(),$n(),q.stop(),document.body.style.userSelect=``,o?Er(o,n,r):Dr(e,t,n,r)},$=bt(),Ar=Jt(),jr=e=>{let t;try{t=Ar.originalKeyDescriptor?.get?Ar.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||tn(e.code),r=C()||S();return n&&r&&!O()&&!y.wasActivatedByToggle&&$e()===null?(Ar.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};$.addDocumentListener(`keydown`,jr,{capture:!0}),$.addDocumentListener(`keyup`,jr,{capture:!0}),$.addDocumentListener(`keypress`,jr,{capture:!0});let Mr=()=>{un([]),fn(0),pn.clearHistory()},Nr=e=>{x.setFrozenElement(e),x.freeze(),en=e;let t=I(F(e));x.setPointer(t),y.contextMenuPosition!==null&&x.showContextMenu(t,e)},Pr=e=>{let t=jt(F(e)),n=ye(t.x,t.y).filter(be).reverse();un(n),fn(Math.max(0,n.indexOf(e)))},Fr=e=>{let t=cn()[e];t&&(fn(e),pn.clearHistory(),Nr(t))},Ir=e=>{if(!C()||O()||Lt()||!ae.has(e.key))return!1;let t=zn(),n=!t;if(t||=ve(window.innerWidth/2,window.innerHeight/2),!t)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Mr();let r=pn.findNext(e.key,t);return!r&&!n?!1:(e.preventDefault(),e.stopPropagation(),Nr(r??t),!0)}cn().length===0&&Pr(t);let r=pn.findNext(e.key,t)??t;e.preventDefault(),e.stopPropagation(),Nr(r);let i=cn().indexOf(r);return i===-1?Pr(r):fn(i),!0},Lr=e=>{if(!tn(e.code)||p(e)||E())return!1;let t=y.lastCopiedElement;if(!S()&&!O()&&!C()&&t&&f(t)&&!y.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let n=I(F(t));return x.setPointer(n),yt(t,n.x,n.y),x.setFrozenElement(t),x.clearLastCopied(),xt(),C()||lr(),!0}if(S()&&!O()){e.preventDefault(),e.stopImmediatePropagation();let t=y.frozenElement||X();return t&&yt(t,y.pointer.x,y.pointer.y),x.setPointer({x:y.pointer.x,y:y.pointer.y}),t&&x.setFrozenElement(t),xt(),B!==null&&(window.clearTimeout(B),B=null),C()||lr(),!0}return!1},Rr=e=>{if(e.key?.toLowerCase()!==`o`||O()||!C()||!(e.metaKey||e.ctrlKey))return!1;let t=y.selectionFilePath,n=y.selectionLineNumber;return t?(e.preventDefault(),e.stopPropagation(),g.hooks.onOpenFile(t,n??void 0)||Te(t,n??void 0,g.hooks.transformOpenFileUrl),!0):!1},zr=l(()=>cn().map(e=>({tagName:b(e)||`element`,componentName:Ie(e)??void 0}))),Br=l(()=>({items:zr(),activeIndex:dn(),isVisible:cn().length>0})),Vr=e=>{if(!(!g.store.options.allowActivationInsideInput&&p(e))&&!(!Vt(e,g.store.options)&&((e.metaKey||e.ctrlKey)&&!oe.includes(e.key)&&!tn(e.code)&&(C()&&!y.wasActivatedByToggle?Q():S()&&(_t(),L(),x.releaseHold())),!tn(e.code)||!S()))){if((C()||S())&&!O()&&(e.preventDefault(),tn(e.code)&&e.stopImmediatePropagation()),C()){if(y.wasActivatedByToggle&&g.store.options.activationMode!==`hold`||e.repeat)return;B!==null&&window.clearTimeout(B),B=window.setTimeout(()=>{Q()},200);return}if(S()&&e.repeat){if(V.copyWaiting){let e=V.holdTimerFired;L(),e&&x.activate()}return}if(!(T()||D())&&!S()){let t=g.store.options.keyHoldDuration??100;p(e)?_(e)?t+=600:t+=400:m()&&(t+=600),L(),x.startHold(t)}}};$.addWindowListener(`keydown`,e=>{if(jr(e),!A()){Vt(e,g.store.options)&&!e.repeat&&He(e=>e+1);return}let t=tn(e.code)&&S()&&!O(),n=v(e,`data-react-grab-input`);if(O()&&Vt(e,g.store.options)&&!e.repeat&&!n){e.preventDefault(),e.stopPropagation(),pr();return}if(e.key===`Escape`&&$e()!==null)return;if(e.key===`Escape`&&Xe()!==null){ji();return}if(e.key===`Escape`&&Qe()!==null){Mi();return}let r=v(e,`data-react-grab-ignore-events`)&&!t;if(O()||r)return e.key===`Escape`&&(O()?pr():y.wasActivatedByToggle&&Q()),r&&ae.has(e.key)&&Ir(e),void 0;if(w()&&Zn(e)){e.repeat||Qn(),e.preventDefault(),e.stopPropagation();return}if(e.key===`Escape`&&(S()||y.wasActivatedByToggle)){Q();return}C()&&!oe.includes(e.key)&&e.preventDefault();let i=Date.now()-Rt<200;Ir(e)||Lr(e)||Rr(e)||i||Vr(e)},{capture:!0}),$.addWindowListener(`keyup`,e=>{if(jr(e))return;if(Zn(e)&&Oe()&&($n(),e.preventDefault(),e.stopPropagation()),e.key===`Shift`&&Lt()){w()&&Or(),Tr();return}if(v(e,`data-react-grab-ignore-events`))return;let t=qt(g.store.options),n=t.metaKey||t.ctrlKey?h()?!e.metaKey:!e.ctrlKey:t.shiftKey&&!e.shiftKey||t.altKey&&!e.altKey,r=g.store.options.activationKey?typeof g.store.options.activationKey==`function`?g.store.options.activationKey(e):zt(g.store.options.activationKey)(e):It(e.key,e.code);if(D()||Bt){(r||n)&&(Zt(),Q());return}if(!S()&&!C()||O())return;let i=!!g.store.options.activationKey,a=g.store.options.activationMode===`hold`,o=w();if(C()){let e=y.contextMenuPosition!==null;if(n){if(y.wasActivatedByToggle&&g.store.options.activationMode!==`hold`||e)return;Q()}else if(a&&r){if(B!==null&&(window.clearTimeout(B),B=null),e||o)return;Q()}else !i&&r&&B!==null&&(window.clearTimeout(B),B=null);return}if(r||n){if(y.wasActivatedByToggle&&g.store.options.activationMode!==`hold`)return;if(S()||V.holdTimerFired&&n){_t();let t=(V.startTimestamp?Date.now()-V.startTimestamp:0)>=200,n=V.holdTimerFired&&t&&(g.store.options.allowActivationInsideInput||!p(e));L(),n?x.activate():x.releaseHold()}else Q()}},{capture:!0}),$.addDocumentListener(`copy`,()=>{S()&&(V.copyWaiting=!0)}),$.addWindowListener(`keypress`,jr,{capture:!0}),$.addWindowListener(`pointermove`,e=>{if(!e.isPrimary)return;let t=e.pointerType===`touch`;x.setTouchMode(t),!v(e,`data-react-grab-ignore-events`)&&y.contextMenuPosition===null&&(E()||t&&!S()&&!C()||((t?S():C())&&!O()&&xe()&&!e.shiftKey&&!Lt()&&(x.unfreeze(),Mr()),Sr(e.clientX,e.clientY,e.shiftKey)))},{passive:!0}),$.addWindowListener(`pointerdown`,e=>{if(e.button===0&&e.isPrimary&&(x.setTouchMode(e.pointerType===`touch`),!v(e,`data-react-grab-ignore-events`)&&y.contextMenuPosition===null&&Qe()===null)){if(O()){let t=Kn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?fr():pr();return}if(E()){e.preventDefault(),e.stopImmediatePropagation();return}Cr(e.clientX,e.clientY,e.shiftKey)&&(e.pointerId!==void 0&&document.documentElement.setPointerCapture(e.pointerId),e.preventDefault(),e.stopImmediatePropagation())}},{capture:!0}),$.addWindowListener(`pointerup`,e=>{if(e.button!==0||!e.isPrimary||v(e,`data-react-grab-ignore-events`)||y.contextMenuPosition!==null)return;let t=J()||E()||w(),n=e.metaKey||e.ctrlKey;kr(e.clientX,e.clientY,n,e.shiftKey),t&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),$.addWindowListener(`contextmenu`,e=>{if(!J()||T()||O())return;let t=v(e,`data-react-grab-ignore-events`);if(t&&cn().length>0)Mr();else if(t)return;if(y.contextMenuPosition!==null){e.preventDefault();return}e.preventDefault(),e.stopPropagation();let n=ve(e.clientX,e.clientY);if(!n)return;let r=y.frozenElements;r.length>1&&r.includes(n)?he(r):(he([n]),x.setFrozenElement(n));let i={x:e.clientX,y:e.clientY};x.setPointer(i),x.freeze(),yr(n,i)},{capture:!0}),$.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Or()}),$.addWindowListener(`click`,e=>{v(e,`data-react-grab-ignore-events`)||y.contextMenuPosition===null&&(J()||T()||je())&&(e.preventDefault(),e.stopImmediatePropagation(),y.wasActivatedByToggle&&!T()&&!O()&&!e.shiftKey&&(S()?x.setWasActivatedByToggle(!1):Q()))},{capture:!0}),$.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){x.clearGrabbedBoxes();let e=y.activationTimestamp;C()&&!O()&&e!==null&&Date.now()-e>500&&Q()}}),$.addWindowListener(`blur`,()=>{Or(),S()&&(_t(),x.releaseHold(),L()),U(!1)}),$.addWindowListener(`focus`,()=>{Rt=Date.now()}),$.addWindowListener(`focusin`,e=>{v(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let Hr=()=>{if(!(y.isTouchMode&&!S()&&!C())&&A()&&!O()&&!E()&&!xe()&&!w()&&y.contextMenuPosition===null&&y.frozenElements.length===0){let e=ve(y.pointer.x,y.pointer.y);x.setDetectedElement(e)}},Ur=null,Wr=null,Gr=()=>{Mt(),Hr(),x.incrementViewportVersion(),x.updateContextMenuPosition()};$.addWindowListener(`scroll`,Gr,{capture:!0});let Kr=window.innerWidth,qr=window.innerHeight;$.addWindowListener(`resize`,()=>{let e=window.innerWidth,t=window.innerHeight;if(Kr>0&&qr>0){let n=e/Kr,r=t/qr,i=Math.abs(n-r)<_e,a=Math.abs(n-1)>_e;i&&a&&x.setPointer({x:y.pointer.x*n,y:y.pointer.y*r})}Kr=e,qr=t,Gr()});let Jr=window.visualViewport;if(Jr){let{signal:e}=$;Jr.addEventListener(`resize`,Gr,{signal:e}),Jr.addEventListener(`scroll`,Gr,{signal:e})}let Yr=()=>{Wr===null&&(Wr=ie(()=>{Wr=null,x.incrementViewportVersion()}))};c(()=>{if(g.store.theme.enabled&&(C()||T()||y.labelInstances.length>0||y.grabbedBoxes.length>0)){if(Ur!==null)return;Ur=window.setInterval(()=>{Yr()},100);return}Ur!==null&&(window.clearInterval(Ur),Ur=null),Wr!==null&&(we(Wr),Wr=null)}),s(()=>{Ur!==null&&window.clearInterval(Ur),Wr!==null&&we(Wr)}),$.addDocumentListener(`copy`,e=>{O()||v(e,`data-react-grab-ignore-events`)||(J()||T())&&e.preventDefault()},{capture:!0}),s(()=>{$.abort(),z!==null&&window.clearTimeout(z),B&&window.clearTimeout(B),Zt(),nt!==null&&we(nt),mn.forEach(e=>window.clearTimeout(e)),mn.clear(),On(),q.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,cr(null),Ar.restore()});let Xr=vt(Re),Zr=l(()=>g.store.theme.enabled),Qr=l(()=>g.store.theme.selectionBox.enabled),$r=l(()=>g.store.theme.elementLabel.enabled),ei=l(()=>g.store.theme.dragBox.enabled),ti=l(()=>D()||M()&&!xe()),ni=l(()=>tr().length>0),ri=l(()=>!Zr()||!Qr()||ti()?!1:ni()?!0:Hn()),ii=l(()=>{let e=Vn();if(e)return b(e)||void 0});c(i(()=>rn(),e=>{let t=++$t;if(!e){sn(void 0);return}ue(e).then(e=>{$t===t&&sn(e??void 0)}).catch(()=>{$t===t&&sn(void 0)})}));let ai=l(()=>y.contextMenuPosition!==null||!$r()||ti()?!1:Hn()),oi=new Map,si=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?F(n):e.bounds,i=oi.get(e.id),a=i&&i.bounds.x===r.x&&i.bounds.y===r.y&&i.bounds.width===r.width&&i.bounds.height===r.height;if(i&&i.status===e.status&&i.errorMessage===e.errorMessage&&a)return i;let o=r.x+r.width/2,s=r.width/2,c;c=e.mouseXOffsetRatio!==void 0&&s>0?o+e.mouseXOffsetRatio*s:e.mouseXOffsetFromCenter===void 0?e.mouseX??o:o+e.mouseXOffsetFromCenter;let l={...e,bounds:r,mouseX:c};return oi.set(e.id,l),l},ci=l(()=>{if(!Zr()||!g.store.theme.grabbedBoxes.enabled)return[];y.viewportVersion;let e=new Set(y.labelInstances.map(e=>e.id));for(let t of oi.keys())e.has(t)||oi.delete(t);return y.labelInstances.map(si)}),li=l(()=>!Zr()||!g.store.theme.grabbedBoxes.enabled?[]:(y.viewportVersion,y.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:F(e.element)}))),ui=l(()=>Zr()&&ei()&&J()&&Yn()),di=l(()=>T()?`processing`:`hover`),fi=l(()=>{if(!Zr())return!1;let e=$r(),t=O(),n=T(),r=J(),i=w(),a=!!zn(),o=M(),s=xe();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),pi=l(()=>{y.viewportVersion;let e=y.contextMenuElement;return e?F(e):null}),mi=l(()=>(y.viewportVersion,y.contextMenuPosition)),hi=l(()=>{let e=y.contextMenuElement;if(!e)return;let t=y.frozenElements.length;return t>1?`${t} elements`:b(e)||void 0}),[gi]=t(()=>({element:y.contextMenuElement,frozenCount:y.frozenElements.length}),async({element:e,frozenCount:t})=>{if(e&&!(t>1))return await ue(e)??void 0}),[_i]=t(()=>y.contextMenuElement,async e=>e?de(e):null),vi=async e=>{x.incrementSelectionInteractionLockDepth();try{return await e()}finally{x.decrementSelectionInteractionLockDepth()}},yi=(e,t,n,r,i)=>async a=>{await vi(async()=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??y.contextMenuPosition??y.pointer,l=Un(),u=pi()??o,d=t.length>1,f=d?Ft(Ht(l)):u,p=y.wasActivatedByToggle,m;if(m=d?l:u?[u]:s,x.hideContextMenu(),f){let i=d?f.x+f.width/2:c.x,o=jn(f,n||`element`,r,`copying`,{element:e,mouseX:i,elements:d?t:void 0,boundsMultiple:m}),s=!1,l;try{s=await a(),s||(l=`Failed to copy`)}catch(e){l=Tt(e,`Action failed`)}Nn(o,s,l)}else try{await a()}catch{}p?Q():x.unfreeze()})},bi=()=>{setTimeout(()=>{x.hideContextMenu()},0)},xi=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:o,performWithFeedbackOptions:s,shouldDeferHideContextMenu:c,onBeforeCopy:l,onBeforePrompt:u,customEnterPromptMode:d}=e,f=y.frozenElements.length>0?y.frozenElements:[t],p=c?bi:x.hideContextMenu,m={element:t,elements:f,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:d??(()=>{Mn(),u?.(),yt(t,o.x,o.y),x.setPointer({x:o.x,y:o.y}),x.setFrozenElement(t),xt(),C()||lr(),p()}),copy:()=>{l?.(),Rn({element:t,cursorX:o.x,selectedElements:f.length>1?f:void 0,shouldDeactivateAfter:y.wasActivatedByToggle}),p()},hooks:{transformHtmlContent:g.hooks.transformHtmlContent,onOpenFile:g.hooks.onOpenFile,transformOpenFileUrl:g.hooks.transformOpenFileUrl},performWithFeedback:yi(t,f,i,a,s),hideContextMenu:p,cleanup:()=>{y.wasActivatedByToggle?Q():x.unfreeze()}},h=g.hooks.transformActionContext(m);return{...m,...h}},Si=l(()=>{let e=y.contextMenuElement;if(!e)return;let t=_i(),n=y.contextMenuPosition??y.pointer;return xi({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:hi(),componentName:gi(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{en=null},customEnterPromptMode:()=>{Mn(),x.clearInputText(),x.enterPromptMode(n,e),bi()}})}),Ci=()=>{setTimeout(()=>{x.hideContextMenu(),Q()},0)},wi=()=>{for(let{boxId:e,labelId:t}of st)x.removeGrabbedBox(e),t&&x.removeLabelInstance(t);st=[]},Ti=(e,t,n,r)=>{if(t.length!==0)for(let[i,a]of t.entries()){let t=n[i],o=`${r}-${e.id}-${i}`;x.addGrabbedBox({id:o,bounds:a,createdAt:0,element:t});let s=null;i===0&&(s=`${r}-label-${e.id}`,x.addLabelInstance({id:s,bounds:a,tagName:e.tagName,componentName:e.componentName,elementsCount:e.elementsCount,status:`idle`,isPromptMode:!!e.commentText,inputValue:e.commentText??void 0,createdAt:0,element:t,mouseX:a.x+a.width/2})),st.push({boxId:o,labelId:s})}},Ei=(e,t)=>{let n=pt(e);Ti(e,n.map(e=>F(e)),n,t)},Di=()=>{nt!==null&&(we(nt),nt=null)},Oi=e=>{Di();let t=()=>{e(),nt=ie(t)};t()},ki=()=>{if(!tt)return null;let e=tt.getBoundingClientRect(),t=Cn(e);return t===`left`||t===`right`?{x:t===`left`?e.right:e.left,y:e.top+e.height/2,edge:t,toolbarWidth:e.width}:{x:e.left+e.width/2,y:t===`top`?e.bottom:e.top,edge:t,toolbarWidth:e.width}},Ai=e=>{Oi(()=>{let t=ki();t&&e(t)})},ji=()=>{Ii(),Li(),Di(),wi(),Ze(null),ot(!1)},Mi=()=>{Di(),N(null)},Ni=()=>{x.hideContextMenu(),Mi(),Bi(),Ye(_n()),Ai(Ze)},Pi=null,Fi=null,Ii=()=>{Pi!==null&&(clearTimeout(Pi),Pi=null)},Li=()=>{Fi!==null&&(clearTimeout(Fi),Fi=null)},Ri=()=>{Fi=setTimeout(()=>{Fi=null,ji()},200)},zi=()=>{ji(),Mi(),Ai(et)},Bi=()=>{Di(),et(null)},Vi=()=>{ji(),Mi(),Bi()},Hi=()=>{Qe()===null?(x.hideContextMenu(),ji(),Bi(),Ai(N)):Mi()},Ui=e=>{ut({defaultAction:e})},Wi=()=>{Ii(),Li(),Xe()===null?(wi(),Ni()):at()?(wi(),ot(!1)):ji()},Gi=e=>{St(e.content,{tagName:e.tagName,componentName:e.componentName??e.elementName,commentText:e.commentText});let t=ht(e);t&&(Mn(),ie(()=>{if(!f(t))return;let n=F(t),r=jn(n,e.tagName,e.componentName,`copied`,{element:t,mouseX:n.x+n.width/2});r&&kn(r)}))},Ki=e=>{wi(),O()&&(x.exitPromptMode(),x.clearInputText());let t=ht(e);if(e.commentText&&t){let n=I(F(t));x.enterPromptMode(n,t),x.setInputText(e.commentText)}else Gi(e)},qi=()=>{wi();let e=Je();if(e.length===0)return;let t=wt(e.map(e=>e.content)),n=e[0];St(t,{componentName:n.componentName??n.tagName,entries:e.map(e=>({tagName:e.tagName,componentName:e.componentName??e.elementName,content:e.content,commentText:e.commentText}))}),xn()?$i():zi(),Mn(),ie(()=>{r(()=>{for(let t of e){let e=pt(t);for(let n of e){let e=F(n),r=ln(`label`);x.addLabelInstance({id:r,bounds:e,tagName:t.tagName,componentName:t.componentName,status:`copied`,createdAt:Date.now(),element:n,mouseX:e.x+e.width/2}),kn(r)}}})})},Ji=e=>{if(wi(),!e)return;let t=Je().find(t=>t.id===e);t&&Ei(t,`comment-hover`)},Yi=e=>{Ii(),wi(),e?(Li(),Xe()===null&&$e()===null&&(Qi(),Pi=setTimeout(()=>{Pi=null,ot(!0),Ni()},200))):at()&&Ri()},Xi=e=>{e?Li():at()&&Ri()},Zi=e=>{wi(),e?(Li(),Qi()):at()&&Ri()},Qi=()=>{for(let e of Je())Ei(e,`comment-all-hover`)},$i=()=>{P.clear(),Ye(bn()),ji()},ea=e=>{let t=y.labelInstances.find(t=>t.id===e);if(!t?.element||!f(t.element))return;let n=t.element,r=I(F(n)),i={x:t.mouseX??r.x,y:r.y},a=t.elements&&t.elements.length>0?t.elements.filter(e=>f(e)):[n];setTimeout(()=>{C()||(x.setWasActivatedByToggle(!0),lr()),x.setPointer(i),x.setFrozenElements(a),a.length>1&&t.bounds&&x.setFrozenDragRect(Pt(t.bounds)),x.freeze(),x.showContextMenu(i,n)},0)};c(()=>{let e=g.store.theme.hue;e===0?Xr.style.filter=``:Xr.style.filter=`hue-rotate(${e}deg)`}),g.store.theme.enabled&&import(`./renderer-Bi3BGqK6.js`).then(({ReactGrabRenderer:e})=>{u||(d=re(()=>o(e,{get selectionVisible(){return ri()},get selectionBounds(){return Kn()},get selectionBoundsMultiple(){return nr()},get selectionShouldSnap(){return y.frozenElements.length>0||tr().length>0},get selectionElementsCount(){return y.frozenElements.length},get frozenLabelEntries(){return rr()},get selectionFilePath(){return y.selectionFilePath??void 0},get selectionLineNumber(){return y.selectionLineNumber??void 0},get selectionTagName(){return ii()},get selectionComponentName(){return on()},get selectionLabelVisible(){return ai()},selectionLabelStatus:`idle`,get selectionArrowNavigationState(){return Br()},onArrowNavigationSelect:Fr,get labelInstances(){return ci()},get dragVisible(){return ui()},get dragBounds(){return er()},get grabbedBoxes(){return li()},get mouseX(){return n(()=>y.frozenElements.length>1)()?void 0:ar()??ir().x},get isFrozen(){return xe()||C()||M()},get inputValue(){return y.inputText},get isPromptMode(){return O()},onShowContextMenuInstance:ea,onLabelInstanceHoverChange:An,get onInputChange(){return x.setInputText},onInputSubmit:()=>void fr(),onToggleExpand:gr,get isPendingDismiss(){return ze()},get selectionLabelShakeCount(){return Ue()},onConfirmDismiss:mr,onCancelDismiss:hr,get toolbarVisible(){return g.store.theme.toolbar.enabled},get isActive(){return C()},onToggleActive:_r,get enabled(){return A()},get shakeCount(){return Ve()},onToolbarStateChange:e=>{Ke(e),e.enabled!==A()&&(j(e.enabled),e.enabled||(ur(),Vi())),En.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(En.add(e),()=>{En.delete(e)}),onToolbarSelectHoverChange:qe,onToolbarRef:e=>{tt=e},get contextMenuPosition(){return mi()},get contextMenuBounds(){return pi()},get contextMenuTagName(){return hi()},get contextMenuComponentName(){return gi()},get contextMenuHasFilePath(){return!!_i()?.filePath},get actions(){return g.store.actions},get actionContext(){return Si()},onContextMenuDismiss:Ci,onContextMenuHide:bi,get commentItems(){return Je()},get commentsDisconnectedItemIds(){return gt()},get commentItemCount(){return Je().length},get clockFlashTrigger(){return rt()},get commentsDropdownPosition(){return Xe()},get isCommentsPinned(){return n(()=>Xe()!==null)()&&!at()},onToggleComments:Wi,onCopyAll:qi,onCopyAllHover:Zi,onCommentsButtonHover:Yi,onCommentItemSelect:Ki,onCommentItemHover:Ji,onCommentsCopyAll:qi,onCommentsCopyAllHover:Zi,onCommentsClear:$i,onCommentsDismiss:ji,onCommentsDropdownHover:Xi,get toolbarMenuPosition(){return Qe()},get toolbarMenuActions(){return g.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return Ge()?.defaultAction??`comment`},onSetDefaultAction:Ui,onToggleToolbarMenu:Hi,onToolbarMenuDismiss:Mi,get clearPromptPosition(){return $e()},onClearCommentsConfirm:()=>{Sn(),Bi(),$i()},onClearCommentsCancel:Bi}),Xr))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let ta={activate:()=>{x.setPendingCommentMode(!1),!C()&&A()&&dr()},deactivate:()=>{(C()||T())&&Q()},toggle:()=>{C()?Q():A()&&dr()},comment:xr,isActive:()=>C(),isEnabled:()=>A(),setEnabled:e=>{e!==A()&&(j(e),ut({enabled:e,collapsed:!e}),e||(ur(),Vi()))},getToolbarState:()=>ne(),setToolbarState:e=>{let t=ne(),n=e.collapsed??t?.collapsed??!1,r={edge:e.edge??t?.edge??`bottom`,ratio:e.ratio??t?.ratio??.5,collapsed:n,enabled:!n,defaultAction:e.defaultAction??t?.defaultAction??`comment`};ee(r),Ke(r),r.enabled!==A()&&(j(r.enabled),r.enabled||(ur(),Vi())),En.forEach(e=>e(r))},onToolbarStateChange:e=>(En.add(e),()=>{En.delete(e)}),dispose:()=>{u=!0,Tn=!1,d?.(),Ii(),Li(),Di(),En.clear(),e()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await In(t)},getSource:async e=>{let t=await de(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:Fe,getState:()=>({isActive:C(),isDragging:w(),isCopying:T(),isPromptMode:O(),isSelectionBoxVisible:!!ri(),isDragBoxVisible:!!ui(),targetElement:X(),dragBounds:er()??null,grabbedBoxes:[...or()],labelInstances:[...sr()],selectionFilePath:y.selectionFilePath,toolbarState:Ge()}),setOptions:e=>{g.setOptions(e)},registerPlugin:e=>{g.register(e,ta)},unregisterPlugin:e=>{g.unregister(e)},getPlugins:()=>g.getPluginNames(),getDisplayName:Ie};for(let e of wn)g.register(e,ta);return setTimeout(()=>{Pe(!0)},pe),ta})};export{Ct as a,Ut as i,an as n,St as o,rn as r,Dn as t};
|