vxe-table 3.15.12 → 3.15.13
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/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/menu/panel.js +12 -4
- package/es/table/src/cell.js +2 -2
- package/es/table/src/methods.js +51 -52
- package/es/table/src/table.js +5 -0
- package/es/table/style.css +24 -0
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +4 -4
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +24 -0
- package/es/vxe-table/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +75 -73
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/menu/panel.js +12 -4
- package/lib/table/module/menu/panel.min.js +1 -1
- package/lib/table/src/cell.js +2 -2
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/methods.js +51 -62
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +5 -0
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +24 -0
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +4 -4
- 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-table/style/style.css +24 -0
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/table/module/menu/panel.ts +12 -4
- package/packages/table/src/cell.ts +2 -2
- package/packages/table/src/methods.ts +54 -53
- package/packages/table/src/table.ts +6 -0
- package/packages/ui/index.ts +3 -3
- package/styles/components/table.scss +35 -0
- /package/es/{iconfont.1745723938260.ttf → iconfont.1745800652359.ttf} +0 -0
- /package/es/{iconfont.1745723938260.woff → iconfont.1745800652359.woff} +0 -0
- /package/es/{iconfont.1745723938260.woff2 → iconfont.1745800652359.woff2} +0 -0
- /package/lib/{iconfont.1745723938260.ttf → iconfont.1745800652359.ttf} +0 -0
- /package/lib/{iconfont.1745723938260.woff → iconfont.1745800652359.woff} +0 -0
- /package/lib/{iconfont.1745723938260.woff2 → iconfont.1745800652359.woff2} +0 -0
|
@@ -40,6 +40,7 @@ export default {
|
|
|
40
40
|
const hasChildMenus = item.children && item.children.some((child: any) => child.visible !== false)
|
|
41
41
|
const prefixOpts = Object.assign({}, item.prefixConfig)
|
|
42
42
|
const suffixOpts = Object.assign({}, item.suffixConfig)
|
|
43
|
+
const menuContent = getFuncText(item.name)
|
|
43
44
|
return item.visible === false
|
|
44
45
|
? null
|
|
45
46
|
: h('li', {
|
|
@@ -72,8 +73,11 @@ export default {
|
|
|
72
73
|
prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) : _e()
|
|
73
74
|
]),
|
|
74
75
|
h('span', {
|
|
75
|
-
class: 'vxe-context-menu--link-content'
|
|
76
|
-
|
|
76
|
+
class: 'vxe-context-menu--link-content',
|
|
77
|
+
attrs: {
|
|
78
|
+
title: menuContent
|
|
79
|
+
}
|
|
80
|
+
}, menuContent),
|
|
77
81
|
h('div', {
|
|
78
82
|
class: ['vxe-context-menu--link-suffix', suffixOpts.className || '']
|
|
79
83
|
}, [
|
|
@@ -91,6 +95,7 @@ export default {
|
|
|
91
95
|
}, item.children.map((child: any, cIndex: any) => {
|
|
92
96
|
const childPrefixOpts = Object.assign({}, child.prefixConfig)
|
|
93
97
|
const childSuffixOpts = Object.assign({}, child.suffixConfig)
|
|
98
|
+
const childMenuContent = getFuncText(child.name)
|
|
94
99
|
return child.visible === false
|
|
95
100
|
? null
|
|
96
101
|
: h('li', {
|
|
@@ -123,8 +128,11 @@ export default {
|
|
|
123
128
|
childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) : _e()
|
|
124
129
|
]),
|
|
125
130
|
h('span', {
|
|
126
|
-
class: 'vxe-context-menu--link-content'
|
|
127
|
-
|
|
131
|
+
class: 'vxe-context-menu--link-content',
|
|
132
|
+
attrs: {
|
|
133
|
+
title: childMenuContent
|
|
134
|
+
}
|
|
135
|
+
}, childMenuContent),
|
|
128
136
|
h('div', {
|
|
129
137
|
class: ['vxe-context-menu--link-suffix', childSuffixOpts.className || '']
|
|
130
138
|
}, [
|
|
@@ -15,7 +15,7 @@ function renderTitlePrefixIcon (h: CreateElement, params: VxeTableDefines.CellRe
|
|
|
15
15
|
const titlePrefix = column.titlePrefix || column.titleHelp
|
|
16
16
|
if (titlePrefix) {
|
|
17
17
|
return h('i', {
|
|
18
|
-
class: ['vxe-cell-title-prefix-icon', titlePrefix.icon || getIcon().TABLE_TITLE_PREFIX],
|
|
18
|
+
class: ['vxe-cell-title-prefix-icon', titlePrefix.iconStatus ? `theme--${titlePrefix.iconStatus}` : '', titlePrefix.icon || getIcon().TABLE_TITLE_PREFIX],
|
|
19
19
|
on: {
|
|
20
20
|
mouseenter (evnt: any) {
|
|
21
21
|
$table.triggerHeaderTitleEvent(evnt, titlePrefix, params)
|
|
@@ -34,7 +34,7 @@ function renderTitleSuffixIcon (h: CreateElement, params: VxeTableDefines.CellRe
|
|
|
34
34
|
const titleSuffix = column.titleSuffix
|
|
35
35
|
if (titleSuffix) {
|
|
36
36
|
return h('i', {
|
|
37
|
-
class: ['vxe-cell-title-suffix-icon', titleSuffix.icon || getIcon().TABLE_TITLE_SUFFIX],
|
|
37
|
+
class: ['vxe-cell-title-suffix-icon', titleSuffix.iconStatus ? `theme--${titleSuffix.iconStatus}` : '', titleSuffix.icon || getIcon().TABLE_TITLE_SUFFIX],
|
|
38
38
|
on: {
|
|
39
39
|
mouseenter (evnt: any) {
|
|
40
40
|
$table.triggerHeaderTitleEvent(evnt, titleSuffix, params)
|
|
@@ -2513,13 +2513,13 @@ function calcScrollbar ($xeTable: VxeTableConstructor & VxeTablePrivateMethods)
|
|
|
2513
2513
|
if (bodyWrapperElem) {
|
|
2514
2514
|
overflowY = scrollYHeight > bodyWrapperElem.clientHeight
|
|
2515
2515
|
if (yHandleEl) {
|
|
2516
|
-
reactData.scrollbarWidth =
|
|
2516
|
+
reactData.scrollbarWidth = scrollbarOpts.width || (yHandleEl.offsetWidth - yHandleEl.clientWidth) || 14
|
|
2517
2517
|
}
|
|
2518
2518
|
reactData.overflowY = overflowY
|
|
2519
2519
|
|
|
2520
2520
|
overflowX = scrollXWidth > bodyWrapperElem.clientWidth
|
|
2521
2521
|
if (xHandleEl) {
|
|
2522
|
-
reactData.scrollbarHeight =
|
|
2522
|
+
reactData.scrollbarHeight = scrollbarOpts.height || (xHandleEl.offsetHeight - xHandleEl.clientHeight) || 14
|
|
2523
2523
|
}
|
|
2524
2524
|
reactData.overflowX = overflowX
|
|
2525
2525
|
|
|
@@ -2724,6 +2724,7 @@ function loadTableData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods,
|
|
|
2724
2724
|
scrollYStore.endIndex = 1
|
|
2725
2725
|
scrollXStore.startIndex = 0
|
|
2726
2726
|
scrollXStore.endIndex = 1
|
|
2727
|
+
internalData.cvCacheMaps = {}
|
|
2727
2728
|
reactData.isRowLoading = true
|
|
2728
2729
|
reactData.scrollVMLoading = false
|
|
2729
2730
|
internalData.treeExpandedMaps = {}
|
|
@@ -3171,45 +3172,45 @@ const createGetColumnCacheProp = (prop: 'index' | '_index' | '$index') => {
|
|
|
3171
3172
|
}
|
|
3172
3173
|
}
|
|
3173
3174
|
|
|
3174
|
-
function lazyScrollXData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
|
|
3178
|
-
|
|
3179
|
-
|
|
3180
|
-
|
|
3181
|
-
|
|
3182
|
-
|
|
3183
|
-
|
|
3184
|
-
|
|
3185
|
-
|
|
3186
|
-
|
|
3187
|
-
|
|
3188
|
-
|
|
3189
|
-
|
|
3190
|
-
|
|
3191
|
-
|
|
3192
|
-
}
|
|
3193
|
-
|
|
3194
|
-
function lazyScrollYData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
|
|
3195
|
-
|
|
3196
|
-
|
|
3197
|
-
|
|
3198
|
-
|
|
3199
|
-
|
|
3200
|
-
|
|
3201
|
-
|
|
3202
|
-
|
|
3203
|
-
|
|
3204
|
-
|
|
3205
|
-
|
|
3206
|
-
|
|
3207
|
-
|
|
3208
|
-
|
|
3209
|
-
|
|
3210
|
-
|
|
3211
|
-
|
|
3212
|
-
}
|
|
3175
|
+
// function lazyScrollXData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
|
|
3176
|
+
// const internalData = $xeTable as unknown as TableInternalData
|
|
3177
|
+
|
|
3178
|
+
// const { lxTimeout, lxRunTime, scrollXStore } = internalData
|
|
3179
|
+
// const { visibleSize } = scrollXStore
|
|
3180
|
+
// const fpsTime = Math.max(5, Math.min(10, Math.floor(visibleSize / 3)))
|
|
3181
|
+
// if (lxTimeout) {
|
|
3182
|
+
// clearTimeout(lxTimeout)
|
|
3183
|
+
// }
|
|
3184
|
+
// if (!lxRunTime || lxRunTime + fpsTime < Date.now()) {
|
|
3185
|
+
// internalData.lxRunTime = Date.now()
|
|
3186
|
+
// loadScrollXData($xeTable)
|
|
3187
|
+
// }
|
|
3188
|
+
// internalData.lxTimeout = setTimeout(() => {
|
|
3189
|
+
// internalData.lxTimeout = undefined
|
|
3190
|
+
// internalData.lxRunTime = undefined
|
|
3191
|
+
// loadScrollXData($xeTable)
|
|
3192
|
+
// }, fpsTime)
|
|
3193
|
+
// }
|
|
3194
|
+
|
|
3195
|
+
// function lazyScrollYData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
|
|
3196
|
+
// const internalData = $xeTable as unknown as TableInternalData
|
|
3197
|
+
|
|
3198
|
+
// const { lyTimeout, lyRunTime, scrollYStore } = internalData
|
|
3199
|
+
// const { visibleSize } = scrollYStore
|
|
3200
|
+
// const fpsTime = Math.floor(Math.max(4, Math.min(10, visibleSize / 3)))
|
|
3201
|
+
// if (lyTimeout) {
|
|
3202
|
+
// clearTimeout(lyTimeout)
|
|
3203
|
+
// }
|
|
3204
|
+
// if (!lyRunTime || lyRunTime + fpsTime < Date.now()) {
|
|
3205
|
+
// internalData.lyRunTime = Date.now()
|
|
3206
|
+
// loadScrollYData($xeTable)
|
|
3207
|
+
// }
|
|
3208
|
+
// internalData.lyTimeout = setTimeout(() => {
|
|
3209
|
+
// internalData.lyTimeout = undefined
|
|
3210
|
+
// internalData.lyRunTime = undefined
|
|
3211
|
+
// loadScrollYData($xeTable)
|
|
3212
|
+
// }, fpsTime)
|
|
3213
|
+
// }
|
|
3213
3214
|
|
|
3214
3215
|
function checkLastSyncScroll ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, isRollX: boolean, isRollY: boolean) {
|
|
3215
3216
|
const reactData = $xeTable as unknown as TableReactData
|
|
@@ -9302,12 +9303,12 @@ const Methods = {
|
|
|
9302
9303
|
triggerScrollXEvent () {
|
|
9303
9304
|
const $xeTable = this
|
|
9304
9305
|
|
|
9305
|
-
const virtualXOpts = $xeTable.computeVirtualXOpts
|
|
9306
|
-
if (virtualXOpts.immediate) {
|
|
9307
|
-
|
|
9308
|
-
} else {
|
|
9309
|
-
|
|
9310
|
-
}
|
|
9306
|
+
// const virtualXOpts = $xeTable.computeVirtualXOpts
|
|
9307
|
+
// if (virtualXOpts.immediate) {
|
|
9308
|
+
loadScrollXData($xeTable)
|
|
9309
|
+
// } else {
|
|
9310
|
+
// lazyScrollXData($xeTable)
|
|
9311
|
+
// }
|
|
9311
9312
|
},
|
|
9312
9313
|
/**
|
|
9313
9314
|
* 纵向 Y 可视渲染事件处理
|
|
@@ -9315,12 +9316,12 @@ const Methods = {
|
|
|
9315
9316
|
triggerScrollYEvent () {
|
|
9316
9317
|
const $xeTable = this
|
|
9317
9318
|
|
|
9318
|
-
const virtualYOpts = $xeTable.computeVirtualYOpts
|
|
9319
|
-
if (virtualYOpts.immediate) {
|
|
9320
|
-
|
|
9321
|
-
} else {
|
|
9322
|
-
|
|
9323
|
-
}
|
|
9319
|
+
// const virtualYOpts = $xeTable.computeVirtualYOpts
|
|
9320
|
+
// if (virtualYOpts.immediate) {
|
|
9321
|
+
loadScrollYData($xeTable)
|
|
9322
|
+
// } else {
|
|
9323
|
+
// lazyScrollYData($xeTable)
|
|
9324
|
+
// }
|
|
9324
9325
|
},
|
|
9325
9326
|
triggerBodyScrollEvent (evnt: Event, fixedType: '' | 'left' | 'right') {
|
|
9326
9327
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
@@ -1509,6 +1509,8 @@ export default {
|
|
|
1509
1509
|
// 已删除行
|
|
1510
1510
|
removeRowMaps: {},
|
|
1511
1511
|
|
|
1512
|
+
cvCacheMaps: {},
|
|
1513
|
+
|
|
1512
1514
|
swYSize: 0,
|
|
1513
1515
|
swYInterval: 0,
|
|
1514
1516
|
swYTotal: 0
|
|
@@ -1821,11 +1823,15 @@ export default {
|
|
|
1821
1823
|
},
|
|
1822
1824
|
beforeDestroy () {
|
|
1823
1825
|
const $xeTable = this
|
|
1826
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
1824
1827
|
|
|
1825
1828
|
const tableViewportEl = $xeTable.$refs.refTableViewportElem as HTMLDivElement
|
|
1826
1829
|
if (tableViewportEl) {
|
|
1827
1830
|
tableViewportEl.removeEventListener('wheel', $xeTable.triggerBodyWheelEvent)
|
|
1828
1831
|
}
|
|
1832
|
+
internalData.cvCacheMaps = {}
|
|
1833
|
+
internalData.prevDragRow = null
|
|
1834
|
+
internalData.prevDragCol = null
|
|
1829
1835
|
if (this.$resize) {
|
|
1830
1836
|
this.$resize.disconnect()
|
|
1831
1837
|
}
|
package/packages/ui/index.ts
CHANGED
|
@@ -209,7 +209,7 @@ VxeUI.setConfig({
|
|
|
209
209
|
},
|
|
210
210
|
virtualXConfig: {
|
|
211
211
|
enabled: true,
|
|
212
|
-
gt:
|
|
212
|
+
gt: 24,
|
|
213
213
|
preSize: 0,
|
|
214
214
|
oSize: 1
|
|
215
215
|
},
|
|
@@ -220,8 +220,8 @@ VxeUI.setConfig({
|
|
|
220
220
|
oSize: 2
|
|
221
221
|
},
|
|
222
222
|
scrollbarConfig: {
|
|
223
|
-
width: 14,
|
|
224
|
-
height: 14
|
|
223
|
+
// width: 14,
|
|
224
|
+
// height: 14
|
|
225
225
|
}
|
|
226
226
|
},
|
|
227
227
|
// export: {
|
|
@@ -1,7 +1,36 @@
|
|
|
1
|
+
@use "sass:map";
|
|
2
|
+
@use "sass:list";
|
|
1
3
|
@use '../helpers/baseMixin.scss';
|
|
2
4
|
@use './icon.scss';
|
|
3
5
|
@use './table-module/all.scss';
|
|
4
6
|
|
|
7
|
+
$btnThemeList: (
|
|
8
|
+
(
|
|
9
|
+
name: "primary",
|
|
10
|
+
textColor: var(--vxe-ui-font-primary-color),
|
|
11
|
+
),
|
|
12
|
+
(
|
|
13
|
+
name: "success",
|
|
14
|
+
textColor: var(--vxe-ui-status-success-color),
|
|
15
|
+
),
|
|
16
|
+
(
|
|
17
|
+
name: "info",
|
|
18
|
+
textColor: var(--vxe-ui-status-info-color),
|
|
19
|
+
),
|
|
20
|
+
(
|
|
21
|
+
name: "warning",
|
|
22
|
+
textColor: var(--vxe-ui-status-warning-color),
|
|
23
|
+
),
|
|
24
|
+
(
|
|
25
|
+
name: "danger",
|
|
26
|
+
textColor: var(--vxe-ui-status-danger-color),
|
|
27
|
+
),
|
|
28
|
+
(
|
|
29
|
+
name: "error",
|
|
30
|
+
textColor: var(--vxe-ui-status-error-color),
|
|
31
|
+
)
|
|
32
|
+
);
|
|
33
|
+
|
|
5
34
|
.vxe-table-slots,
|
|
6
35
|
.vxe-table--file-form {
|
|
7
36
|
display: none;
|
|
@@ -792,6 +821,12 @@
|
|
|
792
821
|
.vxe-cell-title-prefix-icon,
|
|
793
822
|
.vxe-cell-title-suffix-icon {
|
|
794
823
|
cursor: help;
|
|
824
|
+
@for $index from 0 to list.length($btnThemeList) {
|
|
825
|
+
$item: list.nth($btnThemeList, $index + 1);
|
|
826
|
+
&.theme--#{map.get($item, name)} {
|
|
827
|
+
color: map.get($item, textColor);
|
|
828
|
+
}
|
|
829
|
+
}
|
|
795
830
|
}
|
|
796
831
|
}
|
|
797
832
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|