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