vxe-table 4.4.6 → 4.5.0-beta.2

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 (133) hide show
  1. package/es/edit/src/hook.js +2 -2
  2. package/es/export/src/hook.js +21 -12
  3. package/es/icon/style/{iconfont.1688790429861.ttf → iconfont.1689121467376.ttf} +0 -0
  4. package/es/icon/style/iconfont.1689121467376.woff +0 -0
  5. package/es/icon/style/iconfont.1689121467376.woff2 +0 -0
  6. package/es/icon/style.css +25 -1
  7. package/{lib/icon/style/iconfont.1688790429861.ttf → es/iconfont.1689121467376.ttf} +0 -0
  8. package/es/iconfont.1689121467376.woff +0 -0
  9. package/es/iconfont.1689121467376.woff2 +0 -0
  10. package/es/locale/lang/en-US.js +6 -2
  11. package/es/locale/lang/es-ES.js +9 -5
  12. package/es/locale/lang/ja-JP.js +5 -2
  13. package/es/locale/lang/zh-CN.js +6 -2
  14. package/es/locale/lang/zh-TC.js +6 -2
  15. package/es/style.css +1 -1
  16. package/es/style.min.css +1 -1
  17. package/es/table/src/body.js +7 -7
  18. package/es/table/src/columnInfo.js +7 -0
  19. package/es/table/src/table.js +121 -65
  20. package/es/table/src/util.js +16 -0
  21. package/es/table/style.css +6 -12
  22. package/es/toolbar/src/toolbar.js +86 -39
  23. package/es/toolbar/style.css +45 -14
  24. package/es/tools/log.js +1 -1
  25. package/es/v-x-e-table/index.js +1 -1
  26. package/es/v-x-e-table/src/conf.js +19 -11
  27. package/es/v-x-e-table/style.css +25 -1
  28. package/es/validator/src/hook.js +61 -31
  29. package/es/vxe-icon/style.css +25 -1
  30. package/es/vxe-table/style.css +6 -12
  31. package/es/vxe-toolbar/style.css +45 -14
  32. package/helper/vetur/attributes.json +57 -13
  33. package/helper/vetur/tags.json +12 -1
  34. package/lib/edit/src/hook.js +2 -2
  35. package/lib/edit/src/hook.min.js +1 -1
  36. package/lib/export/src/hook.js +23 -12
  37. package/lib/export/src/hook.min.js +1 -1
  38. package/lib/{iconfont.1688790429861.ttf → icon/style/iconfont.1689121467376.ttf} +0 -0
  39. package/lib/icon/style/iconfont.1689121467376.woff +0 -0
  40. package/lib/icon/style/iconfont.1689121467376.woff2 +0 -0
  41. package/lib/icon/style/style.css +25 -1
  42. package/lib/icon/style/style.min.css +25 -1
  43. package/{es/iconfont.1688790429861.ttf → lib/iconfont.1689121467376.ttf} +0 -0
  44. package/lib/iconfont.1689121467376.woff +0 -0
  45. package/lib/iconfont.1689121467376.woff2 +0 -0
  46. package/lib/index.umd.js +314 -147
  47. package/lib/index.umd.min.js +1 -1
  48. package/lib/locale/lang/en-US.js +6 -2
  49. package/lib/locale/lang/en-US.min.js +1 -1
  50. package/lib/locale/lang/en-US.umd.js +6 -2
  51. package/lib/locale/lang/es-ES.js +9 -5
  52. package/lib/locale/lang/es-ES.min.js +1 -1
  53. package/lib/locale/lang/es-ES.umd.js +9 -5
  54. package/lib/locale/lang/ja-JP.js +5 -2
  55. package/lib/locale/lang/ja-JP.min.js +1 -1
  56. package/lib/locale/lang/ja-JP.umd.js +5 -2
  57. package/lib/locale/lang/zh-CN.js +6 -2
  58. package/lib/locale/lang/zh-CN.min.js +1 -1
  59. package/lib/locale/lang/zh-CN.umd.js +6 -2
  60. package/lib/locale/lang/zh-HK.min.js +1 -1
  61. package/lib/locale/lang/zh-HK.umd.js +6 -2
  62. package/lib/locale/lang/zh-MO.min.js +1 -1
  63. package/lib/locale/lang/zh-MO.umd.js +6 -2
  64. package/lib/locale/lang/zh-TC.js +6 -2
  65. package/lib/locale/lang/zh-TC.min.js +1 -1
  66. package/lib/locale/lang/zh-TC.umd.js +6 -2
  67. package/lib/locale/lang/zh-TW.min.js +1 -1
  68. package/lib/locale/lang/zh-TW.umd.js +6 -2
  69. package/lib/style.css +1 -1
  70. package/lib/style.min.css +1 -1
  71. package/lib/table/src/body.js +8 -8
  72. package/lib/table/src/body.min.js +1 -1
  73. package/lib/table/src/columnInfo.js +7 -0
  74. package/lib/table/src/columnInfo.min.js +1 -1
  75. package/lib/table/src/table.js +122 -73
  76. package/lib/table/src/table.min.js +1 -1
  77. package/lib/table/src/util.js +17 -0
  78. package/lib/table/src/util.min.js +1 -1
  79. package/lib/table/style/style.css +6 -12
  80. package/lib/table/style/style.min.css +1 -1
  81. package/lib/toolbar/src/toolbar.js +54 -14
  82. package/lib/toolbar/src/toolbar.min.js +1 -1
  83. package/lib/toolbar/style/style.css +45 -14
  84. package/lib/toolbar/style/style.min.css +1 -1
  85. package/lib/tools/log.js +1 -1
  86. package/lib/tools/log.min.js +1 -1
  87. package/lib/v-x-e-table/index.js +1 -1
  88. package/lib/v-x-e-table/index.min.js +1 -1
  89. package/lib/v-x-e-table/src/conf.js +12 -3
  90. package/lib/v-x-e-table/src/conf.min.js +1 -1
  91. package/lib/v-x-e-table/style/style.css +25 -1
  92. package/lib/v-x-e-table/style/style.min.css +1 -1
  93. package/lib/validator/src/hook.js +62 -33
  94. package/lib/validator/src/hook.min.js +1 -1
  95. package/lib/vxe-icon/style/style.css +25 -1
  96. package/lib/vxe-icon/style/style.min.css +1 -1
  97. package/lib/vxe-table/style/style.css +6 -12
  98. package/lib/vxe-table/style/style.min.css +1 -1
  99. package/lib/vxe-toolbar/style/style.css +45 -14
  100. package/lib/vxe-toolbar/style/style.min.css +1 -1
  101. package/package.json +1 -1
  102. package/packages/edit/src/hook.ts +2 -2
  103. package/packages/export/src/hook.ts +21 -12
  104. package/packages/locale/lang/en-US.ts +6 -2
  105. package/packages/locale/lang/es-ES.ts +9 -5
  106. package/packages/locale/lang/ja-JP.ts +5 -2
  107. package/packages/locale/lang/zh-CN.ts +6 -2
  108. package/packages/locale/lang/zh-TC.ts +6 -2
  109. package/packages/table/src/body.ts +7 -7
  110. package/packages/table/src/columnInfo.ts +8 -1
  111. package/packages/table/src/table.ts +113 -53
  112. package/packages/table/src/util.ts +17 -0
  113. package/packages/toolbar/src/toolbar.ts +87 -40
  114. package/packages/v-x-e-table/src/conf.ts +11 -3
  115. package/packages/validator/src/hook.ts +71 -30
  116. package/styles/icon/iconfont.ttf +0 -0
  117. package/styles/icon/iconfont.woff +0 -0
  118. package/styles/icon/iconfont.woff2 +0 -0
  119. package/styles/icon.scss +25 -1
  120. package/styles/table.scss +7 -21
  121. package/styles/toolbar.scss +36 -9
  122. package/types/column.d.ts +1 -0
  123. package/types/table.d.ts +23 -6
  124. package/types/toolbar.d.ts +9 -1
  125. package/types/validator.d.ts +2 -3
  126. package/es/icon/style/iconfont.1688790429861.woff +0 -0
  127. package/es/icon/style/iconfont.1688790429861.woff2 +0 -0
  128. package/es/iconfont.1688790429861.woff +0 -0
  129. package/es/iconfont.1688790429861.woff2 +0 -0
  130. package/lib/icon/style/iconfont.1688790429861.woff +0 -0
  131. package/lib/icon/style/iconfont.1688790429861.woff2 +0 -0
  132. package/lib/iconfont.1688790429861.woff +0 -0
  133. package/lib/iconfont.1688790429861.woff2 +0 -0
