unione-form-vue 0.0.4 → 0.0.6

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.
Files changed (37) hide show
  1. package/dist/config/index.d.ts +19 -0
  2. package/dist/config/settings.d.ts +15 -0
  3. package/dist/editor.d.ts +10 -18
  4. package/dist/index.d.ts +13 -4
  5. package/dist/index.umd.js +13 -354
  6. package/dist/lib/convertor.d.ts +36 -0
  7. package/dist/lib/data.d.ts +63 -42
  8. package/dist/lib/debounce.d.ts +1 -0
  9. package/dist/lib/dict.d.ts +23 -0
  10. package/dist/lib/ebus.d.ts +14 -0
  11. package/dist/lib/rule.d.ts +9 -0
  12. package/dist/lib/utils.d.ts +5 -5
  13. package/dist/locales/index.d.ts +2 -3
  14. package/dist/page/data/define/api.d.ts +10 -0
  15. package/dist/page/data/define/components/dataFieldFKeys.vue.d.ts +10 -0
  16. package/dist/page/data/define/components/dataFieldMange.vue.d.ts +10 -0
  17. package/dist/page/data/define/components/dataFieldSetting.vue.d.ts +10 -0
  18. package/dist/page/data/define/components/dataFilters.vue.d.ts +9 -0
  19. package/dist/page/data/define/edit.vue.d.ts +2 -0
  20. package/dist/page/data/define/list.vue.d.ts +2 -0
  21. package/dist/page/{view.vue.d.ts → editor.vue.d.ts} +2 -0
  22. package/dist/page/form.vue.d.ts +32 -0
  23. package/dist/page/list.vue.d.ts +32 -0
  24. package/dist/style.css +1 -1
  25. package/dist/typing.d.ts +372 -167
  26. package/dist/version/version.d.ts +1 -1
  27. package/dist/widgets/base/btn.vue.d.ts +39 -2
  28. package/dist/widgets/form/checkBox.vue.d.ts +56 -0
  29. package/dist/widgets/form/form.vue.d.ts +28 -15
  30. package/dist/widgets/form/{render.vue.d.ts → formItem.vue.d.ts} +14 -4
  31. package/dist/widgets/form/radioBox.vue.d.ts +56 -0
  32. package/dist/widgets/form/selectBox.vue.d.ts +56 -0
  33. package/dist/widgets/form/switchBox.vue.d.ts +48 -0
  34. package/dist/widgets/layout/section.vue.d.ts +89 -0
  35. package/dist/widgets/query/queryForm.vue.d.ts +2 -2
  36. package/dist/widgets/table/tableList.vue.d.ts +52 -9
  37. package/package.json +3 -2
package/dist/typing.d.ts CHANGED
@@ -1,110 +1,230 @@
1
1
  import { VNodeChild } from 'vue';
2
- import { Rule } from 'ant-design-vue/es/form';
2
+ export interface Convert {
3
+ id?: string;
4
+ types: 'dict' | 'option' | 'dbtable' | 'remote' | 'local';
5
+ dictName?: string;
6
+ options?: Array<{
7
+ value: string | number;
8
+ label: string;
9
+ }>;
10
+ search?: boolean;
11
+ isAsync?: boolean;
12
+ isPaging?: boolean;
13
+ url?: string;
14
+ params?: Object;
15
+ dsId?: string;
16
+ tableName?: string;
17
+ tableField?: string;
18
+ tableWhere?: string;
19
+ tableOrder?: string;
20
+ idField?: string;
21
+ pidField?: string;
22
+ valueField: string;
23
+ labelField: string;
24
+ showLevel?: Number;
25
+ }
26
+ export interface Config {
27
+ isDebug?: boolean;
28
+ listPageUrl?: string;
29
+ addPageUrl?: string;
30
+ editPageUrl?: string;
31
+ viewPageUrl?: string;
32
+ formRules?: Array<{
33
+ name: string;
34
+ title: string;
35
+ express: string;
36
+ error: string;
37
+ }>;
38
+ }
3
39
  /**
4
- * 查询字段
5
- * 使用:QueryForm
40
+ * 数据字段
6
41
  */
