FormItem-ffc5ecef.js 5.84 KB
var Q=Object.defineProperty,X=Object.defineProperties;var Y=Object.getOwnPropertyDescriptors;var B=Object.getOwnPropertySymbols;var Z=Object.prototype.hasOwnProperty,ee=Object.prototype.propertyIsEnumerable;var E=(e,u,m)=>u in e?Q(e,u,{enumerable:!0,configurable:!0,writable:!0,value:m}):e[u]=m,f=(e,u)=>{for(var m in u||(u={}))Z.call(u,m)&&E(e,m,u[m]);if(B)for(var m of B(u))ee.call(u,m)&&E(e,m,u[m]);return e},H=(e,u)=>X(e,Y(u));import{e as k,u as n,d as te,H as oe,v as se,f as g,i as ne,ad as J,A as le,E as ae}from"./vue-5a35c3f5.js";import{i as $}from"./componentMap-4d1c941b.js";import{aK as re,r as x,w as _,aE as K,c as ce,b7 as ie,b8 as de,b9 as fe,_ as ue}from"./index.js";import{N as me,c as z,s as he}from"./helper-95474dfc.js";import{bf as U,aA as pe,ay as be,T as ge}from"./antd-6b087f69.js";function ye(e,u){return k(()=>{const m=n(e),{labelCol:M={},wrapperCol:F={}}=m.itemProps||{},{labelWidth:L,disabledLabelWidth:p}=m,{labelWidth:w,labelCol:I,wrapperCol:D,layout:N}=n(u);if(!w&&!L&&!I||p)return M.style={textAlign:"left"},{labelCol:M,wrapperCol:F};let P=L||w;const O=f(f({},I),M),q=f(f({},D),F);return P&&(P=re(P)?`${P}px`:P),{labelCol:f({style:{width:P}},O),wrapperCol:f({style:{width:N==="vertical"?"100%":`calc(100% - ${P})`}},q)}})}function W(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!ne(e)}const Ce=te({name:"BasicFormItem",inheritAttrs:!1,props:{schema:{type:Object,default:()=>({})},formProps:{type:Object,default:()=>({})},allDefaultValues:{type:Object,default:()=>({})},formModel:{type:Object,default:()=>({})},setFormModel:{type:Function,default:null},tableAction:{type:Object},formActionType:{type:Object},isAdvanced:{type:Boolean}},setup(e,{slots:u}){const{t:m}=ce(),{schema:M,formProps:F}=oe(e),L=ye(M,F),p=k(()=>{const{allDefaultValues:o,formModel:t,schema:a}=e,{mergeDynamicData:r}=e.formProps;return{field:a.field,model:t,values:f(f(f({},r),o),t),schema:a}}),w=k(()=>{var l;const{schema:o,tableAction:t,formModel:a,formActionType:r}=e;let{componentProps:s={}}=o;return x(s)&&(s=(l=s({schema:o,tableAction:t,formModel:a,formActionType:r}))!=null?l:{}),o.component==="Divider"&&(s=Object.assign({type:"horizontal"},{orientation:"left",plain:!0},s)),s}),I=k(()=>{const{disabled:o}=e.formProps,{dynamicDisabled:t}=e.schema,{disabled:a=!1}=n(w);let r=!!o||a;return _(t)&&(r=t),x(t)&&(r=t(n(p))),r});function D(){const{show:o,ifShow:t}=e.schema,{showAdvancedButton:a}=e.formProps,r=a&&_(e.isAdvanced)?e.isAdvanced:!0;let s=!0,l=!0;return _(o)&&(s=o),_(t)&&(l=t),x(o)&&(s=o(n(p))),x(t)&&(l=t(n(p))),s=s&&r,{isShow:s,isIfShow:l}}function N(){var R;const{rules:o=[],component:t,rulesMessageJoinLabel:a,label:r,dynamicRules:s,required:l}=e.schema;if(x(s))return s(n(p));let c=ge(o);const{rulesMessageJoinLabel:S}=e.formProps,A=Reflect.has(e.schema,"rulesMessageJoinLabel")?a:S,C=z(t)+`${A?r:""}`;function b(d,i){const y=d.message||C;return i===void 0||de(i)||Array.isArray(i)&&i.length===0||typeof i=="string"&&i.trim()===""||typeof i=="object"&&Reflect.has(i,"checked")&&Reflect.has(i,"halfChecked")&&Array.isArray(i.checked)&&Array.isArray(i.halfChecked)&&i.checked.length===0&&i.halfChecked.length===0?Promise.reject(y):Promise.resolve()}const h=x(l)?l(n(p)):l;h&&(!c||c.length===0?c=[{required:h,validator:b}]:c.findIndex(i=>Reflect.has(i,"required"))===-1&&c.push({required:h,validator:b}));const j=c.findIndex(d=>Reflect.has(d,"required")&&!Reflect.has(d,"validator"));if(j!==-1){const d=c[j],{isShow:i}=D();if(i||(d.required=!1),t){Reflect.has(d,"type")||(d.type=t==="InputNumber"?"number":"string"),d.message=d.message||C,(t.includes("Input")||t.includes("Textarea"))&&(d.whitespace=!0);const y=(R=n(w))==null?void 0:R.valueFormat;he(d,t,y)}}const v=c.findIndex(d=>d.max);return v!==-1&&!c[v].validator&&(c[v].message=c[v].message||m("component.form.maxTip",[c[v].max])),c}function P(){var i;const{renderComponentContent:o,component:t,field:a,changeEvent:r="change",valueField:s}=e.schema,l=t&&["Switch","Checkbox"].includes(t),c=`on${fe(r)}`,S={[c]:(...y)=>{const[T]=y;h[c]&&h[c](...y);const V=T?T.target:null,G=V?l?V.checked:V.value:T;e.setFormModel(a,G,e.schema)}},A=$.get(t),{autoSetPlaceHolder:C,size:b}=e.formProps,h=H(f({allowClear:!0,getPopupContainer:y=>y.parentNode,size:b},n(w)),{disabled:n(I)});!h.disabled&&C&&t!=="RangePicker"&&t&&(h.placeholder=((i=n(w))==null?void 0:i.placeholder)||z(t)),h.codeField=a,h.formValues=n(p);const v={[s||(l?"checked":"value")]:e.formModel[a]},R=f(f(f({},h),S),v);if(!o)return g(A,R,null);const d=x(o)?f({},o(n(p),{disabled:n(I)})):{default:()=>o};return g(A,R,W(d)?d:{default:()=>[d]})}function O(){const{label:o,helpMessage:t,helpComponentProps:a,subLabel:r}=e.schema,s=r?g("span",null,[o,ae(" "),g("span",{class:"text-secondary"},[r])]):o,l=x(t)?t(n(p)):t;return!l||Array.isArray(l)&&l.length===0?s:g("span",null,[s,g(ie,J({placement:"top",class:"mx-1",text:l},a),null)])}function q(){const{itemProps:o,slot:t,render:a,field:r,suffix:s,component:l}=e.schema,{labelCol:c,wrapperCol:S}=n(L),{colon:A}=e.formProps,C={disabled:n(I)};if(l==="Divider"){let b;return g(U,{span:24},{default:()=>[g(pe,n(w),W(b=O())?b:{default:()=>[b]})]})}else{const b=()=>t?K(u,t,n(p),C):a?a(n(p),C):P(),h=!!s,j=x(s)?s(n(p)):s;return me.includes(l)&&e.schema&&(e.schema.itemProps=f({autoLink:!1},e.schema.itemProps)),g(be.Item,J({name:r,colon:A,class:{"suffix-item":h}},o,{label:O(),rules:N(),labelCol:c,wrapperCol:S}),{default:()=>[g("div",{style:"display:flex"},[g("div",{style:"flex:1;"},[b()]),h&&g("span",{class:"suffix"},[j])])]})}}return()=>{let o;const{colProps:t={},colSlot:a,renderColContent:r,component:s}=e.schema;if(!$.has(s))return null;const{baseColProps:l={}}=e.formProps,c=f(f({},l),t),{isIfShow:S,isShow:A}=D(),C=n(p),b={disabled:n(I)};return S&&se(g(U,c,W(o=(()=>a?K(u,a,C,b):r?r(C,b):q())())?o:{default:()=>[o]}),[[le,A]])}}}),ve=ue(Ce,[["__file","E:/allcode/erp/test7901/order-erp-front/src/components/Form/src/components/FormItem.vue"]]);export{ve as F};