vxe-table 4.10.6-beta.9 → 4.10.7

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 (178) 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 +2 -1
  5. package/es/locale/lang/de-DE.js +2 -1
  6. package/es/locale/lang/en-US.js +4 -3
  7. package/es/locale/lang/es-ES.js +2 -1
  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/it-IT.js +2 -1
  12. package/es/locale/lang/ja-JP.js +2 -1
  13. package/es/locale/lang/ko-KR.js +2 -1
  14. package/es/locale/lang/nb-NO.js +2 -1
  15. package/es/locale/lang/pt-BR.js +2 -1
  16. package/es/locale/lang/ru-RU.js +4 -3
  17. package/es/locale/lang/th-TH.js +2 -1
  18. package/es/locale/lang/ug-CN.js +2 -1
  19. package/es/locale/lang/uk-UA.js +518 -517
  20. package/es/locale/lang/vi-VN.js +2 -1
  21. package/es/locale/lang/zh-CHT.js +2 -1
  22. package/es/locale/lang/zh-CN.js +2 -1
  23. package/es/style.css +1 -1
  24. package/es/style.min.css +1 -1
  25. package/es/table/module/edit/hook.js +7 -7
  26. package/es/table/module/export/hook.js +97 -62
  27. package/es/table/module/keyboard/hook.js +63 -27
  28. package/es/table/src/body.js +107 -85
  29. package/es/table/src/cell.js +41 -55
  30. package/es/table/src/column.js +13 -1
  31. package/es/table/src/columnInfo.js +3 -0
  32. package/es/table/src/emits.js +2 -0
  33. package/es/table/src/footer.js +45 -7
  34. package/es/table/src/header.js +67 -165
  35. package/es/table/src/props.js +14 -4
  36. package/es/table/src/table.js +858 -398
  37. package/es/table/src/util.js +77 -62
  38. package/es/table/style.css +246 -191
  39. package/es/table/style.min.css +1 -1
  40. package/es/ui/index.js +20 -7
  41. package/es/ui/src/log.js +1 -1
  42. package/es/vxe-table/style.css +246 -191
  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 +1479 -875
  49. package/lib/index.umd.min.js +1 -1
  50. package/lib/locale/lang/ar-EG.js +2 -1
  51. package/lib/locale/lang/ar-EG.min.js +1 -1
  52. package/lib/locale/lang/de-DE.js +2 -1
  53. package/lib/locale/lang/de-DE.min.js +1 -1
  54. package/lib/locale/lang/en-US.js +4 -3
  55. package/lib/locale/lang/en-US.min.js +1 -1
  56. package/lib/locale/lang/en-US.umd.js +4 -3
  57. package/lib/locale/lang/es-ES.js +2 -1
  58. package/lib/locale/lang/es-ES.min.js +1 -1
  59. package/lib/locale/lang/es-ES.umd.js +2 -1
  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/it-IT.js +2 -1
  68. package/lib/locale/lang/it-IT.min.js +1 -1
  69. package/lib/locale/lang/ja-JP.js +2 -1
  70. package/lib/locale/lang/ja-JP.min.js +1 -1
  71. package/lib/locale/lang/ja-JP.umd.js +2 -1
  72. package/lib/locale/lang/ko-KR.js +2 -1
  73. package/lib/locale/lang/ko-KR.min.js +1 -1
  74. package/lib/locale/lang/ko-KR.umd.js +2 -1
  75. package/lib/locale/lang/nb-NO.js +2 -1
  76. package/lib/locale/lang/nb-NO.min.js +1 -1
  77. package/lib/locale/lang/pt-BR.js +2 -1
  78. package/lib/locale/lang/pt-BR.min.js +1 -1
  79. package/lib/locale/lang/pt-BR.umd.js +2 -1
  80. package/lib/locale/lang/ru-RU.js +4 -3
  81. package/lib/locale/lang/ru-RU.min.js +1 -1
  82. package/lib/locale/lang/ru-RU.umd.js +4 -3
  83. package/lib/locale/lang/th-TH.js +2 -1
  84. package/lib/locale/lang/th-TH.min.js +1 -1
  85. package/lib/locale/lang/ug-CN.js +2 -1
  86. package/lib/locale/lang/ug-CN.min.js +1 -1
  87. package/lib/locale/lang/uk-UA.js +518 -517
  88. package/lib/locale/lang/uk-UA.min.js +1 -1
  89. package/lib/locale/lang/uk-UA.umd.js +518 -517
  90. package/lib/locale/lang/vi-VN.js +2 -1
  91. package/lib/locale/lang/vi-VN.min.js +1 -1
  92. package/lib/locale/lang/zh-CHT.js +2 -1
  93. package/lib/locale/lang/zh-CHT.min.js +1 -1
  94. package/lib/locale/lang/zh-CN.js +2 -1
  95. package/lib/locale/lang/zh-CN.min.js +1 -1
  96. package/lib/locale/lang/zh-CN.umd.js +2 -1
  97. package/lib/style.css +1 -1
  98. package/lib/style.min.css +1 -1
  99. package/lib/table/module/edit/hook.js +7 -2
  100. package/lib/table/module/edit/hook.min.js +1 -1
  101. package/lib/table/module/export/hook.js +97 -57
  102. package/lib/table/module/export/hook.min.js +1 -1
  103. package/lib/table/module/keyboard/hook.js +71 -28
  104. package/lib/table/module/keyboard/hook.min.js +1 -1
  105. package/lib/table/src/body.js +111 -81
  106. package/lib/table/src/body.min.js +1 -1
  107. package/lib/table/src/cell.js +32 -42
  108. package/lib/table/src/cell.min.js +1 -1
  109. package/lib/table/src/column.js +13 -1
  110. package/lib/table/src/column.min.js +1 -1
  111. package/lib/table/src/columnInfo.js +3 -0
  112. package/lib/table/src/columnInfo.min.js +1 -1
  113. package/lib/table/src/emits.js +1 -1
  114. package/lib/table/src/emits.min.js +1 -1
  115. package/lib/table/src/footer.js +45 -5
  116. package/lib/table/src/footer.min.js +1 -1
  117. package/lib/table/src/header.js +51 -178
  118. package/lib/table/src/header.min.js +1 -1
  119. package/lib/table/src/props.js +14 -4
  120. package/lib/table/src/props.min.js +1 -1
  121. package/lib/table/src/table.js +911 -384
  122. package/lib/table/src/table.min.js +1 -1
  123. package/lib/table/src/util.js +100 -82
  124. package/lib/table/src/util.min.js +1 -1
  125. package/lib/table/style/style.css +246 -191
  126. package/lib/table/style/style.min.css +1 -1
  127. package/lib/ui/index.js +20 -7
  128. package/lib/ui/index.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 +246 -191
  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 +2 -1
  136. package/packages/locale/lang/de-DE.ts +2 -1
  137. package/packages/locale/lang/en-US.ts +4 -3
  138. package/packages/locale/lang/es-ES.ts +2 -1
  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/it-IT.ts +2 -1
  143. package/packages/locale/lang/ja-JP.ts +2 -1
  144. package/packages/locale/lang/ko-KR.ts +2 -1
  145. package/packages/locale/lang/nb-NO.ts +2 -1
  146. package/packages/locale/lang/pt-BR.ts +2 -1
  147. package/packages/locale/lang/ru-RU.ts +4 -3
  148. package/packages/locale/lang/th-TH.ts +2 -1
  149. package/packages/locale/lang/ug-CN.ts +2 -1
  150. package/packages/locale/lang/uk-UA.ts +518 -517
  151. package/packages/locale/lang/vi-VN.ts +2 -1
  152. package/packages/locale/lang/zh-CHT.ts +2 -1
  153. package/packages/locale/lang/zh-CN.ts +2 -1
  154. package/packages/table/module/edit/hook.ts +7 -7
  155. package/packages/table/module/export/hook.ts +118 -65
  156. package/packages/table/module/keyboard/hook.ts +59 -25
  157. package/packages/table/src/body.ts +126 -95
  158. package/packages/table/src/cell.ts +41 -63
  159. package/packages/table/src/column.ts +13 -1
  160. package/packages/table/src/columnInfo.ts +3 -0
  161. package/packages/table/src/emits.ts +5 -1
  162. package/packages/table/src/footer.ts +48 -8
  163. package/packages/table/src/header.ts +67 -165
  164. package/packages/table/src/props.ts +14 -5
  165. package/packages/table/src/table.ts +862 -398
  166. package/packages/table/src/util.ts +81 -62
  167. package/packages/ui/index.ts +19 -6
  168. package/styles/components/table.scss +313 -274
  169. package/styles/theme/base.scss +4 -6
  170. package/styles/theme/dark.scss +1 -0
  171. package/styles/theme/light.scss +1 -0
  172. package/styles/variable.scss +1 -1
  173. /package/es/{iconfont.1736854674495.ttf → iconfont.1739008158505.ttf} +0 -0
  174. /package/es/{iconfont.1736854674495.woff → iconfont.1739008158505.woff} +0 -0
  175. /package/es/{iconfont.1736854674495.woff2 → iconfont.1739008158505.woff2} +0 -0
  176. /package/lib/{iconfont.1736854674495.ttf → iconfont.1739008158505.ttf} +0 -0
  177. /package/lib/{iconfont.1736854674495.woff → iconfont.1739008158505.woff} +0 -0
  178. /package/lib/{iconfont.1736854674495.woff2 → iconfont.1739008158505.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;function getTargetOffset(e,t){let o=0,l=0;var n,r,a=!_dom.browse.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(a&&(n=getComputedStyle(e),o-=_xeUtils.default.toNumber(n.paddingTop),l-=_xeUtils.default.toNumber(n.paddingLeft));e&&e!==t;)o+=e.offsetTop,l+=e.offsetLeft,e=e.offsetParent,a&&(r=getComputedStyle(e),o-=_xeUtils.default.toNumber(r.paddingTop),l-=_xeUtils.default.toNumber(r.paddingLeft));return{offsetTop:o,offsetLeft:l}}hooks.add("tableKeyboardModule",{setupTable(M){let{props:m,reactData:E,internalData:D}=M,o=M.getRefMaps().refElem,{computeEditOpts:g,computeCheckboxOpts:u,computeMouseOpts:d,computeTreeOpts:i}=M.getComputeMaps();let s=(e,y)=>{var{column:n,cell:r}=y;if("checkbox"===n.type){let l=o.value;var t=D.elemStore;let I=e.clientX,_=e.clientY,k=(0,_util.getRefElem)(t[`${n.fixed||"main"}-body-wrapper`]||t["main-body-wrapper"]);if(k){let c=k.querySelector(".vxe-table--checkbox-range"),t=document.onmousemove,o=document.onmouseup,u=r.parentElement,d=M.getCheckboxRecords(),i=[],s=1;n=getTargetOffset(e.target,k);let m=n.offsetTop+e.offsetY,g=n.offsetLeft+e.offsetX,f=k.scrollTop,a=u.offsetHeight,h=u.getBoundingClientRect(),p=_-h.y,x=null,v=!1,w=1,b=(e,t)=>{M.dispatchEvent("checkbox-range-"+e,{records:M.getCheckboxRecords(),reserves:M.getCheckboxReserveRecords()},t)},C=e=>{var{clientX:t,clientY:o}=e,t=t-I,o=o-_+(k.scrollTop-f);let l=Math.abs(o),n=Math.abs(t),r=m,a=g;o<s?(r+=o)<s&&(r=s,l=m):l=Math.min(l,k.scrollHeight-m-s),t<s?(a+=t,n>g&&(a=s,n=g)):n=Math.min(n,k.clientWidth-g-s),c.style.height=l+"px",c.style.width=n+"px",c.style.left=a+"px",c.style.top=r+"px",c.style.display="block";t=((e,t,o,l,n,r)=>{let a=0,c=[],u=0;var d=0<r,{scrollYLoad:i,rowHeight:s}=E,m=D.afterFullData;if(i){u=d?n+r:l.height-n+Math.abs(r);i=M.getVTRowIndex(t.row);c=d?m.slice(i,i+Math.ceil(u/s)):m.slice(i-Math.floor(u/s),i+1)}else{u=d?e.clientY-l.y:l.y-e.clientY+l.height;for(var g=d?"next":"previous";o&&a<u;){var f=M.getRowNode(o);f&&(c.push(f.item),a+=o.offsetHeight,o=o[g+"ElementSibling"])}}return c})(e,y,u,h,p,o<s?-l:l);10<l&&t.length!==i.length&&(i=t,e.ctrlKey?t.forEach(e=>{M.handleBatchSelectRows([e],-1===d.indexOf(e))}):(M.setAllCheckboxRow(!1),M.handleCheckedCheckboxRow(t,!0,!1)),b("change",e))},T=()=>{clearTimeout(x),x=null},R=r=>{T(),x=setTimeout(()=>{var e,t,o,l,n;x&&({scrollLeft:e,scrollTop:t,clientHeight:o,scrollHeight:l}=k,n=Math.ceil(50*w/a),v?t+o<l?(M.scrollTo(e,t+n),R(r),C(r)):T():t?(M.scrollTo(e,t-n),R(r),C(r)):T())},50)};(0,_dom.addClass)(l,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,o=(0,_dom.getAbsolutePos)(k).boundingTop;t<o?(v=!1,w=o-t,x||R(e)):t>o+k.clientHeight?(v=!0,w=t-o-k.clientHeight,x||R(e)):x&&T(),C(e)},document.onmouseup=e=>{T(),(0,_dom.removeClass)(l,"drag--range"),c.removeAttribute("style"),document.onmousemove=t,document.onmouseup=o,b("end",e)},b("start",e)}}};return{moveTabSelected(e,t,o){var l=m.editConfig,{afterFullData:n,visibleColumn:r}=D,a=g.value;let c,u,d,i=Object.assign({},e);var e=M.getVTRowIndex(i.row),s=M.getVTColumnIndex(i.column),t=(o.preventDefault(),t?s<=0?0<e&&(u=e-1,c=n[u],d=r.length-1):d=s-1:s>=r.length-1?e<n.length-1&&(u=e+1,c=n[u],d=0):d=s+1,r[d]);t&&(c?(i.rowIndex=u,i.row=c):i.rowIndex=e,i.columnIndex=d,i.column=t,i.cell=M.getCellElement(i.row,i.column),l?"click"!==a.trigger&&"dblclick"!==a.trigger||("row"===a.mode?M.handleEdit(i,o):M.scrollToRow(i.row,i.column).then(()=>M.handleSelected(i,o))):M.scrollToRow(i.row,i.column).then(()=>M.handleSelected(i,o)))},moveCurrentRow(e,t,o){var l=m.treeConfig;let n=E.currentRow;var r=D.afterFullData,a=i.value,a=a.children||a.childrenField;let c;if(o.preventDefault(),n?l?({index:l,items:a}=_xeUtils.default.findTree(r,e=>e===n,{children:a}),e&&0<l?c=a[l-1]:t&&l<a.length-1&&(c=a[l+1])):(a=M.getVTRowIndex(n),e&&0<a?c=r[a-1]:t&&a<r.length-1&&(c=r[a+1])):c=r[0],c){let e={$table:M,row:c,rowIndex:M.getRowIndex(c),$rowIndex:M.getVMRowIndex(c)};M.scrollToRow(c).then(()=>M.triggerCurrentRowEvent(o,e))}},moveSelected(e,t,o,l,n,r){var{afterFullData:a,visibleColumn:c}=D;let u=Object.assign({},e);var e=M.getVTRowIndex(u.row),d=M.getVTColumnIndex(u.column);r.preventDefault(),o&&0<e?(u.rowIndex=e-1,u.row=a[u.rowIndex]):n&&e<a.length-1?(u.rowIndex=e+1,u.row=a[u.rowIndex]):t&&d?(u.columnIndex=d-1,u.column=c[u.columnIndex]):l&&d<c.length-1&&(u.columnIndex=d+1,u.column=c[u.columnIndex]),M.scrollToRow(u.row,u.column).then(()=>{u.cell=M.getCellElement(u.row,u.column),M.handleSelected(u,r)})},handleCellMousedownEvent:(e,t)=>{var{editConfig:o,checkboxConfig:l,mouseConfig:n}=m,r=u.value,a=d.value,c=g.value;if(n&&a.area&&M.handleMousedownCellAreaEvent)return M.handleMousedownCellAreaEvent(e,t);l&&r.range&&s(e,t),n&&a.selected&&(o&&"cell"!==c.mode||M.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;function getTargetOffset(e,t){let l=0,o=0;var r,n,a=!_dom.browse.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(a&&(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,a&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}hooks.add("tableKeyboardModule",{setupTable(M){let{props:E,reactData:D,internalData:O}=M,S=M.getRefMaps().refElem,{computeEditOpts:h,computeCheckboxOpts:u,computeMouseOpts:s,computeTreeOpts:c,computeRowOpts:H,computeCellOpts:V,computeDefaultRowHeight:q}=M.getComputeMaps();let d=(e,y)=>{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}=y;if("checkbox"===r.type){let k=l;if(o&&"left"===r.fixed?k=o:t&&"right"===r.fixed&&(k=t),k){let t=S.value,i=e.clientX,u=e.clientY,s=k.querySelector(".vxe-table--checkbox-range"),c=n.parentElement,d=M.getCheckboxRecords(),h=[],g=1;l=getTargetOffset(e.target,k);let f=l.offsetTop+e.offsetY,m=l.offsetLeft+e.offsetX,p=k.scrollTop,a=c.offsetHeight,v=c.getBoundingClientRect(),x=u-v.y,w=null,b=!1,R=1,C=(e,t)=>{M.dispatchEvent("checkbox-range-"+e,{records:M.getCheckboxRecords(),reserves:M.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-i,l=l-u+(k.scrollTop-p);let o=Math.abs(l),r=Math.abs(t),n=f,a=m;l<g?(n+=l)<g&&(n=g,o=f):o=Math.min(o,k.scrollHeight-f-g),t<g?(a+=t,r>m&&(a=g,r=m)):r=Math.min(r,k.clientWidth-m-g),s.style.height=o+"px",s.style.width=r+"px",s.style.left=a+"px",s.style.top=n+"px",s.style.display="block";t=((e,t,l,o,r)=>{var n=E.showOverflow,{fullAllDataRowIdData:a,isResizeCellHeight:i}=O,u=H.value,s=V.value,c=q.value,e=e.row;let d=0,h=[],g=0;var f=0<r,m=D.scrollYLoad,p=O.afterFullData;if(g=f?o+r:l.height-o+Math.abs(r),m){l=M.getVTRowIndex(e);if(!(i||s.height||u.height)&&n)h=f?p.slice(l,l+Math.ceil(g/c)):p.slice(l-Math.floor(g/c),l+1);else if(f)for(let e=l;e<p.length;e++){var v=p[e],x=a[M.getRowid(v)]||{};if(d+=x.resizeHeight||s.height||u.height||x.height||c,h.push(v),d>g)return h}else for(let e=l;0<=e;e--){var w=p[e],b=a[M.getRowid(w)]||{};if(d+=b.resizeHeight||s.height||u.height||b.height||c,h.push(w),d>g)return h}}else for(var R=f?"next":"previous";t&&d<g;){var C=M.getRowNode(t);C&&(h.push(C.item),d+=t.offsetHeight,t=t[R+"ElementSibling"])}return h})(y,c,v,x,l<g?-o:o);10<o&&t.length!==h.length&&(h=t,e.ctrlKey?t.forEach(e=>{M.handleBatchSelectRows([e],-1===d.indexOf(e))}):(M.setAllCheckboxRow(!1),M.handleCheckedCheckboxRow(t,!0,!1)),C("change",e))},I=()=>{clearTimeout(w),w=null},_=n=>{I(),w=setTimeout(()=>{var e,t,l,o,r;w&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=k,r=Math.ceil(50*R/a),b?t+l<o?(M.scrollTo(e,t+r),_(n),T(n)):I():t?(M.scrollTo(e,t-r),_(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)(k).boundingTop;t<l?(b=!1,R=l-t,w||_(e)):t>l+k.clientHeight?(b=!0,R=t-l-k.clientHeight,w||_(e)):w&&I(),T(e)},document.onmouseup=e=>{I(),(0,_dom.removeClass)(t,"drag--range"),s.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,C("end",e)},C("start",e)}}};return{moveTabSelected(e,t,l){var o=E.editConfig,{afterFullData:r,visibleColumn:n}=O,a=h.value;let i,u,s,c=Object.assign({},e);var e=M.getVTRowIndex(c.row),d=M.getVTColumnIndex(c.column),t=(l.preventDefault(),t?d<=0?0<e&&(u=e-1,i=r[u],s=n.length-1):s=d-1:d>=n.length-1?e<r.length-1&&(u=e+1,i=r[u],s=0):s=d+1,n[s]);t&&(i?(c.rowIndex=u,c.row=i):c.rowIndex=e,c.columnIndex=s,c.column=t,c.cell=M.getCellElement(c.row,c.column),o?"click"!==a.trigger&&"dblclick"!==a.trigger||("row"===a.mode?M.handleEdit(c,l):M.scrollToRow(c.row,c.column).then(()=>M.handleSelected(c,l))):M.scrollToRow(c.row,c.column).then(()=>M.handleSelected(c,l)))},moveCurrentRow(e,t,l){var o=E.treeConfig;let r=D.currentRow;var n=O.afterFullData,a=c.value,a=a.children||a.childrenField;let i;if(l.preventDefault(),r?o?({index:o,items:a}=_xeUtils.default.findTree(n,e=>e===r,{children:a}),e&&0<o?i=a[o-1]:t&&o<a.length-1&&(i=a[o+1])):(a=M.getVTRowIndex(r),e&&0<a?i=n[a-1]:t&&a<n.length-1&&(i=n[a+1])):i=n[0],i){let e={$table:M,row:i,rowIndex:M.getRowIndex(i),$rowIndex:M.getVMRowIndex(i)};M.scrollToRow(i).then(()=>M.triggerCurrentRowEvent(l,e))}},moveSelected(e,t,l,o,r,n){var{afterFullData:a,visibleColumn:i}=O;let u=Object.assign({},e);var e=M.getVTRowIndex(u.row),s=M.getVTColumnIndex(u.column);n.preventDefault(),l&&0<e?(u.rowIndex=e-1,u.row=a[u.rowIndex]):r&&e<a.length-1?(u.rowIndex=e+1,u.row=a[u.rowIndex]):t&&s?(u.columnIndex=s-1,u.column=i[u.columnIndex]):o&&s<i.length-1&&(u.columnIndex=s+1,u.column=i[u.columnIndex]),M.scrollToRow(u.row,u.column).then(()=>{u.cell=M.getCellElement(u.row,u.column),M.handleSelected(u,n)})},handleCellMousedownEvent:(e,t)=>{var{editConfig:l,checkboxConfig:o,mouseConfig:r}=E,n=u.value,a=s.value,i=h.value;if(r&&a.area&&M.handleMousedownCellAreaEvent)return M.handleMousedownCellAreaEvent(e,t);o&&n.range&&d(e,t),r&&a.selected&&(l&&"cell"!==i.mode||M.handleSelected(t,e))}}}});
@@ -56,7 +56,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
56
56
  computeRowDragOpts,
57
57
  computeColumnDragOpts,
58
58
  computeLeftFixedWidth,
59
- computeRightFixedWidth
59
+ computeRightFixedWidth,
60
+ computeResizableOpts
60
61
  } = $xeTable.getComputeMaps();
61
62
  const refElem = (0, _vue.ref)();
62
63
  const refBodyScroll = (0, _vue.ref)();
@@ -73,11 +74,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
73
74
  } = tableProps;
74
75
  const {
75
76
  lastScrollTime,
76
- _isResize
77
+ isDragResize
77
78
  } = tableReactData;
78
- return !!(_isResize || lastScrollTime && Date.now() < lastScrollTime + delayHover);
79
+ return !!(isDragResize || lastScrollTime && Date.now() < lastScrollTime + delayHover);
79
80
  };
80
- const renderLine = params => {
81
+ const renderLine = (params, cellHeight) => {
81
82
  const {
82
83
  row,
83
84
  column
@@ -110,11 +111,13 @@ var _default = exports.default = (0, _vue.defineComponent)({
110
111
  const isFirstRow = $xeTable.eqRow(afterFullData[0], row);
111
112
  if (treeConfig && treeNode && (treeOpts.showLine || treeOpts.line)) {
112
113
  return [(0, _vue.h)('div', {
114
+ key: 'tl',
113
115
  class: 'vxe-tree--line-wrapper'
114
116
  }, [(0, _vue.h)('div', {
115
117
  class: 'vxe-tree--line',
116
118
  style: {
117
119
  height: `${isFirstRow ? 1 : (0, _util.calcTreeLine)(params, prevRow)}px`,
120
+ bottom: `-${Math.floor(cellHeight / 2)}px`,
118
121
  left: `${rLevel * treeOpts.indent + (rLevel ? 2 - (0, _util.getOffsetSize)($xeTable) : 0) + 16}px`
119
122
  }
120
123
  })])];
@@ -130,8 +133,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
130
133
  } = tableInternalData;
131
134
  const {
132
135
  columnKey,
136
+ resizable: allResizable,
137
+ border,
133
138
  height,
134
- showOverflow: allColumnOverflow,
135
139
  cellClassName: allCellClassName,
136
140
  cellStyle,
137
141
  align: allAlign,
@@ -139,7 +143,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
139
143
  mouseConfig,
140
144
  editConfig,
141
145
  editRules,
142
- tooltipConfig
146
+ tooltipConfig,
147
+ padding: allPadding
143
148
  } = tableProps;
144
149
  const {
145
150
  tableData,
@@ -147,7 +152,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
147
152
  currentColumn,
148
153
  scrollXLoad,
149
154
  scrollYLoad,
150
- isCalcCellHeight,
155
+ calcCellHeightFlag,
156
+ resizeHeightFlag,
151
157
  mergeList,
152
158
  editStore,
153
159
  isAllOverflow,
@@ -163,9 +169,15 @@ var _default = exports.default = (0, _vue.defineComponent)({
163
169
  const checkboxOpts = computeCheckboxOpts.value;
164
170
  const editOpts = computeEditOpts.value;
165
171
  const tooltipOpts = computeTooltipOpts.value;
172
+ const resizableOpts = computeResizableOpts.value;
173
+ const {
174
+ isAllColumnDrag,
175
+ isAllRowDrag
176
+ } = resizableOpts;
166
177
  const rowOpts = computeRowOpts.value;
167
178
  const rowDragOpts = computeRowDragOpts.value;
168
179
  const defaultRowHeight = computeDefaultRowHeight.value;
180
+ const customCellHeight = cellOpts.height || rowOpts.height;
169
181
  const {
170
182
  disabledMethod: dragDisabledMethod,
171
183
  isCrossDrag,
@@ -185,17 +197,18 @@ var _default = exports.default = (0, _vue.defineComponent)({
185
197
  showOverflow,
186
198
  className,
187
199
  treeNode,
200
+ rowResize,
201
+ padding,
202
+ verticalAlign,
188
203
  slots
189
204
  } = column;
190
205
  const {
191
- verticalAlign
206
+ verticalAlign: allVerticalAlign
192
207
  } = cellOpts;
193
208
  const {
194
209
  actived
195
210
  } = editStore;
196
- const {
197
- height: customRHeight
198
- } = rowOpts;
211
+ const rowRest = fullAllDataRowIdData[rowid];
199
212
  const colid = column.id;
200
213
  const renderOpts = editRender || cellRender;
201
214
  const compConf = renderOpts ? renderer.get(renderOpts.name) : null;
@@ -205,23 +218,27 @@ var _default = exports.default = (0, _vue.defineComponent)({
205
218
  const columnIndex = $xeTable.getColumnIndex(column);
206
219
  const _columnIndex = $xeTable.getVTColumnIndex(column);
207
220
  const isEdit = (0, _utils.isEnableConf)(editRender);
221
+ const resizeHeight = resizeHeightFlag ? rowRest.resizeHeight : 0;
208
222
  let fixedHiddenColumn = fixedType ? column.fixed !== fixedType : column.fixed && overflowX;
209
- const cellOverflow = _xeUtils.default.isUndefined(showOverflow) || _xeUtils.default.isNull(showOverflow) ? allColumnOverflow : showOverflow;
223
+ const isCellPadding = _xeUtils.default.eqNull(padding) ? allPadding === null ? cellOpts.padding : allPadding : padding;
224
+ const cellOverflow = _xeUtils.default.eqNull(showOverflow) ? isAllOverflow : showOverflow;
210
225
  const showEllipsis = cellOverflow === 'ellipsis';
211
226
  const showTitle = cellOverflow === 'title';
212
227
  const showTooltip = cellOverflow === true || cellOverflow === 'tooltip';
213
- // 如果表格加上 showOverflow 则不再支持列单独设置
214
- const hasEllipsis = allColumnOverflow || showTitle || showTooltip || showEllipsis;
228
+ const hasEllipsis = isAllOverflow || showTitle || showTooltip || showEllipsis;
229
+ const showResizable = _xeUtils.default.isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable;
230
+ const isCsHeight = !!customCellHeight;
231
+ const isRsHeight = resizeHeight > 0;
215
232
  let isDirty;
216
233
  const tdOns = {};
217
- const rest = fullAllDataRowIdData[rowid];
218
234
  const cellAlign = align || (compConf ? compConf.tableCellAlign : '') || allAlign;
235
+ const cellVerticalAlign = _xeUtils.default.eqNull(verticalAlign) ? allVerticalAlign : verticalAlign;
219
236
  const errorValidItem = validErrorMaps[`${rowid}:${colid}`];
220
237
  const showValidTip = editRules && validOpts.showMessage && (validOpts.message === 'default' ? height || tableData.length > 1 : validOpts.message === 'inline');
221
- const attrs = {
238
+ const tdAttrs = {
222
239
  colid
223
240
  };
224
- const params = {
241
+ const cellParams = {
225
242
  $table: $xeTable,
226
243
  $grid: $xeTable.xegrid,
227
244
  isEdit: false,
@@ -249,7 +266,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
249
266
  isRowDragCell = rowDragOpts.trigger === 'row' || column.dragSort && rowDragOpts.trigger === 'cell';
250
267
  }
251
268
  if (isRowDragCell) {
252
- isDisabledDrag = !!(dragDisabledMethod && dragDisabledMethod(params));
269
+ isDisabledDrag = !!(dragDisabledMethod && dragDisabledMethod(cellParams));
253
270
  }
254
271
  // hover 进入事件
255
272
  if (showTitle || showTooltip || showAllTip || tooltipConfig) {
@@ -261,11 +278,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
261
278
  (0, _dom.updateCellTitle)(evnt.currentTarget, column);
262
279
  } else if (showTooltip || showAllTip) {
263
280
  // 如果配置了显示 tooltip
264
- $xeTable.triggerBodyTooltipEvent(evnt, params);
281
+ $xeTable.triggerBodyTooltipEvent(evnt, cellParams);
265
282
  }
266
283
  $xeTable.dispatchEvent('cell-mouseenter', Object.assign({
267
284
  cell: evnt.currentTarget
268
- }, params), evnt);
285
+ }, cellParams), evnt);
269
286
  };
270
287
  }
271
288
  // hover 退出事件
@@ -279,13 +296,13 @@ var _default = exports.default = (0, _vue.defineComponent)({
279
296
  }
280
297
  $xeTable.dispatchEvent('cell-mouseleave', Object.assign({
281
298
  cell: evnt.currentTarget
282
- }, params), evnt);
299
+ }, cellParams), evnt);
283
300
  };
284
301
  }
285
302
  // 按下事件处理
286
303
  if (isRowDragCell || checkboxOpts.range || mouseConfig) {
287
304
  tdOns.onMousedown = evnt => {
288
- $xeTable.triggerCellMousedownEvent(evnt, params);
305
+ $xeTable.triggerCellMousedownEvent(evnt, cellParams);
289
306
  };
290
307
  }
291
308
  // 拖拽列事件
@@ -294,11 +311,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
294
311
  }
295
312
  // 点击事件处理
296
313
  tdOns.onClick = evnt => {
297
- $xeTable.triggerCellClickEvent(evnt, params);
314
+ $xeTable.triggerCellClickEvent(evnt, cellParams);
298
315
  };
299
316
  // 双击事件处理
300
317
  tdOns.onDblclick = evnt => {
301
- $xeTable.triggerCellDblclickEvent(evnt, params);
318
+ $xeTable.triggerCellDblclickEvent(evnt, cellParams);
302
319
  };
303
320
  // 合并行或列
304
321
  if (mergeList.length) {
@@ -312,10 +329,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
312
329
  return null;
313
330
  }
314
331
  if (rowspan > 1) {
315
- attrs.rowspan = rowspan;
332
+ tdAttrs.rowspan = rowspan;
316
333
  }
317
334
  if (colspan > 1) {
318
- attrs.colspan = colspan;
335
+ tdAttrs.colspan = colspan;
319
336
  }
320
337
  }
321
338
  } else if (spanMethod) {
@@ -323,20 +340,20 @@ var _default = exports.default = (0, _vue.defineComponent)({
323
340
  const {
324
341
  rowspan = 1,
325
342
  colspan = 1
326
- } = spanMethod(params) || {};
343
+ } = spanMethod(cellParams) || {};
327
344
  if (!rowspan || !colspan) {
328
345
  return null;
329
346
  }
330
347
  if (rowspan > 1) {
331
- attrs.rowspan = rowspan;
348
+ tdAttrs.rowspan = rowspan;
332
349
  }
333
350
  if (colspan > 1) {
334
- attrs.colspan = colspan;
351
+ tdAttrs.colspan = colspan;
335
352
  }
336
353
  }
337
354
  // 如果被合并不可隐藏
338
355
  if (fixedHiddenColumn && mergeList) {
339
- if (attrs.colspan > 1 || attrs.rowspan > 1) {
356
+ if (tdAttrs.colspan > 1 || tdAttrs.rowspan > 1) {
340
357
  fixedHiddenColumn = false;
341
358
  }
342
359
  }
@@ -345,28 +362,25 @@ var _default = exports.default = (0, _vue.defineComponent)({
345
362
  isDirty = $xeTable.isUpdateByRow(row, column.field);
346
363
  }
347
364
  const isVNAutoHeight = scrollYLoad && !hasEllipsis;
348
- let cellHeight = 0;
349
- const vnHeight = isCalcCellHeight ? rest.height : 0;
350
- if (hasEllipsis) {
351
- if (customRHeight) {
352
- cellHeight = customRHeight;
353
- } else if (!isAllOverflow) {
354
- cellHeight = vnHeight || defaultRowHeight || 18;
355
- }
356
- } else {
357
- cellHeight = vnHeight || defaultRowHeight || 18;
365
+ const cellHeight = calcCellHeightFlag ? rowRest.resizeHeight || cellOpts.height || rowOpts.height || rowRest.height || defaultRowHeight : defaultRowHeight;
366
+ const isLastColumn = $columnIndex === columns.length - 1;
367
+ const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
368
+ let isVNPreEmptyStatus = false;
369
+ if (scrollYLoad && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
370
+ isVNPreEmptyStatus = true;
371
+ } else if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
372
+ isVNPreEmptyStatus = true;
358
373
  }
359
374
  const tcStyle = {};
360
- if (cellHeight) {
361
- if (hasEllipsis) {
362
- tcStyle.maxHeight = `${cellHeight}px`;
363
- } else if (isVNAutoHeight) {
364
- tcStyle.height = `${cellHeight}px`;
365
- }
375
+ if (scrollYLoad || hasEllipsis || isCsHeight || isRsHeight) {
376
+ tcStyle.height = `${cellHeight}px`;
377
+ } else {
378
+ tcStyle.minHeight = `${cellHeight}px`;
366
379
  }
367
380
  const tdVNs = [];
368
- if (fixedHiddenColumn && (allColumnOverflow ? isAllOverflow : allColumnOverflow)) {
381
+ if (fixedHiddenColumn && isAllOverflow) {
369
382
  tdVNs.push((0, _vue.h)('div', {
383
+ key: 'tc',
370
384
  class: ['vxe-cell', {
371
385
  'c--title': showTitle,
372
386
  'c--tooltip': showTooltip,
@@ -376,7 +390,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
376
390
  }));
377
391
  } else {
378
392
  // 渲染单元格
379
- tdVNs.push(...renderLine(params), (0, _vue.h)('div', {
393
+ tdVNs.push(...renderLine(cellParams, cellHeight), (0, _vue.h)('div', {
394
+ key: 'tc',
380
395
  class: ['vxe-cell', {
381
396
  'c--title': showTitle,
382
397
  'c--tooltip': showTooltip,
@@ -384,16 +399,19 @@ var _default = exports.default = (0, _vue.defineComponent)({
384
399
  }],
385
400
  style: tcStyle,
386
401
  title: showTitle ? $xeTable.getCellLabel(row, column) : null
387
- }, isVNAutoHeight ? [(0, _vue.h)('div', {
388
- class: 'vxe-cell--auto-wrapper'
389
- }, column.renderCell(params))] : column.renderCell(params)));
402
+ }, isVNPreEmptyStatus ? [] : [(0, _vue.h)('div', {
403
+ colid,
404
+ rowid,
405
+ class: 'vxe-cell--wrapper'
406
+ }, column.renderCell(cellParams))]));
390
407
  if (showValidTip && errorValidItem) {
391
408
  const errRule = errorValidItem.rule;
392
409
  const validSlot = slots ? slots.valid : null;
393
- const validParams = Object.assign(Object.assign(Object.assign({}, params), errorValidItem), {
410
+ const validParams = Object.assign(Object.assign(Object.assign({}, cellParams), errorValidItem), {
394
411
  rule: errorValidItem
395
412
  });
396
413
  tdVNs.push((0, _vue.h)('div', {
414
+ key: 'tcv',
397
415
  class: ['vxe-cell--valid-error-tip', (0, _dom.getPropClass)(validOpts.className, validParams)],
398
416
  style: errRule && errRule.maxWidth ? {
399
417
  width: `${errRule.maxWidth}px`
@@ -405,46 +423,54 @@ var _default = exports.default = (0, _vue.defineComponent)({
405
423
  }, errorValidItem.content)]])]));
406
424
  }
407
425
  }
426
+ let showAreaRowStatus = false;
408
427
  if (mouseConfig && mouseOpts.area && selectCellToRow) {
409
- if (!$columnIndex && selectCellToRow === true || selectCellToRow === column.field) {
410
- tdVNs.push((0, _vue.h)('div', {
411
- class: 'vxe-cell--area-status'
412
- }));
428
+ if (!_columnIndex && selectCellToRow === true || selectCellToRow === column.field) {
429
+ showAreaRowStatus = true;
413
430
  }
414
431
  }
415
- const isLastColumn = $columnIndex === columns.length - 1;
416
- const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
417
- let isVNPreEmptyStatus = false;
418
- if (scrollYLoad && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
419
- isVNPreEmptyStatus = true;
420
- } else if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
421
- isVNPreEmptyStatus = true;
432
+ if (!fixedHiddenColumn && showResizable && isAllColumnDrag) {
433
+ tdVNs.push((0, _vue.h)('div', {
434
+ key: 'tcc',
435
+ class: ['vxe-cell--col-resizable', {
436
+ 'is--line': !border || border === 'none'
437
+ }],
438
+ onMousedown: evnt => $xeTable.handleColResizeMousedownEvent(evnt, fixedType, cellParams),
439
+ onDblclick: evnt => $xeTable.handleColResizeDblclickEvent(evnt, cellParams)
440
+ }));
441
+ }
442
+ if ((rowResize || isAllRowDrag) && rowOpts.resizable) {
443
+ tdVNs.push((0, _vue.h)('div', {
444
+ key: 'tcr',
445
+ class: 'vxe-cell--row-resizable',
446
+ onMousedown: evnt => $xeTable.handleRowResizeMousedownEvent(evnt, cellParams),
447
+ onDblclick: evnt => $xeTable.handleRowResizeDblclickEvent(evnt, cellParams)
448
+ }));
422
449
  }
423
450
  return (0, _vue.h)('td', Object.assign(Object.assign(Object.assign({
424
- class: ['vxe-body--column', colid, {
425
- [`col--${cellAlign}`]: cellAlign,
426
- [`col--vertical-${verticalAlign}`]: verticalAlign,
427
- [`col--${type}`]: type,
451
+ class: ['vxe-body--column', colid, cellVerticalAlign ? `col--vertical-${cellVerticalAlign}` : '', cellAlign ? `col--${cellAlign}` : '', type ? `col--${type}` : '', {
428
452
  'col--last': isLastColumn,
429
453
  'col--tree-node': treeNode,
430
454
  'col--edit': isEdit,
431
455
  'col--ellipsis': hasEllipsis,
456
+ 'col--cs-height': isCsHeight,
457
+ 'col--rs-height': isRsHeight,
458
+ 'col--to-row': showAreaRowStatus,
432
459
  'col--auto-height': isVNAutoHeight,
433
460
  'fixed--width': !isAutoCellWidth,
434
461
  'fixed--hidden': fixedHiddenColumn,
462
+ 'is--padding': isCellPadding,
435
463
  'is--drag-cell': isRowDragCell && (isCrossDrag || isPeerDrag || !rowLevel),
436
464
  'is--drag-disabled': isDisabledDrag,
437
465
  'col--dirty': isDirty,
438
466
  'col--active': editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row'),
439
467
  'col--valid-error': !!errorValidItem,
440
468
  'col--current': currentColumn === column
441
- }, (0, _dom.getPropClass)(compCellClassName, params), (0, _dom.getPropClass)(className, params), (0, _dom.getPropClass)(allCellClassName, params)],
469
+ }, (0, _dom.getPropClass)(compCellClassName, cellParams), (0, _dom.getPropClass)(className, cellParams), (0, _dom.getPropClass)(allCellClassName, cellParams)],
442
470
  key: columnKey || scrollXLoad || scrollYLoad || columnOpts.useKey || rowOpts.useKey || columnOpts.drag ? colid : $columnIndex
443
- }, attrs), {
444
- style: Object.assign({
445
- height: cellHeight ? `${cellHeight}px` : ''
446
- }, _xeUtils.default.isFunction(compCellStyle) ? compCellStyle(params) : compCellStyle, _xeUtils.default.isFunction(cellStyle) ? cellStyle(params) : cellStyle)
447
- }), tdOns), isVNPreEmptyStatus || isOptimizeMode && fixedHiddenColumn ? [] : tdVNs);
471
+ }, tdAttrs), {
472
+ style: Object.assign({}, _xeUtils.default.isFunction(compCellStyle) ? compCellStyle(cellParams) : compCellStyle, _xeUtils.default.isFunction(cellStyle) ? cellStyle(cellParams) : cellStyle)
473
+ }), tdOns), isOptimizeMode && fixedHiddenColumn ? [] : tdVNs);
448
474
  };
449
475
  const renderRows = (fixedType, isOptimizeMode, tableData, tableColumn) => {
450
476
  const {
@@ -453,15 +479,16 @@ var _default = exports.default = (0, _vue.defineComponent)({
453
479
  highlightHoverRow,
454
480
  rowClassName,
455
481
  rowStyle,
456
- showOverflow: allColumnOverflow,
457
482
  editConfig,
458
483
  treeConfig
459
484
  } = tableProps;
460
485
  const {
461
486
  hasFixedColumn,
462
487
  treeExpandedMaps,
488
+ isColLoading,
463
489
  scrollXLoad,
464
490
  scrollYLoad,
491
+ isAllOverflow,
465
492
  rowExpandedMaps,
466
493
  expandColumn,
467
494
  selectRadioRow,
@@ -565,7 +592,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
565
592
  const tdVNs = tableColumn.map((column, $columnIndex) => {
566
593
  return renderTdColumn(seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
567
594
  });
568
- rows.push(columnOpts.drag && columnDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, Object.assign({
595
+ rows.push(!isColLoading && columnOpts.drag && columnDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, Object.assign({
569
596
  name: `vxe-header--col-list${isDragColMove ? '' : '-disabled'}`,
570
597
  tag: 'tr',
571
598
  class: trClass,
@@ -597,7 +624,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
597
624
  const {
598
625
  showOverflow
599
626
  } = expandColumn;
600
- const hasEllipsis = _xeUtils.default.isUndefined(showOverflow) || _xeUtils.default.isNull(showOverflow) ? allColumnOverflow : showOverflow;
627
+ const hasEllipsis = _xeUtils.default.isUndefined(showOverflow) || _xeUtils.default.isNull(showOverflow) ? isAllOverflow : showOverflow;
601
628
  const expandParams = {
602
629
  $table: $xeTable,
603
630
  seq,
@@ -684,7 +711,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
684
711
  tableColumn
685
712
  } = props;
686
713
  const {
687
- showOverflow: allColumnOverflow,
688
714
  spanMethod,
689
715
  footerSpanMethod,
690
716
  mouseConfig
@@ -692,6 +718,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
692
718
  const {
693
719
  isGroup,
694
720
  tableData,
721
+ isRowLoading,
722
+ isColLoading,
695
723
  scrollXLoad,
696
724
  scrollYLoad,
697
725
  isAllOverflow,
@@ -715,7 +743,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
715
743
  let renderColumnList = tableColumn;
716
744
  let isOptimizeMode = false;
717
745
  // 如果是使用优化模式
718
- if (scrollXLoad || scrollYLoad || allColumnOverflow && isAllOverflow) {
746
+ if (scrollXLoad || scrollYLoad || isAllOverflow) {
719
747
  if (expandColumn || spanMethod || footerSpanMethod) {
720
748
  // 如果不支持优化模式
721
749
  } else {
@@ -833,9 +861,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
833
861
  });
834
862
  })),
835
863
  /**
836
- * 内容
837
- */
838
- rowOpts.drag && rowDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, {
864
+ * 内容
865
+ */
866
+ !(isRowLoading || isColLoading) && rowOpts.drag && rowDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, {
839
867
  ref: refBodyTBody,
840
868
  name: `vxe-body--row-list${isDragRowMove ? '' : '-disabled'}`,
841
869
  tag: 'tbody'
@@ -868,6 +896,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
868
896
  class: 'vxe-table--cell-multi-area'
869
897
  }), (0, _vue.h)('span', {
870
898
  class: 'vxe-table--cell-active-area'
899
+ }), (0, _vue.h)('span', {
900
+ class: 'vxe-table--cell-row-status-area'
871
901
  })]) : renderEmptyElement($xeTable), !fixedType ? (0, _vue.h)('div', {
872
902
  class: 'vxe-table--empty-block',
873
903
  ref: refBodyEmptyBlock
@@ -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 De=(0,_vue.inject)("$xeTable",{}),{xID:M,props:Ee,context:k,reactData:Oe,internalData:Re}=De,{computeEditOpts:Se,computeMouseOpts:Ie,computeAreaOpts:Te,computeDefaultRowHeight:Me,computeEmptyOpts:$,computeTooltipOpts:ke,computeRadioOpts:e,computeExpandOpts:G,computeTreeOpts:u,computeCheckboxOpts:$e,computeCellOpts:qe,computeValidOpts:Ue,computeRowOpts:je,computeColumnOpts:Ae,computeRowDragOpts:Le,computeColumnDragOpts:l,computeLeftFixedWidth:q,computeRightFixedWidth:U}=De.getComputeMaps(),j=(0,_vue.ref)(),A=(0,_vue.ref)(),L=(0,_vue.ref)(),F=(0,_vue.ref)(),N=(0,_vue.ref)(),B=(0,_vue.ref)(),H=(0,_vue.ref)(),W=(0,_vue.ref)(),Fe=()=>{var e=Ee.delayHover,{lastScrollTime:l,_isResize:t}=Oe;return!!(t||l&&Date.now()<l+e)},Ne=e=>{var{row:l,column:t}=e,a=Re.afterFullData,r=Ee.treeConfig,o=u.value,{slots:t,treeNode:i}=t,s=Re.fullAllDataRowIdData;if(t&&t.line)return De.callSlot(t.line,e);t=s[(0,_util.getRowid)(De,l)];let n=0,d=null;t&&(n=t.level,d=t.items[t.treeIndex-1]);s=De.eqRow(a[0],l);return r&&i&&(o.showLine||o.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${s?1:(0,_util.calcTreeLine)(e,d)}px`,left:n*o.indent+(n?2-(0,_util.getOffsetSize)(De):0)+16+"px"}})])]:[]},Q=(e,l,t,j,A,a,r,o,i,s,n,L,d)=>{var F=Re.fullAllDataRowIdData,{columnKey:N,height:u,showOverflow:c,cellClassName:B,cellStyle:H,align:W,spanMethod:z,mouseConfig:P,editConfig:K,editRules:v,tooltipConfig:p}=Ee,{tableData:g,overflowX:x,currentColumn:V,scrollXLoad:X,scrollYLoad:Y,isCalcCellHeight:G,mergeList:J,editStore:Q,isAllOverflow:Z,validErrorMaps:h}=Oe,{afterFullData:m,scrollXStore:w,scrollYStore:_}=Re,ee=qe.value,f=Ue.value,le=$e.value,te=Se.value,y=ke.value,ae=je.value,b=Le.value,re=Me.value,{disabledMethod:C,isCrossDrag:oe,isPeerDrag:ie}=b,se=Ae.value,ne=Ie.value,de=Te.value.selectCellToRow,{type:ue,cellRender:ce,editRender:ve,align:pe,showOverflow:D,className:ge,treeNode:xe,slots:he}=s,ee=ee.verticalAlign,Q=Q.actived,me=ae.height,E=s.id,O=ve||ce,O=O?renderer.get(O.name):null,we=O?O.tableCellClassName||O.cellClassName:null,_e=O?O.tableCellStyle||O.cellStyle:"";let R=y.showAll;var y=De.getColumnIndex(s),S=De.getVTColumnIndex(s),fe=(0,_utils.isEnableConf)(ve);let I=t?s.fixed!==t:s.fixed&&x;x=_xeUtils.default.isUndefined(D)||_xeUtils.default.isNull(D)?c:D,D="ellipsis"===x;let T="title"===x,M=!0===x||"tooltip"===x;x=c||T||M||D;let ye;var k={},F=F[l],pe=pe||(O?O.tableCellAlign:"")||W,O=h[l+":"+E],W=v&&f.showMessage&&("default"===f.message?u||1<g.length:"inline"===f.message),h={colid:E};let $={$table:De,$grid:De.xegrid,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:r,$rowIndex:o,_rowIndex:i,column:s,columnIndex:y,$columnIndex:n,_columnIndex:S,fixed:t,type:renderType,isHidden:!!I,level:A,visibleData:m,data:g,items:d},q=!1,be=!1;if((q=ae.drag?"row"===b.trigger||s.dragSort&&"cell"===b.trigger:q)&&(be=!(!C||!C($))),(T||M||R||p)&&(k.onMouseenter=e=>{Fe()||(T?(0,_dom.updateCellTitle)(e.currentTarget,s):(M||R)&&De.triggerBodyTooltipEvent(e,$),De.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},$),e))}),(M||R||p)&&(k.onMouseleave=e=>{Fe()||((M||R)&&De.handleTargetLeaveEvent(e),De.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},$),e))}),(q||le.range||P)&&(k.onMousedown=e=>{De.triggerCellMousedownEvent(e,$)}),q&&(k.onMouseup=De.triggerCellMouseupEvent),k.onClick=e=>{De.triggerCellClickEvent(e,$)},k.onDblclick=e=>{De.triggerCellDblclickEvent(e,$)},J.length){v=(0,_util.mergeBodyMethod)(J,i,S);if(v){var{rowspan:u,colspan:e}=v;if(!u||!e)return null;1<u&&(h.rowspan=u),1<e&&(h.colspan=e)}}else if(z){var{rowspan:l=1,colspan:r=1}=z($)||{};if(!l||!r)return null;1<l&&(h.rowspan=l),1<r&&(h.colspan=r)}!(I=I&&J&&(1<h.colspan||1<h.rowspan)?!1:I)&&K&&(ve||ce)&&(te.showStatus||te.showUpdateStatus)&&(ye=De.isUpdateByRow(a,s.field));o=Y&&!x;let U=0;y=G?F.height:0,x?me?U=me:Z||(U=y||re||18):U=y||re||18,t={},U&&(x?t.maxHeight=U+"px":o&&(t.height=U+"px")),m=[],I&&c&&Z?m.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":T,"c--tooltip":M,"c--ellipsis":D}],style:t})):(m.push(...Ne($),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":T,"c--tooltip":M,"c--ellipsis":D}],style:t,title:T?De.getCellLabel(a,s):null},o?[(0,_vue.h)("div",{class:"vxe-cell--auto-wrapper"},s.renderCell($))]:s.renderCell($))),W&&O&&(g=O.rule,d=he?he.valid:null,b=Object.assign(Object.assign(Object.assign({},$),O),{rule:O}),m.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,b)],style:g&&g.maxWidth?{width:g.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[d?De.callSlot(d,b):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)]])])))),P&&ne.area&&de&&((n||!0!==de)&&de!==s.field||m.push((0,_vue.h)("div",{class:"vxe-cell--area-status"}))),C=n===L.length-1,p=!s.resizeWidth&&("auto"===s.minWidth||"auto"===s.width);let Ce=!1;return(Y&&(i<_.visibleStartIndex-_.preloadSize||i>_.visibleEndIndex+_.preloadSize)||X&&!s.fixed&&(S<w.visibleStartIndex-w.preloadSize||S>w.visibleEndIndex+w.preloadSize))&&(Ce=!0),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",E,{["col--"+pe]:pe,["col--vertical-"+ee]:ee,["col--"+ue]:ue,"col--last":C,"col--tree-node":xe,"col--edit":fe,"col--ellipsis":x,"col--auto-height":o,"fixed--width":!p,"fixed--hidden":I,"is--drag-cell":q&&(oe||ie||!A),"is--drag-disabled":be,"col--dirty":ye,"col--active":K&&fe&&Q.row===a&&(Q.column===s||"row"===te.mode),"col--valid-error":!!O,"col--current":V===s},(0,_dom.getPropClass)(we,$),(0,_dom.getPropClass)(ge,$),(0,_dom.getPropClass)(B,$)],key:N||X||Y||se.useKey||ae.useKey||se.drag?E:n},h),{style:Object.assign({height:U?U+"px":""},_xeUtils.default.isFunction(_e)?_e($):_e,_xeUtils.default.isFunction(H)?H($):H)}),k),Ce||j&&I?[]:m)},J=(m,w,_,f)=>{let{stripe:y,rowKey:b,highlightHoverRow:C,rowClassName:D,rowStyle:E,showOverflow:O,editConfig:R,treeConfig:S}=Ee,{hasFixedColumn:I,treeExpandedMaps:T,scrollXLoad:M,scrollYLoad:k,rowExpandedMaps:$,expandColumn:q,selectRadioRow:U,pendingRowMaps:j,isDragColMove:A}=Oe,L=Re.fullAllDataRowIdData,F=$e.value,N=e.value,B=u.value,H=Se.value,W=je.value,z=Ae.value,P=l.value,{transform:K,seqMode:V}=B,X=B.children||B.childrenField,Y=[];return _.forEach((t,a)=>{var e={};let r,o=(r=De.getRowIndex(t),(W.isHover||C)&&(e.onMouseenter=e=>{Fe()||De.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{Fe()||De.clearHoverRow()}),(0,_util.getRowid)(De,t));var l=L[o];let i=0,s=-1,n=0;l&&(i=l.level,s=S&&K&&"increasing"===V?l._index+1:l.seq,n=l._index);var l={$table:De,seq:s,rowid:o,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},d=q&&!!$[o];let u=!1,c=[],v=!1;R&&(v=De.isInsertByRow(t)),!S||k||K||(c=t[X],u=c&&0<c.length&&!!T[o]),!W.drag||S&&!K||(e.onDragstart=De.handleRowDragDragstartEvent,e.onDragend=De.handleRowDragDragendEvent,e.onDragover=De.handleRowDragDragoverEvent);var p,g,x=["vxe-body--row",S?"row--level-"+i:"",{"row--stripe":y&&(n+1)%2==0,"is--new":v,"is--expand-row":d,"is--expand-tree":u,"row--new":v&&(H.showStatus||H.showInsertStatus),"row--radio":N.highlight&&De.eqRow(U,t),"row--checked":F.highlight&&De.isCheckedByCheckboxRow(t),"row--pending":!!j[o]},(0,_dom.getPropClass)(D,l)];let h=f.map((e,l)=>Q(s,o,m,w,i,t,r,a,n,e,l,f,_));Y.push(z.drag&&P.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(A?"":"-disabled"),tag:"tr",class:x,rowid:o,style:E?_xeUtils.default.isFunction(E)?E(l):E:null,key:b||M||k||W.useKey||W.drag||z.drag||S?o:a},e),{default:()=>h}):(0,_vue.h)("tr",Object.assign({class:x,rowid:o,style:E?_xeUtils.default.isFunction(E)?E(l):E:null,key:b||M||k||W.useKey||W.drag||z.drag||S?o:a},e),h)),d&&({height:x,padding:l}=G.value,d={},p=(x&&(d.height=x+"px"),S&&(d.paddingLeft=i*B.indent+30+"px"),q).showOverflow,p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?O:p,g={$table:De,seq:s,column:q,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},Y.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+o,style:E?_xeUtils.default.isFunction(E)?E(g):E:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":m&&!I,"col--ellipsis":p},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":x},style:d},[q.renderData(g)])])]))),u&&Y.push(...J(m,w,c,f))}),Y};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.fixedType,l=Re.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=j,l[e+"scroll"]=A,l[e+"table"]=L,l[e+"colgroup"]=F,l[e+"list"]=N,l[e+"xSpace"]=B,l[e+"ySpace"]=H,l[e+"emptyBlock"]=W})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=Re.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=k.slots;let{fixedColumn:l,fixedType:t,tableColumn:a}=T;var{showOverflow:r,spanMethod:o,footerSpanMethod:i,mouseConfig:s}=Ee,{isGroup:n,tableData:d,scrollXLoad:u,scrollYLoad:c,isAllOverflow:v,isDragRowMove:p,expandColumn:g,dragRow:x,dragCol:h}=Oe,{visibleColumn:m,fullAllDataRowIdData:w,fullColumnIdData:_}=Re,f=je.value,y=$.value,b=Ie.value,C=Le.value,D=q.value,E=U.value;let O=d,R=a,S=!(u||c||r&&v)||g||o||i?!1:!0;t&&(R=m,S)&&(R=l||[]),c&&x&&2<O.length&&(d=w[(0,_util.getRowid)(De,x)])&&(r=d._index,v=O[0],g=O[O.length-1],o=w[(0,_util.getRowid)(De,v)],i=w[(0,_util.getRowid)(De,g)],o)&&i&&(m=o._index,d=i._index,r<m?O=[x].concat(O):d<r&&(O=O.concat([x]))),t||n||u&&h&&2<R.length&&(v=_[h.id])&&(w=v._index,g=R[0],o=R[R.length-1],i=_[g.id],m=_[o.id],i)&&m&&(d=i._index,r=m._index,w<d?R=[h].concat(R):r<w&&(R=R.concat([h])));let I;x=e?e.empty:null,I=x?De.callSlot(x,{$table:De,$grid:De.xegrid}):(u=(n=y.name?renderer.get(y.name):null)?n.renderTableEmpty||n.renderTableEmptyView||n.renderEmpty:null)?(0,_vn.getSlotVNs)(u(y,{$table:De})):Ee.emptyText||getI18n("vxe.table.emptyText"),v={onScroll(e){De.triggerBodyScrollEvent(e,t)}};return(c||D||E)&&(v.onWheel=De.triggerBodyWheelEvent),(0,_vue.h)("div",{ref:j,class:["vxe-table--body-wrapper",t?`fixed-${t}--wrapper`:"body--wrapper"],xid:M},[(0,_vue.h)("div",Object.assign({ref:A,class:"vxe-table--body-inner-wrapper"},v),[t?renderEmptyElement(De):(0,_vue.h)("div",{ref:B,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:H,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:L,class:"vxe-table--body",xid:M,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:F},R.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),f.drag&&C.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:N,name:"vxe-body--row-list"+(p?"":"-disabled"),tag:"tbody"},{default:()=>J(t,S,O,R)}):(0,_vue.h)("tbody",{ref:N},J(t,S,O,R))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&b.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},b.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){De.triggerCellAreaExtendMousedownEvent&&De.triggerCellAreaExtendMousedownEvent(e,{$table:De,fixed:t,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(De),t?renderEmptyElement(De):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:W},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},I)])])])}}});
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 ke=(0,_vue.inject)("$xeTable",{}),{xID:k,props:ze,context:z,reactData:qe,internalData:Ae}=ke,{computeEditOpts:$e,computeMouseOpts:Ue,computeAreaOpts:Le,computeDefaultRowHeight:je,computeEmptyOpts:q,computeTooltipOpts:Fe,computeRadioOpts:e,computeExpandOpts:J,computeTreeOpts:c,computeCheckboxOpts:Ne,computeCellOpts:He,computeValidOpts:Be,computeRowOpts:We,computeColumnOpts:Pe,computeRowDragOpts:Ke,computeColumnDragOpts:l,computeLeftFixedWidth:A,computeRightFixedWidth:$,computeResizableOpts:Ve}=ke.getComputeMaps(),U=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),F=(0,_vue.ref)(),N=(0,_vue.ref)(),H=(0,_vue.ref)(),B=(0,_vue.ref)(),W=(0,_vue.ref)(),Xe=()=>{var e=ze.delayHover,{lastScrollTime:l,isDragResize:t}=qe;return!!(t||l&&Date.now()<l+e)},Ye=(e,l)=>{var{row:t,column:a}=e,r=Ae.afterFullData,o=ze.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=Ae.fullAllDataRowIdData;if(a&&a.line)return ke.callSlot(a.line,e);a=n[(0,_util.getRowid)(ke,t)];let d=0,u=null;a&&(d=a.level,u=a.items[a.treeIndex-1]);n=ke.eqRow(r[0],t);return o&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${n?1:(0,_util.calcTreeLine)(e,u)}px`,bottom:`-${Math.floor(l/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(ke):0)+16+"px"}})])]:[]},Z=(e,l,t,$,U,a,r,L,o,i,j,F,s)=>{var n=Ae.fullAllDataRowIdData,{columnKey:N,resizable:d,border:H,height:u,cellClassName:B,cellStyle:W,align:c,spanMethod:P,mouseConfig:K,editConfig:V,editRules:v,tooltipConfig:p,padding:g}=ze,{tableData:h,overflowX:X,currentColumn:Y,scrollXLoad:G,scrollYLoad:x,calcCellHeightFlag:J,resizeHeightFlag:m,mergeList:Q,editStore:Z,isAllOverflow:ee,validErrorMaps:w}=qe,{afterFullData:le,scrollXStore:_,scrollYStore:te}=Ae,ae=He.value,b=Be.value,re=Ne.value,oe=$e.value,f=Fe.value,{isAllColumnDrag:ie,isAllRowDrag:se}=Ve.value,y=We.value,C=Ke.value,ne=je.value,de=ae.height||y.height,{disabledMethod:D,isCrossDrag:ue,isPeerDrag:ce}=C,ve=Pe.value,pe=Ue.value,ge=Le.value.selectCellToRow,{type:he,cellRender:xe,editRender:me,align:we,showOverflow:R,className:_e,treeNode:be,rowResize:fe,padding:E,verticalAlign:O,slots:ye}=i,Ce=ae.verticalAlign,Z=Z.actived,n=n[l],M=i.id,S=me||xe,S=S?renderer.get(S.name):null,De=S?S.tableCellClassName||S.cellClassName:null,Re=S?S.tableCellStyle||S.cellStyle:"";let Ee=f.showAll;var f=ke.getColumnIndex(i),I=ke.getVTColumnIndex(i),Oe=(0,_utils.isEnableConf)(me),m=m?n.resizeHeight:0;let T=t?i.fixed!==t:i.fixed&&X;X=_xeUtils.default.eqNull(E)?null===g?ae.padding:g:E,g=_xeUtils.default.eqNull(R)?ee:R,E="ellipsis"===g;let k="title"===g,z=!0===g||"tooltip"===g;R=ee||k||z||E,g=_xeUtils.default.isBoolean(i.resizable)?i.resizable:ve.resizable||d,d=!!de,de=0<m;let Me;m={},we=we||(S?S.tableCellAlign:"")||c,S=_xeUtils.default.eqNull(O)?Ce:O,c=w[l+":"+M],Ce=v&&b.showMessage&&("default"===b.message?u||1<h.length:"inline"===b.message),O={colid:M};let q={$table:ke,$grid:ke.xegrid,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:r,$rowIndex:L,_rowIndex:o,column:i,columnIndex:f,$columnIndex:j,_columnIndex:I,fixed:t,type:renderType,isHidden:!!T,level:U,visibleData:le,data:h,items:s},A=!1,Se=!1;if((A=y.drag?"row"===C.trigger||i.dragSort&&"cell"===C.trigger:A)&&(Se=!(!D||!D(q))),(k||z||Ee||p)&&(m.onMouseenter=e=>{Xe()||(k?(0,_dom.updateCellTitle)(e.currentTarget,i):(z||Ee)&&ke.triggerBodyTooltipEvent(e,q),ke.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},q),e))}),(z||Ee||p)&&(m.onMouseleave=e=>{Xe()||((z||Ee)&&ke.handleTargetLeaveEvent(e),ke.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},q),e))}),(A||re.range||K)&&(m.onMousedown=e=>{ke.triggerCellMousedownEvent(e,q)}),A&&(m.onMouseup=ke.triggerCellMouseupEvent),m.onClick=e=>{ke.triggerCellClickEvent(e,q)},m.onDblclick=e=>{ke.triggerCellDblclickEvent(e,q)},Q.length){w=(0,_util.mergeBodyMethod)(Q,o,I);if(w){var{rowspan:v,colspan:u}=w;if(!v||!u)return null;1<v&&(O.rowspan=v),1<u&&(O.colspan=u)}}else if(P){var{rowspan:e=1,colspan:r=1}=P(q)||{};if(!e||!r)return null;1<e&&(O.rowspan=e),1<r&&(O.colspan=r)}!(T=T&&Q&&(1<O.colspan||1<O.rowspan)?!1:T)&&V&&(me||xe)&&(oe.showStatus||oe.showUpdateStatus)&&(Me=ke.isUpdateByRow(a,i.field));L=x&&!R,f=J&&(n.resizeHeight||ae.height||y.height||n.height)||ne,le=j===F.length-1,h=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let Ie=!1;(x&&(o<te.visibleStartIndex-te.preloadSize||o>te.visibleEndIndex+te.preloadSize)||G&&!i.fixed&&(I<_.visibleStartIndex-_.preloadSize||I>_.visibleEndIndex+_.preloadSize))&&(Ie=!0);s={},x||R||d||de?s.height=f+"px":s.minHeight=f+"px",C=[];T&&ee?C.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":k,"c--tooltip":z,"c--ellipsis":E}],style:s})):(C.push(...Ye(q,f),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":k,"c--tooltip":z,"c--ellipsis":E}],style:s,title:k?ke.getCellLabel(a,i):null},Ie?[]:[(0,_vue.h)("div",{colid:M,rowid:l,class:"vxe-cell--wrapper"},i.renderCell(q))])),Ce&&c&&(D=c.rule,p=ye?ye.valid:null,re=Object.assign(Object.assign(Object.assign({},q),c),{rule:c}),C.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(b.className,re)],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")},[p?ke.callSlot(p,re):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},c.content)]])]))));let Te=!1;return K&&pe.area&&ge&&((I||!0!==ge)&&ge!==i.field||(Te=!0)),!T&&g&&ie&&C.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!H||"none"===H}],onMousedown:e=>ke.handleColResizeMousedownEvent(e,t,q),onDblclick:e=>ke.handleColResizeDblclickEvent(e,q)})),(fe||se)&&y.resizable&&C.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>ke.handleRowResizeMousedownEvent(e,q),onDblclick:e=>ke.handleRowResizeDblclickEvent(e,q)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",M,S?"col--vertical-"+S:"",we?"col--"+we:"",he?"col--"+he:"",{"col--last":le,"col--tree-node":be,"col--edit":Oe,"col--ellipsis":R,"col--cs-height":d,"col--rs-height":de,"col--to-row":Te,"col--auto-height":L,"fixed--width":!h,"fixed--hidden":T,"is--padding":X,"is--drag-cell":A&&(ue||ce||!U),"is--drag-disabled":Se,"col--dirty":Me,"col--active":V&&Oe&&Z.row===a&&(Z.column===i||"row"===oe.mode),"col--valid-error":!!c,"col--current":Y===i},(0,_dom.getPropClass)(De,q),(0,_dom.getPropClass)(_e,q),(0,_dom.getPropClass)(B,q)],key:N||G||x||ve.useKey||y.useKey||ve.drag?M:j},O),{style:Object.assign({},_xeUtils.default.isFunction(Re)?Re(q):Re,_xeUtils.default.isFunction(W)?W(q):W)}),m),$&&T?[]:C)},Q=(m,w,_,b)=>{let{stripe:f,rowKey:y,highlightHoverRow:C,rowClassName:D,rowStyle:R,editConfig:E,treeConfig:O}=ze,{hasFixedColumn:M,treeExpandedMaps:S,isColLoading:I,scrollXLoad:T,scrollYLoad:k,isAllOverflow:z,rowExpandedMaps:q,expandColumn:A,selectRadioRow:$,pendingRowMaps:U,isDragColMove:L}=qe,j=Ae.fullAllDataRowIdData,F=Ne.value,N=e.value,H=c.value,B=$e.value,W=We.value,P=Pe.value,K=l.value,{transform:V,seqMode:X}=H,Y=H.children||H.childrenField,G=[];return _.forEach((t,a)=>{var e={};let r,o=(r=ke.getRowIndex(t),(W.isHover||C)&&(e.onMouseenter=e=>{Xe()||ke.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{Xe()||ke.clearHoverRow()}),(0,_util.getRowid)(ke,t));var l=j[o];let i=0,s=-1,n=0;l&&(i=l.level,s=O&&V&&"increasing"===X?l._index+1:l.seq,n=l._index);var l={$table:ke,seq:s,rowid:o,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},d=A&&!!q[o];let u=!1,c=[],v=!1;E&&(v=ke.isInsertByRow(t)),!O||k||V||(c=t[Y],u=c&&0<c.length&&!!S[o]),!W.drag||O&&!V||(e.onDragstart=ke.handleRowDragDragstartEvent,e.onDragend=ke.handleRowDragDragendEvent,e.onDragover=ke.handleRowDragDragoverEvent);var p,g,h=["vxe-body--row",O?"row--level-"+i:"",{"row--stripe":f&&(n+1)%2==0,"is--new":v,"is--expand-row":d,"is--expand-tree":u,"row--new":v&&(B.showStatus||B.showInsertStatus),"row--radio":N.highlight&&ke.eqRow($,t),"row--checked":F.highlight&&ke.isCheckedByCheckboxRow(t),"row--pending":!!U[o]},(0,_dom.getPropClass)(D,l)];let x=b.map((e,l)=>Z(s,o,m,w,i,t,r,a,n,e,l,b,_));G.push(!I&&P.drag&&K.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(L?"":"-disabled"),tag:"tr",class:h,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(l):R:null,key:y||T||k||W.useKey||W.drag||P.drag||O?o:a},e),{default:()=>x}):(0,_vue.h)("tr",Object.assign({class:h,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(l):R:null,key:y||T||k||W.useKey||W.drag||P.drag||O?o:a},e),x)),d&&({height:h,padding:l}=J.value,d={},p=(h&&(d.height=h+"px"),O&&(d.paddingLeft=i*H.indent+30+"px"),A).showOverflow,p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?z:p,g={$table:ke,seq:s,column:A,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},G.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+o,style:R?_xeUtils.default.isFunction(R)?R(g):R:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":m&&!M,"col--ellipsis":p},colspan:b.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":h},style:d},[A.renderData(g)])])]))),u&&G.push(...Q(m,w,c,b))}),G};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.fixedType,l=Ae.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=U,l[e+"scroll"]=L,l[e+"table"]=j,l[e+"colgroup"]=F,l[e+"list"]=N,l[e+"xSpace"]=H,l[e+"ySpace"]=B,l[e+"emptyBlock"]=W})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=Ae.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=z.slots;let{fixedColumn:l,fixedType:t,tableColumn:a}=T;var{spanMethod:r,footerSpanMethod:o,mouseConfig:i}=ze,{isGroup:s,tableData:n,isRowLoading:d,isColLoading:u,scrollXLoad:c,scrollYLoad:v,isAllOverflow:p,isDragRowMove:g,expandColumn:h,dragRow:x,dragCol:m}=qe,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:b}=Ae,f=We.value,y=q.value,C=Ue.value,D=Ke.value,R=A.value,E=$.value;let O=n,M=a,S=!(c||v||p)||h||r||o?!1:!0;t&&(M=w,S)&&(M=l||[]),v&&x&&2<O.length&&(n=_[(0,_util.getRowid)(ke,x)])&&(p=n._index,h=O[0],r=O[O.length-1],o=_[(0,_util.getRowid)(ke,h)],w=_[(0,_util.getRowid)(ke,r)],o)&&w&&(n=o._index,h=w._index,p<n?O=[x].concat(O):h<p&&(O=O.concat([x]))),t||s||c&&m&&2<M.length&&(_=b[m.id])&&(r=_._index,o=M[0],w=M[M.length-1],n=b[o.id],h=b[w.id],n)&&h&&(p=n._index,x=h._index,r<p?M=[m].concat(M):x<r&&(M=M.concat([m])));let I;s=e?e.empty:null,I=s?ke.callSlot(s,{$table:ke,$grid:ke.xegrid}):(_=(c=y.name?renderer.get(y.name):null)?c.renderTableEmpty||c.renderTableEmptyView||c.renderEmpty:null)?(0,_vn.getSlotVNs)(_(y,{$table:ke})):ze.emptyText||getI18n("vxe.table.emptyText"),o={onScroll(e){ke.triggerBodyScrollEvent(e,t)}};return(v||R||E)&&(o.onWheel=ke.triggerBodyWheelEvent),(0,_vue.h)("div",{ref:U,class:["vxe-table--body-wrapper",t?`fixed-${t}--wrapper`:"body--wrapper"],xid:k},[(0,_vue.h)("div",Object.assign({ref:L,class:"vxe-table--body-inner-wrapper"},o),[t?renderEmptyElement(ke):(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:B,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:j,class:"vxe-table--body",xid:k,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:F},M.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),!d&&!u&&f.drag&&D.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:N,name:"vxe-body--row-list"+(g?"":"-disabled"),tag:"tbody"},{default:()=>Q(t,S,O,M)}):(0,_vue.h)("tbody",{ref:N},Q(t,S,O,M))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),i&&C.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},C.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){ke.triggerCellAreaExtendMousedownEvent&&ke.triggerCellAreaExtendMousedownEvent(e,{$table:ke,fixed:t,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(ke),t?renderEmptyElement(ke):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:W},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},I)])])])}}});