vxe-table 4.23.0-beta.0 → 4.23.0-beta.1
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/dist/all.esm.js +65 -40
- package/dist/style.css +1 -1
- package/es/locale/lang/fr-FR.js +29 -29
- package/es/style.css +1 -1
- package/es/table/src/props.js +4 -0
- package/es/table/src/table.js +52 -29
- package/es/ui/index.js +9 -11
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +25 -23
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/fr-FR.js +29 -29
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +29 -29
- package/lib/style.css +1 -1
- package/lib/table/src/props.js +4 -0
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +11 -11
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +9 -11
- 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/package.json +2 -2
- package/packages/locale/lang/fr-FR.ts +903 -903
- package/packages/table/src/props.ts +4 -0
- package/packages/table/src/table.ts +56 -29
- package/packages/ui/index.ts +8 -10
- /package/es/{iconfont.1791880428511.ttf → iconfont.1791954193706.ttf} +0 -0
- /package/es/{iconfont.1791880428511.woff → iconfont.1791954193706.woff} +0 -0
- /package/es/{iconfont.1791880428511.woff2 → iconfont.1791954193706.woff2} +0 -0
- /package/lib/{iconfont.1791880428511.ttf → iconfont.1791954193706.ttf} +0 -0
- /package/lib/{iconfont.1791880428511.woff → iconfont.1791954193706.woff} +0 -0
- /package/lib/{iconfont.1791880428511.woff2 → iconfont.1791954193706.woff2} +0 -0
package/es/table/src/props.js
CHANGED
|
@@ -299,6 +299,10 @@ export const tableProps = {
|
|
|
299
299
|
virtualXConfig: Object,
|
|
300
300
|
// 纵向虚拟滚动配置项
|
|
301
301
|
virtualYConfig: Object,
|
|
302
|
+
useScrollbar: {
|
|
303
|
+
type: Boolean,
|
|
304
|
+
default: () => getConfig().table.useScrollbar
|
|
305
|
+
},
|
|
302
306
|
// 滚动条配置项
|
|
303
307
|
scrollbarConfig: Object,
|
|
304
308
|
// 撤销/恢复历史配置项
|
package/es/table/src/table.js
CHANGED
|
@@ -2,7 +2,7 @@ import { h, reactive, ref, provide, inject, nextTick, Teleport, onActivated, onD
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
3
|
import XEUtils from 'xe-utils';
|
|
4
4
|
import { initTpImg, getTpImg, isPx, isScale, hasClass, addClass, removeClass, wheelScrollTopTo, wheelScrollLeftTo, getEventTargetNode, getPaddingTopBottomSize, setScrollTop, setScrollLeft, toCssUnit, hasControlKey, checkTargetElement, hasAxternalInputTarget } from '../../ui/src/dom';
|
|
5
|
-
import { getLastZIndex, nextZIndex, hasChildrenList, getFuncText, isEnableConf, formatText, eqEmptyValue, hasEnableConf } from '../../ui/src/utils';
|
|
5
|
+
import { getLastZIndex, nextZIndex, hasChildrenList, getFuncText, isEnableConf, formatText, eqEmptyValue, hasEnableConf, getDefaultConfig } from '../../ui/src/utils';
|
|
6
6
|
import { VxeUI } from '../../ui';
|
|
7
7
|
import { createReactData, createInternalData, getRowUniqueId, createRowId, clearTableAllStatus, getColumnList, toFilters, hasDeepKey, getRowkey, getRowid, rowToVisible, colToVisible, getCellValue, setCellValue, handleRowidOrRow, handleFieldOrColumn, toTreePathSeq, restoreScrollLocation, getRootColumn, getRefElem, getColReMinWidth, getColReMaxWidth, createHandleUpdateRowId, createHandleGetRowId, getCalcHeight, getCellRestHeight, getLastChildColumn, getRowMaxHeight, handleCustomStoreConfig, encodeRowid } from './util';
|
|
8
8
|
import { getSlotVNs } from '../../ui/src/vn';
|
|
@@ -44,6 +44,7 @@ export default defineVxeComponent({
|
|
|
44
44
|
const { slots, emit } = context;
|
|
45
45
|
const xID = XEUtils.uniqueId();
|
|
46
46
|
const browseObj = XEUtils.browse();
|
|
47
|
+
const scrollDefaultConf = Object.assign({}, getConfig().scrollbar);
|
|
47
48
|
// 使用已安装的组件,如果未安装则不渲染
|
|
48
49
|
const VxeUILoadingComponent = VxeUI.getComponent('VxeLoading');
|
|
49
50
|
const VxeUITooltipComponent = VxeUI.getComponent('VxeTooltip');
|
|
@@ -186,14 +187,12 @@ export default defineVxeComponent({
|
|
|
186
187
|
return Object.assign({}, getConfig().table.scrollbarConfig, props.scrollbarConfig);
|
|
187
188
|
});
|
|
188
189
|
const computeScrollbarXOpts = computed(() => {
|
|
189
|
-
var _a;
|
|
190
190
|
const scrollbarOpts = computeScrollbarOpts.value;
|
|
191
|
-
return Object.assign({}, scrollbarOpts.x,
|
|
191
|
+
return scrollbarOpts.x ? Object.assign({}, scrollbarOpts.x, scrollbarOpts.xConfig) : (scrollbarOpts.xConfig || {});
|
|
192
192
|
});
|
|
193
193
|
const computeScrollbarYOpts = computed(() => {
|
|
194
|
-
var _a;
|
|
195
194
|
const scrollbarOpts = computeScrollbarOpts.value;
|
|
196
|
-
return Object.assign({}, scrollbarOpts.y,
|
|
195
|
+
return scrollbarOpts.y ? Object.assign({}, scrollbarOpts.y, scrollbarOpts.yConfig) : (scrollbarOpts.yConfig || {});
|
|
197
196
|
});
|
|
198
197
|
const computeScrollbarXToTop = computed(() => {
|
|
199
198
|
const scrollbarXOpts = computeScrollbarXOpts.value;
|
|
@@ -540,15 +539,18 @@ export default defineVxeComponent({
|
|
|
540
539
|
});
|
|
541
540
|
const computeTableStyle = computed(() => {
|
|
542
541
|
const scrollbarOpts = computeScrollbarOpts.value;
|
|
543
|
-
const
|
|
544
|
-
const
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
}
|
|
548
|
-
if (
|
|
549
|
-
|
|
542
|
+
const scrollbarXOpts = computeScrollbarXOpts.value;
|
|
543
|
+
const scrollbarYOpts = computeScrollbarYOpts.value;
|
|
544
|
+
const barWidth = getDefaultConfig(getDefaultConfig(scrollbarYOpts.width, scrollbarOpts.width), scrollDefaultConf.width);
|
|
545
|
+
const barHeight = getDefaultConfig(getDefaultConfig(scrollbarXOpts.height, scrollbarOpts.height), scrollDefaultConf.height);
|
|
546
|
+
const stys = {};
|
|
547
|
+
if (barWidth || barHeight) {
|
|
548
|
+
stys['--vxe-ui-table-view-scrollbar-width'] = toCssUnit(barWidth || barHeight);
|
|
549
|
+
stys['--vxe-ui-scrollbar-y-width'] = toCssUnit(barWidth || barHeight);
|
|
550
|
+
stys['--vxe-ui-table-view-scrollbar-height'] = toCssUnit(barHeight || barWidth);
|
|
551
|
+
stys['--vxe-ui-scrollbar-x-height'] = toCssUnit(barHeight || barWidth);
|
|
550
552
|
}
|
|
551
|
-
return
|
|
553
|
+
return stys;
|
|
552
554
|
});
|
|
553
555
|
const computeTableRowExpandedList = computed(() => {
|
|
554
556
|
const { tableData, rowExpandedFlag, expandColumn, rowGroupExpandedFlag, treeExpandedFlag } = reactData;
|
|
@@ -2461,7 +2463,6 @@ export default defineVxeComponent({
|
|
|
2461
2463
|
const isHeaderRenderOptimize = computeIsHeaderRenderOptimize.value;
|
|
2462
2464
|
const isBodyRenderOptimize = computeIsBodyRenderOptimize.value;
|
|
2463
2465
|
const isFooterRenderOptimize = computeIsFooterRenderOptimize.value;
|
|
2464
|
-
const scrollbarOpts = computeScrollbarOpts.value;
|
|
2465
2466
|
const mouseOpts = computeMouseOpts.value;
|
|
2466
2467
|
const bodyWrapperElem = getRefElem(elemStore['main-body-wrapper']);
|
|
2467
2468
|
const bodyTableElem = getRefElem(elemStore['main-body-table']);
|
|
@@ -2469,24 +2470,26 @@ export default defineVxeComponent({
|
|
|
2469
2470
|
emptyPlaceholderElem.style.top = `${tHeaderHeight}px`;
|
|
2470
2471
|
emptyPlaceholderElem.style.height = bodyWrapperElem ? `${bodyWrapperElem.offsetHeight - osbHeight}px` : '';
|
|
2471
2472
|
}
|
|
2472
|
-
const
|
|
2473
|
-
const
|
|
2473
|
+
const scrollbarXOpts = computeScrollbarXOpts.value;
|
|
2474
|
+
const scrollbarYOpts = computeScrollbarYOpts.value;
|
|
2474
2475
|
const scrollbarYToLeft = computeScrollbarYToLeft.value;
|
|
2475
2476
|
let xScrollbarVisible = overflowX ? 'visible' : 'hidden';
|
|
2476
|
-
|
|
2477
|
+
const hideXScroll = scrollbarXOpts.visible === false || scrollbarXOpts.visible === 'hidden';
|
|
2478
|
+
if (!hideXScroll || $xeGanttView) {
|
|
2477
2479
|
osbHeight = scrollbarHeight;
|
|
2478
2480
|
xScrollbarVisible = 'visible';
|
|
2479
2481
|
}
|
|
2480
|
-
else if (
|
|
2482
|
+
else if (hideXScroll) {
|
|
2481
2483
|
osbHeight = 0;
|
|
2482
2484
|
xScrollbarVisible = 'hidden';
|
|
2483
2485
|
}
|
|
2484
2486
|
let yScrollbarVisible = overflowY ? 'visible' : 'hidden';
|
|
2485
|
-
|
|
2487
|
+
const showYScroll = !(scrollbarYOpts.visible === false || scrollbarYOpts.visible === 'hidden');
|
|
2488
|
+
if (!showYScroll || (($xeGantt && $xeGanttView && $xeGantt.reactData.showRightView) && !scrollbarYToLeft)) {
|
|
2486
2489
|
osbWidth = 0;
|
|
2487
2490
|
yScrollbarVisible = 'hidden';
|
|
2488
2491
|
}
|
|
2489
|
-
else if (
|
|
2492
|
+
else if (showYScroll) {
|
|
2490
2493
|
osbWidth = scrollbarWidth;
|
|
2491
2494
|
yScrollbarVisible = 'visible';
|
|
2492
2495
|
}
|
|
@@ -3307,14 +3310,18 @@ export default defineVxeComponent({
|
|
|
3307
3310
|
let overflowY = false;
|
|
3308
3311
|
let overflowX = false;
|
|
3309
3312
|
if (bodyWrapperElem) {
|
|
3313
|
+
const scrollbarXOpts = computeScrollbarXOpts.value;
|
|
3314
|
+
const scrollbarYOpts = computeScrollbarYOpts.value;
|
|
3315
|
+
const barWidth = XEUtils.toNumber(getDefaultConfig(getDefaultConfig(scrollbarYOpts.width, scrollbarOpts.width), scrollDefaultConf.width));
|
|
3316
|
+
const barHeight = XEUtils.toNumber(getDefaultConfig(getDefaultConfig(scrollbarXOpts.height, scrollbarOpts.height), scrollDefaultConf.height));
|
|
3310
3317
|
overflowY = scrollYHeight > bodyWrapperElem.clientHeight;
|
|
3311
3318
|
if (yHandleEl) {
|
|
3312
|
-
reactData.scrollbarWidth =
|
|
3319
|
+
reactData.scrollbarWidth = (barWidth || barHeight) || (yHandleEl.offsetWidth - yHandleEl.clientWidth) || 14;
|
|
3313
3320
|
}
|
|
3314
3321
|
reactData.overflowY = overflowY;
|
|
3315
3322
|
overflowX = scrollXWidth > bodyWrapperElem.clientWidth;
|
|
3316
3323
|
if (xHandleEl) {
|
|
3317
|
-
reactData.scrollbarHeight =
|
|
3324
|
+
reactData.scrollbarHeight = (barHeight || barWidth) || (xHandleEl.offsetHeight - xHandleEl.clientHeight) || 14;
|
|
3318
3325
|
}
|
|
3319
3326
|
const hHeight = headerTableElem ? headerTableElem.clientHeight : 0;
|
|
3320
3327
|
const fHeight = footerTableElem ? footerTableElem.clientHeight : 0;
|
|
@@ -12880,14 +12887,14 @@ export default defineVxeComponent({
|
|
|
12880
12887
|
const isRollY = overflowY && scrollTop !== lastScrollTop;
|
|
12881
12888
|
if (isRollX) {
|
|
12882
12889
|
// 如果禁用滚动
|
|
12883
|
-
if (scrollbarXOpts.visible === 'hidden') {
|
|
12890
|
+
if (scrollbarXOpts.visible === false || scrollbarXOpts.visible === 'hidden') {
|
|
12884
12891
|
evnt.preventDefault();
|
|
12885
12892
|
return;
|
|
12886
12893
|
}
|
|
12887
12894
|
}
|
|
12888
12895
|
if (isRollY) {
|
|
12889
12896
|
// 如果禁用滚动
|
|
12890
|
-
if (scrollbarYOpts.visible === 'hidden') {
|
|
12897
|
+
if (scrollbarYOpts.visible === false || scrollbarYOpts.visible === 'hidden') {
|
|
12891
12898
|
evnt.preventDefault();
|
|
12892
12899
|
return;
|
|
12893
12900
|
}
|
|
@@ -13484,10 +13491,15 @@ export default defineVxeComponent({
|
|
|
13484
13491
|
const osYBehavior = XEUtils.eqNull(overscrollYBehavior) ? scrollbarOpts.overscrollBehavior : overscrollYBehavior;
|
|
13485
13492
|
return h('div', {
|
|
13486
13493
|
ref: isFixedLeft ? refLeftContainer : refRightContainer,
|
|
13487
|
-
class: [
|
|
13494
|
+
class: [
|
|
13495
|
+
`vxe-table--fixed-${fixedType}-wrapper`,
|
|
13496
|
+
`sx--${(scrollbarXOpts.visible === false || scrollbarXOpts.visible === 'hidden') ? 'hidden' : 'visible'}`,
|
|
13497
|
+
`sy--${(scrollbarYOpts.visible === false || scrollbarYOpts.visible === 'hidden') ? 'hidden' : 'visible'}`,
|
|
13498
|
+
{
|
|
13488
13499
|
[`x-ob--${osXBehavior}`]: osXBehavior,
|
|
13489
13500
|
[`y-ob--${osYBehavior}`]: osYBehavior
|
|
13490
|
-
}
|
|
13501
|
+
}
|
|
13502
|
+
]
|
|
13491
13503
|
}, [
|
|
13492
13504
|
showHeader
|
|
13493
13505
|
? h(TableHeaderComponent, {
|
|
@@ -13796,7 +13808,11 @@ export default defineVxeComponent({
|
|
|
13796
13808
|
}]
|
|
13797
13809
|
}, [
|
|
13798
13810
|
h('div', {
|
|
13799
|
-
class: [
|
|
13811
|
+
class: [
|
|
13812
|
+
'vxe-table--main-wrapper',
|
|
13813
|
+
`sx--${(scrollbarXOpts.visible === false || scrollbarXOpts.visible === 'hidden') ? 'hidden' : 'visible'}`,
|
|
13814
|
+
`sy--${(scrollbarYOpts.visible === false || scrollbarYOpts.visible === 'hidden') ? 'hidden' : 'visible'}`
|
|
13815
|
+
]
|
|
13800
13816
|
}, [
|
|
13801
13817
|
/**
|
|
13802
13818
|
* 表头
|
|
@@ -13852,7 +13868,7 @@ export default defineVxeComponent({
|
|
|
13852
13868
|
]);
|
|
13853
13869
|
};
|
|
13854
13870
|
const renderVN = () => {
|
|
13855
|
-
const { loading, stripe, showHeader, height, treeConfig, mouseConfig, showFooter, highlightCell, highlightHoverRow, highlightHoverColumn, editConfig, editRules, importConfig, exportConfig, printConfig } = props;
|
|
13871
|
+
const { loading, stripe, useScrollbar, showHeader, height, treeConfig, mouseConfig, showFooter, highlightCell, highlightHoverRow, highlightHoverColumn, editConfig, editRules, importConfig, exportConfig, printConfig } = props;
|
|
13856
13872
|
const { isGroup, overflowX, overflowY, scrollXLoad, scrollYLoad, tableData, initStore, isRowGroupStatus, columnStore, filterStore, customStore, tooltipStore } = reactData;
|
|
13857
13873
|
const { teleportToWrapperElem, popupToWrapperElem, customPopupToElem } = internalData;
|
|
13858
13874
|
const { leftList, rightList } = columnStore;
|
|
@@ -13895,7 +13911,7 @@ export default defineVxeComponent({
|
|
|
13895
13911
|
if (isCrossTableDrag && !tableData.length) {
|
|
13896
13912
|
tbOns.onDragover = $xeTable.handleCrossTableRowDragoverEmptyEvent;
|
|
13897
13913
|
}
|
|
13898
|
-
return h('div', Object.assign({ ref: refElem, class: ['vxe-table', 'vxe-table--render-default', `tid_${xID}`, `border--${tableBorder}`, `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
|
|
13914
|
+
return h('div', Object.assign({ ref: refElem, class: ['vxe-table', 'vxe-table--render-default', `tid_${xID}`, `border--${tableBorder}`, useScrollbar ? 'is--virtual-scrollbar' : 'is--native-scrollbar', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
|
|
13899
13915
|
[`size--${vSize}`]: vSize,
|
|
13900
13916
|
[`valid-msg--${validOpts.msgMode}`]: !!editRules,
|
|
13901
13917
|
'vxe-editable': !!editConfig,
|
|
@@ -14486,6 +14502,7 @@ export default defineVxeComponent({
|
|
|
14486
14502
|
const areaOpts = computeAreaOpts.value;
|
|
14487
14503
|
const sortOpts = computeSortOpts.value;
|
|
14488
14504
|
const filterOpts = computeFilterOpts.value;
|
|
14505
|
+
const scrollbarOpts = computeScrollbarOpts.value;
|
|
14489
14506
|
const { groupFields } = aggregateOpts;
|
|
14490
14507
|
if ($xeGantt) {
|
|
14491
14508
|
const { refClassifyWrapperElem } = $xeGantt.getRefMaps();
|
|
@@ -14717,6 +14734,12 @@ export default defineVxeComponent({
|
|
|
14717
14734
|
// if (hasEnableConf(printConfig, printOpts) || hasEnableConf(importConfig, importOpts) || hasEnableConf(exportConfig, exportOpts)) && !$xeTable.exportData) {
|
|
14718
14735
|
// errLog('vxe.error.reqModule', ['Export'])
|
|
14719
14736
|
// }
|
|
14737
|
+
if (scrollbarOpts.x) {
|
|
14738
|
+
warnLog('vxe.error.delProp', ['scrollbar-config.x', 'scrollbar-config.xConfig']);
|
|
14739
|
+
}
|
|
14740
|
+
if (scrollbarOpts.y) {
|
|
14741
|
+
warnLog('vxe.error.delProp', ['scrollbar-config.y', 'scrollbar-config.yConfig']);
|
|
14742
|
+
}
|
|
14720
14743
|
Object.assign(scrollYStore, {
|
|
14721
14744
|
startIndex: 0,
|
|
14722
14745
|
endIndex: 0,
|
package/es/ui/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
import { getFuncText } from './src/utils';
|
|
3
|
-
export const version = "4.23.0-beta.
|
|
3
|
+
export const version = "4.23.0-beta.1";
|
|
4
4
|
VxeUI.version = version;
|
|
5
5
|
VxeUI.tableVersion = version;
|
|
6
6
|
VxeUI.setConfig({
|
|
@@ -262,16 +262,14 @@ VxeUI.setConfig({
|
|
|
262
262
|
oSize: 0
|
|
263
263
|
},
|
|
264
264
|
scrollbarConfig: {
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
visible: true
|
|
274
|
-
}
|
|
265
|
+
// xConfig: {
|
|
266
|
+
// // position: 'bottom',
|
|
267
|
+
// // visible: true
|
|
268
|
+
// },
|
|
269
|
+
// yConfig: {
|
|
270
|
+
// // position: 'right',
|
|
271
|
+
// // visible: true
|
|
272
|
+
// }
|
|
275
273
|
},
|
|
276
274
|
undoRedoHistoryConfig: {
|
|
277
275
|
stackSize: 50
|
package/es/ui/src/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
const { log } = VxeUI;
|
|
3
|
-
const tableVersion = `table v${"4.23.0-beta.
|
|
3
|
+
const tableVersion = `table v${"4.23.0-beta.1"}`;
|
|
4
4
|
export function createComponentLog(name) {
|
|
5
5
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
6
6
|
const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
|