Files
Nexus/web/app/assets/VTextarea-BNoEm0fM.js
T
Nexus Agent 0b2d7ac50d feat(scripts): 异步执行、全局进度看板与完成提示音设置
脚本 exec 立即返回 running 并在后台跑批次;/ws/alerts 推送 script_progress/complete;
新增 ScriptRunsPage、Telegram 汇总通知与可配置的浏览器完成提示音。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 07:07:02 +08:00

1 line
5.1 KiB
JavaScript

import{$n as e,Ar as t,Br as n,En as r,G as i,Gn as a,Nr as o,Sn as s,Tn as c,_r as l,a as u,ar as d,d as f,f as p,fr as m,g as ee,hn as h,i as g,in as _,jn as v,jr as y,o as b,or as x,p as te,qr as ne,r as re,rr as S,s as C,sn as w,un as T,vr as E,xr as D,y as O,yn as k,yr as A,zr as j}from"./index-DXg_pn7T.js";var M=k({autoGrow:Boolean,autofocus:Boolean,counter:[Boolean,Number,String],counterValue:Function,prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,noResize:Boolean,rows:{type:[Number,String],default:5,validator:e=>!isNaN(parseFloat(e))},maxHeight:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},maxRows:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},suffix:String,modelModifiers:Object,...g(),...a(C(),[`direction`]),...p()},`VTextarea`),N=h()({name:`VTextarea`,directives:{vIntersect:i},inheritAttrs:!1,props:M(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0,"update:rows":e=>!0},setup(a,{attrs:p,emit:h,slots:g}){let C=w(a,`modelValue`),{isFocused:k,focus:M,blur:N}=te(a),{onIntersect:P}=re(a),F=d(()=>typeof a.counterValue==`function`?a.counterValue(C.value):(C.value||``).toString().length),I=d(()=>{if(p.maxlength)return p.maxlength;if(!(!a.counter||typeof a.counter!=`number`&&typeof a.counter!=`string`))return a.counter}),L=j(),R=j(),z=n(``),B=j(),V=j(0),{platform:H}=_(),U=u(a),W=d(()=>a.persistentPlaceholder||k.value||a.active);function G(){U.isSuppressing.value&&U.update(),B.value!==document.activeElement&&B.value?.focus(),k.value||M()}function K(e){G(),h(`click:control`,e)}function q(e){h(`mousedown:control`,e)}function J(e){e.stopPropagation(),G(),E(()=>{C.value=``,s(a[`onClick:clear`],e)})}function ie(e){let t=e.target;if(!a.modelModifiers?.trim){C.value=t.value;return}let n=t.value,r=t.selectionStart,i=t.selectionEnd;C.value=n,E(()=>{let e=0;n.trimStart().length===t.value.length&&(e=n.length-t.value.length),r!=null&&(t.selectionStart=r-e),i!=null&&(t.selectionEnd=i-e)})}let Y=j(),X=j(Number(a.rows)),Z=d(()=>[`plain`,`underlined`].includes(a.variant));y(()=>{a.autoGrow||(X.value=Number(a.rows))});function Q(){E(()=>{if(!B.value)return;if(H.value.firefox){V.value=12;return}let{offsetWidth:e,clientWidth:t}=B.value;V.value=Math.max(0,e-t)}),a.autoGrow&&E(()=>{if(!Y.value||!R.value)return;let e=getComputedStyle(Y.value),t=getComputedStyle(R.value.$el),n=parseFloat(e.getPropertyValue(`--v-field-padding-top`))+parseFloat(e.getPropertyValue(`--v-input-padding-top`))+parseFloat(e.getPropertyValue(`--v-field-padding-bottom`)),i=Y.value.scrollHeight,o=parseFloat(e.lineHeight),s=Math.max(parseFloat(a.rows)*o+n,parseFloat(t.getPropertyValue(`--v-input-control-height`))),l=a.maxHeight?parseFloat(a.maxHeight):parseFloat(a.maxRows)*o+n||1/0,u=c(i??0,s,l);X.value=Math.floor((u-n)/o),z.value=r(u)})}D(Q),t(C,Q),t(()=>a.rows,Q),t(()=>a.maxHeight,Q),t(()=>a.maxRows,Q),t(()=>a.density,Q),t(X,e=>{h(`update:rows`,e)});let $;return t(Y,e=>{e?($=new ResizeObserver(Q),$.observe(Y.value)):$?.disconnect()}),A(()=>{$?.disconnect()}),T(()=>{let t=!!(g.counter||a.counter||a.counterValue),n=!!(t||g.details),[s,c]=v(p),{modelValue:u,...d}=b.filterProps(a),h={...f.filterProps(a),"onClick:clear":J};return m(b,l({ref:L,modelValue:C.value,"onUpdate:modelValue":e=>C.value=e,class:[`v-textarea v-text-field`,{"v-textarea--prefixed":a.prefix,"v-textarea--suffixed":a.suffix,"v-text-field--prefixed":a.prefix,"v-text-field--suffixed":a.suffix,"v-textarea--auto-grow":a.autoGrow,"v-textarea--no-resize":a.noResize||a.autoGrow,"v-input--plain-underlined":Z.value},a.class],style:[{"--v-textarea-max-height":a.maxHeight?r(a.maxHeight):void 0,"--v-textarea-scroll-bar-width":r(V.value)},a.style]},s,d,{centerAffix:X.value===1&&!Z.value,focused:k.value,indentDetails:a.indentDetails??!Z.value}),{...g,default:({id:t,isDisabled:n,isDirty:r,isReadonly:s,isValid:u,hasDetails:d})=>m(f,l({ref:R,style:{"--v-textarea-control-height":z.value},onClick:K,onMousedown:q,"onClick:prependInner":a[`onClick:prependInner`],"onClick:appendInner":a[`onClick:appendInner`]},h,{id:t.value,active:W.value||r.value,labelId:`${t.value}-label`,centerAffix:X.value===1&&!Z.value,dirty:r.value||a.dirty,disabled:n.value,focused:k.value,details:d.value,error:u.value===!1}),{...g,default:({props:{class:r,...u},controlRef:d})=>x(S,null,[a.prefix&&x(`span`,{class:`v-text-field__prefix`},[a.prefix]),o(x(`textarea`,l({ref:e=>B.value=d.value=e,class:r,value:C.value,onInput:ie,autofocus:a.autofocus,readonly:s.value,disabled:n.value,placeholder:a.placeholder,rows:a.rows,name:U.fieldName.value,autocomplete:U.fieldAutocomplete.value,onFocus:G,onBlur:N,"aria-labelledby":`${t.value}-label`},u,c),null),[[i,{handler:P},null,{once:!0}]]),a.autoGrow&&o(x(`textarea`,{class:ne([r,`v-textarea__sizer`]),id:`${u.id}-sizer`,"onUpdate:modelValue":e=>C.value=e,ref:Y,readonly:!0,"aria-hidden":`true`},null),[[e,C.value]]),a.suffix&&x(`span`,{class:`v-text-field__suffix`},[a.suffix])])}),details:n?e=>x(S,null,[g.details?.(e),t&&x(S,null,[x(`span`,null,null),m(ee,{active:a.persistentCounter||k.value,value:F.value,max:I.value,disabled:a.disabled},g.counter)])]):void 0})}),O({},L,R,B)}});export{N as t};