dynamicformdjx 0.4.4 → 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.
@@ -0,0 +1,180 @@
1
+ import { ExtractPropTypes, PropType, SlotsType, VNode } from 'vue';
2
+ declare const _default: import('vue').DefineComponent<ExtractPropTypes<{
3
+ loading: {
4
+ type: BooleanConstructor;
5
+ default: boolean;
6
+ };
7
+ isError: {
8
+ type: BooleanConstructor;
9
+ default: boolean;
10
+ };
11
+ loadData: {
12
+ type: PropType<() => Promise<void>>;
13
+ required: boolean;
14
+ };
15
+ scrollNode: {
16
+ type: StringConstructor;
17
+ required: boolean;
18
+ };
19
+ loadingTxt: {
20
+ type: StringConstructor;
21
+ default: string;
22
+ };
23
+ finishedTxt: {
24
+ type: StringConstructor;
25
+ default: string;
26
+ };
27
+ errorTxt: {
28
+ type: StringConstructor;
29
+ default: string;
30
+ };
31
+ finished: {
32
+ type: BooleanConstructor;
33
+ default: boolean;
34
+ };
35
+ offset: {
36
+ type: NumberConstructor;
37
+ default: number;
38
+ };
39
+ memoryScroll: {
40
+ type: BooleanConstructor;
41
+ default: boolean;
42
+ };
43
+ pullRefresh: {
44
+ type: BooleanConstructor;
45
+ default: boolean;
46
+ };
47
+ refreshData: {
48
+ type: PropType<() => Promise<void>>;
49
+ };
50
+ pullDistance: {
51
+ type: NumberConstructor;
52
+ default: number;
53
+ };
54
+ pullTxt: {
55
+ type: StringConstructor;
56
+ default: string;
57
+ };
58
+ releaseTxt: {
59
+ type: StringConstructor;
60
+ default: string;
61
+ };
62
+ refreshingTxt: {
63
+ type: StringConstructor;
64
+ default: string;
65
+ };
66
+ supportMode: {
67
+ type: PropType<"pc" | "mobile" | "all">;
68
+ default: string;
69
+ };
70
+ refreshLoading: {
71
+ type: BooleanConstructor;
72
+ default: boolean;
73
+ };
74
+ }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
75
+ 'update:loading': (v: boolean) => boolean;
76
+ 'update:isError': (v: boolean) => boolean;
77
+ }, string, import('vue').PublicProps, Readonly<ExtractPropTypes<{
78
+ loading: {
79
+ type: BooleanConstructor;
80
+ default: boolean;
81
+ };
82
+ isError: {
83
+ type: BooleanConstructor;
84
+ default: boolean;
85
+ };
86
+ loadData: {
87
+ type: PropType<() => Promise<void>>;
88
+ required: boolean;
89
+ };
90
+ scrollNode: {
91
+ type: StringConstructor;
92
+ required: boolean;
93
+ };
94
+ loadingTxt: {
95
+ type: StringConstructor;
96
+ default: string;
97
+ };
98
+ finishedTxt: {
99
+ type: StringConstructor;
100
+ default: string;
101
+ };
102
+ errorTxt: {
103
+ type: StringConstructor;
104
+ default: string;
105
+ };
106
+ finished: {
107
+ type: BooleanConstructor;
108
+ default: boolean;
109
+ };
110
+ offset: {
111
+ type: NumberConstructor;
112
+ default: number;
113
+ };
114
+ memoryScroll: {
115
+ type: BooleanConstructor;
116
+ default: boolean;
117
+ };
118
+ pullRefresh: {
119
+ type: BooleanConstructor;
120
+ default: boolean;
121
+ };
122
+ refreshData: {
123
+ type: PropType<() => Promise<void>>;
124
+ };
125
+ pullDistance: {
126
+ type: NumberConstructor;
127
+ default: number;
128
+ };
129
+ pullTxt: {
130
+ type: StringConstructor;
131
+ default: string;
132
+ };
133
+ releaseTxt: {
134
+ type: StringConstructor;
135
+ default: string;
136
+ };
137
+ refreshingTxt: {
138
+ type: StringConstructor;
139
+ default: string;
140
+ };
141
+ supportMode: {
142
+ type: PropType<"pc" | "mobile" | "all">;
143
+ default: string;
144
+ };
145
+ refreshLoading: {
146
+ type: BooleanConstructor;
147
+ default: boolean;
148
+ };
149
+ }>> & Readonly<{
150
+ "onUpdate:loading"?: ((v: boolean) => any) | undefined;
151
+ "onUpdate:isError"?: ((v: boolean) => any) | undefined;
152
+ }>, {
153
+ loading: boolean;
154
+ offset: number;
155
+ isError: boolean;
156
+ loadingTxt: string;
157
+ finishedTxt: string;
158
+ errorTxt: string;
159
+ finished: boolean;
160
+ memoryScroll: boolean;
161
+ pullRefresh: boolean;
162
+ pullDistance: number;
163
+ pullTxt: string;
164
+ releaseTxt: string;
165
+ refreshingTxt: string;
166
+ supportMode: "mobile" | "pc" | "all";
167
+ refreshLoading: boolean;
168
+ }, SlotsType<{
169
+ default: (obj: {
170
+ hintHeight: number;
171
+ }) => VNode;
172
+ bottomHint: () => VNode;
173
+ errorTxt: () => VNode;
174
+ loadingTxt: () => VNode;
175
+ finishedTxt: () => VNode;
176
+ pullTxt: () => VNode;
177
+ releaseTxt: () => VNode;
178
+ refreshingTxt: () => VNode;
179
+ }>, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
180
+ export default _default;
@@ -33,3 +33,33 @@ export interface DyFormItem<K = any, RuleT = any> extends BaseDyFormItem<K> {
33
33
  filterable?: boolean;
34
34
  multiple?: boolean;
35
35
  }
