vxe-table 4.9.8 → 4.9.10

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 (59) 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/edit/hook.js +16 -4
  6. package/es/table/module/export/import-panel.js +1 -1
  7. package/es/table/src/body.js +9 -6
  8. package/es/table/src/columnInfo.js +1 -1
  9. package/es/table/src/footer.js +7 -1
  10. package/es/table/src/table.js +13 -5
  11. package/es/table/src/util.js +0 -10
  12. package/es/table/style.css +1 -1
  13. package/es/table/style.min.css +1 -1
  14. package/es/ui/index.js +1 -1
  15. package/es/ui/src/log.js +1 -1
  16. package/es/vxe-table/style.css +1 -1
  17. package/es/vxe-table/style.min.css +1 -1
  18. package/lib/index.css +1 -1
  19. package/lib/index.min.css +1 -1
  20. package/lib/index.umd.js +74 -32
  21. package/lib/index.umd.min.js +1 -1
  22. package/lib/style.css +1 -1
  23. package/lib/style.min.css +1 -1
  24. package/lib/table/module/edit/hook.js +38 -4
  25. package/lib/table/module/edit/hook.min.js +1 -1
  26. package/lib/table/module/export/import-panel.js +1 -1
  27. package/lib/table/module/export/import-panel.min.js +1 -1
  28. package/lib/table/src/body.js +9 -6
  29. package/lib/table/src/body.min.js +1 -1
  30. package/lib/table/src/columnInfo.js +3 -3
  31. package/lib/table/src/columnInfo.min.js +1 -1
  32. package/lib/table/src/footer.js +7 -1
  33. package/lib/table/src/footer.min.js +1 -1
  34. package/lib/table/src/table.js +14 -5
  35. package/lib/table/src/table.min.js +1 -1
  36. package/lib/table/src/util.js +0 -10
  37. package/lib/table/style/style.css +1 -1
  38. package/lib/table/style/style.min.css +1 -1
  39. package/lib/ui/index.js +1 -1
  40. package/lib/ui/index.min.js +1 -1
  41. package/lib/ui/src/log.js +1 -1
  42. package/lib/ui/src/log.min.js +1 -1
  43. package/lib/vxe-table/style/style.css +1 -1
  44. package/lib/vxe-table/style/style.min.css +1 -1
  45. package/package.json +2 -2
  46. package/packages/table/module/edit/hook.ts +16 -4
  47. package/packages/table/module/export/import-panel.ts +1 -1
  48. package/packages/table/src/body.ts +14 -11
  49. package/packages/table/src/columnInfo.ts +1 -1
  50. package/packages/table/src/footer.ts +7 -1
  51. package/packages/table/src/table.ts +18 -8
  52. package/packages/table/src/util.ts +0 -16
  53. package/styles/components/table.scss +1 -1
  54. /package/es/{iconfont.1732522568827.ttf → iconfont.1732797516206.ttf} +0 -0
  55. /package/es/{iconfont.1732522568827.woff → iconfont.1732797516206.woff} +0 -0
  56. /package/es/{iconfont.1732522568827.woff2 → iconfont.1732797516206.woff2} +0 -0
  57. /package/lib/{iconfont.1732522568827.ttf → iconfont.1732797516206.ttf} +0 -0
  58. /package/lib/{iconfont.1732522568827.woff → iconfont.1732797516206.woff} +0 -0
  59. /package/lib/{iconfont.1732522568827.woff2 → iconfont.1732797516206.woff2} +0 -0
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../../ui/src/utils"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,getIcon}=_ui.VxeUI;var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableImportPanel",props:{defaultOptions:Object,storeData:Object},setup(v){const p=_ui.VxeUI.getComponent("VxeModal"),d=_ui.VxeUI.getComponent("VxeButton"),c=_ui.VxeUI.getComponent("VxeSelect"),m=(0,_vue.inject)("$xeTable",{}),a=m.getComputeMaps()["computeImportOpts"],_=(0,_vue.reactive)({loading:!1}),x=(0,_vue.ref)(),b=(0,_vue.computed)(()=>{var e=v["storeData"];return e.filename+"."+e.type}),g=(0,_vue.computed)(()=>{var e=v["storeData"];return e.file&&e.type}),h=(0,_vue.computed)(()=>{var e=v["storeData"];const{type:t,typeList:o}=e;return t?(e=_xeUtils.default.find(o,e=>t===e.value))?e.label:"*.*":"*."+o.map(e=>e.value).join(", *.")}),f=()=>{var e=v["storeData"];Object.assign(e,{filename:"",sheetName:"",type:""})},C=()=>{const{storeData:t,defaultOptions:e}=v;m.readFile(e).then(e=>{e=e.file;Object.assign(t,(0,_utils.parseFile)(e),{file:e})}).catch(e=>e)},V=()=>{(0,_vue.nextTick)(()=>{var e=x.value;e&&e.focus()})},I=()=>{var e=v["storeData"];e.visible=!1},O=()=>{const{storeData:e,defaultOptions:t}=v;var o=a.value;_.loading=!0,m.importByFile(e.file,Object.assign({},o,t)).then(()=>{_.loading=!1,e.visible=!1}).catch(()=>{_.loading=!1})};return"development"===process.env.NODE_ENV&&(0,_vue.nextTick)(()=>{p||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),d||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),c||(0,_log.errLog)("vxe.error.reqComp",["vxe-select"])}),()=>{const{defaultOptions:t,storeData:o}=v,a=b.value,l=g.value,r=h.value;var e=t.slots||{};const i=e.top,u=e.bottom,s=e.default,n=e.footer;return p?(0,_vue.h)(p,{id:"VXE_IMPORT_MODAL",modelValue:o.visible,title:getI18n("vxe.import.impTitle"),className:"vxe-table-export-popup-wrapper",width:540,minWidth:360,minHeight:240,mask:!0,lockView:!0,showFooter:!0,escClosable:!0,maskClosable:!0,showMaximize:!0,resize:!0,loading:_.loading,"onUpdate:modelValue"(e){o.visible=e},onShow:V},{default:()=>{var e={$table:m,$grid:m.xegrid,options:t,params:t.params};return(0,_vue.h)("div",{class:"vxe-table-export--panel"},[i?(0,_vue.h)("div",{class:"vxe-table-export--panel-top"},m.callSlot(i,e)):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{class:"vxe-table-export--panel-body"},s?m.callSlot(s,e):[(0,_vue.h)("table",{class:"vxe-table-export--panel-table",cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("tbody",[(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.import.impFile")),(0,_vue.h)("td",[l?(0,_vue.h)("div",{class:"vxe-table-export--selected--file",title:a},[(0,_vue.h)("span",a),(0,_vue.h)("i",{class:getIcon().INPUT_CLEAR,onClick:f})]):(0,_vue.h)("button",{ref:x,class:"vxe-table-export--select--file",onClick:C},getI18n("vxe.import.impSelect"))])]),(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.import.impType")),(0,_vue.h)("td",r)]),(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.import.impMode")),(0,_vue.h)("td",[c?(0,_vue.h)(c,{modelValue:t.mode,options:o.modeList,"onUpdate:modelValue"(e){t.mode=e}}):(0,_vue.createCommentVNode)()])])])])]),u?(0,_vue.h)("div",{class:"vxe-table-export--panel-bottom"},m.callSlot(u,e)):(0,_vue.createCommentVNode)()])},footer(){var e={$table:m,$grid:m.xegrid,options:t,params:t.params};return(0,_vue.h)("div",{class:"vxe-table-export--panel-footer"},n?m.callSlot(n,e):[(0,_vue.h)("div",{class:"vxe-table-export--panel-btns"},[d?(0,_vue.h)(d,{content:getI18n("vxe.import.impCancel"),onClick:I}):(0,_vue.createCommentVNode)(),d?(0,_vue.h)(d,{status:"primary",disabled:!l,content:getI18n("vxe.import.impConfirm"),onClick:O}):(0,_vue.createCommentVNode)()])])}}):(0,_vue.createCommentVNode)()}}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../../ui/src/utils"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,getIcon}=_ui.VxeUI;var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableImportPanel",props:{defaultOptions:Object,storeData:Object},setup(v){const p=_ui.VxeUI.getComponent("VxeModal"),d=_ui.VxeUI.getComponent("VxeButton"),c=_ui.VxeUI.getComponent("VxeSelect"),m=(0,_vue.inject)("$xeTable",{}),a=m.getComputeMaps()["computeImportOpts"],_=(0,_vue.reactive)({loading:!1}),x=(0,_vue.ref)(),g=(0,_vue.computed)(()=>{var e=v["storeData"];return e.filename+"."+e.type}),b=(0,_vue.computed)(()=>{var e=v["storeData"];return e.file&&e.type}),h=(0,_vue.computed)(()=>{var e=v["storeData"];const{type:t,typeList:o}=e;return t?(e=_xeUtils.default.find(o,e=>t===e.value))?e.label:"*.*":"*."+o.map(e=>e.value).join(", *.")}),f=()=>{var e=v["storeData"];Object.assign(e,{filename:"",sheetName:"",type:""})},C=()=>{const{storeData:t,defaultOptions:e}=v;m.readFile(e).then(e=>{e=e.file;Object.assign(t,(0,_utils.parseFile)(e),{file:e})}).catch(e=>e)},V=()=>{(0,_vue.nextTick)(()=>{var e=x.value;e&&e.focus()})},I=()=>{var e=v["storeData"];e.visible=!1},O=()=>{const{storeData:e,defaultOptions:t}=v;var o=a.value;_.loading=!0,m.importByFile(e.file,Object.assign({},o,t)).then(()=>{_.loading=!1,e.visible=!1}).catch(()=>{_.loading=!1})};return"development"===process.env.NODE_ENV&&(0,_vue.nextTick)(()=>{p||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),d||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),c||(0,_log.errLog)("vxe.error.reqComp",["vxe-select"])}),()=>{const{defaultOptions:t,storeData:o}=v,a=g.value,l=b.value,r=h.value;var e=t.slots||{};const i=e.top,u=e.bottom,n=e.default,s=e.footer;return p?(0,_vue.h)(p,{id:"VXE_IMPORT_MODAL",modelValue:o.visible,title:getI18n("vxe.import.impTitle"),className:"vxe-table-export-popup-wrapper",width:540,minWidth:360,minHeight:240,mask:!0,lockView:!0,showFooter:!0,escClosable:!0,maskClosable:!0,showMaximize:!0,resize:!0,loading:_.loading,"onUpdate:modelValue"(e){o.visible=e},onShow:V},{default:()=>{var e={$table:m,$grid:m.xegrid,options:t,params:t.params};return(0,_vue.h)("div",{class:"vxe-table-export--panel"},[i?(0,_vue.h)("div",{class:"vxe-table-export--panel-top"},m.callSlot(i,e)):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{class:"vxe-table-export--panel-body"},n?m.callSlot(n,e):[(0,_vue.h)("table",{class:"vxe-table-export--panel-table",cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("tbody",[(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.import.impFile")),(0,_vue.h)("td",[l?(0,_vue.h)("div",{class:"vxe-table-export--selected--file",title:a},[(0,_vue.h)("span",a),(0,_vue.h)("i",{class:getIcon().INPUT_CLEAR,onClick:f})]):(0,_vue.h)("button",{ref:x,class:"vxe-table-export--select--file",onClick:C},getI18n("vxe.import.impSelect"))])]),(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.import.impType")),(0,_vue.h)("td",r)]),(0,_vue.h)("tr",[(0,_vue.h)("td",getI18n("vxe.import.impMode")),(0,_vue.h)("td",[c?(0,_vue.h)(c,{modelValue:t.mode,options:o.modeList,"onUpdate:modelValue"(e){t.mode=e}}):(0,_vue.createCommentVNode)()])])])])]),u?(0,_vue.h)("div",{class:"vxe-table-export--panel-bottom"},m.callSlot(u,e)):(0,_vue.createCommentVNode)()])},footer(){var e={$table:m,$grid:m.xegrid,options:t,params:t.params};return(0,_vue.h)("div",{class:"vxe-table-export--panel-footer"},s?m.callSlot(s,e):[(0,_vue.h)("div",{class:"vxe-table-export--panel-btns"},[d?(0,_vue.h)(d,{content:getI18n("vxe.import.impCancel"),onClick:I}):(0,_vue.createCommentVNode)(),d?(0,_vue.h)(d,{status:"primary",disabled:!l||_.loading,content:getI18n("vxe.import.impConfirm"),onClick:O}):(0,_vue.createCommentVNode)()])])}}):(0,_vue.createCommentVNode)()}}});
@@ -508,12 +508,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
508
508
  $xeTable.clearHoverRow();
509
509
  };
510
510
  }
511
- // 拖拽行事件
512
- if (rowOpts.drag) {
513
- trOn.onDragstart = $xeTable.handleRowDragDragstartEvent;
514
- trOn.onDragend = $xeTable.handleRowDragDragendEvent;
515
- trOn.onDragover = $xeTable.handleRowDragDragoverEvent;
516
- }
517
511
  const rowid = (0, _util.getRowid)($xeTable, row);
518
512
  const rest = fullAllDataRowIdData[rowid];
519
513
  let rowLevel = 0;
@@ -550,6 +544,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
550
544
  rowChildren = row[childrenField];
551
545
  isExpandTree = rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
552
546
  }
547
+ // 拖拽行事件
548
+ if (rowOpts.drag && !rowLevel) {
549
+ trOn.onDragstart = $xeTable.handleRowDragDragstartEvent;
550
+ trOn.onDragend = $xeTable.handleRowDragDragendEvent;
551
+ trOn.onDragover = $xeTable.handleRowDragDragoverEvent;
552
+ }
553
553
  const trClass = ['vxe-body--row', treeConfig ? `row--level-${rowLevel}` : '', {
554
554
  'row--stripe': stripe && ($xeTable.getVTRowIndex(row) + 1) % 2 === 0,
555
555
  'is--new': isNewRow,
@@ -673,6 +673,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
673
673
  const headerElem = tableHeader ? tableHeader.$el : null;
674
674
  const footerElem = tableFooter ? tableFooter.$el : null;
675
675
  const bodyElem = tableBody.$el;
676
+ if (!bodyElem) {
677
+ return;
678
+ }
676
679
  const leftElem = leftBody ? leftBody.$el : null;
677
680
  const rightElem = rightBody ? rightBody.$el : null;
678
681
  const xHandleEl = refScrollXHandleElem.value;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(_){const pe=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:b,props:ge,context:T,reactData:me,internalData:he}=pe,{refTableBody:x,refTableHeader:p,refTableFooter:g,refTableLeftBody:f,refTableRightBody:y,refScrollXHandleElem:h,refScrollYHandleElem:k}=pe.getRefMaps(),{computeEditOpts:xe,computeMouseOpts:fe,computeAreaOpts:Se,computeSYOpts:ye,computeEmptyOpts:U,computeKeyboardOpts:j,computeTooltipOpts:Ce,computeRadioOpts:e,computeExpandOpts:P,computeTreeOpts:c,computeCheckboxOpts:we,computeCellOpts:Ee,computeValidOpts:Oe,computeRowOpts:_e,computeColumnOpts:be}=pe.getComputeMaps(),S=(0,_vue.ref)(),C=(0,_vue.ref)(),E=(0,_vue.ref)(),O=(0,_vue.ref)(),R=(0,_vue.ref)(),D=(0,_vue.ref)(),M=(0,_vue.ref)(),v=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},Te=()=>{var e=ge["delayHover"],{lastScrollTime:l,_isResize:t}=me;return!!(t||l&&Date.now()<l+e)},m=(e,l)=>{let t=1;if(e){var o=c.value,r=e[o.children||o.childrenField];if(r&&pe.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=m(r[e],l)}return t},Re=e=>{var{row:l,column:t}=e,o=he["afterFullData"],r=ge["treeConfig"],a=c.value,{slots:t,treeNode:s}=t,n=he["fullAllDataRowIdData"],n=n[(0,_util.getRowid)(pe,l)];let i=0,d=0,u=[];return n&&(i=n.level,d=n._index,u=n.items),t&&t.line?pe.callSlot(t.line,e):(n=pe.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${n?1:((e,l,t)=>{let o=1;return t&&(o=m(l[t-1],e)),me.rowHeight*o-(t?1:12-v())})(e,u,d)}px`,left:i*a.indent+(i?2-v():0)+16+"px"}})])]:[])},z=(e,l,t,o,r,a,s,U,n,i,j,q)=>{var B=he["fullAllDataRowIdData"],{columnKey:A,height:d,showOverflow:F,cellClassName:N,cellStyle:u,align:Y,spanMethod:V,mouseConfig:K,editConfig:W,editRules:c,tooltipConfig:X}=ge,{tableData:P,overflowX:v,currentColumn:z,scrollXLoad:G,scrollYLoad:J,mergeList:p,editStore:g,isAllOverflow:Q,validErrorMaps:m}=me,Z=he["afterFullData"],h=Ee.value,x=Oe.value,ee=we.value,f=xe.value,y=Ce.value,le=_e.value,w=ye.value,te=be.value,oe=fe.value,_=Se.value["selectCellToRow"],{type:re,cellRender:ae,editRender:b,align:T,showOverflow:S,className:se,treeNode:ne,slots:ie}=n,h=h["verticalAlign"],g=g["actived"],w=w["rHeight"],C=le["height"],E=n.id,O=b||ae,O=O?renderer.get(O.name):null,de=O?O.tableCellClassName||O.cellClassName:null,R=O?O.tableCellStyle||O.cellStyle:"";const D=y.showAll;var y=pe.getColumnIndex(n),ue=pe.getVTColumnIndex(n),ce=(0,_utils.isEnableConf)(b);let M=t?n.fixed!==t:n.fixed&&v;v=_xeUtils.default.isUndefined(S)||_xeUtils.default.isNull(S)?F:S,S="ellipsis"===v;const $="title"===v,I=!0===v||"tooltip"===v;v=$||I||S;let ve;var L={},B=B[l],T=T||(O?O.tableCellAlign:"")||Y,O=m[l+":"+E],Y=c&&x.showMessage&&("default"===x.message?d||1<P.length:"inline"===x.message),m={colid:E};const H={$table:pe,$grid:pe.xegrid,isEdit:!1,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:U,column:n,columnIndex:y,$columnIndex:i,_columnIndex:ue,fixed:t,type:renderType,isHidden:M,level:o,visibleData:Z,data:P,items:q};if(($||I||D||X)&&(L.onMouseenter=e=>{Te()||($?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||D)&&pe.triggerBodyTooltipEvent(e,H),pe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},H),e))}),(I||D||X)&&(L.onMouseleave=e=>{Te()||((I||D)&&pe.handleTargetLeaveEvent(e),pe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},H),e))}),(ee.range||K)&&(L.onMousedown=e=>{pe.triggerCellMousedownEvent(e,H)}),L.onClick=e=>{pe.triggerCellClickEvent(e,H)},L.onDblclick=e=>{pe.triggerCellDblclickEvent(e,H)},p.length){c=(0,_util.mergeBodyMethod)(p,U,ue);if(c){var{rowspan:d,colspan:e}=c;if(!d||!e)return null;1<d&&(m.rowspan=d),1<e&&(m.colspan=e)}}else if(V){var{rowspan:l=1,colspan:a=1}=V(H)||{};if(!l||!a)return null;1<l&&(m.rowspan=l),1<a&&(m.colspan=a)}!(M=M&&p&&(1<m.colspan||1<m.rowspan)?!1:M)&&W&&(b||ae)&&(f.showStatus||f.showUpdateStatus)&&(ve=pe.isUpdateByRow(r,n.field));s=[];M&&F&&Q?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":$,"c--tooltip":I,"c--ellipsis":S}],style:{maxHeight:v&&(w||C)?`${w||C}px`:""}})):(s.push(...Re(H),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":$,"c--tooltip":I,"c--ellipsis":S}],style:{maxHeight:v&&(w||C)?`${w||C}px`:""},title:$?pe.getCellLabel(r,n):null},n.renderCell(H))),Y&&O&&(y=O.rule,t=ie?ie.valid:null,o=Object.assign(Object.assign(Object.assign({},H),O),{rule:O}),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(x.className,o)],style:y&&y.maxWidth?{width:y.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(x.theme||"normal")},[t?pe.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)]])]))));let k="";return v&&(w||C)?k=`${w||C}px`:!G&&!J||v||(k=`${B.height||24}px`),K&&oe.area&&_&&((i||!0!==_)&&_!==n.field||s.push((0,_vue.h)("div",{class:"vxe-cell--area-status"}))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",E,{["col--"+T]:T,["col--vertical-"+h]:h,["col--"+re]:re,"col--last":i===j.length-1,"col--tree-node":ne,"col--edit":ce,"col--ellipsis":v,"fixed--hidden":M,"col--dirty":ve,"col--active":W&&ce&&g.row===r&&(g.column===n||"row"===f.mode),"col--valid-error":!!O,"col--current":z===n},(0,_dom.getPropClass)(de,H),(0,_dom.getPropClass)(se,H),(0,_dom.getPropClass)(N,H)],key:A||te.useKey||le.useKey||te.drag?E:i},m),{style:Object.assign({height:k},_xeUtils.default.isFunction(R)?R(H):R,_xeUtils.default.isFunction(u)?u(H):u)}),L),s)},X=(x,f,y)=>{const{stripe:w,rowKey:_,highlightHoverRow:b,rowClassName:T,rowStyle:S,showOverflow:C,editConfig:E,treeConfig:O}=ge,{hasFixedColumn:R,treeExpandedMaps:D,scrollYLoad:M,rowExpandedMaps:$,expandColumn:I,selectRadioRow:L,pendingRowMaps:H,pendingRowList:k,isDragColMove:U}=me,j=he["fullAllDataRowIdData"],q=we.value,B=e.value,A=c.value,F=xe.value,N=_e.value,Y=be.value,V=A["transform"],K=A.children||A.childrenField,W=[];return f.forEach((t,o)=>{var e={};let r;r=pe.getRowIndex(t),(N.isHover||b)&&(e.onMouseenter=e=>{Te()||pe.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{Te()||pe.clearHoverRow()}),N.drag&&(e.onDragstart=pe.handleRowDragDragstartEvent,e.onDragend=pe.handleRowDragDragendEvent,e.onDragover=pe.handleRowDragDragoverEvent);const a=(0,_util.getRowid)(pe,t);var l=j[a];let s=0,n=-1,i=0;l&&(s=l.level,n=l.seq,i=l._index);var l={$table:pe,seq:n,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:i},d=I&&!!$[a];let u=!1,c=[],v=!1;E&&(v=pe.isInsertByRow(t)),!O||M||V||(c=t[K],u=c&&0<c.length&&!!D[a]);var p,g,m=["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(pe.getVTRowIndex(t)+1)%2==0,"is--new":v,"is--expand-row":d,"is--expand-tree":u,"row--new":v&&(F.showStatus||F.showInsertStatus),"row--radio":B.highlight&&pe.eqRow(L,t),"row--checked":q.highlight&&pe.isCheckedByCheckboxRow(t),"row--pending":k.length&&!!H[a]},(0,_dom.getPropClass)(T,l)];const h=y.map((e,l)=>z(n,a,x,s,t,r,o,i,e,l,y,f));W.push(Y.drag?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(U?"":"-disabled"),tag:"tr",class:m,rowid:a,style:S?_xeUtils.default.isFunction(S)?S(l):S:null,key:_||N.useKey||N.drag||O?a:o},e),{default:()=>h}):(0,_vue.h)("tr",Object.assign({class:m,rowid:a,style:S?_xeUtils.default.isFunction(S)?S(l):S:null,key:_||N.useKey||N.drag||O?a:o},e),h)),d&&({height:m,padding:l}=P.value,d={},p=(m&&(d.height=m+"px"),O&&(d.paddingLeft=s*A.indent+30+"px"),I)["showOverflow"],p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?C:p,g={$table:pe,seq:n,column:I,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:i},W.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+a,style:S?_xeUtils.default.isFunction(S)?S(g):S:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!R,"col--ellipsis":p},colspan:y.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":m},style:d},[I.renderData(g)])])]))),u&&W.push(...X(x,c,y))}),W},q=e=>{var l,t,o,r,a,s=_["fixedType"],{lastScrollTop:n,lastScrollLeft:i,inVirtualScroll:d,inBodyScroll:u,bodyScrollType:c,inFooterScroll:v}=he;d||v||u&&c!==s||(d=p.value,v=x.value,u=g.value,c=f.value,l=y.value,r=S.value,d=d?d.$el:null,u=u?u.$el:null,v=v.$el,c=c?c.$el:null,l=l?l.$el:null,t=h.value,o=k.value,r=r.scrollTop,i=(a=v.scrollLeft)!==i,n=r!==n,he.inBodyScroll=!0,he.bodyScrollType=s,n&&(c&&"left"===s?((0,_dom.setScrollTop)(v,r),(0,_dom.setScrollTop)(l,r)):l&&"right"===s?((0,_dom.setScrollTop)(v,r),(0,_dom.setScrollTop)(c,r)):((0,_dom.setScrollTop)(c,r),(0,_dom.setScrollTop)(l,r)),(0,_dom.setScrollTop)(o,r),pe.triggerScrollYEvent(e)),i&&((0,_dom.setScrollLeft)(t,a),(0,_dom.setScrollLeft)(d,a),(0,_dom.setScrollLeft)(u,a),pe.triggerScrollXEvent(e)),pe.handleScrollEvent(e,n,i,r,a,{type:renderType,fixed:s}))};let w,$=0,I=0,L=0,H=!1;const B=(r,a,e,s,n)=>{var l=he["elemStore"],{scrollXLoad:t,scrollYLoad:o}=me,i=x.value,d=f.value,u=y.value;const c=d?d.$el:null,v=u?u.$el:null,p=i.$el;d=(0,_util.getRefElem)(l["main-body-ySpace"]),u=(0,_util.getRefElem)(l["main-body-xSpace"]);const g=(o&&d?d:p).clientHeight,m=(t&&u?u:p).clientWidth;i=H===a?Math.max(0,$-L):0;H=a,$=Math.abs(a?e-i:e+i),I=0,L=0,clearTimeout(w);const h=()=>{var e,l,t,o;L<$&&(e=_["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(I=Math.max(5,Math.floor(1.5*I)),(L+=I)>$&&(I-=L-$),p),o=o+I*(a?-1:1),p.scrollTop=o,c&&(c.scrollTop=o),v&&(v.scrollTop=o),(a?o<t-l:0<=o)&&(w=setTimeout(h,10)),pe.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:p.scrollTop,scrollLeft:p.scrollLeft,scrollHeight:p.scrollHeight,scrollWidth:p.scrollWidth,bodyHeight:g,bodyWidth:m,isX:s,isY:n},r))};h()},A=e=>{var{deltaY:l,deltaX:t}=e,o=ge["highlightHoverRow"],r=me["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=he,n=_e.value,i=x.value,d=S.value,i=i.$el,u=l<0;(u?d.scrollTop<=0:d.scrollTop>=d.scrollHeight-d.clientHeight)||(d=d.scrollTop+l,t=(i=i.scrollLeft+t)!==s,(s=d!==a)&&(e.preventDefault(),he.lastScrollTop=d,he.lastScrollLeft=i,me.lastScrollTime=Date.now(),(n.isHover||o)&&pe.clearHoverRow(),B(e,u,l,t,s),r)&&pe.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=_["fixedType"],l=he["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=S,l[e+"table"]=C,l[e+"colgroup"]=E,l[e+"list"]=O,l[e+"xSpace"]=R,l[e+"ySpace"]=D,l[e+"emptyBlock"]=M})}),(0,_vue.onBeforeUnmount)(()=>{clearTimeout(w)}),(0,_vue.onUnmounted)(()=>{var e=_["fixedType"],l=he["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=_;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=ge;const{tableData:n,mergeList:i,scrollYLoad:d,isAllOverflow:u,isDragRowMove:c}=me;var v=he["visibleColumn"],p=T["slots"],g=_e.value,m=ye.value,h=U.value,x=j.value,f=fe.value,y=be.value;l&&(t=me.expandColumn||!(d||r&&u)||i.length||a||o&&x.isMerge?v:e);let w;r=p?p.empty:null,w=r?pe.callSlot(r,{$table:pe,$grid:pe.xegrid}):(o=(a=h.name?renderer.get(h.name):null)?a.renderTableEmpty||a.renderTableEmptyView||a.renderEmpty:null)?(0,_vn.getSlotVNs)(o(h,{$table:pe})):ge.emptyText||getI18n("vxe.table.emptyText"),x={onScroll:q};return"wheel"===m.mode&&(x.onWheel=A),(0,_vue.h)("div",Object.assign({ref:S,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:b},x),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:R,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:D,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:C,class:"vxe-table--body",xid:b,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:E},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),g.drag||y.drag?(0,_vue.h)(_vue.TransitionGroup,{ref:O,name:"vxe-body--row-list"+(c?"":"-disabled"),tag:"tbody"},{default:()=>X(l,n,t)}):(0,_vue.h)("tbody",{ref:O},X(l,n,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&f.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},f.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){pe.triggerCellAreaExtendMousedownEvent&&pe.triggerCellAreaExtendMousedownEvent(e,{$table:pe,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):renderEmptyElement(pe),l?renderEmptyElement(pe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:M},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},w)])])}}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(_){const pe=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:b,props:ge,context:T,reactData:me,internalData:he}=pe,{refTableBody:x,refTableHeader:p,refTableFooter:g,refTableLeftBody:f,refTableRightBody:y,refScrollXHandleElem:h,refScrollYHandleElem:k}=pe.getRefMaps(),{computeEditOpts:xe,computeMouseOpts:fe,computeAreaOpts:Se,computeSYOpts:ye,computeEmptyOpts:U,computeKeyboardOpts:j,computeTooltipOpts:Ce,computeRadioOpts:e,computeExpandOpts:P,computeTreeOpts:c,computeCheckboxOpts:we,computeCellOpts:Ee,computeValidOpts:Oe,computeRowOpts:_e,computeColumnOpts:be}=pe.getComputeMaps(),S=(0,_vue.ref)(),C=(0,_vue.ref)(),E=(0,_vue.ref)(),O=(0,_vue.ref)(),R=(0,_vue.ref)(),D=(0,_vue.ref)(),M=(0,_vue.ref)(),v=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},Te=()=>{var e=ge["delayHover"],{lastScrollTime:l,_isResize:t}=me;return!!(t||l&&Date.now()<l+e)},m=(e,l)=>{let t=1;if(e){var o=c.value,r=e[o.children||o.childrenField];if(r&&pe.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=m(r[e],l)}return t},Re=e=>{var{row:l,column:t}=e,o=he["afterFullData"],r=ge["treeConfig"],a=c.value,{slots:t,treeNode:s}=t,n=he["fullAllDataRowIdData"],n=n[(0,_util.getRowid)(pe,l)];let i=0,d=0,u=[];return n&&(i=n.level,d=n._index,u=n.items),t&&t.line?pe.callSlot(t.line,e):(n=pe.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${n?1:((e,l,t)=>{let o=1;return t&&(o=m(l[t-1],e)),me.rowHeight*o-(t?1:12-v())})(e,u,d)}px`,left:i*a.indent+(i?2-v():0)+16+"px"}})])]:[])},z=(e,l,t,o,r,a,s,U,n,i,j,q)=>{var B=he["fullAllDataRowIdData"],{columnKey:A,height:d,showOverflow:F,cellClassName:N,cellStyle:u,align:Y,spanMethod:V,mouseConfig:K,editConfig:W,editRules:c,tooltipConfig:X}=ge,{tableData:P,overflowX:v,currentColumn:z,scrollXLoad:G,scrollYLoad:J,mergeList:p,editStore:g,isAllOverflow:Q,validErrorMaps:m}=me,Z=he["afterFullData"],h=Ee.value,x=Oe.value,ee=we.value,f=xe.value,y=Ce.value,le=_e.value,w=ye.value,te=be.value,oe=fe.value,_=Se.value["selectCellToRow"],{type:re,cellRender:ae,editRender:b,align:T,showOverflow:S,className:se,treeNode:ne,slots:ie}=n,h=h["verticalAlign"],g=g["actived"],w=w["rHeight"],C=le["height"],E=n.id,O=b||ae,O=O?renderer.get(O.name):null,de=O?O.tableCellClassName||O.cellClassName:null,R=O?O.tableCellStyle||O.cellStyle:"";const D=y.showAll;var y=pe.getColumnIndex(n),ue=pe.getVTColumnIndex(n),ce=(0,_utils.isEnableConf)(b);let M=t?n.fixed!==t:n.fixed&&v;v=_xeUtils.default.isUndefined(S)||_xeUtils.default.isNull(S)?F:S,S="ellipsis"===v;const $="title"===v,I=!0===v||"tooltip"===v;v=$||I||S;let ve;var L={},B=B[l],T=T||(O?O.tableCellAlign:"")||Y,O=m[l+":"+E],Y=c&&x.showMessage&&("default"===x.message?d||1<P.length:"inline"===x.message),m={colid:E};const H={$table:pe,$grid:pe.xegrid,isEdit:!1,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:U,column:n,columnIndex:y,$columnIndex:i,_columnIndex:ue,fixed:t,type:renderType,isHidden:M,level:o,visibleData:Z,data:P,items:q};if(($||I||D||X)&&(L.onMouseenter=e=>{Te()||($?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||D)&&pe.triggerBodyTooltipEvent(e,H),pe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},H),e))}),(I||D||X)&&(L.onMouseleave=e=>{Te()||((I||D)&&pe.handleTargetLeaveEvent(e),pe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},H),e))}),(ee.range||K)&&(L.onMousedown=e=>{pe.triggerCellMousedownEvent(e,H)}),L.onClick=e=>{pe.triggerCellClickEvent(e,H)},L.onDblclick=e=>{pe.triggerCellDblclickEvent(e,H)},p.length){c=(0,_util.mergeBodyMethod)(p,U,ue);if(c){var{rowspan:d,colspan:e}=c;if(!d||!e)return null;1<d&&(m.rowspan=d),1<e&&(m.colspan=e)}}else if(V){var{rowspan:l=1,colspan:a=1}=V(H)||{};if(!l||!a)return null;1<l&&(m.rowspan=l),1<a&&(m.colspan=a)}!(M=M&&p&&(1<m.colspan||1<m.rowspan)?!1:M)&&W&&(b||ae)&&(f.showStatus||f.showUpdateStatus)&&(ve=pe.isUpdateByRow(r,n.field));s=[];M&&F&&Q?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":$,"c--tooltip":I,"c--ellipsis":S}],style:{maxHeight:v&&(w||C)?`${w||C}px`:""}})):(s.push(...Re(H),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":$,"c--tooltip":I,"c--ellipsis":S}],style:{maxHeight:v&&(w||C)?`${w||C}px`:""},title:$?pe.getCellLabel(r,n):null},n.renderCell(H))),Y&&O&&(y=O.rule,t=ie?ie.valid:null,o=Object.assign(Object.assign(Object.assign({},H),O),{rule:O}),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(x.className,o)],style:y&&y.maxWidth?{width:y.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(x.theme||"normal")},[t?pe.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)]])]))));let k="";return v&&(w||C)?k=`${w||C}px`:!G&&!J||v||(k=`${B.height||24}px`),K&&oe.area&&_&&((i||!0!==_)&&_!==n.field||s.push((0,_vue.h)("div",{class:"vxe-cell--area-status"}))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",E,{["col--"+T]:T,["col--vertical-"+h]:h,["col--"+re]:re,"col--last":i===j.length-1,"col--tree-node":ne,"col--edit":ce,"col--ellipsis":v,"fixed--hidden":M,"col--dirty":ve,"col--active":W&&ce&&g.row===r&&(g.column===n||"row"===f.mode),"col--valid-error":!!O,"col--current":z===n},(0,_dom.getPropClass)(de,H),(0,_dom.getPropClass)(se,H),(0,_dom.getPropClass)(N,H)],key:A||te.useKey||le.useKey||te.drag?E:i},m),{style:Object.assign({height:k},_xeUtils.default.isFunction(R)?R(H):R,_xeUtils.default.isFunction(u)?u(H):u)}),L),s)},X=(x,f,y)=>{const{stripe:w,rowKey:_,highlightHoverRow:b,rowClassName:T,rowStyle:S,showOverflow:C,editConfig:E,treeConfig:O}=ge,{hasFixedColumn:R,treeExpandedMaps:D,scrollYLoad:M,rowExpandedMaps:$,expandColumn:I,selectRadioRow:L,pendingRowMaps:H,pendingRowList:k,isDragColMove:U}=me,j=he["fullAllDataRowIdData"],q=we.value,B=e.value,A=c.value,F=xe.value,N=_e.value,Y=be.value,V=A["transform"],K=A.children||A.childrenField,W=[];return f.forEach((t,o)=>{var e={};let r;r=pe.getRowIndex(t),(N.isHover||b)&&(e.onMouseenter=e=>{Te()||pe.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{Te()||pe.clearHoverRow()});const a=(0,_util.getRowid)(pe,t);var l=j[a];let s=0,n=-1,i=0;l&&(s=l.level,n=l.seq,i=l._index);var l={$table:pe,seq:n,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:i},d=I&&!!$[a];let u=!1,c=[],v=!1;E&&(v=pe.isInsertByRow(t)),!O||M||V||(c=t[K],u=c&&0<c.length&&!!D[a]),N.drag&&!s&&(e.onDragstart=pe.handleRowDragDragstartEvent,e.onDragend=pe.handleRowDragDragendEvent,e.onDragover=pe.handleRowDragDragoverEvent);var p,g,m=["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(pe.getVTRowIndex(t)+1)%2==0,"is--new":v,"is--expand-row":d,"is--expand-tree":u,"row--new":v&&(F.showStatus||F.showInsertStatus),"row--radio":B.highlight&&pe.eqRow(L,t),"row--checked":q.highlight&&pe.isCheckedByCheckboxRow(t),"row--pending":k.length&&!!H[a]},(0,_dom.getPropClass)(T,l)];const h=y.map((e,l)=>z(n,a,x,s,t,r,o,i,e,l,y,f));W.push(Y.drag?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(U?"":"-disabled"),tag:"tr",class:m,rowid:a,style:S?_xeUtils.default.isFunction(S)?S(l):S:null,key:_||N.useKey||N.drag||O?a:o},e),{default:()=>h}):(0,_vue.h)("tr",Object.assign({class:m,rowid:a,style:S?_xeUtils.default.isFunction(S)?S(l):S:null,key:_||N.useKey||N.drag||O?a:o},e),h)),d&&({height:m,padding:l}=P.value,d={},p=(m&&(d.height=m+"px"),O&&(d.paddingLeft=s*A.indent+30+"px"),I)["showOverflow"],p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?C:p,g={$table:pe,seq:n,column:I,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:i},W.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+a,style:S?_xeUtils.default.isFunction(S)?S(g):S:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!R,"col--ellipsis":p},colspan:y.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":m},style:d},[I.renderData(g)])])]))),u&&W.push(...X(x,c,y))}),W},q=e=>{var l,t,o,r,a,s=_["fixedType"],{lastScrollTop:n,lastScrollLeft:i,inVirtualScroll:d,inBodyScroll:u,bodyScrollType:c,inFooterScroll:v}=he;d||v||u&&c!==s||(d=p.value,v=x.value,u=g.value,c=f.value,l=y.value,r=S.value,d=d?d.$el:null,u=u?u.$el:null,(v=v.$el)&&(c=c?c.$el:null,l=l?l.$el:null,t=h.value,o=k.value,r=r.scrollTop,i=(a=v.scrollLeft)!==i,n=r!==n,he.inBodyScroll=!0,he.bodyScrollType=s,n&&(c&&"left"===s?((0,_dom.setScrollTop)(v,r),(0,_dom.setScrollTop)(l,r)):l&&"right"===s?((0,_dom.setScrollTop)(v,r),(0,_dom.setScrollTop)(c,r)):((0,_dom.setScrollTop)(c,r),(0,_dom.setScrollTop)(l,r)),(0,_dom.setScrollTop)(o,r),pe.triggerScrollYEvent(e)),i&&((0,_dom.setScrollLeft)(t,a),(0,_dom.setScrollLeft)(d,a),(0,_dom.setScrollLeft)(u,a),pe.triggerScrollXEvent(e)),pe.handleScrollEvent(e,n,i,r,a,{type:renderType,fixed:s})))};let w,$=0,I=0,L=0,H=!1;const B=(r,a,e,s,n)=>{var l=he["elemStore"],{scrollXLoad:t,scrollYLoad:o}=me,i=x.value,d=f.value,u=y.value;const c=d?d.$el:null,v=u?u.$el:null,p=i.$el;d=(0,_util.getRefElem)(l["main-body-ySpace"]),u=(0,_util.getRefElem)(l["main-body-xSpace"]);const g=(o&&d?d:p).clientHeight,m=(t&&u?u:p).clientWidth;i=H===a?Math.max(0,$-L):0;H=a,$=Math.abs(a?e-i:e+i),I=0,L=0,clearTimeout(w);const h=()=>{var e,l,t,o;L<$&&(e=_["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(I=Math.max(5,Math.floor(1.5*I)),(L+=I)>$&&(I-=L-$),p),o=o+I*(a?-1:1),p.scrollTop=o,c&&(c.scrollTop=o),v&&(v.scrollTop=o),(a?o<t-l:0<=o)&&(w=setTimeout(h,10)),pe.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:p.scrollTop,scrollLeft:p.scrollLeft,scrollHeight:p.scrollHeight,scrollWidth:p.scrollWidth,bodyHeight:g,bodyWidth:m,isX:s,isY:n},r))};h()},A=e=>{var{deltaY:l,deltaX:t}=e,o=ge["highlightHoverRow"],r=me["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=he,n=_e.value,i=x.value,d=S.value,i=i.$el,u=l<0;(u?d.scrollTop<=0:d.scrollTop>=d.scrollHeight-d.clientHeight)||(d=d.scrollTop+l,t=(i=i.scrollLeft+t)!==s,(s=d!==a)&&(e.preventDefault(),he.lastScrollTop=d,he.lastScrollLeft=i,me.lastScrollTime=Date.now(),(n.isHover||o)&&pe.clearHoverRow(),B(e,u,l,t,s),r)&&pe.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=_["fixedType"],l=he["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=S,l[e+"table"]=C,l[e+"colgroup"]=E,l[e+"list"]=O,l[e+"xSpace"]=R,l[e+"ySpace"]=D,l[e+"emptyBlock"]=M})}),(0,_vue.onBeforeUnmount)(()=>{clearTimeout(w)}),(0,_vue.onUnmounted)(()=>{var e=_["fixedType"],l=he["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=_;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=ge;const{tableData:n,mergeList:i,scrollYLoad:d,isAllOverflow:u,isDragRowMove:c}=me;var v=he["visibleColumn"],p=T["slots"],g=_e.value,m=ye.value,h=U.value,x=j.value,f=fe.value,y=be.value;l&&(t=me.expandColumn||!(d||r&&u)||i.length||a||o&&x.isMerge?v:e);let w;r=p?p.empty:null,w=r?pe.callSlot(r,{$table:pe,$grid:pe.xegrid}):(o=(a=h.name?renderer.get(h.name):null)?a.renderTableEmpty||a.renderTableEmptyView||a.renderEmpty:null)?(0,_vn.getSlotVNs)(o(h,{$table:pe})):ge.emptyText||getI18n("vxe.table.emptyText"),x={onScroll:q};return"wheel"===m.mode&&(x.onWheel=A),(0,_vue.h)("div",Object.assign({ref:S,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:b},x),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:R,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:D,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:C,class:"vxe-table--body",xid:b,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:E},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),g.drag||y.drag?(0,_vue.h)(_vue.TransitionGroup,{ref:O,name:"vxe-body--row-list"+(c?"":"-disabled"),tag:"tbody"},{default:()=>X(l,n,t)}):(0,_vue.h)("tbody",{ref:O},X(l,n,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&f.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},f.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){pe.triggerCellAreaExtendMousedownEvent&&pe.triggerCellAreaExtendMousedownEvent(e,{$table:pe,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):renderEmptyElement(pe),l?renderEmptyElement(pe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:M},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},w)])])}}});
@@ -25,6 +25,9 @@ class ColumnInfo {
25
25
  const $xeGrid = $xeTable.xegrid;
26
26
  const formatter = _vm.formatter;
27
27
  const visible = _xeUtils.default.isBoolean(_vm.visible) ? _vm.visible : true;
28
+ const {
29
+ props: tableProps
30
+ } = $xeTable;
28
31
  if (process.env.NODE_ENV === 'development') {
29
32
  const types = ['seq', 'checkbox', 'radio', 'expand', 'html'];
30
33
  if (_vm.type && types.indexOf(_vm.type) === -1) {
@@ -40,9 +43,6 @@ class ColumnInfo {
40
43
  (0, _log.warnLog)('vxe.error.errConflicts', ['column.cell-render', 'column.edit-render']);
41
44
  }
42
45
  if (_vm.type === 'expand') {
43
- const {
44
- props: tableProps
45
- } = $xeTable;
46
46
  const {
47
47
  treeConfig
48
48
  } = tableProps;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,formats}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:l,renderFooter:o,renderData:i}={}){var d,n=e.xegrid,s=r.formatter,a=!_xeUtils.default.isBoolean(r.visible)||r.visible;"development"===process.env.NODE_ENV&&(d=["seq","checkbox","radio","expand","html"],r.type&&-1===d.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,d.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),r.cellRender&&r.editRender&&(0,_log.warnLog)("vxe.error.errConflicts",["column.cell-render","column.edit-render"]),"expand"===r.type&&(d=e["props"],d=d["treeConfig"],e=e.getComputeMaps()["computeTreeOpts"],e=e.value,d)&&(e.showLine||e.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.showLine","column.type=expand"]),s)&&(_xeUtils.default.isString(s)?(d=formats.get(s)||_xeUtils.default[s])&&_xeUtils.default.isFunction(d.tableCellFormatMethod||d.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s]):!_xeUtils.default.isArray(s)||(e=formats.get(s[0])||_xeUtils.default[s[0]])&&_xeUtils.default.isFunction(e.tableCellFormatMethod||e.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s[0]])),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:s,footerFormatter:r.footerFormatter,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,treeNode:r.treeNode,dragSort:r.dragSort,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:a,halfVisible:!1,defaultVisible:a,defaultFixed:r.fixed,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:l||r.renderCell,renderFooter:o||r.renderFooter,renderData:i,slots:r.slots}),n&&(d=n.getComputeMaps()["computeProxyOpts"],(e=d.value).beforeColumn)&&e.beforeColumn({$grid:n,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var e=this["type"];return this.field||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,formats}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:l,renderFooter:o,renderData:i}={}){var d,n=e.xegrid,s=r.formatter,a=!_xeUtils.default.isBoolean(r.visible)||r.visible,u=e["props"];"development"===process.env.NODE_ENV&&(d=["seq","checkbox","radio","expand","html"],r.type&&-1===d.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,d.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),r.cellRender&&r.editRender&&(0,_log.warnLog)("vxe.error.errConflicts",["column.cell-render","column.edit-render"]),"expand"===r.type&&(d=u["treeConfig"],u=e.getComputeMaps()["computeTreeOpts"],e=u.value,d)&&(e.showLine||e.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.showLine","column.type=expand"]),s)&&(_xeUtils.default.isString(s)?(u=formats.get(s)||_xeUtils.default[s])&&_xeUtils.default.isFunction(u.tableCellFormatMethod||u.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s]):!_xeUtils.default.isArray(s)||(d=formats.get(s[0])||_xeUtils.default[s[0]])&&_xeUtils.default.isFunction(d.tableCellFormatMethod||d.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[s[0]])),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:s,footerFormatter:r.footerFormatter,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,treeNode:r.treeNode,dragSort:r.dragSort,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:a,halfVisible:!1,defaultVisible:a,defaultFixed:r.fixed,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:l||r.renderCell,renderFooter:o||r.renderFooter,renderData:i,slots:r.slots}),n&&(e=n.getComputeMaps()["computeProxyOpts"],(u=e.value).beforeColumn)&&u.beforeColumn({$grid:n,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var e=this["type"];return this.field||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
@@ -102,7 +102,13 @@ var _default = exports.default = (0, _vue.defineComponent)({
102
102
  const tableBody = refTableBody.value;
103
103
  const headerElem = tableHeader ? tableHeader.$el : null;
104
104
  const footerElem = refElem.value;
105
- const bodyElem = tableBody.$el;
105
+ if (!footerElem) {
106
+ return;
107
+ }
108
+ const bodyElem = tableBody ? tableBody.$el : null;
109
+ if (!bodyElem) {
110
+ return;
111
+ }
106
112
  const xHandleEl = refScrollXHandleElem.value;
107
113
  const scrollLeft = footerElem.scrollLeft;
108
114
  const isRollX = true;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const renderer=_ui.VxeUI["renderer"],renderType="footer";function mergeFooterMethod(l,o,t){for(let e=0;e<l.length;e++){var{row:r,col:n,rowspan:a,colspan:i}=l[e];if(-1<n&&-1<r&&a&&i){if(r===o&&n===t)return{rowspan:a,colspan:i};if(r<=o&&o<r+a&&n<=t&&t<n+i)return{rowspan:0,colspan:0}}}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(d){const A=(0,_vue.inject)("$xeTable",{}),{xID:c,props:f,reactData:p,internalData:v}=A,{refTableHeader:i,refTableBody:u,refScrollXHandleElem:s}=A.getRefMaps(),{computeTooltipOpts:l,computeColumnOpts:x}=A.getComputeMaps(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),_=(0,_vue.ref)(),y=(0,_vue.ref)(),b=(0,_vue.ref)(),h=e=>{var l,o,t,r,{inVirtualScroll:n,inBodyScroll:a}=v;n||a||(n=d["fixedType"],a=i.value,l=u.value,a=a?a.$el:null,t=m.value,l=l.$el,o=s.value,t=t.scrollLeft,r=l.scrollTop,v.inFooterScroll=!0,(0,_dom.setScrollLeft)(o,t),(0,_dom.setScrollLeft)(a,t),(0,_dom.setScrollLeft)(l,t),A.triggerScrollXEvent(e),A.handleScrollEvent(e,!1,!0,r,t,{type:renderType,fixed:n}))},w=(g,_,y,b,h)=>{const w=d["fixedType"],{footerCellClassName:T,footerCellStyle:C,footerAlign:S,footerSpanMethod:F,align:I,columnKey:O,showFooterOverflow:M}=f,{scrollXLoad:$,overflowX:j,scrollbarWidth:e,currentColumn:D,mergeFooterList:L}=p,U=l.value,k=x.value;return g.map((l,e)=>{var{type:o,showFooterOverflow:t,footerAlign:r,align:n,footerClassName:a,editRender:i,cellRender:u}=l,i=i||u,u=i?renderer.get(i.name):null;const s=U.showAll;i=l.children&&l.children.length,i=w?l.fixed!==w&&!i:l.fixed&&j,t=_xeUtils.default.eqNull(t)?M:t,r=r||(u?u.tableFooterCellAlign:"")||S||n||(u?u.tableCellAlign:"")||I;let c="ellipsis"===t;const d="title"===t,f=!0===t||"tooltip"===t;let p=d||f||c;var n={colid:l.id},u={},t=A.getColumnIndex(l),v=A.getVTColumnIndex(l),x=v;const m={$table:A,$grid:A.xegrid,row:y,rowIndex:h,_rowIndex:h,$rowIndex:b,column:l,columnIndex:t,$columnIndex:e,_columnIndex:v,itemIndex:x,items:y,fixed:w,type:renderType,data:_};if($&&!p&&(c=p=!0),(d||f||s)&&(u.onMouseenter=e=>{d?(0,_dom.updateCellTitle)(e.currentTarget,l):(f||s)&&A.triggerFooterTooltipEvent(e,m)}),(f||s)&&(u.onMouseleave=e=>{(f||s)&&A.handleTargetLeaveEvent(e)}),u.onClick=e=>{A.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},m),e)},u.onDblclick=e=>{A.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},m),e)},L.length){t=mergeFooterMethod(L,h,v);if(t){var{rowspan:x,colspan:v}=t;if(!x||!v)return null;1<x&&(n.rowspan=x),1<v&&(n.colspan=v)}}else if(F){var{rowspan:t=1,colspan:x=1}=F(m)||{};if(!t||!x)return null;1<t&&(n.rowspan=t),1<x&&(n.colspan=x)}return(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-footer--column",l.id,{["col--"+r]:r,["col--"+o]:o,"col--last":e===g.length-1,"fixed--hidden":i,"col--ellipsis":p,"col--current":D===l},(0,_dom.getPropClass)(a,m),(0,_dom.getPropClass)(T,m)]},n),{style:C?_xeUtils.default.isFunction(C)?C(m):C:null}),u),{key:O||k.useKey||k.drag?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":d,"c--tooltip":f,"c--ellipsis":c}]},l.renderFooter(m))])}).concat(e?[(0,_vue.h)("td",{key:"gr"+b,class:"vxe-footer--gutter col--gutter"})]:[])};return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=d["fixedType"],l=v["elemStore"],e=`${e||"main"}-footer-`;l[e+"wrapper"]=m,l[e+"table"]=g,l[e+"colgroup"]=_,l[e+"list"]=y,l[e+"xSpace"]=b})}),(0,_vue.onUnmounted)(()=>{var e=d["fixedType"],l=v["elemStore"],e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null}),()=>{let{fixedType:e,fixedColumn:l,tableColumn:o,footerTableData:t}=d;var{footerSpanMethod:r,showFooterOverflow:n}=f,a=v["visibleColumn"],{scrollXLoad:i,scrollbarWidth:u,mergeFooterList:s}=p,i=(e&&(o=p.expandColumn||!i&&!n||s.length&&r?a:l),{});return e||(i.onScroll=h),(0,_vue.h)("div",Object.assign({ref:m,class:["vxe-table--footer-wrapper",e?`fixed-${e}--wrapper`:"body--wrapper"],xid:c},i),[e?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:b,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:g,class:"vxe-table--footer",xid:c,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:_},o.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l})).concat(u?[(0,_vue.h)("col",{name:"col_gutter"})]:[])),(0,_vue.h)("tfoot",{ref:y},(r=>{const{fixedType:n,tableColumn:a}=d,{footerRowClassName:i,footerRowStyle:u}=f,s=p["isDragColMove"],c=x.value;return r.map((e,l)=>{const o=l;var t={$table:A,row:e,_rowIndex:o,$rowIndex:l,fixed:n,type:renderType};return c.drag?(0,_vue.h)(_vue.TransitionGroup,{name:"vxe-header--col-list"+(s?"":"-disabled"),tag:"tr",class:["vxe-footer--row",i?_xeUtils.default.isFunction(i)?i(t):i:""],style:u?_xeUtils.default.isFunction(u)?u(t):u:null},{default:()=>w(a,r,e,l,o)}):(0,_vue.h)("tr",{class:["vxe-footer--row",i?_xeUtils.default.isFunction(i)?i(t):i:""],style:u?_xeUtils.default.isFunction(u)?u(t):u:null},w(a,r,e,l,o))})})(t))])])}}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const renderer=_ui.VxeUI["renderer"],renderType="footer";function mergeFooterMethod(l,o,t){for(let e=0;e<l.length;e++){var{row:r,col:n,rowspan:a,colspan:u}=l[e];if(-1<n&&-1<r&&a&&u){if(r===o&&n===t)return{rowspan:a,colspan:u};if(r<=o&&o<r+a&&n<=t&&t<n+u)return{rowspan:0,colspan:0}}}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(d){const A=(0,_vue.inject)("$xeTable",{}),{xID:c,props:f,reactData:p,internalData:v}=A,{refTableHeader:u,refTableBody:i,refScrollXHandleElem:s}=A.getRefMaps(),{computeTooltipOpts:l,computeColumnOpts:x}=A.getComputeMaps(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),_=(0,_vue.ref)(),y=(0,_vue.ref)(),b=(0,_vue.ref)(),h=e=>{var l,o,t,r,{inVirtualScroll:n,inBodyScroll:a}=v;n||a||(n=d["fixedType"],a=u.value,l=i.value,a=a?a.$el:null,(t=m.value)&&(l=l?l.$el:null)&&(o=s.value,t=t.scrollLeft,r=l.scrollTop,v.inFooterScroll=!0,(0,_dom.setScrollLeft)(o,t),(0,_dom.setScrollLeft)(a,t),(0,_dom.setScrollLeft)(l,t),A.triggerScrollXEvent(e),A.handleScrollEvent(e,!1,!0,r,t,{type:renderType,fixed:n})))},w=(g,_,y,b,h)=>{const w=d["fixedType"],{footerCellClassName:T,footerCellStyle:C,footerAlign:S,footerSpanMethod:F,align:I,columnKey:O,showFooterOverflow:M}=f,{scrollXLoad:$,overflowX:j,scrollbarWidth:e,currentColumn:D,mergeFooterList:L}=p,U=l.value,k=x.value;return g.map((l,e)=>{var{type:o,showFooterOverflow:t,footerAlign:r,align:n,footerClassName:a,editRender:u,cellRender:i}=l,u=u||i,i=u?renderer.get(u.name):null;const s=U.showAll;u=l.children&&l.children.length,u=w?l.fixed!==w&&!u:l.fixed&&j,t=_xeUtils.default.eqNull(t)?M:t,r=r||(i?i.tableFooterCellAlign:"")||S||n||(i?i.tableCellAlign:"")||I;let c="ellipsis"===t;const d="title"===t,f=!0===t||"tooltip"===t;let p=d||f||c;var n={colid:l.id},i={},t=A.getColumnIndex(l),v=A.getVTColumnIndex(l),x=v;const m={$table:A,$grid:A.xegrid,row:y,rowIndex:h,_rowIndex:h,$rowIndex:b,column:l,columnIndex:t,$columnIndex:e,_columnIndex:v,itemIndex:x,items:y,fixed:w,type:renderType,data:_};if($&&!p&&(c=p=!0),(d||f||s)&&(i.onMouseenter=e=>{d?(0,_dom.updateCellTitle)(e.currentTarget,l):(f||s)&&A.triggerFooterTooltipEvent(e,m)}),(f||s)&&(i.onMouseleave=e=>{(f||s)&&A.handleTargetLeaveEvent(e)}),i.onClick=e=>{A.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},m),e)},i.onDblclick=e=>{A.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},m),e)},L.length){t=mergeFooterMethod(L,h,v);if(t){var{rowspan:x,colspan:v}=t;if(!x||!v)return null;1<x&&(n.rowspan=x),1<v&&(n.colspan=v)}}else if(F){var{rowspan:t=1,colspan:x=1}=F(m)||{};if(!t||!x)return null;1<t&&(n.rowspan=t),1<x&&(n.colspan=x)}return(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-footer--column",l.id,{["col--"+r]:r,["col--"+o]:o,"col--last":e===g.length-1,"fixed--hidden":u,"col--ellipsis":p,"col--current":D===l},(0,_dom.getPropClass)(a,m),(0,_dom.getPropClass)(T,m)]},n),{style:C?_xeUtils.default.isFunction(C)?C(m):C:null}),i),{key:O||k.useKey||k.drag?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":d,"c--tooltip":f,"c--ellipsis":c}]},l.renderFooter(m))])}).concat(e?[(0,_vue.h)("td",{key:"gr"+b,class:"vxe-footer--gutter col--gutter"})]:[])};return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=d["fixedType"],l=v["elemStore"],e=`${e||"main"}-footer-`;l[e+"wrapper"]=m,l[e+"table"]=g,l[e+"colgroup"]=_,l[e+"list"]=y,l[e+"xSpace"]=b})}),(0,_vue.onUnmounted)(()=>{var e=d["fixedType"],l=v["elemStore"],e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null}),()=>{let{fixedType:e,fixedColumn:l,tableColumn:o,footerTableData:t}=d;var{footerSpanMethod:r,showFooterOverflow:n}=f,a=v["visibleColumn"],{scrollXLoad:u,scrollbarWidth:i,mergeFooterList:s}=p,u=(e&&(o=p.expandColumn||!u&&!n||s.length&&r?a:l),{});return e||(u.onScroll=h),(0,_vue.h)("div",Object.assign({ref:m,class:["vxe-table--footer-wrapper",e?`fixed-${e}--wrapper`:"body--wrapper"],xid:c},u),[e?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:b,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:g,class:"vxe-table--footer",xid:c,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:_},o.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l})).concat(i?[(0,_vue.h)("col",{name:"col_gutter"})]:[])),(0,_vue.h)("tfoot",{ref:y},(r=>{const{fixedType:n,tableColumn:a}=d,{footerRowClassName:u,footerRowStyle:i}=f,s=p["isDragColMove"],c=x.value;return r.map((e,l)=>{const o=l;var t={$table:A,row:e,_rowIndex:o,$rowIndex:l,fixed:n,type:renderType};return c.drag?(0,_vue.h)(_vue.TransitionGroup,{name:"vxe-header--col-list"+(s?"":"-disabled"),tag:"tr",class:["vxe-footer--row",u?_xeUtils.default.isFunction(u)?u(t):u:""],style:i?_xeUtils.default.isFunction(i)?i(t):i:null},{default:()=>w(a,r,e,l,o)}):(0,_vue.h)("tr",{class:["vxe-footer--row",u?_xeUtils.default.isFunction(u)?u(t):u:""],style:i?_xeUtils.default.isFunction(i)?i(t):i:null},w(a,r,e,l,o))})})(t))])])}}});
