grab 0.1.35 → 0.1.37

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 (107) hide show
  1. package/dist/copy-content-3pnWacho.d.cts +218 -0
  2. package/dist/copy-content-DH6fBB50.d.ts +218 -0
  3. package/dist/core/index.cjs +1 -1
  4. package/dist/core/index.d.cts +2 -2
  5. package/dist/core/index.d.ts +2 -2
  6. package/dist/core/index.js +1 -1
  7. package/dist/core-B-Khfj_M.cjs +11 -0
  8. package/dist/core-B1AFUjSC.cjs +11 -0
  9. package/dist/core-B9aCRu_r.cjs +4374 -0
  10. package/dist/core-BNG77P9u.js +20 -0
  11. package/dist/core-BaM4pWDg.cjs +20 -0
  12. package/dist/core-BgAHCKe7.js +4492 -0
  13. package/dist/core-BidH6Dr_.js +11 -0
  14. package/dist/core-BnZu88Zq.js +20 -0
  15. package/dist/core-BoXxu65H.js +20 -0
  16. package/dist/core-Bw1MUegr.cjs +4374 -0
  17. package/dist/core-C-uBKPnx.js +20 -0
  18. package/dist/core-CMd2PuB-.cjs +20 -0
  19. package/dist/core-CN7fVz1T.cjs +4377 -0
  20. package/dist/core-C_moHA9D.js +20 -0
  21. package/dist/core-CoEZwalZ.js +4489 -0
  22. package/dist/core-Cyu0n7SO.js +20 -0
  23. package/dist/core-DMVlP9g5.js +20 -0
  24. package/dist/core-DceltyXc.js +11 -0
  25. package/dist/core-XXPjZNnn.cjs +20 -0
  26. package/dist/core-_t0msYhT.cjs +20 -0
  27. package/dist/core-eVrmPJ2u.cjs +20 -0
  28. package/dist/core-epcog0yL.cjs +20 -0
  29. package/dist/core-foLKkb5_.cjs +20 -0
  30. package/dist/core-kGODXK-N.js +4489 -0
  31. package/dist/create-element-selector-B5J9_3Fw.cjs +9 -0
  32. package/dist/create-element-selector-BEaSanPh.cjs +9 -0
  33. package/dist/create-element-selector-BR_zDrcL.js +296 -0
  34. package/dist/create-element-selector-C3VxTCEX.js +9 -0
  35. package/dist/create-element-selector-CA_x0jT4.cjs +9 -0
  36. package/dist/create-element-selector-CE8DT97A.cjs +9 -0
  37. package/dist/create-element-selector-CIj_4oMe.js +9 -0
  38. package/dist/create-element-selector-C_6sG1Bd.js +296 -0
  39. package/dist/create-element-selector-ChuWL5x4.cjs +9 -0
  40. package/dist/create-element-selector-CufggNcJ.js +9 -0
  41. package/dist/create-element-selector-CyDMEkYV.js +9 -0
  42. package/dist/create-element-selector-D1FizysC.js +9 -0
  43. package/dist/create-element-selector-D4_cMOfX.cjs +307 -0
  44. package/dist/create-element-selector-DXGzc20x.js +9 -0
  45. package/dist/create-element-selector-Dw4Hh5vX.cjs +307 -0
  46. package/dist/create-element-selector-pHsYuaOR.cjs +9 -0
  47. package/dist/freeze-updates-1bWq0iRj.cjs +3340 -0
  48. package/dist/freeze-updates-7yZ9p4Jb.cjs +52 -0
  49. package/dist/freeze-updates-B2R6sKrS.js +52 -0
  50. package/dist/freeze-updates-BMHg9jtm.js +52 -0
  51. package/dist/freeze-updates-BUIl_I9a.js +52 -0
  52. package/dist/freeze-updates-CyZYvC-n.cjs +52 -0
  53. package/dist/freeze-updates-D7wc1FFo.js +52 -0
  54. package/dist/freeze-updates-DC22uWxG.cjs +3347 -0
  55. package/dist/freeze-updates-DFjQ3htO.js +52 -0
  56. package/dist/freeze-updates-DIifOZze.js +2921 -0
  57. package/dist/freeze-updates-D_ae-e4T.js +2920 -0
  58. package/dist/freeze-updates-DdIqMW8Y.cjs +52 -0
  59. package/dist/freeze-updates-DvAOKSWG.cjs +52 -0
  60. package/dist/freeze-updates-F-dFqbvY.cjs +52 -0
  61. package/dist/freeze-updates-W92Tv24a.cjs +52 -0
  62. package/dist/freeze-updates-pl4bncJb.js +52 -0
  63. package/dist/index-CkMIwkYj.d.ts +413 -0
  64. package/dist/index-DR5AjI5S.d.cts +413 -0
  65. package/dist/index.cjs +1 -1
  66. package/dist/index.d.cts +2 -2
  67. package/dist/index.d.ts +2 -2
  68. package/dist/index.global.js +15 -24
  69. package/dist/index.js +1 -1
  70. package/dist/primitives.cjs +2 -2
  71. package/dist/primitives.d.cts +1 -1
  72. package/dist/primitives.d.ts +1 -1
  73. package/dist/primitives.js +2 -2
  74. package/dist/renderer-9DVex4g4.cjs +9 -0
  75. package/dist/renderer-B65BudlT.cjs +9 -0
  76. package/dist/renderer-BHtpQ-BY.cjs +9 -0
  77. package/dist/renderer-BRENw6lS.cjs +3205 -0
  78. package/dist/renderer-Bxc3RS-J.cjs +3205 -0
  79. package/dist/renderer-CD-Ju8A3.js +3205 -0
  80. package/dist/renderer-CiIPsSof.js +9 -0
  81. package/dist/renderer-D0a4h1bK.cjs +9 -0
  82. package/dist/renderer-D3dvNcvm.cjs +9 -0
  83. package/dist/renderer-DQoIdFmy.js +9 -0
  84. package/dist/renderer-Dc20mGte.js +9 -0
  85. package/dist/renderer-DmNPMFh8.js +3205 -0
  86. package/dist/renderer-Dnyqr-yC.cjs +9 -0
  87. package/dist/renderer-Q2ZCGKZI.js +9 -0
  88. package/dist/renderer-gEdmDcCb.js +9 -0
  89. package/dist/renderer-kDb-jNJX.js +9 -0
  90. package/dist/state-BAZpSiUU.js +9 -0
  91. package/dist/state-BPvTpQtD.js +9 -0
  92. package/dist/state-Bn3fhsQ8.cjs +9 -0
  93. package/dist/state-BqjLpM7A.js +9 -0
  94. package/dist/state-BwCmdtcN.cjs +1306 -0
  95. package/dist/state-CFntkBxv.js +1696 -0
  96. package/dist/state-CLrWsl_z.cjs +9 -0
  97. package/dist/state-CR6-uxRM.cjs +9 -0
  98. package/dist/state-CRSyg2Ji.cjs +9 -0
  99. package/dist/state-DC5RpAo4.js +9 -0
  100. package/dist/state-DQNAhhCY.cjs +1306 -0
  101. package/dist/state-Dgr3LbNH.cjs +9 -0
  102. package/dist/state-Ds-1VLFt.js +9 -0
  103. package/dist/state-Dt16Hkud.js +9 -0
  104. package/dist/state-LuyoMylH.js +1696 -0
  105. package/dist/state-x2vKMZfm.cjs +9 -0
  106. package/dist/styles.css +1 -1
  107. package/package.json +2 -2
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license MIT
3
+ *
4
+ * Copyright (c) 2025 Aiden Bai
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import{A as e,C as t,D as n,F as r,I as i,M as a,N as o,O as s,P as c,R as l,S as u,a as d,c as f,g as p,h as m,i as h,k as g,l as _,n as v,o as ee,r as y,s as te,t as ne,z as b}from"./state-DC5RpAo4.js";import{A as re,C as ie,E as ae,F as oe,J as se,M as ce,N as le,P as x,R as ue,S,T as de,U as fe,X as pe,Y as C,Z as w,_ as me,a as he,b as T,c as ge,d as _e,dt as E,f as ve,g as ye,h as D,i as be,j as xe,k as Se,l as Ce,m as O,o as we,p as k,r as Te,s as Ee,t as De,u as Oe,ut as ke,v as Ae,y as A}from"./freeze-updates-pl4bncJb.js";import{n as je,t as Me}from"./create-element-selector-CyDMEkYV.js";var Ne=`/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
10
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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}}}@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;--spacing:4px;--font-weight-medium:500;--radius-sm:4px;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}}@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-0{top:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.z-1{z-index:1}.z-10{z-index:10}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.-m-0\\.5{margin:calc(var(--spacing) * -.5)}.m-0{margin:calc(var(--spacing) * 0)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.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)}.h-0{height:calc(var(--spacing) * 0)}.h-\\[17px\\]{height:17px}.h-fit{height:fit-content}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-4{min-height:calc(var(--spacing) * 4)}.w-0{width:calc(var(--spacing) * 0)}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\\[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}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.interactive-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}@media (hover:hover) and (pointer:fine){.interactive-scale:hover{transform:scale(1.05)}}.interactive-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.96)}.press-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.press-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.97)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.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{gap:calc(var(--spacing) * 0)}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-\\[5px\\]{gap:5px}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-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-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-transparent{background-color:#0000}.p-0{padding:calc(var(--spacing) * 0)}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-\\[3px\\]{padding-inline:3px}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-px{padding-block:1px}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.text-left{text-align:left}.font-sans{font-family:var(--font-sans)}.text-\\[11px\\]{font-size:11px}.text-\\[13px\\]{font-size:13px}.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)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.wrap-break-word{overflow-wrap:break-word}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.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-50{opacity:.5}.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)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-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\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-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,)}.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\\]{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\\]{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-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\]{transition-property:top,left,width,height,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-drawer{--tw-ease:var(--ease-drawer);transition-timing-function:var(--ease-drawer)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.ease-spring{--tw-ease:var(--ease-spring);transition-timing-function:var(--ease-spring)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}@media (hover:hover){.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:opacity-40:disabled{opacity:.4}}:host{all:initial;direction:ltr}:host,[data-rg-theme=dark]{--rg-panel-bg:#161616;--rg-text-primary:#fff;--rg-text-secondary:#a7a7a7;--rg-surface-hover:#ffffff1a;--rg-surface-active:#ffffff26;--rg-border-subtle:#ffffff1a;--rg-border-button:#fff3;--rg-submit-bg:#fff;--rg-submit-fg:#161616;--rg-error-text:#f87171;--rg-error-bg:#3d1515;--rg-error-bg-hover:#4d1f1f;--rg-shadow:0 2px 8px #00000014;--rg-drop-shadow:drop-shadow(0px 2px 8px #00000014);--rg-shimmer-from:#a1a1aa;--rg-shimmer-to:#d4d4d8;--rg-text-primary-85:#ffffffd9}@media (prefers-color-scheme:dark){:host:not([data-rg-theme]){--rg-panel-bg:#fff;--rg-text-primary:#171717;--rg-text-secondary:#737373;--rg-surface-hover:#0000000d;--rg-surface-active:#00000014;--rg-border-subtle:#00000014;--rg-border-button:#00000026;--rg-submit-bg:#171717;--rg-submit-fg:#fff;--rg-error-text:#dc2626;--rg-error-bg:#fee2e2;--rg-error-bg-hover:#fecaca;--rg-shadow:0 2px 12px #0000001a;--rg-drop-shadow:drop-shadow(0px 2px 12px #0000001a);--rg-shimmer-from:#71717a;--rg-shimmer-to:#a1a1aa;--rg-text-primary-85:#171717d9}}:host([data-rg-theme=light]),[data-rg-theme=light]{--rg-panel-bg:#fff;--rg-text-primary:#171717;--rg-text-secondary:#737373;--rg-surface-hover:#0000000d;--rg-surface-active:#00000014;--rg-border-subtle:#00000014;--rg-border-button:#00000026;--rg-submit-bg:#171717;--rg-submit-fg:#fff;--rg-error-text:#dc2626;--rg-error-bg:#fee2e2;--rg-error-bg-hover:#fecaca;--rg-shadow:0 2px 12px #0000001a;--rg-drop-shadow:drop-shadow(0px 2px 12px #0000001a);--rg-shimmer-from:#71717a;--rg-shimmer-to:#a1a1aa;--rg-text-primary-85:#171717d9}@keyframes rg-badge-slide{0%{transform:translate(-8.2px,12.4px)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){[data-react-grab-unread-indicator],[data-react-grab-unread-indicator] *{transition:none!important;animation:none!important}}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-3px)}30%{transform:translate(3px)}45%{transform:translate(-3px)}60%{transform:translate(3px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}@keyframes success-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes icon-loader-spin{0%{opacity:1}50%{opacity:.5}to{opacity:.2}}.icon-loader-bar{animation:.5s linear infinite icon-loader-spin}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer-text{background:linear-gradient(90deg, var(--rg-shimmer-from) 0%, var(--rg-shimmer-to) 25%, var(--rg-shimmer-from) 50%, var(--rg-shimmer-to) 75%, var(--rg-shimmer-from) 100%);color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:2.5s linear infinite shimmer}@keyframes clock-flash{0%{transform:scale(1)}25%{transform:scale(1.2)}50%{transform:scale(.92)}75%{transform:scale(1.05)}to{transform:scale(1)}}.animate-clock-flash{will-change:transform;animation:.4s ease-out clock-flash}.animate-shake{will-change:transform;animation:.3s ease-out shake}.animate-success-pop{will-change:transform, opacity;animation:.35s cubic-bezier(.34,1.56,.64,1) both success-pop}@supports (-webkit-touch-callout:none){textarea[data-react-grab-input]{font-size:16px}}@property --tw-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}`;const Pe=Symbol(`store-raw`),Fe=Symbol(`store-node`),j=Symbol(`store-has`),M=Symbol(`store-self`);function Ie(e){let t=e[u];if(!t&&(Object.defineProperty(e,u,{value:t=new Proxy(e,He)}),!Array.isArray(e))){let n=Object.keys(e),r=Object.getOwnPropertyDescriptors(e);for(let i=0,a=n.length;i<a;i++){let a=n[i];r[a].get&&Object.defineProperty(e,a,{enumerable:r[a].enumerable,get:r[a].get.bind(t)})}}return t}function N(e){let t;return typeof e==`object`&&!!e&&(e[u]||!(t=Object.getPrototypeOf(e))||t===Object.prototype||Array.isArray(e))}function Le(e,t=new Set){let n,r,i,a;if(n=e!=null&&e[Pe])return n;if(!N(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=Le(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=Le(i,t))!==i&&(e[a]=r))}return e}function Re(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function ze(e,t,n){if(e[t])return e[t];let[r,i]=c(n,{equals:!1,internal:!0});return r.$=i,e[t]=r}function P(e,t){let n=Reflect.getOwnPropertyDescriptor(e,t);return!n||n.get||!n.configurable||t===u||t===Fe?n:(delete n.value,delete n.writable,n.get=()=>e[u][t],n)}function Be(e){r()&&ze(Re(e,Fe),M)()}function Ve(e){return Be(e),Reflect.ownKeys(e)}const He={get(e,n,i){if(n===Pe)return e;if(n===u)return i;if(n===t)return Be(e),i;let a=Re(e,Fe),o=a[n],s=o?o():e[n];if(n===Fe||n===j||n===`__proto__`)return s;if(!o){let t=Object.getOwnPropertyDescriptor(e,n);r()&&(typeof s!=`function`||e.hasOwnProperty(n))&&!(t&&t.get)&&(s=ze(a,n,s)())}return N(s)?Ie(s):s},has(e,n){return n===Pe||n===u||n===t||n===Fe||n===j||n===`__proto__`?!0:(r()&&ze(Re(e,j),n)(),n in e)},set(){return!0},deleteProperty(){return!0},ownKeys:Ve,getOwnPropertyDescriptor:P};function Ue(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[j]&&e[j][t]&&i!==void 0&&e[j][t].$()):(e[t]=n,e[j]&&e[j][t]&&i===void 0&&e[j][t].$());let o=Re(e,Fe),s;if((s=ze(o,t,i))&&s.$(()=>n),Array.isArray(e)&&e.length!==a){for(let t=e.length;t<a;t++)(s=o[t])&&s.$();(s=ze(o,`length`,a))&&s.$(e.length)}(s=o[M])&&s.$()}function We(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];Ue(e,i,t[i])}}function Ge(e,t){if(typeof t==`function`&&(t=t(e)),t=Le(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&&Ue(e,n,r)}Ue(e,`length`,r)}else We(e,t)}function Ke(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++)Ke(e,[r[i]].concat(t),n);return}else if(o&&a===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&Ke(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)Ke(e,[r].concat(t),n);return}else if(t.length>1){Ke(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=Le(a),r===void 0||N(i)&&N(a)&&!Array.isArray(a)?We(i,a):Ue(e,r,a))}function qe(...[e,t]){let r=Le(e||{}),i=Array.isArray(r),a=Ie(r);function o(...e){n(()=>{i&&e.length===1?Ge(r,e[0]):Ke(r,e)})}return[a,o]}const Je=new WeakMap,Ye={get(e,t){if(t===Pe)return e;let n=e[t],r;return N(n)?Je.get(n)||(Je.set(n,r=new Proxy(n,Ye)),r):n},set(e,t,n){return Ue(e,t,Le(n)),!0},deleteProperty(e,t){return Ue(e,t,void 0,!0),!0}};function Xe(e){return t=>{if(N(t)){let n;(n=Je.get(t))||Je.set(t,n=new Proxy(t,Ye)),e(n)}return t}}const Ze=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),Qe=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return Ze(n)?n:null},$e=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=Qe(e);if(t===null)return null;r.push(t)}return r},et=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,tt=e=>e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[15]===1,nt=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=$e(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,tt(n)?`none`:`matrix3d(${n[0]}, ${n[1]}, ${n[2]}, ${n[3]}, ${n[4]}, ${n[5]}, ${n[6]}, ${n[7]}, ${n[8]}, ${n[9]}, ${n[10]}, ${n[11]}, 0, 0, 0, ${n[15]})`}else{let t=e.length-1,n=$e(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return et(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},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 F=new WeakMap,it=new WeakMap,I=new WeakMap;const at=()=>{F=new WeakMap,it=new WeakMap,I=new WeakMap},ot=(e,t)=>{let n=it.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return it.set(e,{transform:i,timestamp:t}),i},st=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=ot(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`},ct=(e,t,n)=>{let r=I.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return I.set(e,{borderRadius:i,timestamp:n}),i},L=(e,t,n,r)=>{let i=st(e,n.transform,r),a=ct(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}},R=e=>{let t=performance.now(),n=F.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=L(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return F.set(e,{bounds:r,timestamp:t}),r},z=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),B=e=>({selectionInteractionLockDepth:0,wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:e.keyHoldDuration,dragStart:{x:w,y:w},copyStart:{x:w,y:w},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,lastCopiedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:``,grabbedBoxes:[],labelInstances:[],isTouchMode:!1,theme:e.theme,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),lt=e=>{let[t,r]=qe(B(e)),[i,a]=c({x:w,y:w}),[o,s]=c(0),[l,u]=c({state:`idle`}),d=e=>{r(Xe(t=>{e(t),t.frozenElement=t.frozenElements.length>0?t.frozenElements[0]:null,t.frozenDragRect=null}))},f=()=>{d(e=>{e.frozenElements=[]})},p=e=>{u(t=>t.state===`active`?{...t,phase:e}:t)},m={startHold:e=>{e!==void 0&&r(`keyHoldDuration`,e),u({state:`holding`,startedAt:Date.now()})},releaseHold:()=>{l().state===`holding`&&u({state:`idle`})},activate:()=>{n(()=>{u({state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1}),r(`activationTimestamp`,Date.now()),r(`previouslyFocusedElement`,document.activeElement)})},deactivate:()=>{n(()=>{u({state:`idle`}),r(Xe(e=>{e.wasActivatedByToggle=!1,e.pendingCommentMode=!1,e.inputText=``,e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null,e.activationTimestamp=null,e.previouslyFocusedElement=null,e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null,e.lastCopiedElement=null}))})},toggle:()=>{t.activationTimestamp===null?(r(`wasActivatedByToggle`,!0),m.activate()):m.deactivate()},freeze:()=>{if(l().state===`active`){let e=t.frozenElement??t.detectedElement;e&&r(`frozenElement`,e),p(`frozen`)}},unfreeze:()=>{l().state===`active`&&n(()=>{r(Xe(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),p(`hovering`)})},startDrag:(e,t)=>{l().state===`active`&&n(()=>{t||f(),r(`dragStart`,{x:e.x+window.scrollX,y:e.y+window.scrollY}),p(`dragging-select`)})},startDragReposition:()=>{let e=l();e.state===`active`&&e.phase===`dragging-select`&&p(`dragging-reposition`)},stopDragReposition:()=>{let e=l();e.state===`active`&&e.phase===`dragging-reposition`&&p(`dragging-select`)},shiftDragStart:e=>{let t=l();t.state===`active`&&t.phase===`dragging-reposition`&&r(`dragStart`,t=>({x:t.x+e.x,y:t.y+e.y}))},endDrag:()=>{let e=l();e.state===`active`&&(e.phase===`dragging-select`||e.phase===`dragging-reposition`)&&n(()=>{r(`dragStart`,{x:w,y:w}),p(`justDragged`)})},cancelDrag:()=>{let e=l();e.state===`active`&&(e.phase===`dragging-select`||e.phase===`dragging-reposition`)&&n(()=>{r(`dragStart`,{x:w,y:w}),p(`hovering`)})},finishJustDragged:()=>{let e=l();e.state===`active`&&e.phase===`justDragged`&&p(`hovering`)},startCopy:()=>{let e=l().state===`active`;u({state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:e=>{let t=l(),i=t.state===`copying`?t.wasActive:!1;n(()=>{e&&r(`lastCopiedElement`,e),u({state:`justCopied`,copiedAt:Date.now(),wasActive:i})})},finishJustCopied:()=>{let e=l();e.state===`justCopied`&&(e.wasActive&&!t.wasActivatedByToggle?n(()=>{f(),u({state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})}):m.deactivate())},enterPromptMode:(e,t)=>{let{x:i}=z(R(t));n(()=>{r(`copyStart`,e),r(`copyOffsetFromCenterX`,e.x-i),a(e),r(`frozenElement`,t),r(`wasActivatedByToggle`,!0),l().state===`active`?u(e=>e.state===`active`?{...e,isPromptMode:!0,phase:`frozen`}:e):(u({state:`active`,phase:`frozen`,isPromptMode:!0,isPendingDismiss:!1}),r(`activationTimestamp`,Date.now()),r(`previouslyFocusedElement`,document.activeElement))})},exitPromptMode:()=>{u(e=>e.state===`active`?{...e,isPromptMode:!1,isPendingDismiss:!1}:e)},setInputText:e=>{r(`inputText`,e)},clearInputText:()=>{r(`inputText`,``)},setPendingDismiss:e=>{u(t=>t.state===`active`?{...t,isPendingDismiss:e}:t)},setPointer:e=>{a(e)},setDetectedElement:e=>{r(`detectedElement`,e)},setFrozenElement:e=>{d(t=>{t.frozenElements=[e]})},setFrozenElements:e=>{d(t=>{t.frozenElements=e})},toggleFrozenElement:e=>{d(t=>{let n=t.frozenElements.indexOf(e);n>=0?t.frozenElements.splice(n,1):t.frozenElements.push(e)})},addFrozenElements:e=>{d(t=>{for(let n of e)t.frozenElements.includes(n)||t.frozenElements.push(n)})},setFrozenDragRect:e=>{r(`frozenDragRect`,e)},setCopyStart:(e,t)=>{let{x:n}=z(R(t));r(`copyStart`,e),r(`copyOffsetFromCenterX`,e.x-n)},setLastGrabbed:e=>{r(`lastGrabbedElement`,e)},clearLastCopied:()=>{r(`lastCopiedElement`,null)},setWasActivatedByToggle:e=>{r(`wasActivatedByToggle`,e)},setPendingCommentMode:e=>{r(`pendingCommentMode`,e)},setTouchMode:e=>{r(`isTouchMode`,e)},incrementSelectionInteractionLockDepth:()=>{r(`selectionInteractionLockDepth`,e=>e+1)},decrementSelectionInteractionLockDepth:()=>{r(`selectionInteractionLockDepth`,e=>Math.max(0,e-1))},setSelectionSource:(e,t)=>{n(()=>{r(`selectionFilePath`,e),r(`selectionLineNumber`,t)})},incrementViewportVersion:()=>{s(e=>e+1)},addGrabbedBox:e=>{r(`grabbedBoxes`,t=>[...t,e])},removeGrabbedBox:e=>{r(`grabbedBoxes`,t=>t.filter(t=>t.id!==e))},clearGrabbedBoxes:()=>{r(`grabbedBoxes`,[])},addLabelInstance:e=>{r(`labelInstances`,t=>[...t,e])},updateLabelInstance:(e,i,a)=>{let o=t.labelInstances.findIndex(t=>t.id===e);o!==-1&&n(()=>{r(`labelInstances`,o,`status`,i),a!==void 0&&r(`labelInstances`,o,`errorMessage`,a)})},removeLabelInstance:e=>{r(`labelInstances`,t=>t.filter(t=>t.id!==e))},clearLabelInstances:()=>{r(`labelInstances`,[])},showContextMenu:(e,t)=>{let{x:i,y:a}=z(R(t));n(()=>{r(`contextMenuPosition`,e),r(`contextMenuElement`,t),r(`contextMenuClickOffset`,{x:e.x-i,y:e.y-a})})},hideContextMenu:()=>{n(()=>{r(`contextMenuPosition`,null),r(`contextMenuElement`,null),r(`contextMenuClickOffset`,null)})},updateContextMenuPosition:()=>{let e=t.contextMenuElement,n=t.contextMenuClickOffset;if(!e||!n||!_(e))return;let{x:i,y:a}=z(R(e));r(`contextMenuPosition`,{x:i+n.x,y:a+n.y})}};return{store:t,actions:m,pointer:i,viewportVersion:o,current:l}},ut=`data-react-grab`,dt=e=>{if(!document.body)return;let t=document.querySelectorAll(`[${ut}]`);for(let n of t)n!==e&&n.parentNode!==e&&(n.shadowRoot||n.remove());document.body.appendChild(e)},ft=e=>{if(document.body){dt(e);return}let t=()=>{document.removeEventListener(`DOMContentLoaded`,t),dt(e)};document.addEventListener(`DOMContentLoaded`,t,{once:!0})},pt=e=>{let t=document.querySelectorAll(`[${ut}]`);for(let e of t){let t=e.shadowRoot?.querySelector(`[${ut}]`);if(t instanceof HTMLDivElement)return{root:t,host:e};e.remove()}let n=document.createElement(`div`);n.setAttribute(ut,`true`),ce(n),n.style.zIndex=String(E),n.style.position=`fixed`,n.style.inset=`0`,n.style.pointerEvents=`none`,n.style.contain=`strict`;let r=n.attachShadow({mode:`open`}),i=document.createElement(`style`),a=le();a&&(i.nonce=a),i.textContent=`@import url("https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap");\n${e??``}`,r.appendChild(i);let o=document.createElement(`div`);return o.setAttribute(ut,`true`),r.appendChild(o),ft(n),setTimeout(()=>{dt(n)},C),{root:o,host:n}},V=[`data-theme`,`data-mode`,`data-color-scheme`,`data-bs-theme`,`data-mui-color-scheme`],H=[{attribute:`data-dark`,theme:`dark`},{attribute:`data-light`,theme:`light`}],U=/rgba?\(\s*(\d+(?:\.\d+)?)\s*[,\s]\s*(\d+(?:\.\d+)?)\s*[,\s]\s*(\d+(?:\.\d+)?)(?:\s*[,/]\s*(\d+(?:\.\d+)?))?\s*\)/,W=e=>{if(e===`transparent`)return!0;let t=e.match(U);if(!t)return!1;let n=t[4];return n!==void 0&&Number(n)===0},mt=(e,t,n)=>{let[r,i,a]=[e,t,n].map(e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4});return .2126*r+.7152*i+.0722*a},ht=()=>{let e=document.body??document.documentElement,t=getComputedStyle(e).backgroundColor;if(!t||W(t))return null;let n=t.match(U);return n?mt(Number(n[1]),Number(n[2]),Number(n[3]))<.18?`dark`:`light`:null},gt=e=>{let t=e.toLowerCase();return t===`dark`?`dark`:t===`light`?`light`:null},_t=e=>{let t=e.trim().toLowerCase();return!t||t===`normal`||t===`auto`?null:t.split(/\s+/).find(e=>e===`dark`||e===`light`)??null},vt=()=>{let e=document.documentElement;if(e.classList.contains(`dark`))return`dark`;if(e.classList.contains(`light`))return`light`;for(let t of V){let n=e.getAttribute(t);if(!n)continue;let r=gt(n);if(r)return r}for(let{attribute:t,theme:n}of H)if(e.hasAttribute(t))return n;let t=e.style.colorScheme||getComputedStyle(e).colorScheme;if(t){let e=_t(t);if(e)return e}return ht()||(window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`)},yt=e=>e===`dark`?`light`:`dark`,bt={attributes:!0,attributeFilter:[`class`,`style`,...V,...H.map(({attribute:e})=>e)]},xt=(e,t)=>{let n=null,r=null,i=()=>{let r=yt(vt());return r!==n&&(n=r,e.setAttribute(`data-rg-theme`,r),t?.(r)),r},a=()=>{r===null&&(r=re(()=>{r=null,i()}))},o=i(),s=new MutationObserver(a);s.observe(document.documentElement,bt);let c=null;document.body?s.observe(document.body,bt):(c=new MutationObserver(()=>{document.body&&(c.disconnect(),c=null,s.observe(document.body,bt),i())}),c.observe(document.documentElement,{childList:!0}));let l=window.matchMedia(`(prefers-color-scheme: dark)`);return l.addEventListener(`change`,a),{theme:o,cleanup:()=>{c?.disconnect(),s.disconnect(),l.removeEventListener(`change`,a),r!==null&&Se(r)}}},G=()=>{},K=()=>({activate:G,deactivate:G,toggle:G,comment:G,isActive:()=>!1,isEnabled:()=>!1,setEnabled:G,getToolbarState:()=>null,setToolbarState:G,onToolbarStateChange:()=>G,dispose:G,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:G,registerPlugin:G,unregisterPlugin:G,getPlugins:()=>[],getDisplayName:()=>null}),St=()=>{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})}}},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=>`[${S(e)}${(await de(e)).replace(/\n\s+/g,` `)}]`,Et=async e=>{let t=await Promise.all(e.map(Tt)),n=[...new Set(t)];return n.length>0?n.join(`
11
+ `):null},Dt=async(e,t,n,r)=>{await t.onBeforeCopy(n);let i=!1,a=``;try{let o=e.getContent?await e.getContent(n):await Et(n);if(o?.trim()){let s=await t.transformCopyContent(o,n);a=r?`${r}\n${s}`:s,i=je(a,{componentName:e.componentName})}}catch(e){t.onCopyError(wt(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},Ot=(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)},kt=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,At=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}),jt=e=>{if(e.width<=0||e.height<=0)return[];let t=window.innerWidth,n=window.innerHeight,r=e.x,i=e.y,a=e.x+e.width,o=e.y+e.height,s=r+e.width/2,c=i+e.height/2,l=d(Math.ceil(e.width/32),3,20),u=d(Math.ceil(e.height/32),3,20),f=l*u,p=f>100?Math.sqrt(100/f):1,m=d(Math.floor(l*p),3,20),h=d(Math.floor(u*p),3,20),g=new Set,_=[],v=(e,r)=>{let i=d(Math.round(e),0,t-1),a=d(Math.round(r),0,n-1),o=`${i}:${a}`;g.has(o)||(g.add(o),_.push({x:i,y:a}))};v(r+1,i+1),v(a-1,i+1),v(r+1,o-1),v(a-1,o-1),v(s,i+1),v(s,o-1),v(r+1,c),v(a-1,c),v(s,c);for(let t=0;t<m;t+=1){let n=r+(t+.5)/m*e.width;for(let t=0;t<h;t+=1)v(n,i+(t+.5)/h*e.height)}return _},Mt=(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=jt(e);O();try{for(let e of a){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)i.add(e)}}finally{k()}let o=[];for(let e of i)!n&&me(e)||t(e)&&o.push(e);let s=new Map;for(let e of o)s.set(e,e.getBoundingClientRect());let c=[];for(let e of o){let t=s.get(e);if(t.width<=0||t.height<=0)continue;let i={left:t.left,top:t.top,right:t.left+t.width,bottom:t.top+t.height};if(n){let n=Ot(r,i),a=t.width*t.height;a>0&&n/a>=.75&&c.push(e)}else kt(i,r)&&c.push(e)}return At(c)},Nt=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),Pt=(e,t,n=!0)=>Nt(Mt(e,t,n)),Ft=(e,t)=>e.width<=0?0:d((t.x-e.x)/e.width,0,1),It=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}},Lt=()=>{at(),Oe(),D()},Rt=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),zt=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Bt=e=>({...e,borderRadius:`0px`,transform:`none`}),Vt=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),Ht=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:Vt.has(e),Ut=(e,t)=>{if(!e||!t)return!1;let n=e.toLowerCase();return t===`Space`?n===`space`||n===` `:t.startsWith(`Key`)?t.slice(3).toLowerCase()===n:t.startsWith(`Digit`)?t.slice(5)===n:!1},Wt={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},Gt=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=Wt[e];t?n[t]=!0:n.key=e}return n},Kt=e=>{if(typeof e==`function`)return e;let t=Gt(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||Ut(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}},q=e=>!e||typeof e==`function`?{metaKey:h(),ctrlKey:!h(),shiftKey:!1,altKey:!1,key:null}:Gt(e),qt=(e,t)=>{if(t.activationKey)return Kt(t.activationKey)(e);let n=(h()?e.metaKey:e.ctrlKey)&&!e.shiftKey&&!e.altKey;return!!(e.key&&n&&Ht(e.key,e.code))},Jt=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}},Yt={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},J=(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}}),Xt={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},Zt=(e={})=>{let t=new Map,n={},[r,i]=qe({theme:Yt,options:{...Xt,...e},actions:[]}),a=()=>{let r=Yt,a={...Xt,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=J(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`,`activationKey`,`getContent`,`freezeReactUpdates`],c=e=>{for(let t of s)e[t]!==void 0&&o(t,e[t])},l=(e,n)=>{t.has(e.name)&&u(e.name);let r=e.setup?.(n,_)??{};e.theme&&(r.theme=r.theme?J(J(Yt,e.theme),r.theme):e.theme),e.actions&&(r.actions=[...e.actions,...r.actions??[]]),e.hooks&&(r.hooks=r.hooks?{...e.hooks,...r.hooks}:e.hooks),e.options&&(r.options=r.options?{...e.options,...r.options}:e.options),t.set(e.name,{plugin:e,config:r}),a()},u=e=>{let n=t.get(e);n&&(n.config.cleanup&&n.config.cleanup(),t.delete(e),a())},d=()=>Array.from(t.keys()),f=(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&t(...n)}},p=(e,...n)=>{let r=!1;for(let{config:i}of t.values()){let t=i.hooks?.[e];t&&t(...n)===!0&&(r=!0)}return r},m=async(e,...n)=>{for(let{config:r}of t.values()){let t=r.hooks?.[e];t&&await t(...n)}},h=async(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=await t(i,...r))}return i},g=(e,n,...r)=>{let i=n;for(let{config:n}of t.values()){let t=n.hooks?.[e];t&&(i=t(i,...r))}return i},_={onActivate:()=>f(`onActivate`),onDeactivate:()=>f(`onDeactivate`),onElementHover:e=>f(`onElementHover`,e),onElementSelect:e=>{let n=!1,r;for(let{config:i}of t.values()){let t=i.hooks?.onElementSelect;if(t){let i=t(e);i===!0?n=!0:i instanceof Promise&&(n=!0,r=i)}}return{wasIntercepted:n,pendingResult:r}},onDragStart:(e,t)=>f(`onDragStart`,e,t),onDragEnd:(e,t)=>f(`onDragEnd`,e,t),onBeforeCopy:async e=>m(`onBeforeCopy`,e),transformCopyContent:async(e,t)=>h(`transformCopyContent`,e,t),onAfterCopy:(e,t)=>f(`onAfterCopy`,e,t),onCopySuccess:(e,t)=>f(`onCopySuccess`,e,t),onCopyError:e=>f(`onCopyError`,e),onStateChange:e=>f(`onStateChange`,e),onPromptModeChange:(e,t)=>f(`onPromptModeChange`,e,t),onSelectionBox:(e,t,n)=>f(`onSelectionBox`,e,t,n),onDragBox:(e,t)=>f(`onDragBox`,e,t),onGrabbedBox:(e,t)=>f(`onGrabbedBox`,e,t),onElementLabel:(e,t,n)=>f(`onElementLabel`,e,t,n),onContextMenu:(e,t)=>f(`onContextMenu`,e,t),onOpenFile:(e,t)=>p(`onOpenFile`,e,t),transformHtmlContent:async(e,t)=>h(`transformHtmlContent`,e,t),transformAgentContext:async(e,t)=>h(`transformAgentContext`,e,t),transformActionContext:e=>g(`transformActionContext`,e),transformOpenFileUrl:(e,t,n)=>g(`transformOpenFileUrl`,e,t,n)};return{register:l,unregister:u,getPluginNames:d,setOptions:c,store:r,hooks:_}},Qt=(e,t)=>{let n=[],r=(n,r)=>{let i=It(t(n)),a=ve(i.x,i.y).filter(e),o=a.indexOf(n);return o===-1?null:a[o+r]??null},i=e=>{let t=r(e,1);return t&&(n.push(e),n.length>50&&(n=n.slice(-50))),t},a=e=>{if(n.length>0){let e=n.pop();if(_(e))return e}return r(e,-1)},o=e=>e instanceof SVGElement&&!(e instanceof SVGSVGElement),s=e=>{let t=e.getBoundingClientRect();return t.width>=16||t.height>=16},c=(e,t)=>Math.abs(e.x-t.x)<=2&&Math.abs(e.y-t.y)<=2&&Math.abs(e.width-t.width)<=2&&Math.abs(e.height-t.height)<=2,l=t=>e(t)&&!o(t)&&s(t),u=(e,t)=>{let n=e.getBoundingClientRect(),r=e=>!c(e.getBoundingClientRect(),n),i=e=>{if(e instanceof SVGSVGElement)return null;let n=Array.from(e.children),a=t?n:n.reverse();for(let e of a)if(t){if(l(e)&&r(e))return e;let t=i(e);if(t)return t}else{let t=i(e);if(t)return t;if(l(e)&&r(e))return e}return null},a=e=>t?e.nextElementSibling:e.previousElementSibling,o=null;if(t&&(o=i(e)),!o){let n=e;for(;n;){let e=a(n);for(;e;){if(l(e)&&r(e)){o=e;break}let t=i(e);if(t){o=t;break}e=a(e)}if(o)break;let s=n.parentElement;if(!t&&s&&l(s)){o=s;break}n=s}}return o};return{findNext:(e,t)=>{switch(e){case`ArrowUp`:return i(t);case`ArrowDown`:return a(t);case`ArrowRight`:return u(t,!0);case`ArrowLeft`:return u(t,!1);default:return null}},clearHistory:()=>{n=[]}}},$t=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=q(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},en=()=>{let e=new WeakSet,t=Object.getOwnPropertyDescriptor(KeyboardEvent.prototype,`key`),n=!1;if(t?.get&&!t.get.__reactGrabPatched){n=!0;let r=t.get,i=function(){return e.has(this)?``:r.call(this)};i.__reactGrabPatched=!0,Object.defineProperty(KeyboardEvent.prototype,`key`,{get:i,configurable:!0})}return{claimedEvents:e,originalKeyDescriptor:t,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,`key`,t)}}},tn=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),nn=(e,t,n)=>{let r=null,i=()=>{if(!t()){a();return}let o=e(),s=tn(o.x,o.y),c=0,l=0;if(s.top&&(l-=10),s.bottom&&(l+=10),s.left&&(c-=10),s.right&&(c+=10),c!==0||l!==0){let e=window.scrollX,t=window.scrollY;window.scrollBy(c,l);let r=window.scrollX-e,i=window.scrollY-t;(r!==0||i!==0)&&n?.({x:r,y:i})}r=s.top||s.bottom||s.left||s.right?re(i):null},a=()=>{r!==null&&(Se(r),r=null)};return{start:i,stop:a,isActive:()=>r!==null}},rn=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},an=()=>{try{let e=`0.1.36`,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&&!rn()&&fetch(`https://www.react-grab.com/api/version?source=browser&v=${e}&t=${Date.now()}`,{referrerPolicy:`origin`,keepalive:!0,priority:`low`,cache:`no-store`}).then(e=>e.text()).then(t=>{t&&t!==e&&console.warn(`[React Grab] v${e} is outdated (latest: v${t}). Run \`npx grab@latest upgrade\` to upgrade.`)}).catch(()=>null)}catch{}},on=e=>typeof e==`object`&&!!e,sn=e=>{if(!on(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.activationKey==`string`&&(t.activationKey=e.activationKey),typeof e.freezeReactUpdates==`boolean`&&(t.freezeReactUpdates=e.freezeReactUpdates),Object.keys(t).length===0?null:t},cn=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?sn(JSON.parse(e)):null}catch{return null}},ln=e=>e===`Enter`||e===`NumpadEnter`,un=(e,t)=>e.x>=t.x&&e.x<=t.x+t.width&&e.y>=t.y&&e.y<=t.y+t.height,dn=(e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}))({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),fn={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},pn={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:e=>{e.filePath&&(e.hooks.onOpenFile(e.filePath,e.lineNumber)||Ce(e.filePath,e.lineNumber,e.hooks.transformOpenFileUrl),e.hideContextMenu(),e.cleanup())}}]},mn=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,hn=`react-grab-comment-items`,gn=`react-grab-history-items`,_n=()=>{try{let e=sessionStorage.getItem(gn);e&&!sessionStorage.getItem(hn)&&sessionStorage.setItem(hn,e),sessionStorage.removeItem(gn)}catch{}},vn=()=>{try{let e=sessionStorage.getItem(hn);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},yn=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},bn=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=>{Y=bn(e);try{sessionStorage.setItem(hn,JSON.stringify(Y))}catch{}return Y};let Y=[];typeof window<`u`&&(_n(),Y=vn(),yn(`react-grab-clear-confirmed`));const Sn=()=>Y,Cn=e=>xn([{...e,id:mn(`comment`)},...Y].slice(0,20)),wn=e=>{xn(Y.filter(t=>t.id!==e))},Tn=e=>{let t=e.left+e.width/2,n=e.top+e.height/2,r=n,i=window.innerHeight-n,a=t,o=window.innerWidth-t,s=Math.min(r,i,a,o);return s===r?`top`:s===a?`left`:s===o?`right`:`bottom`},En=async(e,t={})=>(await Promise.allSettled(e.map(e=>T(e,t)))).map(e=>e.status===`fulfilled`?e.value:``),Dn=[dn,fn,pn];let On=!1;const kn=new Set,X=t=>{if(typeof window>`u`)return K();let n={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,...cn(),...t};if(n.enabled===!1||On)return K();On=!0,an();let{enabled:r,...u}=n;return o(t=>{let n=!1,r,o=Zt(u),{store:d,actions:S,pointer:C,viewportVersion:w,current:T}=lt({theme:Yt,keyHoldDuration:o.store.options.keyHoldDuration??100}),E=e(()=>T().state===`holding`),D=e(()=>T().state===`active`),O=e(()=>{let e=T();return e.state===`active`&&e.phase===`frozen`}),k=e(()=>{let e=T();return e.state===`active`&&(e.phase===`dragging-select`||e.phase===`dragging-reposition`)}),je=e(()=>{if(!k())return!1;let e=Math.abs(C().x+window.scrollX-d.dragStart.x),t=Math.abs(C().y+window.scrollY-d.dragStart.y);return e>2||t>2}),Pe=e(()=>{let e=T();return e.state===`active`&&e.phase===`dragging-reposition`}),Fe=e(()=>{let e=T();return e.state===`active`&&e.phase===`justDragged`}),j=e(()=>T().state===`copying`),M=e(()=>d.selectionInteractionLockDepth>0),Ie=e(()=>T().state===`justCopied`),N=e(()=>{let e=T();return e.state===`active`&&!!e.isPromptMode}),Le=e(()=>d.pendingCommentMode||N()),Re=e(()=>{let e=T();return e.state===`active`&&!!e.isPromptMode&&!!e.isPendingDismiss});g(l(D,(e,t)=>{e&&!t?(Te(C().x,C().y),Ee(),document.body.style.touchAction=`none`):!e&&t&&(be(),ge(),document.body.style.touchAction=``)}));let ze=ne(),[P,Be]=c(ze?!ze.collapsed:!0),[Ve,He]=c(0),[Ue,We]=c(0),[Ge,Ke]=c(ze),[qe,Je]=c(!1),[Ye,Xe]=c(Sn()),[Ze,Qe]=c(null),$e,et=null,tt=new Map,nt=new WeakMap,rt=()=>{nt=new WeakMap},F=()=>{mt(!1),rt()},it=e=>{let t=Ge()??ne(),n={edge:t?.edge??`bottom`,ratio:t?.ratio??.5,collapsed:t?.collapsed??!1,enabled:t?.enabled??!0,defaultAction:t?.defaultAction??`comment`,...e};v(n),Ke(n);for(let e of kn)e(n)},I=()=>{H.timerId!==null&&(clearTimeout(H.timerId),H.timerId=null)},at=()=>{H.copyWaiting=!1,H.holdTimerFired=!1,H.startTimestamp=null};g(()=>{if(T().state!==`holding`){I();return}H.startTimestamp=Date.now(),H.timerId=window.setTimeout(()=>{if(H.timerId=null,H.copyWaiting){H.holdTimerFired=!0;return}S.activate()},d.keyHoldDuration),b(I)}),g(()=>{let e=T();if(e.state!==`active`||e.phase!==`justDragged`)return;let t=setTimeout(()=>{S.finishJustDragged()},fe);b(()=>clearTimeout(t))}),g(()=>{if(T().state!==`justCopied`)return;let e=setTimeout(()=>{S.finishJustCopied()},fe);b(()=>clearTimeout(e))}),g(l(E,(e,t=!1)=>{!t||e||!D()||(o.store.options.activationMode!==`hold`&&S.setWasActivatedByToggle(!0),o.hooks.onActivate())}));let ot=(e,t,n)=>{ct(e,t,n),S.clearInputText()},st=()=>{let e=d.frozenElement||X();e&&S.enterPromptMode({x:C().x,y:C().y},e)},ct=(e,t,n)=>{S.setCopyStart({x:t,y:n},e)},L={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},B=null,[ut,dt]=c(null),ft=(e,t)=>{B!==null&&clearTimeout(B),dt(null),B=window.setTimeout(()=>{dt({x:e,y:t}),B=null},32)},V=null,H={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},U=null,[W,mt]=c(!1),ht=0,gt=!1,_t=null,vt=()=>{gt=!0,_t!==null&&window.clearTimeout(_t),_t=window.setTimeout(()=>{gt=!1,_t=null},fe)},yt=()=>{_t!==null&&(window.clearTimeout(_t),_t=null),gt=!1},bt=0,G=0,K=null,wt=null,Tt=null,[Et,Ot]=c(!1),[kt,At]=c(null),[jt,Mt]=c(void 0),[Nt,Vt]=c([]),[Ut,Wt]=c(0),Gt=Qt(ye,R),q=nn(C,()=>k(),e=>{if(Pe()){if(S.shiftDragStart(e),U){U={x:U.x+e.x,y:U.y+e.y};return}let{pageX:t,pageY:n}=zn(C().x,C().y);U={x:t,y:n}}}),J=e(()=>D()&&!j()),Xt=new Map,rn=(e,t)=>{let n=mn(`grabbed`),r={id:n,bounds:e,createdAt:Date.now(),element:t};S.addGrabbedBox(r),o.hooks.onGrabbedBox(e,t);let i=window.setTimeout(()=>{Xt.delete(n),S.removeGrabbedBox(n)},fe);Xt.set(n,i)},an=async e=>{let t=await Promise.all(e.map(async e=>{let t=await ae(e),n=t?.componentName??null,r=t?.filePath,i=t?.lineNumber??void 0,a=t?.columnNumber??void 0;n||=A(e);let o=e instanceof HTMLElement?e.innerText?.slice(0,100):void 0;return{tagName:x(e),id:e.id||void 0,className:e.getAttribute(`class`)||void 0,textContent:o,componentName:n??void 0,filePath:r,lineNumber:i,columnNumber:a}}));window.dispatchEvent(new CustomEvent(`react-grab:element-selected`,{detail:{elements:t}}))},on=new Map,sn=e=>{let t=on.get(e);t!==void 0&&(window.clearTimeout(t),on.delete(e))},cn=()=>{for(let e of on.values())window.clearTimeout(e);on.clear()},dn=e=>{sn(e);let t=window.setTimeout(()=>{on.delete(e),S.updateLabelInstance(e,`fading`),setTimeout(()=>{on.delete(e),S.removeLabelInstance(e)},150)},fe);on.set(e,t)},fn=(e,t)=>{if(t)sn(e);else{let t=d.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&dn(e)}},pn=(e,t,n,r,i)=>{S.clearLabelInstances(),cn();let a=mn(`label`),o=e.x+e.width/2,s=e.width/2,c=i?.mouseX,l=c===void 0?void 0:c-o,u={id:a,bounds:e,boundsMultiple:i?.boundsMultiple,tagName:t,componentName:n,status:r,createdAt:Date.now(),element:i?.element,elements:i?.elements,mouseX:c,mouseXOffsetFromCenter:l,mouseXOffsetRatio:l!==void 0&&s>0?l/s:void 0,hideArrow:i?.hideArrow};return S.addLabelInstance(u),a},hn=(e,t)=>{S.clearLabelInstances(),cn();let n=[];for(let r of e){let e=R(r.element),i=e.x+e.width/2,a=e.width/2,o=r.mouseX===void 0?void 0:r.mouseX-i,s=mn(`label`),c={id:s,bounds:e,tagName:r.tagName,componentName:r.componentName,status:t,createdAt:Date.now(),element:r.element,mouseX:r.mouseX,mouseXOffsetFromCenter:o,mouseXOffsetRatio:o!==void 0&&a>0?o/a:void 0};S.addLabelInstance(c),n.push(s)}return n},gn=()=>{cn(),S.clearLabelInstances()},_n=(e,t,n)=>{t?S.updateLabelInstance(e,`copied`):S.updateLabelInstance(e,`error`,n||`Unknown error`),dn(e)},vn=async(e,t,n,r)=>{yt(),T().state!==`copying`&&S.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=Ct(e,`Action failed`)}if(t)for(let e of t)_n(e,i,a);T().state===`copying`&&(i&&S.completeCopy(n),r?Q():i?(S.activate(),vt()):S.unfreeze())},yn=e=>{let{copiedElements:t,content:n,extraPrompt:r,elementName:i,tagName:a,componentName:s}=e;if(o.hooks.onCopySuccess(t,n),!r)return;let c=t.length>0;if(c){let e=Ye();for(let[n,i]of tt.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){wn(n),tt.delete(n);break}}}let l=t.map((e,t)=>Me(e,t===0)),u=Cn({content:n,elementName:i??`element`,tagName:a??`div`,componentName:s??void 0,elementsCount:t.length,previewBounds:t.map(e=>R(e)),elementSelectors:l,commentText:r,timestamp:Date.now()});Xe(u);let d=u[0];d&&c&&tt.set(d.id,[...t]);let f=new Set(u.map(e=>e.id));for(let e of tt.keys())f.has(e)||tt.delete(e)},bn=(e,t,n)=>{let r=e[0],i=n??(r?A(r):null),a=r?x(r):null,s=i??a??void 0;return Dt({getContent:o.store.options.getContent,componentName:s},{onBeforeCopy:o.hooks.onBeforeCopy,transformCopyContent:o.hooks.transformCopyContent,onAfterCopy:o.hooks.onAfterCopy,onCopySuccess:(e,n)=>{yn({copiedElements:e,content:n,extraPrompt:t,elementName:s,tagName:a,componentName:i})},onCopyError:o.hooks.onCopyError},e,t)},xn=async(e,t,n)=>{if(e.length===0)return;let r=[],i=[];for(let t of e){let{wasIntercepted:e,pendingResult:n}=o.hooks.onElementSelect(t);e||r.push(t),n&&i.push(n),o.store.theme.grabbedBoxes.enabled&&rn(R(t),t)}if(await xe(),r.length>0)await bn(r,t,n);else if(i.length>0&&!(await Promise.all(i)).every(Boolean))throw Error(`Failed to copy`);an(e)},Y=e=>{let{element:t,cursorX:n,selectedElements:r,extraPrompt:i,shouldDeactivateAfter:a,onComplete:o,dragRect:s}=e,c=r??[t],l=s??d.frozenDragRect,u=c.length>1,f=l&&u?Rt(l):Bt(R(t)),p=u?f.x+f.width/2:n,m=x(t);yt(),S.startCopy();let h=m?pn(f,m,void 0,`copying`,{element:t,mouseX:p,elements:r}):null;ie(t).then(async e=>{await vn(()=>xn(c,i,e??void 0),h?[h]:null,t,a),o?.()}).catch(e=>{h&&_n(h,!1,Ct(e,`Action failed`)),T().state===`copying`&&S.unfreeze()})},En=e=>{let{elements:t,labelEntries:n,shouldDeactivateAfter:r,onComplete:i}=e,a=t[0];yt(),S.startCopy();let o=hn(n,`copying`);ie(a).then(async e=>{await vn(()=>xn(t,void 0,e??void 0),o.length>0?o:null,a,r),i?.()}).catch(e=>{let t=Ct(e,`Action failed`);for(let e of o)_n(e,!1,t);T().state===`copying`&&S.unfreeze()})},X=e(()=>{if(w(),!J()||je()||M())return null;let e=d.detectedElement;return _(e)?e:null}),An=e(()=>d.frozenElement||(O()?null:X()));g(()=>{let e=d.detectedElement;if(!e)return;let t=setInterval(()=>{_(e)||S.setDetectedElement(null)},100);b(()=>clearInterval(t))}),g(l(An,e=>{if(K!==null&&(clearTimeout(K),K=null),!e){At(null);return}K=window.setTimeout(()=>{K=null,At(e)},100)})),b(()=>{K!==null&&(clearTimeout(K),K=null)}),g(()=>{let e=d.frozenElements;b(we(e))}),g(l(D,e=>{e&&o.store.options.freezeReactUpdates&&b(De())}));let jn=()=>{if(d.isTouchMode&&k()){let e=d.detectedElement;return!e||me(e)?void 0:e}let e=An();if(!(!e||me(e)))return e},Mn=e(()=>jn()),Nn=()=>Mn()?d.isTouchMode&&k()?J():J()&&!je():!1,Pn=i(()=>d.frozenElements,t=>e(()=>(w(),R(t)))),Fn=e(()=>{let e=d.frozenElements;if(e.length===0)return[];let t=d.frozenDragRect;return t&&e.length>1?[Rt(t)]:Pn().map(e=>e())}),In=e(()=>{if(!W()||d.pendingCommentMode||Et())return null;let e=d.detectedElement;return!_(e)||me(e)||d.frozenElements.includes(e)?null:e}),Ln=e(()=>{w();let e=In();if(e)return R(e)}),Rn=e(()=>{w();let e=d.frozenElements;if(e.length>0){let t=Fn();if(e.length===1){let e=t[0];if(e)return e}let n=d.frozenDragRect;return n?t[0]??Rt(n):Bt(Jt(t))}let t=Mn();if(t)return R(t)}),zn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),Bn=(e,t)=>{let{pageX:n,pageY:r}=zn(e,t);return{x:Math.abs(n-d.dragStart.x),y:Math.abs(r-d.dragStart.y)}},Vn=e(()=>{if(!k())return!1;let e=Bn(C().x,C().y);return e.x>2||e.y>2}),Hn=(e,t)=>{let{pageX:n,pageY:r}=zn(e,t),i=Math.min(d.dragStart.x,n),a=Math.min(d.dragStart.y,r),o=Math.abs(n-d.dragStart.x),s=Math.abs(r-d.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},Un=e=>e.code===`Space`||e.key===` `,Wn=()=>{if(!k())return;S.startDragReposition();let{pageX:e,pageY:t}=zn(C().x,C().y);U={x:e,y:t}},Gn=()=>{S.stopDragReposition(),U=null},Kn=e(()=>{if(w(),!Vn())return;let e=Hn(C().x,C().y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),qn=e(()=>{if(w(),!Vn())return[];let e=ut();if(!e)return[];let t=Hn(e.x,e.y),n=Pt(t,ye);return(n.length>0?n:Pt(t,ye,!1)).map(e=>R(e))}),Jn=e(()=>{let e=qn();if(e.length>0)return e;let t=Ln();return t?[...Fn(),t]:Fn()}),Yn=i(()=>d.frozenElements,t=>{let n=x(t)||`element`,r=A(t)??void 0;return e(()=>{if(w(),!_(t))return null;let e=R(t),i=nt.get(t);return{tagName:n,componentName:r,bounds:e,mouseX:i===void 0?void 0:e.x+e.width*i}})}),Xn=e(()=>{if(N()||d.frozenElements.length<2)return[];let e=[];for(let t of Yn()){let n=t();n!==null&&e.push(n)}return e}),Zn=e(()=>{if(N())return null;let e=In();return e?(w(),{tagName:x(e)||`element`,componentName:A(e)??void 0,bounds:R(e),mouseX:C().x}):null}),Qn=e(()=>{if(j()||N()){w();let e=d.frozenElement||X();return e?{x:z(R(e)).x+d.copyOffsetFromCenterX,y:d.copyStart.y}:{x:d.copyStart.x,y:d.copyStart.y}}return{x:C().x,y:C().y}}),$n=e(()=>{if(!W()||d.frozenElements.length!==1)return;w();let e=d.frozenElements[0];if(!_(e))return;let t=nt.get(e);if(t===void 0)return;let n=R(e);return n.x+n.width*t});g(l(()=>[X(),d.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&S.setLastGrabbed(null),e&&o.hooks.onElementHover(e)})),g(l(()=>X(),e=>{let t=++bt,n=()=>{bt===t&&S.setSelectionSource(null,null)};if(!e){n();return}ae(e).then(e=>{if(bt===t){if(!e){n();return}S.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{bt===t&&S.setSelectionSource(null,null)})}));let er=e(()=>d.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),tr=e(()=>d.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));g(l(e(()=>{let e=D(),t=k(),n=j(),r=N(),i=X(),a=Kn(),s=o.store.theme.enabled,c=o.store.theme.selectionBox.enabled,l=o.store.theme.dragBox.enabled,u=Vn(),f=An(),p=Ie();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(s&&c&&e&&!n&&!p&&!t&&f!=null),isDragBoxVisible:!!(s&&l&&e&&!n&&u),targetElement:i,dragBounds:a?{x:a.x,y:a.y,width:a.width,height:a.height}:null,grabbedBoxes:[...er()],labelInstances:[...tr()],selectionFilePath:d.selectionFilePath,toolbarState:Ge()}}),e=>{o.hooks.onStateChange(e)})),g(l(()=>[N(),C().x,C().y,X()],([e,t,n,r])=>{o.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),g(l(()=>[$r(),Rn(),X()],([e,t,n])=>{o.hooks.onSelectionBox(!!e,t??null,n)})),g(l(()=>[oi(),Kn()],([e,t])=>{o.hooks.onDragBox(!!e,t??null)})),g(l(()=>[ci(),si(),Qn(),X(),d.selectionFilePath,d.selectionLineNumber],([e,t,n,r,i,a])=>{o.hooks.onElementLabel(!!e,t,{x:n.x,y:n.y,content:``,element:r??void 0,tagName:r&&x(r)||void 0,filePath:i??void 0,lineNumber:a??void 0})}));let Z=null,nr=e=>{if(e){if(!Z){Z=document.createElement(`style`),Z.setAttribute(`data-react-grab-cursor`,``);let e=le();e&&(Z.nonce=e),ce(Z),document.head.appendChild(Z)}Z.textContent=`* { cursor: ${e} !important; }`}else Z&&=(Z.remove(),null)};g(l(()=>[D(),j(),N()],([e,t,n])=>{nr(t?`progress`:e&&!n?`crosshair`:null)}));let rr=()=>{let e=E();S.activate(),e||o.hooks.onActivate()},Q=()=>{let e=k(),t=d.previouslyFocusedElement;Gn(),S.deactivate(),F(),Dr(),wt=null,Ot(!1),e&&(document.body.style.userSelect=``),V&&window.clearTimeout(V),q.stop(),t instanceof HTMLElement&&_(t)&&t.focus(),o.hooks.onDeactivate()},ir=()=>{E()&&S.releaseHold(),D()&&Q(),yt()},ar=()=>{S.setWasActivatedByToggle(!0),rr()},or=()=>{S.clearLastCopied();let e=[...d.frozenElements],t=d.frozenElement||X(),n=N()?d.inputText.trim():``;if(!t){Q();return}let r=e.length>0?e:[t],i=r.map(e=>R(e))[0],{x:a,y:o}=z(i),s=a+d.copyOffsetFromCenterX;S.setPointer({x:a,y:o}),S.exitPromptMode(),S.clearInputText(),Y({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},sr=()=>{if(S.clearLastCopied(),N()){if(Re()){S.clearInputText(),Q();return}S.setPendingDismiss(!0),We(e=>e+1)}},cr=()=>{S.clearInputText(),Q()},lr=()=>{S.setPendingDismiss(!1)},ur=()=>{let e=d.frozenElement||X();e&&ot(e,C().x,C().y),st()},dr=()=>{if(D())Q();else if(P()){let e=Ge()?.defaultAction??`comment`;e===`comment`?S.setPendingCommentMode(!0):(Tt=e,Ot(!0)),ar()}},fr=(e,t,n)=>{S.setPendingCommentMode(!1),S.clearInputText(),S.enterPromptMode({x:t,y:n},e)},pr=(e,t)=>{F(),S.showContextMenu(t,e),Dr(),wi(),o.hooks.onContextMenu(e,t)},mr=(e,t)=>{let n=Tt;if(Tt=null,!n)return;let r=o.store.actions.find(e=>e.id===n);if(!r){Ei(ue),pr(e,t);return}let i=R(e),a=_i({element:e,filePath:d.selectionFilePath??void 0,lineNumber:d.selectionLineNumber??void 0,tagName:x(e)||void 0,componentName:jt(),position:t,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:i,fallbackSelectionBounds:[i],position:t}});r.onAction(a)},hr=()=>{if(P()){if(D()&&Le()){Q();return}S.setPendingCommentMode(!0),D()||ar()}},gr=(e,t,n)=>{let r=n&&W()&&!k()&&!d.pendingCommentMode&&!Et();if(!P()||N()||O()&&!r||M()||d.contextMenuPosition!==null)return;if(S.setPointer({x:e,y:t}),L.latestPointerX=e,L.latestPointerY=t,r){let n=_e(e,t);n!==d.detectedElement&&S.setDetectedElement(n);return}let i=performance.now(),a=L.pendingDetectionScheduledAt>0&&i-L.pendingDetectionScheduledAt<200;if(i-L.lastDetectionTimestamp>=32&&!a&&(L.lastDetectionTimestamp=i,L.pendingDetectionScheduledAt=i,setTimeout(()=>{let e=_e(L.latestPointerX,L.latestPointerY);e!==d.detectedElement&&S.setDetectedElement(e),L.pendingDetectionScheduledAt=0})),k()){if(Pe()){let{pageX:n,pageY:r}=zn(e,t);U&&S.shiftDragStart({x:n-U.x,y:r-U.y}),U={x:n,y:r}}ft(e,t);let n=tn(e,t),r=n.top||n.bottom||n.left||n.right;r&&!q.isActive()?q.start():!r&&q.isActive()&&q.stop()}},_r=(e,t,n)=>!J()||M()?!1:(!n&&W()&&F(),S.startDrag({x:e,y:t},n),S.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,ft(e,t),o.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),vr=(e,t)=>{let n=d.frozenElements.includes(e),r=d.frozenElements.length===0;if(!n){let n=Ft(R(e),t);nt.set(e,n),r&&Mt(A(e)??void 0)}S.toggleFrozenElement(e),Oe();let i=d.frozenElements.includes(e);if(i||nt.delete(e),d.frozenElements.length===0){F(),S.unfreeze();return}he(d.frozenElements),mt(!0),S.setPointer(t),S.setLastGrabbed(i?e:d.frozenElements[d.frozenElements.length-1]),S.freeze(),Dr()},yr=()=>{let e=d.frozenElements.filter(_),t=e.map(e=>{let t=x(e)||`element`,n=A(e)??void 0,r=nt.get(e),i=R(e);return{element:e,tagName:t,componentName:n,mouseX:r===void 0?i.x+i.width/2:i.x+i.width*r}});if(F(),e.length===0){S.unfreeze();return}if(e.length===1){Y({element:e[0],cursorX:t[0].mouseX,selectedElements:e,shouldDeactivateAfter:d.wasActivatedByToggle});return}En({elements:e,labelEntries:t,shouldDeactivateAfter:d.wasActivatedByToggle})},br=(e,t,n)=>{let r=Pt(e,ye),i=r.length>0?r:Pt(e,ye,!1);if(i.length===0)return;let a=n&&!d.pendingCommentMode&&!Et();if(a&&S.addFrozenElements(i),he(a?d.frozenElements:i),o.hooks.onDragEnd(i,e),a){let e=i[i.length-1];mt(!0),Oe(),S.setPointer(z(R(e))),S.setLastGrabbed(e),S.freeze(),Dr();return}let s=i[0],c=z(R(s));S.setPointer(c),S.setFrozenElements(i);let l=zt(e);if(S.setFrozenDragRect(l),S.freeze(),S.setLastGrabbed(s),d.pendingCommentMode){fr(s,c.x,c.y);return}if(Et()){Ot(!1),Tt?mr(s,c):pr(s,c);return}let u=d.wasActivatedByToggle&&!t;Y({element:s,cursorX:c.x,selectedElements:i,shouldDeactivateAfter:u,dragRect:l})},xr=e=>{for(let t of d.frozenElements)if(_(t)&&un(e,R(t)))return t;return null},Sr=(e,t,n,r)=>{let i=_(d.frozenElement)?d.frozenElement:null,a=_(wt)?wt:null,s=ve(e,t).find(ye)??null,c=s??(_(d.detectedElement)?d.detectedElement:null),l=c??i??a;if(!l)return;if(r&&!d.pendingCommentMode&&!Et()){s!==null&&vr(s,{x:e,y:t});return}let u,f,p=c===null&&i===l,m=c===null&&i===null&&a===l;if(p)u=C().x,f=C().y;else if(m){let e=z(R(l));u=e.x,f=e.y}else u=e,f=t;if(wt=null,d.pendingCommentMode){fr(l,u,f);return}if(Et()){Ot(!1);let{wasIntercepted:e}=o.hooks.onElementSelect(l);if(e)return;he([l]),S.setFrozenElement(l);let t={x:u,y:f};S.setPointer(t),S.freeze(),Tt?mr(l,t):pr(l,t);return}let h=d.wasActivatedByToggle&&!n;S.setLastGrabbed(l),Y({element:l,cursorX:u,shouldDeactivateAfter:h})},Cr=()=>{k()&&(Gn(),S.cancelDrag(),q.stop(),document.body.style.userSelect=``)},wr=(e,t,n,r)=>{if(!k())return;B!==null&&(clearTimeout(B),B=null),dt(null);let i=Bn(e,t),a=i.x>2||i.y>2,o=a?Hn(e,t):null;a?S.endDrag():S.cancelDrag(),Gn(),q.stop(),document.body.style.userSelect=``,o?br(o,n,r):Sr(e,t,n,r)},$=St(),Tr=en(),Er=e=>{let t;try{t=Tr.originalKeyDescriptor?.get?Tr.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||ln(e.code),r=D()||E();return n&&r&&!N()&&!d.wasActivatedByToggle?(Tr.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};$.addDocumentListener(`keydown`,Er,{capture:!0}),$.addDocumentListener(`keyup`,Er,{capture:!0}),$.addDocumentListener(`keypress`,Er,{capture:!0});let Dr=()=>{Vt([]),Wt(0),Gt.clearHistory()},Or=e=>{S.setFrozenElement(e),S.freeze(),wt=e;let t=z(R(e));S.setPointer(t),d.contextMenuPosition!==null&&S.showContextMenu(t,e)},kr=e=>{let t=It(R(e)),n=ve(t.x,t.y).filter(ye).reverse();Vt(n),Wt(Math.max(0,n.indexOf(e)))},Ar=e=>{let t=Nt()[e];t&&(Wt(e),Gt.clearHistory(),Or(t))},jr=e=>{if(!D()||N()||W()||!oe.has(e.key))return!1;let t=An(),n=!t;if(t||=_e(window.innerWidth/2,window.innerHeight/2),!t)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Dr();let r=Gt.findNext(e.key,t);return!r&&!n?!1:(e.preventDefault(),e.stopPropagation(),Or(r??t),!0)}Nt().length===0&&kr(t);let r=Gt.findNext(e.key,t)??t;e.preventDefault(),e.stopPropagation(),Or(r);let i=Nt().indexOf(r);return i===-1?kr(r):Wt(i),!0},Mr=e=>{if(!ln(e.code)||f(e)||j()||M())return!1;let t=d.lastCopiedElement;if(!E()&&!N()&&!D()&&t&&_(t)&&!d.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let n=z(R(t));return S.setPointer(n),ot(t,n.x,n.y),S.setFrozenElement(t),S.clearLastCopied(),st(),D()||rr(),!0}if(E()&&!N()){e.preventDefault(),e.stopImmediatePropagation();let t=d.frozenElement||X();return t&&ot(t,C().x,C().y),S.setPointer({x:C().x,y:C().y}),t&&S.setFrozenElement(t),st(),V!==null&&(window.clearTimeout(V),V=null),D()||rr(),!0}return!1},Nr=e=>{if(e.key?.toLowerCase()!==`o`||N()||!D()||!(e.metaKey||e.ctrlKey))return!1;let t=d.selectionFilePath,n=d.selectionLineNumber;return t?(e.preventDefault(),e.stopPropagation(),o.hooks.onOpenFile(t,n??void 0)||Ce(t,n??void 0,o.hooks.transformOpenFileUrl),!0):!1},Pr=e(()=>Nt().map(e=>({tagName:x(e)||`element`,componentName:A(e)??void 0}))),Fr=e(()=>({items:Pr(),activeIndex:Ut(),isVisible:Nt().length>0})),Ir=e=>{if(!(!o.store.options.allowActivationInsideInput&&f(e))&&!(!qt(e,o.store.options)&&((e.metaKey||e.ctrlKey)&&!se.includes(e.key)&&!ln(e.code)&&(D()&&!d.wasActivatedByToggle?Q():E()&&(I(),at(),S.releaseHold())),!ln(e.code)||!E()))){if((D()||E())&&!N()&&(e.preventDefault(),ln(e.code)&&e.stopImmediatePropagation()),D()){if(d.wasActivatedByToggle&&o.store.options.activationMode!==`hold`||e.repeat)return;V!==null&&window.clearTimeout(V),V=window.setTimeout(()=>{Q()},200);return}if(E()&&e.repeat){if(H.copyWaiting){let e=H.holdTimerFired;at(),e&&S.activate()}return}if(!(j()||Ie())&&!E()){let t=o.store.options.keyHoldDuration??100;f(e)?ee(e)?t+=600:t+=400:te()&&(t+=600),at(),S.startHold(t)}}};$.addWindowListener(`keydown`,e=>{if(Er(e),!P()){qt(e,o.store.options)&&!e.repeat&&He(e=>e+1);return}let t=ln(e.code)&&E()&&!N(),n=y(e,`data-react-grab-input`);if(N()&&qt(e,o.store.options)&&!e.repeat&&!n){e.preventDefault(),e.stopPropagation(),sr();return}if(e.key===`Escape`&&Ze()!==null){Ci();return}let r=y(e,`data-react-grab-ignore-events`)&&!t;if(N()||r)return e.key===`Escape`&&(N()?sr():d.wasActivatedByToggle&&Q()),r&&oe.has(e.key)&&jr(e),void 0;if(k()&&Un(e)){e.repeat||Wn(),e.preventDefault(),e.stopPropagation();return}if(e.key===`Escape`&&(E()||d.wasActivatedByToggle)){Q();return}D()&&!se.includes(e.key)&&e.preventDefault();let i=Date.now()-ht<200;jr(e)||Mr(e)||Nr(e)||i||Ir(e)},{capture:!0}),$.addWindowListener(`keyup`,e=>{if(Er(e))return;if(Un(e)&&Pe()&&(Gn(),e.preventDefault(),e.stopPropagation()),e.key===`Shift`&&W()){k()&&Cr(),yr();return}if(y(e,`data-react-grab-ignore-events`))return;let t=$t(o.store.options),n=t.metaKey||t.ctrlKey?h()?!e.metaKey:!e.ctrlKey:t.shiftKey&&!e.shiftKey||t.altKey&&!e.altKey,r=o.store.options.activationKey?typeof o.store.options.activationKey==`function`?o.store.options.activationKey(e):Kt(o.store.options.activationKey)(e):Ht(e.key,e.code);if(Ie()||gt){(r||n)&&(yt(),Q());return}if(!E()&&!D()||N())return;let i=!!o.store.options.activationKey,a=o.store.options.activationMode===`hold`,s=k();if(D()){let e=d.contextMenuPosition!==null;if(n){if(d.wasActivatedByToggle&&o.store.options.activationMode!==`hold`||e)return;Q()}else if(a&&r){if(V!==null&&(window.clearTimeout(V),V=null),e||s)return;Q()}else !i&&r&&V!==null&&(window.clearTimeout(V),V=null);return}if(r||n){if(d.wasActivatedByToggle&&o.store.options.activationMode!==`hold`)return;if(E()||H.holdTimerFired&&n){I();let t=(H.startTimestamp?Date.now()-H.startTimestamp:0)>=200,n=H.holdTimerFired&&t&&(o.store.options.allowActivationInsideInput||!f(e));at(),n?S.activate():S.releaseHold()}else Q()}},{capture:!0}),$.addDocumentListener(`copy`,()=>{E()&&(H.copyWaiting=!0)}),$.addWindowListener(`keypress`,Er,{capture:!0}),$.addWindowListener(`pointermove`,e=>{if(!e.isPrimary)return;let t=e.pointerType===`touch`;S.setTouchMode(t),!y(e,`data-react-grab-ignore-events`)&&d.contextMenuPosition===null&&(M()||t&&!E()&&!D()||((t?E():D())&&!N()&&O()&&!e.shiftKey&&!W()&&(S.unfreeze(),Dr()),gr(e.clientX,e.clientY,e.shiftKey)))},{passive:!0}),$.addWindowListener(`pointerdown`,e=>{if(e.button===0&&e.isPrimary&&(S.setTouchMode(e.pointerType===`touch`),!y(e,`data-react-grab-ignore-events`)&&d.contextMenuPosition===null&&Ze()===null)){if(N()){let t=Rn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?or():sr();return}if(M()){e.preventDefault(),e.stopImmediatePropagation();return}_r(e.clientX,e.clientY,e.shiftKey)&&(e.pointerId!==void 0&&document.documentElement.setPointerCapture(e.pointerId),e.preventDefault(),e.stopImmediatePropagation())}},{capture:!0}),$.addWindowListener(`pointerup`,e=>{if(e.button!==0||!e.isPrimary||y(e,`data-react-grab-ignore-events`)||d.contextMenuPosition!==null)return;let t=J()||M()||k(),n=e.metaKey||e.ctrlKey;wr(e.clientX,e.clientY,n,e.shiftKey),t&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),$.addWindowListener(`contextmenu`,e=>{if(!J()||j()||N())return;let t=y(e,`data-react-grab-ignore-events`),n={x:e.clientX,y:e.clientY},r=t&&d.frozenElements.length>1?xr(n):null;if(t&&Nt().length>0)Dr();else if(t&&!r)return;if(d.contextMenuPosition!==null){e.preventDefault();return}e.preventDefault(),e.stopPropagation();let i=r??_e(e.clientX,e.clientY);if(!i)return;let a=d.frozenElements;a.length>1&&a.includes(i)?he(a):(he([i]),S.setFrozenElement(i)),S.setPointer(n),S.freeze(),pr(i,n)},{capture:!0}),$.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Cr()}),$.addWindowListener(`click`,e=>{y(e,`data-react-grab-ignore-events`)||d.contextMenuPosition===null&&(J()||Fe())&&(e.preventDefault(),e.stopImmediatePropagation(),d.wasActivatedByToggle&&!N()&&!e.shiftKey&&(E()?S.setWasActivatedByToggle(!1):Q()))},{capture:!0}),$.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){S.clearGrabbedBoxes();let e=d.activationTimestamp;D()&&!N()&&e!==null&&Date.now()-e>500&&Q()}}),$.addWindowListener(`blur`,()=>{Cr(),E()&&(I(),S.releaseHold(),at()),F()}),$.addWindowListener(`focus`,()=>{ht=Date.now()}),$.addWindowListener(`focusin`,e=>{y(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let Lr=()=>{if(!(d.isTouchMode&&!E()&&!D())&&P()&&!N()&&!M()&&!O()&&!k()&&d.contextMenuPosition===null&&d.frozenElements.length===0){let e=_e(C().x,C().y);S.setDetectedElement(e)}},Rr=null,zr=null,Br=()=>{Lt(),Lr(),S.incrementViewportVersion(),S.updateContextMenuPosition()};$.addWindowListener(`scroll`,Br,{capture:!0});let Vr=window.innerWidth,Hr=window.innerHeight;$.addWindowListener(`resize`,()=>{let e=window.innerWidth,t=window.innerHeight;if(Vr>0&&Hr>0){let n=e/Vr,r=t/Hr,i=Math.abs(n-r)<ke,a=Math.abs(n-1)>ke;i&&a&&S.setPointer({x:C().x*n,y:C().y*r})}Vr=e,Hr=t,Br()});let Ur=window.visualViewport;if(Ur){let{signal:e}=$;Ur.addEventListener(`resize`,Br,{signal:e}),Ur.addEventListener(`scroll`,Br,{signal:e})}let Wr=()=>{zr===null&&(zr=re(()=>{zr=null,S.incrementViewportVersion()}))};g(()=>{if(o.store.theme.enabled&&(D()||j()||d.labelInstances.length>0||d.grabbedBoxes.length>0)){if(Rr!==null)return;Rr=window.setInterval(()=>{Wr()},100);return}Rr!==null&&(window.clearInterval(Rr),Rr=null),zr!==null&&(Se(zr),zr=null)}),b(()=>{Rr!==null&&window.clearInterval(Rr),zr!==null&&Se(zr)}),$.addDocumentListener(`copy`,e=>{N()||y(e,`data-react-grab-ignore-events`)||J()&&e.preventDefault()},{capture:!0}),b(()=>{$.abort(),B!==null&&window.clearTimeout(B),V&&window.clearTimeout(V),yt(),et!==null&&Se(et),Xt.forEach(e=>window.clearTimeout(e)),Xt.clear(),cn(),q.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,nr(null),Tr.restore()});let{root:Gr,host:Kr}=pt(Ne);b(xt(Kr).cleanup);let qr=e(()=>o.store.theme.enabled),Jr=e(()=>o.store.theme.selectionBox.enabled),Yr=e(()=>o.store.theme.elementLabel.enabled),Xr=e(()=>o.store.theme.dragBox.enabled),Zr=e(()=>Ie()||qe()&&!O()),Qr=e(()=>qn().length>0),$r=e(()=>!qr()||!Jr()||Zr()?!1:Qr()?!0:Nn()),ei=e(()=>{let e=Mn();if(e)return x(e)||void 0});g(l(()=>kt(),e=>{let t=++G;if(!e){Mt(void 0);return}let n=A(e)??void 0;Mt(n),ie(e).then(e=>{G===t&&Mt(e??n)}).catch(()=>{G===t&&Mt(n)})}));let ti=e(()=>d.contextMenuPosition!==null||!Yr()||Zr()?!1:Nn()),ni=new Map,ri=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?R(n):e.bounds,i=ni.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 ni.set(e.id,l),l},ii=e(()=>{if(!qr()||!o.store.theme.grabbedBoxes.enabled)return[];w();let e=new Set(d.labelInstances.map(e=>e.id));for(let t of ni.keys())e.has(t)||ni.delete(t);return d.labelInstances.map(ri)}),ai=e(()=>!qr()||!o.store.theme.grabbedBoxes.enabled?[]:(w(),d.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:R(e.element)}))),oi=e(()=>qr()&&Xr()&&J()&&Vn()),si=e(()=>j()?`processing`:`hover`),ci=e(()=>{if(!qr())return!1;let e=Yr(),t=N(),n=j(),r=J(),i=k(),a=!!An(),o=qe(),s=O();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),li=e(()=>{w();let e=d.contextMenuElement;return e?R(e):null}),ui=e(()=>(w(),d.contextMenuPosition)),di=e(()=>{let e=d.contextMenuElement;if(!e)return;let t=d.frozenElements.length;return t>1?`${t} elements`:x(e)||void 0}),[fi]=a(()=>({element:d.contextMenuElement,frozenCount:d.frozenElements.length}),async({element:e,frozenCount:t})=>{if(e&&!(t>1))return await ie(e)??void 0}),[pi]=a(()=>d.contextMenuElement,async e=>e?ae(e):null),mi=async e=>{S.incrementSelectionInteractionLockDepth();try{return await e()}finally{S.decrementSelectionInteractionLockDepth()}},hi=(e,t,n,r,i)=>async a=>{await mi(async()=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??d.contextMenuPosition??C(),l=Fn(),u=li()??o,f=t.length>1,p=f?Bt(Jt(l)):u,m=d.wasActivatedByToggle,h;if(h=f?l:u?[u]:s,S.hideContextMenu(),p){let i=f?p.x+p.width/2:c.x,o=pn(p,n||`element`,r,`copying`,{element:e,mouseX:i,elements:f?t:void 0,boundsMultiple:h}),s=!1,l;try{s=await a(),s||(l=`Failed to copy`)}catch(e){l=Ct(e,`Action failed`)}_n(o,s,l)}else try{await a()}catch{}m?Q():S.unfreeze()})},gi=()=>{setTimeout(()=>{S.hideContextMenu()},0)},_i=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:s,performWithFeedbackOptions:c,shouldDeferHideContextMenu:l,onBeforeCopy:u,onBeforePrompt:f,customEnterPromptMode:p}=e,m=d.frozenElements.length>0?d.frozenElements:[t],h=l?gi:S.hideContextMenu,g={element:t,elements:m,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:p??(()=>{gn(),f?.(),ot(t,s.x,s.y),S.setPointer({x:s.x,y:s.y}),S.setFrozenElement(t),st(),D()||rr(),h()}),copy:()=>{u?.(),Y({element:t,cursorX:s.x,selectedElements:m.length>1?m:void 0,shouldDeactivateAfter:d.wasActivatedByToggle}),h()},hooks:{transformHtmlContent:o.hooks.transformHtmlContent,onOpenFile:o.hooks.onOpenFile,transformOpenFileUrl:o.hooks.transformOpenFileUrl},performWithFeedback:hi(t,m,i,a,c),hideContextMenu:h,cleanup:()=>{d.wasActivatedByToggle?Q():S.unfreeze()}},_=o.hooks.transformActionContext(g);return{...g,..._}},vi=e(()=>{let e=d.contextMenuElement;if(!e)return;let t=pi(),n=d.contextMenuPosition??C();return _i({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:di(),componentName:fi(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{wt=null},customEnterPromptMode:()=>{gn(),S.clearInputText(),S.enterPromptMode(n,e),gi()}})}),yi=()=>{setTimeout(()=>{S.hideContextMenu(),Q()},0)},bi=()=>{et!==null&&(Se(et),et=null)},xi=()=>{if(!$e)return null;let e=$e.getBoundingClientRect(),t=Tn(e);return t===`left`||t===`right`?{x:t===`left`?e.right:e.left,y:e.top+e.height/2,edge:t,toolbarWidth:e.width}:{x:e.left+e.width/2,y:t===`top`?e.bottom:e.top,edge:t,toolbarWidth:e.width}},Si=e=>{bi();let t=()=>{let n=xi();n&&e(n),et=re(t)};t()},Ci=()=>{bi(),Qe(null)},wi=()=>{Ci()},Ti=()=>{Ze()===null?(S.hideContextMenu(),Si(Qe)):Ci()},Ei=e=>{it({defaultAction:e})},Di=e=>{let t=d.labelInstances.find(t=>t.id===e);if(!t?.element||!_(t.element))return;let n=t.element,r=z(R(n)),i={x:t.mouseX??r.x,y:r.y},a=t.elements&&t.elements.length>0?t.elements.filter(e=>_(e)):[n];setTimeout(()=>{D()||(S.setWasActivatedByToggle(!0),rr()),S.setPointer(i),S.setFrozenElements(a),a.length>1&&t.bounds&&S.setFrozenDragRect(zt(t.bounds)),S.freeze(),S.showContextMenu(i,n)},0)};g(()=>{let e=o.store.theme.hue;e===0?Gr.style.filter=``:Gr.style.filter=`hue-rotate(${e}deg)`}),o.store.theme.enabled&&import(`./renderer-CiIPsSof.js`).then(({ReactGrabRenderer:e})=>{n||(r=p(()=>s(e,{get selectionVisible(){return $r()},get selectionBounds(){return Rn()},get selectionBoundsMultiple(){return Jn()},get selectionShouldSnap(){return d.frozenElements.length>0||qn().length>0},get selectionElementsCount(){return d.frozenElements.length},get frozenLabelEntries(){return Xn()},get pendingShiftPreviewEntry(){return Zn()??void 0},get selectionFilePath(){return d.selectionFilePath??void 0},get selectionLineNumber(){return d.selectionLineNumber??void 0},get selectionTagName(){return ei()},get selectionComponentName(){return jt()},get selectionLabelVisible(){return ti()},selectionLabelStatus:`idle`,get selectionArrowNavigationState(){return Fr()},onArrowNavigationSelect:Ar,get labelInstances(){return ii()},get dragVisible(){return oi()},get dragBounds(){return Kn()},get grabbedBoxes(){return ai()},get mouseX(){return m(()=>d.frozenElements.length>1)()?void 0:$n()??Qn().x},get isFrozen(){return O()||D()||qe()},get inputValue(){return d.inputText},get isPromptMode(){return N()},onShowContextMenuInstance:Di,onLabelInstanceHoverChange:fn,get onInputChange(){return S.setInputText},onInputSubmit:()=>void or(),onToggleExpand:ur,get isPendingDismiss(){return Re()},get selectionLabelShakeCount(){return Ue()},onConfirmDismiss:cr,onCancelDismiss:lr,get toolbarVisible(){return o.store.theme.toolbar.enabled},get isActive(){return D()},onToggleActive:dr,get enabled(){return P()},get shakeCount(){return Ve()},onToolbarStateChange:e=>{Ke(e),e.enabled!==P()&&(Be(e.enabled),e.enabled||(ir(),wi())),kn.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(kn.add(e),()=>{kn.delete(e)}),onToolbarSelectHoverChange:Je,onToolbarRef:e=>{$e=e},get contextMenuPosition(){return ui()},get contextMenuBounds(){return li()},get contextMenuTagName(){return di()},get contextMenuComponentName(){return fi()},get contextMenuHasFilePath(){return!!pi()?.filePath},get actions(){return o.store.actions},get actionContext(){return vi()},onContextMenuDismiss:yi,onContextMenuHide:gi,get toolbarMenuPosition(){return Ze()},get toolbarMenuActions(){return o.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return Ge()?.defaultAction??`comment`},onSetDefaultAction:Ei,onToggleToolbarMenu:Ti,onToolbarMenuDismiss:Ci}),Gr))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let Oi={activate:()=>{S.setPendingCommentMode(!1),!D()&&P()&&ar()},deactivate:()=>{(D()||j())&&Q()},toggle:()=>{D()?Q():P()&&ar()},comment:hr,isActive:()=>D(),isEnabled:()=>P(),setEnabled:e=>{e!==P()&&(Be(e),it({enabled:e,collapsed:!e}),e||(ir(),wi()))},getToolbarState:()=>ne(),setToolbarState:e=>{let t=ne(),n=e.collapsed??t?.collapsed??!1,r={edge:e.edge??t?.edge??`bottom`,ratio:e.ratio??t?.ratio??.5,collapsed:n,enabled:!n,defaultAction:e.defaultAction??t?.defaultAction??`comment`};v(r),Ke(r),r.enabled!==P()&&(Be(r.enabled),r.enabled||(ir(),wi())),kn.forEach(e=>e(r))},onToolbarStateChange:e=>(kn.add(e),()=>{kn.delete(e)}),dispose:()=>{n=!0,On=!1,r?.(),bi(),kn.clear(),t()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await bn(t)},getSource:async e=>{let t=await ae(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:de,getState:()=>({isActive:D(),isDragging:k(),isCopying:j(),isPromptMode:N(),isSelectionBoxVisible:!!$r(),isDragBoxVisible:!!oi(),targetElement:X(),dragBounds:Kn()??null,grabbedBoxes:[...er()],labelInstances:[...tr()],selectionFilePath:d.selectionFilePath,toolbarState:Ge()}),setOptions:e=>{o.setOptions(e)},registerPlugin:e=>{o.register(e,Oi)},unregisterPlugin:e=>{o.unregister(e)},getPlugins:()=>o.getPluginNames(),getDisplayName:A};for(let e of Dn)o.register(e,Oi);return setTimeout(()=>{Ae(!0)},pe),Oi})};export{Yt as a,fn as i,En as n,pn as r,X as t};
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @license MIT
3
+ *
4
+ * Copyright (c) 2025 Aiden Bai
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import{A as e,C as t,D as n,F as r,I as i,M as a,N as o,O as s,P as c,R as l,S as u,a as d,c as f,g as p,h as m,i as h,k as g,l as _,n as v,o as ee,r as y,s as te,t as ne,z as b}from"./state-Ds-1VLFt.js";import{$ as x,B as S,C,D as re,E as ie,F as ae,H as oe,I as w,L as se,M as ce,N as le,O as T,P as ue,Q as de,V as fe,_ as pe,a as me,b as E,c as he,d as ge,et as _e,f as ve,g as ye,h as D,ht as be,i as xe,j as Se,l as Ce,m as O,mt as we,o as Te,p as Ee,q as De,r as Oe,s as ke,t as Ae,tt as k,u as je,v as Me,w as Ne,x as Pe,y as A}from"./freeze-updates-DFjQ3htO.js";import{n as j,t as Fe}from"./create-element-selector-D1FizysC.js";var Ie=`/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
10
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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}}}@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;--spacing:4px;--font-weight-medium:500;--radius-sm:4px;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}}@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-0{top:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.z-1{z-index:1}.z-10{z-index:10}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.-m-0\\.5{margin:calc(var(--spacing) * -.5)}.m-0{margin:calc(var(--spacing) * 0)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.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)}.h-0{height:calc(var(--spacing) * 0)}.h-\\[17px\\]{height:17px}.h-fit{height:fit-content}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-4{min-height:calc(var(--spacing) * 4)}.w-0{width:calc(var(--spacing) * 0)}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\\[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}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.interactive-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}@media (hover:hover) and (pointer:fine){.interactive-scale:hover{transform:scale(1.05)}}.interactive-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.96)}.press-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.press-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.97)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.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{gap:calc(var(--spacing) * 0)}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-\\[5px\\]{gap:5px}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-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-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-transparent{background-color:#0000}.p-0{padding:calc(var(--spacing) * 0)}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-\\[3px\\]{padding-inline:3px}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-px{padding-block:1px}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.text-left{text-align:left}.font-sans{font-family:var(--font-sans)}.text-\\[11px\\]{font-size:11px}.text-\\[13px\\]{font-size:13px}.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)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.wrap-break-word{overflow-wrap:break-word}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.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-50{opacity:.5}.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)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-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\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-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,)}.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\\]{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\\]{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-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\]{transition-property:top,left,width,height,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-drawer{--tw-ease:var(--ease-drawer);transition-timing-function:var(--ease-drawer)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.ease-spring{--tw-ease:var(--ease-spring);transition-timing-function:var(--ease-spring)}.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}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}@media (hover:hover){.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:opacity-40:disabled{opacity:.4}}:host{all:initial;direction:ltr}:host,[data-rg-theme=dark]{--rg-panel-bg:#161616;--rg-text-primary:#fff;--rg-text-secondary:#a7a7a7;--rg-surface-hover:#ffffff1a;--rg-surface-active:#ffffff26;--rg-border-subtle:#ffffff1a;--rg-border-button:#fff3;--rg-submit-bg:#fff;--rg-submit-fg:#161616;--rg-error-text:#f87171;--rg-error-bg:#3d1515;--rg-error-bg-hover:#4d1f1f;--rg-shadow:0 2px 8px #00000014;--rg-drop-shadow:drop-shadow(0px 2px 8px #00000014);--rg-shimmer-from:#a1a1aa;--rg-shimmer-to:#d4d4d8;--rg-text-primary-85:#ffffffd9}@media (prefers-color-scheme:dark){:host:not([data-rg-theme]){--rg-panel-bg:#fff;--rg-text-primary:#171717;--rg-text-secondary:#737373;--rg-surface-hover:#0000000d;--rg-surface-active:#00000014;--rg-border-subtle:#00000014;--rg-border-button:#00000026;--rg-submit-bg:#171717;--rg-submit-fg:#fff;--rg-error-text:#dc2626;--rg-error-bg:#fee2e2;--rg-error-bg-hover:#fecaca;--rg-shadow:0 2px 12px #0000001a;--rg-drop-shadow:drop-shadow(0px 2px 12px #0000001a);--rg-shimmer-from:#71717a;--rg-shimmer-to:#a1a1aa;--rg-text-primary-85:#171717d9}}:host([data-rg-theme=light]),[data-rg-theme=light]{--rg-panel-bg:#fff;--rg-text-primary:#171717;--rg-text-secondary:#737373;--rg-surface-hover:#0000000d;--rg-surface-active:#00000014;--rg-border-subtle:#00000014;--rg-border-button:#00000026;--rg-submit-bg:#171717;--rg-submit-fg:#fff;--rg-error-text:#dc2626;--rg-error-bg:#fee2e2;--rg-error-bg-hover:#fecaca;--rg-shadow:0 2px 12px #0000001a;--rg-drop-shadow:drop-shadow(0px 2px 12px #0000001a);--rg-shimmer-from:#71717a;--rg-shimmer-to:#a1a1aa;--rg-text-primary-85:#171717d9}@keyframes rg-badge-slide{0%{transform:translate(-8.2px,12.4px)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){[data-react-grab-unread-indicator],[data-react-grab-unread-indicator] *{transition:none!important;animation:none!important}}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-3px)}30%{transform:translate(3px)}45%{transform:translate(-3px)}60%{transform:translate(3px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}@keyframes success-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes icon-loader-spin{0%{opacity:1}50%{opacity:.5}to{opacity:.2}}.icon-loader-bar{animation:.5s linear infinite icon-loader-spin}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer-text{background:linear-gradient(90deg, var(--rg-shimmer-from) 0%, var(--rg-shimmer-to) 25%, var(--rg-shimmer-from) 50%, var(--rg-shimmer-to) 75%, var(--rg-shimmer-from) 100%);color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:2.5s linear infinite shimmer}@keyframes clock-flash{0%{transform:scale(1)}25%{transform:scale(1.2)}50%{transform:scale(.92)}75%{transform:scale(1.05)}to{transform:scale(1)}}.animate-clock-flash{will-change:transform;animation:.4s ease-out clock-flash}.animate-shake{will-change:transform;animation:.3s ease-out shake}.animate-success-pop{will-change:transform, opacity;animation:.35s cubic-bezier(.34,1.56,.64,1) both success-pop}@supports (-webkit-touch-callout:none){textarea[data-react-grab-input]{font-size:16px}}@property --tw-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}`;const M=Symbol(`store-raw`),N=Symbol(`store-node`),P=Symbol(`store-has`),Le=Symbol(`store-self`);function Re(e){let t=e[u];if(!t&&(Object.defineProperty(e,u,{value:t=new Proxy(e,We)}),!Array.isArray(e))){let n=Object.keys(e),r=Object.getOwnPropertyDescriptors(e);for(let i=0,a=n.length;i<a;i++){let a=n[i];r[a].get&&Object.defineProperty(e,a,{enumerable:r[a].enumerable,get:r[a].get.bind(t)})}}return t}function F(e){let t;return typeof e==`object`&&!!e&&(e[u]||!(t=Object.getPrototypeOf(e))||t===Object.prototype||Array.isArray(e))}function I(e,t=new Set){let n,r,i,a;if(n=e!=null&&e[M])return n;if(!F(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=I(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=I(i,t))!==i&&(e[a]=r))}return e}function ze(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function Be(e,t,n){if(e[t])return e[t];let[r,i]=c(n,{equals:!1,internal:!0});return r.$=i,e[t]=r}function Ve(e,t){let n=Reflect.getOwnPropertyDescriptor(e,t);return!n||n.get||!n.configurable||t===u||t===N?n:(delete n.value,delete n.writable,n.get=()=>e[u][t],n)}function He(e){r()&&Be(ze(e,N),Le)()}function Ue(e){return He(e),Reflect.ownKeys(e)}const We={get(e,n,i){if(n===M)return e;if(n===u)return i;if(n===t)return He(e),i;let a=ze(e,N),o=a[n],s=o?o():e[n];if(n===N||n===P||n===`__proto__`)return s;if(!o){let t=Object.getOwnPropertyDescriptor(e,n);r()&&(typeof s!=`function`||e.hasOwnProperty(n))&&!(t&&t.get)&&(s=Be(a,n,s)())}return F(s)?Re(s):s},has(e,n){return n===M||n===u||n===t||n===N||n===P||n===`__proto__`?!0:(r()&&Be(ze(e,P),n)(),n in e)},set(){return!0},deleteProperty(){return!0},ownKeys:Ue,getOwnPropertyDescriptor:Ve};function Ge(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[P]&&e[P][t]&&i!==void 0&&e[P][t].$()):(e[t]=n,e[P]&&e[P][t]&&i===void 0&&e[P][t].$());let o=ze(e,N),s;if((s=Be(o,t,i))&&s.$(()=>n),Array.isArray(e)&&e.length!==a){for(let t=e.length;t<a;t++)(s=o[t])&&s.$();(s=Be(o,`length`,a))&&s.$(e.length)}(s=o[Le])&&s.$()}function Ke(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];Ge(e,i,t[i])}}function qe(e,t){if(typeof t==`function`&&(t=t(e)),t=I(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&&Ge(e,n,r)}Ge(e,`length`,r)}else Ke(e,t)}function Je(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++)Je(e,[r[i]].concat(t),n);return}else if(o&&a===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&Je(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)Je(e,[r].concat(t),n);return}else if(t.length>1){Je(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=I(a),r===void 0||F(i)&&F(a)&&!Array.isArray(a)?Ke(i,a):Ge(e,r,a))}function Ye(...[e,t]){let r=I(e||{}),i=Array.isArray(r),a=Re(r);function o(...e){n(()=>{i&&e.length===1?qe(r,e[0]):Je(r,e)})}return[a,o]}const Xe=new WeakMap,Ze={get(e,t){if(t===M)return e;let n=e[t],r;return F(n)?Xe.get(n)||(Xe.set(n,r=new Proxy(n,Ze)),r):n},set(e,t,n){return Ge(e,t,I(n)),!0},deleteProperty(e,t){return Ge(e,t,void 0,!0),!0}};function Qe(e){return t=>{if(F(t)){let n;(n=Xe.get(t))||Xe.set(t,n=new Proxy(t,Ze)),e(n)}return t}}const $e=e=>typeof e==`number`&&!Number.isNaN(e)&&Number.isFinite(e),et=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return $e(n)?n:null},tt=(e,t)=>{let n=e.split(`,`);if(n.length!==t)return null;let r=[];for(let e of n){let t=et(e);if(t===null)return null;r.push(t)}return r},nt=(e,t,n,r)=>e===1&&t===0&&n===0&&r===1,rt=e=>e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[15]===1,it=e=>{if(!e||e===`none`)return`none`;if(e.startsWith(`matrix`))if(e.startsWith(`matrix3d(`)){let t=e.length-1,n=tt(e.slice(9,t),16);if(n)return n[12]=0,n[13]=0,n[14]=0,rt(n)?`none`:`matrix3d(${n[0]}, ${n[1]}, ${n[2]}, ${n[3]}, ${n[4]}, ${n[5]}, ${n[6]}, ${n[7]}, ${n[8]}, ${n[9]}, ${n[10]}, ${n[11]}, 0, 0, 0, ${n[15]})`}else{let t=e.length-1,n=tt(e.slice(7,t),6);if(n){let e=n[0],t=n[1],r=n[2],i=n[3];return nt(e,t,r,i)?`none`:`matrix(${e}, ${t}, ${r}, ${i}, 0, 0)`}}return`none`},at=e=>e.isIdentity?`none`:e.is2D?nt(e.a,e.b,e.c,e.d)?`none`:`matrix(${e.a}, ${e.b}, ${e.c}, ${e.d}, 0, 0)`:e.m11===1&&e.m12===0&&e.m13===0&&e.m14===0&&e.m21===0&&e.m22===1&&e.m23===0&&e.m24===0&&e.m31===0&&e.m32===0&&e.m33===1&&e.m34===0&&e.m44===1?`none`:`matrix3d(${e.m11}, ${e.m12}, ${e.m13}, ${e.m14}, ${e.m21}, ${e.m22}, ${e.m23}, ${e.m24}, ${e.m31}, ${e.m32}, ${e.m33}, ${e.m34}, 0, 0, 0, ${e.m44})`;let ot=new WeakMap,st=new WeakMap,ct=new WeakMap;const lt=()=>{ot=new WeakMap,st=new WeakMap,ct=new WeakMap},L=(e,t)=>{let n=st.get(e);if(n&&t-n.timestamp<16)return n.transform;let r=window.getComputedStyle(e).transform,i=r&&r!==`none`?r:`none`;return st.set(e,{transform:i,timestamp:t}),i},R=(e,t,n)=>{let r=t&&t!==`none`,i=null,a=e.parentElement,o=0;for(;a&&a!==document.documentElement&&o<6;){let e=L(a,n);if(e!==`none`)i=i?new DOMMatrix(e).multiply(i):new DOMMatrix(e);else if(!r&&!i&&o>=3)return`none`;a=a.parentElement,o++}return i?(r&&(i=i.multiply(new DOMMatrix(t))),at(i)):r?it(t):`none`},ut=(e,t,n)=>{let r=ct.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return ct.set(e,{borderRadius:i,timestamp:n}),i},dt=(e,t,n,r)=>{let i=R(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}},z=e=>{let t=performance.now(),n=ot.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=dt(e,e.getBoundingClientRect(),window.getComputedStyle(e),t);return ot.set(e,{bounds:r,timestamp:t}),r},B=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),ft=e=>({selectionInteractionLockDepth:0,wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:e.keyHoldDuration,dragStart:{x:k,y:k},copyStart:{x:k,y:k},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,lastCopiedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:``,grabbedBoxes:[],labelInstances:[],isTouchMode:!1,theme:e.theme,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),pt=e=>{let[t,r]=Ye(ft(e)),[i,a]=c({x:k,y:k}),[o,s]=c(0),[l,u]=c({state:`idle`}),d=e=>{r(Qe(t=>{e(t),t.frozenElement=t.frozenElements.length>0?t.frozenElements[0]:null,t.frozenDragRect=null}))},f=()=>{d(e=>{e.frozenElements=[]})},p=e=>{u(t=>t.state===`active`?{...t,phase:e}:t)},m={startHold:e=>{e!==void 0&&r(`keyHoldDuration`,e),u({state:`holding`,startedAt:Date.now()})},releaseHold:()=>{l().state===`holding`&&u({state:`idle`})},activate:()=>{n(()=>{u({state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1}),r(`activationTimestamp`,Date.now()),r(`previouslyFocusedElement`,document.activeElement)})},deactivate:()=>{n(()=>{u({state:`idle`}),r(Qe(e=>{e.wasActivatedByToggle=!1,e.pendingCommentMode=!1,e.inputText=``,e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null,e.activationTimestamp=null,e.previouslyFocusedElement=null,e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null,e.lastCopiedElement=null}))})},toggle:()=>{t.activationTimestamp===null?(r(`wasActivatedByToggle`,!0),m.activate()):m.deactivate()},freeze:()=>{if(l().state===`active`){let e=t.frozenElement??t.detectedElement;e&&r(`frozenElement`,e),p(`frozen`)}},unfreeze:()=>{l().state===`active`&&n(()=>{r(Qe(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),p(`hovering`)})},startDrag:(e,t)=>{l().state===`active`&&n(()=>{t||f(),r(`dragStart`,{x:e.x+window.scrollX,y:e.y+window.scrollY}),p(`dragging-select`)})},startDragReposition:()=>{let e=l();e.state===`active`&&e.phase===`dragging-select`&&p(`dragging-reposition`)},stopDragReposition:()=>{let e=l();e.state===`active`&&e.phase===`dragging-reposition`&&p(`dragging-select`)},shiftDragStart:e=>{let t=l();t.state===`active`&&t.phase===`dragging-reposition`&&r(`dragStart`,t=>({x:t.x+e.x,y:t.y+e.y}))},endDrag:()=>{let e=l();e.state===`active`&&(e.phase===`dragging-select`||e.phase===`dragging-reposition`)&&n(()=>{r(`dragStart`,{x:k,y:k}),p(`justDragged`)})},cancelDrag:()=>{let e=l();e.state===`active`&&(e.phase===`dragging-select`||e.phase===`dragging-reposition`)&&n(()=>{r(`dragStart`,{x:k,y:k}),p(`hovering`)})},finishJustDragged:()=>{let e=l();e.state===`active`&&e.phase===`justDragged`&&p(`hovering`)},startCopy:()=>{let e=l().state===`active`;u({state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:e=>{let t=l(),i=t.state===`copying`?t.wasActive:!1;n(()=>{e&&r(`lastCopiedElement`,e),u({state:`justCopied`,copiedAt:Date.now(),wasActive:i})})},finishJustCopied:()=>{let e=l();e.state===`justCopied`&&(e.wasActive&&!t.wasActivatedByToggle?n(()=>{f(),u({state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})}):m.deactivate())},enterPromptMode:(e,t)=>{let{x:i}=B(z(t));n(()=>{r(`copyStart`,e),r(`copyOffsetFromCenterX`,e.x-i),a(e),r(`frozenElement`,t),r(`wasActivatedByToggle`,!0),l().state===`active`?u(e=>e.state===`active`?{...e,isPromptMode:!0,phase:`frozen`}:e):(u({state:`active`,phase:`frozen`,isPromptMode:!0,isPendingDismiss:!1}),r(`activationTimestamp`,Date.now()),r(`previouslyFocusedElement`,document.activeElement))})},exitPromptMode:()=>{u(e=>e.state===`active`?{...e,isPromptMode:!1,isPendingDismiss:!1}:e)},setInputText:e=>{r(`inputText`,e)},clearInputText:()=>{r(`inputText`,``)},setPendingDismiss:e=>{u(t=>t.state===`active`?{...t,isPendingDismiss:e}:t)},setPointer:e=>{a(e)},setDetectedElement:e=>{r(`detectedElement`,e)},setFrozenElement:e=>{d(t=>{t.frozenElements=[e]})},setFrozenElements:e=>{d(t=>{t.frozenElements=e})},toggleFrozenElement:e=>{d(t=>{let n=t.frozenElements.indexOf(e);n>=0?t.frozenElements.splice(n,1):t.frozenElements.push(e)})},addFrozenElements:e=>{d(t=>{for(let n of e)t.frozenElements.includes(n)||t.frozenElements.push(n)})},setFrozenDragRect:e=>{r(`frozenDragRect`,e)},setCopyStart:(e,t)=>{let{x:n}=B(z(t));r(`copyStart`,e),r(`copyOffsetFromCenterX`,e.x-n)},setLastGrabbed:e=>{r(`lastGrabbedElement`,e)},clearLastCopied:()=>{r(`lastCopiedElement`,null)},setWasActivatedByToggle:e=>{r(`wasActivatedByToggle`,e)},setPendingCommentMode:e=>{r(`pendingCommentMode`,e)},setTouchMode:e=>{r(`isTouchMode`,e)},incrementSelectionInteractionLockDepth:()=>{r(`selectionInteractionLockDepth`,e=>e+1)},decrementSelectionInteractionLockDepth:()=>{r(`selectionInteractionLockDepth`,e=>Math.max(0,e-1))},setSelectionSource:(e,t)=>{n(()=>{r(`selectionFilePath`,e),r(`selectionLineNumber`,t)})},incrementViewportVersion:()=>{s(e=>e+1)},addGrabbedBox:e=>{r(`grabbedBoxes`,t=>[...t,e])},removeGrabbedBox:e=>{r(`grabbedBoxes`,t=>t.filter(t=>t.id!==e))},clearGrabbedBoxes:()=>{r(`grabbedBoxes`,[])},addLabelInstance:e=>{r(`labelInstances`,t=>[...t,e])},updateLabelInstance:(e,i,a)=>{let o=t.labelInstances.findIndex(t=>t.id===e);o!==-1&&n(()=>{r(`labelInstances`,o,`status`,i),a!==void 0&&r(`labelInstances`,o,`errorMessage`,a)})},removeLabelInstance:e=>{r(`labelInstances`,t=>t.filter(t=>t.id!==e))},clearLabelInstances:()=>{r(`labelInstances`,[])},showContextMenu:(e,t)=>{let{x:i,y:a}=B(z(t));n(()=>{r(`contextMenuPosition`,e),r(`contextMenuElement`,t),r(`contextMenuClickOffset`,{x:e.x-i,y:e.y-a})})},hideContextMenu:()=>{n(()=>{r(`contextMenuPosition`,null),r(`contextMenuElement`,null),r(`contextMenuClickOffset`,null)})},updateContextMenuPosition:()=>{let e=t.contextMenuElement,n=t.contextMenuClickOffset;if(!e||!n||!_(e))return;let{x:i,y:a}=B(z(e));r(`contextMenuPosition`,{x:i+n.x,y:a+n.y})}};return{store:t,actions:m,pointer:i,viewportVersion:o,current:l}},V=`data-react-grab`,H=e=>{if(!document.body)return;let t=document.querySelectorAll(`[${V}]`);for(let n of t)n!==e&&n.parentNode!==e&&(n.shadowRoot||n.remove());document.body.appendChild(e)},U=e=>{if(document.body){H(e);return}let t=()=>{document.removeEventListener(`DOMContentLoaded`,t),H(e)};document.addEventListener(`DOMContentLoaded`,t,{once:!0})},mt=e=>{let t=document.querySelectorAll(`[${V}]`);for(let e of t){let t=e.shadowRoot?.querySelector(`[${V}]`);if(t instanceof HTMLDivElement)return{root:t,host:e};e.remove()}let n=document.createElement(`div`);n.setAttribute(V,`true`),ue(n),n.style.zIndex=String(be),n.style.position=`fixed`,n.style.inset=`0`,n.style.pointerEvents=`none`,n.style.contain=`strict`;let r=n.attachShadow({mode:`open`}),i=document.createElement(`style`),a=ae();a&&(i.nonce=a),i.textContent=`@import url("https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap");\n${e??``}`,r.appendChild(i);let o=document.createElement(`div`);return o.setAttribute(V,`true`),r.appendChild(o),U(n),setTimeout(()=>{H(n)},x),{root:o,host:n}},W=[`data-theme`,`data-mode`,`data-color-scheme`,`data-bs-theme`,`data-mui-color-scheme`],ht=[{attribute:`data-dark`,theme:`dark`},{attribute:`data-light`,theme:`light`}],gt=/rgba?\(\s*(\d+(?:\.\d+)?)\s*[,\s]\s*(\d+(?:\.\d+)?)\s*[,\s]\s*(\d+(?:\.\d+)?)(?:\s*[,/]\s*(\d+(?:\.\d+)?))?\s*\)/,_t=e=>{if(e===`transparent`)return!0;let t=e.match(gt);if(!t)return!1;let n=t[4];return n!==void 0&&Number(n)===0},vt=(e,t,n)=>{let[r,i,a]=[e,t,n].map(e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4});return .2126*r+.7152*i+.0722*a},yt=()=>{let e=document.body??document.documentElement,t=getComputedStyle(e).backgroundColor;if(!t||_t(t))return null;let n=t.match(gt);return n?vt(Number(n[1]),Number(n[2]),Number(n[3]))<.18?`dark`:`light`:null},bt=e=>{let t=e.toLowerCase();return t===`dark`?`dark`:t===`light`?`light`:null},xt=e=>{let t=e.trim().toLowerCase();return!t||t===`normal`||t===`auto`?null:t.split(/\s+/).find(e=>e===`dark`||e===`light`)??null},St=()=>{let e=document.documentElement;if(e.classList.contains(`dark`))return`dark`;if(e.classList.contains(`light`))return`light`;for(let t of W){let n=e.getAttribute(t);if(!n)continue;let r=bt(n);if(r)return r}for(let{attribute:t,theme:n}of ht)if(e.hasAttribute(t))return n;let t=e.style.colorScheme||getComputedStyle(e).colorScheme;if(t){let e=xt(t);if(e)return e}return yt()||(window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`)},G=e=>e===`dark`?`light`:`dark`,K={attributes:!0,attributeFilter:[`class`,`style`,...W,...ht.map(({attribute:e})=>e)]},Ct=(e,t)=>{let n=null,r=null,i=()=>{let r=G(St());return r!==n&&(n=r,e.setAttribute(`data-rg-theme`,r),t?.(r)),r},a=()=>{r===null&&(r=ce(()=>{r=null,i()}))},o=i(),s=new MutationObserver(a);s.observe(document.documentElement,K);let c=null;document.body?s.observe(document.body,K):(c=new MutationObserver(()=>{document.body&&(c.disconnect(),c=null,s.observe(document.body,K),i())}),c.observe(document.documentElement,{childList:!0}));let l=window.matchMedia(`(prefers-color-scheme: dark)`);return l.addEventListener(`change`,a),{theme:o,cleanup:()=>{c?.disconnect(),s.disconnect(),l.removeEventListener(`change`,a),r!==null&&Se(r)}}},q=()=>{},wt=()=>({activate:q,deactivate:q,toggle:q,comment:q,isActive:()=>!1,isEnabled:()=>!1,setEnabled:q,getToolbarState:()=>null,setToolbarState:q,onToolbarStateChange:()=>q,dispose:q,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:q,registerPlugin:q,unregisterPlugin:q,getPlugins:()=>[],getDisplayName:()=>null}),Tt=()=>{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})}}},Et=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,Dt=e=>e instanceof Error?e:Error(String(e)),Ot=(e,t,n)=>Promise.race([e,new Promise(e=>setTimeout(()=>e(n),t))]),kt=(e,t,n)=>{let r=w(e),i=t?.componentName??A(e);if(!t&&!i)return`[${C(e)}]`;let a=``;for(let t of S){let n=e.getAttribute(t);n&&(a+=` ${t}="${n.replaceAll(`"`,`'`)}"`)}let o=E(e).replaceAll(`"`,`'`),s=o?` "${T(o,30)}"`:``,c=[`<${r}${a}>${s}`];if(i&&c.push(`in ${i}`),t){let e=n&&t.lineNumber?`:${t.lineNumber}`:``;c.push(`@${t.filePath}${e}`)}return`[${c.join(` `)}]`},At=async e=>{let t=Me(),n=await Ot(Promise.all(e.map(re)),fe,e.map(()=>null)),r=new Set(e.map((e,r)=>kt(e,n[r],t)));return r.size>0?[...r].join(`
11
+ `):null},jt=async(e,t,n,r)=>{let i=!1,a=``;await t.onBeforeCopy(n);try{let o=e.getContent?await e.getContent(n):await At(n);if(o?.trim()){let s=await t.transformCopyContent(o,n);a=r?`${r}\n${s}`:s,i=j(a,{componentName:e.componentName})}}catch(e){t.onCopyError(Dt(e))}return i&&t.onCopySuccess(n,a),t.onAfterCopy(n,i),i},Mt=(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)},Nt=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,Pt=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}),Ft=e=>{if(e.width<=0||e.height<=0)return[];let t=window.innerWidth,n=window.innerHeight,r=e.x,i=e.y,a=e.x+e.width,o=e.y+e.height,s=r+e.width/2,c=i+e.height/2,l=d(Math.ceil(e.width/32),3,20),u=d(Math.ceil(e.height/32),3,20),f=l*u,p=f>100?Math.sqrt(100/f):1,m=d(Math.floor(l*p),3,20),h=d(Math.floor(u*p),3,20),g=new Set,_=[],v=(e,r)=>{let i=d(Math.round(e),0,t-1),a=d(Math.round(r),0,n-1),o=`${i}:${a}`;g.has(o)||(g.add(o),_.push({x:i,y:a}))};v(r+1,i+1),v(a-1,i+1),v(r+1,o-1),v(a-1,o-1),v(s,i+1),v(s,o-1),v(r+1,c),v(a-1,c),v(s,c);for(let t=0;t<m;t+=1){let n=r+(t+.5)/m*e.width;for(let t=0;t<h;t+=1)v(n,i+(t+.5)/h*e.height)}return _},It=(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=Ft(e);O();try{for(let e of a){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)i.add(e)}}finally{Ee()}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=Mt(r,i),a=t.width*t.height;a>0&&n/a>=.75&&c.push(e)}else Nt(i,r)&&c.push(e)}return Pt(c)},Lt=e=>e.filter(t=>!e.some(e=>e!==t&&e.contains(t))),Rt=(e,t,n=!0)=>Lt(It(e,t,n)),zt=(e,t)=>e.width<=0?0:d((t.x-e.x)/e.width,0,1),Bt=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}},Vt=()=>{lt(),je(),D()},Ht=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:`0px`,transform:`none`}),Ut=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Wt=e=>({...e,borderRadius:`0px`,transform:`none`}),Gt=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),Kt=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:Gt.has(e),J=(e,t)=>{if(!e||!t)return!1;let n=e.toLowerCase();return t===`Space`?n===`space`||n===` `:t.startsWith(`Key`)?t.slice(3).toLowerCase()===n:t.startsWith(`Digit`)?t.slice(5)===n:!1},Y={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},qt=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=Y[e];t?n[t]=!0:n.key=e}return n},Jt=e=>{if(typeof e==`function`)return e;let t=qt(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||J(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}},Yt=e=>!e||typeof e==`function`?{metaKey:h(),ctrlKey:!h(),shiftKey:!1,altKey:!1,key:null}:qt(e),Xt=(e,t)=>{if(t.activationKey)return Jt(t.activationKey)(e);let n=(h()?e.metaKey:e.ctrlKey)&&!e.shiftKey&&!e.altKey;return!!(e.key&&n&&Kt(e.key,e.code))},Zt=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}},$t=(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}}),en={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,activationKey:void 0,getContent:void 0,freezeReactUpdates:!0},tn=(e={})=>{let t=new Map,n={},[r,i]=Ye({theme:Qt,options:{...en,...e},actions:[]}),a=()=>{let r=Qt,a={...en,...e},o=[];for(let{config:e}of t.values())if(e.theme&&(r=$t(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`,`activationKey`,`getContent`,`freezeReactUpdates`],c=e=>{for(let t of s)e[t]!==void 0&&o(t,e[t])},l=(e,n)=>{t.has(e.name)&&u(e.name);let r=e.setup?.(n,_)??{};e.theme&&(r.theme=r.theme?$t($t(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()},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)};return{register:l,unregister:u,getPluginNames:d,setOptions:c,store:r,hooks:_}},nn=(e,t)=>{let n=[],r=(n,r)=>{let i=Bt(t(n)),a=ve(i.x,i.y).filter(e),o=a.indexOf(n);return o===-1?null:a[o+r]??null},i=e=>{let t=r(e,1);return t&&(n.push(e),n.length>50&&(n=n.slice(-50))),t},a=e=>{if(n.length>0){let e=n.pop();if(_(e))return e}return r(e,-1)},o=e=>e instanceof SVGElement&&!(e instanceof SVGSVGElement),s=e=>{let t=e.getBoundingClientRect();return t.width>=16||t.height>=16},c=(e,t)=>Math.abs(e.x-t.x)<=2&&Math.abs(e.y-t.y)<=2&&Math.abs(e.width-t.width)<=2&&Math.abs(e.height-t.height)<=2,l=t=>e(t)&&!o(t)&&s(t),u=(e,t)=>{let n=e.getBoundingClientRect(),r=e=>!c(e.getBoundingClientRect(),n),i=e=>{if(e instanceof SVGSVGElement)return null;let n=Array.from(e.children),a=t?n:n.reverse();for(let e of a)if(t){if(l(e)&&r(e))return e;let t=i(e);if(t)return t}else{let t=i(e);if(t)return t;if(l(e)&&r(e))return e}return null},a=e=>t?e.nextElementSibling:e.previousElementSibling,o=null;if(t&&(o=i(e)),!o){let n=e;for(;n;){let e=a(n);for(;e;){if(l(e)&&r(e)){o=e;break}let t=i(e);if(t){o=t;break}e=a(e)}if(o)break;let s=n.parentElement;if(!t&&s&&l(s)){o=s;break}n=s}}return o};return{findNext:(e,t)=>{switch(e){case`ArrowUp`:return i(t);case`ArrowDown`:return a(t);case`ArrowRight`:return u(t,!0);case`ArrowLeft`:return u(t,!1);default:return null}},clearHistory:()=>{n=[]}}},rn=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Yt(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},an=()=>{let e=new WeakSet,t=Object.getOwnPropertyDescriptor(KeyboardEvent.prototype,`key`),n=!1;if(t?.get&&!t.get.__reactGrabPatched){n=!0;let r=t.get,i=function(){return e.has(this)?``:r.call(this)};i.__reactGrabPatched=!0,Object.defineProperty(KeyboardEvent.prototype,`key`,{get:i,configurable:!0})}return{claimedEvents:e,originalKeyDescriptor:t,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,`key`,t)}}},on=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),sn=(e,t,n)=>{let r=null,i=()=>{if(!t()){a();return}let o=e(),s=on(o.x,o.y),c=0,l=0;if(s.top&&(l-=10),s.bottom&&(l+=10),s.left&&(c-=10),s.right&&(c+=10),c!==0||l!==0){let e=window.scrollX,t=window.scrollY;window.scrollBy(c,l);let r=window.scrollX-e,i=window.scrollY-t;(r!==0||i!==0)&&n?.({x:r,y:i})}r=s.top||s.bottom||s.left||s.right?ce(i):null},a=()=>{r!==null&&(Se(r),r=null)};return{start:i,stop:a,isActive:()=>r!==null}},cn=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},ln=()=>{try{let e=`0.1.35`,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&&!cn()&&fetch(`https://www.react-grab.com/api/version?source=browser&v=${e}&t=${Date.now()}`,{referrerPolicy:`origin`,keepalive:!0,priority:`low`,cache:`no-store`}).then(e=>e.text()).then(t=>{t&&t!==e&&console.warn(`[React Grab] v${e} is outdated (latest: v${t}). Run \`npx grab@latest upgrade\` to upgrade.`)}).catch(()=>null)}catch{}},un=e=>typeof e==`object`&&!!e,dn=e=>{if(!un(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.activationKey==`string`&&(t.activationKey=e.activationKey),typeof e.freezeReactUpdates==`boolean`&&(t.freezeReactUpdates=e.freezeReactUpdates),Object.keys(t).length===0?null:t},fn=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?dn(JSON.parse(e)):null}catch{return null}},pn=e=>e===`Enter`||e===`NumpadEnter`,mn=(e,t)=>e.x>=t.x&&e.x<=t.x+t.width&&e.y>=t.y&&e.y<=t.y+t.height,hn=e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}),gn=hn({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),_n={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},vn={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:e=>{e.filePath&&(e.hooks.onOpenFile(e.filePath,e.lineNumber)||Ce(e.filePath,e.lineNumber,e.hooks.transformOpenFileUrl),e.hideContextMenu(),e.cleanup())}}]},yn=async(e,t={})=>(await Promise.allSettled(e.map(e=>Pe(e,t)))).map(e=>e.status===`fulfilled`?e.value:``),bn=e=>{if(e.length===0)return[];let t=Math.min(...e.map(e=>e.length)),n=0;for(let r=1;r<=t;r++){let t=e[0][e[0].length-r];if(!e.every(e=>e[e.length-r]===t))break;n=r}return n===0?[]:e[0].slice(e[0].length-n)},xn=e=>{let t=e.indexOf(`
12
+ in `);return t===-1?{htmlPreview:e,stackLines:[]}:{htmlPreview:e.slice(0,t),stackLines:e.slice(t).split(`
13
+ `).filter(e=>e.trim().length>0)}},Sn=(e,t)=>`[${t+1}]\n${e}`,Cn=e=>{if(e.length<=1)return e[0]??``;let t=e.map(xn),n=bn(t.map(e=>e.stackLines));if(n.length===0)return e.map(Sn).join(`
14
+
15
+ `);if(t.every(e=>e.stackLines.length===n.length))return`${t.map((e,t)=>`[${t+1}] ${e.htmlPreview}`).join(`
16
+ `)}\n (all from the same component stack)\n${n.join(`
17
+ `)}`;let r=[];for(let i=0;i<t.length;i++){let a=t[i];if(i===0){r.push(Sn(e[0],0));continue}let o=a.stackLines.slice(0,a.stackLines.length-n.length),s=o.length>0?`\n${o.join(`
18
+ `)}`:``;r.push(`[${i+1}]\n${a.htmlPreview}${s}\n (remaining stack same as [1])`)}return r.join(`
19
+
20
+ `)},wn=hn({name:`copy-details`,contextMenuAction:(e,t)=>({id:`copy-details`,label:`Copy details`,showInToolbarMenu:!0,onAction:async e=>{await e.performWithFeedback(async()=>{let t=(await yn(e.elements)).filter(e=>e.trim());if(t.length===0)return!1;let n=Cn(t),r=await e.hooks.transformHtmlContent(n,e.elements);return r?j(r,{componentName:e.componentName,tagName:e.tagName}):!1})}})}),Tn=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,X=`react-grab-comment-items`,En=`react-grab-history-items`,Dn=()=>{try{let e=sessionStorage.getItem(En);e&&!sessionStorage.getItem(X)&&sessionStorage.setItem(X,e),sessionStorage.removeItem(En)}catch{}},On=()=>{try{let e=sessionStorage.getItem(X);return e?JSON.parse(e).map(e=>({...e,elementsCount:Math.max(1,e.elementsCount??1),previewBounds:e.previewBounds??[],elementSelectors:e.elementSelectors??[]})):[]}catch{return[]}},kn=e=>{try{return sessionStorage.getItem(e)===`1`}catch{return!1}},An=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},jn=e=>{Mn=An(e);try{sessionStorage.setItem(X,JSON.stringify(Mn))}catch{}return Mn};let Mn=[];typeof window<`u`&&(Dn(),Mn=On(),kn(`react-grab-clear-confirmed`));const Nn=()=>Mn,Pn=e=>jn([{...e,id:Tn(`comment`)},...Mn].slice(0,20)),Fn=e=>{jn(Mn.filter(t=>t.id!==e))},In=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`},Ln=[gn,_n,wn,vn];let Rn=!1;const zn=new Set,Bn=t=>{if(typeof window>`u`)return wt();let n={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,...fn(),...t};if(n.enabled===!1||Rn)return wt();Rn=!0,ln();let{enabled:r,...u}=n;return o(t=>{let n=!1,r,o=tn(u),{store:d,actions:x,pointer:S,viewportVersion:C,current:T}=pt({theme:Qt,keyHoldDuration:o.store.options.keyHoldDuration??100}),E=e(()=>T().state===`holding`),D=e(()=>T().state===`active`),be=e(()=>{let e=T();return e.state===`active`&&e.phase===`frozen`}),O=e(()=>{let e=T();return e.state===`active`&&(e.phase===`dragging-select`||e.phase===`dragging-reposition`)}),Ee=e(()=>{if(!O())return!1;let e=Math.abs(S().x+window.scrollX-d.dragStart.x),t=Math.abs(S().y+window.scrollY-d.dragStart.y);return e>2||t>2}),k=e(()=>{let e=T();return e.state===`active`&&e.phase===`dragging-reposition`}),Pe=e(()=>{let e=T();return e.state===`active`&&e.phase===`justDragged`}),j=e(()=>T().state===`copying`),M=e(()=>j()||d.selectionInteractionLockDepth>0),N=e(()=>T().state===`justCopied`),P=e(()=>{let e=T();return e.state===`active`&&!!e.isPromptMode}),Le=e(()=>d.pendingCommentMode||P()),Re=e(()=>{let e=T();return e.state===`active`&&!!e.isPromptMode&&!!e.isPendingDismiss});g(l(D,(e,t)=>{e&&!t?(Oe(S().x,S().y),ke(),document.body.style.touchAction=`none`):!e&&t&&(xe(),he(),document.body.style.touchAction=``)}));let F=ne(),[I,ze]=c(F?!F.collapsed:!0),[Be,Ve]=c(0),[He,Ue]=c(0),[We,Ge]=c(F),[Ke,qe]=c(!1),[Je,Ye]=c(Nn()),[Xe,Ze]=c(null),Qe,$e=null,et=new Map,tt=new WeakMap,nt=()=>{tt=new WeakMap},rt=()=>{ht(!1),nt()},it=e=>{let t=We()??ne(),n={edge:t?.edge??`bottom`,ratio:t?.ratio??.5,collapsed:t?.collapsed??!1,enabled:t?.enabled??!0,defaultAction:t?.defaultAction??`comment`,...e};v(n),Ge(n);for(let e of zn)e(n)},at=()=>{H.timerId!==null&&(clearTimeout(H.timerId),H.timerId=null)},ot=()=>{H.copyWaiting=!1,H.holdTimerFired=!1,H.startTimestamp=null};g(()=>{if(T().state!==`holding`){at();return}H.startTimestamp=Date.now(),H.timerId=window.setTimeout(()=>{if(H.timerId=null,H.copyWaiting){H.holdTimerFired=!0;return}x.activate()},d.keyHoldDuration),b(at)}),g(()=>{let e=T();if(e.state!==`active`||e.phase!==`justDragged`)return;let t=setTimeout(()=>{x.finishJustDragged()},De);b(()=>clearTimeout(t))}),g(()=>{if(T().state!==`justCopied`)return;let e=setTimeout(()=>{x.finishJustCopied()},De);b(()=>clearTimeout(e))}),g(l(E,(e,t=!1)=>{!t||e||!D()||(o.store.options.activationMode!==`hold`&&x.setWasActivatedByToggle(!0),o.hooks.onActivate())}));let st=(e,t,n)=>{lt(e,t,n),x.clearInputText()},ct=()=>{let e=d.frozenElement||X();e&&x.enterPromptMode({x:S().x,y:S().y},e)},lt=(e,t,n)=>{x.setCopyStart({x:t,y:n},e)},L={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},R=null,[ut,dt]=c(null),ft=(e,t)=>{R!==null&&clearTimeout(R),dt(null),R=window.setTimeout(()=>{dt({x:e,y:t}),R=null},32)},V=null,H={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},U=null,[W,ht]=c(!1),gt=0,_t=!1,vt=null,yt=()=>{_t=!0,vt!==null&&window.clearTimeout(vt),vt=window.setTimeout(()=>{_t=!1,vt=null},De)},bt=()=>{vt!==null&&(window.clearTimeout(vt),vt=null),_t=!1},xt=0,St=0,G=null,K=null,q=null,[wt,Dt]=c(!1),[kt,At]=c(null),[Mt,Nt]=c(void 0),[Pt,Ft]=c([]),[It,Lt]=c(0),Gt=nn(ye,z),J=sn(S,()=>O(),e=>{if(k()){if(x.shiftDragStart(e),U){U={x:U.x+e.x,y:U.y+e.y};return}let{pageX:t,pageY:n}=Hn(S().x,S().y);U={x:t,y:n}}}),Y=e(()=>D()&&!j()),qt=new Map,Yt=(e,t)=>{let n=Tn(`grabbed`),r={id:n,bounds:e,createdAt:Date.now(),element:t};x.addGrabbedBox(r),o.hooks.onGrabbedBox(e,t);let i=window.setTimeout(()=>{qt.delete(n),x.removeGrabbedBox(n)},De);qt.set(n,i)},$t=async e=>{let t=await Promise.all(e.map(async e=>{let t=await re(e),n=t?.componentName??null,r=t?.filePath,i=t?.lineNumber??void 0,a=t?.columnNumber??void 0;n||=A(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}}))},en=new Map,cn=e=>{let t=en.get(e);t!==void 0&&(window.clearTimeout(t),en.delete(e))},ln=()=>{for(let e of en.values())window.clearTimeout(e);en.clear()},un=e=>{cn(e);let t=window.setTimeout(()=>{en.delete(e),x.updateLabelInstance(e,`fading`),setTimeout(()=>{en.delete(e),x.removeLabelInstance(e)},150)},De);en.set(e,t)},dn=(e,t)=>{if(t)cn(e);else{let t=d.labelInstances.find(t=>t.id===e);t&&t.status===`copied`&&un(e)}},fn=(e,t,n,r,i)=>{x.clearLabelInstances(),ln();let a=Tn(`label`),o=e.x+e.width/2,s=e.width/2,c=i?.mouseX,l=c===void 0?void 0:c-o,u={id:a,bounds:e,boundsMultiple:i?.boundsMultiple,tagName:t,componentName:n,status:r,createdAt:Date.now(),element:i?.element,elements:i?.elements,mouseX:c,mouseXOffsetFromCenter:l,mouseXOffsetRatio:l!==void 0&&s>0?l/s:void 0,hideArrow:i?.hideArrow};return x.addLabelInstance(u),a},hn=(e,t)=>{x.clearLabelInstances(),ln();let n=[];for(let r of e){let e=z(r.element),i=e.x+e.width/2,a=e.width/2,o=r.mouseX===void 0?void 0:r.mouseX-i,s=Tn(`label`),c={id:s,bounds:e,tagName:r.tagName,componentName:r.componentName,status:t,createdAt:Date.now(),element:r.element,mouseX:r.mouseX,mouseXOffsetFromCenter:o,mouseXOffsetRatio:o!==void 0&&a>0?o/a:void 0};x.addLabelInstance(c),n.push(s)}return n},gn=()=>{ln(),x.clearLabelInstances()},_n=(e,t,n)=>{t?x.updateLabelInstance(e,`copied`):x.updateLabelInstance(e,`error`,n||`Unknown error`),un(e)},vn=()=>{T().state===`copying`&&x.activate()},yn=async(e,t,n,r)=>{bt(),T().state!==`copying`&&x.startCopy();let i=!1,a;try{await e(),i=!0}catch(e){a=Et(e,`Action failed`)}if(t)for(let e of t)_n(e,i,a);T().state===`copying`&&(i&&x.completeCopy(n),r?Q():i?(x.activate(),yt()):vn())},bn=e=>{let{copiedElements:t,content:n,extraPrompt:r,elementName:i,tagName:a,componentName:s}=e;if(o.hooks.onCopySuccess(t,n),!r)return;let c=t.length>0;if(c){let e=Je();for(let[n,i]of et.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){Fn(n),et.delete(n);break}}}let l=t.map((e,t)=>Fe(e,t===0)),u=Pn({content:n,elementName:i??`element`,tagName:a??`div`,componentName:s??void 0,elementsCount:t.length,previewBounds:t.map(e=>z(e)),elementSelectors:l,commentText:r,timestamp:Date.now()});Ye(u);let d=u[0];d&&c&&et.set(d.id,[...t]);let f=new Set(u.map(e=>e.id));for(let e of et.keys())f.has(e)||et.delete(e)},xn=(e,t,n)=>{let r=e[0],i=n??(r?A(r):null),a=r?w(r):null,s=i??a??void 0;return jt({getContent:o.store.options.getContent,componentName:s},{onBeforeCopy:o.hooks.onBeforeCopy,transformCopyContent:o.hooks.transformCopyContent,onAfterCopy:o.hooks.onAfterCopy,onCopySuccess:(e,n)=>{bn({copiedElements:e,content:n,extraPrompt:t,elementName:s,tagName:a,componentName:i})},onCopyError:o.hooks.onCopyError},e,t)},Sn=async(e,t,n)=>{if(e.length===0)return;let r=[],i=[];for(let t of e){let{wasIntercepted:e,pendingResult:n}=o.hooks.onElementSelect(t);e||r.push(t),n&&i.push(n),o.store.theme.grabbedBoxes.enabled&&Yt(z(t),t)}if(await le(),r.length>0)await xn(r,t,n);else if(i.length>0&&!(await Promise.all(i)).every(Boolean))throw Error(`Failed to copy`);$t(e)},Cn=e=>{let{element:t,cursorX:n,selectedElements:r,extraPrompt:i,shouldDeactivateAfter:a,onComplete:o,dragRect:s}=e,c=r??[t],l=s??d.frozenDragRect,u=c.length>1,f=l&&u?Ht(l):Wt(z(t)),p=u?f.x+f.width/2:n,m=w(t);bt(),x.startCopy();let h=m?fn(f,m,void 0,`copying`,{element:t,mouseX:p,elements:r}):null;Ot(Ne(t),fe,null).then(async e=>{await yn(()=>Sn(c,i,e??void 0),h?[h]:null,t,a),o?.()}).catch(e=>{h&&_n(h,!1,Et(e,`Action failed`)),vn()})},wn=e=>{let{elements:t,labelEntries:n,shouldDeactivateAfter:r,onComplete:i}=e,a=t[0];bt(),x.startCopy();let o=hn(n,`copying`);Ot(Ne(a),fe,null).then(async e=>{await yn(()=>Sn(t,void 0,e??void 0),o.length>0?o:null,a,r),i?.()}).catch(e=>{let t=Et(e,`Action failed`);for(let e of o)_n(e,!1,t);vn()})},X=e(()=>{if(C(),!Y()||Ee()||M())return null;let e=d.detectedElement;return _(e)?e:null}),En=e(()=>d.frozenElement||(be()?null:X()));g(()=>{let e=d.detectedElement;if(!e)return;let t=setInterval(()=>{_(e)||x.setDetectedElement(null)},100);b(()=>clearInterval(t))}),g(l(En,e=>{if(G!==null&&(clearTimeout(G),G=null),!e){At(null);return}G=window.setTimeout(()=>{G=null,At(e)},100)})),b(()=>{G!==null&&(clearTimeout(G),G=null)}),g(()=>{let e=d.frozenElements;b(Te(e))}),g(l(D,e=>{e&&o.store.options.freezeReactUpdates&&b(Ae())}));let Dn=()=>{if(d.isTouchMode&&O()){let e=d.detectedElement;return!e||pe(e)?void 0:e}let e=En();if(!(!e||pe(e)))return e},On=e(()=>Dn()),kn=()=>On()?d.isTouchMode&&O()?Y():Y()&&!Ee():!1,An=i(()=>d.frozenElements,t=>e(()=>(C(),z(t)))),jn=e(()=>{let e=d.frozenElements;if(e.length===0)return[];let t=d.frozenDragRect;return t&&e.length>1?[Ht(t)]:An().map(e=>e())}),Mn=e(()=>{if(!W()||d.pendingCommentMode||wt())return null;let e=d.detectedElement;return!_(e)||pe(e)||d.frozenElements.includes(e)?null:e}),Bn=e(()=>{C();let e=Mn();if(e)return z(e)}),Vn=e(()=>{C();let e=d.frozenElements;if(e.length>0){let t=jn();if(e.length===1){let e=t[0];if(e)return e}let n=d.frozenDragRect;return n?t[0]??Ht(n):Wt(Zt(t))}let t=On();if(t)return z(t)}),Hn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),Un=(e,t)=>{let{pageX:n,pageY:r}=Hn(e,t);return{x:Math.abs(n-d.dragStart.x),y:Math.abs(r-d.dragStart.y)}},Wn=e(()=>{if(!O())return!1;let e=Un(S().x,S().y);return e.x>2||e.y>2}),Gn=(e,t)=>{let{pageX:n,pageY:r}=Hn(e,t),i=Math.min(d.dragStart.x,n),a=Math.min(d.dragStart.y,r),o=Math.abs(n-d.dragStart.x),s=Math.abs(r-d.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},Kn=e=>e.code===`Space`||e.key===` `,qn=()=>{if(!O())return;x.startDragReposition();let{pageX:e,pageY:t}=Hn(S().x,S().y);U={x:e,y:t}},Jn=()=>{x.stopDragReposition(),U=null},Yn=e(()=>{if(C(),!Wn())return;let e=Gn(S().x,S().y);return{borderRadius:`0px`,height:e.height,transform:`none`,width:e.width,x:e.x,y:e.y}}),Xn=e(()=>{if(C(),!Wn())return[];let e=ut();if(!e)return[];let t=Gn(e.x,e.y),n=Rt(t,ye);return(n.length>0?n:Rt(t,ye,!1)).map(e=>z(e))}),Zn=e(()=>{let e=Xn();if(e.length>0)return e;let t=Bn();return t?[...jn(),t]:jn()}),Qn=i(()=>d.frozenElements,t=>{let n=w(t)||`element`,r=A(t)??void 0;return e(()=>{if(C(),!_(t))return null;let e=z(t),i=tt.get(t);return{tagName:n,componentName:r,bounds:e,mouseX:i===void 0?void 0:e.x+e.width*i}})}),$n=e(()=>{if(P()||d.frozenElements.length<2)return[];let e=[];for(let t of Qn()){let n=t();n!==null&&e.push(n)}return e}),er=e(()=>{if(P())return null;let e=Mn();return e?(C(),{tagName:w(e)||`element`,componentName:A(e)??void 0,bounds:z(e),mouseX:S().x}):null}),tr=e(()=>{if(j()||P()){C();let e=d.frozenElement||X();return e?{x:B(z(e)).x+d.copyOffsetFromCenterX,y:d.copyStart.y}:{x:d.copyStart.x,y:d.copyStart.y}}return{x:S().x,y:S().y}}),nr=e(()=>{if(!W()||d.frozenElements.length!==1)return;C();let e=d.frozenElements[0];if(!_(e))return;let t=tt.get(e);if(t===void 0)return;let n=z(e);return n.x+n.width*t});g(l(()=>[X(),d.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&x.setLastGrabbed(null),e&&o.hooks.onElementHover(e)})),g(l(()=>X(),e=>{let t=++xt,n=()=>{xt===t&&x.setSelectionSource(null,null)};if(!e){n();return}re(e).then(e=>{if(xt===t){if(!e){n();return}x.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{xt===t&&x.setSelectionSource(null,null)})}));let rr=e(()=>d.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),ir=e(()=>d.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));g(l(e(()=>{let e=D(),t=O(),n=j(),r=P(),i=X(),a=Yn(),s=o.store.theme.enabled,c=o.store.theme.selectionBox.enabled,l=o.store.theme.dragBox.enabled,u=Wn(),f=En(),p=N();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(s&&c&&e&&!n&&!p&&!t&&f!=null),isDragBoxVisible:!!(s&&l&&e&&!n&&u),targetElement:i,dragBounds:a?{x:a.x,y:a.y,width:a.width,height:a.height}:null,grabbedBoxes:[...rr()],labelInstances:[...ir()],selectionFilePath:d.selectionFilePath,toolbarState:We()}}),e=>{o.hooks.onStateChange(e)})),g(l(()=>[P(),S().x,S().y,X()],([e,t,n,r])=>{o.hooks.onPromptModeChange(e,{x:t,y:n,targetElement:r})})),g(l(()=>[ni(),Vn(),X()],([e,t,n])=>{o.hooks.onSelectionBox(!!e,t??null,n)})),g(l(()=>[li(),Yn()],([e,t])=>{o.hooks.onDragBox(!!e,t??null)})),g(l(()=>[di(),ui(),tr(),X(),d.selectionFilePath,d.selectionLineNumber],([e,t,n,r,i,a])=>{o.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 Z=null,ar=e=>{if(e){if(!Z){Z=document.createElement(`style`),Z.setAttribute(`data-react-grab-cursor`,``);let e=ae();e&&(Z.nonce=e),ue(Z),document.head.appendChild(Z)}Z.textContent=`* { cursor: ${e} !important; }`}else Z&&=(Z.remove(),null)};g(l(()=>[D(),j(),P()],([e,t,n])=>{ar(t?`progress`:e&&!n?`crosshair`:null)}));let or=()=>{let e=E();x.activate(),e||o.hooks.onActivate()},Q=()=>{let e=O(),t=d.previouslyFocusedElement;Jn(),x.deactivate(),rt(),Ar(),K=null,Dt(!1),e&&(document.body.style.userSelect=``),V&&window.clearTimeout(V),J.stop(),t instanceof HTMLElement&&_(t)&&t.focus(),o.hooks.onDeactivate()},sr=()=>{E()&&x.releaseHold(),D()&&Q(),bt()},cr=()=>{x.setWasActivatedByToggle(!0),or()},lr=()=>{x.clearLastCopied();let e=[...d.frozenElements],t=d.frozenElement||X(),n=P()?d.inputText.trim():``;if(!t){Q();return}let r=e.length>0?e:[t],i=r.map(e=>z(e))[0],{x:a,y:o}=B(i),s=a+d.copyOffsetFromCenterX;x.setPointer({x:a,y:o}),x.exitPromptMode(),x.clearInputText(),Cn({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},ur=()=>{if(x.clearLastCopied(),P()){if(Re()){x.clearInputText(),Q();return}x.setPendingDismiss(!0),Ue(e=>e+1)}},dr=()=>{x.clearInputText(),Q()},fr=()=>{x.setPendingDismiss(!1)},pr=()=>{let e=d.frozenElement||X();e&&st(e,S().x,S().y),ct()},mr=()=>{if(D())Q();else if(I()){let e=We()?.defaultAction??`comment`;e===`comment`?x.setPendingCommentMode(!0):(q=e,Dt(!0)),cr()}},hr=(e,t,n)=>{x.setPendingCommentMode(!1),x.clearInputText(),x.enterPromptMode({x:t,y:n},e)},gr=(e,t)=>{rt(),x.showContextMenu(t,e),Ar(),Di(),o.hooks.onContextMenu(e,t)},_r=(e,t)=>{let n=q;if(q=null,!n)return;let r=o.store.actions.find(e=>e.id===n);if(!r){ki(oe),gr(e,t);return}let i=z(e),a=bi({element:e,filePath:d.selectionFilePath??void 0,lineNumber:d.selectionLineNumber??void 0,tagName:w(e)||void 0,componentName:Mt(),position:t,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:i,fallbackSelectionBounds:[i],position:t}});r.onAction(a)},vr=()=>{if(I()){if(D()&&Le()){Q();return}x.setPendingCommentMode(!0),D()||cr()}},yr=(e,t,n)=>{let r=n&&W()&&!O()&&!d.pendingCommentMode&&!wt();if(!I()||P()||be()&&!r||M()||d.contextMenuPosition!==null)return;if(x.setPointer({x:e,y:t}),L.latestPointerX=e,L.latestPointerY=t,r){let n=ge(e,t);n!==d.detectedElement&&x.setDetectedElement(n);return}let i=performance.now(),a=L.pendingDetectionScheduledAt>0&&i-L.pendingDetectionScheduledAt<200;if(i-L.lastDetectionTimestamp>=32&&!a&&(L.lastDetectionTimestamp=i,L.pendingDetectionScheduledAt=i,setTimeout(()=>{let e=ge(L.latestPointerX,L.latestPointerY);e!==d.detectedElement&&x.setDetectedElement(e),L.pendingDetectionScheduledAt=0})),O()){if(k()){let{pageX:n,pageY:r}=Hn(e,t);U&&x.shiftDragStart({x:n-U.x,y:r-U.y}),U={x:n,y:r}}ft(e,t);let n=on(e,t),r=n.top||n.bottom||n.left||n.right;r&&!J.isActive()?J.start():!r&&J.isActive()&&J.stop()}},br=(e,t,n)=>!Y()||M()?!1:(!n&&W()&&rt(),x.startDrag({x:e,y:t},n),x.setPointer({x:e,y:t}),document.body.style.userSelect=`none`,ft(e,t),o.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0),xr=(e,t)=>{let n=d.frozenElements.includes(e),r=d.frozenElements.length===0;if(!n){let n=zt(z(e),t);tt.set(e,n),r&&Nt(A(e)??void 0)}x.toggleFrozenElement(e),je();let i=d.frozenElements.includes(e);if(i||tt.delete(e),d.frozenElements.length===0){rt(),x.unfreeze();return}me(d.frozenElements),ht(!0),x.setPointer(t),x.setLastGrabbed(i?e:d.frozenElements[d.frozenElements.length-1]),x.freeze(),Ar()},Sr=()=>{let e=d.frozenElements.filter(_),t=e.map(e=>{let t=w(e)||`element`,n=A(e)??void 0,r=tt.get(e),i=z(e);return{element:e,tagName:t,componentName:n,mouseX:r===void 0?i.x+i.width/2:i.x+i.width*r}});if(rt(),e.length===0){x.unfreeze();return}if(e.length===1){Cn({element:e[0],cursorX:t[0].mouseX,selectedElements:e,shouldDeactivateAfter:d.wasActivatedByToggle});return}wn({elements:e,labelEntries:t,shouldDeactivateAfter:d.wasActivatedByToggle})},Cr=(e,t,n)=>{let r=Rt(e,ye),i=r.length>0?r:Rt(e,ye,!1);if(i.length===0)return;let a=n&&!d.pendingCommentMode&&!wt();if(a&&x.addFrozenElements(i),me(a?d.frozenElements:i),o.hooks.onDragEnd(i,e),a){let e=i[i.length-1];ht(!0),je(),x.setPointer(B(z(e))),x.setLastGrabbed(e),x.freeze(),Ar();return}let s=i[0],c=B(z(s));x.setPointer(c),x.setFrozenElements(i);let l=Ut(e);if(x.setFrozenDragRect(l),x.freeze(),x.setLastGrabbed(s),d.pendingCommentMode){hr(s,c.x,c.y);return}if(wt()){Dt(!1),q?_r(s,c):gr(s,c);return}let u=d.wasActivatedByToggle&&!t;Cn({element:s,cursorX:c.x,selectedElements:i,shouldDeactivateAfter:u,dragRect:l})},wr=e=>{for(let t of d.frozenElements)if(_(t)&&mn(e,z(t)))return t;return null},Tr=(e,t,n,r)=>{let i=_(d.frozenElement)?d.frozenElement:null,a=_(K)?K:null,s=ve(e,t).find(ye)??null,c=s??(_(d.detectedElement)?d.detectedElement:null),l=c??i??a;if(!l)return;if(r&&!d.pendingCommentMode&&!wt()){s!==null&&xr(s,{x:e,y:t});return}let u,f,p=c===null&&i===l,m=c===null&&i===null&&a===l;if(p)u=S().x,f=S().y;else if(m){let e=B(z(l));u=e.x,f=e.y}else u=e,f=t;if(K=null,d.pendingCommentMode){hr(l,u,f);return}if(wt()){Dt(!1);let{wasIntercepted:e}=o.hooks.onElementSelect(l);if(e)return;me([l]),x.setFrozenElement(l);let t={x:u,y:f};x.setPointer(t),x.freeze(),q?_r(l,t):gr(l,t);return}let h=d.wasActivatedByToggle&&!n;x.setLastGrabbed(l),Cn({element:l,cursorX:u,shouldDeactivateAfter:h})},Er=()=>{O()&&(Jn(),x.cancelDrag(),J.stop(),document.body.style.userSelect=``)},Dr=(e,t,n,r)=>{if(!O())return;R!==null&&(clearTimeout(R),R=null),dt(null);let i=Un(e,t),a=i.x>2||i.y>2,o=a?Gn(e,t):null;a?x.endDrag():x.cancelDrag(),Jn(),J.stop(),document.body.style.userSelect=``,o?Cr(o,n,r):Tr(e,t,n,r)},$=Tt(),Or=an(),kr=e=>{let t;try{t=Or.originalKeyDescriptor?.get?Or.originalKeyDescriptor.get.call(e):e.key}catch{return!1}let n=t===`Enter`||pn(e.code),r=D()||E();return n&&r&&!P()&&!d.wasActivatedByToggle?(Or.claimedEvents.add(e),e.preventDefault(),e.stopImmediatePropagation(),!0):!1};$.addDocumentListener(`keydown`,kr,{capture:!0}),$.addDocumentListener(`keyup`,kr,{capture:!0}),$.addDocumentListener(`keypress`,kr,{capture:!0});let Ar=()=>{Ft([]),Lt(0),Gt.clearHistory()},jr=e=>{x.setFrozenElement(e),x.freeze(),K=e;let t=B(z(e));x.setPointer(t),d.contextMenuPosition!==null&&x.showContextMenu(t,e)},Mr=e=>{let t=Bt(z(e)),n=ve(t.x,t.y).filter(ye).reverse();Ft(n),Lt(Math.max(0,n.indexOf(e)))},Nr=e=>{let t=Pt()[e];t&&(Lt(e),Gt.clearHistory(),jr(t))},Pr=e=>{if(!D()||P()||W()||!se.has(e.key))return!1;let t=En(),n=!t;if(t||=ge(window.innerWidth/2,window.innerHeight/2),!t)return!1;if(!(e.key===`ArrowUp`||e.key===`ArrowDown`)){Ar();let r=Gt.findNext(e.key,t);return!r&&!n?!1:(e.preventDefault(),e.stopPropagation(),jr(r??t),!0)}Pt().length===0&&Mr(t);let r=Gt.findNext(e.key,t)??t;e.preventDefault(),e.stopPropagation(),jr(r);let i=Pt().indexOf(r);return i===-1?Mr(r):Lt(i),!0},Fr=e=>{if(!pn(e.code)||f(e)||M())return!1;let t=d.lastCopiedElement;if(!E()&&!P()&&!D()&&t&&_(t)&&!d.labelInstances.some(e=>e.status===`copied`||e.status===`fading`)){e.preventDefault(),e.stopImmediatePropagation();let n=B(z(t));return x.setPointer(n),st(t,n.x,n.y),x.setFrozenElement(t),x.clearLastCopied(),ct(),D()||or(),!0}if(E()&&!P()){e.preventDefault(),e.stopImmediatePropagation();let t=d.frozenElement||X();return t&&st(t,S().x,S().y),x.setPointer({x:S().x,y:S().y}),t&&x.setFrozenElement(t),ct(),V!==null&&(window.clearTimeout(V),V=null),D()||or(),!0}return!1},Ir=e=>{if(e.key?.toLowerCase()!==`o`||P()||!D()||!(e.metaKey||e.ctrlKey))return!1;let t=d.selectionFilePath,n=d.selectionLineNumber;return t?(e.preventDefault(),e.stopPropagation(),o.hooks.onOpenFile(t,n??void 0)||Ce(t,n??void 0,o.hooks.transformOpenFileUrl),!0):!1},Lr=e(()=>Pt().map(e=>({tagName:w(e)||`element`,componentName:A(e)??void 0}))),Rr=e(()=>({items:Lr(),activeIndex:It(),isVisible:Pt().length>0})),zr=e=>{if(!(!o.store.options.allowActivationInsideInput&&f(e))&&!(!Xt(e,o.store.options)&&((e.metaKey||e.ctrlKey)&&!de.includes(e.key)&&!pn(e.code)&&(D()&&!d.wasActivatedByToggle?Q():E()&&(at(),ot(),x.releaseHold())),!pn(e.code)||!E()))){if((D()||E())&&!P()&&(e.preventDefault(),pn(e.code)&&e.stopImmediatePropagation()),D()){if(d.wasActivatedByToggle&&o.store.options.activationMode!==`hold`||e.repeat)return;V!==null&&window.clearTimeout(V),V=window.setTimeout(()=>{Q()},200);return}if(E()&&e.repeat){if(H.copyWaiting){let e=H.holdTimerFired;ot(),e&&x.activate()}return}if(!(j()||N())&&!E()){let t=o.store.options.keyHoldDuration??100;f(e)?ee(e)?t+=600:t+=400:te()&&(t+=600),ot(),x.startHold(t)}}};$.addWindowListener(`keydown`,e=>{if(kr(e),!I()){Xt(e,o.store.options)&&!e.repeat&&Ve(e=>e+1);return}let t=pn(e.code)&&E()&&!P(),n=y(e,`data-react-grab-input`);if(P()&&Xt(e,o.store.options)&&!e.repeat&&!n){e.preventDefault(),e.stopPropagation(),ur();return}if(e.key===`Escape`&&Xe()!==null){Ei();return}let r=y(e,`data-react-grab-ignore-events`)&&!t;if(P()||r)return e.key===`Escape`&&(P()?ur():d.wasActivatedByToggle&&Q()),r&&se.has(e.key)&&Pr(e),void 0;if(O()&&Kn(e)){e.repeat||qn(),e.preventDefault(),e.stopPropagation();return}if(e.key===`Escape`&&(E()||d.wasActivatedByToggle)){Q();return}D()&&!de.includes(e.key)&&e.preventDefault();let i=Date.now()-gt<200;Pr(e)||Fr(e)||Ir(e)||i||zr(e)},{capture:!0}),$.addWindowListener(`keyup`,e=>{if(kr(e))return;if(Kn(e)&&k()&&(Jn(),e.preventDefault(),e.stopPropagation()),e.key===`Shift`&&W()){O()&&Er(),Sr();return}if(y(e,`data-react-grab-ignore-events`))return;let t=rn(o.store.options),n=t.metaKey||t.ctrlKey?h()?!e.metaKey:!e.ctrlKey:t.shiftKey&&!e.shiftKey||t.altKey&&!e.altKey,r=o.store.options.activationKey?typeof o.store.options.activationKey==`function`?o.store.options.activationKey(e):Jt(o.store.options.activationKey)(e):Kt(e.key,e.code);if(N()||_t){(r||n)&&(bt(),Q());return}if(!E()&&!D()||P())return;let i=!!o.store.options.activationKey,a=o.store.options.activationMode===`hold`,s=O();if(D()){let e=d.contextMenuPosition!==null;if(n){if(d.wasActivatedByToggle&&o.store.options.activationMode!==`hold`||e)return;Q()}else if(a&&r){if(V!==null&&(window.clearTimeout(V),V=null),e||s)return;Q()}else !i&&r&&V!==null&&(window.clearTimeout(V),V=null);return}if(r||n){if(d.wasActivatedByToggle&&o.store.options.activationMode!==`hold`)return;if(E()||H.holdTimerFired&&n){at();let t=(H.startTimestamp?Date.now()-H.startTimestamp:0)>=200,n=H.holdTimerFired&&t&&(o.store.options.allowActivationInsideInput||!f(e));ot(),n?x.activate():x.releaseHold()}else Q()}},{capture:!0}),$.addDocumentListener(`copy`,()=>{E()&&(H.copyWaiting=!0)}),$.addWindowListener(`keypress`,kr,{capture:!0}),$.addWindowListener(`pointermove`,e=>{if(!e.isPrimary)return;let t=e.pointerType===`touch`;x.setTouchMode(t),!y(e,`data-react-grab-ignore-events`)&&d.contextMenuPosition===null&&(M()||t&&!E()&&!D()||((t?E():D())&&!P()&&be()&&!e.shiftKey&&!W()&&(x.unfreeze(),Ar()),yr(e.clientX,e.clientY,e.shiftKey)))},{passive:!0}),$.addWindowListener(`pointerdown`,e=>{if(e.button===0&&e.isPrimary&&(x.setTouchMode(e.pointerType===`touch`),!y(e,`data-react-grab-ignore-events`)&&d.contextMenuPosition===null&&Xe()===null)){if(P()){let t=Vn();t&&e.clientX>=t.x&&e.clientX<=t.x+t.width&&e.clientY>=t.y&&e.clientY<=t.y+t.height?lr():ur();return}if(M()){e.preventDefault(),e.stopImmediatePropagation();return}br(e.clientX,e.clientY,e.shiftKey)&&(e.pointerId!==void 0&&document.documentElement.setPointerCapture(e.pointerId),e.preventDefault(),e.stopImmediatePropagation())}},{capture:!0}),$.addWindowListener(`pointerup`,e=>{if(e.button!==0||!e.isPrimary||y(e,`data-react-grab-ignore-events`)||d.contextMenuPosition!==null)return;let t=Y()||M()||O(),n=e.metaKey||e.ctrlKey;Dr(e.clientX,e.clientY,n,e.shiftKey),t&&(e.preventDefault(),e.stopImmediatePropagation())},{capture:!0}),$.addWindowListener(`contextmenu`,e=>{if(!Y()||j()||P())return;let t=y(e,`data-react-grab-ignore-events`),n={x:e.clientX,y:e.clientY},r=t&&d.frozenElements.length>1?wr(n):null;if(t&&Pt().length>0)Ar();else if(t&&!r)return;if(d.contextMenuPosition!==null){e.preventDefault();return}e.preventDefault(),e.stopPropagation();let i=r??ge(e.clientX,e.clientY);if(!i)return;let a=d.frozenElements;a.length>1&&a.includes(i)?me(a):(me([i]),x.setFrozenElement(i)),x.setPointer(n),x.freeze(),gr(i,n)},{capture:!0}),$.addWindowListener(`pointercancel`,e=>{e.isPrimary&&Er()}),$.addWindowListener(`click`,e=>{y(e,`data-react-grab-ignore-events`)||d.contextMenuPosition===null&&(Y()||j()||Pe())&&(e.preventDefault(),e.stopImmediatePropagation(),d.wasActivatedByToggle&&!j()&&!P()&&!e.shiftKey&&(E()?x.setWasActivatedByToggle(!1):Q()))},{capture:!0}),$.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){x.clearGrabbedBoxes();let e=d.activationTimestamp;D()&&!P()&&e!==null&&Date.now()-e>500&&Q()}}),$.addWindowListener(`blur`,()=>{Er(),E()&&(at(),x.releaseHold(),ot()),rt()}),$.addWindowListener(`focus`,()=>{gt=Date.now()}),$.addWindowListener(`focusin`,e=>{y(e,`data-react-grab`)&&e.stopPropagation()},{capture:!0});let Br=()=>{if(!(d.isTouchMode&&!E()&&!D())&&I()&&!P()&&!M()&&!be()&&!O()&&d.contextMenuPosition===null&&d.frozenElements.length===0){let e=ge(S().x,S().y);x.setDetectedElement(e)}},Vr=null,Hr=null,Ur=()=>{Vt(),Br(),x.incrementViewportVersion(),x.updateContextMenuPosition()};$.addWindowListener(`scroll`,Ur,{capture:!0});let Wr=window.innerWidth,Gr=window.innerHeight;$.addWindowListener(`resize`,()=>{let e=window.innerWidth,t=window.innerHeight;if(Wr>0&&Gr>0){let n=e/Wr,r=t/Gr,i=Math.abs(n-r)<we,a=Math.abs(n-1)>we;i&&a&&x.setPointer({x:S().x*n,y:S().y*r})}Wr=e,Gr=t,Ur()});let Kr=window.visualViewport;if(Kr){let{signal:e}=$;Kr.addEventListener(`resize`,Ur,{signal:e}),Kr.addEventListener(`scroll`,Ur,{signal:e})}let qr=()=>{Hr===null&&(Hr=ce(()=>{Hr=null,x.incrementViewportVersion()}))};g(()=>{if(o.store.theme.enabled&&(D()||j()||d.labelInstances.length>0||d.grabbedBoxes.length>0)){if(Vr!==null)return;Vr=window.setInterval(()=>{qr()},100);return}Vr!==null&&(window.clearInterval(Vr),Vr=null),Hr!==null&&(Se(Hr),Hr=null)}),b(()=>{Vr!==null&&window.clearInterval(Vr),Hr!==null&&Se(Hr)}),$.addDocumentListener(`copy`,e=>{P()||y(e,`data-react-grab-ignore-events`)||(Y()||j())&&e.preventDefault()},{capture:!0}),b(()=>{$.abort(),R!==null&&window.clearTimeout(R),V&&window.clearTimeout(V),bt(),$e!==null&&Se($e),qt.forEach(e=>window.clearTimeout(e)),qt.clear(),ln(),J.stop(),document.body.style.userSelect=``,document.body.style.touchAction=``,ar(null),Or.restore()});let{root:Jr,host:Yr}=mt(Ie);b(Ct(Yr).cleanup);let Xr=e(()=>o.store.theme.enabled),Zr=e(()=>o.store.theme.selectionBox.enabled),Qr=e(()=>o.store.theme.elementLabel.enabled),$r=e(()=>o.store.theme.dragBox.enabled),ei=e(()=>N()||Ke()&&!be()),ti=e(()=>Xn().length>0),ni=e(()=>!Xr()||!Zr()||ei()?!1:ti()?!0:kn()),ri=e(()=>{let e=On();if(e)return w(e)||void 0});g(l(()=>kt(),e=>{let t=++St;if(!e){Nt(void 0);return}let n=A(e)??void 0;Nt(n),Ne(e).then(e=>{St===t&&Nt(e??n)}).catch(()=>{St===t&&Nt(n)})}));let ii=e(()=>d.contextMenuPosition!==null||!Qr()||ei()?!1:kn()),ai=new Map,oi=e=>{let t=e.elements&&e.elements.length>1,n=e.element,r=!t&&n&&document.body.contains(n)?z(n):e.bounds,i=ai.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 ai.set(e.id,l),l},si=e(()=>{if(!Xr()||!o.store.theme.grabbedBoxes.enabled)return[];C();let e=new Set(d.labelInstances.map(e=>e.id));for(let t of ai.keys())e.has(t)||ai.delete(t);return d.labelInstances.map(oi)}),ci=e(()=>!Xr()||!o.store.theme.grabbedBoxes.enabled?[]:(C(),d.grabbedBoxes.map(e=>!e.element||!document.body.contains(e.element)?e:{...e,bounds:z(e.element)}))),li=e(()=>Xr()&&$r()&&Y()&&Wn()),ui=e(()=>j()?`processing`:`hover`),di=e(()=>{if(!Xr())return!1;let e=Qr(),t=P(),n=j(),r=Y(),i=O(),a=!!En(),o=Ke(),s=be();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),fi=e(()=>{C();let e=d.contextMenuElement;return e?z(e):null}),pi=e(()=>(C(),d.contextMenuPosition)),mi=e(()=>{let e=d.contextMenuElement;if(!e)return;let t=d.frozenElements.length;return t>1?`${t} elements`:w(e)||void 0}),[hi]=a(()=>({element:d.contextMenuElement,frozenCount:d.frozenElements.length}),async({element:e,frozenCount:t})=>{if(e&&!(t>1))return await Ne(e)??void 0}),[gi]=a(()=>d.contextMenuElement,async e=>e?re(e):null),_i=async e=>{x.incrementSelectionInteractionLockDepth();try{return await e()}finally{x.decrementSelectionInteractionLockDepth()}},vi=(e,t,n,r,i)=>async a=>{await _i(async()=>{let o=i?.fallbackBounds??null,s=i?.fallbackSelectionBounds??[],c=i?.position??d.contextMenuPosition??S(),l=jn(),u=fi()??o,f=t.length>1,p=f?Wt(Zt(l)):u,m=d.wasActivatedByToggle,h;if(h=f?l:u?[u]:s,x.hideContextMenu(),p){let i=f?p.x+p.width/2:c.x,o=fn(p,n||`element`,r,`copying`,{element:e,mouseX:i,elements:f?t:void 0,boundsMultiple:h}),s=!1,l;try{s=await a(),s||(l=`Failed to copy`)}catch(e){l=Et(e,`Action failed`)}_n(o,s,l)}else try{await a()}catch{}m?Q():x.unfreeze()})},yi=()=>{setTimeout(()=>{x.hideContextMenu()},0)},bi=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:s,performWithFeedbackOptions:c,shouldDeferHideContextMenu:l,onBeforeCopy:u,onBeforePrompt:f,customEnterPromptMode:p}=e,m=d.frozenElements.length>0?d.frozenElements:[t],h=l?yi:x.hideContextMenu,g={element:t,elements:m,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:p??(()=>{gn(),f?.(),st(t,s.x,s.y),x.setPointer({x:s.x,y:s.y}),x.setFrozenElement(t),ct(),D()||or(),h()}),copy:()=>{u?.(),Cn({element:t,cursorX:s.x,selectedElements:m.length>1?m:void 0,shouldDeactivateAfter:d.wasActivatedByToggle}),h()},hooks:{transformHtmlContent:o.hooks.transformHtmlContent,onOpenFile:o.hooks.onOpenFile,transformOpenFileUrl:o.hooks.transformOpenFileUrl},performWithFeedback:vi(t,m,i,a,c),hideContextMenu:h,cleanup:()=>{d.wasActivatedByToggle?Q():x.unfreeze()}},_=o.hooks.transformActionContext(g);return{...g,..._}},xi=e(()=>{let e=d.contextMenuElement;if(!e)return;let t=gi(),n=d.contextMenuPosition??S();return bi({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:mi(),componentName:hi(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{K=null},customEnterPromptMode:()=>{gn(),x.clearInputText(),x.enterPromptMode(n,e),yi()}})}),Si=()=>{setTimeout(()=>{x.hideContextMenu(),Q()},0)},Ci=()=>{$e!==null&&(Se($e),$e=null)},wi=()=>{if(!Qe)return null;let e=Qe.getBoundingClientRect(),t=In(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}},Ti=e=>{Ci();let t=()=>{let n=wi();n&&e(n),$e=ce(t)};t()},Ei=()=>{Ci(),Ze(null)},Di=()=>{Ei()},Oi=()=>{Xe()===null?(x.hideContextMenu(),Ti(Ze)):Ei()},ki=e=>{it({defaultAction:e})},Ai=e=>{let t=d.labelInstances.find(t=>t.id===e);if(!t?.element||!_(t.element))return;let n=t.element,r=B(z(n)),i={x:t.mouseX??r.x,y:r.y},a=t.elements&&t.elements.length>0?t.elements.filter(e=>_(e)):[n];setTimeout(()=>{D()||(x.setWasActivatedByToggle(!0),or()),x.setPointer(i),x.setFrozenElements(a),a.length>1&&t.bounds&&x.setFrozenDragRect(Ut(t.bounds)),x.freeze(),x.showContextMenu(i,n)},0)};g(()=>{let e=o.store.theme.hue;e===0?Jr.style.filter=``:Jr.style.filter=`hue-rotate(${e}deg)`}),o.store.theme.enabled&&import(`./renderer-kDb-jNJX.js`).then(({ReactGrabRenderer:e})=>{n||(r=p(()=>s(e,{get selectionVisible(){return ni()},get selectionBounds(){return Vn()},get selectionBoundsMultiple(){return Zn()},get selectionShouldSnap(){return d.frozenElements.length>0||Xn().length>0},get selectionElementsCount(){return d.frozenElements.length},get frozenLabelEntries(){return $n()},get pendingShiftPreviewEntry(){return er()??void 0},get selectionFilePath(){return d.selectionFilePath??void 0},get selectionLineNumber(){return d.selectionLineNumber??void 0},get selectionTagName(){return ri()},get selectionComponentName(){return Mt()},get selectionLabelVisible(){return ii()},selectionLabelStatus:`idle`,get selectionArrowNavigationState(){return Rr()},onArrowNavigationSelect:Nr,get labelInstances(){return si()},get dragVisible(){return li()},get dragBounds(){return Yn()},get grabbedBoxes(){return ci()},get mouseX(){return m(()=>d.frozenElements.length>1)()?void 0:nr()??tr().x},get isFrozen(){return be()||D()||Ke()},get inputValue(){return d.inputText},get isPromptMode(){return P()},onShowContextMenuInstance:Ai,onLabelInstanceHoverChange:dn,get onInputChange(){return x.setInputText},onInputSubmit:()=>void lr(),onToggleExpand:pr,get isPendingDismiss(){return Re()},get selectionLabelShakeCount(){return He()},onConfirmDismiss:dr,onCancelDismiss:fr,get toolbarVisible(){return o.store.theme.toolbar.enabled},get isActive(){return D()},onToggleActive:mr,get enabled(){return I()},get shakeCount(){return Be()},onToolbarStateChange:e=>{Ge(e),e.enabled!==I()&&(ze(e.enabled),e.enabled||(sr(),Di())),zn.forEach(t=>t(e))},onSubscribeToToolbarStateChanges:e=>(zn.add(e),()=>{zn.delete(e)}),onToolbarSelectHoverChange:qe,onToolbarRef:e=>{Qe=e},get contextMenuPosition(){return pi()},get contextMenuBounds(){return fi()},get contextMenuTagName(){return mi()},get contextMenuComponentName(){return hi()},get contextMenuHasFilePath(){return!!gi()?.filePath},get actions(){return o.store.actions},get actionContext(){return xi()},onContextMenuDismiss:Si,onContextMenuHide:yi,get toolbarMenuPosition(){return Xe()},get toolbarMenuActions(){return o.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return We()?.defaultAction??`comment`},onSetDefaultAction:ki,onToggleToolbarMenu:Oi,onToolbarMenuDismiss:Ei}),Jr))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let ji={activate:()=>{x.setPendingCommentMode(!1),!D()&&I()&&cr()},deactivate:()=>{(D()||j())&&Q()},toggle:()=>{D()?Q():I()&&cr()},comment:vr,isActive:()=>D(),isEnabled:()=>I(),setEnabled:e=>{e!==I()&&(ze(e),it({enabled:e,collapsed:!e}),e||(sr(),Di()))},getToolbarState:()=>ne(),setToolbarState:e=>{let t=ne(),n=e.collapsed??t?.collapsed??!1,r={edge:e.edge??t?.edge??`bottom`,ratio:e.ratio??t?.ratio??.5,collapsed:n,enabled:!n,defaultAction:e.defaultAction??t?.defaultAction??`comment`};v(r),Ge(r),r.enabled!==I()&&(ze(r.enabled),r.enabled||(sr(),Di())),zn.forEach(e=>e(r))},onToolbarStateChange:e=>(zn.add(e),()=>{zn.delete(e)}),dispose:()=>{n=!0,Rn=!1,r?.(),Ci(),zn.clear(),t()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:await xn(t)},getSource:async e=>{let t=await re(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:ie,getState:()=>({isActive:D(),isDragging:O(),isCopying:j(),isPromptMode:P(),isSelectionBoxVisible:!!ni(),isDragBoxVisible:!!li(),targetElement:X(),dragBounds:Yn()??null,grabbedBoxes:[...rr()],labelInstances:[...ir()],selectionFilePath:d.selectionFilePath,toolbarState:We()}),setOptions:e=>{o.setOptions(e)},registerPlugin:e=>{o.register(e,ji)},unregisterPlugin:e=>{o.unregister(e)},getPlugins:()=>o.getPluginNames(),getDisplayName:A};for(let e of Ln)o.register(e,ji);return setTimeout(()=>{Me(!0)},_e),ji})};export{Qt as a,_n as i,yn as n,vn as r,Bn as t};