componentMap-61ccdbb2.js 15 KB

1
  1. var Re=Object.defineProperty;var ye=Object.getOwnPropertySymbols;var $e=Object.prototype.hasOwnProperty,Le=Object.prototype.propertyIsEnumerable;var Ae=(e,o,n)=>o in e?Re(e,o,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[o]=n,R=(e,o)=>{for(var n in o||(o={}))$e.call(o,n)&&Ae(e,n,o[n]);if(ye)for(var n of ye(o))Le.call(o,n)&&Ae(e,n,o[n]);return e};var x=(e,o,n)=>new Promise((r,g)=>{var u=c=>{try{O(n.next(c))}catch(h){g(h)}},m=c=>{try{O(n.throw(c))}catch(h){g(h)}},O=c=>c.done?r(c.value):Promise.resolve(c.value).then(u,m);O((n=n.apply(e,o)).next())});import{u as s,g as Ne,c as K,w as Q,ao as Ge,x as me,H as ge,h as Me,d as Ye,J as Ue,r as ve,f as J,o as We,Y as ue,a6 as Fe,a7 as le,l as He,ag as Te,ah as we,N as fe,Z as Ke,F as Xe,a8 as Ie,ab as qe,aa as ze,an as Je}from"./vue-aed314e3.js";import{b as Qe,n as Ze,c as et,o as tt,e as nt,g as st,f as at,p as ot,q as rt,r as it,B as ct,C as ut}from"./FormItem.vue_vue_type_script_lang-39d09a3e.js";import{a as lt,x as Y,ay as Z,ao as M,aQ as ft,A as Be,aR as Oe,aN as de,d as _e,t as dt,p as D,f as pt,aG as mt}from"./index.js";import{ah as Se,e as re,k as oe,s as X,ak as pe,au as De,d as ee,v as Pe,f as q,V as ht,X as bt,a6 as yt,aa as At,A as te,aO as gt,aT as vt,ay as Ft,aB as Tt,aU as wt,ax as It,al as ke,aC as Ot,aV as Dt,aW as Pt,aD as Bt,aX as ie,aY as Ve,a3 as _t}from"./antd-f259b82a.js";import{b as St}from"./index-4f5bc708.js";import{S as kt}from"./index-7fe9c1e2.js";import{C as Vt}from"./index-6811a03f.js";lt();const xt=["DatePicker","MonthPicker","WeekPicker","TimePicker"];function jt(){return[...xt,"RangePicker"]}const xe=["Input","InputPassword","InputNumber","InputSearch","InputTextArea"];function Ct(e,o){return e&&xe.includes(e)&&o&&Se(o)?`${o}`:o}const je=jt();function Et(e,o,n){const r=/^\[(.+)\]$/;if(r.test(e)){const g=e.match(r);if(g&&g[1]){const u=g[1].split(",");return o=Array.isArray(o)?o:[o],u.forEach((m,O)=>{X(n,m.trim(),o[O])}),!0}}}function Rt(e,o,n){const r=/^\{(.+)\}$/;if(r.test(e)){const g=e.match(r);if(g&&g[1]){const u=g[1].split(",");return o=Y(o)?o:{},u.forEach(m=>{X(n,m.trim(),o[m.trim()])}),!0}}}function $t({defaultValueRef:e,getSchema:o,formModel:n,getProps:r}){function g(c){var I,_;if(!Y(c))return{};const h={};for(const P of Object.entries(c)){let[,f]=P;const[p]=P;if(!p||Z(f)&&f.length===0||re(f))continue;const S=s(r).transformDateFunc;Y(f)&&(f=S==null?void 0:S(f)),Z(f)&&((I=f[0])!=null&&I.format)&&((_=f[1])!=null&&_.format)&&(f=f.map(A=>S==null?void 0:S(A))),oe(f)&&(f===""?f=void 0:f=f.trim()),!Et(p,f,h)&&!Rt(p,f,h)&&X(h,p,f)}return u(h)}function u(c){const h=s(r).fieldMapToTime;if(!h||!Array.isArray(h))return c;for(const[I,[_,P],f="YYYY-MM-DD"]of h){if(!I||!_||!P)continue;if(!pe(c,I)){De(c,I);continue}const[p,S]=pe(c,I),[A,T]=Array.isArray(f)?f:[f,f];!ee(p)&&!Pe(p)&&X(c,_,m(p,A)),!ee(S)&&!Pe(S)&&X(c,P,m(S,T)),De(c,I)}return c}function m(c,h){return h==="timestamp"?M(c).unix():h==="timestampStartDay"?M(c).startOf("day").unix():M(c).format(h)}function O(){const c=s(o),h={};c.forEach(I=>{const{defaultValue:_,defaultValueObj:P}=I,f=Object.keys(P||{});f.length&&f.map(p=>{h[p]=P[p],n[p]===void 0&&(n[p]=P[p])}),ee(_)||(h[I.field]=_,n[I.field]===void 0&&(n[I.field]=_))}),e.value=q(h)}return{handleFormValues:g,initDefault:O}}const H=24;function Lt({advanceState:e,emit:o,getProps:n,getSchema:r,formModel:g,defaultValueRef:u}){const m=Ne(),{realWidthRef:O,screenEnum:c,screenRef:h}=ft(),I=K(()=>{if(!e.isAdvanced)return 0;const A=s(n).emptySpan||0;if(Se(A))return A;if(Y(A)){const{span:T=0}=A,j=s(h);return A[j.toLowerCase()]||T||0}return 0}),_=Be(p,30);Q([()=>s(r),()=>e.isAdvanced,()=>s(O)],()=>{const{showAdvancedButton:A}=s(n);A&&_()},{immediate:!0});function P(A,T=0,j=!1){const $=s(O),L=parseInt(A.md)||parseInt(A.xs)||parseInt(A.sm)||A.span||H,k=parseInt(A.lg)||L,N=parseInt(A.xl)||k,G=parseInt(A.xxl)||N;return $<=c.LG?T+=L:$<c.XL?T+=k:$<c.XXL?T+=N:T+=G,j?(e.hideAdvanceBtn=!1,T<=H*2?(e.hideAdvanceBtn=!0,e.isAdvanced=!0):T>H*2&&T<=H*(s(n).autoAdvancedLine||3)?e.hideAdvanceBtn=!1:e.isLoad||(e.isLoad=!0,e.isAdvanced=!e.isAdvanced),{isAdvanced:e.isAdvanced,itemColSum:T}):T>H*(s(n).alwaysShowLines||1)?{isAdvanced:e.isAdvanced,itemColSum:T}:{isAdvanced:!0,itemColSum:T}}const f=Ge({});function p(){var $;let A=0,T=0;const{baseColProps:j={}}=s(n);for(const L of s(r)){const{show:k,colProps:N}=L;let G=!0;if(ht(k)&&(G=k),re(k)&&(G=k({schema:L,model:g,field:L.field,values:R(R({},s(u)),g)})),G&&(N||j)){const{itemColSum:U,isAdvanced:W}=P(R(R({},j),N),A);A=U||0,W&&(T=A),f[L.field]=W}}($=m==null?void 0:m.proxy)==null||$.$forceUpdate(),e.actionSpan=T%H+s(I),P(s(n).actionColOptions||{span:H},A,!0),o("advanced-change")}function S(){e.isAdvanced=!e.isAdvanced}return{handleToggleAdvanced:S,fieldsIsAdvancedMap:f}}function Nt(e,o={}){const n=/^\[(.+)\]$/;if(n.test(e)){const r=e.match(n);if(r&&r[1]){const g=r[1].split(",");if(!g.length)return;const u=[];return g.forEach((m,O)=>{X(u,O,o[m.trim()])}),u.filter(Boolean).length?u:void 0}}}function Gt(e,o={}){const n=/^\{(.+)\}$/;if(n.test(e)){const r=e.match(n);if(r&&r[1]){const g=r[1].split(",");if(!g.length)return;const u={};return g.forEach(m=>{X(u,m.trim(),o[m.trim()])}),Object.values(u).filter(Boolean).length?u:void 0}}}function Mt({emit:e,getProps:o,formModel:n,getSchema:r,defaultValueRef:g,formElRef:u,schemaRef:m,handleFormValues:O}){function c(){return x(this,null,function*(){const{resetFunc:t,submitOnReset:a}=s(o);t&&re(t)&&(yield t()),s(u)&&(Object.keys(n).forEach(i=>{const b=s(r).find(V=>V.field===i),F=b==null?void 0:b.defaultValueObj,B=Object.keys(F||{});B.length&&B.map(V=>{n[V]=F[V]}),n[i]=Yt(b,g,i)}),me(()=>N()),e("reset",ge(n)),a&&U())})}const h=()=>s(r).map(t=>[...t.fields||[],t.field]).flat(1).filter(Boolean);function I(t){return x(this,null,function*(){if(Object.keys(t).length===0)return;const a=h(),v=".",i=a.filter(F=>String(F).indexOf(v)>=0),b=[];a.forEach(F=>{const B=s(r).find(y=>y.field===F);let V=pe(t,F);const ce=Reflect.has(t,F);V=Ct(B==null?void 0:B.component,V);const{componentProps:ne}=B||{};let C=ne;typeof ne=="function"&&(C=C({formModel:s(n),formActionType:W}));const d=Nt(F,t)||Gt(F,t);if(ce||d){const y=d||V;if(j(F))if(Array.isArray(y)){const w=[];for(const E of y)w.push(E?M(E):null);s(n)[F]=w}else s(n)[F]=y?C!=null&&C.valueFormat?y:M(y):null;else s(n)[F]=y;C!=null&&C.onChange&&(C==null||C.onChange(y)),b.push(F)}else i.forEach(y=>{try{const w=y.split(".").reduce((E,z)=>E[z],t);Oe(w)&&(s(n)[y]=s(w),b.push(y))}catch(w){Oe(g.value[y])&&(s(n)[y]=q(s(g.value[y])))}})}),$(b).catch(F=>{})})}function _(t){return x(this,null,function*(){const a=q(s(r));if(!t)return;let v=oe(t)?[t]:t;oe(t)&&(v=[t]);for(const i of v)P(i,a);m.value=a})}function P(t,a){if(oe(t)){const v=a.findIndex(i=>i.field===t);v!==-1&&(delete n[t],a.splice(v,1))}}function f(t,a,v=!1){return x(this,null,function*(){const i=q(s(r)),b=Array.isArray(t)?t.map(V=>V.field):[t.field];if(i.find(V=>b.includes(V.field))){de("There are schemas that have already been added");return}const F=i.findIndex(V=>V.field===a),B=Y(t)?[t]:t;!a||F===-1||v?v?i.unshift(...B):i.push(...B):F!==-1&&i.splice(F+1,0,...B),m.value=i,A(t)})}function p(t){return x(this,null,function*(){let a=[];if(Y(t)&&a.push(t),Z(t)&&(a=[...t]),!a.every(i=>i.component==="Divider"||Reflect.has(i,"field")&&i.field)){de("All children of the form Schema array that need to be updated must contain the `field` field");return}m.value=a})}function S(t){return x(this,null,function*(){let a=[];if(Y(t)&&a.push(t),Z(t)&&(a=[...t]),!a.every(b=>b.component==="Divider"||Reflect.has(b,"field")&&b.field)){de("All children of the form Schema array that need to be updated must contain the `field` field");return}const i=[];s(r).forEach(b=>{let F;if(a.forEach(B=>{b.field===B.field&&(F=B)}),F!==void 0&&b.field===F.field){const B=_e(b,F);i.push(B)}else i.push(b)}),A(i),m.value=bt(i,"field")})}function A(t){let a=[];Y(t)&&a.push(t),Z(t)&&(a=[...t]);const v={},i=T();a.forEach(b=>{b.component!="Divider"&&Reflect.has(b,"field")&&b.field&&!ee(b.defaultValue)&&(!(b.field in i)||ee(i[b.field]))&&(v[b.field]=b.defaultValue)}),I(v)}function T(){return s(u)?O(ge(s(n))):{}}function j(t){return s(r).some(a=>a.field===t&&a.component?je.includes(a.component):!1)}function $(t){return x(this,null,function*(){var v;const a=yield(v=s(u))==null?void 0:v.validateFields(t);return O(a)})}function L(t){return x(this,null,function*(){var a;yield(a=s(u))==null?void 0:a.setProps(t)})}function k(t){return x(this,null,function*(){var i;let a;t===void 0?a=h():a=t===Array.isArray(t)?t:void 0;const v=yield(i=s(u))==null?void 0:i.validate(a);return O(v)})}function N(t){return x(this,null,function*(){var a;yield(a=s(u))==null?void 0:a.clearValidate(t)})}function G(t,a){return x(this,null,function*(){var v;yield(v=s(u))==null?void 0:v.scrollToField(t,a)})}function U(t){return x(this,null,function*(){t&&t.preventDefault();const{submitFunc:a}=s(o);if(a&&re(a)){yield a();return}if(s(u))try{const i=yield k();e("submit",i)}catch(i){if((i==null?void 0:i.outOfDate)===!1&&(i!=null&&i.errorFields))return;throw new Error(i)}})}const W={getFieldsValue:T,setFieldsValue:I,resetFields:c,updateSchema:S,resetSchema:p,setProps:L,removeSchemaByField:_,appendSchemaByField:f,clearValidate:N,validateFields:$,validate:k,submit:U,scrollToField:G};return{handleSubmit:U,clearValidate:N,validate:k,validateFields:$,getFieldsValue:T,updateSchema:S,resetSchema:p,appendSchemaByField:f,removeSchemaByField:_,resetFields:c,setFieldsValue:I,scrollToField:G}}function Yt(e,o,n){let r=q(o.value[n]);return Wt(e)?r||"":(!r&&e&&Ut(e)&&(r=[0,0]),!r&&e&&e.component==="ApiTree"&&(r=[]),r)}function Ut(e){if(e.component==="Slider"&&e.componentProps&&"range"in e.componentProps)return!0}function Wt(e){return(e==null?void 0:e.component)&&xe.includes(e.component)}const Ht=Symbol();function Kt(e){return dt(e,Ht)}function Xt(g){return x(this,arguments,function*({getSchema:e,getProps:o,formElRef:n,isInitedDefault:r}){Me(()=>x(this,null,function*(){if(s(r)||!s(o).autoFocusFirstItem)return;yield me();const u=s(e),m=s(n),O=m==null?void 0:m.$el;if(!m||!O||!u||u.length===0)return;const c=u[0];if(!c.component||!c.component.includes("Input"))return;const h=O.querySelector(".ant-row:first-child input");h&&(h==null||h.focus())}))})}const qt={model:{type:Object,default:()=>({})},labelWidth:{type:[Number,String],default:0},fieldMapToTime:{type:Array,default:()=>[]},compact:D.bool,schemas:{type:Array,default:()=>[]},mergeDynamicData:{type:Object,default:null},baseRowStyle:{type:Object},baseColProps:{type:Object},autoSetPlaceHolder:D.bool.def(!0),autoSubmitOnEnter:D.bool.def(!1),submitOnReset:D.bool,submitOnChange:D.bool,size:D.oneOf(["default","small","large"]).def("default"),disabled:D.bool,emptySpan:{type:[Number,Object],default:0},showAdvancedButton:D.bool,transformDateFunc:{type:Function,default:e=>{var o,n;return(n=(o=e==null?void 0:e.format)==null?void 0:o.call(e,"YYYY-MM-DD HH:mm:ss"))!=null?n:e}},rulesMessageJoinLabel:D.bool.def(!0),autoAdvancedLine:D.number.def(3),alwaysShowLines:D.number.def(1),showActionButtonGroup:D.bool.def(!0),actionColOptions:Object,showResetButton:D.bool.def(!0),autoFocusFirstItem:D.bool,resetButtonOptions:Object,showSubmitButton:D.bool.def(!0),submitButtonOptions:Object,resetFunc:Function,submitFunc:Function,hideRequiredMark:D.bool,labelCol:Object,layout:D.oneOf(["horizontal","vertical","inline"]).def("horizontal"),tableAction:{type:Object},wrapperCol:Object,colon:D.bool,labelAlign:D.string,rowProps:Object},an=Ye({name:"BasicForm",__name:"BasicForm",props:qt,emits:["advanced-change","reset","submit","register","field-value-change"],setup(e,{expose:o,emit:n}){const r=e,g=Ue(),u=ve({}),m=St(),O=ve({isAdvanced:!0,hideAdvanceBtn:!1,isLoad:!1,actionSpan:6}),c=J({}),h=J(!1),I=J(),_=J(null),P=J(null),{prefixCls:f}=pt("basic-form"),p=K(()=>R(R({},r),s(I))),S=K(()=>[f,{[`${f}--compact`]:s(p).compact}]),A=K(()=>{const{baseRowStyle:d={},rowProps:y}=s(p);return R({style:d},y)}),T=K(()=>R(R(R({},g),r),s(p))),j=K(()=>{var y;const d=s(_)||s(p).schemas;for(const w of d){const{defaultValue:E,component:z,componentProps:se={},isHandleDateDefaultValue:Ce=!0}=w;if(Ce&&E&&z&&je.includes(z)){const Ee={schema:w,tableAction:(y=r.tableAction)!=null?y:{},formModel:u,formActionType:{}},ae=se?typeof se=="function"?se(Ee).valueFormat:se.valueFormat:null;if(!Array.isArray(E))w.defaultValue=ae?M(E).format(ae):M(E);else{const he=[];E.forEach(be=>{he.push(ae?M(be).format(ae):M(be))}),w.defaultValue=he}}}return s(p).showAdvancedButton?q(d.filter(w=>w.component!=="Divider")):q(d)});Lt({advanceState:O,emit:n,getProps:p,getSchema:j,formModel:u,defaultValueRef:c});const{handleFormValues:$,initDefault:L}=$t({getProps:p,defaultValueRef:c,getSchema:j,formModel:u});Xt({getSchema:j,getProps:p,isInitedDefault:h,formElRef:P});const{handleSubmit:k,setFieldsValue:N,clearValidate:G,validate:U,validateFields:W,getFieldsValue:t,updateSchema:a,resetSchema:v,appendSchemaByField:i,removeSchemaByField:b,resetFields:F,scrollToField:B}=Mt({emit:n,getProps:p,formModel:u,getSchema:j,defaultValueRef:c,formElRef:P,schemaRef:_,handleFormValues:$});Kt({resetAction:F,submitAction:k}),Q(()=>s(p).model,()=>{const{model:d}=s(p);d&&N(d)},{immediate:!0}),Q(()=>r.schemas,d=>{v(d!=null?d:[])}),Q(()=>j.value,d=>{me(()=>{var y;(y=m==null?void 0:m.redoModalHeight)==null||y.call(m)}),!s(h)&&d!=null&&d.length&&(L(),h.value=!0)}),Q(()=>u,Be(()=>{s(p).submitOnChange&&k()},300),{deep:!0});function V(d){return x(this,null,function*(){I.value=_e(s(I)||{},d)})}function ce(d,y,w){u[d]=y,n("field-value-change",d,y),w&&w.itemProps&&!w.itemProps.autoLink&&W([d]).catch(E=>{})}function ne(d){const{autoSubmitOnEnter:y}=s(p);if(y&&d.key==="Enter"&&d.target&&d.target instanceof HTMLElement){const w=d.target;w&&w.tagName&&w.tagName.toUpperCase()=="INPUT"&&k()}}const C={getFieldsValue:t,setFieldsValue:N,resetFields:F,updateSchema:a,resetSchema:v,setProps:V,removeSchemaByField:b,appendSchemaByField:i,clearValidate:G,validateFields:W,validate:U,submit:k,scrollToField:B};return K(()=>R(R({},p.value),O)),o(R({},C)),We(()=>{L(),n("register",C)}),(d,y)=>(ue(),Fe(s(At),ze(T.value,{class:S.value,ref_key:"formElRef",ref:P,model:u,onKeypress:Je(ne,["enter"])}),{default:le(()=>[He(s(yt),Te(we(A.value)),{default:le(()=>[fe(d.$slots,"formHeader"),(ue(!0),Ke(Xe,null,Ie(j.value,w=>(ue(),Fe(Qe,{key:w.field,tableAction:d.tableAction,formActionType:C,schema:w,formProps:p.value,allDefaultValues:c.value,formModel:u,setFormModel:ce},qe({_:2},[Ie(Object.keys(d.$slots),E=>({name:E,fn:le(z=>[fe(d.$slots,E,Te(we(z||{})))])}))]),1032,["tableAction","schema","formProps","allDefaultValues","formModel"]))),128)),fe(d.$slots,"formFooter")]),_:3},16)]),_:3},16,["class","model","onKeypress"]))}});const l=new Map;l.set("Input",te);l.set("InputGroup",te.Group);l.set("InputPassword",te.Password);l.set("InputSearch",te.Search);l.set("InputTextArea",te.TextArea);l.set("InputNumber",gt);l.set("AutoComplete",vt);l.set("ImageUpload",Ze);l.set("Select",Ft);l.set("ApiSelect",et);l.set("ApiTree",tt);l.set("TreeSelect",Tt);l.set("ApiTreeSelect",nt);l.set("ApiRadioGroup",st);l.set("Switch",wt);l.set("RadioButtonGroup",at);l.set("RadioGroup",It.Group);l.set("Checkbox",ke);l.set("CheckboxGroup",ke.Group);l.set("ApiCascader",ot);l.set("Cascader",Ot);l.set("Slider",Dt);l.set("Rate",Pt);l.set("Transfer",Bt);l.set("ApiTransfer",rt);l.set("DatePicker",ie);l.set("MonthPicker",ie.MonthPicker);l.set("RangePicker",ie.RangePicker);l.set("WeekPicker",ie.WeekPicker);l.set("TimePicker",Ve);l.set("TimeRangePicker",Ve.TimeRangePicker);l.set("StrengthMeter",kt);l.set("IconPicker",it);l.set("InputCountDown",Vt);l.set("Upload",ct);l.set("Divider",_t);l.set("CropperAvatar",ut);l.set("BasicTitle",mt);export{an as _};