@gopowerteam/form-render 0.0.7 → 0.0.8

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.
@@ -3,5 +3,6 @@ export declare function renderInputItem<T = DataRecord>(options?: RenderInputIte
3
3
  export interface RenderInputItemOptions {
4
4
  placeholder?: string;
5
5
  clearable?: boolean;
6
+ readonly?: boolean;
6
7
  type?: 'string' | 'number';
7
8
  }
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),d=require("@arco-design/web-vue"),V=require("dayjs");const F=Symbol("ArcoConfigProvider"),w="arco",I="$arco",C=e=>{var r,t,a;const n=l.getCurrentInstance(),c=l.inject(F,void 0),u=(a=(t=c==null?void 0:c.prefixCls)!=null?t:(r=n==null?void 0:n.appContext.config.globalProperties[I])==null?void 0:r.classPrefix)!=null?a:w;return e?`${u}-${e}`:u},j=Object.prototype.toString;function $(e){return j.call(e)==="[object Number]"&&e===e}var N=(e,r)=>{for(const[t,a]of r)e[t]=a;return e};const D=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=C("icon"),a=l.computed(()=>[t,`${t}-down`,{[`${t}-spin`]:e.spin}]),n=l.computed(()=>{const u={};return e.size&&(u.fontSize=$(e.size)?`${e.size}px`:e.size),e.rotate&&(u.transform=`rotate(${e.rotate}deg)`),u});return{cls:a,innerStyle:n,onClick:u=>{r("click",u)}}}}),_=["stroke-width","stroke-linecap","stroke-linejoin"],P=l.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1),z=[P];function B(e,r,t,a,n,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]=(...u)=>e.onClick&&e.onClick(...u))},z,14,_)}var b=N(D,[["render",B]]);const O=Object.assign(b,{install:(e,r)=>{var t;const a=(t=r==null?void 0:r.iconPrefix)!=null?t:"";e.component(a+b.name,b)}}),L=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=C("icon"),a=l.computed(()=>[t,`${t}-up`,{[`${t}-spin`]:e.spin}]),n=l.computed(()=>{const u={};return e.size&&(u.fontSize=$(e.size)?`${e.size}px`:e.size),e.rotate&&(u.transform=`rotate(${e.rotate}deg)`),u});return{cls:a,innerStyle:n,onClick:u=>{r("click",u)}}}}),M=["stroke-width","stroke-linecap","stroke-linejoin"],U=l.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1),q=[U];function T(e,r,t,a,n,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]=(...u)=>e.onClick&&e.onClick(...u))},q,14,M)}var v=N(L,[["render",T]]);const R=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)}}),S={id:Symbol("ID"),source:Symbol("Source")};function E(e,r){const t=l.ref({});return e==null||e.forEach(n=>{let c=null;n.default&&(c=(typeof n.default=="function"?n.default():n.default)||null),r&&r[n.key]&&(c=r[n.key]),t.value[n.key]=c}),[t,n=>{t.value=n}]}function A(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":n=>t[a.key]=n,"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":n=>t[a.key]=n,"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":n=>t[a.key]=n,"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":n=>t[a.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 l.createVNode(d.DatePicker,{modelValue:t[a.key],"onUpdate:modelValue":n=>t[a.key]=n,"disabled-date":r,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)}}}function Y(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,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,allowClear:e==null?void 0:e.clearable},null)}}}function W(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}function G(e){let r=!1;const t=l.ref(new Map);e.options instanceof Function?e.options().then(n=>t.value=n):e.options instanceof Promise?e.options.then(n=>t.value=n):t.value=e.options;function a(){e.autoSumbit}return(n,c)=>{let u;return e.default&&!r&&(n[c.key]=e.default,r=!0),l.createVNode(d.Select,{multiple:e.multiple,modelValue:n[c.key],"onUpdate:modelValue":o=>n[c.key]=o,placeholder:e.placeholder,allowClear:e.clearable,maxTagCount:e.maxTagCount,onChange:a},W(u=Array.from(t.value.entries()).map(([o,m])=>l.createVNode(d.Option,{key:o,value:o,label:m},null)))?u:{default:()=>[u]})}}function K(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":n=>t[a.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 Q(e){return(r,t)=>{let a=[];function n(o){a=o}function c(o){if(o&&o.length===2){const[m,h]=o.sort(),s=V(m).startOf("days"),k=V(h).endOf("days");r[t.key]=[s.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD"),k.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD")]}}function u(o){return e!=null&&e.disabledDate?e.disabledDate(a,o):!1}return l.createVNode("div",null,[l.createVNode(d.RangePicker,{style:{width:"300px"},modelValue:r[t.key],"onUpdate:modelValue":o=>r[t.key]=o,onSelect:n,onChange:c,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 X(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)}function H(e){return r=>e(r)}function J(){return{input:Y,textarea:X,select:G,date:A,switch:K,dateRange:Q,render:H}}function Z(e,r){r.render||(r.render=a=>a.input());const t=r.render({...J()});return{default:()=>t(e,r)}}function p(e,r){return l.h(d.FormItem,{field:r.key,label:r.title},Z(e,r))}function g(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}const ee=l.defineComponent({props:{form:{type:Object,required:!0},value:{type:Object,required:!1},modelValue:{type:Object,required:!1},minWidth:{type:Number,required:!1,default:300},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,n]=E(e.form,e.modelValue||e.value),c=l.ref(0),u=l.ref(!0),o=()=>u.value=!u.value;l.provide(S.id,r),l.provide(S.source,a);const m=l.computed(()=>{if(!c.value)return 1;const f=e.form.reduce((i,y)=>i+((y==null?void 0:y.span)||1),0);return c.value-f%c.value}),h=l.computed(()=>e.form.reduce((f,i)=>(i.rule&&(f[i.key]=i.rule),f),{}));function s(){var i;const f=(i=t.value)==null?void 0:i.$el;c.value=Math.floor(f.offsetWidth/e.minWidth)}l.onMounted(()=>{s()});function k(f,i){n({...a,[f]:i})}function x(){var f;(f=t.value)==null||f.resetFields()}return window.addEventListener("resize",s),{formId:r,formSource:a,formInstance:t,formColumns:c,formRules:h,formCollspased:u,formActiosSpan:m,toggleFormCollapsed:o,updateFormField:k,updateFormSource:n,reset:x}},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 n;return(n=this.formInstance)==null?void 0:n.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(n=>!!n.collapsed)&&t.push(l.createVNode(d.Button,{onClick:this.toggleFormCollapsed},{default:()=>this.formCollspased?"展开":"收起",icon:()=>this.formCollspased?l.createVNode(O,null,null):l.createVNode(R,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,g(t)?t:{default:()=>[t]})]})]})};return l.createVNode(d.Form,l.mergeProps({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},g(a=p(this.formSource,t))?a:{default:()=>[a]})}),r()]})]})}});function te(e){return e}function re(e){const r=l.getCurrentInstance(),t=l.ref();function a(){var c,u;const n=(u=(c=r==null?void 0:r.proxy)==null?void 0:c.$refs)==null?void 0:u[e];n&&(t.value=n)}return l.onMounted(a),l.onUpdated(a),t}exports.FormRender=ee;exports.defineForm=te;exports.useForm=re;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),d=require("@arco-design/web-vue"),V=require("dayjs");const F=Symbol("ArcoConfigProvider"),w="arco",I="$arco",C=e=>{var t,r,a;const u=l.getCurrentInstance(),c=l.inject(F,void 0),n=(a=(r=c==null?void 0:c.prefixCls)!=null?r:(t=u==null?void 0:u.appContext.config.globalProperties[I])==null?void 0:t.classPrefix)!=null?a:w;return e?`${n}-${e}`:n},j=Object.prototype.toString;function $(e){return j.call(e)==="[object Number]"&&e===e}var N=(e,t)=>{for(const[r,a]of t)e[r]=a;return e};const D=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:t}){const r=C("icon"),a=l.computed(()=>[r,`${r}-down`,{[`${r}-spin`]:e.spin}]),u=l.computed(()=>{const n={};return e.size&&(n.fontSize=$(e.size)?`${e.size}px`:e.size),e.rotate&&(n.transform=`rotate(${e.rotate}deg)`),n});return{cls:a,innerStyle:u,onClick:n=>{t("click",n)}}}}),_=["stroke-width","stroke-linecap","stroke-linejoin"],P=l.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1),z=[P];function B(e,t,r,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:t[0]||(t[0]=(...n)=>e.onClick&&e.onClick(...n))},z,14,_)}var b=N(D,[["render",B]]);const O=Object.assign(b,{install:(e,t)=>{var r;const a=(r=t==null?void 0:t.iconPrefix)!=null?r:"";e.component(a+b.name,b)}}),L=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:t}){const r=C("icon"),a=l.computed(()=>[r,`${r}-up`,{[`${r}-spin`]:e.spin}]),u=l.computed(()=>{const n={};return e.size&&(n.fontSize=$(e.size)?`${e.size}px`:e.size),e.rotate&&(n.transform=`rotate(${e.rotate}deg)`),n});return{cls:a,innerStyle:u,onClick:n=>{t("click",n)}}}}),M=["stroke-width","stroke-linecap","stroke-linejoin"],U=l.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1),q=[U];function T(e,t,r,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:t[0]||(t[0]=(...n)=>e.onClick&&e.onClick(...n))},q,14,M)}var v=N(L,[["render",T]]);const R=Object.assign(v,{install:(e,t)=>{var r;const a=(r=t==null?void 0:t.iconPrefix)!=null?r:"";e.component(a+v.name,v)}}),S={id:Symbol("ID"),source:Symbol("Source")};function E(e,t){const r=l.ref({});return e==null||e.forEach(u=>{let c=null;u.default&&(c=(typeof u.default=="function"?u.default():u.default)||null),t&&t[u.key]&&(c=t[u.key]),r.value[u.key]=c}),[r,u=>{r.value=u}]}function A(e){function t(r,a){return e!=null&&e.disabledDate?e.disabledDate(r,a):!1}return(r,a)=>{switch(e==null?void 0:e.type){case"week":return l.createVNode(d.WeekPicker,{modelValue:r[a.key],"onUpdate:modelValue":u=>r[a.key]=u,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"month":return l.createVNode(d.MonthPicker,{modelValue:r[a.key],"onUpdate:modelValue":u=>r[a.key]=u,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"quarter":return l.createVNode(d.QuarterPicker,{modelValue:r[a.key],"onUpdate:modelValue":u=>r[a.key]=u,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"year":return l.createVNode(d.YearPicker,{modelValue:r[a.key],"onUpdate:modelValue":u=>r[a.key]=u,"disabled-date":t,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:r[a.key],"onUpdate:modelValue":u=>r[a.key]=u,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)}}}function Y(e){return(t,r)=>{switch(e==null?void 0:e.type){case"number":return l.createVNode(d.InputNumber,{modelValue:t[r.key],"onUpdate:modelValue":a=>t[r.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:t[r.key],"onUpdate:modelValue":a=>t[r.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 W(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}function G(e){let t=!1;const r=l.ref(new Map);e.options instanceof Function?e.options().then(u=>r.value=u):e.options instanceof Promise?e.options.then(u=>r.value=u):r.value=e.options;function a(){e.autoSumbit}return(u,c)=>{let n;return e.default&&!t&&(u[c.key]=e.default,t=!0),l.createVNode(d.Select,{multiple:e.multiple,modelValue:u[c.key],"onUpdate:modelValue":f=>u[c.key]=f,placeholder:e.placeholder,allowClear:e.clearable,maxTagCount:e.maxTagCount??5,onChange:a},W(n=Array.from(r.value.entries()).map(([f,o])=>l.createVNode(d.Option,{key:f,value:f,label:o},null)))?n:{default:()=>[n]})}}function K(e){function t(){e!=null&&e.autoSumbit}return(r,a)=>(e!=null&&e.default&&(r[a.key]=e.default),l.createVNode(d.Switch,{modelValue:r[a.key],"onUpdate:modelValue":u=>r[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:t},null))}function Q(e){return(t,r)=>{let a=[];function u(f){a=f}function c(f){if(f&&f.length===2){const[o,h]=f.sort(),s=V(o).startOf("days"),y=V(h).endOf("days");t[r.key]=[s.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD"),y.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:t[r.key],"onUpdate:modelValue":f=>t[r.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 X(e){return(t,r)=>l.createVNode(d.Textarea,{modelValue:t[r.key],"onUpdate:modelValue":a=>t[r.key]=a,placeholder:e==null?void 0:e.placeholder,autoSize:e==null?void 0:e.autosize,maxLength:e==null?void 0:e.maxLength},null)}function H(e){return t=>e(t)}function J(){return{input:Y,textarea:X,select:G,date:A,switch:K,dateRange:Q,render:H}}function Z(e,t){t.render||(t.render=a=>a.input());const r=t.render({...J()});return{default:()=>r(e,t)}}function p(e,t){return l.h(d.FormItem,{field:t.key,label:t.title},Z(e,t))}function g(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!l.isVNode(e)}const ee=l.defineComponent({props:{form:{type:Object,required:!0},value:{type:Object,required:!1},modelValue:{type:Object,required:!1},minWidth:{type:Number,required:!1,default:300},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 t=Math.random().toString(32).slice(2).toUpperCase(),r=l.ref(),[a,u]=E(e.form,e.modelValue||e.value),c=l.ref(0),n=l.ref(!0),f=()=>n.value=!n.value;l.provide(S.id,t),l.provide(S.source,a);const o=l.computed(()=>{if(!c.value)return 1;const m=e.form.reduce((i,k)=>i+((k==null?void 0:k.span)||1),0);return c.value-m%c.value}),h=l.computed(()=>e.form.reduce((m,i)=>(i.rule&&(m[i.key]=i.rule),m),{}));function s(){var i;const m=(i=r.value)==null?void 0:i.$el;c.value=Math.floor(m.offsetWidth/e.minWidth)}l.onMounted(()=>{s()});function y(m,i){u({...a,[m]:i})}function x(){var m;(m=r.value)==null||m.resetFields()}return window.addEventListener("resize",s),{formId:t,formSource:a,formInstance:r,formColumns:c,formRules:h,formCollspased:n,formActiosSpan:o,toggleFormCollapsed:f,updateFormField:y,updateFormSource:u,reset:x}},render(){const e=()=>{this.$emit("submit",this.formSource),this.$emit("update:model-value",this.formSource)},t=()=>{const r=[],a=this.footer?{span:this.formColumns}:{span:this.formActiosSpan};if(this.searchable&&(r.push(l.createVNode(d.Button,{type:"primary",htmlType:"submit"},{default:()=>[l.createTextVNode("搜索")]})),r.push(l.createVNode(d.Button,{type:"secondary",onClick:()=>{var u;return(u=this.formInstance)==null?void 0:u.resetFields()}},{default:()=>[l.createTextVNode("重置")]}))),this.submitable&&(r.push(l.createVNode(d.Button,{type:"primary",htmlType:"submit"},{default:()=>[l.createTextVNode("提交")]})),r.push(l.createVNode(d.Button,{type:"secondary",onClick:()=>this.$emit("cancel")},{default:()=>[l.createTextVNode("取消")]}))),this.form.some(u=>!!u.collapsed)&&r.push(l.createVNode(d.Button,{onClick:this.toggleFormCollapsed},{default:()=>this.formCollspased?"展开":"收起",icon:()=>this.formCollspased?l.createVNode(O,null,null):l.createVNode(R,null,null)})),this.$slots.actions&&r.push(...this.$slots.actions()),r.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,g(r)?r:{default:()=>[r]})]})]})};return l.createVNode(d.Form,l.mergeProps({rules:this.formRules,onSubmitSuccess:e},{name:this.name},{"auto-label-width":!0,ref:r=>this.formInstance=r,model:this.formSource}),{default:()=>[l.createVNode(d.Grid,{cols:this.formColumns,"col-gap":10,"rol-gap":10},{default:()=>[this.form.filter(r=>this.formCollspased?!r.collapsed:!0).map(r=>{let a;return l.createVNode(d.GridItem,{span:r.span},g(a=p(this.formSource,r))?a:{default:()=>[a]})}),t()]})]})}});function re(e){return e}function te(e){const t=l.getCurrentInstance(),r=l.ref();function a(){var c,n;const u=(n=(c=t==null?void 0:t.proxy)==null?void 0:c.$refs)==null?void 0:n[e];u&&(r.value=u)}return l.onMounted(a),l.onUpdated(a),r}exports.FormRender=ee;exports.defineForm=re;exports.useForm=te;
@@ -3,5 +3,6 @@ export declare function renderInputItem<T = DataRecord>(options?: RenderInputIte
3
3
  export interface RenderInputItemOptions {
4
4
  placeholder?: string;
5
5
  clearable?: boolean;
6
+ readonly?: boolean;
6
7
  type?: 'string' | 'number';
7
8
  }
package/dist/es/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { getCurrentInstance as D, inject as T, defineComponent as C, computed as s, openBlock as _, createElementBlock as j, normalizeClass as P, normalizeStyle as z, createElementVNode as L, ref as m, createVNode as n, isVNode as O, h as A, provide as x, onMounted as U, mergeProps as Y, createTextVNode as y, onUpdated as E } from "vue";
1
+ import { getCurrentInstance as D, inject as T, defineComponent as C, computed as s, openBlock as _, createElementBlock as j, normalizeClass as P, normalizeStyle as z, createElementVNode as L, ref as i, createVNode as n, isVNode as O, h as A, provide as x, onMounted as U, mergeProps as Y, createTextVNode as k, onUpdated as E } from "vue";
2
2
  import { DatePicker as W, YearPicker as G, QuarterPicker as K, MonthPicker as Q, WeekPicker as X, Input as H, InputNumber as J, Select as Z, Option as p, Switch as ee, RangePicker as re, Textarea as le, FormItem as N, Form as te, Grid as ae, GridItem as F, Button as h, Space as ue } from "@arco-design/web-vue";
3
3
  import w from "dayjs";
4
4
  const ne = Symbol("ArcoConfigProvider"), ce = "arco", de = "$arco", M = (e) => {
@@ -14,7 +14,7 @@ var q = (e, l) => {
14
14
  e[r] = t;
15
15
  return e;
16
16
  };
17
- const ie = C({
17
+ const me = C({
18
18
  name: "IconDown",
19
19
  props: {
20
20
  size: {
@@ -57,7 +57,7 @@ const ie = C({
57
57
  }
58
58
  };
59
59
  }
60
- }), me = ["stroke-width", "stroke-linecap", "stroke-linejoin"], se = /* @__PURE__ */ L("path", {
60
+ }), ie = ["stroke-width", "stroke-linecap", "stroke-linejoin"], se = /* @__PURE__ */ L("path", {
61
61
  d: "M39.6 17.443 24.043 33 8.487 17.443"
62
62
  }, null, -1), oe = [se];
63
63
  function he(e, l, r, t, a, c) {
@@ -72,16 +72,16 @@ function he(e, l, r, t, a, c) {
72
72
  "stroke-linecap": e.strokeLinecap,
73
73
  "stroke-linejoin": e.strokeLinejoin,
74
74
  onClick: l[0] || (l[0] = (...u) => e.onClick && e.onClick(...u))
75
- }, oe, 14, me);
75
+ }, oe, 14, ie);
76
76
  }
77
- var g = /* @__PURE__ */ q(ie, [["render", he]]);
78
- const ke = Object.assign(g, {
77
+ var g = /* @__PURE__ */ q(me, [["render", he]]);
78
+ const ye = Object.assign(g, {
79
79
  install: (e, l) => {
80
80
  var r;
81
81
  const t = (r = l == null ? void 0 : l.iconPrefix) != null ? r : "";
82
82
  e.component(t + g.name, g);
83
83
  }
84
- }), ye = C({
84
+ }), ke = C({
85
85
  name: "IconUp",
86
86
  props: {
87
87
  size: {
@@ -141,7 +141,7 @@ function ge(e, l, r, t, a, c) {
141
141
  onClick: l[0] || (l[0] = (...u) => e.onClick && e.onClick(...u))
142
142
  }, Se, 14, be);
143
143
  }
144
- var $ = /* @__PURE__ */ q(ye, [["render", ge]]);
144
+ var $ = /* @__PURE__ */ q(ke, [["render", ge]]);
145
145
  const $e = Object.assign($, {
146
146
  install: (e, l) => {
147
147
  var r;
@@ -153,7 +153,7 @@ const $e = Object.assign($, {
153
153
  source: Symbol("Source")
154
154
  };
155
155
  function Ce(e, l) {
156
- const r = m({});
156
+ const r = i({});
157
157
  return e == null || e.forEach((a) => {
158
158
  let c = null;
159
159
  a.default && (c = (typeof a.default == "function" ? a.default() : a.default) || null), l && l[a.key] && (c = l[a.key]), r.value[a.key] = c;
@@ -219,6 +219,7 @@ function Fe(e) {
219
219
  modelValue: l[r.key],
220
220
  "onUpdate:modelValue": (t) => l[r.key] = t,
221
221
  hideButton: !0,
222
+ "read-only": e == null ? void 0 : e.readonly,
222
223
  placeholder: e == null ? void 0 : e.placeholder,
223
224
  allowClear: e == null ? void 0 : e.clearable
224
225
  }, null);
@@ -228,6 +229,7 @@ function Fe(e) {
228
229
  modelValue: l[r.key],
229
230
  "onUpdate:modelValue": (t) => l[r.key] = t,
230
231
  placeholder: e == null ? void 0 : e.placeholder,
232
+ readonly: e == null ? void 0 : e.readonly,
231
233
  allowClear: e == null ? void 0 : e.clearable
232
234
  }, null);
233
235
  }
@@ -238,7 +240,7 @@ function we(e) {
238
240
  }
239
241
  function Ve(e) {
240
242
  let l = !1;
241
- const r = m(/* @__PURE__ */ new Map());
243
+ const r = i(/* @__PURE__ */ new Map());
242
244
  e.options instanceof Function ? e.options().then((a) => r.value = a) : e.options instanceof Promise ? e.options.then((a) => r.value = a) : r.value = e.options;
243
245
  function t() {
244
246
  e.autoSumbit;
@@ -251,7 +253,7 @@ function Ve(e) {
251
253
  "onUpdate:modelValue": (d) => a[c.key] = d,
252
254
  placeholder: e.placeholder,
253
255
  allowClear: e.clearable,
254
- maxTagCount: e.maxTagCount,
256
+ maxTagCount: e.maxTagCount ?? 5,
255
257
  onChange: t
256
258
  }, we(u = Array.from(r.value.entries()).map(([d, o]) => n(p, {
257
259
  key: d,
@@ -284,8 +286,8 @@ function De(e) {
284
286
  }
285
287
  function c(d) {
286
288
  if (d && d.length === 2) {
287
- const [o, b] = d.sort(), k = w(o).startOf("days"), v = w(b).endOf("days");
288
- l[r.key] = [k.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD"), v.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD")];
289
+ const [o, b] = d.sort(), y = w(o).startOf("days"), v = w(b).endOf("days");
290
+ l[r.key] = [y.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD"), v.format((e == null ? void 0 : e.valueFormat) || "YYYY-MM-DD")];
289
291
  }
290
292
  }
291
293
  function u(d) {
@@ -391,33 +393,33 @@ const Me = /* @__PURE__ */ C({
391
393
  emits: ["submit", "cancel", "update:model-value"],
392
394
  expose: ["formSource", "updateFormField", "updateFormSource", "reset"],
393
395
  setup(e) {
394
- const l = Math.random().toString(32).slice(2).toUpperCase(), r = m(), [t, a] = Ce(e.form, e.modelValue || e.value), c = m(0), u = m(!0), d = () => u.value = !u.value;
396
+ const l = Math.random().toString(32).slice(2).toUpperCase(), r = i(), [t, a] = Ce(e.form, e.modelValue || e.value), c = i(0), u = i(!0), d = () => u.value = !u.value;
395
397
  x(V.id, l), x(V.source, t);
396
398
  const o = s(() => {
397
399
  if (!c.value)
398
400
  return 1;
399
- const f = e.form.reduce((i, S) => i + ((S == null ? void 0 : S.span) || 1), 0);
401
+ const f = e.form.reduce((m, S) => m + ((S == null ? void 0 : S.span) || 1), 0);
400
402
  return c.value - f % c.value;
401
- }), b = s(() => e.form.reduce((f, i) => (i.rule && (f[i.key] = i.rule), f), {}));
402
- function k() {
403
- var i;
404
- const f = (i = r.value) == null ? void 0 : i.$el;
403
+ }), b = s(() => e.form.reduce((f, m) => (m.rule && (f[m.key] = m.rule), f), {}));
404
+ function y() {
405
+ var m;
406
+ const f = (m = r.value) == null ? void 0 : m.$el;
405
407
  c.value = Math.floor(f.offsetWidth / e.minWidth);
406
408
  }
407
409
  U(() => {
408
- k();
410
+ y();
409
411
  });
410
- function v(f, i) {
412
+ function v(f, m) {
411
413
  a({
412
414
  ...t,
413
- [f]: i
415
+ [f]: m
414
416
  });
415
417
  }
416
418
  function R() {
417
419
  var f;
418
420
  (f = r.value) == null || f.resetFields();
419
421
  }
420
- return window.addEventListener("resize", k), {
422
+ return window.addEventListener("resize", y), {
421
423
  formId: l,
422
424
  formSource: t,
423
425
  formInstance: r,
@@ -444,7 +446,7 @@ const Me = /* @__PURE__ */ C({
444
446
  type: "primary",
445
447
  htmlType: "submit"
446
448
  }, {
447
- default: () => [y("搜索")]
449
+ default: () => [k("搜索")]
448
450
  })), r.push(n(h, {
449
451
  type: "secondary",
450
452
  onClick: () => {
@@ -452,22 +454,22 @@ const Me = /* @__PURE__ */ C({
452
454
  return (a = this.formInstance) == null ? void 0 : a.resetFields();
453
455
  }
454
456
  }, {
455
- default: () => [y("重置")]
457
+ default: () => [k("重置")]
456
458
  }))), this.submitable && (r.push(n(h, {
457
459
  type: "primary",
458
460
  htmlType: "submit"
459
461
  }, {
460
- default: () => [y("提交")]
462
+ default: () => [k("提交")]
461
463
  })), r.push(n(h, {
462
464
  type: "secondary",
463
465
  onClick: () => this.$emit("cancel")
464
466
  }, {
465
- default: () => [y("取消")]
467
+ default: () => [k("取消")]
466
468
  }))), this.form.some((a) => !!a.collapsed) && r.push(n(h, {
467
469
  onClick: this.toggleFormCollapsed
468
470
  }, {
469
471
  default: () => this.formCollspased ? "展开" : "收起",
470
- icon: () => this.formCollspased ? n(ke, null, null) : n($e, null, null)
472
+ icon: () => this.formCollspased ? n(ye, null, null) : n($e, null, null)
471
473
  })), this.$slots.actions && r.push(...this.$slots.actions()), r.length)
472
474
  return n(F, t, {
473
475
  default: () => [n(N, {
@@ -511,7 +513,7 @@ function Be(e) {
511
513
  return e;
512
514
  }
513
515
  function qe(e) {
514
- const l = D(), r = m();
516
+ const l = D(), r = i();
515
517
  function t() {
516
518
  var c, u;
517
519
  const a = (u = (c = l == null ? void 0 : l.proxy) == null ? void 0 : c.$refs) == null ? void 0 : u[e];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gopowerteam/form-render",
3
3
  "type": "module",
4
- "version": "0.0.7",
4
+ "version": "0.0.8",
5
5
  "author": {
6
6
  "name": "zhuchentong",
7
7
  "email": "2037630@gmail.com"