@gopowerteam/form-render 0.0.18 → 0.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("vue"),d=require("@arco-design/web-vue"),$=require("dayjs"),D=require("./resolver.cjs");const O=Symbol("ArcoConfigProvider"),j="arco",M="$arco",F=e=>{var r,t,a;const u=l.getCurrentInstance(),c=l.inject(O,void 0),n=(a=(t=c==null?void 0:c.prefixCls)!=null?t:(r=u==null?void 0:u.appContext.config.globalProperties[M])==null?void 0:r.classPrefix)!=null?a:j;return e?`${n}-${e}`:n},z=Object.prototype.toString;function x(e){return z.call(e)==="[object Number]"&&e===e}var w=(e,r)=>{for(const[t,a]of r)e[t]=a;return e};const P=l.defineComponent({name:"IconDown",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:e=>["butt","round","square"].includes(e)},strokeLinejoin:{type:String,default:"miter",validator:e=>["arcs","bevel","miter","miter-clip","round"].includes(e)},rotate:Number,spin:Boolean},emits:{click:e=>!0},setup(e,{emit:r}){const t=F("icon"),a=l.computed(()=>[t,`${t}-down`,{[`${t}-spin`]:e.spin}]),u=l.computed(()=>{const n={};return e.size&&(n.fontSize=x(e.size)?`${e.size}px`:e.size),e.rotate&&(n.transform=`rotate(${e.rotate}deg)`),n});return{cls:a,innerStyle:u,onClick:n=>{r("click",n)}}}}),R=["stroke-width","stroke-linecap","stroke-linejoin"],B=l.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1),T=[B];function q(e,r,t,a,u,c){return l.openBlock(),l.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:l.normalizeClass(e.cls),style:l.normalizeStyle(e.innerStyle),"stroke-width":e.strokeWidth,"stroke-linecap":e.strokeLinecap,"stroke-linejoin":e.strokeLinejoin,onClick:r[0]||(r[0]=(...n)=>e.onClick&&e.onClick(...n))},T,14,R)}var v=w(P,[["render",q]]);const L=Object.assign(v,{install:(e,r)=>{var t;const a=(t=r==null?void 0:r.iconPrefix)!=null?t:"";e.component(a+v.name,v)}}),U=l.defineComponent({name:"IconUp",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:e=>["butt","round","square"].includes(e)},strokeLinejoin:{type:String,default:"miter",validator:e=>["arcs","bevel","miter","miter-clip","round"].includes(e)},rotate:Number,spin:Boolean},emits:{click:e=>!0},setup(e,{emit:r}){const t=F("icon"),a=l.computed(()=>[t,`${t}-up`,{[`${t}-spin`]:e.spin}]),u=l.computed(()=>{const n={};return e.size&&(n.fontSize=x(e.size)?`${e.size}px`:e.size),e.rotate&&(n.transform=`rotate(${e.rotate}deg)`),n});return{cls:a,innerStyle:u,onClick:n=>{r("click",n)}}}}),E=["stroke-width","stroke-linecap","stroke-linejoin"],W=l.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1),A=[W];function Y(e,r,t,a,u,c){return l.openBlock(),l.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:l.normalizeClass(e.cls),style:l.normalizeStyle(e.innerStyle),"stroke-width":e.strokeWidth,"stroke-linecap":e.strokeLinecap,"stroke-linejoin":e.strokeLinejoin,onClick:r[0]||(r[0]=(...n)=>e.onClick&&e.onClick(...n))},A,14,E)}var S=w(U,[["render",Y]]);const G=Object.assign(S,{install:(e,r)=>{var t;const a=(t=r==null?void 0:r.iconPrefix)!=null?t:"";e.component(a+S.name,S)}}),C={id:Symbol("ID"),source:Symbol("Source")};function K(e,r){const t=l.ref({});return e==null||e.forEach(u=>{let c=null;u.default&&(c=(typeof u.default=="function"?u.default():u.default)||null),r&&r[u.key]!==void 0&&(c=r[u.key]),t.value[u.key]=c}),[t,u=>{t.value=u}]}function Q(e){function r(t,a){return e!=null&&e.disabledDate?e.disabledDate(t,a):!1}return(t,a)=>{switch(e==null?void 0:e.type){case"week":return l.createVNode(d.WeekPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"month":return l.createVNode(d.MonthPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"quarter":return l.createVNode(d.QuarterPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"year":return l.createVNode(d.YearPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"date":default:return l.createVNode(d.DatePicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)}}}function X(e){return(r,t)=>{switch(e==null?void 0:e.type){case"number":return l.createVNode(d.InputNumber,{modelValue:r[t.key],"onUpdate:modelValue":a=>r[t.key]=a,hideButton:!0,"read-only":e==null?void 0:e.readonly,placeholder:e==null?void 0:e.placeholder,allowClear:e==null?void 0:e.clearable},null);case"string":default:return l.createVNode(d.Input,{modelValue:r[t.key],"onUpdate:modelValue":a=>r[t.key]=a,placeholder:e==null?void 0:e.placeholder,readonly:e==null?void 0:e.readonly,allowClear:e==null?void 0:e.clearable},null)}}}function y(e){return!!e&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function H(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}const V=new WeakMap;function J(e){let r,t=!1;const a=l.ref(new Map),u=n=>{a.value=n,e.cache!==!1&&V.set(e.options,n)};switch(!0){case e.options instanceof Function:{if(V.has(e.options)){a.value=V.get(e.options);break}const n=e.options();y(n)?n.then(u):u(n);break}case y(e.options):{e.options.then(n=>a.value=n);break}default:a.value=e.options}function c(){if(!e.autoSumbit||!r)return;let n=r;for(;n&&n.$el.tagName!=="FORM";)n=n.$parent;n&&n.$el&&n.$el.dispatchEvent(new Event("submit"))}return(n,f)=>{let s;return e.default&&!t&&(n[f.key]=e.default,t=!0),l.createVNode(d.Select,{ref:i=>r=i,multiple:e.multiple,modelValue:n[f.key],"onUpdate:modelValue":i=>n[f.key]=i,placeholder:e.placeholder,allowClear:e.clearable,maxTagCount:e.maxTagCount??2,onChange:c},H(s=Array.from(a.value.entries()).map(([i,h])=>l.createVNode(d.Option,{key:i,value:i,label:h},null)))?s:{default:()=>[s]})}}function Z(e){function r(){e!=null&&e.autoSumbit}return(t,a)=>(e!=null&&e.default&&(t[a.key]=e.default),l.createVNode(d.Switch,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,checkedText:(e==null?void 0:e.openLabel)??"是",uncheckedText:(e==null?void 0:e.closeLabel)??"否",checkedValue:(e==null?void 0:e.openValue)??!0,uncheckedValue:(e==null?void 0:e.closeValue)??!1,onChange:r},null))}function p(e){return(r,t)=>{let a=[];function u(f){a=f}function c(f){if(f&&f.length===2){const[s,i]=f.sort(),h=$(s).startOf("days"),k=$(i).endOf("days");r[t.key]=[h.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD"),k.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD")]}}function n(f){return e!=null&&e.disabledDate?e.disabledDate(a,f):!1}return l.createVNode("div",null,[l.createVNode(d.RangePicker,{style:{width:"300px"},modelValue:r[t.key],"onUpdate:modelValue":f=>r[t.key]=f,onSelect:u,onChange:c,mode:e==null?void 0:e.type,allowClear:e==null?void 0:e.clearable,"disabled-date":n,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)])}}function ee(e){return(r,t)=>l.createVNode(d.Textarea,{modelValue:r[t.key],"onUpdate:modelValue":a=>r[t.key]=a,placeholder:e==null?void 0:e.placeholder,autoSize:e==null?void 0:e.autosize,maxLength:e==null?void 0:e.maxLength},null)}const g=new WeakMap;function te(e){let r,t=!1;const a=l.ref([]),u=n=>{a.value=n,e.cache!==!1&&g.set(e.options,n)};switch(!0){case e.options instanceof Function:{if(g.has(e.options)){a.value=g.get(e.options);break}const n=e.options();y(n)?n.then(u):u(n);break}case y(e.options):{e.options.then(n=>a.value=n);break}default:a.value=e.options}function c(){if(!e.autoSumbit||!r)return;let n=r;for(;n&&n.$el.tagName!=="FORM";)n=n.$parent;n&&n.$el&&n.$el.dispatchEvent(new Event("submit"))}return(n,f)=>(e.default&&!t&&(n[f.key]=e.default,t=!0),l.createVNode(d.TreeSelect,{ref:s=>r=s,multiple:e.multiple,modelValue:n[f.key],"onUpdate:modelValue":s=>n[f.key]=s,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:c,data:a.value,fieldNames:e.fieldNames},null))}function re(e){return r=>e(r)}function le(){return{input:X,textarea:ee,select:J,treeSelect:te,date:Q,switch:Z,dateRange:p,render:re}}function ae(e,r){r.render||(r.render=a=>a.input());const t=r.render({...le()});return{default:()=>t(e,r)}}function ne(e,r){return l.h(d.FormItem,{field:r.key,label:r.title},ae(e,r))}function N(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}const I=l.defineComponent({props:{form:{type:Object,required:!0},value:{type:Object,required:!1},layout:{type:String,required:!1,default:"horizontal"},columns:{type:Number,required:!1},modelValue:{type:Object,required:!1},minWidth:{type:Number,required:!1,default:320},name:{type:String,required:!1,default:"form"},submitable:{type:Boolean,required:!1,default:!1},searchable:{type:Boolean,required:!1,default:!1},footer:{type:Boolean,required:!1,default:!1}},emits:["submit","cancel","update:model-value"],expose:["formSource","updateFormField","updateFormSource","reset"],setup(e){const r=Math.random().toString(32).slice(2).toUpperCase(),t=l.ref(),[a,u]=K(e.form,e.modelValue||e.value),c=l.ref(e.columns||0),n=l.ref(!0),f=()=>n.value=!n.value;l.provide(C.id,r),l.provide(C.source,a);const s=l.computed(()=>{if(!c.value)return 1;const o=e.form.reduce((m,b)=>m+((b==null?void 0:b.span)||1),0);return c.value-o%c.value}),i=l.computed(()=>e.form.reduce((o,m)=>(m.rule&&(o[m.key]=m.rule),o),{}));function h(){var m;const o=(m=t.value)==null?void 0:m.$el;o&&(c.value=Math.floor(o.offsetWidth/e.minWidth))}l.onMounted(()=>{h()});function k(o,m){a.value[o]=m,u({...a})}function _(){var o;(o=t.value)==null||o.resetFields()}return window.addEventListener("resize",h),{formId:r,formSource:a,formInstance:t,formColumns:c,formRules:i,formCollspased:n,formActiosSpan:s,toggleFormCollapsed:f,updateFormField:k,updateFormSource:u,reset:_}},render(){const e=()=>{this.$emit("submit",this.formSource),this.$emit("update:model-value",this.formSource)},r=()=>{const t=[],a=this.footer?{span:this.formColumns}:{span:this.formActiosSpan};if(this.searchable&&(t.push(l.createVNode(d.Button,{type:"primary",htmlType:"submit"},{default:()=>[l.createTextVNode("搜索")]})),t.push(l.createVNode(d.Button,{type:"secondary",onClick:()=>{var u;return(u=this.formInstance)==null?void 0:u.resetFields()}},{default:()=>[l.createTextVNode("重置")]}))),this.submitable&&(t.push(l.createVNode(d.Button,{type:"primary",htmlType:"submit"},{default:()=>[l.createTextVNode("提交")]})),t.push(l.createVNode(d.Button,{type:"secondary",onClick:()=>this.$emit("cancel")},{default:()=>[l.createTextVNode("取消")]}))),this.form.some(u=>!!u.collapsed)&&t.push(l.createVNode(d.Button,{onClick:this.toggleFormCollapsed},{default:()=>this.formCollspased?"展开":"收起",icon:()=>this.formCollspased?l.createVNode(L,null,null):l.createVNode(G,null,null)})),this.$slots.actions&&t.push(...this.$slots.actions()),t.length)return l.createVNode(d.GridItem,a,{default:()=>[l.createVNode(d.FormItem,{hideLabel:!0,contentClass:this.footer?"form-footer":""},{default:()=>[l.createVNode(d.Space,null,N(t)?t:{default:()=>[t]})]})]})};return l.createVNode("div",{class:"form-render"},[l.createVNode(d.Form,l.mergeProps({layout:this.$props.layout,rules:this.formRules,onSubmitSuccess:e},{name:this.name},{"auto-label-width":!0,ref:t=>this.formInstance=t,model:this.formSource}),{default:()=>[l.createVNode(d.Grid,{cols:this.formColumns,"col-gap":10,"rol-gap":10},{default:()=>[this.form.filter(t=>this.formCollspased?!t.collapsed:!0).map(t=>{let a;return l.createVNode(d.GridItem,{span:t.span},N(a=ne(this.formSource,t))?a:{default:()=>[a]})}),r()]})]})])}});function ue(e){return e}function ce(e){const r=l.getCurrentInstance(),t=l.ref();function a(){var c,n;const u=(n=(c=r==null?void 0:r.proxy)==null?void 0:c.$refs)==null?void 0:n[e];u&&(t.value=u)}return l.onMounted(a),l.onUpdated(a),t}const de={install(e,r){e.component("FormRender",I)}};exports.FormRenderResolver=D.FormRenderResolver;exports.FormRender=I;exports.default=de;exports.defineForm=ue;exports.useForm=ce;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("vue"),f=require("@arco-design/web-vue"),$=require("dayjs"),D=require("./resolver.cjs");const O=Symbol("ArcoConfigProvider"),j="arco",M="$arco",F=e=>{var r,t,a;const u=l.getCurrentInstance(),d=l.inject(O,void 0),n=(a=(t=d==null?void 0:d.prefixCls)!=null?t:(r=u==null?void 0:u.appContext.config.globalProperties[M])==null?void 0:r.classPrefix)!=null?a:j;return e?`${n}-${e}`:n},z=Object.prototype.toString;function x(e){return z.call(e)==="[object Number]"&&e===e}var w=(e,r)=>{for(const[t,a]of r)e[t]=a;return e};const P=l.defineComponent({name:"IconDown",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:e=>["butt","round","square"].includes(e)},strokeLinejoin:{type:String,default:"miter",validator:e=>["arcs","bevel","miter","miter-clip","round"].includes(e)},rotate:Number,spin:Boolean},emits:{click:e=>!0},setup(e,{emit:r}){const t=F("icon"),a=l.computed(()=>[t,`${t}-down`,{[`${t}-spin`]:e.spin}]),u=l.computed(()=>{const n={};return e.size&&(n.fontSize=x(e.size)?`${e.size}px`:e.size),e.rotate&&(n.transform=`rotate(${e.rotate}deg)`),n});return{cls:a,innerStyle:u,onClick:n=>{r("click",n)}}}}),T=["stroke-width","stroke-linecap","stroke-linejoin"],L=l.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1),R=[L];function B(e,r,t,a,u,d){return l.openBlock(),l.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:l.normalizeClass(e.cls),style:l.normalizeStyle(e.innerStyle),"stroke-width":e.strokeWidth,"stroke-linecap":e.strokeLinecap,"stroke-linejoin":e.strokeLinejoin,onClick:r[0]||(r[0]=(...n)=>e.onClick&&e.onClick(...n))},R,14,T)}var v=w(P,[["render",B]]);const q=Object.assign(v,{install:(e,r)=>{var t;const a=(t=r==null?void 0:r.iconPrefix)!=null?t:"";e.component(a+v.name,v)}}),U=l.defineComponent({name:"IconUp",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:e=>["butt","round","square"].includes(e)},strokeLinejoin:{type:String,default:"miter",validator:e=>["arcs","bevel","miter","miter-clip","round"].includes(e)},rotate:Number,spin:Boolean},emits:{click:e=>!0},setup(e,{emit:r}){const t=F("icon"),a=l.computed(()=>[t,`${t}-up`,{[`${t}-spin`]:e.spin}]),u=l.computed(()=>{const n={};return e.size&&(n.fontSize=x(e.size)?`${e.size}px`:e.size),e.rotate&&(n.transform=`rotate(${e.rotate}deg)`),n});return{cls:a,innerStyle:u,onClick:n=>{r("click",n)}}}}),E=["stroke-width","stroke-linecap","stroke-linejoin"],W=l.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1),A=[W];function Y(e,r,t,a,u,d){return l.openBlock(),l.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:l.normalizeClass(e.cls),style:l.normalizeStyle(e.innerStyle),"stroke-width":e.strokeWidth,"stroke-linecap":e.strokeLinecap,"stroke-linejoin":e.strokeLinejoin,onClick:r[0]||(r[0]=(...n)=>e.onClick&&e.onClick(...n))},A,14,E)}var S=w(U,[["render",Y]]);const G=Object.assign(S,{install:(e,r)=>{var t;const a=(t=r==null?void 0:r.iconPrefix)!=null?t:"";e.component(a+S.name,S)}}),C={id:Symbol("ID"),source:Symbol("Source")};function K(e,r){const t=l.ref({});return e==null||e.forEach(u=>{let d=null;u.default&&(d=(typeof u.default=="function"?u.default():u.default)||null),r&&r[u.key]!==void 0&&(d=r[u.key]),t.value[u.key]=d}),[t,u=>{t.value=u}]}function Q(e){function r(t,a){return e!=null&&e.disabledDate?e.disabledDate(t,a):!1}return(t,a)=>{switch(e==null?void 0:e.type){case"week":return l.createVNode(f.WeekPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"month":return l.createVNode(f.MonthPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"quarter":return l.createVNode(f.QuarterPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"year":return l.createVNode(f.YearPicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"date":default:return l.createVNode(f.DatePicker,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)}}}function X(e){return(r,t)=>{switch(e==null?void 0:e.type){case"number":return l.createVNode(f.InputNumber,{modelValue:r[t.key],"onUpdate:modelValue":a=>r[t.key]=a,hideButton:!0,"read-only":e==null?void 0:e.readonly,placeholder:e==null?void 0:e.placeholder,allowClear:e==null?void 0:e.clearable},null);case"string":default:return l.createVNode(f.Input,{modelValue:r[t.key],"onUpdate:modelValue":a=>r[t.key]=a,placeholder:e==null?void 0:e.placeholder,readonly:e==null?void 0:e.readonly,allowClear:e==null?void 0:e.clearable},null)}}}function k(e){return!!e&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function H(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}const V=new WeakMap;function J(e){let r,t=!1;const a=l.ref(new Map),u=n=>{a.value=n,e.cache!==!1&&V.set(e.options,n)};switch(!0){case e.options instanceof Function:{if(V.has(e.options)){a.value=V.get(e.options);break}const n=e.options();k(n)?n.then(u):u(n);break}case k(e.options):{e.options.then(n=>a.value=n);break}default:a.value=e.options}function d(){if(!e.autoSumbit||!r)return;let n=r;for(;n&&n.$el.tagName!=="FORM";)n=n.$parent;n&&n.$el&&n.$el.dispatchEvent(new Event("submit"))}return(n,c)=>{let s;return e.default&&!t&&(n[c.key]=e.default,t=!0),l.createVNode(f.Select,{ref:o=>r=o,multiple:e.multiple,modelValue:n[c.key],"onUpdate:modelValue":o=>n[c.key]=o,placeholder:e.placeholder,allowClear:e.clearable,maxTagCount:e.maxTagCount??2,onChange:d},H(s=Array.from(a.value.entries()).map(([o,h])=>l.createVNode(f.Option,{key:o,value:o,label:h},null)))?s:{default:()=>[s]})}}function Z(e){function r(){e!=null&&e.autoSumbit}return(t,a)=>(e!=null&&e.default&&(t[a.key]=e.default),l.createVNode(f.Switch,{modelValue:t[a.key],"onUpdate:modelValue":u=>t[a.key]=u,checkedText:(e==null?void 0:e.openLabel)??"是",uncheckedText:(e==null?void 0:e.closeLabel)??"否",checkedValue:(e==null?void 0:e.openValue)??!0,uncheckedValue:(e==null?void 0:e.closeValue)??!1,onChange:r},null))}function p(e){return(r,t)=>{let a=[];function u(c){a=c}function d(c){if(c&&c.length===2){const[s,o]=c.sort(),h=$(s).startOf("days"),y=$(o).endOf("days");r[t.key]=[h.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD"),y.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD")]}}function n(c){return e!=null&&e.disabledDate?e.disabledDate(a,c):!1}return l.createVNode("div",null,[l.createVNode(f.RangePicker,{style:{width:"300px"},modelValue:r[t.key],"onUpdate:modelValue":c=>r[t.key]=c,onSelect:u,onChange:d,mode:e==null?void 0:e.type,allowClear:e==null?void 0:e.clearable,"disabled-date":n,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)])}}function ee(e){return(r,t)=>l.createVNode(f.Textarea,{modelValue:r[t.key],"onUpdate:modelValue":a=>r[t.key]=a,placeholder:e==null?void 0:e.placeholder,autoSize:e==null?void 0:e.autosize,maxLength:e==null?void 0:e.maxLength},null)}const g=new WeakMap;function te(e){let r,t=!1;const a=l.ref([]),u=c=>{a.value=c,e.cache!==!1&&g.set(e.options,c)};switch(!0){case e.options instanceof Function:{if(g.has(e.options)){a.value=g.get(e.options);break}const c=e.options();k(c)?c.then(u):u(c);break}case k(e.options):{e.options.then(c=>a.value=c);break}default:a.value=e.options}function d(){if(!e.autoSumbit||!r)return;let c=r;for(;c&&c.$el.tagName!=="FORM";)c=c.$parent;c&&c.$el&&c.$el.dispatchEvent(new Event("submit"))}function n(c,s){var y;const o=((y=e.fieldNames)==null?void 0:y.title)||"title",h=s[o];return h?h.toLowerCase().includes(c.toLowerCase()):!1}return(c,s)=>(e.default&&!t&&(c[s.key]=e.default,t=!0),l.createVNode(f.TreeSelect,{ref:o=>r=o,multiple:e.multiple,modelValue:c[s.key],"onUpdate:modelValue":o=>c[s.key]=o,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:d,filterTreeNode:n,data:a.value,fieldNames:e.fieldNames},null))}function re(e){return r=>e(r)}function le(){return{input:X,textarea:ee,select:J,treeSelect:te,date:Q,switch:Z,dateRange:p,render:re}}function ae(e,r){r.render||(r.render=a=>a.input());const t=r.render({...le()});return{default:()=>t(e,r)}}function ne(e,r){return l.h(f.FormItem,{field:r.key,label:r.title},ae(e,r))}function N(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}const I=l.defineComponent({props:{form:{type:Object,required:!0},value:{type:Object,required:!1},layout:{type:String,required:!1,default:"horizontal"},columns:{type:Number,required:!1},modelValue:{type:Object,required:!1},minWidth:{type:Number,required:!1,default:320},name:{type:String,required:!1,default:"form"},submitable:{type:Boolean,required:!1,default:!1},searchable:{type:Boolean,required:!1,default:!1},footer:{type:Boolean,required:!1,default:!1}},emits:["submit","cancel","update:model-value"],expose:["formSource","updateFormField","updateFormSource","reset"],setup(e){const r=Math.random().toString(32).slice(2).toUpperCase(),t=l.ref(),[a,u]=K(e.form,e.modelValue||e.value),d=l.ref(e.columns||0),n=l.ref(!0),c=()=>n.value=!n.value;l.provide(C.id,r),l.provide(C.source,a);const s=l.computed(()=>{if(!d.value)return 1;const i=e.form.reduce((m,b)=>m+((b==null?void 0:b.span)||1),0);return d.value-i%d.value}),o=l.computed(()=>e.form.reduce((i,m)=>(m.rule&&(i[m.key]=m.rule),i),{}));function h(){var m;const i=(m=t.value)==null?void 0:m.$el;i&&(d.value=Math.floor(i.offsetWidth/e.minWidth))}l.onMounted(()=>{h()});function y(i,m){a.value[i]=m,u({...a})}function _(){var i;(i=t.value)==null||i.resetFields()}return window.addEventListener("resize",h),{formId:r,formSource:a,formInstance:t,formColumns:d,formRules:o,formCollspased:n,formActiosSpan:s,toggleFormCollapsed:c,updateFormField:y,updateFormSource:u,reset:_}},render(){const e=()=>{this.$emit("submit",this.formSource),this.$emit("update:model-value",this.formSource)},r=()=>{const t=[],a=this.footer?{span:this.formColumns}:{span:this.formActiosSpan};if(this.searchable&&(t.push(l.createVNode(f.Button,{type:"primary",htmlType:"submit"},{default:()=>[l.createTextVNode("搜索")]})),t.push(l.createVNode(f.Button,{type:"secondary",onClick:()=>{var u;return(u=this.formInstance)==null?void 0:u.resetFields()}},{default:()=>[l.createTextVNode("重置")]}))),this.submitable&&(t.push(l.createVNode(f.Button,{type:"primary",htmlType:"submit"},{default:()=>[l.createTextVNode("提交")]})),t.push(l.createVNode(f.Button,{type:"secondary",onClick:()=>this.$emit("cancel")},{default:()=>[l.createTextVNode("取消")]}))),this.form.some(u=>!!u.collapsed)&&t.push(l.createVNode(f.Button,{onClick:this.toggleFormCollapsed},{default:()=>this.formCollspased?"展开":"收起",icon:()=>this.formCollspased?l.createVNode(q,null,null):l.createVNode(G,null,null)})),this.$slots.actions&&t.push(...this.$slots.actions()),t.length)return l.createVNode(f.GridItem,a,{default:()=>[l.createVNode(f.FormItem,{hideLabel:!0,contentClass:this.footer?"form-footer":""},{default:()=>[l.createVNode(f.Space,null,N(t)?t:{default:()=>[t]})]})]})};return l.createVNode("div",{class:"form-render"},[l.createVNode(f.Form,l.mergeProps({layout:this.$props.layout,rules:this.formRules,onSubmitSuccess:e},{name:this.name},{"auto-label-width":!0,ref:t=>this.formInstance=t,model:this.formSource}),{default:()=>[l.createVNode(f.Grid,{cols:this.formColumns,"col-gap":10,"rol-gap":10},{default:()=>[this.form.filter(t=>this.formCollspased?!t.collapsed:!0).map(t=>{let a;return l.createVNode(f.GridItem,{span:t.span},N(a=ne(this.formSource,t))?a:{default:()=>[a]})}),r()]})]})])}});function ue(e){return e}function ce(e){const r=l.getCurrentInstance(),t=l.ref();function a(){var d,n;const u=(n=(d=r==null?void 0:r.proxy)==null?void 0:d.$refs)==null?void 0:n[e];u&&(t.value=u)}return l.onMounted(a),l.onUpdated(a),t}const de={install(e,r){e.component("FormRender",I)}};exports.FormRenderResolver=D.FormRenderResolver;exports.FormRender=I;exports.default=de;exports.defineForm=ue;exports.useForm=ce;
package/dist/es/index.mjs CHANGED
@@ -1,21 +1,21 @@
1
- import { getCurrentInstance as j, inject as A, defineComponent as w, computed as y, openBlock as N, createElementBlock as P, normalizeClass as z, normalizeStyle as M, createElementVNode as L, ref as o, createVNode as u, isVNode as U, h as Y, provide as V, onMounted as R, mergeProps as G, createTextVNode as b, onUpdated as K } from "vue";
2
- import { DatePicker as Q, YearPicker as X, QuarterPicker as H, MonthPicker as J, WeekPicker as Z, Input as p, InputNumber as ee, Select as le, Option as te, Switch as re, RangePicker as ae, Textarea as ne, TreeSelect as ue, FormItem as T, Form as ce, Grid as de, GridItem as I, Button as k, Space as fe } from "@arco-design/web-vue";
1
+ import { getCurrentInstance as O, inject as A, defineComponent as F, computed as k, openBlock as j, createElementBlock as L, normalizeClass as P, normalizeStyle as z, createElementVNode as M, ref as h, createVNode as c, isVNode as U, h as Y, provide as V, onMounted as R, mergeProps as G, createTextVNode as v, onUpdated as K } from "vue";
2
+ import { DatePicker as Q, YearPicker as X, QuarterPicker as H, MonthPicker as J, WeekPicker as Z, Input as p, InputNumber as ee, Select as te, Option as le, Switch as re, RangePicker as ae, Textarea as ne, TreeSelect as ue, FormItem as T, Form as ce, Grid as de, GridItem as I, Button as b, Space as fe } from "@arco-design/web-vue";
3
3
  import _ from "dayjs";
4
4
  import { FormRenderResolver as Qe } from "./resolver.mjs";
5
- const se = Symbol("ArcoConfigProvider"), ie = "arco", me = "$arco", q = (e) => {
6
- var t, l, r;
7
- const n = j(), c = A(se, void 0), a = (r = (l = c == null ? void 0 : c.prefixCls) != null ? l : (t = n == null ? void 0 : n.appContext.config.globalProperties[me]) == null ? void 0 : t.classPrefix) != null ? r : ie;
5
+ const ie = Symbol("ArcoConfigProvider"), se = "arco", me = "$arco", q = (e) => {
6
+ var l, t, r;
7
+ const n = O(), d = A(ie, void 0), a = (r = (t = d == null ? void 0 : d.prefixCls) != null ? t : (l = n == null ? void 0 : n.appContext.config.globalProperties[me]) == null ? void 0 : l.classPrefix) != null ? r : se;
8
8
  return e ? `${a}-${e}` : a;
9
9
  }, oe = Object.prototype.toString;
10
10
  function B(e) {
11
11
  return oe.call(e) === "[object Number]" && e === e;
12
12
  }
13
- var E = (e, t) => {
14
- for (const [l, r] of t)
15
- e[l] = r;
13
+ var E = (e, l) => {
14
+ for (const [t, r] of l)
15
+ e[t] = r;
16
16
  return e;
17
17
  };
18
- const he = w({
18
+ const he = F({
19
19
  name: "IconDown",
20
20
  props: {
21
21
  size: {
@@ -42,11 +42,11 @@ const he = w({
42
42
  click: (e) => !0
43
43
  },
44
44
  setup(e, {
45
- emit: t
45
+ emit: l
46
46
  }) {
47
- const l = q("icon"), r = y(() => [l, `${l}-down`, {
48
- [`${l}-spin`]: e.spin
49
- }]), n = y(() => {
47
+ const t = q("icon"), r = k(() => [t, `${t}-down`, {
48
+ [`${t}-spin`]: e.spin
49
+ }]), n = k(() => {
50
50
  const a = {};
51
51
  return e.size && (a.fontSize = B(e.size) ? `${e.size}px` : e.size), e.rotate && (a.transform = `rotate(${e.rotate}deg)`), a;
52
52
  });
@@ -54,35 +54,35 @@ const he = w({
54
54
  cls: r,
55
55
  innerStyle: n,
56
56
  onClick: (a) => {
57
- t("click", a);
57
+ l("click", a);
58
58
  }
59
59
  };
60
60
  }
61
- }), ye = ["stroke-width", "stroke-linecap", "stroke-linejoin"], ke = /* @__PURE__ */ L("path", {
61
+ }), ye = ["stroke-width", "stroke-linecap", "stroke-linejoin"], ke = /* @__PURE__ */ M("path", {
62
62
  d: "M39.6 17.443 24.043 33 8.487 17.443"
63
63
  }, null, -1), be = [ke];
64
- function ve(e, t, l, r, n, c) {
65
- return N(), P("svg", {
64
+ function ve(e, l, t, r, n, d) {
65
+ return j(), L("svg", {
66
66
  viewBox: "0 0 48 48",
67
67
  fill: "none",
68
68
  xmlns: "http://www.w3.org/2000/svg",
69
69
  stroke: "currentColor",
70
- class: z(e.cls),
71
- style: M(e.innerStyle),
70
+ class: P(e.cls),
71
+ style: z(e.innerStyle),
72
72
  "stroke-width": e.strokeWidth,
73
73
  "stroke-linecap": e.strokeLinecap,
74
74
  "stroke-linejoin": e.strokeLinejoin,
75
- onClick: t[0] || (t[0] = (...a) => e.onClick && e.onClick(...a))
75
+ onClick: l[0] || (l[0] = (...a) => e.onClick && e.onClick(...a))
76
76
  }, be, 14, ye);
77
77
  }
78
78
  var g = /* @__PURE__ */ E(he, [["render", ve]]);
79
79
  const Se = Object.assign(g, {
80
- install: (e, t) => {
81
- var l;
82
- const r = (l = t == null ? void 0 : t.iconPrefix) != null ? l : "";
80
+ install: (e, l) => {
81
+ var t;
82
+ const r = (t = l == null ? void 0 : l.iconPrefix) != null ? t : "";
83
83
  e.component(r + g.name, g);
84
84
  }
85
- }), $e = w({
85
+ }), $e = F({
86
86
  name: "IconUp",
87
87
  props: {
88
88
  size: {
@@ -109,11 +109,11 @@ const Se = Object.assign(g, {
109
109
  click: (e) => !0
110
110
  },
111
111
  setup(e, {
112
- emit: t
112
+ emit: l
113
113
  }) {
114
- const l = q("icon"), r = y(() => [l, `${l}-up`, {
115
- [`${l}-spin`]: e.spin
116
- }]), n = y(() => {
114
+ const t = q("icon"), r = k(() => [t, `${t}-up`, {
115
+ [`${t}-spin`]: e.spin
116
+ }]), n = k(() => {
117
117
  const a = {};
118
118
  return e.size && (a.fontSize = B(e.size) ? `${e.size}px` : e.size), e.rotate && (a.transform = `rotate(${e.rotate}deg)`), a;
119
119
  });
@@ -121,91 +121,91 @@ const Se = Object.assign(g, {
121
121
  cls: r,
122
122
  innerStyle: n,
123
123
  onClick: (a) => {
124
- t("click", a);
124
+ l("click", a);
125
125
  }
126
126
  };
127
127
  }
128
- }), ge = ["stroke-width", "stroke-linecap", "stroke-linejoin"], Ce = /* @__PURE__ */ L("path", {
128
+ }), ge = ["stroke-width", "stroke-linecap", "stroke-linejoin"], Ce = /* @__PURE__ */ M("path", {
129
129
  d: "M39.6 30.557 24.043 15 8.487 30.557"
130
130
  }, null, -1), xe = [Ce];
131
- function Fe(e, t, l, r, n, c) {
132
- return N(), P("svg", {
131
+ function we(e, l, t, r, n, d) {
132
+ return j(), L("svg", {
133
133
  viewBox: "0 0 48 48",
134
134
  fill: "none",
135
135
  xmlns: "http://www.w3.org/2000/svg",
136
136
  stroke: "currentColor",
137
- class: z(e.cls),
138
- style: M(e.innerStyle),
137
+ class: P(e.cls),
138
+ style: z(e.innerStyle),
139
139
  "stroke-width": e.strokeWidth,
140
140
  "stroke-linecap": e.strokeLinecap,
141
141
  "stroke-linejoin": e.strokeLinejoin,
142
- onClick: t[0] || (t[0] = (...a) => e.onClick && e.onClick(...a))
142
+ onClick: l[0] || (l[0] = (...a) => e.onClick && e.onClick(...a))
143
143
  }, xe, 14, ge);
144
144
  }
145
- var C = /* @__PURE__ */ E($e, [["render", Fe]]);
146
- const we = Object.assign(C, {
147
- install: (e, t) => {
148
- var l;
149
- const r = (l = t == null ? void 0 : t.iconPrefix) != null ? l : "";
145
+ var C = /* @__PURE__ */ E($e, [["render", we]]);
146
+ const Fe = Object.assign(C, {
147
+ install: (e, l) => {
148
+ var t;
149
+ const r = (t = l == null ? void 0 : l.iconPrefix) != null ? t : "";
150
150
  e.component(r + C.name, C);
151
151
  }
152
152
  }), D = {
153
153
  id: Symbol("ID"),
154
154
  source: Symbol("Source")
155
155
  };
156
- function Ve(e, t) {
157
- const l = o({});
156
+ function Ve(e, l) {
157
+ const t = h({});
158
158
  return e == null || e.forEach((n) => {
159
- let c = null;
160
- n.default && (c = (typeof n.default == "function" ? n.default() : n.default) || null), t && t[n.key] !== void 0 && (c = t[n.key]), l.value[n.key] = c;
161
- }), [l, (n) => {
162
- l.value = n;
159
+ let d = null;
160
+ n.default && (d = (typeof n.default == "function" ? n.default() : n.default) || null), l && l[n.key] !== void 0 && (d = l[n.key]), t.value[n.key] = d;
161
+ }), [t, (n) => {
162
+ t.value = n;
163
163
  }];
164
164
  }
165
165
  function Ie(e) {
166
- function t(l, r) {
167
- return e != null && e.disabledDate ? e.disabledDate(l, r) : !1;
166
+ function l(t, r) {
167
+ return e != null && e.disabledDate ? e.disabledDate(t, r) : !1;
168
168
  }
169
- return (l, r) => {
169
+ return (t, r) => {
170
170
  switch (e == null ? void 0 : e.type) {
171
171
  case "week":
172
- return u(Z, {
173
- modelValue: l[r.key],
174
- "onUpdate:modelValue": (n) => l[r.key] = n,
175
- "disabled-date": t,
172
+ return c(Z, {
173
+ modelValue: t[r.key],
174
+ "onUpdate:modelValue": (n) => t[r.key] = n,
175
+ "disabled-date": l,
176
176
  format: e == null ? void 0 : e.labelFormat,
177
177
  "value-format": e == null ? void 0 : e.valueFormat
178
178
  }, null);
179
179
  case "month":
180
- return u(J, {
181
- modelValue: l[r.key],
182
- "onUpdate:modelValue": (n) => l[r.key] = n,
183
- "disabled-date": t,
180
+ return c(J, {
181
+ modelValue: t[r.key],
182
+ "onUpdate:modelValue": (n) => t[r.key] = n,
183
+ "disabled-date": l,
184
184
  format: e == null ? void 0 : e.labelFormat,
185
185
  "value-format": e == null ? void 0 : e.valueFormat
186
186
  }, null);
187
187
  case "quarter":
188
- return u(H, {
189
- modelValue: l[r.key],
190
- "onUpdate:modelValue": (n) => l[r.key] = n,
191
- "disabled-date": t,
188
+ return c(H, {
189
+ modelValue: t[r.key],
190
+ "onUpdate:modelValue": (n) => t[r.key] = n,
191
+ "disabled-date": l,
192
192
  format: e == null ? void 0 : e.labelFormat,
193
193
  "value-format": e == null ? void 0 : e.valueFormat
194
194
  }, null);
195
195
  case "year":
196
- return u(X, {
197
- modelValue: l[r.key],
198
- "onUpdate:modelValue": (n) => l[r.key] = n,
199
- "disabled-date": t,
196
+ return c(X, {
197
+ modelValue: t[r.key],
198
+ "onUpdate:modelValue": (n) => t[r.key] = n,
199
+ "disabled-date": l,
200
200
  format: e == null ? void 0 : e.labelFormat,
201
201
  "value-format": e == null ? void 0 : e.valueFormat
202
202
  }, null);
203
203
  case "date":
204
204
  default:
205
- return u(Q, {
206
- modelValue: l[r.key],
207
- "onUpdate:modelValue": (n) => l[r.key] = n,
208
- "disabled-date": t,
205
+ return c(Q, {
206
+ modelValue: t[r.key],
207
+ "onUpdate:modelValue": (n) => t[r.key] = n,
208
+ "disabled-date": l,
209
209
  format: e == null ? void 0 : e.labelFormat,
210
210
  "value-format": e == null ? void 0 : e.valueFormat
211
211
  }, null);
@@ -213,12 +213,12 @@ function Ie(e) {
213
213
  };
214
214
  }
215
215
  function _e(e) {
216
- return (t, l) => {
216
+ return (l, t) => {
217
217
  switch (e == null ? void 0 : e.type) {
218
218
  case "number":
219
- return u(ee, {
220
- modelValue: t[l.key],
221
- "onUpdate:modelValue": (r) => t[l.key] = r,
219
+ return c(ee, {
220
+ modelValue: l[t.key],
221
+ "onUpdate:modelValue": (r) => l[t.key] = r,
222
222
  hideButton: !0,
223
223
  "read-only": e == null ? void 0 : e.readonly,
224
224
  placeholder: e == null ? void 0 : e.placeholder,
@@ -226,9 +226,9 @@ function _e(e) {
226
226
  }, null);
227
227
  case "string":
228
228
  default:
229
- return u(p, {
230
- modelValue: t[l.key],
231
- "onUpdate:modelValue": (r) => t[l.key] = r,
229
+ return c(p, {
230
+ modelValue: l[t.key],
231
+ "onUpdate:modelValue": (r) => l[t.key] = r,
232
232
  placeholder: e == null ? void 0 : e.placeholder,
233
233
  readonly: e == null ? void 0 : e.readonly,
234
234
  allowClear: e == null ? void 0 : e.clearable
@@ -236,16 +236,16 @@ function _e(e) {
236
236
  }
237
237
  };
238
238
  }
239
- function v(e) {
239
+ function S(e) {
240
240
  return !!e && (typeof e == "object" || typeof e == "function") && typeof e.then == "function";
241
241
  }
242
242
  function De(e) {
243
243
  return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !U(e);
244
244
  }
245
245
  const x = /* @__PURE__ */ new WeakMap();
246
- function Oe(e) {
247
- let t, l = !1;
248
- const r = o(/* @__PURE__ */ new Map()), n = (a) => {
246
+ function Ne(e) {
247
+ let l, t = !1;
248
+ const r = h(/* @__PURE__ */ new Map()), n = (a) => {
249
249
  r.value = a, e.cache !== !1 && x.set(e.options, a);
250
250
  };
251
251
  switch (!0) {
@@ -255,81 +255,81 @@ function Oe(e) {
255
255
  break;
256
256
  }
257
257
  const a = e.options();
258
- v(a) ? a.then(n) : n(a);
258
+ S(a) ? a.then(n) : n(a);
259
259
  break;
260
260
  }
261
- case v(e.options): {
261
+ case S(e.options): {
262
262
  e.options.then((a) => r.value = a);
263
263
  break;
264
264
  }
265
265
  default:
266
266
  r.value = e.options;
267
267
  }
268
- function c() {
269
- if (!e.autoSumbit || !t)
268
+ function d() {
269
+ if (!e.autoSumbit || !l)
270
270
  return;
271
- let a = t;
271
+ let a = l;
272
272
  for (; a && a.$el.tagName !== "FORM"; )
273
273
  a = a.$parent;
274
274
  a && a.$el && a.$el.dispatchEvent(new Event("submit"));
275
275
  }
276
- return (a, d) => {
277
- let s;
278
- return e.default && !l && (a[d.key] = e.default, l = !0), u(le, {
279
- ref: (i) => t = i,
276
+ return (a, u) => {
277
+ let i;
278
+ return e.default && !t && (a[u.key] = e.default, t = !0), c(te, {
279
+ ref: (f) => l = f,
280
280
  multiple: e.multiple,
281
- modelValue: a[d.key],
282
- "onUpdate:modelValue": (i) => a[d.key] = i,
281
+ modelValue: a[u.key],
282
+ "onUpdate:modelValue": (f) => a[u.key] = f,
283
283
  placeholder: e.placeholder,
284
284
  allowClear: e.clearable,
285
285
  maxTagCount: e.maxTagCount ?? 2,
286
- onChange: c
287
- }, De(s = Array.from(r.value.entries()).map(([i, h]) => u(te, {
288
- key: i,
289
- value: i,
290
- label: h
291
- }, null))) ? s : {
292
- default: () => [s]
286
+ onChange: d
287
+ }, De(i = Array.from(r.value.entries()).map(([f, o]) => c(le, {
288
+ key: f,
289
+ value: f,
290
+ label: o
291
+ }, null))) ? i : {
292
+ default: () => [i]
293
293
  });
294
294
  };
295
295
  }
296
- function je(e) {
297
- function t() {
296
+ function Oe(e) {
297
+ function l() {
298
298
  e != null && e.autoSumbit;
299
299
  }
300
- return (l, r) => (e != null && e.default && (l[r.key] = e.default), u(re, {
301
- modelValue: l[r.key],
302
- "onUpdate:modelValue": (n) => l[r.key] = n,
300
+ return (t, r) => (e != null && e.default && (t[r.key] = e.default), c(re, {
301
+ modelValue: t[r.key],
302
+ "onUpdate:modelValue": (n) => t[r.key] = n,
303
303
  checkedText: (e == null ? void 0 : e.openLabel) ?? "是",
304
304
  uncheckedText: (e == null ? void 0 : e.closeLabel) ?? "否",
305
305
  checkedValue: (e == null ? void 0 : e.openValue) ?? !0,
306
306
  uncheckedValue: (e == null ? void 0 : e.closeValue) ?? !1,
307
- onChange: t
307
+ onChange: l
308
308
  }, null));
309
309
  }
310
- function Ne(e) {
311
- return (t, l) => {
310
+ function je(e) {
311
+ return (l, t) => {
312
312
  let r = [];
313
- function n(d) {
314
- r = d;
313
+ function n(u) {
314
+ r = u;
315
315
  }
316
- function c(d) {
317
- if (d && d.length === 2) {
318
- const [s, i] = d.sort(), h = _(s).startOf("days"), S = _(i).endOf("days");
319
- t[l.key] = [h.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD"), S.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD")];
316
+ function d(u) {
317
+ if (u && u.length === 2) {
318
+ const [i, f] = u.sort(), o = _(i).startOf("days"), y = _(f).endOf("days");
319
+ l[t.key] = [o.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD"), y.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD")];
320
320
  }
321
321
  }
322
- function a(d) {
323
- return e != null && e.disabledDate ? e.disabledDate(r, d) : !1;
322
+ function a(u) {
323
+ return e != null && e.disabledDate ? e.disabledDate(r, u) : !1;
324
324
  }
325
- return u("div", null, [u(ae, {
325
+ return c("div", null, [c(ae, {
326
326
  style: {
327
327
  width: "300px"
328
328
  },
329
- modelValue: t[l.key],
330
- "onUpdate:modelValue": (d) => t[l.key] = d,
329
+ modelValue: l[t.key],
330
+ "onUpdate:modelValue": (u) => l[t.key] = u,
331
331
  onSelect: n,
332
- onChange: c,
332
+ onChange: d,
333
333
  mode: e == null ? void 0 : e.type,
334
334
  allowClear: e == null ? void 0 : e.clearable,
335
335
  "disabled-date": a,
@@ -338,94 +338,100 @@ function Ne(e) {
338
338
  }, null)]);
339
339
  };
340
340
  }
341
- function Pe(e) {
342
- return (t, l) => u(ne, {
343
- modelValue: t[l.key],
344
- "onUpdate:modelValue": (r) => t[l.key] = r,
341
+ function Le(e) {
342
+ return (l, t) => c(ne, {
343
+ modelValue: l[t.key],
344
+ "onUpdate:modelValue": (r) => l[t.key] = r,
345
345
  placeholder: e == null ? void 0 : e.placeholder,
346
346
  autoSize: e == null ? void 0 : e.autosize,
347
347
  maxLength: e == null ? void 0 : e.maxLength
348
348
  }, null);
349
349
  }
350
- const F = /* @__PURE__ */ new WeakMap();
351
- function ze(e) {
352
- let t, l = !1;
353
- const r = o([]), n = (a) => {
354
- r.value = a, e.cache !== !1 && F.set(e.options, a);
350
+ const w = /* @__PURE__ */ new WeakMap();
351
+ function Pe(e) {
352
+ let l, t = !1;
353
+ const r = h([]), n = (u) => {
354
+ r.value = u, e.cache !== !1 && w.set(e.options, u);
355
355
  };
356
356
  switch (!0) {
357
357
  case e.options instanceof Function: {
358
- if (F.has(e.options)) {
359
- r.value = F.get(e.options);
358
+ if (w.has(e.options)) {
359
+ r.value = w.get(e.options);
360
360
  break;
361
361
  }
362
- const a = e.options();
363
- v(a) ? a.then(n) : n(a);
362
+ const u = e.options();
363
+ S(u) ? u.then(n) : n(u);
364
364
  break;
365
365
  }
366
- case v(e.options): {
367
- e.options.then((a) => r.value = a);
366
+ case S(e.options): {
367
+ e.options.then((u) => r.value = u);
368
368
  break;
369
369
  }
370
370
  default:
371
371
  r.value = e.options;
372
372
  }
373
- function c() {
374
- if (!e.autoSumbit || !t)
373
+ function d() {
374
+ if (!e.autoSumbit || !l)
375
375
  return;
376
- let a = t;
377
- for (; a && a.$el.tagName !== "FORM"; )
378
- a = a.$parent;
379
- a && a.$el && a.$el.dispatchEvent(new Event("submit"));
376
+ let u = l;
377
+ for (; u && u.$el.tagName !== "FORM"; )
378
+ u = u.$parent;
379
+ u && u.$el && u.$el.dispatchEvent(new Event("submit"));
380
380
  }
381
- return (a, d) => (e.default && !l && (a[d.key] = e.default, l = !0), u(ue, {
382
- ref: (s) => t = s,
381
+ function a(u, i) {
382
+ var y;
383
+ const f = ((y = e.fieldNames) == null ? void 0 : y.title) || "title", o = i[f];
384
+ return o ? o.toLowerCase().includes(u.toLowerCase()) : !1;
385
+ }
386
+ return (u, i) => (e.default && !t && (u[i.key] = e.default, t = !0), c(ue, {
387
+ ref: (f) => l = f,
383
388
  multiple: e.multiple,
384
- modelValue: a[d.key],
385
- "onUpdate:modelValue": (s) => a[d.key] = s,
389
+ modelValue: u[i.key],
390
+ "onUpdate:modelValue": (f) => u[i.key] = f,
386
391
  placeholder: e.placeholder,
387
392
  allowClear: e.clearable,
388
393
  allowSearch: e.searchable,
389
394
  maxTagCount: e.maxTagCount ?? 2,
390
- onChange: c,
395
+ onChange: d,
396
+ filterTreeNode: a,
391
397
  data: r.value,
392
398
  fieldNames: e.fieldNames
393
399
  }, null));
394
400
  }
395
- function Me(e) {
396
- return (t) => e(t);
401
+ function ze(e) {
402
+ return (l) => e(l);
397
403
  }
398
- function Le() {
404
+ function Me() {
399
405
  return {
400
406
  input: _e,
401
- textarea: Pe,
402
- select: Oe,
403
- treeSelect: ze,
407
+ textarea: Le,
408
+ select: Ne,
409
+ treeSelect: Pe,
404
410
  date: Ie,
405
- switch: je,
406
- dateRange: Ne,
407
- render: Me
411
+ switch: Oe,
412
+ dateRange: je,
413
+ render: ze
408
414
  };
409
415
  }
410
- function Ue(e, t) {
411
- t.render || (t.render = (r) => r.input());
412
- const l = t.render({
413
- ...Le()
416
+ function Ue(e, l) {
417
+ l.render || (l.render = (r) => r.input());
418
+ const t = l.render({
419
+ ...Me()
414
420
  });
415
421
  return {
416
- default: () => l(e, t)
422
+ default: () => t(e, l)
417
423
  };
418
424
  }
419
- function Re(e, t) {
425
+ function Re(e, l) {
420
426
  return Y(T, {
421
- field: t.key,
422
- label: t.title
423
- }, Ue(e, t));
427
+ field: l.key,
428
+ label: l.title
429
+ }, Ue(e, l));
424
430
  }
425
- function O(e) {
431
+ function N(e) {
426
432
  return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !U(e);
427
433
  }
428
- const Te = /* @__PURE__ */ w({
434
+ const Te = /* @__PURE__ */ F({
429
435
  props: {
430
436
  form: {
431
437
  type: Object,
@@ -477,41 +483,41 @@ const Te = /* @__PURE__ */ w({
477
483
  emits: ["submit", "cancel", "update:model-value"],
478
484
  expose: ["formSource", "updateFormField", "updateFormSource", "reset"],
479
485
  setup(e) {
480
- const t = Math.random().toString(32).slice(2).toUpperCase(), l = o(), [r, n] = Ve(e.form, e.modelValue || e.value), c = o(e.columns || 0), a = o(!0), d = () => a.value = !a.value;
481
- V(D.id, t), V(D.source, r);
482
- const s = y(() => {
483
- if (!c.value)
486
+ const l = Math.random().toString(32).slice(2).toUpperCase(), t = h(), [r, n] = Ve(e.form, e.modelValue || e.value), d = h(e.columns || 0), a = h(!0), u = () => a.value = !a.value;
487
+ V(D.id, l), V(D.source, r);
488
+ const i = k(() => {
489
+ if (!d.value)
484
490
  return 1;
485
- const f = e.form.reduce((m, $) => m + (($ == null ? void 0 : $.span) || 1), 0);
486
- return c.value - f % c.value;
487
- }), i = y(() => e.form.reduce((f, m) => (m.rule && (f[m.key] = m.rule), f), {}));
488
- function h() {
491
+ const s = e.form.reduce((m, $) => m + (($ == null ? void 0 : $.span) || 1), 0);
492
+ return d.value - s % d.value;
493
+ }), f = k(() => e.form.reduce((s, m) => (m.rule && (s[m.key] = m.rule), s), {}));
494
+ function o() {
489
495
  var m;
490
- const f = (m = l.value) == null ? void 0 : m.$el;
491
- f && (c.value = Math.floor(f.offsetWidth / e.minWidth));
496
+ const s = (m = t.value) == null ? void 0 : m.$el;
497
+ s && (d.value = Math.floor(s.offsetWidth / e.minWidth));
492
498
  }
493
499
  R(() => {
494
- h();
500
+ o();
495
501
  });
496
- function S(f, m) {
497
- r.value[f] = m, n({
502
+ function y(s, m) {
503
+ r.value[s] = m, n({
498
504
  ...r
499
505
  });
500
506
  }
501
507
  function W() {
502
- var f;
503
- (f = l.value) == null || f.resetFields();
508
+ var s;
509
+ (s = t.value) == null || s.resetFields();
504
510
  }
505
- return window.addEventListener("resize", h), {
506
- formId: t,
511
+ return window.addEventListener("resize", o), {
512
+ formId: l,
507
513
  formSource: r,
508
- formInstance: l,
509
- formColumns: c,
510
- formRules: i,
514
+ formInstance: t,
515
+ formColumns: d,
516
+ formRules: f,
511
517
  formCollspased: a,
512
- formActiosSpan: s,
513
- toggleFormCollapsed: d,
514
- updateFormField: S,
518
+ formActiosSpan: i,
519
+ toggleFormCollapsed: u,
520
+ updateFormField: y,
515
521
  updateFormSource: n,
516
522
  reset: W
517
523
  };
@@ -519,55 +525,55 @@ const Te = /* @__PURE__ */ w({
519
525
  render() {
520
526
  const e = () => {
521
527
  this.$emit("submit", this.formSource), this.$emit("update:model-value", this.formSource);
522
- }, t = () => {
523
- const l = [], r = this.footer ? {
528
+ }, l = () => {
529
+ const t = [], r = this.footer ? {
524
530
  span: this.formColumns
525
531
  } : {
526
532
  span: this.formActiosSpan
527
533
  };
528
- if (this.searchable && (l.push(u(k, {
534
+ if (this.searchable && (t.push(c(b, {
529
535
  type: "primary",
530
536
  htmlType: "submit"
531
537
  }, {
532
- default: () => [b("搜索")]
533
- })), l.push(u(k, {
538
+ default: () => [v("搜索")]
539
+ })), t.push(c(b, {
534
540
  type: "secondary",
535
541
  onClick: () => {
536
542
  var n;
537
543
  return (n = this.formInstance) == null ? void 0 : n.resetFields();
538
544
  }
539
545
  }, {
540
- default: () => [b("重置")]
541
- }))), this.submitable && (l.push(u(k, {
546
+ default: () => [v("重置")]
547
+ }))), this.submitable && (t.push(c(b, {
542
548
  type: "primary",
543
549
  htmlType: "submit"
544
550
  }, {
545
- default: () => [b("提交")]
546
- })), l.push(u(k, {
551
+ default: () => [v("提交")]
552
+ })), t.push(c(b, {
547
553
  type: "secondary",
548
554
  onClick: () => this.$emit("cancel")
549
555
  }, {
550
- default: () => [b("取消")]
551
- }))), this.form.some((n) => !!n.collapsed) && l.push(u(k, {
556
+ default: () => [v("取消")]
557
+ }))), this.form.some((n) => !!n.collapsed) && t.push(c(b, {
552
558
  onClick: this.toggleFormCollapsed
553
559
  }, {
554
560
  default: () => this.formCollspased ? "展开" : "收起",
555
- icon: () => this.formCollspased ? u(Se, null, null) : u(we, null, null)
556
- })), this.$slots.actions && l.push(...this.$slots.actions()), l.length)
557
- return u(I, r, {
558
- default: () => [u(T, {
561
+ icon: () => this.formCollspased ? c(Se, null, null) : c(Fe, null, null)
562
+ })), this.$slots.actions && t.push(...this.$slots.actions()), t.length)
563
+ return c(I, r, {
564
+ default: () => [c(T, {
559
565
  hideLabel: !0,
560
566
  contentClass: this.footer ? "form-footer" : ""
561
567
  }, {
562
- default: () => [u(fe, null, O(l) ? l : {
563
- default: () => [l]
568
+ default: () => [c(fe, null, N(t) ? t : {
569
+ default: () => [t]
564
570
  })]
565
571
  })]
566
572
  });
567
573
  };
568
- return u("div", {
574
+ return c("div", {
569
575
  class: "form-render"
570
- }, [u(ce, G({
576
+ }, [c(ce, G({
571
577
  layout: this.$props.layout,
572
578
  rules: this.formRules,
573
579
  onSubmitSuccess: e
@@ -575,22 +581,22 @@ const Te = /* @__PURE__ */ w({
575
581
  name: this.name
576
582
  }, {
577
583
  "auto-label-width": !0,
578
- ref: (l) => this.formInstance = l,
584
+ ref: (t) => this.formInstance = t,
579
585
  model: this.formSource
580
586
  }), {
581
- default: () => [u(de, {
587
+ default: () => [c(de, {
582
588
  cols: this.formColumns,
583
589
  "col-gap": 10,
584
590
  "rol-gap": 10
585
591
  }, {
586
- default: () => [this.form.filter((l) => this.formCollspased ? !l.collapsed : !0).map((l) => {
592
+ default: () => [this.form.filter((t) => this.formCollspased ? !t.collapsed : !0).map((t) => {
587
593
  let r;
588
- return u(I, {
589
- span: l.span
590
- }, O(r = Re(this.formSource, l)) ? r : {
594
+ return c(I, {
595
+ span: t.span
596
+ }, N(r = Re(this.formSource, t)) ? r : {
591
597
  default: () => [r]
592
598
  });
593
- }), t()]
599
+ }), l()]
594
600
  })]
595
601
  })]);
596
602
  }
@@ -599,16 +605,16 @@ function We(e) {
599
605
  return e;
600
606
  }
601
607
  function Ae(e) {
602
- const t = j(), l = o();
608
+ const l = O(), t = h();
603
609
  function r() {
604
- var c, a;
605
- const n = (a = (c = t == null ? void 0 : t.proxy) == null ? void 0 : c.$refs) == null ? void 0 : a[e];
606
- n && (l.value = n);
610
+ var d, a;
611
+ const n = (a = (d = l == null ? void 0 : l.proxy) == null ? void 0 : d.$refs) == null ? void 0 : a[e];
612
+ n && (t.value = n);
607
613
  }
608
- return R(r), K(r), l;
614
+ return R(r), K(r), t;
609
615
  }
610
616
  const Ye = {
611
- install(e, t) {
617
+ install(e, l) {
612
618
  e.component("FormRender", Te);
613
619
  }
614
620
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gopowerteam/form-render",
3
3
  "type": "module",
4
- "version": "0.0.18",
4
+ "version": "0.0.19",
5
5
  "author": {
6
6
  "name": "zhuchentong",
7
7
  "email": "2037630@gmail.com"