1import{p as e,c as r,r as a,aN as o,aM as i,h as l,o as s,I as t,x as d,J as n,v as u,y as p,z as c,a1 as f,g as m,au as b,l as v}from"./Dmexpicl.js";import{u as g}from"./BTJUy80F.js";import{u as h}from"./DMzu0ls0.js";import"./o9WvRv7Y.js";import"./CQKtLyiZ.js";const w={class:"relative"},y=["for"],q={key:0,"aria-hidden":"true"},j=["name","label","id","aria-required","required","aria-invalid","aria-errormessage","placeholder"],k=["id"],x={__name:"password",props:{field:{type:Object,default:()=>({})},formSettings:{type:Object,default:()=>({})},settings:{type:Object,default:()=>({})}},setup(x){const B=x,{layout:_}=g(B.settings,!0),C=e((()=>{var e;return((null==(e=B.field.settings)?void 0:e.placeholder)||B.field.caption)+(B.field.required?B.formSettings.indicator:"")})),{randomId:O}=h(),S=e((()=>B.field.alias+"-"+O())),{t:V}=r(),z=a(!1),F=e((()=>{let e=o().min(8,V("form.password.min8")).matches(/[A-Z]/,V("form.password.uppercase")).matches(/[a-z]/,V("form.password.lowercase")).matches(/[0-9]/,V("form.password.number"));return B.field.required&&(e=e.required(V("form.password.required"))),e.label(B.field.caption)})),{value:I,errors:M,errorMessage:A,validate:D}=i((()=>B.field.alias),F,{label:B.field.caption,initialValue:""}),J=e((()=>M.value.length>0));return(e,r)=>{var a;return s(),l("div",w,[t(u("label",{for:m(S),class:f(["absolute left-0 duration-200 pointer-events-none !block",[m(z)?" top-2 opacity-0":" top-2"]])},[p(c(x.field.caption)+" ",1),x.field.required?(s(),l("span",q,c(x.formSettings.indicator),1)):d("",!0)],10,y),[[n,"True"===(null==(a=x.field.settings)?void 0:a.showLabel)]]),t(u("input",{name:x.field.alias,label:x.field.caption,id:m(S),"onUpdate:modelValue":r[0]||(r[0]=e=>v(I)?I.value=e:null),type:"password",onBlur:r[1]||(r[1]=e=>(async()=>{I.value&&""!==I.value||(z.value=!1),await D()})()),onFocus:r[2]||(r[2]=e=>z.value=!0),class:f(["appearance-none leading-tight placeholder:text-white/0 w-full px-0 py-2 border-0 border-b",[m(J)?m(_).errorBorder:m(_).inputBorder,m(_).inputFocus,m(_).inputBackground,m(_).inputColor]]),"aria-required":x.field.required,required:x.field.required,"aria-invalid":m(J),"aria-errormessage":m(J)?"error_"+m(S):null,placeholder:m(C),autocomplete:"current-password"},null,42,j),[[b,m(I)]]),m(J)?(s(),l("span",{key:0,id:"error_"+m(S),class:f(["border border-t-0 py-2 px-4 text-sm font-bold block",[m(_).errorBackground,m(_).errorColor,m(_).errorBorder]])},c(m(A)),11,k)):d("",!0)])}}};export{x as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.