vxe-pc-ui 4.11.45 → 4.12.1

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 (167) hide show
  1. package/es/calendar/src/calendar.js +254 -97
  2. package/es/calendar/style.css +248 -69
  3. package/es/calendar/style.min.css +1 -1
  4. package/es/date-panel/src/date-panel.js +3 -1
  5. package/es/icon/style.css +1 -1
  6. package/es/language/ar-EG.js +4 -0
  7. package/es/language/de-DE.js +4 -0
  8. package/es/language/en-US.js +4 -0
  9. package/es/language/es-ES.js +4 -0
  10. package/es/language/fr-FR.js +4 -0
  11. package/es/language/hu-HU.js +4 -0
  12. package/es/language/hy-AM.js +4 -0
  13. package/es/language/id-ID.js +4 -0
  14. package/es/language/it-IT.js +4 -0
  15. package/es/language/ja-JP.js +4 -0
  16. package/es/language/ko-KR.js +4 -0
  17. package/es/language/ms-MY.js +4 -0
  18. package/es/language/nb-NO.js +4 -0
  19. package/es/language/pt-BR.js +4 -0
  20. package/es/language/ru-RU.js +4 -0
  21. package/es/language/th-TH.js +4 -0
  22. package/es/language/ug-CN.js +4 -0
  23. package/es/language/uk-UA.js +4 -0
  24. package/es/language/uz-UZ.js +4 -0
  25. package/es/language/vi-VN.js +4 -0
  26. package/es/language/zh-CHT.js +4 -0
  27. package/es/language/zh-CN.js +4 -0
  28. package/es/menu/src/menu.js +67 -8
  29. package/es/style.css +1 -1
  30. package/es/style.min.css +1 -1
  31. package/es/tree/src/tree.js +10 -2
  32. package/es/ui/index.js +1 -1
  33. package/es/ui/src/log.js +1 -1
  34. package/es/vxe-calendar/style.css +248 -69
  35. package/es/vxe-calendar/style.min.css +1 -1
  36. package/lib/calendar/src/calendar.js +283 -104
  37. package/lib/calendar/src/calendar.min.js +1 -1
  38. package/lib/calendar/style/style.css +248 -69
  39. package/lib/calendar/style/style.min.css +1 -1
  40. package/lib/date-panel/src/date-panel.js +3 -1
  41. package/lib/date-panel/src/date-panel.min.js +1 -1
  42. package/lib/icon/style/style.css +1 -1
  43. package/lib/icon/style/style.min.css +1 -1
  44. package/lib/index.umd.js +443 -161
  45. package/lib/index.umd.min.js +1 -1
  46. package/lib/language/ar-EG.js +4 -0
  47. package/lib/language/ar-EG.min.js +1 -1
  48. package/lib/language/ar-EG.umd.js +4 -0
  49. package/lib/language/de-DE.js +4 -0
  50. package/lib/language/de-DE.min.js +1 -1
  51. package/lib/language/de-DE.umd.js +4 -0
  52. package/lib/language/en-US.js +4 -0
  53. package/lib/language/en-US.min.js +1 -1
  54. package/lib/language/en-US.umd.js +4 -0
  55. package/lib/language/es-ES.js +4 -0
  56. package/lib/language/es-ES.min.js +1 -1
  57. package/lib/language/es-ES.umd.js +4 -0
  58. package/lib/language/fr-FR.js +4 -0
  59. package/lib/language/fr-FR.min.js +1 -1
  60. package/lib/language/fr-FR.umd.js +4 -0
  61. package/lib/language/hu-HU.js +4 -0
  62. package/lib/language/hu-HU.min.js +1 -1
  63. package/lib/language/hu-HU.umd.js +4 -0
  64. package/lib/language/hy-AM.js +4 -0
  65. package/lib/language/hy-AM.min.js +1 -1
  66. package/lib/language/hy-AM.umd.js +4 -0
  67. package/lib/language/id-ID.js +4 -0
  68. package/lib/language/id-ID.min.js +1 -1
  69. package/lib/language/id-ID.umd.js +4 -0
  70. package/lib/language/it-IT.js +4 -0
  71. package/lib/language/it-IT.min.js +1 -1
  72. package/lib/language/it-IT.umd.js +4 -0
  73. package/lib/language/ja-JP.js +4 -0
  74. package/lib/language/ja-JP.min.js +1 -1
  75. package/lib/language/ja-JP.umd.js +4 -0
  76. package/lib/language/ko-KR.js +4 -0
  77. package/lib/language/ko-KR.min.js +1 -1
  78. package/lib/language/ko-KR.umd.js +4 -0
  79. package/lib/language/ms-MY.js +4 -0
  80. package/lib/language/ms-MY.min.js +1 -1
  81. package/lib/language/ms-MY.umd.js +4 -0
  82. package/lib/language/nb-NO.js +4 -0
  83. package/lib/language/nb-NO.min.js +1 -1
  84. package/lib/language/nb-NO.umd.js +4 -0
  85. package/lib/language/pt-BR.js +4 -0
  86. package/lib/language/pt-BR.min.js +1 -1
  87. package/lib/language/pt-BR.umd.js +4 -0
  88. package/lib/language/ru-RU.js +4 -0
  89. package/lib/language/ru-RU.min.js +1 -1
  90. package/lib/language/ru-RU.umd.js +4 -0
  91. package/lib/language/th-TH.js +4 -0
  92. package/lib/language/th-TH.min.js +1 -1
  93. package/lib/language/th-TH.umd.js +4 -0
  94. package/lib/language/ug-CN.js +4 -0
  95. package/lib/language/ug-CN.min.js +1 -1
  96. package/lib/language/ug-CN.umd.js +4 -0
  97. package/lib/language/uk-UA.js +4 -0
  98. package/lib/language/uk-UA.min.js +1 -1
  99. package/lib/language/uk-UA.umd.js +4 -0
  100. package/lib/language/uz-UZ.js +4 -0
  101. package/lib/language/uz-UZ.min.js +1 -1
  102. package/lib/language/uz-UZ.umd.js +4 -0
  103. package/lib/language/vi-VN.js +4 -0
  104. package/lib/language/vi-VN.min.js +1 -1
  105. package/lib/language/vi-VN.umd.js +4 -0
  106. package/lib/language/zh-CHT.js +4 -0
  107. package/lib/language/zh-CHT.min.js +1 -1
  108. package/lib/language/zh-CHT.umd.js +4 -0
  109. package/lib/language/zh-CN.js +4 -0
  110. package/lib/language/zh-CN.min.js +1 -1
  111. package/lib/language/zh-CN.umd.js +4 -0
  112. package/lib/menu/src/menu.js +89 -10
  113. package/lib/menu/src/menu.min.js +1 -1
  114. package/lib/style.css +1 -1
  115. package/lib/style.min.css +1 -1
  116. package/lib/tree/src/tree.js +62 -44
  117. package/lib/tree/src/tree.min.js +1 -1
  118. package/lib/ui/index.js +1 -1
  119. package/lib/ui/index.min.js +1 -1
  120. package/lib/ui/src/log.js +1 -1
  121. package/lib/ui/src/log.min.js +1 -1
  122. package/lib/vxe-calendar/style/style.css +248 -69
  123. package/lib/vxe-calendar/style/style.min.css +1 -1
  124. package/package.json +1 -1
  125. package/packages/calendar/src/calendar.ts +259 -97
  126. package/packages/date-panel/src/date-panel.ts +3 -1
  127. package/packages/language/ar-EG.ts +4 -0
  128. package/packages/language/de-DE.ts +4 -0
  129. package/packages/language/en-US.ts +4 -0
  130. package/packages/language/es-ES.ts +4 -0
  131. package/packages/language/fr-FR.ts +4 -0
  132. package/packages/language/hu-HU.ts +4 -0
  133. package/packages/language/hy-AM.ts +4 -0
  134. package/packages/language/id-ID.ts +4 -0
  135. package/packages/language/it-IT.ts +4 -0
  136. package/packages/language/ja-JP.ts +4 -0
  137. package/packages/language/ko-KR.ts +4 -0
  138. package/packages/language/ms-MY.ts +4 -0
  139. package/packages/language/nb-NO.ts +4 -0
  140. package/packages/language/pt-BR.ts +4 -0
  141. package/packages/language/ru-RU.ts +4 -0
  142. package/packages/language/th-TH.ts +4 -0
  143. package/packages/language/ug-CN.ts +4 -0
  144. package/packages/language/uk-UA.ts +4 -0
  145. package/packages/language/uz-UZ.ts +4 -0
  146. package/packages/language/vi-VN.ts +4 -0
  147. package/packages/language/zh-CHT.ts +4 -0
  148. package/packages/language/zh-CN.ts +4 -0
  149. package/packages/menu/src/menu.ts +79 -15
  150. package/packages/tree/src/tree.ts +11 -2
  151. package/styles/components/calendar.scss +281 -78
  152. package/types/components/calendar.d.ts +47 -3
  153. package/types/components/form-design.d.ts +106 -21
  154. package/types/components/menu.d.ts +50 -2
  155. package/types/ui/menus.d.ts +54 -5
  156. /package/es/icon/{iconfont.1768381374840.ttf → iconfont.1768462812157.ttf} +0 -0
  157. /package/es/icon/{iconfont.1768381374840.woff → iconfont.1768462812157.woff} +0 -0
  158. /package/es/icon/{iconfont.1768381374840.woff2 → iconfont.1768462812157.woff2} +0 -0
  159. /package/es/{iconfont.1768381374840.ttf → iconfont.1768462812157.ttf} +0 -0
  160. /package/es/{iconfont.1768381374840.woff → iconfont.1768462812157.woff} +0 -0
  161. /package/es/{iconfont.1768381374840.woff2 → iconfont.1768462812157.woff2} +0 -0
  162. /package/lib/icon/style/{iconfont.1768381374840.ttf → iconfont.1768462812157.ttf} +0 -0
  163. /package/lib/icon/style/{iconfont.1768381374840.woff → iconfont.1768462812157.woff} +0 -0
  164. /package/lib/icon/style/{iconfont.1768381374840.woff2 → iconfont.1768462812157.woff2} +0 -0
  165. /package/lib/{iconfont.1768381374840.ttf → iconfont.1768462812157.ttf} +0 -0
  166. /package/lib/{iconfont.1768381374840.woff → iconfont.1768462812157.woff} +0 -0
  167. /package/lib/{iconfont.1768381374840.woff2 → iconfont.1768462812157.woff2} +0 -0
