vxe-pc-ui 4.11.30 → 4.11.32

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 (202) hide show
  1. package/es/backtop/src/backtop.js +1 -3
  2. package/es/button/src/button.js +21 -12
  3. package/es/components.js +3 -0
  4. package/es/context-menu/index.js +46 -0
  5. package/es/context-menu/src/context-menu.js +343 -0
  6. package/es/context-menu/style.css +112 -0
  7. package/es/context-menu/style.min.css +1 -0
  8. package/es/dynamics/index.js +29 -3
  9. package/es/icon/style.css +1 -1
  10. package/es/language/ar-EG.js +3 -0
  11. package/es/language/de-DE.js +3 -0
  12. package/es/language/en-US.js +3 -0
  13. package/es/language/es-ES.js +3 -0
  14. package/es/language/fr-FR.js +3 -0
  15. package/es/language/hu-HU.js +3 -0
  16. package/es/language/hy-AM.js +4 -1
  17. package/es/language/id-ID.js +3 -0
  18. package/es/language/it-IT.js +3 -0
  19. package/es/language/ja-JP.js +3 -0
  20. package/es/language/ko-KR.js +3 -0
  21. package/es/language/ms-MY.js +3 -0
  22. package/es/language/nb-NO.js +3 -0
  23. package/es/language/pt-BR.js +3 -0
  24. package/es/language/ru-RU.js +3 -0
  25. package/es/language/th-TH.js +3 -0
  26. package/es/language/ug-CN.js +3 -0
  27. package/es/language/uk-UA.js +3 -0
  28. package/es/language/uz-UZ.js +3 -0
  29. package/es/language/vi-VN.js +3 -0
  30. package/es/language/zh-CHT.js +3 -0
  31. package/es/language/zh-CN.js +4 -1
  32. package/es/print/src/print.js +24 -1
  33. package/es/print/src/util.js +8 -1
  34. package/es/style.css +1 -1
  35. package/es/style.min.css +1 -1
  36. package/es/tree/src/tree.js +69 -21
  37. package/es/ui/index.js +8 -3
  38. package/es/ui/src/log.js +1 -1
  39. package/es/vxe-context-menu/index.js +3 -0
  40. package/es/vxe-context-menu/style.css +112 -0
  41. package/es/vxe-context-menu/style.min.css +1 -0
  42. package/lib/backtop/src/backtop.js +0 -2
  43. package/lib/backtop/src/backtop.min.js +1 -1
  44. package/lib/button/src/button.js +12 -6
  45. package/lib/button/src/button.min.js +1 -1
  46. package/lib/components.js +13 -1
  47. package/lib/components.min.js +1 -1
  48. package/lib/context-menu/index.js +56 -0
  49. package/lib/context-menu/index.min.js +1 -0
  50. package/lib/context-menu/src/context-menu.js +362 -0
  51. package/lib/context-menu/src/context-menu.min.js +1 -0
  52. package/lib/context-menu/style/index.js +1 -0
  53. package/lib/context-menu/style/style.css +112 -0
  54. package/lib/context-menu/style/style.min.css +1 -0
  55. package/lib/dynamics/index.js +33 -3
  56. package/lib/dynamics/index.min.js +1 -1
  57. package/lib/icon/style/style.css +1 -1
  58. package/lib/icon/style/style.min.css +1 -1
  59. package/lib/index.umd.js +603 -40
  60. package/lib/index.umd.min.js +1 -1
  61. package/lib/language/ar-EG.js +3 -0
  62. package/lib/language/ar-EG.min.js +1 -1
  63. package/lib/language/ar-EG.umd.js +3 -0
  64. package/lib/language/de-DE.js +3 -0
  65. package/lib/language/de-DE.min.js +1 -1
  66. package/lib/language/de-DE.umd.js +3 -0
  67. package/lib/language/en-US.js +3 -0
  68. package/lib/language/en-US.min.js +1 -1
  69. package/lib/language/en-US.umd.js +3 -0
  70. package/lib/language/es-ES.js +3 -0
  71. package/lib/language/es-ES.min.js +1 -1
  72. package/lib/language/es-ES.umd.js +3 -0
  73. package/lib/language/fr-FR.js +3 -0
  74. package/lib/language/fr-FR.min.js +1 -1
  75. package/lib/language/fr-FR.umd.js +3 -0
  76. package/lib/language/hu-HU.js +3 -0
  77. package/lib/language/hu-HU.min.js +1 -1
  78. package/lib/language/hu-HU.umd.js +3 -0
  79. package/lib/language/hy-AM.js +4 -1
  80. package/lib/language/hy-AM.min.js +1 -1
  81. package/lib/language/hy-AM.umd.js +4 -1
  82. package/lib/language/id-ID.js +3 -0
  83. package/lib/language/id-ID.min.js +1 -1
  84. package/lib/language/id-ID.umd.js +3 -0
  85. package/lib/language/it-IT.js +3 -0
  86. package/lib/language/it-IT.min.js +1 -1
  87. package/lib/language/it-IT.umd.js +3 -0
  88. package/lib/language/ja-JP.js +3 -0
  89. package/lib/language/ja-JP.min.js +1 -1
  90. package/lib/language/ja-JP.umd.js +3 -0
  91. package/lib/language/ko-KR.js +3 -0
  92. package/lib/language/ko-KR.min.js +1 -1
  93. package/lib/language/ko-KR.umd.js +3 -0
  94. package/lib/language/ms-MY.js +3 -0
  95. package/lib/language/ms-MY.min.js +1 -1
  96. package/lib/language/ms-MY.umd.js +3 -0
  97. package/lib/language/nb-NO.js +3 -0
  98. package/lib/language/nb-NO.min.js +1 -1
  99. package/lib/language/nb-NO.umd.js +3 -0
  100. package/lib/language/pt-BR.js +3 -0
  101. package/lib/language/pt-BR.min.js +1 -1
  102. package/lib/language/pt-BR.umd.js +3 -0
  103. package/lib/language/ru-RU.js +3 -0
  104. package/lib/language/ru-RU.min.js +1 -1
  105. package/lib/language/ru-RU.umd.js +3 -0
  106. package/lib/language/th-TH.js +3 -0
  107. package/lib/language/th-TH.min.js +1 -1
  108. package/lib/language/th-TH.umd.js +3 -0
  109. package/lib/language/ug-CN.js +3 -0
  110. package/lib/language/ug-CN.min.js +1 -1
  111. package/lib/language/ug-CN.umd.js +3 -0
  112. package/lib/language/uk-UA.js +3 -0
  113. package/lib/language/uk-UA.min.js +1 -1
  114. package/lib/language/uk-UA.umd.js +3 -0
  115. package/lib/language/uz-UZ.js +3 -0
  116. package/lib/language/uz-UZ.min.js +1 -1
  117. package/lib/language/uz-UZ.umd.js +3 -0
  118. package/lib/language/vi-VN.js +3 -0
  119. package/lib/language/vi-VN.min.js +1 -1
  120. package/lib/language/vi-VN.umd.js +3 -0
  121. package/lib/language/zh-CHT.js +3 -0
  122. package/lib/language/zh-CHT.min.js +1 -1
  123. package/lib/language/zh-CHT.umd.js +3 -0
  124. package/lib/language/zh-CN.js +4 -1
  125. package/lib/language/zh-CN.min.js +1 -1
  126. package/lib/language/zh-CN.umd.js +4 -1
  127. package/lib/print/src/print.js +42 -1
  128. package/lib/print/src/print.min.js +1 -1
  129. package/lib/print/src/util.js +9 -2
  130. package/lib/print/src/util.min.js +1 -1
  131. package/lib/style.css +1 -1
  132. package/lib/style.min.css +1 -1
  133. package/lib/tree/src/tree.js +78 -20
  134. package/lib/tree/src/tree.min.js +1 -1
  135. package/lib/ui/index.js +8 -3
  136. package/lib/ui/index.min.js +1 -1
  137. package/lib/ui/src/log.js +1 -1
  138. package/lib/ui/src/log.min.js +1 -1
  139. package/lib/vxe-context-menu/index.js +22 -0
  140. package/lib/vxe-context-menu/index.min.js +1 -0
  141. package/lib/vxe-context-menu/style/index.js +1 -0
  142. package/lib/vxe-context-menu/style/style.css +112 -0
  143. package/lib/vxe-context-menu/style/style.min.css +1 -0
  144. package/package.json +1 -1
  145. package/packages/backtop/src/backtop.ts +1 -4
  146. package/packages/button/src/button.ts +22 -13
  147. package/packages/components.ts +3 -0
  148. package/packages/context-menu/index.ts +54 -0
  149. package/packages/context-menu/src/context-menu.ts +388 -0
  150. package/packages/dynamics/index.ts +36 -9
  151. package/packages/language/ar-EG.ts +3 -0
  152. package/packages/language/de-DE.ts +3 -0
  153. package/packages/language/en-US.ts +3 -0
  154. package/packages/language/es-ES.ts +3 -0
  155. package/packages/language/fr-FR.ts +3 -0
  156. package/packages/language/hu-HU.ts +3 -0
  157. package/packages/language/hy-AM.ts +4 -1
  158. package/packages/language/id-ID.ts +3 -0
  159. package/packages/language/it-IT.ts +3 -0
  160. package/packages/language/ja-JP.ts +3 -0
  161. package/packages/language/ko-KR.ts +3 -0
  162. package/packages/language/ms-MY.ts +3 -0
  163. package/packages/language/nb-NO.ts +3 -0
  164. package/packages/language/pt-BR.ts +3 -0
  165. package/packages/language/ru-RU.ts +3 -0
  166. package/packages/language/th-TH.ts +3 -0
  167. package/packages/language/ug-CN.ts +3 -0
  168. package/packages/language/uk-UA.ts +3 -0
  169. package/packages/language/uz-UZ.ts +3 -0
  170. package/packages/language/vi-VN.ts +3 -0
  171. package/packages/language/zh-CHT.ts +3 -0
  172. package/packages/language/zh-CN.ts +4 -1
  173. package/packages/print/src/print.ts +24 -1
  174. package/packages/print/src/util.ts +9 -1
  175. package/packages/tree/src/tree.ts +73 -22
  176. package/packages/ui/index.ts +8 -2
  177. package/styles/all.scss +1 -0
  178. package/styles/components/backtop.scss +1 -1
  179. package/styles/components/context-menu.scss +113 -0
  180. package/styles/theme/base.scss +3 -0
  181. package/types/all.d.ts +3 -0
  182. package/types/components/button.d.ts +3 -1
  183. package/types/components/context-menu.d.ts +286 -0
  184. package/types/components/password-input.d.ts +2 -0
  185. package/types/components/print.d.ts +8 -0
  186. package/types/components/table.d.ts +8 -0
  187. package/types/components/tree.d.ts +46 -1
  188. package/types/ui/global-config.d.ts +2 -0
  189. package/types/ui/global-icon.d.ts +4 -0
  190. package/types/ui/index.d.ts +3 -0
  191. /package/es/icon/{iconfont.1767491587367.ttf → iconfont.1767614230277.ttf} +0 -0
  192. /package/es/icon/{iconfont.1767491587367.woff → iconfont.1767614230277.woff} +0 -0
  193. /package/es/icon/{iconfont.1767491587367.woff2 → iconfont.1767614230277.woff2} +0 -0
  194. /package/es/{iconfont.1767491587367.ttf → iconfont.1767614230277.ttf} +0 -0
  195. /package/es/{iconfont.1767491587367.woff → iconfont.1767614230277.woff} +0 -0
  196. /package/es/{iconfont.1767491587367.woff2 → iconfont.1767614230277.woff2} +0 -0
  197. /package/lib/icon/style/{iconfont.1767491587367.ttf → iconfont.1767614230277.ttf} +0 -0
  198. /package/lib/icon/style/{iconfont.1767491587367.woff → iconfont.1767614230277.woff} +0 -0
  199. /package/lib/icon/style/{iconfont.1767491587367.woff2 → iconfont.1767614230277.woff2} +0 -0
  200. /package/lib/{iconfont.1767491587367.ttf → iconfont.1767614230277.ttf} +0 -0
  201. /package/lib/{iconfont.1767491587367.woff → iconfont.1767614230277.woff} +0 -0
  202. /package/lib/{iconfont.1767491587367.woff2 → iconfont.1767614230277.woff2} +0 -0