@@ -2818,7 +2818,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
2818
2818
  const loadTableData = datas => {
2819
2819
  const {
2820
2820
  keepSource,
2821
- treeConfig
2821
+ treeConfig,
2822
+ showOverflow
2822
2823
  } = props;
2823
2824
  const {
2824
2825
  editStore,
@@ -2894,8 +2895,14 @@ var _default = exports.default = (0, _vue.defineComponent)({
2894
2895
  if (keepSource) {
2895
2896
  tablePrivateMethods.cacheSourceMap(fullData);
2896
2897
  }
2897
- if (process.env.NODE_ENV === 'development') {
2898
- if (sYLoad) {
2898
+ if (sYLoad) {
2899
+ if (showOverflow) {
2900
+ const errColumn = internalData.tableFullColumn.find(column => column.showOverflow === false);
2901
+ if (errColumn) {
2902
+ (0, _log.errLog)('vxe.error.errProp', [`column[field="${errColumn.field}"].show-overflow=false`, 'show-overflow=true']);
2903
+ }
2904
+ }
2905
+ if (process.env.NODE_ENV === 'development') {
2899
2906
  if (!(props.height || props.maxHeight)) {
2900
2907
  (0, _log.errLog)('vxe.error.reqProp', ['table.height | table.max-height | table.scroll-y={enabled: false}']);
2901
2908
  }
@@ -4084,7 +4091,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
4084
4091
  editStore
4085
4092
  } = reactData;
4086
4093
  const rowid = (0, _util.getRowid)($xeTable, row);
4087
- return editStore.insertMaps[rowid];
4094
+ return !!editStore.insertMaps[rowid];
4088
4095
  },
4089
4096
  /**
4090
4097
  * 删除所有新增的临时数据
@@ -5396,7 +5403,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
5396
5403
  } = treeOpts;
5397
5404
  const rowid = (0, _util.getRowid)($xeTable, row);
5398
5405
  if (lazy && row[hasChildField] && !treeExpandLazyLoadedMaps[rowid]) {
5399
- tableMethods.clearTreeExpandLoaded(row).then(() => {
5406
+ return tableMethods.clearTreeExpandLoaded(row).then(() => {
5400
5407
  return handleAsyncTreeExpandChilds(row);
5401
5408
  }).then(() => {
5402
5409
  if (transform) {
@@ -8103,6 +8110,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
8103
8110
  const trEl = evnt.currentTarget;
8104
8111
  const rowid = trEl.getAttribute('rowid');
8105
8112
  const row = $xeTable.getRowById(rowid);
8113
+ console.log(rowid);
8106
8114
  if (row) {
8107
8115
  evnt.preventDefault();
8108
8116
  evnt.preventDefault();
@@ -8241,6 +8249,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
8241
8249
  oldIndex: oafIndex
8242
8250
  }
8243
8251
  }, evnt);
8252
+ $xeTable.saveCustomStore('update:sort');
8244
8253
  }).catch(() => {});
8245
8254
  }
8246
8255
  }