@@ -1,6 +1,7 @@
1
1
  import { RenderFunction, SetupContext, Ref, ComputedRef } from 'vue'
2
2
  import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, VxeComponentSizeType, ValueOf } from '@vxe-ui/core'
3
3
  import { VxeFormPropTypes } from '../components/form'
4
+ import { VxeContextMenuPropTypes, VxeContextMenuDefines } from './context-menu'
4
5
 
5
6
  /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
6
7
 
@@ -44,6 +45,24 @@ export namespace VxeFormDesignPropTypes {
44
45
  export interface FormRender {
45
46
  name?: string
46
47
  }
48
+ export interface MenuConfig<D = any> {
49
+ /**
50
+ * 是否启用
51
+ */
52
+ enabled?: boolean
53
+ /**
54
+ * 菜单配置
55
+ */
56
+ options: VxeContextMenuPropTypes.Options
57
+ /**
58
+ * 该函数的返回值用来决定是否允许显示右键菜单(对于需要对菜单进行权限控制时可能会用到)
59
+ */
60
+ visibleMethod?(params: {
61
+ $formDesign: VxeFormDesignConstructor
62
+ options: VxeContextMenuPropTypes.Options
63
+ widget: VxeFormDesignDefines.WidgetObjItem<D>
64
+ }): boolean
65
+ }
47
66
  }
