vxe-pc-ui 4.11.32 → 4.11.34
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.
- package/es/button/src/button-group.js +11 -5
- package/es/button/src/button.js +12 -4
- package/es/context-menu/src/context-menu.js +218 -3
- package/es/context-menu/style.css +1 -1
- package/es/context-menu/style.min.css +1 -1
- package/es/icon/style.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/tree/src/tree.js +1 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/vxe-context-menu/style.css +1 -1
- package/es/vxe-context-menu/style.min.css +1 -1
- package/lib/button/src/button-group.js +12 -7
- package/lib/button/src/button-group.min.js +1 -1
- package/lib/button/src/button.js +11 -4
- package/lib/button/src/button.min.js +1 -1
- package/lib/context-menu/src/context-menu.js +219 -2
- package/lib/context-menu/src/context-menu.min.js +1 -1
- package/lib/context-menu/style/style.css +1 -1
- package/lib/context-menu/style/style.min.css +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +248 -15
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/tree/src/tree.js +4 -0
- package/lib/tree/src/tree.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-context-menu/style/style.css +1 -1
- package/lib/vxe-context-menu/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/button/src/button-group.ts +14 -6
- package/packages/button/src/button.ts +13 -4
- package/packages/context-menu/src/context-menu.ts +216 -4
- package/packages/tree/src/tree.ts +1 -0
- package/styles/components/context-menu.scss +1 -1
- package/types/components/button-group.d.ts +9 -1
- package/types/components/button.d.ts +9 -1
- /package/es/icon/{iconfont.1767614230277.ttf → iconfont.1767662202838.ttf} +0 -0
- /package/es/icon/{iconfont.1767614230277.woff → iconfont.1767662202838.woff} +0 -0
- /package/es/icon/{iconfont.1767614230277.woff2 → iconfont.1767662202838.woff2} +0 -0
- /package/es/{iconfont.1767614230277.ttf → iconfont.1767662202838.ttf} +0 -0
- /package/es/{iconfont.1767614230277.woff → iconfont.1767662202838.woff} +0 -0
- /package/es/{iconfont.1767614230277.woff2 → iconfont.1767662202838.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1767614230277.ttf → iconfont.1767662202838.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1767614230277.woff → iconfont.1767662202838.woff} +0 -0
- /package/lib/icon/style/{iconfont.1767614230277.woff2 → iconfont.1767662202838.woff2} +0 -0
- /package/lib/{iconfont.1767614230277.ttf → iconfont.1767662202838.ttf} +0 -0
- /package/lib/{iconfont.1767614230277.woff → iconfont.1767662202838.woff} +0 -0
- /package/lib/{iconfont.1767614230277.woff2 → iconfont.1767662202838.woff2} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ref, h, reactive, PropType, computed, VNode, watch, onMounted, onBeforeUnmount, nextTick } from 'vue'
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
|
-
import { getConfig, getIcon, getI18n, createEvent, useSize, globalEvents, renderEmptyElement } from '../../ui'
|
|
4
|
+
import { getConfig, getIcon, getI18n, createEvent, useSize, globalEvents, renderEmptyElement, GLOBAL_EVENT_KEYS } from '../../ui'
|
|
5
5
|
import { getLastZIndex, nextSubZIndex, nextZIndex, getFuncText } from '../../ui/src/utils'
|
|
6
6
|
import { getEventTargetNode, toCssUnit } from '../../ui/src/dom'
|
|
7
7
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
@@ -81,6 +81,21 @@ export default defineVxeComponent({
|
|
|
81
81
|
return options || []
|
|
82
82
|
})
|
|
83
83
|
|
|
84
|
+
const computeAllFirstMenuList = computed(() => {
|
|
85
|
+
const menuGroups: VxeContextMenuDefines.MenuFirstOption[] = computeMenuGroups.value
|
|
86
|
+
const firstList = []
|
|
87
|
+
for (let i = 0; i < menuGroups.length; i++) {
|
|
88
|
+
const list = menuGroups[i]
|
|
89
|
+
for (let j = 0; j < list.length; j++) {
|
|
90
|
+
const firstItem = list[j]
|
|
91
|
+
if (hasValidItem(firstItem)) {
|
|
92
|
+
firstList.push(firstItem)
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return firstList
|
|
97
|
+
})
|
|
98
|
+
|
|
84
99
|
const computeTopAndLeft = computed(() => {
|
|
85
100
|
const { x, y } = props
|
|
86
101
|
return `${x}${y}`
|
|
@@ -179,7 +194,7 @@ export default defineVxeComponent({
|
|
|
179
194
|
return children && children.some((child) => child.visible !== false)
|
|
180
195
|
}
|
|
181
196
|
|
|
182
|
-
const handleItemClickEvent = (evnt: MouseEvent, item: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption) => {
|
|
197
|
+
const handleItemClickEvent = (evnt: MouseEvent | KeyboardEvent, item: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption) => {
|
|
183
198
|
if (!hasChildMenu(item)) {
|
|
184
199
|
dispatchEvent('option-click', { option: item }, evnt)
|
|
185
200
|
close()
|
|
@@ -188,7 +203,17 @@ export default defineVxeComponent({
|
|
|
188
203
|
|
|
189
204
|
const handleItemMouseenterEvent = (evnt: MouseEvent, item: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption, parentitem?: VxeContextMenuDefines.MenuFirstOption | null) => {
|
|
190
205
|
reactData.activeOption = parentitem || item
|
|
191
|
-
|
|
206
|
+
if (parentitem) {
|
|
207
|
+
reactData.activeOption = parentitem
|
|
208
|
+
reactData.activeChildOption = item
|
|
209
|
+
} else {
|
|
210
|
+
reactData.activeOption = item
|
|
211
|
+
if (hasChildMenu(item)) {
|
|
212
|
+
reactData.activeChildOption = findFirstChildItem(item)
|
|
213
|
+
} else {
|
|
214
|
+
reactData.activeChildOption = null
|
|
215
|
+
}
|
|
216
|
+
}
|
|
192
217
|
}
|
|
193
218
|
|
|
194
219
|
const handleItemMouseleaveEvent = () => {
|
|
@@ -196,6 +221,178 @@ export default defineVxeComponent({
|
|
|
196
221
|
reactData.activeChildOption = null
|
|
197
222
|
}
|
|
198
223
|
|
|
224
|
+
const hasValidItem = (item: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption) => {
|
|
225
|
+
return !item.loading && !item.disabled && item.visible !== false
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
const findNextFirstItem = (allFirstList: VxeContextMenuDefines.MenuFirstOption[], firstItem: VxeContextMenuDefines.MenuFirstOption) => {
|
|
229
|
+
for (let i = 0; i < allFirstList.length; i++) {
|
|
230
|
+
const item = allFirstList[i]
|
|
231
|
+
if (firstItem === item) {
|
|
232
|
+
const nextItem = allFirstList[i + 1]
|
|
233
|
+
if (nextItem) {
|
|
234
|
+
return nextItem
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
return XEUtils.first(allFirstList)
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
const findPrevFirstItem = (allFirstList: VxeContextMenuDefines.MenuFirstOption[], firstItem: VxeContextMenuDefines.MenuFirstOption) => {
|
|
242
|
+
for (let i = 0; i < allFirstList.length; i++) {
|
|
243
|
+
const item = allFirstList[i]
|
|
244
|
+
if (firstItem === item) {
|
|
245
|
+
if (i > 0) {
|
|
246
|
+
return allFirstList[i - 1]
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
return XEUtils.last(allFirstList)
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
const findFirstChildItem = (firstItem: VxeContextMenuDefines.MenuFirstOption) => {
|
|
254
|
+
const { children } = firstItem
|
|
255
|
+
if (children) {
|
|
256
|
+
for (let i = 0; i < children.length; i++) {
|
|
257
|
+
const item = children[i]
|
|
258
|
+
if (hasValidItem(item)) {
|
|
259
|
+
return item
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
return null
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
const findPrevChildItem = (firstItem: VxeContextMenuDefines.MenuFirstOption, childItem: VxeContextMenuDefines.MenuChildOption) => {
|
|
267
|
+
const { children } = firstItem
|
|
268
|
+
let prevValidItem = null
|
|
269
|
+
if (children) {
|
|
270
|
+
for (let i = 0; i < children.length; i++) {
|
|
271
|
+
const item = children[i]
|
|
272
|
+
if (childItem === item) {
|
|
273
|
+
break
|
|
274
|
+
}
|
|
275
|
+
if (hasValidItem(item)) {
|
|
276
|
+
prevValidItem = item
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
if (!prevValidItem) {
|
|
280
|
+
for (let len = children.length - 1; len >= 0; len--) {
|
|
281
|
+
const item = children[len]
|
|
282
|
+
if (hasValidItem(item)) {
|
|
283
|
+
return item
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
return prevValidItem
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
const findNextChildItem = (firstItem: VxeContextMenuDefines.MenuFirstOption, childItem: VxeContextMenuDefines.MenuChildOption) => {
|
|
292
|
+
const { children } = firstItem
|
|
293
|
+
let firstValidItem = null
|
|
294
|
+
if (children) {
|
|
295
|
+
let isMetch = false
|
|
296
|
+
for (let i = 0; i < children.length; i++) {
|
|
297
|
+
const item = children[i]
|
|
298
|
+
if (!firstValidItem) {
|
|
299
|
+
if (hasValidItem(item)) {
|
|
300
|
+
firstValidItem = item
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
if (isMetch) {
|
|
304
|
+
if (hasValidItem(item)) {
|
|
305
|
+
return item
|
|
306
|
+
}
|
|
307
|
+
} else {
|
|
308
|
+
isMetch = childItem === item
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
return firstValidItem
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
const handleGlobalMousewheelEvent = (evnt: MouseEvent) => {
|
|
316
|
+
const { visible } = reactData
|
|
317
|
+
if (visible) {
|
|
318
|
+
const el = refElem.value
|
|
319
|
+
if (!getEventTargetNode(evnt, el, '').flag) {
|
|
320
|
+
close()
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
const handleGlobalKeydownEvent = (evnt: KeyboardEvent) => {
|
|
326
|
+
const { visible, childPos, activeOption, activeChildOption } = reactData
|
|
327
|
+
const allFirstMenuList = computeAllFirstMenuList.value
|
|
328
|
+
if (visible) {
|
|
329
|
+
const isLeftArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_LEFT)
|
|
330
|
+
const isUpArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_UP)
|
|
331
|
+
const isRightArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_RIGHT)
|
|
332
|
+
const isDwArrow = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ARROW_DOWN)
|
|
333
|
+
const isEnter = globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ENTER)
|
|
334
|
+
// 回车选中
|
|
335
|
+
if (isEnter) {
|
|
336
|
+
if (activeOption || activeChildOption) {
|
|
337
|
+
evnt.preventDefault()
|
|
338
|
+
evnt.stopPropagation()
|
|
339
|
+
if (!activeChildOption && hasChildMenu(activeOption)) {
|
|
340
|
+
reactData.activeChildOption = findFirstChildItem(activeOption)
|
|
341
|
+
return
|
|
342
|
+
}
|
|
343
|
+
handleItemClickEvent(evnt, activeChildOption || activeOption)
|
|
344
|
+
return
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
// 方向键操作
|
|
348
|
+
if (activeChildOption) {
|
|
349
|
+
if (isUpArrow) {
|
|
350
|
+
evnt.preventDefault()
|
|
351
|
+
reactData.activeChildOption = findPrevChildItem(activeOption, activeChildOption)
|
|
352
|
+
} else if (isDwArrow) {
|
|
353
|
+
evnt.preventDefault()
|
|
354
|
+
reactData.activeChildOption = findNextChildItem(activeOption, activeChildOption)
|
|
355
|
+
} else if (isLeftArrow) {
|
|
356
|
+
evnt.preventDefault()
|
|
357
|
+
if (childPos === 'left') {
|
|
358
|
+
// 无操作
|
|
359
|
+
} else {
|
|
360
|
+
reactData.activeChildOption = null
|
|
361
|
+
}
|
|
362
|
+
} else if (isRightArrow) {
|
|
363
|
+
evnt.preventDefault()
|
|
364
|
+
if (childPos === 'left') {
|
|
365
|
+
reactData.activeChildOption = null
|
|
366
|
+
} else {
|
|
367
|
+
// 无操作
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
} else if (activeOption) {
|
|
371
|
+
evnt.preventDefault()
|
|
372
|
+
if (isUpArrow) {
|
|
373
|
+
reactData.activeOption = findPrevFirstItem(allFirstMenuList, activeOption)
|
|
374
|
+
} else if (isDwArrow) {
|
|
375
|
+
reactData.activeOption = findNextFirstItem(allFirstMenuList, activeOption)
|
|
376
|
+
} else {
|
|
377
|
+
if (hasChildMenu(activeOption)) {
|
|
378
|
+
if (childPos === 'left') {
|
|
379
|
+
if (isLeftArrow) {
|
|
380
|
+
reactData.activeChildOption = findFirstChildItem(activeOption)
|
|
381
|
+
}
|
|
382
|
+
} else {
|
|
383
|
+
if (isRightArrow) {
|
|
384
|
+
reactData.activeChildOption = findFirstChildItem(activeOption)
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
} else {
|
|
390
|
+
evnt.preventDefault()
|
|
391
|
+
reactData.activeOption = XEUtils.first(allFirstMenuList)
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
|
|
199
396
|
const handleGlobalMousedownEvent = (evnt: MouseEvent) => {
|
|
200
397
|
const { visible } = reactData
|
|
201
398
|
if (visible) {
|
|
@@ -206,6 +403,13 @@ export default defineVxeComponent({
|
|
|
206
403
|
}
|
|
207
404
|
}
|
|
208
405
|
|
|
406
|
+
const handleGlobalBlurEvent = () => {
|
|
407
|
+
const { visible } = reactData
|
|
408
|
+
if (visible) {
|
|
409
|
+
close()
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
|
|
209
413
|
const tagPrivateMethods: ContextMenuPrivateMethods = {
|
|
210
414
|
}
|
|
211
415
|
|
|
@@ -310,11 +514,13 @@ export default defineVxeComponent({
|
|
|
310
514
|
menuList.forEach((firstItem, i) => {
|
|
311
515
|
const { children } = firstItem
|
|
312
516
|
const hasChildMenus = children && children.some((child) => child.visible !== false)
|
|
517
|
+
const isActiveFirst = activeOption === firstItem
|
|
313
518
|
moVNs.push(
|
|
314
519
|
h('div', {
|
|
315
520
|
key: `${gIndex}_${i}`,
|
|
316
521
|
class: ['vxe-context-menu--item-wrapper vxe-context-menu--first-item', firstItem.className || '', {
|
|
317
|
-
'is--active':
|
|
522
|
+
'is--active': isActiveFirst,
|
|
523
|
+
'is--subactive': isActiveFirst && !!activeChildOption
|
|
318
524
|
}]
|
|
319
525
|
}, [
|
|
320
526
|
hasChildMenus
|
|
@@ -369,11 +575,17 @@ export default defineVxeComponent({
|
|
|
369
575
|
handleVisible()
|
|
370
576
|
|
|
371
577
|
onMounted(() => {
|
|
578
|
+
globalEvents.on($xeContextMenu, 'mousewheel', handleGlobalMousewheelEvent)
|
|
579
|
+
globalEvents.on($xeContextMenu, 'keydown', handleGlobalKeydownEvent)
|
|
372
580
|
globalEvents.on($xeContextMenu, 'mousedown', handleGlobalMousedownEvent)
|
|
581
|
+
globalEvents.on($xeContextMenu, 'blur', handleGlobalBlurEvent)
|
|
373
582
|
})
|
|
374
583
|
|
|
375
584
|
onBeforeUnmount(() => {
|
|
585
|
+
globalEvents.off($xeContextMenu, 'mousewheel')
|
|
586
|
+
globalEvents.off($xeContextMenu, 'keydown')
|
|
376
587
|
globalEvents.off($xeContextMenu, 'mousedown')
|
|
588
|
+
globalEvents.off($xeContextMenu, 'blur')
|
|
377
589
|
XEUtils.assign(reactData, createReactData())
|
|
378
590
|
XEUtils.assign(internalData, createInternalData())
|
|
379
591
|
})
|
|
@@ -1143,6 +1143,7 @@ export default defineVxeComponent({
|
|
|
1143
1143
|
if (!lazy || !treeExpandLazyLoadedMaps[nodeid]) {
|
|
1144
1144
|
handleBaseTreeExpand([node], expanded)
|
|
1145
1145
|
}
|
|
1146
|
+
dispatchEvent('node-expand', { node, expanded }, evnt)
|
|
1146
1147
|
}
|
|
1147
1148
|
|
|
1148
1149
|
const updateCheckboxStatus = () => {
|
|
@@ -74,7 +74,8 @@ export interface ButtonGroupPrivateMethods {
|
|
|
74
74
|
export interface VxeButtonGroupPrivateMethods extends ButtonGroupPrivateMethods { }
|
|
75
75
|
|
|
76
76
|
export type VxeButtonGroupEmits = [
|
|
77
|
-
'click'
|
|
77
|
+
'click',
|
|
78
|
+
'contextmenu'
|
|
78
79
|
]
|
|
79
80
|
|
|
80
81
|
export namespace VxeButtonGroupDefines {
|
|
@@ -86,18 +87,25 @@ export namespace VxeButtonGroupDefines {
|
|
|
86
87
|
name: VxeButtonPropTypes.Name
|
|
87
88
|
option: VxeButtonProps & Record<string, any>
|
|
88
89
|
}
|
|
90
|
+
|
|
91
|
+
export interface ContextmenuParams extends ButtonGroupEventParams {
|
|
92
|
+
$event: MouseEvent
|
|
93
|
+
}
|
|
89
94
|
}
|
|
90
95
|
|
|
91
96
|
export type VxeButtonGroupEventProps = {
|
|
92
97
|
onClick?: VxeButtonGroupEvents.Click
|
|
98
|
+
onContextmenu?: VxeButtonGroupEvents.Contextmenu
|
|
93
99
|
}
|
|
94
100
|
|
|
95
101
|
export interface VxeButtonGroupListeners {
|
|
96
102
|
click?: VxeButtonGroupEvents.Click
|
|
103
|
+
contextmenu?: VxeButtonGroupEvents.Contextmenu
|
|
97
104
|
}
|
|
98
105
|
|
|
99
106
|
export namespace VxeButtonGroupEvents {
|
|
100
107
|
export type Click = (params: VxeButtonGroupDefines.ClickEventParams) => void
|
|
108
|
+
export type Contextmenu = (params: VxeButtonGroupDefines.ContextmenuParams) => void
|
|
101
109
|
}
|
|
102
110
|
|
|
103
111
|
export namespace VxeButtonGroupSlotTypes {
|
|
@@ -213,7 +213,8 @@ export type VxeButtonEmits = [
|
|
|
213
213
|
'mouseenter',
|
|
214
214
|
'mouseleave',
|
|
215
215
|
'dropdown-click',
|
|
216
|
-
'dropdownClick'
|
|
216
|
+
'dropdownClick',
|
|
217
|
+
'contextmenu'
|
|
217
218
|
]
|
|
218
219
|
|
|
219
220
|
export namespace VxeButtonDefines {
|
|
@@ -239,6 +240,10 @@ export namespace VxeButtonDefines {
|
|
|
239
240
|
option: VxeButtonDefines.DownButtonOption | null
|
|
240
241
|
}
|
|
241
242
|
export interface DropdownClickEventParams extends ButtonEventParams, DropdownClickParams { }
|
|
243
|
+
|
|
244
|
+
export interface ContextmenuParams extends ButtonEventParams {
|
|
245
|
+
$event: MouseEvent
|
|
246
|
+
}
|
|
242
247
|
}
|
|
243
248
|
|
|
244
249
|
export type VxeButtonEventProps = {
|
|
@@ -246,6 +251,7 @@ export type VxeButtonEventProps = {
|
|
|
246
251
|
onMouseenter?: VxeButtonEvents.Mouseenter
|
|
247
252
|
onMouseleave?: VxeButtonEvents.Mouseleave
|
|
248
253
|
onDropdownClick?: VxeButtonEvents.DropdownClick
|
|
254
|
+
onContextmenu?: VxeButtonEvents.Contextmenu
|
|
249
255
|
}
|
|
250
256
|
|
|
251
257
|
export interface VxeButtonListeners {
|
|
@@ -253,6 +259,7 @@ export interface VxeButtonListeners {
|
|
|
253
259
|
mouseenter?: VxeButtonEvents.Mouseenter
|
|
254
260
|
mouseleave?: VxeButtonEvents.Mouseleave
|
|
255
261
|
dropdownClick?: VxeButtonEvents.DropdownClick
|
|
262
|
+
contextmenu?: VxeButtonEvents.Contextmenu
|
|
256
263
|
}
|
|
257
264
|
|
|
258
265
|
export namespace VxeButtonEvents {
|
|
@@ -260,6 +267,7 @@ export namespace VxeButtonEvents {
|
|
|
260
267
|
export type Mouseenter = (params: VxeButtonDefines.MouseenterEventParams) => void
|
|
261
268
|
export type Mouseleave = (params: VxeButtonDefines.MouseleaveEventParams) => void
|
|
262
269
|
export type DropdownClick = (params: VxeButtonDefines.DropdownClickParams) => void
|
|
270
|
+
export type Contextmenu = (params: VxeButtonDefines.ContextmenuParams) => void
|
|
263
271
|
}
|
|
264
272
|
|
|
265
273
|
export namespace VxeButtonSlotTypes {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|