vxe-table 3.19.21 → 3.19.22

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.
@@ -463,9 +463,11 @@ const Cell = exports.Cell = {
463
463
  totalMethod,
464
464
  countFields,
465
465
  contentMethod,
466
+ formatValuesMethod,
466
467
  mapChildrenField
467
468
  } = aggregateOpts;
468
- const aggCalcMethod = aggregateOpts.calcValuesMethod || aggregateOpts.countMethod || aggregateOpts.aggregateMethod;
469
+ const aggData = aggRow.aggData;
470
+ const currAggData = aggData ? aggData[field] : null;
469
471
  const groupField = aggRow.groupField;
470
472
  const groupContent = aggRow.groupContent;
471
473
  const childList = mapChildrenField ? aggRow[mapChildrenField] || [] : [];
@@ -510,9 +512,10 @@ const Cell = exports.Cell = {
510
512
  } else if ($table.getPivotTableAggregateCellAggValue) {
511
513
  cellValue = $table.getPivotTableAggregateCellAggValue(params);
512
514
  } else if (aggFunc === true || countFields && countFields.includes(field)) {
513
- if (aggCalcMethod) {
514
- ctParams.aggValue = childCount;
515
- cellValue = `${aggCalcMethod(ctParams)}`;
515
+ cellValue = currAggData ? currAggData.value : childCount;
516
+ ctParams.aggValue = cellValue;
517
+ if (formatValuesMethod) {
518
+ cellValue = formatValuesMethod(ctParams);
516
519
  }
517
520
  }
518
521
  } else {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:t,column:r}=l,n=r.titlePrefix||r.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){t.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){t.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_PREFIX})]):renderEmptyElement(t)}function renderTitleSuffixIcon(e,l){let{$table:t,column:r}=l,n=r.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){t.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){t.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_SUFFIX})]):renderEmptyElement(t)}function renderCellDragIcon(e,l){let t=l.$table;var r=t.$scopedSlots,n=t.dragConfig,{icon:o,trigger:a,disabledMethod:d}=t.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let i=d&&d(l);d=r.rowDragIcon||r["row-drag-icon"],r={};return"cell"!==a&&(r.mousedown=e=>{i||t.handleCellDragMousedownEvent(e,l)},r.mouseup=t.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}],on:r},d?t.callSlot(d,l,e):[e("i",{class:o||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,t){var{$table:r,column:n,level:o}=l,n=n.dragSort,{treeConfig:a,dragConfig:d}=r,i=r.computeRowOpts,s=r.computeTreeOpts,{showIcon:r,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=r.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),g=[];return n&&i.drag&&(r||d&&d.showRowIcon)&&(!C||C(l))&&(!a||s.transform&&(c||u||!o))&&g.unshift(renderCellDragIcon(e,l)),g.concat(_xeUtils.default.isArray(t)?t:[t])}function renderHeaderCellDragIcon(e,t){let{$table:r,column:l}=t;var n=r.$scopedSlots,o=l.slots,a=r.computeColumnOpts,{showIcon:d,icon:i,trigger:s,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=r.computeColumnDragOpts;if(!a.drag||!d||C&&!C(t)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(r);{let l=g&&g(t);a=(o?o.columnDragIcon||o["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==s&&(d.mousedown=e=>{l||r.handleHeaderCellDragMousedownEvent(e,t)},d.mouseup=r.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},a?r.callSlot(a,t,e):[e("i",{class:i||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,t){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(t)?t:[t],renderTitleSuffixIcon(e,l)]}function getRenderDefaultColumnTitle(e,l,t){return"html"===l.type&&_xeUtils.default.isString(t)?e("span",{key:"ch",domProps:{innerHTML:t}}):e("span",{key:"ct"},(0,_vn.getSlotVNs)(t))}function renderTitleContent(e,l,t){let{$table:r,column:n}=l;var o=r;let a=r;var o=o.showHeaderOverflow,d=a.isRowGroupStatus,{showHeaderOverflow:i,slots:s}=n,s=s?s.title:null;let c=r.computeHeaderTooltipOpts.showAll;o=_xeUtils.default.eqNull(i)?o:i;let u="title"===o,C=!0===o||"tooltip"===o;i={},(u||C||c)&&(i.mouseenter=e=>{a.isDragResize||(u?(0,_dom.updateCellTitle)(e.currentTarget,n):(C||c)&&r.triggerHeaderTooltipEvent(e,l))}),(C||c)&&(i.mouseleave=e=>{a.isDragResize||(C||c)&&r.handleTargetLeaveEvent(e)}),o=getRenderDefaultColumnTitle(e,n,t);return[e("span",{class:"vxe-cell--title",on:i},d&&n.aggFunc&&r.getPivotTableAggregateRenderColTitles?r.getPivotTableAggregateRenderColTitles(e,n,o):s?r.callSlot(s,l,e):[o])]}function getFooterContent(e,l){var{$table:t,column:r,row:n}=l,{slots:o,editRender:a,cellRender:d}=r,a=a||d;if(o&&o.footer)return t.callSlot(o.footer,l,e);d=t.getFooterCellLabel(n,r);if(a){o=renderer.get(a.name),n=o?o.renderTableFooter||o.renderFooter:null;if(n)return r=Object.assign(l,{cellValue:d,itemValue:d}),(0,_vn.getSlotVNs)(n.call(t,e,a,r))}return[(0,_utils.formatText)(d,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:t}=e;return(0,_utils.formatText)(e.getCellLabel(l,t),1)}function renderCellHandle(e,l){var{column:t,row:r,$table:n}=l,o=n.editConfig,a=n.isRowGroupStatus,{type:d,treeNode:i,rowGroupNode:s,editRender:c}=t,u=n.computeAggregateOpts.mode,C=n.computeCheckboxOpts,n=n.computeEditOpts,g=i||a&&("column"===u?t.field===r.groupField:s);switch(d){case"seq":return g?Cell.renderDeepIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return g?Cell.renderDeepRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return C.checkField?g?Cell.renderDeepSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):g?Cell.renderDeepSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return g?Cell.renderDeepHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return o&&(0,_utils.isEnableConf)(n)&&c?"cell"===n.mode?g?Cell.renderDeepCellEdit(e,l):Cell.renderCellEdit(e,l):g?Cell.renderDeepRowEdit(e,l):Cell.renderRowEdit(e,l):g?Cell.renderDeepCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:t,$table:r}=l,n=r.editConfig,r=r.computeEditOpts,{type:t,filters:o,sortable:a,editRender:d}=t;switch(t){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(o&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(o)return Cell.renderFilterHeader(e,l)}return n&&(0,_utils.isEnableConf)(r)&&d?Cell.renderEditHeader(e,l):o&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):o?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var t=l.type,r={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===t&&(r.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,r)},renderHeaderTitle(e,l){var{$table:t,column:r}=l,{slots:n,editRender:o,cellRender:a}=r,o=o||a;if(n&&n.header)return renderTitleContent(e,l,t.callSlot(n.header,l,e));if(o){a=renderer.get(o.name),n=a?a.renderTableHeader||a.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(t,e,o,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:t,row:r,column:n}=l,o=t,a=t.isRowGroupStatus,d=t.editConfig,{field:i,slots:s,editRender:c,cellRender:u,rowGroupNode:C,aggFunc:g,formatter:p}=n,d=d&&(0,_utils.isEnableConf)(c)?c:(0,_utils.isEnableConf)(u)?u:null,u=s?s.default:null,s=s?s.groupContent||s["group-content"]:null;let E="";if(a&&i&&r.isAggregate){var a=r,o=o.fullColumnFieldData,b=t.computeAggregateOpts,{mode:v,showTotal:m,totalMethod:f,countFields:h,contentMethod:x,mapChildrenField:_}=b,b=b.calcValuesMethod||b.countMethod||b.aggregateMethod,T=a.groupField,D=a.groupContent,_=_&&a[_]||[],w=a.childCount,o=o[T]||{},o={$table:t,groupField:T,groupColumn:o?o.column:null,column:n,groupValue:D,childList:_,childCount:w,aggValue:null,children:_,totalValue:w};if(s)return renderCellBaseVNs(e,l,t.callSlot(s,Object.assign({groupField:T,groupContent:D,childList:_,childCount:w},l),e));("column"===v?i===a.groupField:C)?(E=D,x&&(E=""+x(o)),m&&(E=getI18n("vxe.table.rowGroupContentTotal",[E,f?f(o):w,w]))):t.getPivotTableAggregateCellAggValue?E=t.getPivotTableAggregateCellAggValue(l):(!0===g||h&&h.includes(i))&&b&&(o.aggValue=w,E=""+b(o))}else{if(u)return renderCellBaseVNs(e,l,t.callSlot(u,l,e));if(d&&!p){s=renderer.get(d.name),T=s?s.renderTableDefault||s.renderDefault:null,_=s?s.renderTableCell||s.renderCell:null,v=c?_:T;if(v)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(v.call(t,e,d,Object.assign({$type:c?"edit":"cell"},l))))}E=t.getCellLabel(r,n)}a=c?c.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[c&&(0,_utils.eqEmptyValue)(E)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(E,1))])])},renderDeepCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderRowGroupBtn(e,l,t){let r=l.$table;var n=r,o=r,{row:a,level:d}=l,n=n.rowGroupExpandedFlag,o=o.rowGroupExpandedMaps,{mode:i,padding:s,indent:c,showIcon:u,iconOpen:C,iconClose:g}=r.computeAggregateOpts,p=(0,_util.getRowid)(r,a),n=!!n&&!!o[p];return e("div",{class:["vxe-row-group--tree-node",{"is--expanded":n}],style:"column"!==i&&s&&c?{paddingLeft:d*c+"px"}:void 0},[u&&a.isAggregate?e("span",{class:"vxe-row-group--node-btn",on:{click(e){r.triggerRowGroupExpandEvent(e,l)}}},[e("i",{class:n?C||getIcon().TABLE_ROW_GROUP_OPEN:g||getIcon().TABLE_ROW_GROUP_CLOSE})]):renderEmptyElement(r),e("div",{class:"vxe-row-group-cell"},t)])},renderTreeNodeBtn(e,l,t){let{$table:r,isHidden:n}=l;var o=r.treeExpandedFlag,{fullAllDataRowIdData:a,treeExpandedMaps:d,treeExpandLazyLoadedMaps:i}=r,s=r.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{padding:g,indent:p,lazy:E,trigger:b,iconLoaded:v,showIcon:m,iconOpen:f,iconClose:h}=s,x=s.children||s.childrenField,s=s.hasChild||s.hasChildField,x=c[x],x=x&&x.length,u=u?u.icon:null;let _=!1,T=!1,D=!1,w=!1;var I={};return u?r.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(r,c),T=!!o&&!!d[u],E&&(o=a[u],D=!!i[u],_=c[s],w=!!o.treeLoaded)),b&&"default"!==b||(I.click=e=>{r.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:g&&p?{paddingLeft:C*p+"px"}:void 0},[m&&(!E||w?x:x||_)?[e("div",{class:"vxe-cell--tree-btn",on:I},[e("i",{class:D?v||getIcon().TABLE_TREE_LOADED:T?f||getIcon().TABLE_TREE_OPEN:h||getIcon().TABLE_TREE_CLOSE})])]:null,e("div",{class:"vxe-tree-cell"},t)])])},renderDeepNodeBtn(e,l,t){var{$table:r,row:n,column:o}=l,a=o.rowGroupNode,d=r.rowGroupList;if(d.length){d=r.computeAggregateOpts.mode;if("column"===d?o.field===n.groupField:a)return[Cell.renderRowGroupBtn(e,l,t)]}return[Cell.renderTreeNodeBtn(e,l,t)]},renderSeqHeader(e,l){var{$table:t,column:r}=l,n=r.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?t.callSlot(n.header,l,e):(0,_utils.formatText)(r.getTitle(),1)))},renderSeqCell(e,l){var{$table:t,column:r}=l,n=t.treeConfig,o=t.computeSeqOpts,r=r.slots;return r&&r.default?renderCellBaseVNs(e,l,t.callSlot(r.default,l,e)):(t=l.seq,r=o.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(r?r(l):n?t:(o.startIndex||0)+t,1))]))},renderDeepIndexCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:t,column:r}=l,n=r.slots,o=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,o?t.callSlot(o,l,e):[e("span",{class:"vxe-radio--label"},n?t.callSlot(n,l,e):(0,_utils.formatText)(r.getTitle(),1))]))},renderRadioCell(e,l){let{$table:t,column:r,isHidden:n}=l;var o=t.selectRadioRow,a=r.slots,{labelField:d,checkMethod:i,visibleMethod:s}=t.computeRadioOpts,c=l.row,u=a?a.default:null,a=a?a.radio:null,o=c===o;let C=!s||s({$table:t,row:c}),g=!!i,p;n||(p={click(e){!g&&C&&t.triggerRadioRowEvent(e,l)}},i&&(g=!i({$table:t,row:c})));s=Object.assign(Object.assign({},l),{checked:o,disabled:g,visible:C});return a?renderCellBaseVNs(e,l,t.callSlot(a,s,e)):(i=[],C&&i.push(e("span",{class:["vxe-radio--icon",o?getIcon().TABLE_RADIO_CHECKED:g?getIcon().TABLE_RADIO_DISABLED_UNCHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&i.push(e("span",{class:"vxe-radio--label"},u?t.callSlot(u,s,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":o,"is--disabled":g}],on:p},i)]))},renderDeepRadioCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:t,column:r,isHidden:n}=l;let{isAllSelected:o,isIndeterminate:a}=t,d=t.computeIsAllCheckboxDisabled;var i=r.slots,s=i?i.header:null,i=i?i.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=t.computeCheckboxOpts,g=r.getTitle(),p={},E=(n||(p.click=e=>{d||t.triggerCheckAllEvent(e,!o)}),Object.assign(Object.assign({},l),{checked:o,disabled:d,indeterminate:a}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,s?t.callSlot(s,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":o,"is--disabled":d,"is--indeterminate":a}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:p},[e("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:d?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(i||g?[e("span",{class:"vxe-checkbox--label"},i?t.callSlot(i,E,e):g)]:[]))]:[e("span",{class:"vxe-checkbox--label"},i?t.callSlot(i,E,e):g)]))},renderCheckboxCell(e,l){let{$table:t,row:r,column:n,isHidden:o}=l;var a=t.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=t,{selectCheckboxMaps:s,treeIndeterminateRowMaps:c}=t,u=t.computeAggregateOpts.mapChildrenField;let{labelField:C,checkMethod:g,visibleMethod:p}=t.computeCheckboxOpts;var E=n.slots,b=E?E.default:null,E=E?E.checkbox:null;let v=!1,m=!1,f=!0,h=!1;var x,_={},s=(o||(x=(0,_util.getRowid)(t,r),m=!!d&&!!s[x],g&&i&&t.isAggregateRecord(r)?(d=r[u||""])&&d.length&&!d.every(e=>!g({$table:t,row:e}))||(h=!0):(f=!p||p({$table:t,row:r}),h=g?!g({$table:t,row:r}):!!g),(a||i)&&(v=!!c[x]),_.click=e=>{!h&&f&&t.triggerCheckRowEvent(e,l,!m)}),Object.assign(Object.assign({},l),{checked:m,disabled:h,visible:f,indeterminate:v}));return E?renderCellBaseVNs(e,l,t.callSlot(E,s,e)):(u=[],f&&u.push(e("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:m?getIcon().TABLE_CHECKBOX_CHECKED:h?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(b||C)&&u.push(e("span",{class:"vxe-checkbox--label"},b?t.callSlot(b,s,e):_xeUtils.default.get(r,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":m,"is--disabled":h,"is--indeterminate":v,"is--hidden":!f}],on:_},u)]))},renderDeepSelectionCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:t,row:r,column:n,isHidden:o}=l;var a=t.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=t,s=t.treeIndeterminateRowMaps,c=t.computeAggregateOpts.mapChildrenField,u=t.computeCheckboxOpts;let{labelField:C,checkField:g,checkMethod:p,visibleMethod:E}=u;var u=u.indeterminateField||u.halfField,b=n.slots,v=b?b.default:null,b=b?b.checkbox:null;let m=!1,f=!1,h=!0,x=!1;var _,T={},c=(o||(_=(0,_util.getRowid)(t,r),f=!!d&&_xeUtils.default.get(r,g),p&&i&&t.isAggregateRecord(r)?(d=r[c||""])&&d.length&&!d.every(e=>!p({$table:t,row:e}))||(x=!0):(h=!E||E({$table:t,row:r}),x=p?!p({$table:t,row:r}):!!p),(a||i)&&(m=!!s[_]),T.click=e=>{!x&&h&&t.triggerCheckRowEvent(e,l,!f)}),Object.assign(Object.assign({},l),{checked:f,disabled:x,visible:h,indeterminate:m}));return b?renderCellBaseVNs(e,l,t.callSlot(b,c,e)):(d=[],h&&d.push(e("span",{class:["vxe-checkbox--icon",m?getIcon().TABLE_CHECKBOX_INDETERMINATE:f?getIcon().TABLE_CHECKBOX_CHECKED:x?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(v||C)&&d.push(e("span",{class:"vxe-checkbox--label"},v?t.callSlot(v,c,e):_xeUtils.default.get(r,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":f,"is--disabled":x,"is--indeterminate":u&&!f?r[u]:m,"is--hidden":!h}],on:T},d)]))},renderDeepSelectionCellByProp(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:t,isHidden:r,row:n,column:o}=l;var a=t.isRowGroupStatus,{rowExpandedMaps:d,rowExpandLazyLoadedMaps:i}=t,{lazy:s,labelField:c,iconLoaded:u,showIcon:C,iconOpen:g,iconClose:p,visibleMethod:E}=t.computeExpandOpts,b=o.slots,v=b?b.default:null,b=b?b.icon:null;let m=!1,f=!1;return a&&n.isAggregate?renderCellBaseVNs(e,l,[]):b?renderCellBaseVNs(e,l,t.callSlot(b,l,e)):(r||(a=(0,_util.getRowid)(t,n),m=!!d[a],s&&(f=!!i[a])),renderCellBaseVNs(e,l,[!C||E&&!E(l)?renderEmptyElement(t):e("span",{class:["vxe-table--expanded",{"is--active":m}],on:{mousedown(e){e.stopPropagation()},click(e){t.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",f?u||getIcon().TABLE_EXPAND_LOADED:m?g||getIcon().TABLE_EXPAND_OPEN:p||getIcon().TABLE_EXPAND_CLOSE]})]),v||c?e("span",{class:"vxe-table--expand-label"},v?t.callSlot(v,l,e):_xeUtils.default.get(n,c)):renderEmptyElement(t)]))},renderExpandData(e,l){var{$table:t,column:r}=l,{slots:r,contentRender:n}=r;if(r&&r.content)return t.callSlot(r.content,l,e);if(n){r=renderer.get(n.name),r=r?r.renderTableExpand||r.renderExpand:null;if(r)return(0,_vn.getSlotVNs)(r.call(t,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:t,column:r}=l,r=r.slots;return r&&r.default?renderCellBaseVNs(e,l,t.callSlot(r.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderDeepHTMLCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:t,column:r}=l;var{showIcon:n,allowBtn:o,ascTitle:a,descTitle:d,iconLayout:i,iconAsc:s,iconDesc:c,iconVisibleMethod:u}=t.computeSortOpts,{order:C,slots:g}=r;return!n||u&&!u(l)?[]:(n=g?g.sort:null)?(0,_vn.getSlotVNs)(t.callSlot(n,l,e)):[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${i}-layout`]},[e("i",{class:["vxe-sort--asc-btn",s||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===C}],attrs:{title:_xeUtils.default.eqNull(a)?getI18n("vxe.table.sortAsc"):""+(a||"")},on:o?{click(e){e.stopPropagation(),t.triggerSortEvent(e,r,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===C}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:o?{click(e){e.stopPropagation(),t.triggerSortEvent(e,r,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:t,column:r,hasFilter:n}=l;var o=t.filterStore,{showIcon:a,iconNone:d,iconMatch:i,iconVisibleMethod:s}=t.computeFilterOpts;return!a||s&&!s(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":o.visible&&o.column===r}],on:{click(e){t.triggerFilterEvent&&t.triggerFilterEvent(e,l.column,l)}}},[e("i",{class:["vxe-filter--btn",n?i||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")}})])]},renderEditHeader(e,l){var{$table:t,column:r}=l,{editConfig:n,editRules:o}=t,a=t.computeEditOpts,{sortable:d,filters:i,editRender:s}=r;let c=!1,u=(o&&(o=_xeUtils.default.get(o,r.field))&&(c=o.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&({showAsterisk:r,showIcon:o,icon:n}=a,u=[c&&r?e("i",{class:"vxe-cell--required-icon"},[e("i",{class:"vxe-cell--required-icon"})]):renderEmptyElement(t),(0,_utils.isEnableConf)(s)&&o?e("i",{class:"vxe-cell--edit-icon"},_xeUtils.default.isFunction(n)?(0,_vn.getSlotVNs)(n({})):[e("i",{class:n||getIcon().TABLE_EDIT})]):renderEmptyElement(t)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(i?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:t,column:r}=l,t=t.editStore,t=t.actived,r=r.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(r)&&t&&t.row===l.row)},renderDeepRowEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:t,column:r}=l,t=t.editStore,t=t.actived,r=r.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(r)&&t&&t.row===l.row&&t.column===l.column)},renderDeepCellEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,t,r){var{$table:n,row:o,column:a}=l,d=n.isRowGroupStatus,{slots:a,field:i,editRender:s,formatter:c}=a,u=renderer.get(s.name),u=u?u.renderTableEdit||u.renderEdit:null,C=a?a.default:null,g=a?a.groupContent||a["group-content"]:null,p=Object.assign({$type:"",isEdit:r},l);if(r)return a&&a.edit?n.callSlot(a.edit,p,e):u?(0,_vn.getSlotVNs)(u.call(n,e,s,p)):[];if(d&&i&&o.isAggregate){r=n.computeAggregateOpts.mapChildrenField,a=o.groupField,u=r&&o[r]||[];if(g)return renderCellBaseVNs(e,l,n.callSlot(g,Object.assign({groupField:a,groupContent:o.groupContent,childList:u,childCount:o.childCount},l),e))}else if(C)return renderCellBaseVNs(e,l,n.callSlot(C,p,e));return c?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(p)])]):Cell.renderDefaultCell.call(t,e,p)}};var _default=exports.default=Cell;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:r,column:t}=l,n=t.titlePrefix||t.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_PREFIX})]):renderEmptyElement(r)}function renderTitleSuffixIcon(e,l){let{$table:r,column:t}=l,n=t.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_SUFFIX})]):renderEmptyElement(r)}function renderCellDragIcon(e,l){let r=l.$table;var t=r.$scopedSlots,n=r.dragConfig,{icon:o,trigger:a,disabledMethod:d}=r.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let i=d&&d(l);d=t.rowDragIcon||t["row-drag-icon"],t={};return"cell"!==a&&(t.mousedown=e=>{i||r.handleCellDragMousedownEvent(e,l)},t.mouseup=r.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}],on:t},d?r.callSlot(d,l,e):[e("i",{class:o||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:o}=l,n=n.dragSort,{treeConfig:a,dragConfig:d}=t,i=t.computeRowOpts,s=t.computeTreeOpts,{showIcon:t,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=t.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),g=[];return n&&i.drag&&(t||d&&d.showRowIcon)&&(!C||C(l))&&(!a||s.transform&&(c||u||!o))&&g.unshift(renderCellDragIcon(e,l)),g.concat(_xeUtils.default.isArray(r)?r:[r])}function renderHeaderCellDragIcon(e,r){let{$table:t,column:l}=r;var n=t.$scopedSlots,o=l.slots,a=t.computeColumnOpts,{showIcon:d,icon:i,trigger:s,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=t.computeColumnDragOpts;if(!a.drag||!d||C&&!C(r)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(t);{let l=g&&g(r);a=(o?o.columnDragIcon||o["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==s&&(d.mousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.mouseup=t.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},a?t.callSlot(a,r,e):[e("i",{class:i||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,r){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(r)?r:[r],renderTitleSuffixIcon(e,l)]}function getRenderDefaultColumnTitle(e,l,r){return"html"===l.type&&_xeUtils.default.isString(r)?e("span",{key:"ch",domProps:{innerHTML:r}}):e("span",{key:"ct"},(0,_vn.getSlotVNs)(r))}function renderTitleContent(e,l,r){let{$table:t,column:n}=l;var o=t;let a=t;var o=o.showHeaderOverflow,d=a.isRowGroupStatus,{showHeaderOverflow:i,slots:s}=n,s=s?s.title:null;let c=t.computeHeaderTooltipOpts.showAll;o=_xeUtils.default.eqNull(i)?o:i;let u="title"===o,C=!0===o||"tooltip"===o;i={},(u||C||c)&&(i.mouseenter=e=>{a.isDragResize||(u?(0,_dom.updateCellTitle)(e.currentTarget,n):(C||c)&&t.triggerHeaderTooltipEvent(e,l))}),(C||c)&&(i.mouseleave=e=>{a.isDragResize||(C||c)&&t.handleTargetLeaveEvent(e)}),o=getRenderDefaultColumnTitle(e,n,r);return[e("span",{class:"vxe-cell--title",on:i},d&&n.aggFunc&&t.getPivotTableAggregateRenderColTitles?t.getPivotTableAggregateRenderColTitles(e,n,o):s?t.callSlot(s,l,e):[o])]}function getFooterContent(e,l){var{$table:r,column:t,row:n}=l,{slots:o,editRender:a,cellRender:d}=t,a=a||d;if(o&&o.footer)return r.callSlot(o.footer,l,e);d=r.getFooterCellLabel(n,t);if(a){o=renderer.get(a.name),n=o?o.renderTableFooter||o.renderFooter:null;if(n)return t=Object.assign(l,{cellValue:d,itemValue:d}),(0,_vn.getSlotVNs)(n.call(r,e,a,t))}return[(0,_utils.formatText)(d,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e,l){var{column:r,row:t,$table:n}=l,o=n.editConfig,a=n.isRowGroupStatus,{type:d,treeNode:i,rowGroupNode:s,editRender:c}=r,u=n.computeAggregateOpts.mode,C=n.computeCheckboxOpts,n=n.computeEditOpts,g=i||a&&("column"===u?r.field===t.groupField:s);switch(d){case"seq":return g?Cell.renderDeepIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return g?Cell.renderDeepRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return C.checkField?g?Cell.renderDeepSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):g?Cell.renderDeepSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return g?Cell.renderDeepHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return o&&(0,_utils.isEnableConf)(n)&&c?"cell"===n.mode?g?Cell.renderDeepCellEdit(e,l):Cell.renderCellEdit(e,l):g?Cell.renderDeepRowEdit(e,l):Cell.renderRowEdit(e,l):g?Cell.renderDeepCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:r,$table:t}=l,n=t.editConfig,t=t.computeEditOpts,{type:r,filters:o,sortable:a,editRender:d}=r;switch(r){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(o&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(o)return Cell.renderFilterHeader(e,l)}return n&&(0,_utils.isEnableConf)(t)&&d?Cell.renderEditHeader(e,l):o&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):o?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e,l){var{$table:r,column:t}=l,{slots:n,editRender:o,cellRender:a}=t,o=o||a;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(o){a=renderer.get(o.name),n=a?a.renderTableHeader||a.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,o,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(t.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:r,row:t,column:n}=l,o=r,a=r.isRowGroupStatus,d=r.editConfig,{field:i,slots:s,editRender:c,cellRender:u,rowGroupNode:C,aggFunc:g,formatter:p}=n,d=d&&(0,_utils.isEnableConf)(c)?c:(0,_utils.isEnableConf)(u)?u:null,u=s?s.default:null,s=s?s.groupContent||s["group-content"]:null;let E="";if(a&&i&&t.isAggregate){var a=t,o=o.fullColumnFieldData,{mode:b,showTotal:v,totalMethod:m,countFields:f,contentMethod:h,formatValuesMethod:x,mapChildrenField:_}=r.computeAggregateOpts,T=a.aggData,T=T?T[i]:null,D=a.groupField,w=a.groupContent,_=_&&a[_]||[],I=a.childCount,o=o[D]||{},o={$table:r,groupField:D,groupColumn:o?o.column:null,column:n,groupValue:w,childList:_,childCount:I,aggValue:null,children:_,totalValue:I};if(s)return renderCellBaseVNs(e,l,r.callSlot(s,Object.assign({groupField:D,groupContent:w,childList:_,childCount:I},l),e));("column"===b?i===a.groupField:C)?(E=w,h&&(E=""+h(o)),v&&(E=getI18n("vxe.table.rowGroupContentTotal",[E,m?m(o):I,I]))):r.getPivotTableAggregateCellAggValue?E=r.getPivotTableAggregateCellAggValue(l):(!0===g||f&&f.includes(i))&&(E=T?T.value:I,o.aggValue=E,x)&&(E=x(o))}else{if(u)return renderCellBaseVNs(e,l,r.callSlot(u,l,e));if(d&&!p){s=renderer.get(d.name),D=s?s.renderTableDefault||s.renderDefault:null,_=s?s.renderTableCell||s.renderCell:null,b=c?_:D;if(b)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(b.call(r,e,d,Object.assign({$type:c?"edit":"cell"},l))))}E=r.getCellLabel(t,n)}a=c?c.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[c&&(0,_utils.eqEmptyValue)(E)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(E,1))])])},renderDeepCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderRowGroupBtn(e,l,r){let t=l.$table;var n=t,o=t,{row:a,level:d}=l,n=n.rowGroupExpandedFlag,o=o.rowGroupExpandedMaps,{mode:i,padding:s,indent:c,showIcon:u,iconOpen:C,iconClose:g}=t.computeAggregateOpts,p=(0,_util.getRowid)(t,a),n=!!n&&!!o[p];return e("div",{class:["vxe-row-group--tree-node",{"is--expanded":n}],style:"column"!==i&&s&&c?{paddingLeft:d*c+"px"}:void 0},[u&&a.isAggregate?e("span",{class:"vxe-row-group--node-btn",on:{click(e){t.triggerRowGroupExpandEvent(e,l)}}},[e("i",{class:n?C||getIcon().TABLE_ROW_GROUP_OPEN:g||getIcon().TABLE_ROW_GROUP_CLOSE})]):renderEmptyElement(t),e("div",{class:"vxe-row-group-cell"},r)])},renderTreeNodeBtn(e,l,r){let{$table:t,isHidden:n}=l;var o=t.treeExpandedFlag,{fullAllDataRowIdData:a,treeExpandedMaps:d,treeExpandLazyLoadedMaps:i}=t,s=t.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{padding:g,indent:p,lazy:E,trigger:b,iconLoaded:v,showIcon:m,iconOpen:f,iconClose:h}=s,x=s.children||s.childrenField,s=s.hasChild||s.hasChildField,x=c[x],x=x&&x.length,u=u?u.icon:null;let _=!1,T=!1,D=!1,w=!1;var I={};return u?t.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(t,c),T=!!o&&!!d[u],E&&(o=a[u],D=!!i[u],_=c[s],w=!!o.treeLoaded)),b&&"default"!==b||(I.click=e=>{t.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:g&&p?{paddingLeft:C*p+"px"}:void 0},[m&&(!E||w?x:x||_)?[e("div",{class:"vxe-cell--tree-btn",on:I},[e("i",{class:D?v||getIcon().TABLE_TREE_LOADED:T?f||getIcon().TABLE_TREE_OPEN:h||getIcon().TABLE_TREE_CLOSE})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderDeepNodeBtn(e,l,r){var{$table:t,row:n,column:o}=l,a=o.rowGroupNode,d=t.rowGroupList;if(d.length){d=t.computeAggregateOpts.mode;if("column"===d?o.field===n.groupField:a)return[Cell.renderRowGroupBtn(e,l,r)]}return[Cell.renderTreeNodeBtn(e,l,r)]},renderSeqHeader(e,l){var{$table:r,column:t}=l,n=t.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?r.callSlot(n.header,l,e):(0,_utils.formatText)(t.getTitle(),1)))},renderSeqCell(e,l){var{$table:r,column:t}=l,n=r.treeConfig,o=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=o.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(o.startIndex||0)+r,1))]))},renderDeepIndexCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:r,column:t}=l,n=t.slots,o=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,o?r.callSlot(o,l,e):[e("span",{class:"vxe-radio--label"},n?r.callSlot(n,l,e):(0,_utils.formatText)(t.getTitle(),1))]))},renderRadioCell(e,l){let{$table:r,column:t,isHidden:n}=l;var o=r.selectRadioRow,a=t.slots,{labelField:d,checkMethod:i,visibleMethod:s}=r.computeRadioOpts,c=l.row,u=a?a.default:null,a=a?a.radio:null,o=c===o;let C=!s||s({$table:r,row:c}),g=!!i,p;n||(p={click(e){!g&&C&&r.triggerRadioRowEvent(e,l)}},i&&(g=!i({$table:r,row:c})));s=Object.assign(Object.assign({},l),{checked:o,disabled:g,visible:C});return a?renderCellBaseVNs(e,l,r.callSlot(a,s,e)):(i=[],C&&i.push(e("span",{class:["vxe-radio--icon",o?getIcon().TABLE_RADIO_CHECKED:g?getIcon().TABLE_RADIO_DISABLED_UNCHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&i.push(e("span",{class:"vxe-radio--label"},u?r.callSlot(u,s,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":o,"is--disabled":g}],on:p},i)]))},renderDeepRadioCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:r,column:t,isHidden:n}=l;let{isAllSelected:o,isIndeterminate:a}=r,d=r.computeIsAllCheckboxDisabled;var i=t.slots,s=i?i.header:null,i=i?i.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=r.computeCheckboxOpts,g=t.getTitle(),p={},E=(n||(p.click=e=>{d||r.triggerCheckAllEvent(e,!o)}),Object.assign(Object.assign({},l),{checked:o,disabled:d,indeterminate:a}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,s?r.callSlot(s,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":o,"is--disabled":d,"is--indeterminate":a}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:p},[e("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:d?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(i||g?[e("span",{class:"vxe-checkbox--label"},i?r.callSlot(i,E,e):g)]:[]))]:[e("span",{class:"vxe-checkbox--label"},i?r.callSlot(i,E,e):g)]))},renderCheckboxCell(e,l){let{$table:r,row:t,column:n,isHidden:o}=l;var a=r.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=r,{selectCheckboxMaps:s,treeIndeterminateRowMaps:c}=r,u=r.computeAggregateOpts.mapChildrenField;let{labelField:C,checkMethod:g,visibleMethod:p}=r.computeCheckboxOpts;var E=n.slots,b=E?E.default:null,E=E?E.checkbox:null;let v=!1,m=!1,f=!0,h=!1;var x,_={},s=(o||(x=(0,_util.getRowid)(r,t),m=!!d&&!!s[x],g&&i&&r.isAggregateRecord(t)?(d=t[u||""])&&d.length&&!d.every(e=>!g({$table:r,row:e}))||(h=!0):(f=!p||p({$table:r,row:t}),h=g?!g({$table:r,row:t}):!!g),(a||i)&&(v=!!c[x]),_.click=e=>{!h&&f&&r.triggerCheckRowEvent(e,l,!m)}),Object.assign(Object.assign({},l),{checked:m,disabled:h,visible:f,indeterminate:v}));return E?renderCellBaseVNs(e,l,r.callSlot(E,s,e)):(u=[],f&&u.push(e("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:m?getIcon().TABLE_CHECKBOX_CHECKED:h?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(b||C)&&u.push(e("span",{class:"vxe-checkbox--label"},b?r.callSlot(b,s,e):_xeUtils.default.get(t,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":m,"is--disabled":h,"is--indeterminate":v,"is--hidden":!f}],on:_},u)]))},renderDeepSelectionCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:r,row:t,column:n,isHidden:o}=l;var a=r.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=r,s=r.treeIndeterminateRowMaps,c=r.computeAggregateOpts.mapChildrenField,u=r.computeCheckboxOpts;let{labelField:C,checkField:g,checkMethod:p,visibleMethod:E}=u;var u=u.indeterminateField||u.halfField,b=n.slots,v=b?b.default:null,b=b?b.checkbox:null;let m=!1,f=!1,h=!0,x=!1;var _,T={},c=(o||(_=(0,_util.getRowid)(r,t),f=!!d&&_xeUtils.default.get(t,g),p&&i&&r.isAggregateRecord(t)?(d=t[c||""])&&d.length&&!d.every(e=>!p({$table:r,row:e}))||(x=!0):(h=!E||E({$table:r,row:t}),x=p?!p({$table:r,row:t}):!!p),(a||i)&&(m=!!s[_]),T.click=e=>{!x&&h&&r.triggerCheckRowEvent(e,l,!f)}),Object.assign(Object.assign({},l),{checked:f,disabled:x,visible:h,indeterminate:m}));return b?renderCellBaseVNs(e,l,r.callSlot(b,c,e)):(d=[],h&&d.push(e("span",{class:["vxe-checkbox--icon",m?getIcon().TABLE_CHECKBOX_INDETERMINATE:f?getIcon().TABLE_CHECKBOX_CHECKED:x?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(v||C)&&d.push(e("span",{class:"vxe-checkbox--label"},v?r.callSlot(v,c,e):_xeUtils.default.get(t,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":f,"is--disabled":x,"is--indeterminate":u&&!f?t[u]:m,"is--hidden":!h}],on:T},d)]))},renderDeepSelectionCellByProp(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:r,isHidden:t,row:n,column:o}=l;var a=r.isRowGroupStatus,{rowExpandedMaps:d,rowExpandLazyLoadedMaps:i}=r,{lazy:s,labelField:c,iconLoaded:u,showIcon:C,iconOpen:g,iconClose:p,visibleMethod:E}=r.computeExpandOpts,b=o.slots,v=b?b.default:null,b=b?b.icon:null;let m=!1,f=!1;return a&&n.isAggregate?renderCellBaseVNs(e,l,[]):b?renderCellBaseVNs(e,l,r.callSlot(b,l,e)):(t||(a=(0,_util.getRowid)(r,n),m=!!d[a],s&&(f=!!i[a])),renderCellBaseVNs(e,l,[!C||E&&!E(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":m}],on:{mousedown(e){e.stopPropagation()},click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",f?u||getIcon().TABLE_EXPAND_LOADED:m?g||getIcon().TABLE_EXPAND_OPEN:p||getIcon().TABLE_EXPAND_CLOSE]})]),v||c?e("span",{class:"vxe-table--expand-label"},v?r.callSlot(v,l,e):_xeUtils.default.get(n,c)):renderEmptyElement(r)]))},renderExpandData(e,l){var{$table:r,column:t}=l,{slots:t,contentRender:n}=t;if(t&&t.content)return r.callSlot(t.content,l,e);if(n){t=renderer.get(n.name),t=t?t.renderTableExpand||t.renderExpand:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:r,column:t}=l,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderDeepHTMLCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:r,column:t}=l;var{showIcon:n,allowBtn:o,ascTitle:a,descTitle:d,iconLayout:i,iconAsc:s,iconDesc:c,iconVisibleMethod:u}=r.computeSortOpts,{order:C,slots:g}=t;return!n||u&&!u(l)?[]:(n=g?g.sort:null)?(0,_vn.getSlotVNs)(r.callSlot(n,l,e)):[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${i}-layout`]},[e("i",{class:["vxe-sort--asc-btn",s||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===C}],attrs:{title:_xeUtils.default.eqNull(a)?getI18n("vxe.table.sortAsc"):""+(a||"")},on:o?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===C}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:o?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:r,column:t,hasFilter:n}=l;var o=r.filterStore,{showIcon:a,iconNone:d,iconMatch:i,iconVisibleMethod:s}=r.computeFilterOpts;return!a||s&&!s(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":o.visible&&o.column===t}],on:{click(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}}},[e("i",{class:["vxe-filter--btn",n?i||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")}})])]},renderEditHeader(e,l){var{$table:r,column:t}=l,{editConfig:n,editRules:o}=r,a=r.computeEditOpts,{sortable:d,filters:i,editRender:s}=t;let c=!1,u=(o&&(o=_xeUtils.default.get(o,t.field))&&(c=o.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&({showAsterisk:t,showIcon:o,icon:n}=a,u=[c&&t?e("i",{class:"vxe-cell--required-icon"},[e("i",{class:"vxe-cell--required-icon"})]):renderEmptyElement(r),(0,_utils.isEnableConf)(s)&&o?e("i",{class:"vxe-cell--edit-icon"},_xeUtils.default.isFunction(n)?(0,_vn.getSlotVNs)(n({})):[e("i",{class:n||getIcon().TABLE_EDIT})]):renderEmptyElement(r)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(i?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row)},renderDeepRowEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row&&r.column===l.column)},renderDeepCellEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,r,t){var{$table:n,row:o,column:a}=l,d=n.isRowGroupStatus,{slots:a,field:i,editRender:s,formatter:c}=a,u=renderer.get(s.name),u=u?u.renderTableEdit||u.renderEdit:null,C=a?a.default:null,g=a?a.groupContent||a["group-content"]:null,p=Object.assign({$type:"",isEdit:t},l);if(t)return a&&a.edit?n.callSlot(a.edit,p,e):u?(0,_vn.getSlotVNs)(u.call(n,e,s,p)):[];if(d&&i&&o.isAggregate){t=n.computeAggregateOpts.mapChildrenField,a=o.groupField,u=t&&o[t]||[];if(g)return renderCellBaseVNs(e,l,n.callSlot(g,Object.assign({groupField:a,groupContent:o.groupContent,childList:u,childCount:o.childCount},l),e))}else if(C)return renderCellBaseVNs(e,l,n.callSlot(C,p,e));return c?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(p)])]):Cell.renderDefaultCell.call(r,e,p)}};var _default=exports.default=Cell;
