@gopowerteam/form-render 0.0.37 → 0.0.39

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,7 +1,7 @@
1
1
  import { type CascaderOption } from '@arco-design/web-vue';
2
2
  import { type Ref } from 'vue';
3
- import type { DataRecord, FormItemOptions } from '../../interfaces';
4
- export declare function renderCascaderItem<T = DataRecord>(options: RenderCascaderItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
3
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
4
+ export declare function renderCascaderItem<T = DataRecord>(options: RenderCascaderItemOptions): FormItemRenderReturn<T>;
5
5
  export type SelectOptions = CascaderOption[];
6
6
  export interface RenderCascaderItemOptions {
7
7
  placeholder?: string;
@@ -1,10 +1,10 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
2
  /**
3
3
  * 日期节点表单渲染
4
4
  * @param options 日期节点配置选项
5
5
  * @returns JSX
6
6
  */
7
- export declare function renderDateItem<T = DataRecord>(options?: RenderDateItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
7
+ export declare function renderDateItem<T = DataRecord>(options?: RenderDateItemOptions): FormItemRenderReturn<T>;
8
8
  export interface RenderDateItemOptions {
9
9
  placeholder?: string;
10
10
  clearable?: boolean;
@@ -1,10 +1,10 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
2
  /**
3
3
  * 日期节点表单渲染
4
4
  * @param options 日期节点配置选项
5
5
  * @returns JSX
6
6
  */
7
- export declare function renderDateRangeItem<T = DataRecord>(options?: RenderDateRangeItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
7
+ export declare function renderDateRangeItem<T = DataRecord>(options?: RenderDateRangeItemOptions): FormItemRenderReturn<T>;
8
8
  export interface RenderDateRangeItemOptions {
9
9
  placeholder?: string;
10
10
  clearable?: boolean;
@@ -1,11 +1,11 @@
1
1
  export declare function FormItemRenders<T>(): {
2
- input: (options?: import("./input").RenderInputItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
3
- textarea: (options?: import("./textarea").RenderTextareaItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
4
- select: (options: import("./select").RenderSelectItemOptions) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
5
- treeSelect: (options: import("./tree-select").RenderTreeSelectItemOptions) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
6
- date: (options?: import("./date").RenderDateItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
7
- switch: (options?: import("./switch").RenderSwitchItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<Record<string, any>>) => import("vue/jsx-runtime").JSX.Element;
8
- dateRange: (options?: import("./date-range").RenderDateRangeItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
9
- render: (renderer: import("./render").RenderInputItemOptions<T>) => (data: T) => JSX.Element;
10
- cascader: (options: import("./cascader").RenderCascaderItemOptions) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
2
+ input: (options?: import("./input").RenderInputItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
3
+ textarea: (options?: import("./textarea").RenderTextareaItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
4
+ select: (options: import("./select").RenderSelectItemOptions) => import("..").FormItemRenderReturn<T>;
5
+ treeSelect: (options: import("./tree-select").RenderTreeSelectItemOptions) => import("..").FormItemRenderReturn<T>;
6
+ date: (options?: import("./date").RenderDateItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
7
+ switch: (options?: import("./switch").RenderSwitchItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
8
+ dateRange: (options?: import("./date-range").RenderDateRangeItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
9
+ render: (renderer: import("./render").RenderInputItemOptions<T>) => import("..").FormItemRenderReturn<T>;
10
+ cascader: (options: import("./cascader").RenderCascaderItemOptions) => import("..").FormItemRenderReturn<T>;
11
11
  };
@@ -1,5 +1,5 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
2
- export declare function renderInputItem<T = DataRecord>(options?: RenderInputItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderInputItem<T = DataRecord>(options?: RenderInputItemOptions): FormItemRenderReturn<T>;
3
3
  export interface RenderInputItemOptions {
4
4
  placeholder?: string;
5
5
  clearable?: boolean;
@@ -1,5 +1,5 @@
1
- import type { DataRecord } from '../../interfaces';
2
- export declare function renderRenderItem<T = DataRecord>(renderer: RenderInputItemOptions<T>): (data: T) => JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderRenderItem<T = DataRecord>(renderer: RenderInputItemOptions<T>): FormItemRenderReturn<T>;
3
3
  export interface RenderInputItemOptions<T> {
4
4
  (record: T): JSX.Element;
5
5
  }
@@ -1,6 +1,6 @@
1
1
  import { type Ref } from 'vue';
2
- import type { DataRecord, FormItemOptions } from '../../interfaces';
3
- export declare function renderSelectItem<T = DataRecord>(options: RenderSelectItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
2
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
3
+ export declare function renderSelectItem<T = DataRecord>(options: RenderSelectItemOptions): FormItemRenderReturn<T>;
4
4
  export type SelectOptions = Map<string | number, string>;
5
5
  export interface RenderSelectItemOptions {
6
6
  placeholder?: string;
@@ -1,5 +1,5 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
2
- export declare function renderSwitchItem<T = DataRecord>(options?: RenderSwitchItemOptions): (data: T, form: FormItemOptions) => import("vue/jsx-runtime").JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderSwitchItem<T = DataRecord>(options?: RenderSwitchItemOptions): FormItemRenderReturn<T>;
3
3
  export type SelectOptions = Map<string | number, string>;
4
4
  export interface RenderSwitchItemOptions {
5
5
  size?: 'small' | 'medium';
@@ -1,5 +1,5 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
2
- export declare function renderTextareaItem<T = DataRecord>(options?: RenderTextareaItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderTextareaItem<T = DataRecord>(options?: RenderTextareaItemOptions): FormItemRenderReturn<T>;
3
3
  export interface RenderTextareaItemOptions {
4
4
  placeholder?: string;
5
5
  rows?: number;
@@ -1,7 +1,7 @@
1
1
  import { type TreeFieldNames, type TreeNodeData } from '@arco-design/web-vue';
2
2
  import { type Ref } from 'vue';
3
- import type { DataRecord, FormItemOptions } from '../../interfaces';
4
- export declare function renderTreeSelectItem<T = DataRecord>(options: RenderTreeSelectItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
3
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
4
+ export declare function renderTreeSelectItem<T = DataRecord>(options: RenderTreeSelectItemOptions): FormItemRenderReturn<T>;
5
5
  export type SelectOptions = TreeNodeData[];
6
6
  export interface RenderTreeSelectItemOptions {
7
7
  placeholder?: string;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("vue"),i=require("@arco-design/web-vue"),w=require("dayjs"),_=require("./resolver.cjs");const M=Symbol("ArcoConfigProvider"),T="arco",P="$arco",O=e=>{var t,l,r;const n=a.getCurrentInstance(),o=a.inject(M,void 0),s=(r=(l=o==null?void 0:o.prefixCls)!=null?l:(t=n==null?void 0:n.appContext.config.globalProperties[P])==null?void 0:t.classPrefix)!=null?r:T;return e?`${s}-${e}`:s},R=Object.prototype.toString;function I(e){return R.call(e)==="[object Number]"&&e===e}var j=(e,t)=>{for(const[l,r]of t)e[l]=r;return e};const p=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:t}){const l=O("icon"),r=a.computed(()=>[l,`${l}-down`,{[`${l}-spin`]:e.spin}]),n=a.computed(()=>{const s={};return e.size&&(s.fontSize=I(e.size)?`${e.size}px`:e.size),e.rotate&&(s.transform=`rotate(${e.rotate}deg)`),s});return{cls:r,innerStyle:n,onClick:s=>{t("click",s)}}}}),z=["stroke-width","stroke-linecap","stroke-linejoin"],E=a.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1),L=[E];function q(e,t,l,r,n,o){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:t[0]||(t[0]=(...s)=>e.onClick&&e.onClick(...s))},L,14,z)}var C=j(p,[["render",q]]);const B=Object.assign(C,{install:(e,t)=>{var l;const r=(l=t==null?void 0:t.iconPrefix)!=null?l:"";e.component(r+C.name,C)}}),U=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:t}){const l=O("icon"),r=a.computed(()=>[l,`${l}-up`,{[`${l}-spin`]:e.spin}]),n=a.computed(()=>{const s={};return e.size&&(s.fontSize=I(e.size)?`${e.size}px`:e.size),e.rotate&&(s.transform=`rotate(${e.rotate}deg)`),s});return{cls:r,innerStyle:n,onClick:s=>{t("click",s)}}}}),W=["stroke-width","stroke-linecap","stroke-linejoin"],A=a.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1),Y=[A];function G(e,t,l,r,n,o){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:t[0]||(t[0]=(...s)=>e.onClick&&e.onClick(...s))},Y,14,W)}var V=j(U,[["render",G]]);const K=Object.assign(V,{install:(e,t)=>{var l;const r=(l=t==null?void 0:t.iconPrefix)!=null?l:"";e.component(r+V.name,V)}}),N={id:Symbol("ID"),source:Symbol("Source")};function Q(e,t){const l=a.ref({});return e==null||e.forEach(n=>{let o=null;n.default&&(o=(typeof n.default=="function"?n.default():n.default)||null),t&&t[n.key]!==void 0&&(o=t[n.key]),l.value[n.key]=o}),[l,n=>{l.value=n}]}function X(e){function t(l,r){return e!=null&&e.disabledDate?e.disabledDate(l,r):!1}return(l,r)=>{switch(e==null?void 0:e.type){case"week":return a.createVNode(i.WeekPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"month":return a.createVNode(i.MonthPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"quarter":return a.createVNode(i.QuarterPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"year":return a.createVNode(i.YearPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"date":default:return a.createVNode(i.DatePicker,{"disabled-input":!0,modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)}}}function H(e){return(t,l)=>{switch(e==null?void 0:e.type){case"number":return a.createVNode(i.InputNumber,{modelValue:t[l.key],"onUpdate:modelValue":r=>t[l.key]=r,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(i.Input,{modelValue:t[l.key],"onUpdate:modelValue":r=>t[l.key]=r,placeholder:e==null?void 0:e.placeholder,readonly:e==null?void 0:e.readonly,allowClear:e==null?void 0:e.clearable},null)}}}typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;function F(e,t,l){const r=a.watch(e,(...n)=>(a.nextTick(()=>r()),t(...n)),l);return r}function J(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!a.isVNode(e)}const v=new WeakMap;function Z(){const e=a.ref(new Map);return[e,l=>e.value=l]}function ee(e){let t,l=!1;const[r,n]=Z(),o=()=>{if(!e.autoSumbit||!t)return;let c=t;for(;c&&c.$el.tagName!=="FORM";)c=c.$parent;c&&c.$el&&c.$el.dispatchEvent(new Event("submit"))},s=(c,u)=>{const d=c();d instanceof Promise?d.then(u):u(d)},h=async()=>{const c=v.get(e.options);switch(typeof c){case"function":v.set(e.options,n);return;case"object":n(c);return}v.set(e.options,n),s(e.options,u=>{const d=v.get(e.options);v.set(e.options,u),d(u)})},b=()=>{s(e.options,c=>{n(c)})};switch(!0){case e.options instanceof Function:{e.cache!==!1?h():b();break}case a.isRef(e.options):{F(e.options,()=>{n(e.options.value)},{immediate:!0});break}default:r.value=e.options}return(c,u)=>{let d;return e.default&&!l&&(c[u.key]=e.default,l=!0),a.createVNode(i.Select,{ref:m=>t=m,multiple:e.multiple,modelValue:c[u.key],"onUpdate:modelValue":m=>c[u.key]=m,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:o},J(d=Array.from(r.value.entries()).map(([m,k])=>a.createVNode(i.Option,{key:m,value:m,label:k},null)))?d:{default:()=>[d]})}}function te(e){function t(){e!=null&&e.autoSumbit}return(l,r)=>(e!=null&&e.default&&(l[r.key]=e.default),a.createVNode(i.Switch,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.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:t},null))}function re(e){return(t,l)=>{let r=[];function n(h){r=h}function o(h){if(h&&h.length===2){const[b,c]=h.sort(),u=w(b).startOf("days"),d=w(c).endOf("days");t[l.key]=[u.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD"),d.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD")]}}function s(h){return e!=null&&e.disabledDate?e.disabledDate(r,h):!1}return a.createVNode("div",null,[a.createVNode(i.RangePicker,{"disabled-input":!0,style:{width:"300px"},modelValue:t[l.key],"onUpdate:modelValue":h=>t[l.key]=h,onSelect:n,onChange:o,mode:e==null?void 0:e.type,allowClear:e==null?void 0:e.clearable,"disabled-date":s,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)])}}function le(e){return(t,l)=>a.createVNode(i.Textarea,{modelValue:t[l.key],"onUpdate:modelValue":r=>t[l.key]=r,placeholder:e==null?void 0:e.placeholder,autoSize:e==null?void 0:e.autosize,maxLength:e==null?void 0:e.maxLength},null)}const S=new WeakMap;function ae(){const e=a.ref([]);return[e,l=>e.value=l]}function ne(e){let t,l=!1;const[r,n]=ae(),o=()=>{if(!e.autoSumbit||!t)return;let u=t;for(;u&&u.$el.tagName!=="FORM";)u=u.$parent;u&&u.$el&&u.$el.dispatchEvent(new Event("submit"))},s=(u,d)=>{const m=u();m instanceof Promise?m.then(d):d(m)},h=async()=>{const u=S.get(e.options);switch(typeof u){case"function":S.set(e.options,n);return;case"object":n(u);return}S.set(e.options,n),s(e.options,d=>{const m=S.get(e.options);S.set(e.options,d),m(d)})},b=()=>{s(e.options,u=>{n(u)})};switch(!0){case e.options instanceof Function:{e.cache!==!1?h():b();break}case a.isRef(e.options):{F(e.options,()=>{n(e.options.value)},{immediate:!0});break}default:r.value=e.options}function c(u,d){var f;const m=((f=e.fieldNames)==null?void 0:f.title)||"title",k=d[m];return k?k.toLowerCase().includes(u.toLowerCase()):!1}return(u,d)=>(e.default&&!l&&(u[d.key]=e.default,l=!0),a.createVNode(i.TreeSelect,{ref:m=>t=m,multiple:e.multiple,modelValue:u[d.key],"onUpdate:modelValue":m=>u[d.key]=m,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:o,filterTreeNode:c,data:r.value,fieldNames:e.fieldNames,treeProps:{defaultExpandAll:e.defaultExpandAll}},null))}const g=new WeakMap;function ue(){const e=a.ref([]);return[e,l=>e.value=l]}function ce(e){let t,l=!1;const[r,n]=ue(),o=()=>{if(!e.autoSumbit||!t)return;let c=t;for(;c&&c.$el.tagName!=="FORM";)c=c.$parent;c&&c.$el&&c.$el.dispatchEvent(new Event("submit"))},s=(c,u)=>{const d=c();d instanceof Promise?d.then(u):u(d)},h=async()=>{const c=g.get(e.options);switch(typeof c){case"function":g.set(e.options,n);return;case"object":n(c);return}g.set(e.options,n),s(e.options,u=>{const d=g.get(e.options);g.set(e.options,u),d(u)})},b=()=>{s(e.options,c=>{n(c)})};switch(!0){case e.options instanceof Function:{e.cache!==!1?h():b();break}case a.isRef(e.options):{F(e.options,()=>{n(e.options.value)},{immediate:!0});break}default:r.value=e.options}return(c,u)=>(e.default&&!l&&(c[u.key]=e.default,l=!0),a.createVNode(i.Cascader,{pathMode:e.pathMode,ref:d=>t=d,multiple:e.multiple,modelValue:c[u.key],"onUpdate:modelValue":d=>c[u.key]=d,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:o,options:r.value},null))}function de(e){return t=>e(t)}function se(){return{input:H,textarea:le,select:ee,treeSelect:ne,date:X,switch:te,dateRange:re,render:de,cascader:ce}}function oe(e,t){t.render||(t.render=r=>r.input());const l=t.render({...se()});return{default:()=>l(e,t)}}function ie(e,t){return a.h(i.FormItem,{field:t.key,label:t.title},oe(e,t))}function x(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:400},name:{type:String,required:!1,default:`form-${Math.random().toString(32).slice(2)}`},id:{type:String,required:!1,default:`form-${Math.random().toString(32).slice(2)}`},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","validate"],setup(e){const t=a.ref(),[l,r]=Q(e.form,e.modelValue||e.value),n=a.ref(e.columns||0),o=a.ref(!0),s=()=>o.value=!o.value;a.provide(N.id,e.id),a.provide(N.source,l);const h=a.computed(()=>{if(!n.value)return 1;const f=e.form.reduce((y,$)=>y+(($==null?void 0:$.span)||1),0);return n.value-f%n.value}),b=a.computed(()=>e.form.reduce((f,y)=>(y.rule&&(f[y.key]=y.rule),f),{}));function c(){var y;if(e.columns)return;const f=(y=t.value)==null?void 0:y.$el;f&&(n.value=Math.floor(f.offsetWidth/e.minWidth))}function u(){var y;const f=(y=t.value)==null?void 0:y.$el;f&&(f.id=e.id)}a.onMounted(()=>{c(),u()});function d(f,y){l.value[f]=y,r({...l})}function m(){var f;(f=t.value)==null||f.resetFields()}function k(){var f;return(f=t.value)==null?void 0:f.validate()}return window.addEventListener("resize",c),{formSource:l,formInstance:t,formColumns:n,formRules:b,formCollspased:o,formActiosSpan:h,toggleFormCollapsed:s,updateFormField:d,updateFormSource:r,reset:m,validate:k}},render(){const e=()=>{this.$emit("submit",this.formSource),this.$emit("update:model-value",this.formSource)},t=()=>{const r=[],n=this.footer?{span:this.formColumns}:{span:this.formActiosSpan};if(this.searchable&&(r.push(a.createVNode(i.Button,{type:"primary",htmlType:"submit"},{default:()=>[a.createTextVNode("搜索")]})),r.push(a.createVNode(i.Button,{type:"secondary",onClick:()=>{var o;return(o=this.formInstance)==null?void 0:o.resetFields()}},{default:()=>[a.createTextVNode("重置")]}))),this.submitable&&(r.push(a.createVNode(i.Button,{type:"primary",htmlType:"submit"},{default:()=>[a.createTextVNode("提交")]})),r.push(a.createVNode(i.Button,{type:"secondary",onClick:()=>this.$emit("cancel")},{default:()=>[a.createTextVNode("取消")]}))),this.form.some(o=>!!o.collapsed)&&r.push(a.createVNode(i.Button,{onClick:this.toggleFormCollapsed},{default:()=>this.formCollspased?"展开":"收起",icon:()=>this.formCollspased?a.createVNode(B,null,null):a.createVNode(K,null,null)})),this.$slots.actions&&r.push(...this.$slots.actions()),r.length)return a.createVNode(i.GridItem,n,{default:()=>[a.createVNode(i.FormItem,{hideLabel:!0,contentClass:this.footer?"form-footer":""},{default:()=>[a.createVNode(i.Space,null,x(r)?r:{default:()=>[r]})]})]})},l=this.form.filter(r=>this.formCollspased?!r.collapsed:!0).filter(r=>{switch(!0){case typeof r.visiable=="boolean":return r.visiable;case typeof r.visiable=="function":return r.visiable(this.formSource);default:return!0}});return a.createVNode("div",{class:"form-render"},[a.createVNode(i.Form,a.mergeProps({name:this.name},{labelAlign:"left",layout:this.$props.layout,rules:this.formRules,onSubmitSuccess:e,"auto-label-width":!0,ref:r=>this.formInstance=r,model:this.formSource}),{default:()=>[a.createVNode(i.Grid,{cols:this.formColumns,"col-gap":24,"rol-gap":10},{default:()=>[l.filter(()=>this.formColumns!==0).map(r=>{let n;return a.createVNode(i.GridItem,{span:r.span},x(n=ie(this.formSource,r))?n:{default:()=>[n]})}),t()]})]})])}});function fe(e){return e}function me(e){const t=a.getCurrentInstance(),l=a.ref();function r(){var o,s;const n=(s=(o=t==null?void 0:t.proxy)==null?void 0:o.$refs)==null?void 0:s[e];n&&(l.value=n)}return a.onMounted(r),a.onUpdated(r),l}const he={install(e,t){e.component("FormRender",D)}};exports.FormRenderResolver=_.FormRenderResolver;exports.FormRender=D;exports.default=he;exports.defineForm=fe;exports.useForm=me;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("vue"),i=require("@arco-design/web-vue"),w=require("dayjs"),_=require("./resolver.cjs");const M=Symbol("ArcoConfigProvider"),T="arco",P="$arco",O=e=>{var t,l,r;const n=a.getCurrentInstance(),o=a.inject(M,void 0),s=(r=(l=o==null?void 0:o.prefixCls)!=null?l:(t=n==null?void 0:n.appContext.config.globalProperties[P])==null?void 0:t.classPrefix)!=null?r:T;return e?`${s}-${e}`:s},R=Object.prototype.toString;function I(e){return R.call(e)==="[object Number]"&&e===e}var j=(e,t)=>{for(const[l,r]of t)e[l]=r;return e};const p=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:t}){const l=O("icon"),r=a.computed(()=>[l,`${l}-down`,{[`${l}-spin`]:e.spin}]),n=a.computed(()=>{const s={};return e.size&&(s.fontSize=I(e.size)?`${e.size}px`:e.size),e.rotate&&(s.transform=`rotate(${e.rotate}deg)`),s});return{cls:r,innerStyle:n,onClick:s=>{t("click",s)}}}}),z=["stroke-width","stroke-linecap","stroke-linejoin"],E=a.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1),L=[E];function q(e,t,l,r,n,o){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:t[0]||(t[0]=(...s)=>e.onClick&&e.onClick(...s))},L,14,z)}var C=j(p,[["render",q]]);const B=Object.assign(C,{install:(e,t)=>{var l;const r=(l=t==null?void 0:t.iconPrefix)!=null?l:"";e.component(r+C.name,C)}}),U=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:t}){const l=O("icon"),r=a.computed(()=>[l,`${l}-up`,{[`${l}-spin`]:e.spin}]),n=a.computed(()=>{const s={};return e.size&&(s.fontSize=I(e.size)?`${e.size}px`:e.size),e.rotate&&(s.transform=`rotate(${e.rotate}deg)`),s});return{cls:r,innerStyle:n,onClick:s=>{t("click",s)}}}}),W=["stroke-width","stroke-linecap","stroke-linejoin"],A=a.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1),Y=[A];function G(e,t,l,r,n,o){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:t[0]||(t[0]=(...s)=>e.onClick&&e.onClick(...s))},Y,14,W)}var V=j(U,[["render",G]]);const K=Object.assign(V,{install:(e,t)=>{var l;const r=(l=t==null?void 0:t.iconPrefix)!=null?l:"";e.component(r+V.name,V)}}),N={id:Symbol("ID"),source:Symbol("Source")};function Q(e,t){const l=a.ref({});return e==null||e.forEach(n=>{let o=null;n.default&&(o=(typeof n.default=="function"?n.default():n.default)||null),t&&t[n.key]!==void 0&&(o=t[n.key]),l.value[n.key]=o}),[l,n=>{l.value=n}]}function X(e){function t(l,r){return e!=null&&e.disabledDate?e.disabledDate(l,r):!1}return(l,r)=>{switch(e==null?void 0:e.type){case"week":return a.createVNode(i.WeekPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"month":return a.createVNode(i.MonthPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"quarter":return a.createVNode(i.QuarterPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"year":return a.createVNode(i.YearPicker,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null);case"date":default:return a.createVNode(i.DatePicker,{"disabled-input":!0,modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.key]=n,"disabled-date":t,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)}}}function H(e){return(t,l)=>{switch(e==null?void 0:e.type){case"number":return a.createVNode(i.InputNumber,{modelValue:t[l.key],"onUpdate:modelValue":r=>t[l.key]=r,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(i.Input,{modelValue:t[l.key],"onUpdate:modelValue":r=>t[l.key]=r,placeholder:e==null?void 0:e.placeholder,readonly:e==null?void 0:e.readonly,allowClear:e==null?void 0:e.clearable},null)}}}typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;function F(e,t,l){const r=a.watch(e,(...n)=>(a.nextTick(()=>r()),t(...n)),l);return r}function J(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!a.isVNode(e)}const v=new WeakMap;function Z(){const e=a.ref(new Map);return[e,l=>e.value=l]}function ee(e){let t,l=!1;const[r,n]=Z(),o=()=>{if(!e.autoSumbit||!t)return;let c=t;for(;c&&c.$el.tagName!=="FORM";)c=c.$parent;c&&c.$el&&c.$el.dispatchEvent(new Event("submit"))},s=(c,u)=>{const d=c();d instanceof Promise?d.then(u):u(d)},h=async()=>{const c=v.get(e.options);switch(typeof c){case"function":v.set(e.options,n);return;case"object":n(c);return}v.set(e.options,n),s(e.options,u=>{const d=v.get(e.options);v.set(e.options,u),d(u)})},b=()=>{s(e.options,c=>{n(c)})};switch(!0){case e.options instanceof Function:{e.cache!==!1?h():b();break}case a.isRef(e.options):{F(e.options,()=>{n(e.options.value)},{immediate:!0});break}default:r.value=e.options}return(c,u)=>{let d;return e.default&&!l&&(c[u.key]=e.default,l=!0),a.createVNode(i.Select,{ref:m=>t=m,multiple:e.multiple,modelValue:c[u.key],"onUpdate:modelValue":m=>c[u.key]=m,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:o},J(d=Array.from(r.value.entries()).map(([m,k])=>a.createVNode(i.Option,{key:m,value:m,label:k},null)))?d:{default:()=>[d]})}}function te(e){function t(){e!=null&&e.autoSumbit}return(l,r)=>(e!=null&&e.default&&(l[r.key]=e.default),a.createVNode(i.Switch,{modelValue:l[r.key],"onUpdate:modelValue":n=>l[r.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:t},null))}function re(e){return(t,l)=>{let r=[];function n(h){r=h}function o(h){if(h&&h.length===2){const[b,c]=h.sort(),u=w(b).startOf("days"),d=w(c).endOf("days");t[l.key]=[u.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD"),d.format((e==null?void 0:e.valueFormat)||"YYYY-MM-DD")]}}function s(h){return e!=null&&e.disabledDate?e.disabledDate(r,h):!1}return a.createVNode("div",null,[a.createVNode(i.RangePicker,{"disabled-input":!0,style:{width:"300px"},modelValue:t[l.key],"onUpdate:modelValue":h=>t[l.key]=h,onSelect:n,onChange:o,mode:e==null?void 0:e.type,allowClear:e==null?void 0:e.clearable,"disabled-date":s,format:e==null?void 0:e.labelFormat,"value-format":e==null?void 0:e.valueFormat},null)])}}function le(e){return(t,l)=>a.createVNode(i.Textarea,{modelValue:t[l.key],"onUpdate:modelValue":r=>t[l.key]=r,placeholder:e==null?void 0:e.placeholder,autoSize:e==null?void 0:e.autosize,maxLength:e==null?void 0:e.maxLength},null)}const S=new WeakMap;function ae(){const e=a.ref([]);return[e,l=>e.value=l]}function ne(e){let t,l=!1;const[r,n]=ae(),o=()=>{if(!e.autoSumbit||!t)return;let u=t;for(;u&&u.$el.tagName!=="FORM";)u=u.$parent;u&&u.$el&&u.$el.dispatchEvent(new Event("submit"))},s=(u,d)=>{const m=u();m instanceof Promise?m.then(d):d(m)},h=async()=>{const u=S.get(e.options);switch(typeof u){case"function":S.set(e.options,n);return;case"object":n(u);return}S.set(e.options,n),s(e.options,d=>{const m=S.get(e.options);S.set(e.options,d),m(d)})},b=()=>{s(e.options,u=>{n(u)})};switch(!0){case e.options instanceof Function:{e.cache!==!1?h():b();break}case a.isRef(e.options):{F(e.options,()=>{n(e.options.value)},{immediate:!0});break}default:r.value=e.options}function c(u,d){var f;const m=((f=e.fieldNames)==null?void 0:f.title)||"title",k=d[m];return k?k.toLowerCase().includes(u.toLowerCase()):!1}return(u,d)=>(e.default&&!l&&(u[d.key]=e.default,l=!0),a.createVNode(i.TreeSelect,{ref:m=>t=m,multiple:e.multiple,modelValue:u[d.key],"onUpdate:modelValue":m=>u[d.key]=m,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:o,filterTreeNode:c,data:r.value,fieldNames:e.fieldNames,treeProps:{defaultExpandAll:e.defaultExpandAll}},null))}const g=new WeakMap;function ue(){const e=a.ref([]);return[e,l=>e.value=l]}function ce(e){let t,l=!1;const[r,n]=ue(),o=()=>{if(!e.autoSumbit||!t)return;let c=t;for(;c&&c.$el.tagName!=="FORM";)c=c.$parent;c&&c.$el&&c.$el.dispatchEvent(new Event("submit"))},s=(c,u)=>{const d=c();d instanceof Promise?d.then(u):u(d)},h=async()=>{const c=g.get(e.options);switch(typeof c){case"function":g.set(e.options,n);return;case"object":n(c);return}g.set(e.options,n),s(e.options,u=>{const d=g.get(e.options);g.set(e.options,u),d(u)})},b=()=>{s(e.options,c=>{n(c)})};switch(!0){case e.options instanceof Function:{e.cache!==!1?h():b();break}case a.isRef(e.options):{F(e.options,()=>{n(e.options.value)},{immediate:!0});break}default:r.value=e.options}return(c,u)=>(e.default&&!l&&(c[u.key]=e.default,l=!0),a.createVNode(i.Cascader,{pathMode:e.pathMode,ref:d=>t=d,multiple:e.multiple,modelValue:c[u.key],"onUpdate:modelValue":d=>c[u.key]=d,placeholder:e.placeholder,allowClear:e.clearable,allowSearch:e.searchable,maxTagCount:e.maxTagCount??2,onChange:o,options:r.value},null))}function de(e){return t=>e(t)}function se(){return{input:H,textarea:le,select:ee,treeSelect:ne,date:X,switch:te,dateRange:re,render:de,cascader:ce}}function oe(e,t){t.render||(t.render=r=>r.input());const l=t.render({...se()});return{default:()=>l(e,t)}}function ie(e,t){return a.h(i.FormItem,{field:t.key,label:t.title},oe(e,t))}function x(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:400},name:{type:String,required:!1,default:`form-${Math.random().toString(32).slice(2)}`},id:{type:String,required:!1,default:`form-${Math.random().toString(32).slice(2)}`},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","validate"],setup(e){const t=a.ref(),[l,r]=Q(e.form,e.modelValue||e.value),n=a.ref(e.columns||0),o=a.ref(!0),s=()=>o.value=!o.value;a.provide(N.id,e.id),a.provide(N.source,l);const h=a.computed(()=>{if(!n.value)return 1;const f=e.form.reduce((y,$)=>y+(($==null?void 0:$.span)||1),0);return n.value-f%n.value}),b=a.computed(()=>e.form.reduce((f,y)=>(y.rule&&(f[y.key]=y.rule),f),{}));function c(){var y;if(e.columns)return;const f=(y=t.value)==null?void 0:y.$el;f&&(n.value=Math.floor(f.offsetWidth/e.minWidth))}function u(){var y;const f=(y=t.value)==null?void 0:y.$el;f&&(f.id=e.id)}a.onMounted(()=>{c(),u()});function d(f,y){l.value[f]=y,r({...l.value})}function m(){var f;(f=t.value)==null||f.resetFields()}function k(){var f;return(f=t.value)==null?void 0:f.validate()}return window.addEventListener("resize",c),{formSource:l,formInstance:t,formColumns:n,formRules:b,formCollspased:o,formActiosSpan:h,toggleFormCollapsed:s,updateFormField:d,updateFormSource:r,reset:m,validate:k}},render(){const e=()=>{this.$emit("submit",this.formSource),this.$emit("update:model-value",this.formSource)},t=()=>{const r=[],n=this.footer?{span:this.formColumns}:{span:this.formActiosSpan};if(this.searchable&&(r.push(a.createVNode(i.Button,{type:"primary",htmlType:"submit"},{default:()=>[a.createTextVNode("搜索")]})),r.push(a.createVNode(i.Button,{type:"secondary",onClick:()=>{var o;return(o=this.formInstance)==null?void 0:o.resetFields()}},{default:()=>[a.createTextVNode("重置")]}))),this.submitable&&(r.push(a.createVNode(i.Button,{type:"primary",htmlType:"submit"},{default:()=>[a.createTextVNode("提交")]})),r.push(a.createVNode(i.Button,{type:"secondary",onClick:()=>this.$emit("cancel")},{default:()=>[a.createTextVNode("取消")]}))),this.form.some(o=>!!o.collapsed)&&r.push(a.createVNode(i.Button,{onClick:this.toggleFormCollapsed},{default:()=>this.formCollspased?"展开":"收起",icon:()=>this.formCollspased?a.createVNode(B,null,null):a.createVNode(K,null,null)})),this.$slots.actions&&r.push(...this.$slots.actions()),r.length)return a.createVNode(i.GridItem,n,{default:()=>[a.createVNode(i.FormItem,{hideLabel:!0,contentClass:this.footer?"form-footer":""},{default:()=>[a.createVNode(i.Space,null,x(r)?r:{default:()=>[r]})]})]})},l=this.form.filter(r=>this.formCollspased?!r.collapsed:!0).filter(r=>{switch(!0){case typeof r.visiable=="boolean":return r.visiable;case typeof r.visiable=="function":return r.visiable(this.formSource);default:return!0}});return a.createVNode("div",{class:"form-render"},[a.createVNode(i.Form,a.mergeProps({name:this.name},{labelAlign:"left",layout:this.$props.layout,rules:this.formRules,onSubmitSuccess:e,"auto-label-width":!0,ref:r=>this.formInstance=r,model:this.formSource}),{default:()=>[a.createVNode(i.Grid,{cols:this.formColumns,"col-gap":24,"rol-gap":10},{default:()=>[l.filter(()=>this.formColumns!==0).map(r=>{let n;return a.createVNode(i.GridItem,{span:r.span},x(n=ie(this.formSource,r))?n:{default:()=>[n]})}),t()]})]})])}});function fe(e){return e}function me(e){const t=a.getCurrentInstance(),l=a.ref();function r(){var o,s;const n=(s=(o=t==null?void 0:t.proxy)==null?void 0:o.$refs)==null?void 0:s[e];n&&(l.value=n)}return a.onMounted(r),a.onUpdated(r),l}const he={install(e,t){e.component("FormRender",D)}};exports.FormRenderResolver=_.FormRenderResolver;exports.FormRender=D;exports.default=he;exports.defineForm=fe;exports.useForm=me;
@@ -29,7 +29,10 @@ export type FormItemsStringKeyOptions<T = Record<string, any>> = FormItemStringK
29
29
  * Render函数
30
30
  */
31
31
  export interface FormItemRender<T = Record<string, any>> {
32
- (render: FormItemRenderFun<T>): (data: T, itemOptions: FormItemOptions<T>) => JSX.Element;
32
+ (render: FormItemRenderFun<T>): FormItemRenderReturn<T>;
33
+ }
34
+ export interface FormItemRenderReturn<T> {
35
+ (data: T, itemOptions: FormItemOptions<T>): JSX.Element;
33
36
  }
34
37
  /**
35
38
  * Render函数模板
@@ -1,7 +1,7 @@
1
1
  import { type CascaderOption } from '@arco-design/web-vue';
2
2
  import { type Ref } from 'vue';
3
- import type { DataRecord, FormItemOptions } from '../../interfaces';
4
- export declare function renderCascaderItem<T = DataRecord>(options: RenderCascaderItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
3
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
4
+ export declare function renderCascaderItem<T = DataRecord>(options: RenderCascaderItemOptions): FormItemRenderReturn<T>;
5
5
  export type SelectOptions = CascaderOption[];
6
6
  export interface RenderCascaderItemOptions {
7
7
  placeholder?: string;
@@ -1,10 +1,10 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
2
  /**
3
3
  * 日期节点表单渲染
4
4
  * @param options 日期节点配置选项
5
5
  * @returns JSX
6
6
  */
7
- export declare function renderDateItem<T = DataRecord>(options?: RenderDateItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
7
+ export declare function renderDateItem<T = DataRecord>(options?: RenderDateItemOptions): FormItemRenderReturn<T>;
8
8
  export interface RenderDateItemOptions {
9
9
  placeholder?: string;
10
10
  clearable?: boolean;
@@ -1,10 +1,10 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
2
  /**
3
3
  * 日期节点表单渲染
4
4
  * @param options 日期节点配置选项
5
5
  * @returns JSX
6
6
  */
7
- export declare function renderDateRangeItem<T = DataRecord>(options?: RenderDateRangeItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
7
+ export declare function renderDateRangeItem<T = DataRecord>(options?: RenderDateRangeItemOptions): FormItemRenderReturn<T>;
8
8
  export interface RenderDateRangeItemOptions {
9
9
  placeholder?: string;
10
10
  clearable?: boolean;
@@ -1,11 +1,11 @@
1
1
  export declare function FormItemRenders<T>(): {
2
- input: (options?: import("./input").RenderInputItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
3
- textarea: (options?: import("./textarea").RenderTextareaItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
4
- select: (options: import("./select").RenderSelectItemOptions) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
5
- treeSelect: (options: import("./tree-select").RenderTreeSelectItemOptions) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
6
- date: (options?: import("./date").RenderDateItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
7
- switch: (options?: import("./switch").RenderSwitchItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<Record<string, any>>) => import("vue/jsx-runtime").JSX.Element;
8
- dateRange: (options?: import("./date-range").RenderDateRangeItemOptions | undefined) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
9
- render: (renderer: import("./render").RenderInputItemOptions<T>) => (data: T) => JSX.Element;
10
- cascader: (options: import("./cascader").RenderCascaderItemOptions) => (data: T, form: import("..").FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
2
+ input: (options?: import("./input").RenderInputItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
3
+ textarea: (options?: import("./textarea").RenderTextareaItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
4
+ select: (options: import("./select").RenderSelectItemOptions) => import("..").FormItemRenderReturn<T>;
5
+ treeSelect: (options: import("./tree-select").RenderTreeSelectItemOptions) => import("..").FormItemRenderReturn<T>;
6
+ date: (options?: import("./date").RenderDateItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
7
+ switch: (options?: import("./switch").RenderSwitchItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
8
+ dateRange: (options?: import("./date-range").RenderDateRangeItemOptions | undefined) => import("..").FormItemRenderReturn<T>;
9
+ render: (renderer: import("./render").RenderInputItemOptions<T>) => import("..").FormItemRenderReturn<T>;
10
+ cascader: (options: import("./cascader").RenderCascaderItemOptions) => import("..").FormItemRenderReturn<T>;
11
11
  };
@@ -1,5 +1,5 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
2
- export declare function renderInputItem<T = DataRecord>(options?: RenderInputItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderInputItem<T = DataRecord>(options?: RenderInputItemOptions): FormItemRenderReturn<T>;
3
3
  export interface RenderInputItemOptions {
4
4
  placeholder?: string;
5
5
  clearable?: boolean;
@@ -1,5 +1,5 @@
1
- import type { DataRecord } from '../../interfaces';
2
- export declare function renderRenderItem<T = DataRecord>(renderer: RenderInputItemOptions<T>): (data: T) => JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderRenderItem<T = DataRecord>(renderer: RenderInputItemOptions<T>): FormItemRenderReturn<T>;
3
3
  export interface RenderInputItemOptions<T> {
4
4
  (record: T): JSX.Element;
5
5
  }
@@ -1,6 +1,6 @@
1
1
  import { type Ref } from 'vue';
2
- import type { DataRecord, FormItemOptions } from '../../interfaces';
3
- export declare function renderSelectItem<T = DataRecord>(options: RenderSelectItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
2
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
3
+ export declare function renderSelectItem<T = DataRecord>(options: RenderSelectItemOptions): FormItemRenderReturn<T>;
4
4
  export type SelectOptions = Map<string | number, string>;
5
5
  export interface RenderSelectItemOptions {
6
6
  placeholder?: string;
@@ -1,5 +1,5 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
2
- export declare function renderSwitchItem<T = DataRecord>(options?: RenderSwitchItemOptions): (data: T, form: FormItemOptions) => import("vue/jsx-runtime").JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderSwitchItem<T = DataRecord>(options?: RenderSwitchItemOptions): FormItemRenderReturn<T>;
3
3
  export type SelectOptions = Map<string | number, string>;
4
4
  export interface RenderSwitchItemOptions {
5
5
  size?: 'small' | 'medium';
@@ -1,5 +1,5 @@
1
- import type { DataRecord, FormItemOptions } from '../../interfaces';
2
- export declare function renderTextareaItem<T = DataRecord>(options?: RenderTextareaItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
1
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
2
+ export declare function renderTextareaItem<T = DataRecord>(options?: RenderTextareaItemOptions): FormItemRenderReturn<T>;
3
3
  export interface RenderTextareaItemOptions {
4
4
  placeholder?: string;
5
5
  rows?: number;
@@ -1,7 +1,7 @@
1
1
  import { type TreeFieldNames, type TreeNodeData } from '@arco-design/web-vue';
2
2
  import { type Ref } from 'vue';
3
- import type { DataRecord, FormItemOptions } from '../../interfaces';
4
- export declare function renderTreeSelectItem<T = DataRecord>(options: RenderTreeSelectItemOptions): (data: T, form: FormItemOptions<T>) => import("vue/jsx-runtime").JSX.Element;
3
+ import type { DataRecord, FormItemRenderReturn } from '../../interfaces';
4
+ export declare function renderTreeSelectItem<T = DataRecord>(options: RenderTreeSelectItemOptions): FormItemRenderReturn<T>;
5
5
  export type SelectOptions = TreeNodeData[];
6
6
  export interface RenderTreeSelectItemOptions {
7
7
  placeholder?: string;
package/dist/es/index.mjs CHANGED
@@ -630,7 +630,7 @@ const Qe = /* @__PURE__ */ V({
630
630
  });
631
631
  function c(f, h) {
632
632
  r.value[f] = h, l({
633
- ...r
633
+ ...r.value
634
634
  });
635
635
  }
636
636
  function o() {
@@ -29,7 +29,10 @@ export type FormItemsStringKeyOptions<T = Record<string, any>> = FormItemStringK
29
29
  * Render函数
30
30
  */
31
31
  export interface FormItemRender<T = Record<string, any>> {
32
- (render: FormItemRenderFun<T>): (data: T, itemOptions: FormItemOptions<T>) => JSX.Element;
32
+ (render: FormItemRenderFun<T>): FormItemRenderReturn<T>;
33
+ }
34
+ export interface FormItemRenderReturn<T> {
35
+ (data: T, itemOptions: FormItemOptions<T>): JSX.Element;
33
36
  }
34
37
  /**
35
38
  * Render函数模板
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gopowerteam/form-render",
3
3
  "type": "module",
4
- "version": "0.0.37",
4
+ "version": "0.0.39",
5
5
  "author": {
6
6
  "name": "zhuchentong",
7
7
  "email": "2037630@gmail.com"