react-grab 0.1.28 → 0.1.30
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 +8 -138
- package/dist/core/index.cjs +9 -1
- package/dist/core/index.d.cts +11 -3
- package/dist/core/index.d.ts +11 -3
- package/dist/core/index.js +9 -1
- package/dist/core--H_JZk7a.js +16 -0
- package/dist/core-1AoeBJ2R.cjs +4386 -0
- package/dist/core-4VC4A94S.js +4249 -0
- package/dist/core-5Q_6LVh_.cjs +16 -0
- package/dist/core-6sOn3YNs.js +16 -0
- package/dist/core-B3FYVaHv.cjs +16 -0
- package/dist/core-B3I0upO1.js +4250 -0
- package/dist/core-B3ndcALq.cjs +4386 -0
- package/dist/core-B9GWVp1Q.js +16 -0
- package/dist/core-BGIMywNa.js +16 -0
- package/dist/core-BGK4C6ju.js +16 -0
- package/dist/core-BGXprTx7.cjs +16 -0
- package/dist/core-BKt5SHzo.js +16 -0
- package/dist/core-BMObVYUv.cjs +16 -0
- package/dist/core-BNMx90Sn.js +16 -0
- package/dist/core-BWQ6C5g9.js +4268 -0
- package/dist/core-BcwRbSfO.js +16 -0
- package/dist/core-Be-1ubQn.cjs +16 -0
- package/dist/core-BfpPi7c6.cjs +16 -0
- package/dist/core-BiIoWLRk.js +16 -0
- package/dist/core-BjpyJHlW.js +16 -0
- package/dist/core-Bqf3D4Ra.cjs +16 -0
- package/dist/core-Bs0wekHY.cjs +4284 -0
- package/dist/core-Bvqgv6Zr.js +16 -0
- package/dist/core-Bw0-Cecq.cjs +16 -0
- package/dist/core-BzRpJ5QI.cjs +4284 -0
- package/dist/core-C0ZgNdUR.cjs +4386 -0
- package/dist/core-C191WXKe.cjs +16 -0
- package/dist/core-C4yYleJn.js +16 -0
- package/dist/core-C758xgeI.js +16 -0
- package/dist/core-CAZ8ENTv.js +16 -0
- package/dist/core-CBUFmwfx.cjs +4386 -0
- package/dist/core-CDV48I9C.js +4249 -0
- package/dist/core-CGXCsSkm.js +4280 -0
- package/dist/core-CHsFU9FZ.js +16 -0
- package/dist/core-CJOQfSzq.js +4495 -0
- package/dist/core-CLW9tl4L.js +4249 -0
- package/dist/core-CP1yCnSB.js +16 -0
- package/dist/core-CRLyvQCt.cjs +16 -0
- package/dist/core-CZX3EijL.js +16 -0
- package/dist/core-Ccli-yLf.cjs +16 -0
- package/dist/core-Ce4pBUSh.js +16 -0
- package/dist/core-CgCGjXfB.cjs +16 -0
- package/dist/core-CiQl2PfF.cjs +16 -0
- package/dist/core-CnPpGWUc.js +16 -0
- package/dist/core-Co9954wQ.cjs +16 -0
- package/dist/core-Cr4qVf2a.js +16 -0
- package/dist/core-CrQCbm00.js +16 -0
- package/dist/core-CsCg35MW.js +16 -0
- package/dist/core-Cshs0orb.js +16 -0
- package/dist/core-CthjfoZX.cjs +16 -0
- package/dist/core-CtvavOAt.cjs +16 -0
- package/dist/core-CvoFTVjy.cjs +16 -0
- package/dist/core-CzE8I9NL.cjs +16 -0
- package/dist/core-CzGijRTx.js +16 -0
- package/dist/core-CzosrDdO.cjs +16 -0
- package/dist/core-D--fM7Xq.cjs +16 -0
- package/dist/core-D-UGQb_Z.cjs +16 -0
- package/dist/core-D0UqPwu_.cjs +16 -0
- package/dist/core-D2LzIluw.js +4495 -0
- package/dist/core-D4z4W-Qz.cjs +16 -0
- package/dist/core-D7NwJuzy.js +16 -0
- package/dist/core-DCqMIKkK.js +16 -0
- package/dist/core-DFrvwczh.cjs +4284 -0
- package/dist/core-DGxxKKPR.cjs +16 -0
- package/dist/core-DGyQeEXa.js +4495 -0
- package/dist/core-DH8Uvag-.js +4249 -0
- package/dist/core-DHZBYfsC.js +16 -0
- package/dist/core-DKVj078o.js +4249 -0
- package/dist/core-DMRsaGr7.js +16 -0
- package/dist/core-DRUnXCNA.cjs +16 -0
- package/dist/core-DRlG4zYm.cjs +16 -0
- package/dist/core-DSqJwwdV.cjs +4284 -0
- package/dist/core-DXqmRz53.cjs +16 -0
- package/dist/core-DcRxqPad.js +16 -0
- package/dist/core-DdNOX4pt.js +16 -0
- package/dist/core-Df7CMRnd.cjs +4315 -0
- package/dist/core-DiIZA6Hx.js +4495 -0
- package/dist/core-DiVnlonK.cjs +4284 -0
- package/dist/core-Dj1WV911.js +4495 -0
- package/dist/core-DjPDxMID.cjs +16 -0
- package/dist/core-DjcnHWor.cjs +16 -0
- package/dist/core-DkWjrEUZ.cjs +16 -0
- package/dist/core-Dq-CCsij.cjs +4303 -0
- package/dist/core-DsVAkMs2.js +16 -0
- package/dist/core-DueMb4P6.js +4249 -0
- package/dist/core-DvJt5JmX.js +16 -0
- package/dist/core-Dz8Hrc33.js +4249 -0
- package/dist/core-ESHKG2mL.cjs +4285 -0
- package/dist/core-Ij_B_RWV.cjs +16 -0
- package/dist/core-JyczI7kP.cjs +16 -0
- package/dist/core-K0XuILjf.cjs +4284 -0
- package/dist/core-N9HyYpZv.cjs +16 -0
- package/dist/core-PW2DC2Tb.js +4495 -0
- package/dist/core-Q84EBsQ8.cjs +16 -0
- package/dist/core-TSuD8D7m.js +16 -0
- package/dist/core-WN76m9V0.cjs +16 -0
- package/dist/core-YRKn-0AV.js +16 -0
- package/dist/core-fC6GdbUJ.js +16 -0
- package/dist/core-h5q7bqH-.cjs +4284 -0
- package/dist/core-hkgBRD_T.js +16 -0
- package/dist/core-k9l5c9Hk.cjs +16 -0
- package/dist/core-mNhkpUYQ.cjs +16 -0
- package/dist/core-qCvYE9Ox.cjs +4386 -0
- package/dist/core-rvs2FEMH.js +16 -0
- package/dist/core-sXzUCmoJ.js +16 -0
- package/dist/core-t7gaYHyj.cjs +4386 -0
- package/dist/core-thci-YqL.js +16 -0
- package/dist/core-xokESdbC.cjs +16 -0
- package/dist/core-yW0MN96-.cjs +16 -0
- package/dist/core-ydFCYlV4.js +16 -0
- package/dist/core-zQ4jjKHw.cjs +16 -0
- package/dist/extract-element-css-B-R_28uM.cjs +10 -0
- package/dist/extract-element-css-B732tro7.js +10 -0
- package/dist/extract-element-css-B9Xh1wUd.js +10 -0
- package/dist/extract-element-css-BGZPWnck.js +10 -0
- package/dist/extract-element-css-BIniUwQh.js +319 -0
- package/dist/extract-element-css-BOQUDYB3.cjs +10 -0
- package/dist/extract-element-css-BTzDGIs3.cjs +336 -0
- package/dist/extract-element-css-BWUnsvjZ.js +10 -0
- package/dist/extract-element-css-BceTcL6y.cjs +10 -0
- package/dist/extract-element-css-Bi1y8V4z.cjs +336 -0
- package/dist/extract-element-css-Bra6hEzg.js +319 -0
- package/dist/extract-element-css-BuJ3zqGO.js +10 -0
- package/dist/extract-element-css-C8lBuGP7.js +10 -0
- package/dist/extract-element-css-CBHVjrBq.cjs +10 -0
- package/dist/extract-element-css-CGxXdwim.js +10 -0
- package/dist/extract-element-css-CJx4cesM.js +10 -0
- package/dist/extract-element-css-CQBJAbFD.cjs +10 -0
- package/dist/extract-element-css-CQV8FsMB.cjs +10 -0
- package/dist/extract-element-css-CQx4Biqa.cjs +336 -0
- package/dist/extract-element-css-CTy2pRfA.js +10 -0
- package/dist/extract-element-css-CchtITXx.cjs +336 -0
- package/dist/extract-element-css-CjY9vDS6.js +10 -0
- package/dist/extract-element-css-ClnG20sN.cjs +10 -0
- package/dist/extract-element-css-CmMetO-q.cjs +10 -0
- package/dist/extract-element-css-CmOD6UeE.cjs +10 -0
- package/dist/extract-element-css-CnY9b0vB.js +10 -0
- package/dist/extract-element-css-CoQLNjVI.js +10 -0
- package/dist/extract-element-css-CqjmXl0Y.cjs +10 -0
- package/dist/extract-element-css-Cr29xtzW.cjs +10 -0
- package/dist/extract-element-css-CzNVoJEM.js +319 -0
- package/dist/extract-element-css-CzgC7nM9.cjs +10 -0
- package/dist/extract-element-css-D3Dy-3Qz.js +10 -0
- package/dist/extract-element-css-D5qqKVc-.cjs +10 -0
- package/dist/extract-element-css-D5zsPw09.cjs +10 -0
- package/dist/extract-element-css-D6UwJjf4.cjs +336 -0
- package/dist/extract-element-css-DEuA2W6G.js +10 -0
- package/dist/extract-element-css-DKkUiIlS.cjs +10 -0
- package/dist/extract-element-css-DM0EhhXw.cjs +10 -0
- package/dist/extract-element-css-DPA6C_o-.cjs +10 -0
- package/dist/extract-element-css-DU45xRGh.js +10 -0
- package/dist/extract-element-css-DUvYlz4T.js +10 -0
- package/dist/extract-element-css-DVDr5Tn6.cjs +10 -0
- package/dist/extract-element-css-Di9hCigW.js +319 -0
- package/dist/extract-element-css-DivFxCRt.js +319 -0
- package/dist/extract-element-css-DlDbU4YM.cjs +10 -0
- package/dist/extract-element-css-DsssOqcQ.cjs +10 -0
- package/dist/extract-element-css-EnvrIHtf.cjs +336 -0
- package/dist/extract-element-css-FI71J_KB.js +10 -0
- package/dist/extract-element-css-GdDDlzTf.js +10 -0
- package/dist/extract-element-css-U3MgLHty.cjs +10 -0
- package/dist/extract-element-css-U4oxl-UP.js +10 -0
- package/dist/extract-element-css-VyMIgOZy.js +10 -0
- package/dist/extract-element-css-XGv0WWIL.js +319 -0
- package/dist/extract-element-css-Y-x4luJL.cjs +10 -0
- package/dist/extract-element-css-Zz_CgLqY.js +319 -0
- package/dist/extract-element-css-_aFPl5y4.cjs +336 -0
- package/dist/extract-element-css-_uZRVqCT.cjs +10 -0
- package/dist/extract-element-css-i8nzXODQ.js +10 -0
- package/dist/extract-element-css-jh1iLRzJ.js +10 -0
- package/dist/extract-element-css-nkJQc3j1.js +10 -0
- package/dist/freeze-updates--K1ecmFi.cjs +44 -0
- package/dist/freeze-updates-1FTXgIdb.js +44 -0
- package/dist/freeze-updates-3QjTocF-.cjs +2267 -0
- package/dist/freeze-updates-81f5sY45.js +44 -0
- package/dist/freeze-updates-B1mPDmJB.js +44 -0
- package/dist/freeze-updates-B5h8teL6.cjs +44 -0
- package/dist/freeze-updates-BAYe0Nlx.js +44 -0
- package/dist/freeze-updates-BDhlBp3V.js +44 -0
- package/dist/freeze-updates-BGa9CqrW.cjs +2267 -0
- package/dist/freeze-updates-BQH6Y8E1.cjs +44 -0
- package/dist/freeze-updates-BQjWBzy4.cjs +53 -0
- package/dist/freeze-updates-BSOSfpXo.js +44 -0
- package/dist/freeze-updates-BT-s67nK.js +53 -0
- package/dist/freeze-updates-BUJeYIm5.js +44 -0
- package/dist/freeze-updates-BVDrqUzf.js +2498 -0
- package/dist/freeze-updates-BVX0QSXz.cjs +44 -0
- package/dist/freeze-updates-BXMr6a9g.cjs +2912 -0
- package/dist/freeze-updates-BZpmCVDl.cjs +2267 -0
- package/dist/freeze-updates-BbbID39H.js +1866 -0
- package/dist/freeze-updates-BdnJ5RrP.js +1866 -0
- package/dist/freeze-updates-Bj59uWit.cjs +44 -0
- package/dist/freeze-updates-Bla3E0Kv.js +53 -0
- package/dist/freeze-updates-BoYyIB3V.cjs +44 -0
- package/dist/freeze-updates-C2TqDiTp.cjs +44 -0
- package/dist/freeze-updates-C6Tg4EoW.js +44 -0
- package/dist/freeze-updates-C7c9TRvJ.cjs +44 -0
- package/dist/freeze-updates-CPNAwtsl.cjs +2267 -0
- package/dist/freeze-updates-CTP39zuf.js +44 -0
- package/dist/freeze-updates-Cm3EVm_J.cjs +53 -0
- package/dist/freeze-updates-CnSZEKoI.cjs +44 -0
- package/dist/freeze-updates-CrKe4F0s.js +44 -0
- package/dist/freeze-updates-CtYFeM4D.cjs +2267 -0
- package/dist/freeze-updates-CxYFvPj9.cjs +53 -0
- package/dist/freeze-updates-D10Qj9Ec.cjs +44 -0
- package/dist/freeze-updates-D6o46vBw.cjs +44 -0
- package/dist/freeze-updates-D7XFQ3_T.js +53 -0
- package/dist/freeze-updates-D8H25gFt.js +44 -0
- package/dist/freeze-updates-DCpGX7lt.cjs +44 -0
- package/dist/freeze-updates-DG3hLEL2.cjs +44 -0
- package/dist/freeze-updates-DO_M76qf.js +44 -0
- package/dist/freeze-updates-Db4Id665.cjs +2267 -0
- package/dist/freeze-updates-DbL_EXkN.js +1866 -0
- package/dist/freeze-updates-DcvNGCcR.cjs +44 -0
- package/dist/freeze-updates-Dh4GiYXz.cjs +44 -0
- package/dist/freeze-updates-DkKJK_nh.cjs +44 -0
- package/dist/freeze-updates-DmB-ndqy.cjs +44 -0
- package/dist/freeze-updates-DnAA3QYp.cjs +44 -0
- package/dist/freeze-updates-Dpj8jndD.js +44 -0
- package/dist/freeze-updates-DuHXIi3M.js +44 -0
- package/dist/freeze-updates-DwERlFID.js +1866 -0
- package/dist/freeze-updates-HHyWtz8f.cjs +44 -0
- package/dist/freeze-updates-JRZCAR0q.js +1866 -0
- package/dist/freeze-updates-KLyCac_c.js +44 -0
- package/dist/freeze-updates-MaNDvTJS.js +1866 -0
- package/dist/freeze-updates-REe44rww.js +44 -0
- package/dist/freeze-updates-TPRkNnYY.js +44 -0
- package/dist/freeze-updates-WfKs4yF4.js +44 -0
- package/dist/freeze-updates-d9yH0V6A.cjs +44 -0
- package/dist/freeze-updates-nzZkxjqN.js +44 -0
- package/dist/freeze-updates-q_DMlHq7.js +44 -0
- package/dist/index-0hhKx6KA.d.ts +534 -0
- package/dist/index-5oOhE8Ae.d.cts +123 -0
- package/dist/index-BA23Z7zi.d.ts +77 -0
- package/dist/index-BAbHDCJb.d.ts +190 -0
- package/dist/index-BN1ZJhWK.d.cts +471 -0
- package/dist/index-BNt_9BO7.d.ts +77 -0
- package/dist/index-BQIO-ZFv.d.cts +190 -0
- package/dist/index-BTQxeAz1.d.cts +123 -0
- package/dist/index-BxsI0BlT.d.ts +471 -0
- package/dist/index-BzzHoNRc.d.cts +77 -0
- package/dist/index-C0Scq3kL.d.ts +458 -0
- package/dist/index-CAHLDDjY.d.ts +190 -0
- package/dist/index-CIJ7ossb.d.ts +190 -0
- package/dist/index-CJqujqsv.d.cts +190 -0
- package/dist/index-CJrVDk2d.d.ts +470 -0
- package/dist/index-CQBZI4f5.d.cts +458 -0
- package/dist/index-CS3VHZ8R.d.cts +77 -0
- package/dist/index-CWd5aKyK.d.ts +123 -0
- package/dist/index-DM3Ga1zc.d.ts +123 -0
- package/dist/index-DYp_9VQ_.d.cts +470 -0
- package/dist/index-DrK-HiGj.d.ts +203 -0
- package/dist/index-GwiDNOsl.d.ts +457 -0
- package/dist/index-QLMT7NRw.d.cts +203 -0
- package/dist/index-QLi1BtdI.d.cts +190 -0
- package/dist/index-sM3yy652.d.cts +534 -0
- package/dist/index-zvkV7Xwg.d.cts +457 -0
- package/dist/index.cjs +2 -2
- package/dist/index.d.cts +21 -12
- package/dist/index.d.ts +21 -12
- package/dist/index.global.js +26 -101
- package/dist/index.iife.js +43 -0
- package/dist/index.js +2 -2
- package/dist/primitives.cjs +2 -2
- package/dist/primitives.d.cts +20 -13
- package/dist/primitives.d.ts +20 -13
- package/dist/primitives.js +2 -2
- package/dist/renderer--AVNuclr.js +9 -0
- package/dist/renderer--bWj0AZJ.js +4101 -0
- package/dist/renderer--cF4pvND.js +9 -0
- package/dist/renderer-0mo5bvxE.js +4126 -0
- package/dist/renderer-4Wa-UMC5.cjs +9 -0
- package/dist/renderer-6D9KbSAS.js +9 -0
- package/dist/renderer-7mjLlkgX.cjs +9 -0
- package/dist/renderer-B0v-2J0H.js +9 -0
- package/dist/renderer-B0yJsSRz.js +9 -0
- package/dist/renderer-B660bBKn.cjs +9 -0
- package/dist/renderer-B6m2pWq1.cjs +4102 -0
- package/dist/renderer-BA_yjKW4.cjs +9 -0
- package/dist/renderer-BDCne7IL.cjs +9 -0
- package/dist/renderer-BDKG-8eW.js +9 -0
- package/dist/renderer-BEisX7lt.js +9 -0
- package/dist/renderer-BEnSHrkN.cjs +9 -0
- package/dist/renderer-BJQHCki_.js +9 -0
- package/dist/renderer-BLEQ0lBg.js +9 -0
- package/dist/renderer-BQMe9vbO.cjs +9 -0
- package/dist/renderer-BZfQAWt2.cjs +9 -0
- package/dist/renderer-BZypunFM.cjs +9 -0
- package/dist/renderer-Be1I1mDW.cjs +9 -0
- package/dist/renderer-Bhrtihjr.cjs +9 -0
- package/dist/renderer-Bp3dRMPA.js +9 -0
- package/dist/renderer-BqYgf0tD.js +9 -0
- package/dist/renderer-BwD9ZaGr.cjs +9 -0
- package/dist/renderer-BxCRcsEK.cjs +4125 -0
- package/dist/renderer-C1Wrh8hn.js +9 -0
- package/dist/renderer-C6pztTyv.js +9 -0
- package/dist/renderer-C9bCr3pC.js +4101 -0
- package/dist/renderer-CEmrAuyA.js +9 -0
- package/dist/renderer-CG1lpM8J.cjs +9 -0
- package/dist/renderer-CIJhv1xD.js +9 -0
- package/dist/renderer-CJ3EovD7.js +9 -0
- package/dist/renderer-CJVIzi67.js +4114 -0
- package/dist/renderer-CKAmRN9i.cjs +9 -0
- package/dist/renderer-CNa9jW2d.js +9 -0
- package/dist/renderer-CS6q5sh-.cjs +4101 -0
- package/dist/renderer-CTip7L4z.cjs +4114 -0
- package/dist/renderer-Cdh6G3WO.cjs +4101 -0
- package/dist/renderer-Cfnc_J-x.js +9 -0
- package/dist/renderer-CidbOiiO.js +9 -0
- package/dist/renderer-CooL8OD4.cjs +9 -0
- package/dist/renderer-Cp8W_Vpj.cjs +4101 -0
- package/dist/renderer-Ctq4IL1w.cjs +9 -0
- package/dist/renderer-D0gZDp8v.js +9 -0
- package/dist/renderer-D2Ius1-3.cjs +9 -0
- package/dist/renderer-D2gUuAUv.cjs +9 -0
- package/dist/renderer-D6qQGrNF.js +9 -0
- package/dist/renderer-D9RBf9He.js +9 -0
- package/dist/renderer-DDpyudCh.js +9 -0
- package/dist/renderer-DEo9eIZj.cjs +9 -0
- package/dist/renderer-DHBz10-G.js +9 -0
- package/dist/renderer-DM6gVYD_.cjs +4126 -0
- package/dist/renderer-DS5wjL1R.cjs +9 -0
- package/dist/renderer-DWZQjHeF.cjs +4101 -0
- package/dist/renderer-DZ-EdxOj.cjs +9 -0
- package/dist/renderer-DblZTrea.js +9 -0
- package/dist/renderer-DcPiCh7r.js +4114 -0
- package/dist/renderer-Dfj6tfg9.cjs +4139 -0
- package/dist/renderer-DhoYb1PY.js +4103 -0
- package/dist/renderer-Dl6awT_I.cjs +9 -0
- package/dist/renderer-DmOXobMF.js +4101 -0
- package/dist/renderer-DmlAyeq6.cjs +4114 -0
- package/dist/renderer-DnwizF3I.cjs +9 -0
- package/dist/renderer-Dpzs-uao.js +4125 -0
- package/dist/renderer-Ds21virZ.cjs +4145 -0
- package/dist/renderer-DslAAsKS.js +4101 -0
- package/dist/renderer-DtBv4wTu.js +4102 -0
- package/dist/renderer-DxuOYfZN.cjs +9 -0
- package/dist/renderer-DyrsoA_r.js +9 -0
- package/dist/renderer-GlgUXTaV.js +9 -0
- package/dist/renderer-KL2bSyIW.cjs +9 -0
- package/dist/renderer-N_yFJNWi.cjs +9 -0
- package/dist/renderer-TkTQ8ZzV.cjs +4101 -0
- package/dist/renderer-WtWG_Uzr.js +4139 -0
- package/dist/renderer-YPWUo91d.cjs +9 -0
- package/dist/renderer-foaHR93_.js +9 -0
- package/dist/renderer-irss7gH9.js +9 -0
- package/dist/renderer-kNWgh9RH.js +9 -0
- package/dist/renderer-l2DsHbX5.js +4145 -0
- package/dist/renderer-lRGat4eI.js +9 -0
- package/dist/renderer-m1ynwV5m.cjs +9 -0
- package/dist/renderer-oDWZTt10.cjs +9 -0
- package/dist/renderer-ruVxrW9_.cjs +9 -0
- package/dist/renderer-tLg9bC5E.cjs +4103 -0
- package/dist/renderer-wKL03A96.cjs +9 -0
- package/dist/renderer-xY7WwwPb.cjs +9 -0
- package/dist/renderer-yNfPLGJa.js +4101 -0
- package/dist/renderer-zFA8Xsqn.js +9 -0
- package/dist/state-0zvRag7o.js +1832 -0
- package/dist/state-1bNOTRwX.js +9 -0
- package/dist/state-4KlM-876.cjs +9 -0
- package/dist/state-5YzsfKSg.js +9 -0
- package/dist/state-B2sO7SGs.cjs +9 -0
- package/dist/state-B30FVO9-.cjs +9 -0
- package/dist/state-BBF5Yd6R.cjs +1488 -0
- package/dist/state-BHM_hL69.cjs +9 -0
- package/dist/state-BKkU5MYC.js +9 -0
- package/dist/state-B_xrj8fC.js +9 -0
- package/dist/state-BaTqKR5-.js +1832 -0
- package/dist/state-Bb1Wechu.js +9 -0
- package/dist/state-BfgVpFaG.cjs +9 -0
- package/dist/state-BoRPcmmD.js +9 -0
- package/dist/state-BqB3gaPk.js +9 -0
- package/dist/state-Bt9zarML.js +1832 -0
- package/dist/state-Bw07Ecsm.js +9 -0
- package/dist/state-Bw9Y8zmt.js +9 -0
- package/dist/state-ByV_XBwX.js +9 -0
- package/dist/state-C4nNE_SS.js +9 -0
- package/dist/state-C4uusDVL.cjs +9 -0
- package/dist/state-CMwBL8Lh.cjs +9 -0
- package/dist/state-C_KJ10Ip.cjs +9 -0
- package/dist/state-ClLJ5ade.cjs +1488 -0
- package/dist/state-CpWrjvjx.js +277 -0
- package/dist/state-CwguFqss.cjs +9 -0
- package/dist/state-Cxj7mpyT.cjs +9 -0
- package/dist/state-CyWfuYBm.js +9 -0
- package/dist/state-Cz4euNVW.js +1832 -0
- package/dist/state-D1eYdbOV.js +9 -0
- package/dist/state-D231Xq-p.js +9 -0
- package/dist/state-D2nMXLig.cjs +9 -0
- package/dist/state-D3NnAU-G.js +9 -0
- package/dist/state-D4g0zX0j.cjs +9 -0
- package/dist/state-D5n1XOr-.cjs +372 -0
- package/dist/state-DPKTXrbJ.cjs +9 -0
- package/dist/state-DREKPmRw.cjs +9 -0
- package/dist/state-DT0Nzp9g.cjs +9 -0
- package/dist/state-Deun4HK-.cjs +9 -0
- package/dist/state-DfcZ51t9.js +9 -0
- package/dist/state-DgvhS6KW.cjs +1488 -0
- package/dist/state-DkjLMcvP.cjs +9 -0
- package/dist/state-DspBT1Sv.js +9 -0
- package/dist/state-DtgVqpBv.js +9 -0
- package/dist/state-DycsTHAk.cjs +9 -0
- package/dist/state-EWoHHdWu.js +9 -0
- package/dist/state-HWOltPgB.js +9 -0
- package/dist/state-JJNPE2tU.js +277 -0
- package/dist/state-KDd3Eouo.js +9 -0
- package/dist/state-Kmc6BtLp.cjs +9 -0
- package/dist/state-Q4M-6UjH.cjs +9 -0
- package/dist/state-U8yVy4Ad.cjs +9 -0
- package/dist/state-Uwm9KEi1.js +1832 -0
- package/dist/state-XYH8BGBU.cjs +372 -0
- package/dist/state-aBiYx-N-.cjs +9 -0
- package/dist/state-arg5pYvx.cjs +1488 -0
- package/dist/state-dFAAWOP9.cjs +1488 -0
- package/dist/state-daFKdtG6.js +9 -0
- package/dist/state-muKg33Sx.cjs +9 -0
- package/dist/state-wvjxc3BL.js +9 -0
- package/dist/styles.css +1 -1
- package/package.json +16 -23
- package/dist/chunk-5RMV2HA7.js +0 -101
- package/dist/chunk-QEVSATMF.cjs +0 -101
- package/dist/chunk-XWCIDYJD.cjs +0 -26
- package/dist/chunk-XYTXUEOE.js +0 -26
- package/dist/index-CN8HkCli.d.cts +0 -547
- package/dist/index-CN8HkCli.d.ts +0 -547
- package/scripts/postinstall.cjs +0 -23
|
@@ -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
|
+
const e=require(`./freeze-updates-d9yH0V6A.cjs`),t=require(`./state-CMwBL8Lh.cjs`),n=require(`./extract-element-css-U3MgLHty.cjs`);let r=require(`solid-js/web`),i=require(`solid-js`),a=require(`solid-js/store`);var o=`/*! tailwindcss v4.1.17 | 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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--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-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);--transition-fast:.1s;--transition-normal:.15s}}@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}.-top-1{top:calc(var(--spacing)*-1)}.top-0{top:calc(var(--spacing)*0)}.top-0\\.5{top:calc(var(--spacing)*.5)}.top-1\\/2{top:50%}.top-full{top:100%}.-right-1{right:calc(var(--spacing)*-1)}.right-full{right:100%}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing)*0)}.left-0\\.5{left:calc(var(--spacing)*.5)}.left-1\\.5{left:calc(var(--spacing)*1.5)}.left-1\\/2{left:50%}.left-2\\.5{left:calc(var(--spacing)*2.5)}.left-full{left:100%}.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)}.mx-0\\.5{margin-inline:calc(var(--spacing)*.5)}.-my-1\\.5{margin-block:calc(var(--spacing)*-1.5)}.my-0\\.5{margin-block:calc(var(--spacing)*.5)}.mt-0\\.5{margin-top:calc(var(--spacing)*.5)}.mt-2\\.5{margin-top:calc(var(--spacing)*2.5)}.mr-0\\.5{margin-right:calc(var(--spacing)*.5)}.mr-1\\.5{margin-right:calc(var(--spacing)*1.5)}.mr-2\\.5{margin-right:calc(var(--spacing)*2.5)}.mb-0\\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1\\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2\\.5{margin-bottom:calc(var(--spacing)*2.5)}.-ml-\\[2px\\]{margin-left:-2px}.ml-0\\.5{margin-left:calc(var(--spacing)*.5)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2\\.5{margin-left:calc(var(--spacing)*2.5)}.ml-4{margin-left:calc(var(--spacing)*4)}.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-1\\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-3\\.5{height:calc(var(--spacing)*3.5)}.h-\\[17px\\]{height:17px}.h-fit{height:fit-content}.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-1\\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-3\\.5{width:calc(var(--spacing)*3.5)}.w-5{width:calc(var(--spacing)*5)}.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}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.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:none}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.interactive-scale{transition-property:transform;transition-duration:var(--transition-normal);transition-timing-function:cubic-bezier(.34,1.56,.64,1)}@media (hover:hover) and (pointer:fine){.interactive-scale:hover{transform:scale(1.05)}}.interactive-scale:active{transform:scale(.97)}.press-scale{transition-property:transform;transition-duration:var(--transition-fast);transition-timing-function:ease-out}.press-scale:active{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,)}.animate-\\[hint-flip-in_var\\(--transition-normal\\)_ease-out\\]{animation:hint-flip-in var(--transition-normal)ease-out}.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}.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-1\\.5{gap:calc(var(--spacing)*1.5)}.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-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-black\\/25{background-color:#00000040}@supports (color:color-mix(in lab, red, red)){.bg-black\\/25{background-color:color-mix(in oklab,var(--color-black)25%,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\\.5{padding-block:calc(var(--spacing)*.5)}.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_\\#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\\]{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-\\[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\\]{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))}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,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}.\\[animation-fill-mode\\:backwards\\]{animation-fill-mode:backwards}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.\\[scrollbar-color\\:transparent_transparent\\]{scrollbar-color:transparent transparent}.\\[scrollbar-width\\:thin\\]{scrollbar-width:thin}.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}}:host{all:initial;direction:ltr}@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(.9)}60%{opacity:1;transform:scale(1.1)}80%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes hint-flip-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltip-fade-in{0%{opacity:0;transform:scale(.97)}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:.25s ease-out success-pop}.animate-tooltip-fade-in{animation:tooltip-fade-in var(--transition-fast)ease-out;will-change:transform,opacity}@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-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-content{syntax:"*";inherits:false;initial-value:""}`;const s=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),c=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return s(n)?n:null},l=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=c(e);if(t===null)return null;r.push(t)}return r},u=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,d=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,f=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=l(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,d(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=l(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return u(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},p=e=>e.isIdentity?`none`:e.is2D?u(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 m=new WeakMap,h=new WeakMap,g=new WeakMap;const _=()=>{m=new WeakMap,h=new WeakMap,g=new WeakMap},v=(e,t)=>{let n=h.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return h.set(e,{transform:i,timestamp:t}),i},ee=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=v(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))),p(i)):r?f(t):`none`},y=(e,t,n)=>{let r=g.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return g.set(e,{borderRadius:i,timestamp:n}),i},te=(e,t,n,r)=>{let i=ee(e,n.transform,r),a=y(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}},b=e=>{let t=performance.now(),n=m.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=te(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return m.set(e,{bounds:r,timestamp:t}),r},x=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),ne=t=>({current:{state:`idle`},wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:t.keyHoldDuration,pointer:{x:e.J,y:e.J},dragStart:{x:e.J,y:e.J},copyStart:{x:e.J,y:e.J},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:t.theme,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),re=n=>{let[r,i]=(0,a.createStore)(ne(n)),o=()=>{i((0,a.produce)(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null}))},s=e=>{i(`current`,(0,a.produce)(t=>{t.state===`active`&&(t.phase=e)}))},c={startHold:e=>{e!==void 0&&i(`keyHoldDuration`,e),i(`current`,{state:`holding`,startedAt:Date.now()})},releaseHold:()=>{r.current.state===`holding`&&i(`current`,{state:`idle`})},activate:()=>{i((0,a.produce)(e=>{e.current={state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1},e.activationTimestamp=Date.now(),e.previouslyFocusedElement=document.activeElement}))},deactivate:()=>{i((0,a.produce)(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:()=>{r.activationTimestamp===null?(i(`wasActivatedByToggle`,!0),c.activate()):c.deactivate()},freeze:()=>{if(r.current.state===`active`){let e=r.frozenElement??r.detectedElement;e&&i(`frozenElement`,e),s(`frozen`)}},unfreeze:()=>{r.current.state===`active`&&(i((0,a.produce)(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),s(`hovering`))},startDrag:e=>{r.current.state===`active`&&(o(),i(`dragStart`,{x:e.x+window.scrollX,y:e.y+window.scrollY}),s(`dragging`))},endDrag:()=>{r.current.state===`active`&&r.current.phase===`dragging`&&(i(`dragStart`,{x:e.J,y:e.J}),s(`justDragged`))},cancelDrag:()=>{r.current.state===`active`&&r.current.phase===`dragging`&&(i(`dragStart`,{x:e.J,y:e.J}),s(`hovering`))},finishJustDragged:()=>{r.current.state===`active`&&r.current.phase===`justDragged`&&s(`hovering`)},startCopy:()=>{let e=r.current.state===`active`;i(`current`,{state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:e=>{e&&i(`lastCopiedElement`,e);let t=r.current.state===`copying`?r.current.wasActive:!1;i(`current`,{state:`justCopied`,copiedAt:Date.now(),wasActive:t})},finishJustCopied:()=>{r.current.state===`justCopied`&&(r.current.wasActive&&!r.wasActivatedByToggle?(o(),i(`current`,{state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})):c.deactivate())},enterPromptMode:(e,t)=>{let{x:n}=x(b(t));i(`copyStart`,e),i(`copyOffsetFromCenterX`,e.x-n),i(`pointer`,e),i(`frozenElement`,t),i(`wasActivatedByToggle`,!0),r.current.state===`active`?i(`current`,(0,a.produce)(e=>{e.state===`active`&&(e.isPromptMode=!0,e.phase=`frozen`)})):(i(`current`,{state:`active`,phase:`frozen`,isPromptMode:!0,isPendingDismiss:!1}),i(`activationTimestamp`,Date.now()),i(`previouslyFocusedElement`,document.activeElement))},exitPromptMode:()=>{r.current.state===`active`&&i(`current`,(0,a.produce)(e=>{e.state===`active`&&(e.isPromptMode=!1,e.isPendingDismiss=!1)}))},setInputText:e=>{i(`inputText`,e)},clearInputText:()=>{i(`inputText`,``)},setPendingDismiss:e=>{r.current.state===`active`&&i(`current`,(0,a.produce)(t=>{t.state===`active`&&(t.isPendingDismiss=e)}))},setPointer:e=>{i(`pointer`,e)},setDetectedElement:e=>{i(`detectedElement`,e)},setFrozenElement:e=>{i((0,a.produce)(t=>{t.frozenElement=e,t.frozenElements=[e],t.frozenDragRect=null}))},setFrozenElements:e=>{i((0,a.produce)(t=>{t.frozenElements=e,t.frozenElement=e.length>0?e[0]:null,t.frozenDragRect=null}))},setFrozenDragRect:e=>{i(`frozenDragRect`,e)},setCopyStart:(e,t)=>{let{x:n}=x(b(t));i(`copyStart`,e),i(`copyOffsetFromCenterX`,e.x-n)},setLastGrabbed:e=>{i(`lastGrabbedElement`,e)},clearLastCopied:()=>{i(`lastCopiedElement`,null)},setWasActivatedByToggle:e=>{i(`wasActivatedByToggle`,e)},setPendingCommentMode:e=>{i(`pendingCommentMode`,e)},setTouchMode:e=>{i(`isTouchMode`,e)},setSelectionSource:(e,t)=>{i((0,a.produce)(n=>{n.selectionFilePath=e,n.selectionLineNumber=t}))},incrementViewportVersion:()=>{i(`viewportVersion`,e=>e+1)},addGrabbedBox:e=>{i(`grabbedBoxes`,t=>[...t,e])},removeGrabbedBox:e=>{i(`grabbedBoxes`,t=>t.filter(t=>t.id!==e))},clearGrabbedBoxes:()=>{i(`grabbedBoxes`,[])},addLabelInstance:e=>{i(`labelInstances`,t=>[...t,e])},updateLabelInstance:(e,t,n)=>{let o=r.labelInstances.findIndex(t=>t.id===e);o!==-1&&i(`labelInstances`,o,(0,a.produce)(e=>{e.status=t,n!==void 0&&(e.errorMessage=n)}))},removeLabelInstance:e=>{i(`labelInstances`,t=>t.filter(t=>t.id!==e))},clearLabelInstances:()=>{i(`labelInstances`,[])},showContextMenu:(e,t)=>{let{x:n,y:r}=x(b(t));i((0,a.produce)(i=>{i.contextMenuPosition=e,i.contextMenuElement=t,i.contextMenuClickOffset={x:e.x-n,y:e.y-r}}))},hideContextMenu:()=>{i((0,a.produce)(e=>{e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null}))},updateContextMenuPosition:()=>{let e=r.contextMenuElement,n=r.contextMenuClickOffset;if(!e||!n||!t.g(e))return;let{x:a,y:o}=x(b(e));i(`contextMenuPosition`,{x:a+n.x,y:o+n.y})}};return{store:r,actions:c}},S=`data-react-grab`,ie=`react-grab-fonts`,C=()=>{if(document.getElementById(ie)||!document.head)return;let e=document.createElement(`link`);e.id=ie,e.rel=`stylesheet`,e.href=`https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap`,document.head.appendChild(e)},ae=t=>{C();let n=document.querySelector(`[${S}]`);if(n){let e=n.shadowRoot?.querySelector(`[${S}]`);if(e instanceof HTMLDivElement&&n.shadowRoot)return e}let r=document.createElement(`div`);r.setAttribute(S,`true`),r.style.zIndex=String(e.dt),r.style.position=`fixed`,r.style.inset=`0`,r.style.pointerEvents=`none`;let i=r.attachShadow({mode:`open`});if(t){let e=document.createElement(`style`);e.textContent=t,i.appendChild(e)}let a=document.createElement(`div`);a.setAttribute(S,`true`),i.appendChild(a);let o=document.body??document.documentElement;return o.appendChild(r),setTimeout(()=>{o.appendChild(r)},e.K),a},w=()=>{},oe=()=>({activate:w,deactivate:w,toggle:w,comment:w,isActive:()=>!1,isEnabled:()=>!1,setEnabled:w,getToolbarState:()=>null,setToolbarState:w,onToolbarStateChange:()=>w,dispose:w,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:w,registerPlugin:w,unregisterPlugin:w,getPlugins:()=>[],getDisplayName:()=>null}),se=()=>{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})}}},ce=e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`),T=(t,n)=>{let r=n?.componentName??`div`,i={version:e.lt,content:t,entries:n?.entries??[{tagName:n?.tagName,componentName:r,content:t,commentText:n?.commentText}],timestamp:Date.now()},a=e=>{e.preventDefault(),e.clipboardData?.setData(`text/plain`,t),e.clipboardData?.setData(`text/html`,`<meta charset='utf-8'><pre><code>${ce(t)}</code></pre>`),e.clipboardData?.setData(`application/x-react-grab`,JSON.stringify(i))};document.addEventListener(`copy`,a);let o=document.createElement(`textarea`);o.value=t,o.style.position=`fixed`,o.style.left=`-9999px`,o.ariaHidden=`true`,document.body.appendChild(o),o.select();try{return typeof document.execCommand==`function`?document.execCommand(`copy`):!1}finally{document.removeEventListener(`copy`,a),o.remove()}},le=async(t,n={})=>(await Promise.allSettled(t.map(t=>e.b(t,n)))).map(e=>e.status===`fulfilled`?e.value:``),ue=e=>e.length<=1?e[0]??``:e.map((e,t)=>`[${t+1}]\n${e}`).join(`
|
|
11
|
+
|
|
12
|
+
`),de=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,fe=e=>e instanceof Error?e:Error(String(e)),pe=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 le(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=ue(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=T(a,{componentName:e.componentName,entries:s})}}catch(e){t.onCopyError(fe(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},me=(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)},he=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,ge=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}),_e=e=>{if(e.width<=0||e.height<=0)return[];let n=window.innerWidth,r=window.innerHeight,i=e.x,a=e.y,o=e.x+e.width,s=e.y+e.height,c=i+e.width/2,l=a+e.height/2,u=t.s(Math.ceil(e.width/32),3,20),d=t.s(Math.ceil(e.height/32),3,20),f=u*d,p=f>100?Math.sqrt(100/f):1,m=t.s(Math.floor(u*p),3,20),h=t.s(Math.floor(d*p),3,20),g=new Set,_=[],v=(e,i)=>{let a=t.s(Math.round(e),0,n-1),o=t.s(Math.round(i),0,r-1),s=`${a}:${o}`;g.has(s)||(g.add(s),_.push({x:a,y:o}))};v(i+1,a+1),v(o-1,a+1),v(i+1,s-1),v(o-1,s-1),v(c,a+1),v(c,s-1),v(i+1,l),v(o-1,l),v(c,l);for(let t=0;t<m;t+=1){let n=i+(t+.5)/m*e.width;for(let t=0;t<h;t+=1)v(n,a+(t+.5)/h*e.height)}return _},E=(t,n,r)=>{let i={left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height},a=new Set,o=_e(t);e.p();try{for(let e of o){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)a.add(e)}}finally{e.f()}let s=[];for(let t of a)!r&&e._(t)||n(t)&&s.push(t);let c=new Map;for(let e of s)c.set(e,e.getBoundingClientRect());let l=[];for(let e of s){let t=c.get(e);if(t.width<=0||t.height<=0)continue;let n={left:t.left,top:t.top,right:t.left+t.width,bottom:t.top+t.height};if(r){let r=me(i,n),a=t.width*t.height;a>0&&r/a>=.75&&l.push(e)}else he(n,i)&&l.push(e)}return ge(l)},ve=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),ye=(e,t,n=!0)=>ve(E(e,t,n)),be=t=>{let n=[],r=t.parentElement;for(;r&&!e._(r);)n.push(r),r=r.parentElement;return n},xe=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}},Se=()=>{_(),e.c(),e.h()},Ce=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),we=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Te=e=>({...e,borderRadius:`0px`,transform:`none`}),Ee=e=>({center:x(b(e))}),De=e=>x(b(e)),D=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),Oe=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:D.has(e),ke=(e,t)=>{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},Ae={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},je=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=Ae[e];t?n[t]=!0:n.key=e}return n},Me=e=>{if(typeof e==`function`)return e;let t=je(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||ke(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}},Ne=e=>!e||typeof e==`function`?{metaKey:t.a(),ctrlKey:!t.a(),shiftKey:!1,altKey:!1,key:null}:je(e),Pe=(e,n)=>{if(n.activationKey)return Me(n.activationKey)(e);let r=(t.a()?e.metaKey:e.ctrlKey)&&!e.shiftKey&&!e.altKey;return!!(e.key&&r&&Oe(e.key,e.code))},Fe=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}},Ie={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},Le=(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}}),Re={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},ze=(e={})=>{let t=new Map,n={},[r,i]=(0,a.createStore)({theme:Ie,options:{...Re,...e},actions:[]}),o=()=>{let r=Ie,a={...Re,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=Le(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)},s=(e,t)=>{n[e]=t,i(`options`,e,t)},c=[`activationMode`,`keyHoldDuration`,`allowActivationInsideInput`,`maxContextLines`,`activationKey`,`getContent`,`freezeReactUpdates`],l=e=>{for(let t of c)e[t]!==void 0&&s(t,e[t])},u=(e,n)=>{t.has(e.name)&&d(e.name);let r=e.setup?.(n,v)??{};e.theme&&(r.theme=r.theme?Le(Le(Ie,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}),o()},d=e=>{let n=t.get(e);n&&(n.config.cleanup&&n.config.cleanup(),t.delete(e),o())},f=()=>Array.from(t.keys()),p=(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&t(...n)}},m=(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},h=async(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&await t(...n)}},g=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},_=(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},v={onActivate:()=>p(`onActivate`),onDeactivate:()=>p(`onDeactivate`),onElementHover:e=>p(`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)=>p(`onDragStart`,e,t),onDragEnd:(e,t)=>p(`onDragEnd`,e,t),onBeforeCopy:async e=>h(`onBeforeCopy`,e),transformCopyContent:async(e,t)=>g(`transformCopyContent`,e,t),onAfterCopy:(e,t)=>p(`onAfterCopy`,e,t),onCopySuccess:(e,t)=>p(`onCopySuccess`,e,t),onCopyError:e=>p(`onCopyError`,e),onStateChange:e=>p(`onStateChange`,e),onPromptModeChange:(e,t)=>p(`onPromptModeChange`,e,t),onSelectionBox:(e,t,n)=>p(`onSelectionBox`,e,t,n),onDragBox:(e,t)=>p(`onDragBox`,e,t),onGrabbedBox:(e,t)=>p(`onGrabbedBox`,e,t),onElementLabel:(e,t,n)=>p(`onElementLabel`,e,t,n),onContextMenu:(e,t)=>p(`onContextMenu`,e,t),onOpenFile:(e,t)=>m(`onOpenFile`,e,t),transformHtmlContent:async(e,t)=>g(`transformHtmlContent`,e,t),transformAgentContext:async(e,t)=>g(`transformAgentContext`,e,t),transformActionContext:e=>_(`transformActionContext`,e),transformOpenFileUrl:(e,t,n)=>_(`transformOpenFileUrl`,e,t,n),transformSnippet:async(e,t)=>g(`transformSnippet`,e,t)};return{register:u,unregister:d,getPluginNames:f,setOptions:l,store:r,hooks:v}},Be=(n,r)=>{let i=[],a=(t,i)=>{let a=xe(r(t)),o=e.u(a.x,a.y).filter(n),s=o.indexOf(t);return s===-1?null:o[s+i]??null},o=e=>{let t=a(e,1);return t&&(i.push(e),i.length>50&&(i=i.slice(-50))),t},s=e=>{if(i.length>0){let e=i.pop();if(t.g(e))return e}return a(e,-1)},c=(e,t)=>{let r=e=>{let i=Array.from(e.children),a=t?i:i.reverse();for(let e of a)if(t){if(n(e))return e;let t=r(e);if(t)return t}else{let t=r(e);if(t)return t;if(n(e))return e}return null},i=e=>t?e.nextElementSibling:e.previousElementSibling,a=null;if(t&&(a=r(e)),!a){let o=e;for(;o;){let e=i(o);for(;e;){let t=r(e);if(t){a=t;break}if(n(e)){a=e;break}e=i(e)}if(a)break;let s=o.parentElement;if(!t&&s&&n(s)){a=s;break}o=s}}return a};return{findNext:(e,t)=>{switch(e){case`ArrowUp`:return o(t);case`ArrowDown`:return s(t);case`ArrowRight`:return c(t,!0);case`ArrowLeft`:return c(t,!1);default:return null}},clearHistory:()=>{i=[]}}},Ve=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Ne(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},He=()=>{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)}}},Ue=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),We=(t,n)=>{let r=null,i=()=>{if(!n()){a();return}let o=t(),s=Ue(o.x,o.y);s.top&&window.scrollBy(0,-10),s.bottom&&window.scrollBy(0,10),s.left&&window.scrollBy(-10,0),s.right&&window.scrollBy(10,0),r=s.top||s.bottom||s.left||s.right?e.k(i):null},a=()=>{r!==null&&(e.O(r),r=null)};return{start:i,stop:a,isActive:()=>r!==null}},Ge=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},Ke=()=>{try{let e=`0.1.29`,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&&!Ge()&&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})`)}).catch(()=>null)}catch{}},O=e=>typeof e!=`object`||!e||!(`postTask`in e)?!1:typeof e.postTask==`function`,qe=e=>{if(typeof window<`u`){let t=window.scheduler;if(O(t)){t.postTask(e,{priority:`background`});return}if(`requestIdleCallback`in window){requestIdleCallback(e);return}}setTimeout(e,0)},k=e=>typeof e==`object`&&!!e,Je=e=>{if(!k(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},Ye=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?Je(JSON.parse(e)):null}catch{return null}},A=e=>e===`Enter`||e===`NumpadEnter`,j=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),Xe=j({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),Ze={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},Qe={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:t=>{t.filePath&&(t.hooks.onOpenFile(t.filePath,t.lineNumber)||e.s(t.filePath,t.lineNumber,t.hooks.transformOpenFileUrl),t.hideContextMenu(),t.cleanup())}}]},$e=(e,t)=>t?`${e}\n${t}`:e,et=j({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=>e.outerHTML).join(`
|
|
13
|
+
|
|
14
|
+
`),r=await t.hooks.transformHtmlContent(n,t.elements);return r?T($e(r,await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}):!1})}})}),tt=j({name:`copy-styles`,contextMenuAction:e=>({id:`copy-styles`,label:`Copy styles`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>T($e(t.elements.map(n.n).join(`
|
|
15
|
+
|
|
16
|
+
`),await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}))}}),cleanup:n.t}),nt=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,rt=`react-grab-comment-items`,it=`react-grab-history-items`,M=`react-grab-clear-confirmed`,at=()=>{try{let e=sessionStorage.getItem(it);e&&!sessionStorage.getItem(rt)&&sessionStorage.setItem(rt,e),sessionStorage.removeItem(it)}catch{}},ot=()=>{try{let e=sessionStorage.getItem(rt);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},st=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},ct=e=>{let t=e;for(;t.length>0;){let e=JSON.stringify(t);if(new Blob([e]).size<=2097152)return t;t=t.slice(0,-1)}return t},N=e=>{P=ct(e);try{sessionStorage.setItem(rt,JSON.stringify(P))}catch{}return P};at();let P=ot(),lt=st(M);const ut=()=>P,dt=e=>N([{...e,id:nt(`comment`)},...P].slice(0,20)),ft=e=>{N(P.filter(t=>t.id!==e))},pt=()=>N([]),mt=()=>lt,ht=()=>{lt=!0;try{sessionStorage.setItem(M,`1`)}catch{}},gt=()=>{let e=document.querySelector(`meta[name="viewport"]`),t=e?.getAttribute(`content`)??null;e||(e=document.createElement(`meta`),e.name=`viewport`,document.head.appendChild(e));let n=t??``;return e.content=/maximum-scale/.test(n)?n.replace(/maximum-scale\s*=\s*[\d.]+/,`maximum-scale=1`):`${n}${n?`, `:``}maximum-scale=1`,()=>{t===null?e.remove():e.content=t}},_t=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`},vt=[Xe,Ze,et,tt,Qe];let yt=!1;const F=new Set,bt=a=>{if(typeof window>`u`)return oe();let s={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,...Ye(),...a};if(s.enabled===!1||yt)return oe();yt=!0,Ke();let{enabled:c,...l}=s;return(0,i.createRoot)(a=>{let s=!1,c,u=ze(l),{store:d,actions:f}=re({theme:Ie,keyHoldDuration:u.store.options.keyHoldDuration??100}),p=(0,i.createMemo)(()=>d.current.state===`holding`),m=(0,i.createMemo)(()=>d.current.state===`active`),h=(0,i.createMemo)(()=>d.current.state===`active`&&d.current.phase===`frozen`),g=(0,i.createMemo)(()=>d.current.state===`active`&&d.current.phase===`dragging`),_=(0,i.createMemo)(()=>d.current.state===`active`&&d.current.phase===`justDragged`),v=(0,i.createMemo)(()=>d.current.state===`copying`),ee=(0,i.createMemo)(()=>d.current.state===`justCopied`),y=(0,i.createMemo)(()=>d.current.state===`active`&&!!d.current.isPromptMode),te=(0,i.createMemo)(()=>d.pendingCommentMode||y()),ne=(0,i.createMemo)(()=>d.current.state===`active`&&!!d.current.isPromptMode&&!!d.current.isPendingDismiss),S=null;(0,i.createEffect)((0,i.on)(m,(t,n)=>{t&&!n?(e.d(),e.a(),document.body.style.touchAction=`none`,S=gt()):!t&&n&&(e.m(),e.o(),document.body.style.touchAction=``,S?.(),S=null)}));let ie=t.t(),[C,w]=(0,i.createSignal)(ie?.enabled??!0),[oe,ce]=(0,i.createSignal)(0),[le,fe]=(0,i.createSignal)(0),[me,he]=(0,i.createSignal)(ie),[ge,_e]=(0,i.createSignal)(!1),[E,ve]=(0,i.createSignal)(ut()),[D,Ae]=(0,i.createSignal)(null),[je,Le]=(0,i.createSignal)(null),[Re,Ge]=(0,i.createSignal)(null),Ke,O=null,k=new Map,[Je,Ye]=(0,i.createSignal)(0),[j,Xe]=(0,i.createSignal)(!1),Ze=[],Qe=e=>{let n=me()??t.t(),r={edge:n?.edge??`bottom`,ratio:n?.ratio??.5,collapsed:n?.collapsed??!1,enabled:n?.enabled??!0,defaultAction:n?.defaultAction??`comment`,...e};t.n(r),he(r);for(let e of F)e(r)},$e=e=>k.get(e)??[],et=e=>{let n=e.elementSelectors??[];if(n.length===0)return[];let r=[];for(let e of n)if(e)try{let n=document.querySelector(e);t.g(n)&&r.push(n)}catch{}return r},tt=e=>{let n=$e(e.id),r=n.filter(e=>t.g(e));if(n.length>0&&r.length===n.length)return r;let i=et(e);return i.length>0?(k.set(e.id,i),i):r},rt=e=>tt(e)[0],it=(0,i.createMemo)(()=>{D();let e=new Set;for(let t of E())tt(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}}),M=()=>{L.timerId!==null&&(clearTimeout(L.timerId),L.timerId=null)},at=()=>{L.copyWaiting=!1,L.holdTimerFired=!1,L.startTimestamp=null};(0,i.createEffect)(()=>{if(d.current.state!==`holding`){M();return}L.startTimestamp=Date.now(),L.timerId=window.setTimeout(()=>{if(L.timerId=null,L.copyWaiting){L.holdTimerFired=!0;return}f.activate()},d.keyHoldDuration),(0,i.onCleanup)(M)}),(0,i.createEffect)(()=>{if(d.current.state!==`active`||d.current.phase!==`justDragged`)return;let t=setTimeout(()=>{f.finishJustDragged()},e.z);(0,i.onCleanup)(()=>clearTimeout(t))}),(0,i.createEffect)(()=>{if(d.current.state!==`justCopied`)return;let t=setTimeout(()=>{f.finishJustCopied()},e.z);(0,i.onCleanup)(()=>clearTimeout(t))}),(0,i.createEffect)((0,i.on)(p,(e,t=!1)=>{!t||e||!m()||(u.store.options.activationMode!==`hold`&&f.setWasActivatedByToggle(!0),u.hooks.onActivate())}));let ot=(e,t,n)=>{ct(e,t,n),f.clearInputText()},st=()=>{let e=d.frozenElement||W();e&&f.enterPromptMode({x:d.pointer.x,y:d.pointer.y},e)},ct=(e,t,n)=>{f.setCopyStart({x:t,y:n},e)},N={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},P=null,[lt,bt]=(0,i.createSignal)(null),xt=(e,t)=>{P!==null&&clearTimeout(P),bt(null),P=window.setTimeout(()=>{bt({x:e,y:t}),P=null},32)},I=null,L={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},[St,Ct]=(0,i.createSignal)(!1),wt=0,Tt=!1,R=null,Et=()=>{Tt=!0,R!==null&&window.clearTimeout(R),R=window.setTimeout(()=>{Tt=!1,R=null},e.z)},Dt=()=>{R!==null&&(window.clearTimeout(R),R=null),Tt=!1},z=null,Ot=0,kt=0,B=null,At=null,jt=!1,Mt=null,[Nt,Pt]=(0,i.createSignal)(null),[Ft,It]=(0,i.createSignal)(void 0),[Lt,Rt]=(0,i.createSignal)([]),[zt,Bt]=(0,i.createSignal)(null),[Vt,Ht]=(0,i.createSignal)([]),[Ut,Wt]=(0,i.createSignal)(0),Gt=Be(e.g,b),V=We(()=>d.pointer,()=>g()),H=(0,i.createMemo)(()=>m()&&!v()),Kt=new Map,qt=(t,n)=>{let r=nt(`grabbed`),i={id:r,bounds:t,createdAt:Date.now(),element:n};f.addGrabbedBox(i),u.hooks.onGrabbedBox(t,n);let a=window.setTimeout(()=>{Kt.delete(r),f.removeGrabbedBox(r)},e.z);Kt.set(r,a)},Jt=async t=>{let n=await Promise.all(t.map(async t=>{let n=await e.T(t),r=n?.componentName??null,i=n?.filePath,a=n?.lineNumber??void 0,o=n?.columnNumber??void 0;r||=e.y(t);let s=t instanceof HTMLElement?t.innerText?.slice(0,100):void 0;return{tagName:e.j(t),id:t.id||void 0,className:t.getAttribute(`class`)||void 0,textContent:s,componentName:r??void 0,filePath:i,lineNumber:a,columnNumber:o}}));window.dispatchEvent(new CustomEvent(`react-grab:element-selected`,{detail:{elements:n}}))},U=new Map,Yt=e=>{let t=U.get(e);t!==void 0&&(window.clearTimeout(t),U.delete(e))},Xt=()=>{for(let e of U.values())window.clearTimeout(e);U.clear()},Zt=t=>{Yt(t);let n=window.setTimeout(()=>{U.delete(t),f.updateLabelInstance(t,`fading`),setTimeout(()=>{U.delete(t),f.removeLabelInstance(t)},150)},e.z);U.set(t,n)},Qt=(e,t)=>{if(t)Yt(e);else{let t=d.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&Zt(e)}},$t=(e,t,n,r,i)=>{f.clearLabelInstances(),Xt();let a=nt(`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 f.addLabelInstance(u),a},en=()=>{Xt(),f.clearLabelInstances()},tn=(e,t,n)=>{t?f.updateLabelInstance(e,`copied`):f.updateLabelInstance(e,`error`,n||`Unknown error`),Zt(e)},nn=async(e,t,n,r)=>{Dt(),d.current.state!==`copying`&&f.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=de(e,`Action failed`)}t&&tn(t,i,a),d.current.state===`copying`&&(i&&f.completeCopy(n),r?J():i?(f.activate(),Et()):f.unfreeze())},rn=e=>{let{copiedElements:t,content:r,extraPrompt:i,elementName:a,tagName:o,componentName:s}=e;if(u.hooks.onCopySuccess(t,r),!i)return;let c=t.length>0;if(c){let e=E();for(let[n,r]of k.entries()){if(!(r.length===t.length&&r.every((e,n)=>e===t[n])))continue;let a=e.find(e=>e.id===n);if(a&&a.commentText===i){ft(n),k.delete(n);break}}}let l=t.map((e,t)=>n.r(e,t===0)),d=dt({content:r,elementName:a??`element`,tagName:o??`div`,componentName:s??void 0,elementsCount:t.length,previewBounds:t.map(e=>b(e)),elementSelectors:l,commentText:i,timestamp:Date.now()});ve(d),Ye(e=>e+1);let f=d[0];f&&c&&k.set(f.id,[...t]);let p=new Set(d.map(e=>e.id));for(let e of k.keys())p.has(e)||k.delete(e)},an=(t,n,r)=>{let i=t[0],a=r??(i?e.y(i):null),o=i?e.j(i):null,s=a??o??void 0;return pe({maxContextLines:u.store.options.maxContextLines,getContent:u.store.options.getContent,componentName:s},{onBeforeCopy:u.hooks.onBeforeCopy,transformSnippet:u.hooks.transformSnippet,transformCopyContent:u.hooks.transformCopyContent,onAfterCopy:u.hooks.onAfterCopy,onCopySuccess:(e,t)=>{rn({copiedElements:e,content:t,extraPrompt:n,elementName:s,tagName:o,componentName:a})},onCopyError:u.hooks.onCopyError},t,n)},on=async(t,n,r)=>{if(t.length===0)return;let i=[],a=[];for(let e of t){let{wasIntercepted:t,pendingResult:n}=u.hooks.onElementSelect(e);t||i.push(e),n&&a.push(n),u.store.theme.grabbedBoxes.enabled&&qt(b(e),e)}if(await e.A(),i.length>0)await an(i,n,r);else if(a.length>0&&!(await Promise.all(a)).every(Boolean))throw Error(`Failed to copy`);Jt(t)},sn=t=>{let{element:n,cursorX:r,selectedElements:i,extraPrompt:a,shouldDeactivateAfter:o,onComplete:s,dragRect:c}=t,l=i??[n],u=c??d.frozenDragRect,p=l.length>1,m=u&&p?Ce(u):Te(b(n)),h=p?m.x+m.width/2:r,g=e.j(n);Dt(),f.startCopy();let _=g?$t(m,g,void 0,`copying`,{element:n,mouseX:h,elements:i}):null;e.S(n).then(async e=>{await nn(()=>on(l,a,e??void 0),_,n,o),s?.()}).catch(e=>{_&&tn(_,!1,de(e,`Action failed`)),d.current.state===`copying`&&f.unfreeze()})},W=(0,i.createMemo)(()=>{if(d.viewportVersion,!H()||g())return null;let e=d.detectedElement;return t.g(e)?e:null}),G=(0,i.createMemo)(()=>d.frozenElement||(h()?null:W()));(0,i.createEffect)(()=>{let e=d.detectedElement;if(!e)return;let n=setInterval(()=>{t.g(e)||f.setDetectedElement(null)},100);(0,i.onCleanup)(()=>clearInterval(n))}),(0,i.createEffect)((0,i.on)(G,e=>{if(B!==null&&(clearTimeout(B),B=null),!e){Pt(null);return}B=window.setTimeout(()=>{B=null,Pt(e)},100)})),(0,i.onCleanup)(()=>{B!==null&&(clearTimeout(B),B=null)}),(0,i.createEffect)(()=>{let t=d.frozenElements;(0,i.onCleanup)(e.i(t))}),(0,i.createEffect)((0,i.on)(m,t=>{t&&u.store.options.freezeReactUpdates&&(0,i.onCleanup)(e.t())}));let cn=()=>{if(d.isTouchMode&&g()){let t=d.detectedElement;return!t||e._(t)?void 0:t}let t=G();if(!(!t||e._(t)))return t},K=(0,i.createMemo)(()=>cn()),ln=()=>K()?d.isTouchMode&&g()?H():H()&&!g():!1,un=(0,i.createMemo)(()=>{d.viewportVersion;let e=d.frozenElements;if(e.length===0)return[];let t=d.frozenDragRect;return t&&e.length>1?[Ce(t)]:e.filter(e=>e!==null).map(e=>b(e))}),dn=(0,i.createMemo)(()=>{d.viewportVersion;let e=d.frozenElements;if(e.length>0){let t=un();if(e.length===1){let e=t[0];if(e)return e}let n=d.frozenDragRect;return n?t[0]??Ce(n):Te(Fe(t))}let t=K();if(t)return b(t)}),fn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),pn=(e,t)=>{let{pageX:n,pageY:r}=fn(e,t);return{x:Math.abs(n-d.dragStart.x),y:Math.abs(r-d.dragStart.y)}},mn=(0,i.createMemo)(()=>{if(!g())return!1;let e=pn(d.pointer.x,d.pointer.y);return e.x>2||e.y>2}),hn=(e,t)=>{let{pageX:n,pageY:r}=fn(e,t),i=Math.min(d.dragStart.x,n),a=Math.min(d.dragStart.y,r),o=Math.abs(n-d.dragStart.x),s=Math.abs(r-d.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},gn=(0,i.createMemo)(()=>{if(d.viewportVersion,!mn())return;let e=hn(d.pointer.x,d.pointer.y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),_n=(0,i.createMemo)(()=>{if(d.viewportVersion,!mn())return[];let t=lt();if(!t)return[];let n=hn(t.x,t.y),r=ye(n,e.g);return(r.length>0?r:ye(n,e.g,!1)).map(e=>b(e))}),vn=(0,i.createMemo)(()=>{let e=_n();return e.length>0?e:un()}),yn=(0,i.createMemo)(()=>{if(!St())return[];let e=G();return e?(d.viewportVersion,[...be(e),e].map(e=>b(e))):[]}),bn=(0,i.createMemo)(()=>{if(v()||y()){d.viewportVersion;let e=d.frozenElement||W();if(e){let{center:t}=Ee(e);return{x:t.x+d.copyOffsetFromCenterX,y:d.copyStart.y}}return{x:d.copyStart.x,y:d.copyStart.y}}return{x:d.pointer.x,y:d.pointer.y}});(0,i.createEffect)((0,i.on)(()=>[W(),d.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&f.setLastGrabbed(null),e&&u.hooks.onElementHover(e)})),(0,i.createEffect)((0,i.on)(()=>W(),t=>{let n=++Ot,r=()=>{Ot===n&&f.setSelectionSource(null,null)};if(!t){r();return}e.T(t).then(e=>{if(Ot===n){if(!e){r();return}f.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{Ot===n&&f.setSelectionSource(null,null)})}));let xn=(0,i.createMemo)(()=>d.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),Sn=(0,i.createMemo)(()=>d.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));(0,i.createEffect)((0,i.on)((0,i.createMemo)(()=>{let e=m(),t=g(),n=v(),r=y(),i=W(),a=gn(),o=u.store.theme.enabled,s=u.store.theme.selectionBox.enabled,c=u.store.theme.dragBox.enabled,l=mn(),f=G(),p=ee();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(o&&s&&e&&!n&&!p&&!t&&f!=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:[...xn()],labelInstances:[...Sn()],selectionFilePath:d.selectionFilePath,toolbarState:me()}}),e=>{u.hooks.onStateChange(e)})),(0,i.createEffect)((0,i.on)(()=>[y(),d.pointer.x,d.pointer.y,W()],([e,t,n,r])=>{u.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),(0,i.createEffect)((0,i.on)(()=>[Mr(),dn(),W()],([e,t,n])=>{u.hooks.onSelectionBox(!!e,t??null,n)})),(0,i.createEffect)((0,i.on)(()=>[zr(),gn()],([e,t])=>{u.hooks.onDragBox(!!e,t??null)})),(0,i.createEffect)((0,i.on)(()=>[Vr(),Br(),bn(),W(),d.selectionFilePath,d.selectionLineNumber],([t,n,r,i,a,o])=>{u.hooks.onElementLabel(!!t,n,{x:r.x,y:r.y,content:``,element:i??void 0,tagName:i&&e.j(i)||void 0,filePath:a??void 0,lineNumber:o??void 0})}));let q=null,Cn=e=>{e?(q||(q=document.createElement(`style`),q.setAttribute(`data-react-grab-cursor`,``),document.head.appendChild(q)),q.textContent=`* { cursor: ${e} !important; }`):q&&=(q.remove(),null)};(0,i.createEffect)((0,i.on)(()=>[m(),v(),y()],([e,t,n])=>{Cn(t?`progress`:e&&!n?`crosshair`:null)}));let wn=()=>{let e=p();f.activate(),e||u.hooks.onActivate()},J=()=>{let e=g(),n=d.previouslyFocusedElement;f.deactivate(),Ct(!1),Kn(),At=null,jt=!1,e&&(document.body.style.userSelect=``),I&&window.clearTimeout(I),V.stop(),n instanceof HTMLElement&&t.g(n)&&n.focus(),u.hooks.onDeactivate()},Tn=()=>{p()&&f.releaseHold(),m()&&J(),Dt()},En=()=>{f.setWasActivatedByToggle(!0),wn()},Dn=()=>{f.clearLastCopied();let e=[...d.frozenElements],t=d.frozenElement||W(),n=y()?d.inputText.trim():``;if(!t){J();return}let r=e.length>0?e:[t],i=r.map(e=>b(e))[0],{x:a,y:o}=x(i),s=a+d.copyOffsetFromCenterX;f.setPointer({x:a,y:o}),f.exitPromptMode(),f.clearInputText(),sn({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},On=()=>{if(f.clearLastCopied(),y()){if(ne()){f.clearInputText(),J();return}f.setPendingDismiss(!0),fe(e=>e+1)}},kn=()=>{f.clearInputText(),J()},An=()=>{f.setPendingDismiss(!1)},jn=()=>{let e=d.frozenElement||W();e&&ot(e,d.pointer.x,d.pointer.y),st()},Mn=()=>{if(m())J();else if(C()){let e=me()?.defaultAction??`comment`;e===`comment`?f.setPendingCommentMode(!0):(Mt=e,jt=!0),En()}},Nn=(e,t,n)=>{f.setPendingCommentMode(!1),f.clearInputText(),f.enterPromptMode({x:t,y:n},e)},Pn=(e,t)=>{f.showContextMenu(t,e),Kn(),pi(),u.hooks.onContextMenu(e,t)},Fn=(t,n)=>{let r=Mt;if(Mt=null,!r)return;let i=u.store.actions.find(e=>e.id===r);if(!i){hi(e.P),Pn(t,n);return}let a=b(t),o=Yr({element:t,filePath:d.selectionFilePath??void 0,lineNumber:d.selectionLineNumber??void 0,tagName:e.j(t)||void 0,componentName:Ft(),position:n,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:a,fallbackSelectionBounds:[a],position:n}});i.onAction(o)},In=()=>{if(C()){if(m()&&te()){J();return}f.setPendingCommentMode(!0),m()||En()}},Ln=()=>{let e=!C();w(e),Qe({enabled:e}),e||(Tn(),pi())},Rn=(t,n)=>{if(!C()||y()||h()||d.contextMenuPosition!==null)return;f.setPointer({x:t,y:n}),N.latestPointerX=t,N.latestPointerY=n;let r=performance.now(),i=N.pendingDetectionScheduledAt>0&&r-N.pendingDetectionScheduledAt<200;if(r-N.lastDetectionTimestamp>=32&&!i&&(N.lastDetectionTimestamp=r,N.pendingDetectionScheduledAt=r,qe(()=>{let t=e.l(N.latestPointerX,N.latestPointerY);t!==d.detectedElement&&f.setDetectedElement(t),N.pendingDetectionScheduledAt=0})),g()){xt(t,n);let e=Ue(t,n),r=e.top||e.bottom||e.left||e.right;r&&!V.isActive()?V.start():!r&&V.isActive()&&V.stop()}},zn=(e,t)=>!H()||v()?!1:(f.startDrag({x:e,y:t}),f.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,xt(e,t),u.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),Bn=(t,n)=>{let r=ye(t,e.g),i=r.length>0?r:ye(t,e.g,!1);if(i.length===0)return;e.r(i),u.hooks.onDragEnd(i,t);let a=i[0],o=De(a);f.setPointer(o),f.setFrozenElements(i);let s=we(t);if(f.setFrozenDragRect(s),f.freeze(),f.setLastGrabbed(a),d.pendingCommentMode){Nn(a,o.x,o.y);return}if(jt){jt=!1,Mt?Fn(a,o):Pn(a,o);return}let c=d.wasActivatedByToggle&&!n;sn({element:a,cursorX:o.x,selectedElements:i,shouldDeactivateAfter:c,dragRect:s})},Vn=(n,r,i)=>{let a=t.g(d.frozenElement)?d.frozenElement:null,o=t.g(At)?At:null,s=a??o??e.l(n,r)??(t.g(d.detectedElement)?d.detectedElement:null);if(!s)return;let c=!a&&o===s,l,p;if(a)l=d.pointer.x,p=d.pointer.y;else if(c){let e=De(s);l=e.x,p=e.y}else l=n,p=r;if(At=null,d.pendingCommentMode){Nn(s,l,p);return}if(jt){jt=!1;let{wasIntercepted:t}=u.hooks.onElementSelect(s);if(t)return;e.r([s]),f.setFrozenElement(s);let n={x:l,y:p};f.setPointer(n),f.freeze(),Mt?Fn(s,n):Pn(s,n);return}let m=d.wasActivatedByToggle&&!i;f.setLastGrabbed(s),sn({element:s,cursorX:l,shouldDeactivateAfter:m})},Hn=()=>{g()&&(f.cancelDrag(),V.stop(),document.body.style.userSelect=``)},Un=(e,t,n)=>{if(!g())return;P!==null&&(clearTimeout(P),P=null),bt(null);let r=pn(e,t),i=r.x>2||r.y>2,a=i?hn(e,t):null;i?f.endDrag():f.cancelDrag(),V.stop(),document.body.style.userSelect=``,a?Bn(a,n):Vn(e,t,n)},Y=se(),Wn=He(),Gn=e=>{let t;try{t=Wn.originalKeyDescriptor?.get?Wn.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||A(e.code),r=m()||p();return n&&r&&!y()&&!d.wasActivatedByToggle&&Re()===null?(Wn.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};Y.addDocumentListener(`keydown`,Gn,{capture:!0}),Y.addDocumentListener(`keyup`,Gn,{capture:!0}),Y.addDocumentListener(`keypress`,Gn,{capture:!0});let Kn=()=>{Ht([]),Wt(0),Gt.clearHistory()},qn=e=>{f.setFrozenElement(e),f.freeze(),At=e;let{center:t}=Ee(e);f.setPointer(t),d.contextMenuPosition!==null&&f.showContextMenu(t,e)},Jn=t=>{let n=xe(b(t)),r=e.u(n.x,n.y).filter(e.g).reverse();Ht(r),Wt(Math.max(0,r.indexOf(t)))},Yn=e=>{let t=Vt()[e];t&&(Wt(e),Gt.clearHistory(),qn(t))},Xn=t=>{if(!m()||y()||!e.M.has(t.key))return!1;let n=G(),r=!n;if(n||=e.l(window.innerWidth/2,window.innerHeight/2),!n)return!1;if(!(t.key===`ArrowUp`||t.key===`ArrowDown`)){Kn();let e=Gt.findNext(t.key,n);return!e&&!r?!1:(t.preventDefault(),t.stopPropagation(),qn(e??n),!0)}Vt().length===0&&Jn(n);let i=Gt.findNext(t.key,n)??n;t.preventDefault(),t.stopPropagation(),qn(i);let a=Vt().indexOf(i);return a===-1?Jn(i):Wt(a),!0},Zn=e=>{if(!A(e.code)||t.h(e))return!1;let n=d.lastCopiedElement;if(!p()&&!y()&&!m()&&n&&t.g(n)&&!d.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let t=De(n);return f.setPointer(t),ot(n,t.x,t.y),f.setFrozenElement(n),f.clearLastCopied(),st(),m()||wn(),!0}if(p()&&!y()){e.preventDefault(),e.stopImmediatePropagation();let t=d.frozenElement||W();return t&&ot(t,d.pointer.x,d.pointer.y),f.setPointer({x:d.pointer.x,y:d.pointer.y}),t&&f.setFrozenElement(t),st(),I!==null&&(window.clearTimeout(I),I=null),m()||wn(),!0}return!1},Qn=t=>{if(t.key?.toLowerCase()!==`o`||y()||!m()||!(t.metaKey||t.ctrlKey))return!1;let n=d.selectionFilePath,r=d.selectionLineNumber;return n?(t.preventDefault(),t.stopPropagation(),u.hooks.onOpenFile(n,r??void 0)||e.s(n,r??void 0,u.hooks.transformOpenFileUrl),!0):!1},$n=()=>{z!==null&&(window.clearTimeout(z),z=null)},er=()=>{$n(),Rt([]),Bt(null)},tr=(0,i.createMemo)(()=>!!K()&&H()&&!y()&&!g()&&d.contextMenuPosition===null),nr=(0,i.createMemo)(()=>{let{key:e}=Ne(u.store.options.activationKey);return(e??`c`).toUpperCase()}),rr=(0,i.createMemo)(()=>({items:Lt(),activeIndex:zt(),isVisible:zt()!==null&&Lt().length>0&&!te()})),ir=(0,i.createMemo)(()=>Vt().map(t=>({tagName:e.j(t)||`element`,componentName:e.y(t)??void 0}))),ar=(0,i.createMemo)(()=>({items:ir(),activeIndex:Ut(),isVisible:Vt().length>0})),or=(0,i.createMemo)(()=>{if(!St())return[];let e=G();return e?[...be(e).reverse(),e]:[]}),sr=(0,i.createMemo)(()=>or().map(t=>({tagName:e.j(t)||`element`,componentName:e.y(t)??void 0}))),[cr,lr]=(0,i.createSignal)(-1);(0,i.createEffect)((0,i.on)(or,e=>{lr(e.length-1)}));let ur=(0,i.createMemo)(()=>{let e=or();return{items:sr(),activeIndex:cr(),isVisible:St()&&e.length>0}}),dr=e=>{lr(e)};(0,i.createEffect)((0,i.on)(K,()=>{er()})),(0,i.createEffect)((0,i.on)(tr,e=>{e||er()}));let fr=e=>u.store.actions.find(t=>t.id===e),pr=()=>{let t=K();if(!t)return;let n=dn();return Yr({element:t,filePath:d.selectionFilePath??void 0,lineNumber:d.selectionLineNumber??void 0,tagName:e.j(t)||void 0,componentName:Ft(),position:d.pointer,performWithFeedbackOptions:{fallbackBounds:n,fallbackSelectionBounds:n?[n]:[]},shouldDeferHideContextMenu:!1,onBeforePrompt:er})},mr=(0,i.createMemo)(()=>{if(!K())return[];let e=[];for(let t of u.store.actions)typeof t.enabled==`boolean`&&!t.enabled||t.shortcut&&t.shortcut.toUpperCase()!==nr()||e.push({id:t.id,label:t.label,shortcut:t.shortcut});return e}),hr=()=>{$n(),z=window.setTimeout(()=>{z=null;let e=zt(),n=Lt();if(e===null||n.length===0)return;let r=n[e];if(!r)return;let i=fr(r.id);if(!i){er();return}let a=pr();if(!a||!t.r(i,a)){er();return}er(),i.onAction(a)instanceof Promise},600)},gr=()=>{if(!tr())return!1;let e=mr();if(e.length===0)return!1;Rt(e);let t=zt();return Bt(t!==null&&t<e.length?(t+1)%e.length:0),hr(),!0},_r=e=>!ke(nr(),e.code)||e.altKey||e.repeat||t.h(e)||!gr()?!1:(e.preventDefault(),e.stopPropagation(),(e.metaKey||e.ctrlKey)&&e.stopImmediatePropagation(),!0),vr=n=>{if(!(!u.store.options.allowActivationInsideInput&&t.h(n))&&!(!Pe(n,u.store.options)&&((n.metaKey||n.ctrlKey)&&!e.G.includes(n.key)&&!A(n.code)&&(m()&&!d.wasActivatedByToggle?J():p()&&(M(),at(),f.releaseHold())),!A(n.code)||!p()))){if((m()||p())&&!y()&&(n.preventDefault(),A(n.code)&&n.stopImmediatePropagation()),m()){if(d.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||n.repeat)return;I!==null&&window.clearTimeout(I),I=window.setTimeout(()=>{J()},200);return}if(p()&&n.repeat){if(L.copyWaiting){let e=L.holdTimerFired;at(),e&&f.activate()}return}if(!(v()||ee())&&!p()){let e=u.store.options.keyHoldDuration??100;t.h(n)?t.p(n)?e+=600:e+=400:t.m()&&(e+=600),at(),f.startHold(e)}}};Y.addWindowListener(`keydown`,n=>{if(Gn(n),n.key===`Shift`&&!n.repeat&&m()&&(Ct(!0),h()&&(f.unfreeze(),Kn())),!C()){Pe(n,u.store.options)&&!n.repeat&&ce(e=>e+1);return}let r=A(n.code)&&p()&&!y(),i=t.i(n,`data-react-grab-input`);if(y()&&Pe(n,u.store.options)&&!n.repeat&&!i){n.preventDefault(),n.stopPropagation(),On();return}if(n.key===`Escape`&&Re()!==null)return;if(n.key===`Escape`&&D()!==null){$();return}if(n.key===`Escape`&&je()!==null){ii();return}let a=t.i(n,`data-react-grab-ignore-events`)&&!r;if(y()||a)return n.key===`Escape`&&(y()?On():d.wasActivatedByToggle&&J()),a&&e.M.has(n.key)&&Xn(n),void 0;if(n.key===`Escape`&&(p()||d.wasActivatedByToggle)){J();return}let o=Date.now()-wt<200;!o&&_r(n)||Xn(n)||Zn(n)||Qn(n)||o||vr(n)},{capture:!0}),Y.addWindowListener(`keyup`,e=>{if(Gn(e))return;e.key===`Shift`&&Ct(!1);let n=Ve(u.store.options),r=n.metaKey||n.ctrlKey?t.a()?!e.metaKey:!e.ctrlKey:n.shiftKey&&!e.shiftKey||n.altKey&&!e.altKey,i=u.store.options.activationKey?typeof u.store.options.activationKey==`function`?u.store.options.activationKey(e):Me(u.store.options.activationKey)(e):Oe(e.key,e.code);if(ee()||Tt){(i||r)&&(Dt(),J());return}if(!p()&&!m()||y())return;let a=!!u.store.options.activationKey,o=u.store.options.activationMode===`hold`;if(m()){let e=d.contextMenuPosition!==null;if(r){if(d.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||e)return;J()}else if(o&&i){if(I!==null&&(window.clearTimeout(I),I=null),e)return;J()}else !a&&i&&I!==null&&(window.clearTimeout(I),I=null);return}if(i||r){if(d.wasActivatedByToggle&&u.store.options.activationMode!==`hold`)return;if(p()||L.holdTimerFired&&r){M();let n=(L.startTimestamp?Date.now()-L.startTimestamp:0)>=200,r=L.holdTimerFired&&n&&(u.store.options.allowActivationInsideInput||!t.h(e));at(),r?f.activate():f.releaseHold()}else J()}},{capture:!0}),Y.addDocumentListener(`copy`,()=>{p()&&(L.copyWaiting=!0)}),Y.addWindowListener(`keypress`,Gn,{capture:!0}),Y.addWindowListener(`pointermove`,e=>{if(!e.isPrimary)return;let n=e.pointerType===`touch`;f.setTouchMode(n),!t.i(e,`data-react-grab-ignore-events`)&&d.contextMenuPosition===null&&(n&&!p()&&!m()||((n?p():m())&&!y()&&h()&&(f.unfreeze(),Kn()),Rn(e.clientX,e.clientY)))},{passive:!0}),Y.addWindowListener(`pointerdown`,e=>{if(e.button===0&&e.isPrimary&&(f.setTouchMode(e.pointerType===`touch`),!t.i(e,`data-react-grab-ignore-events`)&&d.contextMenuPosition===null&&je()===null)){if(y()){let t=dn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?Dn():On();return}zn(e.clientX,e.clientY)&&(document.documentElement.setPointerCapture(e.pointerId),e.preventDefault(),e.stopImmediatePropagation())}},{capture:!0}),Y.addWindowListener(`pointerup`,e=>{if(e.button!==0||!e.isPrimary||t.i(e,`data-react-grab-ignore-events`)||d.contextMenuPosition!==null)return;let n=H()||v()||g(),r=e.metaKey||e.ctrlKey;Un(e.clientX,e.clientY,r),n&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),Y.addWindowListener(`contextmenu`,n=>{if(!H()||v()||y())return;let r=t.i(n,`data-react-grab-ignore-events`);if(r&&Vt().length>0)Kn();else if(r)return;if(d.contextMenuPosition!==null){n.preventDefault();return}n.preventDefault(),n.stopPropagation();let i=e.l(n.clientX,n.clientY);if(!i)return;let a=d.frozenElements;a.length>1&&a.includes(i)?e.r(a):(e.r([i]),f.setFrozenElement(i));let o={x:n.clientX,y:n.clientY};f.setPointer(o),f.freeze(),Pn(i,o)},{capture:!0}),Y.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Hn()}),Y.addWindowListener(`click`,e=>{t.i(e,`data-react-grab-ignore-events`)||d.contextMenuPosition===null&&(H()||v()||_())&&(e.preventDefault(),e.stopImmediatePropagation(),d.wasActivatedByToggle&&!v()&&!y()&&(p()?f.setWasActivatedByToggle(!1):J()))},{capture:!0}),Y.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){f.clearGrabbedBoxes();let e=d.activationTimestamp;m()&&!y()&&e!==null&&Date.now()-e>500&&J()}}),Y.addWindowListener(`blur`,()=>{Hn(),p()&&(M(),f.releaseHold(),at())}),Y.addWindowListener(`focus`,()=>{wt=Date.now()}),Y.addWindowListener(`focusin`,e=>{t.i(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let yr=()=>{if(!(d.isTouchMode&&!p()&&!m())&&C()&&!y()&&!h()&&!g()&&d.contextMenuPosition===null&&d.frozenElements.length===0){let t=e.l(d.pointer.x,d.pointer.y);f.setDetectedElement(t)}},X=null,Z=null,br=()=>{Se(),yr(),f.incrementViewportVersion(),f.updateContextMenuPosition()};Y.addWindowListener(`scroll`,br,{capture:!0});let xr=window.innerWidth,Sr=window.innerHeight;Y.addWindowListener(`resize`,()=>{let t=window.innerWidth,n=window.innerHeight;if(xr>0&&Sr>0){let r=t/xr,i=n/Sr,a=Math.abs(r-i)<e.ut,o=Math.abs(r-1)>e.ut;a&&o&&f.setPointer({x:d.pointer.x*r,y:d.pointer.y*i})}xr=t,Sr=n,br()});let Cr=window.visualViewport;if(Cr){let{signal:e}=Y;Cr.addEventListener(`resize`,br,{signal:e}),Cr.addEventListener(`scroll`,br,{signal:e})}let wr=()=>{Z===null&&(Z=e.k(()=>{Z=null,f.incrementViewportVersion()}))};(0,i.createEffect)(()=>{if(u.store.theme.enabled&&(m()||v()||d.labelInstances.length>0||d.grabbedBoxes.length>0)){if(X!==null)return;X=window.setInterval(()=>{wr()},100);return}X!==null&&(window.clearInterval(X),X=null),Z!==null&&(e.O(Z),Z=null)}),(0,i.onCleanup)(()=>{X!==null&&window.clearInterval(X),Z!==null&&e.O(Z)}),Y.addDocumentListener(`copy`,e=>{y()||t.i(e,`data-react-grab-ignore-events`)||(H()||v())&&e.preventDefault()},{capture:!0}),(0,i.onCleanup)(()=>{Y.abort(),P!==null&&window.clearTimeout(P),I&&window.clearTimeout(I),Dt(),z&&window.clearTimeout(z),O!==null&&e.O(O),Kt.forEach(e=>window.clearTimeout(e)),Kt.clear(),Xt(),V.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,S?.(),S=null,Cn(null),Wn.restore()});let Tr=ae(o),Er=(0,i.createMemo)(()=>u.store.theme.enabled),Dr=(0,i.createMemo)(()=>u.store.theme.selectionBox.enabled),Or=(0,i.createMemo)(()=>u.store.theme.elementLabel.enabled),kr=(0,i.createMemo)(()=>u.store.theme.dragBox.enabled),Ar=(0,i.createMemo)(()=>ee()||ge()&&!h()),jr=(0,i.createMemo)(()=>_n().length>0),Mr=(0,i.createMemo)(()=>!Er()||!Dr()||Ar()?!1:jr()?!0:ln()),Nr=(0,i.createMemo)(()=>{let t=K();if(t)return e.j(t)||void 0});(0,i.createEffect)((0,i.on)(()=>Nt(),t=>{let n=++kt;if(!t){It(void 0);return}e.S(t).then(e=>{kt===n&&It(e??void 0)}).catch(()=>{kt===n&&It(void 0)})}));let Pr=(0,i.createMemo)(()=>d.contextMenuPosition!==null||!Or()||Ar()?!1:ln()),Fr=new Map,Ir=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?b(n):e.bounds,i=Fr.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 Fr.set(e.id,l),l},Lr=(0,i.createMemo)(()=>{if(!Er()||!u.store.theme.grabbedBoxes.enabled)return[];d.viewportVersion;let e=new Set(d.labelInstances.map(e=>e.id));for(let t of Fr.keys())e.has(t)||Fr.delete(t);return d.labelInstances.map(Ir)}),Rr=(0,i.createMemo)(()=>!Er()||!u.store.theme.grabbedBoxes.enabled?[]:(d.viewportVersion,d.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:b(e.element)}))),zr=(0,i.createMemo)(()=>Er()&&kr()&&H()&&mn()),Br=(0,i.createMemo)(()=>v()?`processing`:`hover`),Vr=(0,i.createMemo)(()=>{if(!Er())return!1;let e=Or(),t=y(),n=v(),r=H(),i=g(),a=!!G(),o=ge(),s=h();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),Hr=(0,i.createMemo)(()=>{d.viewportVersion;let e=d.contextMenuElement;return e?b(e):null}),Ur=(0,i.createMemo)(()=>(d.viewportVersion,d.contextMenuPosition)),Wr=(0,i.createMemo)(()=>{let t=d.contextMenuElement;if(!t)return;let n=d.frozenElements.length;return n>1?`${n} elements`:e.j(t)||void 0}),[Gr]=(0,i.createResource)(()=>({element:d.contextMenuElement,frozenCount:d.frozenElements.length}),async({element:t,frozenCount:n})=>{if(t&&!(n>1))return await e.S(t)??void 0}),[Kr]=(0,i.createResource)(()=>d.contextMenuElement,async t=>t?e.T(t):null),qr=(e,t,n,r,i)=>async a=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??d.contextMenuPosition??d.pointer,l=un(),u=Hr()??o,p=t.length>1,m=p?Te(Fe(l)):u,h=d.wasActivatedByToggle,g;if(g=p?l:u?[u]:s,f.hideContextMenu(),m){let i=p?m.x+m.width/2:c.x,o=$t(m,n||`element`,r,`copying`,{element:e,mouseX:i,elements:p?t:void 0,boundsMultiple:g}),s=!1,l;try{s=await a(),s||(l=`Failed to copy`)}catch(e){l=de(e,`Action failed`)}tn(o,s,l)}else try{await a()}catch{}h?J():f.unfreeze()},Jr=()=>{setTimeout(()=>{f.hideContextMenu()},0)},Yr=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:o,performWithFeedbackOptions:s,shouldDeferHideContextMenu:c,onBeforeCopy:l,onBeforePrompt:p,customEnterPromptMode:h}=e,g=d.frozenElements.length>0?d.frozenElements:[t],_=c?Jr:f.hideContextMenu,v={element:t,elements:g,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:h??(()=>{en(),p?.(),ot(t,o.x,o.y),f.setPointer({x:o.x,y:o.y}),f.setFrozenElement(t),st(),m()||wn(),_()}),copy:()=>{l?.(),sn({element:t,cursorX:o.x,selectedElements:g.length>1?g:void 0,shouldDeactivateAfter:d.wasActivatedByToggle}),_()},hooks:{transformHtmlContent:u.hooks.transformHtmlContent,onOpenFile:u.hooks.onOpenFile,transformOpenFileUrl:u.hooks.transformOpenFileUrl},performWithFeedback:qr(t,g,i,a,s),hideContextMenu:_,cleanup:()=>{d.wasActivatedByToggle?J():f.unfreeze()}},ee=u.hooks.transformActionContext(v);return{...v,...ee}},Xr=(0,i.createMemo)(()=>{let e=d.contextMenuElement;if(!e)return;let t=Kr(),n=d.contextMenuPosition??d.pointer;return Yr({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:Wr(),componentName:Gr(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{At=null},customEnterPromptMode:()=>{en(),f.clearInputText(),f.enterPromptMode(n,e),Jr()}})}),Zr=()=>{setTimeout(()=>{f.hideContextMenu(),J()},0)},Q=()=>{for(let{boxId:e,labelId:t}of Ze)f.removeGrabbedBox(e),t&&f.removeLabelInstance(t);Ze=[]},Qr=(e,t,n,r)=>{if(t.length!==0)for(let[i,a]of t.entries()){let t=n[i],o=`${r}-${e.id}-${i}`;f.addGrabbedBox({id:o,bounds:a,createdAt:0,element:t});let s=null;i===0&&(s=`${r}-label-${e.id}`,f.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})),Ze.push({boxId:o,labelId:s})}},$r=(e,t)=>{let n=tt(e);Qr(e,n.map(e=>b(e)),n,t)},ei=()=>{O!==null&&(e.O(O),O=null)},ti=t=>{ei();let n=()=>{t(),O=e.k(n)};n()},ni=()=>{if(!Ke)return null;let e=Ke.getBoundingClientRect(),t=_t(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}},ri=e=>{ti(()=>{let t=ni();t&&e(t)})},$=()=>{ci(),li(),ei(),Q(),Ae(null),Xe(!1)},ii=()=>{ei(),Le(null)},ai=()=>{f.hideContextMenu(),ii(),fi(),ve(ut()),ri(Ae)},oi=null,si=null,ci=()=>{oi!==null&&(clearTimeout(oi),oi=null)},li=()=>{si!==null&&(clearTimeout(si),si=null)},ui=()=>{si=setTimeout(()=>{si=null,$()},200)},di=()=>{$(),ii(),ri(Ge)},fi=()=>{ei(),Ge(null)},pi=()=>{$(),ii(),fi()},mi=()=>{je()===null?(f.hideContextMenu(),$(),fi(),ri(Le)):ii()},hi=e=>{Qe({defaultAction:e})},gi=()=>{ci(),li(),D()===null?(Q(),ai()):j()?(Q(),Xe(!1)):$()},_i=n=>{T(n.content,{tagName:n.tagName,componentName:n.componentName??n.elementName,commentText:n.commentText});let r=rt(n);r&&(en(),e.k(()=>{if(!t.g(r))return;let e=b(r),i=$t(e,n.tagName,n.componentName,`copied`,{element:r,mouseX:e.x+e.width/2});i&&Zt(i)}))},vi=e=>{Q(),y()&&(f.exitPromptMode(),f.clearInputText());let t=rt(e);if(e.commentText&&t){let{center:n}=Ee(t);f.enterPromptMode(n,t),f.setInputText(e.commentText)}else _i(e)},yi=()=>{Q();let t=E();if(t.length===0)return;let n=ue(t.map(e=>e.content)),r=t[0];T(n,{componentName:r.componentName??r.tagName,entries:t.map(e=>({tagName:e.tagName,componentName:e.componentName??e.elementName,content:e.content,commentText:e.commentText}))}),mt()?Ti():di(),en(),e.k(()=>{(0,i.batch)(()=>{for(let e of t){let t=tt(e);for(let n of t){let t=b(n),r=nt(`label`);f.addLabelInstance({id:r,bounds:t,tagName:e.tagName,componentName:e.componentName,status:`copied`,createdAt:Date.now(),element:n,mouseX:t.x+t.width/2}),Zt(r)}}})})},bi=e=>{if(Q(),!e)return;let t=E().find(t=>t.id===e);t&&$r(t,`comment-hover`)},xi=e=>{ci(),Q(),e?(li(),D()===null&&Re()===null&&(wi(),oi=setTimeout(()=>{oi=null,Xe(!0),ai()},200))):j()&&ui()},Si=e=>{e?li():j()&&ui()},Ci=e=>{Q(),e?(li(),wi()):j()&&ui()},wi=()=>{for(let e of E())$r(e,`comment-all-hover`)},Ti=()=>{k.clear(),ve(pt()),$()},Ei=e=>{let n=d.labelInstances.find(t=>t.id===e);if(!n?.element||!t.g(n.element))return;let r=n.element,{center:i}=Ee(r),a={x:n.mouseX??i.x,y:i.y},o=n.elements&&n.elements.length>0?n.elements.filter(e=>t.g(e)):[r];setTimeout(()=>{m()||(f.setWasActivatedByToggle(!0),wn()),f.setPointer(a),f.setFrozenElements(o),o.length>1&&n.bounds&&f.setFrozenDragRect(we(n.bounds)),f.freeze(),f.showContextMenu(a,r)},0)};(0,i.createEffect)(()=>{let e=u.store.theme.hue;e===0?Tr.style.filter=``:Tr.style.filter=`hue-rotate(${e}deg)`}),u.store.theme.enabled&&Promise.resolve().then(()=>require(`./renderer-BZfQAWt2.cjs`)).then(({ReactGrabRenderer:e})=>{s||(c=(0,r.render)(()=>(0,r.createComponent)(e,{get selectionVisible(){return Mr()},get selectionBounds(){return dn()},get selectionBoundsMultiple(){return vn()},get selectionShouldSnap(){return d.frozenElements.length>0||_n().length>0},get inspectVisible(){return(0,r.memo)(()=>!!St())()&&yn().length>0},get inspectBounds(){return yn()},get selectionElementsCount(){return d.frozenElements.length},get selectionFilePath(){return d.selectionFilePath??void 0},get selectionLineNumber(){return d.selectionLineNumber??void 0},get selectionTagName(){return Nr()},get selectionComponentName(){return Ft()},get selectionLabelVisible(){return Pr()},selectionLabelStatus:`idle`,get selectionActionCycleState(){return rr()},get selectionArrowNavigationState(){return ar()},onArrowNavigationSelect:Yn,get inspectNavigationState(){return ur()},onInspectSelect:dr,get labelInstances(){return Lr()},get dragVisible(){return zr()},get dragBounds(){return gn()},get grabbedBoxes(){return Rr()},get mouseX(){return(0,r.memo)(()=>d.frozenElements.length>1)()?void 0:bn().x},get isFrozen(){return h()||m()||ge()},get inputValue(){return d.inputText},get isPromptMode(){return y()},onShowContextMenuInstance:Ei,onLabelInstanceHoverChange:Qt,get onInputChange(){return f.setInputText},onInputSubmit:()=>void Dn(),onToggleExpand:jn,get isPendingDismiss(){return ne()},get selectionLabelShakeCount(){return le()},onConfirmDismiss:kn,onCancelDismiss:An,get toolbarVisible(){return u.store.theme.toolbar.enabled},get isActive(){return m()},onToggleActive:Mn,get enabled(){return C()},onToggleEnabled:Ln,get shakeCount(){return oe()},onToolbarStateChange:e=>{he(e),F.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(F.add(e),()=>{F.delete(e)}),onToolbarSelectHoverChange:_e,onToolbarRef:e=>{Ke=e},get contextMenuPosition(){return Ur()},get contextMenuBounds(){return Hr()},get contextMenuTagName(){return Wr()},get contextMenuComponentName(){return Gr()},get contextMenuHasFilePath(){return!!Kr()?.filePath},get actions(){return u.store.actions},get actionContext(){return Xr()},onContextMenuDismiss:Zr,onContextMenuHide:Jr,get commentItems(){return E()},get commentsDisconnectedItemIds(){return it()},get commentItemCount(){return E().length},get clockFlashTrigger(){return Je()},get commentsDropdownPosition(){return D()},get isCommentsPinned(){return(0,r.memo)(()=>D()!==null)()&&!j()},onToggleComments:gi,onCopyAll:yi,onCopyAllHover:Ci,onCommentsButtonHover:xi,onCommentItemSelect:vi,onCommentItemHover:bi,onCommentsCopyAll:yi,onCommentsCopyAllHover:Ci,onCommentsClear:Ti,onCommentsDismiss:$,onCommentsDropdownHover:Si,get toolbarMenuPosition(){return je()},get toolbarMenuActions(){return u.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return me()?.defaultAction??`comment`},onSetDefaultAction:hi,onToggleToolbarMenu:mi,onToolbarMenuDismiss:ii,get clearPromptPosition(){return Re()},onClearCommentsConfirm:()=>{ht(),fi(),Ti()},onClearCommentsCancel:fi}),Tr))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let Di={activate:()=>{f.setPendingCommentMode(!1),!m()&&C()&&En()},deactivate:()=>{(m()||v())&&J()},toggle:()=>{m()?J():C()&&En()},comment:In,isActive:()=>m(),isEnabled:()=>C(),setEnabled:e=>{e!==C()&&(w(e),e||Tn())},getToolbarState:()=>t.t(),setToolbarState:e=>{let n=t.t(),r={edge:e.edge??n?.edge??`bottom`,ratio:e.ratio??n?.ratio??.5,collapsed:e.collapsed??n?.collapsed??!1,enabled:e.enabled??n?.enabled??!0,defaultAction:e.defaultAction??n?.defaultAction??`comment`};t.n(r),he(r),e.enabled!==void 0&&e.enabled!==C()&&w(e.enabled),F.forEach(e=>e(r))},onToolbarStateChange:e=>(F.add(e),()=>{F.delete(e)}),dispose:()=>{s=!0,yt=!1,c?.(),ci(),li(),ei(),F.clear(),a()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await an(t)},getSource:async t=>{let n=await e.T(t);return n?{filePath:n.filePath,lineNumber:n.lineNumber,componentName:n.componentName}:null},getStackContext:e.w,getState:()=>({isActive:m(),isDragging:g(),isCopying:v(),isPromptMode:y(),isSelectionBoxVisible:!!Mr(),isDragBoxVisible:!!zr(),targetElement:W(),dragBounds:gn()??null,grabbedBoxes:[...xn()],labelInstances:[...Sn()],selectionFilePath:d.selectionFilePath,toolbarState:me()}),setOptions:e=>{u.setOptions(e)},registerPlugin:e=>{u.register(e,Di)},unregisterPlugin:e=>{u.unregister(e)},getPlugins:()=>u.getPluginNames(),getDisplayName:e.y};for(let e of vt)u.register(e,Di);return setTimeout(()=>{e.v(!0)},e.q),Di})};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return le}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return Qe}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return bt}});
|