@juzhenfe/page-model 3.22.2 → 3.22.4

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 (98) hide show
  1. package/dist/components/form/type.d.ts +166 -0
  2. package/dist/components/normal-tab/type.d.ts +18 -0
  3. package/dist/components/page-model/components/top-tabs/type.d.ts +11 -0
  4. package/dist/components/page-model/type.d.ts +339 -0
  5. package/dist/components/scenes-tab/type.d.ts +14 -0
  6. package/dist/components/search-form/type.d.ts +42 -0
  7. package/dist/components/table/type.d.ts +364 -0
  8. package/dist/index.es.js +1 -1
  9. package/dist/index.umd.js +1 -1
  10. package/dist/types/common.d.ts +460 -0
  11. package/dist/types/form-item-types/cascader.d.ts +37 -0
  12. package/dist/types/form-item-types/checkbox-group.d.ts +19 -0
  13. package/dist/types/form-item-types/color-picker.d.ts +20 -0
  14. package/dist/types/form-item-types/date-picker.d.ts +42 -0
  15. package/dist/types/form-item-types/input-number.d.ts +14 -0
  16. package/dist/types/form-item-types/input.d.ts +16 -0
  17. package/dist/types/form-item-types/jz-a-map.d.ts +14 -0
  18. package/dist/types/form-item-types/jz-cascader.d.ts +18 -0
  19. package/dist/types/form-item-types/jz-city-picker.d.ts +25 -0
  20. package/dist/types/form-item-types/jz-ck-editor.d.ts +27 -0
  21. package/dist/types/form-item-types/jz-editor.d.ts +20 -0
  22. package/dist/types/form-item-types/jz-file-upload.d.ts +20 -0
  23. package/dist/types/form-item-types/jz-img-upload.d.ts +23 -0
  24. package/dist/types/form-item-types/jz-long-input.d.ts +10 -0
  25. package/dist/types/form-item-types/jz-td-map.d.ts +13 -0
  26. package/dist/types/form-item-types/no-e-type.d.ts +12 -0
  27. package/dist/types/form-item-types/radio-group.d.ts +17 -0
  28. package/dist/types/form-item-types/rate.d.ts +29 -0
  29. package/dist/types/form-item-types/select-v2.d.ts +46 -0
  30. package/dist/types/form-item-types/select.d.ts +43 -0
  31. package/dist/types/form-item-types/slider.d.ts +31 -0
  32. package/dist/types/form-item-types/switch.d.ts +11 -0
  33. package/dist/types/form-item-types/time-picker.d.ts +38 -0
  34. package/dist/types/form-item-types/time-select.d.ts +27 -0
  35. package/dist/types/renderer.d.ts +10 -0
  36. package/dist/types/shims-vue-property.d.ts +8 -0
  37. package/dist/types/shims-vue.d.ts +7 -0
  38. package/dist/types/window.d.ts +10 -0
  39. package/package.json +1 -1
  40. /package/dist/{src/components → components}/buttons-renderer/utils/index.d.ts +0 -0
  41. /package/dist/{src/components → components}/editable-table/index.d.ts +0 -0
  42. /package/dist/{src/components → components}/form/components/column-tools/use-setting.d.ts +0 -0
  43. /package/dist/{src/components → components}/form/components/section-config/merge.d.ts +0 -0
  44. /package/dist/{src/components → components}/form/components/section-config/use.d.ts +0 -0
  45. /package/dist/{src/components → components}/form/constructor.d.ts +0 -0
  46. /package/dist/{src/components → components}/form/index.d.ts +0 -0
  47. /package/dist/{src/components → components}/form/utils/save-columns.d.ts +0 -0
  48. /package/dist/{src/components → components}/form/utils/use-form-els.d.ts +0 -0
  49. /package/dist/{src/components → components}/form-dialog/use-move.d.ts +0 -0
  50. /package/dist/{src/components → components}/page-model/components/top-tabs/constructor.d.ts +0 -0
  51. /package/dist/{src/components → components}/page-model/constructor.d.ts +0 -0
  52. /package/dist/{src/components → components}/page-model/index.d.ts +0 -0
  53. /package/dist/{src/components → components}/page-model/patches/patch-config-urls.d.ts +0 -0
  54. /package/dist/{src/components → components}/page-model/patches/patch-default-config.d.ts +0 -0
  55. /package/dist/{src/components → components}/page-model/patches/patch-selectable.d.ts +0 -0
  56. /package/dist/{src/components → components}/page-model/patches/patch-size.d.ts +0 -0
  57. /package/dist/{src/components → components}/page-model/patches/patch-table-dragable.d.ts +0 -0
  58. /package/dist/{src/components → components}/page-model/patches/patch-user-config.d.ts +0 -0
  59. /package/dist/{src/components → components}/page-model/utils/default-config.d.ts +0 -0
  60. /package/dist/{src/components → components}/page-model/utils/default-excel-export-config.d.ts +0 -0
  61. /package/dist/{src/components → components}/page-model/utils/default-style-config.d.ts +0 -0
  62. /package/dist/{src/components → components}/page-model/utils/default-text-config.d.ts +0 -0
  63. /package/dist/{src/components → components}/page-model/utils/default-user-setting.d.ts +0 -0
  64. /package/dist/{src/components → components}/page-model/utils/error-handler.d.ts +0 -0
  65. /package/dist/{src/components → components}/page-model/utils/manager-controller.d.ts +0 -0
  66. /package/dist/{src/components → components}/page-model/utils/patch-config.d.ts +0 -0
  67. /package/dist/{src/components → components}/page-model/utils/use-auth-buttons.d.ts +0 -0
  68. /package/dist/{src/components → components}/page-model/utils/use-keyboard-event.d.ts +0 -0
  69. /package/dist/{src/components → components}/search-form/constructor.d.ts +0 -0
  70. /package/dist/{src/components → components}/search-form/use-detect-item-width.d.ts +0 -0
  71. /package/dist/{src/components → components}/table/components/column-tools/use-setting.d.ts +0 -0
  72. /package/dist/{src/components → components}/table/components/column-tools/use-user-config.d.ts +0 -0
  73. /package/dist/{src/components → components}/table/components/column-tools/use-user-show-row-config.d.ts +0 -0
  74. /package/dist/{src/components → components}/table/components/export-form/use.d.ts +0 -0
  75. /package/dist/{src/components → components}/table/components/selections-table/use.d.ts +0 -0
  76. /package/dist/{src/components → components}/table/components/table-column/components/filter-zone/utils/index.d.ts +0 -0
  77. /package/dist/{src/components → components}/table/constructor.d.ts +0 -0
  78. /package/dist/{src/components → components}/table/utils/save-column-filter.d.ts +0 -0
  79. /package/dist/{src/components → components}/table/utils/save-column-sort.d.ts +0 -0
  80. /package/dist/{src/components → components}/table/utils/save-columns.d.ts +0 -0
  81. /package/dist/{src/components → components}/table/utils/save-config.d.ts +0 -0
  82. /package/dist/{src/components → components}/table/utils/use-column-drag.d.ts +0 -0
  83. /package/dist/{src/components → components}/table/utils/use-listen-scroll.d.ts +0 -0
  84. /package/dist/{src/components → components}/table/utils/use-static-summary.d.ts +0 -0
  85. /package/dist/{src/components → components}/table/utils/use-table-config-change.d.ts +0 -0
  86. /package/dist/{src/components → components}/table/utils/use-table-els.d.ts +0 -0
  87. /package/dist/{src/main.d.ts → main.d.ts} +0 -0
  88. /package/dist/{src/utils → utils}/config-saver.d.ts +0 -0
  89. /package/dist/{src/utils → utils}/define-config.d.ts +0 -0
  90. /package/dist/{src/utils → utils}/event-chain.d.ts +0 -0
  91. /package/dist/{src/utils → utils}/event-emitter.d.ts +0 -0
  92. /package/dist/{src/utils → utils}/index.d.ts +0 -0
  93. /package/dist/{src/utils → utils}/infinite-table.d.ts +0 -0
  94. /package/dist/{src/utils → utils}/manager.d.ts +0 -0
  95. /package/dist/{src/utils → utils}/provide-keys.d.ts +0 -0
  96. /package/dist/{src/utils → utils}/reflect/index.d.ts +0 -0
  97. /package/dist/{src/utils → utils}/reflect/reflect-collector.d.ts +0 -0
  98. /package/dist/{src/utils → utils}/resize.d.ts +0 -0
