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.
Files changed (432) hide show
  1. package/README.md +8 -138
  2. package/dist/core/index.cjs +9 -1
  3. package/dist/core/index.d.cts +11 -3
  4. package/dist/core/index.d.ts +11 -3
  5. package/dist/core/index.js +9 -1
  6. package/dist/core--H_JZk7a.js +16 -0
  7. package/dist/core-1AoeBJ2R.cjs +4386 -0
  8. package/dist/core-4VC4A94S.js +4249 -0
  9. package/dist/core-5Q_6LVh_.cjs +16 -0
  10. package/dist/core-6sOn3YNs.js +16 -0
  11. package/dist/core-B3FYVaHv.cjs +16 -0
  12. package/dist/core-B3I0upO1.js +4250 -0
  13. package/dist/core-B3ndcALq.cjs +4386 -0
  14. package/dist/core-B9GWVp1Q.js +16 -0
  15. package/dist/core-BGIMywNa.js +16 -0
  16. package/dist/core-BGK4C6ju.js +16 -0
  17. package/dist/core-BGXprTx7.cjs +16 -0
  18. package/dist/core-BKt5SHzo.js +16 -0
  19. package/dist/core-BMObVYUv.cjs +16 -0
  20. package/dist/core-BNMx90Sn.js +16 -0
  21. package/dist/core-BWQ6C5g9.js +4268 -0
  22. package/dist/core-BcwRbSfO.js +16 -0
  23. package/dist/core-Be-1ubQn.cjs +16 -0
  24. package/dist/core-BfpPi7c6.cjs +16 -0
  25. package/dist/core-BiIoWLRk.js +16 -0
  26. package/dist/core-BjpyJHlW.js +16 -0
  27. package/dist/core-Bqf3D4Ra.cjs +16 -0
  28. package/dist/core-Bs0wekHY.cjs +4284 -0
  29. package/dist/core-Bvqgv6Zr.js +16 -0
  30. package/dist/core-Bw0-Cecq.cjs +16 -0
  31. package/dist/core-BzRpJ5QI.cjs +4284 -0
  32. package/dist/core-C0ZgNdUR.cjs +4386 -0
  33. package/dist/core-C191WXKe.cjs +16 -0
  34. package/dist/core-C4yYleJn.js +16 -0
  35. package/dist/core-C758xgeI.js +16 -0
  36. package/dist/core-CAZ8ENTv.js +16 -0
  37. package/dist/core-CBUFmwfx.cjs +4386 -0
  38. package/dist/core-CDV48I9C.js +4249 -0
  39. package/dist/core-CGXCsSkm.js +4280 -0
  40. package/dist/core-CHsFU9FZ.js +16 -0
  41. package/dist/core-CJOQfSzq.js +4495 -0
  42. package/dist/core-CLW9tl4L.js +4249 -0
  43. package/dist/core-CP1yCnSB.js +16 -0
  44. package/dist/core-CRLyvQCt.cjs +16 -0
  45. package/dist/core-CZX3EijL.js +16 -0
  46. package/dist/core-Ccli-yLf.cjs +16 -0
  47. package/dist/core-Ce4pBUSh.js +16 -0
  48. package/dist/core-CgCGjXfB.cjs +16 -0
  49. package/dist/core-CiQl2PfF.cjs +16 -0
  50. package/dist/core-CnPpGWUc.js +16 -0
  51. package/dist/core-Co9954wQ.cjs +16 -0
  52. package/dist/core-Cr4qVf2a.js +16 -0
  53. package/dist/core-CrQCbm00.js +16 -0
  54. package/dist/core-CsCg35MW.js +16 -0
  55. package/dist/core-Cshs0orb.js +16 -0
  56. package/dist/core-CthjfoZX.cjs +16 -0
  57. package/dist/core-CtvavOAt.cjs +16 -0
  58. package/dist/core-CvoFTVjy.cjs +16 -0
  59. package/dist/core-CzE8I9NL.cjs +16 -0
  60. package/dist/core-CzGijRTx.js +16 -0
  61. package/dist/core-CzosrDdO.cjs +16 -0
  62. package/dist/core-D--fM7Xq.cjs +16 -0
  63. package/dist/core-D-UGQb_Z.cjs +16 -0
  64. package/dist/core-D0UqPwu_.cjs +16 -0
  65. package/dist/core-D2LzIluw.js +4495 -0
  66. package/dist/core-D4z4W-Qz.cjs +16 -0
  67. package/dist/core-D7NwJuzy.js +16 -0
  68. package/dist/core-DCqMIKkK.js +16 -0
  69. package/dist/core-DFrvwczh.cjs +4284 -0
  70. package/dist/core-DGxxKKPR.cjs +16 -0
  71. package/dist/core-DGyQeEXa.js +4495 -0
  72. package/dist/core-DH8Uvag-.js +4249 -0
  73. package/dist/core-DHZBYfsC.js +16 -0
  74. package/dist/core-DKVj078o.js +4249 -0
  75. package/dist/core-DMRsaGr7.js +16 -0
  76. package/dist/core-DRUnXCNA.cjs +16 -0
  77. package/dist/core-DRlG4zYm.cjs +16 -0
  78. package/dist/core-DSqJwwdV.cjs +4284 -0
  79. package/dist/core-DXqmRz53.cjs +16 -0
  80. package/dist/core-DcRxqPad.js +16 -0
  81. package/dist/core-DdNOX4pt.js +16 -0
  82. package/dist/core-Df7CMRnd.cjs +4315 -0
  83. package/dist/core-DiIZA6Hx.js +4495 -0
  84. package/dist/core-DiVnlonK.cjs +4284 -0
  85. package/dist/core-Dj1WV911.js +4495 -0
  86. package/dist/core-DjPDxMID.cjs +16 -0
  87. package/dist/core-DjcnHWor.cjs +16 -0
  88. package/dist/core-DkWjrEUZ.cjs +16 -0
  89. package/dist/core-Dq-CCsij.cjs +4303 -0
  90. package/dist/core-DsVAkMs2.js +16 -0
  91. package/dist/core-DueMb4P6.js +4249 -0
  92. package/dist/core-DvJt5JmX.js +16 -0
  93. package/dist/core-Dz8Hrc33.js +4249 -0
  94. package/dist/core-ESHKG2mL.cjs +4285 -0
  95. package/dist/core-Ij_B_RWV.cjs +16 -0
  96. package/dist/core-JyczI7kP.cjs +16 -0
  97. package/dist/core-K0XuILjf.cjs +4284 -0
  98. package/dist/core-N9HyYpZv.cjs +16 -0
  99. package/dist/core-PW2DC2Tb.js +4495 -0
  100. package/dist/core-Q84EBsQ8.cjs +16 -0
  101. package/dist/core-TSuD8D7m.js +16 -0
  102. package/dist/core-WN76m9V0.cjs +16 -0
  103. package/dist/core-YRKn-0AV.js +16 -0
  104. package/dist/core-fC6GdbUJ.js +16 -0
  105. package/dist/core-h5q7bqH-.cjs +4284 -0
  106. package/dist/core-hkgBRD_T.js +16 -0
  107. package/dist/core-k9l5c9Hk.cjs +16 -0
  108. package/dist/core-mNhkpUYQ.cjs +16 -0
  109. package/dist/core-qCvYE9Ox.cjs +4386 -0
  110. package/dist/core-rvs2FEMH.js +16 -0
  111. package/dist/core-sXzUCmoJ.js +16 -0
  112. package/dist/core-t7gaYHyj.cjs +4386 -0
  113. package/dist/core-thci-YqL.js +16 -0
  114. package/dist/core-xokESdbC.cjs +16 -0
  115. package/dist/core-yW0MN96-.cjs +16 -0
  116. package/dist/core-ydFCYlV4.js +16 -0
  117. package/dist/core-zQ4jjKHw.cjs +16 -0
  118. package/dist/extract-element-css-B-R_28uM.cjs +10 -0
  119. package/dist/extract-element-css-B732tro7.js +10 -0
  120. package/dist/extract-element-css-B9Xh1wUd.js +10 -0
  121. package/dist/extract-element-css-BGZPWnck.js +10 -0
  122. package/dist/extract-element-css-BIniUwQh.js +319 -0
  123. package/dist/extract-element-css-BOQUDYB3.cjs +10 -0
  124. package/dist/extract-element-css-BTzDGIs3.cjs +336 -0
  125. package/dist/extract-element-css-BWUnsvjZ.js +10 -0
  126. package/dist/extract-element-css-BceTcL6y.cjs +10 -0
  127. package/dist/extract-element-css-Bi1y8V4z.cjs +336 -0
  128. package/dist/extract-element-css-Bra6hEzg.js +319 -0
  129. package/dist/extract-element-css-BuJ3zqGO.js +10 -0
  130. package/dist/extract-element-css-C8lBuGP7.js +10 -0
  131. package/dist/extract-element-css-CBHVjrBq.cjs +10 -0
  132. package/dist/extract-element-css-CGxXdwim.js +10 -0
  133. package/dist/extract-element-css-CJx4cesM.js +10 -0
  134. package/dist/extract-element-css-CQBJAbFD.cjs +10 -0
  135. package/dist/extract-element-css-CQV8FsMB.cjs +10 -0
  136. package/dist/extract-element-css-CQx4Biqa.cjs +336 -0
  137. package/dist/extract-element-css-CTy2pRfA.js +10 -0
  138. package/dist/extract-element-css-CchtITXx.cjs +336 -0
  139. package/dist/extract-element-css-CjY9vDS6.js +10 -0
  140. package/dist/extract-element-css-ClnG20sN.cjs +10 -0
  141. package/dist/extract-element-css-CmMetO-q.cjs +10 -0
  142. package/dist/extract-element-css-CmOD6UeE.cjs +10 -0
  143. package/dist/extract-element-css-CnY9b0vB.js +10 -0
  144. package/dist/extract-element-css-CoQLNjVI.js +10 -0
  145. package/dist/extract-element-css-CqjmXl0Y.cjs +10 -0
  146. package/dist/extract-element-css-Cr29xtzW.cjs +10 -0
  147. package/dist/extract-element-css-CzNVoJEM.js +319 -0
  148. package/dist/extract-element-css-CzgC7nM9.cjs +10 -0
  149. package/dist/extract-element-css-D3Dy-3Qz.js +10 -0
  150. package/dist/extract-element-css-D5qqKVc-.cjs +10 -0
  151. package/dist/extract-element-css-D5zsPw09.cjs +10 -0
  152. package/dist/extract-element-css-D6UwJjf4.cjs +336 -0
  153. package/dist/extract-element-css-DEuA2W6G.js +10 -0
  154. package/dist/extract-element-css-DKkUiIlS.cjs +10 -0
  155. package/dist/extract-element-css-DM0EhhXw.cjs +10 -0
  156. package/dist/extract-element-css-DPA6C_o-.cjs +10 -0
  157. package/dist/extract-element-css-DU45xRGh.js +10 -0
  158. package/dist/extract-element-css-DUvYlz4T.js +10 -0
  159. package/dist/extract-element-css-DVDr5Tn6.cjs +10 -0
  160. package/dist/extract-element-css-Di9hCigW.js +319 -0
  161. package/dist/extract-element-css-DivFxCRt.js +319 -0
  162. package/dist/extract-element-css-DlDbU4YM.cjs +10 -0
  163. package/dist/extract-element-css-DsssOqcQ.cjs +10 -0
  164. package/dist/extract-element-css-EnvrIHtf.cjs +336 -0
  165. package/dist/extract-element-css-FI71J_KB.js +10 -0
  166. package/dist/extract-element-css-GdDDlzTf.js +10 -0
  167. package/dist/extract-element-css-U3MgLHty.cjs +10 -0
  168. package/dist/extract-element-css-U4oxl-UP.js +10 -0
  169. package/dist/extract-element-css-VyMIgOZy.js +10 -0
  170. package/dist/extract-element-css-XGv0WWIL.js +319 -0
  171. package/dist/extract-element-css-Y-x4luJL.cjs +10 -0
  172. package/dist/extract-element-css-Zz_CgLqY.js +319 -0
  173. package/dist/extract-element-css-_aFPl5y4.cjs +336 -0
  174. package/dist/extract-element-css-_uZRVqCT.cjs +10 -0
  175. package/dist/extract-element-css-i8nzXODQ.js +10 -0
  176. package/dist/extract-element-css-jh1iLRzJ.js +10 -0
  177. package/dist/extract-element-css-nkJQc3j1.js +10 -0
  178. package/dist/freeze-updates--K1ecmFi.cjs +44 -0
  179. package/dist/freeze-updates-1FTXgIdb.js +44 -0
  180. package/dist/freeze-updates-3QjTocF-.cjs +2267 -0
  181. package/dist/freeze-updates-81f5sY45.js +44 -0
  182. package/dist/freeze-updates-B1mPDmJB.js +44 -0
  183. package/dist/freeze-updates-B5h8teL6.cjs +44 -0
  184. package/dist/freeze-updates-BAYe0Nlx.js +44 -0
  185. package/dist/freeze-updates-BDhlBp3V.js +44 -0
  186. package/dist/freeze-updates-BGa9CqrW.cjs +2267 -0
  187. package/dist/freeze-updates-BQH6Y8E1.cjs +44 -0
  188. package/dist/freeze-updates-BQjWBzy4.cjs +53 -0
  189. package/dist/freeze-updates-BSOSfpXo.js +44 -0
  190. package/dist/freeze-updates-BT-s67nK.js +53 -0
  191. package/dist/freeze-updates-BUJeYIm5.js +44 -0
  192. package/dist/freeze-updates-BVDrqUzf.js +2498 -0
  193. package/dist/freeze-updates-BVX0QSXz.cjs +44 -0
  194. package/dist/freeze-updates-BXMr6a9g.cjs +2912 -0
  195. package/dist/freeze-updates-BZpmCVDl.cjs +2267 -0
  196. package/dist/freeze-updates-BbbID39H.js +1866 -0
  197. package/dist/freeze-updates-BdnJ5RrP.js +1866 -0
  198. package/dist/freeze-updates-Bj59uWit.cjs +44 -0
  199. package/dist/freeze-updates-Bla3E0Kv.js +53 -0
  200. package/dist/freeze-updates-BoYyIB3V.cjs +44 -0
  201. package/dist/freeze-updates-C2TqDiTp.cjs +44 -0
  202. package/dist/freeze-updates-C6Tg4EoW.js +44 -0
  203. package/dist/freeze-updates-C7c9TRvJ.cjs +44 -0
  204. package/dist/freeze-updates-CPNAwtsl.cjs +2267 -0
  205. package/dist/freeze-updates-CTP39zuf.js +44 -0
  206. package/dist/freeze-updates-Cm3EVm_J.cjs +53 -0
  207. package/dist/freeze-updates-CnSZEKoI.cjs +44 -0
  208. package/dist/freeze-updates-CrKe4F0s.js +44 -0
  209. package/dist/freeze-updates-CtYFeM4D.cjs +2267 -0
  210. package/dist/freeze-updates-CxYFvPj9.cjs +53 -0
  211. package/dist/freeze-updates-D10Qj9Ec.cjs +44 -0
  212. package/dist/freeze-updates-D6o46vBw.cjs +44 -0
  213. package/dist/freeze-updates-D7XFQ3_T.js +53 -0
  214. package/dist/freeze-updates-D8H25gFt.js +44 -0
  215. package/dist/freeze-updates-DCpGX7lt.cjs +44 -0
  216. package/dist/freeze-updates-DG3hLEL2.cjs +44 -0
  217. package/dist/freeze-updates-DO_M76qf.js +44 -0
  218. package/dist/freeze-updates-Db4Id665.cjs +2267 -0
  219. package/dist/freeze-updates-DbL_EXkN.js +1866 -0
  220. package/dist/freeze-updates-DcvNGCcR.cjs +44 -0
  221. package/dist/freeze-updates-Dh4GiYXz.cjs +44 -0
  222. package/dist/freeze-updates-DkKJK_nh.cjs +44 -0
  223. package/dist/freeze-updates-DmB-ndqy.cjs +44 -0
  224. package/dist/freeze-updates-DnAA3QYp.cjs +44 -0
  225. package/dist/freeze-updates-Dpj8jndD.js +44 -0
  226. package/dist/freeze-updates-DuHXIi3M.js +44 -0
  227. package/dist/freeze-updates-DwERlFID.js +1866 -0
  228. package/dist/freeze-updates-HHyWtz8f.cjs +44 -0
  229. package/dist/freeze-updates-JRZCAR0q.js +1866 -0
  230. package/dist/freeze-updates-KLyCac_c.js +44 -0
  231. package/dist/freeze-updates-MaNDvTJS.js +1866 -0
  232. package/dist/freeze-updates-REe44rww.js +44 -0
  233. package/dist/freeze-updates-TPRkNnYY.js +44 -0
  234. package/dist/freeze-updates-WfKs4yF4.js +44 -0
  235. package/dist/freeze-updates-d9yH0V6A.cjs +44 -0
  236. package/dist/freeze-updates-nzZkxjqN.js +44 -0
  237. package/dist/freeze-updates-q_DMlHq7.js +44 -0
  238. package/dist/index-0hhKx6KA.d.ts +534 -0
  239. package/dist/index-5oOhE8Ae.d.cts +123 -0
  240. package/dist/index-BA23Z7zi.d.ts +77 -0
  241. package/dist/index-BAbHDCJb.d.ts +190 -0
  242. package/dist/index-BN1ZJhWK.d.cts +471 -0
  243. package/dist/index-BNt_9BO7.d.ts +77 -0
  244. package/dist/index-BQIO-ZFv.d.cts +190 -0
  245. package/dist/index-BTQxeAz1.d.cts +123 -0
  246. package/dist/index-BxsI0BlT.d.ts +471 -0
  247. package/dist/index-BzzHoNRc.d.cts +77 -0
  248. package/dist/index-C0Scq3kL.d.ts +458 -0
  249. package/dist/index-CAHLDDjY.d.ts +190 -0
  250. package/dist/index-CIJ7ossb.d.ts +190 -0
  251. package/dist/index-CJqujqsv.d.cts +190 -0
  252. package/dist/index-CJrVDk2d.d.ts +470 -0
  253. package/dist/index-CQBZI4f5.d.cts +458 -0
  254. package/dist/index-CS3VHZ8R.d.cts +77 -0
  255. package/dist/index-CWd5aKyK.d.ts +123 -0
  256. package/dist/index-DM3Ga1zc.d.ts +123 -0
  257. package/dist/index-DYp_9VQ_.d.cts +470 -0
  258. package/dist/index-DrK-HiGj.d.ts +203 -0
  259. package/dist/index-GwiDNOsl.d.ts +457 -0
  260. package/dist/index-QLMT7NRw.d.cts +203 -0
  261. package/dist/index-QLi1BtdI.d.cts +190 -0
  262. package/dist/index-sM3yy652.d.cts +534 -0
  263. package/dist/index-zvkV7Xwg.d.cts +457 -0
  264. package/dist/index.cjs +2 -2
  265. package/dist/index.d.cts +21 -12
  266. package/dist/index.d.ts +21 -12
  267. package/dist/index.global.js +26 -101
  268. package/dist/index.iife.js +43 -0
  269. package/dist/index.js +2 -2
  270. package/dist/primitives.cjs +2 -2
  271. package/dist/primitives.d.cts +20 -13
  272. package/dist/primitives.d.ts +20 -13
  273. package/dist/primitives.js +2 -2
  274. package/dist/renderer--AVNuclr.js +9 -0
  275. package/dist/renderer--bWj0AZJ.js +4101 -0
  276. package/dist/renderer--cF4pvND.js +9 -0
  277. package/dist/renderer-0mo5bvxE.js +4126 -0
  278. package/dist/renderer-4Wa-UMC5.cjs +9 -0
  279. package/dist/renderer-6D9KbSAS.js +9 -0
  280. package/dist/renderer-7mjLlkgX.cjs +9 -0
  281. package/dist/renderer-B0v-2J0H.js +9 -0
  282. package/dist/renderer-B0yJsSRz.js +9 -0
  283. package/dist/renderer-B660bBKn.cjs +9 -0
  284. package/dist/renderer-B6m2pWq1.cjs +4102 -0
  285. package/dist/renderer-BA_yjKW4.cjs +9 -0
  286. package/dist/renderer-BDCne7IL.cjs +9 -0
  287. package/dist/renderer-BDKG-8eW.js +9 -0
  288. package/dist/renderer-BEisX7lt.js +9 -0
  289. package/dist/renderer-BEnSHrkN.cjs +9 -0
  290. package/dist/renderer-BJQHCki_.js +9 -0
  291. package/dist/renderer-BLEQ0lBg.js +9 -0
  292. package/dist/renderer-BQMe9vbO.cjs +9 -0
  293. package/dist/renderer-BZfQAWt2.cjs +9 -0
  294. package/dist/renderer-BZypunFM.cjs +9 -0
  295. package/dist/renderer-Be1I1mDW.cjs +9 -0
  296. package/dist/renderer-Bhrtihjr.cjs +9 -0
  297. package/dist/renderer-Bp3dRMPA.js +9 -0
  298. package/dist/renderer-BqYgf0tD.js +9 -0
  299. package/dist/renderer-BwD9ZaGr.cjs +9 -0
  300. package/dist/renderer-BxCRcsEK.cjs +4125 -0
  301. package/dist/renderer-C1Wrh8hn.js +9 -0
  302. package/dist/renderer-C6pztTyv.js +9 -0
  303. package/dist/renderer-C9bCr3pC.js +4101 -0
  304. package/dist/renderer-CEmrAuyA.js +9 -0
  305. package/dist/renderer-CG1lpM8J.cjs +9 -0
  306. package/dist/renderer-CIJhv1xD.js +9 -0
  307. package/dist/renderer-CJ3EovD7.js +9 -0
  308. package/dist/renderer-CJVIzi67.js +4114 -0
  309. package/dist/renderer-CKAmRN9i.cjs +9 -0
  310. package/dist/renderer-CNa9jW2d.js +9 -0
  311. package/dist/renderer-CS6q5sh-.cjs +4101 -0
  312. package/dist/renderer-CTip7L4z.cjs +4114 -0
  313. package/dist/renderer-Cdh6G3WO.cjs +4101 -0
  314. package/dist/renderer-Cfnc_J-x.js +9 -0
  315. package/dist/renderer-CidbOiiO.js +9 -0
  316. package/dist/renderer-CooL8OD4.cjs +9 -0
  317. package/dist/renderer-Cp8W_Vpj.cjs +4101 -0
  318. package/dist/renderer-Ctq4IL1w.cjs +9 -0
  319. package/dist/renderer-D0gZDp8v.js +9 -0
  320. package/dist/renderer-D2Ius1-3.cjs +9 -0
  321. package/dist/renderer-D2gUuAUv.cjs +9 -0
  322. package/dist/renderer-D6qQGrNF.js +9 -0
  323. package/dist/renderer-D9RBf9He.js +9 -0
  324. package/dist/renderer-DDpyudCh.js +9 -0
  325. package/dist/renderer-DEo9eIZj.cjs +9 -0
  326. package/dist/renderer-DHBz10-G.js +9 -0
  327. package/dist/renderer-DM6gVYD_.cjs +4126 -0
  328. package/dist/renderer-DS5wjL1R.cjs +9 -0
  329. package/dist/renderer-DWZQjHeF.cjs +4101 -0
  330. package/dist/renderer-DZ-EdxOj.cjs +9 -0
  331. package/dist/renderer-DblZTrea.js +9 -0
  332. package/dist/renderer-DcPiCh7r.js +4114 -0
  333. package/dist/renderer-Dfj6tfg9.cjs +4139 -0
  334. package/dist/renderer-DhoYb1PY.js +4103 -0
  335. package/dist/renderer-Dl6awT_I.cjs +9 -0
  336. package/dist/renderer-DmOXobMF.js +4101 -0
  337. package/dist/renderer-DmlAyeq6.cjs +4114 -0
  338. package/dist/renderer-DnwizF3I.cjs +9 -0
  339. package/dist/renderer-Dpzs-uao.js +4125 -0
  340. package/dist/renderer-Ds21virZ.cjs +4145 -0
  341. package/dist/renderer-DslAAsKS.js +4101 -0
  342. package/dist/renderer-DtBv4wTu.js +4102 -0
  343. package/dist/renderer-DxuOYfZN.cjs +9 -0
  344. package/dist/renderer-DyrsoA_r.js +9 -0
  345. package/dist/renderer-GlgUXTaV.js +9 -0
  346. package/dist/renderer-KL2bSyIW.cjs +9 -0
  347. package/dist/renderer-N_yFJNWi.cjs +9 -0
  348. package/dist/renderer-TkTQ8ZzV.cjs +4101 -0
  349. package/dist/renderer-WtWG_Uzr.js +4139 -0
  350. package/dist/renderer-YPWUo91d.cjs +9 -0
  351. package/dist/renderer-foaHR93_.js +9 -0
  352. package/dist/renderer-irss7gH9.js +9 -0
  353. package/dist/renderer-kNWgh9RH.js +9 -0
  354. package/dist/renderer-l2DsHbX5.js +4145 -0
  355. package/dist/renderer-lRGat4eI.js +9 -0
  356. package/dist/renderer-m1ynwV5m.cjs +9 -0
  357. package/dist/renderer-oDWZTt10.cjs +9 -0
  358. package/dist/renderer-ruVxrW9_.cjs +9 -0
  359. package/dist/renderer-tLg9bC5E.cjs +4103 -0
  360. package/dist/renderer-wKL03A96.cjs +9 -0
  361. package/dist/renderer-xY7WwwPb.cjs +9 -0
  362. package/dist/renderer-yNfPLGJa.js +4101 -0
  363. package/dist/renderer-zFA8Xsqn.js +9 -0
  364. package/dist/state-0zvRag7o.js +1832 -0
  365. package/dist/state-1bNOTRwX.js +9 -0
  366. package/dist/state-4KlM-876.cjs +9 -0
  367. package/dist/state-5YzsfKSg.js +9 -0
  368. package/dist/state-B2sO7SGs.cjs +9 -0
  369. package/dist/state-B30FVO9-.cjs +9 -0
  370. package/dist/state-BBF5Yd6R.cjs +1488 -0
  371. package/dist/state-BHM_hL69.cjs +9 -0
  372. package/dist/state-BKkU5MYC.js +9 -0
  373. package/dist/state-B_xrj8fC.js +9 -0
  374. package/dist/state-BaTqKR5-.js +1832 -0
  375. package/dist/state-Bb1Wechu.js +9 -0
  376. package/dist/state-BfgVpFaG.cjs +9 -0
  377. package/dist/state-BoRPcmmD.js +9 -0
  378. package/dist/state-BqB3gaPk.js +9 -0
  379. package/dist/state-Bt9zarML.js +1832 -0
  380. package/dist/state-Bw07Ecsm.js +9 -0
  381. package/dist/state-Bw9Y8zmt.js +9 -0
  382. package/dist/state-ByV_XBwX.js +9 -0
  383. package/dist/state-C4nNE_SS.js +9 -0
  384. package/dist/state-C4uusDVL.cjs +9 -0
  385. package/dist/state-CMwBL8Lh.cjs +9 -0
  386. package/dist/state-C_KJ10Ip.cjs +9 -0
  387. package/dist/state-ClLJ5ade.cjs +1488 -0
  388. package/dist/state-CpWrjvjx.js +277 -0
  389. package/dist/state-CwguFqss.cjs +9 -0
  390. package/dist/state-Cxj7mpyT.cjs +9 -0
  391. package/dist/state-CyWfuYBm.js +9 -0
  392. package/dist/state-Cz4euNVW.js +1832 -0
  393. package/dist/state-D1eYdbOV.js +9 -0
  394. package/dist/state-D231Xq-p.js +9 -0
  395. package/dist/state-D2nMXLig.cjs +9 -0
  396. package/dist/state-D3NnAU-G.js +9 -0
  397. package/dist/state-D4g0zX0j.cjs +9 -0
  398. package/dist/state-D5n1XOr-.cjs +372 -0
  399. package/dist/state-DPKTXrbJ.cjs +9 -0
  400. package/dist/state-DREKPmRw.cjs +9 -0
  401. package/dist/state-DT0Nzp9g.cjs +9 -0
  402. package/dist/state-Deun4HK-.cjs +9 -0
  403. package/dist/state-DfcZ51t9.js +9 -0
  404. package/dist/state-DgvhS6KW.cjs +1488 -0
  405. package/dist/state-DkjLMcvP.cjs +9 -0
  406. package/dist/state-DspBT1Sv.js +9 -0
  407. package/dist/state-DtgVqpBv.js +9 -0
  408. package/dist/state-DycsTHAk.cjs +9 -0
  409. package/dist/state-EWoHHdWu.js +9 -0
  410. package/dist/state-HWOltPgB.js +9 -0
  411. package/dist/state-JJNPE2tU.js +277 -0
  412. package/dist/state-KDd3Eouo.js +9 -0
  413. package/dist/state-Kmc6BtLp.cjs +9 -0
  414. package/dist/state-Q4M-6UjH.cjs +9 -0
  415. package/dist/state-U8yVy4Ad.cjs +9 -0
  416. package/dist/state-Uwm9KEi1.js +1832 -0
  417. package/dist/state-XYH8BGBU.cjs +372 -0
  418. package/dist/state-aBiYx-N-.cjs +9 -0
  419. package/dist/state-arg5pYvx.cjs +1488 -0
  420. package/dist/state-dFAAWOP9.cjs +1488 -0
  421. package/dist/state-daFKdtG6.js +9 -0
  422. package/dist/state-muKg33Sx.cjs +9 -0
  423. package/dist/state-wvjxc3BL.js +9 -0
  424. package/dist/styles.css +1 -1
  425. package/package.json +16 -23
  426. package/dist/chunk-5RMV2HA7.js +0 -101
  427. package/dist/chunk-QEVSATMF.cjs +0 -101
  428. package/dist/chunk-XWCIDYJD.cjs +0 -26
  429. package/dist/chunk-XYTXUEOE.js +0 -26
  430. package/dist/index-CN8HkCli.d.cts +0 -547
  431. package/dist/index-CN8HkCli.d.ts +0 -547
  432. 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
