vxe-table 3.20.7 → 3.20.9

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 (144) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +106 -106
  3. package/es/index.esm.js +2 -1
  4. package/es/style.css +1 -1
  5. package/es/table/src/methods.js +81 -84
  6. package/es/table/src/table.js +20 -1
  7. package/es/table/src/util.js +6 -0
  8. package/es/table/style.css +18 -48
  9. package/es/ui/index.js +1 -1
  10. package/es/ui/src/dom.js +19 -20
  11. package/es/ui/src/log.js +1 -1
  12. package/es/vxe-table/style.css +18 -48
  13. package/lib/index.common.js +2 -1
  14. package/lib/index.umd.js +1985 -3291
  15. package/lib/index.umd.min.js +1 -1
  16. package/lib/style.css +1 -1
  17. package/lib/table/src/methods.js +17 -15
  18. package/lib/table/src/methods.min.js +1 -1
  19. package/lib/table/src/table.js +19 -1
  20. package/lib/table/src/table.min.js +1 -1
  21. package/lib/table/src/util.js +6 -0
  22. package/lib/table/src/util.min.js +1 -1
  23. package/lib/table/style/style.css +18 -48
  24. package/lib/ui/index.js +1 -1
  25. package/lib/ui/index.min.js +1 -1
  26. package/lib/ui/src/dom.js +21 -20
  27. package/lib/ui/src/dom.min.js +1 -1
  28. package/lib/ui/src/log.js +1 -1
  29. package/lib/ui/src/log.min.js +1 -1
  30. package/lib/v-x-e-table/index.js +2 -1
  31. package/lib/v-x-e-table/index.min.js +1 -1
  32. package/lib/vxe-colgroup/index.js +2 -1
  33. package/lib/vxe-colgroup/index.min.js +1 -1
  34. package/lib/vxe-column/index.js +2 -1
  35. package/lib/vxe-column/index.min.js +1 -1
  36. package/lib/vxe-grid/index.js +2 -1
  37. package/lib/vxe-grid/index.min.js +1 -1
  38. package/lib/vxe-table/index.js +2 -1
  39. package/lib/vxe-table/index.min.js +1 -1
  40. package/lib/vxe-table/style/style.css +18 -48
  41. package/lib/vxe-toolbar/index.js +2 -1
  42. package/lib/vxe-toolbar/index.min.js +1 -1
  43. package/lib/vxe-ui/index.js +2 -1
  44. package/lib/vxe-ui/index.min.js +1 -1
  45. package/lib/vxe-v-x-e-table/index.js +2 -1
  46. package/lib/vxe-v-x-e-table/index.min.js +1 -1
  47. package/package.json +93 -93
  48. package/packages/colgroup/index.ts +22 -22
  49. package/packages/column/index.ts +22 -22
  50. package/packages/components.ts +42 -42
  51. package/packages/grid/index.ts +22 -22
  52. package/packages/grid/src/grid.ts +1935 -1935
  53. package/packages/index.ts +4 -4
  54. package/packages/locale/lang/ar-EG.ts +832 -832
  55. package/packages/locale/lang/de-DE.ts +832 -832
  56. package/packages/locale/lang/en-US.ts +832 -832
  57. package/packages/locale/lang/es-ES.ts +832 -832
  58. package/packages/locale/lang/fr-FR.ts +832 -832
  59. package/packages/locale/lang/hu-HU.ts +832 -832
  60. package/packages/locale/lang/hy-AM.ts +832 -832
  61. package/packages/locale/lang/id-ID.ts +832 -832
  62. package/packages/locale/lang/it-IT.ts +832 -832
  63. package/packages/locale/lang/ja-JP.ts +832 -832
  64. package/packages/locale/lang/ko-KR.ts +832 -832
  65. package/packages/locale/lang/ms-MY.ts +832 -832
  66. package/packages/locale/lang/nb-NO.ts +832 -832
  67. package/packages/locale/lang/pt-BR.ts +832 -832
  68. package/packages/locale/lang/ru-RU.ts +832 -832
  69. package/packages/locale/lang/th-TH.ts +832 -832
  70. package/packages/locale/lang/ug-CN.ts +832 -832
  71. package/packages/locale/lang/uk-UA.ts +832 -832
  72. package/packages/locale/lang/uz-UZ.ts +832 -832
  73. package/packages/locale/lang/vi-VN.ts +832 -832
  74. package/packages/locale/lang/zh-CHT.ts +832 -832
  75. package/packages/locale/lang/zh-CN.ts +832 -832
  76. package/packages/locale/lang/zh-HK.ts +3 -3
  77. package/packages/locale/lang/zh-MO.ts +3 -3
  78. package/packages/locale/lang/zh-TC.ts +3 -3
  79. package/packages/locale/lang/zh-TW.ts +3 -3
  80. package/packages/table/index.ts +49 -49
  81. package/packages/table/module/custom/mixin.ts +369 -369
  82. package/packages/table/module/custom/panel.ts +1461 -1461
  83. package/packages/table/module/edit/mixin.ts +1123 -1123
  84. package/packages/table/module/export/export-panel.ts +658 -658
  85. package/packages/table/module/export/import-panel.ts +319 -319
  86. package/packages/table/module/export/mixin.ts +1693 -1693
  87. package/packages/table/module/export/util.ts +24 -24
  88. package/packages/table/module/filter/mixin.ts +507 -507
  89. package/packages/table/module/filter/panel.ts +329 -329
  90. package/packages/table/module/keyboard/mixin.ts +513 -513
  91. package/packages/table/module/menu/mixin.ts +329 -329
  92. package/packages/table/module/menu/panel.ts +212 -212
  93. package/packages/table/module/validator/mixin.ts +626 -626
  94. package/packages/table/render/index.ts +1456 -1456
  95. package/packages/table/src/body.ts +969 -969
  96. package/packages/table/src/cell.ts +1285 -1285
  97. package/packages/table/src/column.ts +205 -205
  98. package/packages/table/src/columnInfo.ts +228 -228
  99. package/packages/table/src/footer.ts +388 -388
  100. package/packages/table/src/group.ts +51 -51
  101. package/packages/table/src/header.ts +602 -602
  102. package/packages/table/src/methods.ts +12936 -12939
  103. package/packages/table/src/props.ts +311 -311
  104. package/packages/table/src/store.ts +15 -15
  105. package/packages/table/src/table.ts +2523 -2505
  106. package/packages/table/src/util.ts +1018 -1012
  107. package/packages/toolbar/index.ts +18 -18
  108. package/packages/toolbar/src/toolbar.ts +856 -856
  109. package/packages/ui/index.ts +530 -530
  110. package/packages/ui/src/anime.ts +52 -52
  111. package/packages/ui/src/comp.ts +3 -3
  112. package/packages/ui/src/dom.ts +237 -236
  113. package/packages/ui/src/log.ts +8 -8
  114. package/packages/ui/src/utils.ts +56 -56
  115. package/packages/ui/src/vn.ts +65 -65
  116. package/packages/v-x-e-table/index.ts +4 -4
  117. package/styles/all.scss +7 -7
  118. package/styles/base.scss +16 -16
  119. package/styles/components/grid.scss +89 -89
  120. package/styles/components/icon.scss +225 -225
  121. package/styles/components/old-icon.scss +715 -715
  122. package/styles/components/table-module/all.scss +6 -6
  123. package/styles/components/table-module/custom.scss +527 -527
  124. package/styles/components/table-module/export.scss +130 -130
  125. package/styles/components/table-module/filter.scss +130 -130
  126. package/styles/components/table-module/menu.scss +81 -81
  127. package/styles/components/table.scss +2679 -2679
  128. package/styles/components/toolbar.scss +119 -119
  129. package/styles/default.scss +2 -2
  130. package/styles/helpers/baseMixin.scss +95 -95
  131. package/styles/index.scss +3 -3
  132. package/styles/modules.scss +5 -5
  133. package/styles/theme/base.scss +93 -93
  134. package/styles/theme/dark.scss +49 -49
  135. package/styles/theme/light.scss +44 -44
  136. package/styles/variable.scss +43 -43
  137. package/types/all.d.ts +53 -53
  138. package/types/index.d.ts +4 -4
  139. /package/es/{iconfont.1773991883171.ttf → iconfont.1774420912543.ttf} +0 -0
  140. /package/es/{iconfont.1773991883171.woff → iconfont.1774420912543.woff} +0 -0
  141. /package/es/{iconfont.1773991883171.woff2 → iconfont.1774420912543.woff2} +0 -0
  142. /package/lib/{iconfont.1773991883171.ttf → iconfont.1774420912543.ttf} +0 -0
  143. /package/lib/{iconfont.1773991883171.woff → iconfont.1774420912543.woff} +0 -0
  144. /package/lib/{iconfont.1773991883171.woff2 → iconfont.1774420912543.woff2} +0 -0