36
+ export type PageModal = {
37
+ pageSize: number;
38
+ pageNo: number;
39
+ total: number;
40
+ };
41
+ export type ZealPagination = {
42
+ showSizePicker: boolean;
43
+ pageCount?: number;
44
+ pageSizes: number[];
45
+ pageSlot?: number;
46
+ onChange: () => void;
47
+ onPageSizeChange: () => void;
48
+ setTotalSize: (totalSize: number) => void;
49
+ layout?: string;
50
+ } & PageModal;
51
+ export type ZealColumn<T extends Record<string, any>> = {
52
+ label?: string;
53
+ prop?: keyof T;
54
+ key?: string;
55
+ width?: string | number;
56
+ type?: 'default' | 'selection' | 'index' | 'expand';
57
+ minWidth?: string | number;
58
+ align?: "left" | "center" | "right";
59
+ fixed?: boolean | "left" | "right";
60
+ sortable?: boolean | "custom";
61
+ showOverflowTooltip?: boolean;
62
+ resizable?: boolean;
63
+ render2?: (row: T, $index: number) => VNode;
64
+ slot?: string;
65
+ };
@@ -1,5 +1,5 @@
1
1
  import { DyFormItem } from './form.ts';
2
- import { VNode } from 'vue';
2
+ import { ComputedRef, Ref, VNode } from 'vue';
3
3
  export type DyCFormItem = {
4
4
  rId: string;
5
5
  key: string;
@@ -75,6 +75,14 @@ export type ExposeType = {
75
75
  onSet?: (obj?: object) => void;
76
76
  getResult?: (t?: 'res' | 'ori') => DyCFormItem[] | object;
77
77
  };
78
+ export type ExposeZealCardType = {
79
+ tableHeight: Ref<number>;
80
+ isMobile: ComputedRef<boolean>;
81
+ };
82
+ export type ZealColumnType = {
83
+ tableHeight: Ref<number>;
84
+ isMobile: Ref<boolean>;
85
+ };
78
86
  export type PresetType = 'fullRow' | 'grid';
79
87
  export type RenderType = "renderInput" | "renderSelect" | "renderPopSelect" | "renderTreeSelect" | "renderRadioGroup" | "renderRadioButtonGroup" | "renderCheckboxGroup" | "renderSwitch" | "renderDatePicker" | "renderTimePicker" | "renderCheckbox" | "renderDynamicTags" | "renderSlider" | "renderInputNumber";
80
88
  export type ExposeDyFType = {
@@ -107,3 +115,24 @@ export type Renderers<Row extends Record<string, any>, RuleT = any> = {
107
115
  renderSlider: (value: any, props: any, it: any) => any;
108
116
  renderInputNumber: (value: any, props: any, it: any) => any;
109
117
  };
118
+ export type ExposePopupMType = {
119
+ toggle?: (f?: boolean) => void;
120
+ };
121
+ export type ExposeZealTSearchType = {
122
+ onReset?: () => void;
123
+ onSearch?: () => void;
124
+ toggleDrawer?: (f?: boolean) => void;
125
+ getParams?: <T extends object>() => T;
126
+ };
127
+ export type TableBtnType = {
128
+ key: string;
129
+ title?: string;
130
+ onSelect?: (k: string) => void;
131
+ disabled?: boolean;
132
+ };
133
+ export type PullEvent = TouchEvent | PointerEvent;
134
+ export type ListenerItem = {
135
+ name: keyof HTMLElementEventMap;
136
+ handler: EventListener;
137
+ options?: AddEventListenerOptions | boolean;
138
+ };
@@ -0,0 +1,40 @@
1
+ import { VNode } from 'vue';
2
+ type SizeObjType = {
3
+ isMobile: boolean;
4
+ width: number;
5
+ height: number;
6
+ };
7
+ export type ZealCardSlots = {
8
+ searchForm?: (size: SizeObjType) => VNode[];
9
+ searchBtn?: (size: SizeObjType) => VNode[];
10
+ controlBtn?: (size: SizeObjType) => VNode[];
11
+ toolBtn?: (size: SizeObjType) => VNode[];
12
+ default?: (obj: {
13
+ tableHeight: number;
14
+ } & SizeObjType) => VNode[];
15
+ rest?: (size: SizeObjType) => VNode[];
16
+ footer?: (size: SizeObjType) => VNode[];
17
+ header?: (size: SizeObjType) => VNode[];
18
+ };
19
+ export type ZealTableSearchSlots = {
20
+ title?: () => VNode[];
21
+ searchBtn?: (o: {
22
+ onSearch: () => void;
23
+ onReset: () => void;
24
+ }) => VNode[];
25
+ drawerBtn?: (o: {
26
+ openDrawer: () => void;
27
+ }) => VNode[];
28
+ };
29
+ export type EleZealTablePaginationSlots = {
30
+ default?: () => VNode[];
31
+ };
32
+ export type EleZealTableSlots = {
33
+ default?: () => VNode[];
34
+ append?: () => VNode[];
35
+ empty?: () => VNode[];
36
+ };
37
+ export type ZealTableBtnControlSlots = {
38
+ text: () => void;
39
+ };
40
+ export {};
@@ -1,4 +1,4 @@
1
- import { ValueType, DyCFormItem, DyRandomFun } from '../types';
1
+ import { ValueType, DyCFormItem, DyRandomFun, PullEvent } from '../types';
2
2
  import { Ref } from 'vue';
3
3
  import { DyFormItem } from '../types/form';
4
4
  declare const tranArr: (obj: ValueType, arrayFun: DyRandomFun, splitSymbol: string) => DyCFormItem[];
@@ -9,4 +9,12 @@ declare const getDepthColor: (depth: number) => string;
9
9
  declare const saferRepairColor: (colors: string[], i: number) => string;
10
10
  declare function ensureRef(v: any): Ref<any>;
11
11
  declare function OmitValue<T extends DyFormItem, const K extends readonly (keyof T)[]>(f: T, extraKeys?: K): Omit<T, "value" | K[number]>;
12
- export { tranArr, resetObj, parseValue, formatNumberInput, getDepthColor, saferRepairColor, ensureRef, OmitValue };
12
+ declare function Debounce<T extends (...args: any[]) => void>(func: T, delay?: number): (...args: Parameters<T>) => void;
13
+ declare const getPadY: (el: HTMLElement | null) => number;
14
+ declare const getMarginY: (el: HTMLElement | null) => number;
15
+ declare const unwrapObj: <T extends Record<string, any>>(obj: T) => { [K in keyof T]: T[K] extends {
16
+ value: infer V;
17
+ } ? V : T[K]; };
18
+ declare function getClientY(e: PullEvent): number;
19
+ declare function getEventId(e: PullEvent): number | null;
20
+ export { tranArr, resetObj, parseValue, formatNumberInput, getDepthColor, saferRepairColor, ensureRef, OmitValue, Debounce, getPadY, getMarginY, unwrapObj, getClientY, getEventId };
@@ -0,0 +1,6 @@
1
+ /// <reference types="vite/client" />
2
+ declare module "*.vue" {
3
+ import { DefineComponent } from 'vue';
4
+ const component: DefineComponent<{}, {}, any>;
5
+ export default component;
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dynamicformdjx",
3
- "version": "0.4.4",
3
+ "version": "0.6.0",
4
4
  "type": "module",
5
5
  "author": "xczcdjx",
6
6
  "license": "MIT",
@@ -51,6 +51,7 @@
51
51
  "scripts": {
52
52
  "dev:v3": "vite --host",
53
53
  "build:v3": "vue-tsc -b && vite build",
54
+ "build:skipTsc": "vite build",
54
55
  "preview": "vite preview",
55
56
  "pub": "npm version patch && npm publish"
56
57
  },
@@ -1,42 +0,0 @@
1
- import { ref as l, isRef as c } from "vue";
2
- import './index.css';const g = (e, s, n) => Object.keys(e).map((t, r) => {
3
- const i = e[t], a = Array.isArray(i), o = a ? i.every((u) => typeof u == "number") : typeof i == "number";
4
- return {
5
- rId: s(r),
6
- key: t,
7
- value: a ? i.join(n) : i,
8
- isArray: a || void 0,
9
- isNumber: o || void 0
10
- };
11
- }), y = (e, s) => e.reduce((n, t) => (t.key.trim() && (n[t.key] = f(t.value, t.isArray, t.isNumber, s)), n), {}), f = (e, s, n, t = ",") => {
12
- let r;
13
- return s ? n ? r = String(e).split(t).map(Number).filter((i) => !Number.isNaN(i)) : r = String(e).split(t) : n ? r = parseFloat(e) : r = e.toString(), r;
14
- }, d = (e, s, n = ",") => {
15
- const t = (r) => {
16
- r = r.replace(/[^\d.-]/g, "");
17
- let i = !1;
18
- r.startsWith("-") && (i = !0), r = r.replace(/-/g, "");
19
- const a = r.indexOf(".");
20
- return a !== -1 && (r = r.slice(0, a + 1) + r.slice(a + 1).replace(/\./g, "")), (i ? "-" : "") + r;
21
- };
22
- return s ? e.split(n).map((r) => t(r)).join(n) : t(e);
23
- }, p = (e) => `hsl(${e * 35 % 360}, 60%, 65%)`, h = (e, s) => e[s - 1] ?? p(s);
24
- function b(e) {
25
- return c(e) ? e : l(e ?? null);
26
- }
27
- function N(e, s) {
28
- const n = { ...e };
29
- return delete n.value, s?.forEach((t) => {
30
- t !== "value" && delete n[t];
31
- }), n;
32
- }
33
- export {
34
- N as O,
35
- b as e,
36
- d as f,
37
- p as g,
38
- f as p,
39
- y as r,
40
- h as s,
41
- g as t
42
- };
@@ -1 +0,0 @@
1
- "use strict";require('./index.css');const a=require("vue"),p=(e,s,n)=>Object.keys(e).map((t,r)=>{const i=e[t],o=Array.isArray(i),c=o?i.every(f=>typeof f=="number"):typeof i=="number";return{rId:s(r),key:t,value:o?i.join(n):i,isArray:o||void 0,isNumber:c||void 0}}),m=(e,s)=>e.reduce((n,t)=>(t.key.trim()&&(n[t.key]=u(t.value,t.isArray,t.isNumber,s)),n),{}),u=(e,s,n,t=",")=>{let r;return s?n?r=String(e).split(t).map(Number).filter(i=>!Number.isNaN(i)):r=String(e).split(t):n?r=parseFloat(e):r=e.toString(),r},g=(e,s,n=",")=>{const t=r=>{r=r.replace(/[^\d.-]/g,"");let i=!1;r.startsWith("-")&&(i=!0),r=r.replace(/-/g,"");const o=r.indexOf(".");return o!==-1&&(r=r.slice(0,o+1)+r.slice(o+1).replace(/\./g,"")),(i?"-":"")+r};return s?e.split(n).map(r=>t(r)).join(n):t(e)},l=e=>`hsl(${e*35%360}, 60%, 65%)`,y=(e,s)=>e[s-1]??l(s);function b(e){return a.isRef(e)?e:a.ref(e??null)}function d(e,s){const n={...e};return delete n.value,s?.forEach(t=>{t!=="value"&&delete n[t]}),n}exports.OmitValue=d;exports.ensureRef=b;exports.formatNumberInput=g;exports.getDepthColor=l;exports.parseValue=u;exports.resetObj=m;exports.saferRepairColor=y;exports.tranArr=p;