ideaz-element
Version:
<p align="center"> <a href="" target="_blank" rel="noopener noreferrer"> <img src="./docs/public/logo.svg" alt="Ideaz Element" width="180" style="width: 180px;" /> </a> </p>
3 lines (2 loc) • 1.67 kB
JavaScript
;const n=require("vue");require("../../../utils/index.cjs");require("../../../node_modules/.pnpm/lodash-unified@1.0.3_@types_lodash-es@4.17.12_lodash-es@4.17.21_lodash@4.17.21/node_modules/lodash-unified/import.cjs");require("./hooks/index.cjs");const c=require("./FormItem.cjs"),a=require("../../../utils/is.cjs"),C=require("./hooks/useFormSlots.cjs"),F=require("./hooks/useCol.cjs"),h=require("../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/set.cjs"),w=require("../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/cloneDeep.cjs");function v(t,o,r){if(t.slot)return o[t.slot]&&o[t.slot]({formData:r});if(a.isFunction(t.render))return t.render({formData:r})}const D=n.defineComponent({name:"FormColumns",components:{FormItem:c},props:{columns:{type:Array,default:()=>[]},formProps:{type:Object,default:()=>({})},options:{type:Object,default:()=>({})},formConfig:{type:Object,default:()=>({})},modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue","change"],setup(t,{slots:o,emit:r}){return()=>{const{columns:d,formProps:u,options:f,modelValue:s}=t;return d.map((e,p)=>{const{scopedSlots:q}=C.useFormSlots(e,o,u),{colKls:y,colStyle:V}=F.useCol(u,e);return n.withDirectives(n.createVNode(c,{key:e.__key,ref:`formItem${p}`,col:e,modelValue:s,formConfig:u,options:f,class:y.value,style:V.value,"onUpdate:modelValue":(m,i)=>{const l=h(w(s),i,m);r("update:modelValue",l),r("change",{value:m,field:i,formData:l})}},{default:()=>[a.isFunction(e.render)||e.slot?v(e,o,t.modelValue):null],...o,...q}),[[n.vShow,a.isFunction(e.show)?e.show(s):e.show]])})}}});module.exports=D;
//# sourceMappingURL=FormColumns.cjs.map