vxe-table 4.10.6-beta.8 → 4.10.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/grid/src/grid.js +1 -1
- package/es/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/locale/lang/ar-EG.js +2 -1
- package/es/locale/lang/de-DE.js +2 -1
- package/es/locale/lang/en-US.js +4 -3
- package/es/locale/lang/es-ES.js +2 -1
- package/es/locale/lang/fr-FR.js +2 -1
- package/es/locale/lang/hu-HU.js +2 -1
- package/es/locale/lang/hy-AM.js +2 -1
- package/es/locale/lang/it-IT.js +2 -1
- package/es/locale/lang/ja-JP.js +2 -1
- package/es/locale/lang/ko-KR.js +2 -1
- package/es/locale/lang/nb-NO.js +2 -1
- package/es/locale/lang/pt-BR.js +2 -1
- package/es/locale/lang/ru-RU.js +4 -3
- package/es/locale/lang/th-TH.js +2 -1
- package/es/locale/lang/ug-CN.js +2 -1
- package/es/locale/lang/uk-UA.js +518 -517
- package/es/locale/lang/vi-VN.js +2 -1
- package/es/locale/lang/zh-CHT.js +2 -1
- package/es/locale/lang/zh-CN.js +2 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/edit/hook.js +7 -7
- package/es/table/module/export/hook.js +97 -62
- package/es/table/module/keyboard/hook.js +63 -27
- package/es/table/src/body.js +128 -81
- package/es/table/src/cell.js +41 -55
- package/es/table/src/column.js +13 -1
- package/es/table/src/columnInfo.js +3 -0
- package/es/table/src/emits.js +2 -0
- package/es/table/src/footer.js +48 -10
- package/es/table/src/header.js +70 -168
- package/es/table/src/props.js +14 -4
- package/es/table/src/table.js +884 -426
- package/es/table/src/util.js +77 -62
- package/es/table/style.css +253 -189
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +26 -11
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +253 -189
- package/es/vxe-table/style.min.css +1 -1
- package/lib/grid/src/grid.js +1 -1
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +1533 -917
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +2 -1
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/de-DE.js +2 -1
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/en-US.js +4 -3
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +4 -3
- package/lib/locale/lang/es-ES.js +2 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +2 -1
- package/lib/locale/lang/fr-FR.js +2 -1
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/hu-HU.js +2 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +2 -1
- package/lib/locale/lang/hy-AM.js +2 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/it-IT.js +2 -1
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/ja-JP.js +2 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +2 -1
- package/lib/locale/lang/ko-KR.js +2 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +2 -1
- package/lib/locale/lang/nb-NO.js +2 -1
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/pt-BR.js +2 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +2 -1
- package/lib/locale/lang/ru-RU.js +4 -3
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +4 -3
- package/lib/locale/lang/th-TH.js +2 -1
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/ug-CN.js +2 -1
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/uk-UA.js +518 -517
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +518 -517
- package/lib/locale/lang/vi-VN.js +2 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/zh-CHT.js +2 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CN.js +2 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +2 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/edit/hook.js +7 -2
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/export/hook.js +97 -57
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/keyboard/hook.js +71 -28
- package/lib/table/module/keyboard/hook.min.js +1 -1
- package/lib/table/src/body.js +129 -80
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +32 -42
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/column.js +13 -1
- package/lib/table/src/column.min.js +1 -1
- package/lib/table/src/columnInfo.js +3 -0
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/emits.js +1 -1
- package/lib/table/src/emits.min.js +1 -1
- package/lib/table/src/footer.js +48 -8
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +54 -181
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/props.js +14 -4
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +935 -417
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +100 -82
- package/lib/table/src/util.min.js +1 -1
- package/lib/table/style/style.css +253 -189
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +26 -11
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-table/style/style.css +253 -189
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +1 -1
- package/packages/locale/lang/ar-EG.ts +2 -1
- package/packages/locale/lang/de-DE.ts +2 -1
- package/packages/locale/lang/en-US.ts +4 -3
- package/packages/locale/lang/es-ES.ts +2 -1
- package/packages/locale/lang/fr-FR.ts +2 -1
- package/packages/locale/lang/hu-HU.ts +2 -1
- package/packages/locale/lang/hy-AM.ts +2 -1
- package/packages/locale/lang/it-IT.ts +2 -1
- package/packages/locale/lang/ja-JP.ts +2 -1
- package/packages/locale/lang/ko-KR.ts +2 -1
- package/packages/locale/lang/nb-NO.ts +2 -1
- package/packages/locale/lang/pt-BR.ts +2 -1
- package/packages/locale/lang/ru-RU.ts +4 -3
- package/packages/locale/lang/th-TH.ts +2 -1
- package/packages/locale/lang/ug-CN.ts +2 -1
- package/packages/locale/lang/uk-UA.ts +518 -517
- package/packages/locale/lang/vi-VN.ts +2 -1
- package/packages/locale/lang/zh-CHT.ts +2 -1
- package/packages/locale/lang/zh-CN.ts +2 -1
- package/packages/table/module/edit/hook.ts +7 -7
- package/packages/table/module/export/hook.ts +118 -65
- package/packages/table/module/keyboard/hook.ts +59 -25
- package/packages/table/src/body.ts +148 -91
- package/packages/table/src/cell.ts +41 -63
- package/packages/table/src/column.ts +13 -1
- package/packages/table/src/columnInfo.ts +3 -0
- package/packages/table/src/emits.ts +5 -1
- package/packages/table/src/footer.ts +51 -11
- package/packages/table/src/header.ts +70 -168
- package/packages/table/src/props.ts +14 -5
- package/packages/table/src/table.ts +890 -428
- package/packages/table/src/util.ts +81 -62
- package/packages/ui/index.ts +25 -10
- package/styles/components/table.scss +319 -271
- package/styles/theme/base.scss +4 -6
- package/styles/theme/dark.scss +1 -0
- package/styles/theme/light.scss +1 -0
- package/styles/variable.scss +1 -1
- /package/es/{iconfont.1736840923205.ttf → iconfont.1738985856004.ttf} +0 -0
- /package/es/{iconfont.1736840923205.woff → iconfont.1738985856004.woff} +0 -0
- /package/es/{iconfont.1736840923205.woff2 → iconfont.1738985856004.woff2} +0 -0
- /package/lib/{iconfont.1736840923205.ttf → iconfont.1738985856004.ttf} +0 -0
- /package/lib/{iconfont.1736840923205.woff → iconfont.1738985856004.woff} +0 -0
- /package/lib/{iconfont.1736840923205.woff2 → iconfont.1738985856004.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
|
|
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:g,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(),g=[],h=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<h?(n+=l)<h&&(n=h,o=f):o=Math.min(o,k.scrollHeight-f-h),t<h?(a+=t,r>m&&(a=h,r=m)):r=Math.min(r,k.clientWidth-m-h),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,g=[],h=0;var f=0<r,m=D.scrollYLoad,p=O.afterFullData;if(h=f?o+r:l.height-o+Math.abs(r),m){l=M.getVTRowIndex(e);if(!(i||s.height||u.height)&&n)g=f?p.slice(l,l+Math.ceil(h/c)):p.slice(l-Math.floor(h/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||c,g.push(v),d>h)return g}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||c,g.push(w),d>h)return g}}else for(var R=f?"next":"previous";t&&d<h;){var C=M.getRowNode(t);C&&(g.push(C.item),d+=t.offsetHeight,t=t[R+"ElementSibling"])}return g})(y,c,v,x,l<h?-o:o);10<o&&t.length!==g.length&&(g=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=g.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=g.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))}}}});
|
package/lib/table/src/body.js
CHANGED
|
@@ -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
|
-
|
|
77
|
+
isDragResize
|
|
77
78
|
} = tableReactData;
|
|
78
|
-
return !!(
|
|
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
|
-
|
|
155
|
+
calcCellHeightFlag,
|
|
156
|
+
resizeHeightFlag,
|
|
151
157
|
mergeList,
|
|
152
158
|
editStore,
|
|
153
159
|
isAllOverflow,
|
|
@@ -163,9 +169,16 @@ 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;
|
|
181
|
+
const currCellHeight = customCellHeight || defaultRowHeight;
|
|
169
182
|
const {
|
|
170
183
|
disabledMethod: dragDisabledMethod,
|
|
171
184
|
isCrossDrag,
|
|
@@ -185,17 +198,18 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
185
198
|
showOverflow,
|
|
186
199
|
className,
|
|
187
200
|
treeNode,
|
|
201
|
+
rowResize,
|
|
202
|
+
padding,
|
|
203
|
+
verticalAlign,
|
|
188
204
|
slots
|
|
189
205
|
} = column;
|
|
190
206
|
const {
|
|
191
|
-
verticalAlign
|
|
207
|
+
verticalAlign: allVerticalAlign
|
|
192
208
|
} = cellOpts;
|
|
193
209
|
const {
|
|
194
210
|
actived
|
|
195
211
|
} = editStore;
|
|
196
|
-
const
|
|
197
|
-
height: customRHeight
|
|
198
|
-
} = rowOpts;
|
|
212
|
+
const rowRest = fullAllDataRowIdData[rowid];
|
|
199
213
|
const colid = column.id;
|
|
200
214
|
const renderOpts = editRender || cellRender;
|
|
201
215
|
const compConf = renderOpts ? renderer.get(renderOpts.name) : null;
|
|
@@ -205,23 +219,27 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
205
219
|
const columnIndex = $xeTable.getColumnIndex(column);
|
|
206
220
|
const _columnIndex = $xeTable.getVTColumnIndex(column);
|
|
207
221
|
const isEdit = (0, _utils.isEnableConf)(editRender);
|
|
222
|
+
const resizeHeight = resizeHeightFlag ? rowRest.resizeHeight : 0;
|
|
208
223
|
let fixedHiddenColumn = fixedType ? column.fixed !== fixedType : column.fixed && overflowX;
|
|
209
|
-
const
|
|
224
|
+
const isCellPadding = _xeUtils.default.eqNull(padding) ? allPadding === null ? cellOpts.padding : allPadding : padding;
|
|
225
|
+
const cellOverflow = _xeUtils.default.eqNull(showOverflow) ? isAllOverflow : showOverflow;
|
|
210
226
|
const showEllipsis = cellOverflow === 'ellipsis';
|
|
211
227
|
const showTitle = cellOverflow === 'title';
|
|
212
228
|
const showTooltip = cellOverflow === true || cellOverflow === 'tooltip';
|
|
213
|
-
|
|
214
|
-
const
|
|
229
|
+
const hasEllipsis = isAllOverflow || showTitle || showTooltip || showEllipsis;
|
|
230
|
+
const showResizable = _xeUtils.default.isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable;
|
|
231
|
+
const isCsHeight = !!customCellHeight;
|
|
232
|
+
const isRsHeight = resizeHeight > 0;
|
|
215
233
|
let isDirty;
|
|
216
234
|
const tdOns = {};
|
|
217
|
-
const rest = fullAllDataRowIdData[rowid];
|
|
218
235
|
const cellAlign = align || (compConf ? compConf.tableCellAlign : '') || allAlign;
|
|
236
|
+
const cellVerticalAlign = _xeUtils.default.eqNull(verticalAlign) ? allVerticalAlign : verticalAlign;
|
|
219
237
|
const errorValidItem = validErrorMaps[`${rowid}:${colid}`];
|
|
220
238
|
const showValidTip = editRules && validOpts.showMessage && (validOpts.message === 'default' ? height || tableData.length > 1 : validOpts.message === 'inline');
|
|
221
|
-
const
|
|
239
|
+
const tdAttrs = {
|
|
222
240
|
colid
|
|
223
241
|
};
|
|
224
|
-
const
|
|
242
|
+
const cellParams = {
|
|
225
243
|
$table: $xeTable,
|
|
226
244
|
$grid: $xeTable.xegrid,
|
|
227
245
|
isEdit: false,
|
|
@@ -249,7 +267,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
249
267
|
isRowDragCell = rowDragOpts.trigger === 'row' || column.dragSort && rowDragOpts.trigger === 'cell';
|
|
250
268
|
}
|
|
251
269
|
if (isRowDragCell) {
|
|
252
|
-
isDisabledDrag = !!(dragDisabledMethod && dragDisabledMethod(
|
|
270
|
+
isDisabledDrag = !!(dragDisabledMethod && dragDisabledMethod(cellParams));
|
|
253
271
|
}
|
|
254
272
|
// hover 进入事件
|
|
255
273
|
if (showTitle || showTooltip || showAllTip || tooltipConfig) {
|
|
@@ -261,11 +279,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
261
279
|
(0, _dom.updateCellTitle)(evnt.currentTarget, column);
|
|
262
280
|
} else if (showTooltip || showAllTip) {
|
|
263
281
|
// 如果配置了显示 tooltip
|
|
264
|
-
$xeTable.triggerBodyTooltipEvent(evnt,
|
|
282
|
+
$xeTable.triggerBodyTooltipEvent(evnt, cellParams);
|
|
265
283
|
}
|
|
266
284
|
$xeTable.dispatchEvent('cell-mouseenter', Object.assign({
|
|
267
285
|
cell: evnt.currentTarget
|
|
268
|
-
},
|
|
286
|
+
}, cellParams), evnt);
|
|
269
287
|
};
|
|
270
288
|
}
|
|
271
289
|
// hover 退出事件
|
|
@@ -279,13 +297,13 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
279
297
|
}
|
|
280
298
|
$xeTable.dispatchEvent('cell-mouseleave', Object.assign({
|
|
281
299
|
cell: evnt.currentTarget
|
|
282
|
-
},
|
|
300
|
+
}, cellParams), evnt);
|
|
283
301
|
};
|
|
284
302
|
}
|
|
285
303
|
// 按下事件处理
|
|
286
304
|
if (isRowDragCell || checkboxOpts.range || mouseConfig) {
|
|
287
305
|
tdOns.onMousedown = evnt => {
|
|
288
|
-
$xeTable.triggerCellMousedownEvent(evnt,
|
|
306
|
+
$xeTable.triggerCellMousedownEvent(evnt, cellParams);
|
|
289
307
|
};
|
|
290
308
|
}
|
|
291
309
|
// 拖拽列事件
|
|
@@ -294,11 +312,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
294
312
|
}
|
|
295
313
|
// 点击事件处理
|
|
296
314
|
tdOns.onClick = evnt => {
|
|
297
|
-
$xeTable.triggerCellClickEvent(evnt,
|
|
315
|
+
$xeTable.triggerCellClickEvent(evnt, cellParams);
|
|
298
316
|
};
|
|
299
317
|
// 双击事件处理
|
|
300
318
|
tdOns.onDblclick = evnt => {
|
|
301
|
-
$xeTable.triggerCellDblclickEvent(evnt,
|
|
319
|
+
$xeTable.triggerCellDblclickEvent(evnt, cellParams);
|
|
302
320
|
};
|
|
303
321
|
// 合并行或列
|
|
304
322
|
if (mergeList.length) {
|
|
@@ -312,10 +330,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
312
330
|
return null;
|
|
313
331
|
}
|
|
314
332
|
if (rowspan > 1) {
|
|
315
|
-
|
|
333
|
+
tdAttrs.rowspan = rowspan;
|
|
316
334
|
}
|
|
317
335
|
if (colspan > 1) {
|
|
318
|
-
|
|
336
|
+
tdAttrs.colspan = colspan;
|
|
319
337
|
}
|
|
320
338
|
}
|
|
321
339
|
} else if (spanMethod) {
|
|
@@ -323,20 +341,20 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
323
341
|
const {
|
|
324
342
|
rowspan = 1,
|
|
325
343
|
colspan = 1
|
|
326
|
-
} = spanMethod(
|
|
344
|
+
} = spanMethod(cellParams) || {};
|
|
327
345
|
if (!rowspan || !colspan) {
|
|
328
346
|
return null;
|
|
329
347
|
}
|
|
330
348
|
if (rowspan > 1) {
|
|
331
|
-
|
|
349
|
+
tdAttrs.rowspan = rowspan;
|
|
332
350
|
}
|
|
333
351
|
if (colspan > 1) {
|
|
334
|
-
|
|
352
|
+
tdAttrs.colspan = colspan;
|
|
335
353
|
}
|
|
336
354
|
}
|
|
337
355
|
// 如果被合并不可隐藏
|
|
338
356
|
if (fixedHiddenColumn && mergeList) {
|
|
339
|
-
if (
|
|
357
|
+
if (tdAttrs.colspan > 1 || tdAttrs.rowspan > 1) {
|
|
340
358
|
fixedHiddenColumn = false;
|
|
341
359
|
}
|
|
342
360
|
}
|
|
@@ -344,38 +362,67 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
344
362
|
if (!fixedHiddenColumn && editConfig && (editRender || cellRender) && (editOpts.showStatus || editOpts.showUpdateStatus)) {
|
|
345
363
|
isDirty = $xeTable.isUpdateByRow(row, column.field);
|
|
346
364
|
}
|
|
365
|
+
const isVNAutoHeight = scrollYLoad && !hasEllipsis;
|
|
366
|
+
let cellHeight = currCellHeight;
|
|
367
|
+
const vnHeight = calcCellHeightFlag ? rowRest.height : 0;
|
|
368
|
+
if (resizeHeight) {
|
|
369
|
+
cellHeight = resizeHeight;
|
|
370
|
+
} else {
|
|
371
|
+
if (scrollYLoad) {
|
|
372
|
+
if (!hasEllipsis) {
|
|
373
|
+
cellHeight = vnHeight || currCellHeight;
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
const isLastColumn = $columnIndex === columns.length - 1;
|
|
378
|
+
const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
|
|
379
|
+
let isVNPreEmptyStatus = false;
|
|
380
|
+
if (scrollYLoad && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
|
|
381
|
+
isVNPreEmptyStatus = true;
|
|
382
|
+
} else if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
383
|
+
isVNPreEmptyStatus = true;
|
|
384
|
+
}
|
|
385
|
+
const tcStyle = {};
|
|
386
|
+
if (scrollYLoad || hasEllipsis || isCsHeight || isRsHeight) {
|
|
387
|
+
tcStyle.height = `${cellHeight}px`;
|
|
388
|
+
} else {
|
|
389
|
+
tcStyle.minHeight = `${cellHeight}px`;
|
|
390
|
+
}
|
|
347
391
|
const tdVNs = [];
|
|
348
|
-
if (fixedHiddenColumn &&
|
|
392
|
+
if (fixedHiddenColumn && isAllOverflow) {
|
|
349
393
|
tdVNs.push((0, _vue.h)('div', {
|
|
394
|
+
key: 'tc',
|
|
350
395
|
class: ['vxe-cell', {
|
|
351
396
|
'c--title': showTitle,
|
|
352
397
|
'c--tooltip': showTooltip,
|
|
353
398
|
'c--ellipsis': showEllipsis
|
|
354
399
|
}],
|
|
355
|
-
style:
|
|
356
|
-
maxHeight: hasEllipsis && (customRHeight || defaultRowHeight) ? `${customRHeight || defaultRowHeight}px` : ''
|
|
357
|
-
}
|
|
400
|
+
style: tcStyle
|
|
358
401
|
}));
|
|
359
402
|
} else {
|
|
360
403
|
// 渲染单元格
|
|
361
|
-
tdVNs.push(...renderLine(
|
|
404
|
+
tdVNs.push(...renderLine(cellParams, cellHeight), (0, _vue.h)('div', {
|
|
405
|
+
key: 'tc',
|
|
362
406
|
class: ['vxe-cell', {
|
|
363
407
|
'c--title': showTitle,
|
|
364
408
|
'c--tooltip': showTooltip,
|
|
365
409
|
'c--ellipsis': showEllipsis
|
|
366
410
|
}],
|
|
367
|
-
style:
|
|
368
|
-
maxHeight: hasEllipsis && (customRHeight || defaultRowHeight) ? `${customRHeight || defaultRowHeight}px` : ''
|
|
369
|
-
},
|
|
411
|
+
style: tcStyle,
|
|
370
412
|
title: showTitle ? $xeTable.getCellLabel(row, column) : null
|
|
371
|
-
},
|
|
413
|
+
}, isVNPreEmptyStatus ? [] : [(0, _vue.h)('div', {
|
|
414
|
+
colid,
|
|
415
|
+
rowid,
|
|
416
|
+
class: 'vxe-cell--wrapper'
|
|
417
|
+
}, column.renderCell(cellParams))]));
|
|
372
418
|
if (showValidTip && errorValidItem) {
|
|
373
419
|
const errRule = errorValidItem.rule;
|
|
374
420
|
const validSlot = slots ? slots.valid : null;
|
|
375
|
-
const validParams = Object.assign(Object.assign(Object.assign({},
|
|
421
|
+
const validParams = Object.assign(Object.assign(Object.assign({}, cellParams), errorValidItem), {
|
|
376
422
|
rule: errorValidItem
|
|
377
423
|
});
|
|
378
424
|
tdVNs.push((0, _vue.h)('div', {
|
|
425
|
+
key: 'tcv',
|
|
379
426
|
class: ['vxe-cell--valid-error-tip', (0, _dom.getPropClass)(validOpts.className, validParams)],
|
|
380
427
|
style: errRule && errRule.maxWidth ? {
|
|
381
428
|
width: `${errRule.maxWidth}px`
|
|
@@ -387,56 +434,54 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
387
434
|
}, errorValidItem.content)]])]));
|
|
388
435
|
}
|
|
389
436
|
}
|
|
390
|
-
let
|
|
391
|
-
const vnHeight = isCalcCellHeight ? rest.height : 0;
|
|
392
|
-
if (hasEllipsis) {
|
|
393
|
-
if (customRHeight) {
|
|
394
|
-
cellHeight = `${customRHeight}px`;
|
|
395
|
-
} else if (!isAllOverflow) {
|
|
396
|
-
cellHeight = `${vnHeight || defaultRowHeight || 18}px`;
|
|
397
|
-
}
|
|
398
|
-
} else {
|
|
399
|
-
cellHeight = `${vnHeight || defaultRowHeight || 18}px`;
|
|
400
|
-
}
|
|
437
|
+
let showAreaRowStatus = false;
|
|
401
438
|
if (mouseConfig && mouseOpts.area && selectCellToRow) {
|
|
402
|
-
if (
|
|
403
|
-
|
|
404
|
-
class: 'vxe-cell--area-status'
|
|
405
|
-
}));
|
|
439
|
+
if (!_columnIndex && selectCellToRow === true || selectCellToRow === column.field) {
|
|
440
|
+
showAreaRowStatus = true;
|
|
406
441
|
}
|
|
407
442
|
}
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
443
|
+
if (!fixedHiddenColumn && showResizable && isAllColumnDrag) {
|
|
444
|
+
tdVNs.push((0, _vue.h)('div', {
|
|
445
|
+
key: 'tcc',
|
|
446
|
+
class: ['vxe-cell--col-resizable', {
|
|
447
|
+
'is--line': !border || border === 'none'
|
|
448
|
+
}],
|
|
449
|
+
onMousedown: evnt => $xeTable.handleColResizeMousedownEvent(evnt, fixedType, cellParams),
|
|
450
|
+
onDblclick: evnt => $xeTable.handleColResizeDblclickEvent(evnt, cellParams)
|
|
451
|
+
}));
|
|
452
|
+
}
|
|
453
|
+
if ((rowResize || isAllRowDrag) && rowOpts.resizable) {
|
|
454
|
+
tdVNs.push((0, _vue.h)('div', {
|
|
455
|
+
key: 'tcr',
|
|
456
|
+
class: 'vxe-cell--row-resizable',
|
|
457
|
+
onMousedown: evnt => $xeTable.handleRowResizeMousedownEvent(evnt, cellParams),
|
|
458
|
+
onDblclick: evnt => $xeTable.handleRowResizeDblclickEvent(evnt, cellParams)
|
|
459
|
+
}));
|
|
415
460
|
}
|
|
416
461
|
return (0, _vue.h)('td', Object.assign(Object.assign(Object.assign({
|
|
417
|
-
class: ['vxe-body--column', colid, {
|
|
418
|
-
[`col--${cellAlign}`]: cellAlign,
|
|
419
|
-
[`col--vertical-${verticalAlign}`]: verticalAlign,
|
|
420
|
-
[`col--${type}`]: type,
|
|
462
|
+
class: ['vxe-body--column', colid, cellVerticalAlign ? `col--vertical-${cellVerticalAlign}` : '', cellAlign ? `col--${cellAlign}` : '', type ? `col--${type}` : '', {
|
|
421
463
|
'col--last': isLastColumn,
|
|
422
464
|
'col--tree-node': treeNode,
|
|
423
465
|
'col--edit': isEdit,
|
|
424
466
|
'col--ellipsis': hasEllipsis,
|
|
467
|
+
'col--cs-height': isCsHeight,
|
|
468
|
+
'col--rs-height': isRsHeight,
|
|
469
|
+
'col--to-row': showAreaRowStatus,
|
|
470
|
+
'col--auto-height': isVNAutoHeight,
|
|
425
471
|
'fixed--width': !isAutoCellWidth,
|
|
426
472
|
'fixed--hidden': fixedHiddenColumn,
|
|
473
|
+
'is--padding': isCellPadding,
|
|
427
474
|
'is--drag-cell': isRowDragCell && (isCrossDrag || isPeerDrag || !rowLevel),
|
|
428
475
|
'is--drag-disabled': isDisabledDrag,
|
|
429
476
|
'col--dirty': isDirty,
|
|
430
477
|
'col--active': editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row'),
|
|
431
478
|
'col--valid-error': !!errorValidItem,
|
|
432
479
|
'col--current': currentColumn === column
|
|
433
|
-
}, (0, _dom.getPropClass)(compCellClassName,
|
|
480
|
+
}, (0, _dom.getPropClass)(compCellClassName, cellParams), (0, _dom.getPropClass)(className, cellParams), (0, _dom.getPropClass)(allCellClassName, cellParams)],
|
|
434
481
|
key: columnKey || scrollXLoad || scrollYLoad || columnOpts.useKey || rowOpts.useKey || columnOpts.drag ? colid : $columnIndex
|
|
435
|
-
},
|
|
436
|
-
style: Object.assign({
|
|
437
|
-
|
|
438
|
-
}, _xeUtils.default.isFunction(compCellStyle) ? compCellStyle(params) : compCellStyle, _xeUtils.default.isFunction(cellStyle) ? cellStyle(params) : cellStyle)
|
|
439
|
-
}), tdOns), isPreLoadStatus || isOptimizeMode && fixedHiddenColumn ? [] : tdVNs);
|
|
482
|
+
}, tdAttrs), {
|
|
483
|
+
style: Object.assign({}, _xeUtils.default.isFunction(compCellStyle) ? compCellStyle(cellParams) : compCellStyle, _xeUtils.default.isFunction(cellStyle) ? cellStyle(cellParams) : cellStyle)
|
|
484
|
+
}), tdOns), isOptimizeMode && fixedHiddenColumn ? [] : tdVNs);
|
|
440
485
|
};
|
|
441
486
|
const renderRows = (fixedType, isOptimizeMode, tableData, tableColumn) => {
|
|
442
487
|
const {
|
|
@@ -445,15 +490,16 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
445
490
|
highlightHoverRow,
|
|
446
491
|
rowClassName,
|
|
447
492
|
rowStyle,
|
|
448
|
-
showOverflow: allColumnOverflow,
|
|
449
493
|
editConfig,
|
|
450
494
|
treeConfig
|
|
451
495
|
} = tableProps;
|
|
452
496
|
const {
|
|
453
497
|
hasFixedColumn,
|
|
454
498
|
treeExpandedMaps,
|
|
499
|
+
isColLoading,
|
|
455
500
|
scrollXLoad,
|
|
456
501
|
scrollYLoad,
|
|
502
|
+
isAllOverflow,
|
|
457
503
|
rowExpandedMaps,
|
|
458
504
|
expandColumn,
|
|
459
505
|
selectRadioRow,
|
|
@@ -557,7 +603,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
557
603
|
const tdVNs = tableColumn.map((column, $columnIndex) => {
|
|
558
604
|
return renderTdColumn(seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
|
|
559
605
|
});
|
|
560
|
-
rows.push(columnOpts.drag && columnDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, Object.assign({
|
|
606
|
+
rows.push(!isColLoading && columnOpts.drag && columnDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, Object.assign({
|
|
561
607
|
name: `vxe-header--col-list${isDragColMove ? '' : '-disabled'}`,
|
|
562
608
|
tag: 'tr',
|
|
563
609
|
class: trClass,
|
|
@@ -589,7 +635,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
589
635
|
const {
|
|
590
636
|
showOverflow
|
|
591
637
|
} = expandColumn;
|
|
592
|
-
const hasEllipsis = _xeUtils.default.isUndefined(showOverflow) || _xeUtils.default.isNull(showOverflow) ?
|
|
638
|
+
const hasEllipsis = _xeUtils.default.isUndefined(showOverflow) || _xeUtils.default.isNull(showOverflow) ? isAllOverflow : showOverflow;
|
|
593
639
|
const expandParams = {
|
|
594
640
|
$table: $xeTable,
|
|
595
641
|
seq,
|
|
@@ -676,7 +722,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
676
722
|
tableColumn
|
|
677
723
|
} = props;
|
|
678
724
|
const {
|
|
679
|
-
showOverflow: allColumnOverflow,
|
|
680
725
|
spanMethod,
|
|
681
726
|
footerSpanMethod,
|
|
682
727
|
mouseConfig
|
|
@@ -684,6 +729,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
684
729
|
const {
|
|
685
730
|
isGroup,
|
|
686
731
|
tableData,
|
|
732
|
+
isRowLoading,
|
|
733
|
+
isColLoading,
|
|
687
734
|
scrollXLoad,
|
|
688
735
|
scrollYLoad,
|
|
689
736
|
isAllOverflow,
|
|
@@ -707,7 +754,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
707
754
|
let renderColumnList = tableColumn;
|
|
708
755
|
let isOptimizeMode = false;
|
|
709
756
|
// 如果是使用优化模式
|
|
710
|
-
if (scrollXLoad || scrollYLoad ||
|
|
757
|
+
if (scrollXLoad || scrollYLoad || isAllOverflow) {
|
|
711
758
|
if (expandColumn || spanMethod || footerSpanMethod) {
|
|
712
759
|
// 如果不支持优化模式
|
|
713
760
|
} else {
|
|
@@ -825,9 +872,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
825
872
|
});
|
|
826
873
|
})),
|
|
827
874
|
/**
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
rowOpts.drag && rowDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, {
|
|
875
|
+
* 内容
|
|
876
|
+
*/
|
|
877
|
+
!(isRowLoading || isColLoading) && rowOpts.drag && rowDragOpts.animation ? (0, _vue.h)(_vue.TransitionGroup, {
|
|
831
878
|
ref: refBodyTBody,
|
|
832
879
|
name: `vxe-body--row-list${isDragRowMove ? '' : '-disabled'}`,
|
|
833
880
|
tag: 'tbody'
|
|
@@ -860,6 +907,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
860
907
|
class: 'vxe-table--cell-multi-area'
|
|
861
908
|
}), (0, _vue.h)('span', {
|
|
862
909
|
class: 'vxe-table--cell-active-area'
|
|
910
|
+
}), (0, _vue.h)('span', {
|
|
911
|
+
class: 'vxe-table--cell-row-status-area'
|
|
863
912
|
})]) : renderEmptyElement($xeTable), !fixedType ? (0, _vue.h)('div', {
|
|
864
913
|
class: 'vxe-table--empty-block',
|
|
865
914
|
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:$,reactData:Oe,internalData:Re}=De,{computeEditOpts:Ie,computeMouseOpts:Se,computeAreaOpts:Te,computeDefaultRowHeight:Me,computeEmptyOpts:k,computeTooltipOpts:$e,computeRadioOpts:e,computeExpandOpts:G,computeTreeOpts:u,computeCheckboxOpts:ke,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:v,align:H,spanMethod:W,mouseConfig:P,editConfig:K,editRules:p,tooltipConfig:V}=Ee,{tableData:g,overflowX:x,currentColumn:X,scrollXLoad:Y,scrollYLoad:z,isCalcCellHeight:G,mergeList:h,editStore:J,isAllOverflow:Q,validErrorMaps:m}=Oe,{afterFullData:w,scrollXStore:Z,scrollYStore:ee}=Re,le=qe.value,_=Ue.value,te=ke.value,ae=Ie.value,f=$e.value,re=je.value,y=Le.value,b=Me.value,{disabledMethod:oe,isCrossDrag:ie,isPeerDrag:se}=y,ne=Ae.value,de=Se.value,ue=Te.value.selectCellToRow,{type:ce,cellRender:ve,editRender:pe,align:ge,showOverflow:C,className:xe,treeNode:he,slots:me}=s,le=le.verticalAlign,J=J.actived,D=re.height,E=s.id,O=pe||ve,O=O?renderer.get(O.name):null,we=O?O.tableCellClassName||O.cellClassName:null,_e=O?O.tableCellStyle||O.cellStyle:"";let R=f.showAll;var f=De.getColumnIndex(s),I=De.getVTColumnIndex(s),fe=(0,_utils.isEnableConf)(pe);let S=t?s.fixed!==t:s.fixed&&x;x=_xeUtils.default.isUndefined(C)||_xeUtils.default.isNull(C)?c:C,C="ellipsis"===x;let T="title"===x,M=!0===x||"tooltip"===x;x=c||T||M||C;let ye;var $={},F=F[l],ge=ge||(O?O.tableCellAlign:"")||H,O=m[l+":"+E],H=p&&_.showMessage&&("default"===_.message?u||1<g.length:"inline"===_.message),m={colid:E};let k={$table:De,$grid:De.xegrid,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:r,$rowIndex:o,_rowIndex:i,column:s,columnIndex:f,$columnIndex:n,_columnIndex:I,fixed:t,type:renderType,isHidden:!!S,level:A,visibleData:w,data:g,items:d},q=!1,be=!1;if((q=re.drag?"row"===y.trigger||s.dragSort&&"cell"===y.trigger:q)&&(be=!(!oe||!oe(k))),(T||M||R||V)&&($.onMouseenter=e=>{Fe()||(T?(0,_dom.updateCellTitle)(e.currentTarget,s):(M||R)&&De.triggerBodyTooltipEvent(e,k),De.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(M||R||V)&&($.onMouseleave=e=>{Fe()||((M||R)&&De.handleTargetLeaveEvent(e),De.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(q||te.range||P)&&($.onMousedown=e=>{De.triggerCellMousedownEvent(e,k)}),q&&($.onMouseup=De.triggerCellMouseupEvent),$.onClick=e=>{De.triggerCellClickEvent(e,k)},$.onDblclick=e=>{De.triggerCellDblclickEvent(e,k)},h.length){p=(0,_util.mergeBodyMethod)(h,i,I);if(p){var{rowspan:u,colspan:e}=p;if(!u||!e)return null;1<u&&(m.rowspan=u),1<e&&(m.colspan=e)}}else if(W){var{rowspan:l=1,colspan:r=1}=W(k)||{};if(!l||!r)return null;1<l&&(m.rowspan=l),1<r&&(m.colspan=r)}!(S=S&&h&&(1<m.colspan||1<m.rowspan)?!1:S)&&K&&(pe||ve)&&(ae.showStatus||ae.showUpdateStatus)&&(ye=De.isUpdateByRow(a,s.field));o=[];S&&c&&Q?o.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":T,"c--tooltip":M,"c--ellipsis":C}],style:{maxHeight:x&&(D||b)?`${D||b}px`:""}})):(o.push(...Ne(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":T,"c--tooltip":M,"c--ellipsis":C}],style:{maxHeight:x&&(D||b)?`${D||b}px`:""},title:T?De.getCellLabel(a,s):null},s.renderCell(k))),H&&O&&(f=O.rule,t=me?me.valid:null,w=Object.assign(Object.assign(Object.assign({},k),O),{rule:O}),o.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(_.className,w)],style:f&&f.maxWidth?{width:f.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(_.theme||"normal")},[t?De.callSlot(t,w):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)]])]))));let U="";g=G?F.height:0,x?D?U=D+"px":Q||(U=`${g||b||18}px`):U=`${g||b||18}px`,P&&de.area&&ue&&((n||!0!==ue)&&ue!==s.field||o.push((0,_vue.h)("div",{class:"vxe-cell--area-status"}))),d=n===L.length-1,y=!s.resizeWidth&&("auto"===s.minWidth||"auto"===s.width);let Ce=!1;return(z&&(i<ee.visibleStartIndex||i>ee.visibleEndIndex)||Y&&!s.fixed&&(I<Z.visibleStartIndex||I>Z.visibleEndIndex))&&(Ce=!0),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",E,{["col--"+ge]:ge,["col--vertical-"+le]:le,["col--"+ce]:ce,"col--last":d,"col--tree-node":he,"col--edit":fe,"col--ellipsis":x,"fixed--width":!y,"fixed--hidden":S,"is--drag-cell":q&&(ie||se||!A),"is--drag-disabled":be,"col--dirty":ye,"col--active":K&&fe&&J.row===a&&(J.column===s||"row"===ae.mode),"col--valid-error":!!O,"col--current":X===s},(0,_dom.getPropClass)(we,k),(0,_dom.getPropClass)(xe,k),(0,_dom.getPropClass)(B,k)],key:N||Y||z||ne.useKey||re.useKey||ne.drag?E:n},m),{style:Object.assign({height:U},_xeUtils.default.isFunction(_e)?_e(k):_e,_xeUtils.default.isFunction(v)?v(k):v)}),$),Ce||j&&S?[]:o)},J=(m,w,_,f)=>{let{stripe:y,rowKey:b,highlightHoverRow:C,rowClassName:D,rowStyle:E,showOverflow:O,editConfig:R,treeConfig:I}=Ee,{hasFixedColumn:S,treeExpandedMaps:T,scrollXLoad:M,scrollYLoad:$,rowExpandedMaps:k,expandColumn:q,selectRadioRow:U,pendingRowMaps:j,isDragColMove:A}=Oe,L=Re.fullAllDataRowIdData,F=ke.value,N=e.value,B=u.value,H=Ie.value,W=je.value,P=Ae.value,K=l.value,{transform:V,seqMode:X}=B,Y=B.children||B.childrenField,z=[];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=I&&V&&"increasing"===X?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&&!!k[o];let u=!1,c=[],v=!1;R&&(v=De.isInsertByRow(t)),!I||$||V||(c=t[Y],u=c&&0<c.length&&!!T[o]),!W.drag||I&&!V||(e.onDragstart=De.handleRowDragDragstartEvent,e.onDragend=De.handleRowDragDragendEvent,e.onDragover=De.handleRowDragDragoverEvent);var p,g,x=["vxe-body--row",I?"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,_));z.push(P.drag&&K.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||$||W.useKey||W.drag||P.drag||I?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||$||W.useKey||W.drag||P.drag||I?o:a},e),h)),d&&({height:x,padding:l}=G.value,d={},p=(x&&(d.height=x+"px"),I&&(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},z.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&&!S,"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&&z.push(...J(m,w,c,f))}),z};(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=$.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=k.value,b=Se.value,C=Le.value,D=q.value,E=U.value;let O=d,R=a,I=!(u||c||r&&v)||g||o||i?!1:!0;t&&(R=m,I)&&(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 S;x=e?e.empty:null,S=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,I,O,R)}):(0,_vue.h)("tbody",{ref:N},J(t,I,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"},S)])])])}}});
|
|
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 ze=(0,_vue.inject)("$xeTable",{}),{xID:k,props:qe,context:z,reactData:Ae,internalData:$e}=ze,{computeEditOpts:Ue,computeMouseOpts:Le,computeAreaOpts:je,computeDefaultRowHeight:Fe,computeEmptyOpts:q,computeTooltipOpts:Ne,computeRadioOpts:e,computeExpandOpts:J,computeTreeOpts:c,computeCheckboxOpts:Be,computeCellOpts:He,computeValidOpts:We,computeRowOpts:Pe,computeColumnOpts:Ke,computeRowDragOpts:Ve,computeColumnDragOpts:l,computeLeftFixedWidth:A,computeRightFixedWidth:$,computeResizableOpts:Xe}=ze.getComputeMaps(),U=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),F=(0,_vue.ref)(),N=(0,_vue.ref)(),B=(0,_vue.ref)(),H=(0,_vue.ref)(),W=(0,_vue.ref)(),Ye=()=>{var e=qe.delayHover,{lastScrollTime:l,isDragResize:t}=Ae;return!!(t||l&&Date.now()<l+e)},Ge=(e,l)=>{var{row:t,column:a}=e,r=$e.afterFullData,o=qe.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=$e.fullAllDataRowIdData;if(a&&a.line)return ze.callSlot(a.line,e);a=n[(0,_util.getRowid)(ze,t)];let d=0,u=null;a&&(d=a.level,u=a.items[a.treeIndex-1]);n=ze.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)(ze):0)+16+"px"}})])]:[]},Z=(e,l,t,$,U,a,r,L,o,i,j,F,s)=>{var N=$e.fullAllDataRowIdData,{columnKey:B,resizable:n,border:H,height:d,cellClassName:W,cellStyle:P,align:u,spanMethod:K,mouseConfig:V,editConfig:X,editRules:c,tooltipConfig:v,padding:p}=qe,{tableData:g,overflowX:Y,currentColumn:G,scrollXLoad:J,scrollYLoad:x,calcCellHeightFlag:Q,resizeHeightFlag:h,mergeList:Z,editStore:ee,isAllOverflow:le,validErrorMaps:m}=Ae,{afterFullData:te,scrollXStore:w,scrollYStore:_}=$e,b=He.value,f=We.value,ae=Be.value,re=Ue.value,oe=Ne.value,{isAllColumnDrag:ie,isAllRowDrag:se}=Xe.value,ne=Pe.value,y=Ve.value,de=Fe.value,C=b.height||ne.height,de=C||de,{disabledMethod:D,isCrossDrag:ue,isPeerDrag:ce}=y,ve=Ke.value,pe=Le.value,ge=je.value.selectCellToRow,{type:xe,cellRender:he,editRender:me,align:we,showOverflow:_e,className:be,treeNode:fe,rowResize:ye,padding:R,verticalAlign:E,slots:Ce}=i,De=b.verticalAlign,ee=ee.actived,N=N[l],O=i.id,M=me||he,M=M?renderer.get(M.name):null,Re=M?M.tableCellClassName||M.cellClassName:null,Ee=M?M.tableCellStyle||M.cellStyle:"";let Oe=oe.showAll;var oe=ze.getColumnIndex(i),S=ze.getVTColumnIndex(i),Me=(0,_utils.isEnableConf)(me),h=h?N.resizeHeight:0;let I=t?i.fixed!==t:i.fixed&&Y;Y=_xeUtils.default.eqNull(R)?null===p?b.padding:p:R,b=_xeUtils.default.eqNull(_e)?le:_e,p="ellipsis"===b;let T="title"===b,k=!0===b||"tooltip"===b;R=le||T||k||p,_e=_xeUtils.default.isBoolean(i.resizable)?i.resizable:ve.resizable||n,b=!!C,n=0<h;let Se;C={},we=we||(M?M.tableCellAlign:"")||u,M=_xeUtils.default.eqNull(E)?De:E,u=m[l+":"+O],De=c&&f.showMessage&&("default"===f.message?d||1<g.length:"inline"===f.message),E={colid:O};let z={$table:ze,$grid:ze.xegrid,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:r,$rowIndex:L,_rowIndex:o,column:i,columnIndex:oe,$columnIndex:j,_columnIndex:S,fixed:t,type:renderType,isHidden:!!I,level:U,visibleData:te,data:g,items:s},q=!1,Ie=!1;if((q=ne.drag?"row"===y.trigger||i.dragSort&&"cell"===y.trigger:q)&&(Ie=!(!D||!D(z))),(T||k||Oe||v)&&(C.onMouseenter=e=>{Ye()||(T?(0,_dom.updateCellTitle)(e.currentTarget,i):(k||Oe)&&ze.triggerBodyTooltipEvent(e,z),ze.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Oe||v)&&(C.onMouseleave=e=>{Ye()||((k||Oe)&&ze.handleTargetLeaveEvent(e),ze.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),(q||ae.range||V)&&(C.onMousedown=e=>{ze.triggerCellMousedownEvent(e,z)}),q&&(C.onMouseup=ze.triggerCellMouseupEvent),C.onClick=e=>{ze.triggerCellClickEvent(e,z)},C.onDblclick=e=>{ze.triggerCellDblclickEvent(e,z)},Z.length){m=(0,_util.mergeBodyMethod)(Z,o,S);if(m){var{rowspan:c,colspan:d}=m;if(!c||!d)return null;1<c&&(E.rowspan=c),1<d&&(E.colspan=d)}}else if(K){var{rowspan:e=1,colspan:r=1}=K(z)||{};if(!e||!r)return null;1<e&&(E.rowspan=e),1<r&&(E.colspan=r)}!(I=I&&Z&&(1<E.colspan||1<E.rowspan)?!1:I)&&X&&(me||he)&&(re.showStatus||re.showUpdateStatus)&&(Se=ze.isUpdateByRow(a,i.field));L=x&&!R;let A=de;oe=Q?N.height:0,h?A=h:x&&!R&&(A=oe||de),te=j===F.length-1,g=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let Te=!1;(x&&(o<_.visibleStartIndex-_.preloadSize||o>_.visibleEndIndex+_.preloadSize)||J&&!i.fixed&&(S<w.visibleStartIndex-w.preloadSize||S>w.visibleEndIndex+w.preloadSize))&&(Te=!0);s={},x||R||b||n?s.height=A+"px":s.minHeight=A+"px",y=[];I&&le?y.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":p}],style:s})):(y.push(...Ge(z,A),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":p}],style:s,title:T?ze.getCellLabel(a,i):null},Te?[]:[(0,_vue.h)("div",{colid:O,rowid:l,class:"vxe-cell--wrapper"},i.renderCell(z))])),De&&u&&(D=u.rule,v=Ce?Ce.valid:null,ae=Object.assign(Object.assign(Object.assign({},z),u),{rule:u}),y.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,ae)],style:D&&D.maxWidth?{width:D.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[v?ze.callSlot(v,ae):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},u.content)]])]))));let ke=!1;return V&&pe.area&&ge&&((S||!0!==ge)&&ge!==i.field||(ke=!0)),!I&&_e&&ie&&y.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!H||"none"===H}],onMousedown:e=>ze.handleColResizeMousedownEvent(e,t,z),onDblclick:e=>ze.handleColResizeDblclickEvent(e,z)})),(ye||se)&&ne.resizable&&y.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>ze.handleRowResizeMousedownEvent(e,z),onDblclick:e=>ze.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",O,M?"col--vertical-"+M:"",we?"col--"+we:"",xe?"col--"+xe:"",{"col--last":te,"col--tree-node":fe,"col--edit":Me,"col--ellipsis":R,"col--cs-height":b,"col--rs-height":n,"col--to-row":ke,"col--auto-height":L,"fixed--width":!g,"fixed--hidden":I,"is--padding":Y,"is--drag-cell":q&&(ue||ce||!U),"is--drag-disabled":Ie,"col--dirty":Se,"col--active":X&&Me&&ee.row===a&&(ee.column===i||"row"===re.mode),"col--valid-error":!!u,"col--current":G===i},(0,_dom.getPropClass)(Re,z),(0,_dom.getPropClass)(be,z),(0,_dom.getPropClass)(W,z)],key:B||J||x||ve.useKey||ne.useKey||ve.drag?O:j},E),{style:Object.assign({},_xeUtils.default.isFunction(Ee)?Ee(z):Ee,_xeUtils.default.isFunction(P)?P(z):P)}),C),$&&I?[]:y)},Q=(m,w,_,b)=>{let{stripe:f,rowKey:y,highlightHoverRow:C,rowClassName:D,rowStyle:R,editConfig:E,treeConfig:O}=qe,{hasFixedColumn:M,treeExpandedMaps:S,isColLoading:I,scrollXLoad:T,scrollYLoad:k,isAllOverflow:z,rowExpandedMaps:q,expandColumn:A,selectRadioRow:$,pendingRowMaps:U,isDragColMove:L}=Ae,j=$e.fullAllDataRowIdData,F=Be.value,N=e.value,B=c.value,H=Ue.value,W=Pe.value,P=Ke.value,K=l.value,{transform:V,seqMode:X}=B,Y=B.children||B.childrenField,G=[];return _.forEach((t,a)=>{var e={};let r,o=(r=ze.getRowIndex(t),(W.isHover||C)&&(e.onMouseenter=e=>{Ye()||ze.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{Ye()||ze.clearHoverRow()}),(0,_util.getRowid)(ze,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:ze,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=ze.isInsertByRow(t)),!O||k||V||(c=t[Y],u=c&&0<c.length&&!!S[o]),!W.drag||O&&!V||(e.onDragstart=ze.handleRowDragDragstartEvent,e.onDragend=ze.handleRowDragDragendEvent,e.onDragover=ze.handleRowDragDragoverEvent);var p,g,x=["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&&(H.showStatus||H.showInsertStatus),"row--radio":N.highlight&&ze.eqRow($,t),"row--checked":F.highlight&&ze.isCheckedByCheckboxRow(t),"row--pending":!!U[o]},(0,_dom.getPropClass)(D,l)];let h=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:x,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:()=>h}):(0,_vue.h)("tr",Object.assign({class:x,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),h)),d&&({height:x,padding:l}=J.value,d={},p=(x&&(d.height=x+"px"),O&&(d.paddingLeft=i*B.indent+30+"px"),A).showOverflow,p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?z:p,g={$table:ze,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":x},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=$e.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"]=B,l[e+"ySpace"]=H,l[e+"emptyBlock"]=W})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=$e.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}=qe,{isGroup:s,tableData:n,isRowLoading:d,isColLoading:u,scrollXLoad:c,scrollYLoad:v,isAllOverflow:p,isDragRowMove:g,expandColumn:x,dragRow:h,dragCol:m}=Ae,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:b}=$e,f=Pe.value,y=q.value,C=Le.value,D=Ve.value,R=A.value,E=$.value;let O=n,M=a,S=!(c||v||p)||x||r||o?!1:!0;t&&(M=w,S)&&(M=l||[]),v&&h&&2<O.length&&(n=_[(0,_util.getRowid)(ze,h)])&&(p=n._index,x=O[0],r=O[O.length-1],o=_[(0,_util.getRowid)(ze,x)],w=_[(0,_util.getRowid)(ze,r)],o)&&w&&(n=o._index,x=w._index,p<n?O=[h].concat(O):x<p&&(O=O.concat([h]))),t||s||c&&m&&2<M.length&&(_=b[m.id])&&(r=_._index,o=M[0],w=M[M.length-1],n=b[o.id],x=b[w.id],n)&&x&&(p=n._index,h=x._index,r<p?M=[m].concat(M):h<r&&(M=M.concat([m])));let I;s=e?e.empty:null,I=s?ze.callSlot(s,{$table:ze,$grid:ze.xegrid}):(_=(c=y.name?renderer.get(y.name):null)?c.renderTableEmpty||c.renderTableEmptyView||c.renderEmpty:null)?(0,_vn.getSlotVNs)(_(y,{$table:ze})):qe.emptyText||getI18n("vxe.table.emptyText"),o={onScroll(e){ze.triggerBodyScrollEvent(e,t)}};return(v||R||E)&&(o.onWheel=ze.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(ze):(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: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){ze.triggerCellAreaExtendMousedownEvent&&ze.triggerCellAreaExtendMousedownEvent(e,{$table:ze,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(ze),t?renderEmptyElement(ze):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:W},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},I)])])])}}});
|