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.
@@ -751,7 +751,8 @@ function cleanChildren(parent, current, marker, replacement) {
751
751
  }
752
752
 
753
753
  // dist/styles.css
754
- 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}}';
754
+ var styles_default = `/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
755
+ @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}}`;
755
756
 
756
757
  // src/utils/is-keyboard-event-triggered-by-input.ts
757
758
  var FORM_TAGS_AND_ROLES = [
@@ -864,6 +865,11 @@ var mountRoot = (cssText) => {
864
865
  shadowRoot.appendChild(root);
865
866
  const doc = document.body ?? document.documentElement;
866
867
  doc.appendChild(host);
868
+ setTimeout(() => {
869
+ if (!doc.contains(host)) {
870
+ doc.appendChild(host);
871
+ }
872
+ }, 1e3);
867
873
  return root;
868
874
  };
869
875
 
@@ -3654,33 +3660,12 @@ var IconOpen = (props) => {
3654
3660
  })();
3655
3661
  };
3656
3662
 
3657
- // src/components/icon-return-key.tsx
3658
- 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">`);
3659
- var IconReturnKey = (props) => {
3660
- const size = () => props.size ?? 14;
3661
- return (() => {
3662
- var _el$ = _tmpl$6();
3663
- createRenderEffect((_p$) => {
3664
- var _v$ = size(), _v$2 = size(), _v$3 = props.class;
3665
- _v$ !== _p$.e && setAttribute(_el$, "width", _p$.e = _v$);
3666
- _v$2 !== _p$.t && setAttribute(_el$, "height", _p$.t = _v$2);
3667
- _v$3 !== _p$.a && setAttribute(_el$, "class", _p$.a = _v$3);
3668
- return _p$;
3669
- }, {
3670
- e: void 0,
3671
- t: void 0,
3672
- a: void 0
3673
- });
3674
- return _el$;
3675
- })();
3676
- };
3677
-
3678
3663
  // src/components/icon-stop.tsx
3679
- 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>`);
3664
+ 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>`);
3680
3665
  var IconStop = (props) => {
3681
3666
  const size = () => props.size ?? 9;
3682
3667
  return (() => {
3683
- var _el$ = _tmpl$7();
3668
+ var _el$ = _tmpl$6();
3684
3669
  createRenderEffect((_p$) => {
3685
3670
  var _v$ = size(), _v$2 = size(), _v$3 = props.class;
3686
3671
  _v$ !== _p$.e && setAttribute(_el$, "width", _p$.e = _v$);
@@ -3697,22 +3682,25 @@ var IconStop = (props) => {
3697
3682
  };
3698
3683
 
3699
3684
  // src/components/selection-label.tsx
3700
- 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>`);
3685
+ 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>`);
3701
3686
  var _tmpl$22 = /* @__PURE__ */ template(`<span>`);
3702
3687
  var _tmpl$32 = /* @__PURE__ */ template(`<button>`);
3703
3688
  var _tmpl$42 = /* @__PURE__ */ template(`<div>`);
3704
3689
  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]">`);
3705
- 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">`);
3706
- 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">`);
3707
- var _tmpl$82 = /* @__PURE__ */ template(`<div class="flex items-center gap-[3px]">`);
3708
- 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>`);
3709
- var _tmpl$0 = /* @__PURE__ */ template(`<div class="flex items-center gap-[3px] react-grab-shimmer rounded-[3px]">`);
3710
- 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`);
3711
- 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">`);
3712
- 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]">`);
3713
- 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">`);
3690
+ var _tmpl$62 = /* @__PURE__ */ template(`<div class="absolute w-0 h-0"style="border-left:8px solid transparent;border-right:8px solid transparent">`);
3691
+ 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`);
3692
+ 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">`);
3693
+ var _tmpl$9 = /* @__PURE__ */ template(`<div class="flex items-center gap-[3px] pt-1 pb-1.5 px-1.5">`);
3694
+ 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>`);
3695
+ 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">`);
3696
+ 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`);
3697
+ 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">`);
3698
+ 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)>`);
3699
+ 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">`);
3700
+ 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">`);
3714
3701
  var ARROW_HEIGHT = 8;
3715
3702
  var LABEL_GAP = 4;