@@ -176,8 +176,8 @@ var _default = (0, _vue.defineComponent)({
176
176
  currentColumn = tableReactData.currentColumn,
177
177
  mergeList = tableReactData.mergeList,
178
178
  editStore = tableReactData.editStore,
179
- validStore = tableReactData.validStore,
180
- isAllOverflow = tableReactData.isAllOverflow;
179
+ isAllOverflow = tableReactData.isAllOverflow,
180
+ validErrorMaps = tableReactData.validErrorMaps;
181
181
  var afterFullData = tableInternalData.afterFullData;
182
182
  var validOpts = computeValidOpts.value;
183
183
  var checkboxOpts = computeCheckboxOpts.value;
@@ -213,7 +213,7 @@ var _default = (0, _vue.defineComponent)({
213
213
  var isDirty;
214
214
  var tdOns = {};
215
215
  var cellAlign = align || allAlign;
216
- var hasValidError = validStore.row === row && validStore.column === column;
216
+ var errorValidItem = validErrorMaps["".concat(rowid, ":").concat(column.id)];
217
217
  var showValidTip = editRules && validOpts.showMessage;
218
218
  var attrs = {
219
219
  colid: column.id
@@ -356,19 +356,19 @@ var _default = (0, _vue.defineComponent)({
356
356
  },
357
357
  title: showTitle ? $xetable.getCellLabel(row, column) : null
358
358
  }, column.renderCell(params))], false));
359
- if (showValidTip && hasValidError) {
359
+ if (showValidTip && errorValidItem) {
360
360
  tdVNs.push((0, _vue.h)('div', {
361
361
  class: 'vxe-cell--valid',
362
- style: validStore.rule && validStore.rule.maxWidth ? {
363
- width: "".concat(validStore.rule.maxWidth, "px")
362
+ style: errorValidItem.rule && errorValidItem.rule.maxWidth ? {
363
+ width: "".concat(errorValidItem.rule.maxWidth, "px")
364
364
  } : null
365
365
  }, [(0, _vue.h)('span', {
366
366
  class: 'vxe-cell--valid-msg'
367
- }, validStore.content)]));
367
+ }, errorValidItem.content)]));
368
368
  }
369
369
  }