@@ -1,212 +1,212 @@
1
- import { CreateElement } from 'vue'
2
- import { defineVxeComponent } from '../../../ui/src/comp'
3
- import { VxeUI } from '../../../ui'
4
- import XEUtils from 'xe-utils'
5
- import { getFuncText } from '../../../ui/src/utils'
6
- import { getSlotVNs } from '../../../ui/src/vn'
7
-
8
- import type { VxeTableConstructor, VxeTablePrivateMethods, TableReactData } from '../../../../types'
9
-
10
- const { getIcon, getI18n, renderEmptyElement } = VxeUI
11
-
12
- export default /* define-vxe-component start */ defineVxeComponent({
13
- name: 'VxeTableMenuPanel',
14
- inject: {
15
- $xeTable: {
16
- default: null
17
- }
18
- },
19
- computed: {
20
- ...({} as {
21
- $xeTable(): VxeTableConstructor & VxeTablePrivateMethods
22
- })
23
- },
24
- mounted () {
25
- const $xeMenuPanel = this
26
- const $xeTable = $xeMenuPanel.$xeTable
27
- const menuOpts = $xeTable.computeMenuOpts
28
- const { transfer } = menuOpts
29
- const el = $xeMenuPanel.$refs.refElem as HTMLDivElement
30
-
31
- if (transfer && el) {
32
- document.body.appendChild(el)
33
- }
34
- },
35
- beforeDestroy () {
36
- const $xeMenuPanel = this
37
- const el = $xeMenuPanel.$refs.refElem as HTMLDivElement
38
-
39
- if (el && el.parentNode) {
40
- el.parentNode.removeChild(el)
41
- }
42
- },
43
- methods: {
44
- renderVN (h: CreateElement) {
45
- const $xeMenuPanel = this
46
- const $xeTable = $xeMenuPanel.$xeTable
47
- const tableReactData = $xeTable as unknown as TableReactData
48
-
49
- const { ctxMenuStore } = tableReactData
50
- const menuOpts = $xeTable.computeMenuOpts
51
- const { destroyOnClose } = menuOpts
52
- const { visible, list, className } = ctxMenuStore
53
- return h('div', {
54
- ref: 'refElem',
55
- class: ['vxe-table--context-menu-wrapper', className, {
56
- 'is--visible': visible
57
- }],
58
- style: ctxMenuStore.style
59
- }, (destroyOnClose ? visible : true)
60
- ? list.map((options, gIndex) => {
61
- return options.every((item) => item.visible === false)
62
- ? renderEmptyElement($xeTable)
63
- : h('ul', {
64
- class: 'vxe-context-menu--option-wrapper',
65
- key: gIndex
66
- }, options.map((item, index) => {
67
- const { children, loading } = item
68
- const hasChildMenus = children && children.some((child) => child.visible !== false)
69
- const prefixOpts = Object.assign({}, item.prefixConfig)
70
- const prefixIcon = prefixOpts.icon || item.prefixIcon
71
- const suffixOpts = Object.assign({}, item.suffixConfig)
72
- const suffixIcon = suffixOpts.icon || item.suffixIcon
73
- const menuContent = getFuncText(item.name)
74
- return item.visible === false
75
- ? renderEmptyElement($xeTable)
76
- : h('li', {
77
- class: [item.className, {
78
- 'link--loading': loading,
79
- 'link--disabled': item.disabled,
80
- 'link--active': item === ctxMenuStore.selected
81
- }],
82
- key: `${gIndex}_${index}`
83
- }, [
84
- h('a', {
85
- class: 'vxe-context-menu--link',
86
- on: {
87
- click (evnt: Event) {
88
- $xeTable.ctxMenuLinkEvent(evnt, item)
89
- },
90
- mouseover (evnt: Event) {
91
- $xeTable.ctxMenuMouseoverEvent(evnt, item)
92
- },
93
- mouseout (evnt: Event) {
94
- $xeTable.ctxMenuMouseoutEvent(evnt, item)
95
- }
96
- }
97
- }, [
98
- h('div', {
99
- class: ['vxe-context-menu--link-prefix', prefixOpts.className || '']
100
- }, [
101
- loading
102
- ? h('span', {
103
- class: getIcon('TABLE_MENU_OPTION_LOADING')
104
- })
105
- : (prefixIcon && XEUtils.isFunction(prefixIcon)
106
- ? h('span', {}, getSlotVNs(prefixIcon.call($xeTable, {})))
107
- : h('span', {}, [
108
- h('i', {
109
- class: prefixIcon
110
- })
111
- ])),
112
- prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) : renderEmptyElement($xeTable)
113
- ]),
114
- h('span', {
115
- class: 'vxe-context-menu--link-content',
116
- attrs: {
117
- title: menuContent
118
- }
119
- }, loading ? getI18n('vxe.table.menuLoading') : menuContent),
120
- h('div', {
121
- class: ['vxe-context-menu--link-suffix', suffixOpts.className || '']
122
- }, [
123
- suffixIcon && XEUtils.isFunction(suffixIcon)
124
- ? h('span', {}, getSlotVNs(suffixIcon.call($xeTable, {})))
125
- : h('i', {
126
- class: suffixIcon || (hasChildMenus ? getIcon().TABLE_MENU_OPTIONS : '')
127
- }),
128
- suffixOpts.content ? h('span', `${suffixOpts.content}`) : renderEmptyElement($xeTable)
129
- ])
130
- ]),
131
- hasChildMenus && item.children
132
- ? h('ul', {
133
- class: ['vxe-table--context-menu-clild-wrapper', {
134
- 'is--show': item === ctxMenuStore.selected && ctxMenuStore.showChild
135
- }]
136
- }, item.children.map((child, cIndex) => {
137
- const { loading: childLoading } = child
138
- const childPrefixOpts = Object.assign({}, child.prefixConfig)
139
- const childPrefixIcon = childPrefixOpts.icon || child.prefixIcon
140
- const childSuffixOpts = Object.assign({}, child.suffixConfig)
141
- const childSuffixIcon = childSuffixOpts.icon || child.suffixIcon
142
- const childMenuContent = getFuncText(child.name)
143
- return child.visible === false
144
- ? null
145
- : h('li', {
146
- class: [child.className, {
147
- 'link--loading': childLoading,
148
- 'link--disabled': child.disabled,
149
- 'link--active': child === ctxMenuStore.selectChild
150
- }],
151
- key: `${gIndex}_${index}_${cIndex}`
152
- }, [
153
- h('a', {
154
- class: 'vxe-context-menu--link',
155
- on: {
156
- click (evnt: Event) {
157
- $xeTable.ctxMenuLinkEvent(evnt, child)
158
- },
159
- mouseover (evnt: Event) {
160
- $xeTable.ctxMenuMouseoverEvent(evnt, item, child)
161
- },
162
- mouseout (evnt: Event) {
163
- $xeTable.ctxMenuMouseoutEvent(evnt, item)
164
- }
165
- }
166
- }, [
167
- h('div', {
168
- class: ['vxe-context-menu--link-prefix', childPrefixOpts.className || '']
169
- }, [
170
- child.loading
171
- ? h('span', {
172
- class: getIcon('TABLE_MENU_OPTION_LOADING')
173
- })
174
- : (childPrefixIcon && XEUtils.isFunction(childPrefixIcon)
175
- ? h('span', {}, getSlotVNs(childPrefixIcon({})))
176
- : h('span', {}, [
177
- h('i', {
178
- class: childPrefixIcon
179
- })
180
- ])),
181
- childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) : renderEmptyElement($xeTable)
182
- ]),
183
- h('span', {
184
- class: 'vxe-context-menu--link-content',
185
- attrs: {
186
- title: childMenuContent
187
- }
188
- }, childLoading ? getI18n('vxe.table.menuLoading') : childMenuContent),
189
- h('div', {
190
- class: ['vxe-context-menu--link-suffix', childSuffixOpts.className || '']
191
- }, [
192
- childSuffixIcon && XEUtils.isFunction(childSuffixIcon)
193
- ? h('span', {}, getSlotVNs(childSuffixIcon.call($xeTable, {})))
194
- : h('i', {
195
- class: childSuffixIcon
196
- }),
197
- childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) : renderEmptyElement($xeTable)
198
- ])
199
- ])
200
- ])
201
- }))
202
- : null
203
- ])
204
- }))
205
- })
206
- : [])
207
- }
208
- },
209
- render (h: CreateElement) {
210
- return (this as any).renderVN(h)
211
- }
212
- }) /* define-vxe-component end */
1
+ import { CreateElement } from 'vue'
2
+ import { defineVxeComponent } from '../../../ui/src/comp'
3
+ import { VxeUI } from '../../../ui'
4
+ import XEUtils from 'xe-utils'
5
+ import { getFuncText } from '../../../ui/src/utils'
6
+ import { getSlotVNs } from '../../../ui/src/vn'
7
+
8
+ import type { VxeTableConstructor, VxeTablePrivateMethods, TableReactData } from '../../../../types'
9
+
10
+ const { getIcon, getI18n, renderEmptyElement } = VxeUI
11
+
12
+ export default /* define-vxe-component start */ defineVxeComponent({
13
+ name: 'VxeTableMenuPanel',
14
+ inject: {
15
+ $xeTable: {
16
+ default: null
17
+ }
18
+ },
19
+ computed: {
20
+ ...({} as {
21
+ $xeTable(): VxeTableConstructor & VxeTablePrivateMethods
22
+ })
23
+ },
24
+ mounted () {
25
+ const $xeMenuPanel = this
26
+ const $xeTable = $xeMenuPanel.$xeTable
27
+ const menuOpts = $xeTable.computeMenuOpts
28
+ const { transfer } = menuOpts
29
+ const el = $xeMenuPanel.$refs.refElem as HTMLDivElement
30
+
31
+ if (transfer && el) {
32
+ document.body.appendChild(el)
33
+ }
34
+ },
35
+ beforeDestroy () {
36
+ const $xeMenuPanel = this
37
+ const el = $xeMenuPanel.$refs.refElem as HTMLDivElement
38
+
39
+ if (el && el.parentNode) {
40
+ el.parentNode.removeChild(el)
41
+ }
42
+ },
43
+ methods: {
44
+ renderVN (h: CreateElement) {
45
+ const $xeMenuPanel = this
46
+ const $xeTable = $xeMenuPanel.$xeTable
47
+ const tableReactData = $xeTable as unknown as TableReactData
48
+
49
+ const { ctxMenuStore } = tableReactData
50
+ const menuOpts = $xeTable.computeMenuOpts
51
+ const { destroyOnClose } = menuOpts
52
+ const { visible, list, className } = ctxMenuStore
53
+ return h('div', {
54
+ ref: 'refElem',
55
+ class: ['vxe-table--context-menu-wrapper', className, {
56
+ 'is--visible': visible
57
+ }],
58
+ style: ctxMenuStore.style
59
+ }, (destroyOnClose ? visible : true)
60
+ ? list.map((options, gIndex) => {
61
+ return options.every((item) => item.visible === false)
62
+ ? renderEmptyElement($xeTable)
63
+ : h('ul', {
64
+ class: 'vxe-context-menu--option-wrapper',
65
+ key: gIndex
66
+ }, options.map((item, index) => {
67
+ const { children, loading } = item
68
+ const hasChildMenus = children && children.some((child) => child.visible !== false)
69
+ const prefixOpts = Object.assign({}, item.prefixConfig)
70
+ const prefixIcon = prefixOpts.icon || item.prefixIcon
71
+ const suffixOpts = Object.assign({}, item.suffixConfig)
72
+ const suffixIcon = suffixOpts.icon || item.suffixIcon
73
+ const menuContent = getFuncText(item.name)
74
+ return item.visible === false
75
+ ? renderEmptyElement($xeTable)
76
+ : h('li', {
77
+ class: [item.className, {
78
+ 'link--loading': loading,
79
+ 'link--disabled': item.disabled,
80
+ 'link--active': item === ctxMenuStore.selected
81
+ }],
82
+ key: `${gIndex}_${index}`
83
+ }, [
84
+ h('a', {
85
+ class: 'vxe-context-menu--link',
86
+ on: {
87
+ click (evnt: Event) {
88
+ $xeTable.ctxMenuLinkEvent(evnt, item)
89
+ },
90
+ mouseover (evnt: Event) {
91
+ $xeTable.ctxMenuMouseoverEvent(evnt, item)
92
+ },
93
+ mouseout (evnt: Event) {
94
+ $xeTable.ctxMenuMouseoutEvent(evnt, item)
95
+ }
96
+ }
97
+ }, [
98
+ h('div', {
99
+ class: ['vxe-context-menu--link-prefix', prefixOpts.className || '']
100
+ }, [
101
+ loading
102
+ ? h('span', {
103
+ class: getIcon('TABLE_MENU_OPTION_LOADING')
104
+ })
105
+ : (prefixIcon && XEUtils.isFunction(prefixIcon)
106
+ ? h('span', {}, getSlotVNs(prefixIcon.call($xeTable, {})))
107
+ : h('span', {}, [
108
+ h('i', {
109
+ class: prefixIcon
110
+ })
111
+ ])),
112
+ prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) : renderEmptyElement($xeTable)
113
+ ]),
114
+ h('span', {
115
+ class: 'vxe-context-menu--link-content',
116
+ attrs: {
117
+ title: menuContent
118
+ }
119
+ }, loading ? getI18n('vxe.table.menuLoading') : menuContent),
120
+ h('div', {
121
+ class: ['vxe-context-menu--link-suffix', suffixOpts.className || '']
122
+ }, [
123
+ suffixIcon && XEUtils.isFunction(suffixIcon)
124
+ ? h('span', {}, getSlotVNs(suffixIcon.call($xeTable, {})))
125
+ : h('i', {
126
+ class: suffixIcon || (hasChildMenus ? getIcon().TABLE_MENU_OPTIONS : '')
127
+ }),
128
+ suffixOpts.content ? h('span', `${suffixOpts.content}`) : renderEmptyElement($xeTable)
129
+ ])
130
+ ]),
131
+ hasChildMenus && item.children
132
+ ? h('ul', {
133
+ class: ['vxe-table--context-menu-clild-wrapper', {
134
+ 'is--show': item === ctxMenuStore.selected && ctxMenuStore.showChild
135
+ }]
136
+ }, item.children.map((child, cIndex) => {
137
+ const { loading: childLoading } = child
138
+ const childPrefixOpts = Object.assign({}, child.prefixConfig)
139
+ const childPrefixIcon = childPrefixOpts.icon || child.prefixIcon
140
+ const childSuffixOpts = Object.assign({}, child.suffixConfig)
141
+ const childSuffixIcon = childSuffixOpts.icon || child.suffixIcon
142
+ const childMenuContent = getFuncText(child.name)
143
+ return child.visible === false
144
+ ? null
145
+ : h('li', {
146
+ class: [child.className, {
147
+ 'link--loading': childLoading,
148
+ 'link--disabled': child.disabled,
149
+ 'link--active': child === ctxMenuStore.selectChild
150
+ }],
151
+ key: `${gIndex}_${index}_${cIndex}`
152
+ }, [
153
+ h('a', {
154
+ class: 'vxe-context-menu--link',
155
+ on: {
156
+ click (evnt: Event) {
157
+ $xeTable.ctxMenuLinkEvent(evnt, child)
158
+ },
159
+ mouseover (evnt: Event) {
160
+ $xeTable.ctxMenuMouseoverEvent(evnt, item, child)
161
+ },
162
+ mouseout (evnt: Event) {
163
+ $xeTable.ctxMenuMouseoutEvent(evnt, item)
164
+ }
165
+ }
166
+ }, [
167
+ h('div', {
168
+ class: ['vxe-context-menu--link-prefix', childPrefixOpts.className || '']
169
+ }, [
170
+ child.loading
171
+ ? h('span', {
172
+ class: getIcon('TABLE_MENU_OPTION_LOADING')
173
+ })
174
+ : (childPrefixIcon && XEUtils.isFunction(childPrefixIcon)
175
+ ? h('span', {}, getSlotVNs(childPrefixIcon({})))
176
+ : h('span', {}, [
177
+ h('i', {
178
+ class: childPrefixIcon
179
+ })
180
+ ])),
181
+ childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) : renderEmptyElement($xeTable)
182
+ ]),
183
+ h('span', {
184
+ class: 'vxe-context-menu--link-content',
185
+ attrs: {
186
+ title: childMenuContent
187
+ }
188
+ }, childLoading ? getI18n('vxe.table.menuLoading') : childMenuContent),
189
+ h('div', {
190
+ class: ['vxe-context-menu--link-suffix', childSuffixOpts.className || '']
191
+ }, [
192
+ childSuffixIcon && XEUtils.isFunction(childSuffixIcon)
193
+ ? h('span', {}, getSlotVNs(childSuffixIcon.call($xeTable, {})))
194
+ : h('i', {
195
+ class: childSuffixIcon
196
+ }),
197
+ childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) : renderEmptyElement($xeTable)
198
+ ])
199
+ ])
200
+ ])
201
+ }))
202
+ : null
203
+ ])
204
+ }))
205
+ })
206
+ : [])
207
+ }
208
+ },
209
+ render (h: CreateElement) {
210
+ return (this as any).renderVN(h)
211
+ }
212
+ }) /* define-vxe-component end */