basic-form.82fc7e2f.js 3.9 KB

1
  1. import{q as w,bf as I,r as n,o as l,n as _,J as v,I as i,K as u,H as p,t as g,v as a,P as m,S,O as D,aN as x,R as $,bg as q,p as z,_ as A,B as E,ak as B,a8 as H,bh as J}from"./index.3cfc1991.js";const L={formItems:{type:Array,default:()=>[]},formGroup:{type:Array,default:()=>[]},itemStyle:{type:Object,default:()=>({paddingRight:"20px"})},disabled:{type:Boolean,default:!1},colLayout:{type:Object,default:()=>({xl:6,lg:8,md:12,sm:24,xs:24})},formData:{type:Object,required:!0}},F=w({__name:"form-items",props:L,setup(y){const t=I(y,"formData");return(c,s)=>{const b=n("el-input"),r=n("el-option"),d=n("el-select"),V=n("el-radio"),U=n("el-radio-group"),f=n("el-image"),N=n("el-upload"),O=n("el-checkbox"),R=n("el-checkbox-group"),C=n("el-date-picker"),G=n("el-form-item"),P=n("el-col");return l(!0),_(i,null,v(c.formItems,(e,j)=>(l(),_(i,{key:j},[e.isHidden?m("",!0):(l(),u(P,q(x({key:0},c.colLayout)),{default:p(()=>[g(G,{label:e.label,prop:e.field,rules:e.rules,"label-width":e.labelWidth,style:$(c.itemStyle)},{default:p(()=>[e.type==="input"?(l(),u(b,{key:0,modelValue:a(t)[e.field],"onUpdate:modelValue":o=>a(t)[e.field]=o,placeholder:e.placeholder,clearable:""},null,8,["modelValue","onUpdate:modelValue","placeholder"])):m("",!0),e.type==="select"?(l(),u(d,{key:1,modelValue:a(t)[e.field],"onUpdate:modelValue":o=>a(t)[e.field]=o,placeholder:e.placeholder,clearable:""},{default:p(()=>[(l(!0),_(i,null,v(e.options,(o,k)=>(l(),u(r,{key:k,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):m("",!0),e.type==="radio"?(l(),u(U,{key:2,modelValue:a(t)[e.field],"onUpdate:modelValue":o=>a(t)[e.field]=o},{default:p(()=>[(l(!0),_(i,null,v(e.options,(o,k)=>(l(),u(V,{key:k,label:o.value},{default:p(()=>[S(D(o.label),1)]),_:2},1032,["label"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):m("",!0),e.type==="img_preview"?(l(),u(f,{key:3,src:a(t)[e.field]},null,8,["src"])):m("",!0),e.type==="img_upload"?(l(),u(N,{key:4,class:"el-avatar"})):m("",!0),e.type==="checkbox"?(l(),u(R,{key:5,modelValue:a(t)[e.field],"onUpdate:modelValue":o=>a(t)[e.field]=o},{default:p(()=>[(l(!0),_(i,null,v(e.options,(o,k)=>(l(),u(O,{key:k,label:o.value},{default:p(()=>[S(D(o.label),1)]),_:2},1032,["label"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):m("",!0),e.type==="date_picker"?(l(),u(C,x({key:6,modelValue:a(t)[e.field],"onUpdate:modelValue":o=>a(t)[e.field]=o},e.otherOptions),null,16,["modelValue","onUpdate:modelValue"])):m("",!0)]),_:2},1032,["label","prop","rules","label-width","style"])]),_:2},1040))],64))),128)}}}),K={class:"font-500 text-lg py-2"},M=w({__name:"group-form",props:L,setup(y){const t=I(y,"formData");return(c,s)=>{const b=n("el-col");return l(!0),_(i,null,v(c.formGroup,(r,d)=>(l(),_(i,{key:d},[g(b,{span:24},{default:p(()=>[z("h1",K,D(r.title),1)]),_:2},1024),g(F,{"form-items":r.formItems,"form-data":a(t),"col-layout":c.colLayout},null,8,["form-items","form-data","col-layout"])],64))),128)}}});const T=w({__name:"basic-form",props:L,setup(y,{expose:h}){const t=y,c=E(null),s=I(t,"formData");function b(r){var d;(d=c.value)==null||d.validate(V=>{r&&r(V)})}return h({vaildate:b}),(r,d)=>{const V=n("el-form-item"),U=n("el-row");return l(),u(a(J),{ref_key:"formRef",ref:c,modelValue:a(s),"onUpdate:modelValue":d[2]||(d[2]=f=>B(s)?s.value=f:null),model:a(s),disabled:r.disabled},{default:p(()=>[g(U,null,{default:p(()=>[r.formGroup.length?(l(),u(M,{key:1,"form-group":r.formGroup,"form-data":a(s),"onUpdate:form-data":d[1]||(d[1]=f=>B(s)?s.value=f:null),"col-layout":r.colLayout},null,8,["form-group","form-data","col-layout"])):(l(),u(F,{key:0,"form-items":r.formItems,"col-layout":r.colLayout,"form-data":a(s),"onUpdate:form-data":d[0]||(d[0]=f=>B(s)?s.value=f:null)},null,8,["form-items","col-layout","form-data"])),g(V,null,{default:p(()=>[H(r.$slots,"action",{},void 0,!0)]),_:3})]),_:3})]),_:3},8,["modelValue","model","disabled"])}}});var Q=A(T,[["__scopeId","data-v-1c0aef6a"]]);export{Q as B};