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.
Files changed (49) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/style.css +1 -1
  4. package/es/style.min.css +1 -1
  5. package/es/table/module/menu/panel.js +12 -4
  6. package/es/table/src/cell.js +2 -2
  7. package/es/table/src/methods.js +51 -52
  8. package/es/table/src/table.js +5 -0
  9. package/es/table/style.css +24 -0
  10. package/es/table/style.min.css +1 -1
  11. package/es/ui/index.js +4 -4
  12. package/es/ui/src/log.js +1 -1
  13. package/es/vxe-table/style.css +24 -0
  14. package/es/vxe-table/style.min.css +1 -1
  15. package/lib/index.css +1 -1
  16. package/lib/index.min.css +1 -1
  17. package/lib/index.umd.js +75 -73
  18. package/lib/index.umd.min.js +1 -1
  19. package/lib/style.css +1 -1
  20. package/lib/style.min.css +1 -1
  21. package/lib/table/module/menu/panel.js +12 -4
  22. package/lib/table/module/menu/panel.min.js +1 -1
  23. package/lib/table/src/cell.js +2 -2
  24. package/lib/table/src/cell.min.js +1 -1
  25. package/lib/table/src/methods.js +51 -62
  26. package/lib/table/src/methods.min.js +1 -1
  27. package/lib/table/src/table.js +5 -0
  28. package/lib/table/src/table.min.js +1 -1
  29. package/lib/table/style/style.css +24 -0
  30. package/lib/table/style/style.min.css +1 -1
  31. package/lib/ui/index.js +4 -4
  32. package/lib/ui/index.min.js +1 -1
  33. package/lib/ui/src/log.js +1 -1
  34. package/lib/ui/src/log.min.js +1 -1
  35. package/lib/vxe-table/style/style.css +24 -0
  36. package/lib/vxe-table/style/style.min.css +1 -1
  37. package/package.json +2 -2
  38. package/packages/table/module/menu/panel.ts +12 -4
  39. package/packages/table/src/cell.ts +2 -2
  40. package/packages/table/src/methods.ts +54 -53
  41. package/packages/table/src/table.ts +6 -0
  42. package/packages/ui/index.ts +3 -3
  43. package/styles/components/table.scss +35 -0
  44. /package/es/{iconfont.1745723938260.ttf → iconfont.1745800652359.ttf} +0 -0
  45. /package/es/{iconfont.1745723938260.woff → iconfont.1745800652359.woff} +0 -0
  46. /package/es/{iconfont.1745723938260.woff2 → iconfont.1745800652359.woff2} +0 -0
  47. /package/lib/{iconfont.1745723938260.ttf → iconfont.1745800652359.ttf} +0 -0
  48. /package/lib/{iconfont.1745723938260.woff → iconfont.1745800652359.woff} +0 -0
  49. /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
- }, getFuncText(item.name)),
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
- }, getFuncText(child.name)),
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 = Math.max(scrollbarOpts.width || 0, yHandleEl.offsetWidth - yHandleEl.clientWidth)
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 = Math.max(scrollbarOpts.height || 0, xHandleEl.offsetHeight - xHandleEl.clientHeight)
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
- const internalData = $xeTable as unknown as TableInternalData
3176
-
3177
- const { lxTimeout, lxRunTime, scrollXStore } = internalData
3178
- const { visibleSize } = scrollXStore
3179
- const fpsTime = Math.max(5, Math.min(10, Math.floor(visibleSize / 3)))
3180
- if (lxTimeout) {
3181
- clearTimeout(lxTimeout)
3182
- }
3183
- if (!lxRunTime || lxRunTime + fpsTime < Date.now()) {
3184
- internalData.lxRunTime = Date.now()
3185
- loadScrollXData($xeTable)
3186
- }
3187
- internalData.lxTimeout = setTimeout(() => {
3188
- internalData.lxTimeout = undefined
3189
- internalData.lxRunTime = undefined
3190
- loadScrollXData($xeTable)
3191
- }, fpsTime)
3192
- }
3193
-
3194
- function lazyScrollYData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods) {
3195
- const internalData = $xeTable as unknown as TableInternalData
3196
-
3197
- const { lyTimeout, lyRunTime, scrollYStore } = internalData
3198
- const { visibleSize } = scrollYStore
3199
- const fpsTime = Math.floor(Math.max(4, Math.min(10, visibleSize / 3)))
3200
- if (lyTimeout) {
3201
- clearTimeout(lyTimeout)
3202
- }
3203
- if (!lyRunTime || lyRunTime + fpsTime < Date.now()) {
3204
- internalData.lyRunTime = Date.now()
3205
- loadScrollYData($xeTable)
3206
- }
3207
- internalData.lyTimeout = setTimeout(() => {
3208
- internalData.lyTimeout = undefined
3209
- internalData.lyRunTime = undefined
3210
- loadScrollYData($xeTable)
3211
- }, fpsTime)
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
- loadScrollXData($xeTable)
9308
- } else {
9309
- lazyScrollXData($xeTable)
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
- loadScrollYData($xeTable)
9321
- } else {
9322
- lazyScrollYData($xeTable)
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
  }
@@ -209,7 +209,7 @@ VxeUI.setConfig({
209
209
  },
210
210
  virtualXConfig: {
211
211
  enabled: true,
212
- gt: 28,
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