@gopowerteam/form-render 0.0.24 → 0.0.25

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