react-grab 0.0.56 → 0.0.57

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.
@@ -749,7 +749,8 @@ function cleanChildren(parent, current, marker, replacement) {
749
749
  }
750
750
 
751
751
  // dist/styles.css
752
- var styles_default = '/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--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-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--font-weight-medium:500;--ease-out:cubic-bezier(0,0,.2,1);--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--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);--color-grab-pink:#b21c8e;--color-grab-purple:#d239c0;--color-label-tag-border:#730079;--color-label-tag-text:#1e001f;--color-label-gray-border:#b0b0b0;--color-label-success-bg:#d9ffe4;--color-label-success-border:#00bb69;--color-label-success-text:#006e3b;--color-label-divider:#dedede;--color-label-muted:#767676}}@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}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.top-0{top:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.z-2147483645{z-index:2147483645}.z-2147483646{z-index:2147483646}.z-2147483647{z-index:2147483647}.z-\\[2147483645\\]{z-index:2147483645}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.mt-\\[2\\.5px\\]{margin-top:2.5px}.-ml-\\[5px\\]{margin-left:-5px}.ml-1{margin-left:calc(var(--spacing)*1)}.box-border{box-sizing:border-box}.flex{display:flex}.hidden{display:none}.h-0{height:calc(var(--spacing)*0)}.h-5{height:calc(var(--spacing)*5)}.h-5\\.5{height:calc(var(--spacing)*5.5)}.h-\\[14px\\]{height:14px}.h-\\[18px\\]{height:18px}.h-fit{height:fit-content}.min-h-\\[14px\\]{min-height:14px}.w-0{width:calc(var(--spacing)*0)}.w-0\\.5{width:calc(var(--spacing)*.5)}.w-1{width:calc(var(--spacing)*1)}.w-\\[18px\\]{width:18px}.w-fit{width:fit-content}.w-full{width:100%}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-crosshair{cursor:crosshair}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-\\[3px\\]{gap:3px}.gap-\\[5px\\]{gap:5px}.rounded-\\[1\\.5px\\]{border-radius:1.5px}.rounded-\\[3px\\]{border-radius:3px}.rounded-full{border-radius:3.40282e38px}.rounded-br-\\[3px\\]{border-bottom-right-radius:3px}.rounded-bl-\\[3px\\]{border-bottom-left-radius:3px}.border{border-style:var(--tw-border-style);border-width:1px}.border-\\[0\\.5px\\]{border-style:var(--tw-border-style);border-width:.5px}.border-t-\\[0\\.5px\\]{border-top-style:var(--tw-border-style);border-top-width:.5px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-grab-purple{border-color:var(--color-grab-purple)}.border-grab-purple\\/40{border-color:#d239c066}@supports (color:color-mix(in lab, red, red)){.border-grab-purple\\/40{border-color:color-mix(in oklab,var(--color-grab-purple)40%,transparent)}}.border-grab-purple\\/50{border-color:#d239c080}@supports (color:color-mix(in lab, red, red)){.border-grab-purple\\/50{border-color:color-mix(in oklab,var(--color-grab-purple)50%,transparent)}}.border-label-gray-border{border-color:var(--color-label-gray-border)}.border-label-success-border{border-color:var(--color-label-success-border)}.border-label-tag-border{border-color:var(--color-label-tag-border)}.border-t-label-divider{border-top-color:var(--color-label-divider)}.bg-black{background-color:var(--color-black)}.bg-grab-pink{background-color:var(--color-grab-pink)}.bg-grab-purple\\/5{background-color:#d239c00d}@supports (color:color-mix(in lab, red, red)){.bg-grab-purple\\/5{background-color:color-mix(in oklab,var(--color-grab-purple)5%,transparent)}}.bg-grab-purple\\/8{background-color:#d239c014}@supports (color:color-mix(in lab, red, red)){.bg-grab-purple\\/8{background-color:color-mix(in oklab,var(--color-grab-purple)8%,transparent)}}.bg-label-success-bg{background-color:var(--color-label-success-bg)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing)*0)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-\\[5px\\]{padding-inline:5px}.py-\\[5px\\]{padding-block:5px}.py-px{padding-block:1px}.pt-1{padding-top:calc(var(--spacing)*1)}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-\\[12px\\]{font-size:12px}.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)}.tracking-\\[-0\\.04em\\]{--tw-tracking:-.04em;letter-spacing:-.04em}.text-black{color:var(--color-black)}.text-label-muted{color:var(--color-label-muted)}.text-label-success-text{color:var(--color-label-success-text)}.text-label-tag-border{color:var(--color-label-tag-border)}.text-label-tag-text{color:var(--color-label-tag-text)}.text-white{color:var(--color-white)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.opacity-\\[0\\.65\\]{opacity:.65}.brightness-125{--tw-brightness:brightness(125%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.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-\\[width\\,height\\]{transition-property:width,height;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-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[transform\\,width\\,height\\]{will-change:transform,width,height}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\\:opacity-80:hover{opacity:.8}.hover\\:opacity-100:hover{opacity:1}}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.react-grab-shimmer{position:relative;overflow:hidden}.react-grab-shimmer:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#fff6 50%,#0000 100%) 0 0/200% 100%;animation:1.5s ease-in-out infinite shimmer;position:absolute;inset:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}';
752
+ var styles_default = `/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
753
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--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-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style: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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--font-weight-medium:500;--radius-xs:.125rem;--ease-out:cubic-bezier(0,0,.2,1);--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--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);--color-grab-pink:#b21c8e;--color-grab-purple:#d239c0;--color-label-tag-border:#730079;--color-label-gray-border:#b0b0b0;--color-label-success-bg:#d9ffe4;--color-label-success-border:#00bb69;--color-label-success-text:#006e3b;--color-label-muted:#767676}}@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}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.top-0{top:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.z-2147483645{z-index:2147483645}.z-2147483646{z-index:2147483646}.z-2147483647{z-index:2147483647}.z-\\[2147483645\\]{z-index:2147483645}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.-ml-\\[2px\\]{margin-left:-2px}.ml-1{margin-left:calc(var(--spacing)*1)}.box-border{box-sizing:border-box}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-0{height:calc(var(--spacing)*0)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-5\\.5{height:calc(var(--spacing)*5.5)}.h-\\[9px\\]{height:9px}.h-\\[18px\\]{height:18px}.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-0\\.5{width:calc(var(--spacing)*.5)}.w-1{width:calc(var(--spacing)*1)}.w-2\\.5{width:calc(var(--spacing)*2.5)}.w-\\[18px\\]{width:18px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-crosshair{cursor:crosshair}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.flex-col{flex-direction:column}.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}.gap-1{gap:calc(var(--spacing)*1)}.gap-\\[2px\\]{gap:2px}.gap-\\[3px\\]{gap:3px}.gap-\\[5px\\]{gap:5px}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.rounded-\\[1\\.5px\\]{border-radius:1.5px}.rounded-\\[1px\\]{border-radius:1px}.rounded-\\[2px\\]{border-radius:2px}.rounded-\\[3px\\]{border-radius:3px}.rounded-full{border-radius:3.40282e38px}.rounded-xs{border-radius:var(--radius-xs)}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-br-\\[3px\\]{border-bottom-right-radius:3px}.rounded-bl-\\[3px\\]{border-bottom-left-radius:3px}.border{border-style:var(--tw-border-style);border-width:1px}.border-\\[0\\.5px\\]{border-style:var(--tw-border-style);border-width:.5px}.\\[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-grab-purple{border-color:var(--color-grab-purple)}.border-grab-purple\\/40{border-color:#d239c066}@supports (color:color-mix(in lab, red, red)){.border-grab-purple\\/40{border-color:color-mix(in oklab,var(--color-grab-purple)40%,transparent)}}.border-grab-purple\\/50{border-color:#d239c080}@supports (color:color-mix(in lab, red, red)){.border-grab-purple\\/50{border-color:color-mix(in oklab,var(--color-grab-purple)50%,transparent)}}.border-label-gray-border{border-color:var(--color-label-gray-border)}.border-label-success-border{border-color:var(--color-label-success-border)}.border-label-tag-border{border-color:var(--color-label-tag-border)}.border-white{border-color:var(--color-white)}.border-t-\\[\\#B6B6B6\\]{border-top-color:#b6b6b6}.bg-\\[\\#F2F2F2\\]{background-color:#f2f2f2}.bg-black{background-color:var(--color-black)}.bg-grab-pink{background-color:var(--color-grab-pink)}.bg-grab-purple\\/5{background-color:#d239c00d}@supports (color:color-mix(in lab, red, red)){.bg-grab-purple\\/5{background-color:color-mix(in oklab,var(--color-grab-purple)5%,transparent)}}.bg-grab-purple\\/8{background-color:#d239c014}@supports (color:color-mix(in lab, red, red)){.bg-grab-purple\\/8{background-color:color-mix(in oklab,var(--color-grab-purple)8%,transparent)}}.bg-label-success-bg{background-color:var(--color-label-success-bg)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-cover{background-size:cover}.bg-center{background-position:50%}.p-0{padding:calc(var(--spacing)*0)}.p-0\\.5{padding:calc(var(--spacing)*.5)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-1\\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-\\[3px\\]{padding-inline:3px}.px-\\[5px\\]{padding-inline:5px}.py-0{padding-block:calc(var(--spacing)*0)}.py-\\[5px\\]{padding-block:5px}.py-px{padding-block:1px}.pt-1{padding-top:calc(var(--spacing)*1)}.pb-1\\.5{padding-bottom:calc(var(--spacing)*1.5)}.align-middle{vertical-align:middle}.font-\\[ui-monospace\\,\\'SFMono-Regular\\'\\,\\'SF_Mono\\'\\,\\'Menlo\\'\\,\\'Consolas\\'\\,\\'Liberation_Mono\\'\\,monospace\\]{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[12px\\]{font-size:12px}.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)}.tracking-\\[-0\\.04em\\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\\[-0\\.08em\\]{--tw-tracking:-.08em;letter-spacing:-.08em}.text-\\[\\#47004A\\]{color:#47004a}.text-black{color:var(--color-black)}.text-label-muted{color:var(--color-label-muted)}.text-label-success-text{color:var(--color-label-success-text)}.text-label-tag-border{color:var(--color-label-tag-border)}.text-white{color:var(--color-white)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.opacity-\\[0\\.99\\]{opacity:.99}.brightness-125{--tw-brightness:brightness(125%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.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-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-\\[width\\,height\\]{transition-property:width,height;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-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-none{transition-property:none}.duration-30{--tw-duration:30ms;transition-duration:30ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[transform\\,width\\,height\\]{will-change:transform,width,height}.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}.\\[font-synthesis\\:none\\]{font-synthesis:none}@media (hover:hover){.hover\\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:opacity-80:hover{opacity:.8}.hover\\:opacity-100:hover{opacity:1}.hover\\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px 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)}}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.react-grab-shimmer{position:relative;overflow:hidden}.react-grab-shimmer:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#fff6 50%,#0000 100%) 0 0/200% 100%;animation:1.5s ease-in-out infinite shimmer;position:absolute;inset:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-contain-size{syntax:"*";inherits:false}@property --tw-contain-layout{syntax:"*";inherits:false}@property --tw-contain-paint{syntax:"*";inherits:false}@property --tw-contain-style{syntax:"*";inherits:false}@property --tw-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}@keyframes pulse{50%{opacity:.5}}`;
753
754
 
