vxe-table 3.21.17 → 3.21.19

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 (53) 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/custom/panel.js +5 -2
  6. package/es/table/module/edit/mixin.js +16 -4
  7. package/es/table/src/columnInfo.js +6 -6
  8. package/es/table/src/footer.js +5 -5
  9. package/es/table/src/header.js +10 -8
  10. package/es/table/src/methods.js +67 -15
  11. package/es/table/src/table.js +1 -2
  12. package/es/ui/index.js +1 -1
  13. package/es/ui/src/log.js +4 -3
  14. package/lib/index.css +1 -1
  15. package/lib/index.min.css +1 -1
  16. package/lib/index.umd.js +1003 -972
  17. package/lib/index.umd.min.js +1 -1
  18. package/lib/style.css +1 -1
  19. package/lib/style.min.css +1 -1
  20. package/lib/table/module/custom/panel.js +5 -2
  21. package/lib/table/module/custom/panel.min.js +1 -1
  22. package/lib/table/module/edit/mixin.js +18 -4
  23. package/lib/table/module/edit/mixin.min.js +1 -1
  24. package/lib/table/src/columnInfo.js +6 -0
  25. package/lib/table/src/footer.js +5 -4
  26. package/lib/table/src/footer.min.js +1 -1
  27. package/lib/table/src/header.js +12 -8
  28. package/lib/table/src/header.min.js +1 -1
  29. package/lib/table/src/methods.js +6 -4
  30. package/lib/table/src/methods.min.js +1 -1
  31. package/lib/table/src/table.js +1 -1
  32. package/lib/table/src/table.min.js +1 -1
  33. package/lib/ui/index.js +1 -1
  34. package/lib/ui/index.min.js +1 -1
  35. package/lib/ui/src/log.js +4 -3
  36. package/lib/ui/src/log.min.js +1 -1
  37. package/package.json +3 -3
  38. package/packages/table/module/custom/panel.ts +5 -2
  39. package/packages/table/module/edit/mixin.ts +15 -4
  40. package/packages/table/src/footer.ts +5 -5
  41. package/packages/table/src/header.ts +10 -8
  42. package/packages/table/src/methods.ts +64 -15
  43. package/packages/table/src/table.ts +1 -2
  44. package/packages/table/src/util.ts +2 -16
  45. package/packages/ui/src/log.ts +3 -2
  46. package/styles/theme/dark.scss +1 -1
  47. package/styles/variable.scss +1 -1
  48. /package/es/{iconfont.1781876872867.ttf → iconfont.1782286848090.ttf} +0 -0
  49. /package/es/{iconfont.1781876872867.woff → iconfont.1782286848090.woff} +0 -0
  50. /package/es/{iconfont.1781876872867.woff2 → iconfont.1782286848090.woff2} +0 -0
  51. /package/lib/{iconfont.1781876872867.ttf → iconfont.1782286848090.ttf} +0 -0
  52. /package/lib/{iconfont.1781876872867.woff → iconfont.1782286848090.woff} +0 -0
  53. /package/lib/{iconfont.1781876872867.woff2 → iconfont.1782286848090.woff2} +0 -0
@@ -1250,8 +1250,11 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1250
1250
  const resizeParams = {
1251
1251
  $table: $xeTable,
1252
1252
  column,
1253
- columnIndex: index,
1254
- $columnIndex: index,
1253
+ columnIndex: $xeTable.getColumnIndex(column),
1254
+ $columnIndex: $xeTable.getVMColumnIndex(column),
1255
+ _columnIndex: $xeTable.getVTColumnIndex(column),
1256
+ rowIndex: -1,
1257
+ _rowIndex: -1,
1255
1258
  $rowIndex: -1
1256
1259
  };