+ import{A as e,B as t,C as n,F as r,G as i,H as a,I as o,K as s,L as c,R as l,S as u,U as d,V as f,a as p,g as m,h,i as g,j as _,m as ee,n as te,p as ne,r as re,s as ie,t as ae}from"./state-BoRPcmmD.js";import{A as oe,G as se,J as v,K as y,M as ce,O as le,P as ue,S as de,T as fe,_ as pe,a as me,b,c as x,d as he,dt as S,f as C,g as ge,h as _e,i as ve,j as w,k as ye,l as be,lt as T,m as xe,o as Se,p as Ce,q as we,r as Te,s as Ee,t as De,u as Oe,ut as ke,v as Ae,w as je,y as Me,z as Ne}from"./freeze-updates-BDhlBp3V.js";import{n as E,r as Pe,t as Fe}from"./extract-element-css-DU45xRGh.js";var Ie=`/*! 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 Le=Symbol(`store-raw`),D=Symbol(`store-node`),O=Symbol(`store-has`),k=Symbol(`store-self`);function Re(t){let n=t[e];if(!n&&(Object.defineProperty(t,e,{value:n=new Proxy(t,Ke)}),!Array.isArray(t))){let e=Object.keys(t),r=Object.getOwnPropertyDescriptors(t);for(let i=0,a=e.length;i<a;i++){let a=e[i];r[a].get&&Object.defineProperty(t,a,{enumerable:r[a].enumerable,get:r[a].get.bind(n)})}}return n}function ze(t){let n;return typeof t==`object`&&!!t&&(t[e]||!(n=Object.getPrototypeOf(t))||n===Object.prototype||Array.isArray(t))}function Be(e,t=new Set){let n,r,i,a;if(n=e!=null&&e[Le])return n;if(!ze(e)||t.has(e))return e;if(Array.isArray(e)){Object.isFrozen(e)?e=e.slice(0):t.add(e);for(let n=0,a=e.length;n<a;n++)i=e[n],(r=Be(i,t))!==i&&(e[n]=r)}else{Object.isFrozen(e)?e=Object.assign({},e):t.add(e);let n=Object.keys(e),o=Object.getOwnPropertyDescriptors(e);for(let s=0,c=n.length;s<c;s++)a=n[s],!o[a].get&&(i=e[a],(r=Be(i,t))!==i&&(e[a]=r))}return e}function Ve(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function He(e,t,n){if(e[t])return e[t];let[r,i]=a(n,{equals:!1,internal:!0});return r.$=i,e[t]=r}function Ue(t,n){let r=Reflect.getOwnPropertyDescriptor(t,n);return!r||r.get||!r.configurable||n===e||n===D?r:(delete r.value,delete r.writable,r.get=()=>t[e][n],r)}function We(e){d()&&He(Ve(e,D),k)()}function Ge(e){return We(e),Reflect.ownKeys(e)}const Ke={get(t,n,r){if(n===Le)return t;if(n===e)return r;if(n===_)return We(t),r;let i=Ve(t,D),a=i[n],o=a?a():t[n];if(n===D||n===O||n===`__proto__`)return o;if(!a){let e=Object.getOwnPropertyDescriptor(t,n);d()&&(typeof o!=`function`||t.hasOwnProperty(n))&&!(e&&e.get)&&(o=He(i,n,o)())}return ze(o)?Re(o):o},has(t,n){return n===Le||n===e||n===_||n===D||n===O||n===`__proto__`?!0:(d()&&He(Ve(t,O),n)(),n in t)},set(){return!0},deleteProperty(){return!0},ownKeys:Ge,getOwnPropertyDescriptor:Ue};function A(e,t,n,r=!1){if(!r&&e[t]===n)return;let i=e[t],a=e.length;n===void 0?(delete e[t],e[O]&&e[O][t]&&i!==void 0&&e[O][t].$()):(e[t]=n,e[O]&&e[O][t]&&i===void 0&&e[O][t].$());let o=Ve(e,D),s;if((s=He(o,t,i))&&s.$(()=>n),Array.isArray(e)&&e.length!==a){for(let t=e.length;t<a;t++)(s=o[t])&&s.$();(s=He(o,`length`,a))&&s.$(e.length)}(s=o[k])&&s.$()}function qe(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];A(e,i,t[i])}}function Je(e,t){if(typeof t==`function`&&(t=t(e)),t=Be(t),Array.isArray(t)){if(e===t)return;let n=0,r=t.length;for(;n<r;n++){let r=t[n];e[n]!==r&&A(e,n,r)}A(e,`length`,r)}else qe(e,t)}function j(e,t,n=[]){let r,i=e;if(t.length>1){r=t.shift();let a=typeof r,o=Array.isArray(e);if(Array.isArray(r)){for(let i=0;i<r.length;i++)j(e,[r[i]].concat(t),n);return}else if(o&&a===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&j(e,[i].concat(t),n);return}else if(o&&a===`object`){let{from:i=0,to:a=e.length-1,by:o=1}=r;for(let r=i;r<=a;r+=o)j(e,[r].concat(t),n);return}else if(t.length>1){j(e[r],t,[r].concat(n));return}i=e[r],n=[r].concat(n)}let a=t[0];typeof a==`function`&&(a=a(i,n),a===i)||r===void 0&&a==null||(a=Be(a),r===void 0||ze(i)&&ze(a)&&!Array.isArray(a)?qe(i,a):A(e,r,a))}function Ye(...[e,t]){let n=Be(e||{}),i=Array.isArray(n),a=Re(n);function o(...e){r(()=>{i&&e.length===1?Je(n,e[0]):j(n,e)})}return[a,o]}const Xe=new WeakMap,Ze={get(e,t){if(t===Le)return e;let n=e[t],r;return ze(n)?Xe.get(n)||(Xe.set(n,r=new Proxy(n,Ze)),r):n},set(e,t,n){return A(e,t,Be(n)),!0},deleteProperty(e,t){return A(e,t,void 0,!0),!0}};function M(e){return t=>{if(ze(t)){let n;(n=Xe.get(t))||Xe.set(t,n=new Proxy(t,Ze)),e(n)}return t}}const Qe=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),$e=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return Qe(n)?n:null},N=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=$e(e);if(t===null)return null;r.push(t)}return r},et=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,tt=e=>e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[15]===1,nt=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=N(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,tt(n)?`none`:`matrix3d(${n[0]}, ${n[1]}, ${n[2]}, ${n[3]}, ${n[4]}, ${n[5]}, ${n[6]}, ${n[7]}, ${n[8]}, ${n[9]}, ${n[10]}, ${n[11]}, 0, 0, 0, ${n[15]})`}else{let t=e.length-1,n=N(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return et(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},rt=e=>e.isIdentity?`none`:e.is2D?et(e.a,e.b,e.c,e.d)?`none`:`matrix(${e.a}, ${e.b}, ${e.c}, ${e.d}, 0, 0)`:e.m11===1&&e.m12===0&&e.m13===0&&e.m14===0&&e.m21===0&&e.m22===1&&e.m23===0&&e.m24===0&&e.m31===0&&e.m32===0&&e.m33===1&&e.m34===0&&e.m44===1?`none`:`matrix3d(${e.m11}, ${e.m12}, ${e.m13}, ${e.m14}, ${e.m21}, ${e.m22}, ${e.m23}, ${e.m24}, ${e.m31}, ${e.m32}, ${e.m33}, ${e.m34}, 0, 0, 0, ${e.m44})`;let it=new WeakMap,at=new WeakMap,ot=new WeakMap;const st=()=>{it=new WeakMap,at=new WeakMap,ot=new WeakMap},ct=(e,t)=>{let n=at.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return at.set(e,{transform:i,timestamp:t}),i},lt=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=ct(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))),rt(i)):r?nt(t):`none`},ut=(e,t,n)=>{let r=ot.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return ot.set(e,{borderRadius:i,timestamp:n}),i},dt=(e,t,n,r)=>{let i=lt(e,n.transform,r),a=ut(e,n,r);if(i!==`none`&&e instanceof HTMLElement){let n=e.offsetWidth,r=e.offsetHeight;if(n>0&&r>0){let e=t.left+t.width*.5,o=t.top+t.height*.5;return{borderRadius:a,height:r,transform:i,width:n,x:e-n*.5,y:o-r*.5}}}return{borderRadius:a,height:t.height,transform:i,width:t.width,x:t.left,y:t.top}},P=e=>{let t=performance.now(),n=it.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=dt(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return it.set(e,{bounds:r,timestamp:t}),r},ft=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),pt=e=>({current:{state:`idle`},wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:e.keyHoldDuration,pointer:{x:v,y:v},dragStart:{x:v,y:v},copyStart:{x:v,y:v},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,lastCopiedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:``,pendingClickData:null,viewportVersion:0,grabbedBoxes:[],labelInstances:[],isTouchMode:!1,theme:e.theme,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),mt=e=>{let[t,n]=Ye(pt(e)),r=e=>{n(`current`,M(t=>{t.state===`active`&&(t.phase=e)}))},i={startHold:e=>{e!==void 0&&n(`keyHoldDuration`,e),n(`current`,{state:`holding`,startedAt:Date.now()})},releaseHold:()=>{t.current.state===`holding`&&n(`current`,{state:`idle`})},activate:()=>{n(M(e=>{e.current={state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1},e.activationTimestamp=Date.now(),e.previouslyFocusedElement=document.activeElement}))},deactivate:()=>{n(M(e=>{e.current={state:`idle`},e.wasActivatedByToggle=!1,e.pendingCommentMode=!1,e.inputText=``,e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null,e.pendingClickData=null,e.activationTimestamp=null,e.previouslyFocusedElement=null,e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null,e.lastCopiedElement=null}))},toggle:()=>{t.activationTimestamp===null?(n(`wasActivatedByToggle`,!0),i.activate()):i.deactivate()},freeze:()=>{if(t.current.state===`active`){let e=t.frozenElement??t.detectedElement;e&&n(`frozenElement`,e),r(`frozen`)}},unfreeze:()=>{t.current.state===`active`&&(n(M(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),r(`hovering`))},startDrag:e=>{t.current.state===`active`&&(i.clearFrozenElement(),n(`dragStart`,{x:e.x+window.scrollX,y:e.y+window.scrollY}),r(`dragging`))},endDrag:()=>{t.current.state===`active`&&t.current.phase===`dragging`&&(n(`dragStart`,{x:v,y:v}),r(`justDragged`))},cancelDrag:()=>{t.current.state===`active`&&t.current.phase===`dragging`&&(n(`dragStart`,{x:v,y:v}),r(`hovering`))},finishJustDragged:()=>{t.current.state===`active`&&t.current.phase===`justDragged`&&r(`hovering`)},startCopy:()=>{let e=t.current.state===`active`;n(`current`,{state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:e=>{n(`pendingClickData`,null),e&&n(`lastCopiedElement`,e);let r=t.current.state===`copying`?t.current.wasActive:!1;n(`current`,{state:`justCopied`,copiedAt:Date.now(),wasActive:r})},finishJustCopied:()=>{t.current.state===`justCopied`&&(t.current.wasActive&&!t.wasActivatedByToggle?(i.clearFrozenElement(),n(`current`,{state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})):i.deactivate())},enterPromptMode:(e,r)=>{let{x:i}=ft(P(r));n(`copyStart`,e),n(`copyOffsetFromCenterX`,e.x-i),n(`pointer`,e),n(`frozenElement`,r),n(`wasActivatedByToggle`,!0),t.current.state===`active`?n(`current`,M(e=>{e.state===`active`&&(e.isPromptMode=!0,e.phase=`frozen`)})):(n(`current`,{state:`active`,phase:`frozen`,isPromptMode:!0,isPendingDismiss:!1}),n(`activationTimestamp`,Date.now()),n(`previouslyFocusedElement`,document.activeElement))},exitPromptMode:()=>{t.current.state===`active`&&n(`current`,M(e=>{e.state===`active`&&(e.isPromptMode=!1,e.isPendingDismiss=!1)}))},setInputText:e=>{n(`inputText`,e)},clearInputText:()=>{n(`inputText`,``)},setPendingDismiss:e=>{t.current.state===`active`&&n(`current`,M(t=>{t.state===`active`&&(t.isPendingDismiss=e)}))},setPointer:e=>{n(`pointer`,e)},setDetectedElement:e=>{n(`detectedElement`,e)},setFrozenElement:e=>{n(M(t=>{t.frozenElement=e,t.frozenElements=[e],t.frozenDragRect=null}))},setFrozenElements:e=>{n(M(t=>{t.frozenElements=e,t.frozenElement=e.length>0?e[0]:null,t.frozenDragRect=null}))},setFrozenDragRect:e=>{n(`frozenDragRect`,e)},clearFrozenElement:()=>{n(M(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null}))},setCopyStart:(e,t)=>{let{x:r}=ft(P(t));n(`copyStart`,e),n(`copyOffsetFromCenterX`,e.x-r)},setLastGrabbed:e=>{n(`lastGrabbedElement`,e)},clearLastCopied:()=>{n(`lastCopiedElement`,null)},setWasActivatedByToggle:e=>{n(`wasActivatedByToggle`,e)},setPendingCommentMode:e=>{n(`pendingCommentMode`,e)},setTouchMode:e=>{n(`isTouchMode`,e)},setSelectionSource:(e,t)=>{n(M(n=>{n.selectionFilePath=e,n.selectionLineNumber=t}))},setPendingClickData:e=>{n(`pendingClickData`,e)},incrementViewportVersion:()=>{n(`viewportVersion`,e=>e+1)},addGrabbedBox:e=>{n(`grabbedBoxes`,t=>[...t,e])},removeGrabbedBox:e=>{n(`grabbedBoxes`,t=>t.filter(t=>t.id!==e))},clearGrabbedBoxes:()=>{n(`grabbedBoxes`,[])},addLabelInstance:e=>{n(`labelInstances`,t=>[...t,e])},updateLabelInstance:(e,r,i)=>{let a=t.labelInstances.findIndex(t=>t.id===e);a!==-1&&n(`labelInstances`,a,M(e=>{e.status=r,i!==void 0&&(e.errorMessage=i)}))},removeLabelInstance:e=>{n(`labelInstances`,t=>t.filter(t=>t.id!==e))},clearLabelInstances:()=>{n(`labelInstances`,[])},showContextMenu:(e,t)=>{let{x:r,y:i}=ft(P(t));n(M(n=>{n.contextMenuPosition=e,n.contextMenuElement=t,n.contextMenuClickOffset={x:e.x-r,y:e.y-i}}))},hideContextMenu:()=>{n(M(e=>{e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null}))},updateContextMenuPosition:()=>{let e=t.contextMenuElement,r=t.contextMenuClickOffset;if(!e||!r||!m(e))return;let{x:i,y:a}=ft(P(e));n(`contextMenuPosition`,{x:i+r.x,y:a+r.y})}};return{store:t,actions:i}},F=`data-react-grab`,ht=`react-grab-fonts`,gt=()=>{if(document.getElementById(ht)||!document.head)return;let e=document.createElement(`link`);e.id=ht,e.rel=`stylesheet`,e.href=`https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap`,document.head.appendChild(e)},_t=e=>{gt();let t=document.querySelector(`[${F}]`);if(t){let e=t.shadowRoot?.querySelector(`[${F}]`);if(e instanceof HTMLDivElement&&t.shadowRoot)return e}let n=document.createElement(`div`);n.setAttribute(F,`true`),n.style.zIndex=String(S),n.style.position=`fixed`,n.style.inset=`0`,n.style.pointerEvents=`none`;let r=n.attachShadow({mode:`open`});if(e){let t=document.createElement(`style`);t.textContent=e,r.appendChild(t)}let i=document.createElement(`div`);i.setAttribute(F,`true`),r.appendChild(i);let a=document.body??document.documentElement;return a.appendChild(n),setTimeout(()=>{a.appendChild(n)},y),i},I=()=>{},L=()=>({activate:I,deactivate:I,toggle:I,comment:I,isActive:()=>!1,isEnabled:()=>!1,setEnabled:I,getToolbarState:()=>null,setToolbarState:I,onToolbarStateChange:()=>I,dispose:I,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:I,registerPlugin:I,unregisterPlugin:I,getPlugins:()=>[],getDisplayName:()=>null}),vt=()=>{let e=new AbortController;return{signal:e.signal,abort:()=>e.abort(),addWindowListener:(t,n,r={})=>{window.addEventListener(t,n,{...r,signal:e.signal})},addDocumentListener:(t,n,r={})=>{document.addEventListener(t,n,{...r,signal:e.signal})}}},yt=e=>e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`),bt=(e,t)=>{let n=t?.componentName??`div`,r={version:T,content:e,entries:t?.entries??[{tagName:t?.tagName,componentName:n,content:e,commentText:t?.commentText}],timestamp:Date.now()},i=t=>{t.preventDefault(),t.clipboardData?.setData(`text/plain`,e),t.clipboardData?.setData(`text/html`,`<meta charset='utf-8'><pre><code>${yt(e)}</code></pre>`),t.clipboardData?.setData(`application/x-react-grab`,JSON.stringify(r))};document.addEventListener(`copy`,i);let a=document.createElement(`textarea`);a.value=e,a.style.position=`fixed`,a.style.left=`-9999px`,a.ariaHidden=`true`,document.body.appendChild(a),a.select();try{return typeof document.execCommand==`function`?document.execCommand(`copy`):!1}finally{document.removeEventListener(`copy`,i),a.remove()}},xt=async(e,t={})=>(await Promise.allSettled(e.map(e=>b(e,t)))).map(e=>e.status===`fulfilled`?e.value:``),St=e=>e.length<=1?e[0]??``:e.map((e,t)=>`[${t+1}]\n${e}`).join(`
11
+
12
+ `),Ct=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,wt=e=>e instanceof Error?e:Error(String(e)),Tt=async(e,t,n,r)=>{let i=!1,a=``;await t.onBeforeCopy(n);try{let o,s;if(e.getContent)o=await e.getContent(n);else{let i=await xt(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=St(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=bt(a,{componentName:e.componentName,entries:s})}}catch(e){t.onCopyError(wt(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},R=(e,t)=>{let n=Math.max(e.left,t.left),r=Math.max(e.top,t.top),i=Math.min(e.right,t.right),a=Math.min(e.bottom,t.bottom);return Math.max(0,i-n)*Math.max(0,a-r)},z=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,Et=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}),Dt=e=>{if(e.width<=0||e.height<=0)return[];let t=window.innerWidth,n=window.innerHeight,r=e.x,i=e.y,a=e.x+e.width,o=e.y+e.height,s=r+e.width/2,c=i+e.height/2,l=ie(Math.ceil(e.width/32),3,20),u=ie(Math.ceil(e.height/32),3,20),d=l*u,f=d>100?Math.sqrt(100/d):1,p=ie(Math.floor(l*f),3,20),m=ie(Math.floor(u*f),3,20),h=new Set,g=[],_=(e,r)=>{let i=ie(Math.round(e),0,t-1),a=ie(Math.round(r),0,n-1),o=`${i}:${a}`;h.has(o)||(h.add(o),g.push({x:i,y:a}))};_(r+1,i+1),_(a-1,i+1),_(r+1,o-1),_(a-1,o-1),_(s,i+1),_(s,o-1),_(r+1,c),_(a-1,c),_(s,c);for(let t=0;t<p;t+=1){let n=r+(t+.5)/p*e.width;for(let t=0;t<m;t+=1)_(n,i+(t+.5)/m*e.height)}return g},Ot=(e,t,n)=>{let r={left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height},i=new Set,a=Dt(e);Ce();try{for(let e of a){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)i.add(e)}}finally{C()}let o=[];for(let e of i)!n&&pe(e)||t(e)&&o.push(e);let s=new Map;for(let e of o)s.set(e,e.getBoundingClientRect());let c=[];for(let e of o){let t=s.get(e);if(t.width<=0||t.height<=0)continue;let i={left:t.left,top:t.top,right:t.left+t.width,bottom:t.top+t.height};if(n){let n=R(r,i),a=t.width*t.height;a>0&&n/a>=.75&&c.push(e)}else z(i,r)&&c.push(e)}return Et(c)},kt=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),At=(e,t,n=!0)=>kt(Ot(e,t,n)),jt=e=>{let t=[],n=e.parentElement;for(;n&&!pe(n);)t.push(n),n=n.parentElement;return t},Mt=e=>{let t=window.innerWidth,n=window.innerHeight,r=Math.max(0,e.x),i=Math.min(t,e.x+e.width),a=Math.max(0,e.y),o=Math.min(n,e.y+e.height);return{x:(r+i)/2,y:(a+o)/2}},Nt=()=>{st(),x(),_e()},Pt=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),Ft=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),It=e=>({...e,borderRadius:`0px`,transform:`none`}),Lt=e=>{let t=P(e);return{bounds:t,center:ft(t)}},Rt=e=>ft(P(e)),B=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),zt=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:B.has(e),Bt=(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},Vt={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},Ht=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=Vt[e];t?n[t]=!0:n.key=e}return n},Ut=e=>{if(typeof e==`function`)return e;let t=Ht(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||Bt(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}},Wt=e=>!e||typeof e==`function`?{metaKey:p(),ctrlKey:!p(),shiftKey:!1,altKey:!1,key:null}:Ht(e),Gt=(e,t)=>{if(t.activationKey)return Ut(t.activationKey)(e);let n=(p()?e.metaKey:e.ctrlKey)&&!e.shiftKey&&!e.altKey;return!!(e.key&&n&&zt(e.key,e.code))},Kt=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}},qt={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},V=(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}}),Jt={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},Yt=(e={})=>{let t=new Map,n={},[r,i]=Ye({theme:qt,options:{...Jt,...e},actions:[]}),a=()=>{let r=qt,a={...Jt,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=V(r,e.theme)),e.options&&(a={...a,...e.options}),e.actions)for(let t of e.actions)o.push(t);a={...a,...n},i(`theme`,r),i(`options`,a),i(`actions`,o)},o=(e,t)=>{n[e]=t,i(`options`,e,t)},s=[`activationMode`,`keyHoldDuration`,`allowActivationInsideInput`,`maxContextLines`,`activationKey`,`getContent`,`freezeReactUpdates`],c=e=>{for(let t of s)e[t]!==void 0&&o(t,e[t])},l=(e,n)=>{t.has(e.name)&&u(e.name);let r=e.setup?.(n,_)??{};return e.theme&&(r.theme=r.theme?V(V(qt,e.theme),r.theme):e.theme),e.actions&&(r.actions=[...e.actions,...r.actions??[]]),e.hooks&&(r.hooks=r.hooks?{...e.hooks,...r.hooks}:e.hooks),e.options&&(r.options=r.options?{...e.options,...r.options}:e.options),t.set(e.name,{plugin:e,config:r}),a(),r},u=e=>{let n=t.get(e);n&&(n.config.cleanup&&n.config.cleanup(),t.delete(e),a())},d=()=>Array.from(t.keys()),f=(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&t(...n)}},p=(e,...n)=>{let r=!1;for(let{config:i}of t.values()){let t=i.hooks?.[e];t&&t(...n)===!0&&(r=!0)}return r},m=async(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&await t(...n)}},h=async(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=await t(i,...r))}return i},g=(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=t(i,...r))}return i},_={onActivate:()=>f(`onActivate`),onDeactivate:()=>f(`onDeactivate`),onElementHover:e=>f(`onElementHover`,e),onElementSelect:e=>{let n=!1,r;for(let{config:i}of t.values()){let t=i.hooks?.onElementSelect;if(t){let i=t(e);i===!0?n=!0:i instanceof Promise&&(n=!0,r=i)}}return{wasIntercepted:n,pendingResult:r}},onDragStart:(e,t)=>f(`onDragStart`,e,t),onDragEnd:(e,t)=>f(`onDragEnd`,e,t),onBeforeCopy:async e=>m(`onBeforeCopy`,e),transformCopyContent:async(e,t)=>h(`transformCopyContent`,e,t),onAfterCopy:(e,t)=>f(`onAfterCopy`,e,t),onCopySuccess:(e,t)=>f(`onCopySuccess`,e,t),onCopyError:e=>f(`onCopyError`,e),onStateChange:e=>f(`onStateChange`,e),onPromptModeChange:(e,t)=>f(`onPromptModeChange`,e,t),onSelectionBox:(e,t,n)=>f(`onSelectionBox`,e,t,n),onDragBox:(e,t)=>f(`onDragBox`,e,t),onGrabbedBox:(e,t)=>f(`onGrabbedBox`,e,t),onElementLabel:(e,t,n)=>f(`onElementLabel`,e,t,n),onContextMenu:(e,t)=>f(`onContextMenu`,e,t),onOpenFile:(e,t)=>p(`onOpenFile`,e,t),transformHtmlContent:async(e,t)=>h(`transformHtmlContent`,e,t),transformAgentContext:async(e,t)=>h(`transformAgentContext`,e,t),transformActionContext:e=>g(`transformActionContext`,e),transformOpenFileUrl:(e,t,n)=>g(`transformOpenFileUrl`,e,t,n),transformSnippet:async(e,t)=>h(`transformSnippet`,e,t)};return{register:l,unregister:u,getPluginNames:d,setOptions:c,store:r,hooks:_}},Xt=(e,t)=>{let n=[],r=(n,r)=>{let i=Mt(t(n)),a=Oe(i.x,i.y).filter(e),o=a.indexOf(n);return o===-1?null:a[o+r]??null},i=e=>{let t=r(e,1);return t&&(n.push(e),n.length>50&&(n=n.slice(-50))),t},a=e=>{if(n.length>0){let e=n.pop();if(m(e))return e}return r(e,-1)},o=(t,n)=>{let r=t=>{let i=Array.from(t.children),a=n?i:i.reverse();for(let t of a)if(n){if(e(t))return t;let n=r(t);if(n)return n}else{let n=r(t);if(n)return n;if(e(t))return t}return null},i=e=>n?e.nextElementSibling:e.previousElementSibling,a=null;if(n&&(a=r(t)),!a){let o=t;for(;o;){let t=i(o);for(;t;){let n=r(t);if(n){a=n;break}if(e(t)){a=t;break}t=i(t)}if(a)break;let s=o.parentElement;if(!n&&s&&e(s)){a=s;break}o=s}}return a};return{findNext:(e,t)=>{switch(e){case`ArrowUp`:return i(t);case`ArrowDown`:return a(t);case`ArrowRight`:return o(t,!0);case`ArrowLeft`:return o(t,!1);default:return null}},clearHistory:()=>{n=[]}}},Zt=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Wt(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},Qt=()=>{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,didPatch:n,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,`key`,t)}}},$t=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),en=(e,t)=>{let n=null,r=()=>{if(!t()){i();return}let a=e(),o=$t(a.x,a.y);o.top&&window.scrollBy(0,-10),o.bottom&&window.scrollBy(0,10),o.left&&window.scrollBy(-10,0),o.right&&window.scrollBy(10,0),n=o.top||o.bottom||o.left||o.right?ye(r):null},i=()=>{n!==null&&(le(n),n=null)};return{start:r,stop:i,isActive:()=>n!==null}},tn=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},H=()=>{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&&!tn()&&fetch(`https://www.react-grab.com/api/version?source=browser&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{}},nn=e=>typeof e!=`object`||!e||!(`postTask`in e)?!1:typeof e.postTask==`function`,rn=e=>{if(typeof window<`u`){let t=window.scheduler;if(nn(t)){t.postTask(e,{priority:`background`});return}if(`requestIdleCallback`in window){requestIdleCallback(e);return}}setTimeout(e,0)},an=e=>typeof e==`object`&&!!e,on=e=>{if(!an(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},sn=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?on(JSON.parse(e)):null}catch{return null}},cn=e=>e===`Enter`||e===`NumpadEnter`,ln=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),un=ln({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),dn={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},fn={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:e=>{e.filePath&&(e.hooks.onOpenFile(e.filePath,e.lineNumber)||Ee(e.filePath,e.lineNumber,e.hooks.transformOpenFileUrl),e.hideContextMenu(),e.cleanup())}}]},pn=(e,t)=>t?`${e}\n${t}`:e,mn=ln({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?bt(pn(r,await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}):!1})}})}),hn=ln({name:`copy-styles`,contextMenuAction:e=>({id:`copy-styles`,label:`Copy styles`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>bt(pn(t.elements.map(E).join(`
15
+
16
+ `),await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}))}}),cleanup:Fe}),gn=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,U=`react-grab-comment-items`,_n=`react-grab-history-items`,vn=`react-grab-clear-confirmed`,yn=()=>{try{let e=sessionStorage.getItem(_n);e&&!sessionStorage.getItem(U)&&sessionStorage.setItem(U,e),sessionStorage.removeItem(_n)}catch{}},bn=()=>{try{let e=sessionStorage.getItem(U);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},W=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},G=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},xn=e=>{Sn=G(e);try{sessionStorage.setItem(U,JSON.stringify(Sn))}catch{}return Sn};yn();let Sn=bn(),Cn=W(vn);const wn=()=>Sn,Tn=e=>xn([{...e,id:gn(`comment`)},...Sn].slice(0,20)),En=e=>xn(Sn.filter(t=>t.id!==e)),Dn=()=>xn([]),On=()=>Cn,kn=()=>{Cn=!0;try{sessionStorage.setItem(vn,`1`)}catch{}},An=()=>{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}},jn=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`},Mn=[un,dn,mn,hn,fn];let Nn=!1;const K=new Set,q=e=>{if(typeof window>`u`)return L();let d={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,...sn(),...e};if(d.enabled===!1||Nn)return L();Nn=!0,H();let{enabled:_,...ie}=d;return f(e=>{let d=!1,f,_=Yt(ie),{store:v,actions:y}=mt({theme:qt,keyHoldDuration:_.store.options.keyHoldDuration??100}),b=l(()=>v.current.state===`holding`),x=l(()=>v.current.state===`active`),S=l(()=>v.current.state===`active`&&v.current.phase===`frozen`),C=l(()=>v.current.state===`active`&&v.current.phase===`dragging`),_e=l(()=>v.current.state===`active`&&v.current.phase===`justDragged`),T=l(()=>v.current.state===`copying`),Ce=l(()=>v.current.state===`justCopied`),E=l(()=>v.current.state===`active`&&!!v.current.isPromptMode),Fe=l(()=>v.pendingCommentMode||E()),Le=l(()=>v.current.state===`active`&&!!v.current.isPromptMode&&!!v.current.isPendingDismiss),D=null;c(i(x,(e,t)=>{e&&!t?(he(),me(),document.body.style.touchAction=`none`,D=An()):!e&&t&&(xe(),Se(),document.body.style.touchAction=``,D?.(),D=null)}));let O=ae(),[k,Re]=a(O?.enabled??!0),[ze,Be]=a(0),[Ve,He]=a(0),[Ue,We]=a(O),[Ge,Ke]=a(!1),[A,qe]=a(wn()),[Je,j]=a(null),[Ye,Xe]=a(null),[Ze,M]=a(null),Qe,$e=null,N=new Map,[et,tt]=a(0),[nt,rt]=a(!1),it=[],at=e=>{let t=Ue()??ae(),n={edge:t?.edge??`bottom`,ratio:t?.ratio??.5,collapsed:t?.collapsed??!1,enabled:t?.enabled??!0,defaultAction:t?.defaultAction??`comment`,...e};te(n),We(n);for(let e of K)e(n);return n},ot=e=>N.get(e)??[],st=e=>{let t=e.elementSelectors??[];if(t.length===0)return[];let n=[];for(let e of t)if(e)try{let t=document.querySelector(e);m(t)&&n.push(t)}catch{}return n},ct=e=>{let t=ot(e.id),n=t.filter(e=>m(e));if(t.length>0&&n.length===t.length)return n;let r=st(e);return r.length>0?(N.set(e.id,r),r):n},lt=e=>ct(e)[0],ut=l(()=>{Je();let e=new Set;for(let t of A())ct(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}}),dt=()=>{z.timerId!==null&&(clearTimeout(z.timerId),z.timerId=null)},pt=()=>{z.copyWaiting=!1,z.holdTimerFired=!1,z.startTimestamp=null};c(()=>{if(v.current.state!==`holding`){dt();return}z.startTimestamp=Date.now(),z.timerId=window.setTimeout(()=>{if(z.timerId=null,z.copyWaiting){z.holdTimerFired=!0;return}y.activate()},v.keyHoldDuration),s(dt)}),c(()=>{if(v.current.state!==`active`||v.current.phase!==`justDragged`)return;let e=setTimeout(()=>{y.finishJustDragged()},Ne);s(()=>clearTimeout(e))}),c(()=>{if(v.current.state!==`justCopied`)return;let e=setTimeout(()=>{y.finishJustCopied()},Ne);s(()=>clearTimeout(e))}),c(i(b,(e,t=!1)=>{!t||e||!x()||(_.store.options.activationMode!==`hold`&&y.setWasActivatedByToggle(!0),_.hooks.onActivate())}));let F=(e,t,n)=>{gt(e,t,n),y.clearInputText()},ht=()=>{let e=v.frozenElement||J();e&&y.enterPromptMode({x:v.pointer.x,y:v.pointer.y},e)},gt=(e,t,n)=>(y.setCopyStart({x:t,y:n},e),P(e)),I={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},L=null,[yt,xt]=a(null),wt=(e,t)=>{L!==null&&clearTimeout(L),xt(null),L=window.setTimeout(()=>{xt({x:e,y:t}),L=null},32)},R=null,z={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},[Et,Dt]=a(!1),Ot=0,kt=!1,B=null,Vt=()=>{kt=!0,B!==null&&window.clearTimeout(B),B=window.setTimeout(()=>{kt=!1,B=null},Ne)},Ht=()=>{B!==null&&(window.clearTimeout(B),B=null),kt=!1},V=null,Jt=0,tn=0,H=null,nn=null,an=!1,on=null,[sn,ln]=a(null),[un,dn]=a(void 0),[fn,pn]=a([]),[mn,hn]=a(null),[U,_n]=a([]),[vn,yn]=a(0),bn=Xt(ge,P),W=en(()=>v.pointer,()=>C()),G=l(()=>x()&&!T()),xn=new Map,Sn=(e,t)=>{let n=gn(`grabbed`),r={id:n,bounds:e,createdAt:Date.now(),element:t};y.addGrabbedBox(r),_.hooks.onGrabbedBox(e,t);let i=window.setTimeout(()=>{xn.delete(n),y.removeGrabbedBox(n)},Ne);xn.set(n,i)},Cn=async e=>{let t=await Promise.all(e.map(async e=>{let t=await fe(e),n=t?.componentName??null,r=t?.filePath,i=t?.lineNumber??void 0,a=t?.columnNumber??void 0;n||=Me(e);let o=e instanceof HTMLElement?e.innerText?.slice(0,100):void 0;return{tagName:w(e),id:e.id||void 0,className:e.getAttribute(`class`)||void 0,textContent:o,componentName:n??void 0,filePath:r,lineNumber:i,columnNumber:a}}));window.dispatchEvent(new CustomEvent(`react-grab:element-selected`,{detail:{elements:t}}))},q=new Map,Pn=e=>{let t=q.get(e);t!==void 0&&(window.clearTimeout(t),q.delete(e))},Fn=()=>{for(let e of q.values())window.clearTimeout(e);q.clear()},In=e=>{Pn(e);let t=window.setTimeout(()=>{q.delete(e),y.updateLabelInstance(e,`fading`),setTimeout(()=>{q.delete(e),y.removeLabelInstance(e)},150)},Ne);q.set(e,t)},Ln=(e,t)=>{if(t)Pn(e);else{let t=v.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&In(e)}},Rn=(e,t,n,r,i)=>{y.clearLabelInstances(),Fn();let a=gn(`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 y.addLabelInstance(u),a},zn=()=>{Fn(),y.clearLabelInstances()},Bn=(e,t,n)=>{t?y.updateLabelInstance(e,`copied`):y.updateLabelInstance(e,`error`,n||`Unknown error`),In(e)},Vn=async(e,t,n,r)=>{Ht(),v.current.state!==`copying`&&y.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=Ct(e,`Action failed`)}t&&Bn(t,i,a),v.current.state===`copying`&&(i&&y.completeCopy(n),r?Y():i?(y.activate(),Vt()):y.unfreeze())},Hn=e=>{let{copiedElements:t,content:n,extraPrompt:r,elementName:i,tagName:a,componentName:o}=e;if(_.hooks.onCopySuccess(t,n),!r)return;let s=t.length>0;if(s){let e=A();for(let[n,i]of N.entries()){if(!(i.length===t.length&&i.every((e,n)=>e===t[n])))continue;let a=e.find(e=>e.id===n);if(a&&a.commentText===r){En(n),N.delete(n);break}}}let c=t.map((e,t)=>Pe(e,t===0)),l=Tn({content:n,elementName:i??`element`,tagName:a??`div`,componentName:o??void 0,elementsCount:t.length,previewBounds:t.map(e=>P(e)),elementSelectors:c,commentText:r,timestamp:Date.now()});qe(l),tt(e=>e+1);let u=l[0];u&&s&&N.set(u.id,[...t]);let d=new Set(l.map(e=>e.id));for(let e of N.keys())d.has(e)||N.delete(e)},Un=(e,t,n)=>{let r=e[0],i=n??(r?Me(r):null),a=r?w(r):null,o=i??a??void 0;return Tt({maxContextLines:_.store.options.maxContextLines,getContent:_.store.options.getContent,componentName:o},{onBeforeCopy:_.hooks.onBeforeCopy,transformSnippet:_.hooks.transformSnippet,transformCopyContent:_.hooks.transformCopyContent,onAfterCopy:_.hooks.onAfterCopy,onCopySuccess:(e,n)=>{Hn({copiedElements:e,content:n,extraPrompt:t,elementName:o,tagName:a,componentName:i})},onCopyError:_.hooks.onCopyError},e,t)},Wn=async(e,t,n)=>{if(e.length===0)return;let r=[],i=[];for(let t of e){let{wasIntercepted:e,pendingResult:n}=_.hooks.onElementSelect(t);e||r.push(t),n&&i.push(n),_.store.theme.grabbedBoxes.enabled&&Sn(P(t),t)}if(await oe(),r.length>0)await Un(r,t,n);else if(i.length>0&&!(await Promise.all(i)).every(Boolean))throw Error(`Failed to copy`);Cn(e)},Gn=e=>{let{element:t,cursorX:n,selectedElements:r,extraPrompt:i,shouldDeactivateAfter:a,onComplete:o,dragRect:s}=e,c=r??[t],l=s??v.frozenDragRect,u=c.length>1,d=l&&u?Pt(l):It(P(t)),f=u?d.x+d.width/2:n,p=w(t);Ht(),y.startCopy();let m=p?Rn(d,p,void 0,`copying`,{element:t,mouseX:f,elements:r}):null;de(t).then(async e=>{await Vn(()=>Wn(c,i,e??void 0),m,t,a),o?.()}).catch(e=>{m&&Bn(m,!1,Ct(e,`Action failed`)),v.current.state===`copying`&&y.unfreeze()})},J=l(()=>{if(v.viewportVersion,!G()||C())return null;let e=v.detectedElement;return m(e)?e:null}),Kn=l(()=>v.frozenElement||(S()?null:J()));c(()=>{let e=v.detectedElement;if(!e)return;let t=setInterval(()=>{m(e)||y.setDetectedElement(null)},100);s(()=>clearInterval(t))}),c(i(Kn,e=>{if(H!==null&&(clearTimeout(H),H=null),!e){ln(null);return}H=window.setTimeout(()=>{H=null,ln(e)},100)})),s(()=>{H!==null&&(clearTimeout(H),H=null)}),c(()=>{let e=v.frozenElements;s(ve(e))}),c(i(x,e=>{e&&_.store.options.freezeReactUpdates&&s(De())}));let qn=()=>{if(v.isTouchMode&&C()){let e=v.detectedElement;return!e||pe(e)?void 0:e}let e=Kn();if(!(!e||pe(e)))return e},Jn=l(()=>qn()),Yn=()=>Jn()?v.isTouchMode&&C()?G():G()&&!C():!1,Xn=l(()=>{v.viewportVersion;let e=v.frozenElements;if(e.length===0)return[];let t=v.frozenDragRect;return t&&e.length>1?[Pt(t)]:e.filter(e=>e!==null).map(e=>P(e))}),Zn=l(()=>{v.viewportVersion;let e=v.frozenElements;if(e.length>0){let t=Xn();if(e.length===1){let e=t[0];if(e)return e}let n=v.frozenDragRect;return n?t[0]??Pt(n):It(Kt(t))}let t=Jn();if(t)return P(t)}),Qn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),$n=(e,t)=>{let{pageX:n,pageY:r}=Qn(e,t);return{x:Math.abs(n-v.dragStart.x),y:Math.abs(r-v.dragStart.y)}},er=l(()=>{if(!C())return!1;let e=$n(v.pointer.x,v.pointer.y);return e.x>2||e.y>2}),tr=(e,t)=>{let{pageX:n,pageY:r}=Qn(e,t),i=Math.min(v.dragStart.x,n),a=Math.min(v.dragStart.y,r),o=Math.abs(n-v.dragStart.x),s=Math.abs(r-v.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},nr=l(()=>{if(v.viewportVersion,!er())return;let e=tr(v.pointer.x,v.pointer.y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),rr=l(()=>{if(v.viewportVersion,!er())return[];let e=yt();if(!e)return[];let t=tr(e.x,e.y),n=At(t,ge);return(n.length>0?n:At(t,ge,!1)).map(e=>P(e))}),ir=l(()=>{let e=rr();return e.length>0?e:Xn()}),ar=l(()=>{if(!Et())return[];let e=Kn();return e?(v.viewportVersion,[...jt(e),e].map(e=>P(e))):[]}),or=l(()=>{if(T()||E()){v.viewportVersion;let e=v.frozenElement||J();if(e){let{center:t}=Lt(e);return{x:t.x+v.copyOffsetFromCenterX,y:v.copyStart.y}}return{x:v.copyStart.x,y:v.copyStart.y}}return{x:v.pointer.x,y:v.pointer.y}});c(i(()=>[J(),v.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&y.setLastGrabbed(null),e&&_.hooks.onElementHover(e)})),c(i(()=>J(),e=>{let t=++Jt,n=()=>{Jt===t&&y.setSelectionSource(null,null)};if(!e){n();return}fe(e).then(e=>{if(Jt===t){if(!e){n();return}y.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{Jt===t&&y.setSelectionSource(null,null)})}));let sr=l(()=>v.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),cr=l(()=>v.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));c(i(l(()=>{let e=x(),t=C(),n=T(),r=E(),i=J(),a=nr(),o=_.store.theme.enabled,s=_.store.theme.selectionBox.enabled,c=_.store.theme.dragBox.enabled,l=er(),u=Kn(),d=Ce();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(o&&s&&e&&!n&&!d&&!t&&u!=null),isDragBoxVisible:!!(o&&c&&e&&!n&&l),targetElement:i,dragBounds:a?{x:a.x,y:a.y,width:a.width,height:a.height}:null,grabbedBoxes:[...sr()],labelInstances:[...cr()],selectionFilePath:v.selectionFilePath,toolbarState:Ue()}}),e=>{_.hooks.onStateChange(e)})),c(i(()=>[E(),v.pointer.x,v.pointer.y,J()],([e,t,n,r])=>{_.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),c(i(()=>[bi(),Zn(),J()],([e,t,n])=>{_.hooks.onSelectionBox(!!e,t??null,n)})),c(i(()=>[Di(),nr()],([e,t])=>{_.hooks.onDragBox(!!e,t??null)})),c(i(()=>[ki(),Oi(),or(),J(),v.selectionFilePath,v.selectionLineNumber],([e,t,n,r,i,a])=>{_.hooks.onElementLabel(!!e,t,{x:n.x,y:n.y,content:``,element:r??void 0,tagName:r&&w(r)||void 0,filePath:i??void 0,lineNumber:a??void 0})}));let lr=null,ur=e=>{e?(lr||(lr=document.createElement(`style`),lr.setAttribute(`data-react-grab-cursor`,``),document.head.appendChild(lr)),lr.textContent=`* { cursor: ${e} !important; }`):lr&&=(lr.remove(),null)};c(i(()=>[x(),T(),E()],([e,t,n])=>{ur(t?`progress`:e&&!n?`crosshair`:null)}));let dr=()=>{let e=b();y.activate(),e||_.hooks.onActivate()},Y=()=>{let e=C(),t=v.previouslyFocusedElement;y.deactivate(),Dt(!1),Nr(),nn=null,an=!1,e&&(document.body.style.userSelect=``),R&&window.clearTimeout(R),W.stop(),t instanceof HTMLElement&&m(t)&&t.focus(),_.hooks.onDeactivate()},fr=()=>{b()&&y.releaseHold(),x()&&Y(),Ht()},pr=()=>{y.setWasActivatedByToggle(!0),dr()},mr=()=>{y.clearLastCopied();let e=[...v.frozenElements],t=v.frozenElement||J(),n=E()?v.inputText.trim():``;if(!t){Y();return}let r=e.length>0?e:[t],i=r.map(e=>P(e))[0],{x:a,y:o}=ft(i),s=a+v.copyOffsetFromCenterX;y.setPointer({x:a,y:o}),y.exitPromptMode(),y.clearInputText(),Gn({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},hr=()=>{if(y.clearLastCopied(),E()){if(Le()){y.clearInputText(),Y();return}y.setPendingDismiss(!0),He(e=>e+1)}},gr=()=>{y.clearInputText(),Y()},_r=()=>{y.setPendingDismiss(!1)},vr=()=>{let e=v.frozenElement||J();e&&F(e,v.pointer.x,v.pointer.y),ht()},yr=()=>{if(x())Y();else if(k()){let e=Ue()?.defaultAction??`comment`;e===`comment`?y.setPendingCommentMode(!0):(on=e,an=!0),pr()}},br=(e,t,n)=>{y.setPendingCommentMode(!1),y.clearInputText(),y.enterPromptMode({x:t,y:n},e)},xr=(e,t)=>{y.showContextMenu(t,e),Nr(),ta(),_.hooks.onContextMenu(e,t)},Sr=(e,t)=>{let n=on;if(on=null,!n)return;let r=_.store.actions.find(e=>e.id===n);if(!r){ra(ue),xr(e,t);return}let i=P(e),a=Li({element:e,filePath:v.selectionFilePath??void 0,lineNumber:v.selectionLineNumber??void 0,tagName:w(e)||void 0,componentName:un(),position:t,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:i,fallbackSelectionBounds:[i],position:t}});r.onAction(a)},Cr=()=>{if(k()){if(x()&&Fe()){Y();return}y.setPendingCommentMode(!0),x()||pr()}},wr=()=>{let e=!k();Re(e),at({enabled:e}),e||(fr(),ta())},Tr=(e,t)=>{if(!k()||E()||S()||v.contextMenuPosition!==null)return;y.setPointer({x:e,y:t}),I.latestPointerX=e,I.latestPointerY=t;let n=performance.now(),r=I.pendingDetectionScheduledAt>0&&n-I.pendingDetectionScheduledAt<200;if(n-I.lastDetectionTimestamp>=32&&!r&&(I.lastDetectionTimestamp=n,I.pendingDetectionScheduledAt=n,rn(()=>{let e=be(I.latestPointerX,I.latestPointerY);e!==v.detectedElement&&y.setDetectedElement(e),I.pendingDetectionScheduledAt=0})),C()){wt(e,t);let n=$t(e,t),r=n.top||n.bottom||n.left||n.right;r&&!W.isActive()?W.start():!r&&W.isActive()&&W.stop()}},Er=(e,t)=>!G()||T()?!1:(y.startDrag({x:e,y:t}),y.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,wt(e,t),_.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),Dr=(e,t)=>{let n=At(e,ge),r=n.length>0?n:At(e,ge,!1);if(r.length===0)return;Te(r),_.hooks.onDragEnd(r,e);let i=r[0],a=Rt(i);y.setPointer(a),y.setFrozenElements(r);let o=Ft(e);if(y.setFrozenDragRect(o),y.freeze(),y.setLastGrabbed(i),v.pendingCommentMode){br(i,a.x,a.y);return}if(an){an=!1,on?Sr(i,a):xr(i,a);return}let s=v.wasActivatedByToggle&&!t;Gn({element:i,cursorX:a.x,selectedElements:r,shouldDeactivateAfter:s,dragRect:o})},Or=(e,t,n)=>{let r=m(v.frozenElement)?v.frozenElement:null,i=m(nn)?nn:null,a=r??i??be(e,t)??(m(v.detectedElement)?v.detectedElement:null);if(!a)return;let o=!r&&i===a,s,c;if(r)s=v.pointer.x,c=v.pointer.y;else if(o){let e=Rt(a);s=e.x,c=e.y}else s=e,c=t;if(nn=null,v.pendingCommentMode){br(a,s,c);return}if(an){an=!1;let{wasIntercepted:e}=_.hooks.onElementSelect(a);if(e)return;Te([a]),y.setFrozenElement(a);let t={x:s,y:c};y.setPointer(t),y.freeze(),on?Sr(a,t):xr(a,t);return}let l=v.wasActivatedByToggle&&!n;y.setLastGrabbed(a),Gn({element:a,cursorX:s,shouldDeactivateAfter:l})},kr=()=>{C()&&(y.cancelDrag(),W.stop(),document.body.style.userSelect=``)},Ar=(e,t,n)=>{if(!C())return;L!==null&&(clearTimeout(L),L=null),xt(null);let r=$n(e,t),i=r.x>2||r.y>2,a=i?tr(e,t):null;i?y.endDrag():y.cancelDrag(),W.stop(),document.body.style.userSelect=``,a?Dr(a,n):Or(e,t,n)},X=vt(),jr=Qt(),Mr=e=>{let t;try{t=jr.originalKeyDescriptor?.get?jr.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||cn(e.code),r=x()||b();return n&&r&&!E()&&!v.wasActivatedByToggle&&Ze()===null?(jr.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};X.addDocumentListener(`keydown`,Mr,{capture:!0}),X.addDocumentListener(`keyup`,Mr,{capture:!0}),X.addDocumentListener(`keypress`,Mr,{capture:!0});let Nr=()=>{_n([]),yn(0),bn.clearHistory()},Pr=e=>{y.setFrozenElement(e),y.freeze(),nn=e;let{center:t}=Lt(e);y.setPointer(t),v.contextMenuPosition!==null&&y.showContextMenu(t,e)},Fr=e=>{let t=Mt(P(e)),n=Oe(t.x,t.y).filter(ge).reverse();_n(n),yn(Math.max(0,n.indexOf(e)))},Ir=e=>{let t=U()[e];t&&(yn(e),bn.clearHistory(),Pr(t))},Lr=e=>{if(!x()||E()||!ce.has(e.key))return!1;let t=Kn(),n=!t;if(t||=be(window.innerWidth/2,window.innerHeight/2),!t)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Nr();let r=bn.findNext(e.key,t);return!r&&!n?!1:(e.preventDefault(),e.stopPropagation(),Pr(r??t),!0)}U().length===0&&Fr(t);let r=bn.findNext(e.key,t)??t;e.preventDefault(),e.stopPropagation(),Pr(r);let i=U().indexOf(r);return i===-1?Fr(r):yn(i),!0},Rr=e=>{if(!cn(e.code)||h(e))return!1;let t=v.lastCopiedElement;if(!b()&&!E()&&!x()&&t&&m(t)&&!v.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let n=Rt(t);return y.setPointer(n),F(t,n.x,n.y),y.setFrozenElement(t),y.clearLastCopied(),ht(),x()||dr(),!0}if(b()&&!E()){e.preventDefault(),e.stopImmediatePropagation();let t=v.frozenElement||J();return t&&F(t,v.pointer.x,v.pointer.y),y.setPointer({x:v.pointer.x,y:v.pointer.y}),t&&y.setFrozenElement(t),ht(),R!==null&&(window.clearTimeout(R),R=null),x()||dr(),!0}return!1},zr=e=>{if(e.key?.toLowerCase()!==`o`||E()||!x()||!(e.metaKey||e.ctrlKey))return!1;let t=v.selectionFilePath,n=v.selectionLineNumber;return t?(e.preventDefault(),e.stopPropagation(),_.hooks.onOpenFile(t,n??void 0)||Ee(t,n??void 0,_.hooks.transformOpenFileUrl),!0):!1},Br=()=>{V!==null&&(window.clearTimeout(V),V=null)},Vr=()=>{Br(),pn([]),hn(null)},Hr=l(()=>!!Jn()&&G()&&!E()&&!C()&&v.contextMenuPosition===null),Ur=l(()=>{let{key:e}=Wt(_.store.options.activationKey);return(e??`c`).toUpperCase()}),Wr=l(()=>({items:fn(),activeIndex:mn(),isVisible:mn()!==null&&fn().length>0&&!Fe()})),Gr=l(()=>U().map(e=>({tagName:w(e)||`element`,componentName:Me(e)??void 0}))),Kr=l(()=>({items:Gr(),activeIndex:vn(),isVisible:U().length>0})),qr=l(()=>{if(!Et())return[];let e=Kn();return e?[...jt(e).reverse(),e]:[]}),Jr=l(()=>qr().map(e=>({tagName:w(e)||`element`,componentName:Me(e)??void 0}))),[Yr,Xr]=a(-1);c(i(qr,e=>{Xr(e.length-1)}));let Zr=l(()=>{let e=qr();return{items:Jr(),activeIndex:Yr(),isVisible:Et()&&e.length>0}}),Qr=e=>{Xr(e)};c(i(Jn,()=>{Vr()})),c(i(Hr,e=>{e||Vr()}));let $r=e=>_.store.actions.find(t=>t.id===e),ei=()=>{let e=Jn();if(!e)return;let t=Zn();return Li({element:e,filePath:v.selectionFilePath??void 0,lineNumber:v.selectionLineNumber??void 0,tagName:w(e)||void 0,componentName:un(),position:v.pointer,performWithFeedbackOptions:{fallbackBounds:t,fallbackSelectionBounds:t?[t]:[]},shouldDeferHideContextMenu:!1,onBeforePrompt:Vr})},ti=l(()=>{if(!Jn())return[];let e=[];for(let t of _.store.actions)typeof t.enabled==`boolean`&&!t.enabled||t.shortcut&&t.shortcut.toUpperCase()!==Ur()||e.push({id:t.id,label:t.label,shortcut:t.shortcut});return e}),ni=()=>{Br(),V=window.setTimeout(()=>{V=null;let e=mn(),t=fn();if(e===null||t.length===0)return;let n=t[e];if(!n)return;let r=$r(n.id);if(!r){Vr();return}let i=ei();if(!i||!re(r,i)){Vr();return}Vr(),r.onAction(i)instanceof Promise},600)},ri=()=>{if(!Hr())return!1;let e=ti();if(e.length===0)return!1;pn(e);let t=mn();return hn(t!==null&&t<e.length?(t+1)%e.length:0),ni(),!0},ii=e=>!Bt(Ur(),e.code)||e.altKey||e.repeat||h(e)||!ri()?!1:(e.preventDefault(),e.stopPropagation(),(e.metaKey||e.ctrlKey)&&e.stopImmediatePropagation(),!0),ai=e=>{if(!(!_.store.options.allowActivationInsideInput&&h(e))&&!(!Gt(e,_.store.options)&&((e.metaKey||e.ctrlKey)&&!se.includes(e.key)&&!cn(e.code)&&(x()&&!v.wasActivatedByToggle?Y():b()&&(dt(),pt(),y.releaseHold())),!cn(e.code)||!b()))){if((x()||b())&&!E()&&(e.preventDefault(),cn(e.code)&&e.stopImmediatePropagation()),x()){if(v.wasActivatedByToggle&&_.store.options.activationMode!==`hold`||e.repeat)return;R!==null&&window.clearTimeout(R),R=window.setTimeout(()=>{Y()},200);return}if(b()&&e.repeat){if(z.copyWaiting){let e=z.holdTimerFired;pt(),e&&y.activate()}return}if(!(T()||Ce())&&!b()){let t=_.store.options.keyHoldDuration??100;h(e)?ne(e)?t+=600:t+=400:ee()&&(t+=600),pt(),y.startHold(t)}}};X.addWindowListener(`keydown`,e=>{if(Mr(e),e.key===`Shift`&&!e.repeat&&x()&&(Dt(!0),S()&&(y.unfreeze(),Nr())),!k()){Gt(e,_.store.options)&&!e.repeat&&Be(e=>e+1);return}let t=cn(e.code)&&b()&&!E(),n=g(e,`data-react-grab-input`);if(E()&&Gt(e,_.store.options)&&!e.repeat&&!n){e.preventDefault(),e.stopPropagation(),hr();return}if(e.key===`Escape`&&Ze()!==null)return;if(e.key===`Escape`&&Je()!==null){$();return}if(e.key===`Escape`&&Ye()!==null){Ki();return}let r=g(e,`data-react-grab-ignore-events`)&&!t;if(E()||r)return e.key===`Escape`&&(E()?hr():v.wasActivatedByToggle&&Y()),r&&ce.has(e.key)&&Lr(e),void 0;if(e.key===`Escape`&&(b()||v.wasActivatedByToggle)){Y();return}let i=Date.now()-Ot<200;!i&&ii(e)||Lr(e)||Rr(e)||zr(e)||i||ai(e)},{capture:!0}),X.addWindowListener(`keyup`,e=>{if(Mr(e))return;e.key===`Shift`&&Dt(!1);let t=Zt(_.store.options),n=t.metaKey||t.ctrlKey?p()?!e.metaKey:!e.ctrlKey:t.shiftKey&&!e.shiftKey||t.altKey&&!e.altKey,r=_.store.options.activationKey?typeof _.store.options.activationKey==`function`?_.store.options.activationKey(e):Ut(_.store.options.activationKey)(e):zt(e.key,e.code);if(Ce()||kt){(r||n)&&(Ht(),Y());return}if(!b()&&!x()||E())return;let i=!!_.store.options.activationKey,a=_.store.options.activationMode===`hold`;if(x()){let e=v.contextMenuPosition!==null;if(n){if(v.wasActivatedByToggle&&_.store.options.activationMode!==`hold`||e)return;Y()}else if(a&&r){if(R!==null&&(window.clearTimeout(R),R=null),e)return;Y()}else !i&&r&&R!==null&&(window.clearTimeout(R),R=null);return}if(r||n){if(v.wasActivatedByToggle&&_.store.options.activationMode!==`hold`)return;if(b()||z.holdTimerFired&&n){dt();let t=(z.startTimestamp?Date.now()-z.startTimestamp:0)>=200,n=z.holdTimerFired&&t&&(_.store.options.allowActivationInsideInput||!h(e));pt(),n?y.activate():y.releaseHold()}else Y()}},{capture:!0}),X.addDocumentListener(`copy`,()=>{b()&&(z.copyWaiting=!0)}),X.addWindowListener(`keypress`,Mr,{capture:!0}),X.addWindowListener(`pointermove`,e=>{if(!e.isPrimary)return;let t=e.pointerType===`touch`;y.setTouchMode(t),!g(e,`data-react-grab-ignore-events`)&&v.contextMenuPosition===null&&(t&&!b()&&!x()||((t?b():x())&&!E()&&S()&&(y.unfreeze(),Nr()),Tr(e.clientX,e.clientY)))},{passive:!0}),X.addWindowListener(`pointerdown`,e=>{if(e.button===0&&e.isPrimary&&(y.setTouchMode(e.pointerType===`touch`),!g(e,`data-react-grab-ignore-events`)&&v.contextMenuPosition===null&&Ye()===null)){if(E()){let t=Zn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?mr():hr();return}Er(e.clientX,e.clientY)&&(document.documentElement.setPointerCapture(e.pointerId),e.preventDefault(),e.stopImmediatePropagation())}},{capture:!0}),X.addWindowListener(`pointerup`,e=>{if(e.button!==0||!e.isPrimary||g(e,`data-react-grab-ignore-events`)||v.contextMenuPosition!==null)return;let t=G()||T()||C(),n=e.metaKey||e.ctrlKey;Ar(e.clientX,e.clientY,n),t&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),X.addWindowListener(`contextmenu`,e=>{if(!G()||T()||E())return;let t=g(e,`data-react-grab-ignore-events`);if(t&&U().length>0)Nr();else if(t)return;if(v.contextMenuPosition!==null){e.preventDefault();return}e.preventDefault(),e.stopPropagation();let n=be(e.clientX,e.clientY);if(!n)return;let r=v.frozenElements;r.length>1&&r.includes(n)?Te(r):(Te([n]),y.setFrozenElement(n));let i={x:e.clientX,y:e.clientY};y.setPointer(i),y.freeze(),xr(n,i)},{capture:!0}),X.addWindowListener(`pointercancel`,e=>{e.isPrimary&&kr()}),X.addWindowListener(`click`,e=>{g(e,`data-react-grab-ignore-events`)||v.contextMenuPosition===null&&(G()||T()||_e())&&(e.preventDefault(),e.stopImmediatePropagation(),v.wasActivatedByToggle&&!T()&&!E()&&(b()?y.setWasActivatedByToggle(!1):Y()))},{capture:!0}),X.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){y.clearGrabbedBoxes();let e=v.activationTimestamp;x()&&!E()&&e!==null&&Date.now()-e>500&&Y()}}),X.addWindowListener(`blur`,()=>{kr(),b()&&(dt(),y.releaseHold(),pt())}),X.addWindowListener(`focus`,()=>{Ot=Date.now()}),X.addWindowListener(`focusin`,e=>{g(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let oi=()=>{if(!(v.isTouchMode&&!b()&&!x())&&k()&&!E()&&!S()&&!C()&&v.contextMenuPosition===null&&v.frozenElements.length===0){let e=be(v.pointer.x,v.pointer.y);y.setDetectedElement(e)}},si=null,Z=null,ci=()=>{Nt(),oi(),y.incrementViewportVersion(),y.updateContextMenuPosition()};X.addWindowListener(`scroll`,ci,{capture:!0});let li=window.innerWidth,ui=window.innerHeight;X.addWindowListener(`resize`,()=>{let e=window.innerWidth,t=window.innerHeight;if(li>0&&ui>0){let n=e/li,r=t/ui,i=Math.abs(n-r)<ke,a=Math.abs(n-1)>ke;i&&a&&y.setPointer({x:v.pointer.x*n,y:v.pointer.y*r})}li=e,ui=t,ci()});let di=window.visualViewport;if(di){let{signal:e}=X;di.addEventListener(`resize`,ci,{signal:e}),di.addEventListener(`scroll`,ci,{signal:e})}let fi=()=>{Z===null&&(Z=ye(()=>{Z=null,y.incrementViewportVersion()}))};c(()=>{if(_.store.theme.enabled&&(x()||T()||v.labelInstances.length>0||v.grabbedBoxes.length>0)){if(si!==null)return;si=window.setInterval(()=>{fi()},100);return}si!==null&&(window.clearInterval(si),si=null),Z!==null&&(le(Z),Z=null)}),s(()=>{si!==null&&window.clearInterval(si),Z!==null&&le(Z)}),X.addDocumentListener(`copy`,e=>{E()||g(e,`data-react-grab-ignore-events`)||(G()||T())&&e.preventDefault()},{capture:!0}),s(()=>{X.abort(),L!==null&&window.clearTimeout(L),R&&window.clearTimeout(R),Ht(),V&&window.clearTimeout(V),$e!==null&&le($e),xn.forEach(e=>window.clearTimeout(e)),xn.clear(),Fn(),W.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,D?.(),D=null,ur(null),jr.restore()});let pi=_t(Ie),mi=l(()=>_.store.theme.enabled),hi=l(()=>_.store.theme.selectionBox.enabled),gi=l(()=>_.store.theme.elementLabel.enabled),_i=l(()=>_.store.theme.dragBox.enabled),vi=l(()=>Ce()||Ge()&&!S()),yi=l(()=>rr().length>0),bi=l(()=>!mi()||!hi()||vi()?!1:yi()?!0:Yn()),xi=l(()=>{let e=Jn();if(e)return w(e)||void 0});c(i(()=>sn(),e=>{let t=++tn;if(!e){dn(void 0);return}de(e).then(e=>{tn===t&&dn(e??void 0)}).catch(()=>{tn===t&&dn(void 0)})}));let Si=l(()=>v.contextMenuPosition!==null||!gi()||vi()?!1:Yn()),Ci=new Map,wi=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?P(n):e.bounds,i=Ci.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 Ci.set(e.id,l),l},Ti=l(()=>{if(!mi()||!_.store.theme.grabbedBoxes.enabled)return[];v.viewportVersion;let e=new Set(v.labelInstances.map(e=>e.id));for(let t of Ci.keys())e.has(t)||Ci.delete(t);return v.labelInstances.map(wi)}),Ei=l(()=>!mi()||!_.store.theme.grabbedBoxes.enabled?[]:(v.viewportVersion,v.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:P(e.element)}))),Di=l(()=>mi()&&_i()&&G()&&er()),Oi=l(()=>T()?`processing`:`hover`),ki=l(()=>{if(!mi())return!1;let e=gi(),t=E(),n=T(),r=G(),i=C(),a=!!Kn(),o=Ge(),s=S();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),Ai=l(()=>{v.viewportVersion;let e=v.contextMenuElement;return e?P(e):null}),ji=l(()=>(v.viewportVersion,v.contextMenuPosition)),Mi=l(()=>{let e=v.contextMenuElement;if(!e)return;let t=v.frozenElements.length;return t>1?`${t} elements`:w(e)||void 0}),[Ni]=t(()=>({element:v.contextMenuElement,frozenCount:v.frozenElements.length}),async({element:e,frozenCount:t})=>{if(e&&!(t>1))return await de(e)??void 0}),[Pi]=t(()=>v.contextMenuElement,async e=>e?fe(e):null),Fi=(e,t,n,r,i)=>async a=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??v.contextMenuPosition??v.pointer,l=Xn(),u=Ai()??o,d=t.length>1,f=d?It(Kt(l)):u,p=v.wasActivatedByToggle,m;if(m=d?l:u?[u]:s,y.hideContextMenu(),f){let i=d?f.x+f.width/2:c.x,o=Rn(f,n||`element`,r,`copying`,{element:e,mouseX:i,elements:d?t:void 0,boundsMultiple:m}),s=!1,l;try{s=await a(),s||(l=`Failed to copy`)}catch(e){l=Ct(e,`Action failed`)}Bn(o,s,l)}else try{await a()}catch{}p?Y():y.unfreeze()},Ii=()=>{setTimeout(()=>{y.hideContextMenu()},0)},Li=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:o,performWithFeedbackOptions:s,shouldDeferHideContextMenu:c,onBeforeCopy:l,onBeforePrompt:u,customEnterPromptMode:d}=e,f=v.frozenElements.length>0?v.frozenElements:[t],p=c?Ii:y.hideContextMenu,m={element:t,elements:f,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:d??(()=>{zn(),u?.(),F(t,o.x,o.y),y.setPointer({x:o.x,y:o.y}),y.setFrozenElement(t),ht(),x()||dr(),p()}),copy:()=>{l?.(),Gn({element:t,cursorX:o.x,selectedElements:f.length>1?f:void 0,shouldDeactivateAfter:v.wasActivatedByToggle}),p()},hooks:{transformHtmlContent:_.hooks.transformHtmlContent,onOpenFile:_.hooks.onOpenFile,transformOpenFileUrl:_.hooks.transformOpenFileUrl},performWithFeedback:Fi(t,f,i,a,s),hideContextMenu:p,cleanup:()=>{v.wasActivatedByToggle?Y():y.unfreeze()}},h=_.hooks.transformActionContext(m);return{...m,...h}},Ri=l(()=>{let e=v.contextMenuElement;if(!e)return;let t=Pi(),n=v.contextMenuPosition??v.pointer;return Li({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:Mi(),componentName:Ni(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{nn=null},customEnterPromptMode:()=>{zn(),y.clearInputText(),y.enterPromptMode(n,e),Ii()}})}),zi=()=>{setTimeout(()=>{y.hideContextMenu(),Y()},0)},Q=()=>{for(let{boxId:e,labelId:t}of it)y.removeGrabbedBox(e),t&&y.removeLabelInstance(t);it=[]},Bi=(e,t,n,r)=>{if(t.length!==0)for(let[i,a]of t.entries()){let t=n[i],o=`${r}-${e.id}-${i}`;y.addGrabbedBox({id:o,bounds:a,createdAt:0,element:t});let s=null;i===0&&(s=`${r}-label-${e.id}`,y.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})),it.push({boxId:o,labelId:s})}},Vi=(e,t)=>{let n=ct(e);Bi(e,n.map(e=>P(e)),n,t)},Hi=()=>{$e!==null&&(le($e),$e=null)},Ui=e=>{Hi();let t=()=>{e(),$e=ye(t)};t()},Wi=()=>{if(!Qe)return null;let e=Qe.getBoundingClientRect(),t=jn(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}},Gi=e=>{Ui(()=>{let t=Wi();t&&e(t)})},$=()=>{Xi(),Zi(),Hi(),Q(),j(null),rt(!1)},Ki=()=>{Hi(),Xe(null)},qi=()=>{y.hideContextMenu(),Ki(),ea(),qe(wn()),Gi(j)},Ji=null,Yi=null,Xi=()=>{Ji!==null&&(clearTimeout(Ji),Ji=null)},Zi=()=>{Yi!==null&&(clearTimeout(Yi),Yi=null)},Qi=()=>{Yi=setTimeout(()=>{Yi=null,$()},200)},$i=()=>{$(),Ki(),Gi(M)},ea=()=>{Hi(),M(null)},ta=()=>{$(),Ki(),ea()},na=()=>{Ye()===null?(y.hideContextMenu(),$(),ea(),Gi(Xe)):Ki()},ra=e=>{at({defaultAction:e})},ia=()=>{Xi(),Zi(),Je()===null?(Q(),qi()):nt()?(Q(),rt(!1)):$()},aa=e=>{bt(e.content,{tagName:e.tagName,componentName:e.componentName??e.elementName,commentText:e.commentText});let t=lt(e);t&&(zn(),ye(()=>{if(!m(t))return;let n=P(t),r=Rn(n,e.tagName,e.componentName,`copied`,{element:t,mouseX:n.x+n.width/2});r&&In(r)}))},oa=e=>{Q(),E()&&(y.exitPromptMode(),y.clearInputText());let t=lt(e);if(e.commentText&&t){let{center:n}=Lt(t);y.enterPromptMode(n,t),y.setInputText(e.commentText)}else aa(e)},sa=()=>{Q();let e=A();if(e.length===0)return;let t=St(e.map(e=>e.content)),n=e[0];bt(t,{componentName:n.componentName??n.tagName,entries:e.map(e=>({tagName:e.tagName,componentName:e.componentName??e.elementName,content:e.content,commentText:e.commentText}))}),On()?pa():$i(),zn(),ye(()=>{r(()=>{for(let t of e){let e=ct(t);for(let n of e){let e=P(n),r=gn(`label`);y.addLabelInstance({id:r,bounds:e,tagName:t.tagName,componentName:t.componentName,status:`copied`,createdAt:Date.now(),element:n,mouseX:e.x+e.width/2}),In(r)}}})})},ca=e=>{if(Q(),!e)return;let t=A().find(t=>t.id===e);t&&Vi(t,`comment-hover`)},la=e=>{Xi(),Q(),e?(Zi(),Je()===null&&Ze()===null&&(fa(),Ji=setTimeout(()=>{Ji=null,rt(!0),qi()},200))):nt()&&Qi()},ua=e=>{e?Zi():nt()&&Qi()},da=e=>{Q(),e?(Zi(),fa()):nt()&&Qi()},fa=()=>{for(let e of A())Vi(e,`comment-all-hover`)},pa=()=>{N.clear(),qe(Dn()),$()},ma=e=>{let t=v.labelInstances.find(t=>t.id===e);if(!t?.element||!m(t.element))return;let n=t.element,{center:r}=Lt(n),i={x:t.mouseX??r.x,y:r.y},a=t.elements&&t.elements.length>0?t.elements.filter(e=>m(e)):[n];setTimeout(()=>{x()||(y.setWasActivatedByToggle(!0),dr()),y.setPointer(i),y.setFrozenElements(a),a.length>1&&t.bounds&&y.setFrozenDragRect(Ft(t.bounds)),y.freeze(),y.showContextMenu(i,n)},0)};c(()=>{let e=_.store.theme.hue;e===0?pi.style.filter=``:pi.style.filter=`hue-rotate(${e}deg)`}),_.store.theme.enabled&&import(`./renderer-B0yJsSRz.js`).then(({ReactGrabRenderer:e})=>{d||(f=n(()=>o(e,{get selectionVisible(){return bi()},get selectionBounds(){return Zn()},get selectionBoundsMultiple(){return ir()},get selectionShouldSnap(){return v.frozenElements.length>0||rr().length>0},get inspectVisible(){return u(()=>!!Et())()&&ar().length>0},get inspectBounds(){return ar()},get selectionElementsCount(){return v.frozenElements.length},get selectionFilePath(){return v.selectionFilePath??void 0},get selectionLineNumber(){return v.selectionLineNumber??void 0},get selectionTagName(){return xi()},get selectionComponentName(){return un()},get selectionLabelVisible(){return Si()},selectionLabelStatus:`idle`,get selectionActionCycleState(){return Wr()},get selectionArrowNavigationState(){return Kr()},onArrowNavigationSelect:Ir,get inspectNavigationState(){return Zr()},onInspectSelect:Qr,get labelInstances(){return Ti()},get dragVisible(){return Di()},get dragBounds(){return nr()},get grabbedBoxes(){return Ei()},get mouseX(){return u(()=>v.frozenElements.length>1)()?void 0:or().x},get isFrozen(){return S()||x()||Ge()},get inputValue(){return v.inputText},get isPromptMode(){return E()},onShowContextMenuInstance:ma,onLabelInstanceHoverChange:Ln,get onInputChange(){return y.setInputText},onInputSubmit:()=>void mr(),onToggleExpand:vr,get isPendingDismiss(){return Le()},get selectionLabelShakeCount(){return Ve()},onConfirmDismiss:gr,onCancelDismiss:_r,get toolbarVisible(){return _.store.theme.toolbar.enabled},get isActive(){return x()},onToggleActive:yr,get enabled(){return k()},onToggleEnabled:wr,get shakeCount(){return ze()},onToolbarStateChange:e=>{We(e),K.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(K.add(e),()=>{K.delete(e)}),onToolbarSelectHoverChange:Ke,onToolbarRef:e=>{Qe=e},get contextMenuPosition(){return ji()},get contextMenuBounds(){return Ai()},get contextMenuTagName(){return Mi()},get contextMenuComponentName(){return Ni()},get contextMenuHasFilePath(){return!!Pi()?.filePath},get actions(){return _.store.actions},get actionContext(){return Ri()},onContextMenuDismiss:zi,onContextMenuHide:Ii,get commentItems(){return A()},get commentsDisconnectedItemIds(){return ut()},get commentItemCount(){return A().length},get clockFlashTrigger(){return et()},get commentsDropdownPosition(){return Je()},get isCommentsPinned(){return u(()=>Je()!==null)()&&!nt()},onToggleComments:ia,onCopyAll:sa,onCopyAllHover:da,onCommentsButtonHover:la,onCommentItemSelect:oa,onCommentItemHover:ca,onCommentsCopyAll:sa,onCommentsCopyAllHover:da,onCommentsClear:pa,onCommentsDismiss:$,onCommentsDropdownHover:ua,get toolbarMenuPosition(){return Ye()},get toolbarMenuActions(){return _.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return Ue()?.defaultAction??`comment`},onSetDefaultAction:ra,onToggleToolbarMenu:na,onToolbarMenuDismiss:Ki,get clearPromptPosition(){return Ze()},onClearCommentsConfirm:()=>{kn(),ea(),pa()},onClearCommentsCancel:ea}),pi))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let ha={activate:()=>{y.setPendingCommentMode(!1),!x()&&k()&&pr()},deactivate:()=>{(x()||T())&&Y()},toggle:()=>{x()?Y():k()&&pr()},comment:Cr,isActive:()=>x(),isEnabled:()=>k(),setEnabled:e=>{e!==k()&&(Re(e),e||fr())},getToolbarState:()=>ae(),setToolbarState:e=>{let t=ae(),n={edge:e.edge??t?.edge??`bottom`,ratio:e.ratio??t?.ratio??.5,collapsed:e.collapsed??t?.collapsed??!1,enabled:e.enabled??t?.enabled??!0,defaultAction:e.defaultAction??t?.defaultAction??`comment`};te(n),We(n),e.enabled!==void 0&&e.enabled!==k()&&Re(e.enabled),K.forEach(e=>e(n))},onToolbarStateChange:e=>(K.add(e),()=>{K.delete(e)}),dispose:()=>{d=!0,Nn=!1,f?.(),Xi(),Zi(),Hi(),K.clear(),e()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await Un(t)},getSource:async e=>{let t=await fe(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:je,getState:()=>({isActive:x(),isDragging:C(),isCopying:T(),isPromptMode:E(),isSelectionBoxVisible:!!bi(),isDragBoxVisible:!!Di(),targetElement:J(),dragBounds:nr()??null,grabbedBoxes:[...sr()],labelInstances:[...cr()],selectionFilePath:v.selectionFilePath,toolbarState:Ue()}),setOptions:e=>{_.setOptions(e)},registerPlugin:e=>{_.register(e,ha)},unregisterPlugin:e=>{_.unregister(e)},getPlugins:()=>_.getPluginNames(),getDisplayName:Me};for(let e of Mn)_.register(e,ha);return setTimeout(()=>{Ae(!0)},we),ha})};export{xt as a,qt as i,fn as n,bt as o,dn as r,q as t};
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license MIT
3
+ *
4
+ * Copyright (c) 2025 Aiden Bai
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ const e=require(`./state-D4g0zX0j.cjs`),t=require(`./freeze-updates-B5h8teL6.cjs`),n=require(`./extract-element-css-CBHVjrBq.cjs`);var r=`/*! 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:""}`;function i(e){return typeof e==`object`&&!!e&&(Object.getPrototypeOf(e)===Object.prototype||Array.isArray(e))}function a(e,t,n,r){!r&&e[t]===n||(n===void 0?delete e[t]:e[t]=n)}function o(e,t,n){let r=Object.keys(t);for(let i=0;i<r.length;i+=1){let o=r[i];a(e,o,t[o],n)}}function s(e,t){if(typeof t==`function`&&(t=t(e)),Array.isArray(t)){if(e===t)return;let n=0,r=t.length;for(;n<r;n++){let r=t[n];e[n]!==r&&a(e,n,r)}a(e,`length`,r)}else o(e,t)}function c(e,t,n=[]){let r,s=e;if(t.length>1){r=t.shift();let i=typeof r,a=Array.isArray(e);if(Array.isArray(r)){for(let i=0;i<r.length;i++)c(e,[r[i]].concat(t),n);return}else if(a&&i===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&c(e,[i].concat(t),n);return}else if(a&&i===`object`){let{from:i=0,to:a=e.length-1,by:o=1}=r;for(let r=i;r<=a;r+=o)c(e,[r].concat(t),n);return}else if(t.length>1){c(e[r],t,[r].concat(n));return}s=e[r],n=[r].concat(n)}let l=t[0];typeof l==`function`&&(l=l(s,n),l===s)||r===void 0&&l==null||(r===void 0||i(s)&&i(l)&&!Array.isArray(l)?o(s,l):a(e,r,l))}function l(e){let t=Array.isArray(e);function n(...n){t&&n.length===1?s(e,n[0]):c(e,n)}return[e,n]}function u(e){return t=>(i(t)&&e(t),t)}const d=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),f=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return d(n)?n:null},p=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=f(e);if(t===null)return null;r.push(t)}return r},m=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,h=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,g=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=p(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,h(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=p(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return m(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},_=e=>e.isIdentity?`none`:e.is2D?m(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 v=new WeakMap,y=new WeakMap,ee=new WeakMap;const te=()=>{v=new WeakMap,y=new WeakMap,ee=new WeakMap},ne=(e,t)=>{let n=y.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return y.set(e,{transform:i,timestamp:t}),i},b=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=ne(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))),_(i)):r?g(t):`none`},re=(e,t,n)=>{let r=ee.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return ee.set(e,{borderRadius:i,timestamp:n}),i},ie=(e,t,n,r)=>{let i=b(e,n.transform,r),a=re(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}},x=e=>{let t=performance.now(),n=v.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=ie(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return v.set(e,{bounds:r,timestamp:t}),r},S=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),ae=e=>({current:{state:`idle`},wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:e.keyHoldDuration,pointer:{x:t.J,y:t.J},dragStart:{x:t.J,y:t.J},copyStart:{x:t.J,y:t.J},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,lastCopiedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:``,pendingClickData:null,viewportVersion:0,grabbedBoxes:[],labelInstances:[],isTouchMode:!1,theme:e.theme,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),oe=n=>{let[r,i]=l(ae(n)),a=e=>{i(`current`,u(t=>{t.state===`active`&&(t.phase=e)}))},o={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(u(e=>{e.current={state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1},e.activationTimestamp=Date.now(),e.previouslyFocusedElement=document.activeElement}))},deactivate:()=>{i(u(e=>{e.current={state:`idle`},e.wasActivatedByToggle=!1,e.pendingCommentMode=!1,e.inputText=``,e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null,e.pendingClickData=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),o.activate()):o.deactivate()},freeze:()=>{if(r.current.state===`active`){let e=r.frozenElement??r.detectedElement;e&&i(`frozenElement`,e),a(`frozen`)}},unfreeze:()=>{r.current.state===`active`&&(i(u(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),a(`hovering`))},startDrag:e=>{r.current.state===`active`&&(o.clearFrozenElement(),i(`dragStart`,{x:e.x+window.scrollX,y:e.y+window.scrollY}),a(`dragging`))},endDrag:()=>{r.current.state===`active`&&r.current.phase===`dragging`&&(i(`dragStart`,{x:t.J,y:t.J}),a(`justDragged`))},cancelDrag:()=>{r.current.state===`active`&&r.current.phase===`dragging`&&(i(`dragStart`,{x:t.J,y:t.J}),a(`hovering`))},finishJustDragged:()=>{r.current.state===`active`&&r.current.phase===`justDragged`&&a(`hovering`)},startCopy:()=>{let e=r.current.state===`active`;i(`current`,{state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:e=>{i(`pendingClickData`,null),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.clearFrozenElement(),i(`current`,{state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})):o.deactivate())},enterPromptMode:(e,t)=>{let{x:n}=S(x(t));i(`copyStart`,e),i(`copyOffsetFromCenterX`,e.x-n),i(`pointer`,e),i(`frozenElement`,t),i(`wasActivatedByToggle`,!0),r.current.state===`active`?i(`current`,u(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`,u(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`,u(t=>{t.state===`active`&&(t.isPendingDismiss=e)}))},setPointer:e=>{i(`pointer`,e)},setDetectedElement:e=>{i(`detectedElement`,e)},setFrozenElement:e=>{i(u(t=>{t.frozenElement=e,t.frozenElements=[e],t.frozenDragRect=null}))},setFrozenElements:e=>{i(u(t=>{t.frozenElements=e,t.frozenElement=e.length>0?e[0]:null,t.frozenDragRect=null}))},setFrozenDragRect:e=>{i(`frozenDragRect`,e)},clearFrozenElement:()=>{i(u(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null}))},setCopyStart:(e,t)=>{let{x:n}=S(x(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(u(n=>{n.selectionFilePath=e,n.selectionLineNumber=t}))},setPendingClickData:e=>{i(`pendingClickData`,e)},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 a=r.labelInstances.findIndex(t=>t.id===e);a!==-1&&i(`labelInstances`,a,u(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}=S(x(t));i(u(i=>{i.contextMenuPosition=e,i.contextMenuElement=t,i.contextMenuClickOffset={x:e.x-n,y:e.y-r}}))},hideContextMenu:()=>{i(u(e=>{e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null}))},updateContextMenuPosition:()=>{let t=r.contextMenuElement,n=r.contextMenuClickOffset;if(!t||!n||!e.g(t))return;let{x:a,y:o}=S(x(t));i(`contextMenuPosition`,{x:a+n.x,y:o+n.y})}};return{store:r,actions:o}},se=`data-react-grab`,ce=`react-grab-fonts`,le=()=>{if(document.getElementById(ce)||!document.head)return;let e=document.createElement(`link`);e.id=ce,e.rel=`stylesheet`,e.href=`https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap`,document.head.appendChild(e)},ue=e=>{le();let n=document.querySelector(`[${se}]`);if(n){let e=n.shadowRoot?.querySelector(`[${se}]`);if(e instanceof HTMLDivElement&&n.shadowRoot)return e}let r=document.createElement(`div`);r.setAttribute(se,`true`),r.style.zIndex=String(t.dt),r.style.position=`fixed`,r.style.inset=`0`,r.style.pointerEvents=`none`;let i=r.attachShadow({mode:`open`});if(e){let t=document.createElement(`style`);t.textContent=e,i.appendChild(t)}let a=document.createElement(`div`);a.setAttribute(se,`true`),i.appendChild(a);let o=document.body??document.documentElement;return o.appendChild(r),setTimeout(()=>{o.appendChild(r)},t.K),a},C=()=>{},de=()=>({activate:C,deactivate:C,toggle:C,comment:C,isActive:()=>!1,isEnabled:()=>!1,setEnabled:C,getToolbarState:()=>null,setToolbarState:C,onToolbarStateChange:()=>C,dispose:C,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:C,registerPlugin:C,unregisterPlugin:C,getPlugins:()=>[],getDisplayName:()=>null}),fe=()=>{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})}}},pe=e=>e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`),me=(e,n)=>{let r=n?.componentName??`div`,i={version:t.lt,content:e,entries:n?.entries??[{tagName:n?.tagName,componentName:r,content:e,commentText:n?.commentText}],timestamp:Date.now()},a=t=>{t.preventDefault(),t.clipboardData?.setData(`text/plain`,e),t.clipboardData?.setData(`text/html`,`<meta charset='utf-8'><pre><code>${pe(e)}</code></pre>`),t.clipboardData?.setData(`application/x-react-grab`,JSON.stringify(i))};document.addEventListener(`copy`,a);let o=document.createElement(`textarea`);o.value=e,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()}},w=async(e,n={})=>(await Promise.allSettled(e.map(e=>t.b(e,n)))).map(e=>e.status===`fulfilled`?e.value:``),he=e=>e.length<=1?e[0]??``:e.map((e,t)=>`[${t+1}]\n${e}`).join(`
11
+
12
+ `),ge=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,_e=e=>e instanceof Error?e:Error(String(e)),ve=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 w(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=he(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=me(a,{componentName:e.componentName,entries:s})}}catch(e){t.onCopyError(_e(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},T=(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)},ye=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,be=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}),xe=t=>{if(t.width<=0||t.height<=0)return[];let n=window.innerWidth,r=window.innerHeight,i=t.x,a=t.y,o=t.x+t.width,s=t.y+t.height,c=i+t.width/2,l=a+t.height/2,u=e.s(Math.ceil(t.width/32),3,20),d=e.s(Math.ceil(t.height/32),3,20),f=u*d,p=f>100?Math.sqrt(100/f):1,m=e.s(Math.floor(u*p),3,20),h=e.s(Math.floor(d*p),3,20),g=new Set,_=[],v=(t,i)=>{let a=e.s(Math.round(t),0,n-1),o=e.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 e=0;e<m;e+=1){let n=i+(e+.5)/m*t.width;for(let e=0;e<h;e+=1)v(n,a+(e+.5)/h*t.height)}return _},Se=(e,n,r)=>{let i={left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height},a=new Set,o=xe(e);t.p();try{for(let e of o){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)a.add(e)}}finally{t.f()}let s=[];for(let e of a)!r&&t._(e)||n(e)&&s.push(e);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=T(i,n),a=t.width*t.height;a>0&&r/a>=.75&&l.push(e)}else ye(n,i)&&l.push(e)}return be(l)},Ce=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),we=(e,t,n=!0)=>Ce(Se(e,t,n)),Te=e=>{let n=[],r=e.parentElement;for(;r&&!t._(r);)n.push(r),r=r.parentElement;return n},Ee=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}},De=()=>{te(),t.c(),t.h()},Oe=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),ke=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Ae=e=>({...e,borderRadius:`0px`,transform:`none`}),je=e=>{let t=x(e);return{bounds:t,center:S(t)}},Me=e=>S(x(e)),Ne=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),Pe=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:Ne.has(e),Fe=(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},E={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},D=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=E[e];t?n[t]=!0:n.key=e}return n},Ie=e=>{if(typeof e==`function`)return e;let t=D(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||Fe(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}},Le=t=>!t||typeof t==`function`?{metaKey:e.a(),ctrlKey:!e.a(),shiftKey:!1,altKey:!1,key:null}:D(t),Re=(t,n)=>{if(n.activationKey)return Ie(n.activationKey)(t);let r=(e.a()?t.metaKey:t.ctrlKey)&&!t.shiftKey&&!t.altKey;return!!(t.key&&r&&Pe(t.key,t.code))},ze=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}},Be={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},Ve=(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}}),He={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},Ue=(e={})=>{let t=new Map,n={},[r,i]=l({theme:Be,options:{...He,...e},actions:[]}),a=()=>{let r=Be,a={...He,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=Ve(r,e.theme)),e.options&&(a={...a,...e.options}),e.actions)for(let t of e.actions)o.push(t);a={...a,...n},i(`theme`,r),i(`options`,a),i(`actions`,o)},o=(e,t)=>{n[e]=t,i(`options`,e,t)},s=[`activationMode`,`keyHoldDuration`,`allowActivationInsideInput`,`maxContextLines`,`activationKey`,`getContent`,`freezeReactUpdates`],c=e=>{for(let t of s)e[t]!==void 0&&o(t,e[t])},u=(e,n)=>{t.has(e.name)&&d(e.name);let r=e.setup?.(n,v)??{};return e.theme&&(r.theme=r.theme?Ve(Ve(Be,e.theme),r.theme):e.theme),e.actions&&(r.actions=[...e.actions,...r.actions??[]]),e.hooks&&(r.hooks=r.hooks?{...e.hooks,...r.hooks}:e.hooks),e.options&&(r.options=r.options?{...e.options,...r.options}:e.options),t.set(e.name,{plugin:e,config:r}),a(),r},d=e=>{let n=t.get(e);n&&(n.config.cleanup&&n.config.cleanup(),t.delete(e),a())},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:c,store:r,hooks:v}},We=(n,r)=>{let i=[],a=(e,i)=>{let a=Ee(r(e)),o=t.u(a.x,a.y).filter(n),s=o.indexOf(e);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=t=>{if(i.length>0){let t=i.pop();if(e.g(t))return t}return a(t,-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=[]}}},Ge=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Le(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},Ke=()=>{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,didPatch:n,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,`key`,t)}}},qe=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),Je=(e,n)=>{let r=null,i=()=>{if(!n()){a();return}let o=e(),s=qe(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?t.k(i):null},a=()=>{r!==null&&(t.O(r),r=null)};return{start:i,stop:a,isActive:()=>r!==null}},Ye=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},Xe=()=>{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&&!Ye()&&fetch(`https://www.react-grab.com/api/version?source=browser&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{}},Ze=e=>typeof e!=`object`||!e||!(`postTask`in e)?!1:typeof e.postTask==`function`,Qe=e=>{if(typeof window<`u`){let t=window.scheduler;if(Ze(t)){t.postTask(e,{priority:`background`});return}if(`requestIdleCallback`in window){requestIdleCallback(e);return}}setTimeout(e,0)},$e=e=>typeof e==`object`&&!!e,et=e=>{if(!$e(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},tt=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?et(JSON.parse(e)):null}catch{return null}},nt=e=>e===`Enter`||e===`NumpadEnter`,O=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),rt=O({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),it={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},k={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:e=>{e.filePath&&(e.hooks.onOpenFile(e.filePath,e.lineNumber)||t.s(e.filePath,e.lineNumber,e.hooks.transformOpenFileUrl),e.hideContextMenu(),e.cleanup())}}]},A=(e,t)=>t?`${e}\n${t}`:e,at=O({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?me(A(r,await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}):!1})}})}),ot=O({name:`copy-styles`,contextMenuAction:e=>({id:`copy-styles`,label:`Copy styles`,showInToolbarMenu:!0,onAction:async t=>{await t.performWithFeedback(async()=>me(A(t.elements.map(n.n).join(`
15
+
16
+ `),await e.getStackContext(t.element)),{componentName:t.componentName,tagName:t.tagName}))}}),cleanup:n.t}),st=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,ct=`react-grab-comment-items`,j=`react-grab-history-items`,M=`react-grab-clear-confirmed`,lt=()=>{try{let e=sessionStorage.getItem(j);e&&!sessionStorage.getItem(ct)&&sessionStorage.setItem(ct,e),sessionStorage.removeItem(j)}catch{}},ut=()=>{try{let e=sessionStorage.getItem(ct);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},dt=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},N=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},P=e=>{F=N(e);try{sessionStorage.setItem(ct,JSON.stringify(F))}catch{}return F};lt();let F=ut(),ft=dt(M);const pt=()=>F,mt=e=>P([{...e,id:st(`comment`)},...F].slice(0,20)),ht=e=>P(F.filter(t=>t.id!==e)),gt=()=>P([]),_t=()=>ft,vt=()=>{ft=!0;try{sessionStorage.setItem(M,`1`)}catch{}},yt=()=>{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}},bt=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`},xt=[rt,it,at,ot,k];let St=!1;const I=new Set,Ct=i=>{if(typeof window>`u`)return de();let a={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,maxContextLines:3,...tt(),...i};if(a.enabled===!1||St)return de();St=!0,Xe();let{enabled:o,...s}=a;return e.z(i=>{let a=!1,o,c=Ue(s),{store:l,actions:u}=oe({theme:Be,keyHoldDuration:c.store.options.keyHoldDuration??100}),d=e.I(()=>l.current.state===`holding`),f=e.I(()=>l.current.state===`active`),p=e.I(()=>l.current.state===`active`&&l.current.phase===`frozen`),m=e.I(()=>l.current.state===`active`&&l.current.phase===`dragging`),h=e.I(()=>l.current.state===`active`&&l.current.phase===`justDragged`),g=e.I(()=>l.current.state===`copying`),_=e.I(()=>l.current.state===`justCopied`),v=e.I(()=>l.current.state===`active`&&!!l.current.isPromptMode),y=e.I(()=>l.pendingCommentMode||v()),ee=e.I(()=>l.current.state===`active`&&!!l.current.isPromptMode&&!!l.current.isPendingDismiss),te=null;e.F(e.H(f,(e,n)=>{e&&!n?(t.d(),t.a(),document.body.style.touchAction=`none`,te=yt()):!e&&n&&(t.m(),t.o(),document.body.style.touchAction=``,te?.(),te=null)}));let ne=e.t(),[b,re]=e.B(ne?.enabled??!0),[ie,ae]=e.B(0),[se,ce]=e.B(0),[le,C]=e.B(ne),[de,pe]=e.B(!1),[w,_e]=e.B(pt()),[T,ye]=e.B(null),[be,xe]=e.B(null),[Se,Ce]=e.B(null),Ne,E=null,D=new Map,[Ve,He]=e.B(0),[Ye,Xe]=e.B(!1),Ze=[],$e=t=>{let n=le()??e.t(),r={edge:n?.edge??`bottom`,ratio:n?.ratio??.5,collapsed:n?.collapsed??!1,enabled:n?.enabled??!0,defaultAction:n?.defaultAction??`comment`,...t};e.n(r),C(r);for(let e of I)e(r);return r},et=e=>D.get(e)??[],tt=t=>{let n=t.elementSelectors??[];if(n.length===0)return[];let r=[];for(let t of n)if(t)try{let n=document.querySelector(t);e.g(n)&&r.push(n)}catch{}return r},O=t=>{let n=et(t.id),r=n.filter(t=>e.g(t));if(n.length>0&&r.length===n.length)return r;let i=tt(t);return i.length>0?(D.set(t.id,i),i):r},rt=e=>O(e)[0],it=e.I(()=>{T();let e=new Set;for(let t of w())O(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}}),k=()=>{P.timerId!==null&&(clearTimeout(P.timerId),P.timerId=null)},A=()=>{P.copyWaiting=!1,P.holdTimerFired=!1,P.startTimestamp=null};e.F(()=>{if(l.current.state!==`holding`){k();return}P.startTimestamp=Date.now(),P.timerId=window.setTimeout(()=>{if(P.timerId=null,P.copyWaiting){P.holdTimerFired=!0;return}u.activate()},l.keyHoldDuration),e.U(k)}),e.F(()=>{if(l.current.state!==`active`||l.current.phase!==`justDragged`)return;let n=setTimeout(()=>{u.finishJustDragged()},t.z);e.U(()=>clearTimeout(n))}),e.F(()=>{if(l.current.state!==`justCopied`)return;let n=setTimeout(()=>{u.finishJustCopied()},t.z);e.U(()=>clearTimeout(n))}),e.F(e.H(d,(e,t=!1)=>{!t||e||!f()||(c.store.options.activationMode!==`hold`&&u.setWasActivatedByToggle(!0),c.hooks.onActivate())}));let at=(e,t,n)=>{ct(e,t,n),u.clearInputText()},ot=()=>{let e=l.frozenElement||U();e&&u.enterPromptMode({x:l.pointer.x,y:l.pointer.y},e)},ct=(e,t,n)=>(u.setCopyStart({x:t,y:n},e),x(e)),j={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},M=null,[lt,ut]=e.B(null),dt=(e,t)=>{M!==null&&clearTimeout(M),ut(null),M=window.setTimeout(()=>{ut({x:e,y:t}),M=null},32)},N=null,P={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},[F,ft]=e.B(!1),Ct=0,wt=!1,L=null,Tt=()=>{wt=!0,L!==null&&window.clearTimeout(L),L=window.setTimeout(()=>{wt=!1,L=null},t.z)},Et=()=>{L!==null&&(window.clearTimeout(L),L=null),wt=!1},R=null,Dt=0,Ot=0,z=null,kt=null,At=!1,jt=null,[Mt,Nt]=e.B(null),[Pt,Ft]=e.B(void 0),[It,Lt]=e.B([]),[Rt,zt]=e.B(null),[Bt,Vt]=e.B([]),[Ht,Ut]=e.B(0),Wt=We(t.g,x),B=Je(()=>l.pointer,()=>m()),V=e.I(()=>f()&&!g()),Gt=new Map,Kt=(e,n)=>{let r=st(`grabbed`),i={id:r,bounds:e,createdAt:Date.now(),element:n};u.addGrabbedBox(i),c.hooks.onGrabbedBox(e,n);let a=window.setTimeout(()=>{Gt.delete(r),u.removeGrabbedBox(r)},t.z);Gt.set(r,a)},qt=async e=>{let n=await Promise.all(e.map(async e=>{let n=await t.T(e),r=n?.componentName??null,i=n?.filePath,a=n?.lineNumber??void 0,o=n?.columnNumber??void 0;r||=t.y(e);let s=e instanceof HTMLElement?e.innerText?.slice(0,100):void 0;return{tagName:t.j(e),id:e.id||void 0,className:e.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}}))},H=new Map,Jt=e=>{let t=H.get(e);t!==void 0&&(window.clearTimeout(t),H.delete(e))},Yt=()=>{for(let e of H.values())window.clearTimeout(e);H.clear()},Xt=e=>{Jt(e);let n=window.setTimeout(()=>{H.delete(e),u.updateLabelInstance(e,`fading`),setTimeout(()=>{H.delete(e),u.removeLabelInstance(e)},150)},t.z);H.set(e,n)},Zt=(e,t)=>{if(t)Jt(e);else{let t=l.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&Xt(e)}},Qt=(e,t,n,r,i)=>{u.clearLabelInstances(),Yt();let a=st(`label`),o=e.x+e.width/2,s=e.width/2,c=i?.mouseX,l=c===void 0?void 0:c-o,d={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 u.addLabelInstance(d),a},$t=()=>{Yt(),u.clearLabelInstances()},en=(e,t,n)=>{t?u.updateLabelInstance(e,`copied`):u.updateLabelInstance(e,`error`,n||`Unknown error`),Xt(e)},tn=async(e,t,n,r)=>{Et(),l.current.state!==`copying`&&u.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=ge(e,`Action failed`)}t&&en(t,i,a),l.current.state===`copying`&&(i&&u.completeCopy(n),r?q():i?(u.activate(),Tt()):u.unfreeze())},nn=e=>{let{copiedElements:t,content:r,extraPrompt:i,elementName:a,tagName:o,componentName:s}=e;if(c.hooks.onCopySuccess(t,r),!i)return;let l=t.length>0;if(l){let e=w();for(let[n,r]of D.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){ht(n),D.delete(n);break}}}let u=t.map((e,t)=>n.r(e,t===0)),d=mt({content:r,elementName:a??`element`,tagName:o??`div`,componentName:s??void 0,elementsCount:t.length,previewBounds:t.map(e=>x(e)),elementSelectors:u,commentText:i,timestamp:Date.now()});_e(d),He(e=>e+1);let f=d[0];f&&l&&D.set(f.id,[...t]);let p=new Set(d.map(e=>e.id));for(let e of D.keys())p.has(e)||D.delete(e)},rn=(e,n,r)=>{let i=e[0],a=r??(i?t.y(i):null),o=i?t.j(i):null,s=a??o??void 0;return ve({maxContextLines:c.store.options.maxContextLines,getContent:c.store.options.getContent,componentName:s},{onBeforeCopy:c.hooks.onBeforeCopy,transformSnippet:c.hooks.transformSnippet,transformCopyContent:c.hooks.transformCopyContent,onAfterCopy:c.hooks.onAfterCopy,onCopySuccess:(e,t)=>{nn({copiedElements:e,content:t,extraPrompt:n,elementName:s,tagName:o,componentName:a})},onCopyError:c.hooks.onCopyError},e,n)},an=async(e,n,r)=>{if(e.length===0)return;let i=[],a=[];for(let t of e){let{wasIntercepted:e,pendingResult:n}=c.hooks.onElementSelect(t);e||i.push(t),n&&a.push(n),c.store.theme.grabbedBoxes.enabled&&Kt(x(t),t)}if(await t.A(),i.length>0)await rn(i,n,r);else if(a.length>0&&!(await Promise.all(a)).every(Boolean))throw Error(`Failed to copy`);qt(e)},on=e=>{let{element:n,cursorX:r,selectedElements:i,extraPrompt:a,shouldDeactivateAfter:o,onComplete:s,dragRect:c}=e,d=i??[n],f=c??l.frozenDragRect,p=d.length>1,m=f&&p?Oe(f):Ae(x(n)),h=p?m.x+m.width/2:r,g=t.j(n);Et(),u.startCopy();let _=g?Qt(m,g,void 0,`copying`,{element:n,mouseX:h,elements:i}):null;t.S(n).then(async e=>{await tn(()=>an(d,a,e??void 0),_,n,o),s?.()}).catch(e=>{_&&en(_,!1,ge(e,`Action failed`)),l.current.state===`copying`&&u.unfreeze()})},U=e.I(()=>{if(l.viewportVersion,!V()||m())return null;let t=l.detectedElement;return e.g(t)?t:null}),W=e.I(()=>l.frozenElement||(p()?null:U()));e.F(()=>{let t=l.detectedElement;if(!t)return;let n=setInterval(()=>{e.g(t)||u.setDetectedElement(null)},100);e.U(()=>clearInterval(n))}),e.F(e.H(W,e=>{if(z!==null&&(clearTimeout(z),z=null),!e){Nt(null);return}z=window.setTimeout(()=>{z=null,Nt(e)},100)})),e.U(()=>{z!==null&&(clearTimeout(z),z=null)}),e.F(()=>{let n=l.frozenElements;e.U(t.i(n))}),e.F(e.H(f,n=>{n&&c.store.options.freezeReactUpdates&&e.U(t.t())}));let sn=()=>{if(l.isTouchMode&&m()){let e=l.detectedElement;return!e||t._(e)?void 0:e}let e=W();if(!(!e||t._(e)))return e},G=e.I(()=>sn()),cn=()=>G()?l.isTouchMode&&m()?V():V()&&!m():!1,ln=e.I(()=>{l.viewportVersion;let e=l.frozenElements;if(e.length===0)return[];let t=l.frozenDragRect;return t&&e.length>1?[Oe(t)]:e.filter(e=>e!==null).map(e=>x(e))}),un=e.I(()=>{l.viewportVersion;let e=l.frozenElements;if(e.length>0){let t=ln();if(e.length===1){let e=t[0];if(e)return e}let n=l.frozenDragRect;return n?t[0]??Oe(n):Ae(ze(t))}let t=G();if(t)return x(t)}),dn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),fn=(e,t)=>{let{pageX:n,pageY:r}=dn(e,t);return{x:Math.abs(n-l.dragStart.x),y:Math.abs(r-l.dragStart.y)}},pn=e.I(()=>{if(!m())return!1;let e=fn(l.pointer.x,l.pointer.y);return e.x>2||e.y>2}),mn=(e,t)=>{let{pageX:n,pageY:r}=dn(e,t),i=Math.min(l.dragStart.x,n),a=Math.min(l.dragStart.y,r),o=Math.abs(n-l.dragStart.x),s=Math.abs(r-l.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},hn=e.I(()=>{if(l.viewportVersion,!pn())return;let e=mn(l.pointer.x,l.pointer.y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),gn=e.I(()=>{if(l.viewportVersion,!pn())return[];let e=lt();if(!e)return[];let n=mn(e.x,e.y),r=we(n,t.g);return(r.length>0?r:we(n,t.g,!1)).map(e=>x(e))}),_n=e.I(()=>{let e=gn();return e.length>0?e:ln()}),vn=e.I(()=>{if(!F())return[];let e=W();return e?(l.viewportVersion,[...Te(e),e].map(e=>x(e))):[]}),yn=e.I(()=>{if(g()||v()){l.viewportVersion;let e=l.frozenElement||U();if(e){let{center:t}=je(e);return{x:t.x+l.copyOffsetFromCenterX,y:l.copyStart.y}}return{x:l.copyStart.x,y:l.copyStart.y}}return{x:l.pointer.x,y:l.pointer.y}});e.F(e.H(()=>[U(),l.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&u.setLastGrabbed(null),e&&c.hooks.onElementHover(e)})),e.F(e.H(()=>U(),e=>{let n=++Dt,r=()=>{Dt===n&&u.setSelectionSource(null,null)};if(!e){r();return}t.T(e).then(e=>{if(Dt===n){if(!e){r();return}u.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{Dt===n&&u.setSelectionSource(null,null)})}));let bn=e.I(()=>l.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),xn=e.I(()=>l.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));e.F(e.H(e.I(()=>{let e=f(),t=m(),n=g(),r=v(),i=U(),a=hn(),o=c.store.theme.enabled,s=c.store.theme.selectionBox.enabled,u=c.store.theme.dragBox.enabled,d=pn(),p=W(),h=_();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(o&&s&&e&&!n&&!h&&!t&&p!=null),isDragBoxVisible:!!(o&&u&&e&&!n&&d),targetElement:i,dragBounds:a?{x:a.x,y:a.y,width:a.width,height:a.height}:null,grabbedBoxes:[...bn()],labelInstances:[...xn()],selectionFilePath:l.selectionFilePath,toolbarState:le()}}),e=>{c.hooks.onStateChange(e)})),e.F(e.H(()=>[v(),l.pointer.x,l.pointer.y,U()],([e,t,n,r])=>{c.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),e.F(e.H(()=>[jr(),un(),U()],([e,t,n])=>{c.hooks.onSelectionBox(!!e,t??null,n)})),e.F(e.H(()=>[Rr(),hn()],([e,t])=>{c.hooks.onDragBox(!!e,t??null)})),e.F(e.H(()=>[Br(),zr(),yn(),U(),l.selectionFilePath,l.selectionLineNumber],([e,n,r,i,a,o])=>{c.hooks.onElementLabel(!!e,n,{x:r.x,y:r.y,content:``,element:i??void 0,tagName:i&&t.j(i)||void 0,filePath:a??void 0,lineNumber:o??void 0})}));let K=null,Sn=e=>{e?(K||(K=document.createElement(`style`),K.setAttribute(`data-react-grab-cursor`,``),document.head.appendChild(K)),K.textContent=`* { cursor: ${e} !important; }`):K&&=(K.remove(),null)};e.F(e.H(()=>[f(),g(),v()],([e,t,n])=>{Sn(t?`progress`:e&&!n?`crosshair`:null)}));let Cn=()=>{let e=d();u.activate(),e||c.hooks.onActivate()},q=()=>{let t=m(),n=l.previouslyFocusedElement;u.deactivate(),ft(!1),Gn(),kt=null,At=!1,t&&(document.body.style.userSelect=``),N&&window.clearTimeout(N),B.stop(),n instanceof HTMLElement&&e.g(n)&&n.focus(),c.hooks.onDeactivate()},wn=()=>{d()&&u.releaseHold(),f()&&q(),Et()},Tn=()=>{u.setWasActivatedByToggle(!0),Cn()},En=()=>{u.clearLastCopied();let e=[...l.frozenElements],t=l.frozenElement||U(),n=v()?l.inputText.trim():``;if(!t){q();return}let r=e.length>0?e:[t],i=r.map(e=>x(e))[0],{x:a,y:o}=S(i),s=a+l.copyOffsetFromCenterX;u.setPointer({x:a,y:o}),u.exitPromptMode(),u.clearInputText(),on({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},Dn=()=>{if(u.clearLastCopied(),v()){if(ee()){u.clearInputText(),q();return}u.setPendingDismiss(!0),ce(e=>e+1)}},On=()=>{u.clearInputText(),q()},kn=()=>{u.setPendingDismiss(!1)},An=()=>{let e=l.frozenElement||U();e&&at(e,l.pointer.x,l.pointer.y),ot()},jn=()=>{if(f())q();else if(b()){let e=le()?.defaultAction??`comment`;e===`comment`?u.setPendingCommentMode(!0):(jt=e,At=!0),Tn()}},Mn=(e,t,n)=>{u.setPendingCommentMode(!1),u.clearInputText(),u.enterPromptMode({x:t,y:n},e)},Nn=(e,t)=>{u.showContextMenu(t,e),Gn(),di(),c.hooks.onContextMenu(e,t)},Pn=(e,n)=>{let r=jt;if(jt=null,!r)return;let i=c.store.actions.find(e=>e.id===r);if(!i){pi(t.P),Nn(e,n);return}let a=x(e),o=Jr({element:e,filePath:l.selectionFilePath??void 0,lineNumber:l.selectionLineNumber??void 0,tagName:t.j(e)||void 0,componentName:Pt(),position:n,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:a,fallbackSelectionBounds:[a],position:n}});i.onAction(o)},Fn=()=>{if(b()){if(f()&&y()){q();return}u.setPendingCommentMode(!0),f()||Tn()}},In=()=>{let e=!b();re(e),$e({enabled:e}),e||(wn(),di())},Ln=(e,n)=>{if(!b()||v()||p()||l.contextMenuPosition!==null)return;u.setPointer({x:e,y:n}),j.latestPointerX=e,j.latestPointerY=n;let r=performance.now(),i=j.pendingDetectionScheduledAt>0&&r-j.pendingDetectionScheduledAt<200;if(r-j.lastDetectionTimestamp>=32&&!i&&(j.lastDetectionTimestamp=r,j.pendingDetectionScheduledAt=r,Qe(()=>{let e=t.l(j.latestPointerX,j.latestPointerY);e!==l.detectedElement&&u.setDetectedElement(e),j.pendingDetectionScheduledAt=0})),m()){dt(e,n);let t=qe(e,n),r=t.top||t.bottom||t.left||t.right;r&&!B.isActive()?B.start():!r&&B.isActive()&&B.stop()}},Rn=(e,t)=>!V()||g()?!1:(u.startDrag({x:e,y:t}),u.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,dt(e,t),c.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),zn=(e,n)=>{let r=we(e,t.g),i=r.length>0?r:we(e,t.g,!1);if(i.length===0)return;t.r(i),c.hooks.onDragEnd(i,e);let a=i[0],o=Me(a);u.setPointer(o),u.setFrozenElements(i);let s=ke(e);if(u.setFrozenDragRect(s),u.freeze(),u.setLastGrabbed(a),l.pendingCommentMode){Mn(a,o.x,o.y);return}if(At){At=!1,jt?Pn(a,o):Nn(a,o);return}let d=l.wasActivatedByToggle&&!n;on({element:a,cursorX:o.x,selectedElements:i,shouldDeactivateAfter:d,dragRect:s})},Bn=(n,r,i)=>{let a=e.g(l.frozenElement)?l.frozenElement:null,o=e.g(kt)?kt:null,s=a??o??t.l(n,r)??(e.g(l.detectedElement)?l.detectedElement:null);if(!s)return;let d=!a&&o===s,f,p;if(a)f=l.pointer.x,p=l.pointer.y;else if(d){let e=Me(s);f=e.x,p=e.y}else f=n,p=r;if(kt=null,l.pendingCommentMode){Mn(s,f,p);return}if(At){At=!1;let{wasIntercepted:e}=c.hooks.onElementSelect(s);if(e)return;t.r([s]),u.setFrozenElement(s);let n={x:f,y:p};u.setPointer(n),u.freeze(),jt?Pn(s,n):Nn(s,n);return}let m=l.wasActivatedByToggle&&!i;u.setLastGrabbed(s),on({element:s,cursorX:f,shouldDeactivateAfter:m})},Vn=()=>{m()&&(u.cancelDrag(),B.stop(),document.body.style.userSelect=``)},Hn=(e,t,n)=>{if(!m())return;M!==null&&(clearTimeout(M),M=null),ut(null);let r=fn(e,t),i=r.x>2||r.y>2,a=i?mn(e,t):null;i?u.endDrag():u.cancelDrag(),B.stop(),document.body.style.userSelect=``,a?zn(a,n):Bn(e,t,n)},J=fe(),Un=Ke(),Wn=e=>{let t;try{t=Un.originalKeyDescriptor?.get?Un.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||nt(e.code),r=f()||d();return n&&r&&!v()&&!l.wasActivatedByToggle&&Se()===null?(Un.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};J.addDocumentListener(`keydown`,Wn,{capture:!0}),J.addDocumentListener(`keyup`,Wn,{capture:!0}),J.addDocumentListener(`keypress`,Wn,{capture:!0});let Gn=()=>{Vt([]),Ut(0),Wt.clearHistory()},Kn=e=>{u.setFrozenElement(e),u.freeze(),kt=e;let{center:t}=je(e);u.setPointer(t),l.contextMenuPosition!==null&&u.showContextMenu(t,e)},qn=e=>{let n=Ee(x(e)),r=t.u(n.x,n.y).filter(t.g).reverse();Vt(r),Ut(Math.max(0,r.indexOf(e)))},Jn=e=>{let t=Bt()[e];t&&(Ut(e),Wt.clearHistory(),Kn(t))},Yn=e=>{if(!f()||v()||!t.M.has(e.key))return!1;let n=W(),r=!n;if(n||=t.l(window.innerWidth/2,window.innerHeight/2),!n)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Gn();let t=Wt.findNext(e.key,n);return!t&&!r?!1:(e.preventDefault(),e.stopPropagation(),Kn(t??n),!0)}Bt().length===0&&qn(n);let i=Wt.findNext(e.key,n)??n;e.preventDefault(),e.stopPropagation(),Kn(i);let a=Bt().indexOf(i);return a===-1?qn(i):Ut(a),!0},Xn=t=>{if(!nt(t.code)||e.h(t))return!1;let n=l.lastCopiedElement;if(!d()&&!v()&&!f()&&n&&e.g(n)&&!l.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){t.preventDefault(),t.stopImmediatePropagation();let e=Me(n);return u.setPointer(e),at(n,e.x,e.y),u.setFrozenElement(n),u.clearLastCopied(),ot(),f()||Cn(),!0}if(d()&&!v()){t.preventDefault(),t.stopImmediatePropagation();let e=l.frozenElement||U();return e&&at(e,l.pointer.x,l.pointer.y),u.setPointer({x:l.pointer.x,y:l.pointer.y}),e&&u.setFrozenElement(e),ot(),N!==null&&(window.clearTimeout(N),N=null),f()||Cn(),!0}return!1},Zn=e=>{if(e.key?.toLowerCase()!==`o`||v()||!f()||!(e.metaKey||e.ctrlKey))return!1;let n=l.selectionFilePath,r=l.selectionLineNumber;return n?(e.preventDefault(),e.stopPropagation(),c.hooks.onOpenFile(n,r??void 0)||t.s(n,r??void 0,c.hooks.transformOpenFileUrl),!0):!1},Qn=()=>{R!==null&&(window.clearTimeout(R),R=null)},$n=()=>{Qn(),Lt([]),zt(null)},er=e.I(()=>!!G()&&V()&&!v()&&!m()&&l.contextMenuPosition===null),tr=e.I(()=>{let{key:e}=Le(c.store.options.activationKey);return(e??`c`).toUpperCase()}),nr=e.I(()=>({items:It(),activeIndex:Rt(),isVisible:Rt()!==null&&It().length>0&&!y()})),rr=e.I(()=>Bt().map(e=>({tagName:t.j(e)||`element`,componentName:t.y(e)??void 0}))),ir=e.I(()=>({items:rr(),activeIndex:Ht(),isVisible:Bt().length>0})),ar=e.I(()=>{if(!F())return[];let e=W();return e?[...Te(e).reverse(),e]:[]}),or=e.I(()=>ar().map(e=>({tagName:t.j(e)||`element`,componentName:t.y(e)??void 0}))),[sr,cr]=e.B(-1);e.F(e.H(ar,e=>{cr(e.length-1)}));let lr=e.I(()=>{let e=ar();return{items:or(),activeIndex:sr(),isVisible:F()&&e.length>0}}),ur=e=>{cr(e)};e.F(e.H(G,()=>{$n()})),e.F(e.H(er,e=>{e||$n()}));let dr=e=>c.store.actions.find(t=>t.id===e),fr=()=>{let e=G();if(!e)return;let n=un();return Jr({element:e,filePath:l.selectionFilePath??void 0,lineNumber:l.selectionLineNumber??void 0,tagName:t.j(e)||void 0,componentName:Pt(),position:l.pointer,performWithFeedbackOptions:{fallbackBounds:n,fallbackSelectionBounds:n?[n]:[]},shouldDeferHideContextMenu:!1,onBeforePrompt:$n})},pr=e.I(()=>{if(!G())return[];let e=[];for(let t of c.store.actions)typeof t.enabled==`boolean`&&!t.enabled||t.shortcut&&t.shortcut.toUpperCase()!==tr()||e.push({id:t.id,label:t.label,shortcut:t.shortcut});return e}),mr=()=>{Qn(),R=window.setTimeout(()=>{R=null;let t=Rt(),n=It();if(t===null||n.length===0)return;let r=n[t];if(!r)return;let i=dr(r.id);if(!i){$n();return}let a=fr();if(!a||!e.r(i,a)){$n();return}$n(),i.onAction(a)instanceof Promise},600)},hr=()=>{if(!er())return!1;let e=pr();if(e.length===0)return!1;Lt(e);let t=Rt();return zt(t!==null&&t<e.length?(t+1)%e.length:0),mr(),!0},gr=t=>!Fe(tr(),t.code)||t.altKey||t.repeat||e.h(t)||!hr()?!1:(t.preventDefault(),t.stopPropagation(),(t.metaKey||t.ctrlKey)&&t.stopImmediatePropagation(),!0),_r=n=>{if(!(!c.store.options.allowActivationInsideInput&&e.h(n))&&!(!Re(n,c.store.options)&&((n.metaKey||n.ctrlKey)&&!t.G.includes(n.key)&&!nt(n.code)&&(f()&&!l.wasActivatedByToggle?q():d()&&(k(),A(),u.releaseHold())),!nt(n.code)||!d()))){if((f()||d())&&!v()&&(n.preventDefault(),nt(n.code)&&n.stopImmediatePropagation()),f()){if(l.wasActivatedByToggle&&c.store.options.activationMode!==`hold`||n.repeat)return;N!==null&&window.clearTimeout(N),N=window.setTimeout(()=>{q()},200);return}if(d()&&n.repeat){if(P.copyWaiting){let e=P.holdTimerFired;A(),e&&u.activate()}return}if(!(g()||_())&&!d()){let t=c.store.options.keyHoldDuration??100;e.h(n)?e.p(n)?t+=600:t+=400:e.m()&&(t+=600),A(),u.startHold(t)}}};J.addWindowListener(`keydown`,n=>{if(Wn(n),n.key===`Shift`&&!n.repeat&&f()&&(ft(!0),p()&&(u.unfreeze(),Gn())),!b()){Re(n,c.store.options)&&!n.repeat&&ae(e=>e+1);return}let r=nt(n.code)&&d()&&!v(),i=e.i(n,`data-react-grab-input`);if(v()&&Re(n,c.store.options)&&!n.repeat&&!i){n.preventDefault(),n.stopPropagation(),Dn();return}if(n.key===`Escape`&&Se()!==null)return;if(n.key===`Escape`&&T()!==null){Q();return}if(n.key===`Escape`&&be()!==null){ri();return}let a=e.i(n,`data-react-grab-ignore-events`)&&!r;if(v()||a)return n.key===`Escape`&&(v()?Dn():l.wasActivatedByToggle&&q()),a&&t.M.has(n.key)&&Yn(n),void 0;if(n.key===`Escape`&&(d()||l.wasActivatedByToggle)){q();return}let o=Date.now()-Ct<200;!o&&gr(n)||Yn(n)||Xn(n)||Zn(n)||o||_r(n)},{capture:!0}),J.addWindowListener(`keyup`,t=>{if(Wn(t))return;t.key===`Shift`&&ft(!1);let n=Ge(c.store.options),r=n.metaKey||n.ctrlKey?e.a()?!t.metaKey:!t.ctrlKey:n.shiftKey&&!t.shiftKey||n.altKey&&!t.altKey,i=c.store.options.activationKey?typeof c.store.options.activationKey==`function`?c.store.options.activationKey(t):Ie(c.store.options.activationKey)(t):Pe(t.key,t.code);if(_()||wt){(i||r)&&(Et(),q());return}if(!d()&&!f()||v())return;let a=!!c.store.options.activationKey,o=c.store.options.activationMode===`hold`;if(f()){let e=l.contextMenuPosition!==null;if(r){if(l.wasActivatedByToggle&&c.store.options.activationMode!==`hold`||e)return;q()}else if(o&&i){if(N!==null&&(window.clearTimeout(N),N=null),e)return;q()}else !a&&i&&N!==null&&(window.clearTimeout(N),N=null);return}if(i||r){if(l.wasActivatedByToggle&&c.store.options.activationMode!==`hold`)return;if(d()||P.holdTimerFired&&r){k();let n=(P.startTimestamp?Date.now()-P.startTimestamp:0)>=200,r=P.holdTimerFired&&n&&(c.store.options.allowActivationInsideInput||!e.h(t));A(),r?u.activate():u.releaseHold()}else q()}},{capture:!0}),J.addDocumentListener(`copy`,()=>{d()&&(P.copyWaiting=!0)}),J.addWindowListener(`keypress`,Wn,{capture:!0}),J.addWindowListener(`pointermove`,t=>{if(!t.isPrimary)return;let n=t.pointerType===`touch`;u.setTouchMode(n),!e.i(t,`data-react-grab-ignore-events`)&&l.contextMenuPosition===null&&(n&&!d()&&!f()||((n?d():f())&&!v()&&p()&&(u.unfreeze(),Gn()),Ln(t.clientX,t.clientY)))},{passive:!0}),J.addWindowListener(`pointerdown`,t=>{if(t.button===0&&t.isPrimary&&(u.setTouchMode(t.pointerType===`touch`),!e.i(t,`data-react-grab-ignore-events`)&&l.contextMenuPosition===null&&be()===null)){if(v()){let e=un();e&&t.clientX>=e.x&&t.clientX<=e.x+e.width&&t.clientY>=e.y&&t.clientY<=e.y+e.height?En():Dn();return}Rn(t.clientX,t.clientY)&&(document.documentElement.setPointerCapture(t.pointerId),t.preventDefault(),t.stopImmediatePropagation())}},{capture:!0}),J.addWindowListener(`pointerup`,t=>{if(t.button!==0||!t.isPrimary||e.i(t,`data-react-grab-ignore-events`)||l.contextMenuPosition!==null)return;let n=V()||g()||m(),r=t.metaKey||t.ctrlKey;Hn(t.clientX,t.clientY,r),n&&(t.preventDefault(),t.stopImmediatePropagation())},{capture:!0}),J.addWindowListener(`contextmenu`,n=>{if(!V()||g()||v())return;let r=e.i(n,`data-react-grab-ignore-events`);if(r&&Bt().length>0)Gn();else if(r)return;if(l.contextMenuPosition!==null){n.preventDefault();return}n.preventDefault(),n.stopPropagation();let i=t.l(n.clientX,n.clientY);if(!i)return;let a=l.frozenElements;a.length>1&&a.includes(i)?t.r(a):(t.r([i]),u.setFrozenElement(i));let o={x:n.clientX,y:n.clientY};u.setPointer(o),u.freeze(),Nn(i,o)},{capture:!0}),J.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Vn()}),J.addWindowListener(`click`,t=>{e.i(t,`data-react-grab-ignore-events`)||l.contextMenuPosition===null&&(V()||g()||h())&&(t.preventDefault(),t.stopImmediatePropagation(),l.wasActivatedByToggle&&!g()&&!v()&&(d()?u.setWasActivatedByToggle(!1):q()))},{capture:!0}),J.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){u.clearGrabbedBoxes();let e=l.activationTimestamp;f()&&!v()&&e!==null&&Date.now()-e>500&&q()}}),J.addWindowListener(`blur`,()=>{Vn(),d()&&(k(),u.releaseHold(),A())}),J.addWindowListener(`focus`,()=>{Ct=Date.now()}),J.addWindowListener(`focusin`,t=>{e.i(t,`data-react-grab`)&&t.stopPropagation()},{capture:!0});let vr=()=>{if(!(l.isTouchMode&&!d()&&!f())&&b()&&!v()&&!p()&&!m()&&l.contextMenuPosition===null&&l.frozenElements.length===0){let e=t.l(l.pointer.x,l.pointer.y);u.setDetectedElement(e)}},Y=null,X=null,yr=()=>{De(),vr(),u.incrementViewportVersion(),u.updateContextMenuPosition()};J.addWindowListener(`scroll`,yr,{capture:!0});let br=window.innerWidth,xr=window.innerHeight;J.addWindowListener(`resize`,()=>{let e=window.innerWidth,n=window.innerHeight;if(br>0&&xr>0){let r=e/br,i=n/xr,a=Math.abs(r-i)<t.ut,o=Math.abs(r-1)>t.ut;a&&o&&u.setPointer({x:l.pointer.x*r,y:l.pointer.y*i})}br=e,xr=n,yr()});let Sr=window.visualViewport;if(Sr){let{signal:e}=J;Sr.addEventListener(`resize`,yr,{signal:e}),Sr.addEventListener(`scroll`,yr,{signal:e})}let Cr=()=>{X===null&&(X=t.k(()=>{X=null,u.incrementViewportVersion()}))};e.F(()=>{if(c.store.theme.enabled&&(f()||g()||l.labelInstances.length>0||l.grabbedBoxes.length>0)){if(Y!==null)return;Y=window.setInterval(()=>{Cr()},100);return}Y!==null&&(window.clearInterval(Y),Y=null),X!==null&&(t.O(X),X=null)}),e.U(()=>{Y!==null&&window.clearInterval(Y),X!==null&&t.O(X)}),J.addDocumentListener(`copy`,t=>{v()||e.i(t,`data-react-grab-ignore-events`)||(V()||g())&&t.preventDefault()},{capture:!0}),e.U(()=>{J.abort(),M!==null&&window.clearTimeout(M),N&&window.clearTimeout(N),Et(),R&&window.clearTimeout(R),E!==null&&t.O(E),Gt.forEach(e=>window.clearTimeout(e)),Gt.clear(),Yt(),B.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,te?.(),te=null,Sn(null),Un.restore()});let wr=ue(r),Tr=e.I(()=>c.store.theme.enabled),Er=e.I(()=>c.store.theme.selectionBox.enabled),Dr=e.I(()=>c.store.theme.elementLabel.enabled),Or=e.I(()=>c.store.theme.dragBox.enabled),kr=e.I(()=>_()||de()&&!p()),Ar=e.I(()=>gn().length>0),jr=e.I(()=>!Tr()||!Er()||kr()?!1:Ar()?!0:cn()),Mr=e.I(()=>{let e=G();if(e)return t.j(e)||void 0});e.F(e.H(()=>Mt(),e=>{let n=++Ot;if(!e){Ft(void 0);return}t.S(e).then(e=>{Ot===n&&Ft(e??void 0)}).catch(()=>{Ot===n&&Ft(void 0)})}));let Nr=e.I(()=>l.contextMenuPosition!==null||!Dr()||kr()?!1:cn()),Pr=new Map,Fr=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?x(n):e.bounds,i=Pr.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 Pr.set(e.id,l),l},Ir=e.I(()=>{if(!Tr()||!c.store.theme.grabbedBoxes.enabled)return[];l.viewportVersion;let e=new Set(l.labelInstances.map(e=>e.id));for(let t of Pr.keys())e.has(t)||Pr.delete(t);return l.labelInstances.map(Fr)}),Lr=e.I(()=>!Tr()||!c.store.theme.grabbedBoxes.enabled?[]:(l.viewportVersion,l.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:x(e.element)}))),Rr=e.I(()=>Tr()&&Or()&&V()&&pn()),zr=e.I(()=>g()?`processing`:`hover`),Br=e.I(()=>{if(!Tr())return!1;let e=Dr(),t=v(),n=g(),r=V(),i=m(),a=!!W(),o=de(),s=p();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),Vr=e.I(()=>{l.viewportVersion;let e=l.contextMenuElement;return e?x(e):null}),Hr=e.I(()=>(l.viewportVersion,l.contextMenuPosition)),Ur=e.I(()=>{let e=l.contextMenuElement;if(!e)return;let n=l.frozenElements.length;return n>1?`${n} elements`:t.j(e)||void 0}),[Wr]=e.R(()=>({element:l.contextMenuElement,frozenCount:l.frozenElements.length}),async({element:e,frozenCount:n})=>{if(e&&!(n>1))return await t.S(e)??void 0}),[Gr]=e.R(()=>l.contextMenuElement,async e=>e?t.T(e):null),Kr=(e,t,n,r,i)=>async a=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??l.contextMenuPosition??l.pointer,d=ln(),f=Vr()??o,p=t.length>1,m=p?Ae(ze(d)):f,h=l.wasActivatedByToggle,g;if(g=p?d:f?[f]:s,u.hideContextMenu(),m){let i=p?m.x+m.width/2:c.x,o=Qt(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=ge(e,`Action failed`)}en(o,s,l)}else try{await a()}catch{}h?q():u.unfreeze()},qr=()=>{setTimeout(()=>{u.hideContextMenu()},0)},Jr=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:o,performWithFeedbackOptions:s,shouldDeferHideContextMenu:d,onBeforeCopy:p,onBeforePrompt:m,customEnterPromptMode:h}=e,g=l.frozenElements.length>0?l.frozenElements:[t],_=d?qr:u.hideContextMenu,v={element:t,elements:g,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:h??(()=>{$t(),m?.(),at(t,o.x,o.y),u.setPointer({x:o.x,y:o.y}),u.setFrozenElement(t),ot(),f()||Cn(),_()}),copy:()=>{p?.(),on({element:t,cursorX:o.x,selectedElements:g.length>1?g:void 0,shouldDeactivateAfter:l.wasActivatedByToggle}),_()},hooks:{transformHtmlContent:c.hooks.transformHtmlContent,onOpenFile:c.hooks.onOpenFile,transformOpenFileUrl:c.hooks.transformOpenFileUrl},performWithFeedback:Kr(t,g,i,a,s),hideContextMenu:_,cleanup:()=>{l.wasActivatedByToggle?q():u.unfreeze()}},y=c.hooks.transformActionContext(v);return{...v,...y}},Yr=e.I(()=>{let e=l.contextMenuElement;if(!e)return;let t=Gr(),n=l.contextMenuPosition??l.pointer;return Jr({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:Ur(),componentName:Wr(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{kt=null},customEnterPromptMode:()=>{$t(),u.clearInputText(),u.enterPromptMode(n,e),qr()}})}),Xr=()=>{setTimeout(()=>{u.hideContextMenu(),q()},0)},Z=()=>{for(let{boxId:e,labelId:t}of Ze)u.removeGrabbedBox(e),t&&u.removeLabelInstance(t);Ze=[]},Zr=(e,t,n,r)=>{if(t.length!==0)for(let[i,a]of t.entries()){let t=n[i],o=`${r}-${e.id}-${i}`;u.addGrabbedBox({id:o,bounds:a,createdAt:0,element:t});let s=null;i===0&&(s=`${r}-label-${e.id}`,u.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})}},Qr=(e,t)=>{let n=O(e);Zr(e,n.map(e=>x(e)),n,t)},$r=()=>{E!==null&&(t.O(E),E=null)},ei=e=>{$r();let n=()=>{e(),E=t.k(n)};n()},ti=()=>{if(!Ne)return null;let e=Ne.getBoundingClientRect(),t=bt(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}},ni=e=>{ei(()=>{let t=ti();t&&e(t)})},Q=()=>{si(),$(),$r(),Z(),ye(null),Xe(!1)},ri=()=>{$r(),xe(null)},ii=()=>{u.hideContextMenu(),ri(),ui(),_e(pt()),ni(ye)},ai=null,oi=null,si=()=>{ai!==null&&(clearTimeout(ai),ai=null)},$=()=>{oi!==null&&(clearTimeout(oi),oi=null)},ci=()=>{oi=setTimeout(()=>{oi=null,Q()},200)},li=()=>{Q(),ri(),ni(Ce)},ui=()=>{$r(),Ce(null)},di=()=>{Q(),ri(),ui()},fi=()=>{be()===null?(u.hideContextMenu(),Q(),ui(),ni(xe)):ri()},pi=e=>{$e({defaultAction:e})},mi=()=>{si(),$(),T()===null?(Z(),ii()):Ye()?(Z(),Xe(!1)):Q()},hi=n=>{me(n.content,{tagName:n.tagName,componentName:n.componentName??n.elementName,commentText:n.commentText});let r=rt(n);r&&($t(),t.k(()=>{if(!e.g(r))return;let t=x(r),i=Qt(t,n.tagName,n.componentName,`copied`,{element:r,mouseX:t.x+t.width/2});i&&Xt(i)}))},gi=e=>{Z(),v()&&(u.exitPromptMode(),u.clearInputText());let t=rt(e);if(e.commentText&&t){let{center:n}=je(t);u.enterPromptMode(n,t),u.setInputText(e.commentText)}else hi(e)},_i=()=>{Z();let n=w();if(n.length===0)return;let r=he(n.map(e=>e.content)),i=n[0];me(r,{componentName:i.componentName??i.tagName,entries:n.map(e=>({tagName:e.tagName,componentName:e.componentName??e.elementName,content:e.content,commentText:e.commentText}))}),_t()?Ci():li(),$t(),t.k(()=>{e.N(()=>{for(let e of n){let t=O(e);for(let n of t){let t=x(n),r=st(`label`);u.addLabelInstance({id:r,bounds:t,tagName:e.tagName,componentName:e.componentName,status:`copied`,createdAt:Date.now(),element:n,mouseX:t.x+t.width/2}),Xt(r)}}})})},vi=e=>{if(Z(),!e)return;let t=w().find(t=>t.id===e);t&&Qr(t,`comment-hover`)},yi=e=>{si(),Z(),e?($(),T()===null&&Se()===null&&(Si(),ai=setTimeout(()=>{ai=null,Xe(!0),ii()},200))):Ye()&&ci()},bi=e=>{e?$():Ye()&&ci()},xi=e=>{Z(),e?($(),Si()):Ye()&&ci()},Si=()=>{for(let e of w())Qr(e,`comment-all-hover`)},Ci=()=>{D.clear(),_e(gt()),Q()},wi=t=>{let n=l.labelInstances.find(e=>e.id===t);if(!n?.element||!e.g(n.element))return;let r=n.element,{center:i}=je(r),a={x:n.mouseX??i.x,y:i.y},o=n.elements&&n.elements.length>0?n.elements.filter(t=>e.g(t)):[r];setTimeout(()=>{f()||(u.setWasActivatedByToggle(!0),Cn()),u.setPointer(a),u.setFrozenElements(o),o.length>1&&n.bounds&&u.setFrozenDragRect(ke(n.bounds)),u.freeze(),u.showContextMenu(a,r)},0)};e.F(()=>{let e=c.store.theme.hue;e===0?wr.style.filter=``:wr.style.filter=`hue-rotate(${e}deg)`}),c.store.theme.enabled&&Promise.resolve().then(()=>require(`./renderer-Bhrtihjr.cjs`)).then(({ReactGrabRenderer:t})=>{a||(o=e.C(()=>e.P(t,{get selectionVisible(){return jr()},get selectionBounds(){return un()},get selectionBoundsMultiple(){return _n()},get selectionShouldSnap(){return l.frozenElements.length>0||gn().length>0},get inspectVisible(){return e.S(()=>!!F())()&&vn().length>0},get inspectBounds(){return vn()},get selectionElementsCount(){return l.frozenElements.length},get selectionFilePath(){return l.selectionFilePath??void 0},get selectionLineNumber(){return l.selectionLineNumber??void 0},get selectionTagName(){return Mr()},get selectionComponentName(){return Pt()},get selectionLabelVisible(){return Nr()},selectionLabelStatus:`idle`,get selectionActionCycleState(){return nr()},get selectionArrowNavigationState(){return ir()},onArrowNavigationSelect:Jn,get inspectNavigationState(){return lr()},onInspectSelect:ur,get labelInstances(){return Ir()},get dragVisible(){return Rr()},get dragBounds(){return hn()},get grabbedBoxes(){return Lr()},get mouseX(){return e.S(()=>l.frozenElements.length>1)()?void 0:yn().x},get isFrozen(){return p()||f()||de()},get inputValue(){return l.inputText},get isPromptMode(){return v()},onShowContextMenuInstance:wi,onLabelInstanceHoverChange:Zt,get onInputChange(){return u.setInputText},onInputSubmit:()=>void En(),onToggleExpand:An,get isPendingDismiss(){return ee()},get selectionLabelShakeCount(){return se()},onConfirmDismiss:On,onCancelDismiss:kn,get toolbarVisible(){return c.store.theme.toolbar.enabled},get isActive(){return f()},onToggleActive:jn,get enabled(){return b()},onToggleEnabled:In,get shakeCount(){return ie()},onToolbarStateChange:e=>{C(e),I.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(I.add(e),()=>{I.delete(e)}),onToolbarSelectHoverChange:pe,onToolbarRef:e=>{Ne=e},get contextMenuPosition(){return Hr()},get contextMenuBounds(){return Vr()},get contextMenuTagName(){return Ur()},get contextMenuComponentName(){return Wr()},get contextMenuHasFilePath(){return!!Gr()?.filePath},get actions(){return c.store.actions},get actionContext(){return Yr()},onContextMenuDismiss:Xr,onContextMenuHide:qr,get commentItems(){return w()},get commentsDisconnectedItemIds(){return it()},get commentItemCount(){return w().length},get clockFlashTrigger(){return Ve()},get commentsDropdownPosition(){return T()},get isCommentsPinned(){return e.S(()=>T()!==null)()&&!Ye()},onToggleComments:mi,onCopyAll:_i,onCopyAllHover:xi,onCommentsButtonHover:yi,onCommentItemSelect:gi,onCommentItemHover:vi,onCommentsCopyAll:_i,onCommentsCopyAllHover:xi,onCommentsClear:Ci,onCommentsDismiss:Q,onCommentsDropdownHover:bi,get toolbarMenuPosition(){return be()},get toolbarMenuActions(){return c.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return le()?.defaultAction??`comment`},onSetDefaultAction:pi,onToggleToolbarMenu:fi,onToolbarMenuDismiss:ri,get clearPromptPosition(){return Se()},onClearCommentsConfirm:()=>{vt(),ui(),Ci()},onClearCommentsCancel:ui}),wr))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let Ti={activate:()=>{u.setPendingCommentMode(!1),!f()&&b()&&Tn()},deactivate:()=>{(f()||g())&&q()},toggle:()=>{f()?q():b()&&Tn()},comment:Fn,isActive:()=>f(),isEnabled:()=>b(),setEnabled:e=>{e!==b()&&(re(e),e||wn())},getToolbarState:()=>e.t(),setToolbarState:t=>{let n=e.t(),r={edge:t.edge??n?.edge??`bottom`,ratio:t.ratio??n?.ratio??.5,collapsed:t.collapsed??n?.collapsed??!1,enabled:t.enabled??n?.enabled??!0,defaultAction:t.defaultAction??n?.defaultAction??`comment`};e.n(r),C(r),t.enabled!==void 0&&t.enabled!==b()&&re(t.enabled),I.forEach(e=>e(r))},onToolbarStateChange:e=>(I.add(e),()=>{I.delete(e)}),dispose:()=>{a=!0,St=!1,o?.(),si(),$(),$r(),I.clear(),i()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await rn(t)},getSource:async e=>{let n=await t.T(e);return n?{filePath:n.filePath,lineNumber:n.lineNumber,componentName:n.componentName}:null},getStackContext:t.w,getState:()=>({isActive:f(),isDragging:m(),isCopying:g(),isPromptMode:v(),isSelectionBoxVisible:!!jr(),isDragBoxVisible:!!Rr(),targetElement:U(),dragBounds:hn()??null,grabbedBoxes:[...bn()],labelInstances:[...xn()],selectionFilePath:l.selectionFilePath,toolbarState:le()}),setOptions:e=>{c.setOptions(e)},registerPlugin:e=>{c.register(e,Ti)},unregisterPlugin:e=>{c.unregister(e)},getPlugins:()=>c.getPluginNames(),getDisplayName:t.y};for(let e of xt)c.register(e,Ti);return setTimeout(()=>{t.v(!0)},t.q),Ti})};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return it}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return Ct}});