3703
+ var IDLE_TIMEOUT_MS = 400;
3716
3704
  var TagBadge = (props) => {
3717
3705
  const [isHovered, setIsHovered] = createSignal(false);
3718
3706
  const handleMouseEnter = () => {
@@ -3724,26 +3712,26 @@ var TagBadge = (props) => {
3724
3712
  props.onHoverChange?.(false);
3725
3713
  };
3726
3714
  return (() => {
3727
- var _el$ = _tmpl$8(), _el$2 = _el$.firstChild;
3715
+ var _el$ = _tmpl$7(), _el$2 = _el$.firstChild;
3728
3716
  addEventListener(_el$, "click", props.onClick);
3729
3717
  _el$.addEventListener("mouseleave", handleMouseLeave);
3730
3718
  _el$.addEventListener("mouseenter", handleMouseEnter);
3731
3719
  insert(_el$2, () => props.tagName);
3732
3720
  insert(_el$, createComponent(Show, {
3733
3721
  get when() {
3734
- return props.isClickable;
3722
+ return props.isClickable || props.forceShowIcon;
3735
3723
  },
3736
3724
  get children() {
3737
3725
  return createComponent(IconOpen, {
3738
3726
  size: 10,
3739
3727
  get ["class"]() {
3740
- return cn("text-label-tag-border transition-all duration-100", isHovered() ? "opacity-100 scale-100" : "opacity-0 scale-75 -ml-[5px] w-0");
3728
+ 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");
3741
3729
  }
3742
3730
  });
3743
3731
  }
3744
3732
  }), null);
3745
3733
  createRenderEffect((_p$) => {
3746
- 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");
3734
+ 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");
3747
3735
  _v$ !== _p$.e && className(_el$, _p$.e = _v$);
3748
3736
  _v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
3749
3737
  return _p$;
@@ -3805,32 +3793,17 @@ var Arrow = (props) => (() => {
3805
3793
  }, _$p));
3806
3794
  return _el$8;
3807
3795
  })();
3808
- var ClickToCopyPill = (props) => createComponent(ActionPill, {
3809
- get icon() {
3810
- return createComponent(IconCursorSimple, {
3811
- size: 9,
3812
- "class": "text-black shrink-0"
3813
- });
3814
- },
3815
- label: "Click to copy",
3816
- get onClick() {
3817
- return props.onClick;
3818
- },
3819
- get asButton() {
3820
- return props.asButton;
3821
- },
3822
- get dimmed() {
3823
- return props.dimmed;
3824
- },
3825
- get shrink() {
3826
- return props.shrink;
3827
- }
3828
- });
3829
- var BottomSection = (props) => (() => {
3796
+ var ClickToCopyPill = (props) => (() => {
3830
3797
  var _el$9 = _tmpl$72();
3831
- insert(_el$9, () => props.children);
3798
+ addEventListener(_el$9, "click", props.onClick);
3799
+ 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")));
3832
3800
  return _el$9;
3833
3801
  })();
3802
+ var BottomSection = (props) => (() => {
3803
+ var _el$0 = _tmpl$8();
3804
+ insert(_el$0, () => props.children);
3805
+ return _el$0;
3806
+ })();
3834
3807
  var SelectionLabel = (props) => {
3835
3808
  let containerRef;
3836
3809
  let inputRef;
@@ -3839,6 +3812,7 @@ var SelectionLabel = (props) => {
3839
3812
  const [measuredHeight, setMeasuredHeight] = createSignal(0);
3840
3813
  const [arrowPosition, setArrowPosition] = createSignal("bottom");
3841
3814
  const [viewportVersion, setViewportVersion] = createSignal(0);
3815
+ const [isIdle, setIsIdle] = createSignal(false);
3842
3816
  const isNotProcessing = () => props.status !== "copying" && props.status !== "copied" && props.status !== "fading";
3843
3817
  const measureContainer = () => {
3844
3818
  if (containerRef && !isTagCurrentlyHovered) {
@@ -3853,14 +3827,45 @@ var SelectionLabel = (props) => {
3853
3827
  const handleViewportChange = () => {
3854
3828
  setViewportVersion((version) => version + 1);
3855
3829
  };
3830
+ let idleTimeout;
3831
+ const resetIdleTimer = () => {
3832
+ setIsIdle(false);
3833
+ if (idleTimeout) {
3834
+ clearTimeout(idleTimeout);
3835
+ }
3836
+ idleTimeout = setTimeout(() => {
3837
+ setIsIdle(true);
3838
+ }, IDLE_TIMEOUT_MS);
3839
+ };
3840
+ const handleGlobalKeyDown = (event) => {
3841
+ if (event.code === "Enter" && isIdle() && !props.isInputExpanded && isNotProcessing()) {
3842
+ event.preventDefault();
3843
+ event.stopPropagation();
3844
+ props.onToggleExpand?.();
3845
+ }
3846
+ };
3856
3847
  onMount(() => {
3857
3848
  measureContainer();
3858
3849
  window.addEventListener("scroll", handleViewportChange, true);
3859
3850
  window.addEventListener("resize", handleViewportChange);
3851
+ window.addEventListener("keydown", handleGlobalKeyDown, {
3852
+ capture: true
3853
+ });
3854
+ resetIdleTimer();
3860
3855
  });
3861
3856
  onCleanup(() => {
3862
3857
  window.removeEventListener("scroll", handleViewportChange, true);
3863
3858
  window.removeEventListener("resize", handleViewportChange);
3859
+ window.removeEventListener("keydown", handleGlobalKeyDown, {
3860
+ capture: true
3861
+ });
3862
+ if (idleTimeout) {
3863
+ clearTimeout(idleTimeout);
3864
+ }
3865
+ });
3866
+ createEffect(() => {
3867
+ void props.selectionBounds;
3868
+ resetIdleTimer();
3864
3869
  });
3865
3870
  createEffect(() => {
3866
3871
  if (props.visible) {
@@ -3868,7 +3873,7 @@ var SelectionLabel = (props) => {
3868
3873
  }
3869
3874
  });
3870
3875
  createEffect(() => {
3871
- void [props.status, props.isInputExpanded, props.inputValue];
3876
+ void props.status;
3872
3877
  requestAnimationFrame(measureContainer);
3873
3878
  });
3874
3879
  createEffect(() => {
@@ -3954,26 +3959,26 @@ var SelectionLabel = (props) => {
3954
3959
  return memo(() => props.visible !== false)() && props.selectionBounds;
3955
3960
  },
3956
3961
  get children() {
3957
- var _el$0 = _tmpl$12(), _el$1 = _el$0.firstChild;
3958
- _el$0.$$click = stopPropagation;
3959
- _el$0.$$mousedown = stopPropagation;
3962
+ var _el$1 = _tmpl$14(), _el$10 = _el$1.firstChild;
3963
+ _el$1.$$click = stopPropagation;
3964
+ _el$1.$$mousedown = stopPropagation;
3960
3965
  var _ref$ = containerRef;
3961
- typeof _ref$ === "function" ? use(_ref$, _el$0) : containerRef = _el$0;
3962
- insert(_el$0, createComponent(Arrow, {
3966
+ typeof _ref$ === "function" ? use(_ref$, _el$1) : containerRef = _el$1;
3967
+ insert(_el$1, createComponent(Arrow, {
3963
3968
  get position() {
3964
3969
  return arrowPosition();
3965
3970
  },
3966
3971
  get leftPx() {
3967
3972
  return computedPosition().arrowLeft;
3968
3973
  }
3969
- }), _el$1);
3970
- insert(_el$1, createComponent(Show, {
3974
+ }), _el$10);
3975
+ insert(_el$10, createComponent(Show, {
3971
3976
  get when() {
3972
3977
  return props.status === "copied" || props.status === "fading";
3973
3978
  },
3974
3979
  get children() {
3975
- var _el$10 = _tmpl$82();
3976
- insert(_el$10, createComponent(TagBadge, {
3980
+ var _el$11 = _tmpl$9();
3981
+ insert(_el$11, createComponent(TagBadge, {
3977
3982
  get tagName() {
3978
3983
  return tagDisplay();
3979
3984
  },
@@ -3981,23 +3986,25 @@ var SelectionLabel = (props) => {
3981
3986
  return isTagClickable();
3982
3987
  },
3983
3988
  onClick: handleTagClick,
3984
- onHoverChange: handleTagHoverChange
3989
+ onHoverChange: handleTagHoverChange,
3990
+ showMono: true,
3991
+ shrink: true
3985
3992
  }), null);
3986
- insert(_el$10, createComponent(SuccessPill, {
3993
+ insert(_el$11, createComponent(SuccessPill, {
3987
3994
  get hasAgent() {
3988
3995
  return props.hasAgent;
3989
3996
  }
3990
3997
  }), null);
3991
- return _el$10;
3998
+ return _el$11;
3992
3999
  }
3993
4000
  }), null);
3994
- insert(_el$1, createComponent(Show, {
4001
+ insert(_el$10, createComponent(Show, {
3995
4002
  get when() {
3996
4003
  return props.status === "copying";
3997
4004
  },
3998
4005
  get children() {
3999
- var _el$11 = _tmpl$0();
4000
- insert(_el$11, createComponent(TagBadge, {
4006
+ var _el$12 = _tmpl$1();
4007
+ insert(_el$12, createComponent(TagBadge, {
4001
4008
  get tagName() {
4002
4009
  return tagDisplay();
4003
4010
  },
@@ -4006,9 +4013,10 @@ var SelectionLabel = (props) => {
4006
4013
  },
4007
4014
  onClick: handleTagClick,
4008
4015
  onHoverChange: handleTagHoverChange,
4009
- showMono: true
4016
+ showMono: true,
4017
+ shrink: true
4010
4018
  }), null);
4011
- insert(_el$11, createComponent(ActionPill, {
4019
+ insert(_el$12, createComponent(ActionPill, {
4012
4020
  get icon() {
4013
4021
  return createComponent(IconCursorSimple, {
4014
4022
  size: 9,
@@ -4019,40 +4027,44 @@ var SelectionLabel = (props) => {
4019
4027
  return props.statusText ?? "Grabbing\u2026";
4020
4028
  }
4021
4029
  }), null);
4022
- insert(_el$11, createComponent(Show, {
4030
+ insert(_el$12, createComponent(Show, {
4023
4031
  get when() {
4024
4032
  return memo(() => !!props.hasAgent)() && props.onAbort;
4025
4033
  },
4026
4034
  get children() {
4027
- var _el$12 = _tmpl$9();
4028
- _el$12.$$click = (event) => {
4035
+ var _el$13 = _tmpl$0();
4036
+ _el$13.$$click = (event) => {
4029
4037
  event.preventDefault();
4030
4038
  event.stopPropagation();
4031
4039
  event.stopImmediatePropagation();
4032
4040
  props.onAbort?.();
4033
4041
  };
4034
- _el$12.$$mousedown = (event) => {
4042
+ _el$13.$$mousedown = (event) => {
4035
4043
  event.preventDefault();
4036
4044
  event.stopPropagation();
4037
4045
  event.stopImmediatePropagation();
4038
4046
  };
4039
- insert(_el$12, createComponent(IconStop, {
4047
+ insert(_el$13, createComponent(IconStop, {
4040
4048
  size: 8,
4041
4049
  "class": "text-white"
4042
4050
  }));
4043
- return _el$12;
4051
+ return _el$13;
4044
4052
  }
4045
4053
  }), null);
4046
- return _el$11;
4054
+ return _el$12;
4047
4055
  }
4048
4056
  }), null);
4049
- insert(_el$1, createComponent(Show, {
4057
+ insert(_el$10, createComponent(Show, {
4050
4058
  get when() {
4051
4059
  return memo(() => !!isNotProcessing())() && !props.isInputExpanded;
4052
4060
  },
4053
4061
  get children() {
4054
- var _el$13 = _tmpl$10(), _el$14 = _el$13.firstChild;
4055
- insert(_el$14, createComponent(TagBadge, {
4062
+ var _el$14 = _tmpl$11(), _el$15 = _el$14.firstChild, _el$16 = _el$15.nextSibling, _el$17 = _el$16.firstChild;
4063
+ insert(_el$15, createComponent(ClickToCopyPill, {
4064
+ onClick: handleSubmit,
4065
+ shrink: true
4066
+ }), null);
4067
+ insert(_el$15, createComponent(TagBadge, {
4056
4068
  get tagName() {
4057
4069
  return tagDisplay();
4058
4070
  },
@@ -4064,30 +4076,28 @@ var SelectionLabel = (props) => {
4064
4076
  showMono: true,
4065
4077
  shrink: true
4066
4078
  }), null);
4067
- insert(_el$14, createComponent(ClickToCopyPill, {
4068
- onClick: handleSubmit,
4069
- shrink: true
4070
- }), null);
4071
- insert(_el$13, createComponent(BottomSection, {
4079
+ insert(_el$17, createComponent(BottomSection, {
4072
4080
  get children() {
4073
- var _el$15 = _tmpl$1(), _el$16 = _el$15.firstChild;
4074
- insert(_el$15, createComponent(IconReturnKey, {
4075
- size: 12,
4076
- "class": "shrink-0 text-black opacity-[0.65]"
4077
- }), _el$16);
4078
- return _el$15;
4081
+ var _el$18 = _tmpl$10(), _el$19 = _el$18.firstChild, _el$20 = _el$19.nextSibling; _el$20.firstChild;
4082
+ return _el$18;
4079
4083
  }
4080
- }), null);
4081
- return _el$13;
4084
+ }));
4085
+ createRenderEffect((_$p) => setStyleProperty(_el$16, "grid-template-rows", isIdle() ? "1fr" : "0fr"));
4086
+ return _el$14;
4082
4087
  }
4083
4088
  }), null);
4084
- insert(_el$1, createComponent(Show, {
4089
+ insert(_el$10, createComponent(Show, {
4085
4090
  get when() {
4086
4091
  return memo(() => !!isNotProcessing())() && props.isInputExpanded;
4087
4092
  },
4088
4093
  get children() {
4089
- var _el$17 = _tmpl$10(), _el$18 = _el$17.firstChild;
4090
- insert(_el$18, createComponent(TagBadge, {
4094
+ var _el$22 = _tmpl$13(), _el$23 = _el$22.firstChild;
4095
+ insert(_el$23, createComponent(ClickToCopyPill, {
4096
+ onClick: handleSubmit,
4097
+ dimmed: true,
4098
+ shrink: true
4099
+ }), null);
4100
+ insert(_el$23, createComponent(TagBadge, {
4091
4101
  get tagName() {
4092
4102
  return tagDisplay();
4093
4103
  },
@@ -4097,55 +4107,46 @@ var SelectionLabel = (props) => {
4097
4107
  onClick: handleTagClick,
4098
4108
  onHoverChange: handleTagHoverChange,
4099
4109
  showMono: true,
4100
- shrink: true
4110
+ shrink: true,
4111
+ forceShowIcon: true
4101
4112
  }), null);
4102
- insert(_el$18, createComponent(ClickToCopyPill, {
4103
- onClick: handleSubmit,
4104
- dimmed: true,
4105
- shrink: true
4106
- }), null);
4107
- insert(_el$17, createComponent(BottomSection, {
4113
+ insert(_el$22, createComponent(BottomSection, {
4108
4114
  get children() {
4109
- var _el$19 = _tmpl$11(), _el$20 = _el$19.firstChild, _el$21 = _el$20.nextSibling;
4110
- _el$20.$$keydown = handleKeyDown;
4111
- _el$20.$$input = handleInput;
4115
+ var _el$24 = _tmpl$12(), _el$25 = _el$24.firstChild, _el$26 = _el$25.nextSibling, _el$27 = _el$26.firstChild;
4116
+ _el$25.$$keydown = handleKeyDown;
4117
+ _el$25.$$input = handleInput;
4112
4118
  var _ref$2 = inputRef;
4113
- typeof _ref$2 === "function" ? use(_ref$2, _el$20) : inputRef = _el$20;
4114
- _el$21.$$click = handleSubmit;
4115
- insert(_el$21, createComponent(IconReturnKey, {
4116
- size: 12,
4117
- "class": "shrink-0 text-black"
4118
- }));
4119
- createRenderEffect(() => _el$20.value = props.inputValue ?? "");
4120
- return _el$19;
4119
+ typeof _ref$2 === "function" ? use(_ref$2, _el$25) : inputRef = _el$25;
4120
+ _el$26.$$click = handleSubmit;
4121
+ 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")));
4122
+ createRenderEffect(() => _el$25.value = props.inputValue ?? "");
4123
+ return _el$24;
4121
4124
  }
4122
4125
  }), null);
4123
- return _el$17;
4126
+ return _el$22;
4124
4127
  }
4125
4128
  }), null);
4126
4129
  createRenderEffect((_p$) => {
4127
- 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";
4128
- _v$3 !== _p$.e && setStyleProperty(_el$0, "top", _p$.e = _v$3);
4129
- _v$4 !== _p$.t && setStyleProperty(_el$0, "left", _p$.t = _v$4);
4130
- _v$5 !== _p$.a && setStyleProperty(_el$0, "pointer-events", _p$.a = _v$5);
4131
- _v$6 !== _p$.o && setStyleProperty(_el$0, "opacity", _p$.o = _v$6);
4132
- _v$7 !== _p$.i && setStyleProperty(_el$1, "padding", _p$.i = _v$7);
4130
+ var _v$3 = `${computedPosition().top}px`, _v$4 = `${computedPosition().left}px`, _v$5 = props.visible ? "auto" : "none", _v$6 = props.status === "fading" ? 0 : 1;
4131
+ _v$3 !== _p$.e && setStyleProperty(_el$1, "top", _p$.e = _v$3);
4132
+ _v$4 !== _p$.t && setStyleProperty(_el$1, "left", _p$.t = _v$4);
4133
+ _v$5 !== _p$.a && setStyleProperty(_el$1, "pointer-events", _p$.a = _v$5);
4134
+ _v$6 !== _p$.o && setStyleProperty(_el$1, "opacity", _p$.o = _v$6);
4133
4135
  return _p$;
4134
4136
  }, {
4135
4137
  e: void 0,
4136
4138
  t: void 0,
4137
4139
  a: void 0,
4138
- o: void 0,
4139
- i: void 0
4140
+ o: void 0
4140
4141
  });
4141
- return _el$0;
4142
+ return _el$1;
4142
4143
  }
4143
4144
  });
4144
4145
  };
4145
4146
  delegateEvents(["click", "mousedown", "input", "keydown"]);
4146
4147
 
4147
4148
  // src/components/selection-cursor.tsx
4148
- var _tmpl$13 = /* @__PURE__ */ template(`<div class="fixed z-2147483647"><button data-react-grab-selection-cursor>`);
4149
+ var _tmpl$15 = /* @__PURE__ */ template(`<div class="fixed z-2147483647"><button data-react-grab-selection-cursor>`);
4149
4150
  var SelectionCursor = (props) => {
4150
4151
  const [isHovered, setIsHovered] = createSignal(false);
4151
4152
  const [debouncedVisible, setDebouncedVisible] = createSignal(false);
@@ -4182,7 +4183,7 @@ var SelectionCursor = (props) => {
4182
4183
  });
4183
4184
  }
4184
4185
  }), (() => {
4185
- var _el$ = _tmpl$13(), _el$2 = _el$.firstChild;
4186
+ var _el$ = _tmpl$15(), _el$2 = _el$.firstChild;
4186
4187
  _el$.addEventListener("mouseleave", () => setIsHovered(false));
4187
4188
  _el$.addEventListener("mouseenter", () => setIsHovered(true));
4188
4189
  _el$2.$$click = handleClick;
@@ -4427,8 +4428,8 @@ var ReactGrabRenderer = (props) => {
4427
4428
  })];
4428
4429
  };
4429
4430
 
4430
- // ../../node_modules/.pnpm/bippy@0.5.16_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/rdt-hook-CrcWl4lP.js
4431
- var e = `0.5.16`;
4431
+ // ../../node_modules/.pnpm/bippy@0.5.17_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/rdt-hook-Ds2lt3Ph.js
4432
+ var e = `0.5.17`;
4432
4433
  var t = `bippy-${e}`;
4433
4434
  var n = Object.defineProperty;
4434
4435
  var r2 = Object.prototype.hasOwnProperty;
@@ -4515,10 +4516,10 @@ var _ = () => {
4515
4516
  }
4516
4517
  };
4517
4518
 
4518
- // ../../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
4519
+ // ../../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
4519
4520
  _();
4520
4521
 
4521
- // ../../node_modules/.pnpm/bippy@0.5.16_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/core-D7_ABaNC.js
4522
+ // ../../node_modules/.pnpm/bippy@0.5.17_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/core-BKZAzaFk.js
4522
4523
  var a2 = 0;
4523
4524
  var o2 = 1;
4524
4525
  var c2 = 5;
@@ -4554,7 +4555,7 @@ var pe = (e2) => {
4554
4555
  return false;
4555
4556
  }
4556
4557
  };
4557
- var me = (e2) => !e2 || typeof e2 != `object` ? true : `pendingProps` in e2 && !(`containerInfo` in e2);
4558
+ var me = (e2) => !e2 || typeof e2 != `object` ? false : `pendingProps` in e2 && !(`containerInfo` in e2);
4558
4559
  function N(e2, t2, n2 = false) {
4559
4560
  if (!e2) return null;
4560
4561
  let r3 = t2(e2);
@@ -4643,7 +4644,7 @@ var Pe = (e2) => {
4643
4644
  };
4644
4645
  var $ = /* @__PURE__ */ new Set();
4645
4646
 
4646
- // ../../node_modules/.pnpm/bippy@0.5.16_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/source.js
4647
+ // ../../node_modules/.pnpm/bippy@0.5.17_@types+react@19.2.2_react@19.2.0/node_modules/bippy/dist/source.js
4647
4648
  var b2 = Object.create;
4648
4649
  var x2 = Object.defineProperty;
4649
4650
  var S2 = Object.getOwnPropertyDescriptor;
@@ -5200,7 +5201,7 @@ var Y = async (e2, t2 = true, n2) => {
5200
5201
  return t2 && W2.delete(e2), t2 && (i2 === null ? U2.set(e2, null) : U2.set(e2, H2 ? new WeakRef(i2) : i2)), i2;
5201
5202
  };
5202
5203
  var be2 = /^[a-zA-Z][a-zA-Z\d+\-.]*:/;
5203
- var xe2 = [`rsc://`, `file:///`, `webpack://`, `node:`, `turbopack://`, `metro://`];
5204
+ var xe2 = [`rsc://`, `file:///`, `webpack://`, `node:`, `turbopack://`, `metro://`, `///app-pages-browser/`];
5204
5205
  var Se2 = `about://React/`;
5205
5206
  var Ce2 = [`<anonymous>`, `eval`, ``];
5206
5207
  var we2 = /\.(jsx|tsx|ts|js)$/;
@@ -5293,6 +5294,7 @@ var NEXT_INTERNAL_COMPONENT_NAMES = /* @__PURE__ */ new Set([
5293
5294
  "RootErrorBoundary"
5294
5295
  ]);
5295
5296
  var checkIsNextProject = () => {
5297
+ if (typeof document === "undefined") return false;
5296
5298
  return Boolean(document.getElementById("__NEXT_DATA__"));
5297
5299
  };
5298
5300
  var checkIsInternalComponentName = (name) => {
@@ -5367,15 +5369,17 @@ var formatElementInfo = async (element) => {
5367
5369
  const html = getHTMLPreview(element);
5368
5370
  const stack = await getStack(element);
5369
5371
  const isNextProject = checkIsNextProject();
5370
- let serverBoundary = null;
5371
- let componentName = null;
5372
+ let serverComponentName = null;
5373
+ let clientComponentName = null;
5372
5374
  let fileName = null;
5373
5375
  let lineNumber = null;
5374
5376
  let columnNumber = null;
5375
5377
  for (const frame of stack) {
5376
5378
  if (!frame.source) continue;
5377
5379
  if (frame.source.fileName.startsWith("about://React/Server")) {
5378
- if (!serverBoundary) serverBoundary = frame.name;
5380
+ if (!serverComponentName && checkIsSourceComponentName(frame.name)) {
5381
+ serverComponentName = frame.name;
5382
+ }
5379
5383
  continue;
5380
5384
  }
5381
5385
  if (je2(frame.source.fileName)) {
@@ -5384,25 +5388,27 @@ var formatElementInfo = async (element) => {
5384
5388
  lineNumber = frame.source.lineNumber ?? null;
5385
5389
  columnNumber = frame.source.columnNumber ?? null;
5386
5390
  }
5387
- if (!componentName && checkIsSourceComponentName(frame.name)) {
5388
- componentName = frame.name;
5391
+ if (!clientComponentName && checkIsSourceComponentName(frame.name)) {
5392
+ clientComponentName = frame.name;
5389
5393
  }
5390
- if (fileName && componentName) {
5394
+ if (fileName && clientComponentName) {
5391
5395
  break;
5392
5396
  }
5393
5397
  }
5394
5398
  }
5399
+ const componentName = serverComponentName ?? clientComponentName;
5395
5400
  if (!componentName || !fileName) {
5396
5401
  return html;
5397
5402
  }
5398
5403
  let result = `${html}
5399
- in ${componentName} at ${fileName}`;
5404
+ in ${componentName}`;
5405
+ if (serverComponentName && clientComponentName) {
5406
+ result += ` (Server \u2192 Client: ${clientComponentName})`;
5407
+ }
5408
+ result += ` at ${fileName}`;
5400
5409
  if (isNextProject && lineNumber && columnNumber) {
5401
5410
  result += `:${lineNumber}:${columnNumber}`;
5402
5411
  }
5403
- if (serverBoundary) {
5404
- result += ` (via Server: ${serverBoundary})`;
5405
- }
5406
5412
  return result;
5407
5413
  };
5408
5414
  var getFileName = (stack) => {
@@ -5967,10 +5973,17 @@ var generateSnippet = async (elements) => {
5967
5973
  };
5968
5974
 
5969
5975
  // src/agent.ts
5970
- var createAgentManager = (agentOptions) => {
5976
+ var createAgentManager = (initialAgentOptions) => {
5971
5977
  const [sessions, setSessions] = createSignal(/* @__PURE__ */ new Map());
5972
5978
  const abortControllers = /* @__PURE__ */ new Map();
5973
5979
  const sessionElements = /* @__PURE__ */ new Map();
5980
+ let agentOptions = initialAgentOptions;
5981
+ const setOptions = (options) => {
5982
+ agentOptions = options;
5983
+ };
5984
+ const getOptions = () => {
5985
+ return agentOptions;
5986
+ };
5974
5987
  const isProcessing = () => sessions().size > 0;
5975
5988
  const executeSessionStream = async (session, streamIterator) => {
5976
5989
  const storage = agentOptions?.storage;
@@ -6154,12 +6167,14 @@ var createAgentManager = (agentOptions) => {
6154
6167
  abortSession,
6155
6168
  abortAllSessions,
6156
6169
  updateSessionBoundsOnViewportChange,
6157
- getSessionElement
6170
+ getSessionElement,
6171
+ setOptions,
6172
+ getOptions
6158
6173
  };
6159
6174
  };
6160
6175
 
6161
6176
  // src/core.tsx
6162
- var _tmpl$14 = /* @__PURE__ */ template(`<span class="tabular-nums align-middle">`);
6177
+ var _tmpl$16 = /* @__PURE__ */ template(`<span class="tabular-nums align-middle">`);
6163
6178
  var _tmpl$23 = /* @__PURE__ */ template(`<span class="font-mono tabular-nums align-middle">&lt;<!>>`);
6164
6179
  var _tmpl$33 = /* @__PURE__ */ template(`<span class="tabular-nums ml-1 align-middle"> in `);
6165
6180
  var hasInited = false;
@@ -6174,6 +6189,34 @@ var getScriptOptions = () => {
6174
6189
  }
6175
6190
  };
6176
6191
  var init = (rawOptions) => {
6192
+ const initialTheme = mergeTheme(rawOptions?.theme);
6193
+ if (typeof window === "undefined") {
6194
+ return {
6195
+ activate: () => {
6196
+ },
6197
+ deactivate: () => {
6198
+ },
6199
+ toggle: () => {
6200
+ },
6201
+ isActive: () => false,
6202
+ dispose: () => {
6203
+ },
6204
+ copyElement: () => Promise.resolve(false),
6205
+ getState: () => ({
6206
+ isActive: false,
6207
+ isDragging: false,
6208
+ isCopying: false,
6209
+ isInputMode: false,
6210
+ targetElement: null,
6211
+ dragBounds: null
6212
+ }),
6213
+ updateTheme: () => {
6214
+ },
6215
+ getTheme: () => initialTheme,
6216
+ setAgent: () => {
6217
+ }
6218
+ };
6219
+ }
6177
6220
  const scriptOptions = getScriptOptions();
6178
6221
  const options = {
6179
6222
  enabled: true,
@@ -6182,7 +6225,7 @@ var init = (rawOptions) => {
6182
6225
  ...scriptOptions,
6183
6226
  ...rawOptions
6184
6227
  };
6185
- const initialTheme = mergeTheme(options.theme);
6228
+ const mergedTheme = mergeTheme(options.theme);
6186
6229
  if (options.enabled === false || hasInited) {
6187
6230
  return {
6188
6231
  activate: () => {
@@ -6205,13 +6248,15 @@ var init = (rawOptions) => {
6205
6248
  }),
6206
6249
  updateTheme: () => {
6207
6250
  },
6208
- getTheme: () => initialTheme
6251
+ getTheme: () => mergedTheme,
6252
+ setAgent: () => {
6253
+ }
6209
6254
  };
6210
6255
  }
6211
6256
  hasInited = true;
6212
6257
  const logIntro = () => {
6213
6258
  try {
6214
- const version = "0.0.56";
6259
+ const version = "0.0.57";
6215
6260
  const logoDataUri = `data:image/svg+xml;base64,${btoa(LOGO_SVG)}`;
6216
6261
  console.log(`%cReact Grab${version ? ` v${version}` : ""}%c
6217
6262
  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;`, "");
@@ -6232,7 +6277,7 @@ https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid
6232
6277
  };
6233
6278
  logIntro();
6234
6279
  return createRoot((dispose2) => {
6235
- const [theme, setTheme] = createSignal(initialTheme);
6280
+ const [theme, setTheme] = createSignal(mergedTheme);
6236
6281
  const [isHoldingKeys, setIsHoldingKeys] = createSignal(false);
6237
6282
  const [mouseX, setMouseX] = createSignal(OFFSCREEN_POSITION);
6238
6283
  const [mouseY, setMouseY] = createSignal(OFFSCREEN_POSITION);
@@ -6260,6 +6305,7 @@ https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid
6260
6305
  const [isToggleFrozen, setIsToggleFrozen] = createSignal(false);
6261
6306
  const [isInputExpanded, setIsInputExpanded] = createSignal(false);
6262
6307
  const [frozenElement, setFrozenElement] = createSignal(null);
6308
+ const [hasAgentProvider, setHasAgentProvider] = createSignal(Boolean(options.agent?.provider));
6263
6309
  const [nativeSelectionCursorX, setNativeSelectionCursorX] = createSignal(OFFSCREEN_POSITION);
6264
6310
  const [nativeSelectionCursorY, setNativeSelectionCursorY] = createSignal(OFFSCREEN_POSITION);
6265
6311
  const [hasNativeSelection, setHasNativeSelection] = createSignal(false);
@@ -6411,9 +6457,7 @@ https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid
6411
6457
  }, COPIED_LABEL_DURATION_MS);
6412
6458
  }
6413
6459
  if (isToggleMode()) {
6414
- setTimeout(() => {
6415
- deactivateRenderer();
6416
- }, COPIED_LABEL_DURATION_MS + 350);
6460
+ deactivateRenderer();
6417
6461
  }
6418
6462
  });
6419
6463
  };
@@ -6562,7 +6606,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6562
6606
  const copying = isCopying();
6563
6607
  if (!element) {
6564
6608
  return (() => {
6565
- var _el$ = _tmpl$14();
6609
+ var _el$ = _tmpl$16();
6566
6610
  insert(_el$, copying ? "Please wait\u2026" : "1 element");
6567
6611
  return _el$;
6568
6612
  })();
@@ -6588,7 +6632,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6588
6632
  })();
6589
6633
  }
6590
6634
  return (() => {
6591
- var _el$10 = _tmpl$14();
6635
+ var _el$10 = _tmpl$16();
6592
6636
  insert(_el$10, copying ? "Please wait\u2026" : "1 element");
6593
6637
  return _el$10;
6594
6638
  })();
@@ -6829,7 +6873,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6829
6873
  const currentY = bounds.y + bounds.height / 2;
6830
6874
  setMouseX(currentX);
6831
6875
  setMouseY(currentY);
6832
- if (options.agent?.provider && prompt) {
6876
+ if (hasAgentProvider() && prompt) {
6833
6877
  deactivateRenderer();
6834
6878
  void agentManager.startSession({
6835
6879
  element,
@@ -6942,7 +6986,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
6942
6986
  transform: stripTranslateFromTransform(firstElement)
6943
6987
  };
6944
6988
  const tagName = extractElementTagName(firstElement);
6945
- if (options.agent?.provider) {
6989
+ if (hasAgentProvider()) {
6946
6990
  const centerX = bounds.x + bounds.width / 2;
6947
6991
  const centerY = bounds.y + bounds.height / 2;
6948
6992
  setMouseX(centerX);
@@ -7385,7 +7429,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
7385
7429
  return isInputExpanded();
7386
7430
  },
7387
7431
  get hasAgent() {
7388
- return Boolean(options.agent?.provider);
7432
+ return hasAgentProvider();
7389
7433
  },
7390
7434
  get agentSessions() {
7391
7435
  return agentManager.sessions();
@@ -7420,7 +7464,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
7420
7464
  }
7421
7465
  }), rendererRoot);
7422
7466
  }
7423
- if (options.agent?.provider) {
7467
+ if (hasAgentProvider()) {
7424
7468
  agentManager.tryResumeSessions();
7425
7469
  }
7426
7470
  const copyElementAPI = async (elements) => {
@@ -7473,16 +7517,45 @@ ${plainTextContentOnly}` : plainTextContentOnly;
7473
7517
  getState: getStateAPI,
7474
7518
  updateTheme: (partialTheme) => {
7475
7519
  const currentTheme = theme();
7476
- const mergedTheme = deepMergeTheme(currentTheme, partialTheme);
7477
- setTheme(mergedTheme);
7520
+ const mergedTheme2 = deepMergeTheme(currentTheme, partialTheme);
7521
+ setTheme(mergedTheme2);
7478
7522
  },
7479
- getTheme: () => theme()
7523
+ getTheme: () => theme(),
7524
+ setAgent: (newAgentOptions) => {
7525
+ const existingOptions = agentManager.getOptions();
7526
+ const mergedOptions = {
7527
+ ...existingOptions,
7528
+ ...newAgentOptions,
7529
+ provider: newAgentOptions.provider ?? existingOptions?.provider,
7530
+ onAbort: (session, element) => {
7531
+ newAgentOptions?.onAbort?.(session, element);
7532
+ if (element && document.contains(element)) {
7533
+ const rect = element.getBoundingClientRect();
7534
+ const centerX = rect.left + rect.width / 2;
7535
+ const centerY = rect.top + rect.height / 2;
7536
+ setMouseX(centerX);
7537
+ setMouseY(centerY);
7538
+ setFrozenElement(element);
7539
+ setInputText(session.context.prompt);
7540
+ setIsInputExpanded(true);
7541
+ setIsInputMode(true);
7542
+ setIsToggleMode(true);
7543
+ setIsToggleFrozen(true);
7544
+ if (!isActivated()) {
7545
+ activateRenderer();
7546
+ }
7547
+ }
7548
+ }
7549
+ };
7550
+ agentManager.setOptions(mergedOptions);
7551
+ setHasAgentProvider(Boolean(mergedOptions.provider));
7552
+ }
7480
7553
  };
7481
7554
  });
7482
7555
  };
7483
7556
  /*! Bundled license information:
7484
7557
 
7485
- bippy/dist/rdt-hook-CrcWl4lP.js:
7558
+ bippy/dist/rdt-hook-Ds2lt3Ph.js:
7486
7559
  (**
7487
7560
  * @license bippy
7488
7561
  *
@@ -7492,7 +7565,7 @@ bippy/dist/rdt-hook-CrcWl4lP.js:
7492
7565
  * LICENSE file in the root directory of this source tree.
7493
7566
  *)
7494
7567
 
7495
- bippy/dist/install-hook-only-DtUPvEBg.js:
7568
+ bippy/dist/install-hook-only-BE254Zqc.js:
7496
7569
  (**
7497
7570
  * @license bippy
7498
7571
  *
@@ -7502,7 +7575,7 @@ bippy/dist/install-hook-only-DtUPvEBg.js:
7502
7575
  * LICENSE file in the root directory of this source tree.
7503
7576
  *)
7504
7577
 
7505
- bippy/dist/core-D7_ABaNC.js:
7578
+ bippy/dist/core-BKZAzaFk.js:
7506
7579
  (**
7507
7580
  * @license bippy
7508
7581
  *