vxe-table 3.15.19 → 3.15.21

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/lib/ui/index.js CHANGED
@@ -13,7 +13,7 @@ Object.defineProperty(exports, "VxeUI", {
13
13
  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;
14
14
  var _core = require("@vxe-ui/core");
15
15
  var _utils = require("./src/utils");
16
- const version = exports.version = "3.15.19";
16
+ const version = exports.version = "3.15.21";
17
17
  _core.VxeUI.version = version;
18
18
  _core.VxeUI.tableVersion = version;
19
19
  _core.VxeUI.setConfig({
@@ -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.15.19",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,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},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,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},rowGroupConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},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,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{enabled:!1,gt:24,preSize:0,oSize:0},virtualYConfig:{enabled:!1,gt:100,preSize:1,oSize:0},scrollbarConfig:{}},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",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",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;
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.15.21",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,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},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,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},rowGroupConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},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,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{enabled:!1,gt:24,preSize:0,oSize:0},virtualYConfig:{enabled:!1,gt:100,preSize:1,oSize:0},scrollbarConfig:{}},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",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",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.15.19"}`;
11
+ const version = `table v${"3.15.21"}`;
12
12
  const warnLog = exports.warnLog = log.create('warn', version);
13
13
  const errLog = exports.errLog = log.create('error', version);
@@ -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.15.19",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
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.15.21",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.15.19",
3
+ "version": "3.15.21",
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.5.34"
31
+ "vxe-pc-ui": "^3.6.0"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@babel/plugin-transform-modules-commonjs": "^7.25.7",
@@ -549,7 +549,7 @@ function updateAfterDataIndex ($xeTable: VxeTableConstructor & VxeTablePrivateMe
549
549
  const internalData = $xeTable as unknown as TableInternalData
550
550
 
551
551
  const { treeConfig } = props
552
- const { fullDataRowIdData, fullAllDataRowIdData, afterTreeFullData } = internalData
552
+ const { fullDataRowIdData, fullAllDataRowIdData, afterFullData, afterTreeFullData } = internalData
553
553
  const treeOpts = $xeTable.computeTreeOpts
554
554
  const { transform } = treeOpts
555
555
  const childrenField = treeOpts.children || treeOpts.childrenField
@@ -570,8 +570,20 @@ function updateAfterDataIndex ($xeTable: VxeTableConstructor & VxeTablePrivateMe
570
570
  }
571
571
  fullMaps[rowid] = row
572
572
  }, { children: transform ? treeOpts.mapChildrenField : childrenField })
573
+ if (transform) {
574
+ afterFullData.forEach((row, index) => {
575
+ const rowid = handleGetRowId(row)
576
+ const rowRest = fullAllDataRowIdData[rowid]
577
+ const seq = index + 1
578
+ if (rowRest) {
579
+ if (!treeConfig) {
580
+ rowRest.seq = seq
581
+ }
582
+ rowRest._index = index
583
+ }
584
+ })
585
+ }
573
586
  internalData.afterFullRowMaps = fullMaps
574
- updateAfterListIndex($xeTable)
575
587
  } else {
576
588
  updateAfterListIndex($xeTable)
577
589
  }
@@ -1870,7 +1882,7 @@ const handleFooterMerge = ($xeTable: VxeTableConstructor & VxeTablePrivateMethod
1870
1882
  const internalData = $xeTable as unknown as TableInternalData
1871
1883
 
1872
1884
  const { footerTableData } = reactData
1873
- const { mergeFooterList, mergeFooterMaps } = internalData
1885
+ const { mergeFooterList, mergeFooterMaps, fullColumnIdData } = internalData
1874
1886
  if (merges) {
1875
1887
  const { visibleColumn } = internalData
1876
1888
  if (!XEUtils.isArray(merges)) {
@@ -1882,6 +1894,12 @@ const handleFooterMerge = ($xeTable: VxeTableConstructor & VxeTablePrivateMethod
1882
1894
  let mergeColumnIndex = -1
1883
1895
  if (XEUtils.isNumber(margeCol)) {
1884
1896
  mergeColumnIndex = margeCol
1897
+ } else {
1898
+ const colid = margeCol ? margeCol.id : null
1899
+ const colRest = colid ? fullColumnIdData[colid] : null
1900
+ if (colRest) {
1901
+ mergeColumnIndex = colRest._index
1902
+ }
1885
1903
  }
1886
1904
  if (mergeRowIndex > -1 && mergeColumnIndex > -1 && (rowspan || colspan)) {
1887
1905
  rowspan = XEUtils.toNumber(rowspan) || 1
@@ -1915,32 +1933,86 @@ const handleFooterMerge = ($xeTable: VxeTableConstructor & VxeTablePrivateMethod
1915
1933
  }
1916
1934
  }
1917
1935
 
1918
- function removeMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, merges: VxeTableDefines.MergeOptions | VxeTableDefines.MergeOptions[], mList: VxeTableDefines.MergeItem[], rowList?: any) {
1919
- // const props = $xeTable
1936
+ function removeBodyMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, merges: VxeTableDefines.MergeOptions | VxeTableDefines.MergeOptions[]) {
1920
1937
  const internalData = $xeTable as unknown as TableInternalData
1921
1938
 
1922
- const rest: any[] = []
1939
+ const { mergeBodyList, fullColumnIdData, fullAllDataRowIdData, mergeBodyMaps } = internalData
1940
+ const rest: VxeTableDefines.MergeItem[] = []
1923
1941
  if (merges) {
1924
- // const { treeConfig } = props
1925
- const { visibleColumn } = internalData
1942
+ const { handleGetRowId } = createHandleGetRowId($xeTable)
1926
1943
  if (!XEUtils.isArray(merges)) {
1927
1944
  merges = [merges]
1928
1945
  }
1929
- // if (treeConfig && merges.length) {
1930
- // errLog('vxe.error.noTree', ['merge-cells | merge-footer-items'])
1931
- // }
1932
- merges.forEach((item: any) => {
1933
- let { row, col } = item
1934
- if (rowList && XEUtils.isNumber(row)) {
1935
- row = rowList[row]
1946
+ merges.forEach((item) => {
1947
+ const { row: margeRow, col: margeCol } = item
1948
+ let mergeRowIndex = -1
1949
+ let mergeColumnIndex = -1
1950
+ if (XEUtils.isNumber(margeRow)) {
1951
+ mergeRowIndex = margeRow
1952
+ } else {
1953
+ const rowid = margeRow ? handleGetRowId(margeRow) : null
1954
+ const rowRest = rowid ? fullAllDataRowIdData[rowid] : null
1955
+ if (rowRest) {
1956
+ mergeRowIndex = rowRest._index
1957
+ }
1936
1958
  }
1937
- if (XEUtils.isNumber(col)) {
1938
- col = visibleColumn[col]
1959
+ if (XEUtils.isNumber(margeCol)) {
1960
+ mergeColumnIndex = margeCol
1961
+ } else {
1962
+ const colid = margeCol ? margeCol.id : null
1963
+ const colRest = colid ? fullColumnIdData[colid] : null
1964
+ if (colRest) {
1965
+ mergeColumnIndex = colRest._index
1966
+ }
1939
1967
  }
1940
- const mcIndex = XEUtils.findIndexOf(mList, item => item._row === row && item._col === col)
1968
+ const mcIndex = XEUtils.findIndexOf(mergeBodyList, item => (item.row === mergeRowIndex) && (item.col === mergeColumnIndex))
1941
1969
  if (mcIndex > -1) {
1942
- const rItems = mList.splice(mcIndex, 1)
1943
- rest.push(rItems[0])
1970
+ const rItems = mergeBodyList.splice(mcIndex, 1)
1971
+ const item = rItems[0]
1972
+ if (item) {
1973
+ rest.push(rItems[0])
1974
+ if (mergeBodyMaps[`${mergeRowIndex}:${mergeColumnIndex}`]) {
1975
+ delete mergeBodyMaps[`${mergeRowIndex}:${mergeColumnIndex}`]
1976
+ }
1977
+ }
1978
+ }
1979
+ })
1980
+ }
1981
+ return rest
1982
+ }
1983
+
1984
+ function removeFooterMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, merges: VxeTableDefines.MergeOptions | VxeTableDefines.MergeOptions[]) {
1985
+ const internalData = $xeTable as unknown as TableInternalData
1986
+
1987
+ const { mergeFooterList, fullColumnIdData, mergeFooterMaps } = internalData
1988
+ const rest: VxeTableDefines.MergeItem[] = []
1989
+ if (merges) {
1990
+ if (!XEUtils.isArray(merges)) {
1991
+ merges = [merges]
1992
+ }
1993
+ merges.forEach((item) => {
1994
+ const { row: margeRow, col: margeCol } = item
1995
+ const mergeRowIndex = XEUtils.isNumber(margeRow) ? margeRow : -1
1996
+ let mergeColumnIndex = -1
1997
+ if (XEUtils.isNumber(margeCol)) {
1998
+ mergeColumnIndex = margeCol
1999
+ } else {
2000
+ const colid = margeCol ? margeCol.id : null
2001
+ const colRest = colid ? fullColumnIdData[colid] : null
2002
+ if (colRest) {
2003
+ mergeColumnIndex = colRest._index
2004
+ }
2005
+ }
2006
+ const mcIndex = XEUtils.findIndexOf(mergeFooterList, item => item.row === mergeRowIndex && item.col === mergeColumnIndex)
2007
+ if (mcIndex > -1) {
2008
+ const rItems = mergeFooterList.splice(mcIndex, 1)
2009
+ const item = rItems[0]
2010
+ if (item) {
2011
+ rest.push(item)
2012
+ if (mergeFooterMaps[`${mergeRowIndex}:${mergeColumnIndex}`]) {
2013
+ delete mergeFooterMaps[`${mergeRowIndex}:${mergeColumnIndex}`]
2014
+ }
2015
+ }
1944
2016
  }
1945
2017
  })
1946
2018
  }
@@ -10153,12 +10225,12 @@ const Methods = {
10153
10225
  removeMergeCells (merges: any) {
10154
10226
  const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
10155
10227
  const props = $xeTable
10156
- const internalData = $xeTable as unknown as TableInternalData
10157
10228
 
10158
10229
  if (props.spanMethod) {
10159
10230
  errLog('vxe.error.errConflicts', ['merge-cells', 'span-method'])
10160
10231
  }
10161
- const rest = removeMerges($xeTable, merges, internalData.mergeBodyList, internalData.afterFullData)
10232
+ const rest = removeBodyMerges($xeTable, merges)
10233
+ $xeTable.handleUpdateBodyMerge()
10162
10234
  return $xeTable.$nextTick().then(() => {
10163
10235
  $xeTable.updateCellAreas()
10164
10236
  updateStyle($xeTable)
@@ -10179,11 +10251,13 @@ const Methods = {
10179
10251
  */
10180
10252
  clearMergeCells () {
10181
10253
  const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
10254
+ const reactData = $xeTable as unknown as TableReactData
10182
10255
  const internalData = $xeTable as unknown as TableInternalData
10183
10256
 
10184
10257
  internalData.mergeBodyList = []
10185
10258
  internalData.mergeBodyMaps = {}
10186
10259
  internalData.mergeBodyCellMaps = {}
10260
+ reactData.mergeBodyFlag++
10187
10261
  return $xeTable.$nextTick().then(() => {
10188
10262
  return updateStyle($xeTable)
10189
10263
  })
@@ -10205,12 +10279,12 @@ const Methods = {
10205
10279
  removeMergeFooterItems (merges: any) {
10206
10280
  const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
10207
10281
  const props = $xeTable
10208
- const internalData = $xeTable as unknown as TableInternalData
10209
10282
 
10210
10283
  if (props.footerSpanMethod) {
10211
10284
  errLog('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method'])
10212
10285
  }
10213
- const rest = removeMerges($xeTable, merges, internalData.mergeFooterList)
10286
+ const rest = removeFooterMerges($xeTable, merges)
10287
+ $xeTable.handleUpdateFooterMerge()
10214
10288
  return $xeTable.$nextTick().then(() => {
10215
10289
  $xeTable.updateCellAreas()
10216
10290
  updateStyle($xeTable)
@@ -10231,11 +10305,13 @@ const Methods = {
10231
10305
  */
10232
10306
  clearMergeFooterItems () {
10233
10307
  const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
10308
+ const reactData = $xeTable as unknown as TableReactData
10234
10309
  const internalData = $xeTable as unknown as TableInternalData
10235
10310
 
10236
10311
  internalData.mergeFooterList = []
10237
10312
  internalData.mergeFooterMaps = {}
10238
10313
  internalData.mergeFooterCellMaps = {}
10314
+ reactData.mergeFootFlag++
10239
10315
  return $xeTable.$nextTick().then(() => {
10240
10316
  return updateStyle($xeTable)
10241
10317
  })