370
370
  return (0, _vue.h)('td', __assign(__assign(__assign({
371
- class: ['vxe-body--column', column.id, (_a = {}, _a["col--".concat(cellAlign)] = cellAlign, _a["col--".concat(type)] = type, _a['col--last'] = $columnIndex === columns.length - 1, _a['col--tree-node'] = treeNode, _a['col--edit'] = isEdit, _a['col--ellipsis'] = hasEllipsis, _a['fixed--hidden'] = fixedHiddenColumn, _a['col--dirty'] = isDirty, _a['col--actived'] = editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row'), _a['col--valid-error'] = hasValidError, _a['col--current'] = currentColumn === column, _a), (0, _dom.getPropClass)(compCellClassName, params), (0, _dom.getPropClass)(className, params), (0, _dom.getPropClass)(allCellClassName, params)],
371
+ class: ['vxe-body--column', column.id, (_a = {}, _a["col--".concat(cellAlign)] = cellAlign, _a["col--".concat(type)] = type, _a['col--last'] = $columnIndex === columns.length - 1, _a['col--tree-node'] = treeNode, _a['col--edit'] = isEdit, _a['col--ellipsis'] = hasEllipsis, _a['fixed--hidden'] = fixedHiddenColumn, _a['col--dirty'] = isDirty, _a['col--actived'] = editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row'), _a['col--valid-error'] = !!errorValidItem, _a['col--current'] = currentColumn === column, _a), (0, _dom.getPropClass)(compCellClassName, params), (0, _dom.getPropClass)(className, params), (0, _dom.getPropClass)(allCellClassName, params)],
372
372
  key: columnKey || columnOpts.useKey ? column.id : $columnIndex
373
373
  }, attrs), {
374
374
  style: Object.assign({
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("./util"),_dom=require("../../tools/dom"),_utils=require("../../tools/utils"),_vn=require("../../tools/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var l,t=1,o=arguments.length;t<o;t++)for(var r in l=arguments[t])Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);return e}).apply(this,arguments)},__spreadArray=function(e,l,t){if(t||2===arguments.length)for(var o,r=0,n=l.length;r<n;r++)!o&&r in l||((o=o||Array.prototype.slice.call(l,0,r))[r]=l[r]);return e.concat(o||Array.prototype.slice.call(l))},renderType="body",lineOffsetSizes={mini:3,small:2,medium:1},_default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup:function(g){function c(){if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0}function u(e,l){var t=1;if(e){var o=e[d.value.children];if(ne.isTreeExpandByRow(e))for(var r=0;r<o.length;r++)t+=u(o[r],l)}return t}function re(e){var l=e.row,t=e.column,o=ae.treeConfig,r=d.value,n=t.slots,t=t.treeNode,l=se.fullAllDataRowIdData[(0,_util.getRowid)(ne,l)],a=0,i=0,s=[];return l&&(a=l.level,i=l._index,s=l.items),n&&n.line?ne.callSlot(n.line,e):o&&t&&r.line?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:"".concat((l=e,n=s,o=1,(t=i)&&(o=u(n[t-1],l)),ie.rowHeight*o-(t?1:12-c())),"px"),left:"".concat(a*r.indent+(a?2-c():0)+16,"px")}})])]:[]}function _(e,l,t,o){(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(function(){(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o)},300))}function o(e){var l=g.fixedType,t=ae.highlightHoverRow,o=ie.scrollXLoad,r=ie.scrollYLoad,n=se.elemStore,a=se.lastScrollTop,i=se.lastScrollLeft,s=ve.value,c=U.value,u=w.value,d=B.value,v=b.value,p=T.value,f=S.value,c=c?c.$el:null,d=d?d.$el:null,u=u.$el,v=v?v.$el:null,p=p?p.$el:null,h=(h=n["main-body-ySpace"])?h.value:null,n=(n=n["main-body-xSpace"])?n.value:null,h=(r&&h?h:u).clientHeight,n=(o&&n?n:u).clientWidth,f=f.scrollTop,x=u.scrollLeft,i=x!==i,a=f!==a;se.lastScrollTop=f,se.lastScrollLeft=x,se.lastScrollTime=Date.now(),(s.isHover||t)&&ne.clearHoverRow(),v&&"left"===l?(f=v.scrollTop,_(0,f,u,p)):p&&"right"===l?(f=p.scrollTop,_(0,f,u,v)):(i&&(c&&(c.scrollLeft=u.scrollLeft),d)&&(d.scrollLeft=u.scrollLeft),(v||p)&&(ne.checkScrolling(),a)&&_(0,f,v,p)),o&&i&&ne.triggerScrollXEvent(e),r&&a&&ne.triggerScrollYEvent(e),ne.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:f,scrollLeft:x,scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,bodyHeight:h,bodyWidth:n,isX:i,isY:a},e)}function k(e){var l=e.deltaY,t=e.deltaX,o=ae.highlightHoverRow,r=ie.scrollYLoad,n=se.lastScrollTop,a=se.lastScrollLeft,i=ve.value,s=w.value,c=S.value,s=s.$el,u=l<0;(u?c.scrollTop<=0:c.scrollTop>=c.scrollHeight-c.clientHeight)||(c=c.scrollTop+l,t=(s=s.scrollLeft+t)!==a,(a=c!==n)&&(e.preventDefault(),se.lastScrollTop=c,se.lastScrollLeft=s,se.lastScrollTime=Date.now(),(i.isHover||o)&&ne.clearHoverRow(),v(e,u,l,t,a),r)&&ne.triggerScrollYEvent(e))}var r,m,ne=(0,_vue.inject)("$xetable",{}),l=(0,_vue.inject)("xesize",null),y=ne.xID,ae=ne.props,q=ne.context,ie=ne.reactData,se=ne.internalData,e=ne.getRefMaps(),U=e.refTableHeader,w=e.refTableBody,B=e.refTableFooter,b=e.refTableLeftBody,T=e.refTableRightBody,e=ne.getComputeMaps(),ce=e.computeEditOpts,X=e.computeMouseOpts,ue=e.computeSYOpts,Y=e.computeEmptyOpts,W=e.computeKeyboardOpts,fe=e.computeTooltipOpts,t=e.computeRadioOpts,N=e.computeExpandOpts,d=e.computeTreeOpts,de=e.computeCheckboxOpts,he=e.computeValidOpts,ve=e.computeRowOpts,xe=e.computeColumnOpts,S=(0,_vue.ref)(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),E=(0,_vue.ref)(),H=(0,_vue.ref)(),pe=function(){var e=ae.delayHover,l=se.lastScrollTime;return se._isResize||l&&Date.now()<l+e},j=function(e,l,t,q,o,r,n,a,i,s,U,A){var c,B=ae.columnKey,u=ae.showOverflow,X=ae.cellClassName,d=ae.cellStyle,v=ae.align,p=ae.spanMethod,Y=ae.mouseConfig,f=ae.editConfig,W=ae.editRules,N=ae.tooltipConfig,j=ie.tableData,h=ie.overflowX,V=ie.scrollYLoad,F=ie.currentColumn,x=ie.mergeList,g=ie.editStore,_=ie.validStore,P=ie.isAllOverflow,K=se.afterFullData,m=he.value,z=de.value,y=ce.value,w=fe.value,b=ve.value,T=ue.value,G=xe.value,J=i.type,Q=i.cellRender,S=i.editRender,C=i.align,O=i.showOverflow,Z=i.className,ee=i.treeNode,g=g.actived,T=T.rHeight,b=b.height,L=S||Q,L=L?_vXETable.VXETable.renderer.get(L.name):null,le=L?L.cellClassName:"",L=L?L.cellStyle:"",R=w.showAll,w=ne.getColumnIndex(i),te=ne.getVTColumnIndex(i),oe=(0,_utils.isEnableConf)(S),h=t?i.fixed!==t:i.fixed&&h,O=_xeUtils.default.isUndefined(O)||_xeUtils.default.isNull(O)?u:O,E="ellipsis"===O,H="title"===O,I=!0===O||"tooltip"===O,O=H||I||E,M={},C=C||v,v=_.row===o&&_.column===i,W=W&&m.showMessage,m={colid:i.id},D={$table:ne,$grid:ne.xegrid,seq:e,rowid:l,row:o,rowIndex:r,$rowIndex:n,_rowIndex:a,column:i,columnIndex:w,$columnIndex:s,_columnIndex:te,fixed:t,type:renderType,isHidden:h,level:q,visibleData:K,data:j,items:A};if(V&&!O&&(E=O=!0),(H||I||R||N)&&(M.onMouseenter=function(e){pe()||(H?(0,_dom.updateCellTitle)(e.currentTarget,i):(I||R)&&ne.triggerBodyTooltipEvent(e,D),ne.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},D),e))}),(I||R||N)&&(M.onMouseleave=function(e){pe()||((I||R)&&ne.handleTargetLeaveEvent(e),ne.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},D),e))}),(z.range||Y)&&(M.onMousedown=function(e){ne.triggerCellMousedownEvent(e,D)}),M.onClick=function(e){ne.triggerCellClickEvent(e,D)},M.onDblclick=function(e){ne.triggerCellDblclickEvent(e,D)},x.length){e=(0,_util.mergeBodyMethod)(x,a,te);if(e){var $=e.rowspan,k=e.colspan;if(!$||!k)return null;1<$&&(m.rowspan=$),1<k&&(m.colspan=k)}}else if(p){l=p(D)||{},r=l.rowspan,$=void 0===r?1:r,n=l.colspan,k=void 0===n?1:n;if(!$||!k)return null;1<$&&(m.rowspan=$),1<k&&(m.colspan=k)}!(h=h&&x&&(1<m.colspan||1<m.rowspan)?!1:h)&&f&&(S||Q)&&(y.showStatus||y.showUpdateStatus)&&(c=ne.isUpdateByRow(o,i.field));w=[];return h&&u&&P?w.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:O&&(T||b)?"".concat(T||b,"px"):""}})):(w.push.apply(w,__spreadArray(__spreadArray([],re(D),!1),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:O&&(T||b)?"".concat(T||b,"px"):""},title:H?ne.getCellLabel(o,i):null},i.renderCell(D))],!1)),W&&v&&w.push((0,_vue.h)("div",{class:"vxe-cell--valid",style:_.rule&&_.rule.maxWidth?{width:"".concat(_.rule.maxWidth,"px")}:null},[(0,_vue.h)("span",{class:"vxe-cell--valid-msg"},_.content)]))),(0,_vue.h)("td",__assign(__assign(__assign({class:["vxe-body--column",i.id,((t={})["col--".concat(C)]=C,t["col--".concat(J)]=J,t["col--last"]=s===U.length-1,t["col--tree-node"]=ee,t["col--edit"]=oe,t["col--ellipsis"]=O,t["fixed--hidden"]=h,t["col--dirty"]=c,t["col--actived"]=f&&oe&&g.row===o&&(g.column===i||"row"===y.mode),t["col--valid-error"]=v,t["col--current"]=F===i,t),(0,_dom.getPropClass)(le,D),(0,_dom.getPropClass)(Z,D),(0,_dom.getPropClass)(X,D)],key:B||G.useKey?i.id:s},m),{style:Object.assign({height:O&&(T||b)?"".concat(T||b,"px"):""},_xeUtils.default.isFunction(L)?L(D):L,_xeUtils.default.isFunction(d)?d(D):d)}),M),w)},A=function(p,f,h){var x=ae.stripe,g=ae.rowKey,_=ae.highlightHoverRow,m=ae.rowClassName,y=ae.rowStyle,w=ae.showOverflow,b=ae.editConfig,T=ae.treeConfig,S=ie.hasFixedColumn,C=ie.treeExpandeds,O=ie.scrollYLoad,L=ie.rowExpandeds,R=ie.expandColumn,E=ie.selectRow,H=se.fullAllDataRowIdData,I=de.value,M=t.value,D=d.value,$=ce.value,k=ve.value,q=D.transform,U=[];return f.forEach(function(t,o){var e,l={},r=ne.getRowIndex(t),n=((k.isHover||_)&&(l.onMouseenter=function(e){pe()||ne.triggerHoverEvent(e,{row:t,rowIndex:r})},l.onMouseleave=function(){pe()||ne.clearHoverRow()}),(0,_util.getRowid)(ne,t)),a=H[n],i=0,s=-1,c=0,a=(a&&(i=a.level,s=a.seq,c=a._index),{$table:ne,seq:s,rowid:n,fixed:p,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:o,_rowIndex:c}),u=R&&L.length&&-1<ne.findRowIndexOf(L,t),d=!1,v=!1;b&&(v=ne.isInsertByRow(t)),T&&!O&&!q&&C.length&&(d=(e=t[D.children])&&e.length&&-1<ne.findRowIndexOf(C,t)),U.push((0,_vue.h)("tr",__assign({class:["vxe-body--row",T?"row--level-".concat(i):"",{"row--stripe":x&&(ne.getVTRowIndex(t)+1)%2==0,"is--new":v,"is--expand-row":u,"is--expand-tree":d,"row--new":v&&($.showStatus||$.showInsertStatus),"row--radio":M.highlight&&E===t,"row--checked":I.highlight&&ne.isCheckedByCheckboxRow(t)},(0,_dom.getPropClass)(m,a)],rowid:n,style:y?_xeUtils.default.isFunction(y)?y(a):y:null,key:g||k.useKey||T?n:o},l),h.map(function(e,l){return j(s,n,p,i,t,r,o,c,e,l,h,f)}))),u&&(e={},(d=N.value.height)&&(e.height="".concat(d,"px")),T&&(e.paddingLeft="".concat(i*D.indent+30,"px")),v=R.showOverflow,a=_xeUtils.default.isUndefined(v)||_xeUtils.default.isNull(v)?w:v,u={$table:ne,seq:s,column:R,fixed:p,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:o,_rowIndex:c},U.push((0,_vue.h)("tr",__assign({class:"vxe-body--expanded-row",key:"expand_".concat(n),style:y?_xeUtils.default.isFunction(y)?y(u):y:null},l),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":p&&!S,"col--ellipsis":a},colspan:h.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":d},style:e},[R.renderData(u)])])]))),T&&!O&&!q&&C.length&&(v=t[D.children])&&v.length&&-1<ne.findRowIndexOf(C,t)&&U.push.apply(U,A(p,v,h))}),U},I=0,M=0,D=0,$=!1,v=function(r,n,e,a,i){function s(){var e,l,t,o;D<I&&(e=g.fixedType,M=Math.max(5,Math.floor(1.5*M)),I<(D+=M)&&(M-=D-I),o=f.scrollTop,l=f.clientHeight,t=f.scrollHeight,o=o+M*(n?-1:1),f.scrollTop=o,v&&(v.scrollTop=o),p&&(p.scrollTop=o),(n?o<t-l:0<=o)&&(m=setTimeout(s,10)),ne.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,scrollHeight:f.scrollHeight,scrollWidth:f.scrollWidth,bodyHeight:h,bodyWidth:x,isX:a,isY:i},r))}var l=se.elemStore,t=ie.scrollXLoad,o=ie.scrollYLoad,c=w.value,u=b.value,d=T.value,v=u?u.$el:null,p=d?d.$el:null,f=c.$el,u=l["main-body-ySpace"],d=u?u.value:null,c=l["main-body-xSpace"],u=c?c.value:null,h=(o&&d?d:f).clientHeight,x=(t&&u?u:f).clientWidth,l=$===n?Math.max(0,I-D):0;$=n,I=Math.abs(n?e-l:e+l),D=M=0,clearTimeout(m);s()};(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=g.fixedType,l=se.elemStore,e="".concat(e||"main","-body-"),t=S.value;l["".concat(e,"wrapper")]=S,l["".concat(e,"table")]=C,l["".concat(e,"colgroup")]=O,l["".concat(e,"list")]=L,l["".concat(e,"xSpace")]=R,l["".concat(e,"ySpace")]=E,l["".concat(e,"emptyBlock")]=H,t.onscroll=o,t._onscroll=o})}),(0,_vue.onBeforeUnmount)(function(){var e=S.value;clearTimeout(m),e._onscroll=null,e.onscroll=null}),(0,_vue.onUnmounted)(function(){var e=g.fixedType,l=se.elemStore,e="".concat(e||"main","-body-");l["".concat(e,"wrapper")]=null,l["".concat(e,"table")]=null,l["".concat(e,"colgroup")]=null,l["".concat(e,"list")]=null,l["".concat(e,"xSpace")]=null,l["".concat(e,"ySpace")]=null,l["".concat(e,"emptyBlock")]=null});return function(){var e=g.fixedColumn,l=g.fixedType,t=g.tableColumn,o=ae.keyboardConfig,r=ae.showOverflow,n=ae.spanMethod,a=ae.mouseConfig,i=ie.tableData,s=ie.mergeList,c=ie.scrollYLoad,u=ie.isAllOverflow,d=se.visibleColumn,v=q.slots,p=ue.value,f=Y.value,h=W.value,x=X.value;return l&&(t=ie.expandColumn||!(c||r&&u)||s.length||n||o&&h.isMerge?d:e),u=v.empty?ne.callSlot(v.empty,{$table:ne,$grid:ne.xegrid}):(r=(c=f.name?_vXETable.VXETable.renderer.get(f.name):null)?c.renderEmpty:null)?(0,_vn.getSlotVNs)(r(f,{$table:ne})):ae.emptyText||_conf.default.i18n("vxe.table.emptyText"),(0,_vue.h)("div",__assign({ref:S,class:["vxe-table--body-wrapper",l?"fixed-".concat(l,"--wrapper"):"body--wrapper"],xid:y},"wheel"===p.mode?{onWheel:k}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:R,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:E,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:C,class:"vxe-table--body",xid:y,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:O},t.map(function(e,l){return(0,_vue.h)("col",{name:e.id,key:l})})),(0,_vue.h)("tbody",{ref:L},A(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),a&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown:function(e){ne.triggerCellExtendMousedownEvent(e,{$table:ne,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:H},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},u)])])}}});exports.default=_default;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("./util"),_dom=require("../../tools/dom"),_utils=require("../../tools/utils"),_vn=require("../../tools/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var l,t=1,o=arguments.length;t<o;t++)for(var r in l=arguments[t])Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);return e}).apply(this,arguments)},__spreadArray=function(e,l,t){if(t||2===arguments.length)for(var o,r=0,n=l.length;r<n;r++)!o&&r in l||((o=o||Array.prototype.slice.call(l,0,r))[r]=l[r]);return e.concat(o||Array.prototype.slice.call(l))},renderType="body",lineOffsetSizes={mini:3,small:2,medium:1},_default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup:function(g){function c(){if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0}function u(e,l){var t=1;if(e){var o=e[d.value.children];if(ne.isTreeExpandByRow(e))for(var r=0;r<o.length;r++)t+=u(o[r],l)}return t}function re(e){var l=e.row,t=e.column,o=ae.treeConfig,r=d.value,n=t.slots,t=t.treeNode,l=se.fullAllDataRowIdData[(0,_util.getRowid)(ne,l)],a=0,i=0,s=[];return l&&(a=l.level,i=l._index,s=l.items),n&&n.line?ne.callSlot(n.line,e):o&&t&&r.line?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:"".concat((l=e,n=s,o=1,(t=i)&&(o=u(n[t-1],l)),ie.rowHeight*o-(t?1:12-c())),"px"),left:"".concat(a*r.indent+(a?2-c():0)+16,"px")}})])]:[]}function _(e,l,t,o){(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(function(){(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o)},300))}function o(e){var l=g.fixedType,t=ae.highlightHoverRow,o=ie.scrollXLoad,r=ie.scrollYLoad,n=se.elemStore,a=se.lastScrollTop,i=se.lastScrollLeft,s=ve.value,c=U.value,u=w.value,d=B.value,v=b.value,p=T.value,f=S.value,c=c?c.$el:null,d=d?d.$el:null,u=u.$el,v=v?v.$el:null,p=p?p.$el:null,h=(h=n["main-body-ySpace"])?h.value:null,n=(n=n["main-body-xSpace"])?n.value:null,h=(r&&h?h:u).clientHeight,n=(o&&n?n:u).clientWidth,f=f.scrollTop,x=u.scrollLeft,i=x!==i,a=f!==a;se.lastScrollTop=f,se.lastScrollLeft=x,se.lastScrollTime=Date.now(),(s.isHover||t)&&ne.clearHoverRow(),v&&"left"===l?(f=v.scrollTop,_(0,f,u,p)):p&&"right"===l?(f=p.scrollTop,_(0,f,u,v)):(i&&(c&&(c.scrollLeft=u.scrollLeft),d)&&(d.scrollLeft=u.scrollLeft),(v||p)&&(ne.checkScrolling(),a)&&_(0,f,v,p)),o&&i&&ne.triggerScrollXEvent(e),r&&a&&ne.triggerScrollYEvent(e),ne.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:f,scrollLeft:x,scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,bodyHeight:h,bodyWidth:n,isX:i,isY:a},e)}function k(e){var l=e.deltaY,t=e.deltaX,o=ae.highlightHoverRow,r=ie.scrollYLoad,n=se.lastScrollTop,a=se.lastScrollLeft,i=ve.value,s=w.value,c=S.value,s=s.$el,u=l<0;(u?c.scrollTop<=0:c.scrollTop>=c.scrollHeight-c.clientHeight)||(c=c.scrollTop+l,t=(s=s.scrollLeft+t)!==a,(a=c!==n)&&(e.preventDefault(),se.lastScrollTop=c,se.lastScrollLeft=s,se.lastScrollTime=Date.now(),(i.isHover||o)&&ne.clearHoverRow(),v(e,u,l,t,a),r)&&ne.triggerScrollYEvent(e))}var r,m,ne=(0,_vue.inject)("$xetable",{}),l=(0,_vue.inject)("xesize",null),y=ne.xID,ae=ne.props,q=ne.context,ie=ne.reactData,se=ne.internalData,e=ne.getRefMaps(),U=e.refTableHeader,w=e.refTableBody,B=e.refTableFooter,b=e.refTableLeftBody,T=e.refTableRightBody,e=ne.getComputeMaps(),ce=e.computeEditOpts,X=e.computeMouseOpts,ue=e.computeSYOpts,Y=e.computeEmptyOpts,W=e.computeKeyboardOpts,fe=e.computeTooltipOpts,t=e.computeRadioOpts,N=e.computeExpandOpts,d=e.computeTreeOpts,de=e.computeCheckboxOpts,he=e.computeValidOpts,ve=e.computeRowOpts,xe=e.computeColumnOpts,S=(0,_vue.ref)(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),E=(0,_vue.ref)(),H=(0,_vue.ref)(),pe=function(){var e=ae.delayHover,l=se.lastScrollTime;return se._isResize||l&&Date.now()<l+e},j=function(e,l,t,q,o,r,n,a,i,s,U,A){var c,B=ae.columnKey,u=ae.showOverflow,X=ae.cellClassName,d=ae.cellStyle,v=ae.align,p=ae.spanMethod,Y=ae.mouseConfig,f=ae.editConfig,h=ae.editRules,W=ae.tooltipConfig,N=ie.tableData,x=ie.overflowX,j=ie.scrollYLoad,V=ie.currentColumn,g=ie.mergeList,_=ie.editStore,F=ie.isAllOverflow,P=ie.validErrorMaps,K=se.afterFullData,m=he.value,z=de.value,y=ce.value,w=fe.value,b=ve.value,T=ue.value,G=xe.value,J=i.type,Q=i.cellRender,S=i.editRender,C=i.align,O=i.showOverflow,Z=i.className,ee=i.treeNode,_=_.actived,T=T.rHeight,b=b.height,L=S||Q,L=L?_vXETable.VXETable.renderer.get(L.name):null,le=L?L.cellClassName:"",L=L?L.cellStyle:"",R=w.showAll,w=ne.getColumnIndex(i),te=ne.getVTColumnIndex(i),oe=(0,_utils.isEnableConf)(S),x=t?i.fixed!==t:i.fixed&&x,O=_xeUtils.default.isUndefined(O)||_xeUtils.default.isNull(O)?u:O,E="ellipsis"===O,H="title"===O,I=!0===O||"tooltip"===O,O=H||I||E,M={},C=C||v,v=P["".concat(l,":").concat(i.id)],P=h&&m.showMessage,h={colid:i.id},D={$table:ne,$grid:ne.xegrid,seq:e,rowid:l,row:o,rowIndex:r,$rowIndex:n,_rowIndex:a,column:i,columnIndex:w,$columnIndex:s,_columnIndex:te,fixed:t,type:renderType,isHidden:x,level:q,visibleData:K,data:N,items:A};if(j&&!O&&(E=O=!0),(H||I||R||W)&&(M.onMouseenter=function(e){pe()||(H?(0,_dom.updateCellTitle)(e.currentTarget,i):(I||R)&&ne.triggerBodyTooltipEvent(e,D),ne.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},D),e))}),(I||R||W)&&(M.onMouseleave=function(e){pe()||((I||R)&&ne.handleTargetLeaveEvent(e),ne.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},D),e))}),(z.range||Y)&&(M.onMousedown=function(e){ne.triggerCellMousedownEvent(e,D)}),M.onClick=function(e){ne.triggerCellClickEvent(e,D)},M.onDblclick=function(e){ne.triggerCellDblclickEvent(e,D)},g.length){m=(0,_util.mergeBodyMethod)(g,a,te);if(m){var $=m.rowspan,k=m.colspan;if(!$||!k)return null;1<$&&(h.rowspan=$),1<k&&(h.colspan=k)}}else if(p){e=p(D)||{},l=e.rowspan,$=void 0===l?1:l,r=e.colspan,k=void 0===r?1:r;if(!$||!k)return null;1<$&&(h.rowspan=$),1<k&&(h.colspan=k)}!(x=x&&g&&(1<h.colspan||1<h.rowspan)?!1:x)&&f&&(S||Q)&&(y.showStatus||y.showUpdateStatus)&&(c=ne.isUpdateByRow(o,i.field));n=[];return x&&u&&F?n.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:O&&(T||b)?"".concat(T||b,"px"):""}})):(n.push.apply(n,__spreadArray(__spreadArray([],re(D),!1),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":H,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:O&&(T||b)?"".concat(T||b,"px"):""},title:H?ne.getCellLabel(o,i):null},i.renderCell(D))],!1)),P&&v&&n.push((0,_vue.h)("div",{class:"vxe-cell--valid",style:v.rule&&v.rule.maxWidth?{width:"".concat(v.rule.maxWidth,"px")}:null},[(0,_vue.h)("span",{class:"vxe-cell--valid-msg"},v.content)]))),(0,_vue.h)("td",__assign(__assign(__assign({class:["vxe-body--column",i.id,((w={})["col--".concat(C)]=C,w["col--".concat(J)]=J,w["col--last"]=s===U.length-1,w["col--tree-node"]=ee,w["col--edit"]=oe,w["col--ellipsis"]=O,w["fixed--hidden"]=x,w["col--dirty"]=c,w["col--actived"]=f&&oe&&_.row===o&&(_.column===i||"row"===y.mode),w["col--valid-error"]=!!v,w["col--current"]=V===i,w),(0,_dom.getPropClass)(le,D),(0,_dom.getPropClass)(Z,D),(0,_dom.getPropClass)(X,D)],key:B||G.useKey?i.id:s},h),{style:Object.assign({height:O&&(T||b)?"".concat(T||b,"px"):""},_xeUtils.default.isFunction(L)?L(D):L,_xeUtils.default.isFunction(d)?d(D):d)}),M),n)},A=function(p,f,h){var x=ae.stripe,g=ae.rowKey,_=ae.highlightHoverRow,m=ae.rowClassName,y=ae.rowStyle,w=ae.showOverflow,b=ae.editConfig,T=ae.treeConfig,S=ie.hasFixedColumn,C=ie.treeExpandeds,O=ie.scrollYLoad,L=ie.rowExpandeds,R=ie.expandColumn,E=ie.selectRow,H=se.fullAllDataRowIdData,I=de.value,M=t.value,D=d.value,$=ce.value,k=ve.value,q=D.transform,U=[];return f.forEach(function(t,o){var e,l={},r=ne.getRowIndex(t),n=((k.isHover||_)&&(l.onMouseenter=function(e){pe()||ne.triggerHoverEvent(e,{row:t,rowIndex:r})},l.onMouseleave=function(){pe()||ne.clearHoverRow()}),(0,_util.getRowid)(ne,t)),a=H[n],i=0,s=-1,c=0,a=(a&&(i=a.level,s=a.seq,c=a._index),{$table:ne,seq:s,rowid:n,fixed:p,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:o,_rowIndex:c}),u=R&&L.length&&-1<ne.findRowIndexOf(L,t),d=!1,v=!1;b&&(v=ne.isInsertByRow(t)),T&&!O&&!q&&C.length&&(d=(e=t[D.children])&&e.length&&-1<ne.findRowIndexOf(C,t)),U.push((0,_vue.h)("tr",__assign({class:["vxe-body--row",T?"row--level-".concat(i):"",{"row--stripe":x&&(ne.getVTRowIndex(t)+1)%2==0,"is--new":v,"is--expand-row":u,"is--expand-tree":d,"row--new":v&&($.showStatus||$.showInsertStatus),"row--radio":M.highlight&&E===t,"row--checked":I.highlight&&ne.isCheckedByCheckboxRow(t)},(0,_dom.getPropClass)(m,a)],rowid:n,style:y?_xeUtils.default.isFunction(y)?y(a):y:null,key:g||k.useKey||T?n:o},l),h.map(function(e,l){return j(s,n,p,i,t,r,o,c,e,l,h,f)}))),u&&(e={},(d=N.value.height)&&(e.height="".concat(d,"px")),T&&(e.paddingLeft="".concat(i*D.indent+30,"px")),v=R.showOverflow,a=_xeUtils.default.isUndefined(v)||_xeUtils.default.isNull(v)?w:v,u={$table:ne,seq:s,column:R,fixed:p,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:o,_rowIndex:c},U.push((0,_vue.h)("tr",__assign({class:"vxe-body--expanded-row",key:"expand_".concat(n),style:y?_xeUtils.default.isFunction(y)?y(u):y:null},l),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":p&&!S,"col--ellipsis":a},colspan:h.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":d},style:e},[R.renderData(u)])])]))),T&&!O&&!q&&C.length&&(v=t[D.children])&&v.length&&-1<ne.findRowIndexOf(C,t)&&U.push.apply(U,A(p,v,h))}),U},I=0,M=0,D=0,$=!1,v=function(r,n,e,a,i){function s(){var e,l,t,o;D<I&&(e=g.fixedType,M=Math.max(5,Math.floor(1.5*M)),I<(D+=M)&&(M-=D-I),o=f.scrollTop,l=f.clientHeight,t=f.scrollHeight,o=o+M*(n?-1:1),f.scrollTop=o,v&&(v.scrollTop=o),p&&(p.scrollTop=o),(n?o<t-l:0<=o)&&(m=setTimeout(s,10)),ne.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,scrollHeight:f.scrollHeight,scrollWidth:f.scrollWidth,bodyHeight:h,bodyWidth:x,isX:a,isY:i},r))}var l=se.elemStore,t=ie.scrollXLoad,o=ie.scrollYLoad,c=w.value,u=b.value,d=T.value,v=u?u.$el:null,p=d?d.$el:null,f=c.$el,u=l["main-body-ySpace"],d=u?u.value:null,c=l["main-body-xSpace"],u=c?c.value:null,h=(o&&d?d:f).clientHeight,x=(t&&u?u:f).clientWidth,l=$===n?Math.max(0,I-D):0;$=n,I=Math.abs(n?e-l:e+l),D=M=0,clearTimeout(m);s()};(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=g.fixedType,l=se.elemStore,e="".concat(e||"main","-body-"),t=S.value;l["".concat(e,"wrapper")]=S,l["".concat(e,"table")]=C,l["".concat(e,"colgroup")]=O,l["".concat(e,"list")]=L,l["".concat(e,"xSpace")]=R,l["".concat(e,"ySpace")]=E,l["".concat(e,"emptyBlock")]=H,t.onscroll=o,t._onscroll=o})}),(0,_vue.onBeforeUnmount)(function(){var e=S.value;clearTimeout(m),e._onscroll=null,e.onscroll=null}),(0,_vue.onUnmounted)(function(){var e=g.fixedType,l=se.elemStore,e="".concat(e||"main","-body-");l["".concat(e,"wrapper")]=null,l["".concat(e,"table")]=null,l["".concat(e,"colgroup")]=null,l["".concat(e,"list")]=null,l["".concat(e,"xSpace")]=null,l["".concat(e,"ySpace")]=null,l["".concat(e,"emptyBlock")]=null});return function(){var e=g.fixedColumn,l=g.fixedType,t=g.tableColumn,o=ae.keyboardConfig,r=ae.showOverflow,n=ae.spanMethod,a=ae.mouseConfig,i=ie.tableData,s=ie.mergeList,c=ie.scrollYLoad,u=ie.isAllOverflow,d=se.visibleColumn,v=q.slots,p=ue.value,f=Y.value,h=W.value,x=X.value;return l&&(t=ie.expandColumn||!(c||r&&u)||s.length||n||o&&h.isMerge?d:e),u=v.empty?ne.callSlot(v.empty,{$table:ne,$grid:ne.xegrid}):(r=(c=f.name?_vXETable.VXETable.renderer.get(f.name):null)?c.renderEmpty:null)?(0,_vn.getSlotVNs)(r(f,{$table:ne})):ae.emptyText||_conf.default.i18n("vxe.table.emptyText"),(0,_vue.h)("div",__assign({ref:S,class:["vxe-table--body-wrapper",l?"fixed-".concat(l,"--wrapper"):"body--wrapper"],xid:y},"wheel"===p.mode?{onWheel:k}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:R,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:E,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:C,class:"vxe-table--body",xid:y,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:O},t.map(function(e,l){return(0,_vue.h)("col",{name:e.id,key:l})})),(0,_vue.h)("tbody",{ref:L},A(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),a&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown:function(e){ne.triggerCellExtendMousedownEvent(e,{$table:ne,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:H},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},u)])])}}});exports.default=_default;
@@ -112,11 +112,18 @@ var ColumnInfo = /** @class */function () {
112
112
  checked: false,
113
113
  halfChecked: false,
114
114
  disabled: false,
115
+ // 分组层级
115
116
  level: 1,
117
+ // 跨行
116
118
  rowSpan: 1,
119
+ // 跨列
117
120
  colSpan: 1,
121
+ // 数据排序-自定义排序
118
122
  order: null,
123
+ // 数据排序-用于多列的先后顺序
119
124
  sortTime: 0,
125
+ // 列排序
126
+ customOrder: 0,
120
127
  renderWidth: 0,
121
128
  renderHeight: 0,
122
129
  resizeWidth: 0,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("./util"),_utils=require("../../tools/utils"),_log=require("../../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var ColumnInfo=function(){function e(e,r,t){var l,o,t=void 0===t?{}:t,i=t.renderHeader,n=t.renderCell,d=t.renderFooter,t=t.renderData,s=e.xegrid,a=r.formatter,f=!_xeUtils.default.isBoolean(r.visible)||r.visible;"development"===process.env.NODE_ENV&&(o=["seq","checkbox","radio","expand","html"],r.type&&-1===o.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type=".concat(r.type),o.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render=".concat(r.cellRender),"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render=".concat(r.editRender),"column.edit-render={}"]),r.cellRender&&r.editRender&&(0,_log.warnLog)("vxe.error.errConflicts",["column.cell-render","column.edit-render"]),"expand"===r.type&&(o=e.props.treeConfig,e=e.getComputeMaps().computeTreeOpts.value,o)&&e.line&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),a)&&(_xeUtils.default.isString(a)?(l=_vXETable.VXETable.formats.get(a)||_xeUtils.default[a],_xeUtils.default.isFunction(l)||(0,_log.errLog)("vxe.error.notFunc",[a])):_xeUtils.default.isArray(a)&&(l=_vXETable.VXETable.formats.get(a[0])||_xeUtils.default[a[0]],_xeUtils.default.isFunction(l)||(0,_log.errLog)("vxe.error.notFunc",[a[0]]))),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:a,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,treeNode:r.treeNode,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:f,halfVisible:!1,defaultVisible:f,defaultFixed:r.fixed,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,renderWidth:0,renderHeight:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:i||r.renderHeader,renderCell:n||r.renderCell,renderFooter:d||r.renderFooter,renderData:t,slots:r.slots}),s&&(o=s.getComputeMaps().computeProxyOpts.value).beforeColumn&&o.beforeColumn({$grid:s,column:this})}return e.prototype.getTitle=function(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?_conf.default.i18n("vxe.table.seqTitle"):""))},e.prototype.getKey=function(){return this.field||(this.type?"type=".concat(this.type):null)},e.prototype.update=function(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)},e}();exports.ColumnInfo=ColumnInfo;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("./util"),_utils=require("../../tools/utils"),_log=require("../../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var ColumnInfo=function(){function e(e,r,t){var l,o,t=void 0===t?{}:t,i=t.renderHeader,n=t.renderCell,d=t.renderFooter,t=t.renderData,s=e.xegrid,a=r.formatter,u=!_xeUtils.default.isBoolean(r.visible)||r.visible;"development"===process.env.NODE_ENV&&(o=["seq","checkbox","radio","expand","html"],r.type&&-1===o.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type=".concat(r.type),o.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render=".concat(r.cellRender),"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render=".concat(r.editRender),"column.edit-render={}"]),r.cellRender&&r.editRender&&(0,_log.warnLog)("vxe.error.errConflicts",["column.cell-render","column.edit-render"]),"expand"===r.type&&(o=e.props.treeConfig,e=e.getComputeMaps().computeTreeOpts.value,o)&&e.line&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),a)&&(_xeUtils.default.isString(a)?(l=_vXETable.VXETable.formats.get(a)||_xeUtils.default[a],_xeUtils.default.isFunction(l)||(0,_log.errLog)("vxe.error.notFunc",[a])):_xeUtils.default.isArray(a)&&(l=_vXETable.VXETable.formats.get(a[0])||_xeUtils.default[a[0]],_xeUtils.default.isFunction(l)||(0,_log.errLog)("vxe.error.notFunc",[a[0]]))),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:a,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,treeNode:r.treeNode,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:u,halfVisible:!1,defaultVisible:u,defaultFixed:r.fixed,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,customOrder:0,renderWidth:0,renderHeight:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:i||r.renderHeader,renderCell:n||r.renderCell,renderFooter:d||r.renderFooter,renderData:t,slots:r.slots}),s&&(o=s.getComputeMaps().computeProxyOpts.value).beforeColumn&&o.beforeColumn({$grid:s,column:this})}return e.prototype.getTitle=function(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?_conf.default.i18n("vxe.table.seqTitle"):""))},e.prototype.getKey=function(){return this.field||(this.type?"type=".concat(this.type):null)},e.prototype.update=function(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)},e}();exports.ColumnInfo=ColumnInfo;