48
67
 
49
68
  export interface VxeFormDesignProps {
@@ -56,6 +75,7 @@ export interface VxeFormDesignProps {
56
75
  showMobile?: VxeFormDesignPropTypes.ShowMobile
57
76
  formData?: VxeFormDesignPropTypes.FormData
58
77
  formRender?: VxeFormDesignPropTypes.FormRender
78
+ menuConfig?: VxeFormDesignPropTypes.MenuConfig
59
79
  }
60
80
 
61
81
  export interface FormDesignPrivateComputed {
@@ -140,6 +160,7 @@ export interface VxeFormDesignMethods extends FormDesignMethods { }
140
160
 
141
161
  export interface FormDesignPrivateMethods {
142
162
  validWidgetUnique(widgetName: string): boolean
163
+ handleContextmenuWidget (evnt: MouseEvent, item: VxeFormDesignDefines.WidgetObjItem): void
143
164
  handleClickWidget (evnt: Event, item: VxeFormDesignDefines.WidgetObjItem): void
144
165
  handleCopyWidget (evnt: Event, item: VxeFormDesignDefines.WidgetObjItem): void
145
166
  handleRemoveWidget (evnt: Event, item: VxeFormDesignDefines.WidgetObjItem): void
@@ -147,6 +168,14 @@ export interface FormDesignPrivateMethods {
147
168
  export interface VxeFormDesignPrivateMethods extends FormDesignPrivateMethods { }
148
169
 
149
170
  export type VxeFormDesignEmits = [
171
+ 'widget-click',
172
+ 'widget-add',
173
+ 'widget-copy',
174
+ 'widget-remove',
175
+ 'widget-drag',
176
+ 'widget-menu',
177
+ 'menu-click',
178
+
150
179
  'click-widget',
151
180
  'add-widget',
152
181
  'copy-widget',
@@ -218,49 +247,105 @@ export namespace VxeFormDesignDefines {
218
247
  mobileTitleWidthUnit: null | '' | 'px' | '%'
219
248
  }
220
249
 
221
- export interface ClickWidgetParams<D = any> {
250
+ export interface WidgetClickParams<D = any> {
222
251
  widget: VxeFormDesignDefines.WidgetObjItem<D>
223
252
  }
224
- export interface ClickWidgetEventParams<D = any> extends FormDesignEventParams, ClickWidgetParams<D> { }
253
+ export interface WidgetClickEventParams<D = any> extends FormDesignEventParams, WidgetClickParams<D> { }
225
254
 
226
- export interface AddWidgetEventParams<D = any> extends FormDesignEventParams {
255
+ export interface WidgetAddEventParams<D = any> extends FormDesignEventParams {
227
256
  newWidget: VxeFormDesignDefines.WidgetObjItem<D>
228
257
  }
229
- export interface CopyWidgetEventParams<D = any> extends FormDesignEventParams {
258
+ export interface WidgetCopyEventParams<D = any> extends FormDesignEventParams {
230
259
  widget: VxeFormDesignDefines.WidgetObjItem<D>
231
260
  newWidget: VxeFormDesignDefines.WidgetObjItem<D>
232
261
  }
233
- export interface RemoveWidgetEventParams<D = any> extends FormDesignEventParams {
262
+ export interface WidgetRemoveEventParams<D = any> extends FormDesignEventParams {
263
+ widget: VxeFormDesignDefines.WidgetObjItem<D>
264
+ }
265
+
266
+ export interface WidgetDragEventParams<D = any> extends FormDesignEventParams {
234
267
  widget: VxeFormDesignDefines.WidgetObjItem<D>
235
268
  }
236
269
 
237
- export interface DragWidgetEventParams<D = any> extends FormDesignEventParams {
270
+ export interface WidgetMenuEventParams<D = any> extends FormDesignEventParams {
238
271
  widget: VxeFormDesignDefines.WidgetObjItem<D>
239
272
  }
273
+ export interface MenuClickEventParams<D = any> extends FormDesignEventParams {
274
+ widget: VxeFormDesignDefines.WidgetObjItem<D>
275
+ option: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
276
+ }
240
277
  }
241
278
 
242
279
  export type VxeFormDesignEventProps = {
243
- onClickWidget?: VxeFormDesignEvents.ClickWidget
244
- onAddWidget?: VxeFormDesignEvents.AddWidget
245
- onCopyWidget?: VxeFormDesignEvents.CopyWidget
246
- onRemoveWidget?: VxeFormDesignEvents.RemoveWidget
247
- onDragWidget?: VxeFormDesignEvents.DragWidget
280
+ onWidgetClick?: VxeFormDesignEvents.WidgetClick
281
+ onWidgetAdd?: VxeFormDesignEvents.WidgetAdd
282
+ onWidgetCopy?: VxeFormDesignEvents.WidgetCopy
283
+ onWidgetRemove?: VxeFormDesignEvents.WidgetRemove
284
+ onWidgetDrag?: VxeFormDesignEvents.WidgetDrag
285
+ onWidgetMenu?: VxeFormDesignEvents.WidgetMenu
286
+ onMenuClick?: VxeFormDesignEvents.MenuClick
287
+
288
+ /**
289
+ * @deprecated
290
+ */
291
+ onClickWidget?: VxeFormDesignEvents.WidgetClick
292
+ /**
293
+ * @deprecated
294
+ */
295
+ onAddWidget?: VxeFormDesignEvents.WidgetAdd
296
+ /**
297
+ * @deprecated
298
+ */
299
+ onCopyWidget?: VxeFormDesignEvents.WidgetCopy
300
+ /**
301
+ * @deprecated
302
+ */
303
+ onRemoveWidget?: VxeFormDesignEvents.WidgetRemove
304
+ /**
305
+ * @deprecated
306
+ */
307
+ onDragWidget?: VxeFormDesignEvents.WidgetDrag
248
308
  }
249
309
 
250
310
  export interface VxeFormDesignListeners {
251
- clickWidget?: VxeFormDesignEvents.ClickWidget
252
- addWidget?: VxeFormDesignEvents.AddWidget
253
- copyWidget?: VxeFormDesignEvents.CopyWidget
254
- removeWidget?: VxeFormDesignEvents.RemoveWidget
255
- dragWidget?: VxeFormDesignEvents.DragWidget
311
+ widgetClick?: VxeFormDesignEvents.WidgetClick
312
+ widgetAdd?: VxeFormDesignEvents.WidgetAdd
313
+ widgetCopy?: VxeFormDesignEvents.WidgetCopy
314
+ widgetRemove?: VxeFormDesignEvents.WidgetRemove
315
+ widgetDrag?: VxeFormDesignEvents.WidgetDrag
316
+ widgetMenu?: VxeFormDesignEvents.WidgetMenu
317
+ menuClick?: VxeFormDesignEvents.MenuClick
318
+
319
+ /**
320
+ * @deprecated
321
+ */
322
+ clickWidget?: VxeFormDesignEvents.WidgetClick
323
+ /**
324
+ * @deprecated
325
+ */
326
+ addWidget?: VxeFormDesignEvents.WidgetAdd
327
+ /**
328
+ * @deprecated
329
+ */
330
+ copyWidget?: VxeFormDesignEvents.WidgetCopy
331
+ /**
332
+ * @deprecated
333
+ */
334
+ removeWidget?: VxeFormDesignEvents.WidgetRemove
335
+ /**
336
+ * @deprecated
337
+ */
338
+ dragWidget?: VxeFormDesignEvents.WidgetDrag
256
339
  }
257
340
 
258
341
  export namespace VxeFormDesignEvents {
259
- export type ClickWidget<D = any> = (params: VxeFormDesignDefines.ClickWidgetEventParams<D>) => void
260
- export type AddWidget<D = any> = (params: VxeFormDesignDefines.AddWidgetEventParams<D>) => void
261
- export type CopyWidget<D = any> = (params: VxeFormDesignDefines.CopyWidgetEventParams<D>) => void
262
- export type RemoveWidget<D = any> = (params: VxeFormDesignDefines.RemoveWidgetEventParams<D>) => void
263
- export type DragWidget<D = any> = (params: VxeFormDesignDefines.DragWidgetEventParams<D>) => void
342
+ export type WidgetClick<D = any> = (params: VxeFormDesignDefines.WidgetClickEventParams<D>) => void
343
+ export type WidgetAdd<D = any> = (params: VxeFormDesignDefines.WidgetAddEventParams<D>) => void
344
+ export type WidgetCopy<D = any> = (params: VxeFormDesignDefines.WidgetCopyEventParams<D>) => void
345
+ export type WidgetRemove<D = any> = (params: VxeFormDesignDefines.WidgetRemoveEventParams<D>) => void
346
+ export type WidgetDrag<D = any> = (params: VxeFormDesignDefines.WidgetDragEventParams<D>) => void
347
+ export type WidgetMenu = (params: VxeFormDesignDefines.WidgetMenuEventParams) => void
348
+ export type MenuClick = (params: VxeFormDesignDefines.MenuClickEventParams) => void
264
349
  }
265
350
 
266
351
  export namespace VxeFormDesignSlotTypes {
@@ -1,6 +1,7 @@
1
1
  import { RenderFunction, SetupContext, Ref } from 'vue'
2
2
  import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentSlotType, VxeComponentStyleType, VxeComponentBaseOptions, VxeComponentEventParams, ValueOf, VxeComponentSizeType, VxeComponentPermissionCodeType } from '@vxe-ui/core'
3
3
  import { VxeLinkPropTypes } from './link'
4
+ import { VxeContextMenuPropTypes, VxeContextMenuDefines } from './context-menu'
4
5
 
5
6
  /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
6
7
 
@@ -48,6 +49,24 @@ export namespace VxeMenuPropTypes {
48
49
  export type CollapseFixed = boolean
49
50
  export type ExpandAll = boolean
50
51
  export type Options = MenuOption[]
52
+ export interface MenuConfig {
53
+ /**
54
+ * 是否启用
55
+ */
56
+ enabled?: boolean
57
+ /**
58
+ * 菜单配置
59
+ */
60
+ options: VxeContextMenuPropTypes.Options
61
+ /**
62
+ * 该函数的返回值用来决定是否允许显示右键菜单(对于需要对菜单进行权限控制时可能会用到)
63
+ */
64
+ visibleMethod?(params: {
65
+ $menu: VxeMenuConstructor
66
+ options: VxeContextMenuPropTypes.Options
67
+ currentMenu: VxeMenuDefines.MenuItem
68
+ }): boolean
69
+ }
51
70
  }
52
71
 
53
72
  export interface VxeMenuProps {
@@ -59,6 +78,7 @@ export interface VxeMenuProps {
59
78
  CollapseFixed?: VxeMenuPropTypes.CollapseFixed
60
79
  expandAll?: VxeMenuPropTypes.ExpandAll
61
80
  options?: VxeMenuPropTypes.Options
81
+ menuConfig?: VxeMenuPropTypes.MenuConfig
62
82
  }
63
83
 
64
84
  export interface MenuPrivateComputed {
@@ -85,7 +105,9 @@ export interface VxeMenuPrivateMethods extends MenuPrivateMethods { }
85
105
 
86
106
  export type VxeMenuEmits = [
87
107
  'update:modelValue',
88
- 'click'
108
+ 'click',
109
+ 'option-menu',
110
+ 'menu-click'
89
111
  ]
90
112
 
91
113
  export namespace VxeMenuDefines {
@@ -107,30 +129,56 @@ export namespace VxeMenuDefines {
107
129
  }
108
130
 
109
131
  export interface ClickParams {
132
+ currentMenu: VxeMenuDefines.MenuItem
133
+
134
+ /**
135
+ * 已废弃,请使用 currentMenu
136
+ * @deprecated
137
+ */
110
138
  menu: VxeMenuDefines.MenuItem
111
139
  }
112
140
  export interface ClickEventParams extends MenuEventParams, ClickParams { }
141
+
142
+ export interface OptionMenuEventParams extends MenuEventParams {
143
+ currentMenu: VxeMenuDefines.MenuItem
144
+ }
145
+ export interface MenuClickEventParams extends MenuEventParams {
146
+ currentMenu: VxeMenuDefines.MenuItem
147
+ option: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
148
+ }
113
149
  }
114
150
 
115
151
  export type VxeMenuEventProps = {
116
152
  'onUpdate:modelValue'?: VxeMenuEvents.UpdateModelValue
117
153
  onClick?: VxeMenuEvents.Click
154
+ onOptionMenu?: VxeMenuEvents.OptionMenu
155
+ onMenuClick?: VxeMenuEvents.MenuClick
118
156
  }
119
157
 
120
158
  export interface VxeMenuListeners {
121
159
  'update:modelValue'?: VxeMenuEvents.UpdateModelValue
122
160
  click?: VxeMenuEvents.Click
161
+ optioMenu?: VxeMenuEvents.OptionMenu
162
+ menuClick?: VxeMenuEvents.MenuClick
123
163
  }
124
164
 
125
165
  export namespace VxeMenuEvents {
126
166
  export type UpdateModelValue = (modelValue: VxeMenuPropTypes.ModelValue) => void
127
167
  export type Click = (params: VxeMenuDefines.ClickEventParams) => void
168
+ export type OptionMenu = (params: VxeMenuDefines.OptionMenuEventParams) => void
169
+ export type MenuClick = (params: VxeMenuDefines.MenuClickEventParams) => void
128
170
  }
129
171
 
130
172
  export namespace VxeMenuSlotTypes {
131
173
  export interface DefaultSlotParams {
132
- option: Required<VxeMenuPropTypes.MenuOption>
174
+ currentMenu: Required<VxeMenuPropTypes.MenuOption>
133
175
  collapsed: boolean
176
+
177
+ /**
178
+ * 已废弃,请使用 currentMenu
179
+ * @deprecated
180
+ */
181
+ option: Required<VxeMenuPropTypes.MenuOption>
134
182
  }
135
183
  export interface IconSlotParams extends DefaultSlotParams {}
136
184
  export interface TitleSlotParams extends DefaultSlotParams {}
@@ -1,5 +1,10 @@
1
1
  import { VxeTableConstructor, VxeTableDefines } from '../components/table'
2
2
  import { VxeGridConstructor } from '../components/grid'
3
+ import { VxeTreeConstructor } from '../components/tree'
4
+ import { VxeCalendarConstructor } from '../components/calendar'
5
+ import { VxeFormDesignConstructor, VxeFormDesignDefines } from '../components/form-design'
6
+ import { VxeMenuConstructor, VxeMenuPropTypes } from '../components/menu'
7
+ import { VxeContextMenuDefines } from '../components/context-menu'
3
8
 
4
9
  /* eslint-disable no-use-before-define */
5
10
 
@@ -9,20 +14,64 @@ declare module '@vxe-ui/core' {
9
14
  /**
10
15
  * 表格 - 自定义菜单方法
11
16
  */
12
- tableMenuMethod?: (params: TableMenuMethodParams, event: Event) => any
17
+ tableMenuMethod?: (params: TableMenuMethodParams, event: Event) => void
18
+ /**
19
+ * 树 - 自定义菜单方法
20
+ */
21
+ treeMenuMethod?: (params: TreeMenuMethodParams, event: Event) => void
22
+ /**
23
+ * 日历 - 自定义菜单方法
24
+ */
25
+ calendarMenuMethod?: (params: CalendarMenuMethodParams, event: Event) => void
26
+ /**
27
+ * 菜单 - 自定义菜单方法
28
+ */
29
+ menuMenuMethod?: (params: MenuMenuMethodParams, event: Event) => void
30
+ /**
31
+ * 表单设计器 - 自定义菜单方法
32
+ */
33
+ formDesignMenuMethod?: (params: FormDesignMenuMethodParams, event: Event) => void
13
34
 
14
35
  /**
15
36
  * 已废弃,请使用 tableMenuMethod
16
37
  * @deprecated
17
38
  */
18
- menuMethod?: (params: TableMenuMethodParams, event: Event) => any
39
+ menuMethod?: (params: TableMenuMethodParams, event: Event) => void
19
40
  }
20
41
 
21
- export interface TableMenuMethodParams extends VxeGlobalRendererHandles.RenderCellParams {
22
- $grid: VxeGridConstructor | null | undefined
23
- $table: VxeTableConstructor
42
+ export interface TableMenuMethodParams<D = any> extends VxeGlobalRendererHandles.RenderTableCellParams<D> {
43
+ $grid: VxeGridConstructor<D> | null | undefined
44
+ $table: VxeTableConstructor<D>
24
45
  $event: MouseEvent
25
46
  menu: VxeTableDefines.MenuFirstOption | VxeTableDefines.MenuChildOption
26
47
  }
48
+
49
+ export interface TreeMenuMethodParams<D = any> {
50
+ $tree: VxeTreeConstructor
51
+ $event: MouseEvent
52
+ node: D
53
+ menu: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
54
+ }
55
+
56
+ export interface CalendarMenuMethodParams {
57
+ $calendar: VxeCalendarConstructor
58
+ $event: MouseEvent
59
+ date: Date
60
+ menu: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
61
+ }
62
+
63
+ export interface MenuMenuMethodParams {
64
+ $menu: VxeMenuConstructor
65
+ $event: MouseEvent
66
+ currentMenu: VxeMenuPropTypes.MenuOption
67
+ menu: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
68
+ }
69
+
70
+ export interface FormDesignMenuMethodParams<D = any> {
71
+ $formDesign: VxeFormDesignConstructor
72
+ $event: MouseEvent
73
+ widget: VxeFormDesignDefines.WidgetObjItem<D>
74
+ menu: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
75
+ }
27
76
  }
28
77
  }