dynamicformdjx 0.5.0 → 0.6.0

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 @@ declare function useWindowSize(mobileWidth?: number, delay?: number): {
5
5
  height: import('vue').Ref<number, number>;
6
6
  isMobile: import('vue').ComputedRef<boolean>;
7
7
  };
8
- declare function useObserverSize<T extends VueComponentCtor>(ct: T): {
8
+ declare function useObserverSize<T extends VueComponentCtor>(ct: T, delay?: number): {
9
9
  wrapRef: import('vue').Ref<HTMLDivElement | null, HTMLDivElement | null>;
10
10
  cardRef: [InstanceType<T> | null] extends [import('vue').Ref<any, any>] ? import('@vue/shared').IfAny<import('vue').Ref<any, any> & InstanceType<T>, import('vue').Ref<import('vue').Ref<any, any> & InstanceType<T>, import('vue').Ref<any, any> & InstanceType<T>>, import('vue').Ref<any, any> & InstanceType<T>> : import('vue').Ref<import('vue').UnwrapRef<InstanceType<T>> | null, InstanceType<T> | import('vue').UnwrapRef<InstanceType<T>> | null>;
11
11
  restRef: import('vue').Ref<HTMLDivElement | null, HTMLDivElement | null>;
@@ -0,0 +1 @@
1
+ "use strict";require('./index.css');const c=require("vue"),S=(e,t,n)=>Object.keys(e).map((r,a)=>{const l=e[r],p=Array.isArray(l),d=p?l.every(h=>typeof h=="number"):typeof l=="number";return{rId:t(a),key:r,value:p?l.join(n):l,isArray:p||void 0,isNumber:d||void 0}}),W=(e,t)=>e.reduce((n,r)=>(r.key.trim()&&(n[r.key]=R(r.value,r.isArray,r.isNumber,t)),n),{}),R=(e,t,n,r=",")=>{let a;return t?n?a=String(e).split(r).map(Number).filter(l=>!Number.isNaN(l)):a=String(e).split(r):n?a=parseFloat(e):a=e.toString(),a},H=(e,t,n=",")=>{const r=a=>{a=a.replace(/[^\d.-]/g,"");let l=!1;a.startsWith("-")&&(l=!0),a=a.replace(/-/g,"");const p=a.indexOf(".");return p!==-1&&(a=a.slice(0,p+1)+a.slice(p+1).replace(/\./g,"")),(l?"-":"")+a};return t?e.split(n).map(a=>r(a)).join(n):r(e)},O=e=>`hsl(${e*35%360}, 60%, 65%)`,j=(e,t)=>e[t-1]??O(t);function k(e){return c.isRef(e)?e:c.ref(e??null)}function C(e,t){const n={...e};return delete n.value,t?.forEach(r=>{r!=="value"&&delete n[r]}),n}function w(e,t=500){let n=null;return function(...r){n&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}const y=e=>{if(!e)return 0;const t=getComputedStyle(e);return(parseFloat(t.paddingTop)||0)+(parseFloat(t.paddingBottom)||0)},V=e=>{if(!e)return 0;const t=getComputedStyle(e);return(parseFloat(t.marginTop)||0)+(parseFloat(t.marginBottom)||0)},M=e=>Object.fromEntries(Object.entries(e).map(([t,n])=>[t,c.unref(n)]));function z(e){return"touches"in e?e.touches[0]?.clientY??0:e.clientY}function F(e){return"pointerId"in e?e.pointerId:null}function N(e,t=!0){return e.map(n=>{const r=n;return r.value=k(n.value),t?c.shallowReactive(r):r})}function Y(e){const t=()=>c.unref(e),n=(u,o)=>{t().forEach(s=>{const i=s.key;(!o||o.includes(i))&&(s.disabled=u)})},r=(u,o)=>{t().forEach(s=>{const i=s.key;(!o||o.includes(i))&&(s.hidden=u)})},a=(u,o)=>{const s=t().find(i=>i.key===u);s&&(c.isRef(s.value)?s.value.value=o:s.value=o)};return{setDisabled:n,setHidden:r,setValue:a,setValues:u=>{Object.entries(u).forEach(([o,s])=>{a(o,s)})},getValue:u=>{const o=t().find(s=>s.key===u);if(o){const s=o.value;return c.isRef(s)?c.toRaw(s.value):s}},getValues:u=>{const o=u&&u.length?new Set(u):null;return t().reduce((s,i)=>{const m=i.key;if(!o||o.has(m)){const b=c.isRef(i.value)?c.toRaw(i.value.value):i.value;s[m]=b}return s},{})},onReset:(u=null)=>{t().forEach(o=>{c.isRef(o.value)?o.value.value=u:o.value=u})},getItem:u=>t().find(o=>o.key===u),setItem:(u,o)=>{t().forEach(s=>{if(s.key===u){const{key:i,...m}=o;Object.assign(s,m)}})},setItems:u=>{const o=new Map(u);t().forEach(s=>{const i=o.get(s.key);if(i){const{key:m,...b}=i;Object.assign(s,b)}})},updateKeys:u=>{const o=new Map(u);t().forEach(s=>{const i=o.get(s.key);i&&(s.key=i)})}}}function $(e=756,t=500){const n=c.ref(window.innerWidth),r=c.ref(window.innerHeight),a=w(()=>{n.value=window.innerWidth,r.value=window.innerHeight},t),l=c.computed(()=>n.value<=e);return c.onMounted(()=>{window.addEventListener("resize",a)}),c.onUnmounted(()=>{window.removeEventListener("resize",a)}),{width:n,height:r,isMobile:l}}function D(e,t=100){const n=e.name==="ElCard"?"el":"n",r=c.ref(null),a=c.ref(null),l=c.ref(null),p=c.ref(0);let d=null;const h=()=>{const f=l.value?.$el??null;if(!f)return{cardEl:null,headerWrap:null,footerWrap:null,contentEl:null};const v=f.querySelector(`.${n}-card__header`)||f.querySelector(`.${n}-card-header`),g=f.querySelector(`.${n}-card__footer`),u=f.querySelector(`.${n}-card__body`)||f.querySelector(`.${n}-card__content`);return{cardEl:f,headerWrap:v,footerWrap:g,contentEl:u}},E=()=>{const f=r.value,{cardEl:v,headerWrap:g,footerWrap:u,contentEl:o}=h();if(!f||!v)return;const s=f.clientHeight-y(f),i=a.value?.offsetHeight??0,m=g?.offsetHeight??0,b=u?.offsetHeight??0,I=y(o);p.value=Math.max(0,s-i-m-b-I)};return c.onMounted(async()=>{await c.nextTick();const f=w(E,t);d=new ResizeObserver(f),r.value&&d.observe(r.value),a.value&&d.observe(a.value);const{cardEl:v,headerWrap:g,footerWrap:u,contentEl:o}=h();v&&d.observe(v),g&&d.observe(g),u&&d.observe(u),o&&d.observe(o)}),c.onBeforeUnmount(()=>{d?.disconnect(),d=null}),{wrapRef:r,cardRef:l,restRef:a,tableHeight:p}}exports.Debounce=w;exports.OmitValue=C;exports.ensureRef=k;exports.formatNumberInput=H;exports.getClientY=z;exports.getDepthColor=O;exports.getEventId=F;exports.getMarginY=V;exports.getPadY=y;exports.parseValue=R;exports.resetObj=W;exports.saferRepairColor=j;exports.tranArr=S;exports.unwrapObj=M;exports.useDyForm=Y;exports.useObserverSize=D;exports.useReactiveForm=N;exports.useWindowSize=$;
@@ -0,0 +1,213 @@
1
+ import { ref as g, isRef as b, unref as O, shallowReactive as S, toRaw as E, computed as W, onMounted as R, onUnmounted as j, nextTick as V, onBeforeUnmount as $ } from "vue";
2
+ import './index.css';const z = (e, t, n) => Object.keys(e).map((r, a) => {
3
+ const i = e[r], d = Array.isArray(i), f = d ? i.every((m) => typeof m == "number") : typeof i == "number";
4
+ return {
5
+ rId: t(a),
6
+ key: r,
7
+ value: d ? i.join(n) : i,
8
+ isArray: d || void 0,
9
+ isNumber: f || void 0
10
+ };
11
+ }), F = (e, t) => e.reduce((n, r) => (r.key.trim() && (n[r.key] = C(r.value, r.isArray, r.isNumber, t)), n), {}), C = (e, t, n, r = ",") => {
12
+ let a;
13
+ return t ? n ? a = String(e).split(r).map(Number).filter((i) => !Number.isNaN(i)) : a = String(e).split(r) : n ? a = parseFloat(e) : a = e.toString(), a;
14
+ }, A = (e, t, n = ",") => {
15
+ const r = (a) => {
16
+ a = a.replace(/[^\d.-]/g, "");
17
+ let i = !1;
18
+ a.startsWith("-") && (i = !0), a = a.replace(/-/g, "");
19
+ const d = a.indexOf(".");
20
+ return d !== -1 && (a = a.slice(0, d + 1) + a.slice(d + 1).replace(/\./g, "")), (i ? "-" : "") + a;
21
+ };
22
+ return t ? e.split(n).map((a) => r(a)).join(n) : r(e);
23
+ }, M = (e) => `hsl(${e * 35 % 360}, 60%, 65%)`, D = (e, t) => e[t - 1] ?? M(t);
24
+ function N(e) {
25
+ return b(e) ? e : g(e ?? null);
26
+ }
27
+ function Y(e, t) {
28
+ const n = { ...e };
29
+ return delete n.value, t?.forEach((r) => {
30
+ r !== "value" && delete n[r];
31
+ }), n;
32
+ }
33
+ function I(e, t = 500) {
34
+ let n = null;
35
+ return function(...r) {
36
+ n && clearTimeout(n), n = setTimeout(() => {
37
+ e(...r);
38
+ }, t);
39
+ };
40
+ }
41
+ const k = (e) => {
42
+ if (!e) return 0;
43
+ const t = getComputedStyle(e);
44
+ return (parseFloat(t.paddingTop) || 0) + (parseFloat(t.paddingBottom) || 0);
45
+ }, q = (e) => {
46
+ if (!e) return 0;
47
+ const t = getComputedStyle(e);
48
+ return (parseFloat(t.marginTop) || 0) + (parseFloat(t.marginBottom) || 0);
49
+ }, x = (e) => Object.fromEntries(Object.entries(e).map(([t, n]) => [t, O(n)]));
50
+ function T(e) {
51
+ return "touches" in e ? e.touches[0]?.clientY ?? 0 : e.clientY;
52
+ }
53
+ function B(e) {
54
+ return "pointerId" in e ? e.pointerId : null;
55
+ }
56
+ function K(e, t = !0) {
57
+ return e.map((n) => {
58
+ const r = n;
59
+ return r.value = N(n.value), t ? S(r) : r;
60
+ });
61
+ }
62
+ function L(e) {
63
+ const t = () => O(e), n = (c, o) => {
64
+ t().forEach((s) => {
65
+ const u = s.key;
66
+ (!o || o.includes(u)) && (s.disabled = c);
67
+ });
68
+ }, r = (c, o) => {
69
+ t().forEach((s) => {
70
+ const u = s.key;
71
+ (!o || o.includes(u)) && (s.hidden = c);
72
+ });
73
+ }, a = (c, o) => {
74
+ const s = t().find((u) => u.key === c);
75
+ s && (b(s.value) ? s.value.value = o : s.value = o);
76
+ };
77
+ return {
78
+ setDisabled: n,
79
+ setHidden: r,
80
+ setValue: a,
81
+ setValues: (c) => {
82
+ Object.entries(c).forEach(([o, s]) => {
83
+ a(o, s);
84
+ });
85
+ },
86
+ getValue: (c) => {
87
+ const o = t().find((s) => s.key === c);
88
+ if (o) {
89
+ const s = o.value;
90
+ return b(s) ? E(s.value) : s;
91
+ }
92
+ },
93
+ getValues: (c) => {
94
+ const o = c && c.length ? new Set(c) : null;
95
+ return t().reduce((s, u) => {
96
+ const h = u.key;
97
+ if (!o || o.has(h)) {
98
+ const y = b(u.value) ? E(u.value.value) : u.value;
99
+ s[h] = y;
100
+ }
101
+ return s;
102
+ }, {});
103
+ },
104
+ onReset: (c = null) => {
105
+ t().forEach((o) => {
106
+ b(o.value) ? o.value.value = c : o.value = c;
107
+ });
108
+ },
109
+ getItem: (c) => t().find((o) => o.key === c),
110
+ setItem: (c, o) => {
111
+ t().forEach((s) => {
112
+ if (s.key === c) {
113
+ const { key: u, ...h } = o;
114
+ Object.assign(s, h);
115
+ }
116
+ });
117
+ },
118
+ setItems: (c) => {
119
+ const o = new Map(c);
120
+ t().forEach((s) => {
121
+ const u = o.get(s.key);
122
+ if (u) {
123
+ const { key: h, ...y } = u;
124
+ Object.assign(s, y);
125
+ }
126
+ });
127
+ },
128
+ updateKeys: (c) => {
129
+ const o = new Map(c);
130
+ t().forEach((s) => {
131
+ const u = o.get(s.key);
132
+ u && (s.key = u);
133
+ });
134
+ }
135
+ };
136
+ }
137
+ function P(e = 756, t = 500) {
138
+ const n = g(window.innerWidth), r = g(window.innerHeight), a = I(() => {
139
+ n.value = window.innerWidth, r.value = window.innerHeight;
140
+ }, t), i = W(() => n.value <= e);
141
+ return R(() => {
142
+ window.addEventListener("resize", a);
143
+ }), j(() => {
144
+ window.removeEventListener("resize", a);
145
+ }), {
146
+ width: n,
147
+ height: r,
148
+ isMobile: i
149
+ };
150
+ }
151
+ function U(e, t = 100) {
152
+ const n = e.name === "ElCard" ? "el" : "n", r = g(null), a = g(null), i = g(null), d = g(0);
153
+ let f = null;
154
+ const m = () => {
155
+ const l = i.value?.$el ?? null;
156
+ if (!l)
157
+ return {
158
+ cardEl: null,
159
+ headerWrap: null,
160
+ footerWrap: null,
161
+ contentEl: null
162
+ };
163
+ const p = l.querySelector(`.${n}-card__header`) || l.querySelector(`.${n}-card-header`), v = l.querySelector(`.${n}-card__footer`), c = l.querySelector(`.${n}-card__body`) || l.querySelector(`.${n}-card__content`);
164
+ return {
165
+ cardEl: l,
166
+ headerWrap: p,
167
+ footerWrap: v,
168
+ contentEl: c
169
+ };
170
+ }, w = () => {
171
+ const l = r.value, { cardEl: p, headerWrap: v, footerWrap: c, contentEl: o } = m();
172
+ if (!l || !p) return;
173
+ const s = l.clientHeight - k(l), u = a.value?.offsetHeight ?? 0, h = v?.offsetHeight ?? 0, y = c?.offsetHeight ?? 0, H = k(o);
174
+ d.value = Math.max(
175
+ 0,
176
+ s - u - h - y - H
177
+ );
178
+ };
179
+ return R(async () => {
180
+ await V();
181
+ const l = I(w, t);
182
+ f = new ResizeObserver(l), r.value && f.observe(r.value), a.value && f.observe(a.value);
183
+ const { cardEl: p, headerWrap: v, footerWrap: c, contentEl: o } = m();
184
+ p && f.observe(p), v && f.observe(v), c && f.observe(c), o && f.observe(o);
185
+ }), $(() => {
186
+ f?.disconnect(), f = null;
187
+ }), {
188
+ wrapRef: r,
189
+ cardRef: i,
190
+ restRef: a,
191
+ tableHeight: d
192
+ };
193
+ }
194
+ export {
195
+ I as D,
196
+ Y as O,
197
+ T as a,
198
+ B as b,
199
+ L as c,
200
+ P as d,
201
+ U as e,
202
+ A as f,
203
+ q as g,
204
+ M as h,
205
+ N as i,
206
+ k as j,
207
+ x as k,
208
+ C as p,
209
+ F as r,
210
+ D as s,
211
+ z as t,
212
+ K as u
213
+ };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),o=require("./index-BRJXkpNJ.cjs"),k=e.defineComponent({name:"DynamicInput",props:{size:{type:String},isController:{type:Boolean},dyCls:{type:String},randomFun:{type:Function,default:t=>`${Date.now()}_${t??0}`},btnConfigs:{type:Object},configs:{type:Object},dyListConfigs:{type:Object},modelValue:{type:Object,required:!0}},emits:{"update:modelValue":t=>!0,onReset:()=>!0,onMerge:(t,m)=>!0},slots:Object,setup(t,{emit:m,expose:I,slots:u}){const b={resetTxt:"重置",newTxt:"添加项",mergeTxt:"合并",...t.btnConfigs},d={hideReset:!1,maxHeight:"300px",autoScroll:!0,allowFilter:!0,hideArrayBtn:!1,hideNumberBtn:!1,...t.configs},y={arraySplitSymbol:",",...t.dyListConfigs},v=t.size,s=e.ref(o.tranArr(t.modelValue,t.randomFun,y.arraySplitSymbol)),f=e.ref(null);e.watch(s,n=>{if(!t.isController)return;const g=o.resetObj(n,y.arraySplitSymbol);m("update:modelValue",g),m("onMerge",g,e.toRaw(s.value))},{deep:!0}),I({onSet:n=>{s.value=o.tranArr(n??t.modelValue,t.randomFun,y.arraySplitSymbol)},getResult:(n="res")=>n==="ori"?e.toRaw(s.value):o.resetObj(s.value,y.arraySplitSymbol)});const c=()=>s.value.push({rId:t.randomFun(),key:"",value:""}),h=()=>{s.value=o.tranArr(t.modelValue,t.randomFun,y.arraySplitSymbol),m("onReset")},S=()=>{s.value.sort((g,l)=>+g.rId-+l.rId);const n=o.resetObj(s.value,y.arraySplitSymbol);m("update:modelValue",n),m("onMerge",n,e.toRaw(s.value)),s.value=o.tranArr(n,t.randomFun,y.arraySplitSymbol)};return()=>e.createVNode("div",{class:`dynamicForm ${v} ${t.dyCls}`},[e.createVNode("div",{class:`dyFormList ${s.value.length?"":"noList"}`,ref:f,style:{maxHeight:d.maxHeight}},[s.value.map((n,g,l)=>{const r={row:n,index:g,isLast:g===l.length-1,addItem:()=>{s.value.push({rId:t.randomFun(),key:"",value:""}),d.autoScroll&&e.nextTick(()=>{const i=f.value;i?.scrollTo({top:i.scrollHeight,behavior:"smooth"})})},removeItem:()=>{s.value=s.value.filter(i=>i.rId!==n.rId)},toggleArray:()=>n.isArray=!n.isArray,toggleNumber:()=>n.isNumber=!n.isNumber};return e.createVNode("div",{class:"dItem",key:n.rId},[e.createVNode("div",{class:"input"},[e.createVNode("input",{size:v,value:n.key,class:"key nativeInput",onInput:i=>{n.key=i.target.value}},null),e.createTextVNode(":"),e.createVNode("div",{class:"vInput"},[e.createVNode("div",{class:"slot"},[u.typeTools?u.typeTools(r):e.createVNode(e.Fragment,null,[!d.hideArrayBtn&&e.createVNode("button",{class:[n.isArray?"success":"default","small","bt"],onClick:r.toggleArray},[e.createTextVNode("Array")]),!d.hideNumberBtn&&e.createVNode("button",{class:[n.isNumber?"success":"default","small","bt"],onClick:r.toggleNumber},[e.createTextVNode("Number")])])]),e.createVNode("input",{size:v,value:n.value,class:"value nativeV",onInput:i=>{const a=i.target.value;d.allowFilter&&n.isNumber?n.value=o.formatNumberInput(a,n.isArray,y.arraySplitSymbol):n.value=a}},null)])]),e.createVNode("div",{class:"btn"},[u.rowActions?u.rowActions(r):e.createVNode(e.Fragment,null,[e.createVNode("button",{class:[v,"success","bt"],disabled:!r.isLast,onClick:r.addItem},[e.createTextVNode("+")]),e.createVNode("button",{class:["danger",v,"bt"],onClick:r.removeItem},[e.createTextVNode("-")])])])])})]),e.createVNode("div",{class:`control ${s.value.length?"":"noList"}`},[!s.value.length&&(u.newBtn?u.newBtn({newItem:c}):e.createVNode("button",{class:["success",v,"bt"],onClick:c},[b.newTxt])),!t.isController&&e.createVNode(e.Fragment,null,[!d.hideReset&&(u.resetBtn?u.resetBtn({reset:h}):e.createVNode("button",{class:["default",v,"bt"],onClick:h},[b.resetTxt])),u.mergeBtn?u.mergeBtn({merge:S}):e.createVNode("button",{class:["info",v,"bt"],onClick:S},[b.mergeTxt])])])])}}),F=e.defineComponent({name:"DynamicCascadeInput",props:{modelValue:{type:Object,required:!0},isController:{type:Boolean},dyCls:{type:String},randomFun:{type:Function,default:t=>`${Date.now()}_${t??0}`},depth:{type:Number,default:3},btnConfigs:{type:Object},configs:{type:Object},dyListConfigs:{type:Object},newChildTxt:{type:Function,default:t=>`添加 '${t.key}' 子项`}},emits:{"update:modelValue":t=>!0,onReset:()=>!0,onMerge:(t,m)=>!0},slots:Object,setup(t,{emit:m,expose:I,slots:u}){const b={resetTxt:"重置",newTxt:"添加项",mergeTxt:"合并",...t.btnConfigs},d={hideReset:!1,maxHeight:"600px",allowFilter:!0,showBorder:!0,showPad:!0,hideArrayBtn:!1,hideNumberBtn:!1,retractLen:0,borderColors:[],...t.configs},y={arraySplitSymbol:",",...t.dyListConfigs},v=l=>["string","number"].includes(l),s=l=>Object.keys(l).map((r,i)=>{let a=l[r];const V=Array.isArray(a),x=V?a.every(A=>typeof A=="number"):typeof a=="number",p=a===null;return v(typeof a)&&(a=l[r]),p&&(a=""),{rId:t.randomFun(i),key:r,value:Object.prototype.toString.call(a)==="[object Object]"?s(l[r]):V?a.join(y.arraySplitSymbol):a,isArray:V||void 0,isNumber:x||void 0}}),f=l=>l.reduce((r,i)=>{const a=i.value;return i.key.trim().length&&(r[i.key]=Array.isArray(a)?f(a):o.parseValue(i.value,i.isArray,i.isNumber,y.arraySplitSymbol)),r},{}),c=e.ref(s(t.modelValue)),h=(l,r=1,i)=>e.createVNode("div",{class:[`depth-${r}`,d.showBorder?"":"no-border",d.showPad?"":"no-pad"],style:{"--depth":r,["--c"+[r]]:o.saferRepairColor(d.borderColors,r)}},[l.map((a,V,x)=>{const p=Array.isArray(a.value),A=v(typeof a.value),N={row:a,index:V,isLast:V===x.length-1,addItem:()=>{l.push({rId:t.randomFun(),key:"",value:""})},addChild:()=>{A&&(a.value=[],a.isArray=void 0),a.value.push({rId:t.randomFun(),key:"",value:""})},removeItem:()=>{if(l.splice(V,1),l.length<1){if(i===void 0)return f([]);const w=c.value.findIndex(C=>C.rId===i?.rId);r<1?c.value.splice(w,1,{...i,value:""}):i.value=""}},toggleArray:()=>a.isArray=!a.isArray,toggleNumber:()=>a.isNumber=!a.isNumber};return e.createVNode("div",{class:"dItem",key:a.rId,style:{marginLeft:r>1?`${r*d.retractLen}px`:"0"}},[e.createVNode("div",{class:"input"},[!p&&e.createVNode(e.Fragment,null,[e.createVNode("input",{value:a.key,class:"key nativeInput",onInput:w=>a.key=w.target.value},null),e.createTextVNode(":")]),e.createVNode("div",{class:"vInput"},[e.createVNode("div",{class:"slot"},[Array.isArray(a.value)?void 0:u.typeTools?u.typeTools(N):e.createVNode(e.Fragment,null,[!d.hideArrayBtn&&e.createVNode("button",{class:[a.isArray?"success":"default","small","bt"],onClick:N.toggleArray},[e.createTextVNode("Array")]),!d.hideNumberBtn&&e.createVNode("button",{class:[a.isNumber?"success":"default","small","bt"],onClick:N.toggleNumber},[e.createTextVNode("Number")])])]),e.createVNode("input",{class:`value nativeV ${p?"isKey":""}`,value:A?a.value:a.key,onInput:w=>{const C=w.target.value;if(p){a.key=C;return}d.allowFilter&&a.isNumber?a.value=o.formatNumberInput(C,a.isArray,y.arraySplitSymbol):a.value=C}},null),e.createVNode("div",{class:"surSlot"},[r<t.depth?!p&&(u.newChild?u.newChild(N):e.createVNode("button",{class:["success","bt"],onClick:N.addChild},[t.newChildTxt(a)])):null])])]),e.createVNode("div",{class:"btn"},[u.rowActions?u.rowActions(N):e.createVNode(e.Fragment,null,[e.createVNode("button",{class:["success","bt"],disabled:!N.isLast,onClick:N.addItem},[e.createTextVNode("+")]),e.createVNode("button",{class:["danger","bt"],onClick:N.removeItem},[e.createTextVNode("-")])])]),Array.isArray(a.value)&&h(a.value,r+1,a)])})]);e.watch(c,l=>{if(!t.isController)return;const r=f(l);m("update:modelValue",r),m("onMerge",r,e.toRaw(c.value))},{deep:!0}),I({onSet:l=>{c.value=s(l??t.modelValue)},getResult:(l="res")=>l==="ori"?e.toRaw(c.value):f(c.value)});const S=()=>c.value.push({rId:t.randomFun(),key:"",value:""}),n=()=>{c.value=s(t.modelValue),m("onReset")},g=()=>{const l=f(c.value);m("update:modelValue",l),m("onMerge",l,e.toRaw(c.value)),c.value=s(l)};return()=>e.createVNode("div",{class:`dynamicCascadeForm ${t.dyCls}`},[e.createVNode("div",{class:`dyFormList ${c.value.length?"":"noObj"}`,style:{maxHeight:d.maxHeight}},[h(c.value)]),e.createVNode("div",{class:`control ${c.value.length?"":"noObj"}`},[!c.value.length&&(u.newBtn?u.newBtn({newItem:S}):e.createVNode("button",{class:["success","bt"],onClick:S},[b.newTxt])),!t.isController&&e.createVNode(e.Fragment,null,[!d.hideReset&&(u.resetBtn?u.resetBtn({reset:n}):e.createVNode("button",{class:["default","bt"],onClick:n},[b.resetTxt])),u.mergeBtn?u.mergeBtn({merge:g}):e.createVNode("button",{class:["info","bt"],onClick:g},[b.mergeTxt])])])])}}),T=function(t,m){function I(){t?.()}function u(){t?.()}const b=e.reactive({pageNo:1,pageSize:25,showSizePicker:!0,pageSizes:[25,50,100,200],pageSlot:5,total:0,layout:"total, prev, pager, next, sizes, jumper",onChange:I,onPageSizeChange:u,setTotalSize(d){b.total=d},...m});return b},j={install(t){t.component("DynamicInput",k),t.component("DynamicCascadeInput",F)}};exports.Debounce=o.Debounce;exports.OmitValue=o.OmitValue;exports.ensureRef=o.ensureRef;exports.formatNumberInput=o.formatNumberInput;exports.getDepthColor=o.getDepthColor;exports.getPadY=o.getPadY;exports.parseValue=o.parseValue;exports.resetObj=o.resetObj;exports.saferRepairColor=o.saferRepairColor;exports.tranArr=o.tranArr;exports.unwrapObj=o.unwrapObj;exports.useDyForm=o.useDyForm;exports.useObserverSize=o.useObserverSize;exports.useReactiveForm=o.useReactiveForm;exports.useWindowSize=o.useWindowSize;exports.DynamicCascadeInput=F;exports.DynamicInput=k;exports.DynamicInputPlugin=j;exports.usePagination=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),u=require("./index-BAqRAwDC.cjs"),A=e.defineComponent({name:"DynamicInput",props:{size:{type:String},isController:{type:Boolean},dyCls:{type:String},randomFun:{type:Function,default:t=>`${Date.now()}_${t??0}`},btnConfigs:{type:Object},configs:{type:Object},dyListConfigs:{type:Object},modelValue:{type:Object,required:!0}},emits:{"update:modelValue":t=>!0,onReset:()=>!0,onMerge:(t,i)=>!0},slots:Object,setup(t,{emit:i,expose:y,slots:r}){const m={resetTxt:"重置",newTxt:"添加项",mergeTxt:"合并",...t.btnConfigs},d={hideReset:!1,maxHeight:"300px",autoScroll:!0,allowFilter:!0,hideArrayBtn:!1,hideNumberBtn:!1,...t.configs},g={arraySplitSymbol:",",...t.dyListConfigs},h=t.size,a=e.ref(u.tranArr(t.modelValue,t.randomFun,g.arraySplitSymbol)),b=e.ref(null);e.watch(a,l=>{if(!t.isController)return;const V=u.resetObj(l,g.arraySplitSymbol);i("update:modelValue",V),i("onMerge",V,e.toRaw(a.value))},{deep:!0}),y({onSet:l=>{a.value=u.tranArr(l??t.modelValue,t.randomFun,g.arraySplitSymbol)},getResult:(l="res")=>l==="ori"?e.toRaw(a.value):u.resetObj(a.value,g.arraySplitSymbol)});const v=()=>a.value.push({rId:t.randomFun(),key:"",value:""}),T=()=>{a.value=u.tranArr(t.modelValue,t.randomFun,g.arraySplitSymbol),i("onReset")},C=()=>{a.value.sort((V,s)=>+V.rId-+s.rId);const l=u.resetObj(a.value,g.arraySplitSymbol);i("update:modelValue",l),i("onMerge",l,e.toRaw(a.value)),a.value=u.tranArr(l,t.randomFun,g.arraySplitSymbol)};return()=>e.createVNode("div",{class:`dynamicForm ${h} ${t.dyCls}`},[e.createVNode("div",{class:`dyFormList ${a.value.length?"":"noList"}`,ref:b,style:{maxHeight:d.maxHeight}},[a.value.map((l,V,s)=>{const o={row:l,index:V,isLast:V===s.length-1,addItem:()=>{a.value.push({rId:t.randomFun(),key:"",value:""}),d.autoScroll&&e.nextTick(()=>{const f=b.value;f?.scrollTo({top:f.scrollHeight,behavior:"smooth"})})},removeItem:()=>{a.value=a.value.filter(f=>f.rId!==l.rId)},toggleArray:()=>l.isArray=!l.isArray,toggleNumber:()=>l.isNumber=!l.isNumber};return e.createVNode("div",{class:"dItem",key:l.rId},[e.createVNode("div",{class:"input"},[e.createVNode("input",{size:h,value:l.key,class:"key nativeInput",onInput:f=>{l.key=f.target.value}},null),e.createTextVNode(":"),e.createVNode("div",{class:"vInput"},[e.createVNode("div",{class:"slot"},[r.typeTools?r.typeTools(o):e.createVNode(e.Fragment,null,[!d.hideArrayBtn&&e.createVNode("button",{class:[l.isArray?"success":"default","small","bt"],onClick:o.toggleArray},[e.createTextVNode("Array")]),!d.hideNumberBtn&&e.createVNode("button",{class:[l.isNumber?"success":"default","small","bt"],onClick:o.toggleNumber},[e.createTextVNode("Number")])])]),e.createVNode("input",{size:h,value:l.value,class:"value nativeV",onInput:f=>{const n=f.target.value;d.allowFilter&&l.isNumber?l.value=u.formatNumberInput(n,l.isArray,g.arraySplitSymbol):l.value=n}},null)])]),e.createVNode("div",{class:"btn"},[r.rowActions?r.rowActions(o):e.createVNode(e.Fragment,null,[e.createVNode("button",{class:[h,"success","bt"],disabled:!o.isLast,onClick:o.addItem},[e.createTextVNode("+")]),e.createVNode("button",{class:["danger",h,"bt"],onClick:o.removeItem},[e.createTextVNode("-")])])])])})]),e.createVNode("div",{class:`control ${a.value.length?"":"noList"}`},[!a.value.length&&(r.newBtn?r.newBtn({newItem:v}):e.createVNode("button",{class:["success",h,"bt"],onClick:v},[m.newTxt])),!t.isController&&e.createVNode(e.Fragment,null,[!d.hideReset&&(r.resetBtn?r.resetBtn({reset:T}):e.createVNode("button",{class:["default",h,"bt"],onClick:T},[m.resetTxt])),r.mergeBtn?r.mergeBtn({merge:C}):e.createVNode("button",{class:["info",h,"bt"],onClick:C},[m.mergeTxt])])])])}}),k=e.defineComponent({name:"DynamicCascadeInput",props:{modelValue:{type:Object,required:!0},isController:{type:Boolean},dyCls:{type:String},randomFun:{type:Function,default:t=>`${Date.now()}_${t??0}`},depth:{type:Number,default:3},btnConfigs:{type:Object},configs:{type:Object},dyListConfigs:{type:Object},newChildTxt:{type:Function,default:t=>`添加 '${t.key}' 子项`}},emits:{"update:modelValue":t=>!0,onReset:()=>!0,onMerge:(t,i)=>!0},slots:Object,setup(t,{emit:i,expose:y,slots:r}){const m={resetTxt:"重置",newTxt:"添加项",mergeTxt:"合并",...t.btnConfigs},d={hideReset:!1,maxHeight:"600px",allowFilter:!0,showBorder:!0,showPad:!0,hideArrayBtn:!1,hideNumberBtn:!1,retractLen:0,borderColors:[],...t.configs},g={arraySplitSymbol:",",...t.dyListConfigs},h=s=>["string","number"].includes(s),a=s=>Object.keys(s).map((o,f)=>{let n=s[o];const x=Array.isArray(n),c=x?n.every(N=>typeof N=="number"):typeof n=="number",p=n===null;return h(typeof n)&&(n=s[o]),p&&(n=""),{rId:t.randomFun(f),key:o,value:Object.prototype.toString.call(n)==="[object Object]"?a(s[o]):x?n.join(g.arraySplitSymbol):n,isArray:x||void 0,isNumber:c||void 0}}),b=s=>s.reduce((o,f)=>{const n=f.value;return f.key.trim().length&&(o[f.key]=Array.isArray(n)?b(n):u.parseValue(f.value,f.isArray,f.isNumber,g.arraySplitSymbol)),o},{}),v=e.ref(a(t.modelValue)),T=(s,o=1,f)=>e.createVNode("div",{class:[`depth-${o}`,d.showBorder?"":"no-border",d.showPad?"":"no-pad"],style:{"--depth":o,["--c"+[o]]:u.saferRepairColor(d.borderColors,o)}},[s.map((n,x,c)=>{const p=Array.isArray(n.value),N=h(typeof n.value),S={row:n,index:x,isLast:x===c.length-1,addItem:()=>{s.push({rId:t.randomFun(),key:"",value:""})},addChild:()=>{N&&(n.value=[],n.isArray=void 0),n.value.push({rId:t.randomFun(),key:"",value:""})},removeItem:()=>{if(s.splice(x,1),s.length<1){if(f===void 0)return b([]);const I=v.value.findIndex(w=>w.rId===f?.rId);o<1?v.value.splice(I,1,{...f,value:""}):f.value=""}},toggleArray:()=>n.isArray=!n.isArray,toggleNumber:()=>n.isNumber=!n.isNumber};return e.createVNode("div",{class:"dItem",key:n.rId,style:{marginLeft:o>1?`${o*d.retractLen}px`:"0"}},[e.createVNode("div",{class:"input"},[!p&&e.createVNode(e.Fragment,null,[e.createVNode("input",{value:n.key,class:"key nativeInput",onInput:I=>n.key=I.target.value},null),e.createTextVNode(":")]),e.createVNode("div",{class:"vInput"},[e.createVNode("div",{class:"slot"},[Array.isArray(n.value)?void 0:r.typeTools?r.typeTools(S):e.createVNode(e.Fragment,null,[!d.hideArrayBtn&&e.createVNode("button",{class:[n.isArray?"success":"default","small","bt"],onClick:S.toggleArray},[e.createTextVNode("Array")]),!d.hideNumberBtn&&e.createVNode("button",{class:[n.isNumber?"success":"default","small","bt"],onClick:S.toggleNumber},[e.createTextVNode("Number")])])]),e.createVNode("input",{class:`value nativeV ${p?"isKey":""}`,value:N?n.value:n.key,onInput:I=>{const w=I.target.value;if(p){n.key=w;return}d.allowFilter&&n.isNumber?n.value=u.formatNumberInput(w,n.isArray,g.arraySplitSymbol):n.value=w}},null),e.createVNode("div",{class:"surSlot"},[o<t.depth?!p&&(r.newChild?r.newChild(S):e.createVNode("button",{class:["success","bt"],onClick:S.addChild},[t.newChildTxt(n)])):null])])]),e.createVNode("div",{class:"btn"},[r.rowActions?r.rowActions(S):e.createVNode(e.Fragment,null,[e.createVNode("button",{class:["success","bt"],disabled:!S.isLast,onClick:S.addItem},[e.createTextVNode("+")]),e.createVNode("button",{class:["danger","bt"],onClick:S.removeItem},[e.createTextVNode("-")])])]),Array.isArray(n.value)&&T(n.value,o+1,n)])})]);e.watch(v,s=>{if(!t.isController)return;const o=b(s);i("update:modelValue",o),i("onMerge",o,e.toRaw(v.value))},{deep:!0}),y({onSet:s=>{v.value=a(s??t.modelValue)},getResult:(s="res")=>s==="ori"?e.toRaw(v.value):b(v.value)});const C=()=>v.value.push({rId:t.randomFun(),key:"",value:""}),l=()=>{v.value=a(t.modelValue),i("onReset")},V=()=>{const s=b(v.value);i("update:modelValue",s),i("onMerge",s,e.toRaw(v.value)),v.value=a(s)};return()=>e.createVNode("div",{class:`dynamicCascadeForm ${t.dyCls}`},[e.createVNode("div",{class:`dyFormList ${v.value.length?"":"noObj"}`,style:{maxHeight:d.maxHeight}},[T(v.value)]),e.createVNode("div",{class:`control ${v.value.length?"":"noObj"}`},[!v.value.length&&(r.newBtn?r.newBtn({newItem:C}):e.createVNode("button",{class:["success","bt"],onClick:C},[m.newTxt])),!t.isController&&e.createVNode(e.Fragment,null,[!d.hideReset&&(r.resetBtn?r.resetBtn({reset:l}):e.createVNode("button",{class:["default","bt"],onClick:l},[m.resetTxt])),r.mergeBtn?r.mergeBtn({merge:V}):e.createVNode("button",{class:["info","bt"],onClick:V},[m.mergeTxt])])])])}}),F={loading:{type:Boolean,default:!1},isError:{type:Boolean,default:!1},loadData:{type:Function,required:!0},scrollNode:{type:String,required:!0},loadingTxt:{type:String,default:"loading..."},finishedTxt:{type:String,default:"no more data"},errorTxt:{type:String,default:"fetch error , click again"},finished:{type:Boolean,default:!1},offset:{type:Number,default:20},memoryScroll:{type:Boolean,default:!1},pullRefresh:{type:Boolean,default:!1},refreshData:{type:Function},pullDistance:{type:Number,default:70},pullTxt:{type:String,default:"pull to refresh"},releaseTxt:{type:String,default:"release to refresh"},refreshingTxt:{type:String,default:"refreshing..."},supportMode:{type:String,default:"mobile"},refreshLoading:{type:Boolean,default:!0}},B={"update:loading":t=>!0,"update:isError":t=>!0},R=e.defineComponent({name:"LoadedScroll",props:F,emits:B,slots:Object,setup(t,{slots:i,emit:y}){const r=e.ref(null);let m=null;const{ignoreScroll:d,botHintRef:g,hintHeight:h,handleScroll:a,bindHintHeight:b,fetchData:v}=L(t,y),{pullY:T,pullText:C,touching:l,bindLoaded:V,unbindLoaded:s}=D(t,y,r,o);async function o(){d.value=!0,await e.nextTick();const f=r.value?.querySelector(t.scrollNode);m?.removeEventListener("scroll",a),m=f,m&&(t.memoryScroll||(m.scrollTop=0),m.addEventListener("scroll",a)),setTimeout(()=>{d.value=!1})}return e.onMounted(async()=>{await b(),await v(),await o(),V()}),e.onBeforeUnmount(()=>{m&&m.removeEventListener("scroll",a),s()}),()=>e.createVNode("div",{ref:r,class:"loadedScroll"},[t.pullRefresh&&e.createVNode("div",{class:"pullRefreshHint",style:{height:`${T.value}px`,lineHeight:`${T.value}px`,transition:l.value?"none":"height .25s",overflow:"hidden",textAlign:"center"}},[C.value]),i.default?.({hintHeight:h.value}),e.createVNode("div",{ref:g},[i.bottomHint?i.bottomHint?.():t.finished?e.createVNode("div",{class:"hintText"},[i.finishedTxt?.()??t.finishedTxt]):e.createVNode(e.Fragment,null,[t.loading&&e.createVNode("div",{class:"hintText"},[i.loadingTxt?.()??t.loadingTxt]),t.isError&&!t.loading&&e.createVNode("div",{class:"hintText errorTxt","data-no-pull":!0,onPointerDown:f=>f.stopPropagation(),onTouchStart:f=>f.stopPropagation(),onClick:()=>{y("update:loading",!0),y("update:isError",!1),v()}},[i.errorTxt?.()??t.errorTxt])])])])}});function L(t,i){const y=e.ref(!0),r=e.ref(0),m=e.ref(null),d=e.computed(()=>t.loading||t.finished||t.isError?r.value:0);function g(b){if(y.value||t.loading||t.finished||t.isError)return;const v=b.target;v.scrollTop+v.clientHeight>=v.scrollHeight-t.offset&&(i("update:loading",!0),a())}async function h(){const b=m.value?.getElementsByTagName("div")[0];r.value=(b?.clientHeight??0)+u.getMarginY(b)}async function a(){return t.loadData?.().then(b=>{i("update:loading",!1)}).catch(b=>{i("update:loading",!1),i("update:isError",!0)})}return{ignoreScroll:y,hintHeight:d,botHeight:r,botHintRef:m,handleScroll:g,bindHintHeight:h,fetchData:a}}function D(t,i,y,r){const m=e.ref(null),d=e.ref(!1),g=e.ref(!1),h=e.ref(0),a=e.ref(0),b=e.computed(()=>g.value?t.refreshingTxt:a.value>=t.pullDistance?t.releaseTxt:t.pullTxt);function v(){return!y.value||y.value.scrollTop<=2}function T(){return t.pullRefresh&&v()&&!g.value}function C(c){f(c)||(d.value=!1,t.pullRefresh&&v()&&(g.value||(d.value=!0,h.value=u.getClientY(c),m.value=u.getEventId(c),"pointerId"in c&&c.currentTarget.setPointerCapture?.(c.pointerId))))}function l(c){if(!d.value||"pointerId"in c&&m.value!==c.pointerId||!T())return;const N=u.getClientY(c)-h.value;N<=0||(c.preventDefault(),a.value=Math.min(N*.45,t.pullDistance+30))}function V(c){d.value&&("pointerId"in c&&m.value!==c.pointerId||(d.value=!1,"pointerId"in c&&c.currentTarget.releasePointerCapture?.(c.pointerId),m.value=null,a.value>=t.pullDistance?s():a.value=0))}async function s(){if(!g.value){g.value=!0,t.refreshLoading&&i("update:loading",!0),a.value=t.pullDistance;try{i("update:isError",!1),await t.refreshData?.()}catch{i("update:isError",!0)}finally{g.value=!1,await e.nextTick(),await r(),t.refreshLoading&&i("update:loading",!1),setTimeout(()=>{a.value=0})}}}async function o(){await e.nextTick(),n(),!(!y.value||!t.pullRefresh)&&x().forEach(({name:c,handler:p,options:N})=>{y.value?.addEventListener(c,p,N)})}function f(c){return!!c.target?.closest("[data-no-pull]")}function n(){x().forEach(({name:c,handler:p,options:N})=>{y.value?.removeEventListener(c,p,N)})}function x(){const c=C,p=l,N=V,S=[{name:"pointerdown",handler:c},{name:"pointermove",handler:p},{name:"pointerup",handler:N},{name:"pointercancel",handler:N}],I=[{name:"touchstart",handler:c,options:{passive:!0}},{name:"touchmove",handler:p,options:{passive:!1}},{name:"touchend",handler:N},{name:"touchcancel",handler:N}];switch(t.supportMode){case"pc":return S;case"mobile":return I;default:return[...S,...I]}}return{pullY:a,touching:d,pullText:b,bindLoaded:o,unbindLoaded:n}}const j=function(t,i){function y(){t?.()}function r(){t?.()}const m=e.reactive({pageNo:1,pageSize:25,showSizePicker:!0,pageSizes:[25,50,100,200],pageSlot:5,total:0,layout:"total, prev, pager, next, sizes, jumper",onChange:y,onPageSizeChange:r,setTotalSize(d){m.total=d},...i});return m},O={install(t){t.component("DynamicInput",A),t.component("DynamicCascadeInput",k)}};exports.Debounce=u.Debounce;exports.OmitValue=u.OmitValue;exports.ensureRef=u.ensureRef;exports.formatNumberInput=u.formatNumberInput;exports.getClientY=u.getClientY;exports.getDepthColor=u.getDepthColor;exports.getEventId=u.getEventId;exports.getMarginY=u.getMarginY;exports.getPadY=u.getPadY;exports.parseValue=u.parseValue;exports.resetObj=u.resetObj;exports.saferRepairColor=u.saferRepairColor;exports.tranArr=u.tranArr;exports.unwrapObj=u.unwrapObj;exports.useDyForm=u.useDyForm;exports.useObserverSize=u.useObserverSize;exports.useReactiveForm=u.useReactiveForm;exports.useWindowSize=u.useWindowSize;exports.DynamicCascadeInput=k;exports.DynamicInput=A;exports.DynamicInputPlugin=O;exports.LoadedScroll=R;exports.usePagination=j;
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- .dynamicForm{overflow:hidden}.dynamicForm.small .dyFormList{gap:6px}.dynamicForm.small .dyFormList .typeBtn{padding:.2em .6em;height:18px}.dynamicForm.small .dyFormList>.dItem .input .key{font-size:.7em}.dynamicForm.small .dyFormList>.dItem .input .vInput{padding:.15em .4em}.dynamicForm.small .dyFormList>.dItem .input .vInput .slot{white-space:nowrap}.dynamicForm.small .dyFormList>.dItem .input .vInput .slot>button{padding:.1em .4em;font-size:.8em}.dynamicForm.small .dyFormList>.dItem .btn .bt{padding:.3em .8em}.dynamicForm.large .dyFormList{gap:15px}.dynamicForm.large .dyFormList .dItem{column-gap:20px}.dynamicForm.large .dyFormList .dItem .input .key{font-size:1.2em}.dynamicForm.large .dyFormList .dItem .input .vInput{padding:.5em .4em}.dynamicForm.large .dyFormList .dItem .input .vInput input{font-size:1.2em}.dynamicForm.large .dyFormList .dItem .input .vInput .slot{white-space:nowrap}.dynamicForm.large .dyFormList .dItem .input .vInput .slot>button{padding:.15em .4em;font-size:1em}.dynamicForm.large .dyFormList .dItem .btn .bt{padding:.8em 1.2em}.dynamicForm .dyFormList{overflow:auto;display:grid;gap:10px;padding:0 5px 10px}.dynamicForm .dyFormList.noList{padding:0}.dynamicForm .dyFormList .dItem{width:100%;display:grid;grid-template-columns:1fr 100px;column-gap:0}.dynamicForm .dyFormList .dItem .input{display:flex;justify-content:flex-start;align-items:center;column-gap:15px}.dynamicForm .dyFormList .dItem .input .key{text-align:center;width:150px}.dynamicForm .dyFormList .dItem .input .key.nativeInput{border:1px solid #d2d6dd;padding:.35em .4em;border-radius:3px}.dynamicForm .dyFormList .dItem .input .key.nativeInput:focus{outline:none;box-shadow:0 0 5px #007bff4d}.dynamicForm .dyFormList .dItem .input .vInput{width:100%;border:1px solid #d2d6dd;padding:.3em .4em;border-radius:3px;display:flex;column-gap:5px}.dynamicForm .dyFormList .dItem .input .vInput>.value{border:none;width:100%}.dynamicForm .dyFormList .dItem .input .vInput>.value.nativeV{letter-spacing:3px;padding:0}.dynamicForm .dyFormList .dItem .input .vInput>.value.nativeV:focus{outline:none}.dynamicForm .dyFormList .dItem .input .vInput .slot{white-space:nowrap;display:flex;gap:5px}.dynamicForm .dyFormList .dItem .input .vInput .slot>button{font-weight:400;border-radius:3px;font-size:.7em}.dynamicForm .dyFormList .dItem .input .value .el-button+.el-button{margin-left:5px}.dynamicForm .dyFormList .dItem .btn{display:flex;justify-content:flex-end;align-items:center;column-gap:8px}.dynamicForm .dyFormList .dItem .btn .n-button{font-size:25px;padding:10px 12px}.dynamicForm .dyFormList .dItem .btn .el-button+.el-button{margin-left:0}.dynamicForm .dyFormList .dItem .btn .bt{padding:.5em 1em}.dynamicForm .key .el-input__inner,.dynamicForm .isKey .el-input__inner{text-align:center}.dynamicForm .control{display:flex;justify-content:center;align-items:center;margin-top:5px;column-gap:10px}.dynamicForm .control.noList{margin-top:0}.dynamicForm .bt{color:#fff;border-radius:5px;border:1px solid transparent;padding:.3em .8em;font-size:.9em;font-weight:600;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:.25s;opacity:.9}.dynamicForm .bt:hover{opacity:1}.dynamicForm .bt:disabled{opacity:.35;cursor:not-allowed}.dynamicForm .default{background:#fff;color:#000;border:1px solid #d2d6dd}.dynamicForm .info{background:#8a8e94}.dynamicForm .success{background:#63ba39}.dynamicForm .danger{background:#ea696a}.dynamicCascadeForm{overflow:hidden}.dynamicCascadeForm.small .dyFormList{gap:6px}.dynamicCascadeForm.small .dyFormList .typeBtn{padding:.2em .6em;height:18px}.dynamicCascadeForm.small .dyFormList>.dItem .input .key{font-size:.7em}.dynamicCascadeForm.small .dyFormList>.dItem .input .vInput{padding:.15em .4em}.dynamicCascadeForm.small .dyFormList>.dItem .input .vInput .slot{white-space:nowrap}.dynamicCascadeForm.small .dyFormList>.dItem .input .vInput .slot>button{padding:.1em .4em;font-size:.8em}.dynamicCascadeForm.small .dyFormList>.dItem .btn .bt{padding:.3em .8em}.dynamicCascadeForm.large .dyFormList{gap:15px}.dynamicCascadeForm.large .dyFormList .dItem{column-gap:20px}.dynamicCascadeForm.large .dyFormList .dItem .input .key{font-size:1.2em}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput{padding:.5em .4em}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput input{font-size:1.2em}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput .slot{white-space:nowrap}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput .slot>button{padding:.15em .4em;font-size:1em}.dynamicCascadeForm.large .dyFormList .dItem .btn .bt{padding:.8em 1.2em}.dynamicCascadeForm .dyFormList{overflow:auto;display:grid;gap:10px;padding:0 5px 10px}.dynamicCascadeForm .dyFormList.noList{padding:0}.dynamicCascadeForm .dyFormList .dItem{width:100%;display:grid;grid-template-columns:1fr 100px;column-gap:0}.dynamicCascadeForm .dyFormList .dItem .input{display:flex;justify-content:flex-start;align-items:center;column-gap:15px}.dynamicCascadeForm .dyFormList .dItem .input .key{text-align:center;width:150px}.dynamicCascadeForm .dyFormList .dItem .input .key.nativeInput{border:1px solid #d2d6dd;padding:.35em .4em;border-radius:3px}.dynamicCascadeForm .dyFormList .dItem .input .key.nativeInput:focus{outline:none;box-shadow:0 0 5px #007bff4d}.dynamicCascadeForm .dyFormList .dItem .input .vInput{width:100%;border:1px solid #d2d6dd;padding:.3em .4em;border-radius:3px;display:flex;column-gap:5px}.dynamicCascadeForm .dyFormList .dItem .input .vInput>.value{border:none;width:100%}.dynamicCascadeForm .dyFormList .dItem .input .vInput>.value.nativeV{letter-spacing:3px;padding:0}.dynamicCascadeForm .dyFormList .dItem .input .vInput>.value.nativeV:focus{outline:none}.dynamicCascadeForm .dyFormList .dItem .input .vInput .slot{white-space:nowrap;display:flex;gap:5px}.dynamicCascadeForm .dyFormList .dItem .input .vInput .slot>button{font-weight:400;border-radius:3px;font-size:.7em}.dynamicCascadeForm .dyFormList .dItem .input .value .el-button+.el-button{margin-left:5px}.dynamicCascadeForm .dyFormList .dItem .btn{display:flex;justify-content:flex-end;align-items:center;column-gap:8px}.dynamicCascadeForm .dyFormList .dItem .btn .n-button{font-size:25px;padding:10px 12px}.dynamicCascadeForm .dyFormList .dItem .btn .el-button+.el-button{margin-left:0}.dynamicCascadeForm .dyFormList .dItem .btn .bt{padding:.5em 1em}.dynamicCascadeForm .key .el-input__inner,.dynamicCascadeForm .isKey .el-input__inner{text-align:center}.dynamicCascadeForm .control{display:flex;justify-content:center;align-items:center;margin-top:5px;column-gap:10px}.dynamicCascadeForm .control.noList{margin-top:0}.dynamicCascadeForm .bt{color:#fff;border-radius:5px;border:1px solid transparent;padding:.3em .8em;font-size:.9em;font-weight:600;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:.25s;opacity:.9}.dynamicCascadeForm .bt:hover{opacity:1}.dynamicCascadeForm .bt:disabled{opacity:.35;cursor:not-allowed}.dynamicCascadeForm .default{background:#fff;color:#000;border:1px solid #d2d6dd}.dynamicCascadeForm .info{background:#8a8e94}.dynamicCascadeForm .success{background:#63ba39}.dynamicCascadeForm .danger{background:#ea696a}.dynamicCascadeForm .dyFormList.noObj{padding:0}.dynamicCascadeForm .dyFormList.noObj .depth-1{display:none}.dynamicCascadeForm .dyFormList .dItem{width:inherit}.dynamicCascadeForm .dyFormList .dItem .vInput .surSlot{white-space:nowrap}.dynamicCascadeForm .dyFormList .dItem .vInput .surSlot>button{padding:.1em .4em;font-size:.8em}.dynamicCascadeForm .dyFormList .dItem .input .value.isKey{text-align:center}.dynamicCascadeForm .dyFormList .dItem .input .value.isKey input{font-weight:700}.dynamicCascadeForm .dyFormList>.depth-1{display:grid;border:1px solid var(--c1);border-style:dashed;border-radius:5px}.dynamicCascadeForm .dyFormList>.depth-1>.dItem{padding:5px}.dynamicCascadeForm .dyFormList>.depth-1 .dItem+.dItem{margin-top:5px}.dynamicCascadeForm .dyFormList>.depth-1.no-pad>.dItem{padding:0}.dynamicCascadeForm .dyFormList .depth-1 .depth-2{border:1px solid var(--c2);border-style:dashed;padding:8px;border-radius:5px;margin-top:10px;row-gap:-3px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .dItem .btn .n-button{transform:scale(.84)}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3{border:1px solid var(--c3);border-style:dashed;padding:7px;border-radius:5px;margin-top:9px;row-gap:-5px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .dItem .btn .n-button{transform:scale(.76)}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4{border:1px solid var(--c4);border-style:dashed;padding:6px;border-radius:5px;margin-top:8px;row-gap:-7px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4 .dItem .btn .n-button{transform:scale(.68)}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4 .depth-5{border:1px solid var(--c5);border-style:dashed;padding:5px;border-radius:5px;margin-top:7px;row-gap:-9px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4 .depth-5 .dItem .btn .n-button{transform:scale(.6)}.dynamicCascadeForm .dyFormList .no-border{border:none!important}.dynamicCascadeForm .dyFormList .no-pad{padding:0!important}.dynamicCascadeForm .control.noObj{margin:0}.naiDynamicForm .cls-required{margin-left:5px;color:red}.naiDynamicForm .header{margin-bottom:5px}.naiDynamicForm .footer{margin-top:5px}.flex{display:flex}.flex.justify-end{justify-content:flex-end}.flex.align-center{align-items:center}.sm-gap{gap:5px}.zealCard .n-card{height:100%}.zealCard .title{text-align:center;font-weight:700;font-size:18px}.zealCard .search{margin:10px 0}.zealCard .search .searchBtn{display:flex;justify-content:flex-end;gap:10px}.zealCard .controlBtn{margin-top:8px;display:flex;align-items:center;justify-content:space-between}.zealCard .footer{display:flex;justify-content:center}.zealCard .fControlBtn{display:flex;justify-content:center;gap:10px}.naiZealTableSearch .searchForm,.naiZealSearchDrawer .searchForm{overflow:auto}.naiZealTableSearch .searchForm .n-form .n-form-item .n-form-item-feedback-wrapper,.naiZealSearchDrawer .searchForm .n-form .n-form-item .n-form-item-feedback-wrapper{min-height:10px;margin-top:0}.naiZealTableSearch .naiTitle,.naiZealSearchDrawer .naiTitle{margin-bottom:10px;font-weight:500;font-size:18px}.naiZealTableSearch .drawerSearchBtn,.naiZealSearchDrawer .drawerSearchBtn{display:flex;align-items:center;justify-content:space-between}.naiZealTableSearch .searchBtn,.naiZealSearchDrawer .searchBtn{margin-top:10px;display:flex;justify-content:flex-end;gap:10px}.naiZealSearchDrawer .searchBtn{margin:0}.eleZealTableSearch .searchForm .el-form-item,.eleZealSearchDrawer .searchForm .el-form-item{margin-bottom:5px}.eleZealTableSearch .naiTitle,.eleZealSearchDrawer .naiTitle{margin-bottom:10px}.eleZealTableSearch .drawerSearchBtn,.eleZealSearchDrawer .drawerSearchBtn{display:flex;align-items:center;justify-content:space-between}.eleZealTableSearch .searchBtn,.eleZealSearchDrawer .searchBtn{margin-top:10px;display:flex;justify-content:flex-end}.eleZealSearchDrawer .searchBtn{margin:0}.eleZealSearchDrawer .el-drawer__header{margin-bottom:15px}.eleZealSearchDrawer .el-drawer__body{padding:5px 15px}.eleZealSearchDrawer .searchForm{overflow:auto}.eleZealSearchDrawer .searchForm .el-form-item{margin-bottom:10px}@media(max-width:756px){.dynamicForm .dyFormList .dItem .input .key{width:50px}.dynamicForm .dyFormList .dItem .input .value{width:calc(100% - 60px)}}
1
+ .dynamicForm{overflow:hidden}.dynamicForm.small .dyFormList{gap:6px}.dynamicForm.small .dyFormList .typeBtn{padding:.2em .6em;height:18px}.dynamicForm.small .dyFormList>.dItem .input .key{font-size:.7em}.dynamicForm.small .dyFormList>.dItem .input .vInput{padding:.15em .4em}.dynamicForm.small .dyFormList>.dItem .input .vInput .slot{white-space:nowrap}.dynamicForm.small .dyFormList>.dItem .input .vInput .slot>button{padding:.1em .4em;font-size:.8em}.dynamicForm.small .dyFormList>.dItem .btn .bt{padding:.3em .8em}.dynamicForm.large .dyFormList{gap:15px}.dynamicForm.large .dyFormList .dItem{column-gap:20px}.dynamicForm.large .dyFormList .dItem .input .key{font-size:1.2em}.dynamicForm.large .dyFormList .dItem .input .vInput{padding:.5em .4em}.dynamicForm.large .dyFormList .dItem .input .vInput input{font-size:1.2em}.dynamicForm.large .dyFormList .dItem .input .vInput .slot{white-space:nowrap}.dynamicForm.large .dyFormList .dItem .input .vInput .slot>button{padding:.15em .4em;font-size:1em}.dynamicForm.large .dyFormList .dItem .btn .bt{padding:.8em 1.2em}.dynamicForm .dyFormList{overflow:auto;display:grid;gap:10px;padding:0 5px 10px}.dynamicForm .dyFormList.noList{padding:0}.dynamicForm .dyFormList .dItem{width:100%;display:grid;grid-template-columns:1fr 100px;column-gap:0}.dynamicForm .dyFormList .dItem .input{display:flex;justify-content:flex-start;align-items:center;column-gap:15px}.dynamicForm .dyFormList .dItem .input .key{text-align:center;width:150px}.dynamicForm .dyFormList .dItem .input .key.nativeInput{border:1px solid #d2d6dd;padding:.35em .4em;border-radius:3px}.dynamicForm .dyFormList .dItem .input .key.nativeInput:focus{outline:none;box-shadow:0 0 5px #007bff4d}.dynamicForm .dyFormList .dItem .input .vInput{width:100%;border:1px solid #d2d6dd;padding:.3em .4em;border-radius:3px;display:flex;column-gap:5px}.dynamicForm .dyFormList .dItem .input .vInput>.value{border:none;width:100%}.dynamicForm .dyFormList .dItem .input .vInput>.value.nativeV{letter-spacing:3px;padding:0}.dynamicForm .dyFormList .dItem .input .vInput>.value.nativeV:focus{outline:none}.dynamicForm .dyFormList .dItem .input .vInput .slot{white-space:nowrap;display:flex;gap:5px}.dynamicForm .dyFormList .dItem .input .vInput .slot>button{font-weight:400;border-radius:3px;font-size:.7em}.dynamicForm .dyFormList .dItem .input .value .el-button+.el-button{margin-left:5px}.dynamicForm .dyFormList .dItem .btn{display:flex;justify-content:flex-end;align-items:center;column-gap:8px}.dynamicForm .dyFormList .dItem .btn .n-button{font-size:25px;padding:10px 12px}.dynamicForm .dyFormList .dItem .btn .el-button+.el-button{margin-left:0}.dynamicForm .dyFormList .dItem .btn .bt{padding:.5em 1em}.dynamicForm .key .el-input__inner,.dynamicForm .isKey .el-input__inner{text-align:center}.dynamicForm .control{display:flex;justify-content:center;align-items:center;margin-top:5px;column-gap:10px}.dynamicForm .control.noList{margin-top:0}.dynamicForm .bt{color:#fff;border-radius:5px;border:1px solid transparent;padding:.3em .8em;font-size:.9em;font-weight:600;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:.25s;opacity:.9}.dynamicForm .bt:hover{opacity:1}.dynamicForm .bt:disabled{opacity:.35;cursor:not-allowed}.dynamicForm .default{background:#fff;color:#000;border:1px solid #d2d6dd}.dynamicForm .info{background:#8a8e94}.dynamicForm .success{background:#63ba39}.dynamicForm .danger{background:#ea696a}.dynamicCascadeForm{overflow:hidden}.dynamicCascadeForm.small .dyFormList{gap:6px}.dynamicCascadeForm.small .dyFormList .typeBtn{padding:.2em .6em;height:18px}.dynamicCascadeForm.small .dyFormList>.dItem .input .key{font-size:.7em}.dynamicCascadeForm.small .dyFormList>.dItem .input .vInput{padding:.15em .4em}.dynamicCascadeForm.small .dyFormList>.dItem .input .vInput .slot{white-space:nowrap}.dynamicCascadeForm.small .dyFormList>.dItem .input .vInput .slot>button{padding:.1em .4em;font-size:.8em}.dynamicCascadeForm.small .dyFormList>.dItem .btn .bt{padding:.3em .8em}.dynamicCascadeForm.large .dyFormList{gap:15px}.dynamicCascadeForm.large .dyFormList .dItem{column-gap:20px}.dynamicCascadeForm.large .dyFormList .dItem .input .key{font-size:1.2em}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput{padding:.5em .4em}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput input{font-size:1.2em}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput .slot{white-space:nowrap}.dynamicCascadeForm.large .dyFormList .dItem .input .vInput .slot>button{padding:.15em .4em;font-size:1em}.dynamicCascadeForm.large .dyFormList .dItem .btn .bt{padding:.8em 1.2em}.dynamicCascadeForm .dyFormList{overflow:auto;display:grid;gap:10px;padding:0 5px 10px}.dynamicCascadeForm .dyFormList.noList{padding:0}.dynamicCascadeForm .dyFormList .dItem{width:100%;display:grid;grid-template-columns:1fr 100px;column-gap:0}.dynamicCascadeForm .dyFormList .dItem .input{display:flex;justify-content:flex-start;align-items:center;column-gap:15px}.dynamicCascadeForm .dyFormList .dItem .input .key{text-align:center;width:150px}.dynamicCascadeForm .dyFormList .dItem .input .key.nativeInput{border:1px solid #d2d6dd;padding:.35em .4em;border-radius:3px}.dynamicCascadeForm .dyFormList .dItem .input .key.nativeInput:focus{outline:none;box-shadow:0 0 5px #007bff4d}.dynamicCascadeForm .dyFormList .dItem .input .vInput{width:100%;border:1px solid #d2d6dd;padding:.3em .4em;border-radius:3px;display:flex;column-gap:5px}.dynamicCascadeForm .dyFormList .dItem .input .vInput>.value{border:none;width:100%}.dynamicCascadeForm .dyFormList .dItem .input .vInput>.value.nativeV{letter-spacing:3px;padding:0}.dynamicCascadeForm .dyFormList .dItem .input .vInput>.value.nativeV:focus{outline:none}.dynamicCascadeForm .dyFormList .dItem .input .vInput .slot{white-space:nowrap;display:flex;gap:5px}.dynamicCascadeForm .dyFormList .dItem .input .vInput .slot>button{font-weight:400;border-radius:3px;font-size:.7em}.dynamicCascadeForm .dyFormList .dItem .input .value .el-button+.el-button{margin-left:5px}.dynamicCascadeForm .dyFormList .dItem .btn{display:flex;justify-content:flex-end;align-items:center;column-gap:8px}.dynamicCascadeForm .dyFormList .dItem .btn .n-button{font-size:25px;padding:10px 12px}.dynamicCascadeForm .dyFormList .dItem .btn .el-button+.el-button{margin-left:0}.dynamicCascadeForm .dyFormList .dItem .btn .bt{padding:.5em 1em}.dynamicCascadeForm .key .el-input__inner,.dynamicCascadeForm .isKey .el-input__inner{text-align:center}.dynamicCascadeForm .control{display:flex;justify-content:center;align-items:center;margin-top:5px;column-gap:10px}.dynamicCascadeForm .control.noList{margin-top:0}.dynamicCascadeForm .bt{color:#fff;border-radius:5px;border:1px solid transparent;padding:.3em .8em;font-size:.9em;font-weight:600;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:.25s;opacity:.9}.dynamicCascadeForm .bt:hover{opacity:1}.dynamicCascadeForm .bt:disabled{opacity:.35;cursor:not-allowed}.dynamicCascadeForm .default{background:#fff;color:#000;border:1px solid #d2d6dd}.dynamicCascadeForm .info{background:#8a8e94}.dynamicCascadeForm .success{background:#63ba39}.dynamicCascadeForm .danger{background:#ea696a}.dynamicCascadeForm .dyFormList.noObj{padding:0}.dynamicCascadeForm .dyFormList.noObj .depth-1{display:none}.dynamicCascadeForm .dyFormList .dItem{width:inherit}.dynamicCascadeForm .dyFormList .dItem .vInput .surSlot{white-space:nowrap}.dynamicCascadeForm .dyFormList .dItem .vInput .surSlot>button{padding:.1em .4em;font-size:.8em}.dynamicCascadeForm .dyFormList .dItem .input .value.isKey{text-align:center}.dynamicCascadeForm .dyFormList .dItem .input .value.isKey input{font-weight:700}.dynamicCascadeForm .dyFormList>.depth-1{display:grid;border:1px solid var(--c1);border-style:dashed;border-radius:5px}.dynamicCascadeForm .dyFormList>.depth-1>.dItem{padding:5px}.dynamicCascadeForm .dyFormList>.depth-1 .dItem+.dItem{margin-top:5px}.dynamicCascadeForm .dyFormList>.depth-1.no-pad>.dItem{padding:0}.dynamicCascadeForm .dyFormList .depth-1 .depth-2{border:1px solid var(--c2);border-style:dashed;padding:8px;border-radius:5px;margin-top:10px;row-gap:-3px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .dItem .btn .n-button{transform:scale(.84)}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3{border:1px solid var(--c3);border-style:dashed;padding:7px;border-radius:5px;margin-top:9px;row-gap:-5px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .dItem .btn .n-button{transform:scale(.76)}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4{border:1px solid var(--c4);border-style:dashed;padding:6px;border-radius:5px;margin-top:8px;row-gap:-7px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4 .dItem .btn .n-button{transform:scale(.68)}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4 .depth-5{border:1px solid var(--c5);border-style:dashed;padding:5px;border-radius:5px;margin-top:7px;row-gap:-9px}.dynamicCascadeForm .dyFormList .depth-1 .depth-2 .depth-3 .depth-4 .depth-5 .dItem .btn .n-button{transform:scale(.6)}.dynamicCascadeForm .dyFormList .no-border{border:none!important}.dynamicCascadeForm .dyFormList .no-pad{padding:0!important}.dynamicCascadeForm .control.noObj{margin:0}.naiDynamicForm .cls-required{margin-left:5px;color:red}.naiDynamicForm .header{margin-bottom:5px}.naiDynamicForm .footer{margin-top:5px}.flex{display:flex}.flex.justify-end{justify-content:flex-end}.flex.align-center{align-items:center}.sm-gap{gap:5px}.zealCard .n-card{height:100%}.zealCard .title{text-align:center;font-weight:700;font-size:18px}.zealCard .search{margin:10px 0}.zealCard .search .searchBtn{display:flex;justify-content:flex-end;gap:10px}.zealCard .controlBtn{margin-top:8px;display:flex;align-items:center;justify-content:space-between}.zealCard .footer{display:flex;justify-content:center}.zealCard .fControlBtn{display:flex;justify-content:center;gap:10px}.naiZealTableSearch .searchForm,.naiZealSearchDrawer .searchForm{overflow:auto}.naiZealTableSearch .searchForm .n-form .n-form-item .n-form-item-feedback-wrapper,.naiZealSearchDrawer .searchForm .n-form .n-form-item .n-form-item-feedback-wrapper{min-height:10px;margin-top:0}.naiZealTableSearch .naiTitle,.naiZealSearchDrawer .naiTitle{margin-bottom:10px;font-weight:500;font-size:18px}.naiZealTableSearch .drawerSearchBtn,.naiZealSearchDrawer .drawerSearchBtn{display:flex;align-items:center;justify-content:space-between}.naiZealTableSearch .searchBtn,.naiZealSearchDrawer .searchBtn{margin-top:10px;display:flex;justify-content:flex-end;gap:10px}.naiZealSearchDrawer .searchBtn{margin:0}.eleZealTableSearch .searchForm .el-form-item,.eleZealSearchDrawer .searchForm .el-form-item{margin-bottom:5px}.eleZealTableSearch .naiTitle,.eleZealSearchDrawer .naiTitle{margin-bottom:10px}.eleZealTableSearch .drawerSearchBtn,.eleZealSearchDrawer .drawerSearchBtn{display:flex;align-items:center;justify-content:space-between}.eleZealTableSearch .searchBtn,.eleZealSearchDrawer .searchBtn{margin-top:10px;display:flex;justify-content:flex-end}.eleZealSearchDrawer .searchBtn{margin:0}.eleZealSearchDrawer .el-drawer__header{margin-bottom:15px}.eleZealSearchDrawer .el-drawer__body{padding:5px 15px}.eleZealSearchDrawer .searchForm{overflow:auto}.eleZealSearchDrawer .searchForm .el-form-item{margin-bottom:10px}.zealTableBtnControl{display:flex;justify-content:center;gap:5px}.loadedScroll{height:100%}.loadedScroll .hintText{margin-top:10px;height:30px;display:flex;justify-content:center;align-items:center}.loadedScroll .hintText.errorTxt{color:red;cursor:pointer}@media(max-width:756px){.dynamicForm .dyFormList .dItem .input .key{width:50px}.dynamicForm .dyFormList .dItem .input .value{width:calc(100% - 60px)}.zealCard .n-card{--n-padding-bottom: 10px !important;--n-padding-left: 10px !important}.zealCard .el-card{--el-card-padding: 10px}}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import { default as DynamicInput } from './origin/DynamicInput';
2
2
  import { default as DynamicCascadeInput } from './origin/DynamicCascadeInput';
3
+ import { default as LoadedScroll } from './origin/LoadedScroll';
3
4
  import { ExposeType } from './types';
4
- export { DynamicInput, DynamicCascadeInput };
5
+ export { DynamicInput, DynamicCascadeInput, LoadedScroll };
5
6
  export * from './hooks/useDyForm';
6
7
  export * from './hooks/useTool';
7
8
  export * from './hooks/zealForm';