@@ -201,13 +201,9 @@ var _default = (0, _vue.defineComponent)({
201
201
  },
202
202
  // 存放数据校验相关信息
203
203
  validStore: {
204
- visible: false,
205
- row: null,
206
- column: null,
207
- content: '',
208
- rule: null,
209
- isArrow: false
204
+ visible: false
210
205
  },
206
+ validErrorMaps: {},
211
207
  // 导入相关信息
212
208
  importStore: {
213
209
  inited: false,
@@ -311,6 +307,7 @@ var _default = (0, _vue.defineComponent)({
311
307
  // 总的缓存数据集
312
308
  fullAllDataRowIdData: {},
313
309
  // 渲染中缓存数据
310
+ sourceDataRowIdData: {},
314
311
  fullDataRowIdData: {},
315
312
  fullColumnIdData: {},
316
313
  fullColumnFieldData: {},
@@ -478,6 +475,25 @@ var _default = (0, _vue.defineComponent)({
478
475
  var computeCustomOpts = (0, _vue.computed)(function () {
479
476
  return Object.assign({}, _conf.default.table.customConfig, props.customConfig);
480
477
  });
478
+ var computeFixedColumnSize = (0, _vue.computed)(function () {
479
+ var tableFullColumn = internalData.tableFullColumn;
480
+ var fixedSize = 0;
481
+ tableFullColumn.forEach(function (column) {
482
+ if (column.fixed) {
483
+ fixedSize++;
484
+ }
485
+ });
486
+ return fixedSize;
487
+ });
488
+ var computeIsMaxFixedColumn = (0, _vue.computed)(function () {
489
+ var fixedColumnSize = computeFixedColumnSize.value;
490
+ var columnOpts = computeColumnOpts.value;
491
+ var maxFixedSize = columnOpts.maxFixedSize;
492
+ if (maxFixedSize) {
493
+ return fixedColumnSize >= maxFixedSize;
494
+ }
495
+ return false;
496
+ });
481
497
  var computeTableBorder = (0, _vue.computed)(function () {
482
498
  var border = props.border;
483
499
  if (border === true) {
@@ -566,6 +582,8 @@ var _default = (0, _vue.defineComponent)({
566
582
  computeEmptyOpts: computeEmptyOpts,
567
583
  computeLoadingOpts: computeLoadingOpts,
568
584
  computeCustomOpts: computeCustomOpts,
585
+ computeFixedColumnSize: computeFixedColumnSize,
586
+ computeIsMaxFixedColumn: computeIsMaxFixedColumn,
569
587
  computeIsAllCheckboxDisabled: computeIsAllCheckboxDisabled
570
588
  };
571
589
  var $xetable = {
@@ -840,9 +858,8 @@ var _default = (0, _vue.defineComponent)({
840
858
  if (isCustomResizable) {
841
859
  var columnWidthStorage = getCustomStorageMap(resizableStorageKey)[id];
842
860
  if (columnWidthStorage) {
843
- _xeUtils.default.each(columnWidthStorage, function (resizeWidth, field) {
844
- customMap_1[field] = {
845
- field: field,
861
+ _xeUtils.default.each(columnWidthStorage, function (resizeWidth, colKey) {
862
+ customMap_1[colKey] = {
846
863
  resizeWidth: resizeWidth
847
864
  };
848
865
  });
@@ -855,13 +872,12 @@ var _default = (0, _vue.defineComponent)({
855
872
  var colFixeds = columnFixedStorage.split(',');
856
873
  colFixeds.forEach(function (fixConf) {
857
874
  var _a = fixConf.split('|'),
858
- field = _a[0],
875
+ colKey = _a[0],
859
876
  fixed = _a[1];
860
- if (customMap_1[field]) {
861
- customMap_1[field].fixed = fixed;
877
+ if (customMap_1[colKey]) {
878
+ customMap_1[colKey].fixed = fixed;
862
879
  } else {
863
- customMap_1[field] = {
864
- field: field,
880
+ customMap_1[colKey] = {
865
881
  fixed: fixed
866
882
  };
867
883
  }
@@ -872,7 +888,15 @@ var _default = (0, _vue.defineComponent)({
872
888
  if (isCustomOrder) {
873
889
  var columnOrderStorage = getCustomStorageMap(orderStorageKey)[id];
874
890
  if (columnOrderStorage) {
875
- // 开发中...
891
+ // const colOrderSeqs = columnOrderStorage.split(',')
892
+ // colOrderSeqs.forEach((orderConf: any) => {
893
+ // const [colKey, order] = orderConf.split('|')
894
+ // if (customMap[colKey]) {
895
+ // customMap[colKey].order = order
896
+ // } else {
897
+ // customMap[colKey] = { order }
898
+ // }
899
+ // })
876
900
  }
877
901
  }
878
902
  // 自定义隐藏列
@@ -882,22 +906,20 @@ var _default = (0, _vue.defineComponent)({
882
906
  var colVisibles = columnVisibleStorage.split('|');
883
907
  var colHides = colVisibles[0] ? colVisibles[0].split(',') : [];
884
908
  var colShows = colVisibles[1] ? colVisibles[1].split(',') : [];
885
- colHides.forEach(function (field) {
886
- if (customMap_1[field]) {
887
- customMap_1[field].visible = false;
909
+ colHides.forEach(function (colKey) {
910
+ if (customMap_1[colKey]) {
911
+ customMap_1[colKey].visible = false;
888
912
  } else {
889
- customMap_1[field] = {
890
- field: field,
913
+ customMap_1[colKey] = {
891
914
  visible: false
892
915
  };
893
916
  }
894
917
  });
895
- colShows.forEach(function (field) {
896
- if (customMap_1[field]) {
897
- customMap_1[field].visible = true;
918
+ colShows.forEach(function (colKey) {
919
+ if (customMap_1[colKey]) {
920
+ customMap_1[colKey].visible = true;
898
921
  } else {
899
- customMap_1[field] = {
900
- field: field,
922
+ customMap_1[colKey] = {
901
923
  visible: true
902
924
  };
903
925
  }
@@ -911,11 +933,12 @@ var _default = (0, _vue.defineComponent)({
911
933
  keyMap_1[colKey] = column;
912
934
  }
913
935
  });
914
- _xeUtils.default.each(customMap_1, function (_a, field) {
936
+ _xeUtils.default.each(customMap_1, function (_a, colKey) {
915
937
  var visible = _a.visible,
916
938
  resizeWidth = _a.resizeWidth,
917
- fixed = _a.fixed;
918
- var column = keyMap_1[field];
939
+ fixed = _a.fixed,
940
+ order = _a.order;
941
+ var column = keyMap_1[colKey];
919
942
  if (column) {
920
943
  if (_xeUtils.default.isNumber(resizeWidth)) {
921
944
  column.resizeWidth = resizeWidth;
@@ -926,6 +949,9 @@ var _default = (0, _vue.defineComponent)({
926
949
  if (fixed) {
927
950
  column.fixed = fixed;
928
951
  }
952
+ if (order) {
953
+ column.customOrder = order;
954
+ }
929
955
  }
930
956
  });
931
957
  }
@@ -2354,7 +2380,7 @@ var _default = (0, _vue.defineComponent)({
2354
2380
  internalData.tableSynchData = datas;
2355
2381
  // 克隆原数据,用于显示编辑状态,与编辑值做对比
2356
2382
  if (keepSource) {
2357
- internalData.tableSourceData = _xeUtils.default.clone(fullData, true);
2383
+ tablePrivateMethods.cacheSourceMap(fullData);
2358
2384
  }
2359
2385
  if (process.env.NODE_ENV === 'development') {
2360
2386
  if (sYLoad) {
@@ -3193,40 +3219,24 @@ var _default = (0, _vue.defineComponent)({
3193
3219
  * @param {String} field 字段名
3194
3220
  */
3195
3221
  isUpdateByRow: function (row, field) {
3196
- var _a, _b;
3197
- var keepSource = props.keepSource,
3198
- treeConfig = props.treeConfig;
3199
- var visibleColumn = internalData.visibleColumn,
3200
- tableSourceData = internalData.tableSourceData,
3201
- fullDataRowIdData = internalData.fullDataRowIdData;
3202
- var treeOpts = computeTreeOpts.value;
3222
+ var keepSource = props.keepSource;
3223
+ var tableFullColumn = internalData.tableFullColumn,
3224
+ fullDataRowIdData = internalData.fullDataRowIdData,
3225
+ sourceDataRowIdData = internalData.sourceDataRowIdData;
3203
3226
  if (keepSource) {
3204
- var oRow = void 0,
3205
- property = void 0;
3206
- var rowid_2 = (0, _util.getRowid)($xetable, row);
3227
+ var rowid = (0, _util.getRowid)($xetable, row);
3207
3228
  // 新增的数据不需要检测
3208
- if (!fullDataRowIdData[rowid_2]) {
3229
+ if (!fullDataRowIdData[rowid]) {
3209
3230
  return false;
3210
3231
  }
3211
- if (treeConfig) {
3212
- var children = treeOpts.children;
3213
- var matchObj = _xeUtils.default.findTree(tableSourceData, function (item) {
3214
- return rowid_2 === (0, _util.getRowid)($xetable, item);
3215
- }, treeOpts);
3216
- row = Object.assign({}, row, (_a = {}, _a[children] = null, _a));
3217
- if (matchObj) {
3218
- oRow = Object.assign({}, matchObj.item, (_b = {}, _b[children] = null, _b));
3219
- }
3220
- } else {
3221
- var oRowIndex = fullDataRowIdData[rowid_2].index;
3222
- oRow = tableSourceData[oRowIndex];
3223
- }
3224
- if (oRow) {
3232
+ var oldRest = sourceDataRowIdData[rowid];
3233
+ if (oldRest) {
3234
+ var oRow = oldRest.row;
3225
3235
  if (arguments.length > 1) {
3226
3236
  return !eqCellValue(oRow, row, field);
3227
3237
  }
3228
- for (var index = 0, len = visibleColumn.length; index < len; index++) {
3229
- property = visibleColumn[index].field;
3238
+ for (var index = 0, len = tableFullColumn.length; index < len; index++) {
3239
+ var property = tableFullColumn[index].field;
3230
3240
  if (property && !eqCellValue(oRow, row, property)) {
3231
3241
  return true;
3232
3242
  }
@@ -3380,8 +3390,20 @@ var _default = (0, _vue.defineComponent)({
3380
3390
  */
3381
3391
  setColumnFixed: function (fieldOrColumn, fixed) {
3382
3392
  var column = (0, _util.handleFieldOrColumn)($xetable, fieldOrColumn);
3383
- if (column && column.fixed !== fixed) {
3384
- _xeUtils.default.eachTree([column], function (column) {
3393
+ var targetColumn = (0, _util.getRootColumn)($xetable, column);
3394
+ var isMaxFixedColumn = computeIsMaxFixedColumn.value;
3395
+ if (targetColumn && targetColumn.fixed !== fixed) {
3396
+ // 是否超过最大固定列数量
3397
+ if (!targetColumn.fixed && isMaxFixedColumn) {
3398
+ if (_vXETable.VXETable.modal) {
3399
+ _vXETable.VXETable.modal.message({
3400
+ status: 'error',
3401
+ content: _conf.default.i18n('vxe.table.maxFixedCol')
3402
+ });
3403
+ }
3404
+ return (0, _vue.nextTick)();
3405
+ }
3406
+ _xeUtils.default.eachTree([targetColumn], function (column) {
3385
3407
  column.fixed = fixed;
3386
3408
  });
3387
3409
  tablePrivateMethods.saveCustomFixed();
@@ -3394,8 +3416,9 @@ var _default = (0, _vue.defineComponent)({
3394
3416
  */
3395
3417
  clearColumnFixed: function (fieldOrColumn) {
3396
3418
  var column = (0, _util.handleFieldOrColumn)($xetable, fieldOrColumn);
3397
- if (column && column.fixed) {
3398
- _xeUtils.default.eachTree([column], function (column) {
3419
+ var targetColumn = (0, _util.getRootColumn)($xetable, column);
3420
+ if (targetColumn && targetColumn.fixed) {
3421
+ _xeUtils.default.eachTree([targetColumn], function (column) {
3399
3422
  column.fixed = null;
3400
3423
  });
3401
3424
  tablePrivateMethods.saveCustomFixed();
@@ -3453,7 +3476,7 @@ var _default = (0, _vue.defineComponent)({
3453
3476
  * 如果已关联工具栏,则会同步更新
3454
3477
  */
3455
3478
  resetColumn: function (options) {
3456
- var tableFullColumn = internalData.tableFullColumn;
3479
+ var collectColumn = internalData.collectColumn;
3457
3480
  var customOpts = computeCustomOpts.value;
3458
3481
  var checkMethod = customOpts.checkMethod;
3459
3482
  var opts = Object.assign({
@@ -3461,7 +3484,7 @@ var _default = (0, _vue.defineComponent)({
3461
3484
  resizable: options === true,
3462
3485
  fixed: options === true
3463
3486
  }, options);
3464
- tableFullColumn.forEach(function (column) {
3487
+ _xeUtils.default.eachTree(collectColumn, function (column) {
3465
3488
  if (opts.resizable) {
3466
3489
  column.resizeWidth = 0;
3467
3490
  }
@@ -3648,23 +3671,23 @@ var _default = (0, _vue.defineComponent)({
3648
3671
  var radioOpts = computeRadioOpts.value;
3649
3672
  var treeOpts = computeTreeOpts.value;
3650
3673
  if (radioOpts.reserve && radioReserveRow) {
3651
- var rowid_3 = (0, _util.getRowid)($xetable, radioReserveRow);
3674
+ var rowid_2 = (0, _util.getRowid)($xetable, radioReserveRow);
3652
3675
  if (isFull) {
3653
- if (!fullDataRowIdData[rowid_3]) {
3676
+ if (!fullDataRowIdData[rowid_2]) {
3654
3677
  return radioReserveRow;
3655
3678
  }
3656
3679
  } else {
3657
3680
  var rowkey_2 = (0, _util.getRowkey)($xetable);
3658
3681
  if (treeConfig) {
3659
3682
  var matchObj = _xeUtils.default.findTree(afterFullData, function (row) {
3660
- return rowid_3 === _xeUtils.default.get(row, rowkey_2);
3683
+ return rowid_2 === _xeUtils.default.get(row, rowkey_2);
3661
3684
  }, treeOpts);
3662
3685
  if (matchObj) {
3663
3686
  return radioReserveRow;
3664
3687
  }
3665
3688
  } else {
3666
3689
  if (!afterFullData.some(function (row) {
3667
- return rowid_3 === _xeUtils.default.get(row, rowkey_2);
3690
+ return rowid_2 === _xeUtils.default.get(row, rowkey_2);
3668
3691
  })) {
3669
3692
  return radioReserveRow;
3670
3693
  }
@@ -3826,16 +3849,16 @@ var _default = (0, _vue.defineComponent)({
3826
3849
  var selectRow = reactData.selectRow;
3827
3850
  var treeOpts = computeTreeOpts.value;
3828
3851
  if (selectRow) {
3829
- var rowid_4 = (0, _util.getRowid)($xetable, selectRow);
3852
+ var rowid_3 = (0, _util.getRowid)($xetable, selectRow);
3830
3853
  if (isFull) {
3831
- if (!fullDataRowIdData[rowid_4]) {
3854
+ if (!fullDataRowIdData[rowid_3]) {
3832
3855
  return selectRow;
3833
3856
  }
3834
3857
  } else {
3835
3858
  if (treeConfig) {
3836
3859
  var rowkey_3 = (0, _util.getRowkey)($xetable);
3837
3860
  var matchObj = _xeUtils.default.findTree(afterFullData, function (row) {
3838
- return rowid_4 === _xeUtils.default.get(row, rowkey_3);
3861
+ return rowid_3 === _xeUtils.default.get(row, rowkey_3);
3839
3862
  }, treeOpts);
3840
3863
  if (matchObj) {
3841
3864
  return selectRow;
@@ -4472,7 +4495,7 @@ var _default = (0, _vue.defineComponent)({
4472
4495
  if (customVal && validStore.visible) {
4473
4496
  (0, _util.setCellValue)(row_1, column_3, cellValue);
4474
4497
  }
4475
- $xetable.clearValidate();
4498
+ $xetable.clearValidate(row_1, column_3);
4476
4499
  }).catch(function (_a) {
4477
4500
  var rule = _a.rule;
4478
4501
  if (customVal) {
@@ -5246,7 +5269,7 @@ var _default = (0, _vue.defineComponent)({
5246
5269
  tableFullTreeData = internalData.tableFullTreeData;
5247
5270
  var rowkey = (0, _util.getRowkey)($xetable);
5248
5271
  var isLazy = treeConfig && treeOpts.lazy;
5249
- var handleCache = function (row, index, items, path, parent, nodes) {
5272
+ var handleRow = function (row, index, items, path, parent, nodes) {
5250
5273
  var rowid = (0, _util.getRowid)($xetable, row);
5251
5274
  var seq = treeConfig && path ? (0, _util.toTreePathSeq)(path) : index + 1;
5252
5275
  var level = nodes ? nodes.length - 1 : 0;
@@ -5278,10 +5301,36 @@ var _default = (0, _vue.defineComponent)({
5278
5301
  }
5279
5302
  fullAllDataRowIdData = internalData.fullAllDataRowIdData = {};
5280
5303
  if (treeConfig) {
5281
- _xeUtils.default.eachTree(tableFullTreeData, handleCache, treeOpts);
5304
+ _xeUtils.default.eachTree(tableFullTreeData, handleRow, treeOpts);
5305
+ } else {
5306
+ tableFullData.forEach(handleRow);
5307
+ }
5308
+ },
5309
+ cacheSourceMap: function (fullData) {
5310
+ var treeConfig = props.treeConfig;
5311
+ var treeOpts = computeTreeOpts.value;
5312
+ var sourceDataRowIdData = internalData.sourceDataRowIdData;
5313
+ var sourceData = _xeUtils.default.clone(fullData, true);
5314
+ var rowkey = (0, _util.getRowkey)($xetable);
5315
+ sourceDataRowIdData = internalData.sourceDataRowIdData = {};
5316
+ var handleSourceRow = function (row) {
5317
+ var rowid = (0, _util.getRowid)($xetable, row);
5318
+ if ((0, _utils.eqEmptyValue)(rowid)) {
5319
+ rowid = (0, _util.getRowUniqueId)();
5320
+ _xeUtils.default.set(row, rowkey, rowid);
5321
+ }
5322
+ sourceDataRowIdData[rowid] = {
5323
+ row: row,
5324
+ rowid: rowid
5325
+ };
5326
+ };
5327
+ // 源数据缓存
5328
+ if (treeConfig && !treeOpts.transform) {
5329
+ _xeUtils.default.eachTree(sourceData, handleSourceRow, treeOpts);
5282
5330
  } else {
5283
- tableFullData.forEach(handleCache);
5331
+ sourceData.forEach(handleSourceRow);
5284
5332
  }
5333
+ internalData.tableSourceData = sourceData;
5285
5334
  },
5286
5335
  /**
5287
5336
  * 指定列宽的列进行拆分