1257
1260
  if (reMinWidth) {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../../ui/src/comp"),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("table").errLog,{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;function showDropTip(e,t,o,l,s){var a,r,i,n=e.internalData,c=e.$refs.refBodyWrapperElem;c&&(i=e.$refs.refCustomBodyElem)&&(n=n.prevDragToChild,a=c.getBoundingClientRect(),i=i.getBoundingClientRect(),r=e.$refs.refDragLineElem,o?r&&(l?(o=o.getBoundingClientRect(),r.style.display="block",r.style.left=Math.max(0,i.x-a.x)+"px",r.style.top=Math.max(1,o.y+c.scrollTop-a.y)+"px",r.style.height=o.height+"px",r.style.width=o.width+"px",r.setAttribute("drag-pos",s),r.setAttribute("drag-to-child",n?"y":"n")):r.style.display=""):r&&(r.style.display="node"),i=e.$refs.refDragTipElem)&&(i.style.display="block",i.style.top=Math.min(c.clientHeight+c.scrollTop-i.clientHeight,t.clientY+c.scrollTop-a.y)+"px",i.style.left=Math.min(c.clientWidth+c.scrollLeft-i.clientWidth,t.clientX+c.scrollLeft-a.x)+"px",i.setAttribute("drag-status",l?n?"sub":"normal":"disabled"))}function hideDropTip(e){var t=e.$refs.refDragTipElem,e=e.$refs.refDragLineElem;t&&(t.style.display=""),e&&(e.style.display="")}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},provide(){return{$xeTableCustomPanel:this}},inject:{$xeTable:{default:null}},data(){return{reactData:{dragCol:null,dragGroupField:null,dragAggFnCol:null,dragTipText:""},internalData:{}}},computed:Object.assign({},{}),created(){let t=this,o=_ui.VxeUI.getComponent("VxeModal"),l=_ui.VxeUI.getComponent("VxeDrawer"),s=_ui.VxeUI.getComponent("VxeButton"),a=_ui.VxeUI.getComponent("VxeNumberInput"),r=_ui.VxeUI.getComponent("VxeRadioGroup");t.$nextTick(()=>{var e=t.$xeTable.customOpts,e=e.mode;o||"modal"!==e||errLog("vxe.error.reqComp",["vxe-modal"]),l||"drawer"!==e||errLog("vxe.error.reqComp",["vxe-drawer"]),s||errLog("vxe.error.reqComp",["vxe-button"]),a||errLog("vxe.error.reqComp",["vxe-number-input"]),r||errLog("vxe.error.reqComp",["vxe-radio-group"])})},methods:{handleWrapperMouseenterEvent(e){var t=this.$xeTable,o=this.customStore;o.activeWrapper=!0,t.customOpenEvent(e)},handleWrapperMouseleaveEvent(e){let t=this.$xeTable;let o=this.customStore;o.activeWrapper=!1,setTimeout(()=>{o.activeBtn||o.activeWrapper||t.customCloseEvent(e)},300)},getStoreData(){return{}},confirmCustomEvent({$event:e}){var t=this.$xeTable;t.isCustomStatus=!0,t.saveCustom(),t.closeCustom(),t.emitCustomEvent("confirm",e),t.emitCustomEvent("close",e)},cancelCloseEvent({$event:e}){var t=this.$xeTable;t.closeCustom(),t.emitCustomEvent("close",e)},cancelCustomEvent({$event:e}){var t=this.$xeTable;t.cancelCustom(),t.closeCustom(),t.emitCustomEvent("cancel",e),t.emitCustomEvent("close",e)},handleResetCustomEvent(e){var t=this.$xeTable;t.resetCustom(!0),t.closeCustom(),t.emitCustomEvent("reset",e),t.emitCustomEvent("close",e)},resetCustomEvent(t){_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&this.handleResetCustomEvent(t)}):this.handleResetCustomEvent(t)},handleOptionCheck(t){var e=this.$xeTable.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.renderVisible=e.children.every(e=>e.renderVisible),e.halfVisible=!e.renderVisible&&e.children.some(e=>e.renderVisible||e.halfVisible),this.handleOptionCheck(e))},changeCheckboxOption(e,t){var o=this.$xeTable,l=o;let s=!e.renderVisible;o.computeCustomOpts.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=s,e.renderVisible=s,e.halfVisible=!1}),l.isCustomStatus=!0,o.handleCustom(),o.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=s,e.halfVisible=!1}),this.handleOptionCheck(e),o.checkCustomStatus(),o.dispatchEvent("custom-visible-change",{column:e,checked:s},t)},changeColumnWidth(e){var t=this.$xeTable,o=t;t.computeCustomOpts.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,o.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:width"))},changeFixedOption(e,t,o){var l=this.$xeTable,s=l,a=l.computeIsMaxFixedColumn;let r=null;l.computeCustomOpts.immediate?(e.renderFixed===t?(r="",_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""})):a&&!e.renderFixed||(r=t,_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t})),s.isCustomStatus=!0,l.handleCustom(),l.saveCustomStore("update:fixed")):e.renderFixed===t?(r="",_xeUtils.default.eachTree([e],e=>{e.renderFixed=""})):a&&!e.renderFixed||(r=t,_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})),null!==r&&l.dispatchEvent("custom-fixed-change",{column:e,fixed:r},o)},allOptionEvent(e){var t=this.$xeTable,o=t.customStore,o=!o.isAll;t.toggleCustomAllCheckbox(),t.dispatchEvent("custom-visible-all",{checked:o},e)},updateColDropTipContent(){var e=this.$xeTable,t=this.reactData,o=t.dragCol,l=e.computeColumnDragOpts.tooltipMethod;let s="";s=l?""+(l({$table:e,column:o})||""):getI18n("vxe.custom.cstmDragTarget",[o&&"html"!==o.type?o.getTitle():""]),t.dragTipText=s},sortMousedownEvent(e){var t=this.$xeTable,o=this.reactData,e=e.currentTarget.parentElement.parentElement.parentElement,l=e.getAttribute("colid"),t=t.getColumnById(l);e.draggable=!0,o.dragCol=t,o.dragGroupField=null,o.dragAggFnCol=null,this.updateColDropTipContent(),(0,_dom.addClass)(e,"active--drag-origin")},sortMouseupEvent(e){var t=this.reactData,e=e.currentTarget.parentElement.parentElement.parentElement;hideDropTip(this),e.draggable=!1,t.dragCol=null,t.dragGroupField=null,(t.dragAggFnCol=null,_dom.removeClass)(e,"active--drag-origin")},sortDragstartEvent(e){var t=this.$xeTable,o=this.internalData,l=o.customDragTime;e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0),l&&clearTimeout(l),t.isCustomDragStatus=!0,o.prevDragGroupField=null,o.prevDragAggFnColid=null},sortDragendEvent(d){let m=this,u=m.$xeTable;var e=u;let p=u;var t=u,o=m.reactData,l=m.internalData;let g=e.mouseConfig,v=p.customColumnList,x=t.collectColumn,b=u.computeCustomOpts.immediate;e=d.currentTarget;let{isCrossDrag:h,isPeerDrag:C,isSelfToChildDrag:E,isToChildDrag:T,dragEndMethod:s}=u.computeColumnDragOpts;t=o.dragCol;let{prevDragCol:a,prevDragGroupField:r,prevDragAggFnColid:i,prevDragPos:f,prevDragToChild:I}=l,D="bottom"===f?1:0;if(r||i)u.handlePivotTableAggregatePanelDragendEvent&&u.handlePivotTableAggregatePanelDragendEvent(d);else if(a&&t&&a!==t){let n=t,c=a;Promise.resolve(!s||s({oldColumn:n,newColumn:c,dragColumn:n,dragPos:f,dragToChild:!!I,offsetIndex:D})).then(s=>{if(s){let e=-1,t=-1,o={},l=(_xeUtils.default.eachTree([n],e=>{o[e.id]=e}),!1);if(b){if(n.parentId&&c.parentId)if(C&&!h){if(n.parentId!==c.parentId)return}else{if(!h)return;if(o[c.id]&&(l=!0,!h||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!h)return}else if(c.parentId){if(!h)return;if(o[c.id]&&(l=!0,!h||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var a,r,i,s=_xeUtils.default.findTree(x,e=>e.id===n.id),s=(l&&h&&E?s&&({items:a,index:i}=s,(r=n.children||[]).forEach(e=>{e.parentId=n.parentId}),a.splice(i,1,...r),n.children=[]):s&&({items:a,index:i,parent:r}=s,a.splice(i,1),r||(e=i)),_xeUtils.default.findTree(x,e=>e.id===c.id));s&&({items:a,index:r,parent:i}=s,h&&T&&I?(n.parentId=c.id,c.children=(c.children||[]).concat([n])):(n.parentId=c.parentId,a.splice(r+D,0,n)),i||(t=r)),_xeUtils.default.eachTree(x,(e,t,o,l,s)=>{s||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(v,e=>e.id===n.id),v.splice(e,1),t=_xeUtils.default.findIndexOf(v,e=>e.id===c.id),v.splice(t+D,0,n);g&&(u.clearSelected&&u.clearSelected(),u.clearCellAreas)&&(u.clearCellAreas(),u.clearCopyCellArea());s={oldColumn:n,newColumn:c,dragColumn:n,dragPos:f,offsetIndex:D,_index:{newIndex:t,oldIndex:e}};u.dispatchEvent("custom-sort-change",s,d),u.dispatchEvent("column-dragend",s,d),b&&(p.customColumnList=x.slice(0),u.handleColDragSwapColumn()),m.clearDragAnimateStatus()}}).catch(()=>{})}hideDropTip(m),o.dragCol=null,o.dragGroupField=null,o.dragAggFnCol=null,l.prevDragGroupField=null,l.prevDragAggFnColid=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},sortDragoverEvent(e){var t=this,o=t.$xeTable,l=t.internalData,s=t.reactData.dragCol,{showSortDragButton:a,allowSort:r,immediate:i}=o.computeCustomOpts,{isCrossDrag:n,isPeerDrag:c,isToChildDrag:d}=o.computeColumnDragOpts,m=e.currentTarget,u=(0,_dom.hasControlKey)(e),p=m.getAttribute("colid"),o=o.getColumnById(p);l.prevDragGroupField=null,l.prevDragAggFnColid=null,o&&(n||c||1===o.level)&&(e.preventDefault(),p=e.clientY-m.getBoundingClientRect().y<m.clientHeight/2?"top":"bottom",!s||!a||!r||s&&s.id===o.id||!n&&(c?s.parentId!==o.parentId:1<o.level)||!i&&1<o.level||!n&&(c?s.parentId!==o.parentId:1<s.level)||!i&&1<s.level?showDropTip(t,e,m,!1,p):(l.prevDragToChild=!!(n&&d&&u&&i),l.prevDragCol=o,showDropTip(t,e,m,!0,l.prevDragPos=p)))},clearDragAnimateStatus(){var e=this.$xeTable;let t=this.internalData,o=e;t.customDragTime=setTimeout(()=>{o.isCustomDragStatus=!1,t.customDragTime=void 0},350)},sortMoveUpEvent(e,t){let l=this;var s=l.$xeTable,a=s.customColumnList,a=_xeUtils.default.findTree(a,e=>e===t);if(a){let{item:e,items:t,index:o}=a;0<o&&(s.isCustomDragStatus=!0,l.$nextTick(()=>{t.splice(o,1),t.splice(o-1,0,e),l.clearDragAnimateStatus()}))}},sortMoveDnEvent(e,t){let l=this;var s=l.$xeTable,a=s.customColumnList,a=_xeUtils.default.findTree(a,e=>e===t);if(a){let{item:e,items:t,index:o}=a;o<t.length-1&&(s.isCustomDragStatus=!0,l.$nextTick(()=>{t.splice(o,1),t.splice(o+1,0,e),l.clearDragAnimateStatus()}))}},sortMoveTopEvent(e,t){let s=this;var a=s.$xeTable;let r=a.customColumnList;var i=_xeUtils.default.findTree(r,e=>e===t);if(i){let{item:e,items:t,index:o,parent:l}=i;(l||0<o)&&(a.isCustomDragStatus=!0,s.$nextTick(()=>{e.parentId=null,t.splice(o,1),r.unshift(e),s.clearDragAnimateStatus()}))}},sortMoveBottomEvent(e,t){let s=this;var a=s.$xeTable;let r=a.customColumnList;var i=_xeUtils.default.findTree(r,e=>e===t);if(i){let{item:e,items:t,index:o,parent:l}=i;(l||o<t.length-1)&&(a.isCustomDragStatus=!0,s.$nextTick(()=>{e.parentId=null,t.splice(o,1),r.push(e),s.clearDragAnimateStatus()}))}},renderDragTip(e){var t=this.$xeTable,o=this.reactData.dragTipText;return e("div",{},[e("div",{ref:"refDragLineElem",class:["vxe-table-custom-popup--drag-line",{"is--guides":t.computeColumnDragOpts.showGuidesStatus}]}),e("div",{ref:"refDragTipElem",class:"vxe-table-custom-popup--drag-tip"},[e("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[e("div",{class:"vxe-table-custom-popup--drag-tip-status"},[e("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-group-status",getIcon().TABLE_DRAG_STATUS_AGG_GROUP]}),e("span",{class:["vxe-table-custom-popup--drag-tip-values-status",getIcon().TABLE_DRAG_STATUS_AGG_VALUES]}),e("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),e("div",{class:"vxe-table-custom-popup--drag-tip-content"},""+(o||""))])])])},renderSimplePanel(m){let u=_ui.VxeUI.getComponent("VxeButton"),p=this;var e=p;let g=p.$xeTable;var t=g,o=g,l=g.$xeGrid,s=g.$xeGantt,e=e.customStore,{treeConfig:t,rowGroupConfig:a,aggregateConfig:r}=t,{isCustomStatus:o,customColumnList:i,isCustomDragStatus:n}=o,c=g.computeCustomOpts,d=g.computeColumnDragOpts,v=e.popupStyle;let{immediate:x,checkMethod:b,visibleMethod:h,allowVisible:C,allowSort:E,allowFixed:T,allowGroup:f,allowValues:I,trigger:F,placement:V,showSortDragButton:L,showSortMoveButton:D,showSortPutButton:_}=c,y=g.computeIsMaxFixedColumn;var S=g.computeSize;let{isCrossDrag:P,isPeerDrag:R}=d;var d=c.slots||{},A=d.header,O=d.top,k=d.bottom,w=d.default,d=d.footer;let B=[];var $={},U=e.isAll,M=e.isIndeterminate,l=("hover"===F&&($.mouseenter=p.handleWrapperMouseenterEvent,$.mouseleave=p.handleWrapperMouseleaveEvent),{$table:g,$grid:l,$gantt:s,columns:i,isAllChecked:U,isAllIndeterminate:M,isCustomStatus:o});return _xeUtils.default.eachTree(i,(o,e,l,t,s)=>{if(!h||h({$table:g,column:o})){var a=o.renderVisible,r=o.halfVisible,i=o.children&&o.children.length,n=(0,_utils.formatText)(o.getTitle(),1);let t=!!b&&!b({$table:g,column:o});var c=!a,d=!(!P&&!R)&&x||1===o.level;B.push(m("li",{key:o.id,attrs:{colid:o.id},class:["vxe-table-custom--option","level--"+o.level,{"is--hidden":t||c,"is--group":i}],on:{dragstart:p.sortDragstartEvent,dragend:p.sortDragendEvent,dragover:p.sortDragoverEvent}},[C?m("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":a,"is--indeterminate":r,"is--disabled":t}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:e=>{t||p.changeCheckboxOption(o,e)}}},[m("span",{class:["vxe-checkbox--icon",r?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):renderEmptyElement(g),m("div",{class:"vxe-table-custom--name-option"},[(E&&L||f||I)&&(d||(f||I)&&!i)?m("div",{class:"vxe-table-custom--sort-option"},[m("span",{class:["vxe-table-custom--sort-btn",{"is--disabled":c}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:c?{}:{mousedown:p.sortMousedownEvent,mouseup:p.sortMouseupEvent}},[m("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):renderEmptyElement(g),"html"===o.type?m("div",{key:"1",class:"vxe-table-custom--checkbox-label",domProps:{innerHTML:n}}):m("div",{key:"0",class:"vxe-table-custom--checkbox-label",attrs:{title:n}},n)]),d&&(D||_)?m("div",{class:"vxe-table-custom--move-btn-option"},u?[D?m(u,{props:{mode:"text",icon:"vxe-icon-arrows-up",title:getI18n("vxe.custom.setting.moveUpTitle"),disabled:e<=0},on:{click(e){p.sortMoveUpEvent(e,o)}}}):renderEmptyElement(g),D?m(u,{props:{mode:"text",icon:"vxe-icon-arrows-down",title:getI18n("vxe.custom.setting.moveDnTitle"),disabled:e>=l.length-1},on:{click(e){p.sortMoveDnEvent(e,o)}}}):renderEmptyElement(g),_&&!s?m(u,{props:{mode:"text",icon:"vxe-icon-top",title:getI18n("vxe.custom.setting.putTopTitle"),disabled:e<=0},on:{click(e){p.sortMoveTopEvent(e,o)}}}):renderEmptyElement(g),_&&!s?m(u,{props:{mode:"text",icon:"vxe-icon-bottom",title:getI18n("vxe.custom.setting.putBottomTitle"),disabled:e>=l.length-1},on:{click(e){p.sortMoveBottomEvent(e,o)}}}):renderEmptyElement(g)]:[]):renderEmptyElement(g),!s&&T?m("div",{class:"vxe-table-custom--fixed-option"},[m(u,{props:{mode:"text",icon:"left"===o.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===o.renderFixed?"primary":"",disabled:c||y&&!o.renderFixed,title:getI18n("left"===o.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft")},on:{click:({$event:e})=>{p.changeFixedOption(o,"left",e)}}}),m(u,{props:{mode:"text",icon:"right"===o.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===o.renderFixed?"primary":"",disabled:c||y&&!o.renderFixed,title:getI18n("right"===o.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight")},on:{click:({$event:e})=>{p.changeFixedOption(o,"right",e)}}})]):renderEmptyElement(g)]))}}),m("div",{ref:"refElem",key:"simple",class:["vxe-table-custom-wrapper","placement--"+V,{["size--"+S]:S,"is--active":e.visible}],style:v},e.visible?[m("div",{ref:"refBodyWrapperElem",class:"vxe-table-custom-simple--body-wrapper"},[!t&&(r||a)&&g.getPivotTableAggregateSimplePanel?m(g.getPivotTableAggregateSimplePanel(),{props:{customStore:e}}):renderEmptyElement(g),m("div",{ref:"refCustomBodyElem",class:"vxe-table-custom--handle-wrapper"},[m("div",{class:"vxe-table-custom--header"},A?g.callSlot(A,l,m):[m("ul",{class:"vxe-table-custom--panel-list"},[m("li",{class:"vxe-table-custom--option"},[C?m("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":U,"is--indeterminate":M}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:p.allOptionEvent}},[m("span",{class:["vxe-checkbox--icon",M?getIcon().TABLE_CHECKBOX_INDETERMINATE:U?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),m("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):m("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),m("div",{class:"vxe-table-custom--body"},[O?m("div",{class:"vxe-table-custom--panel-top"},g.callSlot(O,l,m)):renderEmptyElement(g),w?m("div",{class:"vxe-table-custom--panel-body"},g.callSlot(w,l,m)):m("transition-group",{class:"vxe-table-custom--panel-list",props:{name:n?"vxe-table-custom--list":"",tag:"ul"},on:$},B),k?m("div",{class:"vxe-table-custom--panel-bottom"},g.callSlot(k,l,m)):renderEmptyElement(g)]),c.showFooter?m("div",{class:"vxe-table-custom--footer"},d?g.callSlot(d,l,m):[m("div",{class:"vxe-table-custom--footer-buttons"},[m(u,{props:{mode:"text",content:c.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!o},on:{click:p.resetCustomEvent}}),x?m(u,{props:{mode:"text",content:c.closeButtonText||getI18n("vxe.table.customClose")},on:{click:p.cancelCloseEvent}}):m(u,{props:{mode:"text",content:c.resetButtonText||getI18n("vxe.table.customCancel")},on:{click:p.cancelCustomEvent}}),x?renderEmptyElement(g):m(u,{props:{mode:"text",status:"primary",content:c.confirmButtonText||getI18n("vxe.table.customConfirm")},on:{click:p.confirmCustomEvent}})])]):null]),p.renderDragTip(m)])]:[])},renderPopupPanel(p){var e=_ui.VxeUI.getComponent("VxeModal"),t=_ui.VxeUI.getComponent("VxeDrawer");let g=_ui.VxeUI.getComponent("VxeButton"),v=_ui.VxeUI.getComponent("VxeNumberInput"),x=this;var o=x;let b=x.$xeTable;var l=b,s=b,F=b.$xeGrid,V=b.$xeGantt;let a=o.customStore,{treeConfig:r,rowGroupConfig:i,aggregateConfig:n,resizable:L}=l,{isCustomStatus:c,customColumnList:d}=s,m=b.computeCustomOpts;o=b.computeColumnDragOpts;let u=b.computeAggregateOpts.placement,{mode:P,immediate:h,showSortDragButton:R,showSortMoveButton:C,showSortPutButton:E,modalOptions:H,drawerOptions:G,allowVisible:T,allowSort:W,allowFixed:f,allowResizable:I,allowGroup:D,allowValues:_,checkMethod:y,visibleMethod:S}=m,A=b.computeColumnOpts,O=A.maxFixedSize,{minWidth:k,maxWidth:w}=b.computeResizableOpts;l=Object.assign({},H),s=Object.assign({},G);let B=b.computeIsMaxFixedColumn,{isCrossDrag:z,isPeerDrag:N}=o;o=m.slots||{};let K=o.header,X=o.top,q=o.bottom,j=o.default,Y=o.footer,Z=[],$=a.isAll,U=a.isIndeterminate,J="right"===u||"bottom"===u,M={$table:b,$grid:F,$gantt:V,columns:d,isAllChecked:$,isAllIndeterminate:U,isCustomStatus:c};_xeUtils.default.eachTree(d,(l,s,a,e,r)=>{if(!S||S({$table:b,column:l})){let e=0,t=0;I&&(i={$table:b,column:l,columnIndex:s,$columnIndex:s,$rowIndex:-1},k&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(k)?k(i):k)),w)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(w)?w(i):w));var i=l.renderVisible,n=l.halfVisible,c=(0,_utils.formatText)(l.getTitle(),1),d=l.children&&l.children.length;let o=!!y&&!y({$table:b,column:l});var m=!i,u=!(!z&&!N)&&h||1===l.level;Z.push(p("tr",{key:l.id,attrs:{colid:l.id},class:["vxe-table-custom-popup--row level--"+l.level,{"is--group":d}],on:{dragstart:x.sortDragstartEvent,dragend:x.sortDragendEvent,dragover:x.sortDragoverEvent}},[T?p("td",{class:"vxe-table-custom-popup--column-item col--visible"},[p("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":i,"is--indeterminate":n,"is--disabled":o}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:e=>{o||x.changeCheckboxOption(l,e)}}},[p("span",{class:["vxe-checkbox--icon",n?getIcon().TABLE_CHECKBOX_INDETERMINATE:i?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):renderEmptyElement(b),p("td",{class:"vxe-table-custom-popup--column-item col--name"},[p("div",{class:"vxe-table-custom-popup--name"},[W&&R||D||_?u||(D||_)&&!d?p("div",{class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":m}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:m?{}:{mousedown:x.sortMousedownEvent,mouseup:x.sortMouseupEvent}},[p("i",{class:getIcon().TABLE_CUSTOM_SORT})]):p("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):renderEmptyElement(b),"html"===l.type?p("div",{key:"1",class:"vxe-table-custom-popup--title",domProps:{innerHTML:c}}):p("div",{key:"0",class:"vxe-table-custom-popup--title",attrs:{title:c}},c),u&&(C||E)?p("div",{class:"vxe-table-custom-popup--move-btn"},g?[C?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.moveUp"),title:getI18n("vxe.custom.setting.moveUpTitle"),disabled:s<=0},on:{click(e){x.sortMoveUpEvent(e,l)}}}):renderEmptyElement(b),C?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.moveDn"),title:getI18n("vxe.custom.setting.moveDnTitle"),disabled:s>=a.length-1},on:{click(e){x.sortMoveDnEvent(e,l)}}}):renderEmptyElement(b),E&&!r?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.putTop"),title:getI18n("vxe.custom.setting.putTopTitle"),disabled:s<=0},on:{click(e){x.sortMoveTopEvent(e,l)}}}):renderEmptyElement(b),E&&!r?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.putBottom"),title:getI18n("vxe.custom.setting.putBottomTitle"),disabled:s>=a.length-1},on:{click(e){x.sortMoveBottomEvent(e,l)}}}):renderEmptyElement(b)]:[]):renderEmptyElement(b)])]),I?p("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[l.children&&l.children.length||!(_xeUtils.default.isBoolean(l.resizable)?l.resizable:A.resizable||L)?p("span","-"):v?p(v,{props:{type:"integer",immediate:!1,disabled:m,value:l.renderResizeWidth,min:e||void 0,max:t||void 0},on:{modelValue(e){l.renderResizeWidth=Math.max(0,Number(e))},change(){x.changeColumnWidth(l)}}}):renderEmptyElement(x)]):renderEmptyElement(b),f?p("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[r?p("span","-"):p("vxe-radio-group",{props:{value:l.renderFixed||"",type:"button",size:"mini",disabled:m,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:m||B},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:m},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:m||B}]},on:{change({label:e,$event:t}){x.changeFixedOption(l,e,t)}}})]):renderEmptyElement(b)]))}});o={default:()=>p("div",{ref:"refBodyWrapperElem",class:["vxe-table-custom-popup--body-wrapper","agg-layout--"+u]},j?b.callSlot(j,M,p):[J||r||!n&&!i||!b.getPivotTableAggregatePopupPanel?renderEmptyElement(b):p(b.getPivotTableAggregatePopupPanel(),{props:{customStore:a}}),p("div",{ref:"refCustomBodyElem",class:"vxe-table-custom-popup--handle-wrapper"},[X?p("div",{class:"vxe-table-custom-popup--table-top"},b.callSlot(X,M,p)):renderEmptyElement(b),p("div",{class:"vxe-table-custom-popup--table-wrapper"},[p("table",{},[p("colgroup",{},[T?p("col",{class:"vxe-table-custom-popup--table-col-seq"}):renderEmptyElement(b),p("col",{class:"vxe-table-custom-popup--table-col-title"}),I?p("col",{class:"vxe-table-custom-popup--table-col-width"}):renderEmptyElement(b),f?p("col",{class:"vxe-table-custom-popup--table-col-fixed"}):renderEmptyElement(b)]),p("thead",{},[p("tr",{},[T?p("th",{},[p("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":$,"is--indeterminate":U}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:x.allOptionEvent}},[p("span",{class:["vxe-checkbox--icon",U?getIcon().TABLE_CHECKBOX_INDETERMINATE:$?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),p("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):renderEmptyElement(b),p("th",{},getI18n("vxe.custom.setting.colTitle")),I?p("th",{},getI18n("vxe.custom.setting.colResizable")):renderEmptyElement(b),f?p("th",{},getI18n("vxe.custom.setting."+(O?"colFixedMax":"colFixed"),[O])):renderEmptyElement(b)])]),p("transition-group",{class:"vxe-table-custom--panel-list",props:{tag:"tbody",name:"vxe-table-custom--list"}},Z)])]),q?p("div",{class:"vxe-table-custom-popup--table-bottom"},b.callSlot(q,M,p)):renderEmptyElement(b),x.renderDragTip(p)]),J&&!r&&(n||i)&&b.getPivotTableAggregatePopupPanel?p(b.getPivotTableAggregatePopupPanel(),{props:{customStore:a}}):renderEmptyElement(b)]),footer:()=>Y?b.callSlot(Y,M,p):p("div",{class:"vxe-table-custom-popup--footer"},[p(g,{props:{content:m.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!c},on:{click:x.resetCustomEvent}}),h?p(g,{props:{content:m.resetButtonText||getI18n("vxe.table.customClose")},on:{click:x.cancelCloseEvent}}):p(g,{props:{content:m.resetButtonText||getI18n("vxe.custom.cstmCancel")},on:{click:x.cancelCustomEvent}}),h?renderEmptyElement(b):p(g,{props:{status:"primary",content:m.confirmButtonText||getI18n("vxe.custom.cstmConfirm")},on:{click:x.confirmCustomEvent}})])};return K&&(o.header=()=>b.callSlot(K,M,p)),"drawer"===P?t?p(t,{key:"drawer",props:{className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",s.className||""].join(" "),value:a.visible,title:s.title||getI18n("vxe.custom.cstmTitle"),width:s.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:s.position,resize:!!s.resize,escClosable:!!s.escClosable,maskClosable:!!s.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){a.visible=e}},scopedSlots:o}):renderEmptyElement(x):e?p(e,{key:"modal",props:{className:["vxe-table-custom-popup-wrapper","vxe-table--ignore-clear",l.className||""].join(" "),value:a.visible,title:l.title||getI18n("vxe.custom.cstmTitle"),width:l.width||Math.min(880,document.documentElement.clientWidth),minWidth:l.minWidth||700,height:l.height||Math.min(680,document.documentElement.clientHeight),minHeight:l.minHeight||400,showZoom:l.showZoom,showMaximize:l.showMaximize,showMinimize:l.showMinimize,mask:l.mask,lockView:l.lockView,resize:l.resize,escClosable:!!l.escClosable,maskClosable:!!l.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){a.visible=e}},scopedSlots:o}):renderEmptyElement(x)},renderVN(e){var t=this.$xeTable.computeCustomOpts;return["modal","drawer","popup"].includes(""+t.mode)?this.renderPopupPanel(e):this.renderSimplePanel(e)}},render(e){return this.renderVN(e)}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../../ui/src/comp"),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("table").errLog,{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;function showDropTip(e,t,o,l,s){var a,r,i,n=e.internalData,c=e.$refs.refBodyWrapperElem;c&&(i=e.$refs.refCustomBodyElem)&&(n=n.prevDragToChild,a=c.getBoundingClientRect(),i=i.getBoundingClientRect(),r=e.$refs.refDragLineElem,o?r&&(l?(o=o.getBoundingClientRect(),r.style.display="block",r.style.left=Math.max(0,i.x-a.x)+"px",r.style.top=Math.max(1,o.y+c.scrollTop-a.y)+"px",r.style.height=o.height+"px",r.style.width=o.width+"px",r.setAttribute("drag-pos",s),r.setAttribute("drag-to-child",n?"y":"n")):r.style.display=""):r&&(r.style.display="node"),i=e.$refs.refDragTipElem)&&(i.style.display="block",i.style.top=Math.min(c.clientHeight+c.scrollTop-i.clientHeight,t.clientY+c.scrollTop-a.y)+"px",i.style.left=Math.min(c.clientWidth+c.scrollLeft-i.clientWidth,t.clientX+c.scrollLeft-a.x)+"px",i.setAttribute("drag-status",l?n?"sub":"normal":"disabled"))}function hideDropTip(e){var t=e.$refs.refDragTipElem,e=e.$refs.refDragLineElem;t&&(t.style.display=""),e&&(e.style.display="")}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},provide(){return{$xeTableCustomPanel:this}},inject:{$xeTable:{default:null}},data(){return{reactData:{dragCol:null,dragGroupField:null,dragAggFnCol:null,dragTipText:""},internalData:{}}},computed:Object.assign({},{}),created(){let t=this,o=_ui.VxeUI.getComponent("VxeModal"),l=_ui.VxeUI.getComponent("VxeDrawer"),s=_ui.VxeUI.getComponent("VxeButton"),a=_ui.VxeUI.getComponent("VxeNumberInput"),r=_ui.VxeUI.getComponent("VxeRadioGroup");t.$nextTick(()=>{var e=t.$xeTable.customOpts,e=e.mode;o||"modal"!==e||errLog("vxe.error.reqComp",["vxe-modal"]),l||"drawer"!==e||errLog("vxe.error.reqComp",["vxe-drawer"]),s||errLog("vxe.error.reqComp",["vxe-button"]),a||errLog("vxe.error.reqComp",["vxe-number-input"]),r||errLog("vxe.error.reqComp",["vxe-radio-group"])})},methods:{handleWrapperMouseenterEvent(e){var t=this.$xeTable,o=this.customStore;o.activeWrapper=!0,t.customOpenEvent(e)},handleWrapperMouseleaveEvent(e){let t=this.$xeTable;let o=this.customStore;o.activeWrapper=!1,setTimeout(()=>{o.activeBtn||o.activeWrapper||t.customCloseEvent(e)},300)},getStoreData(){return{}},confirmCustomEvent({$event:e}){var t=this.$xeTable;t.isCustomStatus=!0,t.saveCustom(),t.closeCustom(),t.emitCustomEvent("confirm",e),t.emitCustomEvent("close",e)},cancelCloseEvent({$event:e}){var t=this.$xeTable;t.closeCustom(),t.emitCustomEvent("close",e)},cancelCustomEvent({$event:e}){var t=this.$xeTable;t.cancelCustom(),t.closeCustom(),t.emitCustomEvent("cancel",e),t.emitCustomEvent("close",e)},handleResetCustomEvent(e){var t=this.$xeTable;t.resetCustom(!0),t.closeCustom(),t.emitCustomEvent("reset",e),t.emitCustomEvent("close",e)},resetCustomEvent(t){_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&this.handleResetCustomEvent(t)}):this.handleResetCustomEvent(t)},handleOptionCheck(t){var e=this.$xeTable.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.renderVisible=e.children.every(e=>e.renderVisible),e.halfVisible=!e.renderVisible&&e.children.some(e=>e.renderVisible||e.halfVisible),this.handleOptionCheck(e))},changeCheckboxOption(e,t){var o=this.$xeTable,l=o;let s=!e.renderVisible;o.computeCustomOpts.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=s,e.renderVisible=s,e.halfVisible=!1}),l.isCustomStatus=!0,o.handleCustom(),o.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=s,e.halfVisible=!1}),this.handleOptionCheck(e),o.checkCustomStatus(),o.dispatchEvent("custom-visible-change",{column:e,checked:s},t)},changeColumnWidth(e){var t=this.$xeTable,o=t;t.computeCustomOpts.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,o.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:width"))},changeFixedOption(e,t,o){var l=this.$xeTable,s=l,a=l.computeIsMaxFixedColumn;let r=null;l.computeCustomOpts.immediate?(e.renderFixed===t?(r="",_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""})):a&&!e.renderFixed||(r=t,_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t})),s.isCustomStatus=!0,l.handleCustom(),l.saveCustomStore("update:fixed")):e.renderFixed===t?(r="",_xeUtils.default.eachTree([e],e=>{e.renderFixed=""})):a&&!e.renderFixed||(r=t,_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})),null!==r&&l.dispatchEvent("custom-fixed-change",{column:e,fixed:r},o)},allOptionEvent(e){var t=this.$xeTable,o=t.customStore,o=!o.isAll;t.toggleCustomAllCheckbox(),t.dispatchEvent("custom-visible-all",{checked:o},e)},updateColDropTipContent(){var e=this.$xeTable,t=this.reactData,o=t.dragCol,l=e.computeColumnDragOpts.tooltipMethod;let s="";s=l?""+(l({$table:e,column:o})||""):getI18n("vxe.custom.cstmDragTarget",[o&&"html"!==o.type?o.getTitle():""]),t.dragTipText=s},sortMousedownEvent(e){var t=this.$xeTable,o=this.reactData,e=e.currentTarget.parentElement.parentElement.parentElement,l=e.getAttribute("colid"),t=t.getColumnById(l);e.draggable=!0,o.dragCol=t,o.dragGroupField=null,o.dragAggFnCol=null,this.updateColDropTipContent(),(0,_dom.addClass)(e,"active--drag-origin")},sortMouseupEvent(e){var t=this.reactData,e=e.currentTarget.parentElement.parentElement.parentElement;hideDropTip(this),e.draggable=!1,t.dragCol=null,t.dragGroupField=null,(t.dragAggFnCol=null,_dom.removeClass)(e,"active--drag-origin")},sortDragstartEvent(e){var t=this.$xeTable,o=this.internalData,l=o.customDragTime;e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0),l&&clearTimeout(l),t.isCustomDragStatus=!0,o.prevDragGroupField=null,o.prevDragAggFnColid=null},sortDragendEvent(d){let m=this,u=m.$xeTable;var e=u;let p=u;var t=u,o=m.reactData,l=m.internalData;let g=e.mouseConfig,v=p.customColumnList,x=t.collectColumn,b=u.computeCustomOpts.immediate;e=d.currentTarget;let{isCrossDrag:h,isPeerDrag:C,isSelfToChildDrag:E,isToChildDrag:T,dragEndMethod:s}=u.computeColumnDragOpts;t=o.dragCol;let{prevDragCol:a,prevDragGroupField:r,prevDragAggFnColid:i,prevDragPos:f,prevDragToChild:I}=l,D="bottom"===f?1:0;if(r||i)u.handlePivotTableAggregatePanelDragendEvent&&u.handlePivotTableAggregatePanelDragendEvent(d);else if(a&&t&&a!==t){let n=t,c=a;Promise.resolve(!s||s({oldColumn:n,newColumn:c,dragColumn:n,dragPos:f,dragToChild:!!I,offsetIndex:D})).then(s=>{if(s){let e=-1,t=-1,o={},l=(_xeUtils.default.eachTree([n],e=>{o[e.id]=e}),!1);if(b){if(n.parentId&&c.parentId)if(C&&!h){if(n.parentId!==c.parentId)return}else{if(!h)return;if(o[c.id]&&(l=!0,!h||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!h)return}else if(c.parentId){if(!h)return;if(o[c.id]&&(l=!0,!h||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var a,r,i,s=_xeUtils.default.findTree(x,e=>e.id===n.id),s=(l&&h&&E?s&&({items:a,index:i}=s,(r=n.children||[]).forEach(e=>{e.parentId=n.parentId}),a.splice(i,1,...r),n.children=[]):s&&({items:a,index:i,parent:r}=s,a.splice(i,1),r||(e=i)),_xeUtils.default.findTree(x,e=>e.id===c.id));s&&({items:a,index:r,parent:i}=s,h&&T&&I?(n.parentId=c.id,c.children=(c.children||[]).concat([n])):(n.parentId=c.parentId,a.splice(r+D,0,n)),i||(t=r)),_xeUtils.default.eachTree(x,(e,t,o,l,s)=>{s||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(v,e=>e.id===n.id),v.splice(e,1),t=_xeUtils.default.findIndexOf(v,e=>e.id===c.id),v.splice(t+D,0,n);g&&(u.clearSelected&&u.clearSelected(),u.clearCellAreas)&&(u.clearCellAreas(),u.clearCopyCellArea());s={oldColumn:n,newColumn:c,dragColumn:n,dragPos:f,offsetIndex:D,_index:{newIndex:t,oldIndex:e}};u.dispatchEvent("custom-sort-change",s,d),u.dispatchEvent("column-dragend",s,d),b&&(p.customColumnList=x.slice(0),u.handleColDragSwapColumn()),m.clearDragAnimateStatus()}}).catch(()=>{})}hideDropTip(m),o.dragCol=null,o.dragGroupField=null,o.dragAggFnCol=null,l.prevDragGroupField=null,l.prevDragAggFnColid=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},sortDragoverEvent(e){var t=this,o=t.$xeTable,l=t.internalData,s=t.reactData.dragCol,{showSortDragButton:a,allowSort:r,immediate:i}=o.computeCustomOpts,{isCrossDrag:n,isPeerDrag:c,isToChildDrag:d}=o.computeColumnDragOpts,m=e.currentTarget,u=(0,_dom.hasControlKey)(e),p=m.getAttribute("colid"),o=o.getColumnById(p);l.prevDragGroupField=null,l.prevDragAggFnColid=null,o&&(n||c||1===o.level)&&(e.preventDefault(),p=e.clientY-m.getBoundingClientRect().y<m.clientHeight/2?"top":"bottom",!s||!a||!r||s&&s.id===o.id||!n&&(c?s.parentId!==o.parentId:1<o.level)||!i&&1<o.level||!n&&(c?s.parentId!==o.parentId:1<s.level)||!i&&1<s.level?showDropTip(t,e,m,!1,p):(l.prevDragToChild=!!(n&&d&&u&&i),l.prevDragCol=o,showDropTip(t,e,m,!0,l.prevDragPos=p)))},clearDragAnimateStatus(){var e=this.$xeTable;let t=this.internalData,o=e;t.customDragTime=setTimeout(()=>{o.isCustomDragStatus=!1,t.customDragTime=void 0},350)},sortMoveUpEvent(e,t){let l=this;var s=l.$xeTable,a=s.customColumnList,a=_xeUtils.default.findTree(a,e=>e===t);if(a){let{item:e,items:t,index:o}=a;0<o&&(s.isCustomDragStatus=!0,l.$nextTick(()=>{t.splice(o,1),t.splice(o-1,0,e),l.clearDragAnimateStatus()}))}},sortMoveDnEvent(e,t){let l=this;var s=l.$xeTable,a=s.customColumnList,a=_xeUtils.default.findTree(a,e=>e===t);if(a){let{item:e,items:t,index:o}=a;o<t.length-1&&(s.isCustomDragStatus=!0,l.$nextTick(()=>{t.splice(o,1),t.splice(o+1,0,e),l.clearDragAnimateStatus()}))}},sortMoveTopEvent(e,t){let s=this;var a=s.$xeTable;let r=a.customColumnList;var i=_xeUtils.default.findTree(r,e=>e===t);if(i){let{item:e,items:t,index:o,parent:l}=i;(l||0<o)&&(a.isCustomDragStatus=!0,s.$nextTick(()=>{e.parentId=null,t.splice(o,1),r.unshift(e),s.clearDragAnimateStatus()}))}},sortMoveBottomEvent(e,t){let s=this;var a=s.$xeTable;let r=a.customColumnList;var i=_xeUtils.default.findTree(r,e=>e===t);if(i){let{item:e,items:t,index:o,parent:l}=i;(l||o<t.length-1)&&(a.isCustomDragStatus=!0,s.$nextTick(()=>{e.parentId=null,t.splice(o,1),r.push(e),s.clearDragAnimateStatus()}))}},renderDragTip(e){var t=this.$xeTable,o=this.reactData.dragTipText;return e("div",{},[e("div",{ref:"refDragLineElem",class:["vxe-table-custom-popup--drag-line",{"is--guides":t.computeColumnDragOpts.showGuidesStatus}]}),e("div",{ref:"refDragTipElem",class:"vxe-table-custom-popup--drag-tip"},[e("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[e("div",{class:"vxe-table-custom-popup--drag-tip-status"},[e("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-group-status",getIcon().TABLE_DRAG_STATUS_AGG_GROUP]}),e("span",{class:["vxe-table-custom-popup--drag-tip-values-status",getIcon().TABLE_DRAG_STATUS_AGG_VALUES]}),e("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),e("div",{class:"vxe-table-custom-popup--drag-tip-content"},""+(o||""))])])])},renderSimplePanel(m){let u=_ui.VxeUI.getComponent("VxeButton"),p=this;var e=p;let g=p.$xeTable;var t=g,o=g,l=g.$xeGrid,s=g.$xeGantt,e=e.customStore,{treeConfig:t,rowGroupConfig:a,aggregateConfig:r}=t,{isCustomStatus:o,customColumnList:i,isCustomDragStatus:n}=o,c=g.computeCustomOpts,d=g.computeColumnDragOpts,v=e.popupStyle;let{immediate:x,checkMethod:b,visibleMethod:h,allowVisible:C,allowSort:E,allowFixed:T,allowGroup:f,allowValues:I,trigger:V,placement:F,showSortDragButton:L,showSortMoveButton:D,showSortPutButton:_}=c,y=g.computeIsMaxFixedColumn;var S=g.computeSize;let{isCrossDrag:P,isPeerDrag:R}=d;var d=c.slots||{},A=d.header,w=d.top,O=d.bottom,k=d.default,d=d.footer;let B=[];var $={},U=e.isAll,M=e.isIndeterminate,l=("hover"===V&&($.mouseenter=p.handleWrapperMouseenterEvent,$.mouseleave=p.handleWrapperMouseleaveEvent),{$table:g,$grid:l,$gantt:s,columns:i,isAllChecked:U,isAllIndeterminate:M,isCustomStatus:o});return _xeUtils.default.eachTree(i,(o,e,l,t,s)=>{if(!h||h({$table:g,column:o})){var a=o.renderVisible,r=o.halfVisible,i=o.children&&o.children.length,n=(0,_utils.formatText)(o.getTitle(),1);let t=!!b&&!b({$table:g,column:o});var c=!a,d=!(!P&&!R)&&x||1===o.level;B.push(m("li",{key:o.id,attrs:{colid:o.id},class:["vxe-table-custom--option","level--"+o.level,{"is--hidden":t||c,"is--group":i}],on:{dragstart:p.sortDragstartEvent,dragend:p.sortDragendEvent,dragover:p.sortDragoverEvent}},[C?m("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":a,"is--indeterminate":r,"is--disabled":t}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:e=>{t||p.changeCheckboxOption(o,e)}}},[m("span",{class:["vxe-checkbox--icon",r?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):renderEmptyElement(g),m("div",{class:"vxe-table-custom--name-option"},[(E&&L||f||I)&&(d||(f||I)&&!i)?m("div",{class:"vxe-table-custom--sort-option"},[m("span",{class:["vxe-table-custom--sort-btn",{"is--disabled":c}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:c?{}:{mousedown:p.sortMousedownEvent,mouseup:p.sortMouseupEvent}},[m("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):renderEmptyElement(g),"html"===o.type?m("div",{key:"1",class:"vxe-table-custom--checkbox-label",domProps:{innerHTML:n}}):m("div",{key:"0",class:"vxe-table-custom--checkbox-label",attrs:{title:n}},n)]),d&&(D||_)?m("div",{class:"vxe-table-custom--move-btn-option"},u?[D?m(u,{props:{mode:"text",icon:"vxe-icon-arrows-up",title:getI18n("vxe.custom.setting.moveUpTitle"),disabled:e<=0},on:{click(e){p.sortMoveUpEvent(e,o)}}}):renderEmptyElement(g),D?m(u,{props:{mode:"text",icon:"vxe-icon-arrows-down",title:getI18n("vxe.custom.setting.moveDnTitle"),disabled:e>=l.length-1},on:{click(e){p.sortMoveDnEvent(e,o)}}}):renderEmptyElement(g),_&&!s?m(u,{props:{mode:"text",icon:"vxe-icon-top",title:getI18n("vxe.custom.setting.putTopTitle"),disabled:e<=0},on:{click(e){p.sortMoveTopEvent(e,o)}}}):renderEmptyElement(g),_&&!s?m(u,{props:{mode:"text",icon:"vxe-icon-bottom",title:getI18n("vxe.custom.setting.putBottomTitle"),disabled:e>=l.length-1},on:{click(e){p.sortMoveBottomEvent(e,o)}}}):renderEmptyElement(g)]:[]):renderEmptyElement(g),!s&&T?m("div",{class:"vxe-table-custom--fixed-option"},[m(u,{props:{mode:"text",icon:"left"===o.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===o.renderFixed?"primary":"",disabled:c||y&&!o.renderFixed,title:getI18n("left"===o.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft")},on:{click:({$event:e})=>{p.changeFixedOption(o,"left",e)}}}),m(u,{props:{mode:"text",icon:"right"===o.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===o.renderFixed?"primary":"",disabled:c||y&&!o.renderFixed,title:getI18n("right"===o.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight")},on:{click:({$event:e})=>{p.changeFixedOption(o,"right",e)}}})]):renderEmptyElement(g)]))}}),m("div",{ref:"refElem",key:"simple",class:["vxe-table-custom-wrapper","placement--"+F,{["size--"+S]:S,"is--active":e.visible}],style:v},e.visible?[m("div",{ref:"refBodyWrapperElem",class:"vxe-table-custom-simple--body-wrapper"},[!t&&(r||a)&&g.getPivotTableAggregateSimplePanel?m(g.getPivotTableAggregateSimplePanel(),{props:{customStore:e}}):renderEmptyElement(g),m("div",{ref:"refCustomBodyElem",class:"vxe-table-custom--handle-wrapper"},[m("div",{class:"vxe-table-custom--header"},A?g.callSlot(A,l,m):[m("ul",{class:"vxe-table-custom--panel-list"},[m("li",{class:"vxe-table-custom--option"},[C?m("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":U,"is--indeterminate":M}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:p.allOptionEvent}},[m("span",{class:["vxe-checkbox--icon",M?getIcon().TABLE_CHECKBOX_INDETERMINATE:U?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),m("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):m("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),m("div",{class:"vxe-table-custom--body"},[w?m("div",{class:"vxe-table-custom--panel-top"},g.callSlot(w,l,m)):renderEmptyElement(g),k?m("div",{class:"vxe-table-custom--panel-body"},g.callSlot(k,l,m)):m("transition-group",{class:"vxe-table-custom--panel-list",props:{name:n?"vxe-table-custom--list":"",tag:"ul"},on:$},B),O?m("div",{class:"vxe-table-custom--panel-bottom"},g.callSlot(O,l,m)):renderEmptyElement(g)]),c.showFooter?m("div",{class:"vxe-table-custom--footer"},d?g.callSlot(d,l,m):[m("div",{class:"vxe-table-custom--footer-buttons"},[m(u,{props:{mode:"text",content:c.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!o},on:{click:p.resetCustomEvent}}),x?m(u,{props:{mode:"text",content:c.closeButtonText||getI18n("vxe.table.customClose")},on:{click:p.cancelCloseEvent}}):m(u,{props:{mode:"text",content:c.resetButtonText||getI18n("vxe.table.customCancel")},on:{click:p.cancelCustomEvent}}),x?renderEmptyElement(g):m(u,{props:{mode:"text",status:"primary",content:c.confirmButtonText||getI18n("vxe.table.customConfirm")},on:{click:p.confirmCustomEvent}})])]):null]),p.renderDragTip(m)])]:[])},renderPopupPanel(p){var e=_ui.VxeUI.getComponent("VxeModal"),t=_ui.VxeUI.getComponent("VxeDrawer");let g=_ui.VxeUI.getComponent("VxeButton"),v=_ui.VxeUI.getComponent("VxeNumberInput"),x=this;var o=x;let b=x.$xeTable;var l=b,s=b,V=b.$xeGrid,F=b.$xeGantt;let a=o.customStore,{treeConfig:r,rowGroupConfig:i,aggregateConfig:n,resizable:L}=l,{isCustomStatus:c,customColumnList:d}=s,m=b.computeCustomOpts;o=b.computeColumnDragOpts;let u=b.computeAggregateOpts.placement,{mode:P,immediate:h,showSortDragButton:R,showSortMoveButton:C,showSortPutButton:E,modalOptions:H,drawerOptions:G,allowVisible:T,allowSort:W,allowFixed:f,allowResizable:I,allowGroup:D,allowValues:_,checkMethod:y,visibleMethod:S}=m,A=b.computeColumnOpts,w=A.maxFixedSize,{minWidth:O,maxWidth:k}=b.computeResizableOpts;l=Object.assign({},H),s=Object.assign({},G);let B=b.computeIsMaxFixedColumn,{isCrossDrag:z,isPeerDrag:N}=o;o=m.slots||{};let K=o.header,X=o.top,q=o.bottom,j=o.default,Y=o.footer,Z=[],$=a.isAll,U=a.isIndeterminate,J="right"===u||"bottom"===u,M={$table:b,$grid:V,$gantt:F,columns:d,isAllChecked:$,isAllIndeterminate:U,isCustomStatus:c};_xeUtils.default.eachTree(d,(l,s,a,e,r)=>{if(!S||S({$table:b,column:l})){let e=0,t=0;I&&(i={$table:b,column:l,columnIndex:b.getColumnIndex(l),$columnIndex:b.getVMColumnIndex(l),_columnIndex:b.getVTColumnIndex(l),rowIndex:-1,_rowIndex:-1,$rowIndex:-1},O&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(O)?O(i):O)),k)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(k)?k(i):k));var i=l.renderVisible,n=l.halfVisible,c=(0,_utils.formatText)(l.getTitle(),1),d=l.children&&l.children.length;let o=!!y&&!y({$table:b,column:l});var m=!i,u=!(!z&&!N)&&h||1===l.level;Z.push(p("tr",{key:l.id,attrs:{colid:l.id},class:["vxe-table-custom-popup--row level--"+l.level,{"is--group":d}],on:{dragstart:x.sortDragstartEvent,dragend:x.sortDragendEvent,dragover:x.sortDragoverEvent}},[T?p("td",{class:"vxe-table-custom-popup--column-item col--visible"},[p("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":i,"is--indeterminate":n,"is--disabled":o}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:e=>{o||x.changeCheckboxOption(l,e)}}},[p("span",{class:["vxe-checkbox--icon",n?getIcon().TABLE_CHECKBOX_INDETERMINATE:i?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):renderEmptyElement(b),p("td",{class:"vxe-table-custom-popup--column-item col--name"},[p("div",{class:"vxe-table-custom-popup--name"},[W&&R||D||_?u||(D||_)&&!d?p("div",{class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":m}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:m?{}:{mousedown:x.sortMousedownEvent,mouseup:x.sortMouseupEvent}},[p("i",{class:getIcon().TABLE_CUSTOM_SORT})]):p("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):renderEmptyElement(b),"html"===l.type?p("div",{key:"1",class:"vxe-table-custom-popup--title",domProps:{innerHTML:c}}):p("div",{key:"0",class:"vxe-table-custom-popup--title",attrs:{title:c}},c),u&&(C||E)?p("div",{class:"vxe-table-custom-popup--move-btn"},g?[C?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.moveUp"),title:getI18n("vxe.custom.setting.moveUpTitle"),disabled:s<=0},on:{click(e){x.sortMoveUpEvent(e,l)}}}):renderEmptyElement(b),C?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.moveDn"),title:getI18n("vxe.custom.setting.moveDnTitle"),disabled:s>=a.length-1},on:{click(e){x.sortMoveDnEvent(e,l)}}}):renderEmptyElement(b),E&&!r?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.putTop"),title:getI18n("vxe.custom.setting.putTopTitle"),disabled:s<=0},on:{click(e){x.sortMoveTopEvent(e,l)}}}):renderEmptyElement(b),E&&!r?p(g,{props:{mode:"text",content:getI18n("vxe.custom.setting.putBottom"),title:getI18n("vxe.custom.setting.putBottomTitle"),disabled:s>=a.length-1},on:{click(e){x.sortMoveBottomEvent(e,l)}}}):renderEmptyElement(b)]:[]):renderEmptyElement(b)])]),I?p("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[l.children&&l.children.length||!(_xeUtils.default.isBoolean(l.resizable)?l.resizable:A.resizable||L)?p("span","-"):v?p(v,{props:{type:"integer",immediate:!1,disabled:m,value:l.renderResizeWidth,min:e||void 0,max:t||void 0},on:{modelValue(e){l.renderResizeWidth=Math.max(0,Number(e))},change(){x.changeColumnWidth(l)}}}):renderEmptyElement(x)]):renderEmptyElement(b),f?p("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[r?p("span","-"):p("vxe-radio-group",{props:{value:l.renderFixed||"",type:"button",size:"mini",disabled:m,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:m||B},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:m},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:m||B}]},on:{change({label:e,$event:t}){x.changeFixedOption(l,e,t)}}})]):renderEmptyElement(b)]))}});o={default:()=>p("div",{ref:"refBodyWrapperElem",class:["vxe-table-custom-popup--body-wrapper","agg-layout--"+u]},j?b.callSlot(j,M,p):[J||r||!n&&!i||!b.getPivotTableAggregatePopupPanel?renderEmptyElement(b):p(b.getPivotTableAggregatePopupPanel(),{props:{customStore:a}}),p("div",{ref:"refCustomBodyElem",class:"vxe-table-custom-popup--handle-wrapper"},[X?p("div",{class:"vxe-table-custom-popup--table-top"},b.callSlot(X,M,p)):renderEmptyElement(b),p("div",{class:"vxe-table-custom-popup--table-wrapper"},[p("table",{},[p("colgroup",{},[T?p("col",{class:"vxe-table-custom-popup--table-col-seq"}):renderEmptyElement(b),p("col",{class:"vxe-table-custom-popup--table-col-title"}),I?p("col",{class:"vxe-table-custom-popup--table-col-width"}):renderEmptyElement(b),f?p("col",{class:"vxe-table-custom-popup--table-col-fixed"}):renderEmptyElement(b)]),p("thead",{},[p("tr",{},[T?p("th",{},[p("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":$,"is--indeterminate":U}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:x.allOptionEvent}},[p("span",{class:["vxe-checkbox--icon",U?getIcon().TABLE_CHECKBOX_INDETERMINATE:$?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),p("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):renderEmptyElement(b),p("th",{},getI18n("vxe.custom.setting.colTitle")),I?p("th",{},getI18n("vxe.custom.setting.colResizable")):renderEmptyElement(b),f?p("th",{},getI18n("vxe.custom.setting."+(w?"colFixedMax":"colFixed"),[w])):renderEmptyElement(b)])]),p("transition-group",{class:"vxe-table-custom--panel-list",props:{tag:"tbody",name:"vxe-table-custom--list"}},Z)])]),q?p("div",{class:"vxe-table-custom-popup--table-bottom"},b.callSlot(q,M,p)):renderEmptyElement(b),x.renderDragTip(p)]),J&&!r&&(n||i)&&b.getPivotTableAggregatePopupPanel?p(b.getPivotTableAggregatePopupPanel(),{props:{customStore:a}}):renderEmptyElement(b)]),footer:()=>Y?b.callSlot(Y,M,p):p("div",{class:"vxe-table-custom-popup--footer"},[p(g,{props:{content:m.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!c},on:{click:x.resetCustomEvent}}),h?p(g,{props:{content:m.resetButtonText||getI18n("vxe.table.customClose")},on:{click:x.cancelCloseEvent}}):p(g,{props:{content:m.resetButtonText||getI18n("vxe.custom.cstmCancel")},on:{click:x.cancelCustomEvent}}),h?renderEmptyElement(b):p(g,{props:{status:"primary",content:m.confirmButtonText||getI18n("vxe.custom.cstmConfirm")},on:{click:x.confirmCustomEvent}})])};return K&&(o.header=()=>b.callSlot(K,M,p)),"drawer"===P?t?p(t,{key:"drawer",props:{className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",s.className||""].join(" "),value:a.visible,title:s.title||getI18n("vxe.custom.cstmTitle"),width:s.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:s.position,resize:!!s.resize,escClosable:!!s.escClosable,maskClosable:!!s.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){a.visible=e}},scopedSlots:o}):renderEmptyElement(x):e?p(e,{key:"modal",props:{className:["vxe-table-custom-popup-wrapper","vxe-table--ignore-clear",l.className||""].join(" "),value:a.visible,title:l.title||getI18n("vxe.custom.cstmTitle"),width:l.width||Math.min(880,document.documentElement.clientWidth),minWidth:l.minWidth||700,height:l.height||Math.min(680,document.documentElement.clientHeight),minHeight:l.minHeight||400,showZoom:l.showZoom,showMaximize:l.showMaximize,showMinimize:l.showMinimize,mask:l.mask,lockView:l.lockView,resize:l.resize,escClosable:!!l.escClosable,maskClosable:!!l.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){a.visible=e}},scopedSlots:o}):renderEmptyElement(x)},renderVN(e){var t=this.$xeTable.computeCustomOpts;return["modal","drawer","popup"].includes(""+t.mode)?this.renderPopupPanel(e):this.renderSimplePanel(e)}},render(e){return this.renderVN(e)}});
@@ -1022,17 +1022,31 @@ var _default = exports.default = {
1022
1022
  treeConfig
1023
1023
  } = props;
1024
1024
  const {
1025
- tableFullData
1025
+ tableFullData,
1026
+ tableFullTreeData
1026
1027
  } = internalData;
1027
1028
  const treeOpts = $xeTable.computeTreeOpts;
1029
+ const updateRecords = [];
1028
1030
  if (keepSource) {
1029
1031
  syncActivedCell($xeTable);
1030
1032
  if (treeConfig) {
1031
- return _xeUtils.default.filterTree(tableFullData, row => $xeTable.isUpdateByRow(row), treeOpts);
1033
+ const childrenField = treeOpts.children || treeOpts.childrenField;
1034
+ _xeUtils.default.eachTree(tableFullTreeData, row => {
1035
+ if ($xeTable.isUpdateByRow(row)) {
1036
+ updateRecords.push(row);
1037
+ }
1038
+ }, {
1039
+ children: childrenField
1040
+ });
1041
+ } else {
1042
+ tableFullData.forEach(row => {
1043
+ if ($xeTable.isUpdateByRow(row)) {
1044
+ updateRecords.push(row);
1045
+ }
1046
+ });
1032
1047
  }
1033
- return tableFullData.filter(row => $xeTable.isUpdateByRow(row));
1034
1048
  }
1035
- return [];
1049
+ return updateRecords;
1036
1050
  },
1037
1051
  /**
1038
1052
  * 处理激活编辑
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getConfig,renderer,getI18n}=_ui.VxeUI,browseObj=_xeUtils.default.browse();function getEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)}function setEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)}function removeCellSelectedClass(e){var e=e.$refs.refElem;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}function syncActivedCell(e){var{editStore:t,tableColumn:l}=e,e=e.computeEditOpts,t=t.actived;let{row:r,column:o}=t;r&&o&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,o))}function insertTreeRow(n,e,t){let{tableFullTreeData:a,afterFullData:d,fullDataRowIdData:s,fullAllDataRowIdData:u}=n;var l=n.computeTreeOpts;let{rowField:c,parentField:h,mapChildrenField:w}=l,g=l.children||l.childrenField,f=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(n,l),o=t?_xeUtils.default.findTree(a,e=>t===e[c],{children:w}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(n,o)],i=i?i.level:0;let e=o[g],t=o[w];_xeUtils.default.isArray(e)||(e=o[g]=[]),_xeUtils.default.isArray(t)||(t=o[w]=[]),e[f](l),t[f](l);o={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:e,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}else{t&&warnLog("vxe.error.unableInsert"),d[f](l),a[f](l);i={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}})}function handleInsertRowAt(a,t,e,d){var l=a;let o=a.treeConfig;var r=l.isRowGroupStatus;let{tableFullTreeData:s,afterFullData:i,mergeBodyList:n,tableFullData:u,fullDataRowIdData:c,fullAllDataRowIdData:h,insertRowMaps:w,removeRowMaps:g}=a;var f=a.computeTreeOpts;let{transform:x,parentField:m,rowField:v,mapChildrenField:p}=f,C=f.children||f.childrenField,R=(_xeUtils.default.isArray(t)||(t=[t]),e);if((_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e))&&(f=h[e])&&(R=f.row),!t.length)return Promise.resolve({row:null,rows:[]});a.handlePushStack();let _=a.defineField(t.map(e=>Object.assign(o&&x?{[p]:[],[C]:[]}:{},e))),I=[];if(o&&x&&(I=_xeUtils.default.toArrayTree(_,{key:v,parentKey:m,children:C})),_xeUtils.default.eqNull(R))if(o&&x)insertTreeRow(a,_,!1);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.unshift(e),u.unshift(e)}),n.forEach(e=>{var t=e.row;0<=t&&(e.row=t+_.length)});else if(-1===R)if(o&&x)insertTreeRow(a,_,!0);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.push(e),u.push(e)});else if(o&&x){let n=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:p});if(n){let r=n.parent,o=r?r[p]:s;e=h[(0,_util.getRowid)(a,r)];let i=e?e.level:0;if(I.forEach((e,t)=>{r?e[m]!==r[v]&&(errLog("vxe.error.errProp",[m+"="+e[m],m+"="+r[v]]),e[m]=r[v]):null!==e[m]&&(_xeUtils.default.eqNull(e[m])||errLog("vxe.error.errProp",[m+"="+e[m],"null"]),e[m]=null);let l=n.index+t;d&&(l+=1),o.splice(l,0,e)}),_xeUtils.default.eachTree(I,e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:o,parent:r,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};e[C]&&(e[p]=e[C]),c[t]=l,h[t]=l},{children:C}),r){f=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:C});if(f){t=f.items;let e=f.index;d&&(e+=1),t.splice(e,0,...I)}}}else warnLog("vxe.error.unableInsert"),insertTreeRow(a,_,!0)}else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(R)?R<i.length&&(r=R):r=a.findRowIndexOf(i,R),-1===(r=d?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,..._);e=a.findRowIndexOf(u,R);-1<e?u.splice(e+(d?1:0),0,..._):u.push(..._),n.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+_.length:(d?t+l>=r:t+l>r)&&(e.rowspan=l+_.length)})}f=e=>{var t=(0,_util.getRowid)(a,e);g[t]?(delete g[t],w[t]&&delete w[t]):w[t]=e};return o&&x?_xeUtils.default.eachTree(I,f,{children:p}):_.forEach(f),l.removeRowFlag++,l.insertRowFlag++,a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(o&&x),o&&x||a.updateAfterDataIndex(),a.updateFooter(),a.handleUpdateBodyMerge(),a.checkSelectionStatus(),l.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate(!0))).then(()=>({row:_.length?_[_.length-1]:null,rows:_}))}function handleInsertChildRowAt(e,l,r,o,i){var n=e.treeConfig,a=e.fullAllDataRowIdData;let{transform:t,rowField:d,parentField:s}=e.computeTreeOpts;if(n&&t){_xeUtils.default.isArray(l)||(l=[l]);let t=r;return(_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(n=a[r])&&(t=n.row),handleInsertRowAt(e,l.map(e=>Object.assign({},e,{[s]:t[d]})),o,i)}return errLog("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]})}function handleClearEdit(e,t,l){var r=e.editStore,{actived:r,focused:o}=r,{row:i,column:n}=r,a=e.computeValidOpts;if(i||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,i))return e.$nextTick();syncActivedCell(e),e.updateFooter(),r.args=null,r.row=null,r.column=null,e.dispatchEvent("edit-closed",{row:i,rowIndex:e.getRowIndex(i),$rowIndex:e.getVMRowIndex(i),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return o.row=null,o.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,o,i){let n=l.$xeGrid;var{editConfig:e,mouseConfig:a}=l,{editStore:d,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:d,focused:t}=d;let{row:h,column:w}=r;var g=w.editRender;let{isFocus:f,isPos:x,isClear:m}=i;var i=r.cell||l.getCellElement(h,w),v=u.beforeEditMethod||u.activeMethod;if((r.cell=i)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(g)&&!l.isPendingByRow(h)&&!l.isAggregateRecord(h)){if(d.row!==h||"cell"===c&&d.column!==w){let t="edit-disabled";if(!v||v(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),d.column&&handleClearEdit(l,o),t="edit-activated",w.renderHeight=i.offsetHeight,d.args=r,d.row=h,d.column=w,l.handlePushStack(),m&&(0,_util.setCellValue)(h,w,null),"row"===c?s.forEach(e=>getEditColumnModel(h,e)):getEditColumnModel(h,w);let e=u.afterEditMethod;l.$nextTick(()=>{f&&l.handleFocus(r,o),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},o),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},o)}else{e=d.column;a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),e&&e!==w&&(g=e.model,g.update&&(0,_util.setCellValue)(h,e,g.value),l.clearValidate)&&l.clearValidate(h,w),w.renderHeight=i.offsetHeight,d.args=r,d.column=w,x&&setTimeout(()=>{l.handleFocus(r,o)})}t.column=null,t.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let o=t;var i=t.editConfig,n=r.isPos;let a=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&a&&(0,_utils.isEnableConf)(i)&&(0,_utils.isEnableConf)(a.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(n?t.scrollToRow(l,a):null).then(()=>{var e=t.getCellElement(l,a);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:a,columnIndex:t.getColumnIndex(a),cell:e,$table:t},null,r),o._lastCallTime=Date.now()),t.$nextTick()}):t.$nextTick()}var _default=exports.default={methods:{_insert(e){return handleInsertRowAt(this,e,null)},_insertAt(e,t){return handleInsertRowAt(this,e,t)},_insertNextAt(e,t){return handleInsertRowAt(this,e,t,!0)},_insertChild(e,t){return handleInsertChildRowAt(this,e,t,null)},_insertChildAt(e,t,l){return handleInsertChildRowAt(this,e,t,l)},_insertChildNextAt(e,t,l){return handleInsertChildRowAt(this,e,t,l,!0)},_remove(e){let o=this;var t=o,l=o,r=o,t=t.treeConfig,{editStore:i,isRowGroupStatus:n}=l;let{tableFullTreeData:a,selectCheckboxMaps:d,afterFullData:s,mergeBodyList:u,tableFullData:c,pendingRowMaps:h,insertRowMaps:w,removeRowMaps:g}=r;var f=o.computeCheckboxOpts,x=o.computeTreeOpts;let{transform:m,mapChildrenField:v}=x,p=x.children||x.childrenField;x=i.actived,i=f.checkField;let C=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=c,e.length?(o.handlePushStack(),e.forEach(e=>{var t;o.isInsertByRow(e)||(t=(0,_util.getRowid)(o,e),g[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);d[e]&&delete d[e]}),l.updateCheckboxFlag++),c===e?(e=C=c.slice(0),r.tableFullData=[],r.afterFullData=[],o.clearMergeCells()):t&&m?e.forEach(e=>{let t=(0,_util.getRowid)(o,e);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:v}),l=(l&&(l=l.items.splice(l.index,1),C.push(l[0])),_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:p})),l=(l&&l.items.splice(l.index,1),o.findRowIndexOf(s,e));-1<l&&s.splice(l,1)}):n?warnLog(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=o.findRowIndexOf(c,e);-1<t&&(t=c.splice(t,1),C.push(t[0]));let r=o.findRowIndexOf(s,e);-1<r&&(u.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),s.splice(r,1))}),x.row&&-1<o.findRowIndexOf(e,x.row)&&o.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(o,e);w[e]&&delete w[e],h[e]&&delete h[e]}),l.removeRowFlag++,l.insertRowFlag++,l.pendingRowFlag++,o.cacheRowMap(!1),o.handleTableData(t&&m),o.updateFooter(),o.handleUpdateBodyMerge(),t&&m||o.updateAfterDataIndex(),o.checkSelectionStatus(),l.scrollYLoad&&o.updateScrollYSpace(),o.$nextTick().then(()=>(o.updateCellAreas(),o.recalculate(!0))).then(()=>({row:C.length?C[C.length-1]:null,rows:C}))):Promise.resolve({row:null,rows:[]})},_removeCheckboxRow(){let t=this;return t.remove(t.getCheckboxRecords()).then(e=>(t.clearCheckboxRow(),e))},_removeRadioRow(){let t=this;var e=t.getRadioRecord();return t.remove(e||[]).then(e=>(t.clearRadioRow(),e))},_removeCurrentRow(){let t=this;var e=t.getCurrentRecord();return t.remove(e||[]).then(e=>(t.clearCurrentRow(),e))},_getRecordset(){let l=this;var e=l.getRemoveRecords(),t=l.getPendingRecords();let r=e.concat(t);var o=l.getUpdateRecords().filter(t=>!r.some(e=>l.eqRow(e,t)));return{insertRecords:l.getInsertRecords(),removeRecords:e,updateRecords:o,pendingRecords:t}},_getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=this,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){var e=this.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},_getUpdateRecords(){let t=this;var{keepSource:e,treeConfig:l}=t,r=t.tableFullData,o=t.computeTreeOpts;return e?(syncActivedCell(t),l?_xeUtils.default.filterTree(r,e=>t.isUpdateByRow(e),o):r.filter(e=>t.isUpdateByRow(e))):[]},handleEdit(e,t,l){return handleEditActive(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){getEditColumnModel(e,t)},_setColumnModel(e,t){setEditColumnModel(e,t)},_syncActivedCell(){syncActivedCell(this)},_clearActived(e){return warnLog("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return handleClearEdit(this,null,e)},handleClearEdit(e,t){return handleClearEdit(this,e,t)},_getActiveRecord(){var e=(warnLog("vxe.error.delFunc",["getActiveRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditRecord(){var e=(warnLog("vxe.error.delFunc",["getEditRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditCell(){var e=this.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,rowIndex:this.getRowIndex(e),column:t,columnIndex:this.getColumnIndex(t)}:null},_isActiveByRow(e){return warnLog("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:o,column:i,cell:n}=r,a=i.editRender,d=this.computeEditOpts;if((0,_utils.isEnableConf)(a)){var s=renderer.get(a.name);let e=a.autofocus||a.autoFocus,t=a.autoSelect||a.autoselect,l;d.autoFocus&&(!e&&s&&(e=s.tableAutoFocus||s.tableAutofocus||s.autoFocus||s.autofocus),!t&&s&&(t=s.tableAutoSelect||s.autoSelect||s.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=!0===e?n.querySelector("input,textarea"):n.querySelector(e))&&l.focus()),l?t?l.select():browseObj.msie&&((a=l.createTextRange()).collapse(!1),a.select()):d.autoPos&&!i.fixed&&this.scrollToRow(o,i)}},_setActiveRow(e){return warnLog("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t,l){var r=this.visibleColumn;let o=_xeUtils.default.find(r,e=>(0,_utils.isEnableConf)(e.editRender)),i=!1;return t&&(i=!0)!==t&&(o=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,o,Object.assign({isPos:i,isFocus:i},l))},_setActiveCell(e,t){return warnLog("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t,l){return handleEditCell(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},_setSelectCell(e,t){var l=this,r=l.tableData,o=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&-1<(o=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:o,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,o=l.editStore,i=l.computeMouseOpts;let n=l.computeEditOpts,{actived:a,selected:d}=o,{row:s,column:u}=e,c=r&&i.selected;return!c||d.row===s&&d.column===u||(a.row!==s||"cell"===n.mode&&a.column!==u)&&(handleClearEdit(l,t),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),d.args=e,d.row=s,d.column=u,c&&l.addCellSelectedClass(),l.focus(),t)&&l.dispatchEvent("cell-selected",e,t),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}:null},_clearSelected(){var e=this.editStore,e=e.selected;return e.row=null,e.column=null,removeCellSelectedClass(this),this.$nextTick()},reColTitleSdCls(){var e=this.elemStore,e=e["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),e=>(0,_dom.removeClass)(e,"col--title-selected"))},addCellSelectedClass(){var e=this.editStore,e=e.selected,{row:e,column:t}=e;removeCellSelectedClass(this),e&&t&&(e=this.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getConfig,renderer,getI18n}=_ui.VxeUI,browseObj=_xeUtils.default.browse();function getEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)}function setEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)}function removeCellSelectedClass(e){var e=e.$refs.refElem;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}function syncActivedCell(e){var{editStore:t,tableColumn:l}=e,e=e.computeEditOpts,t=t.actived;let{row:r,column:o}=t;r&&o&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,o))}function insertTreeRow(n,e,t){let{tableFullTreeData:a,afterFullData:d,fullDataRowIdData:s,fullAllDataRowIdData:u}=n;var l=n.computeTreeOpts;let{rowField:c,parentField:h,mapChildrenField:w}=l,g=l.children||l.childrenField,f=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(n,l),o=t?_xeUtils.default.findTree(a,e=>t===e[c],{children:w}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(n,o)],i=i?i.level:0;let e=o[g],t=o[w];_xeUtils.default.isArray(e)||(e=o[g]=[]),_xeUtils.default.isArray(t)||(t=o[w]=[]),e[f](l),t[f](l);o={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:e,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}else{t&&warnLog("vxe.error.unableInsert"),d[f](l),a[f](l);i={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}})}function handleInsertRowAt(a,t,e,d){var l=a;let o=a.treeConfig;var r=l.isRowGroupStatus;let{tableFullTreeData:s,afterFullData:i,mergeBodyList:n,tableFullData:u,fullDataRowIdData:c,fullAllDataRowIdData:h,insertRowMaps:w,removeRowMaps:g}=a;var f=a.computeTreeOpts;let{transform:x,parentField:m,rowField:v,mapChildrenField:p}=f,C=f.children||f.childrenField,R=(_xeUtils.default.isArray(t)||(t=[t]),e);if((_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e))&&(f=h[e])&&(R=f.row),!t.length)return Promise.resolve({row:null,rows:[]});a.handlePushStack();let _=a.defineField(t.map(e=>Object.assign(o&&x?{[p]:[],[C]:[]}:{},e))),I=[];if(o&&x&&(I=_xeUtils.default.toArrayTree(_,{key:v,parentKey:m,children:C})),_xeUtils.default.eqNull(R))if(o&&x)insertTreeRow(a,_,!1);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.unshift(e),u.unshift(e)}),n.forEach(e=>{var t=e.row;0<=t&&(e.row=t+_.length)});else if(-1===R)if(o&&x)insertTreeRow(a,_,!0);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.push(e),u.push(e)});else if(o&&x){let n=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:p});if(n){let r=n.parent,o=r?r[p]:s;e=h[(0,_util.getRowid)(a,r)];let i=e?e.level:0;if(I.forEach((e,t)=>{r?e[m]!==r[v]&&(errLog("vxe.error.errProp",[m+"="+e[m],m+"="+r[v]]),e[m]=r[v]):null!==e[m]&&(_xeUtils.default.eqNull(e[m])||errLog("vxe.error.errProp",[m+"="+e[m],"null"]),e[m]=null);let l=n.index+t;d&&(l+=1),o.splice(l,0,e)}),_xeUtils.default.eachTree(I,e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:o,parent:r,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};e[C]&&(e[p]=e[C]),c[t]=l,h[t]=l},{children:C}),r){f=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:C});if(f){t=f.items;let e=f.index;d&&(e+=1),t.splice(e,0,...I)}}}else warnLog("vxe.error.unableInsert"),insertTreeRow(a,_,!0)}else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(R)?R<i.length&&(r=R):r=a.findRowIndexOf(i,R),-1===(r=d?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,..._);e=a.findRowIndexOf(u,R);-1<e?u.splice(e+(d?1:0),0,..._):u.push(..._),n.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+_.length:(d?t+l>=r:t+l>r)&&(e.rowspan=l+_.length)})}f=e=>{var t=(0,_util.getRowid)(a,e);g[t]?(delete g[t],w[t]&&delete w[t]):w[t]=e};return o&&x?_xeUtils.default.eachTree(I,f,{children:p}):_.forEach(f),l.removeRowFlag++,l.insertRowFlag++,a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(o&&x),o&&x||a.updateAfterDataIndex(),a.updateFooter(),a.handleUpdateBodyMerge(),a.checkSelectionStatus(),l.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate(!0))).then(()=>({row:_.length?_[_.length-1]:null,rows:_}))}function handleInsertChildRowAt(e,l,r,o,i){var n=e.treeConfig,a=e.fullAllDataRowIdData;let{transform:t,rowField:d,parentField:s}=e.computeTreeOpts;if(n&&t){_xeUtils.default.isArray(l)||(l=[l]);let t=r;return(_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(n=a[r])&&(t=n.row),handleInsertRowAt(e,l.map(e=>Object.assign({},e,{[s]:t[d]})),o,i)}return errLog("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]})}function handleClearEdit(e,t,l){var r=e.editStore,{actived:r,focused:o}=r,{row:i,column:n}=r,a=e.computeValidOpts;if(i||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,i))return e.$nextTick();syncActivedCell(e),e.updateFooter(),r.args=null,r.row=null,r.column=null,e.dispatchEvent("edit-closed",{row:i,rowIndex:e.getRowIndex(i),$rowIndex:e.getVMRowIndex(i),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return o.row=null,o.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,o,i){let n=l.$xeGrid;var{editConfig:e,mouseConfig:a}=l,{editStore:d,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:d,focused:t}=d;let{row:h,column:w}=r;var g=w.editRender;let{isFocus:f,isPos:x,isClear:m}=i;var i=r.cell||l.getCellElement(h,w),v=u.beforeEditMethod||u.activeMethod;if((r.cell=i)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(g)&&!l.isPendingByRow(h)&&!l.isAggregateRecord(h)){if(d.row!==h||"cell"===c&&d.column!==w){let t="edit-disabled";if(!v||v(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),d.column&&handleClearEdit(l,o),t="edit-activated",w.renderHeight=i.offsetHeight,d.args=r,d.row=h,d.column=w,l.handlePushStack(),m&&(0,_util.setCellValue)(h,w,null),"row"===c?s.forEach(e=>getEditColumnModel(h,e)):getEditColumnModel(h,w);let e=u.afterEditMethod;l.$nextTick(()=>{f&&l.handleFocus(r,o),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},o),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},o)}else{e=d.column;a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),e&&e!==w&&(g=e.model,g.update&&(0,_util.setCellValue)(h,e,g.value),l.clearValidate)&&l.clearValidate(h,w),w.renderHeight=i.offsetHeight,d.args=r,d.column=w,x&&setTimeout(()=>{l.handleFocus(r,o)})}t.column=null,t.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let o=t;var i=t.editConfig,n=r.isPos;let a=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&a&&(0,_utils.isEnableConf)(i)&&(0,_utils.isEnableConf)(a.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(n?t.scrollToRow(l,a):null).then(()=>{var e=t.getCellElement(l,a);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:a,columnIndex:t.getColumnIndex(a),cell:e,$table:t},null,r),o._lastCallTime=Date.now()),t.$nextTick()}):t.$nextTick()}var _default=exports.default={methods:{_insert(e){return handleInsertRowAt(this,e,null)},_insertAt(e,t){return handleInsertRowAt(this,e,t)},_insertNextAt(e,t){return handleInsertRowAt(this,e,t,!0)},_insertChild(e,t){return handleInsertChildRowAt(this,e,t,null)},_insertChildAt(e,t,l){return handleInsertChildRowAt(this,e,t,l)},_insertChildNextAt(e,t,l){return handleInsertChildRowAt(this,e,t,l,!0)},_remove(e){let o=this;var t=o,l=o,r=o,t=t.treeConfig,{editStore:i,isRowGroupStatus:n}=l;let{tableFullTreeData:a,selectCheckboxMaps:d,afterFullData:s,mergeBodyList:u,tableFullData:c,pendingRowMaps:h,insertRowMaps:w,removeRowMaps:g}=r;var f=o.computeCheckboxOpts,x=o.computeTreeOpts;let{transform:m,mapChildrenField:v}=x,p=x.children||x.childrenField;x=i.actived,i=f.checkField;let C=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=c,e.length?(o.handlePushStack(),e.forEach(e=>{var t;o.isInsertByRow(e)||(t=(0,_util.getRowid)(o,e),g[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);d[e]&&delete d[e]}),l.updateCheckboxFlag++),c===e?(e=C=c.slice(0),r.tableFullData=[],r.afterFullData=[],o.clearMergeCells()):t&&m?e.forEach(e=>{let t=(0,_util.getRowid)(o,e);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:v}),l=(l&&(l=l.items.splice(l.index,1),C.push(l[0])),_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:p})),l=(l&&l.items.splice(l.index,1),o.findRowIndexOf(s,e));-1<l&&s.splice(l,1)}):n?warnLog(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=o.findRowIndexOf(c,e);-1<t&&(t=c.splice(t,1),C.push(t[0]));let r=o.findRowIndexOf(s,e);-1<r&&(u.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),s.splice(r,1))}),x.row&&-1<o.findRowIndexOf(e,x.row)&&o.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(o,e);w[e]&&delete w[e],h[e]&&delete h[e]}),l.removeRowFlag++,l.insertRowFlag++,l.pendingRowFlag++,o.cacheRowMap(!1),o.handleTableData(t&&m),o.updateFooter(),o.handleUpdateBodyMerge(),t&&m||o.updateAfterDataIndex(),o.checkSelectionStatus(),l.scrollYLoad&&o.updateScrollYSpace(),o.$nextTick().then(()=>(o.updateCellAreas(),o.recalculate(!0))).then(()=>({row:C.length?C[C.length-1]:null,rows:C}))):Promise.resolve({row:null,rows:[]})},_removeCheckboxRow(){let t=this;return t.remove(t.getCheckboxRecords()).then(e=>(t.clearCheckboxRow(),e))},_removeRadioRow(){let t=this;var e=t.getRadioRecord();return t.remove(e||[]).then(e=>(t.clearRadioRow(),e))},_removeCurrentRow(){let t=this;var e=t.getCurrentRecord();return t.remove(e||[]).then(e=>(t.clearCurrentRow(),e))},_getRecordset(){let l=this;var e=l.getRemoveRecords(),t=l.getPendingRecords();let r=e.concat(t);var o=l.getUpdateRecords().filter(t=>!r.some(e=>l.eqRow(e,t)));return{insertRecords:l.getInsertRecords(),removeRecords:e,updateRecords:o,pendingRecords:t}},_getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=this,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){var e=this.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},_getUpdateRecords(){let t=this;var{keepSource:e,treeConfig:l}=t,{tableFullData:r,tableFullTreeData:o}=t,i=t.computeTreeOpts;let n=[];return e&&(syncActivedCell(t),l?(e=i.children||i.childrenField,_xeUtils.default.eachTree(o,e=>{t.isUpdateByRow(e)&&n.push(e)},{children:e})):r.forEach(e=>{t.isUpdateByRow(e)&&n.push(e)})),n},handleEdit(e,t,l){return handleEditActive(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){getEditColumnModel(e,t)},_setColumnModel(e,t){setEditColumnModel(e,t)},_syncActivedCell(){syncActivedCell(this)},_clearActived(e){return warnLog("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return handleClearEdit(this,null,e)},handleClearEdit(e,t){return handleClearEdit(this,e,t)},_getActiveRecord(){var e=(warnLog("vxe.error.delFunc",["getActiveRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditRecord(){var e=(warnLog("vxe.error.delFunc",["getEditRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditCell(){var e=this.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,rowIndex:this.getRowIndex(e),column:t,columnIndex:this.getColumnIndex(t)}:null},_isActiveByRow(e){return warnLog("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:o,column:i,cell:n}=r,a=i.editRender,d=this.computeEditOpts;if((0,_utils.isEnableConf)(a)){var s=renderer.get(a.name);let e=a.autofocus||a.autoFocus,t=a.autoSelect||a.autoselect,l;d.autoFocus&&(!e&&s&&(e=s.tableAutoFocus||s.tableAutofocus||s.autoFocus||s.autofocus),!t&&s&&(t=s.tableAutoSelect||s.autoSelect||s.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=!0===e?n.querySelector("input,textarea"):n.querySelector(e))&&l.focus()),l?t?l.select():browseObj.msie&&((a=l.createTextRange()).collapse(!1),a.select()):d.autoPos&&!i.fixed&&this.scrollToRow(o,i)}},_setActiveRow(e){return warnLog("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t,l){var r=this.visibleColumn;let o=_xeUtils.default.find(r,e=>(0,_utils.isEnableConf)(e.editRender)),i=!1;return t&&(i=!0)!==t&&(o=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,o,Object.assign({isPos:i,isFocus:i},l))},_setActiveCell(e,t){return warnLog("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t,l){return handleEditCell(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},_setSelectCell(e,t){var l=this,r=l.tableData,o=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&-1<(o=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:o,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,o=l.editStore,i=l.computeMouseOpts;let n=l.computeEditOpts,{actived:a,selected:d}=o,{row:s,column:u}=e,c=r&&i.selected;return!c||d.row===s&&d.column===u||(a.row!==s||"cell"===n.mode&&a.column!==u)&&(handleClearEdit(l,t),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),d.args=e,d.row=s,d.column=u,c&&l.addCellSelectedClass(),l.focus(),t)&&l.dispatchEvent("cell-selected",e,t),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}:null},_clearSelected(){var e=this.editStore,e=e.selected;return e.row=null,e.column=null,removeCellSelectedClass(this),this.$nextTick()},reColTitleSdCls(){var e=this.elemStore,e=e["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),e=>(0,_dom.removeClass)(e,"col--title-selected"))},addCellSelectedClass(){var e=this.editStore,e=e.selected,{row:e,column:t}=e;removeCellSelectedClass(this),e&&t&&(e=this.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}}};
@@ -184,10 +184,14 @@ class ColumnInfo {
184
184
  colSpan: 1,
185
185
  // 数据排序
186
186
  order: null,
187
+ // 用于记录排序类型,升序和倒序
187
188
  sortTime: 0,
189
+ // 用于多列的先后顺序
188
190
  // 列排序
189
191
  sortNumber: 0,
192
+ // 用于记录自定义列顺序
190
193
  renderSortNumber: 0,
194
+ // 用于记录自定义列顺序
191
195
  renderAggFn: '',
192
196
  renderAggDigits: null,
193
197
  renderAggFormat: null,
@@ -198,8 +202,10 @@ class ColumnInfo {
198
202
  renderResizeWidth: 0,
199
203
  renderAutoWidth: 0,
200
204
  resizeWidth: 0,
205
+ // 手动调整
201
206
  renderLeft: 0,
202
207
  renderArgs: [],
208
+ // 渲染参数可用于扩展
203
209
  model: {},
204
210
  renderHeader: renderHeader || colConfs.renderHeader,
205
211
  renderCell: renderCell || colConfs.renderCell,
@@ -240,21 +240,22 @@ function renderHeads(h, _vm, isOptimizeMode, renderColumnList) {
240
240
  footerRowClassName,
241
241
  footerRowStyle
242
242
  } = tableProps;
243
- return footerTableData.map((row, $rowIndex) => {
244
- const _rowIndex = $rowIndex;
243
+ return footerTableData.map((row, _rowIndex) => {
244
+ const $rowIndex = _rowIndex;
245
245
  const rowParams = {
246
246
  $table: $xeTable,
247
247
  row,
248
+ rowIndex: _rowIndex,
248
249
  _rowIndex,
249
250
  $rowIndex,
250
251
  fixed: fixedType,
251
252
  type: renderType
252
253
  };
253
254
  return h('tr', {
254
- key: $rowIndex,
255
+ key: _rowIndex,
255
256
  class: ['vxe-footer--row', footerRowClassName ? _xeUtils.default.isFunction(footerRowClassName) ? footerRowClassName(rowParams) : footerRowClassName : ''],
256
257
  style: footerRowStyle ? _xeUtils.default.isFunction(footerRowStyle) ? footerRowStyle(rowParams) : footerRowStyle : undefined
257
- }, renderRows(h, _vm, isOptimizeMode, renderColumnList, footerTableData, row, $rowIndex, _rowIndex));
258
+ }, renderRows(h, _vm, isOptimizeMode, renderColumnList, footerTableData, row, _rowIndex, _rowIndex));
258
259
  });
259
260
  }
260
261
  var _default = exports.default = /* define-vxe-component start */(0, _comp.defineVxeComponent)({
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_comp=require("../../ui/src/comp"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let sourceType="table",renderType="footer",{renderer,renderEmptyElement}=_ui.VxeUI;function renderRows(h,e,_,F,T,$,S,E){let I=e.$parent;var l=I,r=I,t=I;let z=I.$xeGrid,R=I.$xeGantt,D=e.fixedType,{resizable:O,border:k,footerCellClassName:q,footerCellStyle:A,footerAlign:U,footerSpanMethod:X,align:L,columnKey:H,showFooterOverflow:M}=l,{scrollXLoad:N,scrollYLoad:V,overflowX:G,currentColumn:W,mergeFootFlag:B}=r,{fullColumnIdData:K,mergeFooterList:j,mergeFooterCellMaps:P,scrollXStore:Y}=t,ee=I.computeVirtualXOpts,le=I.computeFooterTooltipOpts,re=I.resizableOpts.isAllColumnDrag,J=I.computeColumnOpts;e=I.computeDefaultRowHeight;let te=I.computeCellOpts,Q=I.computeFooterCellOpts,Z=(0,_util.getCalcHeight)(Q.height)||e;return F.map((l,e)=>{var{type:r,showFooterOverflow:t,footerAlign:o,align:i,footerClassName:a,editRender:n,cellRender:s}=l,d=l.id,u=K[d]||{},n=n||s,s=n?renderer.get(n.name):null;let p=le.showAll;var n=G&&(D?l.fixed!==D:!!l.fixed),c=(_xeUtils.default.isBoolean(Q.padding)?Q:te).padding,t=_xeUtils.default.eqNull(t)?M:t,o=o||(s?s.tableFooterCellAlign:"")||U||i||(s?s.tableCellAlign:"")||L,i="ellipsis"===t;let f="title"===t,x=!0===t||"tooltip"===t;var s=f||x||i,t=_xeUtils.default.isBoolean(l.resizable)?l.resizable:J.resizable||O,m={colid:d},v={},g=u.index,u=u._index,y=u;let b={source:sourceType,$table:I,$grid:z,$gantt:R,row:$,rowIndex:E,_rowIndex:E,$rowIndex:S,column:l,columnIndex:g,$columnIndex:e,_columnIndex:u,itemIndex:y,items:$,fixed:D,type:renderType,data:T},w=((f||x||p)&&(v.mouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(x||p)&&I.triggerFooterTooltipEvent(e,b)}),(x||p)&&(v.mouseleave=e=>{(x||p)&&I.handleTargetLeaveEvent(e)}),v.click=e=>{I.triggerFooterCellClickEvent(e,b)},!(v.dblclick=e=>{I.triggerFooterCellDblclickEvent(e,b)}));if(B&&j.length){g=P[E+":"+u];if(g){var{rowspan:y,colspan:g}=g;if(!y||!g)return null;1<y&&(w=!0,m.rowspan=y),1<g&&(w=!0,m.colspan=g)}}else if(X){var{rowspan:y=1,colspan:g=1}=X(b)||{};if(!y||!g)return null;1<y&&(m.rowspan=y),1<g&&(m.colspan=g)}y=e===F.length-1,g=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let C=!1;_&&G&&!w&&N&&10<F.length&&!l.fixed&&!ee.immediate&&(u<Y.visibleStartIndex-Y.preloadSize||u>Y.visibleEndIndex+Y.preloadSize)&&(C=!0);u={};return s?u.height=Z+"px":u.minHeight=Z+"px",h("td",{class:["vxe-table--column vxe-footer--column",l.id,{["col--"+o]:o,["col--"+r]:r,"col--last":y,"fixed--width":!g,"fixed--hidden":n,"is--padding":c,"col--ellipsis":s,"col--current":W===l},(0,_utils.getClass)(a,b),(0,_utils.getClass)(q,b)],attrs:m,style:A?_xeUtils.default.isFunction(A)?A(b):A:void 0,on:v,key:H||N||V||J.useKey||J.drag?l.id:e},[h("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":x,"c--ellipsis":i}],style:u},C?[]:[h("div",{attrs:{colid:d},class:"vxe-cell--wrapper vxe-footer-cell--wrapper"},l.renderFooter(h,b))]),!n&&t&&re?h("div",{class:["vxe-cell--col-resizable",{"is--line":!k||"none"===k}],on:{mousedown:e=>I.handleColResizeMousedownEvent(e,D,b),dblclick:e=>I.handleColResizeDblclickEvent(e,b)}}):renderEmptyElement(I)])})}function renderHeads(o,i,a,n){let s=i.$parent;var e=s;let{fixedType:d,footerTableData:u}=i,{footerRowClassName:p,footerRowStyle:c}=e;return u.map((e,l)=>{var r=l,t={$table:s,row:e,_rowIndex:r,$rowIndex:l,fixed:d,type:renderType};return o("tr",{key:l,class:["vxe-footer--row",p?_xeUtils.default.isFunction(p)?p(t):p:""],style:c?_xeUtils.default.isFunction(c)?c(t):c:void 0},renderRows(o,i,a,n,u,e,l,r))})}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-footer-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refFooterScroll,r[l+"table"]=e.$refs.refFooterTable,r[l+"colgroup"]=e.$refs.refFooterColgroup,r[l+"list"]=e.$refs.refFooterTFoot,r[l+"xSpace"]=e.$refs.refFooterXSpace},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null},render(r){let l=this.$parent;var e=l,t=l,o=l.xID;let{fixedType:i,fixedColumn:a,tableColumn:n}=this;var{visibleColumn:t,fullColumnIdData:s}=t,{isGroup:e,isColLoading:d,overflowX:u,scrollXLoad:p,dragCol:c}=e;let f=n;var x=l.computeIsFooterRenderOptimize;return x&&(d||!i&&u)||(f=t),i&&x&&(f=a||[]),i||e||p&&c&&2<f.length&&(d=s[c.id])&&(u=d._index,t=f[0],e=f[f.length-1],p=s[t.id],d=s[e.id],p)&&d&&(t=p._index,s=d._index,u<t?f=[c].concat(f):s<u&&(f=f.concat([c]))),r("div",{ref:"refElem",class:["vxe-table--footer-wrapper",i?`fixed-${i}--wrapper`:"body--wrapper"],attrs:{xid:o}},[r("div",{ref:"refFooterScroll",class:"vxe-table--footer-inner-wrapper",on:{scroll(e){l.triggerFooterScrollEvent(e,i)}}},[i?renderEmptyElement(l):r("div",{ref:"refFooterXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refFooterTable",class:"vxe-table--footer",attrs:{xid:o,cellspacing:0,cellpadding:0,border:0,xvm:x?"1":null}},[r("colgroup",{ref:"refFooterColgroup"},f.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("tfoot",{ref:"refFooterTFoot"},renderHeads(r,this,x,f))])])])}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_comp=require("../../ui/src/comp"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let sourceType="table",renderType="footer",{renderer,renderEmptyElement}=_ui.VxeUI;function renderRows(h,e,_,F,T,$,I,S){let E=e.$parent;var l=E,r=E,t=E;let z=E.$xeGrid,R=E.$xeGantt,D=e.fixedType,{resizable:O,border:k,footerCellClassName:q,footerCellStyle:A,footerAlign:U,footerSpanMethod:X,align:L,columnKey:H,showFooterOverflow:M}=l,{scrollXLoad:N,scrollYLoad:V,overflowX:G,currentColumn:W,mergeFootFlag:B}=r,{fullColumnIdData:K,mergeFooterList:j,mergeFooterCellMaps:P,scrollXStore:Y}=t,ee=E.computeVirtualXOpts,le=E.computeFooterTooltipOpts,re=E.resizableOpts.isAllColumnDrag,J=E.computeColumnOpts;e=E.computeDefaultRowHeight;let te=E.computeCellOpts,Q=E.computeFooterCellOpts,Z=(0,_util.getCalcHeight)(Q.height)||e;return F.map((l,e)=>{var{type:r,showFooterOverflow:t,footerAlign:o,align:i,footerClassName:a,editRender:n,cellRender:s}=l,d=l.id,u=K[d]||{},n=n||s,s=n?renderer.get(n.name):null;let p=le.showAll;var n=G&&(D?l.fixed!==D:!!l.fixed),c=(_xeUtils.default.isBoolean(Q.padding)?Q:te).padding,t=_xeUtils.default.eqNull(t)?M:t,o=o||(s?s.tableFooterCellAlign:"")||U||i||(s?s.tableCellAlign:"")||L,i="ellipsis"===t;let f="title"===t,x=!0===t||"tooltip"===t;var s=f||x||i,t=_xeUtils.default.isBoolean(l.resizable)?l.resizable:J.resizable||O,m={colid:d},v={},g=u.index,u=u._index,y=u;let w={source:sourceType,$table:E,$grid:z,$gantt:R,row:$,rowIndex:S,_rowIndex:S,$rowIndex:I,column:l,columnIndex:g,$columnIndex:e,_columnIndex:u,itemIndex:y,items:$,fixed:D,type:renderType,data:T},b=((f||x||p)&&(v.mouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(x||p)&&E.triggerFooterTooltipEvent(e,w)}),(x||p)&&(v.mouseleave=e=>{(x||p)&&E.handleTargetLeaveEvent(e)}),v.click=e=>{E.triggerFooterCellClickEvent(e,w)},!(v.dblclick=e=>{E.triggerFooterCellDblclickEvent(e,w)}));if(B&&j.length){g=P[S+":"+u];if(g){var{rowspan:y,colspan:g}=g;if(!y||!g)return null;1<y&&(b=!0,m.rowspan=y),1<g&&(b=!0,m.colspan=g)}}else if(X){var{rowspan:y=1,colspan:g=1}=X(w)||{};if(!y||!g)return null;1<y&&(m.rowspan=y),1<g&&(m.colspan=g)}y=e===F.length-1,g=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let C=!1;_&&G&&!b&&N&&10<F.length&&!l.fixed&&!ee.immediate&&(u<Y.visibleStartIndex-Y.preloadSize||u>Y.visibleEndIndex+Y.preloadSize)&&(C=!0);u={};return s?u.height=Z+"px":u.minHeight=Z+"px",h("td",{class:["vxe-table--column vxe-footer--column",l.id,{["col--"+o]:o,["col--"+r]:r,"col--last":y,"fixed--width":!g,"fixed--hidden":n,"is--padding":c,"col--ellipsis":s,"col--current":W===l},(0,_utils.getClass)(a,w),(0,_utils.getClass)(q,w)],attrs:m,style:A?_xeUtils.default.isFunction(A)?A(w):A:void 0,on:v,key:H||N||V||J.useKey||J.drag?l.id:e},[h("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":x,"c--ellipsis":i}],style:u},C?[]:[h("div",{attrs:{colid:d},class:"vxe-cell--wrapper vxe-footer-cell--wrapper"},l.renderFooter(h,w))]),!n&&t&&re?h("div",{class:["vxe-cell--col-resizable",{"is--line":!k||"none"===k}],on:{mousedown:e=>E.handleColResizeMousedownEvent(e,D,w),dblclick:e=>E.handleColResizeDblclickEvent(e,w)}}):renderEmptyElement(E)])})}function renderHeads(t,o,i,a){let n=o.$parent;var e=n;let{fixedType:s,footerTableData:d}=o,{footerRowClassName:u,footerRowStyle:p}=e;return d.map((e,l)=>{var r=l,r={$table:n,row:e,rowIndex:l,_rowIndex:l,$rowIndex:r,fixed:s,type:renderType};return t("tr",{key:l,class:["vxe-footer--row",u?_xeUtils.default.isFunction(u)?u(r):u:""],style:p?_xeUtils.default.isFunction(p)?p(r):p:void 0},renderRows(t,o,i,a,d,e,l,l))})}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-footer-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refFooterScroll,r[l+"table"]=e.$refs.refFooterTable,r[l+"colgroup"]=e.$refs.refFooterColgroup,r[l+"list"]=e.$refs.refFooterTFoot,r[l+"xSpace"]=e.$refs.refFooterXSpace},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null},render(r){let l=this.$parent;var e=l,t=l,o=l.xID;let{fixedType:i,fixedColumn:a,tableColumn:n}=this;var{visibleColumn:t,fullColumnIdData:s}=t,{isGroup:e,isColLoading:d,overflowX:u,scrollXLoad:p,dragCol:c}=e;let f=n;var x=l.computeIsFooterRenderOptimize;return x&&(d||!i&&u)||(f=t),i&&x&&(f=a||[]),i||e||p&&c&&2<f.length&&(d=s[c.id])&&(u=d._index,t=f[0],e=f[f.length-1],p=s[t.id],d=s[e.id],p)&&d&&(t=p._index,s=d._index,u<t?f=[c].concat(f):s<u&&(f=f.concat([c]))),r("div",{ref:"refElem",class:["vxe-table--footer-wrapper",i?`fixed-${i}--wrapper`:"body--wrapper"],attrs:{xid:o}},[r("div",{ref:"refFooterScroll",class:"vxe-table--footer-inner-wrapper",on:{scroll(e){l.triggerFooterScrollEvent(e,i)}}},[i?renderEmptyElement(l):r("div",{ref:"refFooterXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refFooterTable",class:"vxe-table--footer",attrs:{xid:o,cellspacing:0,cellpadding:0,border:0,xvm:x?"1":null}},[r("colgroup",{ref:"refFooterColgroup"},f.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("tfoot",{ref:"refFooterTFoot"},renderHeads(r,this,x,f))])])])}});
@@ -17,7 +17,7 @@ const {
17
17
  } = _ui.VxeUI;