754
755
  // src/utils/is-keyboard-event-triggered-by-input.ts
755
756
  var FORM_TAGS_AND_ROLES = [
@@ -862,6 +863,11 @@ var mountRoot = (cssText) => {
862
863
  shadowRoot.appendChild(root);
863
864
  const doc = document.body ?? document.documentElement;
864
865
  doc.appendChild(host);
866
+ setTimeout(() => {
867
+ if (!doc.contains(host)) {
868
+ doc.appendChild(host);
869
+ }
870
+ }, 1e3);
865
871
  return root;
866
872
  };
867
873
 
@@ -3652,33 +3658,12 @@ var IconOpen = (props) => {
3652
3658
  })();
3653
3659
  };
3654
3660
 
3655
- // src/components/icon-return-key.tsx
3656
- var _tmpl$6 = /* @__PURE__ */ template(`<svg xmlns=http://www.w3.org/2000/svg viewBox="0 0 12 12"><g fill=none stroke-linecap=round stroke-linejoin=round stroke-width=1 stroke=currentColor><path d=m1.25,6.75h8.5c.5523,0,1-.4477,1-1v-2.5c0-.5523-.4477-1-1-1h-1.75></path><polyline points="3.75 4 1 6.75 3.75 9.5">`);
3657
- var IconReturnKey = (props) => {
3658
- const size = () => props.size ?? 14;
3659
- return (() => {
3660
- var _el$ = _tmpl$6();
3661
- createRenderEffect((_p$) => {
3662
- var _v$ = size(), _v$2 = size(), _v$3 = props.class;
3663
- _v$ !== _p$.e && setAttribute(_el$, "width", _p$.e = _v$);
3664
- _v$2 !== _p$.t && setAttribute(_el$, "height", _p$.t = _v$2);
3665
- _v$3 !== _p$.a && setAttribute(_el$, "class", _p$.a = _v$3);
3666
- return _p$;
3667
- }, {
3668
- e: void 0,
3669
- t: void 0,
3670
- a: void 0
3671
- });
3672
- return _el$;
3673
- })();
3674
- };
3675
-
3676
3661
  // src/components/icon-stop.tsx