7
- export interface QueryField {
42
+ export interface DataField {
8
43
  name: string;
9
44
  title: string;
10
- widget?: string;
11
- visible?: boolean;
12
- placeholder?: string;
13
- props?: object;
45
+ dataValue?: string;
46
+ dataType: string;
47
+ dataLen?: number;
48
+ dataPrec?: number;
49
+ dataFormat?: string;
50
+ isPk: 1 | 0;
51
+ isNull?: 1 | 0;
52
+ configs?: {
53
+ widget?: {
54
+ name?: string;
55
+ placeholder?: string;
56
+ tooltip?: string;
57
+ help?: string;
58
+ props?: object;
59
+ };
60
+ fkey?: {
61
+ enable?: boolean;
62
+ dsn?: string;
63
+ fieldName?: string;
64
+ labelName?: string;
65
+ labeTitle?: string;
66
+ fields?: Array<{
67
+ name?: string;
68
+ title?: string;
69
+ width?: number;
70
+ index?: number;
71
+ }>;
72
+ };
73
+ sort?: {
74
+ enable?: boolean;
75
+ defoult?: boolean;
76
+ asc?: boolean;
77
+ };
78
+ rule?: {
79
+ whitespace?: boolean;
80
+ advance?: string;
81
+ rangeMin?: number;
82
+ rangeMax?: number;
83
+ rangeMessage?: string;
84
+ regExpress?: string;
85
+ regMessage?: string;
86
+ };
87
+ convert?: {
88
+ id?: string;
89
+ types?: string;
90
+ dictName?: string;
91
+ options?: Array<{
92
+ value: string | number;
93
+ label: string;
94
+ }>;
95
+ search?: boolean;
96
+ isAsync?: boolean;
97
+ isPaging?: boolean;
98
+ url?: string;
99
+ params?: string;
100
+ dsId?: string;
101
+ tableName?: string;
102
+ tableField?: string;
103
+ tableWhere?: string;
104
+ tableOrder?: string;
105
+ idField?: string;
106
+ pidField?: string;
107
+ valueField?: string;
108
+ labelField?: string;
109
+ showLevel?: number;
110
+ };
111
+ query?: {
112
+ enable?: boolean;
113
+ types?: string;
114
+ defoult?: boolean;
115
+ visible?: boolean;
116
+ name?: string;
117
+ };
118
+ show?: {
119
+ list?: {
120
+ enable?: boolean;
121
+ fixed?: string;
122
+ align?: string;
123
+ width?: number;
124
+ index?: number;
125
+ };
126
+ form?: {
127
+ enable?: boolean;
128
+ width?: number;
129
+ labelWidth?: number;
130
+ valueWidth?: number;
131
+ index?: number;
132
+ };
133
+ view?: {
134
+ enable?: boolean;
135
+ width?: number;
136
+ labelWidth?: number;
137
+ valueWidth?: number;
138
+ index?: number;
139
+ };
140
+ };
141
+ };
14
142
  }
15
143
  /**
16
- * 按钮设置
17
- * 使用:QueryForm,TableList
144
+ * 页面定义
18
145
  */
19
- export interface ButtonSetting {
146
+ export interface PageDefine {
147
+ sn: string;
20
148
  title: string;
21
- name: string;
22
- visible?: boolean | Function;
23
- disable?: boolean | Function;
24
- loading?: boolean;
25
- icon?: string | VNodeChild;
26
- shape?: string;
27
- type?: string;
28
- size?: string;
29
- index?: number;
30
- action?: {
31
- type?: string;
32
- href?: string;
33
- target?: string;
34
- component?: string;
35
- position?: string;
36
- maskClosable?: boolean;
37
- psn?: string;
38
- title?: string;
39
- width?: string;
40
- height?: string;
41
- params?: Array<any>;
42
- };
43
- trigger?: string;
44
- props?: {
45
- danger?: boolean;
46
- block?: boolean;
47
- ghost?: boolean;
149
+ types: 'setting' | 'design' | 'code';
150
+ component?: string;
151
+ appId?: string;
152
+ tmplId?: string;
153
+ vers: number;
154
+ summary?: string;
155
+ icon?: string;
156
+ picMax?: string;
157
+ picMid?: string;
158
+ picMix?: string;
159
+ trades?: string;
160
+ reviewPic?: string;
161
+ isTmpl?: number;
162
+ isGlobal?: number;
163
+ status?: number;
164
+ publishDate?: string;
165
+ descs?: string;
166
+ configs: any;
167
+ }
168
+ /**
169
+ * 编辑器配置对象
170
+ */
171
+ export interface EditorConfig {
172
+ component?: string;
173
+ widgets: Array<any>;
174
+ dsnList?: Array<string>;
175
+ permis?: object;
176
+ css?: {
177
+ cssName?: string;
178
+ cssText?: string;
179
+ props?: object;
48
180
  };
49
- event?: {
50
- click?: Function;
51
- clickScript?: string;
52
- title?: Function;
53
- titleScript?: string;
54
- disable?: Function;
55
- disableScript?: string;
56
- visible?: Function;
57
- visibleScript?: string;
181
+ settings?: {
182
+ ctx?: string;
183
+ timeout?: number;
184
+ platform?: 'pc' | 'app';
185
+ ruleTrigger?: 'change' | 'blur';
58
186
  };
59
187
  }
60
188
  /**
61
- * 数据字段
189
+ * 表单页面配置
62
190
  */
63
- export interface DataField {
64
- name: string;
65
- title: string;
66
- widget?: string;
67
- isPk: boolean;
68
- isFk?: boolean;
69
- isForm?: boolean;
70
- isView?: boolean;
71
- isList?: boolean;
72
- isQuery?: boolean;
73
- isNull?: boolean;
74
- isSort?: boolean;
75
- placeholder?: string;
76
- props?: object;
77
- show?: {
78
- list?: {
79
- fixed?: string;
80
- align?: string;
81
- width?: number | string;
82
- index?: number;
83
- };
84
- form?: {
85
- width?: number;
86
- labelWidth?: number;
87
- valueWidth?: number;
88
- index?: number;
191
+ export interface FormPageDefine extends PageDefine {
192
+ configs: FormPageConfig;
193
+ }
194
+ /**
195
+ * 表单页面配置
196
+ */
197
+ export interface FormPageConfig {
198
+ widgets: Array<WidgetModel>;
199
+ dsnList?: Array<string>;
200
+ css?: {
201
+ cssName?: string;
202
+ cssText?: string;
203
+ props?: any;
204
+ };
205
+ setting?: {
206
+ platform?: 'pc' | 'app';
207
+ showColumn?: number;
208
+ labelWidth?: number;
209
+ };
210
+ btns?: Array<ButtonSetting>;
211
+ event?: {
212
+ onValidate?: {
213
+ enable?: boolean;
214
+ scriptText?: string;
215
+ scriptHelp?: string;
89
216
  };
90
- view?: {
91
- width?: number;
92
- labelWidth?: number;
93
- valueWidth?: number;
94
- index?: number;
217
+ onPreSave?: {
218
+ enable?: boolean;
219
+ scriptText?: string;
220
+ scriptHelp?: string;
95
221
  };
96
- query?: {
97
- width?: number;
98
- index?: number;
222
+ onPostSaved?: {
223
+ enable?: boolean;
224
+ scriptText?: string;
225
+ scriptHelp?: string;
99
226
  };
100
227
  };
101
- convert?: {
102
- type?: string;
103
- dict?: string;
104
- options?: Array<any>;
105
- };
106
- dataFormat?: string;
107
- rules?: Array<Rule>;
108
228
  }
109
229
  /**
110
230
  * 数据模型
@@ -116,39 +236,85 @@ export interface DataField {
116
236
  * 列表接口:url/loadByIds
117
237
  */
118
238
  export interface DataModel {
239
+ appId?: string;
240
+ dirId?: string;
119
241
  dsId?: string;
120
242
  sn: string;
121
243
  vers?: number;
122
244
  name?: string;
123
245
  title: string;
124
- category?: string;
246
+ category?: 'sql' | 'nosql' | 'api';
125
247
  url?: string;
126
- fields: Array<DataField>;
127
- setting?: {
128
- silence?: boolean;
129
- };
130
248
  publishDate?: string;
131
- sqlFind?: string;
132
- sqlInsert?: string;
133
- sqlUpdate?: string;
134
- sqlDelete?: string;
249
+ findScript?: string;
250
+ insertScript?: string;
251
+ updateScript?: string;
252
+ deleteScript?: string;
253
+ isCustom?: number;
135
254
  syncFlag?: number;
136
255
  ordered?: number;
137
256
  status?: number;
138
257
  descs?: string;
258
+ configs?: {
259
+ fields?: Array<any>;
260
+ filters?: Array<any>;
261
+ permis?: Array<any>;
262
+ show?: {
263
+ showColumn?: number;
264
+ labelWidget?: number;
265
+ listTmpl?: string;
266
+ };
267
+ silence?: boolean;
268
+ };
139
269
  }
140
270
  /**
141
- * 数据请求参数对象
271
+ * 数据查询对象
142
272
  */
143
- export interface DataParams {
273
+ export interface DataFind {
274
+ dsn: string;
275
+ vers?: number;
276
+ fields?: Array<string>;
144
277
  page?: number;
145
278
  pageSize?: number;
146
279
  body?: any;
147
280
  id?: string;
148
281
  ids?: Array<string>;
149
282
  keywords?: string;
150
- sortName?: string;
151
- sortOrder?: string;
283
+ sorts?: Array<{
284
+ name: string;
285
+ asc: boolean;
286
+ }>;
287
+ needCount?: boolean;
288
+ }
289
+ /**
290
+ * 数据提交对象
291
+ */
292
+ export interface DataCommit {
293
+ dsn: string;
294
+ vers?: number;
295
+ id?: string;
296
+ ids?: Array<string>;
297
+ data?: object;
298
+ params?: object;
299
+ }
300
+ /**
301
+ * 数据加载对象
302
+ */
303
+ export interface DataLoad {
304
+ dsn: string;
305
+ vers?: number;
306
+ id?: string;
307
+ ids?: Array<string>;
308
+ fields?: Array<string>;
309
+ }
310
+ /**
311
+ * 数据删除对象
312
+ */
313
+ export interface DataDelete {
314
+ dsn: string;
315
+ vers?: number;
316
+ id?: string;
317
+ ids?: Array<string>;
152
318
  }
153
319
  /**
154
320
  * 数据请求响应对象
@@ -161,17 +327,89 @@ export interface DataResult {
161
327
  page?: number;
162
328
  pageSize?: number;
163
329
  total?: number;
330
+ silence?: boolean;
164
331
  }
165
332
  /**
166
333
  * 组件模型
167
334
  */
168
335
  export interface WidgetModel {
336
+ index?: number;
169
337
  wid: string;
338
+ title: string;
170
339
  widget: string;
171
- render?: string;
340
+ widgets?: Array<any>;
341
+ css?: {
342
+ cssName?: string;
343
+ cssText?: string;
344
+ props?: any;
345
+ };
346
+ }
347
+ /**
348
+ * 表单组件
349
+ */
350
+ export interface FormWidget extends WidgetModel {
351
+ primary: boolean;
352
+ dsn?: string;
353
+ setting?: {
354
+ showColumn?: number;
355
+ labelWidget?: number;
356
+ };
357
+ }
358
+ /**
359
+ * 查询字段
360
+ * 使用:QueryForm
361
+ */
362
+ export interface QueryField {
363
+ name: string;
172
364
  title: string;
173
- isHide?: boolean;
174
- configs?: any;
365
+ widget?: string;
366
+ visible?: boolean;
367
+ placeholder?: string;
368
+ props?: object;
369
+ }
370
+ /**
371
+ * 按钮设置
372
+ * 使用:QueryForm,TableList
373
+ */
374
+ export interface ButtonSetting {
375
+ title: string;
376
+ name: string;
377
+ loading?: boolean;
378
+ visible?: boolean;
379
+ icon?: string | VNodeChild;
380
+ shape?: string;
381
+ type?: string;
382
+ size?: string;
383
+ index?: number;
384
+ action?: {
385
+ type?: string;
386
+ href?: string;
387
+ target?: string;
388
+ component?: string;
389
+ position?: string;
390
+ maskClosable?: boolean;
391
+ psn?: string;
392
+ title?: string;
393
+ width?: string;
394
+ height?: string;
395
+ params?: Array<any>;
396
+ };
397
+ trigger?: string;
398
+ props?: {
399
+ danger?: boolean;
400
+ block?: boolean;
401
+ ghost?: boolean;
402
+ };
403
+ event?: {
404
+ click?: Function;
405
+ clickScript?: string;
406
+ title?: Function;
407
+ titleScript?: string;
408
+ disable?: Function;
409
+ disableScript?: string;
410
+ visible?: Function;
411
+ visibleScript?: string;
412
+ };
175
413
  }
176
414
  /**
177
415
  * 组件配置
@@ -182,22 +420,45 @@ export interface WidgetConfig {
182
420
  placeholder?: string;
183
421
  required?: boolean;
184
422
  value?: any;
423
+ visible?: Array<string>;
424
+ readonly?: Array<string>;
185
425
  className?: string | object;
186
426
  style?: string | object;
187
427
  attrs?: object;
188
428
  event?: {
189
- onClick?: string;
190
- onChange?: string;
191
- onVisible?: string;
192
- onRequired?: string;
429
+ clickEnable?: boolean;
430
+ clickScript?: string;
431
+ clickHelp?: string;
432
+ disableEnable?: boolean;
433
+ disableScript?: string;
434
+ disableHelp?: string;
435
+ visibleEnable?: boolean;
436
+ visibleScript?: string;
437
+ visibleHelp?: string;
438
+ titleEnable?: boolean;
439
+ titleScript?: string;
440
+ titleHelp?: string;
441
+ requiredEnable?: boolean;
442
+ requiredScript?: string;
443
+ requiredHelp?: string;
444
+ changeEnable?: boolean;
445
+ changeScript?: string;
446
+ changeHelp?: string;
447
+ };
448
+ rules?: {
449
+ trigger?: string;
450
+ whitespace?: boolean;
451
+ advance?: string;
452
+ rangeMin?: number;
453
+ rangeMax?: number;
454
+ regExpress?: string;
455
+ regMessage?: string;
193
456
  };
194
- rules?: Array<any>;
195
457
  }
196
458
  /**
197
459
  * 列表配置对象
198
460
  */
199
461
  export interface ListTableConfig {
200
- pagination?: object;
201
462
  selection?: boolean;
202
463
  leftBtns?: Array<object>;
203
464
  rightBtns?: Array<object>;
@@ -219,29 +480,6 @@ export interface ListTableConfig {
219
480
  };
220
481
  attrs?: object;
221
482
  }
222
- /**
223
- * 表单页面配置
224
- */
225
- export interface FormPageConfig {
226
- widgets: Array<WidgetModel>;
227
- dataModel?: string;
228
- setting?: {
229
- platform?: 'pc' | 'app';
230
- showColumn?: number;
231
- labelWidget?: number;
232
- };
233
- saveBtn?: ButtonSetting;
234
- submitBtn?: ButtonSetting;
235
- resetBtn?: ButtonSetting;
236
- backBtn?: ButtonSetting;
237
- btns?: Array<ButtonSetting>;
238
- css?: string | object;
239
- event?: {
240
- onValidate?: string;
241
- onPreSave?: string;
242
- onSaved?: string;
243
- };
244
- }
245
483
  /**
246
484
  * 列表页面配置
247
485
  */
@@ -250,36 +488,3 @@ export interface ListPageConfig {
250
488
  dataModel?: string;
251
489
  css?: string | object;
252
490
  }
253
- /**
254
- * 页面定义
255
- */
256
- export interface PageDefine {
257
- sn: string;
258
- title: string;
259
- types: 'setting' | 'design';
260
- component?: string;
261
- appId?: string;
262
- tmplId?: string;
263
- vers: number;
264
- summary?: string;
265
- icon?: string;
266
- picMax?: string;
267
- picMid?: string;
268
- picMix?: string;
269
- trades?: string;
270
- reviewPic?: string;
271
- isTmpl?: number;
272
- isGlobal?: number;
273
- status?: number;
274
- descs?: string;
275
- configs: EditorConfig;
276
- }
277
- /**
278
- * 编辑器配置对象
279
- */
280
- export interface EditorConfig {
281
- widgetList: Array<any>;
282
- dataModels: Array<DataModel>;
283
- css?: string;
284
- settings?: object;
285
- }
@@ -1,2 +1,2 @@
1
- declare const _default: "0.0.4";
1
+ declare const _default: "0.0.6";
2
2
  export default _default;
@@ -6,9 +6,27 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
6
6
  type: {
7
7
  type: StringConstructor;
8
8
  };
9
- btn: {
9
+ widget: {
10
10
  type: any;
11
11
  required: true;
12
+ default(): {};
13
+ };
14
+ preset: {
15
+ type: {
16
+ (arrayLength: number): string[];
17
+ (...items: string[]): string[];
18
+ new (arrayLength: number): string[];
19
+ new (...items: string[]): string[];
20
+ isArray(arg: any): arg is any[];
21
+ readonly prototype: any[];
22
+ from<T>(arrayLike: ArrayLike<T>): T[];
23
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
24
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
25
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
26
+ of<T_4>(...items: T_4[]): T_4[];
27
+ readonly [Symbol.species]: ArrayConstructor;
28
+ };
29
+ default(): never[];
12
30
  };
13
31
  ctx: {
14
32
  type: ObjectConstructor;
@@ -24,9 +42,27 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
24
42
  type: {
25
43
  type: StringConstructor;
26
44
  };
27
- btn: {
45
+ widget: {
28
46
  type: any;
29
47
  required: true;
48
+ default(): {};
49
+ };
50
+ preset: {
51
+ type: {
52
+ (arrayLength: number): string[];
53
+ (...items: string[]): string[];
54
+ new (arrayLength: number): string[];
55
+ new (...items: string[]): string[];
56
+ isArray(arg: any): arg is any[];
57
+ readonly prototype: any[];
58
+ from<T>(arrayLike: ArrayLike<T>): T[];
59
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
60
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
61
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
62
+ of<T_4>(...items: T_4[]): T_4[];
63
+ readonly [Symbol.species]: ArrayConstructor;
64
+ };
65
+ default(): never[];
30
66
  };
31
67
  ctx: {
32
68
  type: ObjectConstructor;
@@ -35,6 +71,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
35
71
  }>> & Readonly<{
36
72
  onClick?: ((...args: any[]) => any) | undefined;
37
73
  }>, {
74
+ preset: string[];
38
75
  ctx: Record<string, any>;
39
76
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
40
77
  export default _default;