@@ -79,6 +79,7 @@ export namespace VxeButtonPropTypes {
79
79
  export type PrefixTooltip = VxeTooltipDefines.TooltipHelperOption
80
80
  export type SuffixTooltip = VxeTooltipDefines.TooltipHelperOption
81
81
 
82
+ export type ShowDropdownIcon = boolean
82
83
  export type DestroyOnClose = boolean
83
84
  export type Transfer = boolean
84
85
  }
@@ -159,6 +160,7 @@ export interface VxeButtonProps {
159
160
 
160
161
  prefixTooltip?: VxeButtonPropTypes.PrefixTooltip
161
162
  suffixTooltip?: VxeButtonPropTypes.SuffixTooltip
163
+ showDropdownIcon?: VxeButtonPropTypes.ShowDropdownIcon
162
164
  /**
163
165
  * 在下拉面板关闭时销毁内容
164
166
  */
@@ -223,7 +225,7 @@ export namespace VxeButtonDefines {
223
225
 
224
226
  export interface ClickParams { }
225
227
  export interface ClickEventParams extends ButtonEventParams, ClickParams {
226
- $event: KeyboardEvent
228
+ $event: MouseEvent
227
229
  }
228
230
 
229
231
  export interface MouseenterParams { }
@@ -0,0 +1,286 @@
1
+ import { RenderFunction, SetupContext, Ref } from 'vue'
2
+ import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, ValueOf, VxeComponentSlotType, VxeComponentSizeType } from '@vxe-ui/core'
3
+
4
+ /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
5
+
6
+ export declare const VxeContextMenu: DefineVxeComponentApp<VxeContextMenuProps, VxeContextMenuEventProps, VxeContextMenuSlots, VxeContextMenuMethods>
7
+ export type VxeContextMenuComponent = DefineVxeComponentOptions<VxeContextMenuProps, VxeContextMenuEventProps>
8
+
9
+ export type VxeContextMenuInstance = DefineVxeComponentInstance<VxeContextMenuProps, VxeContextMenuConstructor>
10
+
11
+ export interface VxeContextMenuConstructor extends VxeComponentBaseOptions, VxeContextMenuMethods {
12
+ props: VxeContextMenuProps
13
+ context: SetupContext<VxeContextMenuEmits>
14
+ internalData: ContextMenuInternalData
15
+ reactData: ContextMenuReactData
16
+ getRefMaps(): ContextMenuPrivateRef
17
+ getComputeMaps(): ContextMenuPrivateComputed
18
+ renderVN: RenderFunction
19
+ }
20
+
21
+ export interface ContextMenuPrivateRef {
22
+ refElem: Ref<HTMLDivElement | undefined>
23
+ }
24
+ export interface VxeContextMenuPrivateRef extends ContextMenuPrivateRef { }
25
+
26
+ export namespace VxeContextMenuPropTypes {
27
+ export type ModelValue = boolean
28
+ export type X = string | number
29
+ export type Y = string | number
30
+ export type ClassName = string
31
+ export type Size = VxeComponentSizeType
32
+ export type Options = VxeContextMenuDefines.MenuFirstOption[][]
33
+ export type Position = null | '' | 'absolute' | 'fixed'
34
+ export type ZIndex = string | number
35
+ export type DestroyOnClose = boolean
36
+ export type Transfer = boolean
37
+ }
38
+
39
+ export type VxeContextMenuProps = {
40
+ modelValue?: VxeContextMenuPropTypes.ModelValue
41
+ x?: VxeContextMenuPropTypes.X
42
+ y?: VxeContextMenuPropTypes.Y
43
+ className?: VxeContextMenuPropTypes.ClassName
44
+ size?: VxeContextMenuPropTypes.Size
45
+ options?: VxeContextMenuPropTypes.Options
46
+ position?: VxeContextMenuPropTypes.Position
47
+ zIndex?: VxeContextMenuPropTypes.ZIndex
48
+ destroyOnClose?: VxeContextMenuPropTypes.DestroyOnClose
49
+ transfer?: VxeContextMenuPropTypes.Transfer
50
+ }
51
+
52
+ export interface ContextMenuPrivateComputed {
53
+ }
54
+ export interface VxeContextMenuPrivateComputed extends ContextMenuPrivateComputed { }
55
+
56
+ export interface ContextMenuInternalData {
57
+ }
58
+
59
+ export interface ContextMenuReactData {
60
+ visible: boolean
61
+ activeOption: any
62
+ activeChildOption: any
63
+ popupStyle: {
64
+ top: string
65
+ left: string
66
+ zIndex: number
67
+ }
68
+ childPos: '' | 'left' | 'right'
69
+ }
70
+
71
+ export interface ContextMenuMethods {
72
+ dispatchEvent(type: ValueOf<VxeContextMenuEmits>, params: Record<string, any>, evnt: Event | null): void
73
+ open(): Promise<void>
74
+ close(): Promise<void>
75
+ }
76
+ export interface VxeContextMenuMethods extends ContextMenuMethods { }
77
+
78
+ export interface ContextMenuPrivateMethods { }
79
+ export interface VxeContextMenuPrivateMethods extends ContextMenuPrivateMethods { }
80
+
81
+ export type VxeContextMenuEmits = [
82
+ 'update:modelValue',
83
+ 'option-click',
84
+ 'change',
85
+ 'show',
86
+ 'hide'
87
+ ]
88
+
89
+ export namespace VxeContextMenuDefines {
90
+ export type ContextMenuOpenOptions = Pick<VxeContextMenuProps, 'options' | 'x' | 'y' | 'className' | 'size' | 'zIndex'> & {
91
+ events?: VxeContextMenuListeners
92
+ }
93
+ export type ContextMenuEventOpenOptions = Omit<ContextMenuOpenOptions, 'x' | 'y'>
94
+
95
+ export interface MenuFirstOption {
96
+ /**
97
+ * 菜单唯一编码
98
+ */
99
+ code?: string
100
+ /**
101
+ * 菜单名称
102
+ */
103
+ name?: string
104
+ /**
105
+ * 前缀配置项
106
+ */
107
+ prefixConfig?: {
108
+ icon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
109
+ content?: string
110
+ className?: string
111
+ }
112
+ /**
113
+ * 前缀图标 prefixConfig.icon 的简写
114
+ */
115
+ prefixIcon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
116
+ /**
117
+ * 后缀配置项
118
+ */
119
+ suffixConfig?: {
120
+ icon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
121
+ content?: string
122
+ className?: string
123
+ }
124
+ /**
125
+ * 后缀图标 suffixConfig.icon 的简写
126
+ */
127
+ suffixIcon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
128
+ className?: string
129
+ /**
130
+ * 是否加载中
131
+ */
132
+ loading?: boolean
133
+ /**
134
+ * 是否显示
135
+ */
136
+ visible?: boolean
137
+ /**
138
+ * 是否禁用
139
+ */
140
+ disabled?: boolean
141
+ /**
142
+ * 二级菜单列表
143
+ */
144
+ children?: MenuChildOption[]
145
+ params?: any
146
+ /**
147
+ * 自定义插槽模板
148
+ */
149
+ slots?: {
150
+ content?: string | ((params: VxeContextMenuSlotTypes.ContentSlotParams) => VxeComponentSlotType | VxeComponentSlotType[])
151
+ }
152
+ [key: string]: any
153
+ }
154
+ export interface MenuChildOption {
155
+ /**
156
+ * 菜单唯一编码
157
+ */
158
+ code?: string
159
+ /**
160
+ * 菜单名称
161
+ */
162
+ name?: string
163
+ /**
164
+ * 前缀配置项
165
+ */
166
+ prefixConfig?: {
167
+ icon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
168
+ content?: string
169
+ className?: string
170
+ }
171
+ /**
172
+ * 前缀图标 prefixConfig.icon 的简写
173
+ */
174
+ prefixIcon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
175
+ /**
176
+ * 后缀配置项
177
+ */
178
+ suffixConfig?: {
179
+ icon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
180
+ content?: string
181
+ className?: string
182
+ }
183
+ /**
184
+ * 后缀图标 suffixConfig.icon 的简写
185
+ */
186
+ suffixIcon?: string | ((params: {}) => VxeComponentSlotType[] | VxeComponentSlotType)
187
+ className?: string
188
+ /**
189
+ * 是否加载中
190
+ */
191
+ loading?: boolean
192
+ /**
193
+ * 是否显示
194
+ */
195
+ visible?: boolean
196
+ /**
197
+ * 是否禁用
198
+ */
199
+ disabled?: boolean
200
+ params?: any
201
+ /**
202
+ * 自定义插槽模板
203
+ */
204
+ slots?: {
205
+ content?: string | ((params: VxeContextMenuSlotTypes.ContentSlotParams) => VxeComponentSlotType | VxeComponentSlotType[])
206
+ }
207
+ [key: string]: any
208
+ }
209
+
210
+ export interface ContextMenuEventParams extends VxeComponentEventParams {
211
+ $contextMenu: VxeContextMenuConstructor
212
+ }
213
+
214
+ export interface ChangeEventParams extends ContextMenuEventParams {
215
+ value: boolean
216
+ }
217
+
218
+ export interface OptionClickEventParams extends ContextMenuEventParams {
219
+ option: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
220
+ }
221
+
222
+ export interface ShowEventParams extends ContextMenuEventParams {
223
+ visible: boolean
224
+ }
225
+ export interface HideEventParams extends ShowEventParams {}
226
+ }
227
+
228
+ export type VxeContextMenuEventProps = {
229
+ 'onUpdate:modelValue'?: VxeContextMenuEvents.UpdateModelValue
230
+ onChange?: VxeContextMenuEvents.Change
231
+ onOptionClick?: VxeContextMenuEvents.OptionClick
232
+ onShow?: VxeContextMenuEvents.Show
233
+ onHide?: VxeContextMenuEvents.Hide
234
+ }
235
+
236
+ export interface VxeContextMenuListeners {
237
+ 'update:modelValue'?: VxeContextMenuEvents.UpdateModelValue
238
+ change?: VxeContextMenuEvents.Change
239
+ optionClick?: VxeContextMenuEvents.OptionClick
240
+ show?: VxeContextMenuEvents.Show
241
+ hide?: VxeContextMenuEvents.Hide
242
+ }
243
+
244
+ export namespace VxeContextMenuEvents {
245
+ export type UpdateModelValue = (modelValue: VxeContextMenuPropTypes.ModelValue) => void
246
+ export type Change = (params: VxeContextMenuDefines.ChangeEventParams) => void
247
+ export type OptionClick = (params: VxeContextMenuDefines.OptionClickEventParams) => void
248
+ export type Show = (params: VxeContextMenuDefines.ShowEventParams) => void
249
+ export type Hide = (params: VxeContextMenuDefines.HideEventParams) => void
250
+ }
251
+
252
+ export namespace VxeContextMenuSlotTypes {
253
+ export interface DefaultSlotParams {}
254
+
255
+ export interface ContentSlotParams {
256
+ option: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
257
+ }
258
+ }
259
+
260
+ export interface VxeContextMenuSlots {
261
+ [key: string]: ((params: VxeContextMenuSlotTypes.DefaultSlotParams) => any) | undefined
262
+ }
263
+
264
+ /**
265
+ * 全局右键菜单
266
+ */
267
+ export interface ContextMenuController {
268
+ /**
269
+ * 通过传 x,y 坐标打开
270
+ * @param options 参数
271
+ */
272
+ open(options: VxeContextMenuDefines.ContextMenuOpenOptions): void
273
+ /**
274
+ * 通过事件打开
275
+ * @param evnt 事件
276
+ * @param options 参数
277
+ */
278
+ openByEvent(evnt: MouseEvent, options: VxeContextMenuDefines.ContextMenuEventOpenOptions): void
279
+ /**
280
+ * 关闭
281
+ */
282
+ close(): void
283
+ }
284
+
285
+ export const ContextMenu: typeof VxeContextMenu
286
+ export default VxeContextMenu
@@ -134,6 +134,8 @@ export namespace VxePasswordInputSlotTypes {
134
134
 
135
135
  export interface VxePasswordInputSlots {
136
136
  default?: (params: VxePasswordInputSlotTypes.DefaultSlotParams) => any
137
+ prefix: (params: VxePasswordInputSlotTypes.DefaultSlotParams) => any
138
+ suffix: (params: VxePasswordInputSlotTypes.DefaultSlotParams) => any
137
139
  }
138
140
 
139
141
  export const PasswordInput: typeof VxePasswordInput
@@ -61,6 +61,7 @@ export namespace VxePrintPropTypes {
61
61
  }
62
62
  }
63
63
  export type CustomStyle = string
64
+ export type StyleUrls = string[]
64
65
  export type ShowAllPageTitle = boolean
65
66
  export type HeaderHtml = string | ((params: VxePrintDefines.PageBreakParams) => string)
66
67
  export type FooterHtml = string | ((params: VxePrintDefines.PageBreakParams) => string)
@@ -87,7 +88,14 @@ export interface VxePrintProps {
87
88
  showPageNumber?: VxePrintPropTypes.ShowPageNumber
88
89
  footerAlign?: VxePrintPropTypes.FooterAlign
89
90
  pageStyle?: VxePrintPropTypes.PageStyle
91
+ /**
92
+ * 自定义 css 规则
93
+ */
90
94
  customStyle?: VxePrintPropTypes.CustomStyle
95
+ /**
96
+ * 引入 css 文件的 url
97
+ */
98
+ styleUrls?: VxePrintPropTypes.StyleUrls
91
99
  headerHtml?: VxePrintPropTypes.HeaderHtml
92
100
  footerHtml?: VxePrintPropTypes.FooterHtml
93
101
  leftHtml?: VxePrintPropTypes.LeftHtml
@@ -5186,6 +5186,14 @@ export interface TablePrivateMethods<D = any> {
5186
5186
  * @private
5187
5187
  */
5188
5188
  triggerCellDblclickEvent(evnt: MouseEvent, params: VxeTableDefines.CellRenderBodyParams<any>): void
5189
+ /**
5190
+ * @private
5191
+ */
5192
+ triggerFooterCellClickEvent(evnt: MouseEvent, params: VxeTableDefines.CellRenderFooterParams<any>): void
5193
+ /**
5194
+ * @private
5195
+ */
5196
+ triggerFooterCellDblclickEvent(evnt: MouseEvent, params: VxeTableDefines.CellRenderFooterParams<any>): void
5189
5197
  /**
5190
5198
  * @private
5191
5199
  */
@@ -1,5 +1,6 @@
1
1
  import { RenderFunction, SetupContext, Ref, ComputedRef } from 'vue'
2
2
  import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, VxeComponentSizeType, ValueOf } from '@vxe-ui/core'
3
+ import { VxeContextMenuPropTypes, VxeContextMenuDefines } from './context-menu'
3
4
 
4
5
  /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
5
6
 
@@ -200,6 +201,25 @@ export namespace VxeTreePropTypes {
200
201
  dragToChildMethod?(params: Omit<VxeTreeDefines.NodeDragToChildMethod<D>, '_index'>): boolean
201
202
  }
202
203
 
204
+ export interface MenuConfig<D = any> {
205
+ /**
206
+ * 是否启用
207
+ */
208
+ enabled?: boolean
209
+ /**
210
+ * 菜单配置
211
+ */
212
+ options: VxeContextMenuPropTypes.Options
213
+ /**
214
+ * 该函数的返回值用来决定是否允许显示右键菜单(对于需要对菜单进行权限控制时可能会用到)
215
+ */
216
+ visibleMethod?(params: {
217
+ $tree: VxeTreeConstructor
218
+ options: VxeContextMenuPropTypes.Options
219
+ node: D
220
+ }): boolean
221
+ }
222
+
203
223
  /**
204
224
  * 根据指定值来筛选数据
205
225
  */
@@ -294,6 +314,7 @@ export interface VxeTreeProps<D = any> {
294
314
  checkNodeKeys?: VxeTreePropTypes.CheckNodeKeys
295
315
  checkboxConfig?: VxeTreePropTypes.CheckboxConfig<D>
296
316
  nodeConfig?: VxeTreePropTypes.NodeConfig<D>
317
+ menuConfig?: VxeTreePropTypes.MenuConfig<D>
297
318
  filterValue?: VxeTreePropTypes.FilterValue
298
319
  filterConfig?: VxeTreePropTypes.FilterConfig
299
320
  lazy?: VxeTreePropTypes.Lazy
@@ -633,7 +654,10 @@ export type VxeTreeEmits = [
633
654
  'scroll',
634
655
  'node-dragstart',
635
656
  'node-dragover',
636
- 'node-dragend'
657
+ 'node-dragend',
658
+ 'node-expand',
659
+ 'node-menu',
660
+ 'menu-click'
637
661
  ]
638
662
 
639
663
  export namespace VxeTreeDefines {
@@ -712,6 +736,18 @@ export namespace VxeTreeDefines {
712
736
  export interface LoadErrorEventParams<D = any> extends TreeEventParams<D> {
713
737
  node: D
714
738
  }
739
+
740
+ export interface NodeExpandEventParams<D = any> extends NodeClickEventParams<D> {
741
+ expanded: boolean
742
+ }
743
+
744
+ export interface NodeMenuEventParams<D = any> extends TreeEventParams<D> {
745
+ node: D
746
+ }
747
+ export interface MenuClickEventParams<D = any> extends TreeEventParams<D> {
748
+ node: D
749
+ option: VxeContextMenuDefines.MenuFirstOption | VxeContextMenuDefines.MenuChildOption
750
+ }
715
751
  }
716
752
 
717
753
  export type VxeTreeEventProps<D = any> = {
@@ -725,6 +761,9 @@ export type VxeTreeEventProps<D = any> = {
725
761
  onNodeDragstart?: VxeTreeEvents.NodeDragstart<D>
726
762
  onNodeDragover?: VxeTreeEvents.NodeDragover<D>
727
763
  onNodeDragend?: VxeTreeEvents.NodeDragend<D>
764
+ onNodeExpand?: VxeTreeEvents.NodeExpand<D>
765
+ onNodeMenu?: VxeTreeEvents.NodeMenu<D>
766
+ onMenuClick?: VxeTreeEvents.MenuClick<D>
728
767
  }
729
768
 
730
769
  export interface VxeTreeListeners<D = any> {
@@ -738,6 +777,9 @@ export interface VxeTreeListeners<D = any> {
738
777
  nodeDragstart?: VxeTreeEvents.NodeDragstart<D>
739
778
  nodeDragover?: VxeTreeEvents.NodeDragover<D>
740
779
  nodeDragend?: VxeTreeEvents.NodeDragend<D>
780
+ nodeExpand?: VxeTreeEvents.NodeExpand<D>
781
+ nodeMenu?: VxeTreeEvents.NodeMenu<D>
782
+ menuClick?: VxeTreeEvents.MenuClick<D>
741
783
  }
742
784
 
743
785
  export namespace VxeTreeEvents {
@@ -751,6 +793,9 @@ export namespace VxeTreeEvents {
751
793
  export type NodeDragstart<D = any> = (params: VxeTreeDefines.NodeDragstartEventParams<D>) => void
752
794
  export type NodeDragover<D = any> = (params: VxeTreeDefines.NodeDragoverEventParams<D>) => void
753
795
  export type NodeDragend<D = any> = (params: VxeTreeDefines.NodeDragendEventParams<D>) => void
796
+ export type NodeExpand<D = any> = (params: VxeTreeDefines.NodeExpandEventParams<D>) => void
797
+ export type NodeMenu<D = any> = (params: VxeTreeDefines.NodeMenuEventParams<D>) => void
798
+ export type MenuClick<D = any> = (params: VxeTreeDefines.MenuClickEventParams<D>) => void
754
799
  }
755
800
 
756
801
  export namespace VxeTreeSlotTypes {
@@ -21,6 +21,7 @@ import { VxeColProps } from '../components/col'
21
21
  import { VxeCollapseProps } from '../components/collapse'
22
22
  import { VxeCollapsePaneProps } from '../components/collapse-pane'
23
23
  import { VxeColorPickerProps } from '../components/color-picker'
24
+ import { VxeContextMenuProps } from '../components/context-menu'
24
25
  import { VxeCountdownProps } from '../components/countdown'
25
26
  import { VxeDatePanelProps } from '../components/date-panel'
26
27
  import { VxeDatePickerProps } from '../components/date-picker'
@@ -131,6 +132,7 @@ declare module '@vxe-ui/core' {
131
132
  collapse?: VxeCollapseProps
132
133
  collapsePane?: VxeCollapsePaneProps
133
134
  colorPicker?: VxeColorPickerProps
135
+ contextMenu?: VxeContextMenuProps
134
136
  countdown?: VxeCountdownProps
135
137
  datePanel?: VxeDatePanelProps
136
138
  datePicker?: VxeDatePickerProps
@@ -284,5 +284,9 @@ declare module '@vxe-ui/core' {
284
284
 
285
285
  // backtop
286
286
  BACKTOP_TOP?: string
287
+
288
+ // context-menu
289
+ CONTEXT_MENU_OPTION_LOADING?: string
290
+ CONTEXT_MENU_CHILDREN?: string
287
291
  }
288
292
  }
@@ -4,6 +4,7 @@ import { LoadingController } from '../components/loading'
4
4
  import { ModalController } from '../components/modal'
5
5
  import { DrawerController } from '../components/drawer'
6
6
  import { WatermarkController } from '../components/watermark'
7
+ import { ContextMenuController } from '../components/context-menu'
7
8
  import { VxePrintDefines } from '../components/print'
8
9
  import { VxeUploadDefines } from '../components/upload'
9
10
  import { VxeImageDefines } from '../components/image'
@@ -25,6 +26,7 @@ export const loading: LoadingController
25
26
  export const modal: ModalController
26
27
  export const drawer: DrawerController
27
28
  export const watermark: WatermarkController
29
+ export const contextMenu: ContextMenuController
28
30
  export const print: VxePrintDefines.PrintFunction
29
31
  export const saveFile: VxeUploadDefines.SaveFileFunction
30
32
  export const readFile: VxeUploadDefines.ReadFileFunction
@@ -35,6 +37,7 @@ declare module '@vxe-ui/core' {
35
37
  modal: ModalController
36
38
  drawer: DrawerController
37
39
  watermark: WatermarkController
40
+ contextMenu: ContextMenuController
38
41
  dynamicApp: App<Element>
39
42
 
40
43
  formDesignHandle: FormDesignHandleExport