vxe-table 4.16.6 → 4.16.8
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 +12 -0
- package/es/style.css +1 -1
- package/es/table/src/table.js +67 -8
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +12 -0
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +23 -11
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/src/table.js +9 -9
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- 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/package.json +1 -1
- package/packages/grid/src/grid.ts +15 -0
- package/packages/table/src/table.ts +67 -8
- /package/es/{iconfont.1756974435268.ttf → iconfont.1757293933468.ttf} +0 -0
- /package/es/{iconfont.1756974435268.woff → iconfont.1757293933468.woff} +0 -0
- /package/es/{iconfont.1756974435268.woff2 → iconfont.1757293933468.woff2} +0 -0
- /package/lib/{iconfont.1756974435268.ttf → iconfont.1757293933468.ttf} +0 -0
- /package/lib/{iconfont.1756974435268.woff → iconfont.1757293933468.woff} +0 -0
- /package/lib/{iconfont.1756974435268.woff2 → iconfont.1757293933468.woff2} +0 -0
package/es/table/src/table.js
CHANGED
|
@@ -197,6 +197,7 @@ export default defineVxeComponent({
|
|
|
197
197
|
column: null,
|
|
198
198
|
content: null,
|
|
199
199
|
visible: false,
|
|
200
|
+
type: null,
|
|
200
201
|
currOpts: {}
|
|
201
202
|
},
|
|
202
203
|
// 存放数据校验相关信息
|
|
@@ -5560,6 +5561,7 @@ export default defineVxeComponent({
|
|
|
5560
5561
|
column: null,
|
|
5561
5562
|
content: null,
|
|
5562
5563
|
visible: false,
|
|
5564
|
+
type: null,
|
|
5563
5565
|
currOpts: {}
|
|
5564
5566
|
});
|
|
5565
5567
|
if ($tooltip && $tooltip.close) {
|
|
@@ -6488,6 +6490,24 @@ export default defineVxeComponent({
|
|
|
6488
6490
|
}
|
|
6489
6491
|
return nextTick();
|
|
6490
6492
|
},
|
|
6493
|
+
getRowGroups() {
|
|
6494
|
+
const { aggregateConfig, rowGroupConfig } = props;
|
|
6495
|
+
const { fullColumnFieldData } = internalData;
|
|
6496
|
+
if (aggregateConfig || rowGroupConfig) {
|
|
6497
|
+
const { rowGroupList } = reactData;
|
|
6498
|
+
return rowGroupList.map(({ field }) => {
|
|
6499
|
+
const colRet = fullColumnFieldData[field];
|
|
6500
|
+
if (colRet) {
|
|
6501
|
+
return colRet.column;
|
|
6502
|
+
}
|
|
6503
|
+
return { field };
|
|
6504
|
+
});
|
|
6505
|
+
}
|
|
6506
|
+
return [];
|
|
6507
|
+
},
|
|
6508
|
+
getRowGroupFields() {
|
|
6509
|
+
return $xeTable.getRowGroups().map(item => item.field);
|
|
6510
|
+
},
|
|
6491
6511
|
clearRowGroups() {
|
|
6492
6512
|
const { aggregateConfig, rowGroupConfig } = props;
|
|
6493
6513
|
if (!(aggregateConfig || rowGroupConfig)) {
|
|
@@ -8038,7 +8058,7 @@ export default defineVxeComponent({
|
|
|
8038
8058
|
* @param {Event} evnt 事件
|
|
8039
8059
|
* @param {Row} row 行对象
|
|
8040
8060
|
*/
|
|
8041
|
-
const handleTooltip = (evnt, tdEl, overflowElem, tipElem, params) => {
|
|
8061
|
+
const handleTooltip = (evnt, type, tdEl, overflowElem, tipElem, params) => {
|
|
8042
8062
|
const tipOverEl = overflowElem || tdEl;
|
|
8043
8063
|
if (!tipOverEl) {
|
|
8044
8064
|
return nextTick();
|
|
@@ -8053,16 +8073,19 @@ export default defineVxeComponent({
|
|
|
8053
8073
|
const content = useCustom ? customContent : XEUtils.toString(column.type === 'html' ? tipOverEl.innerText : tipOverEl.textContent).trim();
|
|
8054
8074
|
const isOver = tipOverEl.scrollWidth > tipOverEl.clientWidth;
|
|
8055
8075
|
if (content && (showAll || useCustom || isOver)) {
|
|
8076
|
+
const tipContent = formatText(content);
|
|
8056
8077
|
Object.assign(tooltipStore, {
|
|
8057
8078
|
row,
|
|
8058
8079
|
column,
|
|
8059
8080
|
visible: true,
|
|
8081
|
+
content: tipContent,
|
|
8082
|
+
type,
|
|
8060
8083
|
currOpts: {}
|
|
8061
8084
|
});
|
|
8062
8085
|
nextTick(() => {
|
|
8063
8086
|
const $tooltip = refTooltip.value;
|
|
8064
8087
|
if ($tooltip && $tooltip.open) {
|
|
8065
|
-
$tooltip.open(isOver ? tipOverEl : tipElem,
|
|
8088
|
+
$tooltip.open(isOver ? tipOverEl : tipElem, tipContent);
|
|
8066
8089
|
}
|
|
8067
8090
|
});
|
|
8068
8091
|
}
|
|
@@ -9191,7 +9214,7 @@ export default defineVxeComponent({
|
|
|
9191
9214
|
}
|
|
9192
9215
|
if (tooltipStore.column !== column || !tooltipStore.visible) {
|
|
9193
9216
|
const ctEl = thEl.querySelector('.vxe-cell--title');
|
|
9194
|
-
handleTooltip(evnt, thEl, (hasClass(thEl, 'col--ellipsis') ? ctEl : cWrapperEl) || cWrapperEl, ctEl || cellEl, params);
|
|
9217
|
+
handleTooltip(evnt, 'header', thEl, (hasClass(thEl, 'col--ellipsis') ? ctEl : cWrapperEl) || cWrapperEl, ctEl || cellEl, params);
|
|
9195
9218
|
}
|
|
9196
9219
|
},
|
|
9197
9220
|
/**
|
|
@@ -9227,7 +9250,7 @@ export default defineVxeComponent({
|
|
|
9227
9250
|
if (!tipEl) {
|
|
9228
9251
|
tipEl = ctEl;
|
|
9229
9252
|
}
|
|
9230
|
-
handleTooltip(evnt, tdEl, ovEl || ctEl, tipEl, params);
|
|
9253
|
+
handleTooltip(evnt, 'body', tdEl, ovEl || ctEl, tipEl, params);
|
|
9231
9254
|
}
|
|
9232
9255
|
},
|
|
9233
9256
|
/**
|
|
@@ -9248,7 +9271,7 @@ export default defineVxeComponent({
|
|
|
9248
9271
|
if (!tipEl) {
|
|
9249
9272
|
tipEl = ctEl;
|
|
9250
9273
|
}
|
|
9251
|
-
handleTooltip(evnt, tdEl, ovEl || ctEl, tipEl, params);
|
|
9274
|
+
handleTooltip(evnt, 'footer', tdEl, ovEl || ctEl, tipEl, params);
|
|
9252
9275
|
}
|
|
9253
9276
|
},
|
|
9254
9277
|
handleTargetLeaveEvent() {
|
|
@@ -12019,10 +12042,16 @@ export default defineVxeComponent({
|
|
|
12019
12042
|
};
|
|
12020
12043
|
const renderVN = () => {
|
|
12021
12044
|
const { loading, stripe, showHeader, height, treeConfig, mouseConfig, showFooter, highlightCell, highlightHoverRow, highlightHoverColumn, editConfig, editRules } = props;
|
|
12022
|
-
const { isGroup, overflowX, overflowY, scrollXLoad, scrollYLoad, tableData, initStore, isRowGroupStatus, columnStore, filterStore, customStore } = reactData;
|
|
12045
|
+
const { isGroup, overflowX, overflowY, scrollXLoad, scrollYLoad, tableData, initStore, isRowGroupStatus, columnStore, filterStore, customStore, tooltipStore } = reactData;
|
|
12023
12046
|
const { teleportToWrapperElem } = internalData;
|
|
12024
12047
|
const { leftList, rightList } = columnStore;
|
|
12025
12048
|
const loadingSlot = slots.loading;
|
|
12049
|
+
const tipSlots = {
|
|
12050
|
+
header: slots.headerTooltip || slots['header-tooltip'],
|
|
12051
|
+
body: slots.tooltip,
|
|
12052
|
+
footer: slots.footerTooltip || slots['footer-tooltip']
|
|
12053
|
+
};
|
|
12054
|
+
const currTooltipSlot = tooltipStore.visible && tooltipStore.type ? tipSlots[tooltipStore.type] : null;
|
|
12026
12055
|
const rowDragOpts = computeRowDragOpts.value;
|
|
12027
12056
|
const tableTipConfig = computeTableTipConfig.value;
|
|
12028
12057
|
const validTipConfig = computeValidTipConfig.value;
|
|
@@ -12275,8 +12304,38 @@ export default defineVxeComponent({
|
|
|
12275
12304
|
enterable: tableTipConfig.enterable,
|
|
12276
12305
|
enterDelay: tableTipConfig.enterDelay,
|
|
12277
12306
|
leaveDelay: tableTipConfig.leaveDelay,
|
|
12278
|
-
useHTML: tableTipConfig.useHTML
|
|
12279
|
-
|
|
12307
|
+
useHTML: tableTipConfig.useHTML,
|
|
12308
|
+
width: tableTipConfig.width,
|
|
12309
|
+
height: tableTipConfig.height,
|
|
12310
|
+
minWidth: tableTipConfig.minWidth,
|
|
12311
|
+
minHeight: tableTipConfig.minHeight,
|
|
12312
|
+
maxWidth: tableTipConfig.maxWidth,
|
|
12313
|
+
maxHeight: tableTipConfig.maxHeight
|
|
12314
|
+
}, currTooltipSlot
|
|
12315
|
+
? {
|
|
12316
|
+
content: () => {
|
|
12317
|
+
const { type, row, column, content: tooltipContent } = tooltipStore;
|
|
12318
|
+
if (currTooltipSlot) {
|
|
12319
|
+
if (column && type === 'header') {
|
|
12320
|
+
return h('div', {
|
|
12321
|
+
key: type
|
|
12322
|
+
}, currTooltipSlot({ column, tooltipContent, $table: $xeTable, $grid: $xeGrid, $gantt: $xeGantt }));
|
|
12323
|
+
}
|
|
12324
|
+
if (row && column && type === 'body') {
|
|
12325
|
+
return h('div', {
|
|
12326
|
+
key: type
|
|
12327
|
+
}, currTooltipSlot({ row, column, tooltipContent, $table: $xeTable, $grid: $xeGrid, $gantt: $xeGantt }));
|
|
12328
|
+
}
|
|
12329
|
+
if (row && column && type === 'footer') {
|
|
12330
|
+
return h('div', {
|
|
12331
|
+
key: type
|
|
12332
|
+
}, currTooltipSlot({ row, column, tooltipContent, $table: $xeTable, $grid: $xeGrid, $gantt: $xeGantt }));
|
|
12333
|
+
}
|
|
12334
|
+
}
|
|
12335
|
+
return renderEmptyElement($xeTable);
|
|
12336
|
+
}
|
|
12337
|
+
}
|
|
12338
|
+
: {}),
|
|
12280
12339
|
/**
|
|
12281
12340
|
* 校验提示
|
|
12282
12341
|
*/
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
package/lib/grid/src/grid.js
CHANGED
|
@@ -757,6 +757,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
757
757
|
const loadingSlot = slots.loading;
|
|
758
758
|
const rowDragIconSlot = slots.rowDragIcon || slots['row-drag-icon'];
|
|
759
759
|
const columnDragIconSlot = slots.columnDragIcon || slots['column-drag-icon'];
|
|
760
|
+
const headerTooltipSlot = slots.headerTooltip || slots['header-tooltip'];
|
|
761
|
+
const tooltipSlot = slots.tooltip;
|
|
762
|
+
const footerTooltipSlot = slots.footerTooltip || slots['footer-tooltip'];
|
|
760
763
|
if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
|
|
761
764
|
if (proxyOpts.sort) {
|
|
762
765
|
tableOns.onSortChange = sortChangeEvent;
|
|
@@ -780,6 +783,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
780
783
|
if (columnDragIconSlot) {
|
|
781
784
|
slotObj.columnDragIcon = columnDragIconSlot;
|
|
782
785
|
}
|
|
786
|
+
if (headerTooltipSlot) {
|
|
787
|
+
slotObj.headerTooltip = headerTooltipSlot;
|
|
788
|
+
}
|
|
789
|
+
if (tooltipSlot) {
|
|
790
|
+
slotObj.tooltip = tooltipSlot;
|
|
791
|
+
}
|
|
792
|
+
if (footerTooltipSlot) {
|
|
793
|
+
slotObj.footerTooltip = footerTooltipSlot;
|
|
794
|
+
}
|
|
783
795
|
return (0, _vue.h)('div', {
|
|
784
796
|
class: 'vxe-grid--table-wrapper'
|
|
785
797
|
}, [(0, _vue.h)(_table.default, Object.assign(Object.assign({
|
package/lib/grid/src/grid.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_props=require("./props"),_emits=require("./emits"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_emits2=require("../../table/src/emits"),_props2=require("../../table/src/props"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/toolbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS,renderEmptyElement}=_ui.VxeUI,tableComponentPropKeys=Object.keys(_props2.tableProps),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","setRow","createData","createRow","revertData","clearData","isRemoveByRow","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getFullColumns","getData","getCheckboxRecords","getParentRow","getTreeRowChildren","getTreeParentRow","getRowSeq","getRowById","getRowid","getTableData","getFullData","setColumnFixed","clearColumnFixed","setColumnWidth","getColumnWidth","recalcRowHeight","setRowHeightConf","getRowHeightConf","setRowHeight","getRowHeight","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","setCheckboxRowKey","isCheckedByCheckboxRow","isCheckedByCheckboxRowKey","isIndeterminateByCheckboxRow","isIndeterminateByCheckboxRowKey","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","isCheckedByRadioRowKey","setRadioRow","setRadioRowKey","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","setPendingRow","togglePendingRow","hasPendingByRow","isPendingByRow","getPendingRecords","clearPendingRow","setFilterByEvent","sort","setSort","setSortByEvent","clearSort","clearSortByEvent","isSort","getSortColumns","closeFilter","isFilter","clearFilterByEvent","isActiveFilterByColumn","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","isRowExpandByRow","clearRowExpand","clearRowExpandReserve","getRowExpandRecords","getTreeExpandRecords","isTreeExpandLoaded","clearTreeExpandLoaded","reloadTreeExpand","reloadTreeChilds","toggleTreeExpand","setAllTreeExpand","setTreeExpand","isTreeExpandByRow","clearTreeExpand","clearTreeExpandReserve","getScroll","scrollTo","scrollToRow","scrollToColumn","clearScroll","updateFooter","updateStatus","setMergeCells","removeInsertRow","removeMergeCells","getMergeCells","setMergeHeaderCells","removeMergeHeaderCells","getMergeHeaderCells","clearMergeHeaderCells","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","getCustomStoreData","setRowGroupExpand","setRowGroupExpandByField","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","getCellLabel","getCellElement","focus","blur","connect","connectToolbar"];function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGrid",props:_props.gridProps,emits:_emits.gridEmits,setup(d,e){let t,{slots:u,emit:a}=e;var r=_xeUtils.default.uniqueId();let n=_ui.VxeUI.getComponent("VxeForm"),l=_ui.VxeUI.getComponent("VxePager"),k=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],I=useFns.useSize(d).computeSize,O=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(t=getConfig().pager)?void 0:t.pageSize)||10,currentPage:1}}),o=createInternalData(),s=(0,_vue.ref)(),$=(0,_vue.ref)(),i=(0,_vue.ref)(),g=(0,_vue.ref)(),c=(0,_vue.ref)(),v=(0,_vue.ref)(),m=(0,_vue.ref)(),p=(0,_vue.ref)(),f=(0,_vue.ref)(),x=(0,_vue.ref)();var b=e=>{let t={};return e.forEach(r=>{t[r]=(...e)=>{var t=$.value;if(t&&t[r])return t[r](...e)}}),t};let _=b(tableComponentMethodKeys),M=(tableComponentMethodKeys.forEach(r=>{_[r]=(...e)=>{var t=$.value;if(t&&t[r])return t&&t[r](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),d.proxyConfig))),V=(0,_vue.computed)(()=>{var e=M.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),F=(0,_vue.computed)(()=>{var e=M.value;return _xeUtils.default.isBoolean(e.showActionMsg)?e.showActionMsg:!!e.showActiveMsg}),D=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,d.pagerConfig)),h=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,d.formConfig)),j=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,d.toolbarConfig)),C=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,d.zoomConfig)),U=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=d,{isZMax:r,tZindex:a}=O,o={};return r?o.zIndex=a:(e&&(o.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(o.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),o}),T=(0,_vue.computed)(()=>{let t={};return tableComponentPropKeys.forEach(e=>{t[e]=d[e]}),t}),S=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,editConfig:r,proxyConfig:a}=d,{isZMax:o,tablePage:l}=O,n=T.value,i=M.value,s=D.value,u=K.value,g=Object.assign({},n);return o&&(n.maxHeight?g.maxHeight="100%":g.height="100%"),a&&(0,_utils.isEnableConf)(i)&&(g.loading=u,t)&&i.seq&&(0,_utils.isEnableConf)(s)&&(g.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize})),r&&(g.editConfig=Object.assign({},r)),g}),z=(0,_vue.computed)(()=>{var e=d.layouts;let t=[],r=[],a=[],o=[];return(t=e&&e.length?e:getConfig().grid.layouts||k).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],a=t[1]||[],o=t[2]||[]):a=t),{headKeys:r,bodyKeys:a,footKeys:o}});var A=(0,_vue.computed)(()=>D.value.currentPage),H=(0,_vue.computed)(()=>D.value.pageSize),Z=(0,_vue.computed)(()=>D.value.total);let y=(0,_vue.computed)(()=>{var e=O.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),K=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=d,r=O.tableLoading,a=M.value,o=a.showLoading;return e||r&&o&&t&&(0,_utils.isEnableConf)(a)}),G={refElem:s,refTable:$,refForm:i,refToolbar:g,refPager:c},N={computeProxyOpts:M,computePagerOpts:D,computeFormOpts:h,computeToolbarOpts:j,computeZoomOpts:C},B={xID:r,props:d,context:e,reactData:O,internalData:o,getRefMaps:()=>G,getComputeMaps:()=>N},Q=()=>{var e=j.value;d.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=$.value,t=g.value;e&&t&&e.connectToolbar(t)})},q=()=>{var e=d.proxyConfig,t=O.formData,r=M.value,a=h.value;return e&&(0,_utils.isEnableConf)(r)&&r.form?t:a.data},E=e=>{var t=O.tablePage,r=d.pagerConfig,a=D.value;r&&(0,_utils.isEnableConf)(a)&&(e?a[e]&&(t[e]=_xeUtils.default.toNumber(a[e])):({currentPage:r,pageSize:e,total:a}=a,r&&(t.currentPage=r),e&&(t.pageSize=e),a&&(t.total=a)))},L=(e,t)=>{var r=M.value,r=(r.response||r.props||{}).message,a=$.value;let o;return(o=e&&r?_xeUtils.default.isFunction(r)?r({data:e,$table:a,$grid:B,$gantt:null}):_xeUtils.default.get(e,r):o)||getI18n(t)},W=(e,t,r)=>{var a=F.value,o=B.getCheckboxRecords();if(a)if(o.length){if(_ui.VxeUI.modal)return _ui.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return r()})}else _ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else o.length&&r();return Promise.resolve()},Y=e=>{var t=d.proxyConfig,r=O.tablePage;let{$event:a,currentPage:o,pageSize:l}=e;var n=M.value;r.currentPage=o,r.pageSize=l,B.dispatchEvent("page-change",e,a),t&&(0,_utils.isEnableConf)(n)&&B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,a)})},J=t=>{var e,r=$.value,a=d.proxyConfig;r&&(r=r.getComputeMaps().computeSortOpts,e=M.value,r.value.remote)&&(O.sortData=t.sortList,a)&&(0,_utils.isEnableConf)(e)&&(O.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)}))},X=e=>{J(e),B.dispatchEvent("sort-change",e,e.$event)},ee=e=>{J(e),B.dispatchEvent("clear-all-sort",e,e.$event)},te=t=>{var e,r=$.value,a=d.proxyConfig;r&&(r=r.getComputeMaps().computeFilterOpts,e=M.value,r.value.remote)&&(O.filterData=t.filterList,a)&&(0,_utils.isEnableConf)(e)&&(O.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)}))},re=e=>{te(e),B.dispatchEvent("filter-change",e,e.$event)},ae=e=>{te(e),B.dispatchEvent("clear-all-filter",e,e.$event)},oe=t=>{var e=d.proxyConfig,r=M.value;O.tableLoading||(e&&(0,_utils.isEnableConf)(r)&&B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),B.dispatchEvent("form-submit",t,t.$event))},le=e=>{var t=$.value,r=d.proxyConfig;let a=e.$event;var o=M.value;r&&(0,_utils.isEnableConf)(o)&&(t&&t.clearScroll(),B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),a)})),B.dispatchEvent("form-reset",e,a)},ne=e=>{B.dispatchEvent("form-submit-invalid",e,e.$event)},ie=e=>{var t=e.$event;B.dispatchEvent("form-toggle-collapse",e,t),B.dispatchEvent("form-collapse",e,t)},se=e=>{var t=O.isZMax;return(e?!t:t)&&(O.isZMax=!t,O.tZindex<(0,_utils.getLastZIndex)())&&(O.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>B.recalculate(!0)).then(()=>(setTimeout(()=>B.recalculate(!0),15),O.isZMax))},R=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(u[e])return u[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},ue=e=>{let r={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?u[e]?r[t]=u[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):r[t]=e)}),r},ge=()=>{var{formConfig:e,proxyConfig:r}=d,a=O.formData,o=M.value,l=h.value;if(e&&(0,_utils.isEnableConf)(l)||u.form){let e=[];if(u.form)e=u.form({$grid:B,$gantt:null});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=o.beforeItem;o&&t&&l.items.forEach(e=>{t({$grid:B,$gantt:null,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]&&(t[e]=u[e])})}),n&&e.push((0,_vue.h)(n,Object.assign(Object.assign({ref:i},Object.assign({},l,{data:r&&(0,_utils.isEnableConf)(o)&&o.form?a:l.data})),{onSubmit:oe,onReset:le,onSubmitInvalid:ne,onCollapse:ie}),t))}return(0,_vue.h)("div",{ref:v,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(B)},de=()=>{var t,r,a,o,l,n=d.toolbarConfig,i=j.value,s=u.toolbar;if(n&&(0,_utils.isEnableConf)(i)||s){let e=[];return s?e=s({$grid:B,$gantt:null}):(n={},(s=i.slots)&&(t=R(s,"buttons"),r=R(s,"buttonPrefix"),a=R(s,"buttonSuffix"),o=R(s,"tools"),l=R(s,"toolPrefix"),s=R(s,"toolSuffix"),t&&(n.buttons=t),r&&(n.buttonPrefix=r),a&&(n.buttonSuffix=a),o&&(n.tools=o),l&&(n.toolPrefix=l),s)&&(n.toolSuffix=s),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:g},i),{slots:void 0}),n))),(0,_vue.h)("div",{ref:m,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(B)},ce=()=>{var e=u.top;return e?(0,_vue.h)("div",{ref:p,key:"top",class:"vxe-grid--top-wrapper"},e({$grid:B,$gantt:null})):renderEmptyElement(B)},ve=()=>{var e=u.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:B,$gantt:null})):renderEmptyElement(B)},me=()=>{var e=u.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:B,$gantt:null})):renderEmptyElement(B)},pe=()=>{var e=d.proxyConfig,t=S.value,r=M.value,a=Object.assign({},be),o=u.empty,l=u.loading,n=u.rowDragIcon||u["row-drag-icon"],i=u.columnDragIcon||u["column-drag-icon"],e=(e&&(0,_utils.isEnableConf)(r)&&(r.sort&&(a.onSortChange=X,a.onClearAllSort=ee),r.filter)&&(a.onFilterChange=re,a.onClearAllFilter=ae),{});return o&&(e.empty=o),l&&(e.loading=l),n&&(e.rowDragIcon=n),i&&(e.columnDragIcon=i),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:$},t),a),e)])},fe=()=>u.bottom?(0,_vue.h)("div",{ref:f,key:"bottom",class:"vxe-grid--bottom-wrapper"},u.bottom({$grid:B,$gantt:null})):renderEmptyElement(B),xe=()=>{var{proxyConfig:e,pagerConfig:t}=d,r=M.value,a=D.value,o=u.pager;return t&&(0,_utils.isEnableConf)(a)||u.pager?(0,_vue.h)("div",{ref:x,key:"pager",class:"vxe-grid--pager-wrapper"},o?o({$grid:B,$gantt:null}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:c},a),e&&(0,_utils.isEnableConf)(r)?O.tablePage:{}),{onPageChange:Y}),ue(a.slots)):renderEmptyElement(B)]):renderEmptyElement(B)},w=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(ge());break;case"Toolbar":t.push(de());break;case"Top":t.push(ce());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[ve(),pe(),me()]));break;case"Bottom":t.push(fe());break;case"Pager":t.push(xe());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},be={},_e=(_emits2.tableEmits.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);be[e]=(...e)=>a(t,...e)}),()=>{var e=h.value;if(e.items){let n={};return e.items.forEach(t=>{var r,a,{field:o,itemRender:l}=t;if(o){let e=null;l&&({startField:l,endField:r,defaultValue:a}=l,_xeUtils.default.isFunction(a)?e=a({item:t}):_xeUtils.default.isUndefined(a)||(e=a),l)&&r&&(_xeUtils.default.set(n,l,null),_xeUtils.default.set(n,r,null)),n[o]=e}}),n}return{}}),he=()=>{var{proxyConfig:e,formConfig:t}=d,r=O.proxyInited,a=M.value,o=h.value;e&&(0,_utils.isEnableConf)(a)&&(t&&(0,_utils.isEnableConf)(o)&&a.form&&o.items&&(O.formData=_e()),r||!(O.proxyInited=!0)!==a.autoLoad&&(0,_vue.nextTick)().then(()=>B.commitProxy("initial")).then(e=>{ye("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},Ce=e=>{var t=C.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&O.isZMax&&!1!==t.escRestore&&B.triggerZoomEvent(e)},ye=(e,t,r)=>{a(e,createEvent(r,{$grid:B,$gantt:null},t))};r={dispatchEvent:ye,getEl(){return s.value},commitProxy(t,...v){let{proxyConfig:a,toolbarConfig:e,pagerConfig:i,editRules:m,validConfig:p}=d,s=O.tablePage,f=F.value,x=V.value;var u=M.value;let b=D.value;var r=j.value;let{beforeQuery:_,afterQuery:h,beforeDelete:n,afterDelete:C,beforeSave:y,afterSave:E,ajax:R={}}=u,w=u.response||u.props||{},P=$.value;if(P){let g=q(),d=null,c=null;c=_xeUtils.default.isString(t)?(o=r.buttons,r=e&&(0,_utils.isEnableConf)(r)&&o?_xeUtils.default.findTree(o,e=>e.code===t,{children:"dropdowns"}):null,d=r?r.item:null,t):(d=t).code;var o,l=d?d.params:null;switch(c){case"insert":return P.insert({});case"insert_edit":return P.insert({}).then(({row:e})=>P.setEditRow(e,!0));case"insert_actived":return P.insert({}).then(({row:e})=>P.setEditRow(e,!0));case"mark_cancel":T=c,U=F.value,k=$.value,(I=k?k.getCheckboxRecords():[]).length?(k&&k.togglePendingRow(I),B.clearCheckboxRow()):U&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:T,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return W(c,"vxe.grid.removeSelectRecord",()=>P.removeCheckboxRow());case"import":P.importData(l);break;case"open_import":P.openImport(l);break;case"export":P.exportData(l);break;case"open_export":P.openExport(l);break;case"reset_custom":return P.resetCustom(!0);case"initial":case"reload":case"query":{var k=R.query;let n=R.querySuccess,t=R.queryError;if(k){var I="initial"===c,U="reload"===c;if(!I&&O.tableLoading)return(0,_vue.nextTick)();let r=[],o=[],e={};if(i&&((I||U)&&(s.currentPage=1),(0,_utils.isEnableConf)(b))&&(e=Object.assign({},s)),I){if(a&&(0,_utils.isEnableConf)(u)&&u.form&&(g=_e(),O.formData=g),P){let{tableFullColumn:e,fullColumnFieldData:a}=P.internalData;var T=P.getComputeMaps().computeSortOpts;let t=T.value.defaultSort;e.forEach(e=>{e.order=null}),t&&(_xeUtils.default.isArray(t)||(t=[t]),r=t.map(e=>{var{field:e,order:t}=e,r=a[e];return r&&(r=r.column)&&(r.order=t),{field:e,property:e,order:t}})),o=P.getCheckedFilters()}}else P&&(U?P.clearAll():(r=P.getSortColumns(),o=P.getCheckedFilters()));let l={$table:P,$grid:B,$gantt:null,code:c,button:d,isInited:I,isReload:U,page:e,sort:r.length?r[0]:{},sorts:r,filters:o,form:g,options:k};return O.sortData=r,O.filterData=o,O.tableLoading=!0,Promise.resolve((_||k)(l,...v)).then(e=>{let t=[];var r,a;return O.tableLoading=!1,e&&(i&&(0,_utils.isEnableConf)(b)?(a=w.total,a=(_xeUtils.default.isFunction(a)?a({data:e,$table:P,$grid:B,$gantt:null}):_xeUtils.default.get(e,a||"page.total"))||0,s.total=_xeUtils.default.toNumber(a),r=w.result,t=(_xeUtils.default.isFunction(r)?r({data:e,$table:P,$grid:B,$gantt:null}):_xeUtils.default.get(e,r||"result"))||[],r=Math.max(Math.ceil(a/s.pageSize),1),s.currentPage>r&&(s.currentPage=r)):(a=w.list,t=(a?_xeUtils.default.isFunction(a)?a({data:e,$table:P,$grid:B,$gantt:null}):_xeUtils.default.get(e,a):e)||[])),P?P.loadData(t):(0,_vue.nextTick)(()=>{P&&P.loadData(t)}),h&&h(l,...v),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(O.tableLoading=!1,t&&t(Object.assign(Object.assign({},l),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{let a=R.delete,o=R.deleteSuccess,l=R.deleteError;if(a){let e=B.getCheckboxRecords(),t=e.filter(e=>!P.isInsertByRow(e));var S={removeRecords:t};let r={$table:P,$grid:B,$gantt:null,code:c,button:d,body:S,form:g,options:a};if(e.length)return W(c,"vxe.grid.deleteSelectRecord",()=>t.length?(O.tableLoading=!0,Promise.resolve((n||a)(r,...v)).then(e=>(O.tableLoading=!1,P.setPendingRow(t,!1),x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:L(e,"vxe.grid.delSuccess"),status:"success"}),C?C(r,...v):B.commitProxy("query"),o&&o(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(O.tableLoading=!1,x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:L(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):P.remove(e));f&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let i=R.save,s=R.saveSuccess,u=R.saveError;if(i){let t=P.getRecordset(),{insertRecords:r,removeRecords:a,updateRecords:o,pendingRecords:l}=t,n={$table:P,$grid:B,$gantt:null,code:c,button:d,body:t,form:g,options:i},e=(r.length&&(t.pendingRecords=l.filter(e=>-1===P.findRowIndexOf(r,e))),l.length&&(t.insertRecords=r.filter(e=>-1===P.findRowIndexOf(l,e))),Promise.resolve());return(e=m?P[p&&"full"===p.msgMode?"fullValidate":"validate"](t.insertRecords.concat(o)):e).then(e=>{if(!e)return t.insertRecords.length||a.length||o.length||t.pendingRecords.length?(O.tableLoading=!0,Promise.resolve((y||i)(n,...v)).then(e=>(O.tableLoading=!1,P.clearPendingRow(),x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:L(e,"vxe.grid.saveSuccess"),status:"success"}),E?E(n,...v):B.commitProxy("query"),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(O.tableLoading=!1,x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:L(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},n),{response:e})),{status:!1}))):void(f&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var S=commands.get(c);S&&((S=S.tableCommandMethod||S.commandMethod)?S({code:c,button:d,$grid:B,$table:P,$gantt:null},...v):(0,_log.errLog)("vxe.error.notCommands",[c]))}}return(0,_vue.nextTick)()},getParams(){return d.params},zoom(){return O.isZMax?B.revert():B.maximize()},isMaximized(){return O.isZMax},maximize(){return se(!0)},revert(){return se()},getFormData:q,getFormItems(e){var t=h.value,r=d.formConfig,a=t.items;let o=[];return _xeUtils.default.eachTree(r&&(0,_utils.isEnableConf)(t)&&a?a:[],e=>{o.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?o:o[e]},resetForm(){var e=i.value;return e?e.reset():(0,_vue.nextTick)()},validateForm(){var e=i.value;return e?e.validate():(0,_vue.nextTick)()},validateFormField(e){var t=i.value;return t?t.validateField(e):(0,_vue.nextTick)()},clearFormValidate(e){var t=i.value;return t?t.clearValidate(e):(0,_vue.nextTick)()},homePage(){var e=O.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=c.value;t&&t.homePageByEvent(e)},endPage(){var e=O.tablePage,t=y.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=c.value;t&&t.endPageByEvent(e)},setCurrentPage(e){var t=O.tablePage,r=y.value;return t.currentPage=Math.min(r,Math.max(1,_xeUtils.default.toNumber(e))),(0,_vue.nextTick)()},setCurrentPageByEvent(e,t){var r=c.value;r&&r.setCurrentPageByEvent(e,t)},setPageSize(e){var t=O.tablePage;return t.pageSize=Math.max(1,_xeUtils.default.toNumber(e)),(0,_vue.nextTick)()},setPageSizeByEvent(e,t){var r=c.value;r&&r.setPageSizeByEvent(e,t)},getProxyInfo(){var e,t=$.value;return d.proxyConfig?(e=O.sortData,{data:t?t.getFullData():[],filter:O.filterData,form:q(),sort:e.length?e[0]:{},sorts:e,pager:O.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}};let Ee={extendTableMethods:b,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=u[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e,t,r,a,o,l,n=O.isZMax,i=s.value;return i?(e=v.value,t=m.value,r=p.value,a=f.value,o=x.value,l=i.parentElement,(!n&&l?(0,_dom.getPaddingTopBottomSize)(l):0)+(0,_dom.getPaddingTopBottomSize)(i)+(0,_dom.getOffsetHeight)(e)+(0,_dom.getOffsetHeight)(t)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(o)):0},getParentHeight(){var e=s.value;return e?(e=e.parentElement,(O.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-Ee.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let r=e.code;return B.commitProxy(e,t).then(e=>{r&&e&&e.status&&["query","reload","delete","save"].includes(r)&&B.dispatchEvent("delete"===r||"save"===r?"proxy-"+r:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===r}),t)})},triggerToolbarBtnEvent(e,t){B.triggerToolbarCommitEvent(e,t),B.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){B.triggerToolbarCommitEvent(e,t),B.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){B.zoom(),B.dispatchEvent("zoom",{type:O.isZMax?"max":"revert"},e)}};Object.assign(B,_,r,Ee,{loadColumn(e){var t=$.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return B.clearAll(),B.loadColumn(e)}});let P=(0,_vue.ref)(0);return(0,_vue.watch)(()=>d.columns?d.columns.length:-1,()=>{P.value++}),(0,_vue.watch)(()=>d.columns,()=>{P.value++}),(0,_vue.watch)(P,()=>{(0,_vue.nextTick)(()=>B.loadColumn(d.columns||[]))}),(0,_vue.watch)(()=>d.toolbarConfig,()=>{Q()}),(0,_vue.watch)(A,()=>{E("currentPage")}),(0,_vue.watch)(H,()=>{E("pageSize")}),(0,_vue.watch)(Z,()=>{E("total")}),(0,_vue.watch)(()=>d.proxyConfig,()=>{he()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(B))&&_xeUtils.default.isObject(e)&&Object.assign(B,e)}),E(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=d.columns,t=M.value;d.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),d.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),t.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),e&&e.length&&B.loadColumn(e),Q(),he()}),globalEvents.on(B,"keydown",Ce)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(B,"keydown"),_xeUtils.default.assign(o,createInternalData())}),B.renderVN=()=>{var e=I.value,t=U.value,r=K.value;return(0,_vue.h)("div",{ref:s,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!d.animat,"is--round":d.round,"is--maximize":O.isZMax,"is--loading":r}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:r}=z.value,a=u.asideLeft||u["aside-left"],o=u.asideRight||u["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},w(e)),(0,_vue.h)("div",{class:"vxe-grid--layout-body-wrapper"},[a?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-left-wrapper"},a({})):renderEmptyElement(B),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},w(t)),o?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-right-wrapper"},o({})):renderEmptyElement(B)]),(0,_vue.h)("div",{class:"vxe-grid--layout-footer-wrapper"},w(r))]})())},(0,_vue.provide)("$xeGrid",B),(0,_vue.provide)("$xeGantt",null),B},render(){return this.renderVN()}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_ui=require("../../ui"),_props=require("./props"),_emits=require("./emits"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_emits2=require("../../table/src/emits"),_props2=require("../../table/src/props"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/toolbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS,renderEmptyElement}=_ui.VxeUI,tableComponentPropKeys=Object.keys(_props2.tableProps),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","setRow","createData","createRow","revertData","clearData","isRemoveByRow","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getFullColumns","getData","getCheckboxRecords","getParentRow","getTreeRowChildren","getTreeParentRow","getRowSeq","getRowById","getRowid","getTableData","getFullData","setColumnFixed","clearColumnFixed","setColumnWidth","getColumnWidth","recalcRowHeight","setRowHeightConf","getRowHeightConf","setRowHeight","getRowHeight","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","setCheckboxRowKey","isCheckedByCheckboxRow","isCheckedByCheckboxRowKey","isIndeterminateByCheckboxRow","isIndeterminateByCheckboxRowKey","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","isCheckedByRadioRowKey","setRadioRow","setRadioRowKey","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","setPendingRow","togglePendingRow","hasPendingByRow","isPendingByRow","getPendingRecords","clearPendingRow","setFilterByEvent","sort","setSort","setSortByEvent","clearSort","clearSortByEvent","isSort","getSortColumns","closeFilter","isFilter","clearFilterByEvent","isActiveFilterByColumn","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","isRowExpandByRow","clearRowExpand","clearRowExpandReserve","getRowExpandRecords","getTreeExpandRecords","isTreeExpandLoaded","clearTreeExpandLoaded","reloadTreeExpand","reloadTreeChilds","toggleTreeExpand","setAllTreeExpand","setTreeExpand","isTreeExpandByRow","clearTreeExpand","clearTreeExpandReserve","getScroll","scrollTo","scrollToRow","scrollToColumn","clearScroll","updateFooter","updateStatus","setMergeCells","removeInsertRow","removeMergeCells","getMergeCells","setMergeHeaderCells","removeMergeHeaderCells","getMergeHeaderCells","clearMergeHeaderCells","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","getCustomStoreData","setRowGroupExpand","setRowGroupExpandByField","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","getCellLabel","getCellElement","focus","blur","connect","connectToolbar"];function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGrid",props:_props.gridProps,emits:_emits.gridEmits,setup(g,e){let t,{slots:c,emit:a}=e;var r=_xeUtils.default.uniqueId();let n=_ui.VxeUI.getComponent("VxeForm"),l=_ui.VxeUI.getComponent("VxePager"),k=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],I=useFns.useSize(g).computeSize,O=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(t=getConfig().pager)?void 0:t.pageSize)||10,currentPage:1}}),o=createInternalData(),s=(0,_vue.ref)(),$=(0,_vue.ref)(),i=(0,_vue.ref)(),u=(0,_vue.ref)(),d=(0,_vue.ref)(),v=(0,_vue.ref)(),m=(0,_vue.ref)(),p=(0,_vue.ref)(),f=(0,_vue.ref)(),x=(0,_vue.ref)();var b=e=>{let t={};return e.forEach(r=>{t[r]=(...e)=>{var t=$.value;if(t&&t[r])return t[r](...e)}}),t};let _=b(tableComponentMethodKeys),M=(tableComponentMethodKeys.forEach(r=>{_[r]=(...e)=>{var t=$.value;if(t&&t[r])return t&&t[r](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),g.proxyConfig))),V=(0,_vue.computed)(()=>{var e=M.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),F=(0,_vue.computed)(()=>{var e=M.value;return _xeUtils.default.isBoolean(e.showActionMsg)?e.showActionMsg:!!e.showActiveMsg}),D=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,g.pagerConfig)),h=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,g.formConfig)),j=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,g.toolbarConfig)),C=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,g.zoomConfig)),T=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=g,{isZMax:r,tZindex:a}=O,o={};return r?o.zIndex=a:(e&&(o.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(o.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),o}),U=(0,_vue.computed)(()=>{let t={};return tableComponentPropKeys.forEach(e=>{t[e]=g[e]}),t}),S=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,editConfig:r,proxyConfig:a}=g,{isZMax:o,tablePage:l}=O,n=U.value,i=M.value,s=D.value,u=K.value,d=Object.assign({},n);return o&&(n.maxHeight?d.maxHeight="100%":d.height="100%"),a&&(0,_utils.isEnableConf)(i)&&(d.loading=u,t)&&i.seq&&(0,_utils.isEnableConf)(s)&&(d.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize})),r&&(d.editConfig=Object.assign({},r)),d}),z=(0,_vue.computed)(()=>{var e=g.layouts;let t=[],r=[],a=[],o=[];return(t=e&&e.length?e:getConfig().grid.layouts||k).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],a=t[1]||[],o=t[2]||[]):a=t),{headKeys:r,bodyKeys:a,footKeys:o}});var A=(0,_vue.computed)(()=>D.value.currentPage),H=(0,_vue.computed)(()=>D.value.pageSize),Z=(0,_vue.computed)(()=>D.value.total);let y=(0,_vue.computed)(()=>{var e=O.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),K=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=g,r=O.tableLoading,a=M.value,o=a.showLoading;return e||r&&o&&t&&(0,_utils.isEnableConf)(a)}),G={refElem:s,refTable:$,refForm:i,refToolbar:u,refPager:d},N={computeProxyOpts:M,computePagerOpts:D,computeFormOpts:h,computeToolbarOpts:j,computeZoomOpts:C},B={xID:r,props:g,context:e,reactData:O,internalData:o,getRefMaps:()=>G,getComputeMaps:()=>N},Q=()=>{var e=j.value;g.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=$.value,t=u.value;e&&t&&e.connectToolbar(t)})},q=()=>{var e=g.proxyConfig,t=O.formData,r=M.value,a=h.value;return e&&(0,_utils.isEnableConf)(r)&&r.form?t:a.data},E=e=>{var t=O.tablePage,r=g.pagerConfig,a=D.value;r&&(0,_utils.isEnableConf)(a)&&(e?a[e]&&(t[e]=_xeUtils.default.toNumber(a[e])):({currentPage:r,pageSize:e,total:a}=a,r&&(t.currentPage=r),e&&(t.pageSize=e),a&&(t.total=a)))},L=(e,t)=>{var r=M.value,r=(r.response||r.props||{}).message,a=$.value;let o;return(o=e&&r?_xeUtils.default.isFunction(r)?r({data:e,$table:a,$grid:B,$gantt:null}):_xeUtils.default.get(e,r):o)||getI18n(t)},W=(e,t,r)=>{var a=F.value,o=B.getCheckboxRecords();if(a)if(o.length){if(_ui.VxeUI.modal)return _ui.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return r()})}else _ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else o.length&&r();return Promise.resolve()},Y=e=>{var t=g.proxyConfig,r=O.tablePage;let{$event:a,currentPage:o,pageSize:l}=e;var n=M.value;r.currentPage=o,r.pageSize=l,B.dispatchEvent("page-change",e,a),t&&(0,_utils.isEnableConf)(n)&&B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,a)})},J=t=>{var e,r=$.value,a=g.proxyConfig;r&&(r=r.getComputeMaps().computeSortOpts,e=M.value,r.value.remote)&&(O.sortData=t.sortList,a)&&(0,_utils.isEnableConf)(e)&&(O.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)}))},X=e=>{J(e),B.dispatchEvent("sort-change",e,e.$event)},ee=e=>{J(e),B.dispatchEvent("clear-all-sort",e,e.$event)},te=t=>{var e,r=$.value,a=g.proxyConfig;r&&(r=r.getComputeMaps().computeFilterOpts,e=M.value,r.value.remote)&&(O.filterData=t.filterList,a)&&(0,_utils.isEnableConf)(e)&&(O.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)}))},re=e=>{te(e),B.dispatchEvent("filter-change",e,e.$event)},ae=e=>{te(e),B.dispatchEvent("clear-all-filter",e,e.$event)},oe=t=>{var e=g.proxyConfig,r=M.value;O.tableLoading||(e&&(0,_utils.isEnableConf)(r)&&B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),B.dispatchEvent("form-submit",t,t.$event))},le=e=>{var t=$.value,r=g.proxyConfig;let a=e.$event;var o=M.value;r&&(0,_utils.isEnableConf)(o)&&(t&&t.clearScroll(),B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),a)})),B.dispatchEvent("form-reset",e,a)},ne=e=>{B.dispatchEvent("form-submit-invalid",e,e.$event)},ie=e=>{var t=e.$event;B.dispatchEvent("form-toggle-collapse",e,t),B.dispatchEvent("form-collapse",e,t)},se=e=>{var t=O.isZMax;return(e?!t:t)&&(O.isZMax=!t,O.tZindex<(0,_utils.getLastZIndex)())&&(O.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>B.recalculate(!0)).then(()=>(setTimeout(()=>B.recalculate(!0),15),O.isZMax))},R=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(c[e])return c[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},ue=e=>{let r={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?c[e]?r[t]=c[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):r[t]=e)}),r},de=()=>{var{formConfig:e,proxyConfig:r}=g,a=O.formData,o=M.value,l=h.value;if(e&&(0,_utils.isEnableConf)(l)||c.form){let e=[];if(c.form)e=c.form({$grid:B,$gantt:null});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=o.beforeItem;o&&t&&l.items.forEach(e=>{t({$grid:B,$gantt:null,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||c[e]&&(t[e]=c[e])})}),n&&e.push((0,_vue.h)(n,Object.assign(Object.assign({ref:i},Object.assign({},l,{data:r&&(0,_utils.isEnableConf)(o)&&o.form?a:l.data})),{onSubmit:oe,onReset:le,onSubmitInvalid:ne,onCollapse:ie}),t))}return(0,_vue.h)("div",{ref:v,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(B)},ge=()=>{var t,r,a,o,l,n=g.toolbarConfig,i=j.value,s=c.toolbar;if(n&&(0,_utils.isEnableConf)(i)||s){let e=[];return s?e=s({$grid:B,$gantt:null}):(n={},(s=i.slots)&&(t=R(s,"buttons"),r=R(s,"buttonPrefix"),a=R(s,"buttonSuffix"),o=R(s,"tools"),l=R(s,"toolPrefix"),s=R(s,"toolSuffix"),t&&(n.buttons=t),r&&(n.buttonPrefix=r),a&&(n.buttonSuffix=a),o&&(n.tools=o),l&&(n.toolPrefix=l),s)&&(n.toolSuffix=s),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:u},i),{slots:void 0}),n))),(0,_vue.h)("div",{ref:m,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(B)},ce=()=>{var e=c.top;return e?(0,_vue.h)("div",{ref:p,key:"top",class:"vxe-grid--top-wrapper"},e({$grid:B,$gantt:null})):renderEmptyElement(B)},ve=()=>{var e=c.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:B,$gantt:null})):renderEmptyElement(B)},me=()=>{var e=c.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:B,$gantt:null})):renderEmptyElement(B)},pe=()=>{var e=g.proxyConfig,t=S.value,r=M.value,a=Object.assign({},be),o=c.empty,l=c.loading,n=c.rowDragIcon||c["row-drag-icon"],i=c.columnDragIcon||c["column-drag-icon"],s=c.headerTooltip||c["header-tooltip"],u=c.tooltip,d=c.footerTooltip||c["footer-tooltip"],e=(e&&(0,_utils.isEnableConf)(r)&&(r.sort&&(a.onSortChange=X,a.onClearAllSort=ee),r.filter)&&(a.onFilterChange=re,a.onClearAllFilter=ae),{});return o&&(e.empty=o),l&&(e.loading=l),n&&(e.rowDragIcon=n),i&&(e.columnDragIcon=i),s&&(e.headerTooltip=s),u&&(e.tooltip=u),d&&(e.footerTooltip=d),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:$},t),a),e)])},fe=()=>c.bottom?(0,_vue.h)("div",{ref:f,key:"bottom",class:"vxe-grid--bottom-wrapper"},c.bottom({$grid:B,$gantt:null})):renderEmptyElement(B),xe=()=>{var{proxyConfig:e,pagerConfig:t}=g,r=M.value,a=D.value,o=c.pager;return t&&(0,_utils.isEnableConf)(a)||c.pager?(0,_vue.h)("div",{ref:x,key:"pager",class:"vxe-grid--pager-wrapper"},o?o({$grid:B,$gantt:null}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:d},a),e&&(0,_utils.isEnableConf)(r)?O.tablePage:{}),{onPageChange:Y}),ue(a.slots)):renderEmptyElement(B)]):renderEmptyElement(B)},w=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(de());break;case"Toolbar":t.push(ge());break;case"Top":t.push(ce());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[ve(),pe(),me()]));break;case"Bottom":t.push(fe());break;case"Pager":t.push(xe());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},be={},_e=(_emits2.tableEmits.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);be[e]=(...e)=>a(t,...e)}),()=>{var e=h.value;if(e.items){let n={};return e.items.forEach(t=>{var r,a,{field:o,itemRender:l}=t;if(o){let e=null;l&&({startField:l,endField:r,defaultValue:a}=l,_xeUtils.default.isFunction(a)?e=a({item:t}):_xeUtils.default.isUndefined(a)||(e=a),l)&&r&&(_xeUtils.default.set(n,l,null),_xeUtils.default.set(n,r,null)),n[o]=e}}),n}return{}}),he=()=>{var{proxyConfig:e,formConfig:t}=g,r=O.proxyInited,a=M.value,o=h.value;e&&(0,_utils.isEnableConf)(a)&&(t&&(0,_utils.isEnableConf)(o)&&a.form&&o.items&&(O.formData=_e()),r||!(O.proxyInited=!0)!==a.autoLoad&&(0,_vue.nextTick)().then(()=>B.commitProxy("initial")).then(e=>{ye("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},Ce=e=>{var t=C.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&O.isZMax&&!1!==t.escRestore&&B.triggerZoomEvent(e)},ye=(e,t,r)=>{a(e,createEvent(r,{$grid:B,$gantt:null},t))};r={dispatchEvent:ye,getEl(){return s.value},commitProxy(t,...v){let{proxyConfig:a,toolbarConfig:e,pagerConfig:i,editRules:m,validConfig:p}=g,s=O.tablePage,f=F.value,x=V.value;var u=M.value;let b=D.value;var r=j.value;let{beforeQuery:_,afterQuery:h,beforeDelete:n,afterDelete:C,beforeSave:y,afterSave:E,ajax:R={}}=u,w=u.response||u.props||{},P=$.value;if(P){let d=q(),g=null,c=null;c=_xeUtils.default.isString(t)?(o=r.buttons,r=e&&(0,_utils.isEnableConf)(r)&&o?_xeUtils.default.findTree(o,e=>e.code===t,{children:"dropdowns"}):null,g=r?r.item:null,t):(g=t).code;var o,l=g?g.params:null;switch(c){case"insert":return P.insert({});case"insert_edit":return P.insert({}).then(({row:e})=>P.setEditRow(e,!0));case"insert_actived":return P.insert({}).then(({row:e})=>P.setEditRow(e,!0));case"mark_cancel":U=c,T=F.value,k=$.value,(I=k?k.getCheckboxRecords():[]).length?(k&&k.togglePendingRow(I),B.clearCheckboxRow()):T&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:U,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return W(c,"vxe.grid.removeSelectRecord",()=>P.removeCheckboxRow());case"import":P.importData(l);break;case"open_import":P.openImport(l);break;case"export":P.exportData(l);break;case"open_export":P.openExport(l);break;case"reset_custom":return P.resetCustom(!0);case"initial":case"reload":case"query":{var k=R.query;let n=R.querySuccess,t=R.queryError;if(k){var I="initial"===c,T="reload"===c;if(!I&&O.tableLoading)return(0,_vue.nextTick)();let r=[],o=[],e={};if(i&&((I||T)&&(s.currentPage=1),(0,_utils.isEnableConf)(b))&&(e=Object.assign({},s)),I){if(a&&(0,_utils.isEnableConf)(u)&&u.form&&(d=_e(),O.formData=d),P){let{tableFullColumn:e,fullColumnFieldData:a}=P.internalData;var U=P.getComputeMaps().computeSortOpts;let t=U.value.defaultSort;e.forEach(e=>{e.order=null}),t&&(_xeUtils.default.isArray(t)||(t=[t]),r=t.map(e=>{var{field:e,order:t}=e,r=a[e];return r&&(r=r.column)&&(r.order=t),{field:e,property:e,order:t}})),o=P.getCheckedFilters()}}else P&&(T?P.clearAll():(r=P.getSortColumns(),o=P.getCheckedFilters()));let l={$table:P,$grid:B,$gantt:null,code:c,button:g,isInited:I,isReload:T,page:e,sort:r.length?r[0]:{},sorts:r,filters:o,form:d,options:k};return O.sortData=r,O.filterData=o,O.tableLoading=!0,Promise.resolve((_||k)(l,...v)).then(e=>{let t=[];var r,a;return O.tableLoading=!1,e&&(i&&(0,_utils.isEnableConf)(b)?(a=w.total,a=(_xeUtils.default.isFunction(a)?a({data:e,$table:P,$grid:B,$gantt:null}):_xeUtils.default.get(e,a||"page.total"))||0,s.total=_xeUtils.default.toNumber(a),r=w.result,t=(_xeUtils.default.isFunction(r)?r({data:e,$table:P,$grid:B,$gantt:null}):_xeUtils.default.get(e,r||"result"))||[],r=Math.max(Math.ceil(a/s.pageSize),1),s.currentPage>r&&(s.currentPage=r)):(a=w.list,t=(a?_xeUtils.default.isFunction(a)?a({data:e,$table:P,$grid:B,$gantt:null}):_xeUtils.default.get(e,a):e)||[])),P?P.loadData(t):(0,_vue.nextTick)(()=>{P&&P.loadData(t)}),h&&h(l,...v),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(O.tableLoading=!1,t&&t(Object.assign(Object.assign({},l),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break}case"delete":{let a=R.delete,o=R.deleteSuccess,l=R.deleteError;if(a){let e=B.getCheckboxRecords(),t=e.filter(e=>!P.isInsertByRow(e));var S={removeRecords:t};let r={$table:P,$grid:B,$gantt:null,code:c,button:g,body:S,form:d,options:a};if(e.length)return W(c,"vxe.grid.deleteSelectRecord",()=>t.length?(O.tableLoading=!0,Promise.resolve((n||a)(r,...v)).then(e=>(O.tableLoading=!1,P.setPendingRow(t,!1),x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:L(e,"vxe.grid.delSuccess"),status:"success"}),C?C(r,...v):B.commitProxy("query"),o&&o(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(O.tableLoading=!1,x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:L(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):P.remove(e));f&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let i=R.save,s=R.saveSuccess,u=R.saveError;if(i){let t=P.getRecordset(),{insertRecords:r,removeRecords:a,updateRecords:o,pendingRecords:l}=t,n={$table:P,$grid:B,$gantt:null,code:c,button:g,body:t,form:d,options:i},e=(r.length&&(t.pendingRecords=l.filter(e=>-1===P.findRowIndexOf(r,e))),l.length&&(t.insertRecords=r.filter(e=>-1===P.findRowIndexOf(l,e))),Promise.resolve());return(e=m?P[p&&"full"===p.msgMode?"fullValidate":"validate"](t.insertRecords.concat(o)):e).then(e=>{if(!e)return t.insertRecords.length||a.length||o.length||t.pendingRecords.length?(O.tableLoading=!0,Promise.resolve((y||i)(n,...v)).then(e=>(O.tableLoading=!1,P.clearPendingRow(),x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:L(e,"vxe.grid.saveSuccess"),status:"success"}),E?E(n,...v):B.commitProxy("query"),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(O.tableLoading=!1,x&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:L(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},n),{response:e})),{status:!1}))):void(f&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var S=commands.get(c);S&&((S=S.tableCommandMethod||S.commandMethod)?S({code:c,button:g,$grid:B,$table:P,$gantt:null},...v):(0,_log.errLog)("vxe.error.notCommands",[c]))}}return(0,_vue.nextTick)()},getParams(){return g.params},zoom(){return O.isZMax?B.revert():B.maximize()},isMaximized(){return O.isZMax},maximize(){return se(!0)},revert(){return se()},getFormData:q,getFormItems(e){var t=h.value,r=g.formConfig,a=t.items;let o=[];return _xeUtils.default.eachTree(r&&(0,_utils.isEnableConf)(t)&&a?a:[],e=>{o.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?o:o[e]},resetForm(){var e=i.value;return e?e.reset():(0,_vue.nextTick)()},validateForm(){var e=i.value;return e?e.validate():(0,_vue.nextTick)()},validateFormField(e){var t=i.value;return t?t.validateField(e):(0,_vue.nextTick)()},clearFormValidate(e){var t=i.value;return t?t.clearValidate(e):(0,_vue.nextTick)()},homePage(){var e=O.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=d.value;t&&t.homePageByEvent(e)},endPage(){var e=O.tablePage,t=y.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=d.value;t&&t.endPageByEvent(e)},setCurrentPage(e){var t=O.tablePage,r=y.value;return t.currentPage=Math.min(r,Math.max(1,_xeUtils.default.toNumber(e))),(0,_vue.nextTick)()},setCurrentPageByEvent(e,t){var r=d.value;r&&r.setCurrentPageByEvent(e,t)},setPageSize(e){var t=O.tablePage;return t.pageSize=Math.max(1,_xeUtils.default.toNumber(e)),(0,_vue.nextTick)()},setPageSizeByEvent(e,t){var r=d.value;r&&r.setPageSizeByEvent(e,t)},getProxyInfo(){var e,t=$.value;return g.proxyConfig?(e=O.sortData,{data:t?t.getFullData():[],filter:O.filterData,form:q(),sort:e.length?e[0]:{},sorts:e,pager:O.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}};let Ee={extendTableMethods:b,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=c[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var e,t,r,a,o,l,n=O.isZMax,i=s.value;return i?(e=v.value,t=m.value,r=p.value,a=f.value,o=x.value,l=i.parentElement,(!n&&l?(0,_dom.getPaddingTopBottomSize)(l):0)+(0,_dom.getPaddingTopBottomSize)(i)+(0,_dom.getOffsetHeight)(e)+(0,_dom.getOffsetHeight)(t)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(o)):0},getParentHeight(){var e=s.value;return e?(e=e.parentElement,(O.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-Ee.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let r=e.code;return B.commitProxy(e,t).then(e=>{r&&e&&e.status&&["query","reload","delete","save"].includes(r)&&B.dispatchEvent("delete"===r||"save"===r?"proxy-"+r:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===r}),t)})},triggerToolbarBtnEvent(e,t){B.triggerToolbarCommitEvent(e,t),B.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){B.triggerToolbarCommitEvent(e,t),B.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){B.zoom(),B.dispatchEvent("zoom",{type:O.isZMax?"max":"revert"},e)}};Object.assign(B,_,r,Ee,{loadColumn(e){var t=$.value;return _xeUtils.default.eachTree(e,e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||c[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return B.clearAll(),B.loadColumn(e)}});let P=(0,_vue.ref)(0);return(0,_vue.watch)(()=>g.columns?g.columns.length:-1,()=>{P.value++}),(0,_vue.watch)(()=>g.columns,()=>{P.value++}),(0,_vue.watch)(P,()=>{(0,_vue.nextTick)(()=>B.loadColumn(g.columns||[]))}),(0,_vue.watch)(()=>g.toolbarConfig,()=>{Q()}),(0,_vue.watch)(A,()=>{E("currentPage")}),(0,_vue.watch)(H,()=>{E("pageSize")}),(0,_vue.watch)(Z,()=>{E("total")}),(0,_vue.watch)(()=>g.proxyConfig,()=>{he()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(B))&&_xeUtils.default.isObject(e)&&Object.assign(B,e)}),E(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=g.columns,t=M.value;g.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),g.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),t.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),e&&e.length&&B.loadColumn(e),Q(),he()}),globalEvents.on(B,"keydown",Ce)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(B,"keydown"),_xeUtils.default.assign(o,createInternalData())}),B.renderVN=()=>{var e=I.value,t=T.value,r=K.value;return(0,_vue.h)("div",{ref:s,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!g.animat,"is--round":g.round,"is--maximize":O.isZMax,"is--loading":r}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:r}=z.value,a=c.asideLeft||c["aside-left"],o=c.asideRight||c["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},w(e)),(0,_vue.h)("div",{class:"vxe-grid--layout-body-wrapper"},[a?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-left-wrapper"},a({})):renderEmptyElement(B),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},w(t)),o?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-right-wrapper"},o({})):renderEmptyElement(B)]),(0,_vue.h)("div",{class:"vxe-grid--layout-footer-wrapper"},w(r))]})())},(0,_vue.provide)("$xeGrid",B),(0,_vue.provide)("$xeGantt",null),B},render(){return this.renderVN()}});
|
package/lib/index.umd.js
CHANGED
|
@@ -3138,7 +3138,7 @@ function eqEmptyValue(cellValue) {
|
|
|
3138
3138
|
;// ./packages/ui/index.ts
|
|
3139
3139
|
|
|
3140
3140
|
|
|
3141
|
-
const version = "4.16.
|
|
3141
|
+
const version = "4.16.8";
|
|
3142
3142
|
core_.VxeUI.version = version;
|
|
3143
3143
|
core_.VxeUI.tableVersion = version;
|
|
3144
3144
|
core_.VxeUI.setConfig({
|
|
@@ -3641,7 +3641,7 @@ var esnext_iterator_some = __webpack_require__(7550);
|
|
|
3641
3641
|
const {
|
|
3642
3642
|
log: log_log
|
|
3643
3643
|
} = core_.VxeUI;
|
|
3644
|
-
const log_version = `table v${"4.16.
|
|
3644
|
+
const log_version = `table v${"4.16.8"}`;
|
|
3645
3645
|
const warnLog = log_log.create('warn', log_version);
|
|
3646
3646
|
const errLog = log_log.create('error', log_version);
|
|
3647
3647
|
;// ./packages/table/src/columnInfo.ts
|
|
@@ -18486,7 +18486,7 @@ selected:{row:null,column:null},// 已复制源
|
|
|
18486
18486
|
copyed:{cut:false,rows:[],columns:[]},// 激活
|
|
18487
18487
|
actived:{row:null,column:null},// 当前被强制聚焦单元格,只会在鼠标点击后算聚焦
|
|
18488
18488
|
focused:{row:null,column:null}},// 存放 tooltip 相关信息
|
|
18489
|
-
tooltipStore:{row:null,column:null,content:null,visible:false,currOpts:{}},// 存放数据校验相关信息
|
|
18489
|
+
tooltipStore:{row:null,column:null,content:null,visible:false,type:null,currOpts:{}},// 存放数据校验相关信息
|
|
18490
18490
|
validStore:{visible:false},validErrorMaps:{},// 导入相关信息
|
|
18491
18491
|
importStore:{inited:false,file:null,type:'',modeList:[],typeList:[],filename:'',visible:false},importParams:{mode:'',types:null,message:true},// 导出相关信息
|
|
18492
18492
|
exportStore:{inited:false,name:'',modeList:[],typeList:[],columns:[],isPrint:false,hasFooter:false,hasMerge:false,hasTree:false,hasColgroup:false,visible:false},exportParams:{filename:'',sheetName:'',mode:'',type:'',isColgroup:false,isMerge:false,isAllExpand:false,useStyle:false,original:false,message:true,isHeader:false,isTitle:false,isFooter:false},visiblwRowsFlag:1,isRowGroupStatus:false,rowGroupList:[],aggHandleFields:[],aggHandleAggColumns:[],rowGroupExpandedFlag:1,rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,insertRowFlag:1,removeRowFlag:1,mergeHeadFlag:1,mergeBodyFlag:1,mergeFootFlag:1,rowHeightStore:{large:52,default:48,medium:44,small:40,mini:36},scrollVMLoading:false,scrollYHeight:0,scrollYTop:0,isScrollYBig:false,scrollXLeft:0,scrollXWidth:0,isScrollXBig:false,lazScrollLoading:false,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:false,isCrossDragRow:false,dragRow:null,isCrossDragCol:false,dragCol:null,dragTipText:'',isDragResize:false,isRowLoading:false,isColLoading:false});const internalData=createInternalData();let tableMethods={};let tablePrivateMethods={};const refElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refVarElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTooltip=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refCommTooltip=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refValidTooltip=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableMenu=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableFilter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableCustom=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableViewportElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableHeader=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableBody=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableFooter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableLeftHeader=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableLeftBody=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableLeftFooter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableRightHeader=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableRightBody=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTableRightFooter=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refTeleportWrapper=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refLeftContainer=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRightContainer=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refColResizeBar=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRowResizeBar=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refEmptyPlaceholder=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refDragTipElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refDragRowLineElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refDragColLineElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRowExpandElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refRowExpandYSpaceElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXVirtualElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYVirtualElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXHandleElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXLeftCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXRightCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYHandleElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYTopCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXWrapperElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYWrapperElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYBottomCornerElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollXSpaceElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();const refScrollYSpaceElem=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();let $xeToolbar;const computeTableId=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const{id}=props;if(id){if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(id)){return`${id({$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt})||''}`;}return`${id}`;}return'';});const computeRowField=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{const rowOpts=computeRowOpts.value;return`${props.rowId||rowOpts.keyField||'_X_ROW_KEY'}`;});const computeValidOpts=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(()=>{return Object.assign({},table_getConfig().table.validConfig,props.validConfig);});/**
|
|
@@ -18880,7 +18880,7 @@ setTimeout(()=>{internalData.intoRunScroll=false;resolve();},10);});},/**
|
|
|
18880
18880
|
* 刷新布局
|
|
18881
18881
|
*/recalculate(reFull){const isForce=!!reFull;return handleLazyRecalculate(isForce,isForce,isForce);},openTooltip(target,content){const $commTip=refCommTooltip.value;if($commTip&&$commTip.open){return $commTip.open(target,content);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
18882
18882
|
* 关闭 tooltip
|
|
18883
|
-
*/closeTooltip(){const{tooltipStore}=reactData;const $tooltip=refTooltip.value;const $commTip=refCommTooltip.value;if(tooltipStore.visible){Object.assign(tooltipStore,{row:null,column:null,content:null,visible:false,currOpts:{}});if($tooltip&&$tooltip.close){$tooltip.close();}}if($commTip&&$commTip.close){$commTip.close();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
18883
|
+
*/closeTooltip(){const{tooltipStore}=reactData;const $tooltip=refTooltip.value;const $commTip=refCommTooltip.value;if(tooltipStore.visible){Object.assign(tooltipStore,{row:null,column:null,content:null,visible:false,type:null,currOpts:{}});if($tooltip&&$tooltip.close){$tooltip.close();}}if($commTip&&$commTip.close){$commTip.close();}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
18884
18884
|
* 判断列头复选框是否被选中
|
|
18885
18885
|
*/isAllCheckboxChecked(){return reactData.isAllSelected;},/**
|
|
18886
18886
|
* 判断列头复选框是否被半选
|
|
@@ -18964,7 +18964,7 @@ rowExpandedMaps={};internalData.rowExpandedMaps=rowExpandedMaps;rows=rows.slice(
|
|
|
18964
18964
|
*/isRowExpandByRow(row){const{rowExpandedFlag}=reactData;const{rowExpandedMaps}=internalData;const rowid=getRowid($xeTable,row);return!!rowExpandedFlag&&!!rowExpandedMaps[rowid];},isExpandByRow(row){// 已废弃
|
|
18965
18965
|
warnLog('vxe.error.delFunc',['isExpandByRow','isRowExpandByRow']);return tableMethods.isRowExpandByRow(row);},/**
|
|
18966
18966
|
* 手动清空展开行状态,数据会恢复成未展开的状态
|
|
18967
|
-
*/clearRowExpand(){const{tableFullData,scrollYStore}=internalData;const expandOpts=computeExpandOpts.value;const{reserve}=expandOpts;const expList=$xeTable.getRowExpandRecords();internalData.rowExpandedMaps={};if(reserve){tableFullData.forEach(row=>handleRowExpandReserve(row,false));}reactData.rowExpandedFlag++;scrollYStore.startIndex=0;scrollYStore.endIndex=1;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if(expList.length){return handleLazyRecalculate(true,true,true);}}).then(()=>{updateRowOffsetTop();updateRowExpandStyle();handleRowExpandScroll();return $xeTable.updateCellAreas();});},clearRowExpandReserve(){internalData.rowExpandedReserveRowMap={};return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getRowExpandRecords(){const rest=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(internalData.rowExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},setRowGroups(fieldOrColumns){const{aggregateConfig,rowGroupConfig}=props;const aggregateOpts=computeAggregateOpts.value;const{maxGroupSize}=aggregateOpts;if(!(aggregateConfig||rowGroupConfig)){errLog('vxe.error.reqProp',['aggregate-config']);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const confList=fieldOrColumns?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumns)?fieldOrColumns:[fieldOrColumns]:[];if(maxGroupSize&&confList.length>maxGroupSize){if(core_.VxeUI.modal){core_.VxeUI.modal.message({status:'error',content:table_getI18n('vxe.table.maxGroupCol',[maxGroupSize])});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}if(confList.length){handleUpdateRowGroup(confList.map(fieldOrColumn=>{return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(fieldOrColumn)?fieldOrColumn:fieldOrColumn.field;}));return loadTableData(internalData.tableSynchData,true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},clearRowGroups(){const{aggregateConfig,rowGroupConfig}=props;if(!(aggregateConfig||rowGroupConfig)){errLog('vxe.error.reqProp',['aggregate-config']);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}handleUpdateRowGroup([]);return loadTableData(internalData.tableSynchData,true);},isRowGroupRecord(row){warnLog('vxe.error.delFunc',['isRowGroupRecord','isAggregateRecord']);return $xeTable.isAggregateRecord(row);},isRowGroupExpandByRow(row){warnLog('vxe.error.delFunc',['isRowGroupExpandByRow','isAggregateExpandByRow']);return $xeTable.isAggregateExpandByRow(row);},isAggregateRecord(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row.isAggregate;},getAggregateContentByRow(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate?row.groupContent:'';},getAggregateRowChildren(row){const aggregateOpts=computeAggregateOpts.value;const{childrenField,mapChildrenField}=aggregateOpts;const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate&&childrenField&&mapChildrenField?row[mapChildrenField]||[]:[];},isAggregateExpandByRow(row){const{rowGroupExpandedFlag}=reactData;const{rowGroupExpandedMaps}=internalData;return!!rowGroupExpandedFlag&&!!rowGroupExpandedMaps[getRowid($xeTable,row)];},setRowGroupExpand(rows,expanded){if(rows){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}return handleRowGroupVirtualExpand(rows,expanded);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},setRowGroupExpandByField(groupFields,expanded){const{isRowGroupStatus}=reactData;const aggregateOpts=computeAggregateOpts.value;const{childrenField}=aggregateOpts;if(groupFields){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(groupFields)){groupFields=[groupFields];}if(isRowGroupStatus){const rows=[];const gfKeys={};groupFields.forEach(groupField=>{gfKeys[groupField]=true;});external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(internalData.afterGroupFullData,row=>{if(row.isAggregate&&gfKeys[row.groupField]){rows.push(row);}},{children:childrenField});if(rows.length){return handleRowGroupVirtualExpand(rows,expanded);}}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},setAllRowGroupExpand(expanded){const{tableFullGroupData}=internalData;const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;const rgExpandedMaps={};if(expanded&&mapChildrenField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullGroupData,row=>{if(row[mapChildrenField]&&row[mapChildrenField].length){rgExpandedMaps[getRowid($xeTable,row)]=row;}},{children:mapChildrenField});}internalData.rowGroupExpandedMaps=rgExpandedMaps;handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},clearRowGroupExpand(){internalData.rowGroupExpandedMaps={};handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},getTreeExpandRecords(){const rest=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(internalData.treeExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},/**
|
|
18967
|
+
*/clearRowExpand(){const{tableFullData,scrollYStore}=internalData;const expandOpts=computeExpandOpts.value;const{reserve}=expandOpts;const expList=$xeTable.getRowExpandRecords();internalData.rowExpandedMaps={};if(reserve){tableFullData.forEach(row=>handleRowExpandReserve(row,false));}reactData.rowExpandedFlag++;scrollYStore.startIndex=0;scrollYStore.endIndex=1;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(()=>{if(expList.length){return handleLazyRecalculate(true,true,true);}}).then(()=>{updateRowOffsetTop();updateRowExpandStyle();handleRowExpandScroll();return $xeTable.updateCellAreas();});},clearRowExpandReserve(){internalData.rowExpandedReserveRowMap={};return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getRowExpandRecords(){const rest=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(internalData.rowExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},setRowGroups(fieldOrColumns){const{aggregateConfig,rowGroupConfig}=props;const aggregateOpts=computeAggregateOpts.value;const{maxGroupSize}=aggregateOpts;if(!(aggregateConfig||rowGroupConfig)){errLog('vxe.error.reqProp',['aggregate-config']);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}const confList=fieldOrColumns?external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrColumns)?fieldOrColumns:[fieldOrColumns]:[];if(maxGroupSize&&confList.length>maxGroupSize){if(core_.VxeUI.modal){core_.VxeUI.modal.message({status:'error',content:table_getI18n('vxe.table.maxGroupCol',[maxGroupSize])});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}if(confList.length){handleUpdateRowGroup(confList.map(fieldOrColumn=>{return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(fieldOrColumn)?fieldOrColumn:fieldOrColumn.field;}));return loadTableData(internalData.tableSynchData,true);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},getRowGroups(){const{aggregateConfig,rowGroupConfig}=props;const{fullColumnFieldData}=internalData;if(aggregateConfig||rowGroupConfig){const{rowGroupList}=reactData;return rowGroupList.map(({field})=>{const colRet=fullColumnFieldData[field];if(colRet){return colRet.column;}return{field};});}return[];},getRowGroupFields(){return $xeTable.getRowGroups().map(item=>item.field);},clearRowGroups(){const{aggregateConfig,rowGroupConfig}=props;if(!(aggregateConfig||rowGroupConfig)){errLog('vxe.error.reqProp',['aggregate-config']);return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}handleUpdateRowGroup([]);return loadTableData(internalData.tableSynchData,true);},isRowGroupRecord(row){warnLog('vxe.error.delFunc',['isRowGroupRecord','isAggregateRecord']);return $xeTable.isAggregateRecord(row);},isRowGroupExpandByRow(row){warnLog('vxe.error.delFunc',['isRowGroupExpandByRow','isAggregateExpandByRow']);return $xeTable.isAggregateExpandByRow(row);},isAggregateRecord(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row.isAggregate;},getAggregateContentByRow(row){const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate?row.groupContent:'';},getAggregateRowChildren(row){const aggregateOpts=computeAggregateOpts.value;const{childrenField,mapChildrenField}=aggregateOpts;const{isRowGroupStatus}=reactData;return isRowGroupStatus&&row&&row.isAggregate&&childrenField&&mapChildrenField?row[mapChildrenField]||[]:[];},isAggregateExpandByRow(row){const{rowGroupExpandedFlag}=reactData;const{rowGroupExpandedMaps}=internalData;return!!rowGroupExpandedFlag&&!!rowGroupExpandedMaps[getRowid($xeTable,row)];},setRowGroupExpand(rows,expanded){if(rows){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}return handleRowGroupVirtualExpand(rows,expanded);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},setRowGroupExpandByField(groupFields,expanded){const{isRowGroupStatus}=reactData;const aggregateOpts=computeAggregateOpts.value;const{childrenField}=aggregateOpts;if(groupFields){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(groupFields)){groupFields=[groupFields];}if(isRowGroupStatus){const rows=[];const gfKeys={};groupFields.forEach(groupField=>{gfKeys[groupField]=true;});external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(internalData.afterGroupFullData,row=>{if(row.isAggregate&&gfKeys[row.groupField]){rows.push(row);}},{children:childrenField});if(rows.length){return handleRowGroupVirtualExpand(rows,expanded);}}}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},setAllRowGroupExpand(expanded){const{tableFullGroupData}=internalData;const aggregateOpts=computeAggregateOpts.value;const{mapChildrenField}=aggregateOpts;const rgExpandedMaps={};if(expanded&&mapChildrenField){external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(tableFullGroupData,row=>{if(row[mapChildrenField]&&row[mapChildrenField].length){rgExpandedMaps[getRowid($xeTable,row)]=row;}},{children:mapChildrenField});}internalData.rowGroupExpandedMaps=rgExpandedMaps;handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},clearRowGroupExpand(){internalData.rowGroupExpandedMaps={};handleVirtualTreeToList();$xeTable.handleTableData();updateAfterDataIndex();reactData.rowGroupExpandedFlag++;return handleLazyRecalculate(true,true,true);},getTreeExpandRecords(){const rest=[];external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(internalData.treeExpandedMaps,item=>{if(item){rest.push(item);}});return rest;},/**
|
|
18968
18968
|
* 判断树节点是否懒加载完成
|
|
18969
18969
|
* @param {Row} row 行对象
|
|
18970
18970
|
*/isTreeExpandLoaded(row){const{fullAllDataRowIdData}=internalData;const rowRest=fullAllDataRowIdData[getRowid($xeTable,row)];return rowRest&&!!rowRest.treeLoaded;},clearTreeExpandLoaded(rows){const{fullAllDataRowIdData,treeExpandedMaps}=internalData;const treeOpts=computeTreeOpts.value;const{transform}=treeOpts;if(rows){if(!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)){rows=[rows];}rows.forEach(row=>{const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){rowRest.treeLoaded=false;if(treeExpandedMaps[rowid]){delete treeExpandedMaps[rowid];}}});}else{external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(fullAllDataRowIdData,rowRest=>{rowRest.treeLoaded=false;});}internalData.treeExpandedMaps={};if(transform){handleVirtualTreeToList();$xeTable.handleTableData();}reactData.treeExpandedFlag++;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();},/**
|
|
@@ -19103,7 +19103,7 @@ if(editMode!=='insert'){setCellValue(selected.row,selected.column,null);}$xeTabl
|
|
|
19103
19103
|
* 处理显示 tooltip
|
|
19104
19104
|
* @param {Event} evnt 事件
|
|
19105
19105
|
* @param {Row} row 行对象
|
|
19106
|
-
*/const handleTooltip=(evnt,tdEl,overflowElem,tipElem,params)=>{const tipOverEl=overflowElem||tdEl;if(!tipOverEl){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}params.cell=tdEl;const{tooltipStore}=reactData;const tooltipOpts=computeTooltipOpts.value;const{column,row}=params;const{showAll,contentMethod}=tooltipOpts;const customContent=contentMethod?contentMethod(params):null;const useCustom=contentMethod&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(customContent);const content=useCustom?customContent:external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toString(column.type==='html'?tipOverEl.innerText:tipOverEl.textContent).trim();const isOver=tipOverEl.scrollWidth>tipOverEl.clientWidth;if(content&&(showAll||useCustom||isOver)){Object.assign(tooltipStore,{row,column,visible:true,currOpts:{}});(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{const $tooltip=refTooltip.value;if($tooltip&&$tooltip.open){$tooltip.open(isOver?tipOverEl:tipElem,
|
|
19106
|
+
*/const handleTooltip=(evnt,type,tdEl,overflowElem,tipElem,params)=>{const tipOverEl=overflowElem||tdEl;if(!tipOverEl){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}params.cell=tdEl;const{tooltipStore}=reactData;const tooltipOpts=computeTooltipOpts.value;const{column,row}=params;const{showAll,contentMethod}=tooltipOpts;const customContent=contentMethod?contentMethod(params):null;const useCustom=contentMethod&&!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(customContent);const content=useCustom?customContent:external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toString(column.type==='html'?tipOverEl.innerText:tipOverEl.textContent).trim();const isOver=tipOverEl.scrollWidth>tipOverEl.clientWidth;if(content&&(showAll||useCustom||isOver)){const tipContent=formatText(content);Object.assign(tooltipStore,{row,column,visible:true,content:tipContent,type,currOpts:{}});(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{const $tooltip=refTooltip.value;if($tooltip&&$tooltip.open){$tooltip.open(isOver?tipOverEl:tipElem,tipContent);}});}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const callSlot=(slotFunc,params)=>{if(slotFunc){if($xeGGWrapper){return $xeGGWrapper.callSlot(slotFunc,params);}// if (XEUtils.isString(slotFunc)) {
|
|
19107
19107
|
// slotFunc = slots[slotFunc] || null
|
|
19108
19108
|
// }
|
|
19109
19109
|
if(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(slotFunc)){return getSlotVNs(slotFunc(params));}}return[];};/**
|
|
@@ -19168,14 +19168,14 @@ rows.forEach(row=>{const rowid=handleGetRowId(row);if(isForce||!checkMethod||che
|
|
|
19168
19168
|
* 处理合并
|
|
19169
19169
|
*/handleUpdateBodyMerge(){const{mergeBodyList}=internalData;internalData.mergeBodyCellMaps=buildMergeData(mergeBodyList);reactData.mergeBodyFlag++;},handleUpdateHeaderMerge(){const{mergeHeaderList}=internalData;internalData.mergeHeaderCellMaps=buildMergeData(mergeHeaderList);reactData.mergeHeadFlag++;},handleUpdateFooterMerge(){const{mergeFooterList}=internalData;internalData.mergeFooterCellMaps=buildMergeData(mergeFooterList);reactData.mergeFootFlag++;},handleAggregateSummaryData(){return updateGroupData();},triggerHeaderTitleEvent(evnt,iconParams,params){const tipContent=iconParams.content||iconParams.message;if(tipContent){const{tooltipStore}=reactData;const{column}=params;const content=getFuncText(tipContent);handleTargetEnterEvent(true);tooltipStore.row=null;tooltipStore.column=column;tooltipStore.visible=true;tooltipStore.currOpts=iconParams;(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{const $tooltip=refTooltip.value;if($tooltip&&$tooltip.open){$tooltip.open(evnt.currentTarget,content);}});}},/**
|
|
19170
19170
|
* 触发表头 tooltip 事件
|
|
19171
|
-
*/triggerHeaderTooltipEvent(evnt,params){const{tooltipStore}=reactData;const{column}=params;handleTargetEnterEvent(true);const titleElem=evnt.currentTarget;if(!titleElem){return;}const cWrapperEl=titleElem.parentElement;if(!cWrapperEl){return;}const cellEl=cWrapperEl.parentElement;if(!cellEl){return;}const thEl=cellEl.parentElement;if(!thEl){return;}if(tooltipStore.column!==column||!tooltipStore.visible){const ctEl=thEl.querySelector('.vxe-cell--title');handleTooltip(evnt,thEl,(hasClass(thEl,'col--ellipsis')?ctEl:cWrapperEl)||cWrapperEl,ctEl||cellEl,params);}},/**
|
|
19171
|
+
*/triggerHeaderTooltipEvent(evnt,params){const{tooltipStore}=reactData;const{column}=params;handleTargetEnterEvent(true);const titleElem=evnt.currentTarget;if(!titleElem){return;}const cWrapperEl=titleElem.parentElement;if(!cWrapperEl){return;}const cellEl=cWrapperEl.parentElement;if(!cellEl){return;}const thEl=cellEl.parentElement;if(!thEl){return;}if(tooltipStore.column!==column||!tooltipStore.visible){const ctEl=thEl.querySelector('.vxe-cell--title');handleTooltip(evnt,'header',thEl,(hasClass(thEl,'col--ellipsis')?ctEl:cWrapperEl)||cWrapperEl,ctEl||cellEl,params);}},/**
|
|
19172
19172
|
* 触发单元格 tooltip 事件
|
|
19173
19173
|
*/triggerBodyTooltipEvent(evnt,params){const{editConfig}=props;const{editStore}=reactData;const{tooltipStore}=reactData;const editOpts=computeEditOpts.value;const{actived}=editStore;const{row,column}=params;const tdEl=evnt.currentTarget;handleTargetEnterEvent(tooltipStore.column!==column||tooltipStore.row!==row);// 单元格处于编辑状态时不触发提示框
|
|
19174
19174
|
if(column.editRender&&isEnableConf(editConfig)){// 如果是行编辑模式
|
|
19175
19175
|
if(editOpts.mode==='row'&&actived.row===row){return;}// 如果是单元格编辑模式
|
|
19176
|
-
if(actived.row===row&&actived.column===column){return;}}if(tooltipStore.column!==column||tooltipStore.row!==row||!tooltipStore.visible){const ctEl=tdEl.querySelector('.vxe-cell--wrapper');let ovEl=null;let tipEl=tdEl.querySelector(column.type==='html'?'.vxe-cell--html':'.vxe-cell--label');if(column.treeNode){ovEl=tdEl.querySelector('.vxe-tree-cell');}if(!tipEl){tipEl=ctEl;}handleTooltip(evnt,tdEl,ovEl||ctEl,tipEl,params);}},/**
|
|
19176
|
+
if(actived.row===row&&actived.column===column){return;}}if(tooltipStore.column!==column||tooltipStore.row!==row||!tooltipStore.visible){const ctEl=tdEl.querySelector('.vxe-cell--wrapper');let ovEl=null;let tipEl=tdEl.querySelector(column.type==='html'?'.vxe-cell--html':'.vxe-cell--label');if(column.treeNode){ovEl=tdEl.querySelector('.vxe-tree-cell');}if(!tipEl){tipEl=ctEl;}handleTooltip(evnt,'body',tdEl,ovEl||ctEl,tipEl,params);}},/**
|
|
19177
19177
|
* 触发表尾 tooltip 事件
|
|
19178
|
-
*/triggerFooterTooltipEvent(evnt,params){const{column}=params;const{tooltipStore}=reactData;const tdEl=evnt.currentTarget;handleTargetEnterEvent(tooltipStore.column!==column||!!tooltipStore.row);if(tooltipStore.column!==column||!tooltipStore.visible){const ctEl=tdEl.querySelector('.vxe-cell--wrapper');let ovEl=null;let tipEl=tdEl.querySelector(column.type==='html'?'.vxe-cell--html':'.vxe-cell--label');if(column.type==='html'){ovEl=tdEl.querySelector('.vxe-cell--html');}if(!tipEl){tipEl=ctEl;}handleTooltip(evnt,tdEl,ovEl||ctEl,tipEl,params);}},handleTargetLeaveEvent(){const tooltipOpts=computeTooltipOpts.value;let $tooltip=refTooltip.value;if($tooltip&&$tooltip.setActived){$tooltip.setActived(false);}if(tooltipOpts.enterable){internalData.tooltipTimeout=setTimeout(()=>{$tooltip=refTooltip.value;if($tooltip&&$tooltip.isActived&&!$tooltip.isActived()){$xeTable.closeTooltip();}},tooltipOpts.leaveDelay);}else{$xeTable.closeTooltip();}},triggerHeaderCellClickEvent(evnt,params){const{_lastResizeTime}=internalData;const sortOpts=computeSortOpts.value;const columnOpts=computeColumnOpts.value;const currentColumnOpts=computeCurrentColumnOpts.value;const{column}=params;const cell=evnt.currentTarget;const triggerResizable=_lastResizeTime&&_lastResizeTime>Date.now()-300;const triggerSort=getEventTargetNode(evnt,cell,'vxe-cell--sort').flag;const triggerFilter=getEventTargetNode(evnt,cell,'vxe-cell--filter').flag;if(sortOpts.trigger==='cell'&&!(triggerResizable||triggerSort||triggerFilter)){$xeTable.triggerSortEvent(evnt,column,getNextSortOrder(column));}dispatchEvent('header-cell-click',Object.assign({triggerResizable,triggerSort,triggerFilter,cell},params),evnt);if((columnOpts.isCurrent||props.highlightCurrentColumn)&&(!currentColumnOpts.trigger||['header','default'].includes(currentColumnOpts.trigger))){$xeTable.triggerCurrentColumnEvent(evnt,params);}},triggerHeaderCellDblclickEvent(evnt,params){dispatchEvent('header-cell-dblclick',Object.assign({cell:evnt.currentTarget},params),evnt);},/**
|
|
19178
|
+
*/triggerFooterTooltipEvent(evnt,params){const{column}=params;const{tooltipStore}=reactData;const tdEl=evnt.currentTarget;handleTargetEnterEvent(tooltipStore.column!==column||!!tooltipStore.row);if(tooltipStore.column!==column||!tooltipStore.visible){const ctEl=tdEl.querySelector('.vxe-cell--wrapper');let ovEl=null;let tipEl=tdEl.querySelector(column.type==='html'?'.vxe-cell--html':'.vxe-cell--label');if(column.type==='html'){ovEl=tdEl.querySelector('.vxe-cell--html');}if(!tipEl){tipEl=ctEl;}handleTooltip(evnt,'footer',tdEl,ovEl||ctEl,tipEl,params);}},handleTargetLeaveEvent(){const tooltipOpts=computeTooltipOpts.value;let $tooltip=refTooltip.value;if($tooltip&&$tooltip.setActived){$tooltip.setActived(false);}if(tooltipOpts.enterable){internalData.tooltipTimeout=setTimeout(()=>{$tooltip=refTooltip.value;if($tooltip&&$tooltip.isActived&&!$tooltip.isActived()){$xeTable.closeTooltip();}},tooltipOpts.leaveDelay);}else{$xeTable.closeTooltip();}},triggerHeaderCellClickEvent(evnt,params){const{_lastResizeTime}=internalData;const sortOpts=computeSortOpts.value;const columnOpts=computeColumnOpts.value;const currentColumnOpts=computeCurrentColumnOpts.value;const{column}=params;const cell=evnt.currentTarget;const triggerResizable=_lastResizeTime&&_lastResizeTime>Date.now()-300;const triggerSort=getEventTargetNode(evnt,cell,'vxe-cell--sort').flag;const triggerFilter=getEventTargetNode(evnt,cell,'vxe-cell--filter').flag;if(sortOpts.trigger==='cell'&&!(triggerResizable||triggerSort||triggerFilter)){$xeTable.triggerSortEvent(evnt,column,getNextSortOrder(column));}dispatchEvent('header-cell-click',Object.assign({triggerResizable,triggerSort,triggerFilter,cell},params),evnt);if((columnOpts.isCurrent||props.highlightCurrentColumn)&&(!currentColumnOpts.trigger||['header','default'].includes(currentColumnOpts.trigger))){$xeTable.triggerCurrentColumnEvent(evnt,params);}},triggerHeaderCellDblclickEvent(evnt,params){dispatchEvent('header-cell-dblclick',Object.assign({cell:evnt.currentTarget},params),evnt);},/**
|
|
19179
19179
|
* 列点击事件
|
|
19180
19180
|
* 如果是单击模式,则激活为编辑状态
|
|
19181
19181
|
* 如果是双击模式,则单击后选中状态
|
|
@@ -19290,7 +19290,7 @@ if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=maxYHei
|
|
|
19290
19290
|
* 表体
|
|
19291
19291
|
*/(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(body,{ref:refTableBody,tableData,tableColumn}),/**
|
|
19292
19292
|
* 表尾
|
|
19293
|
-
*/showFooter?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(footer,{ref:refTableFooter,footerTableData,tableColumn}):table_renderEmptyElement($xeTable)]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--fixed-wrapper'},[leftList&&leftList.length&&overflowX?renderFixed('left'):table_renderEmptyElement($xeTable),rightList&&rightList.length&&overflowX?renderFixed('right'):table_renderEmptyElement($xeTable)]),renderRowExpandedVNs()]);};const renderBody=()=>{const scrollbarYToLeft=computeScrollbarYToLeft.value;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--layout-wrapper'},scrollbarYToLeft?[renderScrollY(),renderViewport()]:[renderViewport(),renderScrollY()]);};const renderVN=()=>{const{loading,stripe,showHeader,height,treeConfig,mouseConfig,showFooter,highlightCell,highlightHoverRow,highlightHoverColumn,editConfig,editRules}=props;const{isGroup,overflowX,overflowY,scrollXLoad,scrollYLoad,tableData,initStore,isRowGroupStatus,columnStore,filterStore,customStore}=reactData;const{teleportToWrapperElem}=internalData;const{leftList,rightList}=columnStore;const loadingSlot=slots.loading;const rowDragOpts=computeRowDragOpts.value;const tableTipConfig=computeTableTipConfig.value;const validTipConfig=computeValidTipConfig.value;const validOpts=computeValidOpts.value;const checkboxOpts=computeCheckboxOpts.value;const treeOpts=computeTreeOpts.value;const rowOpts=computeRowOpts.value;const columnOpts=computeColumnOpts.value;const vSize=computeSize.value;const tableBorder=computeTableBorder.value;const mouseOpts=computeMouseOpts.value;const areaOpts=computeAreaOpts.value;const loadingOpts=computeLoadingOpts.value;const isMenu=computeIsMenu.value;const currLoading=reactData.isColLoading||reactData.isRowLoading||loading;const resizableOpts=computeResizableOpts.value;const isArea=mouseConfig&&mouseOpts.area;const columnDragOpts=computeColumnDragOpts.value;const scrollbarXToTop=computeScrollbarXToTop.value;const scrollbarYToLeft=computeScrollbarYToLeft.value;const{isCrossTableDrag}=rowDragOpts;const tbOns={onKeydown:keydownEvent};if(isCrossTableDrag&&!tableData.length){tbOns.onDragover=$xeTable.handleCrossTableRowDragoverEmptyEvent;}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refElem,class:['vxe-table','vxe-table--render-default',`tid_${xID}`,`border--${tableBorder}`,`sx-pos--${scrollbarXToTop?'top':'bottom'}`,`sy-pos--${scrollbarYToLeft?'left':'right'}`,{[`size--${vSize}`]:vSize,[`valid-msg--${validOpts.msgMode}`]:!!editRules,'vxe-editable':!!editConfig,'old-cell-valid':editRules&&table_getConfig().cellVaildMode==='obsolete','cell--highlight':highlightCell,'cell--selected':mouseConfig&&mouseOpts.selected,'cell--area':isArea,'header-cell--area':isArea&&areaOpts.selectCellByHeader,'body-cell--area':isArea&&areaOpts.selectCellByBody,'row--highlight':rowOpts.isHover||highlightHoverRow,'column--highlight':columnOpts.isHover||highlightHoverColumn,'checkbox--range':checkboxOpts.range,'col--drag-cell':columnOpts.drag&&columnDragOpts.trigger==='cell','is--header':showHeader,'is--footer':showFooter,'is--group':isGroup,'is-row-group':isRowGroupStatus,'is--tree-line':treeConfig&&(treeOpts.showLine||treeOpts.line),'is--fixed-left':leftList.length,'is--fixed-right':rightList.length,'is--animat':!!props.animat,'is--round':props.round,'is--stripe':!treeConfig&&stripe,'is--loading':currLoading,'is--empty':!currLoading&&!tableData.length,'is--scroll-y':overflowY,'is--scroll-x':overflowX,'is--virtual-x':scrollXLoad,'is--virtual-y':scrollYLoad}],spellcheck:false,...tbOns},[/**
|
|
19293
|
+
*/showFooter?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(footer,{ref:refTableFooter,footerTableData,tableColumn}):table_renderEmptyElement($xeTable)]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--fixed-wrapper'},[leftList&&leftList.length&&overflowX?renderFixed('left'):table_renderEmptyElement($xeTable),rightList&&rightList.length&&overflowX?renderFixed('right'):table_renderEmptyElement($xeTable)]),renderRowExpandedVNs()]);};const renderBody=()=>{const scrollbarYToLeft=computeScrollbarYToLeft.value;return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table--layout-wrapper'},scrollbarYToLeft?[renderScrollY(),renderViewport()]:[renderViewport(),renderScrollY()]);};const renderVN=()=>{const{loading,stripe,showHeader,height,treeConfig,mouseConfig,showFooter,highlightCell,highlightHoverRow,highlightHoverColumn,editConfig,editRules}=props;const{isGroup,overflowX,overflowY,scrollXLoad,scrollYLoad,tableData,initStore,isRowGroupStatus,columnStore,filterStore,customStore,tooltipStore}=reactData;const{teleportToWrapperElem}=internalData;const{leftList,rightList}=columnStore;const loadingSlot=slots.loading;const tipSlots={header:slots.headerTooltip||slots['header-tooltip'],body:slots.tooltip,footer:slots.footerTooltip||slots['footer-tooltip']};const currTooltipSlot=tooltipStore.visible&&tooltipStore.type?tipSlots[tooltipStore.type]:null;const rowDragOpts=computeRowDragOpts.value;const tableTipConfig=computeTableTipConfig.value;const validTipConfig=computeValidTipConfig.value;const validOpts=computeValidOpts.value;const checkboxOpts=computeCheckboxOpts.value;const treeOpts=computeTreeOpts.value;const rowOpts=computeRowOpts.value;const columnOpts=computeColumnOpts.value;const vSize=computeSize.value;const tableBorder=computeTableBorder.value;const mouseOpts=computeMouseOpts.value;const areaOpts=computeAreaOpts.value;const loadingOpts=computeLoadingOpts.value;const isMenu=computeIsMenu.value;const currLoading=reactData.isColLoading||reactData.isRowLoading||loading;const resizableOpts=computeResizableOpts.value;const isArea=mouseConfig&&mouseOpts.area;const columnDragOpts=computeColumnDragOpts.value;const scrollbarXToTop=computeScrollbarXToTop.value;const scrollbarYToLeft=computeScrollbarYToLeft.value;const{isCrossTableDrag}=rowDragOpts;const tbOns={onKeydown:keydownEvent};if(isCrossTableDrag&&!tableData.length){tbOns.onDragover=$xeTable.handleCrossTableRowDragoverEmptyEvent;}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refElem,class:['vxe-table','vxe-table--render-default',`tid_${xID}`,`border--${tableBorder}`,`sx-pos--${scrollbarXToTop?'top':'bottom'}`,`sy-pos--${scrollbarYToLeft?'left':'right'}`,{[`size--${vSize}`]:vSize,[`valid-msg--${validOpts.msgMode}`]:!!editRules,'vxe-editable':!!editConfig,'old-cell-valid':editRules&&table_getConfig().cellVaildMode==='obsolete','cell--highlight':highlightCell,'cell--selected':mouseConfig&&mouseOpts.selected,'cell--area':isArea,'header-cell--area':isArea&&areaOpts.selectCellByHeader,'body-cell--area':isArea&&areaOpts.selectCellByBody,'row--highlight':rowOpts.isHover||highlightHoverRow,'column--highlight':columnOpts.isHover||highlightHoverColumn,'checkbox--range':checkboxOpts.range,'col--drag-cell':columnOpts.drag&&columnDragOpts.trigger==='cell','is--header':showHeader,'is--footer':showFooter,'is--group':isGroup,'is-row-group':isRowGroupStatus,'is--tree-line':treeConfig&&(treeOpts.showLine||treeOpts.line),'is--fixed-left':leftList.length,'is--fixed-right':rightList.length,'is--animat':!!props.animat,'is--round':props.round,'is--stripe':!treeConfig&&stripe,'is--loading':currLoading,'is--empty':!currLoading&&!tableData.length,'is--scroll-y':overflowY,'is--scroll-x':overflowX,'is--virtual-x':scrollXLoad,'is--virtual-y':scrollYLoad}],spellcheck:false,...tbOns},[/**
|
|
19294
19294
|
* 隐藏列
|
|
19295
19295
|
*/(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table-slots'},slots.default?slots.default({}):[]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{ref:refVarElem,class:'vxe-table-vars'},[(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table-var-default'}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table-var-medium'}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table-var-small'}),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{class:'vxe-table-var-mini'})]),(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:'tw',class:'vxe-table--render-wrapper'},scrollbarXToTop?[renderScrollX(),renderBody()]:[renderBody(),renderScrollX()]),/**
|
|
19296
19296
|
* 空数据
|
|
@@ -19320,7 +19320,7 @@ if(bodyScrollElem&&bodyTableElem&&bodyScrollElem.scrollTop+clientHeight>=maxYHei
|
|
|
19320
19320
|
* 通用提示
|
|
19321
19321
|
*/(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(VxeUITooltipComponent,{key:'ctp',ref:refCommTooltip,isArrow:false,enterable:false}),/**
|
|
19322
19322
|
* 工具提示
|
|
19323
|
-
*/(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(VxeUITooltipComponent,{key:'btp',ref:refTooltip,theme:tableTipConfig.theme,enterable:tableTipConfig.enterable,enterDelay:tableTipConfig.enterDelay,leaveDelay:tableTipConfig.leaveDelay,useHTML:tableTipConfig.useHTML}),/**
|
|
19323
|
+
*/(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(VxeUITooltipComponent,{key:'btp',ref:refTooltip,theme:tableTipConfig.theme,enterable:tableTipConfig.enterable,enterDelay:tableTipConfig.enterDelay,leaveDelay:tableTipConfig.leaveDelay,useHTML:tableTipConfig.useHTML,width:tableTipConfig.width,height:tableTipConfig.height,minWidth:tableTipConfig.minWidth,minHeight:tableTipConfig.minHeight,maxWidth:tableTipConfig.maxWidth,maxHeight:tableTipConfig.maxHeight},currTooltipSlot?{content:()=>{const{type,row,column,content:tooltipContent}=tooltipStore;if(currTooltipSlot){if(column&&type==='header'){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:type},currTooltipSlot({column,tooltipContent,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}));}if(row&&column&&type==='body'){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:type},currTooltipSlot({row,column,tooltipContent,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}));}if(row&&column&&type==='footer'){return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div',{key:type},currTooltipSlot({row,column,tooltipContent,$table:$xeTable,$grid:$xeGrid,$gantt:$xeGantt}));}}return table_renderEmptyElement($xeTable);}}:{}),/**
|
|
19324
19324
|
* 校验提示
|
|
19325
19325
|
*/props.editRules&&validOpts.showMessage&&(validOpts.message==='default'?!height:validOpts.message==='tooltip')?(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(VxeUITooltipComponent,{key:'vtp',ref:refValidTooltip,class:[{'old-cell-valid':editRules&&table_getConfig().cellVaildMode==='obsolete'},'vxe-table--valid-error'],theme:validTipConfig.theme,enterable:validTipConfig.enterable,enterDelay:validTipConfig.enterDelay,leaveDelay:validTipConfig.leaveDelay}):table_renderEmptyElement($xeTable)]):table_renderEmptyElement($xeTable)]);};const dataFlag=(0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(0);(0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(()=>props.data?props.data.length:-1,()=>{dataFlag.value++;});(0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(()=>props.data,()=>{dataFlag.value++;});(0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(dataFlag,()=>{const{initStatus}=internalData;const value=props.data||[];if(value&&value.length>=50000){warnLog('vxe.error.errLargeData',['loadData(data), reloadData(data)']);}loadTableData(value,true).then(()=>{const{scrollXLoad,scrollYLoad,expandColumn}=reactData;const expandOpts=computeExpandOpts.value;internalData.inited=true;internalData.initStatus=true;if(!initStatus){handleLoadDefaults();}// const checkboxOpts = computeCheckboxOpts.value
|
|
19326
19326
|
// const checkboxColumn = internalData.tableFullColumn.find(column => column.type === 'checkbox')
|
|
@@ -20887,6 +20887,9 @@ function grid_createInternalData() {
|
|
|
20887
20887
|
const loadingSlot = slots.loading;
|
|
20888
20888
|
const rowDragIconSlot = slots.rowDragIcon || slots['row-drag-icon'];
|
|
20889
20889
|
const columnDragIconSlot = slots.columnDragIcon || slots['column-drag-icon'];
|
|
20890
|
+
const headerTooltipSlot = slots.headerTooltip || slots['header-tooltip'];
|
|
20891
|
+
const tooltipSlot = slots.tooltip;
|
|
20892
|
+
const footerTooltipSlot = slots.footerTooltip || slots['footer-tooltip'];
|
|
20890
20893
|
if (proxyConfig && isEnableConf(proxyOpts)) {
|
|
20891
20894
|
if (proxyOpts.sort) {
|
|
20892
20895
|
tableOns.onSortChange = sortChangeEvent;
|
|
@@ -20910,6 +20913,15 @@ function grid_createInternalData() {
|
|
|
20910
20913
|
if (columnDragIconSlot) {
|
|
20911
20914
|
slotObj.columnDragIcon = columnDragIconSlot;
|
|
20912
20915
|
}
|
|
20916
|
+
if (headerTooltipSlot) {
|
|
20917
|
+
slotObj.headerTooltip = headerTooltipSlot;
|
|
20918
|
+
}
|
|
20919
|
+
if (tooltipSlot) {
|
|
20920
|
+
slotObj.tooltip = tooltipSlot;
|
|
20921
|
+
}
|
|
20922
|
+
if (footerTooltipSlot) {
|
|
20923
|
+
slotObj.footerTooltip = footerTooltipSlot;
|
|
20924
|
+
}
|
|
20913
20925
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
20914
20926
|
class: 'vxe-grid--table-wrapper'
|
|
20915
20927
|
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(table, {
|