You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
5.1 KiB
JavaScript
2 lines
5.1 KiB
JavaScript
var U=Object.defineProperty;var P=Object.getOwnPropertySymbols;var L=Object.prototype.hasOwnProperty,N=Object.prototype.propertyIsEnumerable;var E=(o,n,t)=>n in o?U(o,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[n]=t,j=(o,n)=>{for(var t in n||(n={}))L.call(n,t)&&E(o,t,n[t]);if(P)for(var t of P(n))N.call(n,t)&&E(o,t,n[t]);return o};var A=(o,n)=>{var t={};for(var r in o)L.call(o,r)&&n.indexOf(r)<0&&(t[r]=o[r]);if(o!=null&&P)for(var r of P(o))n.indexOf(r)<0&&N.call(o,r)&&(t[r]=o[r]);return t};var w=(o,n,t)=>new Promise((r,F)=>{var d=a=>{try{c(t.next(a))}catch(i){F(i)}},g=a=>{try{c(t.throw(a))}catch(i){F(i)}},c=a=>a.done?r(a.value):Promise.resolve(a.value).then(d,g);c((t=t.apply(o,n)).next())});import X from"./FormRender-iaUTQlu-.js";import{a2 as K,bf as B,f as V,e as O,ao as H,ap as Y,o as Z}from"./antd-BY-1PcYE.js";import{g as I,J as x,d as oo,f as eo,c as k,p as q,u as to,aa as y,_ as D,$ as J,k as W,a9 as R,F as no,ab as so,a8 as ro,ae as ao,af as io,ad as z}from"./vue-aEZWZQSa.js";import{f as mo,a as G}from"./index-CyxTcJnj.js";import{bD as lo,_ as fo}from"./entry/index-2-yrRtrk-1723018314898.js";import"./index-CApqPjEg.js";import"./formItemConfig-ACxxSq4N.js";import"./componentMap-V_hpsodh.js";import"./RadioButtonGroup.vue_vue_type_script_setup_true_lang-D3qGI2S_.js";import"./index-C74Cm-s2.js";import"./index-CFoN8Rd1.js";import"./useWindowSizeFn-B-EvmDAM.js";import"./useSortable-CIg2I4zL.js";import"./download-dYo-2j8R.js";import"./useLoading-DkMJ65Y_.js";import"./copyTextToClipboard-BBFF3Y3I.js";import"./onMountedOrActivated-BIJ0U1R1.js";import"./style-uL-203nC.js";import"./useFormDesignState-DLztCSBe.js";function co(o,n,t,r){(()=>{const u=I(),C=u==null?void 0:u.parent;C&&o.formConfig.schemas.forEach(m=>{B(m.componentProps,(M,e)=>{O(M)&&(m.componentProps[e]=M.bind(C))}),B(m.on,(M,e)=>{O(M)&&(m.componentProps[e]=M.bind(C))})})})();const{emit:d}=t,g=K.useForm,{resetFields:c,validate:a,clearValidate:i,validateField:h}=g(n,[]);return{validate:a,validateField:h,resetFields:c,clearValidate:i,submit:()=>w(this,null,function*(){var C,m;const u=V(x(n.value));return d==null||d("submit",u),(m=(C=o.formConfig).submit)==null||m.call(C,u),u})}}function uo(o,n,t,r){const F=e=>mo(o.formConfig.schemas,s=>s.field===e),d=(e,s,l)=>{const f=F(e);f&&(f[s]=l)},g=(e,s,l)=>{const f=F(e);f!=null&&f.componentProps&&(["options","treeData"].includes(s)&&c(e,void 0),f.componentProps[s]=l)},c=(e,s)=>{var l;typeof e=="string"?(o.formModel[e]=s,(l=t.value)==null||l.validateField(e,s,[])):Object.keys(e).forEach(p=>{var b;o.formModel[p]=e[p],(b=t.value)==null||b.validateField(p,e[p],[])})},a=(e,s)=>{o.formConfig[e]=s},i=e=>V(o.formModel)[e],h=()=>w(this,null,function*(){return V(o.formModel)}),v=e=>{d(e,"hidden",!0)},u=e=>{typeof e=="string"?g(e,"disabled",!0):a("disabled",e!==!1)},C=e=>{d(e,"hidden",!1)},m={};return(e=>{G(e,s=>{G(e,l=>{var f;m[l.field]||(m[l.field]=new Set),(f=s.link)!=null&&f.includes(l.field)&&O(s.update)&&m[l.field].add(s)}),m[s.field].add(s)})})(o.formConfig.schemas),j({linkOn:m,setValue:c,getValue:i,hidden:v,show:C,set:d,get:F,setProps:g,getData:h,disable:u},r)}const po=oo({name:"VFormCreate",components:{FormRender:X,Form:K,Row:H},props:{fApi:{type:Object},formModel:{type:Object,default:()=>({})},formConfig:{type:Object,required:!0}},emits:["submit","change","update:fApi","update:formModel"],setup(o,n){const t=o.formConfig.layout=="vertical"?Y:H,{emit:r}=n,F=eo(null),d=k({get:()=>o.formModel,set:p=>r("update:formModel",p)}),g=k(()=>o.formConfig.schemas&&o.formConfig.schemas.filter(p=>p.hidden!==!0)),c=lo(o,"fApi",r),{submit:a,validate:i,clearValidate:h,resetFields:v,validateField:u}=co(o,d,n),f=uo({formConfig:o.formConfig,formData:o.formModel},n,F,{submit:a,validate:i,validateField:u,resetFields:v,clearValidate:h}),{linkOn:C}=f,m=A(f,["linkOn"]);c.value=m;const M=p=>{var S;const{schema:b,value:Q}=p,{field:T}=to(b);(S=C[T])==null||S.forEach(_=>{var $;($=_.update)==null||$.call(_,Q,_,c.value)})},e=k(()=>Z(o.formConfig,["disabled","labelWidth","schemas"])),s=()=>{a()};q("formModel",d);const l=(p,b)=>{d.value[p]=b};return q("setFormModelMethod",l),{eFormModel:F,submit:a,validate:i,validateField:u,resetFields:v,clearValidate:h,handleChange:M,formModelProps:e,handleSubmit:s,setFormModel:l,formModelNew:d,wrapperComp:t,noHiddenList:g}}}),Fo={class:"v-form-container"};function go(o,n,t,r,F,d){const g=y("FormRender"),c=y("Row"),a=y("Form");return D(),J("div",Fo,[W(a,z({class:"v-form-model",ref:"eFormModel",model:o.formModel},o.formModelProps),{default:R(()=>[W(c,null,{default:R(()=>[(D(!0),J(no,null,so(o.noHiddenList,(i,h)=>(D(),ro(g,{key:h,schema:i,formConfig:o.formConfig,formData:o.formModelNew,onChange:o.handleChange,setFormModel:o.setFormModel,onSubmit:o.handleSubmit,onReset:o.resetFields},ao({_:2},[i&&i.componentProps?{name:"schema.componentProps!.slotName",fn:R(()=>[io(o.$slots,i.componentProps.slotName,z({ref_for:!0},{formModel:o.formModel,field:i.field,schema:i}),void 0,!0)]),key:"0"}:void 0]),1032,["schema","formConfig","formData","onChange","setFormModel","onSubmit","onReset"]))),128))]),_:3})]),_:3},16,["model"])])}const Ao=fo(po,[["render",go],["__scopeId","data-v-dcd1468c"]]);export{Ao as default};
|