vxe-table 4.13.5 → 4.13.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/es/grid/src/grid.js +1 -1
  2. package/es/index.css +1 -1
  3. package/es/index.min.css +1 -1
  4. package/es/locale/lang/ar-EG.js +3 -2
  5. package/es/locale/lang/de-DE.js +3 -2
  6. package/es/locale/lang/en-US.js +2 -1
  7. package/es/locale/lang/es-ES.js +3 -2
  8. package/es/locale/lang/fr-FR.js +2 -1
  9. package/es/locale/lang/hu-HU.js +2 -1
  10. package/es/locale/lang/hy-AM.js +2 -1
  11. package/es/locale/lang/id-ID.js +2 -1
  12. package/es/locale/lang/it-IT.js +2 -1
  13. package/es/locale/lang/ja-JP.js +2 -1
  14. package/es/locale/lang/ko-KR.js +2 -1
  15. package/es/locale/lang/nb-NO.js +2 -1
  16. package/es/locale/lang/pt-BR.js +2 -1
  17. package/es/locale/lang/ru-RU.js +2 -1
  18. package/es/locale/lang/th-TH.js +2 -1
  19. package/es/locale/lang/ug-CN.js +2 -1
  20. package/es/locale/lang/uk-UA.js +2 -1
  21. package/es/locale/lang/vi-VN.js +2 -1
  22. package/es/locale/lang/zh-CHT.js +2 -1
  23. package/es/locale/lang/zh-CN.js +2 -1
  24. package/es/style.css +1 -1
  25. package/es/style.min.css +1 -1
  26. package/es/table/module/custom/hook.js +11 -8
  27. package/es/table/module/custom/panel.js +7 -7
  28. package/es/table/module/export/hook.js +21 -20
  29. package/es/table/module/keyboard/hook.js +3 -2
  30. package/es/table/src/body.js +45 -10
  31. package/es/table/src/cell.js +159 -69
  32. package/es/table/src/column.js +2 -0
  33. package/es/table/src/columnInfo.js +1 -0
  34. package/es/table/src/emits.js +1 -0
  35. package/es/table/src/props.js +9 -7
  36. package/es/table/src/table.js +653 -171
  37. package/es/table/style.css +70 -40
  38. package/es/table/style.min.css +1 -1
  39. package/es/ui/index.js +13 -1
  40. package/es/ui/src/dom.js +3 -0
  41. package/es/ui/src/log.js +1 -1
  42. package/es/vxe-table/style.css +70 -40
  43. package/es/vxe-table/style.min.css +1 -1
  44. package/lib/grid/src/grid.js +1 -1
  45. package/lib/grid/src/grid.min.js +1 -1
  46. package/lib/index.css +1 -1
  47. package/lib/index.min.css +1 -1
  48. package/lib/index.umd.js +419 -179
  49. package/lib/index.umd.min.js +1 -1
  50. package/lib/locale/lang/ar-EG.js +3 -2
  51. package/lib/locale/lang/ar-EG.min.js +1 -1
  52. package/lib/locale/lang/de-DE.js +3 -2
  53. package/lib/locale/lang/de-DE.min.js +1 -1
  54. package/lib/locale/lang/en-US.js +2 -1
  55. package/lib/locale/lang/en-US.min.js +1 -1
  56. package/lib/locale/lang/en-US.umd.js +2 -1
  57. package/lib/locale/lang/es-ES.js +3 -2
  58. package/lib/locale/lang/es-ES.min.js +1 -1
  59. package/lib/locale/lang/es-ES.umd.js +3 -2
  60. package/lib/locale/lang/fr-FR.js +2 -1
  61. package/lib/locale/lang/fr-FR.min.js +1 -1
  62. package/lib/locale/lang/hu-HU.js +2 -1
  63. package/lib/locale/lang/hu-HU.min.js +1 -1
  64. package/lib/locale/lang/hu-HU.umd.js +2 -1
  65. package/lib/locale/lang/hy-AM.js +2 -1
  66. package/lib/locale/lang/hy-AM.min.js +1 -1
  67. package/lib/locale/lang/id-ID.js +2 -1
  68. package/lib/locale/lang/id-ID.min.js +1 -1
  69. package/lib/locale/lang/it-IT.js +2 -1
  70. package/lib/locale/lang/it-IT.min.js +1 -1
  71. package/lib/locale/lang/ja-JP.js +2 -1
  72. package/lib/locale/lang/ja-JP.min.js +1 -1
  73. package/lib/locale/lang/ja-JP.umd.js +2 -1
  74. package/lib/locale/lang/ko-KR.js +2 -1
  75. package/lib/locale/lang/ko-KR.min.js +1 -1
  76. package/lib/locale/lang/ko-KR.umd.js +2 -1
  77. package/lib/locale/lang/nb-NO.js +2 -1
  78. package/lib/locale/lang/nb-NO.min.js +1 -1
  79. package/lib/locale/lang/pt-BR.js +2 -1
  80. package/lib/locale/lang/pt-BR.min.js +1 -1
  81. package/lib/locale/lang/pt-BR.umd.js +2 -1
  82. package/lib/locale/lang/ru-RU.js +2 -1
  83. package/lib/locale/lang/ru-RU.min.js +1 -1
  84. package/lib/locale/lang/ru-RU.umd.js +2 -1
  85. package/lib/locale/lang/th-TH.js +2 -1
  86. package/lib/locale/lang/th-TH.min.js +1 -1
  87. package/lib/locale/lang/ug-CN.js +2 -1
  88. package/lib/locale/lang/ug-CN.min.js +1 -1
  89. package/lib/locale/lang/uk-UA.js +2 -1
  90. package/lib/locale/lang/uk-UA.min.js +1 -1
  91. package/lib/locale/lang/uk-UA.umd.js +2 -1
  92. package/lib/locale/lang/vi-VN.js +2 -1
  93. package/lib/locale/lang/vi-VN.min.js +1 -1
  94. package/lib/locale/lang/zh-CHT.js +2 -1
  95. package/lib/locale/lang/zh-CHT.min.js +1 -1
  96. package/lib/locale/lang/zh-CN.js +2 -1
  97. package/lib/locale/lang/zh-CN.min.js +1 -1
  98. package/lib/locale/lang/zh-CN.umd.js +2 -1
  99. package/lib/style.css +1 -1
  100. package/lib/style.min.css +1 -1
  101. package/lib/table/module/custom/hook.js +11 -1
  102. package/lib/table/module/custom/hook.min.js +1 -1
  103. package/lib/table/module/custom/panel.js +6 -2
  104. package/lib/table/module/custom/panel.min.js +1 -1
  105. package/lib/table/module/export/hook.js +21 -11
  106. package/lib/table/module/export/hook.min.js +1 -1
  107. package/lib/table/module/keyboard/hook.js +2 -1
  108. package/lib/table/module/keyboard/hook.min.js +1 -1
  109. package/lib/table/src/body.js +35 -9
  110. package/lib/table/src/body.min.js +1 -1
  111. package/lib/table/src/cell.js +177 -52
  112. package/lib/table/src/cell.min.js +1 -1
  113. package/lib/table/src/column.js +2 -0
  114. package/lib/table/src/column.min.js +1 -1
  115. package/lib/table/src/columnInfo.js +1 -0
  116. package/lib/table/src/columnInfo.min.js +1 -1
  117. package/lib/table/src/emits.js +1 -1
  118. package/lib/table/src/emits.min.js +1 -1
  119. package/lib/table/src/props.js +9 -7
  120. package/lib/table/src/props.min.js +1 -1
  121. package/lib/table/src/table.js +134 -91
  122. package/lib/table/src/table.min.js +1 -1
  123. package/lib/table/style/style.css +70 -40
  124. package/lib/table/style/style.min.css +1 -1
  125. package/lib/ui/index.js +13 -1
  126. package/lib/ui/index.min.js +1 -1
  127. package/lib/ui/src/dom.js +4 -0
  128. package/lib/ui/src/dom.min.js +1 -1
  129. package/lib/ui/src/log.js +1 -1
  130. package/lib/ui/src/log.min.js +1 -1
  131. package/lib/vxe-table/style/style.css +70 -40
  132. package/lib/vxe-table/style/style.min.css +1 -1
  133. package/package.json +2 -2
  134. package/packages/grid/src/grid.ts +1 -1
  135. package/packages/locale/lang/ar-EG.ts +3 -2
  136. package/packages/locale/lang/de-DE.ts +3 -2
  137. package/packages/locale/lang/en-US.ts +2 -1
  138. package/packages/locale/lang/es-ES.ts +3 -2
  139. package/packages/locale/lang/fr-FR.ts +2 -1
  140. package/packages/locale/lang/hu-HU.ts +2 -1
  141. package/packages/locale/lang/hy-AM.ts +2 -1
  142. package/packages/locale/lang/id-ID.ts +2 -1
  143. package/packages/locale/lang/it-IT.ts +2 -1
  144. package/packages/locale/lang/ja-JP.ts +2 -1
  145. package/packages/locale/lang/ko-KR.ts +2 -1
  146. package/packages/locale/lang/nb-NO.ts +2 -1
  147. package/packages/locale/lang/pt-BR.ts +2 -1
  148. package/packages/locale/lang/ru-RU.ts +2 -1
  149. package/packages/locale/lang/th-TH.ts +2 -1
  150. package/packages/locale/lang/ug-CN.ts +2 -1
  151. package/packages/locale/lang/uk-UA.ts +2 -1
  152. package/packages/locale/lang/vi-VN.ts +2 -1
  153. package/packages/locale/lang/zh-CHT.ts +2 -1
  154. package/packages/locale/lang/zh-CN.ts +2 -1
  155. package/packages/table/module/custom/hook.ts +14 -8
  156. package/packages/table/module/custom/panel.ts +7 -7
  157. package/packages/table/module/export/hook.ts +28 -27
  158. package/packages/table/module/keyboard/hook.ts +3 -2
  159. package/packages/table/src/body.ts +46 -10
  160. package/packages/table/src/cell.ts +162 -73
  161. package/packages/table/src/column.ts +2 -0
  162. package/packages/table/src/columnInfo.ts +1 -0
  163. package/packages/table/src/emits.ts +1 -0
  164. package/packages/table/src/props.ts +9 -7
  165. package/packages/table/src/table.ts +658 -176
  166. package/packages/ui/index.ts +12 -0
  167. package/packages/ui/src/dom.ts +4 -0
  168. package/styles/components/table.scss +131 -92
  169. /package/es/{iconfont.1744880866629.ttf → iconfont.1745197925862.ttf} +0 -0
  170. /package/es/{iconfont.1744880866629.woff → iconfont.1745197925862.woff} +0 -0
  171. /package/es/{iconfont.1744880866629.woff2 → iconfont.1745197925862.woff2} +0 -0
  172. /package/lib/{iconfont.1744880866629.ttf → iconfont.1745197925862.ttf} +0 -0
  173. /package/lib/{iconfont.1744880866629.woff → iconfont.1745197925862.woff} +0 -0
  174. /package/lib/{iconfont.1744880866629.woff2 → iconfont.1745197925862.woff2} +0 -0
