2 lines
14 KiB
JavaScript
2 lines
14 KiB
JavaScript
function e(e){const a=i(e,"modelValue"),l=o((()=>e.disabled)),n=o((()=>e.readonly)),s=r(!1),t=u([]),f=u([]);return d(t,(()=>{let e=0,l=0;const n=[];for(const a of t.value)!1===a.isValid?(l++,n.push({id:a.id,errorMessages:a.errorMessages})):!0===a.isValid&&e++;f.value=n,a.value=0>=l&&(e===t.value.length||null)}),{deep:!0,flush:"post"}),v(ue,{register:e=>{let{id:a,vm:l,validate:n,reset:s,resetValidation:i}=e;t.value.some((e=>e.id===a)),t.value.push({id:a,validate:n,reset:s,resetValidation:i,vm:c(l),isValid:null,errorMessages:[]})},unregister:e=>{t.value=t.value.filter((a=>a.id!==e))},update:(e,a,l)=>{const n=t.value.find((a=>a.id===e));n&&(n.isValid=a,n.errorMessages=l)},isDisabled:l,isReadonly:n,isValidating:s,isValid:a,items:t,validateOn:p(e,"validateOn")}),{errors:f,isDisabled:l,isReadonly:n,isValidating:s,isValid:a,items:t,validate:async function(){const a=[];let l=!0;f.value=[],s.value=!0;for(const n of t.value){const s=await n.validate();if(s.length>0&&(l=!1,a.push({id:n.id,errorMessages:s})),!l&&e.fastFail)break}return f.value=a,s.value=!1,{valid:l,errors:f.value}},reset:function(){t.value.forEach((e=>e.reset()))},resetValidation:function(){t.value.forEach((e=>e.resetValidation()))}}}function a(){return f(ue,null)}function l(e){const{t:a}=x();return{InputIcon:function(l){let{name:n}=l;const s={prepend:"prependAction",prependInner:"prependAction",append:"appendAction",appendInner:"appendAction",clear:"clear"}[n],t=e["onClick:"+n],i=t&&s?a("$vuetify.input."+s,e.label??""):void 0;return h(re,{icon:e[n+"Icon"],"aria-label":i,onClick:t},null)}}}function n(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:B();const l=i(e,"focused");return{focusClasses:o((()=>({[a+"--focused"]:l.value}))),isFocused:l,focus:function(){l.value=!0},blur:function(){l.value=!1}}}function s(e){const a=Object.keys(Ve.props).filter((e=>!H(e)&&"class"!==e&&"style"!==e));return N(e,a)}import{p as t,af as i,C as o,A as r,t as u,W as d,an as v,bz as c,y as p,Z as f,j as g,a4 as y,s as m,H as b,d as h,ab as V,ac as C,aa as I,b1 as k,q as _,a5 as x,by as B,_ as S,l as M,v as A,z as D,am as F,aB as w,x as $,a6 as z,bp as P,I as R,aj as E,ak as L,a2 as j,F as O,m as W,aX as H,bA as N,aM as q,b5 as K,f as X,bs as U,X as Z,o as G,D as J,ar as Q,bB as T,$ as Y,a0 as ee}from"./index-DP-xNVXx.js";import{c as ae,a as le}from"./index-6zGdhETr.js";import{a as ne,b as se,L as te,m as ie,u as oe}from"./loader-Ddi2H7kx.js";import{V as re}from"./VIcon-Dm0NusfZ.js";const ue=Symbol.for("vuetify:form"),de=t({disabled:Boolean,fastFail:Boolean,readonly:Boolean,modelValue:{type:Boolean,default:null},validateOn:{type:String,default:"input"}},"form"),ve=t({active:Boolean,disabled:Boolean,max:[Number,String],value:{type:[Number,String],default:0},...g(),...y({transition:{component:ae}})},"VCounter"),ce=m()({name:"VCounter",functional:!0,props:ve(),setup(e,a){let{slots:l}=a;const n=o((()=>e.max?`${e.value} / ${e.max}`:e.value+""));return b((()=>h(I,{transition:e.transition},{default:()=>[V(h("div",{class:["v-counter",{"text-error":e.max&&!e.disabled&&parseFloat(e.value)>parseFloat(e.max)},e.class],style:e.style},[l.default?l.default({counter:n.value,max:e.max,value:e.value}):n.value]),[[C,e.active]])]}))),{}}}),pe=t({text:String,onClick:k(),...g(),..._()},"VLabel"),fe=m()({name:"VLabel",props:pe(),setup(e,a){let{slots:l}=a;return b((()=>{var a;return h("label",{class:["v-label",{"v-label--clickable":!!e.onClick},e.class],style:e.style,onClick:e.onClick},[e.text,null==(a=l.default)?void 0:a.call(l)])})),{}}}),ge=t({floating:Boolean,...g()},"VFieldLabel"),ye=m()({name:"VFieldLabel",props:ge(),setup(e,a){let{slots:l}=a;return b((()=>h(fe,{class:["v-field-label",{"v-field-label--floating":e.floating},e.class],style:e.style,"aria-hidden":e.floating||void 0},l))),{}}}),me=t({focused:Boolean,"onUpdate:focused":k()},"focus"),be=["underlined","outlined","filled","solo","solo-inverted","solo-filled","plain"],he=t({appendInnerIcon:S,bgColor:String,clearable:Boolean,clearIcon:{type:S,default:"$clear"},active:Boolean,centerAffix:{type:Boolean,default:void 0},color:String,baseColor:String,dirty:Boolean,disabled:{type:Boolean,default:null},error:Boolean,flat:Boolean,label:String,persistentClear:Boolean,prependInnerIcon:S,reverse:Boolean,singleLine:Boolean,variant:{type:String,default:"filled",validator:e=>be.includes(e)},"onClick:clear":k(),"onClick:appendInner":k(),"onClick:prependInner":k(),...g(),...ne(),...M(),..._()},"VField"),Ve=m()({name:"VField",inheritAttrs:!1,props:{id:String,...me(),...he()},emits:{"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,a){function s(e){e.target!==document.activeElement&&e.preventDefault()}function t(a){var l;"Enter"!==a.key&&" "!==a.key||(a.preventDefault(),a.stopPropagation(),null==(l=e["onClick:clear"])||l.call(e,new MouseEvent("click")))}let{attrs:i,slots:r}=a;const{themeClasses:v}=A(e),{loaderClasses:c}=se(e),{focusClasses:f,isFocused:g,focus:y,blur:m}=n(e),{InputIcon:I}=l(e),{roundedClasses:k}=D(e),{rtlClasses:_}=F(),x=o((()=>e.dirty||e.active)),B=o((()=>!(e.singleLine||!e.label&&!r.label))),S=w(),M=o((()=>e.id||"input-"+S)),H=o((()=>M.value+"-messages")),N=u(),q=u(),K=u(),X=o((()=>["plain","underlined"].includes(e.variant))),{backgroundColorClasses:U,backgroundColorStyles:Z}=$(p(e,"bgColor")),{textColorClasses:G,textColorStyles:J}=z(o((()=>e.error||e.disabled?void 0:x.value&&g.value?e.color:e.baseColor)));d(x,(e=>{if(B.value){const a=N.value.$el,l=q.value.$el;requestAnimationFrame((()=>{const n=P(a),s=l.getBoundingClientRect(),t=s.x-n.x,i=s.y-n.y-(n.height/2-s.height/2),o=s.width/.75,r=Math.abs(o-n.width)>1?{maxWidth:R(o)}:void 0,u=getComputedStyle(a),d=getComputedStyle(l),v=1e3*parseFloat(u.transitionDuration)||150,c=parseFloat(d.getPropertyValue("--v-field-label-scale")),p=d.getPropertyValue("color");a.style.visibility="visible",l.style.visibility="hidden",E(a,{transform:`translate(${t}px, ${i}px) scale(${c})`,color:p,...r},{duration:v,easing:L,direction:e?"normal":"reverse"}).finished.then((()=>{a.style.removeProperty("visibility"),l.style.removeProperty("visibility")}))}))}}),{flush:"post"});const Q=o((()=>({isActive:x,isFocused:g,controlRef:K,blur:m,focus:y})));return b((()=>{var a,l,n;const o="outlined"===e.variant,u=!(!r["prepend-inner"]&&!e.prependInnerIcon),d=!(!e.clearable&&!r.clear),p=!!(r["append-inner"]||e.appendInnerIcon||d),g=()=>r.label?r.label({...Q.value,label:e.label,props:{for:M.value}}):e.label;return h("div",W({class:["v-field",{"v-field--active":x.value,"v-field--appended":p,"v-field--center-affix":e.centerAffix??!X.value,"v-field--disabled":e.disabled,"v-field--dirty":e.dirty,"v-field--error":e.error,"v-field--flat":e.flat,"v-field--has-background":!!e.bgColor,"v-field--persistent-clear":e.persistentClear,"v-field--prepended":u,"v-field--reverse":e.reverse,"v-field--single-line":e.singleLine,"v-field--no-label":!g(),["v-field--variant-"+e.variant]:!0},v.value,U.value,f.value,c.value,k.value,_.value,e.class],style:[Z.value,e.style],onClick:s},i),[h("div",{class:"v-field__overlay"},null),h(te,{name:"v-field",active:!!e.loading,color:e.error?"error":"string"==typeof e.loading?e.loading:e.color},{default:r.loader}),u&&h("div",{key:"prepend",class:"v-field__prepend-inner"},[e.prependInnerIcon&&h(I,{key:"prepend-icon",name:"prependInner"},null),null==(a=r["prepend-inner"])?void 0:a.call(r,Q.value)]),h("div",{class:"v-field__field","data-no-activator":""},[["filled","solo","solo-inverted","solo-filled"].includes(e.variant)&&B.value&&h(ye,{key:"floating-label",ref:q,class:[G.value],floating:!0,for:M.value,style:J.value},{default:()=>[g()]}),h(ye,{ref:N,for:M.value},{default:()=>[g()]}),null==(l=r.default)?void 0:l.call(r,{...Q.value,props:{id:M.value,class:"v-field__input","aria-describedby":H.value},focus:y,blur:m})]),d&&h(le,{key:"clear"},{default:()=>[V(h("div",{class:"v-field__clearable",onMousedown:e=>{e.preventDefault(),e.stopPropagation()}},[h(j,{defaults:{VIcon:{icon:e.clearIcon}}},{default:()=>[r.clear?r.clear({...Q.value,props:{onKeydown:t,onFocus:y,onBlur:m,onClick:e["onClick:clear"]}}):h(I,{name:"clear",onKeydown:t,onFocus:y,onBlur:m},null)]})]),[[C,e.dirty]])]}),p&&h("div",{key:"append",class:"v-field__append-inner"},[null==(n=r["append-inner"])?void 0:n.call(r,Q.value),e.appendInnerIcon&&h(I,{key:"append-icon",name:"appendInner"},null)]),h("div",{class:["v-field__outline",G.value],style:J.value},[o&&h(O,null,[h("div",{class:"v-field__outline__start"},null),B.value&&h("div",{class:"v-field__outline__notch"},[h(ye,{ref:q,floating:!0,for:M.value},{default:()=>[g()]})]),h("div",{class:"v-field__outline__end"},null)]),X.value&&B.value&&h(ye,{ref:q,floating:!0,for:M.value},{default:()=>[g()]})])])})),{controlRef:K}}}),Ce=t({active:Boolean,color:String,messages:{type:[Array,String],default:()=>[]},...g(),...y({transition:{component:ae,leaveAbsolute:!0,group:!0}})},"VMessages"),Ie=m()({name:"VMessages",props:Ce(),setup(e,a){let{slots:l}=a;const n=o((()=>q(e.messages))),{textColorClasses:s,textColorStyles:t}=z(o((()=>e.color)));return b((()=>h(I,{transition:e.transition,tag:"div",class:["v-messages",s.value,e.class],style:[t.value,e.style],role:"alert","aria-live":"polite"},{default:()=>[e.active&&n.value.map(((e,a)=>h("div",{class:"v-messages__message",key:`${a}-${n.value}`},[l.message?l.message({message:e}):e])))]}))),{}}}),ke=t({disabled:{type:Boolean,default:null},error:Boolean,errorMessages:{type:[Array,String],default:()=>[]},maxErrors:{type:[Number,String],default:1},name:String,label:String,readonly:{type:Boolean,default:null},rules:{type:Array,default:()=>[]},modelValue:null,validateOn:String,validationValue:null,...me()},"validation"),_e=t({id:String,appendIcon:S,centerAffix:{type:Boolean,default:!0},prependIcon:S,hideDetails:[Boolean,String],hideSpinButtons:Boolean,hint:String,persistentHint:Boolean,messages:{type:[Array,String],default:()=>[]},direction:{type:String,default:"horizontal",validator:e=>["horizontal","vertical"].includes(e)},"onClick:prepend":k(),"onClick:append":k(),...g(),...ie(),...T(Y(),["maxWidth","minWidth","width"]),..._(),...ke()},"VInput"),xe=m()({name:"VInput",props:{..._e()},emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:s}=n;const{densityClasses:t}=oe(e),{dimensionStyles:v}=ee(e),{themeClasses:c}=A(e),{rtlClasses:p}=F(),{InputIcon:f}=l(e),g=w(),y=o((()=>e.id||"input-"+g)),m=o((()=>y.value+"-messages")),{errorMessages:V,isDirty:C,isDisabled:I,isReadonly:k,isPristine:_,isValid:x,isValidating:S,reset:M,resetValidation:D,validate:$,validationClasses:z}=function(e){async function l(){c.value=null,await Q(),await n()}async function n(){y.value=!0,C.value.lazy?g.value=[]:await s(!C.value.eager)}async function s(){let a=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const l=[];k.value=!0;for(const n of e.rules){if(l.length>=+(e.maxErrors??1))break;const a="function"==typeof n?n:()=>n,s=await a(p.value);!0!==s&&(!1!==s&&"string"!=typeof s||l.push(s||""))}return g.value=l,k.value=!1,y.value=a,g.value}let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:B(),v=arguments.length>2&&void 0!==arguments[2]?arguments[2]:w();const c=i(e,"modelValue"),p=o((()=>void 0===e.validationValue?c.value:e.validationValue)),f=a(),g=u([]),y=r(!0),m=o((()=>!(!q(""===c.value?null:c.value).length&&!q(""===p.value?null:p.value).length))),b=o((()=>!!(e.disabled??(null==f?void 0:f.isDisabled.value)))),h=o((()=>!!(e.readonly??(null==f?void 0:f.isReadonly.value)))),V=o((()=>{var a;return(null==(a=e.errorMessages)?void 0:a.length)?q(e.errorMessages).concat(g.value).slice(0,Math.max(0,+e.maxErrors)):g.value})),C=o((()=>{let a=(e.validateOn??(null==f?void 0:f.validateOn.value))||"input";"lazy"===a&&(a="input lazy"),"eager"===a&&(a="input eager");const l=new Set((null==a?void 0:a.split(" "))??[]);return{input:l.has("input"),blur:l.has("blur")||l.has("input")||l.has("invalid-input"),invalidInput:l.has("invalid-input"),lazy:l.has("lazy"),eager:l.has("eager")}})),I=o((()=>{var a;return!e.error&&!(null==(a=e.errorMessages)?void 0:a.length)&&(!e.rules.length||(y.value?!g.value.length&&!C.value.lazy||null:!g.value.length))})),k=r(!1),_=o((()=>({[t+"--error"]:!1===I.value,[t+"--dirty"]:m.value,[t+"--disabled"]:b.value,[t+"--readonly"]:h.value}))),x=K("validation"),S=o((()=>e.name??X(v)));return U((()=>{null==f||f.register({id:S.value,vm:x,validate:s,reset:l,resetValidation:n})})),Z((()=>{null==f||f.unregister(S.value)})),G((async()=>{C.value.lazy||await s(!C.value.eager),null==f||f.update(S.value,I.value,V.value)})),J((()=>C.value.input||C.value.invalidInput&&!1===I.value),(()=>{d(p,(()=>{if(null!=p.value)s();else if(e.focused){const a=d((()=>e.focused),(e=>{e||s(),a()}))}}))})),J((()=>C.value.blur),(()=>{d((()=>e.focused),(e=>{e||s()}))})),d([I,V],(()=>{null==f||f.update(S.value,I.value,V.value)})),{errorMessages:V,isDirty:m,isDisabled:b,isReadonly:h,isPristine:y,isValid:I,isValidating:k,reset:l,resetValidation:n,validate:s,validationClasses:_}}(e,"v-input",y),P=o((()=>({id:y,messagesId:m,isDirty:C,isDisabled:I,isReadonly:k,isPristine:_,isValid:x,isValidating:S,reset:M,resetValidation:D,validate:$}))),R=o((()=>{var a;return(null==(a=e.errorMessages)?void 0:a.length)||!_.value&&V.value.length?V.value:e.hint&&(e.persistentHint||e.focused)?e.hint:e.messages}));return b((()=>{var a,l,n,i;const o=!(!s.append&&!e.appendIcon),r=R.value.length>0,u=!e.hideDetails||"auto"===e.hideDetails&&(r||!!s.details);return h("div",{class:["v-input","v-input--"+e.direction,{"v-input--center-affix":e.centerAffix,"v-input--hide-spin-buttons":e.hideSpinButtons},t.value,c.value,p.value,z.value,e.class],style:[v.value,e.style]},[!(!s.prepend&&!e.prependIcon)&&h("div",{key:"prepend",class:"v-input__prepend"},[null==(a=s.prepend)?void 0:a.call(s,P.value),e.prependIcon&&h(f,{key:"prepend-icon",name:"prepend"},null)]),s.default&&h("div",{class:"v-input__control"},[null==(l=s.default)?void 0:l.call(s,P.value)]),o&&h("div",{key:"append",class:"v-input__append"},[e.appendIcon&&h(f,{key:"append-icon",name:"append"},null),null==(n=s.append)?void 0:n.call(s,P.value)]),u&&h("div",{class:"v-input__details"},[h(Ie,{id:m.value,active:r,messages:R.value},{message:s.message}),null==(i=s.details)?void 0:i.call(s,P.value)])])})),{reset:M,resetValidation:D,validate:$,isValid:x,errorMessages:V}}});export{xe as V,de as a,he as b,e as c,Ve as d,ce as e,s as f,a as g,fe as h,_e as m,n as u};
|