3677
- var _tmpl$7 = /* @__PURE__ */ template(`<svg xmlns=http://www.w3.org/2000/svg viewBox="0 0 9 9"fill=none><rect x=1 y=1 width=7 height=7 rx=1 fill=currentColor>`);
3662
+ var _tmpl$6 = /* @__PURE__ */ template(`<svg xmlns=http://www.w3.org/2000/svg viewBox="0 0 9 9"fill=none><rect x=1 y=1 width=7 height=7 rx=1 fill=currentColor>`);
3678
3663
  var IconStop = (props) => {
3679
3664
  const size = () => props.size ?? 9;
3680
3665
  return (() => {
3681
- var _el$ = _tmpl$7();
3666
+ var _el$ = _tmpl$6();
3682
3667
  createRenderEffect((_p$) => {
3683
3668
  var _v$ = size(), _v$2 = size(), _v$3 = props.class;
3684
3669
  _v$ !== _p$.e && setAttribute(_el$, "width", _p$.e = _v$);
@@ -3695,22 +3680,25 @@ var IconStop = (props) => {
3695
3680
  };
3696
3681
 
3697
3682
  // src/components/selection-label.tsx
3698
- var _tmpl$8 = /* @__PURE__ */ template(`<div style="background-image:linear-gradient(in oklab 180deg, oklab(88.7% 0.086 -0.058) 0%, oklab(83.2% 0.132 -0.089) 100%)"><span>`);
3683
+ var _tmpl$7 = /* @__PURE__ */ template(`<div style="background-image:linear-gradient(in oklab 180deg, oklab(88.7% 0.086 -0.058) 0%, oklab(83.2% 0.132 -0.089) 100%)"><span>`);
3699
3684
  var _tmpl$22 = /* @__PURE__ */ template(`<span>`);
3700
3685
  var _tmpl$32 = /* @__PURE__ */ template(`<button>`);
3701
3686
  var _tmpl$42 = /* @__PURE__ */ template(`<div>`);
3702
3687
  var _tmpl$52 = /* @__PURE__ */ template(`<div class="flex items-center h-[18px] rounded-[1.5px] gap-[3px] px-[5px] py-px bg-label-success-bg border-[0.5px] border-solid border-label-success-border"><span class="text-label-success-text text-[12px] leading-4 font-medium tracking-[-0.04em]">`);
3703
- var _tmpl$62 = /* @__PURE__ */ template(`<div class="absolute w-0 h-0"style="border-left:8px solid transparent;border-right:8px solid transparent;z-index:1">`);
3704
- var _tmpl$72 = /* @__PURE__ */ template(`<div class="shrink-0 flex flex-col items-start px-2 py-[5px] w-full h-fit rounded-bl-[3px] rounded-br-[3px] border-t-[0.5px] border-t-solid border-t-label-divider">`);
3705
- var _tmpl$82 = /* @__PURE__ */ template(`<div class="flex items-center gap-[3px]">`);
3706
- var _tmpl$9 = /* @__PURE__ */ template(`<button class="flex items-center justify-center w-[18px] h-[18px] rounded-full cursor-pointer bg-black border-none transition-opacity hover:opacity-80"title=Stop>`);
3707
- var _tmpl$0 = /* @__PURE__ */ template(`<div class="flex items-center gap-[3px] react-grab-shimmer rounded-[3px]">`);
3708
- var _tmpl$1 = /* @__PURE__ */ template(`<div class="shrink-0 flex items-center gap-1 w-full h-[14px]"><span class="text-label-muted text-[12px] leading-3.5 shrink-0 tracking-[-0.04em] font-medium w-fit h-fit">to change`);
3709
- var _tmpl$10 = /* @__PURE__ */ template(`<div class="shrink-0 flex flex-col justify-center items-start gap-1 w-fit h-fit"><div class="shrink-0 flex items-center gap-[3px] pt-1 w-fit h-fit px-1">`);
3710
- var _tmpl$11 = /* @__PURE__ */ template(`<div class="shrink-0 flex justify-between items-start w-full min-h-[14px]"><textarea class="text-black text-[12px] leading-3.5 tracking-[-0.04em] font-medium bg-transparent border-none outline-none resize-none flex-1 p-0 m-0"placeholder="type to modify..."rows=1 style=field-sizing:content;min-height:14px></textarea><button class="shrink-0 flex items-center gap-1 w-fit h-fit cursor-pointer bg-transparent border-none p-0 ml-1 mt-[2.5px]">`);
3711
- var _tmpl$12 = /* @__PURE__ */ template(`<div data-react-grab-ignore-events class="fixed font-sans antialiased transition-opacity duration-300 ease-out"style=z-index:2147483647><div class="relative flex items-center gap-[5px] bg-white rounded-[3px]"style="box-shadow:#00000033 0px 2px 3px">`);
3688
+ var _tmpl$62 = /* @__PURE__ */ template(`<div class="absolute w-0 h-0"style="border-left:8px solid transparent;border-right:8px solid transparent">`);
3689
+ var _tmpl$72 = /* @__PURE__ */ template(`<div role=button><div class="text-black text-[12px] leading-4 shrink-0 tracking-[-0.04em] font-sans font-medium w-fit h-fit">Click to copy`);
3690
+ var _tmpl$8 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col items-start px-2 py-[5px] w-auto h-fit rounded-bl-[3px] rounded-br-[3px] self-stretch bg-[#F2F2F2] [border-top-width:0.5px] border-t-solid border-t-[#B6B6B6] rounded-t-none">`);
3691
+ var _tmpl$9 = /* @__PURE__ */ template(`<div class="flex items-center gap-[3px] pt-1 pb-1.5 px-1.5">`);
3692
+ var _tmpl$0 = /* @__PURE__ */ template(`<button class="flex items-center justify-center w-[18px] h-[18px] rounded-full cursor-pointer bg-black border-none transition-opacity hover:opacity-80"title=Stop>`);
3693
+ var _tmpl$1 = /* @__PURE__ */ template(`<div class="flex items-center gap-[3px] react-grab-shimmer rounded-[3px] pt-1 pb-1.5 px-1.5">`);
3694
+ var _tmpl$10 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex items-center gap-1 w-fit h-fit"><span class="text-label-muted text-[12px] leading-4 shrink-0 tracking-[-0.04em] font-sans font-medium w-fit h-fit">Press</span><div class="contain-layout shrink-0 flex flex-col items-start p-0.5 rounded-[1px] bg-white [border-width:0.5px] border-solid border-white w-fit h-fit"style="box-shadow:#0000008C 0px 0px 2px"><div class="w-2.5 h-[9px] shrink-0 opacity-[0.99] bg-cover bg-center"style=background-image:url(https://workers.paper.design/file-assets/01K8D51Q7E2ESJTN18XN2MT96X/01KBEJ7N5GQ0ZZ7K456R42AP4V.svg)></div></div><span class="text-label-muted text-[12px] leading-4 shrink-0 tracking-[-0.04em] font-sans font-medium w-fit h-fit">to edit`);
3695
+ var _tmpl$11 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col justify-center items-start gap-1 w-fit h-fit"><div class="contain-layout shrink-0 flex items-center gap-1 w-fit h-fit pt-1 px-1.5"></div><div class="grid w-full transition-[grid-template-rows] duration-30 ease-out"><div class="overflow-hidden min-h-0">`);
3696
+ var _tmpl$12 = /* @__PURE__ */ template(`<div class="shrink-0 flex justify-between items-end w-full min-h-4"><textarea class="text-black text-[12px] leading-4 tracking-[-0.04em] font-medium bg-transparent border-none outline-none resize-none flex-1 p-0 m-0"placeholder="type to edit"rows=1 style=field-sizing:content;min-height:16px></textarea><button class="contain-layout shrink-0 flex flex-col items-start p-0.5 rounded-xs bg-white [border-width:0.5px] border-solid border-white w-fit h-fit cursor-pointer ml-1 transition-none hover:scale-105 hover:shadow-md"style="box-shadow:#0000008C 0px 0px 2px"><div style=background-image:url(https://workers.paper.design/file-assets/01K8D51Q7E2ESJTN18XN2MT96X/01KBEJ7N5GQ0ZZ7K456R42AP4V.svg)>`);
3697
+ var _tmpl$13 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col justify-center items-start gap-1 w-fit h-fit"><div class="contain-layout shrink-0 flex items-center gap-1 pt-1 px-1.5 w-fit h-fit">`);
3698
+ var _tmpl$14 = /* @__PURE__ */ template(`<div data-react-grab-ignore-events class="fixed font-sans antialiased transition-opacity duration-300 ease-out"style="z-index:2147483647;filter:drop-shadow(0 1px 2px rgba(0,0,0,0.2)) drop-shadow(0 2px 4px rgba(0,0,0,0.25))"><div class="[font-synthesis:none] contain-layout flex items-center gap-[5px] rounded-[2px] bg-white antialiased w-fit h-fit p-0">`);
3712
3699
  var ARROW_HEIGHT = 8;
3713
3700
  var LABEL_GAP = 4;
3701
+ var IDLE_TIMEOUT_MS = 400;
3714
3702
  var TagBadge = (props) => {
3715
3703
  const [isHovered, setIsHovered] = createSignal(false);
3716
3704
  const handleMouseEnter = () => {
@@ -3722,26 +3710,26 @@ var TagBadge = (props) => {
3722
3710
  props.onHoverChange?.(false);
3723
3711
  };
3724
3712
  return (() => {
3725
- var _el$ = _tmpl$8(), _el$2 = _el$.firstChild;
3713
+ var _el$ = _tmpl$7(), _el$2 = _el$.firstChild;
3726
3714
  addEventListener(_el$, "click", props.onClick);
3727
3715
  _el$.addEventListener("mouseleave", handleMouseLeave);
3728
3716
  _el$.addEventListener("mouseenter", handleMouseEnter);
3729
3717
  insert(_el$2, () => props.tagName);
3730
3718
  insert(_el$, createComponent(Show, {
3731
3719
  get when() {
3732
- return props.isClickable;
3720
+ return props.isClickable || props.forceShowIcon;
3733
3721
  },
3734
3722
  get children() {
3735
3723
  return createComponent(IconOpen, {
3736
3724
  size: 10,
3737
3725
  get ["class"]() {
3738
- return cn("text-label-tag-border transition-all duration-100", isHovered() ? "opacity-100 scale-100" : "opacity-0 scale-75 -ml-[5px] w-0");
3726
+ return cn("text-label-tag-border transition-all duration-100", isHovered() || props.forceShowIcon ? "opacity-100 scale-100" : "opacity-0 scale-75 -ml-[2px] w-0");
3739
3727
  }
3740
3728
  });
3741
3729
  }
3742
3730
  }), null);
3743
3731
  createRenderEffect((_p$) => {
3744
- var _v$ = cn("flex items-center px-1 py-px h-[18px] rounded-[1.5px] gap-[5px] border-[0.5px] border-solid border-label-tag-border", props.shrink && "shrink-0 w-fit", props.isClickable && "cursor-pointer"), _v$2 = cn("text-label-tag-text text-[12px] leading-4 font-medium tracking-[-0.04em]", props.showMono && "font-mono", props.shrink && "shrink-0 w-fit h-fit");
3732
+ var _v$ = cn("contain-layout flex items-center px-[3px] py-0 h-4 rounded-[1px] gap-[2px] [border-width:0.5px] border-solid border-label-tag-border", props.shrink && "shrink-0 w-fit", props.isClickable && "cursor-pointer"), _v$2 = cn("text-[#47004A] text-[11.5px] leading-3.5 shrink-0 w-fit h-fit", props.showMono ? "tracking-[-0.08em] font-[ui-monospace,'SFMono-Regular','SF_Mono','Menlo','Consolas','Liberation_Mono',monospace]" : "tracking-[-0.04em] font-medium");
3745
3733
  _v$ !== _p$.e && className(_el$, _p$.e = _v$);
3746
3734
  _v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
3747
3735
  return _p$;
@@ -3803,32 +3791,17 @@ var Arrow = (props) => (() => {
3803
3791
  }, _$p));
3804
3792
  return _el$8;
3805
3793
  })();
3806
- var ClickToCopyPill = (props) => createComponent(ActionPill, {
3807
- get icon() {
3808
- return createComponent(IconCursorSimple, {
3809
- size: 9,
3810
- "class": "text-black shrink-0"
3811
- });
3812
- },
3813
- label: "Click to copy",
3814
- get onClick() {
3815
- return props.onClick;
3816
- },
3817
- get asButton() {
3818
- return props.asButton;
3819
- },
3820
- get dimmed() {
3821
- return props.dimmed;
3822
- },
3823
- get shrink() {
3824
- return props.shrink;
3825
- }
3826
- });
3827
- var BottomSection = (props) => (() => {
3794
+ var ClickToCopyPill = (props) => (() => {
3828
3795
  var _el$9 = _tmpl$72();
3829
- insert(_el$9, () => props.children);
3796
+ addEventListener(_el$9, "click", props.onClick);
3797
+ createRenderEffect(() => className(_el$9, cn("contain-layout shrink-0 flex items-center px-0 py-px w-fit h-[18px] rounded-[1.5px] gap-[3px]", props.asButton && "cursor-pointer", props.dimmed && "opacity-50 hover:opacity-100 transition-opacity")));
3830
3798
  return _el$9;
3831
3799
  })();
3800
+ var BottomSection = (props) => (() => {
3801
+ var _el$0 = _tmpl$8();
3802
+ insert(_el$0, () => props.children);
3803
+ return _el$0;
3804
+ })();
3832
3805
  var SelectionLabel = (props) => {
3833
3806
  let containerRef;
3834
3807
  let inputRef;
@@ -3837,6 +3810,7 @@ var SelectionLabel = (props) => {
3837
3810
  const [measuredHeight, setMeasuredHeight] = createSignal(0);
3838
3811
  const [arrowPosition, setArrowPosition] = createSignal("bottom");
3839
3812
  const [viewportVersion, setViewportVersion] = createSignal(0);
3813
+ const [isIdle, setIsIdle] = createSignal(false);
3840
3814
  const isNotProcessing = () => props.status !== "copying" && props.status !== "copied" && props.status !== "fading";
3841
3815
  const measureContainer = () => {
3842
3816
  if (containerRef && !isTagCurrentlyHovered) {
@@ -3851,14 +3825,45 @@ var SelectionLabel = (props) => {
3851
3825
  const handleViewportChange = () => {
3852
3826
  setViewportVersion((version) => version + 1);
3853
3827
  };
3828
+ let idleTimeout;
3829
+ const resetIdleTimer = () => {
3830
+ setIsIdle(false);
3831
+ if (idleTimeout) {
3832
+ clearTimeout(idleTimeout);
3833
+ }
3834
+ idleTimeout = setTimeout(() => {
3835
+ setIsIdle(true);
3836
+ }, IDLE_TIMEOUT_MS);
3837
+ };
3838
+ const handleGlobalKeyDown = (event) => {
3839
+ if (event.code === "Enter" && isIdle() && !props.isInputExpanded && isNotProcessing()) {
3840
+ event.preventDefault();
3841
+ event.stopPropagation();
3842
+ props.onToggleExpand?.();
3843
+ }
3844
+ };
3854
3845
  onMount(() => {
3855
3846
  measureContainer();
3856
3847
  window.addEventListener("scroll", handleViewportChange, true);
3857
3848
  window.addEventListener("resize", handleViewportChange);
3849
+ window.addEventListener("keydown", handleGlobalKeyDown, {
3850
+ capture: true
3851
+ });
3852
+ resetIdleTimer();
3858
3853
  });
3859
3854
  onCleanup(() => {
3860
3855
  window.removeEventListener("scroll", handleViewportChange, true);
3861
3856
  window.removeEventListener("resize", handleViewportChange);
3857
+ window.removeEventListener("keydown", handleGlobalKeyDown, {
3858
+ capture: true
3859
+ });
3860
+ if (idleTimeout) {
3861
+ clearTimeout(idleTimeout);
3862
+ }
3863
+ });
3864
+ createEffect(() => {
3865
+ void props.selectionBounds;
3866
+ resetIdleTimer();
3862
3867
  });
3863
3868
  createEffect(() => {
3864
3869
  if (props.visible) {
@@ -3866,7 +3871,7 @@ var SelectionLabel = (props) => {
3866
3871
  }
3867
3872
  });
3868
3873
  createEffect(() => {
3869
- void [props.status, props.isInputExpanded, props.inputValue];
3874
+ void props.status;
3870
3875
  requestAnimationFrame(measureContainer);
3871
3876
  });
3872
3877
  createEffect(() => {
@@ -3952,26 +3957,26 @@ var SelectionLabel = (props) => {
3952
3957
  return memo(() => props.visible !== false)() && props.selectionBounds;
3953
3958
  },
3954
3959
  get children() {
3955
- var _el$0 = _tmpl$12(), _el$1 = _el$0.firstChild;
3956
- _el$0.$$click = stopPropagation;
3957
- _el$0.$$mousedown = stopPropagation;
3960
+ var _el$1 = _tmpl$14(), _el$10 = _el$1.firstChild;
3961
+ _el$1.$$click = stopPropagation;
3962
+ _el$1.$$mousedown = stopPropagation;
3958
3963
  var _ref$ = containerRef;
3959
- typeof _ref$ === "function" ? use(_ref$, _el$0) : containerRef = _el$0;
3960
- insert(_el$0, createComponent(Arrow, {
3964
+ typeof _ref$ === "function" ? use(_ref$, _el$1) : containerRef = _el$1;
3965
+ insert(_el$1, createComponent(Arrow, {
3961
3966
  get position() {
3962
3967
  return arrowPosition();
3963
3968
  },
3964
3969
  get leftPx() {
3965
3970
  return computedPosition().arrowLeft;
3966
3971
  }
3967
- }), _el$1);
3968
- insert(_el$1, createComponent(Show, {
3972
+ }), _el$10);
3973
+ insert(_el$10, createComponent(Show, {
3969
3974
  get when() {
3970
3975
  return props.status === "copied" || props.status === "fading";
3971
3976
  },
3972
3977
  get children() {
3973
- var _el$10 = _tmpl$82();
3974
- insert(_el$10, createComponent(TagBadge, {
3978
+ var _el$11 = _tmpl$9();
3979
+ insert(_el$11, createComponent(TagBadge, {
3975
3980
  get tagName() {
3976
3981
  return tagDisplay();
3977
3982
  },
@@ -3979,23 +3984,25 @@ var SelectionLabel = (props) => {
3979
3984
  return isTagClickable();
3980
3985
  },
3981
3986
  onClick: handleTagClick,
3982
- onHoverChange: handleTagHoverChange
3987
+ onHoverChange: handleTagHoverChange,
3988
+ showMono: true,
3989
+ shrink: true
3983
3990
  }), null);
3984
- insert(_el$10, createComponent(SuccessPill, {
3991
+ insert(_el$11, createComponent(SuccessPill, {
3985
3992
  get hasAgent() {
3986
3993
  return props.hasAgent;
3987
3994
  }
3988
3995
  }), null);
3989
- return _el$10;
3996
+ return _el$11;
3990
3997
  }
3991
3998
  }), null);
3992
- insert(_el$1, createComponent(Show, {
3999
+ insert(_el$10, createComponent(Show, {
3993
4000
  get when() {
3994
4001
  return props.status === "copying";
3995
4002
  },
3996
4003
  get children() {
3997
- var _el$11 = _tmpl$0();
3998
- insert(_el$11, createComponent(TagBadge, {
4004
+ var _el$12 = _tmpl$1();
4005
+ insert(_el$12, createComponent(TagBadge, {
3999
4006
  get tagName() {
4000
4007
  return tagDisplay();
4001
4008
  },
@@ -4004,9 +4011,10 @@ var SelectionLabel = (props) => {
4004
4011
  },
4005
4012
  onClick: handleTagClick,
4006
4013
  onHoverChange: handleTagHoverChange,
4007
- showMono: true
4014
+ showMono: true,
4015
+ shrink: true
4008
4016
  }), null);
4009
- insert(_el$11, createComponent(ActionPill, {
4017
+ insert(_el$12, createComponent(ActionPill, {
4010
4018
  get icon() {
4011
4019
  return createComponent(IconCursorSimple, {
4012
4020
  size: 9,
@@ -4017,40 +4025,44 @@ var SelectionLabel = (props) => {
4017
4025
  return props.statusText ?? "Grabbing\u2026";
4018
4026
  }
4019
4027
  }), null);
4020
- insert(_el$11, createComponent(Show, {
4028
+ insert(_el$12, createComponent(Show, {
4021
4029
  get when() {
4022
4030
  return memo(() => !!props.hasAgent)() && props.onAbort;
4023
4031
  },
4024
4032
  get children() {
4025
- var _el$12 = _tmpl$9();
4026
- _el$12.$$click = (event) => {
4033
+ var _el$13 = _tmpl$0();
4034
+ _el$13.$$click = (event) => {
4027
4035
  event.preventDefault();
4028
4036
  event.stopPropagation();
4029
4037
  event.stopImmediatePropagation();
4030
4038
  props.onAbort?.();
4031
4039
  };
4032
- _el$12.$$mousedown = (event) => {
4040
+ _el$13.$$mousedown = (event) => {
4033
4041
  event.preventDefault();
4034
4042
  event.stopPropagation();
4035
4043
  event.stopImmediatePropagation();
4036
4044
  };
4037
- insert(_el$12, createComponent(IconStop, {
4045
+ insert(_el$13, createComponent(IconStop, {
4038
4046
  size: 8,
4039
4047
  "class": "text-white"
4040
4048
  }));
4041
- return _el$12;
4049
+ return _el$13;
4042
4050
  }
4043
4051
  }), null);
4044
- return _el$11;
4052
+ return _el$12;
4045
4053
  }
4046
4054
  }), null);
4047
- insert(_el$1, createComponent(Show, {
4055
+ insert(_el$10, createComponent(Show, {
4048
4056
  get when() {
4049
4057
  return memo(() => !!isNotProcessing())() && !props.isInputExpanded;
4050
4058
  },
4051
4059
  get children() {
4052
- var _el$13 = _tmpl$10(), _el$14 = _el$13.firstChild;
4053
- insert(_el$14, createComponent(TagBadge, {
4060
+ var _el$14 = _tmpl$11(), _el$15 = _el$14.firstChild, _el$16 = _el$15.nextSibling, _el$17 = _el$16.firstChild;
4061
+ insert(_el$15, createComponent(ClickToCopyPill, {
4062
+ onClick: handleSubmit,
4063
+ shrink: true
4064
+ }), null);
4065
+ insert(_el$15, createComponent(TagBadge, {
4054
4066
  get tagName() {
4055
4067
  return tagDisplay();
4056
4068
  },
@@ -4062,30 +4074,28 @@ var SelectionLabel = (props) => {
4062
4074
  showMono: true,
4063
4075
  shrink: true
4064
4076
  }), null);
4065
- insert(_el$14, createComponent(ClickToCopyPill, {
4066
- onClick: handleSubmit,
4067
- shrink: true
4068
- }), null);
4069
- insert(_el$13, createComponent(BottomSection, {
4077
+ insert(_el$17, createComponent(BottomSection, {
4070
4078
  get children() {
4071
- var _el$15 = _tmpl$1(), _el$16 = _el$15.firstChild;
4072
- insert(_el$15, createComponent(IconReturnKey, {
4073
- size: 12,
4074
- "class": "shrink-0 text-black opacity-[0.65]"
4075
- }), _el$16);
4076
- return _el$15;
4079
+ var _el$18 = _tmpl$10(), _el$19 = _el$18.firstChild, _el$20 = _el$19.nextSibling; _el$20.firstChild;
4080
+ return _el$18;
4077
4081
  }
4078
- }), null);
4079
- return _el$13;
4082
+ }));
4083
+ createRenderEffect((_$p) => setStyleProperty(_el$16, "grid-template-rows", isIdle() ? "1fr" : "0fr"));
4084
+ return _el$14;
4080
4085
  }
4081
4086
  }), null);
4082
- insert(_el$1, createComponent(Show, {
4087
+ insert(_el$10, createComponent(Show, {
4083
4088
  get when() {
4084
4089
  return memo(() => !!isNotProcessing())() && props.isInputExpanded;
4085
4090
  },
4086
4091
  get children() {
4087
- var _el$17 = _tmpl$10(), _el$18 = _el$17.firstChild;
4088
- insert(_el$18, createComponent(TagBadge, {
4092
+ var _el$22 = _tmpl$13(), _el$23 = _el$22.firstChild;
4093
+ insert(_el$23, createComponent(ClickToCopyPill, {
4094
+ onClick: handleSubmit,
4095
+ dimmed: true,
4096
+ shrink: true
4097
+ }), null);
4098
+ insert(_el$23, createComponent(TagBadge, {
4089
4099
  get tagName() {
4090
4100
  return tagDisplay();
4091
4101
  },
@@ -4095,55 +4105,46 @@ var SelectionLabel = (props) => {
4095
4105
  onClick: handleTagClick,
4096
4106
  onHoverChange: handleTagHoverChange,
4097
4107
  showMono: true,
4098
- shrink: true
4108
+ shrink: true,
4109
+ forceShowIcon: true
4099
4110
  }), null);
4100
- insert(_el$18, createComponent(ClickToCopyPill, {
4101
- onClick: handleSubmit,
4102
- dimmed: true,
4103
- shrink: true
4104
- }), null);
4105
- insert(_el$17, createComponent(BottomSection, {
4111
+ insert(_el$22, createComponent(BottomSection, {
4106
4112
  get children() {
4107
- var _el$19 = _tmpl$11(), _el$20 = _el$19.firstChild, _el$21 = _el$20.nextSibling;
4108
- _el$20.$$keydown = handleKeyDown;
4109
- _el$20.$$input = handleInput;
4113
+ var _el$24 = _tmpl$12(), _el$25 = _el$24.firstChild, _el$26 = _el$25.nextSibling, _el$27 = _el$26.firstChild;
4114
+ _el$25.$$keydown = handleKeyDown;
4115
+ _el$25.$$input = handleInput;
4110
4116
  var _ref$2 = inputRef;
4111
- typeof _ref$2 === "function" ? use(_ref$2, _el$20) : inputRef = _el$20;
4112
- _el$21.$$click = handleSubmit;
4113
- insert(_el$21, createComponent(IconReturnKey, {
4114
- size: 12,
4115
- "class": "shrink-0 text-black"
4116
- }));
4117
- createRenderEffect(() => _el$20.value = props.inputValue ?? "");
4118
- return _el$19;
4117
+ typeof _ref$2 === "function" ? use(_ref$2, _el$25) : inputRef = _el$25;
4118
+ _el$26.$$click = handleSubmit;
4119
+ createRenderEffect(() => className(_el$27, cn("w-2.5 h-[9px] shrink-0 bg-cover bg-center transition-opacity duration-100", props.inputValue ? "opacity-[0.99]" : "opacity-50")));
4120
+ createRenderEffect(() => _el$25.value = props.inputValue ?? "");
4121
+ return _el$24;
4119
4122
  }
4120
4123
  }), null);
4121
- return _el$17;
4124
+ return _el$22;
4122
4125
  }
4123
4126
  }), null);
4124
4127
  createRenderEffect((_p$) => {
4125
- var _v$3 = `${computedPosition().top}px`, _v$4 = `${computedPosition().left}px`, _v$5 = props.visible ? "auto" : "none", _v$6 = props.status === "fading" ? 0 : 1, _v$7 = !isNotProcessing() ? "4px" : "0";
4126
- _v$3 !== _p$.e && setStyleProperty(_el$0, "top", _p$.e = _v$3);
4127
- _v$4 !== _p$.t && setStyleProperty(_el$0, "left", _p$.t = _v$4);
4128
- _v$5 !== _p$.a && setStyleProperty(_el$0, "pointer-events", _p$.a = _v$5);
4129
- _v$6 !== _p$.o && setStyleProperty(_el$0, "opacity", _p$.o = _v$6);
4130
- _v$7 !== _p$.i && setStyleProperty(_el$1, "padding", _p$.i = _v$7);
4128
+ var _v$3 = `${computedPosition().top}px`, _v$4 = `${computedPosition().left}px`, _v$5 = props.visible ? "auto" : "none", _v$6 = props.status === "fading" ? 0 : 1;
4129
+ _v$3 !== _p$.e && setStyleProperty(_el$1, "top", _p$.e = _v$3);
4130
+ _v$4 !== _p$.t && setStyleProperty(_el$1, "left", _p$.t = _v$4);
4131
+ _v$5 !== _p$.a && setStyleProperty(_el$1, "pointer-events", _p$.a = _v$5);
4132
+ _v$6 !== _p$.o && setStyleProperty(_el$1, "opacity", _p$.o = _v$6);
4131
4133
  return _p$;
4132
4134
  }, {
4133
4135
  e: void 0,
4134
4136
  t: void 0,
4135
4137
  a: void 0,
4136
- o: void 0,
4137
- i: void 0
4138
+ o: void 0
4138
4139
  });
4139
- return _el$0;
4140
+ return _el$1;
4140
4141
  }
4141
4142
  });
4142
4143
  };
4143
4144
  delegateEvents(["click", "mousedown", "input", "keydown"]);
4144
4145
 
4145
4146
  // src/components/selection-cursor.tsx
4146
- var _tmpl$13 = /* @__PURE__ */ template(`<div class="fixed z-2147483647"><button data-react-grab-selection-cursor>`);
4147
+ var _tmpl$15 = /* @__PURE__ */ template(`<div class="fixed z-2147483647"><button data-react-grab-selection-cursor>`);
4147
4148
  var SelectionCursor = (props) => {
4148
4149
  const [isHovered, setIsHovered] = createSignal(false);
4149
4150
  const [debouncedVisible, setDebouncedVisible] = createSignal(false);
@@ -4180,7 +4181,7 @@ var SelectionCursor = (props) => {
4180
4181
  });
4181
4182
  }
4182
4183
  }), (() => {
4183
- var _el$ = _tmpl$13(), _el$2 = _el$.firstChild;
4184
+ var _el$ = _tmpl$15(), _el$2 = _el$.firstChild;
4184
4185
  _el$.addEventListener("mouseleave", () => setIsHovered(false));
4185
4186
  _el$.addEventListener("mouseenter", () => setIsHovered(true));
4186
4187
  _el$2.$$click = handleClick;
@@ -4425,8 +4426,8 @@ var ReactGrabRenderer = (props) => {
4425
4426
  })];
4426
4427
  };
4427
4428
 
4428
- // ../../node_modules/.pnpm/bippy@0.5.16_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/rdt-hook-CrcWl4lP.js
4429
- var e = `0.5.16`;
4429
+ // ../../node_modules/.pnpm/bippy@0.5.17_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/rdt-hook-Ds2lt3Ph.js
4430
+ var e = `0.5.17`;
4430
4431
  var t = `bippy-${e}`;
4431
4432
  var n = Object.defineProperty;
4432
4433
  var r2 = Object.prototype.hasOwnProperty;
@@ -4513,10 +4514,10 @@ var _ = () => {
4513
4514
  }
4514
4515
  };
4515
4516
 
4516
- // ../../node_modules/.pnpm/bippy@0.5.16_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/install-hook-only-DtUPvEBg.js
4517
+ // ../../node_modules/.pnpm/bippy@0.5.17_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/install-hook-only-BE254Zqc.js
4517
4518
  _();
4518
4519
 
4519
- // ../../node_modules/.pnpm/bippy@0.5.16_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/core-D7_ABaNC.js
4520
+ // ../../node_modules/.pnpm/bippy@0.5.17_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/core-BKZAzaFk.js
4520
4521
  var a2 = 0;
4521
4522
  var o2 = 1;
4522
4523
  var c2 = 5;
@@ -4552,7 +4553,7 @@ var pe = (e2) => {
4552
4553
  return false;
4553
4554
  }
4554
4555
  };
4555
- var me = (e2) => !e2 || typeof e2 != `object` ? true : `pendingProps` in e2 && !(`containerInfo` in e2);
4556
+ var me = (e2) => !e2 || typeof e2 != `object` ? false : `pendingProps` in e2 && !(`containerInfo` in e2);
4556
4557
  function N(e2, t2, n2 = false) {
4557
4558
  if (!e2) return null;
4558
4559
  let r3 = t2(e2);
@@ -4641,7 +4642,7 @@ var Pe = (e2) => {
4641
4642
  };
4642
4643
  var $ = /* @__PURE__ */ new Set();
4643
4644
 
4644
- // ../../node_modules/.pnpm/bippy@0.5.16_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/source.js
4645
+ // ../../node_modules/.pnpm/bippy@0.5.17_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/source.js
4645
4646
  var b2 = Object.create;
4646
4647
  var x2 = Object.defineProperty;
4647
4648
  var S2 = Object.getOwnPropertyDescriptor;
@@ -5198,7 +5199,7 @@ var Y = async (e2, t2 = true, n2) => {
5198
5199
  return t2 && W2.delete(e2), t2 && (i2 === null ? U2.set(e2, null) : U2.set(e2, H2 ? new WeakRef(i2) : i2)), i2;
5199
5200
  };
5200
5201
  var be2 = /^[a-zA-Z][a-zA-Z\d+\-.]*:/;
5201
- var xe2 = [`rsc://`, `file:///`, `webpack://`, `node:`, `turbopack://`, `metro://`];
5202
+ var xe2 = [`rsc://`, `file:///`, `webpack://`, `node:`, `turbopack://`, `metro://`, `///app-pages-browser/`];
5202
5203
  var Se2 = `about://React/`;
5203
5204
  var Ce2 = [`<anonymous>`, `eval`, ``];
5204
5205
  var we2 = /\.(jsx|tsx|ts|js)$/;
@@ -5291,6 +5292,7 @@ var NEXT_INTERNAL_COMPONENT_NAMES = /* @__PURE__ */ new Set([
5291
5292
  "RootErrorBoundary"
5292
5293
  ]);
5293
5294
  var checkIsNextProject = () => {
5295
+ if (typeof document === "undefined") return false;
5294
5296
  return Boolean(document.getElementById("__NEXT_DATA__"));
5295
5297
  };
5296
5298
  var checkIsInternalComponentName = (name) => {
@@ -5365,15 +5367,17 @@ var formatElementInfo = async (element) => {
5365
5367
  const html = getHTMLPreview(element);
5366
5368
  const stack = await getStack(element);
5367
5369
  const isNextProject = checkIsNextProject();
5368
- let serverBoundary = null;
5369
- let componentName = null;
5370
+ let serverComponentName = null;
5371
+ let clientComponentName = null;
5370
5372
  let fileName = null;
5371
5373
  let lineNumber = null;
5372
5374
  let columnNumber = null;
5373
5375
  for (const frame of stack) {
5374
5376
  if (!frame.source) continue;
5375
5377
  if (frame.source.fileName.startsWith("about://React/Server")) {
5376
- if (!serverBoundary) serverBoundary = frame.name;
5378
+ if (!serverComponentName && checkIsSourceComponentName(frame.name)) {
5379
+ serverComponentName = frame.name;
5380
+ }
5377
5381
  continue;
5378
5382
  }
5379
5383
  if (je2(frame.source.fileName)) {
@@ -5382,25 +5386,27 @@ var formatElementInfo = async (element) => {
5382
5386
  lineNumber = frame.source.lineNumber ?? null;
5383
5387
  columnNumber = frame.source.columnNumber ?? null;
5384
5388
  }
5385
- if (!componentName && checkIsSourceComponentName(frame.name)) {
5386
- componentName = frame.name;
5389
+ if (!clientComponentName && checkIsSourceComponentName(frame.name)) {
5390
+ clientComponentName = frame.name;
5387
5391
  }
5388
- if (fileName && componentName) {
5392
+ if (fileName && clientComponentName) {
5389
5393
  break;
5390
5394
  }
5391
5395
  }
5392
5396
  }
5397
+ const componentName = serverComponentName ?? clientComponentName;
5393
5398
  if (!componentName || !fileName) {
5394
5399
  return html;
5395
5400
  }
5396
5401
  let result = `${html}
5397
- in ${componentName} at ${fileName}`;
5402
+ in ${componentName}`;
5403
+ if (serverComponentName && clientComponentName) {
5404
+ result += ` (Server \u2192 Client: ${clientComponentName})`;
5405
+ }
5406
+ result += ` at ${fileName}`;
5398
5407
  if (isNextProject && lineNumber && columnNumber) {
5399
5408
  result += `:${lineNumber}:${columnNumber}`;
5400
5409
  }
5401
- if (serverBoundary) {
5402
- result += ` (via Server: ${serverBoundary})`;
5403
- }
5404
5410
  return result;
5405
5411
  };
5406
5412
  var getFileName = (stack) => {
@@ -5965,10 +5971,17 @@ var generateSnippet = async (elements) => {
5965
5971
  };
5966
5972
 
5967
5973
  // src/agent.ts
5968
- var createAgentManager = (agentOptions) => {
5974
+ var createAgentManager = (initialAgentOptions) => {
5969
5975
  const [sessions, setSessions] = createSignal(/* @__PURE__ */ new Map());
5970
5976
  const abortControllers = /* @__PURE__ */ new Map();
5971
5977
  const sessionElements = /* @__PURE__ */ new Map();
5978
+ let agentOptions = initialAgentOptions;
5979
+ const setOptions = (options) => {
5980
+ agentOptions = options;
5981
+ };
5982
+ const getOptions = () => {
5983
+ return agentOptions;
5984
+ };
5972
5985
  const isProcessing = () => sessions().size > 0;
5973
5986
  const executeSessionStream = async (session, streamIterator) => {
5974
5987
  const storage = agentOptions?.storage;
@@ -6152,12 +6165,14 @@ var createAgentManager = (agentOptions) => {
6152
6165
  abortSession,
6153
6166
  abortAllSessions,
6154
6167
  updateSessionBoundsOnViewportChange,
6155
- getSessionElement
6168
+ getSessionElement,
6169
+ setOptions,
6170
+ getOptions
6156
6171
  };
6157
6172
  };
6158
6173
 
6159
6174
  // src/core.tsx
6160
- var _tmpl$14 = /* @__PURE__ */ template(`<span class="tabular-nums align-middle">`);
6175
+ var _tmpl$16 = /* @__PURE__ */ template(`<span class="tabular-nums align-middle">`);
6161
6176
  var _tmpl$23 = /* @__PURE__ */ template(`<span class="font-mono tabular-nums align-middle">&lt;<!>>`);
6162
6177
  var _tmpl$33 = /* @__PURE__ */ template(`<span class="tabular-nums ml-1 align-middle"> in `);
6163
6178
  var hasInited = false;
@@ -6172,6 +6187,34 @@ var getScriptOptions = () => {
6172
6187
  }
6173
6188
  };
6174
6189
  var init = (rawOptions) => {
6190
+ const initialTheme = mergeTheme(rawOptions?.theme);
6191
+ if (typeof window === "undefined") {
6192
+ return {
6193
+ activate: () => {
6194
+ },
6195
+ deactivate: () => {
6196
+ },
6197
+ toggle: () => {
6198
+ },
6199
+ isActive: () => false,
6200
+ dispose: () => {
6201
+ },
6202
+ copyElement: () => Promise.resolve(false),
6203
+ getState: () => ({
6204
+ isActive: false,
6205
+ isDragging: false,
6206
+ isCopying: false,
6207
+ isInputMode: false,
6208
+ targetElement: null,
6209
+ dragBounds: null
6210
+ }),
6211
+ updateTheme: () => {
6212
+ },
6213
+ getTheme: () => initialTheme,
6214
+ setAgent: () => {
6215
+ }
6216
+ };
6217
+ }
6175
6218
  const scriptOptions = getScriptOptions();
6176
6219
  const options = {
6177
6220
  enabled: true,
@@ -6180,7 +6223,7 @@ var init = (rawOptions) => {
6180
6223
  ...scriptOptions,
6181
6224
  ...rawOptions
6182
6225
  };
6183
- const initialTheme = mergeTheme(options.theme);
6226
+ const mergedTheme = mergeTheme(options.theme);
6184
6227
  if (options.enabled === false || hasInited) {
6185
6228
  return {
6186
6229
  activate: () => {
@@ -6203,13 +6246,15 @@ var init = (rawOptions) => {
6203
6246
  }),
6204
6247
  updateTheme: () => {
6205
6248
  },
6206
- getTheme: () => initialTheme
6249
+ getTheme: () => mergedTheme,
6250
+ setAgent: () => {
6251
+ }
6207
6252
  };
6208
6253
  }
6209
6254
  hasInited = true;
6210
6255
  const logIntro = () => {
6211
6256
  try {
6212
- const version = "0.0.56";
6257
+ const version = "0.0.57";
6213
6258
  const logoDataUri = `data:image/svg+xml;base64,${btoa(LOGO_SVG)}`;
6214
6259
  console.log(`%cReact Grab${version ? ` v${version}` : ""}%c
6215
6260
  https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid #d75fcb; padding: 4px 4px 4px 24px; border-radius: 4px; background-image: url("${logoDataUri}"); background-size: 16px 16px; background-repeat: no-repeat; background-position: 4px center; display: inline-block; margin-bottom: 4px;`, "");
@@ -6230,7 +6275,7 @@ https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid
6230
6275
  };
6231
6276
  logIntro();
6232
6277
  return createRoot((dispose2) => {
6233
- const [theme, setTheme] = createSignal(initialTheme);
6278
+ const [theme, setTheme] = createSignal(mergedTheme);
6234
6279
  const [isHoldingKeys, setIsHoldingKeys] = createSignal(false);
6235
6280
  const [mouseX, setMouseX] = createSignal(OFFSCREEN_POSITION);
6236
6281
  const [mouseY, setMouseY] = createSignal(OFFSCREEN_POSITION);
@@ -6258,6 +6303,7 @@ https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid
6258
6303
  const [isToggleFrozen, setIsToggleFrozen] = createSignal(false);
6259
6304
  const [isInputExpanded, setIsInputExpanded] = createSignal(false);
6260
6305
  const [frozenElement, setFrozenElement] = createSignal(null);
6306
+ const [hasAgentProvider, setHasAgentProvider] = createSignal(Boolean(options.agent?.provider));
6261
6307
  const [nativeSelectionCursorX, setNativeSelectionCursorX] = createSignal(OFFSCREEN_POSITION);
6262
6308
  const [nativeSelectionCursorY, setNativeSelectionCursorY] = createSignal(OFFSCREEN_POSITION);
6263
6309
  const [hasNativeSelection, setHasNativeSelection] = createSignal(false);
@@ -6409,9 +6455,7 @@ https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid
6409
6455
  }, COPIED_LABEL_DURATION_MS);
6410
6456
  }
6411
6457
  if (isToggleMode()) {
6412
- setTimeout(() => {
6413
- deactivateRenderer();
6414
- }, COPIED_LABEL_DURATION_MS + 350);
6458
+ deactivateRenderer();
6415
6459
  }
6416
6460
  });
6417
6461
  };
@@ -6560,7 +6604,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6560
6604
  const copying = isCopying();
6561
6605
  if (!element) {
6562
6606
  return (() => {
6563
- var _el$ = _tmpl$14();
6607
+ var _el$ = _tmpl$16();
6564
6608
  insert(_el$, copying ? "Please wait\u2026" : "1 element");
6565
6609
  return _el$;
6566
6610
  })();
@@ -6586,7 +6630,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6586
6630
  })();
6587
6631
  }
6588
6632
  return (() => {
6589
- var _el$10 = _tmpl$14();
6633
+ var _el$10 = _tmpl$16();
6590
6634
  insert(_el$10, copying ? "Please wait\u2026" : "1 element");
6591
6635
  return _el$10;
6592
6636
  })();
@@ -6827,7 +6871,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6827
6871
  const currentY = bounds.y + bounds.height / 2;
6828
6872
  setMouseX(currentX);
6829
6873
  setMouseY(currentY);
6830
- if (options.agent?.provider && prompt) {
6874
+ if (hasAgentProvider() && prompt) {
6831
6875
  deactivateRenderer();
6832
6876
  void agentManager.startSession({
6833
6877
  element,
@@ -6940,7 +6984,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6940
6984
  transform: stripTranslateFromTransform(firstElement)
6941
6985
  };
6942
6986
  const tagName = extractElementTagName(firstElement);
6943
- if (options.agent?.provider) {
6987
+ if (hasAgentProvider()) {
6944
6988
  const centerX = bounds.x + bounds.width / 2;
6945
6989
  const centerY = bounds.y + bounds.height / 2;
6946
6990
  setMouseX(centerX);
@@ -7383,7 +7427,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
7383
7427
  return isInputExpanded();
7384
7428
  },
7385
7429
  get hasAgent() {
7386
- return Boolean(options.agent?.provider);
7430
+ return hasAgentProvider();
7387
7431
  },
7388
7432
  get agentSessions() {
7389
7433
  return agentManager.sessions();
@@ -7418,7 +7462,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
7418
7462
  }
7419
7463
  }), rendererRoot);
7420
7464
  }
7421
- if (options.agent?.provider) {
7465
+ if (hasAgentProvider()) {
7422
7466
  agentManager.tryResumeSessions();
7423
7467
  }
7424
7468
  const copyElementAPI = async (elements) => {
@@ -7471,16 +7515,45 @@ ${plainTextContentOnly}` : plainTextContentOnly;
7471
7515
  getState: getStateAPI,
7472
7516
  updateTheme: (partialTheme) => {
7473
7517
  const currentTheme = theme();
7474
- const mergedTheme = deepMergeTheme(currentTheme, partialTheme);
7475
- setTheme(mergedTheme);
7518
+ const mergedTheme2 = deepMergeTheme(currentTheme, partialTheme);
7519
+ setTheme(mergedTheme2);
7476
7520
  },
7477
- getTheme: () => theme()
7521
+ getTheme: () => theme(),
7522
+ setAgent: (newAgentOptions) => {
7523
+ const existingOptions = agentManager.getOptions();
7524
+ const mergedOptions = {
7525
+ ...existingOptions,
7526
+ ...newAgentOptions,
7527
+ provider: newAgentOptions.provider ?? existingOptions?.provider,
7528
+ onAbort: (session, element) => {
7529
+ newAgentOptions?.onAbort?.(session, element);
7530
+ if (element && document.contains(element)) {
7531
+ const rect = element.getBoundingClientRect();
7532
+ const centerX = rect.left + rect.width / 2;
7533
+ const centerY = rect.top + rect.height / 2;
7534
+ setMouseX(centerX);
7535
+ setMouseY(centerY);
7536
+ setFrozenElement(element);
7537
+ setInputText(session.context.prompt);
7538
+ setIsInputExpanded(true);
7539
+ setIsInputMode(true);
7540
+ setIsToggleMode(true);
7541
+ setIsToggleFrozen(true);
7542
+ if (!isActivated()) {
7543
+ activateRenderer();
7544
+ }
7545
+ }
7546
+ }
7547
+ };
7548
+ agentManager.setOptions(mergedOptions);
7549
+ setHasAgentProvider(Boolean(mergedOptions.provider));
7550
+ }
7478
7551
  };
7479
7552
  });
7480
7553
  };
7481
7554
  /*! Bundled license information:
7482
7555
 
7483
- bippy/dist/rdt-hook-CrcWl4lP.js:
7556
+ bippy/dist/rdt-hook-Ds2lt3Ph.js:
7484
7557
  (**
7485
7558
  * @license bippy
7486
7559
  *
@@ -7490,7 +7563,7 @@ bippy/dist/rdt-hook-CrcWl4lP.js:
7490
7563
  * LICENSE file in the root directory of this source tree.
7491
7564
  *)
7492
7565
 
7493
- bippy/dist/install-hook-only-DtUPvEBg.js:
7566
+ bippy/dist/install-hook-only-BE254Zqc.js:
7494
7567
  (**
7495
7568
  * @license bippy
7496
7569
  *
@@ -7500,7 +7573,7 @@ bippy/dist/install-hook-only-DtUPvEBg.js:
7500
7573
  * LICENSE file in the root directory of this source tree.
7501
7574
  *)
7502
7575
 
7503
- bippy/dist/core-D7_ABaNC.js:
7576
+ bippy/dist/core-BKZAzaFk.js:
7504
7577
  (**
7505
7578
  * @license bippy
7506
7579
  *