18
18
  const sourceType = 'table';
19
19
  const renderType = 'header';
20
- function renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, $rowIndex, cols) {
20
+ function renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, _rowIndex, cols) {
21
21
  const props = _vm;
22
22
  const $xeTable = _vm.$parent;
23
23
  const $xeGrid = $xeTable.$xeGrid;
@@ -66,7 +66,7 @@ function renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, $rowIndex, co
66
66
  isCrossDrag,
67
67
  isPeerDrag
68
68
  } = columnDragOpts;
69
- const isLastRow = $rowIndex === headerGroups.length - 1;
69
+ const isLastRow = _rowIndex === headerGroups.length - 1;
70
70
  return cols.map((column, $columnIndex) => {
71
71
  const {
72
72
  type,
@@ -104,7 +104,9 @@ function renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, $rowIndex, co
104
104
  $table: $xeTable,
105
105
  $grid: $xeGrid,
106
106
  $gantt: $xeGantt,
107
- $rowIndex,
107
+ rowIndex: _rowIndex,
108
+ _rowIndex,
109
+ $rowIndex: _rowIndex,
108
110
  column,
109
111
  columnIndex,
110
112
  $columnIndex,
@@ -126,7 +128,7 @@ function renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, $rowIndex, co
126
128
  thAttrs.rowspan = column.rowSpan > 1 ? column.rowSpan : null;
127
129
  }
128
130
  if (mergeHeadFlag && mergeHeaderList.length && (showCustomHeader || isLastRow)) {
129
- const spanRest = mergeHeaderCellMaps[`${$rowIndex}:${showCustomHeader ? $columnIndex : _columnIndex}`];
131
+ const spanRest = mergeHeaderCellMaps[`${_rowIndex}:${showCustomHeader ? $columnIndex : _columnIndex}`];
130
132
  if (spanRest) {
131
133
  const {
132
134
  rowspan,
@@ -375,18 +377,20 @@ function renderHeads(h, _vm, isGroup, isOptimizeMode, headerGroups, renderColumn
375
377
  headerRowStyle
376
378
  } = tableProps;
377
379
  const floatingFilterOpts = $xeTable.computeFloatingFilterOpts;
378
- const rowVNs = headerGroups.map((cols, $rowIndex) => {
380
+ const rowVNs = headerGroups.map((cols, _rowIndex) => {
379
381
  const params = {
380
382
  $table: $xeTable,
381
- $rowIndex,
383
+ rowIndex: _rowIndex,
384
+ _rowIndex,
385
+ $rowIndex: _rowIndex,
382
386
  fixed: fixedType,
383
387
  type: renderType
384
388
  };
385
389
  return h('tr', {
386
- key: $rowIndex,
390
+ key: _rowIndex,
387
391
  class: ['vxe-header--row', headerRowClassName ? _xeUtils.default.isFunction(headerRowClassName) ? headerRowClassName(params) : headerRowClassName : ''],
388
392
  style: headerRowStyle ? _xeUtils.default.isFunction(headerRowStyle) ? headerRowStyle(params) : headerRowStyle : undefined
389
- }, renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, $rowIndex, cols));
393
+ }, renderRows(h, _vm, isGroup, isOptimizeMode, headerGroups, _rowIndex, cols));
390
394
  });
391
395
  if (floatingFilterOpts.enabled) {
392
396
  rowVNs.push(h('tr', {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_comp=require("../../ui/src/comp"),_utils=require("../../ui/src/utils"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="header";function renderRows(T,e,E,S,l,D,R){let F=e.$parent,I=F.$xeGrid,O=F.$xeGantt;var r=F,t=F,a=F;let k=e.fixedType,{resizable:U,columnKey:z,showCustomHeader:A,headerCellClassName:q,headerCellStyle:G,showHeaderOverflow:X,headerAlign:M,align:N,mouseConfig:W}=r,{currentColumn:L,dragCol:V,scrollXLoad:B,scrollYLoad:K,overflowX:P,mergeHeadFlag:j,tableColumn:te}=t,{fullColumnIdData:ae,scrollXStore:Y,mergeHeaderList:ie,mergeHeaderCellMaps:de}=a,ne=F.computeVirtualXOpts,J=F.computeColumnOpts,Q=F.computeColumnDragOpts,oe=F.computeCellOpts;e=F.computeDefaultRowHeight;let Z=F.computeHeaderCellOpts,ee=(0,_util.getCalcHeight)(Z.height)||e,{disabledMethod:le,isCrossDrag:se,isPeerDrag:ce}=Q,re=D===l.length-1;return R.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,headerClassName:n,editRender:o,cellRender:s}=e,c=e.id,u=ae[c]||{},o=o||s,s=o?renderer.get(o.name):null,o=e.children&&e.children.length,p=P&&!o&&(k?e.fixed!==k:!!e.fixed),f=(_xeUtils.default.isBoolean(Z.padding)?Z:oe).padding,t=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?X:t,a=a||(s?s.tableHeaderCellAlign:"")||M||i||(s?s.tableCellAlign:"")||N,i="ellipsis"===t,s="title"===t,t=!0===t||"tooltip"===t,m=s||t||i;let g=!1,x=null;d&&(x=d[0],g=d.some(e=>e.checked));var h=u.index,u=A?l:u._index;let v={$table:F,$grid:I,$gantt:O,$rowIndex:D,column:e,columnIndex:h,$columnIndex:l,_columnIndex:u,firstFilterOption:x,fixed:k,source:sourceType,type:renderType,isHidden:p,hasFilter:g};h={colid:c};let C=!1;if(A||(h.colspan=1<e.colSpan?e.colSpan:null,h.rowspan=1<e.rowSpan?e.rowSpan:null),j&&ie.length&&(A||re)){var b=de[D+":"+(A?l:u)];if(b){var{rowspan:b,colspan:w}=b;if(!b||!w)return null;1<b&&(C=!0,h.rowspan=b),1<w&&(C=!0,h.colspan=w)}}b={click:e=>F.triggerHeaderCellClickEvent(e,v),dblclick:e=>F.triggerHeaderCellDblclickEvent(e,v)},w=J.drag&&"cell"===Q.trigger;let H=!1;w&&(H=!(!le||!le(v))),(W||w)&&(b.mousedown=e=>F.triggerHeaderCellMousedownEvent(e,v)),J.drag&&(b.dragstart=F.handleHeaderCellDragDragstartEvent,b.dragend=F.handleHeaderCellDragDragendEvent,b.dragover=F.handleHeaderCellDragDragoverEvent,w)&&(b.mouseup=F.handleHeaderCellDragMouseupEvent);var w=l===R.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:J.resizable||U,_=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let $=!1;!S||!P||E||C||V&&V.id===c||B&&10<te.length&&!e.fixed&&!ne.immediate&&(u<Y.visibleStartIndex-Y.preloadSize||u>Y.visibleEndIndex+Y.preloadSize)&&($=!0);u={};if(m?u.height=ee+"px":u.minHeight=ee+"px",!A&&o&&!re){let l=0;_xeUtils.default.eachTree(e.children,e=>{!e.visible||e.children&&e.children.length||(l+=e.renderWidth)}),u.width=l+"px"}return T("th",{class:["vxe-table--column vxe-header--column",c,p?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":w,"col--fixed":e.fixed,"col--group":o,"col--ellipsis":m,"fixed--width":!_,"is--padding":f,"is--sortable":e.sortable,"col--filter":!!d,"is--filter-active":g,"is--drag-active":J.drag&&!e.fixed&&!H&&(se||ce||!e.parentId),"is--drag-disabled":J.drag&&H,"col--current":L===e},(0,_utils.getClass)(n,v),(0,_utils.getClass)(q,v)],attrs:h,style:G?_xeUtils.default.isFunction(G)?G(v):G:void 0,on:b,key:A?""+c+l:z||B||K||J.useKey||J.drag||o?c:l},[T("div",{class:["vxe-cell",{"c--title":s,"c--tooltip":t,"c--ellipsis":i}],style:u},$||S&&p?[]:[T("div",{attrs:{colid:c},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(T,v))]),p||!y||A&&!re?renderEmptyElement(F):T("div",{class:"vxe-cell--col-resizable",on:{mousedown:e=>F.handleColResizeMousedownEvent(e,k,v),dblclick:e=>F.handleColResizeDblclickEvent(e,v)}})])})}function renderFilterRows(w,e,H,y){let _=e.$parent,$=_.$xeGrid,T=_.$xeGantt;var l=_,r=_,t=_;let E=e.fixedType,{showHeaderOverflow:S,headerAlign:D,align:R}=l,{currentColumn:F,overflowX:I}=r,O=t.fullColumnIdData,k=_.computeCellOpts;e=_.computeDefaultRowHeight;let U=_.computeHeaderCellOpts,z=_.computeFloatingFilterOpts.cellClassName,A=(0,_util.getCalcHeight)(U.height)||e;return y.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,editRender:n,cellRender:o,floatingFilters:s,filterRender:c,slots:u}=e,p=e.id,f=O[p]||{},n=n||o,o=n?renderer.get(n.name):null,n=(0,_utils.isEnableConf)(c)?renderer.get(c.name):null,n=n?n.renderTableFloatingFilter:null,u=u?u.floatingFilter||u["floating-filter"]:null,m=I&&(E?e.fixed!==E:!!e.fixed),g=(_xeUtils.default.isBoolean(U.padding)?U:k).padding,t=_xeUtils.default.eqNull(t)?S:t,a=a||(o?o.tableHeaderCellAlign:"")||D||i||(o?o.tableCellAlign:"")||R,i="ellipsis"===t,o="title"===t,t=!0===t||"tooltip"===t,x=o||t||i;let h=!1,v=null;d&&(v=d[0],h=d.some(e=>e.checked));var d=f.index,f=f._index,d={$table:_,$grid:$,$gantt:T,column:e,columnIndex:d,$columnIndex:l,_columnIndex:f,option:v,fixed:E,source:sourceType,type:renderType,isHidden:m,hasFilter:h},f={colid:p},l=l===y.length-1,C=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width),b={};return x?b.height=A+"px":b.minHeight=A+"px",w("th",{class:["vxe-table--column vxe-header--column is--floating-filters",p,m?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":l,"col--fixed":e.fixed,"col--ellipsis":x,"fixed--width":!C,"is--padding":g,"is--sortable":e.sortable,"col--current":F===e}],key:p,attrs:f},[w("div",{class:["vxe-cell",""+(z||""),{"c--title":o,"c--tooltip":t,"c--ellipsis":i}],style:b},H&&m&&!s?[]:[w("div",{attrs:{colid:p},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},u?_.callSlot(u,d,w):n&&v?(0,_vn.getSlotVNs)(n.call(_,w,c,d)):[])])])})}function renderHeads(t,a,i,d,n,e){let o=a.$parent;var l=o;let s=a.fixedType,{headerRowClassName:c,headerRowStyle:u}=l;var l=o.computeFloatingFilterOpts,r=n.map((e,l)=>{var r={$table:o,$rowIndex:l,fixed:s,type:renderType};return t("tr",{key:l,class:["vxe-header--row",c?_xeUtils.default.isFunction(c)?c(r):c:""],style:u?_xeUtils.default.isFunction(u)?u(r):u:void 0},renderRows(t,a,i,d,n,l,e))});return l.enabled&&r.push(t("tr",{key:"ff",class:["vxe-header--row is--floating-filters",""+(l.rowClassName||"")]},renderFilterRows(t,a,d,e))),r}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null},render(r){let l=this.$parent;var e=l,t=l,a=l,i=l.xID;let{fixedType:d,fixedColumn:n,tableColumn:o}=this;var s=this.headerColumn,e=e.mouseConfig,{isGroup:t,isColLoading:c,overflowX:u,scrollXLoad:p,dragCol:f}=t,{visibleColumn:a,fullColumnIdData:m}=a,g=l.computeMouseOpts;let x=s,h=o;s=l.computeIsHeaderRenderOptimize;return t?h=a:(s&&(c||!d&&u)||(h=a),d&&s&&(h=n||[]),x=[h]),d||t||p&&f&&2<h.length&&(c=m[f.id])&&(u=c._index,a=h[0],p=h[h.length-1],c=m[a.id],a=m[p.id],c)&&a&&(m=c._index,p=a._index,u<m?(h=[f].concat(h),x=[[f].concat(x[0])].concat(x.slice(1))):p<u&&(h=h.concat([f]),x=[x[0].concat([f])].concat(x.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",d?`fixed-${d}--wrapper`:"body--wrapper"],attrs:{xid:i}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,d)}}},[d?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:s?"1":null}},[r("colgroup",{ref:"refHeaderColgroup"},h.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,t,s,x,h))]),e&&g.area?r("div",{class:"vxe-table--cell-area",attrs:{xid:i}},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-clip-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])},methods:{uploadColumn(){let e=this.$parent;var l=e,r=e,l=l.showCustomHeader;let{collectColumn:t,visibleColumn:a}=e;var i=this.tableGroupColumn,r=r.isGroup;let d=r?(0,_util.convertHeaderColumnToRows)(i):[],n=[];l&&1<d.length&&(n=(0,_util.convertHeaderToGridRows)(d),d=n),this.headerColumn=d,e.$nextTick(()=>{e.dispatchEvent("columns-change",{visibleColgroups:n,collectColumn:t,visibleColumn:a},null)})}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_comp=require("../../ui/src/comp"),_utils=require("../../ui/src/utils"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="header";function renderRows(T,e,E,S,l,D,I){let R=e.$parent,F=R.$xeGrid,O=R.$xeGantt;var r=R,t=R,a=R;let k=e.fixedType,{resizable:U,columnKey:z,showCustomHeader:A,headerCellClassName:q,headerCellStyle:G,showHeaderOverflow:X,headerAlign:M,align:N,mouseConfig:W}=r,{currentColumn:L,dragCol:V,scrollXLoad:B,scrollYLoad:K,overflowX:P,mergeHeadFlag:j,tableColumn:te}=t,{fullColumnIdData:ae,scrollXStore:Y,mergeHeaderList:ie,mergeHeaderCellMaps:de}=a,ne=R.computeVirtualXOpts,J=R.computeColumnOpts,Q=R.computeColumnDragOpts,oe=R.computeCellOpts;e=R.computeDefaultRowHeight;let Z=R.computeHeaderCellOpts,ee=(0,_util.getCalcHeight)(Z.height)||e,{disabledMethod:le,isCrossDrag:se,isPeerDrag:ce}=Q,re=D===l.length-1;return I.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,headerClassName:n,editRender:o,cellRender:s}=e,c=e.id,u=ae[c]||{},o=o||s,s=o?renderer.get(o.name):null,o=e.children&&e.children.length,p=P&&!o&&(k?e.fixed!==k:!!e.fixed),f=(_xeUtils.default.isBoolean(Z.padding)?Z:oe).padding,t=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?X:t,a=a||(s?s.tableHeaderCellAlign:"")||M||i||(s?s.tableCellAlign:"")||N,i="ellipsis"===t,s="title"===t,t=!0===t||"tooltip"===t,x=s||t||i;let m=!1,g=null;d&&(g=d[0],m=d.some(e=>e.checked));var h=u.index,u=A?l:u._index;let v={$table:R,$grid:F,$gantt:O,rowIndex:D,_rowIndex:D,$rowIndex:D,column:e,columnIndex:h,$columnIndex:l,_columnIndex:u,firstFilterOption:g,fixed:k,source:sourceType,type:renderType,isHidden:p,hasFilter:m};h={colid:c};let C=!1;if(A||(h.colspan=1<e.colSpan?e.colSpan:null,h.rowspan=1<e.rowSpan?e.rowSpan:null),j&&ie.length&&(A||re)){var b=de[D+":"+(A?l:u)];if(b){var{rowspan:b,colspan:w}=b;if(!b||!w)return null;1<b&&(C=!0,h.rowspan=b),1<w&&(C=!0,h.colspan=w)}}b={click:e=>R.triggerHeaderCellClickEvent(e,v),dblclick:e=>R.triggerHeaderCellDblclickEvent(e,v)},w=J.drag&&"cell"===Q.trigger;let H=!1;w&&(H=!(!le||!le(v))),(W||w)&&(b.mousedown=e=>R.triggerHeaderCellMousedownEvent(e,v)),J.drag&&(b.dragstart=R.handleHeaderCellDragDragstartEvent,b.dragend=R.handleHeaderCellDragDragendEvent,b.dragover=R.handleHeaderCellDragDragoverEvent,w)&&(b.mouseup=R.handleHeaderCellDragMouseupEvent);var w=l===I.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:J.resizable||U,_=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let $=!1;!S||!P||E||C||V&&V.id===c||B&&10<te.length&&!e.fixed&&!ne.immediate&&(u<Y.visibleStartIndex-Y.preloadSize||u>Y.visibleEndIndex+Y.preloadSize)&&($=!0);u={};if(x?u.height=ee+"px":u.minHeight=ee+"px",!A&&o&&!re){let l=0;_xeUtils.default.eachTree(e.children,e=>{!e.visible||e.children&&e.children.length||(l+=e.renderWidth)}),u.width=l+"px"}return T("th",{class:["vxe-table--column vxe-header--column",c,p?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":w,"col--fixed":e.fixed,"col--group":o,"col--ellipsis":x,"fixed--width":!_,"is--padding":f,"is--sortable":e.sortable,"col--filter":!!d,"is--filter-active":m,"is--drag-active":J.drag&&!e.fixed&&!H&&(se||ce||!e.parentId),"is--drag-disabled":J.drag&&H,"col--current":L===e},(0,_utils.getClass)(n,v),(0,_utils.getClass)(q,v)],attrs:h,style:G?_xeUtils.default.isFunction(G)?G(v):G:void 0,on:b,key:A?""+c+l:z||B||K||J.useKey||J.drag||o?c:l},[T("div",{class:["vxe-cell",{"c--title":s,"c--tooltip":t,"c--ellipsis":i}],style:u},$||S&&p?[]:[T("div",{attrs:{colid:c},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(T,v))]),p||!y||A&&!re?renderEmptyElement(R):T("div",{class:"vxe-cell--col-resizable",on:{mousedown:e=>R.handleColResizeMousedownEvent(e,k,v),dblclick:e=>R.handleColResizeDblclickEvent(e,v)}})])})}function renderFilterRows(w,e,H,y){let _=e.$parent,$=_.$xeGrid,T=_.$xeGantt;var l=_,r=_,t=_;let E=e.fixedType,{showHeaderOverflow:S,headerAlign:D,align:I}=l,{currentColumn:R,overflowX:F}=r,O=t.fullColumnIdData,k=_.computeCellOpts;e=_.computeDefaultRowHeight;let U=_.computeHeaderCellOpts,z=_.computeFloatingFilterOpts.cellClassName,A=(0,_util.getCalcHeight)(U.height)||e;return y.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,editRender:n,cellRender:o,floatingFilters:s,filterRender:c,slots:u}=e,p=e.id,f=O[p]||{},n=n||o,o=n?renderer.get(n.name):null,n=(0,_utils.isEnableConf)(c)?renderer.get(c.name):null,n=n?n.renderTableFloatingFilter:null,u=u?u.floatingFilter||u["floating-filter"]:null,x=F&&(E?e.fixed!==E:!!e.fixed),m=(_xeUtils.default.isBoolean(U.padding)?U:k).padding,t=_xeUtils.default.eqNull(t)?S:t,a=a||(o?o.tableHeaderCellAlign:"")||D||i||(o?o.tableCellAlign:"")||I,i="ellipsis"===t,o="title"===t,t=!0===t||"tooltip"===t,g=o||t||i;let h=!1,v=null;d&&(v=d[0],h=d.some(e=>e.checked));var d=f.index,f=f._index,d={$table:_,$grid:$,$gantt:T,column:e,columnIndex:d,$columnIndex:l,_columnIndex:f,option:v,fixed:E,source:sourceType,type:renderType,isHidden:x,hasFilter:h},f={colid:p},l=l===y.length-1,C=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width),b={};return g?b.height=A+"px":b.minHeight=A+"px",w("th",{class:["vxe-table--column vxe-header--column is--floating-filters",p,x?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":l,"col--fixed":e.fixed,"col--ellipsis":g,"fixed--width":!C,"is--padding":m,"is--sortable":e.sortable,"col--current":R===e}],key:p,attrs:f},[w("div",{class:["vxe-cell",""+(z||""),{"c--title":o,"c--tooltip":t,"c--ellipsis":i}],style:b},H&&x&&!s?[]:[w("div",{attrs:{colid:p},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},u?_.callSlot(u,d,w):n&&v?(0,_vn.getSlotVNs)(n.call(_,w,c,d)):[])])])})}function renderHeads(t,a,i,d,n,e){let o=a.$parent;var l=o;let s=a.fixedType,{headerRowClassName:c,headerRowStyle:u}=l;var l=o.computeFloatingFilterOpts,r=n.map((e,l)=>{var r={$table:o,rowIndex:l,_rowIndex:l,$rowIndex:l,fixed:s,type:renderType};return t("tr",{key:l,class:["vxe-header--row",c?_xeUtils.default.isFunction(c)?c(r):c:""],style:u?_xeUtils.default.isFunction(u)?u(r):u:void 0},renderRows(t,a,i,d,n,l,e))});return l.enabled&&r.push(t("tr",{key:"ff",class:["vxe-header--row is--floating-filters",""+(l.rowClassName||"")]},renderFilterRows(t,a,d,e))),r}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null},render(r){let l=this.$parent;var e=l,t=l,a=l,i=l.xID;let{fixedType:d,fixedColumn:n,tableColumn:o}=this;var s=this.headerColumn,e=e.mouseConfig,{isGroup:t,isColLoading:c,overflowX:u,scrollXLoad:p,dragCol:f}=t,{visibleColumn:a,fullColumnIdData:x}=a,m=l.computeMouseOpts;let g=s,h=o;s=l.computeIsHeaderRenderOptimize;return t?h=a:(s&&(c||!d&&u)||(h=a),d&&s&&(h=n||[]),g=[h]),d||t||p&&f&&2<h.length&&(c=x[f.id])&&(u=c._index,a=h[0],p=h[h.length-1],c=x[a.id],a=x[p.id],c)&&a&&(x=c._index,p=a._index,u<x?(h=[f].concat(h),g=[[f].concat(g[0])].concat(g.slice(1))):p<u&&(h=h.concat([f]),g=[g[0].concat([f])].concat(g.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",d?`fixed-${d}--wrapper`:"body--wrapper"],attrs:{xid:i}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,d)}}},[d?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:s?"1":null}},[r("colgroup",{ref:"refHeaderColgroup"},h.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,t,s,g,h))]),e&&m.area?r("div",{class:"vxe-table--cell-area",attrs:{xid:i}},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-clip-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])},methods:{uploadColumn(){let e=this.$parent;var l=e,r=e,l=l.showCustomHeader;let{collectColumn:t,visibleColumn:a}=e;var i=this.tableGroupColumn,r=r.isGroup;let d=r?(0,_util.convertHeaderColumnToRows)(i):[],n=[];l&&1<d.length&&(n=(0,_util.convertHeaderToGridRows)(d),d=n),this.headerColumn=d,e.$nextTick(()=>{e.dispatchEvent("columns-change",{visibleColgroups:n,collectColumn:t,visibleColumn:a},null)})}}});
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils"));var _dom=require("../../ui/src/dom");var _utils=require("../../ui/src/utils");var _ui=require("../../ui");var _cell=_interopRequireDefault(require("./cell"));var _util=require("./util");var _vn=require("../../ui/src/vn");var _anime=require("../../ui/src/anime");var _log=require("../../ui/src/log");var _store=require("./store");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const{warnLog,errLog}=(0,_log.createComponentLog)('table');const{getConfig,getI18n,renderer,formats,interceptor,createEvent,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI;const browseObj=_xeUtils.default.browse();const supportMaxRow=5e6;const customStorageKey='VXE_CUSTOM_STORE';const maxYHeight=5e6;const maxXWidth=5e6;const sourceType='table';let crossTableDragRowObj=null;function eqCellValue(row1,row2,field){const val1=_xeUtils.default.get(row1,field);const val2=_xeUtils.default.get(row2,field);if((0,_utils.eqEmptyValue)(val1)&&(0,_utils.eqEmptyValue)(val2)){return true;}if(_xeUtils.default.isString(val1)||_xeUtils.default.isNumber(val1)){return''+val1===''+val2;}return _xeUtils.default.isEqual(val1,val2);}function hangleStorageDefaultValue(value,isAll){return _xeUtils.default.isBoolean(value)?value:isAll;}function getNextSortOrder($xeTable,column){const sortOpts=$xeTable.computeSortOpts;const{orders=[]}=sortOpts;const currOrder=column.order||null;const oIndex=orders.indexOf(currOrder)+1;return orders[oIndex<orders.length?oIndex:0];}const getCustomStorageMap=id=>{const version=getConfig().version;const rest=_xeUtils.default.toStringJSON(localStorage.getItem(customStorageKey)||'');const maps=rest&&rest._v===version?rest:{_v:version};return(id?maps[id]:maps)||{};};const setCustomStorageMap=(id,data)=>{const version=getConfig().version;const maps=getCustomStorageMap();maps[id]=data||undefined;maps._v=version;localStorage.setItem(customStorageKey,_xeUtils.default.toJSONString(maps));};const getRecoverRowMaps=($xeTable,keyMaps)=>{const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const restKeys={};_xeUtils.default.each(keyMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){restKeys[rowid]=row;}});return restKeys;};function handleReserveRow($xeTable,reserveRowMap){const internalData=$xeTable;const{fullDataRowIdData}=internalData;const reserveList=[];_xeUtils.default.each(reserveRowMap,(item,rowid)=>{if(fullDataRowIdData[rowid]&&reserveList.indexOf(fullDataRowIdData[rowid].row)===-1){reserveList.push(fullDataRowIdData[rowid].row);}});return reserveList;}function handleVirtualXVisible($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{isScrollXBig,scrollXWidth}=reactData;const{elemStore,visibleColumn,fullColumnIdData}=internalData;const leftFixedWidth=$xeTable.computeLeftFixedWidth;const rightFixedWidth=$xeTable.computeRightFixedWidth;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(bodyScrollElem){const clientWidth=bodyScrollElem.clientWidth;let scrollLeft=bodyScrollElem.scrollLeft;if(isScrollXBig){scrollLeft=Math.ceil((scrollXWidth-clientWidth)*Math.min(1,scrollLeft/(maxXWidth-clientWidth)));}const startLeft=scrollLeft+leftFixedWidth;const endLeft=scrollLeft+clientWidth-rightFixedWidth;let leftIndex=0;let rightIndex=visibleColumn.length;while(leftIndex<rightIndex){const cIndex=Math.floor((leftIndex+rightIndex)/2);const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};if(colRest.oLeft<=startLeft){leftIndex=cIndex+1;}else{rightIndex=cIndex;}}let visibleSize=0;const toVisibleIndex=leftIndex===visibleColumn.length?leftIndex:Math.max(0,leftIndex<visibleColumn.length?leftIndex-2:0);for(let cIndex=toVisibleIndex,cLen=visibleColumn.length;cIndex<cLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};visibleSize++;if(colRest.oLeft>endLeft||visibleSize>=60){break;}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(6,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};}function handleCustomRestore($xeTable,storeData){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{aggregateConfig,rowGroupConfig}=props;const{collectColumn}=internalData;const customOpts=$xeTable.computeCustomOpts;const{storage,storeOptions}=customOpts;const isAllCustom=storage===true;const storageOpts=Object.assign({},isAllCustom?{}:storage||{},storeOptions);const isCustomResizable=hangleStorageDefaultValue(storageOpts.resizable,isAllCustom);const isCustomVisible=hangleStorageDefaultValue(storageOpts.visible,isAllCustom);const isCustomFixed=hangleStorageDefaultValue(storageOpts.fixed,isAllCustom);const isCustomSort=hangleStorageDefaultValue(storageOpts.sort,isAllCustom);const isCustomAggGroup=hangleStorageDefaultValue(storageOpts.aggGroup,isAllCustom);const isCustomAggFunc=hangleStorageDefaultValue(storageOpts.aggFunc,isAllCustom);let{resizableData,sortData,visibleData,fixedData,aggGroupData,aggFuncData}=storeData;// 处理还原
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils"));var _dom=require("../../ui/src/dom");var _utils=require("../../ui/src/utils");var _ui=require("../../ui");var _cell=_interopRequireDefault(require("./cell"));var _util=require("./util");var _vn=require("../../ui/src/vn");var _anime=require("../../ui/src/anime");var _log=require("../../ui/src/log");var _store=require("./store");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const{warnLog,errLog}=(0,_log.createComponentLog)('table');const{getConfig,getI18n,renderer,formats,interceptor,createEvent,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI;const browseObj=_xeUtils.default.browse();const supportMaxRow=5e6;const customStorageKey='VXE_CUSTOM_STORE';const maxYHeight=5e6;const maxXWidth=5e6;const sourceType='table';let crossTableDragRowObj=null;function eqCellValue(newRow,oldRow,field){const val1=_xeUtils.default.get(newRow,field);const val2=_xeUtils.default.get(oldRow,field);let result=false;if((0,_utils.eqEmptyValue)(val1)&&(0,_utils.eqEmptyValue)(val2)){result=true;}else if(_xeUtils.default.isString(val1)||_xeUtils.default.isNumber(val1)){result=''+val1===''+val2;}else{result=_xeUtils.default.isEqual(val1,val2);}return{newValue:val1,oldValue:val2,result};}function hangleStorageDefaultValue(value,isAll){return _xeUtils.default.isBoolean(value)?value:isAll;}function getNextSortOrder($xeTable,column){const sortOpts=$xeTable.computeSortOpts;const{orders=[]}=sortOpts;const currOrder=column.order||null;const oIndex=orders.indexOf(currOrder)+1;return orders[oIndex<orders.length?oIndex:0];}const getCustomStorageMap=id=>{const version=getConfig().version;const rest=_xeUtils.default.toStringJSON(localStorage.getItem(customStorageKey)||'');const maps=rest&&rest._v===version?rest:{_v:version};return(id?maps[id]:maps)||{};};const setCustomStorageMap=(id,data)=>{const version=getConfig().version;const maps=getCustomStorageMap();maps[id]=data||undefined;maps._v=version;localStorage.setItem(customStorageKey,_xeUtils.default.toJSONString(maps));};const getRecoverRowMaps=($xeTable,keyMaps)=>{const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const restKeys={};_xeUtils.default.each(keyMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){restKeys[rowid]=row;}});return restKeys;};function handleReserveRow($xeTable,reserveRowMap){const internalData=$xeTable;const{fullDataRowIdData}=internalData;const reserveList=[];_xeUtils.default.each(reserveRowMap,(item,rowid)=>{if(fullDataRowIdData[rowid]&&reserveList.indexOf(fullDataRowIdData[rowid].row)===-1){reserveList.push(fullDataRowIdData[rowid].row);}});return reserveList;}function handleVirtualXVisible($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{isScrollXBig,scrollXWidth}=reactData;const{elemStore,visibleColumn,fullColumnIdData}=internalData;const leftFixedWidth=$xeTable.computeLeftFixedWidth;const rightFixedWidth=$xeTable.computeRightFixedWidth;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(bodyScrollElem){const clientWidth=bodyScrollElem.clientWidth;let scrollLeft=bodyScrollElem.scrollLeft;if(isScrollXBig){scrollLeft=Math.ceil((scrollXWidth-clientWidth)*Math.min(1,scrollLeft/(maxXWidth-clientWidth)));}const startLeft=scrollLeft+leftFixedWidth;const endLeft=scrollLeft+clientWidth-rightFixedWidth;let leftIndex=0;let rightIndex=visibleColumn.length;while(leftIndex<rightIndex){const cIndex=Math.floor((leftIndex+rightIndex)/2);const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};if(colRest.oLeft<=startLeft){leftIndex=cIndex+1;}else{rightIndex=cIndex;}}let visibleSize=0;const toVisibleIndex=leftIndex===visibleColumn.length?leftIndex:Math.max(0,leftIndex<visibleColumn.length?leftIndex-2:0);for(let cIndex=toVisibleIndex,cLen=visibleColumn.length;cIndex<cLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};visibleSize++;if(colRest.oLeft>endLeft||visibleSize>=60){break;}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(6,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};}function handleCustomRestore($xeTable,storeData){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{aggregateConfig,rowGroupConfig}=props;const{collectColumn}=internalData;const customOpts=$xeTable.computeCustomOpts;const{storage,storeOptions}=customOpts;const isAllCustom=storage===true;const storageOpts=Object.assign({},isAllCustom?{}:storage||{},storeOptions);const isCustomResizable=hangleStorageDefaultValue(storageOpts.resizable,isAllCustom);const isCustomVisible=hangleStorageDefaultValue(storageOpts.visible,isAllCustom);const isCustomFixed=hangleStorageDefaultValue(storageOpts.fixed,isAllCustom);const isCustomSort=hangleStorageDefaultValue(storageOpts.sort,isAllCustom);const isCustomAggGroup=hangleStorageDefaultValue(storageOpts.aggGroup,isAllCustom);const isCustomAggFunc=hangleStorageDefaultValue(storageOpts.aggFunc,isAllCustom);let{resizableData,sortData,visibleData,fixedData,aggGroupData,aggFuncData}=storeData;// 处理还原
2
2
  if(isCustomResizable&&resizableData||isCustomSort&&sortData||isCustomVisible&&visibleData||isCustomFixed&&fixedData||isCustomAggGroup&&aggGroupData||isCustomAggFunc&&aggFuncData){const sortColMaps={};if(isCustomSort&&sortData){// 转换兼容老版本数据,即将废弃兼容
3
3
  if(!_xeUtils.default.isArray(sortData)){const sortRests=[];_xeUtils.default.each(sortData,(index,colKey)=>{sortRests.push({key:colKey,index});});sortData=_xeUtils.default.orderBy(sortRests,{field:'index',order:'asc'}).map(item=>({k:item.key}));}let colNum=1;_xeUtils.default.eachTree(sortData,(sObj,index,sOjs,path,pSObj)=>{sortColMaps[sObj.k]={key:sObj.k,sNum:colNum++,pKey:pSObj?pSObj.k:null};},{children:'c'});}const colKeyMaps={};const allCols=[];const aggGroupConfs=[];_xeUtils.default.eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const colKey=column.getKey();// 支持一级
4
4
  if(!parentColumn){if(isCustomFixed&&fixedData&&fixedData[colKey]!==undefined){column.fixed=fixedData[colKey];}}if(isCustomResizable&&resizableData&&_xeUtils.default.isNumber(resizableData[colKey])){column.resizeWidth=resizableData[colKey];}if(isCustomVisible&&visibleData&&_xeUtils.default.isBoolean(visibleData[colKey])){column.visible=visibleData[colKey];}if(isCustomAggFunc&&aggFuncData&&(aggregateConfig||rowGroupConfig)&&aggFuncData[colKey]){column.aggFunc=aggFuncData[colKey];}if(isCustomAggGroup&&aggGroupData&&aggGroupData[colKey]){aggGroupConfs.push({field:column.field});}colKeyMaps[colKey]=column;allCols.push(column);});if((aggregateConfig||rowGroupConfig)&&aggGroupConfs.length){const groupRest=handleGroupData($xeTable,internalData.tableFullData,aggGroupConfs);internalData.tableFullTreeData=[];internalData.tableFullGroupData=groupRest.treeData;reactData.isRowGroupStatus=true;reactData.rowGroupList=aggGroupConfs;$xeTable.cacheRowMap(false);}// 如果自定义了顺序
