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,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,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-CSGI31dx.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,st as Ae,t as je,u as Me,v as Ne,w as Pe,y as Fe}from"./freeze-updates-DYnenNAx.js";import{n as E,r as Ie,t as D}from"./extract-element-css-BWBXnTPc.js";var Le=`/*! 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 Re=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,qe)}),!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 Ve(e,t=new Set){let n,r,i,a;if(n=e!=null&&e[Re])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=Ve(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=Ve(i,t))!==i&&(e[a]=r))}return e}function He(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function Ue(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 We(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 Ge(e){r()&&Ue(He(e,O),ze)()}function Ke(e){return Ge(e),Reflect.ownKeys(e)}const qe={get(e,n,i){if(n===Re)return e;if(n===u)return i;if(n===t)return Ge(e),i;let a=He(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=Ue(a,n,s)())}return A(s)?Be(s):s},has(e,n){return n===Re||n===u||n===t||n===O||n===k||n===`__proto__`?!0:(r()&&Ue(He(e,k),n)(),n in e)},set(){return!0},deleteProperty(){return!0},ownKeys:Ke,getOwnPropertyDescriptor:We};function j(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=He(e,O),s;if((s=Ue(o,t,i))&&s.$(()=>n),Array.isArray(e)&&e.length!==a){for(let t=e.length;t<a;t++)(s=o[t])&&s.$();(s=Ue(o,`length`,a))&&s.$(e.length)}(s=o[ze])&&s.$()}function Je(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];j(e,i,t[i])}}function Ye(e,t){if(typeof t==`function`&&(t=t(e)),t=Ve(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&&j(e,n,r)}j(e,`length`,r)}else Je(e,t)}function Xe(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++)Xe(e,[r[i]].concat(t),n);return}else if(o&&a===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&Xe(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)Xe(e,[r].concat(t),n);return}else if(t.length>1){Xe(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=Ve(a),r===void 0||A(i)&&A(a)&&!Array.isArray(a)?Je(i,a):j(e,r,a))}function Ze(...[e,t]){let r=Ve(e||{}),i=Array.isArray(r),a=Be(r);function o(...e){n(()=>{i&&e.length===1?Ye(r,e[0]):Xe(r,e)})}return[a,o]}const Qe=new WeakMap,$e={get(e,t){if(t===Re)return e;let n=e[t],r;return A(n)?Qe.get(n)||(Qe.set(n,r=new Proxy(n,$e)),r):n},set(e,t,n){return j(e,t,Ve(n)),!0},deleteProperty(e,t){return j(e,t,void 0,!0),!0}};function M(e){return t=>{if(A(t)){let n;(n=Qe.get(t))||Qe.set(t,n=new Proxy(t,$e)),e(n)}return t}}const et=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),tt=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return et(n)?n:null},nt=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=tt(e);if(t===null)return null;r.push(t)}return r},rt=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,N=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,it=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=nt(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,N(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=nt(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return rt(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},at=e=>e.isIdentity?`none`:e.is2D?rt(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 ot=new WeakMap,st=new WeakMap,ct=new WeakMap;const lt=()=>{ot=new WeakMap,st=new WeakMap,ct=new WeakMap},ut=(e,t)=>{let n=st.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return st.set(e,{transform:i,timestamp:t}),i},dt=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=ut(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))),at(i)):r?it(t):`none`},ft=(e,t,n)=>{let r=ct.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return ct.set(e,{borderRadius:i,timestamp:n}),i},pt=(e,t,n,r)=>{let i=dt(e,n.transform,r),a=ft(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}},P=e=>{let t=performance.now(),n=ot.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=pt(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return ot.set(e,{bounds:r,timestamp:t}),r},F=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),mt=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}),ht=e=>{let[t,n]=Ze(mt(e)),r=e=>{n(M(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`,M(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(M(e=>{e.current={state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1},e.activationTimestamp=Date.now(),e.previouslyFocusedElement=document.activeElement}))},deactivate:()=>{n(M(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(M(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}=F(P(r));n(`copyStart`,e),n(`copyOffsetFromCenterX`,e.x-i),n(`pointer`,e),n(`frozenElement`,r),n(`wasActivatedByToggle`,!0),t.current.state===`active`?n(`current`,M(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`,M(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`,M(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}=F(P(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(M(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,M(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}=F(P(t));n(M(n=>{n.contextMenuPosition=e,n.contextMenuElement=t,n.contextMenuClickOffset={x:e.x-r,y:e.y-i}}))},hideContextMenu:()=>{n(M(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}=F(P(e));n(`contextMenuPosition`,{x:i+r.x,y:a+r.y})}};return{store:t,actions:o}},I=`data-react-grab`,gt=e=>{if(!document.body)return;let t=document.querySelectorAll(`[${I}]`);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(`[${I}]`);for(let e of t){let t=e.shadowRoot?.querySelector(`[${I}]`);if(t instanceof HTMLDivElement)return t;e.remove()}let n=document.createElement(`div`);n.setAttribute(I,`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(I,`true`),r.appendChild(o),_t(n),setTimeout(()=>{gt(n)},S),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:Ae,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=>w(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,Et=e=>e instanceof Error?e:Error(String(e)),Dt=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(Et(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},R=(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)},z=(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=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 _},At=(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);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=R(r,i),a=t.width*t.height;a>0&&n/a>=.75&&c.push(e)}else z(i,r)&&c.push(e)}return Ot(c)},B=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),jt=(e,t,n=!0)=>B(At(e,t,n)),Mt=(e,t)=>e.width<=0?0:d((t.x-e.x)/e.width,0,1),Nt=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}},Pt=()=>{lt(),Me(),be()},Ft=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),It=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Lt=e=>({...e,borderRadius:`0px`,transform:`none`}),V=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),Rt=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:V.has(e),H=(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},zt={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},Bt=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=zt[e];t?n[t]=!0:n.key=e}return n},Vt=e=>{if(typeof e==`function`)return e;let t=Bt(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||H(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}},Ht=e=>!e||typeof e==`function`?{metaKey:h(),ctrlKey:!h(),shiftKey:!1,altKey:!1,key:null}:Bt(e),Ut=(e,t)=>{if(t.activationKey)return Vt(t.activationKey)(e);let n=(h()?e.metaKey:e.ctrlKey)&&!e.shiftKey&&!e.altKey;return!!(e.key&&n&&Rt(e.key,e.code))},Wt=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}},Gt={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},Kt=(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}}),U={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},qt=(e={})=>{let t=new Map,n={},[r,i]=Ze({theme:Gt,options:{...U,...e},actions:[]}),a=()=>{let r=Gt,a={...U,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=Kt(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?Kt(Kt(Gt,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:_}},Jt=(e,t)=>{let n=[],r=(n,r)=>{let i=Nt(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=[]}}},Yt=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Ht(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},Xt=()=>{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)}}},Zt=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),Qt=(e,t,n)=>{let r=null,i=()=>{if(!t()){a();return}let o=e(),s=Zt(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}},$t=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},en=()=>{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&&!$t()&&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{}},tn=e=>typeof e==`object`&&!!e,nn=e=>{if(!tn(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},W=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?nn(JSON.parse(e)):null}catch{return null}},rn=e=>e===`Enter`||e===`NumpadEnter`,an=(e,t)=>e.x>=t.x&&e.x<=t.x+t.width&&e.y>=t.y&&e.y<=t.y+t.height,G=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),K=G({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),on={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},sn={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())}}]},cn=(e,t)=>t?`${e}\n${t}`:e,ln=G({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(`
|
|
13
|
+
|
|
14
|
+
`),r=await t.hooks.transformHtmlContent(n,t.elements);return r?St(cn(r,await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}):!1})}})}),un=G({name:`copy-styles`,contextMenuAction:e=>({id:`copy-styles`,label:`Copy styles`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>St(cn(t.elements.map(E).join(`
|
|
15
|
+
|
|
16
|
+
`),await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}))}}),cleanup:D}),dn=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,q=`react-grab-comment-items`,fn=`react-grab-history-items`,pn=`react-grab-clear-confirmed`,mn=()=>{try{let e=sessionStorage.getItem(fn);e&&!sessionStorage.getItem(q)&&sessionStorage.setItem(q,e),sessionStorage.removeItem(fn)}catch{}},hn=()=>{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},gn=e=>{_n=Y(e);try{sessionStorage.setItem(q,JSON.stringify(_n))}catch{}return _n};let _n=[],vn=!1;typeof window<`u`&&(mn(),_n=hn(),vn=J(pn));const yn=()=>_n,bn=e=>gn([{...e,id:dn(`comment`)},..._n].slice(0,20)),xn=e=>{gn(_n.filter(t=>t.id!==e))},Sn=()=>gn([]),Cn=()=>vn,wn=()=>{vn=!0;try{sessionStorage.setItem(pn,`1`)}catch{}},Tn=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`},En=[K,on,ln,un,sn];let Dn=!1;const On=new Set,kn=t=>{if(typeof window>`u`)return yt();let r={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,...W(),...t};if(r.enabled===!1||Dn)return yt();Dn=!0,en();let{enabled:u,...d}=r;return o(t=>{let r=!1,o,u=qt(d),{store:b,actions:S}=ht({theme:Gt,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`),Ae=e(()=>b.current.state===`active`&&b.current.phase===`justDragged`),E=e(()=>b.current.state===`copying`),D=e(()=>E()||b.selectionInteractionLockDepth>0),Re=e(()=>b.current.state===`justCopied`),O=e(()=>b.current.state===`active`&&!!b.current.isPromptMode),k=e(()=>b.pendingCommentMode||O()),ze=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 Be=ne(),[A,Ve]=c(Be?!Be.collapsed:!0),[He,Ue]=c(0),[We,Ge]=c(0),[Ke,qe]=c(Be),[j,Je]=c(!1),[Ye,Xe]=c(yn()),[Ze,Qe]=c(null),[$e,M]=c(null),[et,tt]=c(null),nt,rt=null,N=new Map,[it,at]=c(0),[ot,st]=c(!1),ct=[],lt=new WeakMap,ut=()=>{lt=new WeakMap},dt=()=>{Bt(!1),ut()},ft=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),qe(n);for(let e of On)e(n)},pt=e=>N.get(e)??[],mt=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},I=e=>{let t=pt(e.id),n=t.filter(e=>_(e));if(t.length>0&&n.length===t.length)return n;let r=mt(e);return r.length>0?(N.set(e.id,r),r):n},gt=e=>I(e)[0],_t=e(()=>{Ze();let e=new Set;for(let t of Ye())I(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}}),L=()=>{V.timerId!==null&&(clearTimeout(V.timerId),V.timerId=null)},yt=()=>{V.copyWaiting=!1,V.holdTimerFired=!1,V.startTimestamp=null};g(()=>{if(b.current.state!==`holding`){L();return}V.startTimestamp=Date.now(),V.timerId=window.setTimeout(()=>{if(V.timerId=null,V.copyWaiting){V.holdTimerFired=!0;return}S.activate()},b.keyHoldDuration),l(L)}),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 xt=(e,t,n)=>{Et(e,t,n),S.clearInputText()},Ct=()=>{let e=b.frozenElement||X();e&&S.enterPromptMode({x:b.pointer.x,y:b.pointer.y},e)},Et=(e,t,n)=>{S.setCopyStart({x:t,y:n},e)},R={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},z=null,[Ot,kt]=c(null),At=(e,t)=>{z!==null&&clearTimeout(z),kt(null),z=window.setTimeout(()=>{kt({x:e,y:t}),z=null},32)},B=null,V={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},H=null,[zt,Bt]=c(!1),Ht=0,Kt=!1,U=null,$t=()=>{Kt=!0,U!==null&&window.clearTimeout(U),U=window.setTimeout(()=>{Kt=!1,U=null},de)},en=()=>{U!==null&&(window.clearTimeout(U),U=null),Kt=!1},tn=0,nn=0,W=null,G=null,K=!1,on=null,[sn,cn]=c(null),[ln,un]=c(void 0),[q,fn]=c([]),[pn,mn]=c(0),hn=Jt(ye,P),J=Qt(()=>b.pointer,()=>T(),e=>{if(De()){if(S.shiftDragStart(e),H){H={x:H.x+e.x,y:H.y+e.y};return}let{pageX:t,pageY:n}=Xn(b.pointer.x,b.pointer.y);H={x:t,y:n}}}),Y=e(()=>w()&&!E()),gn=new Map,_n=(e,t)=>{let n=dn(`grabbed`),r={id:n,bounds:e,createdAt:Date.now(),element:t};S.addGrabbedBox(r),u.hooks.onGrabbedBox(e,t);let i=window.setTimeout(()=>{gn.delete(n),S.removeGrabbedBox(n)},de);gn.set(n,i)},vn=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||=Fe(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}}))},kn=new Map,An=e=>{let t=kn.get(e);t!==void 0&&(window.clearTimeout(t),kn.delete(e))},jn=()=>{for(let e of kn.values())window.clearTimeout(e);kn.clear()},Mn=e=>{An(e);let t=window.setTimeout(()=>{kn.delete(e),S.updateLabelInstance(e,`fading`),setTimeout(()=>{kn.delete(e),S.removeLabelInstance(e)},150)},de);kn.set(e,t)},Nn=(e,t)=>{if(t)An(e);else{let t=b.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&Mn(e)}},Pn=(e,t,n,r,i)=>{S.clearLabelInstances(),jn();let a=dn(`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},Fn=()=>{jn(),S.clearLabelInstances()},In=(e,t,n)=>{t?S.updateLabelInstance(e,`copied`):S.updateLabelInstance(e,`error`,n||`Unknown error`),Mn(e)},Ln=async(e,t,n,r)=>{en(),b.current.state!==`copying`&&S.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=Tt(e,`Action failed`)}t&&In(t,i,a),b.current.state===`copying`&&(i&&S.completeCopy(n),r?Q():i?(S.activate(),$t()):S.unfreeze())},Rn=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=Ye();for(let[n,i]of N.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){xn(n),N.delete(n);break}}}let c=t.map((e,t)=>Ie(e,t===0)),l=bn({content:n,elementName:i??`element`,tagName:a??`div`,componentName:o??void 0,elementsCount:t.length,previewBounds:t.map(e=>P(e)),elementSelectors:c,commentText:r,timestamp:Date.now()});Xe(l),at(e=>e+1);let d=l[0];d&&s&&N.set(d.id,[...t]);let f=new Set(l.map(e=>e.id));for(let e of N.keys())f.has(e)||N.delete(e)},zn=(e,t,n)=>{let r=e[0],i=n??(r?Fe(r):null),a=r?x(r):null,o=i??a??void 0;return Dt({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)=>{Rn({copiedElements:e,content:n,extraPrompt:t,elementName:o,tagName:a,componentName:i})},onCopyError:u.hooks.onCopyError},e,t)},Bn=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&&_n(P(t),t)}if(await Se(),r.length>0)await zn(r,t,n);else if(i.length>0&&!(await Promise.all(i)).every(Boolean))throw Error(`Failed to copy`);vn(e)},Vn=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?Ft(l):Lt(P(t)),f=u?d.x+d.width/2:n,p=x(t);en(),S.startCopy();let m=p?Pn(d,p,void 0,`copying`,{element:t,mouseX:f,elements:r}):null;le(t).then(async e=>{await Ln(()=>Bn(c,i,e??void 0),m,t,a),o?.()}).catch(e=>{m&&In(m,!1,Tt(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}),Hn=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(Hn,e=>{if(W!==null&&(clearTimeout(W),W=null),!e){cn(null);return}W=window.setTimeout(()=>{W=null,cn(e)},100)})),l(()=>{W!==null&&(clearTimeout(W),W=null)}),g(()=>{let e=b.frozenElements;l(Ee(e))}),g(i(w,e=>{e&&u.store.options.freezeReactUpdates&&l(je())}));let Un=()=>{if(b.isTouchMode&&T()){let e=b.detectedElement;return!e||pe(e)?void 0:e}let e=Hn();if(!(!e||pe(e)))return e},Wn=e(()=>Un()),Gn=()=>Wn()?b.isTouchMode&&T()?Y():Y()&&!Te():!1,Kn=e(()=>{b.viewportVersion;let e=b.frozenElements;if(e.length===0)return[];let t=b.frozenDragRect;return t&&e.length>1?[Ft(t)]:e.filter(e=>e!==null).map(e=>P(e))}),qn=e(()=>{if(!zt()||b.pendingCommentMode||K)return null;let e=b.detectedElement;return!_(e)||pe(e)||b.frozenElements.includes(e)?null:e}),Jn=e(()=>{b.viewportVersion;let e=qn();if(e)return P(e)}),Yn=e(()=>{b.viewportVersion;let e=b.frozenElements;if(e.length>0){let t=Kn();if(e.length===1){let e=t[0];if(e)return e}let n=b.frozenDragRect;return n?t[0]??Ft(n):Lt(Wt(t))}let t=Wn();if(t)return P(t)}),Xn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),Zn=(e,t)=>{let{pageX:n,pageY:r}=Xn(e,t);return{x:Math.abs(n-b.dragStart.x),y:Math.abs(r-b.dragStart.y)}},Qn=e(()=>{if(!T())return!1;let e=Zn(b.pointer.x,b.pointer.y);return e.x>2||e.y>2}),$n=(e,t)=>{let{pageX:n,pageY:r}=Xn(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}},er=e=>e.code===`Space`||e.key===` `,tr=()=>{if(!T())return;S.startDragReposition();let{pageX:e,pageY:t}=Xn(b.pointer.x,b.pointer.y);H={x:e,y:t}},nr=()=>{S.stopDragReposition(),H=null},rr=e(()=>{if(b.viewportVersion,!Qn())return;let e=$n(b.pointer.x,b.pointer.y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),ir=e(()=>{if(b.viewportVersion,!Qn())return[];let e=Ot();if(!e)return[];let t=$n(e.x,e.y),n=jt(t,ye);return(n.length>0?n:jt(t,ye,!1)).map(e=>P(e))}),ar=e(()=>{let e=ir();if(e.length>0)return e;let t=Jn();return t?[...Kn(),t]:Kn()}),or=e(()=>(b.viewportVersion,O()||b.frozenElements.length<2?[]:b.frozenElements.filter(_).map(e=>{let t=P(e),n=lt.get(e),r=n===void 0?void 0:t.x+t.width*n;return{tagName:x(e)||`element`,componentName:Fe(e)??void 0,bounds:t,mouseX:r}}))),sr=e(()=>{if(E()||O()){b.viewportVersion;let e=b.frozenElement||X();return e?{x:F(P(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}}),cr=e(()=>{if(!zt()||b.frozenElements.length!==1)return;b.viewportVersion;let e=b.frozenElements[0];if(!_(e))return;let t=lt.get(e);if(t===void 0)return;let n=P(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=++tn,n=()=>{tn===t&&S.setSelectionSource(null,null)};if(!e){n();return}ue(e).then(e=>{if(tn===t){if(!e){n();return}S.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{tn===t&&S.setSelectionSource(null,null)})}));let lr=e(()=>b.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),ur=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=O(),i=X(),a=rr(),o=u.store.theme.enabled,s=u.store.theme.selectionBox.enabled,c=u.store.theme.dragBox.enabled,l=Qn(),d=Hn(),f=Re();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:[...lr()],labelInstances:[...ur()],selectionFilePath:b.selectionFilePath,toolbarState:Ke()}}),e=>{u.hooks.onStateChange(e)})),g(i(()=>[O(),b.pointer.x,b.pointer.y,X()],([e,t,n,r])=>{u.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),g(i(()=>[si(),Yn(),X()],([e,t,n])=>{u.hooks.onSelectionBox(!!e,t??null,n)})),g(i(()=>[mi(),rr()],([e,t])=>{u.hooks.onDragBox(!!e,t??null)})),g(i(()=>[gi(),hi(),sr(),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,dr=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(),O()],([e,t,n])=>{dr(t?`progress`:e&&!n?`crosshair`:null)}));let fr=()=>{let e=C();S.activate(),e||u.hooks.onActivate()},Q=()=>{let e=T(),t=b.previouslyFocusedElement;nr(),S.deactivate(),dt(),Ir(),G=null,K=!1,e&&(document.body.style.userSelect=``),B&&window.clearTimeout(B),J.stop(),t instanceof HTMLElement&&_(t)&&t.focus(),u.hooks.onDeactivate()},pr=()=>{C()&&S.releaseHold(),w()&&Q(),en()},mr=()=>{S.setWasActivatedByToggle(!0),fr()},hr=()=>{S.clearLastCopied();let e=[...b.frozenElements],t=b.frozenElement||X(),n=O()?b.inputText.trim():``;if(!t){Q();return}let r=e.length>0?e:[t],i=r.map(e=>P(e))[0],{x:a,y:o}=F(i),s=a+b.copyOffsetFromCenterX;S.setPointer({x:a,y:o}),S.exitPromptMode(),S.clearInputText(),Vn({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},gr=()=>{if(S.clearLastCopied(),O()){if(ze()){S.clearInputText(),Q();return}S.setPendingDismiss(!0),Ge(e=>e+1)}},_r=()=>{S.clearInputText(),Q()},vr=()=>{S.setPendingDismiss(!1)},yr=()=>{let e=b.frozenElement||X();e&&xt(e,b.pointer.x,b.pointer.y),Ct()},br=()=>{if(w())Q();else if(A()){let e=Ke()?.defaultAction??`comment`;e===`comment`?S.setPendingCommentMode(!0):(on=e,K=!0),mr()}},xr=(e,t,n)=>{S.setPendingCommentMode(!1),S.clearInputText(),S.enterPromptMode({x:t,y:n},e)},Sr=(e,t)=>{dt(),S.showContextMenu(t,e),Ir(),Gi(),u.hooks.onContextMenu(e,t)},Cr=(e,t)=>{let n=on;if(on=null,!n)return;let r=u.store.actions.find(e=>e.id===n);if(!r){qi(ce),Sr(e,t);return}let i=P(e),a=Ti({element:e,filePath:b.selectionFilePath??void 0,lineNumber:b.selectionLineNumber??void 0,tagName:x(e)||void 0,componentName:ln(),position:t,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:i,fallbackSelectionBounds:[i],position:t}});r.onAction(a)},wr=()=>{if(A()){if(w()&&k()){Q();return}S.setPendingCommentMode(!0),w()||mr()}},Tr=(e,t,n)=>{let r=n&&zt()&&!T()&&!b.pendingCommentMode&&!K;if(!A()||O()||be()&&!r||D()||b.contextMenuPosition!==null)return;if(S.setPointer({x:e,y:t}),R.latestPointerX=e,R.latestPointerY=t,r){let n=_e(e,t);n!==b.detectedElement&&S.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=_e(R.latestPointerX,R.latestPointerY);e!==b.detectedElement&&S.setDetectedElement(e),R.pendingDetectionScheduledAt=0})),T()){if(De()){let{pageX:n,pageY:r}=Xn(e,t);H&&S.shiftDragStart({x:n-H.x,y:r-H.y}),H={x:n,y:r}}At(e,t);let n=Zt(e,t),r=n.top||n.bottom||n.left||n.right;r&&!J.isActive()?J.start():!r&&J.isActive()&&J.stop()}},Er=(e,t,n)=>!Y()||D()?!1:(!n&&zt()&&dt(),S.startDrag({x:e,y:t},n),S.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,At(e,t),u.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),Dr=(e,t)=>{if(!b.frozenElements.includes(e)){let n=Mt(P(e),t);lt.set(e,n)}S.toggleFrozenElement(e),Me();let n=b.frozenElements.includes(e);if(n||lt.delete(e),b.frozenElements.length===0){dt(),S.unfreeze();return}me(b.frozenElements),Bt(!0),S.setPointer(t),S.setLastGrabbed(n?e:b.frozenElements[b.frozenElements.length-1]),S.freeze(),Ir()},Or=()=>{dt();let e=b.frozenElements.filter(_);if(e.length===0){S.unfreeze();return}Vn({element:e[0],cursorX:b.pointer.x,selectedElements:e,shouldDeactivateAfter:b.wasActivatedByToggle})},kr=(e,t,n)=>{let r=jt(e,ye),i=r.length>0?r:jt(e,ye,!1);if(i.length===0)return;let a=n&&!b.pendingCommentMode&&!K;if(a&&S.addFrozenElements(i),me(a?b.frozenElements:i),u.hooks.onDragEnd(i,e),a){let e=i[i.length-1];Bt(!0),Me(),S.setPointer(F(P(e))),S.setLastGrabbed(e),S.freeze(),Ir();return}let o=i[0],s=F(P(o));S.setPointer(s),S.setFrozenElements(i);let c=It(e);if(S.setFrozenDragRect(c),S.freeze(),S.setLastGrabbed(o),b.pendingCommentMode){xr(o,s.x,s.y);return}if(K){K=!1,on?Cr(o,s):Sr(o,s);return}let l=b.wasActivatedByToggle&&!t;Vn({element:o,cursorX:s.x,selectedElements:i,shouldDeactivateAfter:l,dragRect:c})},Ar=e=>{for(let t of b.frozenElements)if(_(t)&&an(e,P(t)))return t;return null},jr=(e,t,n,r)=>{let i=_(b.frozenElement)?b.frozenElement:null,a=_(G)?G: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&&!K){o!==null&&Dr(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=F(P(c));l=e.x,d=e.y}else l=e,d=t;if(G=null,b.pendingCommentMode){xr(c,l,d);return}if(K){K=!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(),on?Cr(c,t):Sr(c,t);return}let m=b.wasActivatedByToggle&&!n;S.setLastGrabbed(c),Vn({element:c,cursorX:l,shouldDeactivateAfter:m})},Mr=()=>{T()&&(nr(),S.cancelDrag(),J.stop(),document.body.style.userSelect=``)},Nr=(e,t,n,r)=>{if(!T())return;z!==null&&(clearTimeout(z),z=null),kt(null);let i=Zn(e,t),a=i.x>2||i.y>2,o=a?$n(e,t):null;a?S.endDrag():S.cancelDrag(),nr(),J.stop(),document.body.style.userSelect=``,o?kr(o,n,r):jr(e,t,n,r)},$=bt(),Pr=Xt(),Fr=e=>{let t;try{t=Pr.originalKeyDescriptor?.get?Pr.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||rn(e.code),r=w()||C();return n&&r&&!O()&&!b.wasActivatedByToggle&&et()===null?(Pr.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};$.addDocumentListener(`keydown`,Fr,{capture:!0}),$.addDocumentListener(`keyup`,Fr,{capture:!0}),$.addDocumentListener(`keypress`,Fr,{capture:!0});let Ir=()=>{fn([]),mn(0),hn.clearHistory()},Lr=e=>{S.setFrozenElement(e),S.freeze(),G=e;let t=F(P(e));S.setPointer(t),b.contextMenuPosition!==null&&S.showContextMenu(t,e)},Rr=e=>{let t=Nt(P(e)),n=ve(t.x,t.y).filter(ye).reverse();fn(n),mn(Math.max(0,n.indexOf(e)))},zr=e=>{let t=q()[e];t&&(mn(e),hn.clearHistory(),Lr(t))},Br=e=>{if(!w()||O()||zt()||!ie.has(e.key))return!1;let t=Hn(),n=!t;if(t||=_e(window.innerWidth/2,window.innerHeight/2),!t)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Ir();let r=hn.findNext(e.key,t);return!r&&!n?!1:(e.preventDefault(),e.stopPropagation(),Lr(r??t),!0)}q().length===0&&Rr(t);let r=hn.findNext(e.key,t)??t;e.preventDefault(),e.stopPropagation(),Lr(r);let i=q().indexOf(r);return i===-1?Rr(r):mn(i),!0},Vr=e=>{if(!rn(e.code)||f(e)||D())return!1;let t=b.lastCopiedElement;if(!C()&&!O()&&!w()&&t&&_(t)&&!b.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let n=F(P(t));return S.setPointer(n),xt(t,n.x,n.y),S.setFrozenElement(t),S.clearLastCopied(),Ct(),w()||fr(),!0}if(C()&&!O()){e.preventDefault(),e.stopImmediatePropagation();let t=b.frozenElement||X();return t&&xt(t,b.pointer.x,b.pointer.y),S.setPointer({x:b.pointer.x,y:b.pointer.y}),t&&S.setFrozenElement(t),Ct(),B!==null&&(window.clearTimeout(B),B=null),w()||fr(),!0}return!1},Hr=e=>{if(e.key?.toLowerCase()!==`o`||O()||!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},Ur=e(()=>q().map(e=>({tagName:x(e)||`element`,componentName:Fe(e)??void 0}))),Wr=e(()=>({items:Ur(),activeIndex:pn(),isVisible:q().length>0})),Gr=e=>{if(!(!u.store.options.allowActivationInsideInput&&f(e))&&!(!Ut(e,u.store.options)&&((e.metaKey||e.ctrlKey)&&!ae.includes(e.key)&&!rn(e.code)&&(w()&&!b.wasActivatedByToggle?Q():C()&&(L(),yt(),S.releaseHold())),!rn(e.code)||!C()))){if((w()||C())&&!O()&&(e.preventDefault(),rn(e.code)&&e.stopImmediatePropagation()),w()){if(b.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||e.repeat)return;B!==null&&window.clearTimeout(B),B=window.setTimeout(()=>{Q()},200);return}if(C()&&e.repeat){if(V.copyWaiting){let e=V.holdTimerFired;yt(),e&&S.activate()}return}if(!(E()||Re())&&!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(Fr(e),!A()){Ut(e,u.store.options)&&!e.repeat&&Ue(e=>e+1);return}let t=rn(e.code)&&C()&&!O(),n=y(e,`data-react-grab-input`);if(O()&&Ut(e,u.store.options)&&!e.repeat&&!n){e.preventDefault(),e.stopPropagation(),gr();return}if(e.key===`Escape`&&et()!==null)return;if(e.key===`Escape`&&Ze()!==null){Fi();return}if(e.key===`Escape`&&$e()!==null){Ii();return}let r=y(e,`data-react-grab-ignore-events`)&&!t;if(O()||r)return e.key===`Escape`&&(O()?gr():b.wasActivatedByToggle&&Q()),r&&ie.has(e.key)&&Br(e),void 0;if(T()&&er(e)){e.repeat||tr(),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()-Ht<200;Br(e)||Vr(e)||Hr(e)||i||Gr(e)},{capture:!0}),$.addWindowListener(`keyup`,e=>{if(Fr(e))return;if(er(e)&&De()&&(nr(),e.preventDefault(),e.stopPropagation()),e.key===`Shift`&&zt()){T()&&Mr(),Or();return}if(y(e,`data-react-grab-ignore-events`))return;let t=Yt(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):Vt(u.store.options.activationKey)(e):Rt(e.key,e.code);if(Re()||Kt){(r||n)&&(en(),Q());return}if(!C()&&!w()||O())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(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(b.wasActivatedByToggle&&u.store.options.activationMode!==`hold`)return;if(C()||V.holdTimerFired&&n){L();let t=(V.startTimestamp?Date.now()-V.startTimestamp:0)>=200,n=V.holdTimerFired&&t&&(u.store.options.allowActivationInsideInput||!f(e));yt(),n?S.activate():S.releaseHold()}else Q()}},{capture:!0}),$.addDocumentListener(`copy`,()=>{C()&&(V.copyWaiting=!0)}),$.addWindowListener(`keypress`,Fr,{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())&&!O()&&be()&&!e.shiftKey&&!zt()&&(S.unfreeze(),Ir()),Tr(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&&$e()===null)){if(O()){let t=Yn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?hr():gr();return}if(D()){e.preventDefault(),e.stopImmediatePropagation();return}Er(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;Nr(e.clientX,e.clientY,n,e.shiftKey),t&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),$.addWindowListener(`contextmenu`,e=>{if(!Y()||E()||O())return;let t=y(e,`data-react-grab-ignore-events`),n={x:e.clientX,y:e.clientY},r=t&&b.frozenElements.length>1?Ar(n):null;if(t&&q().length>0)Ir();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(),Sr(i,n)},{capture:!0}),$.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Mr()}),$.addWindowListener(`click`,e=>{y(e,`data-react-grab-ignore-events`)||b.contextMenuPosition===null&&(Y()||E()||Ae())&&(e.preventDefault(),e.stopImmediatePropagation(),b.wasActivatedByToggle&&!E()&&!O()&&!e.shiftKey&&(C()?S.setWasActivatedByToggle(!1):Q()))},{capture:!0}),$.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){S.clearGrabbedBoxes();let e=b.activationTimestamp;w()&&!O()&&e!==null&&Date.now()-e>500&&Q()}}),$.addWindowListener(`blur`,()=>{Mr(),C()&&(L(),S.releaseHold(),yt()),dt()}),$.addWindowListener(`focus`,()=>{Ht=Date.now()}),$.addWindowListener(`focusin`,e=>{y(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let Kr=()=>{if(!(b.isTouchMode&&!C()&&!w())&&A()&&!O()&&!D()&&!be()&&!T()&&b.contextMenuPosition===null&&b.frozenElements.length===0){let e=_e(b.pointer.x,b.pointer.y);S.setDetectedElement(e)}},qr=null,Jr=null,Yr=()=>{Pt(),Kr(),S.incrementViewportVersion(),S.updateContextMenuPosition()};$.addWindowListener(`scroll`,Yr,{capture:!0});let Xr=window.innerWidth,Zr=window.innerHeight;$.addWindowListener(`resize`,()=>{let e=window.innerWidth,t=window.innerHeight;if(Xr>0&&Zr>0){let n=e/Xr,r=t/Zr,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})}Xr=e,Zr=t,Yr()});let Qr=window.visualViewport;if(Qr){let{signal:e}=$;Qr.addEventListener(`resize`,Yr,{signal:e}),Qr.addEventListener(`scroll`,Yr,{signal:e})}let $r=()=>{Jr===null&&(Jr=re(()=>{Jr=null,S.incrementViewportVersion()}))};g(()=>{if(u.store.theme.enabled&&(w()||E()||b.labelInstances.length>0||b.grabbedBoxes.length>0)){if(qr!==null)return;qr=window.setInterval(()=>{$r()},100);return}qr!==null&&(window.clearInterval(qr),qr=null),Jr!==null&&(Ce(Jr),Jr=null)}),l(()=>{qr!==null&&window.clearInterval(qr),Jr!==null&&Ce(Jr)}),$.addDocumentListener(`copy`,e=>{O()||y(e,`data-react-grab-ignore-events`)||(Y()||E())&&e.preventDefault()},{capture:!0}),l(()=>{$.abort(),z!==null&&window.clearTimeout(z),B&&window.clearTimeout(B),en(),rt!==null&&Ce(rt),gn.forEach(e=>window.clearTimeout(e)),gn.clear(),jn(),J.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,dr(null),Pr.restore()});let ei=vt(Le),ti=e(()=>u.store.theme.enabled),ni=e(()=>u.store.theme.selectionBox.enabled),ri=e(()=>u.store.theme.elementLabel.enabled),ii=e(()=>u.store.theme.dragBox.enabled),ai=e(()=>Re()||j()&&!be()),oi=e(()=>ir().length>0),si=e(()=>!ti()||!ni()||ai()?!1:oi()?!0:Gn()),ci=e(()=>{let e=Wn();if(e)return x(e)||void 0});g(i(()=>sn(),e=>{let t=++nn;if(!e){un(void 0);return}le(e).then(e=>{nn===t&&un(e??void 0)}).catch(()=>{nn===t&&un(void 0)})}));let li=e(()=>b.contextMenuPosition!==null||!ri()||ai()?!1:Gn()),ui=new Map,di=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?P(n):e.bounds,i=ui.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 ui.set(e.id,l),l},fi=e(()=>{if(!ti()||!u.store.theme.grabbedBoxes.enabled)return[];b.viewportVersion;let e=new Set(b.labelInstances.map(e=>e.id));for(let t of ui.keys())e.has(t)||ui.delete(t);return b.labelInstances.map(di)}),pi=e(()=>!ti()||!u.store.theme.grabbedBoxes.enabled?[]:(b.viewportVersion,b.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:P(e.element)}))),mi=e(()=>ti()&&ii()&&Y()&&Qn()),hi=e(()=>E()?`processing`:`hover`),gi=e(()=>{if(!ti())return!1;let e=ri(),t=O(),n=E(),r=Y(),i=T(),a=!!Hn(),o=j(),s=be();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),_i=e(()=>{b.viewportVersion;let e=b.contextMenuElement;return e?P(e):null}),vi=e(()=>(b.viewportVersion,b.contextMenuPosition)),yi=e(()=>{let e=b.contextMenuElement;if(!e)return;let t=b.frozenElements.length;return t>1?`${t} elements`:x(e)||void 0}),[bi]=a(()=>({element:b.contextMenuElement,frozenCount:b.frozenElements.length}),async({element:e,frozenCount:t})=>{if(e&&!(t>1))return await le(e)??void 0}),[xi]=a(()=>b.contextMenuElement,async e=>e?ue(e):null),Si=async e=>{S.incrementSelectionInteractionLockDepth();try{return await e()}finally{S.decrementSelectionInteractionLockDepth()}},Ci=(e,t,n,r,i)=>async a=>{await Si(async()=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??b.contextMenuPosition??b.pointer,l=Kn(),u=_i()??o,d=t.length>1,f=d?Lt(Wt(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=Pn(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`)}In(o,s,l)}else try{await a()}catch{}p?Q():S.unfreeze()})},wi=()=>{setTimeout(()=>{S.hideContextMenu()},0)},Ti=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?wi:S.hideContextMenu,h={element:t,elements:p,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:f??(()=>{Fn(),d?.(),xt(t,o.x,o.y),S.setPointer({x:o.x,y:o.y}),S.setFrozenElement(t),Ct(),w()||fr(),m()}),copy:()=>{l?.(),Vn({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:Ci(t,p,i,a,s),hideContextMenu:m,cleanup:()=>{b.wasActivatedByToggle?Q():S.unfreeze()}},g=u.hooks.transformActionContext(h);return{...h,...g}},Ei=e(()=>{let e=b.contextMenuElement;if(!e)return;let t=xi(),n=b.contextMenuPosition??b.pointer;return Ti({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:yi(),componentName:bi(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{G=null},customEnterPromptMode:()=>{Fn(),S.clearInputText(),S.enterPromptMode(n,e),wi()}})}),Di=()=>{setTimeout(()=>{S.hideContextMenu(),Q()},0)},Oi=()=>{for(let{boxId:e,labelId:t}of ct)S.removeGrabbedBox(e),t&&S.removeLabelInstance(t);ct=[]},ki=(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})),ct.push({boxId:o,labelId:s})}},Ai=(e,t)=>{let n=I(e);ki(e,n.map(e=>P(e)),n,t)},ji=()=>{rt!==null&&(Ce(rt),rt=null)},Mi=e=>{ji();let t=()=>{e(),rt=re(t)};t()},Ni=()=>{if(!nt)return null;let e=nt.getBoundingClientRect(),t=Tn(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}},Pi=e=>{Mi(()=>{let t=Ni();t&&e(t)})},Fi=()=>{Bi(),Vi(),ji(),Oi(),Qe(null),st(!1)},Ii=()=>{ji(),M(null)},Li=()=>{S.hideContextMenu(),Ii(),Wi(),Xe(yn()),Pi(Qe)},Ri=null,zi=null,Bi=()=>{Ri!==null&&(clearTimeout(Ri),Ri=null)},Vi=()=>{zi!==null&&(clearTimeout(zi),zi=null)},Hi=()=>{zi=setTimeout(()=>{zi=null,Fi()},200)},Ui=()=>{Fi(),Ii(),Pi(tt)},Wi=()=>{ji(),tt(null)},Gi=()=>{Fi(),Ii(),Wi()},Ki=()=>{$e()===null?(S.hideContextMenu(),Fi(),Wi(),Pi(M)):Ii()},qi=e=>{ft({defaultAction:e})},Ji=()=>{Bi(),Vi(),Ze()===null?(Oi(),Li()):ot()?(Oi(),st(!1)):Fi()},Yi=e=>{St(e.content,{tagName:e.tagName,componentName:e.componentName??e.elementName,commentText:e.commentText});let t=gt(e);t&&(Fn(),re(()=>{if(!_(t))return;let n=P(t),r=Pn(n,e.tagName,e.componentName,`copied`,{element:t,mouseX:n.x+n.width/2});r&&Mn(r)}))},Xi=e=>{Oi(),O()&&(S.exitPromptMode(),S.clearInputText());let t=gt(e);if(e.commentText&&t){let n=F(P(t));S.enterPromptMode(n,t),S.setInputText(e.commentText)}else Yi(e)},Zi=()=>{Oi();let e=Ye();if(e.length===0)return;let t=wt(e.map(e=>e.content)),r=e[0];St(t,{componentName:r.componentName??r.tagName,entries:e.map(e=>({tagName:e.tagName,componentName:e.componentName??e.elementName,content:e.content,commentText:e.commentText}))}),Cn()?ra():Ui(),Fn(),re(()=>{n(()=>{for(let t of e){let e=I(t);for(let n of e){let e=P(n),r=dn(`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}),Mn(r)}}})})},Qi=e=>{if(Oi(),!e)return;let t=Ye().find(t=>t.id===e);t&&Ai(t,`comment-hover`)},$i=e=>{Bi(),Oi(),e?(Vi(),Ze()===null&&et()===null&&(na(),Ri=setTimeout(()=>{Ri=null,st(!0),Li()},200))):ot()&&Hi()},ea=e=>{e?Vi():ot()&&Hi()},ta=e=>{Oi(),e?(Vi(),na()):ot()&&Hi()},na=()=>{for(let e of Ye())Ai(e,`comment-all-hover`)},ra=()=>{N.clear(),Xe(Sn()),Fi()},ia=e=>{let t=b.labelInstances.find(t=>t.id===e);if(!t?.element||!_(t.element))return;let n=t.element,r=F(P(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),fr()),S.setPointer(i),S.setFrozenElements(a),a.length>1&&t.bounds&&S.setFrozenDragRect(It(t.bounds)),S.freeze(),S.showContextMenu(i,n)},0)};g(()=>{let e=u.store.theme.hue;e===0?ei.style.filter=``:ei.style.filter=`hue-rotate(${e}deg)`}),u.store.theme.enabled&&import(`./renderer-Dlno_pdb.js`).then(({ReactGrabRenderer:e})=>{r||(o=p(()=>s(e,{get selectionVisible(){return si()},get selectionBounds(){return Yn()},get selectionBoundsMultiple(){return ar()},get selectionShouldSnap(){return b.frozenElements.length>0||ir().length>0},get selectionElementsCount(){return b.frozenElements.length},get frozenLabelEntries(){return or()},get selectionFilePath(){return b.selectionFilePath??void 0},get selectionLineNumber(){return b.selectionLineNumber??void 0},get selectionTagName(){return ci()},get selectionComponentName(){return ln()},get selectionLabelVisible(){return li()},selectionLabelStatus:`idle`,get selectionArrowNavigationState(){return Wr()},onArrowNavigationSelect:zr,get labelInstances(){return fi()},get dragVisible(){return mi()},get dragBounds(){return rr()},get grabbedBoxes(){return pi()},get mouseX(){return m(()=>b.frozenElements.length>1)()?void 0:cr()??sr().x},get isFrozen(){return be()||w()||j()},get inputValue(){return b.inputText},get isPromptMode(){return O()},onShowContextMenuInstance:ia,onLabelInstanceHoverChange:Nn,get onInputChange(){return S.setInputText},onInputSubmit:()=>void hr(),onToggleExpand:yr,get isPendingDismiss(){return ze()},get selectionLabelShakeCount(){return We()},onConfirmDismiss:_r,onCancelDismiss:vr,get toolbarVisible(){return u.store.theme.toolbar.enabled},get isActive(){return w()},onToggleActive:br,get enabled(){return A()},get shakeCount(){return He()},onToolbarStateChange:e=>{qe(e),e.enabled!==A()&&(Ve(e.enabled),e.enabled||(pr(),Gi())),On.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(On.add(e),()=>{On.delete(e)}),onToolbarSelectHoverChange:Je,onToolbarRef:e=>{nt=e},get contextMenuPosition(){return vi()},get contextMenuBounds(){return _i()},get contextMenuTagName(){return yi()},get contextMenuComponentName(){return bi()},get contextMenuHasFilePath(){return!!xi()?.filePath},get actions(){return u.store.actions},get actionContext(){return Ei()},onContextMenuDismiss:Di,onContextMenuHide:wi,get commentItems(){return Ye()},get commentsDisconnectedItemIds(){return _t()},get commentItemCount(){return Ye().length},get clockFlashTrigger(){return it()},get commentsDropdownPosition(){return Ze()},get isCommentsPinned(){return m(()=>Ze()!==null)()&&!ot()},onToggleComments:Ji,onCopyAll:Zi,onCopyAllHover:ta,onCommentsButtonHover:$i,onCommentItemSelect:Xi,onCommentItemHover:Qi,onCommentsCopyAll:Zi,onCommentsCopyAllHover:ta,onCommentsClear:ra,onCommentsDismiss:Fi,onCommentsDropdownHover:ea,get toolbarMenuPosition(){return $e()},get toolbarMenuActions(){return u.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return Ke()?.defaultAction??`comment`},onSetDefaultAction:qi,onToggleToolbarMenu:Ki,onToolbarMenuDismiss:Ii,get clearPromptPosition(){return et()},onClearCommentsConfirm:()=>{wn(),Wi(),ra()},onClearCommentsCancel:Wi}),ei))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let aa={activate:()=>{S.setPendingCommentMode(!1),!w()&&A()&&mr()},deactivate:()=>{(w()||E())&&Q()},toggle:()=>{w()?Q():A()&&mr()},comment:wr,isActive:()=>w(),isEnabled:()=>A(),setEnabled:e=>{e!==A()&&(Ve(e),ft({enabled:e,collapsed:!e}),e||(pr(),Gi()))},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),qe(r),r.enabled!==A()&&(Ve(r.enabled),r.enabled||(pr(),Gi())),On.forEach(e=>e(r))},onToolbarStateChange:e=>(On.add(e),()=>{On.delete(e)}),dispose:()=>{r=!0,Dn=!1,o?.(),Bi(),Vi(),ji(),On.clear(),t()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await zn(t)},getSource:async e=>{let t=await ue(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:Pe,getState:()=>({isActive:w(),isDragging:T(),isCopying:E(),isPromptMode:O(),isSelectionBoxVisible:!!si(),isDragBoxVisible:!!mi(),targetElement:X(),dragBounds:rr()??null,grabbedBoxes:[...lr()],labelInstances:[...ur()],selectionFilePath:b.selectionFilePath,toolbarState:Ke()}),setOptions:e=>{u.setOptions(e)},registerPlugin:e=>{u.register(e,aa)},unregisterPlugin:e=>{u.unregister(e)},getPlugins:()=>u.getPluginNames(),getDisplayName:Fe};for(let e of En)u.register(e,aa);return setTimeout(()=>{Ne(!0)},fe),aa})};export{Ct as a,Gt as i,sn as n,St as o,on as r,kn 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,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-CSGI31dx.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,st as Ae,t as je,u as Me,v as Ne,w as Pe,y as Fe}from"./freeze-updates-DYnenNAx.js";import{n as E,r as Ie,t as D}from"./extract-element-css-BWBXnTPc.js";var Le=`/*! 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 Re=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[Re])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===Re)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===Re||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 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 r=j(e||{}),i=Array.isArray(r),a=Be(r);function o(...e){n(()=>{i&&e.length===1?Je(r,e[0]):Ye(r,e)})}return[a,o]}const Ze=new WeakMap,Qe={get(e,t){if(t===Re)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: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}),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: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}=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||!_(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}},L=`data-react-grab`,ht=e=>{if(!document.body)return;let t=document.querySelectorAll(`[${L}]`);for(let n of t)n!==e&&n.parentNode!==e&&(n.shadowRoot||n.remove());document.body.appendChild(e)},gt=e=>{if(document.body){ht(e);return}let t=()=>{document.removeEventListener(`DOMContentLoaded`,t),ht(e)};document.addEventListener(`DOMContentLoaded`,t,{once:!0})},_t=e=>{let t=document.querySelectorAll(`[${L}]`);for(let e of t){let t=e.shadowRoot?.querySelector(`[${L}]`);if(t instanceof HTMLDivElement)return t;e.remove()}let n=document.createElement(`div`);n.setAttribute(L,`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(L,`true`),r.appendChild(o),gt(n),setTimeout(()=>{ht(n)},S),o},R=()=>{},vt=()=>({activate:R,deactivate:R,toggle:R,comment:R,isActive:()=>!1,isEnabled:()=>!1,setEnabled:R,getToolbarState:()=>null,setToolbarState:R,onToolbarStateChange:()=>R,dispose:R,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:R,registerPlugin:R,unregisterPlugin:R,getPlugins:()=>[],getDisplayName:()=>null}),yt=()=>{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})}}},bt=e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`),xt=(e,t)=>{let n=t?.componentName??`div`,r={version:Ae,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>${bt(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()}},St=async(e,t={})=>(await Promise.allSettled(e.map(e=>w(e,t)))).map(e=>e.status===`fulfilled`?e.value:``),Ct=e=>e.length<=1?e[0]??``:e.map((e,t)=>`[${t+1}]\n${e}`).join(`
|
|
11
|
+
|
|
12
|
+
`),wt=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,Tt=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 St(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=xt(a,{componentName:e.componentName,entries:s})}}catch(e){t.onCopyError(Tt(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)},B=(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 _},kt=(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=z(r,i),a=t.width*t.height;a>0&&n/a>=.75&&c.push(e)}else B(i,r)&&c.push(e)}return Dt(c)},V=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),At=(e,t,n=!0)=>V(kt(e,t,n)),jt=(e,t)=>e.width<=0?0:d((t.x-e.x)/e.width,0,1),Mt=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}},Nt=()=>{ct(),Me(),be()},Pt=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),Ft=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),It=e=>({...e,borderRadius:`0px`,transform:`none`}),H=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),Lt=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:H.has(e),U=(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||U(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&&Lt(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}},Gt=(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}}),W={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]=Xe({theme:Wt,options:{...W,...e},actions:[]}),a=()=>{let r=Wt,a={...W,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=Gt(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?Gt(Gt(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=Mt(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,tn=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},G=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?tn(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,K=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),q=K({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),an={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},on={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())}}]},sn=(e,t)=>t?`${e}\n${t}`:e,cn=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=>b(e.outerHTML)).join(`
|
|
13
|
+
|
|
14
|
+
`),r=await t.hooks.transformHtmlContent(n,t.elements);return r?xt(sn(r,await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}):!1})}})}),ln=K({name:`copy-styles`,contextMenuAction:e=>({id:`copy-styles`,label:`Copy styles`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>xt(sn(t.elements.map(E).join(`
|
|
15
|
+
|
|
16
|
+
`),await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}))}}),cleanup:D}),un=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,J=`react-grab-comment-items`,dn=`react-grab-history-items`,fn=`react-grab-clear-confirmed`,pn=()=>{try{let e=sessionStorage.getItem(dn);e&&!sessionStorage.getItem(J)&&sessionStorage.setItem(J,e),sessionStorage.removeItem(dn)}catch{}},mn=()=>{try{let e=sessionStorage.getItem(J);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},Y=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},X=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=X(e);try{sessionStorage.setItem(J,JSON.stringify(gn))}catch{}return gn};let gn=[],_n=!1;typeof window<`u`&&(pn(),gn=mn(),_n=Y(fn));const vn=()=>gn,yn=e=>hn([{...e,id:un(`comment`)},...gn].slice(0,20)),bn=e=>{hn(gn.filter(t=>t.id!==e))},xn=()=>hn([]),Sn=()=>_n,Cn=()=>{_n=!0;try{sessionStorage.setItem(fn,`1`)}catch{}},wn=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`},Tn=[q,an,cn,ln,on];let En=!1;const Dn=new Set,On=t=>{if(typeof window>`u`)return vt();let r={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,...G(),...t};if(r.enabled===!1||En)return vt();En=!0,$t();let{enabled:u,...d}=r;return o(t=>{let r=!1,o,u=Kt(d),{store:b,actions:S}=mt({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`),Ae=e(()=>b.current.state===`active`&&b.current.phase===`justDragged`),E=e(()=>b.current.state===`copying`),D=e(()=>E()||b.selectionInteractionLockDepth>0),Re=e(()=>b.current.state===`justCopied`),O=e(()=>b.current.state===`active`&&!!b.current.isPromptMode),k=e(()=>b.pendingCommentMode||O()),ze=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 Be=ne(),[A,j]=c(Be?!Be.collapsed:!0),[Ve,He]=c(0),[Ue,We]=c(0),[Ge,Ke]=c(Be),[M,qe]=c(!1),[Je,Ye]=c(vn()),[Xe,Ze]=c(null),[Qe,N]=c(null),[$e,et]=c(null),tt,nt=null,P=new Map,[rt,it]=c(0),[at,ot]=c(!1),st=[],ct=new WeakMap,lt=()=>{ct=new WeakMap},ut=()=>{zt(!1),lt()},dt=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};v(n),Ke(n);for(let e of Dn)e(n)},ft=e=>P.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},L=e=>{let t=ft(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?(P.set(e.id,r),r):n},ht=e=>L(e)[0],gt=e(()=>{Xe();let e=new Set;for(let t of Je())L(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}}),R=()=>{H.timerId!==null&&(clearTimeout(H.timerId),H.timerId=null)},vt=()=>{H.copyWaiting=!1,H.holdTimerFired=!1,H.startTimestamp=null};g(()=>{if(b.current.state!==`holding`){R();return}H.startTimestamp=Date.now(),H.timerId=window.setTimeout(()=>{if(H.timerId=null,H.copyWaiting){H.holdTimerFired=!0;return}S.activate()},b.keyHoldDuration),l(R)}),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)=>{Tt(e,t,n),S.clearInputText()},St=()=>{let e=b.frozenElement||Z();e&&S.enterPromptMode({x:b.pointer.x,y:b.pointer.y},e)},Tt=(e,t,n)=>{S.setCopyStart({x:t,y:n},e)},z={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},B=null,[Dt,Ot]=c(null),kt=(e,t)=>{B!==null&&clearTimeout(B),Ot(null),B=window.setTimeout(()=>{Ot({x:e,y:t}),B=null},32)},V=null,H={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},U=null,[Rt,zt]=c(!1),Vt=0,Gt=!1,W=null,Qt=()=>{Gt=!0,W!==null&&window.clearTimeout(W),W=window.setTimeout(()=>{Gt=!1,W=null},de)},$t=()=>{W!==null&&(window.clearTimeout(W),W=null),Gt=!1},en=0,tn=0,G=null,K=null,q=!1,an=null,[on,sn]=c(null),[cn,ln]=c(void 0),[J,dn]=c([]),[fn,pn]=c(0),mn=qt(ye,F),Y=Zt(()=>b.pointer,()=>T(),e=>{if(De()){if(S.shiftDragStart(e),U){U={x:U.x+e.x,y:U.y+e.y};return}let{pageX:t,pageY:n}=Yn(b.pointer.x,b.pointer.y);U={x:t,y:n}}}),X=e(()=>w()&&!E()),hn=new Map,gn=(e,t)=>{let n=un(`grabbed`),r={id:n,bounds:e,createdAt:Date.now(),element:t};S.addGrabbedBox(r),u.hooks.onGrabbedBox(e,t);let i=window.setTimeout(()=>{hn.delete(n),S.removeGrabbedBox(n)},de);hn.set(n,i)},_n=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||=Fe(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}}))},On=new Map,kn=e=>{let t=On.get(e);t!==void 0&&(window.clearTimeout(t),On.delete(e))},An=()=>{for(let e of On.values())window.clearTimeout(e);On.clear()},jn=e=>{kn(e);let t=window.setTimeout(()=>{On.delete(e),S.updateLabelInstance(e,`fading`),setTimeout(()=>{On.delete(e),S.removeLabelInstance(e)},150)},de);On.set(e,t)},Mn=(e,t)=>{if(t)kn(e);else{let t=b.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&jn(e)}},Nn=(e,t,n,r,i)=>{S.clearLabelInstances(),An();let a=un(`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},Pn=()=>{An(),S.clearLabelInstances()},Fn=(e,t,n)=>{t?S.updateLabelInstance(e,`copied`):S.updateLabelInstance(e,`error`,n||`Unknown error`),jn(e)},In=async(e,t,n,r)=>{$t(),b.current.state!==`copying`&&S.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=wt(e,`Action failed`)}t&&Fn(t,i,a),b.current.state===`copying`&&(i&&S.completeCopy(n),r?Q():i?(S.activate(),Qt()):S.unfreeze())},Ln=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=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){bn(n),P.delete(n);break}}}let c=t.map((e,t)=>Ie(e,t===0)),l=yn({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 d=l[0];d&&s&&P.set(d.id,[...t]);let f=new Set(l.map(e=>e.id));for(let e of P.keys())f.has(e)||P.delete(e)},Rn=(e,t,n)=>{let r=e[0],i=n??(r?Fe(r):null),a=r?x(r):null,o=i??a??void 0;return Et({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)=>{Ln({copiedElements:e,content:n,extraPrompt:t,elementName:o,tagName:a,componentName:i})},onCopyError:u.hooks.onCopyError},e,t)},zn=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&&gn(F(t),t)}if(await Se(),r.length>0)await Rn(r,t,n);else if(i.length>0&&!(await Promise.all(i)).every(Boolean))throw Error(`Failed to copy`);_n(e)},Bn=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?Pt(l):It(F(t)),f=u?d.x+d.width/2:n,p=x(t);$t(),S.startCopy();let m=p?Nn(d,p,void 0,`copying`,{element:t,mouseX:f,elements:r}):null;le(t).then(async e=>{await In(()=>zn(c,i,e??void 0),m,t,a),o?.()}).catch(e=>{m&&Fn(m,!1,wt(e,`Action failed`)),b.current.state===`copying`&&S.unfreeze()})},Z=e(()=>{if(b.viewportVersion,!X()||Te()||D())return null;let e=b.detectedElement;return _(e)?e:null}),Vn=e(()=>b.frozenElement||(be()?null:Z()));g(()=>{let e=b.detectedElement;if(!e)return;let t=setInterval(()=>{_(e)||S.setDetectedElement(null)},100);l(()=>clearInterval(t))}),g(i(Vn,e=>{if(G!==null&&(clearTimeout(G),G=null),!e){sn(null);return}G=window.setTimeout(()=>{G=null,sn(e)},100)})),l(()=>{G!==null&&(clearTimeout(G),G=null)}),g(()=>{let e=b.frozenElements;l(Ee(e))}),g(i(w,e=>{e&&u.store.options.freezeReactUpdates&&l(je())}));let Hn=()=>{if(b.isTouchMode&&T()){let e=b.detectedElement;return!e||pe(e)?void 0:e}let e=Vn();if(!(!e||pe(e)))return e},Un=e(()=>Hn()),Wn=()=>Un()?b.isTouchMode&&T()?X():X()&&!Te():!1,Gn=e(()=>{b.viewportVersion;let e=b.frozenElements;if(e.length===0)return[];let t=b.frozenDragRect;return t&&e.length>1?[Pt(t)]:e.filter(e=>e!==null).map(e=>F(e))}),Kn=e(()=>{if(!Rt()||b.pendingCommentMode||q)return null;let e=b.detectedElement;return!_(e)||pe(e)||b.frozenElements.includes(e)?null:e}),qn=e(()=>{b.viewportVersion;let e=Kn();if(e)return F(e)}),Jn=e(()=>{b.viewportVersion;let e=b.frozenElements;if(e.length>0){let t=Gn();if(e.length===1){let e=t[0];if(e)return e}let n=b.frozenDragRect;return n?t[0]??Pt(n):It(Ut(t))}let t=Un();if(t)return F(t)}),Yn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),Xn=(e,t)=>{let{pageX:n,pageY:r}=Yn(e,t);return{x:Math.abs(n-b.dragStart.x),y:Math.abs(r-b.dragStart.y)}},Zn=e(()=>{if(!T())return!1;let e=Xn(b.pointer.x,b.pointer.y);return e.x>2||e.y>2}),Qn=(e,t)=>{let{pageX:n,pageY:r}=Yn(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}},$n=e=>e.code===`Space`||e.key===` `,er=()=>{if(!T())return;S.startDragReposition();let{pageX:e,pageY:t}=Yn(b.pointer.x,b.pointer.y);U={x:e,y:t}},tr=()=>{S.stopDragReposition(),U=null},nr=e(()=>{if(b.viewportVersion,!Zn())return;let e=Qn(b.pointer.x,b.pointer.y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),rr=e(()=>{if(b.viewportVersion,!Zn())return[];let e=Dt();if(!e)return[];let t=Qn(e.x,e.y),n=At(t,ye);return(n.length>0?n:At(t,ye,!1)).map(e=>F(e))}),ir=e(()=>{let e=rr();if(e.length>0)return e;let t=qn();return t?[...Gn(),t]:Gn()}),ar=e(()=>(b.viewportVersion,O()||b.frozenElements.length<2?[]:b.frozenElements.filter(_).map(e=>{let t=F(e),n=ct.get(e),r=n===void 0?void 0:t.x+t.width*n,i=Fe(e)??void 0;return fetch(`http://127.0.0.1:62771/ingest/777f94`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({sessionId:`777f94`,runId:`initial`,hypothesisId:`C`,location:`core/index.tsx:frozenLabelEntries`,message:`Frozen label entry computed`,data:{tagName:x(e)||`element`,componentName:i,textContent:e instanceof HTMLElement?e.innerText?.slice(0,80):void 0,frozenIndex:b.frozenElements.indexOf(e),frozenCount:b.frozenElements.length},timestamp:Date.now()})}).catch(()=>{}),{tagName:x(e)||`element`,componentName:i,bounds:t,mouseX:r}}))),or=e(()=>{if(E()||O()){b.viewportVersion;let e=b.frozenElement||Z();return e?{x:I(F(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}}),sr=e(()=>{if(!Rt()||b.frozenElements.length!==1)return;b.viewportVersion;let e=b.frozenElements[0];if(!_(e))return;let t=ct.get(e);if(t===void 0)return;let n=F(e);return n.x+n.width*t});g(i(()=>[Z(),b.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&S.setLastGrabbed(null),e&&u.hooks.onElementHover(e)})),g(i(()=>Z(),e=>{let t=++en,n=()=>{en===t&&S.setSelectionSource(null,null)};if(!e){n();return}ue(e).then(e=>{if(en===t){if(!e){n();return}S.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{en===t&&S.setSelectionSource(null,null)})}));let cr=e(()=>b.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),lr=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=O(),i=Z(),a=nr(),o=u.store.theme.enabled,s=u.store.theme.selectionBox.enabled,c=u.store.theme.dragBox.enabled,l=Zn(),d=Vn(),f=Re();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:[...cr()],labelInstances:[...lr()],selectionFilePath:b.selectionFilePath,toolbarState:Ge()}}),e=>{u.hooks.onStateChange(e)})),g(i(()=>[O(),b.pointer.x,b.pointer.y,Z()],([e,t,n,r])=>{u.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),g(i(()=>[si(),Jn(),Z()],([e,t,n])=>{u.hooks.onSelectionBox(!!e,t??null,n)})),g(i(()=>[mi(),nr()],([e,t])=>{u.hooks.onDragBox(!!e,t??null)})),g(i(()=>[gi(),hi(),or(),Z(),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 ur=null,dr=e=>{if(e){if(!ur){ur=document.createElement(`style`),ur.setAttribute(`data-react-grab-cursor`,``);let e=se();e&&(ur.nonce=e),oe(ur),document.head.appendChild(ur)}ur.textContent=`* { cursor: ${e} !important; }`}else ur&&=(ur.remove(),null)};g(i(()=>[w(),E(),O()],([e,t,n])=>{dr(t?`progress`:e&&!n?`crosshair`:null)}));let fr=()=>{let e=C();S.activate(),e||u.hooks.onActivate()},Q=()=>{let e=T(),t=b.previouslyFocusedElement;tr(),S.deactivate(),ut(),Ir(),K=null,q=!1,e&&(document.body.style.userSelect=``),V&&window.clearTimeout(V),Y.stop(),t instanceof HTMLElement&&_(t)&&t.focus(),u.hooks.onDeactivate()},pr=()=>{C()&&S.releaseHold(),w()&&Q(),$t()},mr=()=>{S.setWasActivatedByToggle(!0),fr()},hr=()=>{S.clearLastCopied();let e=[...b.frozenElements],t=b.frozenElement||Z(),n=O()?b.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+b.copyOffsetFromCenterX;S.setPointer({x:a,y:o}),S.exitPromptMode(),S.clearInputText(),Bn({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},gr=()=>{if(S.clearLastCopied(),O()){if(ze()){S.clearInputText(),Q();return}S.setPendingDismiss(!0),We(e=>e+1)}},_r=()=>{S.clearInputText(),Q()},vr=()=>{S.setPendingDismiss(!1)},yr=()=>{let e=b.frozenElement||Z(),t=Z();fetch(`http://127.0.0.1:62771/ingest/777f94`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({sessionId:`777f94`,runId:`initial`,hypothesisId:`A,B,D`,location:`core/index.tsx:handleToggleExpand`,message:`Toggle expand requested`,data:{chosenText:e instanceof HTMLElement?e.innerText?.slice(0,80):null,chosenComponentName:e?Fe(e):null,targetText:t instanceof HTMLElement?t.innerText?.slice(0,80):null,frozenElementText:b.frozenElement instanceof HTMLElement?b.frozenElement.innerText?.slice(0,80):null,frozenTexts:b.frozenElements.map(e=>e instanceof HTMLElement?e.innerText?.slice(0,80):x(e)),resolvedComponentName:cn(),pointer:b.pointer},timestamp:Date.now()})}).catch(()=>{}),e&&bt(e,b.pointer.x,b.pointer.y),St()},br=()=>{if(w())Q();else if(A()){let e=Ge()?.defaultAction??`comment`;e===`comment`?S.setPendingCommentMode(!0):(an=e,q=!0),mr()}},xr=(e,t,n)=>{S.setPendingCommentMode(!1),S.clearInputText(),S.enterPromptMode({x:t,y:n},e)},Sr=(e,t)=>{ut(),S.showContextMenu(t,e),Ir(),Gi(),u.hooks.onContextMenu(e,t)},Cr=(e,t)=>{let n=an;if(an=null,!n)return;let r=u.store.actions.find(e=>e.id===n);if(!r){qi(ce),Sr(e,t);return}let i=F(e),a=Ti({element:e,filePath:b.selectionFilePath??void 0,lineNumber:b.selectionLineNumber??void 0,tagName:x(e)||void 0,componentName:cn(),position:t,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:i,fallbackSelectionBounds:[i],position:t}});r.onAction(a)},wr=()=>{if(A()){if(w()&&k()){Q();return}S.setPendingCommentMode(!0),w()||mr()}},Tr=(e,t,n)=>{let r=n&&Rt()&&!T()&&!b.pendingCommentMode&&!q;if(!A()||O()||be()&&!r||D()||b.contextMenuPosition!==null)return;if(S.setPointer({x:e,y:t}),z.latestPointerX=e,z.latestPointerY=t,r){let n=_e(e,t);n!==b.detectedElement&&S.setDetectedElement(n);return}let i=performance.now(),a=z.pendingDetectionScheduledAt>0&&i-z.pendingDetectionScheduledAt<200;if(i-z.lastDetectionTimestamp>=32&&!a&&(z.lastDetectionTimestamp=i,z.pendingDetectionScheduledAt=i,setTimeout(()=>{let e=_e(z.latestPointerX,z.latestPointerY);e!==b.detectedElement&&S.setDetectedElement(e),z.pendingDetectionScheduledAt=0})),T()){if(De()){let{pageX:n,pageY:r}=Yn(e,t);U&&S.shiftDragStart({x:n-U.x,y:r-U.y}),U={x:n,y:r}}kt(e,t);let n=Xt(e,t),r=n.top||n.bottom||n.left||n.right;r&&!Y.isActive()?Y.start():!r&&Y.isActive()&&Y.stop()}},Er=(e,t,n)=>!X()||D()?!1:(!n&&Rt()&&ut(),S.startDrag({x:e,y:t},n),S.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,kt(e,t),u.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),Dr=(e,t)=>{let n=b.frozenElements.includes(e),r=b.frozenElements.length===0;if(!n){let n=jt(F(e),t);if(ct.set(e,n),r){let t=Fe(e)??void 0;fetch(`http://127.0.0.1:62771/ingest/777f94`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({sessionId:`777f94`,runId:`post-fix`,hypothesisId:`A`,location:`core/index.tsx:toggleShiftMultiSelection`,message:`First shift-selected component fallback set`,data:{componentName:t,textContent:e instanceof HTMLElement?e.innerText?.slice(0,80):void 0},timestamp:Date.now()})}).catch(()=>{}),ln(t)}}S.toggleFrozenElement(e),Me();let i=b.frozenElements.includes(e);if(i||ct.delete(e),b.frozenElements.length===0){ut(),S.unfreeze();return}me(b.frozenElements),zt(!0),S.setPointer(t),S.setLastGrabbed(i?e:b.frozenElements[b.frozenElements.length-1]),S.freeze(),Ir()},Or=()=>{ut();let e=b.frozenElements.filter(_);if(e.length===0){S.unfreeze();return}Bn({element:e[0],cursorX:b.pointer.x,selectedElements:e,shouldDeactivateAfter:b.wasActivatedByToggle})},kr=(e,t,n)=>{let r=At(e,ye),i=r.length>0?r:At(e,ye,!1);if(i.length===0)return;let a=n&&!b.pendingCommentMode&&!q;if(a&&S.addFrozenElements(i),me(a?b.frozenElements:i),u.hooks.onDragEnd(i,e),a){let e=i[i.length-1];zt(!0),Me(),S.setPointer(I(F(e))),S.setLastGrabbed(e),S.freeze(),Ir();return}let o=i[0],s=I(F(o));S.setPointer(s),S.setFrozenElements(i);let c=Ft(e);if(S.setFrozenDragRect(c),S.freeze(),S.setLastGrabbed(o),b.pendingCommentMode){xr(o,s.x,s.y);return}if(q){q=!1,an?Cr(o,s):Sr(o,s);return}let l=b.wasActivatedByToggle&&!t;Bn({element:o,cursorX:s.x,selectedElements:i,shouldDeactivateAfter:l,dragRect:c})},Ar=e=>{for(let t of b.frozenElements)if(_(t)&&rn(e,F(t)))return t;return null},jr=(e,t,n,r)=>{let i=_(b.frozenElement)?b.frozenElement:null,a=_(K)?K: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&&!q){o!==null&&Dr(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=I(F(c));l=e.x,d=e.y}else l=e,d=t;if(K=null,b.pendingCommentMode){xr(c,l,d);return}if(q){q=!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?Cr(c,t):Sr(c,t);return}let m=b.wasActivatedByToggle&&!n;S.setLastGrabbed(c),Bn({element:c,cursorX:l,shouldDeactivateAfter:m})},Mr=()=>{T()&&(tr(),S.cancelDrag(),Y.stop(),document.body.style.userSelect=``)},Nr=(e,t,n,r)=>{if(!T())return;B!==null&&(clearTimeout(B),B=null),Ot(null);let i=Xn(e,t),a=i.x>2||i.y>2,o=a?Qn(e,t):null;a?S.endDrag():S.cancelDrag(),tr(),Y.stop(),document.body.style.userSelect=``,o?kr(o,n,r):jr(e,t,n,r)},$=yt(),Pr=Yt(),Fr=e=>{let t;try{t=Pr.originalKeyDescriptor?.get?Pr.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||nn(e.code),r=w()||C();return n&&r&&!O()&&!b.wasActivatedByToggle&&$e()===null?(Pr.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};$.addDocumentListener(`keydown`,Fr,{capture:!0}),$.addDocumentListener(`keyup`,Fr,{capture:!0}),$.addDocumentListener(`keypress`,Fr,{capture:!0});let Ir=()=>{dn([]),pn(0),mn.clearHistory()},Lr=e=>{S.setFrozenElement(e),S.freeze(),K=e;let t=I(F(e));S.setPointer(t),b.contextMenuPosition!==null&&S.showContextMenu(t,e)},Rr=e=>{let t=Mt(F(e)),n=ve(t.x,t.y).filter(ye).reverse();dn(n),pn(Math.max(0,n.indexOf(e)))},zr=e=>{let t=J()[e];t&&(pn(e),mn.clearHistory(),Lr(t))},Br=e=>{if(!w()||O()||Rt()||!ie.has(e.key))return!1;let t=Vn(),n=!t;if(t||=_e(window.innerWidth/2,window.innerHeight/2),!t)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Ir();let r=mn.findNext(e.key,t);return!r&&!n?!1:(e.preventDefault(),e.stopPropagation(),Lr(r??t),!0)}J().length===0&&Rr(t);let r=mn.findNext(e.key,t)??t;e.preventDefault(),e.stopPropagation(),Lr(r);let i=J().indexOf(r);return i===-1?Rr(r):pn(i),!0},Vr=e=>{if(!nn(e.code)||f(e)||D())return!1;let t=b.lastCopiedElement;if(!C()&&!O()&&!w()&&t&&_(t)&&!b.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let n=I(F(t));return S.setPointer(n),bt(t,n.x,n.y),S.setFrozenElement(t),S.clearLastCopied(),St(),w()||fr(),!0}if(C()&&!O()){e.preventDefault(),e.stopImmediatePropagation();let t=b.frozenElement||Z();return t&&bt(t,b.pointer.x,b.pointer.y),S.setPointer({x:b.pointer.x,y:b.pointer.y}),t&&S.setFrozenElement(t),St(),V!==null&&(window.clearTimeout(V),V=null),w()||fr(),!0}return!1},Hr=e=>{if(e.key?.toLowerCase()!==`o`||O()||!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},Ur=e(()=>J().map(e=>({tagName:x(e)||`element`,componentName:Fe(e)??void 0}))),Wr=e(()=>({items:Ur(),activeIndex:fn(),isVisible:J().length>0})),Gr=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()&&(R(),vt(),S.releaseHold())),!nn(e.code)||!C()))){if((w()||C())&&!O()&&(e.preventDefault(),nn(e.code)&&e.stopImmediatePropagation()),w()){if(b.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||e.repeat)return;V!==null&&window.clearTimeout(V),V=window.setTimeout(()=>{Q()},200);return}if(C()&&e.repeat){if(H.copyWaiting){let e=H.holdTimerFired;vt(),e&&S.activate()}return}if(!(E()||Re())&&!C()){let t=u.store.options.keyHoldDuration??100;f(e)?ee(e)?t+=600:t+=400:te()&&(t+=600),vt(),S.startHold(t)}}};$.addWindowListener(`keydown`,e=>{if(Fr(e),!A()){Ht(e,u.store.options)&&!e.repeat&&He(e=>e+1);return}let t=nn(e.code)&&C()&&!O(),n=y(e,`data-react-grab-input`);if(O()&&Ht(e,u.store.options)&&!e.repeat&&!n){e.preventDefault(),e.stopPropagation(),gr();return}if(e.key===`Escape`&&$e()!==null)return;if(e.key===`Escape`&&Xe()!==null){Fi();return}if(e.key===`Escape`&&Qe()!==null){Ii();return}let r=y(e,`data-react-grab-ignore-events`)&&!t;if(O()||r)return e.key===`Escape`&&(O()?gr():b.wasActivatedByToggle&&Q()),r&&ie.has(e.key)&&Br(e),void 0;if(T()&&$n(e)){e.repeat||er(),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()-Vt<200;Br(e)||Vr(e)||Hr(e)||i||Gr(e)},{capture:!0}),$.addWindowListener(`keyup`,e=>{if(Fr(e))return;if($n(e)&&De()&&(tr(),e.preventDefault(),e.stopPropagation()),e.key===`Shift`&&Rt()){T()&&Mr(),Or();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):Lt(e.key,e.code);if(Re()||Gt){(r||n)&&($t(),Q());return}if(!C()&&!w()||O())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(V!==null&&(window.clearTimeout(V),V=null),e||o)return;Q()}else !i&&r&&V!==null&&(window.clearTimeout(V),V=null);return}if(r||n){if(b.wasActivatedByToggle&&u.store.options.activationMode!==`hold`)return;if(C()||H.holdTimerFired&&n){R();let t=(H.startTimestamp?Date.now()-H.startTimestamp:0)>=200,n=H.holdTimerFired&&t&&(u.store.options.allowActivationInsideInput||!f(e));vt(),n?S.activate():S.releaseHold()}else Q()}},{capture:!0}),$.addDocumentListener(`copy`,()=>{C()&&(H.copyWaiting=!0)}),$.addWindowListener(`keypress`,Fr,{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())&&!O()&&be()&&!e.shiftKey&&!Rt()&&(S.unfreeze(),Ir()),Tr(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&&Qe()===null)){if(O()){let t=Jn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?hr():gr();return}if(D()){e.preventDefault(),e.stopImmediatePropagation();return}Er(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=X()||D()||T(),n=e.metaKey||e.ctrlKey;Nr(e.clientX,e.clientY,n,e.shiftKey),t&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),$.addWindowListener(`contextmenu`,e=>{if(!X()||E()||O())return;let t=y(e,`data-react-grab-ignore-events`),n={x:e.clientX,y:e.clientY},r=t&&b.frozenElements.length>1?Ar(n):null;if(t&&J().length>0)Ir();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(),Sr(i,n)},{capture:!0}),$.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Mr()}),$.addWindowListener(`click`,e=>{y(e,`data-react-grab-ignore-events`)||b.contextMenuPosition===null&&(X()||E()||Ae())&&(e.preventDefault(),e.stopImmediatePropagation(),b.wasActivatedByToggle&&!E()&&!O()&&!e.shiftKey&&(C()?S.setWasActivatedByToggle(!1):Q()))},{capture:!0}),$.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){S.clearGrabbedBoxes();let e=b.activationTimestamp;w()&&!O()&&e!==null&&Date.now()-e>500&&Q()}}),$.addWindowListener(`blur`,()=>{Mr(),C()&&(R(),S.releaseHold(),vt()),ut()}),$.addWindowListener(`focus`,()=>{Vt=Date.now()}),$.addWindowListener(`focusin`,e=>{y(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let Kr=()=>{if(!(b.isTouchMode&&!C()&&!w())&&A()&&!O()&&!D()&&!be()&&!T()&&b.contextMenuPosition===null&&b.frozenElements.length===0){let e=_e(b.pointer.x,b.pointer.y);S.setDetectedElement(e)}},qr=null,Jr=null,Yr=()=>{Nt(),Kr(),S.incrementViewportVersion(),S.updateContextMenuPosition()};$.addWindowListener(`scroll`,Yr,{capture:!0});let Xr=window.innerWidth,Zr=window.innerHeight;$.addWindowListener(`resize`,()=>{let e=window.innerWidth,t=window.innerHeight;if(Xr>0&&Zr>0){let n=e/Xr,r=t/Zr,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})}Xr=e,Zr=t,Yr()});let Qr=window.visualViewport;if(Qr){let{signal:e}=$;Qr.addEventListener(`resize`,Yr,{signal:e}),Qr.addEventListener(`scroll`,Yr,{signal:e})}let $r=()=>{Jr===null&&(Jr=re(()=>{Jr=null,S.incrementViewportVersion()}))};g(()=>{if(u.store.theme.enabled&&(w()||E()||b.labelInstances.length>0||b.grabbedBoxes.length>0)){if(qr!==null)return;qr=window.setInterval(()=>{$r()},100);return}qr!==null&&(window.clearInterval(qr),qr=null),Jr!==null&&(Ce(Jr),Jr=null)}),l(()=>{qr!==null&&window.clearInterval(qr),Jr!==null&&Ce(Jr)}),$.addDocumentListener(`copy`,e=>{O()||y(e,`data-react-grab-ignore-events`)||(X()||E())&&e.preventDefault()},{capture:!0}),l(()=>{$.abort(),B!==null&&window.clearTimeout(B),V&&window.clearTimeout(V),$t(),nt!==null&&Ce(nt),hn.forEach(e=>window.clearTimeout(e)),hn.clear(),An(),Y.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,dr(null),Pr.restore()});let ei=_t(Le),ti=e(()=>u.store.theme.enabled),ni=e(()=>u.store.theme.selectionBox.enabled),ri=e(()=>u.store.theme.elementLabel.enabled),ii=e(()=>u.store.theme.dragBox.enabled),ai=e(()=>Re()||M()&&!be()),oi=e(()=>rr().length>0),si=e(()=>!ti()||!ni()||ai()?!1:oi()?!0:Wn()),ci=e(()=>{let e=Un();if(e)return x(e)||void 0});g(i(()=>on(),e=>{let t=++tn;if(!e){ln(void 0);return}let n=Fe(e)??void 0;ln(n),le(e).then(r=>{tn===t&&(fetch(`http://127.0.0.1:62771/ingest/777f94`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({sessionId:`777f94`,runId:`initial`,hypothesisId:`A`,location:`core/index.tsx:componentNameEffect`,message:`Async component name resolved`,data:{name:r,fallbackComponentName:n,textContent:e instanceof HTMLElement?e.innerText?.slice(0,80):void 0,frozenCount:b.frozenElements.length,isPromptMode:O()},timestamp:Date.now()})}).catch(()=>{}),ln(r??n))}).catch(()=>{tn===t&&ln(void 0)})}));let li=e(()=>b.contextMenuPosition!==null||!ri()||ai()?!1:Wn()),ui=new Map,di=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?F(n):e.bounds,i=ui.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 ui.set(e.id,l),l},fi=e(()=>{if(!ti()||!u.store.theme.grabbedBoxes.enabled)return[];b.viewportVersion;let e=new Set(b.labelInstances.map(e=>e.id));for(let t of ui.keys())e.has(t)||ui.delete(t);return b.labelInstances.map(di)}),pi=e(()=>!ti()||!u.store.theme.grabbedBoxes.enabled?[]:(b.viewportVersion,b.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:F(e.element)}))),mi=e(()=>ti()&&ii()&&X()&&Zn()),hi=e(()=>E()?`processing`:`hover`),gi=e(()=>{if(!ti())return!1;let e=ri(),t=O(),n=E(),r=X(),i=T(),a=!!Vn(),o=M(),s=be();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),_i=e(()=>{b.viewportVersion;let e=b.contextMenuElement;return e?F(e):null}),vi=e(()=>(b.viewportVersion,b.contextMenuPosition)),yi=e(()=>{let e=b.contextMenuElement;if(!e)return;let t=b.frozenElements.length;return t>1?`${t} elements`:x(e)||void 0}),[bi]=a(()=>({element:b.contextMenuElement,frozenCount:b.frozenElements.length}),async({element:e,frozenCount:t})=>{if(e&&!(t>1))return await le(e)??void 0}),[xi]=a(()=>b.contextMenuElement,async e=>e?ue(e):null),Si=async e=>{S.incrementSelectionInteractionLockDepth();try{return await e()}finally{S.decrementSelectionInteractionLockDepth()}},Ci=(e,t,n,r,i)=>async a=>{await Si(async()=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??b.contextMenuPosition??b.pointer,l=Gn(),u=_i()??o,d=t.length>1,f=d?It(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=Nn(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`)}Fn(o,s,l)}else try{await a()}catch{}p?Q():S.unfreeze()})},wi=()=>{setTimeout(()=>{S.hideContextMenu()},0)},Ti=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?wi:S.hideContextMenu,h={element:t,elements:p,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:f??(()=>{Pn(),d?.(),bt(t,o.x,o.y),S.setPointer({x:o.x,y:o.y}),S.setFrozenElement(t),St(),w()||fr(),m()}),copy:()=>{l?.(),Bn({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:Ci(t,p,i,a,s),hideContextMenu:m,cleanup:()=>{b.wasActivatedByToggle?Q():S.unfreeze()}},g=u.hooks.transformActionContext(h);return{...h,...g}},Ei=e(()=>{let e=b.contextMenuElement;if(!e)return;let t=xi(),n=b.contextMenuPosition??b.pointer;return Ti({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:yi(),componentName:bi(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{K=null},customEnterPromptMode:()=>{Pn(),S.clearInputText(),S.enterPromptMode(n,e),wi()}})}),Di=()=>{setTimeout(()=>{S.hideContextMenu(),Q()},0)},Oi=()=>{for(let{boxId:e,labelId:t}of st)S.removeGrabbedBox(e),t&&S.removeLabelInstance(t);st=[]},ki=(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})),st.push({boxId:o,labelId:s})}},Ai=(e,t)=>{let n=L(e);ki(e,n.map(e=>F(e)),n,t)},ji=()=>{nt!==null&&(Ce(nt),nt=null)},Mi=e=>{ji();let t=()=>{e(),nt=re(t)};t()},Ni=()=>{if(!tt)return null;let e=tt.getBoundingClientRect(),t=wn(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}},Pi=e=>{Mi(()=>{let t=Ni();t&&e(t)})},Fi=()=>{Bi(),Vi(),ji(),Oi(),Ze(null),ot(!1)},Ii=()=>{ji(),N(null)},Li=()=>{S.hideContextMenu(),Ii(),Wi(),Ye(vn()),Pi(Ze)},Ri=null,zi=null,Bi=()=>{Ri!==null&&(clearTimeout(Ri),Ri=null)},Vi=()=>{zi!==null&&(clearTimeout(zi),zi=null)},Hi=()=>{zi=setTimeout(()=>{zi=null,Fi()},200)},Ui=()=>{Fi(),Ii(),Pi(et)},Wi=()=>{ji(),et(null)},Gi=()=>{Fi(),Ii(),Wi()},Ki=()=>{Qe()===null?(S.hideContextMenu(),Fi(),Wi(),Pi(N)):Ii()},qi=e=>{dt({defaultAction:e})},Ji=()=>{Bi(),Vi(),Xe()===null?(Oi(),Li()):at()?(Oi(),ot(!1)):Fi()},Yi=e=>{xt(e.content,{tagName:e.tagName,componentName:e.componentName??e.elementName,commentText:e.commentText});let t=ht(e);t&&(Pn(),re(()=>{if(!_(t))return;let n=F(t),r=Nn(n,e.tagName,e.componentName,`copied`,{element:t,mouseX:n.x+n.width/2});r&&jn(r)}))},Xi=e=>{Oi(),O()&&(S.exitPromptMode(),S.clearInputText());let t=ht(e);if(e.commentText&&t){let n=I(F(t));S.enterPromptMode(n,t),S.setInputText(e.commentText)}else Yi(e)},Zi=()=>{Oi();let e=Je();if(e.length===0)return;let t=Ct(e.map(e=>e.content)),r=e[0];xt(t,{componentName:r.componentName??r.tagName,entries:e.map(e=>({tagName:e.tagName,componentName:e.componentName??e.elementName,content:e.content,commentText:e.commentText}))}),Sn()?ra():Ui(),Pn(),re(()=>{n(()=>{for(let t of e){let e=L(t);for(let n of e){let e=F(n),r=un(`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}),jn(r)}}})})},Qi=e=>{if(Oi(),!e)return;let t=Je().find(t=>t.id===e);t&&Ai(t,`comment-hover`)},$i=e=>{Bi(),Oi(),e?(Vi(),Xe()===null&&$e()===null&&(na(),Ri=setTimeout(()=>{Ri=null,ot(!0),Li()},200))):at()&&Hi()},ea=e=>{e?Vi():at()&&Hi()},ta=e=>{Oi(),e?(Vi(),na()):at()&&Hi()},na=()=>{for(let e of Je())Ai(e,`comment-all-hover`)},ra=()=>{P.clear(),Ye(xn()),Fi()},ia=e=>{let t=b.labelInstances.find(t=>t.id===e);if(!t?.element||!_(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=>_(e)):[n];setTimeout(()=>{w()||(S.setWasActivatedByToggle(!0),fr()),S.setPointer(i),S.setFrozenElements(a),a.length>1&&t.bounds&&S.setFrozenDragRect(Ft(t.bounds)),S.freeze(),S.showContextMenu(i,n)},0)};g(()=>{let e=u.store.theme.hue;e===0?ei.style.filter=``:ei.style.filter=`hue-rotate(${e}deg)`}),u.store.theme.enabled&&import(`./renderer-CZU0dUK9.js`).then(({ReactGrabRenderer:e})=>{r||(o=p(()=>s(e,{get selectionVisible(){return si()},get selectionBounds(){return Jn()},get selectionBoundsMultiple(){return ir()},get selectionShouldSnap(){return b.frozenElements.length>0||rr().length>0},get selectionElementsCount(){return b.frozenElements.length},get frozenLabelEntries(){return ar()},get selectionFilePath(){return b.selectionFilePath??void 0},get selectionLineNumber(){return b.selectionLineNumber??void 0},get selectionTagName(){return ci()},get selectionComponentName(){return cn()},get selectionLabelVisible(){return li()},selectionLabelStatus:`idle`,get selectionArrowNavigationState(){return Wr()},onArrowNavigationSelect:zr,get labelInstances(){return fi()},get dragVisible(){return mi()},get dragBounds(){return nr()},get grabbedBoxes(){return pi()},get mouseX(){return m(()=>b.frozenElements.length>1)()?void 0:sr()??or().x},get isFrozen(){return be()||w()||M()},get inputValue(){return b.inputText},get isPromptMode(){return O()},onShowContextMenuInstance:ia,onLabelInstanceHoverChange:Mn,get onInputChange(){return S.setInputText},onInputSubmit:()=>void hr(),onToggleExpand:yr,get isPendingDismiss(){return ze()},get selectionLabelShakeCount(){return Ue()},onConfirmDismiss:_r,onCancelDismiss:vr,get toolbarVisible(){return u.store.theme.toolbar.enabled},get isActive(){return w()},onToggleActive:br,get enabled(){return A()},get shakeCount(){return Ve()},onToolbarStateChange:e=>{Ke(e),e.enabled!==A()&&(j(e.enabled),e.enabled||(pr(),Gi())),Dn.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(Dn.add(e),()=>{Dn.delete(e)}),onToolbarSelectHoverChange:qe,onToolbarRef:e=>{tt=e},get contextMenuPosition(){return vi()},get contextMenuBounds(){return _i()},get contextMenuTagName(){return yi()},get contextMenuComponentName(){return bi()},get contextMenuHasFilePath(){return!!xi()?.filePath},get actions(){return u.store.actions},get actionContext(){return Ei()},onContextMenuDismiss:Di,onContextMenuHide:wi,get commentItems(){return Je()},get commentsDisconnectedItemIds(){return gt()},get commentItemCount(){return Je().length},get clockFlashTrigger(){return rt()},get commentsDropdownPosition(){return Xe()},get isCommentsPinned(){return m(()=>Xe()!==null)()&&!at()},onToggleComments:Ji,onCopyAll:Zi,onCopyAllHover:ta,onCommentsButtonHover:$i,onCommentItemSelect:Xi,onCommentItemHover:Qi,onCommentsCopyAll:Zi,onCommentsCopyAllHover:ta,onCommentsClear:ra,onCommentsDismiss:Fi,onCommentsDropdownHover:ea,get toolbarMenuPosition(){return Qe()},get toolbarMenuActions(){return u.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return Ge()?.defaultAction??`comment`},onSetDefaultAction:qi,onToggleToolbarMenu:Ki,onToolbarMenuDismiss:Ii,get clearPromptPosition(){return $e()},onClearCommentsConfirm:()=>{Cn(),Wi(),ra()},onClearCommentsCancel:Wi}),ei))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let aa={activate:()=>{S.setPendingCommentMode(!1),!w()&&A()&&mr()},deactivate:()=>{(w()||E())&&Q()},toggle:()=>{w()?Q():A()&&mr()},comment:wr,isActive:()=>w(),isEnabled:()=>A(),setEnabled:e=>{e!==A()&&(j(e),dt({enabled:e,collapsed:!e}),e||(pr(),Gi()))},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),Ke(r),r.enabled!==A()&&(j(r.enabled),r.enabled||(pr(),Gi())),Dn.forEach(e=>e(r))},onToolbarStateChange:e=>(Dn.add(e),()=>{Dn.delete(e)}),dispose:()=>{r=!0,En=!1,o?.(),Bi(),Vi(),ji(),Dn.clear(),t()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await Rn(t)},getSource:async e=>{let t=await ue(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:Pe,getState:()=>({isActive:w(),isDragging:T(),isCopying:E(),isPromptMode:O(),isSelectionBoxVisible:!!si(),isDragBoxVisible:!!mi(),targetElement:Z(),dragBounds:nr()??null,grabbedBoxes:[...cr()],labelInstances:[...lr()],selectionFilePath:b.selectionFilePath,toolbarState:Ge()}),setOptions:e=>{u.setOptions(e)},registerPlugin:e=>{u.register(e,aa)},unregisterPlugin:e=>{u.unregister(e)},getPlugins:()=>u.getPluginNames(),getDisplayName:Fe};for(let e of Tn)u.register(e,aa);return setTimeout(()=>{Ne(!0)},fe),aa})};export{St as a,Wt as i,on as n,xt as o,an as r,On as t};
|