react-grab 0.0.76 → 0.0.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/{chunk-IKBHXHKY.cjs → chunk-IOEUCYGF.cjs} +351 -185
- package/dist/{chunk-FZG56F6B.js → chunk-PJCJQBH7.js} +351 -185
- package/dist/cli.cjs +260 -125
- package/dist/{core-CzaOp9UL.d.cts → core-BIJVr_bk.d.cts} +7 -2
- package/dist/{core-CzaOp9UL.d.ts → core-BIJVr_bk.d.ts} +7 -2
- package/dist/core.cjs +7 -7
- package/dist/core.d.cts +1 -1
- package/dist/core.d.ts +1 -1
- package/dist/core.js +1 -1
- package/dist/index.cjs +8 -8
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.global.js +27 -27
- package/dist/index.js +2 -2
- package/dist/styles.css +1 -1
- package/package.json +2 -2
|
@@ -949,7 +949,7 @@ function cleanChildren(parent, current, marker, replacement) {
|
|
|
949
949
|
|
|
950
950
|
// dist/styles.css
|
|
951
951
|
var styles_default = `/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
|
|
952
|
-
@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}}}@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-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)}.-mt-px{margin-top:-1px}.-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}.size-fit{width:fit-content;height:fit-content}.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-\\[7px\\]{height:7px}.h-\\[17px\\]{height:17px}.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-\\[7px\\]{width:7px}.w-\\[17px\\]{width:17px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\\[280px\\]{max-width:280px}.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}.justify-end{justify-content:flex-end}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-\\[3px\\]{gap:3px}.gap-\\[5px\\]{gap:5px}.gap-px{gap:1px}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\\[1\\.5px\\]{border-radius:1.5px}.rounded-\\[1px\\]{border-radius:1px}.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-b-xs{border-bottom-right-radius:var(--radius-xs);border-bottom-left-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[\\#7e0002\\]{border-color:#7e0002}.border-\\[\\#B3B3B3\\]{border-color:#b3b3b3}.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-tag-border{border-color:var(--color-label-tag-border)}.border-white{border-color:var(--color-white)}.border-t-\\[\\#D9D9D9\\]{border-top-color:#d9d9d9}.bg-\\[\\#F7F7F7\\]{background-color:#f7f7f7}.bg-black{background-color:var(--color-black)}.bg-grab-pink{background-color:var(--color-grab-pink)}.bg-grab-purple{background-color:var(--color-grab-purple)}.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-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.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-\\[2px\\]{padding-inline:2px}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:calc(var(--spacing)*0)}.py-\\[2px\\]{padding-block:2px}.py-\\[3px\\]{padding-block:3px}.py-\\[5px\\]{padding-block:5px}.py-px{padding-block:1px}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-1\\.5{padding-top:calc(var(--spacing)*1.5)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-1\\.5{padding-right:calc(var(--spacing)*1.5)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pl-1\\.5{padding-left: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-\\[11px\\]{font-size:11px}.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}.wrap-break-word{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.text-\\[\\#0C0C0C\\]{color:#0c0c0c}.text-\\[\\#47004A\\]{color:#47004a}.text-\\[\\#71717a\\]{color:#71717a}.text-\\[\\#B91C1C\\]{color:#b91c1c}.text-\\[\\#c00002\\]{color:#c00002}.text-black{color:var(--color-black)}.text-label-muted{color:var(--color-label-muted)}.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,)}.filter-\\[drop-shadow\\(0px_0px_4px_\\#51515180\\)\\]{filter:drop-shadow(0 0 4px #51515180)}.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}.select-none{-webkit-user-select:none;user-select: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\\:bg-\\[\\#F5F5F5\\]:hover{background-color:#f5f5f5}.hover\\:bg-\\[\\#FEF2F2\\]:hover{background-color:#fef2f2}.hover\\:opacity-100:hover{opacity:1}}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@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}@keyframes pulse{50%{opacity:.5}}`;
|
|
952
|
+
@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}}}@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-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)}.-mt-px{margin-top:-1px}.-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}.size-fit{width:fit-content;height:fit-content}.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-\\[7px\\]{height:7px}.h-\\[17px\\]{height:17px}.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-\\[7px\\]{width:7px}.w-\\[17px\\]{width:17px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\\[280px\\]{max-width:280px}.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}.justify-end{justify-content:flex-end}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-\\[3px\\]{gap:3px}.gap-\\[5px\\]{gap:5px}.gap-px{gap:1px}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\\[1\\.5px\\]{border-radius:1.5px}.rounded-\\[1px\\]{border-radius:1px}.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-b-xs{border-bottom-right-radius:var(--radius-xs);border-bottom-left-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[\\#7e0002\\]{border-color:#7e0002}.border-\\[\\#B3B3B3\\]{border-color:#b3b3b3}.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-tag-border{border-color:var(--color-label-tag-border)}.border-white{border-color:var(--color-white)}.border-t-\\[\\#D9D9D9\\]{border-top-color:#d9d9d9}.bg-\\[\\#F7F7F7\\]{background-color:#f7f7f7}.bg-black{background-color:var(--color-black)}.bg-grab-pink{background-color:var(--color-grab-pink)}.bg-grab-purple{background-color:var(--color-grab-purple)}.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-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.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-\\[2px\\]{padding-inline:2px}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:calc(var(--spacing)*0)}.py-\\[2px\\]{padding-block:2px}.py-\\[3px\\]{padding-block:3px}.py-\\[5px\\]{padding-block:5px}.py-px{padding-block:1px}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-1\\.5{padding-top:calc(var(--spacing)*1.5)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-1\\.5{padding-right:calc(var(--spacing)*1.5)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pl-1\\.5{padding-left: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-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.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)}.leading-\\[14px\\]{--tw-leading:14px;line-height:14px}.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}.wrap-break-word{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.text-\\[\\#0C0C0C\\]{color:#0c0c0c}.text-\\[\\#47004A\\]{color:#47004a}.text-\\[\\#71717a\\]{color:#71717a}.text-\\[\\#B91C1C\\]{color:#b91c1c}.text-\\[\\#c00002\\]{color:#c00002}.text-black{color:var(--color-black)}.text-black\\/50{color:#00000080}@supports (color:color-mix(in lab, red, red)){.text-black\\/50{color:color-mix(in oklab,var(--color-black)50%,transparent)}}.text-label-muted{color:var(--color-label-muted)}.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,)}.filter-\\[drop-shadow\\(0px_0px_4px_\\#51515180\\)\\]{filter:drop-shadow(0 0 4px #51515180)}.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}.select-none{-webkit-user-select:none;user-select: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\\:bg-\\[\\#F5F5F5\\]:hover{background-color:#f5f5f5}.hover\\:bg-\\[\\#FEF2F2\\]:hover{background-color:#fef2f2}.hover\\:opacity-100:hover{opacity:1}}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@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}@keyframes pulse{50%{opacity:.5}}`;
|
|
953
953
|
|
|
954
954
|
// src/utils/is-keyboard-event-triggered-by-input.ts
|
|
955
955
|
var FORM_TAGS_AND_ROLES = [
|
|
@@ -1078,7 +1078,7 @@ var buildOpenFileUrl = (filePath, lineNumber) => {
|
|
|
1078
1078
|
};
|
|
1079
1079
|
|
|
1080
1080
|
// src/constants.ts
|
|
1081
|
-
var VERSION = "0.0.
|
|
1081
|
+
var VERSION = "0.0.78";
|
|
1082
1082
|
var VIEWPORT_MARGIN_PX = 8;
|
|
1083
1083
|
var OFFSCREEN_POSITION = -1e3;
|
|
1084
1084
|
var SELECTION_LERP_FACTOR = 0.95;
|
|
@@ -1088,6 +1088,7 @@ var SELECTION_CURSOR_SETTLE_DELAY_MS = 500;
|
|
|
1088
1088
|
var BLUR_DEACTIVATION_THRESHOLD_MS = 500;
|
|
1089
1089
|
var INPUT_FOCUS_ACTIVATION_DELAY_MS = 150;
|
|
1090
1090
|
var DEFAULT_KEY_HOLD_DURATION_MS = 200;
|
|
1091
|
+
var DOUBLE_CLICK_THRESHOLD_MS = 250;
|
|
1091
1092
|
var DRAG_THRESHOLD_PX = 2;
|
|
1092
1093
|
var ELEMENT_DETECTION_THROTTLE_MS = 32;
|
|
1093
1094
|
var BOUNDS_RECALC_INTERVAL_MS = 100;
|
|
@@ -3951,21 +3952,23 @@ var _tmpl$52 = /* @__PURE__ */ template(`<div role=button><div class="text-black
|
|
|
3951
3952
|
var _tmpl$62 = /* @__PURE__ */ template(`<div class="[font-synthesis:none] contain-layout shrink-0 flex flex-col items-start px-2 py-[5px] w-auto h-fit self-stretch [border-top-width:0.5px] border-t-solid border-t-[#D9D9D9] antialiased rounded-t-none rounded-b-xs -mt-px"style="background-image:linear-gradient(in oklab 180deg, oklab(100% 0 0) 0%, oklab(96.1% 0 0) 5.92%)">`);
|
|
3952
3953
|
var _tmpl$7 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex items-center justify-end gap-[5px] w-full h-fit"><button class="contain-layout shrink-0 flex items-center justify-center px-[3px] py-px rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] cursor-pointer transition-all hover:bg-[#F5F5F5] h-[17px]"><span class="text-black text-[11px] leading-3.5 tracking-[-0.04em] font-sans font-medium">No</span></button><button class="contain-layout shrink-0 flex items-center justify-center gap-1 px-[3px] py-px rounded-xs bg-white [border-width:0.5px] border-solid border-[#7e0002] cursor-pointer transition-all hover:bg-[#FEF2F2] h-[17px]"><span class="text-[#B91C1C] text-[11px] leading-3.5 tracking-[-0.04em] font-sans font-medium">Yes`);
|
|
3953
3954
|
var _tmpl$8 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col justify-center items-end gap-1 w-fit h-fit"><div class="contain-layout shrink-0 flex items-center gap-1 pt-1 px-1.5 w-full h-fit"><span class="text-black text-[12px] leading-4 shrink-0 tracking-[-0.04em] font-sans font-medium w-fit h-fit">Discard prompt?`);
|
|
3954
|
-
var _tmpl$9 = /* @__PURE__ */ template(`<button class="contain-layout shrink-0 flex items-center justify-center px-[3px] py-px rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] cursor-pointer transition-all hover:bg-[#F5F5F5] h-[17px]"><span class="text-black text-[11px] leading-3.5 tracking-[-0.04em] font-sans font-medium">
|
|
3955
|
-
var _tmpl$0 = /* @__PURE__ */ template(`<
|
|
3956
|
-
var _tmpl$1 = /* @__PURE__ */ template(`<
|
|
3957
|
-
var _tmpl$10 = /* @__PURE__ */ template(`<
|
|
3958
|
-
var _tmpl$11 = /* @__PURE__ */ template(`<
|
|
3959
|
-
var _tmpl$12 = /* @__PURE__ */ template(`<div class="shrink-0 flex justify-
|
|
3960
|
-
var _tmpl$13 = /* @__PURE__ */ template(`<
|
|
3961
|
-
var _tmpl$14 = /* @__PURE__ */ template(`<div class="
|
|
3962
|
-
var _tmpl$15 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex
|
|
3963
|
-
var _tmpl$16 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex
|
|
3964
|
-
var _tmpl$17 = /* @__PURE__ */ template(`<
|
|
3965
|
-
var _tmpl$18 = /* @__PURE__ */ template(`<
|
|
3966
|
-
var _tmpl$19 = /* @__PURE__ */ template(`<
|
|
3967
|
-
var _tmpl$20 = /* @__PURE__ */ template(`<
|
|
3968
|
-
var _tmpl$21 = /* @__PURE__ */ template(`<div data-react-grab-ignore-events class="
|
|
3955
|
+
var _tmpl$9 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex items-center justify-end gap-[5px] w-full h-fit"><button class="contain-layout shrink-0 flex items-center justify-center gap-1 px-[3px] py-px rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] cursor-pointer transition-all hover:bg-[#F5F5F5] h-[17px]"><span class="text-black text-[11px] leading-3.5 tracking-[-0.04em] font-sans font-medium">Ok`);
|
|
3956
|
+
var _tmpl$0 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col justify-center items-end gap-1 w-fit h-fit max-w-[280px]"><div class="contain-layout shrink-0 flex items-center gap-1 pt-1 px-1.5 w-full h-fit"><span class="text-[#B91C1C] text-[12px] leading-4 tracking-[-0.04em] font-sans font-medium">`);
|
|
3957
|
+
var _tmpl$1 = /* @__PURE__ */ template(`<button class="contain-layout shrink-0 flex items-center justify-center px-[3px] py-px rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] cursor-pointer transition-all hover:bg-[#F5F5F5] h-[17px]"><span class="text-black text-[11px] leading-3.5 tracking-[-0.04em] font-sans font-medium">Undo`);
|
|
3958
|
+
var _tmpl$10 = /* @__PURE__ */ template(`<button class="contain-layout shrink-0 flex items-center justify-center gap-1 px-[3px] py-px rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] cursor-pointer transition-all hover:bg-[#F5F5F5] h-[17px]"><span class="text-black text-[11px] leading-3.5 tracking-[-0.04em] font-sans font-medium">Ok`);
|
|
3959
|
+
var _tmpl$11 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex items-center justify-end gap-[5px] w-full h-fit">`);
|
|
3960
|
+
var _tmpl$12 = /* @__PURE__ */ template(`<div class="[font-synthesis:none] contain-layout shrink-0 flex flex-col justify-center items-end rounded-xs bg-white antialiased w-fit h-fit"><div class="contain-layout shrink-0 flex items-center gap-1 pt-1.5 pb-1 px-1.5 w-full h-fit"><span class="text-black text-[12px] leading-4 shrink-0 tracking-[-0.04em] font-sans font-medium w-fit h-fit tabular-nums">`);
|
|
3961
|
+
var _tmpl$13 = /* @__PURE__ */ template(`<button data-react-grab-ignore-events class="contain-layout shrink-0 flex flex-col items-start rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] p-1 size-fit cursor-pointer ml-1 transition-none hover:scale-105"><div data-react-grab-ignore-events class="shrink-0 w-[7px] h-[7px] rounded-[1px] bg-black pointer-events-none">`);
|
|
3962
|
+
var _tmpl$14 = /* @__PURE__ */ template(`<div class="shrink-0 flex justify-between items-end w-full min-h-4"><textarea data-react-grab-ignore-events 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 opacity-50 wrap-break-word overflow-y-auto"placeholder="type to edit"rows=1 disabled style=field-sizing:content;min-height:16px;max-height:95px;scrollbar-width:none>`);
|
|
3963
|
+
var _tmpl$15 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col justify-center items-start gap-1 w-fit h-fit max-w-[280px]"><div class="contain-layout shrink-0 flex items-center gap-1 pt-1 px-1.5 w-auto h-fit"><div class="contain-layout flex items-center px-0 py-px w-auto h-fit rounded-[1.5px] gap-[3px]"><span class="text-[12px] leading-4 tracking-[-0.04em] font-sans font-medium w-auto h-fit whitespace-normal text-[#71717a] animate-pulse tabular-nums">`);
|
|
3964
|
+
var _tmpl$16 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex items-center gap-px w-fit h-fit">`);
|
|
3965
|
+
var _tmpl$17 = /* @__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 px-[3px] py-[3px] rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] size-fit"></div><span class="text-label-muted text-[12px] leading-4 shrink-0 tracking-[-0.04em] font-sans font-medium w-fit h-fit">or</span><div class="contain-layout shrink-0 flex items-center px-[3px] py-px rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] size-fit"><span class="text-black text-[10px] leading-[14px] tracking-[-0.04em] font-sans font-medium">double-click</span></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`);
|
|
3966
|
+
var _tmpl$18 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col justify-center items-start gap-1 w-fit h-fit"><div></div><div class="grid transition-[grid-template-rows] duration-30 ease-out self-stretch"><div>`);
|
|
3967
|
+
var _tmpl$19 = /* @__PURE__ */ template(`<button>`);
|
|
3968
|
+
var _tmpl$20 = /* @__PURE__ */ template(`<button class="contain-layout shrink-0 flex flex-col items-start px-[3px] py-[3px] rounded-xs bg-white [border-width:0.5px] border-solid border-[#B3B3B3] size-fit cursor-pointer transition-all hover:scale-105">`);
|
|
3969
|
+
var _tmpl$21 = /* @__PURE__ */ template(`<div class="shrink-0 flex justify-between items-end w-full min-h-4"><textarea data-react-grab-ignore-events 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 wrap-break-word overflow-y-auto"rows=1 style=field-sizing:content;min-height:16px;max-height:95px;scrollbar-width:none></textarea><div class="flex items-center gap-0.5 ml-1 w-[17px] h-[17px] justify-end">`);
|
|
3970
|
+
var _tmpl$222 = /* @__PURE__ */ template(`<div class="contain-layout shrink-0 flex flex-col justify-center items-start gap-1 w-fit h-fit max-w-[280px]"><div>`);
|
|
3971
|
+
var _tmpl$23 = /* @__PURE__ */ template(`<div data-react-grab-ignore-events class="fixed font-sans antialiased transition-opacity duration-300 ease-out filter-[drop-shadow(0px_0px_4px_#51515180)] select-none"style=z-index:2147483647><div class="[font-synthesis:none] contain-layout flex items-center gap-[5px] rounded-xs bg-white antialiased w-fit h-fit p-0">`);
|
|
3969
3972
|
var ARROW_HEIGHT = 8;
|
|
3970
3973
|
var LABEL_GAP = 4;
|
|
3971
3974
|
var IDLE_TIMEOUT_MS = 400;
|
|
@@ -4092,6 +4095,109 @@ var DismissConfirmation = (props) => {
|
|
|
4092
4095
|
return _el$0;
|
|
4093
4096
|
})();
|
|
4094
4097
|
};
|
|
4098
|
+
var MAX_ERROR_LENGTH = 50;
|
|
4099
|
+
var ErrorConfirmation = (props) => {
|
|
4100
|
+
const handleKeyDown = (event) => {
|
|
4101
|
+
if (event.code === "Enter" || event.code === "Escape") {
|
|
4102
|
+
event.preventDefault();
|
|
4103
|
+
event.stopPropagation();
|
|
4104
|
+
props.onAcknowledge?.();
|
|
4105
|
+
}
|
|
4106
|
+
};
|
|
4107
|
+
const truncatedError = () => {
|
|
4108
|
+
const error = props.error;
|
|
4109
|
+
if (error.length <= MAX_ERROR_LENGTH) return error;
|
|
4110
|
+
return `${error.slice(0, MAX_ERROR_LENGTH)}\u2026`;
|
|
4111
|
+
};
|
|
4112
|
+
onMount(() => {
|
|
4113
|
+
window.addEventListener("keydown", handleKeyDown, {
|
|
4114
|
+
capture: true
|
|
4115
|
+
});
|
|
4116
|
+
});
|
|
4117
|
+
onCleanup(() => {
|
|
4118
|
+
window.removeEventListener("keydown", handleKeyDown, {
|
|
4119
|
+
capture: true
|
|
4120
|
+
});
|
|
4121
|
+
});
|
|
4122
|
+
return (() => {
|
|
4123
|
+
var _el$14 = _tmpl$0(), _el$15 = _el$14.firstChild, _el$16 = _el$15.firstChild;
|
|
4124
|
+
insert(_el$16, truncatedError);
|
|
4125
|
+
insert(_el$14, createComponent(BottomSection, {
|
|
4126
|
+
get children() {
|
|
4127
|
+
var _el$17 = _tmpl$9(), _el$18 = _el$17.firstChild; _el$18.firstChild;
|
|
4128
|
+
addEventListener(_el$18, "click", props.onAcknowledge);
|
|
4129
|
+
insert(_el$18, createComponent(IconReturn, {
|
|
4130
|
+
size: 10,
|
|
4131
|
+
"class": "text-black/50"
|
|
4132
|
+
}), null);
|
|
4133
|
+
return _el$17;
|
|
4134
|
+
}
|
|
4135
|
+
}), null);
|
|
4136
|
+
createRenderEffect(() => setAttribute(_el$16, "title", props.error));
|
|
4137
|
+
return _el$14;
|
|
4138
|
+
})();
|
|
4139
|
+
};
|
|
4140
|
+
var CompletedConfirmation = (props) => {
|
|
4141
|
+
const handleKeyDown = (event) => {
|
|
4142
|
+
if (event.code === "Enter" || event.code === "Escape") {
|
|
4143
|
+
event.preventDefault();
|
|
4144
|
+
event.stopPropagation();
|
|
4145
|
+
props.onDismiss?.();
|
|
4146
|
+
}
|
|
4147
|
+
};
|
|
4148
|
+
onMount(() => {
|
|
4149
|
+
window.addEventListener("keydown", handleKeyDown, {
|
|
4150
|
+
capture: true
|
|
4151
|
+
});
|
|
4152
|
+
});
|
|
4153
|
+
onCleanup(() => {
|
|
4154
|
+
window.removeEventListener("keydown", handleKeyDown, {
|
|
4155
|
+
capture: true
|
|
4156
|
+
});
|
|
4157
|
+
});
|
|
4158
|
+
return (() => {
|
|
4159
|
+
var _el$20 = _tmpl$12(), _el$21 = _el$20.firstChild, _el$22 = _el$21.firstChild;
|
|
4160
|
+
insert(_el$22, () => props.statusText);
|
|
4161
|
+
insert(_el$20, createComponent(Show, {
|
|
4162
|
+
get when() {
|
|
4163
|
+
return props.onDismiss || props.onUndo;
|
|
4164
|
+
},
|
|
4165
|
+
get children() {
|
|
4166
|
+
return createComponent(BottomSection, {
|
|
4167
|
+
get children() {
|
|
4168
|
+
var _el$23 = _tmpl$11();
|
|
4169
|
+
insert(_el$23, createComponent(Show, {
|
|
4170
|
+
get when() {
|
|
4171
|
+
return props.onUndo;
|
|
4172
|
+
},
|
|
4173
|
+
get children() {
|
|
4174
|
+
var _el$24 = _tmpl$1();
|
|
4175
|
+
_el$24.$$click = () => props.onUndo?.();
|
|
4176
|
+
return _el$24;
|
|
4177
|
+
}
|
|
4178
|
+
}), null);
|
|
4179
|
+
insert(_el$23, createComponent(Show, {
|
|
4180
|
+
get when() {
|
|
4181
|
+
return props.onDismiss;
|
|
4182
|
+
},
|
|
4183
|
+
get children() {
|
|
4184
|
+
var _el$25 = _tmpl$10(); _el$25.firstChild;
|
|
4185
|
+
_el$25.$$click = () => props.onDismiss?.();
|
|
4186
|
+
insert(_el$25, createComponent(IconReturn, {
|
|
4187
|
+
size: 10,
|
|
4188
|
+
"class": "text-black/50"
|
|
4189
|
+
}), null);
|
|
4190
|
+
return _el$25;
|
|
4191
|
+
}
|
|
4192
|
+
}), null);
|
|
4193
|
+
return _el$23;
|
|
4194
|
+
}
|
|
4195
|
+
});
|
|
4196
|
+
}
|
|
4197
|
+
}), null);
|
|
4198
|
+
return _el$20;
|
|
4199
|
+
})();
|
|
4200
|
+
};
|
|
4095
4201
|
var SelectionLabel = (props) => {
|
|
4096
4202
|
let containerRef;
|
|
4097
4203
|
let inputRef;
|
|
@@ -4173,6 +4279,8 @@ var SelectionLabel = (props) => {
|
|
|
4173
4279
|
void props.inputValue;
|
|
4174
4280
|
void props.hasAgent;
|
|
4175
4281
|
void props.isInputExpanded;
|
|
4282
|
+
void props.isPendingDismiss;
|
|
4283
|
+
void props.error;
|
|
4176
4284
|
requestAnimationFrame(measureContainer);
|
|
4177
4285
|
});
|
|
4178
4286
|
createEffect(() => {
|
|
@@ -4291,111 +4399,83 @@ var SelectionLabel = (props) => {
|
|
|
4291
4399
|
return memo(() => props.visible !== false)() && (props.selectionBounds || shouldShowWithoutBounds());
|
|
4292
4400
|
},
|
|
4293
4401
|
get children() {
|
|
4294
|
-
var _el$
|
|
4295
|
-
_el$
|
|
4296
|
-
_el$
|
|
4297
|
-
_el$
|
|
4402
|
+
var _el$27 = _tmpl$23(), _el$28 = _el$27.firstChild;
|
|
4403
|
+
_el$27.$$click = stopPropagation;
|
|
4404
|
+
_el$27.$$mousedown = stopPropagation;
|
|
4405
|
+
_el$27.$$pointerdown = handleContainerPointerDown;
|
|
4298
4406
|
var _ref$ = containerRef;
|
|
4299
|
-
typeof _ref$ === "function" ? use(_ref$, _el$
|
|
4300
|
-
insert(_el$
|
|
4407
|
+
typeof _ref$ === "function" ? use(_ref$, _el$27) : containerRef = _el$27;
|
|
4408
|
+
insert(_el$27, createComponent(Arrow, {
|
|
4301
4409
|
get position() {
|
|
4302
4410
|
return arrowPosition();
|
|
4303
4411
|
},
|
|
4304
4412
|
get leftPx() {
|
|
4305
4413
|
return computedPosition().arrowLeft;
|
|
4306
4414
|
}
|
|
4307
|
-
}), _el$
|
|
4308
|
-
insert(_el$
|
|
4415
|
+
}), _el$28);
|
|
4416
|
+
insert(_el$27, createComponent(Show, {
|
|
4309
4417
|
get when() {
|
|
4310
|
-
return props.status === "copied" || props.status === "fading";
|
|
4418
|
+
return memo(() => !!(props.status === "copied" || props.status === "fading"))() && !props.error;
|
|
4311
4419
|
},
|
|
4312
4420
|
get children() {
|
|
4313
|
-
|
|
4314
|
-
|
|
4315
|
-
|
|
4316
|
-
return () => _c$() ? props.statusText ?? "Completed" : "Copied";
|
|
4317
|
-
})());
|
|
4318
|
-
insert(_el$15, createComponent(Show, {
|
|
4319
|
-
get when() {
|
|
4320
|
-
return props.onDismiss || props.onUndo;
|
|
4421
|
+
return createComponent(CompletedConfirmation, {
|
|
4422
|
+
get statusText() {
|
|
4423
|
+
return memo(() => !!props.hasAgent)() ? props.statusText ?? "Completed" : "Copied";
|
|
4321
4424
|
},
|
|
4322
|
-
get
|
|
4323
|
-
return
|
|
4324
|
-
|
|
4325
|
-
|
|
4326
|
-
|
|
4327
|
-
get when() {
|
|
4328
|
-
return props.onUndo;
|
|
4329
|
-
},
|
|
4330
|
-
get children() {
|
|
4331
|
-
var _el$19 = _tmpl$9();
|
|
4332
|
-
_el$19.$$click = () => props.onUndo?.();
|
|
4333
|
-
return _el$19;
|
|
4334
|
-
}
|
|
4335
|
-
}), null);
|
|
4336
|
-
insert(_el$18, createComponent(Show, {
|
|
4337
|
-
get when() {
|
|
4338
|
-
return props.onDismiss;
|
|
4339
|
-
},
|
|
4340
|
-
get children() {
|
|
4341
|
-
var _el$20 = _tmpl$0();
|
|
4342
|
-
_el$20.$$click = () => props.onDismiss?.();
|
|
4343
|
-
return _el$20;
|
|
4344
|
-
}
|
|
4345
|
-
}), null);
|
|
4346
|
-
return _el$18;
|
|
4347
|
-
}
|
|
4348
|
-
});
|
|
4425
|
+
get onDismiss() {
|
|
4426
|
+
return props.onDismiss;
|
|
4427
|
+
},
|
|
4428
|
+
get onUndo() {
|
|
4429
|
+
return props.onUndo;
|
|
4349
4430
|
}
|
|
4350
|
-
})
|
|
4351
|
-
return _el$15;
|
|
4431
|
+
});
|
|
4352
4432
|
}
|
|
4353
|
-
}), _el$
|
|
4354
|
-
insert(_el$
|
|
4433
|
+
}), _el$28);
|
|
4434
|
+
insert(_el$28, createComponent(Show, {
|
|
4355
4435
|
get when() {
|
|
4356
4436
|
return props.status === "copying";
|
|
4357
4437
|
},
|
|
4358
4438
|
get children() {
|
|
4359
|
-
var _el$
|
|
4360
|
-
insert(_el$
|
|
4361
|
-
insert(_el$
|
|
4439
|
+
var _el$29 = _tmpl$15(), _el$30 = _el$29.firstChild, _el$31 = _el$30.firstChild, _el$32 = _el$31.firstChild;
|
|
4440
|
+
insert(_el$32, () => props.statusText ?? "Grabbing\u2026");
|
|
4441
|
+
insert(_el$29, createComponent(BottomSection, {
|
|
4362
4442
|
get children() {
|
|
4363
|
-
var _el$
|
|
4443
|
+
var _el$33 = _tmpl$14(), _el$34 = _el$33.firstChild;
|
|
4364
4444
|
var _ref$2 = inputRef;
|
|
4365
|
-
typeof _ref$2 === "function" ? use(_ref$2, _el$
|
|
4366
|
-
insert(_el$
|
|
4445
|
+
typeof _ref$2 === "function" ? use(_ref$2, _el$34) : inputRef = _el$34;
|
|
4446
|
+
insert(_el$33, createComponent(Show, {
|
|
4367
4447
|
get when() {
|
|
4368
4448
|
return props.onAbort;
|
|
4369
4449
|
},
|
|
4370
4450
|
get children() {
|
|
4371
|
-
var _el$
|
|
4372
|
-
_el$
|
|
4451
|
+
var _el$35 = _tmpl$13();
|
|
4452
|
+
_el$35.$$click = (event) => {
|
|
4373
4453
|
event.stopPropagation();
|
|
4374
4454
|
props.onAbort?.();
|
|
4375
4455
|
};
|
|
4376
|
-
_el$
|
|
4456
|
+
_el$35.$$pointerup = (event) => {
|
|
4377
4457
|
event.stopPropagation();
|
|
4378
4458
|
props.onAbort?.();
|
|
4379
4459
|
};
|
|
4380
|
-
_el$
|
|
4381
|
-
_el$
|
|
4382
|
-
return _el$
|
|
4460
|
+
_el$35.$$mousedown = (event) => event.stopPropagation();
|
|
4461
|
+
_el$35.$$pointerdown = (event) => event.stopPropagation();
|
|
4462
|
+
return _el$35;
|
|
4383
4463
|
}
|
|
4384
4464
|
}), null);
|
|
4385
|
-
createRenderEffect(() => _el$
|
|
4386
|
-
return _el$
|
|
4465
|
+
createRenderEffect(() => _el$34.value = props.inputValue ?? "");
|
|
4466
|
+
return _el$33;
|
|
4387
4467
|
}
|
|
4388
4468
|
}), null);
|
|
4389
|
-
return _el$
|
|
4469
|
+
return _el$29;
|
|
4390
4470
|
}
|
|
4391
4471
|
}), null);
|
|
4392
|
-
insert(_el$
|
|
4472
|
+
insert(_el$28, createComponent(Show, {
|
|
4393
4473
|
get when() {
|
|
4394
4474
|
return memo(() => !!isNotProcessing())() && !props.isInputExpanded;
|
|
4395
4475
|
},
|
|
4396
4476
|
get children() {
|
|
4397
|
-
var _el$
|
|
4398
|
-
insert(_el$
|
|
4477
|
+
var _el$36 = _tmpl$18(), _el$37 = _el$36.firstChild, _el$39 = _el$37.nextSibling, _el$40 = _el$39.firstChild;
|
|
4478
|
+
insert(_el$37, createComponent(ClickToCopyPill, {
|
|
4399
4479
|
onClick: handleSubmit,
|
|
4400
4480
|
shrink: true,
|
|
4401
4481
|
get hasParent() {
|
|
@@ -4405,19 +4485,19 @@ var SelectionLabel = (props) => {
|
|
|
4405
4485
|
return props.hasAgent;
|
|
4406
4486
|
}
|
|
4407
4487
|
}), null);
|
|
4408
|
-
insert(_el$
|
|
4488
|
+
insert(_el$37, createComponent(Show, {
|
|
4409
4489
|
get when() {
|
|
4410
4490
|
return props.componentName;
|
|
4411
4491
|
},
|
|
4412
4492
|
get children() {
|
|
4413
|
-
var _el$
|
|
4414
|
-
insert(_el$
|
|
4493
|
+
var _el$38 = _tmpl$16();
|
|
4494
|
+
insert(_el$38, createComponent(ParentBadge, {
|
|
4415
4495
|
get name() {
|
|
4416
4496
|
return props.componentName;
|
|
4417
4497
|
}
|
|
4418
4498
|
}), null);
|
|
4419
|
-
insert(_el$
|
|
4420
|
-
insert(_el$
|
|
4499
|
+
insert(_el$38, createComponent(ChevronSeparator, {}), null);
|
|
4500
|
+
insert(_el$38, createComponent(TagBadge, {
|
|
4421
4501
|
get tagName() {
|
|
4422
4502
|
return tagDisplay();
|
|
4423
4503
|
},
|
|
@@ -4429,10 +4509,10 @@ var SelectionLabel = (props) => {
|
|
|
4429
4509
|
showMono: true,
|
|
4430
4510
|
shrink: true
|
|
4431
4511
|
}), null);
|
|
4432
|
-
return _el$
|
|
4512
|
+
return _el$38;
|
|
4433
4513
|
}
|
|
4434
4514
|
}), null);
|
|
4435
|
-
insert(_el$
|
|
4515
|
+
insert(_el$37, createComponent(Show, {
|
|
4436
4516
|
get when() {
|
|
4437
4517
|
return !props.componentName;
|
|
4438
4518
|
},
|
|
@@ -4451,37 +4531,37 @@ var SelectionLabel = (props) => {
|
|
|
4451
4531
|
});
|
|
4452
4532
|
}
|
|
4453
4533
|
}), null);
|
|
4454
|
-
insert(_el$
|
|
4534
|
+
insert(_el$40, createComponent(BottomSection, {
|
|
4455
4535
|
get children() {
|
|
4456
|
-
var _el$
|
|
4457
|
-
insert(_el$
|
|
4536
|
+
var _el$41 = _tmpl$17(), _el$42 = _el$41.firstChild, _el$43 = _el$42.nextSibling;
|
|
4537
|
+
insert(_el$43, createComponent(IconReturn, {
|
|
4458
4538
|
size: 10,
|
|
4459
4539
|
"class": "opacity-[0.99] text-black"
|
|
4460
4540
|
}));
|
|
4461
|
-
return _el$
|
|
4541
|
+
return _el$41;
|
|
4462
4542
|
}
|
|
4463
4543
|
}));
|
|
4464
4544
|
createRenderEffect((_p$) => {
|
|
4465
4545
|
var _v$3 = cn("contain-layout shrink-0 flex items-center gap-1 pt-1 w-fit h-fit pl-1.5", props.componentName ? "pr-1.5" : "pr-1"), _v$4 = isIdle() ? "1fr" : "0fr", _v$5 = cn("overflow-hidden min-h-0", !isIdle() && "w-0");
|
|
4466
|
-
_v$3 !== _p$.e && className(_el$
|
|
4467
|
-
_v$4 !== _p$.t && setStyleProperty(_el$
|
|
4468
|
-
_v$5 !== _p$.a && className(_el$
|
|
4546
|
+
_v$3 !== _p$.e && className(_el$37, _p$.e = _v$3);
|
|
4547
|
+
_v$4 !== _p$.t && setStyleProperty(_el$39, "grid-template-rows", _p$.t = _v$4);
|
|
4548
|
+
_v$5 !== _p$.a && className(_el$40, _p$.a = _v$5);
|
|
4469
4549
|
return _p$;
|
|
4470
4550
|
}, {
|
|
4471
4551
|
e: void 0,
|
|
4472
4552
|
t: void 0,
|
|
4473
4553
|
a: void 0
|
|
4474
4554
|
});
|
|
4475
|
-
return _el$
|
|
4555
|
+
return _el$36;
|
|
4476
4556
|
}
|
|
4477
4557
|
}), null);
|
|
4478
|
-
insert(_el$
|
|
4558
|
+
insert(_el$28, createComponent(Show, {
|
|
4479
4559
|
get when() {
|
|
4480
4560
|
return memo(() => !!(isNotProcessing() && props.isInputExpanded))() && !props.isPendingDismiss;
|
|
4481
4561
|
},
|
|
4482
4562
|
get children() {
|
|
4483
|
-
var _el$
|
|
4484
|
-
insert(_el$
|
|
4563
|
+
var _el$44 = _tmpl$222(), _el$45 = _el$44.firstChild;
|
|
4564
|
+
insert(_el$45, createComponent(ClickToCopyPill, {
|
|
4485
4565
|
onClick: handleSubmit,
|
|
4486
4566
|
dimmed: true,
|
|
4487
4567
|
shrink: true,
|
|
@@ -4492,19 +4572,19 @@ var SelectionLabel = (props) => {
|
|
|
4492
4572
|
return props.hasAgent;
|
|
4493
4573
|
}
|
|
4494
4574
|
}), null);
|
|
4495
|
-
insert(_el$
|
|
4575
|
+
insert(_el$45, createComponent(Show, {
|
|
4496
4576
|
get when() {
|
|
4497
4577
|
return props.componentName;
|
|
4498
4578
|
},
|
|
4499
4579
|
get children() {
|
|
4500
|
-
var _el$
|
|
4501
|
-
insert(_el$
|
|
4580
|
+
var _el$46 = _tmpl$16();
|
|
4581
|
+
insert(_el$46, createComponent(ParentBadge, {
|
|
4502
4582
|
get name() {
|
|
4503
4583
|
return props.componentName;
|
|
4504
4584
|
}
|
|
4505
4585
|
}), null);
|
|
4506
|
-
insert(_el$
|
|
4507
|
-
insert(_el$
|
|
4586
|
+
insert(_el$46, createComponent(ChevronSeparator, {}), null);
|
|
4587
|
+
insert(_el$46, createComponent(TagBadge, {
|
|
4508
4588
|
get tagName() {
|
|
4509
4589
|
return tagDisplay();
|
|
4510
4590
|
},
|
|
@@ -4517,10 +4597,10 @@ var SelectionLabel = (props) => {
|
|
|
4517
4597
|
shrink: true,
|
|
4518
4598
|
forceShowIcon: true
|
|
4519
4599
|
}), null);
|
|
4520
|
-
return _el$
|
|
4600
|
+
return _el$46;
|
|
4521
4601
|
}
|
|
4522
4602
|
}), null);
|
|
4523
|
-
insert(_el$
|
|
4603
|
+
insert(_el$45, createComponent(Show, {
|
|
4524
4604
|
get when() {
|
|
4525
4605
|
return !props.componentName;
|
|
4526
4606
|
},
|
|
@@ -4540,21 +4620,21 @@ var SelectionLabel = (props) => {
|
|
|
4540
4620
|
});
|
|
4541
4621
|
}
|
|
4542
4622
|
}), null);
|
|
4543
|
-
insert(_el$
|
|
4623
|
+
insert(_el$44, createComponent(BottomSection, {
|
|
4544
4624
|
get children() {
|
|
4545
|
-
var _el$
|
|
4546
|
-
_el$
|
|
4547
|
-
_el$
|
|
4625
|
+
var _el$47 = _tmpl$21(), _el$48 = _el$47.firstChild, _el$49 = _el$48.nextSibling;
|
|
4626
|
+
_el$48.$$keydown = handleKeyDown;
|
|
4627
|
+
_el$48.$$input = handleInput;
|
|
4548
4628
|
var _ref$3 = inputRef;
|
|
4549
|
-
typeof _ref$3 === "function" ? use(_ref$3, _el$
|
|
4550
|
-
insert(_el$
|
|
4629
|
+
typeof _ref$3 === "function" ? use(_ref$3, _el$48) : inputRef = _el$48;
|
|
4630
|
+
insert(_el$49, createComponent(Show, {
|
|
4551
4631
|
get when() {
|
|
4552
4632
|
return memo(() => !!(props.hasAgent && speechRecognition.isSupported()))() && !props.inputValue;
|
|
4553
4633
|
},
|
|
4554
4634
|
get children() {
|
|
4555
|
-
var _el$
|
|
4556
|
-
addEventListener(_el$
|
|
4557
|
-
insert(_el$
|
|
4635
|
+
var _el$50 = _tmpl$19();
|
|
4636
|
+
addEventListener(_el$50, "click", speechRecognition.toggle);
|
|
4637
|
+
insert(_el$50, createComponent(IconMic, {
|
|
4558
4638
|
size: 11,
|
|
4559
4639
|
get ["class"]() {
|
|
4560
4640
|
return speechRecognition.isListening() ? "animate-pulse" : "";
|
|
@@ -4562,40 +4642,40 @@ var SelectionLabel = (props) => {
|
|
|
4562
4642
|
}));
|
|
4563
4643
|
createRenderEffect((_p$) => {
|
|
4564
4644
|
var _v$6 = cn("contain-layout shrink-0 flex items-center justify-center px-[2px] py-[2px] rounded-xs [border-width:0.5px] border-solid size-fit cursor-pointer transition-all hover:scale-105", speechRecognition.isListening() ? "bg-grab-purple border-grab-purple text-white" : "bg-white border-[#B3B3B3] text-black"), _v$7 = speechRecognition.isListening() ? "Stop listening" : "Start voice input";
|
|
4565
|
-
_v$6 !== _p$.e && className(_el$
|
|
4566
|
-
_v$7 !== _p$.t && setAttribute(_el$
|
|
4645
|
+
_v$6 !== _p$.e && className(_el$50, _p$.e = _v$6);
|
|
4646
|
+
_v$7 !== _p$.t && setAttribute(_el$50, "title", _p$.t = _v$7);
|
|
4567
4647
|
return _p$;
|
|
4568
4648
|
}, {
|
|
4569
4649
|
e: void 0,
|
|
4570
4650
|
t: void 0
|
|
4571
4651
|
});
|
|
4572
|
-
return _el$
|
|
4652
|
+
return _el$50;
|
|
4573
4653
|
}
|
|
4574
4654
|
}), null);
|
|
4575
|
-
insert(_el$
|
|
4655
|
+
insert(_el$49, createComponent(Show, {
|
|
4576
4656
|
get when() {
|
|
4577
4657
|
return props.inputValue;
|
|
4578
4658
|
},
|
|
4579
4659
|
get children() {
|
|
4580
|
-
var _el$
|
|
4581
|
-
_el$
|
|
4582
|
-
insert(_el$
|
|
4660
|
+
var _el$51 = _tmpl$20();
|
|
4661
|
+
_el$51.$$click = handleSubmit;
|
|
4662
|
+
insert(_el$51, createComponent(IconReturn, {
|
|
4583
4663
|
size: 10,
|
|
4584
4664
|
"class": "opacity-[0.99] text-black"
|
|
4585
4665
|
}));
|
|
4586
|
-
return _el$
|
|
4666
|
+
return _el$51;
|
|
4587
4667
|
}
|
|
4588
4668
|
}), null);
|
|
4589
|
-
createRenderEffect(() => setAttribute(_el$
|
|
4590
|
-
createRenderEffect(() => _el$
|
|
4591
|
-
return _el$
|
|
4669
|
+
createRenderEffect(() => setAttribute(_el$48, "placeholder", speechRecognition.isListening() ? "listening..." : "type prompt"));
|
|
4670
|
+
createRenderEffect(() => _el$48.value = props.inputValue ?? "");
|
|
4671
|
+
return _el$47;
|
|
4592
4672
|
}
|
|
4593
4673
|
}), null);
|
|
4594
|
-
createRenderEffect(() => className(_el$
|
|
4595
|
-
return _el$
|
|
4674
|
+
createRenderEffect(() => className(_el$45, cn("contain-layout shrink-0 flex items-center gap-1 pt-1 w-fit h-fit pl-1.5", props.componentName ? "pr-1.5" : "pr-1")));
|
|
4675
|
+
return _el$44;
|
|
4596
4676
|
}
|
|
4597
4677
|
}), null);
|
|
4598
|
-
insert(_el$
|
|
4678
|
+
insert(_el$28, createComponent(Show, {
|
|
4599
4679
|
get when() {
|
|
4600
4680
|
return props.isPendingDismiss;
|
|
4601
4681
|
},
|
|
@@ -4610,13 +4690,28 @@ var SelectionLabel = (props) => {
|
|
|
4610
4690
|
});
|
|
4611
4691
|
}
|
|
4612
4692
|
}), null);
|
|
4693
|
+
insert(_el$28, createComponent(Show, {
|
|
4694
|
+
get when() {
|
|
4695
|
+
return props.error;
|
|
4696
|
+
},
|
|
4697
|
+
get children() {
|
|
4698
|
+
return createComponent(ErrorConfirmation, {
|
|
4699
|
+
get error() {
|
|
4700
|
+
return props.error;
|
|
4701
|
+
},
|
|
4702
|
+
get onAcknowledge() {
|
|
4703
|
+
return props.onAcknowledgeError;
|
|
4704
|
+
}
|
|
4705
|
+
});
|
|
4706
|
+
}
|
|
4707
|
+
}), null);
|
|
4613
4708
|
createRenderEffect((_p$) => {
|
|
4614
|
-
var _v$8 = `${computedPosition().top}px`, _v$9 = `${computedPosition().left}px`, _v$0 = props.isInputExpanded || props.status === "copied" && props.onDismiss || props.status === "copying" && props.onAbort ? "auto" : "none", _v$1 = props.status === "fading" ? 0 : 1, _v$10 = props.status === "copied" || props.status === "fading" ? "none" : void 0;
|
|
4615
|
-
_v$8 !== _p$.e && setStyleProperty(_el$
|
|
4616
|
-
_v$9 !== _p$.t && setStyleProperty(_el$
|
|
4617
|
-
_v$0 !== _p$.a && setStyleProperty(_el$
|
|
4618
|
-
_v$1 !== _p$.o && setStyleProperty(_el$
|
|
4619
|
-
_v$10 !== _p$.i && setStyleProperty(_el$
|
|
4709
|
+
var _v$8 = `${computedPosition().top}px`, _v$9 = `${computedPosition().left}px`, _v$0 = props.isInputExpanded || props.status === "copied" && props.onDismiss || props.status === "copying" && props.onAbort ? "auto" : "none", _v$1 = props.status === "fading" ? 0 : 1, _v$10 = (props.status === "copied" || props.status === "fading") && !props.error ? "none" : void 0;
|
|
4710
|
+
_v$8 !== _p$.e && setStyleProperty(_el$27, "top", _p$.e = _v$8);
|
|
4711
|
+
_v$9 !== _p$.t && setStyleProperty(_el$27, "left", _p$.t = _v$9);
|
|
4712
|
+
_v$0 !== _p$.a && setStyleProperty(_el$27, "pointer-events", _p$.a = _v$0);
|
|
4713
|
+
_v$1 !== _p$.o && setStyleProperty(_el$27, "opacity", _p$.o = _v$1);
|
|
4714
|
+
_v$10 !== _p$.i && setStyleProperty(_el$28, "display", _p$.i = _v$10);
|
|
4620
4715
|
return _p$;
|
|
4621
4716
|
}, {
|
|
4622
4717
|
e: void 0,
|
|
@@ -4625,14 +4720,14 @@ var SelectionLabel = (props) => {
|
|
|
4625
4720
|
o: void 0,
|
|
4626
4721
|
i: void 0
|
|
4627
4722
|
});
|
|
4628
|
-
return _el$
|
|
4723
|
+
return _el$27;
|
|
4629
4724
|
}
|
|
4630
4725
|
});
|
|
4631
4726
|
};
|
|
4632
4727
|
delegateEvents(["click", "pointerdown", "mousedown", "pointerup", "input", "keydown"]);
|
|
4633
4728
|
|
|
4634
4729
|
// src/components/selection-cursor.tsx
|
|
4635
|
-
var _tmpl$
|
|
4730
|
+
var _tmpl$24 = /* @__PURE__ */ template(`<div class="fixed z-2147483647"><button data-react-grab-selection-cursor>`);
|
|
4636
4731
|
var SelectionCursor = (props) => {
|
|
4637
4732
|
const [isHovered, setIsHovered] = createSignal(false);
|
|
4638
4733
|
const [debouncedVisible, setDebouncedVisible] = createSignal(false);
|
|
@@ -4669,7 +4764,7 @@ var SelectionCursor = (props) => {
|
|
|
4669
4764
|
});
|
|
4670
4765
|
}
|
|
4671
4766
|
}), (() => {
|
|
4672
|
-
var _el$ = _tmpl$
|
|
4767
|
+
var _el$ = _tmpl$24(), _el$2 = _el$.firstChild;
|
|
4673
4768
|
_el$.addEventListener("mouseleave", () => setIsHovered(false));
|
|
4674
4769
|
_el$.addEventListener("mouseenter", () => setIsHovered(true));
|
|
4675
4770
|
_el$2.$$click = handleClick;
|
|
@@ -4827,7 +4922,11 @@ var ReactGrabRenderer = (props) => {
|
|
|
4827
4922
|
},
|
|
4828
4923
|
get onUndo() {
|
|
4829
4924
|
return session().isStreaming ? void 0 : () => props.onUndoSession?.(session().id);
|
|
4830
|
-
}
|
|
4925
|
+
},
|
|
4926
|
+
get error() {
|
|
4927
|
+
return session().error;
|
|
4928
|
+
},
|
|
4929
|
+
onAcknowledgeError: () => props.onAcknowledgeSessionError?.(session().id)
|
|
4831
4930
|
})]
|
|
4832
4931
|
}), createComponent(Show, {
|
|
4833
4932
|
get when() {
|
|
@@ -6449,7 +6548,15 @@ var createAgentManager = (initialAgentOptions) => {
|
|
|
6449
6548
|
);
|
|
6450
6549
|
setSessions((prev) => new Map(prev).set(session.id, completedSession));
|
|
6451
6550
|
const element = sessionElements.get(session.id);
|
|
6452
|
-
agentOptions?.onComplete?.(completedSession, element);
|
|
6551
|
+
const result = agentOptions?.onComplete?.(completedSession, element);
|
|
6552
|
+
if (result?.error) {
|
|
6553
|
+
const errorSession = updateSession(
|
|
6554
|
+
completedSession,
|
|
6555
|
+
{ error: result.error },
|
|
6556
|
+
storage
|
|
6557
|
+
);
|
|
6558
|
+
setSessions((prev) => new Map(prev).set(session.id, errorSession));
|
|
6559
|
+
}
|
|
6453
6560
|
}
|
|
6454
6561
|
} catch (error) {
|
|
6455
6562
|
const currentSessions = sessions();
|
|
@@ -6462,33 +6569,18 @@ var createAgentManager = (initialAgentOptions) => {
|
|
|
6462
6569
|
}
|
|
6463
6570
|
} else {
|
|
6464
6571
|
const errorMessage = error instanceof Error ? error.message : "Unknown error";
|
|
6465
|
-
|
|
6466
|
-
|
|
6467
|
-
|
|
6468
|
-
|
|
6469
|
-
|
|
6470
|
-
|
|
6471
|
-
|
|
6472
|
-
|
|
6473
|
-
|
|
6474
|
-
|
|
6475
|
-
|
|
6476
|
-
|
|
6477
|
-
}
|
|
6478
|
-
} else {
|
|
6479
|
-
if (currentSession) {
|
|
6480
|
-
const errorSession = updateSession(
|
|
6481
|
-
currentSession,
|
|
6482
|
-
{
|
|
6483
|
-
lastStatus: `Error: ${errorMessage}`,
|
|
6484
|
-
isStreaming: false
|
|
6485
|
-
},
|
|
6486
|
-
storage
|
|
6487
|
-
);
|
|
6488
|
-
setSessions((prev) => new Map(prev).set(session.id, errorSession));
|
|
6489
|
-
if (error instanceof Error) {
|
|
6490
|
-
agentOptions?.onError?.(error, errorSession);
|
|
6491
|
-
}
|
|
6572
|
+
if (currentSession) {
|
|
6573
|
+
const errorSession = updateSession(
|
|
6574
|
+
currentSession,
|
|
6575
|
+
{
|
|
6576
|
+
error: errorMessage,
|
|
6577
|
+
isStreaming: false
|
|
6578
|
+
},
|
|
6579
|
+
storage
|
|
6580
|
+
);
|
|
6581
|
+
setSessions((prev) => new Map(prev).set(session.id, errorSession));
|
|
6582
|
+
if (error instanceof Error) {
|
|
6583
|
+
agentOptions?.onError?.(error, errorSession);
|
|
6492
6584
|
}
|
|
6493
6585
|
}
|
|
6494
6586
|
}
|
|
@@ -6636,6 +6728,13 @@ var createAgentManager = (initialAgentOptions) => {
|
|
|
6636
6728
|
}
|
|
6637
6729
|
dismissSession(sessionId);
|
|
6638
6730
|
};
|
|
6731
|
+
const acknowledgeSessionError = (sessionId) => {
|
|
6732
|
+
const currentSessions = sessions();
|
|
6733
|
+
const session = currentSessions.get(sessionId);
|
|
6734
|
+
const prompt = session?.context.prompt;
|
|
6735
|
+
dismissSession(sessionId);
|
|
6736
|
+
return prompt;
|
|
6737
|
+
};
|
|
6639
6738
|
const updateSessionBoundsOnViewportChange = () => {
|
|
6640
6739
|
const currentSessions = sessions();
|
|
6641
6740
|
if (currentSessions.size === 0) return;
|
|
@@ -6679,6 +6778,7 @@ var createAgentManager = (initialAgentOptions) => {
|
|
|
6679
6778
|
abortAllSessions,
|
|
6680
6779
|
dismissSession,
|
|
6681
6780
|
undoSession,
|
|
6781
|
+
acknowledgeSessionError,
|
|
6682
6782
|
updateSessionBoundsOnViewportChange,
|
|
6683
6783
|
getSessionElement,
|
|
6684
6784
|
setOptions,
|
|
@@ -6687,8 +6787,8 @@ var createAgentManager = (initialAgentOptions) => {
|
|
|
6687
6787
|
};
|
|
6688
6788
|
|
|
6689
6789
|
// src/core.tsx
|
|
6690
|
-
var _tmpl$
|
|
6691
|
-
var _tmpl$
|
|
6790
|
+
var _tmpl$25 = /* @__PURE__ */ template(`<span class="tabular-nums align-middle">`);
|
|
6791
|
+
var _tmpl$26 = /* @__PURE__ */ template(`<span class="font-mono tabular-nums align-middle"><<!>>`);
|
|
6692
6792
|
var _tmpl$33 = /* @__PURE__ */ template(`<span class="tabular-nums ml-1 align-middle"> in `);
|
|
6693
6793
|
var onIdle = (callback) => {
|
|
6694
6794
|
if ("scheduler" in globalThis) {
|
|
@@ -6785,12 +6885,12 @@ var init = (rawOptions) => {
|
|
|
6785
6885
|
hasInited = true;
|
|
6786
6886
|
const logIntro = () => {
|
|
6787
6887
|
try {
|
|
6788
|
-
const version = "0.0.
|
|
6888
|
+
const version = "0.0.78";
|
|
6789
6889
|
const logoDataUri = `data:image/svg+xml;base64,${btoa(LOGO_SVG)}`;
|
|
6790
6890
|
console.log(`%cReact Grab${version ? ` v${version}` : ""}%c
|
|
6791
6891
|
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;`, "");
|
|
6792
6892
|
if (navigator.onLine && version) {
|
|
6793
|
-
fetch(`https://www.react-grab.com/api/version?t=${Date.now()}`, {
|
|
6893
|
+
fetch(`https://www.react-grab.com/api/version?source=browser&t=${Date.now()}`, {
|
|
6794
6894
|
referrerPolicy: "origin",
|
|
6795
6895
|
keepalive: true,
|
|
6796
6896
|
priority: "low",
|
|
@@ -6904,6 +7004,8 @@ https://react-grab.com`, `background: #330039; color: #ffffff; border: 1px solid
|
|
|
6904
7004
|
let keydownSpamTimerId = null;
|
|
6905
7005
|
let autoScrollAnimationId = null;
|
|
6906
7006
|
let previouslyFocusedElement = null;
|
|
7007
|
+
let pendingClickTimeoutId = null;
|
|
7008
|
+
let pendingClickData = null;
|
|
6907
7009
|
const isRendererActive = createMemo(() => isActivated() && !isCopying());
|
|
6908
7010
|
const getAutoScrollDirection = (clientX, clientY) => {
|
|
6909
7011
|
return {
|
|
@@ -7164,7 +7266,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
7164
7266
|
const copying = isCopying();
|
|
7165
7267
|
if (!element) {
|
|
7166
7268
|
return (() => {
|
|
7167
|
-
var _el$ = _tmpl$
|
|
7269
|
+
var _el$ = _tmpl$25();
|
|
7168
7270
|
insert(_el$, copying ? "Processing\u2026" : "1 element");
|
|
7169
7271
|
return _el$;
|
|
7170
7272
|
})();
|
|
@@ -7173,7 +7275,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
7173
7275
|
const componentName = labelComponentName();
|
|
7174
7276
|
if (tagName && componentName) {
|
|
7175
7277
|
return [(() => {
|
|
7176
|
-
var _el$2 = _tmpl$
|
|
7278
|
+
var _el$2 = _tmpl$26(), _el$3 = _el$2.firstChild, _el$5 = _el$3.nextSibling; _el$5.nextSibling;
|
|
7177
7279
|
insert(_el$2, tagName, _el$5);
|
|
7178
7280
|
return _el$2;
|
|
7179
7281
|
})(), (() => {
|
|
@@ -7184,13 +7286,13 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
7184
7286
|
}
|
|
7185
7287
|
if (tagName) {
|
|
7186
7288
|
return (() => {
|
|
7187
|
-
var _el$8 = _tmpl$
|
|
7289
|
+
var _el$8 = _tmpl$26(), _el$9 = _el$8.firstChild, _el$1 = _el$9.nextSibling; _el$1.nextSibling;
|
|
7188
7290
|
insert(_el$8, tagName, _el$1);
|
|
7189
7291
|
return _el$8;
|
|
7190
7292
|
})();
|
|
7191
7293
|
}
|
|
7192
7294
|
return (() => {
|
|
7193
|
-
var _el$10 = _tmpl$
|
|
7295
|
+
var _el$10 = _tmpl$25();
|
|
7194
7296
|
insert(_el$10, copying ? "Processing\u2026" : "1 element");
|
|
7195
7297
|
return _el$10;
|
|
7196
7298
|
})();
|
|
@@ -7393,6 +7495,20 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
7393
7495
|
}
|
|
7394
7496
|
if (holdTimerId) window.clearTimeout(holdTimerId);
|
|
7395
7497
|
if (keydownSpamTimerId) window.clearTimeout(keydownSpamTimerId);
|
|
7498
|
+
if (pendingClickTimeoutId) {
|
|
7499
|
+
window.clearTimeout(pendingClickTimeoutId);
|
|
7500
|
+
pendingClickTimeoutId = null;
|
|
7501
|
+
const clickData = pendingClickData;
|
|
7502
|
+
pendingClickData = null;
|
|
7503
|
+
if (clickData) {
|
|
7504
|
+
setLastGrabbedElement(clickData.element);
|
|
7505
|
+
const bounds = createElementBounds(clickData.element);
|
|
7506
|
+
const tagName = extractElementTagName(clickData.element);
|
|
7507
|
+
void getNearestComponentName(clickData.element).then((componentName) => {
|
|
7508
|
+
void executeCopyOperation(clickData.clientX, clickData.clientY, () => copySingleElementToClipboard(clickData.element), bounds, tagName, componentName ?? void 0, clickData.element);
|
|
7509
|
+
});
|
|
7510
|
+
}
|
|
7511
|
+
}
|
|
7396
7512
|
stopAutoScroll();
|
|
7397
7513
|
stopProgressAnimation();
|
|
7398
7514
|
activationTimestamp = null;
|
|
@@ -7631,12 +7747,55 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
7631
7747
|
} else {
|
|
7632
7748
|
const element = getElementAtPosition(clientX, clientY);
|
|
7633
7749
|
if (!element) return;
|
|
7634
|
-
|
|
7635
|
-
|
|
7636
|
-
|
|
7637
|
-
|
|
7638
|
-
|
|
7639
|
-
|
|
7750
|
+
if (hasAgentProvider()) {
|
|
7751
|
+
if (pendingClickTimeoutId !== null) {
|
|
7752
|
+
window.clearTimeout(pendingClickTimeoutId);
|
|
7753
|
+
pendingClickTimeoutId = null;
|
|
7754
|
+
const clickElement = pendingClickData?.element ?? element;
|
|
7755
|
+
pendingClickData = null;
|
|
7756
|
+
const bounds = createElementBounds(clickElement);
|
|
7757
|
+
const selectionCenterX = bounds.x + bounds.width / 2;
|
|
7758
|
+
setCopyStartX(clientX);
|
|
7759
|
+
setCopyStartY(clientY);
|
|
7760
|
+
setCopyOffsetFromCenterX(clientX - selectionCenterX);
|
|
7761
|
+
const cachedInput = elementInputCache.get(clickElement);
|
|
7762
|
+
if (cachedInput) {
|
|
7763
|
+
setInputText(cachedInput);
|
|
7764
|
+
}
|
|
7765
|
+
setMouseX(clientX);
|
|
7766
|
+
setMouseY(clientY);
|
|
7767
|
+
setFrozenElement(clickElement);
|
|
7768
|
+
setIsToggleMode(true);
|
|
7769
|
+
setIsToggleFrozen(true);
|
|
7770
|
+
setIsInputExpanded(true);
|
|
7771
|
+
setIsInputMode(true);
|
|
7772
|
+
return;
|
|
7773
|
+
}
|
|
7774
|
+
pendingClickData = {
|
|
7775
|
+
clientX,
|
|
7776
|
+
clientY,
|
|
7777
|
+
element
|
|
7778
|
+
};
|
|
7779
|
+
pendingClickTimeoutId = window.setTimeout(() => {
|
|
7780
|
+
pendingClickTimeoutId = null;
|
|
7781
|
+
const clickData = pendingClickData;
|
|
7782
|
+
pendingClickData = null;
|
|
7783
|
+
if (!clickData) return;
|
|
7784
|
+
setLastGrabbedElement(clickData.element);
|
|
7785
|
+
const bounds = createElementBounds(clickData.element);
|
|
7786
|
+
const tagName = extractElementTagName(clickData.element);
|
|
7787
|
+
void getNearestComponentName(clickData.element).then((componentName) => {
|
|
7788
|
+
void executeCopyOperation(clickData.clientX, clickData.clientY, () => copySingleElementToClipboard(clickData.element), bounds, tagName, componentName ?? void 0, clickData.element);
|
|
7789
|
+
});
|
|
7790
|
+
}, DOUBLE_CLICK_THRESHOLD_MS);
|
|
7791
|
+
} else {
|
|
7792
|
+
setLastGrabbedElement(element);
|
|
7793
|
+
const bounds = createElementBounds(element);
|
|
7794
|
+
const tagName = extractElementTagName(element);
|
|
7795
|
+
void getNearestComponentName(element).then((componentName) => {
|
|
7796
|
+
void executeCopyOperation(clientX, clientY, () => copySingleElementToClipboard(element), bounds, tagName, componentName ?? void 0, element);
|
|
7797
|
+
});
|
|
7798
|
+
}
|
|
7640
7799
|
}
|
|
7641
7800
|
};
|
|
7642
7801
|
const abortController = new AbortController();
|
|
@@ -7777,7 +7936,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
7777
7936
|
setIsInputMode(true);
|
|
7778
7937
|
return;
|
|
7779
7938
|
}
|
|
7780
|
-
if (event.key
|
|
7939
|
+
if (event.key?.toLowerCase() === "o" && !isInputMode()) {
|
|
7781
7940
|
if (isActivated() && (event.metaKey || event.ctrlKey)) {
|
|
7782
7941
|
const filePath = selectionFilePath();
|
|
7783
7942
|
const lineNumber = selectionLineNumber();
|
|
@@ -7870,7 +8029,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
7870
8029
|
};
|
|
7871
8030
|
const requiredModifiers = getRequiredModifiers();
|
|
7872
8031
|
const isReleasingModifier = requiredModifiers.metaKey || requiredModifiers.ctrlKey ? !event.metaKey && !event.ctrlKey : requiredModifiers.shiftKey && !event.shiftKey || requiredModifiers.altKey && !event.altKey;
|
|
7873
|
-
const isReleasingActivationKey = options.activationShortcut ? !options.activationShortcut(event) : options.activationKey ? options.activationKey.key ? event.key
|
|
8032
|
+
const isReleasingActivationKey = options.activationShortcut ? !options.activationShortcut(event) : options.activationKey ? options.activationKey.key ? event.key?.toLowerCase() === options.activationKey.key.toLowerCase() || keyMatchesCode(options.activationKey.key, event.code) : false : isCLikeKey(event.key, event.code);
|
|
7874
8033
|
if (isActivated()) {
|
|
7875
8034
|
if (isReleasingModifier) {
|
|
7876
8035
|
if (isToggleMode()) return;
|
|
@@ -8086,6 +8245,7 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
8086
8245
|
abortController.abort();
|
|
8087
8246
|
if (holdTimerId) window.clearTimeout(holdTimerId);
|
|
8088
8247
|
if (keydownSpamTimerId) window.clearTimeout(keydownSpamTimerId);
|
|
8248
|
+
if (pendingClickTimeoutId) window.clearTimeout(pendingClickTimeoutId);
|
|
8089
8249
|
stopAutoScroll();
|
|
8090
8250
|
stopProgressAnimation();
|
|
8091
8251
|
document.body.style.userSelect = "";
|
|
@@ -8222,6 +8382,12 @@ ${plainTextContentOnly}` : plainTextContentOnly;
|
|
|
8222
8382
|
onAbortSession: (sessionId) => agentManager.abortSession(sessionId),
|
|
8223
8383
|
onDismissSession: (sessionId) => agentManager.dismissSession(sessionId),
|
|
8224
8384
|
onUndoSession: (sessionId) => agentManager.undoSession(sessionId),
|
|
8385
|
+
onAcknowledgeSessionError: (sessionId) => {
|
|
8386
|
+
const prompt = agentManager.acknowledgeSessionError(sessionId);
|
|
8387
|
+
if (prompt) {
|
|
8388
|
+
setInputText(prompt);
|
|
8389
|
+
}
|
|
8390
|
+
},
|
|
8225
8391
|
onInputChange: handleInputChange,
|
|
8226
8392
|
onInputSubmit: () => void handleInputSubmit(),
|
|
8227
8393
|
onInputCancel: handleInputCancel,
|