@@ -374,7 +374,8 @@ if(_xeUtils.default.isArray(row)){itemValue=row[_columnIndex];}else{itemValue=_x
374
374
  */removeInsertRow(){const $xeTable=this;const internalData=$xeTable;const{insertRowMaps}=internalData;return $xeTable.remove(_xeUtils.default.values(insertRowMaps));},/**
375
375
  * 检查行或列数据是否发生改变
376
376
  */isUpdateByRow(rowOrId,field){const $xeTable=this;const props=$xeTable;const internalData=$xeTable;const{keepSource,editConfig}=props;const{fullDataRowIdData,sourceDataRowIdData}=internalData;const keepFields=$xeTable.computeKeepFields;if(keepSource&&editConfig){const rowid=_xeUtils.default.isString(rowOrId)||_xeUtils.default.isNumber(rowOrId)?rowOrId:(0,_util.getRowid)($xeTable,rowOrId);const rowRest=fullDataRowIdData[rowid];// 新增的数据不需要检测
377
- if(!rowRest){return false;}const row=rowRest.row;const oRow=sourceDataRowIdData[rowid];if(oRow){if(arguments.length>1){return!eqCellValue(oRow,row,field);}for(let i=0;i<keepFields.length;i++){if(!eqCellValue(oRow,row,keepFields[i])){return true;}}}}return false;},/**
377
+ if(!rowRest){return false;}const row=rowRest.row;const oRow=sourceDataRowIdData[rowid];if(!oRow){return false;}if(arguments.length>1){return!eqCellValue(oRow,row,field).result;}for(let i=0;i<keepFields.length;i++){if(!eqCellValue(oRow,row,keepFields[i]).result){return true;}}}return false;},getUpdateCells(){const $xeTable=this;const props=$xeTable;const internalData=$xeTable;const{keepSource,treeConfig}=props;const{tableFullData,tableFullTreeData,fullDataRowIdData,sourceDataRowIdData,fullColumnFieldData}=internalData;const treeOpts=$xeTable.computeTreeOpts;const keepFields=$xeTable.computeKeepFields;const cellList=[];if(keepSource){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);const handleCell=item=>{const rowid=handleGetRowId(item);const rowRest=fullDataRowIdData[rowid];// 新增的数据不需要检测
378
+ if(!rowRest){return;}const row=rowRest.row;const oRow=sourceDataRowIdData[rowid];if(!oRow){return;}for(let i=0;i<keepFields.length;i++){const field=keepFields[i];const{result,newValue,oldValue}=eqCellValue(oRow,row,field);if(!result){const column=fullColumnFieldData[field]?fullColumnFieldData[field].column:null;cellList.push({row,rowid,column,field,newValue,oldValue});}}};if(treeConfig){_xeUtils.default.eachTree(tableFullTreeData,handleCell,treeOpts);}else{tableFullData.forEach(handleCell);}}return cellList;},/**
378
379
  * 获取表格的可视列,也可以指定索引获取列
379
380
  * @param {Number} columnIndex 索引
380
381
  */getColumns(columnIndex){const $xeTable=this;const internalData=$xeTable;const{visibleColumn}=internalData;return _xeUtils.default.isUndefined(columnIndex)?visibleColumn.slice(0):visibleColumn[columnIndex];},/**
@@ -672,7 +673,7 @@ if((columnOpts.isCurrent||highlightCurrentColumn)&&(!currentColumnOpts.trigger||
672
673
  if(!triggerRadio&&(radioColumn&&radioOpts.trigger==='row'||isRadioType&&radioOpts.trigger==='cell')){$xeTable.triggerRadioRowEvent(evnt,params);}// 如果是复选框
673
674
  if(!triggerCheckbox&&(checkboxColumn&&checkboxOpts.trigger==='row'||isCheckboxType&&checkboxOpts.trigger==='cell')){$xeTable.handleToggleCheckRowEvent(evnt,params);}}// 如果设置了单元格选中功能,则不会使用点击事件去处理(只能支持双击模式)
674
675
  if((0,_utils.isEnableConf)(editConfig)){// 记录点击输入框聚焦状态
675
- if(keyboardOpts.arrowCursorLock&&evnt&&editOpts.mode==='cell'&&evnt.target&&/^input|textarea$/i.test(evnt.target.tagName)){focused.column=column;focused.row=row;}if(editOpts.trigger==='manual'){if(actived.args&&actived.row===row&&column!==actived.column){handleChangeCell($xeTable,evnt,params);}}else if(!actived.args||row!==actived.row||column!==actived.column){if(editOpts.trigger==='click'){handleChangeCell($xeTable,evnt,params);}else if(editOpts.trigger==='dblclick'){if(editOpts.mode==='row'&&actived.row===row){handleChangeCell($xeTable,evnt,params);}}}}}// 如果是双击编辑模式
676
+ if(keyboardOpts.arrowCursorLock&&evnt&&editOpts.mode==='cell'&&evnt.target&&/^input|textarea$/i.test(evnt.target.tagName)){focused.column=column;focused.row=row;}if(editOpts.trigger==='manual'){if(actived.args&&actived.row===row&&column!==actived.column){if(editOpts.mode==='row'){handleChangeCell($xeTable,evnt,params);}else{checkValidate($xeTable,'blur').catch(e=>e);}}}else if(!actived.args||row!==actived.row||column!==actived.column){if(editOpts.trigger==='click'){handleChangeCell($xeTable,evnt,params);}else if(editOpts.trigger==='dblclick'){if(editOpts.mode==='row'&&actived.row===row){handleChangeCell($xeTable,evnt,params);}}}}}// 如果是双击编辑模式
676
677
  if((0,_utils.isEnableConf)(editConfig)&&editOpts.trigger==='dblclick'){if(actived.row&&actived.column){if(editOpts.mode==='row'){if(!$xeTable.eqRow(actived.row,row)){$xeTable.handleClearEdit(evnt);}}else if(editOpts.mode==='cell'){if(!$xeTable.eqRow(actived.row,row)||actived.column.id!==column.id){$xeTable.handleClearEdit(evnt);}}}}if($xeGantt){const ganttReactData=$xeGantt.reactData;ganttReactData.activeBarRowid=null;}$xeTable.dispatchEvent('cell-click',params,evnt);},/**
677
678
  * 列双击点击事件
678
679
  * 如果是双击模式,则激活为编辑状态
@@ -740,7 +741,8 @@ getSortColumn(){warnLog('vxe.error.delFunc',['getSortColumn','getSortColumns']);
740
741
  * 判断指定列是否为筛选状态,如果为空则判断所有列
741
742
  * @param {String} fieldOrColumn 字段名
742
743
  */isActiveFilterByColumn(fieldOrColumn){const column=(0,_util.handleFieldOrColumn)(this,fieldOrColumn);if(column){return column.filters&&column.filters.some(option=>option.checked);}return this.getCheckedFilters().length>0;},// 已废弃
743
- isFilter(fieldOrColumn){return this.isActiveFilterByColumn(fieldOrColumn);},clearFilterByEvent(evnt,fieldOrColumn){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{filterStore}=reactData;const{tableFullColumn}=internalData;const filterOpts=$xeTable.computeFilterOpts;const{multiple}=filterOpts;const filterCols=[];let column=null;if(fieldOrColumn){column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(column){$xeTable.handleClearFilter(column);}}else{tableFullColumn.forEach(column=>{if(column.filters){filterCols.push(column);$xeTable.handleClearFilter(column);}});}if(!fieldOrColumn||column!==filterStore.column){Object.assign(filterStore,{isAllSelected:false,isIndeterminate:false,style:null,options:[],column:null,multiple:false,visible:false});}if(!filterOpts.remote){$xeTable.updateData();}if(!multiple){column=filterCols[0];}if(column){const filterList=()=>$xeTable.getCheckedFilters();const values=[];const datas=[];column.filters.forEach(item=>{if(item.checked){values.push(item.value);datas.push(item.data);}});const params={$table:$xeTable,$event:evnt,column,field:column.field,property:column.field,values,datas,filters:filterList,filterList};$xeTable.dispatchEvent('filter-change',params,evnt);$xeTable.dispatchEvent('clear-filter',params,evnt);}if(multiple&&filterCols.length){const params={$table:$xeTable,$event:evnt,cols:filterCols,filterList:[]};$xeTable.dispatchEvent('clear-all-filter',params,evnt);}return $xeTable.$nextTick();},/**
744
+ isFilter(fieldOrColumn){return this.isActiveFilterByColumn(fieldOrColumn);},clearFilterByEvent(evnt,fieldOrColumn){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{filterStore}=reactData;const{tableFullColumn}=internalData;const filterOpts=$xeTable.computeFilterOpts;const{multiple}=filterOpts;const filterCols=[];let column=null;if(fieldOrColumn){column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(column){$xeTable.handleClearFilter(column);}}else{tableFullColumn.forEach(column=>{if(column.filters){filterCols.push(column);$xeTable.handleClearFilter(column);}});}if(!fieldOrColumn||column!==filterStore.column){Object.assign(filterStore,{isAllSelected:false,isIndeterminate:false,style:null,options:[],column:null,multiple:false,// 选项是覅多选
745
+ visible:false});}if(!filterOpts.remote){$xeTable.updateData();}if(!multiple){column=filterCols[0];}if(column){const filterList=()=>$xeTable.getCheckedFilters();const values=[];const datas=[];column.filters.forEach(item=>{if(item.checked){values.push(item.value);datas.push(item.data);}});const params={$table:$xeTable,$event:evnt,column,field:column.field,property:column.field,values,datas,filters:filterList,filterList};$xeTable.dispatchEvent('filter-change',params,evnt);$xeTable.dispatchEvent('clear-filter',params,evnt);}if(multiple&&filterCols.length){const params={$table:$xeTable,$event:evnt,cols:filterCols,filterList:[]};$xeTable.dispatchEvent('clear-all-filter',params,evnt);}return $xeTable.$nextTick();},/**
744
746
  * 判断展开行是否懒加载完成
745
747
  * @param {Row} row 行对象
746
748
  */isRowExpandLoaded(row){const $xeTable=this;const{fullAllDataRowIdData}=this;const rowRest=fullAllDataRowIdData[(0,_util.getRowid)($xeTable,row)];return rowRest&&!!rowRest.expandLoaded;},clearRowExpandLoaded(row){const $xeTable=this;const reactData=$xeTable;const internalData=$xeTable;const{fullAllDataRowIdData,rowExpandLazyLoadedMaps}=internalData;const expandOpts=$xeTable.computeExpandOpts;const{lazy}=expandOpts;const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(lazy&&rowRest){rowRest.expandLoaded=false;delete rowExpandLazyLoadedMaps[rowid];}reactData.rowExpandedFlag++;return $xeTable.$nextTick();},/**