@@ -0,0 +1,460 @@
1
+ import { ButtonProps } from 'element-plus';
2
+ import { StyleValue, VNode } from 'vue';
3
+ import { JSX } from 'vue/jsx-runtime';
4
+
5
+
6
+ declare global {
7
+ type AnyObject = {
8
+ [key: string]: any
9
+ }
10
+
11
+ type ExtendKeys<T> = T & AnyObject
12
+
13
+ type AnyFunction = (...args: any[]) => any
14
+
15
+ type CreateDeType<T, CTX = any> = T | ((this: CTX, ...rest: any[]) => T)
16
+
17
+ type CreateDePromiseResult<FN extends (...rest: any[]) => any> =
18
+ | FN
19
+ | ((
20
+ this: ThisParameterType<FN>,
21
+ ...rest: Parameters<FN>
22
+ ) => Promise<ReturnType<FN>>)
23
+
24
+ type FilterType = 'string' | 'number' | 'date' | 'boolean' | 'select' | 'list'
25
+
26
+ namespace PageModel {
27
+ type _ButtonProps = Omit<ButtonProps, 'icon'> & {
28
+ icon: any
29
+ title: string
30
+ }
31
+
32
+ type LinkedFormItem<MODEL = any, CTX = any> =
33
+ | ElInput<MODEL, CTX>
34
+ | ElInputNumber<MODEL, CTX>
35
+ | ElCascader<MODEL, CTX>
36
+ | ElCheckboxGroup<MODEL, CTX>
37
+ | ElSelect<MODEL, CTX>
38
+ | ElColorPicker<MODEL, CTX>
39
+ | ElDatePicker<MODEL, CTX>
40
+ | ElRadioboxGroup<MODEL, CTX>
41
+ | ElRate<MODEL, CTX>
42
+ | ElSelectV2<MODEL, CTX>
43
+ | ElSlider<MODEL, CTX>
44
+ | ElSwitch<MODEL, CTX>
45
+ | ElTimePicker<MODEL, CTX>
46
+ | ElTimeSelect<MODEL, CTX>
47
+ | JuzhenAMap<MODEL, CTX>
48
+ | JuzhenTdMap<MODEL, CTX>
49
+ | JuzhenCascader<MODEL, CTX>
50
+ | JuzhenCityPicker<MODEL, CTX>
51
+ | JuzhenEditor<MODEL, CTX>
52
+ | JuzhenCkEditor<MODEL, CTX>
53
+ | JuzhenImgUpload<MODEL, CTX>
54
+ | JuzhenFileUpload<MODEL, CTX>
55
+ | NoEType<MODEL, CTX>
56
+
57
+ type _Badge = {
58
+ count?: number
59
+ maxCount?: number
60
+ }
61
+
62
+ type _Button<MODEL = AnyObject, CTX = any> = {
63
+ /**
64
+ * 按钮的名称
65
+ */
66
+ text?: string
67
+ /**
68
+ * 自定义事件
69
+ */
70
+ event?: string
71
+ /**
72
+ * 按钮权限值(作为权限判断的依据)
73
+ */
74
+ authValue?: string
75
+ isAdd?: boolean
76
+ isEdit?: boolean
77
+ isDel?: boolean
78
+ isCopy?: boolean
79
+ isImport?: boolean
80
+ isShow?:
81
+ | boolean
82
+ | ((this: CTX, self: _Button, data: MODEL, index: number) => boolean)
83
+ isDisabled?: (
84
+ this: CTX,
85
+ self: _Button,
86
+ data: MODEL,
87
+ index: number
88
+ ) => boolean
89
+ copyText?: CreateDeType<string>
90
+ props?: Partial<_ButtonProps>
91
+ customProps?: AnyObject
92
+ renderFn?: (this: CTX, data: MODEL, index: number) => JSX.Element
93
+ } & _Badge
94
+
95
+ type Button<MODEL = AnyObject, CTX = any> = _Button<MODEL, CTX> & {
96
+ children?: Omit<_Button, 'props' | 'isCopy' | 'copyText'>[]
97
+ }
98
+
99
+ // 表格表单元素
100
+ type BaseElItem<MODEL = AnyObject> = {
101
+ label?: string
102
+ prop?: keyof MODEL extends string ? keyof MODEL : string
103
+ _key?: string
104
+ }
105
+
106
+ interface ElFormItemProps {
107
+ required?: boolean
108
+ rules?: AnyObject
109
+ error?: string
110
+ inlineMessage?: boolean
111
+ showMessage?: boolean
112
+ size?: Size
113
+ labelWidth?: string
114
+ class?: string
115
+ labelPosition?: 'left' | 'top'
116
+ }
117
+
118
+ // 表单的元素
119
+ interface FormElBaseItem<MODEL = AnyObject, CTX = any>
120
+ extends BaseElItem<MODEL> {
121
+ /**
122
+ * 当前组件的名称
123
+ */
124
+ name?: string
125
+ /**
126
+ * 标签宽度
127
+ */
128
+ labelWidth?: string
129
+ /**
130
+ * 前置文字
131
+ */
132
+ prefix?: CreateDeType<string, CTX>
133
+ /**
134
+ * 后置文字
135
+ */
136
+ suffix?: CreateDeType<string, CTX>
137
+ /**
138
+ * 提示文字
139
+ */
140
+ helpText?: CreateDeType<string, CTX>
141
+ /**
142
+ * 提示文字是否作为弹窗
143
+ */
144
+ helpTextAsTooltip?: boolean
145
+ /**
146
+ * 是否显示
147
+ */
148
+ isShow?:
149
+ | boolean
150
+ | ((
151
+ this: CTX,
152
+ self: FormElBaseItem<MODEL, CTX>,
153
+ data: MODEL
154
+ ) => boolean)
155
+ /**
156
+ * 值改变时触发
157
+ */
158
+ change?: (this: CTX, value: any, label: string) => void
159
+ /**
160
+ * 是否禁用
161
+ */
162
+ isDisabled?: (this: CTX, data: MODEL) => boolean
163
+ /**
164
+ * 自定义渲染
165
+ */
166
+ renderFn?: (this: CTX, data: MODEL) => JSX.Element
167
+ /**
168
+ * 表单项属性
169
+ */
170
+ formItemProps?: ElFormItemProps
171
+ /**
172
+ * 模块名称
173
+ */
174
+ moduleName?: string
175
+ /**
176
+ * 区块名称
177
+ */
178
+ sectionName?: string
179
+ /**
180
+ * 用户section配置
181
+ */
182
+ userSectionName?: string
183
+ /**
184
+ * 用户module配置
185
+ */
186
+ userModuleName?: string
187
+ /**
188
+ * 用户表格配置
189
+ */
190
+ userConfigShow?: boolean
191
+ /**
192
+ * 用户表头
193
+ */
194
+ userLabel?: string
195
+ /**
196
+ * 内部更新的propslist
197
+ */
198
+ _updateProps?: string[]
199
+ }
200
+
201
+ // 表格元素
202
+ type TableColumnType = 'selection' | 'index' | 'expand'
203
+
204
+ type SortOrders = 'ascending' | 'descending' | null
205
+
206
+ type SortableType = 'custom'
207
+
208
+ type Align = 'left' | 'center' | 'right'
209
+
210
+ type DateFormat =
211
+ | 'YYYY-MM'
212
+ | 'MM-DD'
213
+ | 'YYYY-MM-DD'
214
+ | 'YYYY-MM-DD HH:mm'
215
+ | 'YYYY-MM-DD HH:mm:ss'
216
+ | 'YYYY/MM'
217
+ | 'MM/DD'
218
+ | 'YYYY/MM/DD'
219
+ | 'YYYY/MM/DD HH:mm'
220
+ | 'YYYY/MM/DD HH:mm:ss'
221
+
222
+ interface TableBaseItemProps {
223
+ type?: TableColumnType
224
+ prop?: string
225
+ className?: string
226
+ labelClassName?: string
227
+ width?: number | string
228
+ minWidth?: number | string
229
+ renderHeader?: ({
230
+ column,
231
+ $index,
232
+ }: {
233
+ column: any
234
+ $index: number
235
+ }) => any
236
+ sortable?: boolean | SortableType
237
+ sortMethod?: (a: any, b: any) => any
238
+ sortBy?: string | ((row: any, index: number) => any) | string[]
239
+ resizable?: boolean
240
+ columnKey?: string
241
+ align?: Align
242
+ headerAlign?: Align
243
+ showTooltipWhenOverflow?: boolean
244
+ showOverflowTooltip?: boolean
245
+ fixed?: true | 'left' | 'right'
246
+ formatter?: (row: any, column: any, cellValue: any, index: number) => any
247
+ selectable?: (row: any, index: number) => any
248
+ reserveSelection?: boolean
249
+ filterMethod?: (value: any, row: any, column: any) => any
250
+ filteredValue?: any[]
251
+ filters?: any[]
252
+ filterPlacement?: string
253
+ filterMultiple?: boolean
254
+ index?: number | ((index: number) => any)
255
+ sortOrders?: SortOrders[]
256
+ }
257
+
258
+ interface AscParams extends AnyObject {}
259
+ interface DescParams extends AnyObject {}
260
+ interface NoParams extends AnyObject {}
261
+
262
+ interface TableBaseItem<MODEL = any, CTX = any> extends BaseElItem<MODEL> {
263
+ /**
264
+ * 表头小组件渲染
265
+ */
266
+ headerToolRenderFn?: (el: TableBaseItem<MODEL>, index: number) => VNode
267
+ /**
268
+ * 列渲染的唯一key
269
+ */
270
+ _columnKey?: string
271
+ /**
272
+ * 宽度
273
+ */
274
+ width?: string | number
275
+ /**
276
+ * 最小宽度
277
+ */
278
+ minWidth?: string | number
279
+ /**
280
+ * 定位
281
+ */
282
+ fixed?: 'left' | 'right' | boolean
283
+ /**
284
+ * 是否显示
285
+ */
286
+ isShow?:
287
+ | boolean
288
+ | ((this: CTX, self: TableBaseItem<MODEL, CTX>) => boolean)
289
+ /**
290
+ * 用户表格配置
291
+ */
292
+ userConfigShow?: boolean
293
+ /**
294
+ * 用户表头
295
+ */
296
+ userLabel?: string
297
+ /**
298
+ * 表格排序
299
+ */
300
+ sortValues?: [AscParams, DescParams] | [AscParams, DescParams, NoParams]
301
+ /**
302
+ * 列属性
303
+ */
304
+ props?: ConvertFunctionContext<TableBaseItemProps, CTX>
305
+ /**
306
+ * 自定义输入渲染
307
+ */
308
+ renderFn?: (this: CTX, data: MODEL, index: number) => JSX.Element
309
+ /**
310
+ * 自定义文本渲染
311
+ */
312
+ textRenderFn?: (this: CTX, data: MODEL, index: number) => JSX.Element
313
+ /**
314
+ * 是否启用过滤
315
+ */
316
+ filterable?: boolean
317
+
318
+ /**
319
+ * 过滤的选项
320
+ */
321
+ filters?: ExtendReflect<{
322
+ /**
323
+ * 过滤类型
324
+ */
325
+ filterType: FilterType
326
+ /**
327
+ * 复数过滤
328
+ */
329
+ filterMultiple?: boolean
330
+ /**
331
+ * 过滤表单文本
332
+ */
333
+ filterLabel?: string
334
+ /**
335
+ * 过滤选项
336
+ */
337
+ filterOptions?: Array<{
338
+ label: string
339
+ value: string | number | boolean
340
+ }>
341
+ /**
342
+ * 获取过滤选项
343
+ */
344
+ getFilterOptions?: (this: CTX) => Promise<{
345
+ label: string
346
+ value: string | number | boolean
347
+ }[]>
348
+ }>
349
+
350
+ /**
351
+ * 是否必填
352
+ */
353
+ required?: boolean
354
+ /**
355
+ * 是否直接显示编辑组件
356
+ */
357
+ showEdit?: boolean
358
+ /**
359
+ * 内置编辑组件
360
+ */
361
+ editData?: FormItem<MODEL, CTX> & {
362
+ api?: string | ((this: CTX, data: MODEL) => string)
363
+ method?: PageModel.AjaxMethod
364
+ beforeSubmit?: CreateDePromiseResult<
365
+ (this: CTX, data: MODEL) => AnyObject | false
366
+ >
367
+ isDisabled?: (this: CTX, data: MODEL) => boolean
368
+ /**
369
+ * 自定义更新请求
370
+ * @param this table
371
+ * @param data 请求的数据
372
+ * @returns 是否成功
373
+ */
374
+ customUpdate?: (this: CTX, data: MODEL) => Promise<boolean | void>
375
+ /**
376
+ * 触发的弹窗名称
377
+ */
378
+ triggerPoperClassName?: string
379
+ }
380
+ // 子元素
381
+ children?: Omit<TableBaseItem<MODEL, CTX>, 'children'>[]
382
+ // 自定义属性
383
+ customProps?: AnyObject
384
+ // 帮助文本
385
+ helpText?: string
386
+ // 显示合计
387
+ showSummary?: number | string
388
+ /**
389
+ * 显示的行数
390
+ */
391
+ showRowNumbers?: number
392
+ /**
393
+ * 图标
394
+ */
395
+ icon?: any
396
+ }
397
+
398
+ interface TableVirtualBaseItem<MODEL = any, CTX = any>
399
+ extends TableBaseItem<MODEL, CTX> {
400
+ title?: string
401
+ dataKey: string
402
+ key?: string
403
+ cellRenderer?: (opt: { rowData: MODEL; rowIndex: number }) => JSX.Element
404
+ headerCellRenderer?: (opt: {
405
+ rowData: MODEL
406
+ rowIndex: number
407
+ }) => JSX.Element
408
+ children?: TableVirtualBaseItem<MODEL, CTX>[]
409
+ }
410
+
411
+ // 创建eType组件类型
412
+ interface CreateFormItemComponent<
413
+ NAME,
414
+ MODEL,
415
+ CTX,
416
+ PROPS = any,
417
+ EVENTS = any
418
+ > extends FormElBaseItem<MODEL, CTX> {
419
+ eType: NAME
420
+ props?: PROPS
421
+ events?: EVENTS
422
+ style?: StyleValue
423
+ }
424
+
425
+ // 为对象中的函数添加this指向
426
+ type ConvertFunctionContext<T, CTX> = {
427
+ [K in keyof T]: T[K] extends (...rest: any[]) => any
428
+ ? (this: CTX, ...rest: Parameters<T[K]>) => any
429
+ : T[K]
430
+ }
431
+
432
+ type CreatePropsFromElement<
433
+ P,
434
+ O extends undefined | keyof P = undefined,
435
+ CTX = any
436
+ > = Partial<
437
+ ConvertFunctionContext<
438
+ O extends string | number | symbol ? Omit<P, O> : P,
439
+ CTX
440
+ >
441
+ >
442
+
443
+ // 扩展对象的reflect提示
444
+ type ExtendReflect<T> = T & {
445
+ _reflect?: string
446
+ _reflectChangeKey?: string
447
+ }
448
+
449
+ type OptionsData = ExtendReflect<{
450
+ list?: any[]
451
+ label?: string
452
+ value?: string
453
+ [key: string]: any
454
+ }>
455
+
456
+ type ExtendOptionsData<T> = T & {
457
+ optionsData: OptionsData
458
+ }
459
+ }
460
+ }
@@ -0,0 +1,37 @@
1
+ import { CascaderProps, CascaderOption } from 'element-plus';
2
+
3
+
4
+ declare global {
5
+ namespace PageModel {
6
+
7
+ type CascaderComponentProps = {
8
+ options: CascaderOption[];
9
+ props: CascaderProps;
10
+ size: Size;
11
+ placeholder: string;
12
+ disabled: boolean;
13
+ clearable: boolean;
14
+ showAllLevels: boolean;
15
+ collapseTags: boolean;
16
+ separator: string;
17
+ filterable: boolean;
18
+ filterMethod: (node: any, keyword: string) => any;
19
+ debounce: number;
20
+ beforeFilter: boolean | Promise<any>;
21
+ popperClass: string;
22
+ }
23
+
24
+ type ElCascaderProps<CTX> = CreatePropsFromElement<ExtendReflect<CascaderComponentProps>, undefined, CTX>
25
+
26
+ type ElCascaderEvents<CTX> = CreatePropsFromElement<{
27
+ change: (value: any[]) => any;
28
+ expandChange: (value: any[]) => any;
29
+ blur: (event: Event) => any;
30
+ focus: (event: Event) => any;
31
+ visibleChange: (value: boolean) => any;
32
+ removeTag: (value: any) => any;
33
+ }, undefined, CTX>
34
+
35
+ type ElCascader<MODEL = any, CTX = any> = CreateFormItemComponent<'el-cascader', MODEL, CTX, ElCascaderProps<CTX>, ElCascaderEvents<CTX>>
36
+ }
37
+ }
@@ -0,0 +1,19 @@
1
+ /// <reference path="../common.d.ts" />
2
+
3
+ declare namespace PageModel {
4
+
5
+ type ElCheckboxGroupProps<CTX> = CreatePropsFromElement<{
6
+ size: Size;
7
+ disabled: false;
8
+ min: number;
9
+ max: number;
10
+ textColor: string;
11
+ fill: string;
12
+ }, undefined, CTX>
13
+
14
+ type ElCheckboxGroupEvents<CTX> = CreatePropsFromElement<{
15
+ change: (value: any[]) => void;
16
+ }, undefined, CTX>
17
+
18
+ type ElCheckboxGroup<MODEL = any, CTX = any> = ExtendOptionsData<CreateFormItemComponent<'el-checkbox-group', MODEL, CTX, ElCheckboxGroupProps<CTX>, ElCheckboxGroupEvents<CTX>>>
19
+ }
@@ -0,0 +1,20 @@
1
+ /// <reference path="../common.d.ts" />
2
+
3
+ declare namespace PageModel {
4
+ type ElColorPickerProps<CTX> = CreatePropsFromElement<{
5
+ size: Size;
6
+ disabled: false;
7
+ showAlpha: boolean;
8
+ colorFormat: 'hsl' | 'hsv' | 'hex' | 'rgb';
9
+ popperClass: string;
10
+ predefine: any[];
11
+ }, undefined, CTX>
12
+
13
+ type ElColorPickerEvents<CTX> = CreatePropsFromElement<{
14
+ change: (value: any[]) => any;
15
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
16
+ "onActive-change"?: ((...args: any[]) => any) | undefined;
17
+ }, undefined, CTX>
18
+
19
+ type ElColorPicker<MODEL = any, CTX = any> = CreateFormItemComponent<'el-color-picker', MODEL, CTX, ElColorPickerProps<CTX>, ElColorPickerEvents<CTX>>
20
+ }
@@ -0,0 +1,42 @@
1
+ import { Component } from 'vue';
2
+ declare global {
3
+ namespace PageModel {
4
+ type ElDatePickerProps<CTX> = CreatePropsFromElement<{
5
+ readonly: boolean;
6
+ disabled: boolean;
7
+ size: Size;
8
+ editable: boolean;
9
+ clearable: boolean;
10
+ placeholder: string;
11
+ startPlaceholder: string;
12
+ endPlaceholder: string;
13
+ type: 'year' | 'month' | 'date' | 'dates' | 'week' | 'datetime' | 'datetimerange' | 'daterange' | 'monthrange';
14
+ format: DateFormat;
15
+ popperClass: string;
16
+ rangeSeparator: string;
17
+ defaultValue: Date;
18
+ defaultTime: Date[];
19
+ valueFormat: DateFormat;
20
+ id: string | string[];
21
+ name: string;
22
+ unlinkPanels: boolean;
23
+ prefixIcon: string | Component;
24
+ clearIcon: string | Component;
25
+ validateEvent: boolean;
26
+ disabledDate: (date: Date) => boolean;
27
+ shortcuts: { text: string, value: Date | Function }[];
28
+ cellClassName: (date: Date) => string;
29
+ }, undefined, CTX>
30
+
31
+ type ElDatePickerEvents<CTX> = CreatePropsFromElement<{
32
+ change: (value: Date | string) => void;
33
+ blur: AnyFunction;
34
+ focus: AnyFunction;
35
+ panelChange: (date: Date | string, mode: string, view: any) => any;
36
+ visibleChange: AnyFunction;
37
+ }, undefined, CTX>
38
+
39
+ type ElDatePicker<MODEL = any, CTX = any> = CreateFormItemComponent<'el-date-picker', MODEL, CTX, ElDatePickerProps<CTX>, ElDatePickerEvents<CTX>>
40
+ }
41
+ }
42
+
@@ -0,0 +1,14 @@
1
+ import { inputNumberProps, inputNumberEmits } from 'element-plus';
2
+ import { ExtractPropTypes } from 'vue';
3
+
4
+
5
+ declare global {
6
+ namespace PageModel {
7
+
8
+ type ElInputNumberProps<CTX> = CreatePropsFromElement<ExtractPropTypes<typeof inputNumberProps>, 'modelValue', CTX>
9
+
10
+ type ElInputNumberEvents<CTX> = CreatePropsFromElement<ExtractPropTypes<typeof inputNumberEmits>, undefined, CTX>
11
+
12
+ type ElInputNumber<MODEL = any, CTX = any> = CreateFormItemComponent<'el-input-number', MODEL, CTX, ElInputNumberProps<CTX>, ElInputEvents<CTX>>
13
+ }
14
+ }
@@ -0,0 +1,16 @@
1
+ import { InputProps, InputEmits } from 'element-plus';
2
+
3
+
4
+ declare global {
5
+ namespace PageModel {
6
+
7
+ type ElInputProps<CTX> = CreatePropsFromElement<InputProps, 'modelValue', CTX> & {
8
+ rows?: number;
9
+ }
10
+
11
+ type ElInputEvents<CTX> = CreatePropsFromElement<InputEmits, undefined, CTX>
12
+
13
+ type ElInput<MODEL = any, CTX = any> = CreateFormItemComponent<'el-input', MODEL, CTX, ElInputProps<CTX>, ElInputEvents<CTX>>
14
+ }
15
+
16
+ }
@@ -0,0 +1,14 @@
1
+ /// <reference path="../common.d.ts" />
2
+
3
+ declare namespace PageModel {
4
+ type JuzhenAMapProps<CTX> = CreatePropsFromElement<{
5
+ options: AnyObject;
6
+ height: number | string;
7
+ width: number | string;
8
+ markers: any[];
9
+ search: boolean;
10
+ useCenter: boolean;
11
+ }, undefined, CTX>
12
+
13
+ type JuzhenAMap<MODEL = any, CTX = any> = CreateFormItemComponent<'a-map', MODEL, CTX, JuzhenAMapProps<CTX>>
14
+ }
@@ -0,0 +1,18 @@
1
+ import { CascaderProps } from 'element-plus';
2
+
3
+
4
+ declare global {
5
+ namespace PageModel {
6
+
7
+ type JzCascaderPropsOrigin<CTX> = {
8
+ options?: any[];
9
+ } & ElCascaderProps<CTX> & CascaderProps
10
+
11
+ type JuzhenCascaderProps<CTX> = ExtendReflect<JzCascaderPropsOrigin<CTX>>
12
+
13
+ type JuzhenCascaderEvents<CTX> = ElCascaderEvents<CTX>
14
+
15
+ type JuzhenCascader<MODEL = any, CTX = any> = CreateFormItemComponent<'juzhen-cascader', MODEL, CTX, JuzhenCascaderProps<CTX>, JuzhenCascaderEvents<CTX>>
16
+ }
17
+
18
+ }
@@ -0,0 +1,25 @@
1
+ import { CascaderProps } from 'element-plus';
2
+
3
+
4
+ interface CityItem {
5
+ label: string;
6
+ value: string;
7
+ children?: CityItem[]
8
+ }
9
+
10
+ declare global {
11
+ namespace PageModel {
12
+ type JuzhenCityPickerProps<CTX> = CreatePropsFromElement<{
13
+ level: 1 | 2 | 3;
14
+ cascaderProps: CascaderProps;
15
+ compProps: ElCascaderProps<CTX>;
16
+ }, undefined, CTX>
17
+
18
+ type JuzhenCityPickerEvents<CTX> = CreatePropsFromElement<{
19
+ valueChange: (citys?: CityItem[]) => any;
20
+ }, undefined, CTX>
21
+
22
+ type JuzhenCityPicker<MODEL = any, CTX = any> = CreateFormItemComponent<'city-picker', MODEL, CTX, JuzhenCityPickerProps<CTX>, JuzhenCityPickerEvents<CTX>>
23
+ }
24
+ }
25
+
@@ -0,0 +1,27 @@
1
+ /// <reference path="../common.d.ts" />
2
+
3
+ declare namespace PageModel {
4
+ type JuzhenCkEditorProps<CTX> = CreatePropsFromElement<{
5
+ modelValue?: string;
6
+ extraConfig?: any;
7
+ height?: number | string;
8
+ width?: number | string;
9
+ qiniu?: boolean;
10
+ getSrc?: { // 获取上传成功的src
11
+ type: Function,
12
+ default: null
13
+ },
14
+ settleResult?: { // 判断是否上传成功
15
+ type: Function,
16
+ default: null
17
+ },
18
+ loadPath?: string[];
19
+ }, undefined, CTX>
20
+
21
+ type JuzhenCkEditorEvents<CTX> = CreatePropsFromElement<{
22
+ uploadError: (file: any, error: Error, result: any) => any;
23
+ uploadSuccess:(srcList: any) => any;
24
+ }, undefined, CTX>
25
+
26
+ type JuzhenCkEditor<MODEL = any, CTX = any> = CreateFormItemComponent<'ck-editor', MODEL, CTX, JuzhenCkEditorProps<CTX>, JuzhenCkEditorEvents<CTX>>
27
+ }