vxe-table 3.12.4 → 3.12.6
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/style.css +1 -1
- package/es/table/module/custom/mixin.js +3 -3
- package/es/table/src/cell.js +1 -1
- package/es/table/src/methods.js +59 -20
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +76 -30
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/custom/mixin.js +3 -3
- package/lib/table/src/cell.js +1 -1
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/methods.js +70 -24
- package/lib/table/src/methods.min.js +1 -1
- package/lib/ui/index.js +1 -1
- 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/table/module/custom/mixin.ts +3 -3
- package/packages/table/src/cell.ts +1 -1
- package/packages/table/src/methods.ts +64 -24
- /package/es/{iconfont.1736149136555.ttf → iconfont.1736230307358.ttf} +0 -0
- /package/es/{iconfont.1736149136555.woff → iconfont.1736230307358.woff} +0 -0
- /package/es/{iconfont.1736149136555.woff2 → iconfont.1736230307358.woff2} +0 -0
- /package/lib/{iconfont.1736149136555.ttf → iconfont.1736230307358.ttf} +0 -0
- /package/lib/{iconfont.1736149136555.woff → iconfont.1736230307358.woff} +0 -0
- /package/lib/{iconfont.1736149136555.woff2 → iconfont.1736230307358.woff2} +0 -0
package/lib/ui/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="3.12.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="3.12.6",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,padding:!0,minHeight:144,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},treeConfig:{rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},scrollX:{gt:60},scrollY:{gt:100}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
|
package/lib/ui/src/log.js
CHANGED
|
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
|
|
|
8
8
|
const {
|
|
9
9
|
log
|
|
10
10
|
} = _core.VxeUI;
|
|
11
|
-
const version = `table v${"3.12.
|
|
11
|
+
const version = `table v${"3.12.6"}`;
|
|
12
12
|
const warnLog = exports.warnLog = log.create('warn', version);
|
|
13
13
|
const errLog = exports.errLog = log.create('error', version);
|
package/lib/ui/src/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v3.12.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v3.12.6",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "3.12.
|
|
3
|
+
"version": "3.12.6",
|
|
4
4
|
"description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、拖拽排序,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"update": "npm install --legacy-peer-deps",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"style": "lib/style.css",
|
|
29
29
|
"typings": "types/index.d.ts",
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"vxe-pc-ui": "^3.3.
|
|
31
|
+
"vxe-pc-ui": "^3.3.71"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@babel/plugin-transform-modules-commonjs": "^7.25.7",
|
|
@@ -32,10 +32,10 @@ export default {
|
|
|
32
32
|
|
|
33
33
|
const { customOpts, customColumnList } = this
|
|
34
34
|
const { allowVisible, allowSort, allowFixed, allowResizable } = customOpts
|
|
35
|
-
XEUtils.eachTree(customColumnList, (column, index, items, path,
|
|
36
|
-
if (
|
|
35
|
+
XEUtils.eachTree(customColumnList, (column, index, items, path, parentColumn) => {
|
|
36
|
+
if (parentColumn) {
|
|
37
37
|
// 更新子列信息
|
|
38
|
-
column.fixed =
|
|
38
|
+
column.fixed = parentColumn.fixed
|
|
39
39
|
} else {
|
|
40
40
|
if (allowSort) {
|
|
41
41
|
const sortIndex = index + 1
|
|
@@ -461,7 +461,7 @@ export const Cell = {
|
|
|
461
461
|
paddingLeft: `${level * indent}px`
|
|
462
462
|
}
|
|
463
463
|
}, [
|
|
464
|
-
showIcon && (lazy ? (isLazyLoaded ? hasChild : hasLazyChilds) : hasChild)
|
|
464
|
+
showIcon && (lazy ? (isLazyLoaded ? hasChild : (hasChild || hasLazyChilds)) : hasChild)
|
|
465
465
|
? [
|
|
466
466
|
h('div', {
|
|
467
467
|
class: 'vxe-tree--btn-wrapper',
|
|
@@ -123,6 +123,8 @@ function cacheColumnMap ($xeTable: VxeTableConstructor) {
|
|
|
123
123
|
const columnOpts = $xeTable.computeColumnOpts
|
|
124
124
|
const columnDragOpts = $xeTable.computeColumnDragOpts
|
|
125
125
|
const { isCrossDrag, isSelfToChildDrag } = columnDragOpts
|
|
126
|
+
const customOpts = $xeTable.computeCustomOpts
|
|
127
|
+
const { storage } = customOpts
|
|
126
128
|
const rowOpts = $xeTable.computeRowOpts
|
|
127
129
|
const isGroup = collectColumn.some(hasChildrenList)
|
|
128
130
|
let isAllOverflow = !!props.showOverflow
|
|
@@ -141,8 +143,8 @@ function cacheColumnMap ($xeTable: VxeTableConstructor) {
|
|
|
141
143
|
}
|
|
142
144
|
fullColumnFieldData[field] = rest
|
|
143
145
|
} else {
|
|
144
|
-
if (isCrossDrag || isSelfToChildDrag) {
|
|
145
|
-
errLog('vxe.error.
|
|
146
|
+
if (storage || isCrossDrag || isSelfToChildDrag) {
|
|
147
|
+
errLog('vxe.error.reqProp', [`${column.getTitle() || type || ''} -> column.field`])
|
|
146
148
|
}
|
|
147
149
|
}
|
|
148
150
|
if (!hasFixed && fixed) {
|
|
@@ -652,7 +654,7 @@ const calcCellHeight = ($xeTable: VxeTableConstructor) => {
|
|
|
652
654
|
let paddingTop = 0
|
|
653
655
|
let paddingBottom = 0
|
|
654
656
|
let calcPadding = false
|
|
655
|
-
tableData.forEach(
|
|
657
|
+
tableData.forEach(row => {
|
|
656
658
|
const rowid = getRowid($xeTable, row)
|
|
657
659
|
const rowRest = fullAllDataRowIdData[rowid]
|
|
658
660
|
const cellList = el.querySelectorAll(`.vxe-body--row[rowid="${rowid}"]>.vxe-body--column>.vxe-cell`)
|
|
@@ -678,8 +680,9 @@ const calcCellHeight = ($xeTable: VxeTableConstructor) => {
|
|
|
678
680
|
rowRest.height = scrollXLoad ? Math.max(rowRest.height, height) : height
|
|
679
681
|
}
|
|
680
682
|
})
|
|
683
|
+
reactData.isCalcCellHeight++
|
|
681
684
|
}
|
|
682
|
-
// updateCellOffset(
|
|
685
|
+
// updateCellOffset()
|
|
683
686
|
}
|
|
684
687
|
|
|
685
688
|
function getOrderField (_vm: any, column: any) {
|
|
@@ -1009,11 +1012,11 @@ function loadScrollYData ($xeTable: VxeTableConstructor & VxeTablePrivateMethods
|
|
|
1009
1012
|
const { mergeList } = reactData
|
|
1010
1013
|
const { tableHeight, scrollYStore } = internalData
|
|
1011
1014
|
const { startIndex, endIndex, offsetSize } = scrollYStore
|
|
1012
|
-
const
|
|
1015
|
+
const autoOffsetYSize = showOverflow ? offsetSize : offsetSize + Math.min(8, Math.ceil(tableHeight / 200))
|
|
1013
1016
|
const { toVisibleIndex, visibleSize } = handleVirtualYVisible($xeTable)
|
|
1014
1017
|
const offsetItem = {
|
|
1015
|
-
startIndex: Math.max(0, toVisibleIndex - 1 -
|
|
1016
|
-
endIndex: toVisibleIndex + visibleSize +
|
|
1018
|
+
startIndex: Math.max(0, toVisibleIndex - 1 - offsetSize),
|
|
1019
|
+
endIndex: toVisibleIndex + visibleSize + autoOffsetYSize
|
|
1017
1020
|
}
|
|
1018
1021
|
calculateMergerOffsetIndex(mergeList, offsetItem, 'row')
|
|
1019
1022
|
const { startIndex: offsetStartIndex, endIndex: offsetEndIndex } = offsetItem
|
|
@@ -1036,11 +1039,12 @@ function checkLastSyncScroll ($xeTable: VxeTableConstructor & VxeTablePrivateMet
|
|
|
1036
1039
|
clearTimeout(lcsTimeout)
|
|
1037
1040
|
}
|
|
1038
1041
|
internalData.lcsTimeout = setTimeout(() => {
|
|
1042
|
+
internalData.lcsRunTime = Date.now()
|
|
1039
1043
|
internalData.lcsTimeout = undefined
|
|
1040
1044
|
internalData.inVirtualScroll = false
|
|
1041
1045
|
internalData.inBodyScroll = false
|
|
1042
|
-
internalData.bodyScrollType = ''
|
|
1043
1046
|
internalData.inFooterScroll = false
|
|
1047
|
+
internalData.bodyScrollType = ''
|
|
1044
1048
|
if (isRollX && scrollXLoad) {
|
|
1045
1049
|
$xeTable.updateScrollXData().then(() => {
|
|
1046
1050
|
loadScrollXData($xeTable)
|
|
@@ -5458,27 +5462,26 @@ const Methods = {
|
|
|
5458
5462
|
evnt.dataTransfer.setDragImage(getTpImg(), 0, 0)
|
|
5459
5463
|
}
|
|
5460
5464
|
},
|
|
5461
|
-
|
|
5462
|
-
const $xeTable = this
|
|
5465
|
+
handleRowDragSwapEvent (evnt: DragEvent, isSyncRow: boolean | undefined, dragRow: any, prevDragRow: any, prevDragPos: '' | 'top' | 'bottom' | 'left' | 'right' | undefined, prevDragToChild: boolean | undefined) {
|
|
5466
|
+
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
5463
5467
|
const props = $xeTable
|
|
5464
|
-
const reactData = $xeTable
|
|
5465
|
-
const internalData = $xeTable
|
|
5468
|
+
const reactData = $xeTable as unknown as TableReactData
|
|
5469
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
5466
5470
|
|
|
5467
5471
|
const { treeConfig, dragConfig } = props
|
|
5468
5472
|
const rowDragOpts = $xeTable.computeRowDragOpts
|
|
5469
|
-
const { fullAllDataRowIdData
|
|
5473
|
+
const { fullAllDataRowIdData } = internalData
|
|
5470
5474
|
const { isPeerDrag, isCrossDrag, isSelfToChildDrag, dragEndMethod } = rowDragOpts
|
|
5471
5475
|
const treeOpts = $xeTable.computeTreeOpts
|
|
5472
5476
|
const { transform, rowField, mapChildrenField, parentField } = treeOpts
|
|
5473
5477
|
const childrenField = treeOpts.children || treeOpts.childrenField
|
|
5474
|
-
const {
|
|
5475
|
-
const { afterFullData, tableFullData, prevDragRow, prevDragPos } = internalData
|
|
5478
|
+
const { afterFullData, tableFullData } = internalData
|
|
5476
5479
|
const dEndMethod = dragEndMethod || (dragConfig ? dragConfig.dragEndMethod : null)
|
|
5477
5480
|
const dragOffsetIndex = prevDragPos === 'bottom' ? 1 : 0
|
|
5478
5481
|
if (prevDragRow && dragRow) {
|
|
5479
5482
|
// 判断是否有拖动
|
|
5480
5483
|
if (prevDragRow !== dragRow) {
|
|
5481
|
-
Promise.resolve(
|
|
5484
|
+
return Promise.resolve(
|
|
5482
5485
|
dEndMethod
|
|
5483
5486
|
? dEndMethod({
|
|
5484
5487
|
oldRow: dragRow,
|
|
@@ -5503,6 +5506,7 @@ const Methods = {
|
|
|
5503
5506
|
const oldRest = fullAllDataRowIdData[oldRowid]
|
|
5504
5507
|
const newRowid = getRowid($xeTable, prevDragRow)
|
|
5505
5508
|
const newRest = fullAllDataRowIdData[newRowid]
|
|
5509
|
+
|
|
5506
5510
|
if (oldRest && newRest) {
|
|
5507
5511
|
const { level: oldLevel } = oldRest
|
|
5508
5512
|
const { level: newLevel } = newRest
|
|
@@ -5628,7 +5632,7 @@ const Methods = {
|
|
|
5628
5632
|
$xeTable.dispatchEvent('row-dragend', {
|
|
5629
5633
|
oldRow: dragRow,
|
|
5630
5634
|
newRow: prevDragRow,
|
|
5631
|
-
dragPos: prevDragPos,
|
|
5635
|
+
dragPos: prevDragPos as any,
|
|
5632
5636
|
dragToChild: !!prevDragToChild,
|
|
5633
5637
|
offsetIndex: dragOffsetIndex,
|
|
5634
5638
|
_index: {
|
|
@@ -5640,6 +5644,38 @@ const Methods = {
|
|
|
5640
5644
|
})
|
|
5641
5645
|
}
|
|
5642
5646
|
}
|
|
5647
|
+
return Promise.resolve()
|
|
5648
|
+
},
|
|
5649
|
+
handleRowDragDragendEvent (evnt: DragEvent) {
|
|
5650
|
+
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
5651
|
+
const props = $xeTable
|
|
5652
|
+
const reactData = $xeTable as unknown as TableReactData
|
|
5653
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
5654
|
+
|
|
5655
|
+
const { treeConfig } = props
|
|
5656
|
+
const { fullAllDataRowIdData, prevDragToChild } = internalData
|
|
5657
|
+
const { dragRow } = reactData
|
|
5658
|
+
const treeOpts = $xeTable.computeTreeOpts
|
|
5659
|
+
const { lazy } = treeOpts
|
|
5660
|
+
const hasChildField = treeOpts.hasChild || treeOpts.hasChildField
|
|
5661
|
+
const { prevDragRow, prevDragPos } = internalData
|
|
5662
|
+
|
|
5663
|
+
if (treeConfig && prevDragToChild) {
|
|
5664
|
+
// 懒加载
|
|
5665
|
+
if (lazy) {
|
|
5666
|
+
const newRowid = getRowid($xeTable, prevDragRow)
|
|
5667
|
+
const rowRest = fullAllDataRowIdData[newRowid]
|
|
5668
|
+
if (prevDragRow[hasChildField]) {
|
|
5669
|
+
if (rowRest && rowRest.treeLoaded) {
|
|
5670
|
+
$xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
|
|
5671
|
+
}
|
|
5672
|
+
} else {
|
|
5673
|
+
$xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
|
|
5674
|
+
}
|
|
5675
|
+
}
|
|
5676
|
+
} else {
|
|
5677
|
+
$xeTable.handleRowDragSwapEvent(evnt, true, dragRow, prevDragRow, prevDragPos, prevDragToChild)
|
|
5678
|
+
}
|
|
5643
5679
|
hideDropTip($xeTable)
|
|
5644
5680
|
clearRowDropOrigin($xeTable)
|
|
5645
5681
|
internalData.prevDragToChild = false
|
|
@@ -5659,7 +5695,8 @@ const Methods = {
|
|
|
5659
5695
|
const { fullAllDataRowIdData } = internalData
|
|
5660
5696
|
const { dragRow } = reactData
|
|
5661
5697
|
const treeOpts = $xeTable.computeTreeOpts
|
|
5662
|
-
const { transform, parentField } = treeOpts
|
|
5698
|
+
const { lazy, transform, parentField } = treeOpts
|
|
5699
|
+
const hasChildField = treeOpts.hasChild || treeOpts.hasChildField
|
|
5663
5700
|
const rowDragOpts = $xeTable.computeRowDragOpts
|
|
5664
5701
|
const { isPeerDrag, isCrossDrag, isToChildDrag } = rowDragOpts
|
|
5665
5702
|
if (!dragRow) {
|
|
@@ -5672,19 +5709,22 @@ const Methods = {
|
|
|
5672
5709
|
const rest = fullAllDataRowIdData[rowid]
|
|
5673
5710
|
if (rest) {
|
|
5674
5711
|
const row = rest.row
|
|
5712
|
+
const rowid = getRowid($xeTable, row)
|
|
5713
|
+
const rowRest = fullAllDataRowIdData[rowid]
|
|
5675
5714
|
evnt.preventDefault()
|
|
5676
5715
|
const { dragRow } = reactData
|
|
5677
5716
|
const offsetY = evnt.clientY - trEl.getBoundingClientRect().y
|
|
5678
5717
|
const dragPos = offsetY < trEl.clientHeight / 2 ? 'top' : 'bottom'
|
|
5718
|
+
internalData.prevDragToChild = !!(treeConfig && transform && isToChildDrag && hasCtrlKey)
|
|
5719
|
+
internalData.prevDragRow = row
|
|
5720
|
+
internalData.prevDragPos = dragPos
|
|
5679
5721
|
if ($xeTable.eqRow(dragRow, row) ||
|
|
5722
|
+
(hasCtrlKey && treeConfig && lazy && row[hasChildField] && rowRest && !rowRest.treeLoaded) ||
|
|
5680
5723
|
(!isCrossDrag && treeConfig && transform && (isPeerDrag ? dragRow[parentField] !== row[parentField] : rest.level))
|
|
5681
5724
|
) {
|
|
5682
5725
|
showDropTip($xeTable, evnt, trEl, null, false, dragPos)
|
|
5683
5726
|
return
|
|
5684
5727
|
}
|
|
5685
|
-
internalData.prevDragToChild = !!(treeConfig && transform && isToChildDrag && hasCtrlKey)
|
|
5686
|
-
internalData.prevDragRow = row
|
|
5687
|
-
internalData.prevDragPos = dragPos
|
|
5688
5728
|
showDropTip($xeTable, evnt, trEl, null, true, dragPos)
|
|
5689
5729
|
$xeTable.dispatchEvent('row-dragover', {
|
|
5690
5730
|
oldRow: dragRow,
|
|
@@ -5959,6 +5999,9 @@ const Methods = {
|
|
|
5959
5999
|
const { clientX } = evnt
|
|
5960
6000
|
const offsetX = clientX - thEl.getBoundingClientRect().x
|
|
5961
6001
|
const dragPos = offsetX < thEl.clientWidth / 2 ? 'left' : 'right'
|
|
6002
|
+
internalData.prevDragToChild = !!((isCrossDrag && isToChildDrag) && hasCtrlKey)
|
|
6003
|
+
internalData.prevDragCol = column
|
|
6004
|
+
internalData.prevDragPos = dragPos
|
|
5962
6005
|
if (column.fixed ||
|
|
5963
6006
|
(dragCol && dragCol.id === column.id) ||
|
|
5964
6007
|
(!isCrossDrag && (isPeerDrag ? dragCol.parentId !== column.parentId : column.parentId))
|
|
@@ -5966,9 +6009,6 @@ const Methods = {
|
|
|
5966
6009
|
showDropTip($xeTable, evnt, null, thEl, false, dragPos)
|
|
5967
6010
|
return
|
|
5968
6011
|
}
|
|
5969
|
-
internalData.prevDragToChild = !!((isCrossDrag && isToChildDrag) && hasCtrlKey)
|
|
5970
|
-
internalData.prevDragCol = column
|
|
5971
|
-
internalData.prevDragPos = dragPos
|
|
5972
6012
|
showDropTip($xeTable, evnt, null, thEl, true, dragPos)
|
|
5973
6013
|
$xeTable.dispatchEvent('column-dragover', {
|
|
5974
6014
|
oldColumn: dragCol,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|