@@ -2994,11 +2994,39 @@ const calcCellHeight = $xeTable => {
2994
2994
  }
2995
2995
  };
2996
2996
  function getOrderField($xeTable, column) {
2997
+ const reactData = $xeTable;
2998
+ const {
2999
+ isRowGroupStatus
3000
+ } = reactData;
2997
3001
  const {
2998
3002
  sortBy,
2999
- sortType
3003
+ sortType,
3004
+ aggFunc
3000
3005
  } = column;
3001
- return row => {
3006
+ return isRowGroupStatus && aggFunc ? row => {
3007
+ if (row.isAggregate) {
3008
+ const aggData = row.aggData;
3009
+ const currAggData = aggData ? aggData[column.field] : null;
3010
+ return currAggData ? currAggData.value : null;
3011
+ }
3012
+ let cellValue;
3013
+ if (sortBy) {
3014
+ cellValue = _xeUtils.default.isFunction(sortBy) ? sortBy({
3015
+ row,
3016
+ column
3017
+ }) : _xeUtils.default.get(row, sortBy);
3018
+ } else {
3019
+ cellValue = $xeTable.getCellLabel(row, column);
3020
+ }
3021
+ if (!sortType || sortType === 'auto') {
3022
+ return isNaN(cellValue) ? cellValue : _xeUtils.default.toNumber(cellValue);
3023
+ } else if (sortType === 'number') {
3024
+ return _xeUtils.default.toNumber(cellValue);
3025
+ } else if (sortType === 'string') {
3026
+ return _xeUtils.default.toValueString(cellValue);
3027
+ }
3028
+ return cellValue;
3029
+ } : row => {
3002
3030
  let cellValue;
3003
3031
  if (sortBy) {
3004
3032
  cellValue = _xeUtils.default.isFunction(sortBy) ? sortBy({
@@ -3603,10 +3631,16 @@ function handleUpdateRowGroup($xeTable, groupFields) {
3603
3631
  handleUpdateAggValues($xeTable);
3604
3632
  }
3605
3633
  function handleeGroupSummary($xeTable, aggList) {
3634
+ const internalData = $xeTable;
3635
+ const {
3636
+ fullColumnFieldData
3637
+ } = internalData;
3606
3638
  const aggregateOpts = $xeTable.computeAggregateOpts;
3639
+ const aggFuncColumns = $xeTable.computeAggFuncColumns;
3607
3640
  const {
3608
3641
  mapChildrenField
3609
3642
  } = aggregateOpts;
3643
+ const aggCalcMethod = aggregateOpts.calcValuesMethod || aggregateOpts.countMethod || aggregateOpts.aggregateMethod;
3610
3644
  if (mapChildrenField) {
3611
3645
  _xeUtils.default.lastEach(aggList, aggRow => {
3612
3646
  let count = 0;
@@ -3621,6 +3655,62 @@ function handleeGroupSummary($xeTable, aggList) {
3621
3655
  });
3622
3656
  if ($xeTable.handlePivotTableAggregateData) {
3623
3657
  $xeTable.handlePivotTableAggregateData(aggList);
3658
+ } else {
3659
+ _xeUtils.default.lastEach(aggList, aggRow => {
3660
+ const aggDtObj = {};
3661
+ const aggData = aggRow.aggData;
3662
+ const groupField = aggRow.groupField;
3663
+ const groupContent = aggRow.groupContent;
3664
+ const childList = mapChildrenField ? aggRow[mapChildrenField] || [] : [];
3665
+ const childCount = aggRow.childCount;
3666
+ const colRest = fullColumnFieldData[groupField] || {};
3667
+ aggFuncColumns.forEach(column => {
3668
+ const {
3669
+ field
3670
+ } = column;
3671
+ const currAggData = aggData ? aggData[field] : null;
3672
+ const ctParams = {
3673
+ $table: $xeTable,
3674
+ groupField,
3675
+ groupColumn: colRest ? colRest.column : null,
3676
+ column,
3677
+ groupValue: groupContent,
3678
+ childList,
3679
+ childCount,
3680
+ aggValue: currAggData ? currAggData.value : 0,
3681
+ /**
3682
+ * 已废弃
3683
+ * @deprecated
3684
+ */
3685
+ children: childList,
3686
+ /**
3687
+ * 已废弃
3688
+ * @deprecated
3689
+ */
3690
+ totalValue: childCount
3691
+ };
3692
+ let aggVal = 0;
3693
+ // 如果下层同时也是分组
3694
+ if (childList.length && childList[0].isAggregate) {
3695
+ _xeUtils.default.each(childList, row => {
3696
+ if (row.isAggregate) {
3697
+ const currAggData = row.aggData[field];
3698
+ if (currAggData) {
3699
+ aggVal += currAggData.value;
3700
+ }
3701
+ }
3702
+ });
3703
+ } else {
3704
+ aggVal = aggCalcMethod ? aggCalcMethod(ctParams) : aggRow.childCount;
3705
+ }
3706
+ aggDtObj[field] = {
3707
+ type: 'count',
3708
+ value: aggVal,
3709
+ label: aggVal
3710
+ };
3711
+ });
3712
+ aggRow.aggData = aggDtObj;
3713
+ });
3624
3714
  }
3625
3715
  }
3626
3716
  }
@@ -4835,7 +4925,35 @@ function handleRowExpandScroll($xeTable) {
4835
4925
  rowExpandEl.scrollTop = bodyScrollElem.scrollTop;
4836
4926
  }
4837
4927
  }
4838
- const Methods = {
4928
+ function handleColumnVisible(visible) {
4929
+ const $xeTable = this;
4930
+ return function (fieldOrColumn) {
4931
+ let status = false;
4932
+ const cols = _xeUtils.default.isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
4933
+ cols.forEach(item => {
4934
+ const column = (0, _util.handleFieldOrColumn)($xeTable, item);
4935
+ if (column) {
4936
+ if (column.children && column.children.length) {
4937
+ _xeUtils.default.eachTree([column], item => {
4938
+ item.visible = visible;
4939
+ item.renderVisible = visible;
4940
+ });
4941
+ } else {
4942
+ column.visible = visible;
4943
+ column.renderVisible = visible;
4944
+ }
4945
+ if (!status) {
4946
+ status = true;
4947
+ }
4948
+ }
4949
+ });
4950
+ if (status) {
4951
+ return $xeTable.handleCustom();
4952
+ }
4953
+ return $xeTable.$nextTick();
4954
+ };
4955
+ }
4956
+ const tableMethods = {
4839
4957
  callSlot(slotFunc, params, h, vNodes) {
4840
4958
  const $xeTable = this;
4841
4959
  // const slots = $xeTable.$scopedSlots
@@ -6486,45 +6604,11 @@ const Methods = {
6486
6604
  /**
6487
6605
  * 隐藏指定列
6488
6606
  */
6489
- hideColumn(fieldOrColumn) {
6490
- const $xeTable = this;
6491
- let status = false;
6492
- const cols = _xeUtils.default.isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
6493
- cols.forEach(item => {
6494
- const column = (0, _util.handleFieldOrColumn)($xeTable, item);
6495
- if (column && column.visible) {
6496
- column.visible = false;
6497
- if (!status) {
6498
- status = true;
6499
- }
6500
- }
6501
- });
6502
- if (status) {
6503
- return $xeTable.handleCustom();
6504
- }
6505
- return $xeTable.$nextTick();
6506
- },
6607
+ hideColumn: handleColumnVisible(false),
6507
6608
  /**
6508
6609
  * 显示指定列
6509
6610
  */
6510
- showColumn(fieldOrColumn) {
6511
- const $xeTable = this;
6512
- let status = false;
6513
- const cols = _xeUtils.default.isArray(fieldOrColumn) ? fieldOrColumn : [fieldOrColumn];
6514
- cols.forEach(item => {
6515
- const column = (0, _util.handleFieldOrColumn)($xeTable, item);
6516
- if (column && !column.visible) {
6517
- column.visible = true;
6518
- if (!status) {
6519
- status = true;
6520
- }
6521
- }
6522
- });
6523
- if (status) {
6524
- return $xeTable.handleCustom();
6525
- }
6526
- return $xeTable.$nextTick();
6527
- },
6611
+ showColumn: handleColumnVisible(true),
6528
6612
  setColumnWidth(fieldOrColumn, width) {
6529
6613
  const $xeTable = this;
6530
6614
  const internalData = $xeTable;
@@ -13996,7 +14080,7 @@ const Methods = {
13996
14080
  // Module methods
13997
14081
  const funcs = 'setFilter,openFilter,clearFilter,saveFilter,saveFilterByEvent,resetFilter,resetFilterByEvent,saveFilterPanel,saveFilterPanelByEvent,resetFilterPanel,resetFilterPanelByEvent,getCheckedFilters,updateFilterOptionStatus,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFNR,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,insertNextAt,insertChild,insertChildAt,insertChildNextAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearEdit,clearActived,getEditRecord,getEditCell,getActiveRecord,isEditByRow,isActiveByRow,setEditRow,setActiveRow,setEditCell,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,fullValidateField,validateField,openExport,closeExport,openPrint,closePrint,getPrintHtml,exportData,openImport,closeImport,importData,saveFile,readFile,importByFile,print,getCustomVisible,openCustom,closeCustom,toggleCustom,saveCustom,cancelCustom,resetCustom,toggleCustomAllCheckbox,setCustomAllCheckbox'.split(',');
13998
14082
  funcs.forEach(name => {
13999
- Methods[name] = function (...args) {
14083
+ tableMethods[name] = function (...args) {
14000
14084
  // if (!this[`_${name}`]) {
14001
14085
  // if ('openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',').includes(name)) {
14002
14086
  // errLog('vxe.error.reqModule', ['Export'])
@@ -14013,4 +14097,4 @@ funcs.forEach(name => {
14013
14097
  return this[`_${name}`] ? this[`_${name}`](...args) : null;
14014
14098
  };
14015
14099
  });
14016
- var _default = exports.default = Methods;
14100
+ var _default = exports.default = tableMethods;