@@ -1 +1 @@
1
- var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let hooks=_ui.VxeUI.hooks,browseObj=_xeUtils.default.browse();function getTargetOffset(e,t){let l=0,o=0;var r,n,u=!browseObj.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(u&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,u&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}hooks.add("tableKeyboardModule",{setupTable(k){let{props:M,reactData:y,internalData:O}=k,D=k.getRefMaps().refElem,{computeEditOpts:v,computeCheckboxOpts:a,computeMouseOpts:s,computeTreeOpts:c,computeRowOpts:F,computeColumnOpts:C,computeCellOpts:H,computeDefaultRowHeight:V,computeCurrentRowOpts:w,computeCurrentColumnOpts:p}=k.getComputeMaps();let d=(e,S)=>{var t=O.elemStore,l=(0,_util.getRefElem)(t["main-body-scroll"]),o=(0,_util.getRefElem)(t["left-body-scroll"]),t=(0,_util.getRefElem)(t["right-body-scroll"]),{column:r,cell:n}=S;if("checkbox"===r.type){let _=l;if(o&&"left"===r.fixed?_=o:t&&"right"===r.fixed&&(_=t),_){let t=D.value,i=e.clientX,a=e.clientY,s=_.querySelector(".vxe-table--checkbox-range"),c=n.parentElement,d=k.getCheckboxRecords(),g=[],h=1;l=getTargetOffset(e.target,_);let m=l.offsetTop+e.offsetY,f=l.offsetLeft+e.offsetX,v=_.scrollTop,u=c.offsetHeight,C=c.getBoundingClientRect(),w=a-C.y,p=null,x=!1,b=1,R=(e,t)=>{k.dispatchEvent("checkbox-range-"+e,{records:k.getCheckboxRecords(),reserves:k.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-i,l=l-a+(_.scrollTop-v);let o=Math.abs(l),r=Math.abs(t),n=m,u=f;l<h?(n+=l)<h&&(n=h,o=m):o=Math.min(o,_.scrollHeight-m-h),t<h?(u+=t,r>f&&(u=h,r=f)):r=Math.min(r,_.clientWidth-f-h),s.style.height=o+"px",s.style.width=r+"px",s.style.left=u+"px",s.style.top=n+"px",s.style.display="block";t=((e,t,l,o,r)=>{var n=M.showOverflow,{fullAllDataRowIdData:u,isResizeCellHeight:i}=O,a=F.value,s=H.value,c=V.value,e=e.row;let d=0,g=[],h=0;var m=0<r,f=y.scrollYLoad,v=O.afterFullData;if(h=m?o+r:l.height-o+Math.abs(r),f){l=k.getVTRowIndex(e);if(!(i||s.height||a.height)&&n)g=m?v.slice(l,l+Math.ceil(h/c)):v.slice(l-Math.floor(h/c),l+1);else if(m)for(let e=l;e<v.length;e++){var C=v[e],w=u[k.getRowid(C)]||{};if(d+=w.resizeHeight||s.height||a.height||w.height||c,g.push(C),d>h)return g}else for(let e=l;0<=e;e--){var p=v[e],x=u[k.getRowid(p)]||{};if(d+=x.resizeHeight||s.height||a.height||x.height||c,g.push(p),d>h)return g}}else for(var b=m?"next":"previous";t&&d<h;){var R=k.getRowNode(t);R&&(g.push(R.item),d+=t.offsetHeight,t=t[b+"ElementSibling"])}return g})(S,c,C,w,l<h?-o:o);10<o&&t.length!==g.length&&(g=t,e.ctrlKey?t.forEach(e=>{k.handleBatchSelectRows([e],-1===d.indexOf(e))}):(k.setAllCheckboxRow(!1),k.handleCheckedCheckboxRow(t,!0,!1)),R("change",e))},I=()=>{clearTimeout(p),p=null},E=n=>{I(),p=setTimeout(()=>{var e,t,l,o,r;p&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=_,r=Math.ceil(50*b/u),x?t+l<o?(k.scrollTo(e,t+r),E(n),T(n)):I():t?(k.scrollTo(e,t-r),E(n),T(n)):I())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(_).boundingTop;t<l?(x=!1,b=l-t,p||E(e)):t>l+_.clientHeight?(x=!0,b=t-l-_.clientHeight,p||E(e)):p&&I(),T(e)},document.onmouseup=e=>{I(),(0,_dom.removeClass)(t,"drag--range"),s.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,R("end",e)},R("start",e)}}};let g=(e,t,l,o,r,n)=>{var{afterFullData:u,visibleColumn:i}=O;let a=Object.assign({},t);var t=k.getVTRowIndex(a.row),s=k.getVTColumnIndex(a.column);return e.preventDefault(),o&&0<t?(a.rowIndex=t-1,a.row=u[a.rowIndex]):n&&t<u.length-1?(a.rowIndex=t+1,a.row=u[a.rowIndex]):l&&s?(a.columnIndex=s-1,a.column=i[a.columnIndex]):r&&s<i.length-1&&(a.columnIndex=s+1,a.column=i[a.columnIndex]),k.scrollToRow(a.row,a.column).then(()=>{a.cell=k.getCellElement(a.row,a.column),k.handleSelected(a,e)}),a};return{moveTabSelected(e,t,l){var o=M.editConfig,{afterFullData:r,visibleColumn:n}=O,u=v.value,i=F.value,a=w.value,s=C.value,c=p.value;let d,g,h,m=Object.assign({},e);var e=k.getVTRowIndex(m.row),f=k.getVTColumnIndex(m.column),t=(l.preventDefault(),t?f<=0?0<e&&(g=e-1,d=r[g],h=n.length-1):h=f-1:f>=n.length-1?e<r.length-1&&(g=e+1,d=r[g],h=0):h=f+1,n[h]);t&&(d?(m.rowIndex=g,m.row=d):m.rowIndex=e,m.columnIndex=h,m.column=t,m.cell=k.getCellElement(m.row,m.column),i.isCurrent&&a.isFollowSelected&&k.triggerCurrentRowEvent(l,m),s.isCurrent&&c.isFollowSelected&&k.triggerCurrentColumnEvent(l,m),o?"click"!==u.trigger&&"dblclick"!==u.trigger||("row"===u.mode?k.handleEdit(m,l):k.scrollToRow(m.row,m.column).then(()=>{k.handleSelected(m,l)})):k.scrollToRow(m.row,m.column).then(()=>{k.handleSelected(m,l)}))},moveCurrentRow(e,t,l){var o=M.treeConfig;let r=y.currentRow;var n=O.afterFullData,u=c.value,u=u.children||u.childrenField;let i;if(r?o?({index:o,items:u}=_xeUtils.default.findTree(n,e=>e===r,{children:u}),e&&0<o?i=u[o-1]:t&&o<u.length-1&&(i=u[o+1])):(u=k.getVTRowIndex(r),e&&0<u?i=n[u-1]:t&&u<n.length-1&&(i=n[u+1])):i=n[0],i){l.preventDefault();let e={$table:k,row:i,rowIndex:k.getRowIndex(i),$rowIndex:k.getVMRowIndex(i)};k.scrollToRow(i).then(()=>k.triggerCurrentRowEvent(l,e))}},moveCurrentColumn(e,t,l){var o=y.currentColumn,r=O.visibleColumn;let n=null;if(o?(o=k.getVTColumnIndex(o),e&&0<o?n=r[o-1]:t&&o<r.length-1&&(n=r[o+1])):n=r[0],n){l.preventDefault();let e={$table:k,column:n,columnIndex:k.getColumnIndex(n),$columnIndex:k.getVMColumnIndex(n)};k.scrollToColumn(n).then(()=>k.triggerCurrentColumnEvent(l,e))}},moveArrowSelected(e,t,l,o,r,n){var{highlightCurrentRow:u,highlightCurrentColumn:i}=M,a=F.value,s=w.value,c=C.value,d=p.value,e=g(n,e,t,l,o,r);(a.isCurrent||u)&&(s.isFollowSelected?k.triggerCurrentRowEvent(n,e):(l||r)&&(a.isCurrent||u)&&k.moveCurrentRow(l,r,n)),(c.isCurrent||i)&&(d.isFollowSelected?k.triggerCurrentColumnEvent(n,e):(t||o)&&(c.isCurrent||i)&&k.moveCurrentColumn(t,o,n))},moveEnterSelected(e,t,l,o,r,n){var{highlightCurrentRow:u,highlightCurrentColumn:i}=M,a=F.value,s=w.value,c=C.value,d=p.value,e=g(n,e,t,l,o,r);(a.isCurrent||u)&&s.isFollowSelected&&k.triggerCurrentRowEvent(n,e),(c.isCurrent||i)&&d.isFollowSelected&&k.triggerCurrentColumnEvent(n,e)},moveSelected(e,t,l,o,r,n){g(n,e,t,l,o,r)},handleCellMousedownEvent:(e,t)=>{var{editConfig:l,checkboxConfig:o,mouseConfig:r}=M,n=a.value,u=s.value,i=v.value;if(r&&u.area&&k.triggerCellAreaMousedownEvent)return k.triggerCellAreaMousedownEvent(e,t);o&&n.range&&d(e,t),r&&u.selected&&(l&&"cell"!==i.mode||k.handleSelected(t,e))}}}});
1
+ var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let hooks=_ui.VxeUI.hooks,browseObj=_xeUtils.default.browse();function getTargetOffset(e,t){let l=0,o=0;var r,n,u=!browseObj.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(u&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,u&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}hooks.add("tableKeyboardModule",{setupTable(k){let{props:M,reactData:y,internalData:O}=k,D=k.getRefMaps().refElem,{computeEditOpts:v,computeCheckboxOpts:a,computeMouseOpts:s,computeTreeOpts:c,computeRowOpts:F,computeColumnOpts:C,computeCellOpts:H,computeDefaultRowHeight:V,computeCurrentRowOpts:w,computeCurrentColumnOpts:p}=k.getComputeMaps();let d=(e,S)=>{var t=O.elemStore,l=(0,_util.getRefElem)(t["main-body-scroll"]),o=(0,_util.getRefElem)(t["left-body-scroll"]),t=(0,_util.getRefElem)(t["right-body-scroll"]),{column:r,cell:n}=S;if("checkbox"===r.type){let _=l;if(o&&"left"===r.fixed?_=o:t&&"right"===r.fixed&&(_=t),_){let t=D.value,i=e.clientX,a=e.clientY,s=_.querySelector(".vxe-table--checkbox-range"),c=n.parentElement,d=k.getCheckboxRecords(),g=[],h=1;l=getTargetOffset(e.target,_);let m=l.offsetTop+e.offsetY,f=l.offsetLeft+e.offsetX,v=_.scrollTop,u=c.offsetHeight,C=c.getBoundingClientRect(),w=a-C.y,p=null,x=!1,b=1,R=(e,t)=>{k.dispatchEvent("checkbox-range-"+e,{records:k.getCheckboxRecords(),reserves:k.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-i,l=l-a+(_.scrollTop-v);let o=Math.abs(l),r=Math.abs(t),n=m,u=f;l<h?(n+=l)<h&&(n=h,o=m):o=Math.min(o,_.scrollHeight-m-h),t<h?(u+=t,r>f&&(u=h,r=f)):r=Math.min(r,_.clientWidth-f-h),s.style.height=o+"px",s.style.width=r+"px",s.style.left=u+"px",s.style.top=n+"px",s.style.display="block";t=((e,t,l,o,r)=>{var n=M.showOverflow,{fullAllDataRowIdData:u,isResizeCellHeight:i}=O,a=F.value,s=H.value,c=V.value,e=e.row;let d=0,g=[],h=0;var m=0<r,f=y.scrollYLoad,v=O.afterFullData;if(h=m?o+r:l.height-o+Math.abs(r),f){l=k.getVTRowIndex(e);if(!(i||s.height||a.height)&&n)g=m?v.slice(l,l+Math.ceil(h/c)):v.slice(l-Math.floor(h/c),l+1);else if(m)for(let e=l;e<v.length;e++){var C=v[e],w=u[k.getRowid(C)]||{};if(d+=w.resizeHeight||s.height||a.height||w.height||c,g.push(C),d>h)return g}else for(let e=l;0<=e;e--){var p=v[e],x=u[k.getRowid(p)]||{};if(d+=x.resizeHeight||s.height||a.height||x.height||c,g.push(p),d>h)return g}}else for(var b=m?"next":"previous";t&&d<h;){var R=k.getRowNode(t);R&&(g.push(R.item),d+=t.offsetHeight,t=t[b+"ElementSibling"])}return g})(S,c,C,w,l<h?-o:o);10<o&&t.length!==g.length&&(l=(0,_dom.hasControlKey)(e),g=t,l?t.forEach(e=>{k.handleBatchSelectRows([e],-1===d.indexOf(e))}):(k.setAllCheckboxRow(!1),k.handleCheckedCheckboxRow(t,!0,!1)),R("change",e))},I=()=>{clearTimeout(p),p=null},E=n=>{I(),p=setTimeout(()=>{var e,t,l,o,r;p&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=_,r=Math.ceil(50*b/u),x?t+l<o?(k.scrollTo(e,t+r),E(n),T(n)):I():t?(k.scrollTo(e,t-r),E(n),T(n)):I())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(_).boundingTop;t<l?(x=!1,b=l-t,p||E(e)):t>l+_.clientHeight?(x=!0,b=t-l-_.clientHeight,p||E(e)):p&&I(),T(e)},document.onmouseup=e=>{I(),(0,_dom.removeClass)(t,"drag--range"),s.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,R("end",e)},R("start",e)}}};let g=(e,t,l,o,r,n)=>{var{afterFullData:u,visibleColumn:i}=O;let a=Object.assign({},t);var t=k.getVTRowIndex(a.row),s=k.getVTColumnIndex(a.column);return e.preventDefault(),o&&0<t?(a.rowIndex=t-1,a.row=u[a.rowIndex]):n&&t<u.length-1?(a.rowIndex=t+1,a.row=u[a.rowIndex]):l&&s?(a.columnIndex=s-1,a.column=i[a.columnIndex]):r&&s<i.length-1&&(a.columnIndex=s+1,a.column=i[a.columnIndex]),k.scrollToRow(a.row,a.column).then(()=>{a.cell=k.getCellElement(a.row,a.column),k.handleSelected(a,e)}),a};return{moveTabSelected(e,t,l){var o=M.editConfig,{afterFullData:r,visibleColumn:n}=O,u=v.value,i=F.value,a=w.value,s=C.value,c=p.value;let d,g,h,m=Object.assign({},e);var e=k.getVTRowIndex(m.row),f=k.getVTColumnIndex(m.column),t=(l.preventDefault(),t?f<=0?0<e&&(g=e-1,d=r[g],h=n.length-1):h=f-1:f>=n.length-1?e<r.length-1&&(g=e+1,d=r[g],h=0):h=f+1,n[h]);t&&(d?(m.rowIndex=g,m.row=d):m.rowIndex=e,m.columnIndex=h,m.column=t,m.cell=k.getCellElement(m.row,m.column),i.isCurrent&&a.isFollowSelected&&k.triggerCurrentRowEvent(l,m),s.isCurrent&&c.isFollowSelected&&k.triggerCurrentColumnEvent(l,m),o?"click"!==u.trigger&&"dblclick"!==u.trigger||("row"===u.mode?k.handleEdit(m,l):k.scrollToRow(m.row,m.column).then(()=>{k.handleSelected(m,l)})):k.scrollToRow(m.row,m.column).then(()=>{k.handleSelected(m,l)}))},moveCurrentRow(e,t,l){var o=M.treeConfig;let r=y.currentRow;var n=O.afterFullData,u=c.value,u=u.children||u.childrenField;let i;if(r?o?({index:o,items:u}=_xeUtils.default.findTree(n,e=>e===r,{children:u}),e&&0<o?i=u[o-1]:t&&o<u.length-1&&(i=u[o+1])):(u=k.getVTRowIndex(r),e&&0<u?i=n[u-1]:t&&u<n.length-1&&(i=n[u+1])):i=n[0],i){l.preventDefault();let e={$table:k,row:i,rowIndex:k.getRowIndex(i),$rowIndex:k.getVMRowIndex(i)};k.scrollToRow(i).then(()=>k.triggerCurrentRowEvent(l,e))}},moveCurrentColumn(e,t,l){var o=y.currentColumn,r=O.visibleColumn;let n=null;if(o?(o=k.getVTColumnIndex(o),e&&0<o?n=r[o-1]:t&&o<r.length-1&&(n=r[o+1])):n=r[0],n){l.preventDefault();let e={$table:k,column:n,columnIndex:k.getColumnIndex(n),$columnIndex:k.getVMColumnIndex(n)};k.scrollToColumn(n).then(()=>k.triggerCurrentColumnEvent(l,e))}},moveArrowSelected(e,t,l,o,r,n){var{highlightCurrentRow:u,highlightCurrentColumn:i}=M,a=F.value,s=w.value,c=C.value,d=p.value,e=g(n,e,t,l,o,r);(a.isCurrent||u)&&(s.isFollowSelected?k.triggerCurrentRowEvent(n,e):(l||r)&&(a.isCurrent||u)&&k.moveCurrentRow(l,r,n)),(c.isCurrent||i)&&(d.isFollowSelected?k.triggerCurrentColumnEvent(n,e):(t||o)&&(c.isCurrent||i)&&k.moveCurrentColumn(t,o,n))},moveEnterSelected(e,t,l,o,r,n){var{highlightCurrentRow:u,highlightCurrentColumn:i}=M,a=F.value,s=w.value,c=C.value,d=p.value,e=g(n,e,t,l,o,r);(a.isCurrent||u)&&s.isFollowSelected&&k.triggerCurrentRowEvent(n,e),(c.isCurrent||i)&&d.isFollowSelected&&k.triggerCurrentColumnEvent(n,e)},moveSelected(e,t,l,o,r,n){g(n,e,t,l,o,r)},handleCellMousedownEvent:(e,t)=>{var{editConfig:l,checkboxConfig:o,mouseConfig:r}=M,n=a.value,u=s.value,i=v.value;if(r&&u.area&&k.triggerCellAreaMousedownEvent)return k.triggerCellAreaMousedownEvent(e,t);o&&n.range&&d(e,t),r&&u.selected&&(l&&"cell"!==i.mode||k.handleSelected(t,e))}}}});
@@ -503,6 +503,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
503
503
  }), tdOns), isOptimizeMode && fixedHiddenColumn ? [] : tdVNs);
504
504
  };
505
505
  const renderRows = (fixedType, isOptimizeMode, tableData, tableColumn) => {
506
+ const $xeGrid = $xeTable.xeGrid;
506
507
  const {
507
508
  stripe,
508
509
  rowKey,
@@ -524,10 +525,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
524
525
  selectRadioRow,
525
526
  pendingRowFlag,
526
527
  isDragColMove,
527
- rowExpandHeightFlag
528
+ rowExpandHeightFlag,
529
+ isRowGroupStatus
528
530
  } = tableReactData;
529
531
  const {
530
532
  fullAllDataRowIdData,
533
+ fullColumnIdData,
531
534
  treeExpandedMaps,
532
535
  pendingRowMaps,
533
536
  rowExpandedMaps
@@ -548,6 +551,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
548
551
  const {
549
552
  handleGetRowId
550
553
  } = (0, _util.createHandleGetRowId)($xeTable);
554
+ const isDeepRow = treeConfig || isRowGroupStatus;
551
555
  tableData.forEach((row, $rowIndex) => {
552
556
  const rowid = handleGetRowId(row);
553
557
  const rowRest = fullAllDataRowIdData[rowid] || {};
@@ -555,6 +559,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
555
559
  let rowLevel = 0;
556
560
  let seq = -1;
557
561
  let _rowIndex = -1;
562
+ const hasRowGroupAggregate = isRowGroupStatus && row.isAggregate;
558
563
  const trOn = {};
559
564
  // 当前行事件
560
565
  if (rowOpts.isHover || highlightHoverRow) {
@@ -576,7 +581,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
576
581
  }
577
582
  if (rowRest) {
578
583
  rowLevel = rowRest.level;
579
- if (treeConfig && transform && seqMode === 'increasing') {
584
+ if (hasRowGroupAggregate || treeConfig && transform && seqMode === 'increasing') {
580
585
  seq = rowRest._index + 1;
581
586
  } else {
582
587
  seq = rowRest.seq;
@@ -610,12 +615,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
610
615
  isExpandTree = !!treeExpandedFlag && rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
611
616
  }
612
617
  // 拖拽行事件
613
- if (rowOpts.drag && (!treeConfig || transform)) {
618
+ if (rowOpts.drag && !isRowGroupStatus && (!treeConfig || transform)) {
614
619
  trOn.onDragstart = $xeTable.handleRowDragDragstartEvent;
615
620
  trOn.onDragend = $xeTable.handleRowDragDragendEvent;
616
621
  trOn.onDragover = $xeTable.handleRowDragDragoverEvent;
617
622
  }
618
- const trClass = ['vxe-body--row', treeConfig ? `row--level-${rowLevel}` : '', {
623
+ const trClass = ['vxe-body--row', isDeepRow ? `row--level-${rowLevel}` : '', {
619
624
  'row--stripe': stripe && (_rowIndex + 1) % 2 === 0,
620
625
  'is--new': isNewRow,
621
626
  'is--expand-row': isExpandRow,
@@ -623,7 +628,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
623
628
  'row--new': isNewRow && (editOpts.showStatus || editOpts.showInsertStatus),
624
629
  'row--radio': radioOpts.highlight && $xeTable.eqRow(selectRadioRow, row),
625
630
  'row--checked': checkboxOpts.highlight && $xeTable.isCheckedByCheckboxRow(row),
626
- 'row--pending': !!pendingRowFlag && !!pendingRowMaps[rowid]
631
+ 'row--pending': !!pendingRowFlag && !!pendingRowMaps[rowid],
632
+ 'row--group': hasRowGroupAggregate
627
633
  }, (0, _dom.getPropClass)(rowClassName, params)];
628
634
  const tdVNs = tableColumn.map((column, $columnIndex) => {
629
635
  return renderTdColumn(seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
@@ -634,14 +640,14 @@ var _default = exports.default = (0, _vue.defineComponent)({
634
640
  class: trClass,
635
641
  rowid: rowid,
636
642
  style: rowStyle ? _xeUtils.default.isFunction(rowStyle) ? rowStyle(params) : rowStyle : null,
637
- key: rowKey || scrollXLoad || scrollYLoad || rowOpts.useKey || rowOpts.drag || columnOpts.drag || treeConfig ? rowid : $rowIndex
643
+ key: rowKey || scrollXLoad || scrollYLoad || rowOpts.useKey || rowOpts.drag || columnOpts.drag || isRowGroupStatus || treeConfig ? rowid : $rowIndex
638
644
  }, trOn), {
639
645
  default: () => tdVNs
640
646
  }) : (0, _vue.h)('tr', Object.assign({
641
647
  class: trClass,
642
648
  rowid: rowid,
643
649
  style: rowStyle ? _xeUtils.default.isFunction(rowStyle) ? rowStyle(params) : rowStyle : null,
644
- key: rowKey || scrollXLoad || scrollYLoad || rowOpts.useKey || rowOpts.drag || columnOpts.drag || treeConfig ? rowid : $rowIndex
650
+ key: rowKey || scrollXLoad || scrollYLoad || rowOpts.useKey || rowOpts.drag || columnOpts.drag || isRowGroupStatus || treeConfig ? rowid : $rowIndex
645
651
  }, trOn), tdVNs));
646
652
  // 如果行被展开了
647
653
  if (isExpandRow) {
@@ -673,19 +679,39 @@ var _default = exports.default = (0, _vue.defineComponent)({
673
679
  }
674
680
  const {
675
681
  showOverflow
676
- } = expandColumn;
682
+ } = expandColumn || {};
683
+ const colid = expandColumn.id;
684
+ const colRest = fullColumnIdData[colid] || {};
677
685
  const hasEllipsis = _xeUtils.default.isUndefined(showOverflow) || _xeUtils.default.isNull(showOverflow) ? isAllOverflow : showOverflow;
686
+ let columnIndex = -1;
687
+ let $columnIndex = -1;
688
+ let _columnIndex = -1;
689
+ if (colRest) {
690
+ columnIndex = colRest.index;
691
+ $columnIndex = colRest.$index;
692
+ _columnIndex = colRest._index;
693
+ }
678
694
  const expandParams = {
695
+ $grid: $xeGrid,
679
696
  $table: $xeTable,
680
697
  seq,
681
698
  column: expandColumn,
699
+ columnIndex,
700
+ $columnIndex,
701
+ _columnIndex,
682
702
  fixed: fixedType,
683
703
  type: renderType,
684
704
  level: rowLevel,
685
705
  row,
706
+ rowid,
686
707
  rowIndex,
687
708
  $rowIndex,
688
- _rowIndex
709
+ _rowIndex,
710
+ isHidden: false,
711
+ isEdit: false,
712
+ visibleData: [],
713
+ data: [],
714
+ items: []
689
715
  };
690
716
  rows.push((0, _vue.h)('tr', {
691
717
  class: ['vxe-body--expanded-row', {
@@ -1 +1 @@
1
- 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}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(T){let We=(0,_vue.inject)("$xeTable",{}),{xID:z,props:Ge,context:q,reactData:Pe,internalData:Ve}=We,{computeEditOpts:Xe,computeMouseOpts:Ke,computeCellOffsetWidth:Ye,computeAreaOpts:Je,computeDefaultRowHeight:Qe,computeEmptyOpts:A,computeTooltipOpts:Ze,computeRadioOpts:e,computeExpandOpts:le,computeTreeOpts:p,computeCheckboxOpts:el,computeCellOpts:ll,computeValidOpts:tl,computeRowOpts:al,computeColumnOpts:rl,computeRowDragOpts:ol,computeColumnDragOpts:l,computeResizableOpts:il,computeVirtualXOpts:sl,computeVirtualYOpts:dl}=We.getComputeMaps(),$=(0,_vue.ref)(),F=(0,_vue.ref)(),U=(0,_vue.ref)(),H=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),N=(0,_vue.ref)(),B=(0,_vue.ref)(),nl=()=>{var e=Ge.delayHover,{lastScrollTime:l,isDragResize:t}=Pe;return!!(t||l&&Date.now()<l+e)},ul=(e,l,t)=>{var{row:a,column:r}=l,o=Ve.afterFullData,i=Ge.treeConfig,s=p.value,{slots:r,treeNode:n}=r,d=Ve.fullAllDataRowIdData;if(r&&r.line)return We.callSlot(r.line,l);r=d[e];let u=0,c=null;return r&&(u=r.level,c=r.items[r.treeIndex-1]),i&&n&&(s.showLine||s.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${We.eqRow(o[0],a)?1:(0,_util.calcTreeLine)(l,c)}px`,bottom:`-${Math.floor(t/2)}px`,left:u*s.indent+(u?2-(0,_util.getOffsetSize)(We):0)+16+"px"}})])]:[]},ae=($,e,l,F,U,t,a,H,r,o,L,j,i)=>{var s=We.xeGrid,{columnKey:N,resizable:n,showOverflow:d,border:B,height:u,treeConfig:W,cellClassName:G,cellStyle:P,align:V,spanMethod:X,mouseConfig:K,editConfig:Y,editRules:c,tooltipConfig:p,padding:v}=Ge,{tableData:g,dragRow:J,overflowX:Q,currentColumn:Z,scrollXLoad:ee,scrollYLoad:h,mergeBodyFlag:le,calcCellHeightFlag:x,resizeHeightFlag:w,resizeWidthFlag:te,editStore:ae,isAllOverflow:re,validErrorMaps:m}=Pe,{fullAllDataRowIdData:_,fullColumnIdData:f,mergeBodyCellMaps:oe,visibleColumn:ie,afterFullData:se,mergeBodyList:ne,scrollXStore:de,scrollYStore:ue}=Ve,ce=ll.value,b=tl.value,pe=el.value,ve=Xe.value,y=Ze.value,ge=il.value,he=sl.value,xe=dl.value,{isAllColumnDrag:ge,isAllRowDrag:we}=ge,C=al.value,D=ol.value,me=Qe.value,x=x?ce.height||C.height:0,{disabledMethod:R,isCrossDrag:_e,isPeerDrag:fe}=D,be=rl.value,ye=Ke.value,Ce=Je.value,De=Ye.value,Ce=Ce.selectCellToRow,{type:Re,cellRender:Ee,editRender:Oe,align:Me,showOverflow:Se,className:Ie,treeNode:ke,rowResize:Te,padding:E,verticalAlign:O,slots:ze}=o,M=ce.verticalAlign,ae=ae.actived,_=_[e]||{},S=o.id,f=f[S]||{},I=Oe||Ee,I=I?renderer.get(I.name):null,qe=I?I.tableCellClassName||I.cellClassName:null,Ae=I?I.tableCellStyle||I.cellStyle:"";let $e=y.showAll;var Fe=f.index,y=f._index,f=(0,_utils.isEnableConf)(Oe),w=w?_.resizeHeight:0;let k=l?o.fixed!==l:o.fixed&&Q;Q=_xeUtils.default.eqNull(E)?null===v?ce.padding:v:E,v=_xeUtils.default.eqNull(Se)?d:Se,E="ellipsis"===v;let T="title"===v,z=!0===v||"tooltip"===v;d=re||T||z||E,Se=_xeUtils.default.isBoolean(o.resizable)?o.resizable:be.resizable||n,v=!!x,n=0<w;let Ue;x={},w=Me||(I?I.tableCellAlign:"")||V,Me=_xeUtils.default.eqNull(O)?M:O,I=m[e+":"+S],V=c&&b.showMessage&&("default"===b.message?u||1<g.length:"inline"===b.message),M={colid:S};let q={$table:We,$grid:s,isEdit:!1,seq:$,rowid:e,row:t,rowIndex:a,$rowIndex:H,_rowIndex:r,column:o,columnIndex:Fe,$columnIndex:L,_columnIndex:y,fixed:l,type:renderType,isHidden:!!k,level:U,visibleData:se,data:g,items:i},A=!1,He=!1,Le=((A=C.drag?"row"===D.trigger||o.dragSort&&"cell"===D.trigger:A)&&(He=!(!R||!R(q))),(T||z||$e||p)&&(x.onMouseenter=e=>{nl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(z||$e)&&We.triggerBodyTooltipEvent(e,q),We.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},q),e))}),(z||$e||p)&&(x.onMouseleave=e=>{nl()||((z||$e)&&We.handleTargetLeaveEvent(e),We.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},q),e))}),(A||pe.range||K)&&(x.onMousedown=e=>{We.triggerCellMousedownEvent(e,q)}),A&&(x.onMouseup=We.triggerCellMouseupEvent),x.onClick=e=>{We.triggerCellClickEvent(e,q)},!(x.onDblclick=e=>{We.triggerCellDblclickEvent(e,q)}));if(le&&ne.length){O=oe[r+":"+y];if(O){var{rowspan:m,colspan:c}=O;if(!m||!c)return null;1<m&&(Le=!0,M.rowspan=m),1<c&&(Le=!0,M.colspan=c)}}else if(X){var{rowspan:u=1,colspan:s=1}=X(q)||{};if(!u||!s)return null;1<u&&(M.rowspan=u),1<s&&(M.colspan=s)}!(k=k&&Le&&(1<M.colspan||1<M.rowspan)?!1:k)&&Y&&(Oe||Ee)&&(ve.showStatus||ve.showUpdateStatus)&&(Ue=We.isUpdateByRow(t,o.field));$=h&&!d,a=_.resizeHeight||ce.height||C.height||_.height||me,H=L===j.length-1,se=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let je=!1;Le||J&&(0,_util.getRowid)(We,J)===e||(h&&!W&&!xe.immediate&&(r<ue.visibleStartIndex-ue.preloadSize||r>ue.visibleEndIndex+ue.preloadSize)||ee&&!he.immediate&&!o.fixed&&(y<de.visibleStartIndex-de.preloadSize||y>de.visibleEndIndex+de.preloadSize))&&(je=!0);g={};if(d&&te){let l=M.colspan||0;if(1<l)for(let e=1;e<l;e++){var Ne=ie[Fe+e];Ne&&(l+=Ne.renderWidth)}g.width=o.renderWidth-De*l+"px"}h||d||v||n?g.height=a+"px":g.minHeight=a+"px";i=[];k&&re?i.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":z,"c--ellipsis":E}],style:g})):(i.push(...ul(e,q,a),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":z,"c--ellipsis":E}],style:g,title:T?We.getCellLabel(t,o):null},je?[]:[(0,_vue.h)("div",{colid:S,rowid:e,class:"vxe-cell--wrapper"},o.renderCell(q))])),V&&I&&(D=I.rule,R=ze?ze.valid:null,p=Object.assign(Object.assign(Object.assign({},q),I),{rule:I}),i.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(b.className,p)],style:D&&D.maxWidth?{width:D.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(b.theme||"normal")},[R?We.callSlot(R,p):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},I.content)]])]))));let Be=!1;return K&&ye.area&&Ce&&((y||!0!==Ce)&&Ce!==o.field||(Be=!0)),!k&&Se&&ge&&i.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!B||"none"===B}],onMousedown:e=>We.handleColResizeMousedownEvent(e,l,q),onDblclick:e=>We.handleColResizeDblclickEvent(e,q)})),(Te||we)&&C.resizable&&i.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>We.handleRowResizeMousedownEvent(e,q),onDblclick:e=>We.handleRowResizeDblclickEvent(e,q)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",S,Me?"col--vertical-"+Me:"",w?"col--"+w:"",Re?"col--"+Re:"",{"col--last":H,"col--tree-node":ke,"col--edit":f,"col--ellipsis":d,"col--cs-height":v,"col--rs-height":n,"col--to-row":Be,"col--auto-height":$,"fixed--width":!se,"fixed--hidden":k,"is--padding":Q,"is--progress":k&&re||je,"is--drag-cell":A&&(_e||fe||!U),"is--drag-disabled":He,"col--dirty":Ue,"col--active":Y&&f&&ae.row===t&&(ae.column===o||"row"===ve.mode),"col--valid-error":!!I,"col--current":Z===o},(0,_dom.getPropClass)(qe,q),(0,_dom.getPropClass)(Ie,q),(0,_dom.getPropClass)(G,q)],key:N||ee||h||be.useKey||C.useKey||be.drag?S:L},M),{style:Object.assign({},_xeUtils.default.isFunction(Ae)?Ae(q):Ae,_xeUtils.default.isFunction(P)?P(q):P)}),x),F&&k?[]:i)},te=(x,w,m,_)=>{let{stripe:f,rowKey:b,highlightHoverRow:y,rowClassName:C,rowStyle:D,editConfig:R,treeConfig:E}=Ge,{hasFixedColumn:O,treeExpandedFlag:M,isColLoading:S,scrollXLoad:I,scrollYLoad:k,isAllOverflow:T,rowExpandedFlag:z,expandColumn:q,selectRadioRow:A,pendingRowFlag:$,isDragColMove:F,rowExpandHeightFlag:U}=Pe,{fullAllDataRowIdData:H,treeExpandedMaps:L,pendingRowMaps:j,rowExpandedMaps:N}=Ve,B=el.value,W=e.value,G=p.value,P=Xe.value,V=al.value,X=rl.value,K=l.value,{transform:Y,seqMode:Q}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(We).handleGetRowId;return m.forEach((t,a)=>{let r=ee(t);var e=H[r]||{};let o=a,i=0,s=-1,n=-1;var l={},d=((V.isHover||y)&&(l.onMouseenter=e=>{nl()||We.triggerHoverEvent(e,{row:t,rowIndex:o})},l.onMouseleave=()=>{nl()||We.clearHoverRow()}),e&&(i=e.level,s=E&&Y&&"increasing"===Q?e._index+1:e.seq,o=e.index,n=e._index),{$table:We,seq:s,rowid:r,fixed:x,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:a,_rowIndex:n}),u=q&&!!z&&!!N[r];let c=!1,p=[],v=!1;R&&(v=We.isInsertByRow(t)),!E||k||Y||(p=t[Z],c=!!M&&p&&0<p.length&&!!L[r]),!V.drag||E&&!Y||(l.onDragstart=We.handleRowDragDragstartEvent,l.onDragend=We.handleRowDragDragendEvent,l.onDragover=We.handleRowDragDragoverEvent);var g=["vxe-body--row",E?"row--level-"+i:"",{"row--stripe":f&&(n+1)%2==0,"is--new":v,"is--expand-row":u,"is--expand-tree":c,"row--new":v&&(P.showStatus||P.showInsertStatus),"row--radio":W.highlight&&We.eqRow(A,t),"row--checked":B.highlight&&We.isCheckedByCheckboxRow(t),"row--pending":!!$&&!!j[r]},(0,_dom.getPropClass)(C,d)];let h=_.map((e,l)=>ae(s,r,x,w,i,t,o,a,n,e,l,_,m));J.push(!S&&X.drag&&K.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(F?"":"-disabled"),tag:"tr",class:g,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(d):D:null,key:b||I||k||V.useKey||V.drag||X.drag||E?r:a},l),{default:()=>h}):(0,_vue.h)("tr",Object.assign({class:g,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(d):D:null,key:b||I||k||V.useKey||V.drag||X.drag||E?r:a},l),h)),u&&({height:g,padding:d,mode:l}=le.value,"fixed"===l?J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+r,rowid:r},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:`${U?e.expandHeight||g:0}px`}})])):(u={},l=(g&&(u.height=g+"px"),E&&(u.paddingLeft=i*G.indent+30+"px"),q).showOverflow,e=_xeUtils.default.isUndefined(l)||_xeUtils.default.isNull(l)?T:l,l={$table:We,seq:s,column:q,fixed:x,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:a,_rowIndex:n},J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":d}],key:"expand_"+r},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":x&&!O,"col--ellipsis":e}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":g}],style:u},[q.renderData(l)])])])))),c&&J.push(...te(x,w,p,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.fixedType,l=Ve.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=$,l[e+"scroll"]=F,l[e+"table"]=U,l[e+"colgroup"]=H,l[e+"list"]=L,l[e+"xSpace"]=j,l[e+"ySpace"]=N,l[e+"emptyBlock"]=B})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=Ve.elemStore,e=`${e||"main"}-body-`;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+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=q.slots,l=We.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=T;var{spanMethod:o,footerSpanMethod:i,mouseConfig:s}=Ge,{isGroup:n,tableData:d,isRowLoading:u,isColLoading:c,overflowX:p,scrollXLoad:v,scrollYLoad:g,isAllOverflow:h,isDragRowMove:x,expandColumn:w,dragRow:m,dragCol:_}=Pe,{visibleColumn:f,fullAllDataRowIdData:b,fullColumnIdData:y}=Ve,C=al.value,D=A.value,R=Ke.value,E=ol.value,O=le.value;let M=d,S=r,I=!1;!(v||g||h)||w&&"fixed"!==O.mode||o||i||(I=!0),c||!a&&p||(S=f),a&&I&&(S=t||[]),g&&m&&2<M.length&&(d=b[(0,_util.getRowid)(We,m)])&&(h=d._index,w=M[0],O=M[M.length-1],o=b[(0,_util.getRowid)(We,w)],i=b[(0,_util.getRowid)(We,O)],o)&&i&&(p=o._index,f=i._index,h<p?M=[m].concat(M):f<h&&(M=M.concat([m]))),a||n||v&&_&&2<S.length&&(g=y[_.id])&&(d=g._index,w=S[0],b=S[S.length-1],O=y[w.id],o=y[b.id],O)&&o&&(i=O._index,p=o._index,d<i?S=[_].concat(S):p<d&&(S=S.concat([_])));let k;f=e?e.empty:null,k=f?We.callSlot(f,{$table:We,$grid:l}):(m=(h=D.name?renderer.get(D.name):null)?h.renderTableEmpty||h.renderTableEmptyView||h.renderEmpty:null)?(0,_vn.getSlotVNs)(m(D,{$table:We})):Ge.emptyText||getI18n("vxe.table.emptyText"),n={onScroll(e){We.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:$,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:z},[(0,_vue.h)("div",Object.assign({ref:F,class:"vxe-table--body-inner-wrapper"},n),[a?renderEmptyElement(We):(0,_vue.h)("div",{ref:j,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:N,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:U,class:"vxe-table--body",xid:z,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:H},S.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),!u&&!c&&C.drag&&E.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:L,name:"vxe-body--row-list"+(x?"":"-disabled"),tag:"tbody"},{default:()=>te(a,I,M,S)}):(0,_vue.h)("tbody",{ref:L},te(a,I,M,S))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&R.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},R.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){We.triggerCellAreaExtendMousedownEvent&&We.triggerCellAreaExtendMousedownEvent(e,{$table:We,fixed:a,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"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(We),a?renderEmptyElement(We):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:B},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},k)])])])}}});
1
+ 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}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(T){let Ge=(0,_vue.inject)("$xeTable",{}),{xID:z,props:We,context:$,reactData:Pe,internalData:Ve}=Ge,{computeEditOpts:Xe,computeMouseOpts:Ke,computeCellOffsetWidth:Ye,computeAreaOpts:Je,computeDefaultRowHeight:Qe,computeEmptyOpts:A,computeTooltipOpts:Ze,computeRadioOpts:e,computeExpandOpts:oe,computeTreeOpts:p,computeCheckboxOpts:el,computeCellOpts:ll,computeValidOpts:tl,computeRowOpts:al,computeColumnOpts:rl,computeRowDragOpts:ol,computeColumnDragOpts:l,computeResizableOpts:il,computeVirtualXOpts:sl,computeVirtualYOpts:dl}=Ge.getComputeMaps(),q=(0,_vue.ref)(),F=(0,_vue.ref)(),H=(0,_vue.ref)(),U=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),N=(0,_vue.ref)(),B=(0,_vue.ref)(),nl=()=>{var e=We.delayHover,{lastScrollTime:l,isDragResize:t}=Pe;return!!(t||l&&Date.now()<l+e)},ul=(e,l,t)=>{var{row:a,column:r}=l,o=Ve.afterFullData,i=We.treeConfig,s=p.value,{slots:r,treeNode:n}=r,d=Ve.fullAllDataRowIdData;if(r&&r.line)return Ge.callSlot(r.line,l);r=d[e];let u=0,c=null;return r&&(u=r.level,c=r.items[r.treeIndex-1]),i&&n&&(s.showLine||s.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${Ge.eqRow(o[0],a)?1:(0,_util.calcTreeLine)(l,c)}px`,bottom:`-${Math.floor(t/2)}px`,left:u*s.indent+(u?2-(0,_util.getOffsetSize)(Ge):0)+16+"px"}})])]:[]},se=(q,e,l,F,H,t,a,U,r,o,L,j,i)=>{var s=Ge.xeGrid,{columnKey:N,resizable:n,showOverflow:d,border:B,height:u,treeConfig:G,cellClassName:W,cellStyle:P,align:V,spanMethod:X,mouseConfig:K,editConfig:Y,editRules:c,tooltipConfig:p,padding:v}=We,{tableData:g,dragRow:J,overflowX:Q,currentColumn:Z,scrollXLoad:ee,scrollYLoad:x,mergeBodyFlag:le,calcCellHeightFlag:h,resizeHeightFlag:m,resizeWidthFlag:te,editStore:ae,isAllOverflow:re,validErrorMaps:w}=Pe,{fullAllDataRowIdData:f,fullColumnIdData:_,mergeBodyCellMaps:oe,visibleColumn:ie,afterFullData:se,mergeBodyList:ne,scrollXStore:de,scrollYStore:ue}=Ve,ce=ll.value,b=tl.value,pe=el.value,ve=Xe.value,y=Ze.value,ge=il.value,xe=sl.value,he=dl.value,{isAllColumnDrag:ge,isAllRowDrag:me}=ge,C=al.value,D=ol.value,we=Qe.value,h=h?ce.height||C.height:0,{disabledMethod:R,isCrossDrag:fe,isPeerDrag:_e}=D,be=rl.value,ye=Ke.value,Ce=Je.value,De=Ye.value,Ce=Ce.selectCellToRow,{type:Re,cellRender:Ee,editRender:Oe,align:Ie,showOverflow:Se,className:Me,treeNode:ke,rowResize:Te,padding:E,verticalAlign:O,slots:ze}=o,I=ce.verticalAlign,ae=ae.actived,f=f[e]||{},S=o.id,_=_[S]||{},M=Oe||Ee,M=M?renderer.get(M.name):null,$e=M?M.tableCellClassName||M.cellClassName:null,Ae=M?M.tableCellStyle||M.cellStyle:"";let qe=y.showAll;var Fe=_.index,y=_._index,_=(0,_utils.isEnableConf)(Oe),m=m?f.resizeHeight:0;let k=l?o.fixed!==l:o.fixed&&Q;Q=_xeUtils.default.eqNull(E)?null===v?ce.padding:v:E,v=_xeUtils.default.eqNull(Se)?d:Se,E="ellipsis"===v;let T="title"===v,z=!0===v||"tooltip"===v;d=re||T||z||E,Se=_xeUtils.default.isBoolean(o.resizable)?o.resizable:be.resizable||n,v=!!h,n=0<m;let He;h={},m=Ie||(M?M.tableCellAlign:"")||V,Ie=_xeUtils.default.eqNull(O)?I:O,M=w[e+":"+S],V=c&&b.showMessage&&("default"===b.message?u||1<g.length:"inline"===b.message),I={colid:S};let $={$table:Ge,$grid:s,isEdit:!1,seq:q,rowid:e,row:t,rowIndex:a,$rowIndex:U,_rowIndex:r,column:o,columnIndex:Fe,$columnIndex:L,_columnIndex:y,fixed:l,type:renderType,isHidden:!!k,level:H,visibleData:se,data:g,items:i},A=!1,Ue=!1,Le=((A=C.drag?"row"===D.trigger||o.dragSort&&"cell"===D.trigger:A)&&(Ue=!(!R||!R($))),(T||z||qe||p)&&(h.onMouseenter=e=>{nl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(z||qe)&&Ge.triggerBodyTooltipEvent(e,$),Ge.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},$),e))}),(z||qe||p)&&(h.onMouseleave=e=>{nl()||((z||qe)&&Ge.handleTargetLeaveEvent(e),Ge.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},$),e))}),(A||pe.range||K)&&(h.onMousedown=e=>{Ge.triggerCellMousedownEvent(e,$)}),A&&(h.onMouseup=Ge.triggerCellMouseupEvent),h.onClick=e=>{Ge.triggerCellClickEvent(e,$)},!(h.onDblclick=e=>{Ge.triggerCellDblclickEvent(e,$)}));if(le&&ne.length){O=oe[r+":"+y];if(O){var{rowspan:w,colspan:c}=O;if(!w||!c)return null;1<w&&(Le=!0,I.rowspan=w),1<c&&(Le=!0,I.colspan=c)}}else if(X){var{rowspan:u=1,colspan:s=1}=X($)||{};if(!u||!s)return null;1<u&&(I.rowspan=u),1<s&&(I.colspan=s)}!(k=k&&Le&&(1<I.colspan||1<I.rowspan)?!1:k)&&Y&&(Oe||Ee)&&(ve.showStatus||ve.showUpdateStatus)&&(He=Ge.isUpdateByRow(t,o.field));q=x&&!d,a=f.resizeHeight||ce.height||C.height||f.height||we,U=L===j.length-1,se=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let je=!1;Le||J&&(0,_util.getRowid)(Ge,J)===e||(x&&!G&&!he.immediate&&(r<ue.visibleStartIndex-ue.preloadSize||r>ue.visibleEndIndex+ue.preloadSize)||ee&&!xe.immediate&&!o.fixed&&(y<de.visibleStartIndex-de.preloadSize||y>de.visibleEndIndex+de.preloadSize))&&(je=!0);g={};if(d&&te){let l=I.colspan||0;if(1<l)for(let e=1;e<l;e++){var Ne=ie[Fe+e];Ne&&(l+=Ne.renderWidth)}g.width=o.renderWidth-De*l+"px"}x||d||v||n?g.height=a+"px":g.minHeight=a+"px";i=[];k&&re?i.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":z,"c--ellipsis":E}],style:g})):(i.push(...ul(e,$,a),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":z,"c--ellipsis":E}],style:g,title:T?Ge.getCellLabel(t,o):null},je?[]:[(0,_vue.h)("div",{colid:S,rowid:e,class:"vxe-cell--wrapper"},o.renderCell($))])),V&&M&&(D=M.rule,R=ze?ze.valid:null,p=Object.assign(Object.assign(Object.assign({},$),M),{rule:M}),i.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(b.className,p)],style:D&&D.maxWidth?{width:D.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(b.theme||"normal")},[R?Ge.callSlot(R,p):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},M.content)]])]))));let Be=!1;return K&&ye.area&&Ce&&((y||!0!==Ce)&&Ce!==o.field||(Be=!0)),!k&&Se&&ge&&i.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!B||"none"===B}],onMousedown:e=>Ge.handleColResizeMousedownEvent(e,l,$),onDblclick:e=>Ge.handleColResizeDblclickEvent(e,$)})),(Te||me)&&C.resizable&&i.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Ge.handleRowResizeMousedownEvent(e,$),onDblclick:e=>Ge.handleRowResizeDblclickEvent(e,$)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",S,Ie?"col--vertical-"+Ie:"",m?"col--"+m:"",Re?"col--"+Re:"",{"col--last":U,"col--tree-node":ke,"col--edit":_,"col--ellipsis":d,"col--cs-height":v,"col--rs-height":n,"col--to-row":Be,"col--auto-height":q,"fixed--width":!se,"fixed--hidden":k,"is--padding":Q,"is--progress":k&&re||je,"is--drag-cell":A&&(fe||_e||!H),"is--drag-disabled":Ue,"col--dirty":He,"col--active":Y&&_&&ae.row===t&&(ae.column===o||"row"===ve.mode),"col--valid-error":!!M,"col--current":Z===o},(0,_dom.getPropClass)($e,$),(0,_dom.getPropClass)(Me,$),(0,_dom.getPropClass)(W,$)],key:N||ee||x||be.useKey||C.useKey||be.drag?S:L},I),{style:Object.assign({},_xeUtils.default.isFunction(Ae)?Ae($):Ae,_xeUtils.default.isFunction(P)?P($):P)}),h),F&&k?[]:i)},ie=(h,m,w,f)=>{let _=Ge.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:D,rowStyle:R,editConfig:E,treeConfig:O}=We,{hasFixedColumn:I,treeExpandedFlag:S,isColLoading:M,scrollXLoad:k,scrollYLoad:T,isAllOverflow:z,rowExpandedFlag:$,expandColumn:A,selectRadioRow:q,pendingRowFlag:F,isDragColMove:H,rowExpandHeightFlag:U,isRowGroupStatus:L}=Pe,{fullAllDataRowIdData:j,fullColumnIdData:N,treeExpandedMaps:B,pendingRowMaps:G,rowExpandedMaps:W}=Ve,Q=el.value,Z=e.value,P=p.value,V=Xe.value,X=al.value,K=rl.value,ee=l.value,{transform:Y,seqMode:le}=P,te=P.children||P.childrenField,J=[],ae=(0,_util.createHandleGetRowId)(Ge).handleGetRowId,re=O||L;return w.forEach((a,r)=>{let o=ae(a);var i=j[o]||{};let s=r,n=0,d=-1,u=-1;var c=L&&a.isAggregate,p={},v=((X.isHover||C)&&(p.onMouseenter=e=>{nl()||Ge.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{nl()||Ge.clearHoverRow()}),i&&(n=i.level,d=c||O&&Y&&"increasing"===le?i._index+1:i.seq,s=i.index,u=i._index),{$table:Ge,seq:d,rowid:o,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:r,_rowIndex:u}),g=A&&!!$&&!!W[o];let e=!1,l=[],t=!1;E&&(t=Ge.isInsertByRow(a)),!O||T||Y||(l=a[te],e=!!S&&l&&0<l.length&&!!B[o]),!X.drag||L||O&&!Y||(p.onDragstart=Ge.handleRowDragDragstartEvent,p.onDragend=Ge.handleRowDragDragendEvent,p.onDragover=Ge.handleRowDragDragoverEvent);c=["vxe-body--row",re?"row--level-"+n:"",{"row--stripe":b&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(V.showStatus||V.showInsertStatus),"row--radio":Z.highlight&&Ge.eqRow(q,a),"row--checked":Q.highlight&&Ge.isCheckedByCheckboxRow(a),"row--pending":!!F&&!!G[o],"row--group":c},(0,_dom.getPropClass)(D,v)];let x=f.map((e,l)=>se(d,o,h,m,n,a,s,r,u,e,l,f,w));if(J.push(!M&&K.drag&&ee.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(H?"":"-disabled"),tag:"tr",class:c,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(v):R:null,key:y||k||T||X.useKey||X.drag||K.drag||L||O?o:r},p),{default:()=>x}):(0,_vue.h)("tr",Object.assign({class:c,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(v):R:null,key:y||k||T||X.useKey||X.drag||K.drag||L||O?o:r},p),x)),g){var{height:c,padding:v,mode:p}=oe.value;if("fixed"===p)J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+o,rowid:o},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:f.length,style:{height:`${U?i.expandHeight||c:0}px`}})]));else{g={},p=(c&&(g.height=c+"px"),O&&(g.paddingLeft=n*P.indent+30+"px"),A||{}).showOverflow,i=A.id,i=N[i]||{},p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?z:p;let e=-1,l=-1,t=-1;i&&(e=i.index,l=i.$index,t=i._index);i={$grid:_,$table:Ge,seq:d,column:A,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:a,rowid:o,rowIndex:s,$rowIndex:r,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+o},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!I,"col--ellipsis":p}],colspan:f.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:g},[A.renderData(i)])])]))}}e&&J.push(...ie(h,m,l,f))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.fixedType,l=Ve.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=q,l[e+"scroll"]=F,l[e+"table"]=H,l[e+"colgroup"]=U,l[e+"list"]=L,l[e+"xSpace"]=j,l[e+"ySpace"]=N,l[e+"emptyBlock"]=B})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=Ve.elemStore,e=`${e||"main"}-body-`;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+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=$.slots,l=Ge.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=T;var{spanMethod:o,footerSpanMethod:i,mouseConfig:s}=We,{isGroup:n,tableData:d,isRowLoading:u,isColLoading:c,overflowX:p,scrollXLoad:v,scrollYLoad:g,isAllOverflow:x,isDragRowMove:h,expandColumn:m,dragRow:w,dragCol:f}=Pe,{visibleColumn:_,fullAllDataRowIdData:b,fullColumnIdData:y}=Ve,C=al.value,D=A.value,R=Ke.value,E=ol.value,O=oe.value;let I=d,S=r,M=!1;!(v||g||x)||m&&"fixed"!==O.mode||o||i||(M=!0),c||!a&&p||(S=_),a&&M&&(S=t||[]),g&&w&&2<I.length&&(d=b[(0,_util.getRowid)(Ge,w)])&&(x=d._index,m=I[0],O=I[I.length-1],o=b[(0,_util.getRowid)(Ge,m)],i=b[(0,_util.getRowid)(Ge,O)],o)&&i&&(p=o._index,_=i._index,x<p?I=[w].concat(I):_<x&&(I=I.concat([w]))),a||n||v&&f&&2<S.length&&(g=y[f.id])&&(d=g._index,m=S[0],b=S[S.length-1],O=y[m.id],o=y[b.id],O)&&o&&(i=O._index,p=o._index,d<i?S=[f].concat(S):p<d&&(S=S.concat([f])));let k;_=e?e.empty:null,k=_?Ge.callSlot(_,{$table:Ge,$grid:l}):(w=(x=D.name?renderer.get(D.name):null)?x.renderTableEmpty||x.renderTableEmptyView||x.renderEmpty:null)?(0,_vn.getSlotVNs)(w(D,{$table:Ge})):We.emptyText||getI18n("vxe.table.emptyText"),n={onScroll(e){Ge.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:q,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:z},[(0,_vue.h)("div",Object.assign({ref:F,class:"vxe-table--body-inner-wrapper"},n),[a?renderEmptyElement(Ge):(0,_vue.h)("div",{ref:j,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:N,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:H,class:"vxe-table--body",xid:z,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:U},S.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),!u&&!c&&C.drag&&E.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:L,name:"vxe-body--row-list"+(h?"":"-disabled"),tag:"tbody"},{default:()=>ie(a,M,I,S)}):(0,_vue.h)("tbody",{ref:L},ie(a,M,I,S))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&R.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},R.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Ge.triggerCellAreaExtendMousedownEvent&&Ge.triggerCellAreaExtendMousedownEvent(e,{$table:Ge,fixed:a,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"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Ge),a?renderEmptyElement(Ge):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:B},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},k)])])])}}});