vxe-table 4.14.0-beta.5 → 4.14.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/grid/src/grid.js +2 -2
- package/es/locale/lang/ar-EG.js +2 -1
- package/es/locale/lang/de-DE.js +2 -1
- package/es/locale/lang/en-US.js +2 -1
- package/es/locale/lang/es-ES.js +2 -1
- package/es/locale/lang/fr-FR.js +2 -1
- package/es/locale/lang/hu-HU.js +2 -1
- package/es/locale/lang/hy-AM.js +2 -1
- package/es/locale/lang/id-ID.js +2 -1
- package/es/locale/lang/it-IT.js +2 -1
- package/es/locale/lang/ja-JP.js +2 -1
- package/es/locale/lang/ko-KR.js +2 -1
- package/es/locale/lang/ms-MY.js +2 -1
- package/es/locale/lang/nb-NO.js +2 -1
- package/es/locale/lang/pt-BR.js +2 -1
- package/es/locale/lang/ru-RU.js +2 -1
- package/es/locale/lang/th-TH.js +2 -1
- package/es/locale/lang/ug-CN.js +2 -1
- package/es/locale/lang/uk-UA.js +2 -1
- package/es/locale/lang/uz-UZ.js +2 -1
- package/es/locale/lang/vi-VN.js +2 -1
- package/es/locale/lang/zh-CHT.js +2 -1
- package/es/locale/lang/zh-CN.js +2 -1
- package/es/style.css +1 -1
- package/es/table/src/body.js +3 -2
- package/es/table/src/table.js +3 -0
- package/es/table/src/util.js +5 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +2 -2
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +19 -10
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +2 -1
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +2 -1
- package/lib/locale/lang/de-DE.js +2 -1
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +2 -1
- package/lib/locale/lang/en-US.js +2 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +2 -1
- package/lib/locale/lang/es-ES.js +2 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +2 -1
- package/lib/locale/lang/fr-FR.js +2 -1
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +2 -1
- package/lib/locale/lang/hu-HU.js +2 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +2 -1
- package/lib/locale/lang/hy-AM.js +2 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +2 -1
- package/lib/locale/lang/id-ID.js +2 -1
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +2 -1
- package/lib/locale/lang/it-IT.js +2 -1
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +2 -1
- package/lib/locale/lang/ja-JP.js +2 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +2 -1
- package/lib/locale/lang/ko-KR.js +2 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +2 -1
- package/lib/locale/lang/ms-MY.js +2 -1
- package/lib/locale/lang/ms-MY.min.js +1 -1
- package/lib/locale/lang/ms-MY.umd.js +2 -1
- package/lib/locale/lang/nb-NO.js +2 -1
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +2 -1
- package/lib/locale/lang/pt-BR.js +2 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +2 -1
- package/lib/locale/lang/ru-RU.js +2 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +2 -1
- package/lib/locale/lang/th-TH.js +2 -1
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +2 -1
- package/lib/locale/lang/ug-CN.js +2 -1
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +2 -1
- package/lib/locale/lang/uk-UA.js +2 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +2 -1
- package/lib/locale/lang/uz-UZ.js +2 -1
- package/lib/locale/lang/uz-UZ.min.js +1 -1
- package/lib/locale/lang/uz-UZ.umd.js +2 -1
- package/lib/locale/lang/vi-VN.js +2 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +2 -1
- package/lib/locale/lang/zh-CHT.js +2 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CHT.umd.js +2 -1
- package/lib/locale/lang/zh-CN.js +2 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +2 -1
- package/lib/style.css +1 -1
- package/lib/table/src/body.js +2 -2
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/table.js +2 -2
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +9 -1
- package/lib/table/src/util.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 +2 -2
- package/packages/locale/lang/ar-EG.ts +2 -1
- package/packages/locale/lang/de-DE.ts +2 -1
- package/packages/locale/lang/en-US.ts +2 -1
- package/packages/locale/lang/es-ES.ts +2 -1
- package/packages/locale/lang/fr-FR.ts +2 -1
- package/packages/locale/lang/hu-HU.ts +2 -1
- package/packages/locale/lang/hy-AM.ts +2 -1
- package/packages/locale/lang/id-ID.ts +2 -1
- package/packages/locale/lang/it-IT.ts +2 -1
- package/packages/locale/lang/ja-JP.ts +2 -1
- package/packages/locale/lang/ko-KR.ts +2 -1
- package/packages/locale/lang/ms-MY.ts +2 -1
- package/packages/locale/lang/nb-NO.ts +2 -1
- package/packages/locale/lang/pt-BR.ts +2 -1
- package/packages/locale/lang/ru-RU.ts +2 -1
- package/packages/locale/lang/th-TH.ts +2 -1
- package/packages/locale/lang/ug-CN.ts +2 -1
- package/packages/locale/lang/uk-UA.ts +2 -1
- package/packages/locale/lang/uz-UZ.ts +2 -1
- package/packages/locale/lang/vi-VN.ts +2 -1
- package/packages/locale/lang/zh-CHT.ts +2 -1
- package/packages/locale/lang/zh-CN.ts +2 -1
- package/packages/table/src/body.ts +4 -2
- package/packages/table/src/table.ts +4 -0
- package/packages/table/src/util.ts +5 -1
- /package/es/{iconfont.1751287466157.ttf → iconfont.1751422282348.ttf} +0 -0
- /package/es/{iconfont.1751287466157.woff → iconfont.1751422282348.woff} +0 -0
- /package/es/{iconfont.1751287466157.woff2 → iconfont.1751422282348.woff2} +0 -0
- /package/lib/{iconfont.1751287466157.ttf → iconfont.1751422282348.ttf} +0 -0
- /package/lib/{iconfont.1751287466157.woff → iconfont.1751422282348.woff} +0 -0
- /package/lib/{iconfont.1751287466157.woff2 → iconfont.1751422282348.woff2} +0 -0
package/es/table/src/body.js
CHANGED
|
@@ -38,7 +38,7 @@ export default defineVxeComponent({
|
|
|
38
38
|
return !!(isDragResize || (lastScrollTime && Date.now() < lastScrollTime + delayHover));
|
|
39
39
|
};
|
|
40
40
|
const renderLine = (rowid, params, cellHeight) => {
|
|
41
|
-
const {
|
|
41
|
+
const { column } = params;
|
|
42
42
|
const { afterFullData } = tableInternalData;
|
|
43
43
|
const { treeConfig } = tableProps;
|
|
44
44
|
const treeOpts = computeTreeOpts.value;
|
|
@@ -63,7 +63,7 @@ export default defineVxeComponent({
|
|
|
63
63
|
h('div', {
|
|
64
64
|
class: 'vxe-tree--line',
|
|
65
65
|
style: {
|
|
66
|
-
height: `${$xeTable
|
|
66
|
+
height: `${getRowid($xeTable, afterFullData[0]) === rowid ? 1 : calcTreeLine(params, prevRow)}px`,
|
|
67
67
|
bottom: `-${Math.floor(cellHeight / 2)}px`,
|
|
68
68
|
left: `${(rLevel * treeOpts.indent) + (rLevel ? 2 - getOffsetSize($xeTable) : 0) + 16}px`
|
|
69
69
|
}
|
|
@@ -301,6 +301,7 @@ export default defineVxeComponent({
|
|
|
301
301
|
else {
|
|
302
302
|
tcStyle.minHeight = `${cellHeight}px`;
|
|
303
303
|
}
|
|
304
|
+
// console.log(lastScrollTime)
|
|
304
305
|
const tdVNs = [];
|
|
305
306
|
if (fixedHiddenColumn && isAllOverflow) {
|
|
306
307
|
tdVNs.push(h('div', {
|
package/es/table/src/table.js
CHANGED
|
@@ -260,6 +260,7 @@ export default defineVxeComponent({
|
|
|
260
260
|
scrollXLeft: 0,
|
|
261
261
|
scrollXWidth: 0,
|
|
262
262
|
isScrollXBig: false,
|
|
263
|
+
lazScrollLoading: false,
|
|
263
264
|
rowExpandHeightFlag: 1,
|
|
264
265
|
calcCellHeightFlag: 1,
|
|
265
266
|
resizeHeightFlag: 1,
|
|
@@ -3894,6 +3895,7 @@ export default defineVxeComponent({
|
|
|
3894
3895
|
const checkLastSyncScroll = (isRollX, isRollY) => {
|
|
3895
3896
|
const { scrollXLoad, scrollYLoad, isAllOverflow } = reactData;
|
|
3896
3897
|
const { lcsTimeout } = internalData;
|
|
3898
|
+
reactData.lazScrollLoading = true;
|
|
3897
3899
|
if (lcsTimeout) {
|
|
3898
3900
|
clearTimeout(lcsTimeout);
|
|
3899
3901
|
}
|
|
@@ -3906,6 +3908,7 @@ export default defineVxeComponent({
|
|
|
3906
3908
|
internalData.inHeaderScroll = false;
|
|
3907
3909
|
internalData.inBodyScroll = false;
|
|
3908
3910
|
internalData.inFooterScroll = false;
|
|
3911
|
+
reactData.lazScrollLoading = false;
|
|
3909
3912
|
internalData.scrollRenderType = '';
|
|
3910
3913
|
if (!isAllOverflow) {
|
|
3911
3914
|
calcCellHeight();
|
package/es/table/src/util.js
CHANGED
|
@@ -358,12 +358,16 @@ const countTreeExpand = (prevRow, params) => {
|
|
|
358
358
|
return count;
|
|
359
359
|
}
|
|
360
360
|
const { $table } = params;
|
|
361
|
+
const reactData = $table.reactData;
|
|
362
|
+
const { treeExpandedFlag } = reactData;
|
|
363
|
+
const internalData = $table.internalData;
|
|
364
|
+
const { treeExpandedMaps } = internalData;
|
|
361
365
|
const { computeTreeOpts } = $table.getComputeMaps();
|
|
362
366
|
const treeOpts = computeTreeOpts.value;
|
|
363
367
|
const { transform, mapChildrenField } = treeOpts;
|
|
364
368
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
365
369
|
const rowChildren = prevRow[transform ? mapChildrenField : childrenField];
|
|
366
|
-
if (rowChildren && $table
|
|
370
|
+
if (rowChildren && treeExpandedFlag && treeExpandedMaps[getRowid($table, prevRow)]) {
|
|
367
371
|
for (let index = 0; index < rowChildren.length; index++) {
|
|
368
372
|
count += countTreeExpand(rowChildren[index], params);
|
|
369
373
|
}
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
package/lib/grid/src/grid.js
CHANGED
|
@@ -979,12 +979,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
979
979
|
case 'insert_edit':
|
|
980
980
|
return $xeTable.insert({}).then(({
|
|
981
981
|
row
|
|
982
|
-
}) => $xeTable.setEditRow(row));
|
|
982
|
+
}) => $xeTable.setEditRow(row, true));
|
|
983
983
|
// 已废弃
|
|
984
984
|
case 'insert_actived':
|
|
985
985
|
return $xeTable.insert({}).then(({
|
|
986
986
|
row
|
|
987
|
-
}) => $xeTable.setEditRow(row));
|
|
987
|
+
}) => $xeTable.setEditRow(row, true));
|
|
988
988
|
// 已废弃
|
|
989
989
|
case 'mark_cancel':
|
|
990
990
|
triggerPendingEvent(code);
|
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"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/toolbar")),_props=_interopRequireDefault(require("../../table/src/props")),_emits=_interopRequireDefault(require("../../table/src/emits")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");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(_props.default),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","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","sort","setSort","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","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","getCustomStoreData","setRowGroupExpand","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","getCellLabel","getCellElement","focus","blur","connect"],gridComponentEmits=[..._emits.default,"page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","proxy-query","proxy-delete","proxy-save","toolbar-button-click","toolbar-tool-click","zoom"];var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGrid",props:Object.assign(Object.assign({},_props.default),{layouts:Array,columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:()=>getConfig().grid.size||getConfig().size}}),emits:gridComponentEmits,setup(T,e){let t,{slots:u,emit:o}=e;var E=_xeUtils.default.uniqueId();let i=_ui.VxeUI.getComponent("VxeForm"),l=_ui.VxeUI.getComponent("VxePager"),w=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],O=useFns.useSize(T).computeSize,j=(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}}),s=(0,_vue.ref)(),D=(0,_vue.ref)(),n=(0,_vue.ref)(),d=(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)();var r=e=>{let t={};return e.forEach(r=>{t[r]=(...e)=>{var t=D.value;if(t&&t[r])return t[r](...e)}}),t};let q=r(tableComponentMethodKeys),M=(tableComponentMethodKeys.forEach(r=>{q[r]=(...e)=>{var t=D.value;if(t&&t[r])return t&&t[r](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),T.proxyConfig))),Z=(0,_vue.computed)(()=>{var e=M.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),F=(0,_vue.computed)(()=>!!M.value.showActiveMsg),L=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,T.pagerConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,T.formConfig)),V=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,T.toolbarConfig)),a=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,T.zoomConfig)),P=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=T,{isZMax:r,tZindex:o}=j,a={};return r?a.zIndex=o:(e&&(a.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(a.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),a}),I=(0,_vue.computed)(()=>{let t={},r=T;return tableComponentPropKeys.forEach(e=>{t[e]=r[e]}),t}),k=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,editConfig:r,proxyConfig:o}=T,{isZMax:a,tablePage:l}=j,i=I.value,n=M.value,s=L.value,u=b.value,d=Object.assign({},i);return a&&(i.maxHeight?d.maxHeight="100%":d.height="100%"),o&&(0,_utils.isEnableConf)(n)&&(d.loading=u,t)&&n.seq&&(0,_utils.isEnableConf)(s)&&(d.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize})),r&&(d.editConfig=Object.assign({},r)),d}),U=(0,_vue.computed)(()=>{var e=T.layouts;let t=[],r=[],o=[],a=[];return(t=e&&e.length?e:getConfig().grid.layouts||w).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],o=t[1]||[],a=t[2]||[]):o=t),{headKeys:r,bodyKeys:o,footKeys:a}});var S=(0,_vue.computed)(()=>L.value.currentPage),K=(0,_vue.computed)(()=>L.value.pageSize),H=(0,_vue.computed)(()=>L.value.total);let b=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=T,r=j.tableLoading,o=M.value,a=o.showLoading;return e||r&&a&&t&&(0,_utils.isEnableConf)(o)}),G={refElem:s,refTable:D,refForm:n,refToolbar:d,refPager:g},N={computeProxyOpts:M,computePagerOpts:L,computeFormOpts:x,computeToolbarOpts:V,computeZoomOpts:a},B={xID:E,props:T,context:e,reactData:j,getRefMaps:()=>G,getComputeMaps:()=>N},_=()=>{var e=V.value;T.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=D.value,t=d.value;e&&t&&e.connect(t)})},z=()=>{var e=T.proxyConfig,t=j.formData,r=M.value,o=x.value;return e&&(0,_utils.isEnableConf)(r)&&r.form?t:o.data},h=e=>{var t=j.tablePage,r=T.pagerConfig,o=L.value;r&&(0,_utils.isEnableConf)(o)&&(e?o[e]&&(t[e]=_xeUtils.default.toNumber(o[e])):({currentPage:r,pageSize:e,total:o}=o,r&&(t.currentPage=r),e&&(t.pageSize=e),o&&(t.pageSize=o)))},$=(e,t)=>{var r=M.value,r=(r.response||r.props||{}).message;let o;return(o=e&&r?_xeUtils.default.isFunction(r)?r({data:e,$grid:B}):_xeUtils.default.get(e,r):o)||getI18n(t)},Q=(e,t,r)=>{var o=F.value,a=q.getCheckboxRecords();if(o)if(a.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 a.length&&r();return Promise.resolve()},W=e=>{var t=T.proxyConfig,r=j.tablePage;let{$event:o,currentPage:a,pageSize:l}=e;var i=M.value;r.currentPage=a,r.pageSize=l,B.dispatchEvent("page-change",e,o),t&&(0,_utils.isEnableConf)(i)&&B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,o)})},Y=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeSortOpts,o=M.value;e.value.remote&&(j.sortData=t.sortList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)})),B.dispatchEvent("sort-change",t,t.$event)},J=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeFilterOpts,o=M.value;e.value.remote&&(j.filterData=t.filterList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)})),B.dispatchEvent("filter-change",t,t.$event)},X=t=>{var e=T.proxyConfig,r=M.value;j.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))},ee=e=>{var t=D.value,r=T.proxyConfig;let o=e.$event;var a=M.value;r&&(0,_utils.isEnableConf)(a)&&(t.clearScroll(),B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)})),B.dispatchEvent("form-reset",e,o)},te=e=>{B.dispatchEvent("form-submit-invalid",e,e.$event)},re=e=>{var t=e.$event;B.dispatchEvent("form-toggle-collapse",e,t),B.dispatchEvent("form-collapse",e,t)},oe=e=>{var t=j.isZMax;return(e?!t:t)&&(j.isZMax=!t,j.tZindex<(0,_utils.getLastZIndex)())&&(j.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>B.recalculate(!0)).then(()=>(setTimeout(()=>B.recalculate(!0),15),j.isZMax))},C=(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},ae=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},le=()=>{var{formConfig:e,proxyConfig:r}=T,o=j.formData,a=M.value,l=x.value;if(e&&(0,_utils.isEnableConf)(l)||u.form){let e=[];if(u.form)e=u.form({$grid:B});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=a.beforeItem;a&&t&&l.items.forEach(e=>{t({$grid:B,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]&&(t[e]=u[e])})}),i&&e.push((0,_vue.h)(i,Object.assign(Object.assign({ref:n},Object.assign({},l,{data:r&&(0,_utils.isEnableConf)(a)&&a.form?o:l.data})),{onSubmit:X,onReset:ee,onSubmitInvalid:te,onCollapse:re}),t))}return(0,_vue.h)("div",{ref:c,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(B)},ie=()=>{var t,r,o,a,l,i,n=T.toolbarConfig,s=V.value;if(n&&(0,_utils.isEnableConf)(s)||u.toolbar){let e=[];return u.toolbar?e=u.toolbar({$grid:B}):(n={},(i=s.slots)&&(t=C(i,"buttons"),r=C(i,"buttonPrefix"),o=C(i,"buttonSuffix"),a=C(i,"tools"),l=C(i,"toolPrefix"),i=C(i,"toolSuffix"),t&&(n.buttons=t),r&&(n.buttonPrefix=r),o&&(n.buttonSuffix=o),a&&(n.tools=a),l&&(n.toolPrefix=l),i)&&(n.toolSuffix=i),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:d},s),{slots:void 0}),n))),(0,_vue.h)("div",{ref:v,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(B)},ne=()=>{var e=u.top;return e?(0,_vue.h)("div",{ref:m,key:"top",class:"vxe-grid--top-wrapper"},e({$grid:B})):renderEmptyElement(B)},se=()=>{var e=u.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:B})):renderEmptyElement(B)},ue=()=>{var e=u.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:B})):renderEmptyElement(B)},de=()=>{var e=T.proxyConfig,t=k.value,r=M.value,o=Object.assign({},ve),a=u.empty,l=u.loading,i=u.rowDragIcon||u["row-drag-icon"],n=u.columnDragIcon||u["column-drag-icon"],e=(e&&(0,_utils.isEnableConf)(r)&&(r.sort&&(o.onSortChange=Y),r.filter)&&(o.onFilterChange=J),{});return a&&(e.empty=a),l&&(e.loading=l),i&&(e.rowDragIcon=i),n&&(e.columnDragIcon=n),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:D},t),o),e)])},ge=()=>u.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},u.bottom({$grid:B})):renderEmptyElement(B),ce=()=>{var{proxyConfig:e,pagerConfig:t}=T,r=M.value,o=L.value,a=u.pager;return t&&(0,_utils.isEnableConf)(o)||u.pager?(0,_vue.h)("div",{ref:f,key:"pager",class:"vxe-grid--pager-wrapper"},a?a({$grid:B}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:g},o),e&&(0,_utils.isEnableConf)(r)?j.tablePage:{}),{onPageChange:W}),ae(o.slots)):renderEmptyElement(B)]):renderEmptyElement(B)},y=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(le());break;case"Toolbar":t.push(ie());break;case"Top":t.push(ne());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[se(),de(),ue()]));break;case"Bottom":t.push(ge());break;case"Pager":t.push(ce());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},ve={},me=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);ve[e]=(...e)=>o(t,...e)}),()=>{var e=x.value;if(e.items){let a={};return e.items.forEach(t=>{var{field:r,itemRender:o}=t;if(r){let e=null;o&&(o=o.defaultValue,_xeUtils.default.isFunction(o)?e=o({item:t}):_xeUtils.default.isUndefined(o)||(e=o)),a[r]=e}}),a}return{}}),pe=()=>{var{proxyConfig:e,formConfig:t}=T,r=j.proxyInited,o=M.value,a=x.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(a)&&o.form&&a.items&&(j.formData=me()),r||!(j.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>A.commitProxy("initial")).then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},fe=e=>{var t=a.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&j.isZMax&&!1!==t.escRestore&&B.triggerZoomEvent(e)};let A={dispatchEvent:(e,t,r)=>{o(e,createEvent(r,{$grid:B},t))},getEl(){return s.value},commitProxy(t,...d){let{proxyConfig:o,toolbarConfig:e,pagerConfig:n,editRules:g,validConfig:c}=T,s=j.tablePage,v=F.value,m=Z.value;var u=M.value;let p=L.value;var r,a=V.value;let{beforeQuery:f,afterQuery:x,beforeDelete:i,afterDelete:b,beforeSave:_,afterSave:h,ajax:C={}}=u,y=u.response||u.props||{},R=D.value,E=z(),w=null,O=null;O=_xeUtils.default.isString(t)?(r=a.buttons,a=e&&(0,_utils.isEnableConf)(a)&&r?_xeUtils.default.findTree(r,e=>e.code===t,{children:"dropdowns"}):null,w=a?a.item:null,t):(w=t).code;var l=w?w.params:null;switch(O){case"insert":return R.insert({});case"insert_edit":return R.insert({}).then(({row:e})=>R.setEditRow(e));case"insert_actived":return R.insert({}).then(({row:e})=>R.setEditRow(e));case"mark_cancel":U=O,k=F.value,P=D.value,(I=P.getCheckboxRecords()).length?(P.togglePendingRow(I),q.clearCheckboxRow()):k&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:U,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Q(O,"vxe.grid.removeSelectRecord",()=>R.removeCheckboxRow());case"import":R.importData(l);break;case"open_import":R.openImport(l);break;case"export":R.exportData(l);break;case"open_export":R.openExport(l);break;case"reset_custom":return R.resetCustom(!0);case"initial":case"reload":case"query":{var P=C.query;let i=C.querySuccess,t=C.queryError;if(P){var I="initial"===O,k="reload"===O;if(!I&&j.tableLoading)return(0,_vue.nextTick)();let r=[],a=[],e={};if(n&&((I||k)&&(s.currentPage=1),(0,_utils.isEnableConf)(p))&&(e=Object.assign({},s)),I){if(o&&(0,_utils.isEnableConf)(u)&&u.form&&(E=me(),j.formData=E),R){let{tableFullColumn:e,fullColumnFieldData:o}=R.internalData;var U=R.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=o[e];return r&&(r=r.column)&&(r.order=t),{field:e,property:e,order:t}})),a=R.getCheckedFilters()}}else R&&(k?R.clearAll():(r=R.getSortColumns(),a=R.getCheckedFilters()));let l={code:O,button:w,isInited:I,isReload:k,$grid:B,page:e,sort:r.length?r[0]:{},sorts:r,filters:a,form:E,options:P};return j.sortData=r,j.filterData=a,j.tableLoading=!0,Promise.resolve((f||P)(l,...d)).then(e=>{let t=[];var r,o;return j.tableLoading=!1,e&&(n&&(0,_utils.isEnableConf)(p)?(o=y.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:B}):_xeUtils.default.get(e,o||"page.total"))||0,s.total=_xeUtils.default.toNumber(o),r=y.result,t=(_xeUtils.default.isFunction(r)?r({data:e,$grid:B}):_xeUtils.default.get(e,r||"result"))||[],r=Math.max(Math.ceil(o/s.pageSize),1),s.currentPage>r&&(s.currentPage=r)):(o=y.list,t=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:B}):_xeUtils.default.get(e,o):e)||[])),R?R.loadData(t):(0,_vue.nextTick)(()=>{R&&R.loadData(t)}),x&&x(l,...d),i&&i(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(j.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 o=C.delete,a=C.deleteSuccess,l=C.deleteError;if(o){let e=q.getCheckboxRecords(),t=e.filter(e=>!R.isInsertByRow(e));var S={removeRecords:t};let r={$grid:B,code:O,button:w,body:S,form:E,options:o};if(e.length)return Q(O,"vxe.grid.deleteSelectRecord",()=>t.length?(j.tableLoading=!0,Promise.resolve((i||o)(r,...d)).then(e=>(j.tableLoading=!1,R.setPendingRow(t,!1),m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.delSuccess"),status:"success"}),b?b(r,...d):A.commitProxy("query"),a&&a(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:$(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):R.remove(e));v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let n=C.save,s=C.saveSuccess,u=C.saveError;if(n){let t=R.getRecordset(),{insertRecords:r,removeRecords:o,updateRecords:a,pendingRecords:l}=t,i={$grid:B,code:O,button:w,body:t,form:E,options:n},e=(r.length&&(t.pendingRecords=l.filter(e=>-1===R.findRowIndexOf(r,e))),l.length&&(t.insertRecords=r.filter(e=>-1===R.findRowIndexOf(l,e))),Promise.resolve());return(e=g?R[c&&"full"===c.msgMode?"fullValidate":"validate"](t.insertRecords.concat(a)):e).then(e=>{if(!e)return t.insertRecords.length||o.length||a.length||t.pendingRecords.length?(j.tableLoading=!0,Promise.resolve((_||n)(i,...d)).then(e=>(j.tableLoading=!1,R.clearPendingRow(),m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.saveSuccess"),status:"success"}),h?h(i,...d):A.commitProxy("query"),s&&s(Object.assign(Object.assign({},i),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:$(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},i),{response:e})),{status:!1}))):void(v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var S=commands.get(O);S&&((S=S.tableCommandMethod||S.commandMethod)?S({code:O,button:w,$grid:B,$table:R},...d):(0,_log.errLog)("vxe.error.notCommands",[O]))}return(0,_vue.nextTick)()},zoom(){return j.isZMax?A.revert():A.maximize()},isMaximized(){return j.isZMax},maximize(){return oe(!0)},revert(){return oe()},getFormData:z,getFormItems(e){var t=x.value,r=T.formConfig,o=t.items;let a=[];return _xeUtils.default.eachTree(r&&(0,_utils.isEnableConf)(t)&&o?o:[],e=>{a.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?a:a[e]},getProxyInfo(){var e,t=D.value;return T.proxyConfig?(e=j.sortData,{data:t?t.getFullData():[],filter:j.filterData,form:z(),sort:e.length?e[0]:{},sorts:e,pager:j.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},xe={extendTableMethods:r,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,o,a,l,i=j.isZMax,n=s.value;return n?(e=c.value,t=v.value,r=m.value,o=p.value,a=f.value,l=n.parentElement,(!i&&l?(0,_dom.getPaddingTopBottomSize)(l):0)+(0,_dom.getPaddingTopBottomSize)(n)+(0,_dom.getOffsetHeight)(e)+(0,_dom.getOffsetHeight)(t)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(o)+(0,_dom.getOffsetHeight)(a)):0},getParentHeight(){var e=s.value;return e?(e=e.parentElement,(j.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-xe.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:j.isZMax?"max":"revert"},e)}};Object.assign(B,q,A,xe,{loadColumn(e){var t=D.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 R=(0,_vue.ref)(0);return(0,_vue.watch)(()=>T.columns?T.columns.length:-1,()=>{R.value++}),(0,_vue.watch)(()=>T.columns,()=>{R.value++}),(0,_vue.watch)(R,()=>{(0,_vue.nextTick)(()=>B.loadColumn(T.columns||[]))}),(0,_vue.watch)(()=>T.toolbarConfig,()=>{_()}),(0,_vue.watch)(S,()=>{h("currentPage")}),(0,_vue.watch)(K,()=>{h("pageSize")}),(0,_vue.watch)(H,()=>{h("total")}),(0,_vue.watch)(()=>T.proxyConfig,()=>{pe()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(B))&&_xeUtils.default.isObject(e)&&Object.assign(B,e)}),h(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.columns,t=M.value;T.formConfig&&!i&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),T.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),_(),pe()}),globalEvents.on(B,"keydown",fe)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(B,"keydown")}),B.renderVN=()=>{var e=O.value,t=P.value,r=b.value;return(0,_vue.h)("div",{ref:s,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!T.animat,"is--round":T.round,"is--maximize":j.isZMax,"is--loading":r}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:r}=U.value,o=u.asideLeft||u["aside-left"],a=u.asideRight||u["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},y(e)),(0,_vue.h)("div",{class:"vxe-grid--layout-body-wrapper"},[o?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-left-wrapper"},o({})):renderEmptyElement(B),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},y(t)),a?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-right-wrapper"},a({})):renderEmptyElement(B)]),(0,_vue.h)("div",{class:"vxe-grid--layout-footer-wrapper"},y(r))]})())},(0,_vue.provide)("$xeGrid",B),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"),_table=_interopRequireDefault(require("../../table/src/table")),_toolbar=_interopRequireDefault(require("../../toolbar/src/toolbar")),_props=_interopRequireDefault(require("../../table/src/props")),_emits=_interopRequireDefault(require("../../table/src/emits")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");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(_props.default),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","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","sort","setSort","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","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","getCustomStoreData","setRowGroupExpand","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","getCellLabel","getCellElement","focus","blur","connect"],gridComponentEmits=[..._emits.default,"page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","proxy-query","proxy-delete","proxy-save","toolbar-button-click","toolbar-tool-click","zoom"];var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGrid",props:Object.assign(Object.assign({},_props.default),{layouts:Array,columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:()=>getConfig().grid.size||getConfig().size}}),emits:gridComponentEmits,setup(T,e){let t,{slots:u,emit:o}=e;var E=_xeUtils.default.uniqueId();let i=_ui.VxeUI.getComponent("VxeForm"),l=_ui.VxeUI.getComponent("VxePager"),w=[["Form"],["Toolbar","Top","Table","Bottom","Pager"]],O=useFns.useSize(T).computeSize,j=(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}}),s=(0,_vue.ref)(),D=(0,_vue.ref)(),n=(0,_vue.ref)(),d=(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)();var r=e=>{let t={};return e.forEach(r=>{t[r]=(...e)=>{var t=D.value;if(t&&t[r])return t[r](...e)}}),t};let q=r(tableComponentMethodKeys),M=(tableComponentMethodKeys.forEach(r=>{q[r]=(...e)=>{var t=D.value;if(t&&t[r])return t&&t[r](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().grid.proxyConfig,!0),T.proxyConfig))),Z=(0,_vue.computed)(()=>{var e=M.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),F=(0,_vue.computed)(()=>!!M.value.showActiveMsg),L=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.pagerConfig,T.pagerConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.formConfig,T.formConfig)),V=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.toolbarConfig,T.toolbarConfig)),a=(0,_vue.computed)(()=>Object.assign({},getConfig().grid.zoomConfig,T.zoomConfig)),P=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=T,{isZMax:r,tZindex:o}=j,a={};return r?a.zIndex=o:(e&&(a.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(a.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),a}),I=(0,_vue.computed)(()=>{let t={},r=T;return tableComponentPropKeys.forEach(e=>{t[e]=r[e]}),t}),k=(0,_vue.computed)(()=>{var{seqConfig:e,pagerConfig:t,editConfig:r,proxyConfig:o}=T,{isZMax:a,tablePage:l}=j,i=I.value,n=M.value,s=L.value,u=b.value,d=Object.assign({},i);return a&&(i.maxHeight?d.maxHeight="100%":d.height="100%"),o&&(0,_utils.isEnableConf)(n)&&(d.loading=u,t)&&n.seq&&(0,_utils.isEnableConf)(s)&&(d.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize})),r&&(d.editConfig=Object.assign({},r)),d}),U=(0,_vue.computed)(()=>{var e=T.layouts;let t=[],r=[],o=[],a=[];return(t=e&&e.length?e:getConfig().grid.layouts||w).length&&(_xeUtils.default.isArray(t[0])?(r=t[0],o=t[1]||[],a=t[2]||[]):o=t),{headKeys:r,bodyKeys:o,footKeys:a}});var S=(0,_vue.computed)(()=>L.value.currentPage),K=(0,_vue.computed)(()=>L.value.pageSize),H=(0,_vue.computed)(()=>L.value.total);let b=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=T,r=j.tableLoading,o=M.value,a=o.showLoading;return e||r&&a&&t&&(0,_utils.isEnableConf)(o)}),G={refElem:s,refTable:D,refForm:n,refToolbar:d,refPager:g},N={computeProxyOpts:M,computePagerOpts:L,computeFormOpts:x,computeToolbarOpts:V,computeZoomOpts:a},B={xID:E,props:T,context:e,reactData:j,getRefMaps:()=>G,getComputeMaps:()=>N},_=()=>{var e=V.value;T.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=D.value,t=d.value;e&&t&&e.connect(t)})},z=()=>{var e=T.proxyConfig,t=j.formData,r=M.value,o=x.value;return e&&(0,_utils.isEnableConf)(r)&&r.form?t:o.data},h=e=>{var t=j.tablePage,r=T.pagerConfig,o=L.value;r&&(0,_utils.isEnableConf)(o)&&(e?o[e]&&(t[e]=_xeUtils.default.toNumber(o[e])):({currentPage:r,pageSize:e,total:o}=o,r&&(t.currentPage=r),e&&(t.pageSize=e),o&&(t.pageSize=o)))},$=(e,t)=>{var r=M.value,r=(r.response||r.props||{}).message;let o;return(o=e&&r?_xeUtils.default.isFunction(r)?r({data:e,$grid:B}):_xeUtils.default.get(e,r):o)||getI18n(t)},Q=(e,t,r)=>{var o=F.value,a=q.getCheckboxRecords();if(o)if(a.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 a.length&&r();return Promise.resolve()},W=e=>{var t=T.proxyConfig,r=j.tablePage;let{$event:o,currentPage:a,pageSize:l}=e;var i=M.value;r.currentPage=a,r.pageSize=l,B.dispatchEvent("page-change",e,o),t&&(0,_utils.isEnableConf)(i)&&B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,o)})},Y=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeSortOpts,o=M.value;e.value.remote&&(j.sortData=t.sortList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)})),B.dispatchEvent("sort-change",t,t.$event)},J=t=>{var e=D.value,r=T.proxyConfig,e=e.getComputeMaps().computeFilterOpts,o=M.value;e.value.remote&&(j.filterData=t.filterList,r)&&(0,_utils.isEnableConf)(o)&&(j.tablePage.currentPage=1,B.commitProxy("query").then(e=>{B.dispatchEvent("proxy-query",e,t.$event)})),B.dispatchEvent("filter-change",t,t.$event)},X=t=>{var e=T.proxyConfig,r=M.value;j.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))},ee=e=>{var t=D.value,r=T.proxyConfig;let o=e.$event;var a=M.value;r&&(0,_utils.isEnableConf)(a)&&(t.clearScroll(),B.commitProxy("reload").then(e=>{B.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)})),B.dispatchEvent("form-reset",e,o)},te=e=>{B.dispatchEvent("form-submit-invalid",e,e.$event)},re=e=>{var t=e.$event;B.dispatchEvent("form-toggle-collapse",e,t),B.dispatchEvent("form-collapse",e,t)},oe=e=>{var t=j.isZMax;return(e?!t:t)&&(j.isZMax=!t,j.tZindex<(0,_utils.getLastZIndex)())&&(j.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>B.recalculate(!0)).then(()=>(setTimeout(()=>B.recalculate(!0),15),j.isZMax))},C=(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},ae=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},le=()=>{var{formConfig:e,proxyConfig:r}=T,o=j.formData,a=M.value,l=x.value;if(e&&(0,_utils.isEnableConf)(l)||u.form){let e=[];if(u.form)e=u.form({$grid:B});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=a.beforeItem;a&&t&&l.items.forEach(e=>{t({$grid:B,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||u[e]&&(t[e]=u[e])})}),i&&e.push((0,_vue.h)(i,Object.assign(Object.assign({ref:n},Object.assign({},l,{data:r&&(0,_utils.isEnableConf)(a)&&a.form?o:l.data})),{onSubmit:X,onReset:ee,onSubmitInvalid:te,onCollapse:re}),t))}return(0,_vue.h)("div",{ref:c,key:"form",class:"vxe-grid--form-wrapper"},e)}return renderEmptyElement(B)},ie=()=>{var t,r,o,a,l,i,n=T.toolbarConfig,s=V.value;if(n&&(0,_utils.isEnableConf)(s)||u.toolbar){let e=[];return u.toolbar?e=u.toolbar({$grid:B}):(n={},(i=s.slots)&&(t=C(i,"buttons"),r=C(i,"buttonPrefix"),o=C(i,"buttonSuffix"),a=C(i,"tools"),l=C(i,"toolPrefix"),i=C(i,"toolSuffix"),t&&(n.buttons=t),r&&(n.buttonPrefix=r),o&&(n.buttonSuffix=o),a&&(n.tools=a),l&&(n.toolPrefix=l),i)&&(n.toolSuffix=i),e.push((0,_vue.h)(_toolbar.default,Object.assign(Object.assign({ref:d},s),{slots:void 0}),n))),(0,_vue.h)("div",{ref:v,key:"toolbar",class:"vxe-grid--toolbar-wrapper"},e)}return renderEmptyElement(B)},ne=()=>{var e=u.top;return e?(0,_vue.h)("div",{ref:m,key:"top",class:"vxe-grid--top-wrapper"},e({$grid:B})):renderEmptyElement(B)},se=()=>{var e=u.left;return e?(0,_vue.h)("div",{class:"vxe-grid--left-wrapper"},e({$grid:B})):renderEmptyElement(B)},ue=()=>{var e=u.right;return e?(0,_vue.h)("div",{class:"vxe-grid--right-wrapper"},e({$grid:B})):renderEmptyElement(B)},de=()=>{var e=T.proxyConfig,t=k.value,r=M.value,o=Object.assign({},ve),a=u.empty,l=u.loading,i=u.rowDragIcon||u["row-drag-icon"],n=u.columnDragIcon||u["column-drag-icon"],e=(e&&(0,_utils.isEnableConf)(r)&&(r.sort&&(o.onSortChange=Y),r.filter)&&(o.onFilterChange=J),{});return a&&(e.empty=a),l&&(e.loading=l),i&&(e.rowDragIcon=i),n&&(e.columnDragIcon=n),(0,_vue.h)("div",{class:"vxe-grid--table-wrapper"},[(0,_vue.h)(_table.default,Object.assign(Object.assign({ref:D},t),o),e)])},ge=()=>u.bottom?(0,_vue.h)("div",{ref:p,key:"bottom",class:"vxe-grid--bottom-wrapper"},u.bottom({$grid:B})):renderEmptyElement(B),ce=()=>{var{proxyConfig:e,pagerConfig:t}=T,r=M.value,o=L.value,a=u.pager;return t&&(0,_utils.isEnableConf)(o)||u.pager?(0,_vue.h)("div",{ref:f,key:"pager",class:"vxe-grid--pager-wrapper"},a?a({$grid:B}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:g},o),e&&(0,_utils.isEnableConf)(r)?j.tablePage:{}),{onPageChange:W}),ae(o.slots)):renderEmptyElement(B)]):renderEmptyElement(B)},y=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(le());break;case"Toolbar":t.push(ie());break;case"Top":t.push(ne());break;case"Table":t.push((0,_vue.h)("div",{key:"table",class:"vxe-grid--table-container"},[se(),de(),ue()]));break;case"Bottom":t.push(ge());break;case"Pager":t.push(ce());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t},ve={},me=(_emits.default.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);ve[e]=(...e)=>o(t,...e)}),()=>{var e=x.value;if(e.items){let a={};return e.items.forEach(t=>{var{field:r,itemRender:o}=t;if(r){let e=null;o&&(o=o.defaultValue,_xeUtils.default.isFunction(o)?e=o({item:t}):_xeUtils.default.isUndefined(o)||(e=o)),a[r]=e}}),a}return{}}),pe=()=>{var{proxyConfig:e,formConfig:t}=T,r=j.proxyInited,o=M.value,a=x.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(a)&&o.form&&a.items&&(j.formData=me()),r||!(j.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>A.commitProxy("initial")).then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},fe=e=>{var t=a.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&j.isZMax&&!1!==t.escRestore&&B.triggerZoomEvent(e)};let A={dispatchEvent:(e,t,r)=>{o(e,createEvent(r,{$grid:B},t))},getEl(){return s.value},commitProxy(t,...d){let{proxyConfig:o,toolbarConfig:e,pagerConfig:n,editRules:g,validConfig:c}=T,s=j.tablePage,v=F.value,m=Z.value;var u=M.value;let p=L.value;var r,a=V.value;let{beforeQuery:f,afterQuery:x,beforeDelete:i,afterDelete:b,beforeSave:_,afterSave:h,ajax:C={}}=u,y=u.response||u.props||{},R=D.value,E=z(),w=null,O=null;O=_xeUtils.default.isString(t)?(r=a.buttons,a=e&&(0,_utils.isEnableConf)(a)&&r?_xeUtils.default.findTree(r,e=>e.code===t,{children:"dropdowns"}):null,w=a?a.item:null,t):(w=t).code;var l=w?w.params:null;switch(O){case"insert":return R.insert({});case"insert_edit":return R.insert({}).then(({row:e})=>R.setEditRow(e,!0));case"insert_actived":return R.insert({}).then(({row:e})=>R.setEditRow(e,!0));case"mark_cancel":U=O,k=F.value,P=D.value,(I=P.getCheckboxRecords()).length?(P.togglePendingRow(I),q.clearCheckboxRow()):k&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:U,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Q(O,"vxe.grid.removeSelectRecord",()=>R.removeCheckboxRow());case"import":R.importData(l);break;case"open_import":R.openImport(l);break;case"export":R.exportData(l);break;case"open_export":R.openExport(l);break;case"reset_custom":return R.resetCustom(!0);case"initial":case"reload":case"query":{var P=C.query;let i=C.querySuccess,t=C.queryError;if(P){var I="initial"===O,k="reload"===O;if(!I&&j.tableLoading)return(0,_vue.nextTick)();let r=[],a=[],e={};if(n&&((I||k)&&(s.currentPage=1),(0,_utils.isEnableConf)(p))&&(e=Object.assign({},s)),I){if(o&&(0,_utils.isEnableConf)(u)&&u.form&&(E=me(),j.formData=E),R){let{tableFullColumn:e,fullColumnFieldData:o}=R.internalData;var U=R.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=o[e];return r&&(r=r.column)&&(r.order=t),{field:e,property:e,order:t}})),a=R.getCheckedFilters()}}else R&&(k?R.clearAll():(r=R.getSortColumns(),a=R.getCheckedFilters()));let l={code:O,button:w,isInited:I,isReload:k,$grid:B,page:e,sort:r.length?r[0]:{},sorts:r,filters:a,form:E,options:P};return j.sortData=r,j.filterData=a,j.tableLoading=!0,Promise.resolve((f||P)(l,...d)).then(e=>{let t=[];var r,o;return j.tableLoading=!1,e&&(n&&(0,_utils.isEnableConf)(p)?(o=y.total,o=(_xeUtils.default.isFunction(o)?o({data:e,$grid:B}):_xeUtils.default.get(e,o||"page.total"))||0,s.total=_xeUtils.default.toNumber(o),r=y.result,t=(_xeUtils.default.isFunction(r)?r({data:e,$grid:B}):_xeUtils.default.get(e,r||"result"))||[],r=Math.max(Math.ceil(o/s.pageSize),1),s.currentPage>r&&(s.currentPage=r)):(o=y.list,t=(o?_xeUtils.default.isFunction(o)?o({data:e,$grid:B}):_xeUtils.default.get(e,o):e)||[])),R?R.loadData(t):(0,_vue.nextTick)(()=>{R&&R.loadData(t)}),x&&x(l,...d),i&&i(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(j.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 o=C.delete,a=C.deleteSuccess,l=C.deleteError;if(o){let e=q.getCheckboxRecords(),t=e.filter(e=>!R.isInsertByRow(e));var S={removeRecords:t};let r={$grid:B,code:O,button:w,body:S,form:E,options:o};if(e.length)return Q(O,"vxe.grid.deleteSelectRecord",()=>t.length?(j.tableLoading=!0,Promise.resolve((i||o)(r,...d)).then(e=>(j.tableLoading=!1,R.setPendingRow(t,!1),m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.delSuccess"),status:"success"}),b?b(r,...d):A.commitProxy("query"),a&&a(Object.assign(Object.assign({},r),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:$(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},r),{response:e})),{status:!1}))):R.remove(e));v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break}case"save":{let n=C.save,s=C.saveSuccess,u=C.saveError;if(n){let t=R.getRecordset(),{insertRecords:r,removeRecords:o,updateRecords:a,pendingRecords:l}=t,i={$grid:B,code:O,button:w,body:t,form:E,options:n},e=(r.length&&(t.pendingRecords=l.filter(e=>-1===R.findRowIndexOf(r,e))),l.length&&(t.insertRecords=r.filter(e=>-1===R.findRowIndexOf(l,e))),Promise.resolve());return(e=g?R[c&&"full"===c.msgMode?"fullValidate":"validate"](t.insertRecords.concat(a)):e).then(e=>{if(!e)return t.insertRecords.length||o.length||a.length||t.pendingRecords.length?(j.tableLoading=!0,Promise.resolve((_||n)(i,...d)).then(e=>(j.tableLoading=!1,R.clearPendingRow(),m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:$(e,"vxe.grid.saveSuccess"),status:"success"}),h?h(i,...d):A.commitProxy("query"),s&&s(Object.assign(Object.assign({},i),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,m&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:$(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},i),{response:e})),{status:!1}))):void(v&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({id:O,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break}default:var S=commands.get(O);S&&((S=S.tableCommandMethod||S.commandMethod)?S({code:O,button:w,$grid:B,$table:R},...d):(0,_log.errLog)("vxe.error.notCommands",[O]))}return(0,_vue.nextTick)()},zoom(){return j.isZMax?A.revert():A.maximize()},isMaximized(){return j.isZMax},maximize(){return oe(!0)},revert(){return oe()},getFormData:z,getFormItems(e){var t=x.value,r=T.formConfig,o=t.items;let a=[];return _xeUtils.default.eachTree(r&&(0,_utils.isEnableConf)(t)&&o?o:[],e=>{a.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?a:a[e]},getProxyInfo(){var e,t=D.value;return T.proxyConfig?(e=j.sortData,{data:t?t.getFullData():[],filter:j.filterData,form:z(),sort:e.length?e[0]:{},sorts:e,pager:j.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null}},xe={extendTableMethods:r,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,o,a,l,i=j.isZMax,n=s.value;return n?(e=c.value,t=v.value,r=m.value,o=p.value,a=f.value,l=n.parentElement,(!i&&l?(0,_dom.getPaddingTopBottomSize)(l):0)+(0,_dom.getPaddingTopBottomSize)(n)+(0,_dom.getOffsetHeight)(e)+(0,_dom.getOffsetHeight)(t)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(o)+(0,_dom.getOffsetHeight)(a)):0},getParentHeight(){var e=s.value;return e?(e=e.parentElement,(j.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-xe.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:j.isZMax?"max":"revert"},e)}};Object.assign(B,q,A,xe,{loadColumn(e){var t=D.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 R=(0,_vue.ref)(0);return(0,_vue.watch)(()=>T.columns?T.columns.length:-1,()=>{R.value++}),(0,_vue.watch)(()=>T.columns,()=>{R.value++}),(0,_vue.watch)(R,()=>{(0,_vue.nextTick)(()=>B.loadColumn(T.columns||[]))}),(0,_vue.watch)(()=>T.toolbarConfig,()=>{_()}),(0,_vue.watch)(S,()=>{h("currentPage")}),(0,_vue.watch)(K,()=>{h("pageSize")}),(0,_vue.watch)(H,()=>{h("total")}),(0,_vue.watch)(()=>T.proxyConfig,()=>{pe()}),hooks.forEach(e=>{var e=e.setupGrid;e&&(e=e(B))&&_xeUtils.default.isObject(e)&&Object.assign(B,e)}),h(),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.columns,t=M.value;T.formConfig&&!i&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),T.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),_(),pe()}),globalEvents.on(B,"keydown",fe)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(B,"keydown")}),B.renderVN=()=>{var e=O.value,t=P.value,r=b.value;return(0,_vue.h)("div",{ref:s,class:["vxe-grid",{["size--"+e]:e,"is--animat":!!T.animat,"is--round":T.round,"is--maximize":j.isZMax,"is--loading":r}],style:t},(()=>{var{headKeys:e,bodyKeys:t,footKeys:r}=U.value,o=u.asideLeft||u["aside-left"],a=u.asideRight||u["aside-right"];return[(0,_vue.h)("div",{class:"vxe-grid--layout-header-wrapper"},y(e)),(0,_vue.h)("div",{class:"vxe-grid--layout-body-wrapper"},[o?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-left-wrapper"},o({})):renderEmptyElement(B),(0,_vue.h)("div",{class:"vxe-grid--layout-body-content-wrapper"},y(t)),a?(0,_vue.h)("div",{class:"vxe-grid--layout-aside-right-wrapper"},a({})):renderEmptyElement(B)]),(0,_vue.h)("div",{class:"vxe-grid--layout-footer-wrapper"},y(r))]})())},(0,_vue.provide)("$xeGrid",B),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.14.0-beta.
|
|
3141
|
+
const version = "4.14.0-beta.6";
|
|
3142
3142
|
core_.VxeUI.version = version;
|
|
3143
3143
|
core_.VxeUI.tableVersion = version;
|
|
3144
3144
|
core_.VxeUI.setConfig({
|
|
@@ -3628,7 +3628,7 @@ var esnext_iterator_some = __webpack_require__(7550);
|
|
|
3628
3628
|
const {
|
|
3629
3629
|
log: log_log
|
|
3630
3630
|
} = core_.VxeUI;
|
|
3631
|
-
const log_version = `table v${"4.14.0-beta.
|
|
3631
|
+
const log_version = `table v${"4.14.0-beta.6"}`;
|
|
3632
3632
|
const warnLog = log_log.create('warn', log_version);
|
|
3633
3633
|
const errLog = log_log.create('error', log_version);
|
|
3634
3634
|
;// ./packages/table/src/columnInfo.ts
|
|
@@ -4429,6 +4429,14 @@ const countTreeExpand = (prevRow, params) => {
|
|
|
4429
4429
|
const {
|
|
4430
4430
|
$table
|
|
4431
4431
|
} = params;
|
|
4432
|
+
const reactData = $table.reactData;
|
|
4433
|
+
const {
|
|
4434
|
+
treeExpandedFlag
|
|
4435
|
+
} = reactData;
|
|
4436
|
+
const internalData = $table.internalData;
|
|
4437
|
+
const {
|
|
4438
|
+
treeExpandedMaps
|
|
4439
|
+
} = internalData;
|
|
4432
4440
|
const {
|
|
4433
4441
|
computeTreeOpts
|
|
4434
4442
|
} = $table.getComputeMaps();
|
|
@@ -4439,7 +4447,7 @@ const countTreeExpand = (prevRow, params) => {
|
|
|
4439
4447
|
} = treeOpts;
|
|
4440
4448
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
4441
4449
|
const rowChildren = prevRow[transform ? mapChildrenField : childrenField];
|
|
4442
|
-
if (rowChildren && $table
|
|
4450
|
+
if (rowChildren && treeExpandedFlag && treeExpandedMaps[getRowid($table, prevRow)]) {
|
|
4443
4451
|
for (let index = 0; index < rowChildren.length; index++) {
|
|
4444
4452
|
count += countTreeExpand(rowChildren[index], params);
|
|
4445
4453
|
}
|
|
@@ -6580,7 +6588,6 @@ const renderType = 'body';
|
|
|
6580
6588
|
};
|
|
6581
6589
|
const renderLine = (rowid, params, cellHeight) => {
|
|
6582
6590
|
const {
|
|
6583
|
-
row,
|
|
6584
6591
|
column
|
|
6585
6592
|
} = params;
|
|
6586
6593
|
const {
|
|
@@ -6614,7 +6621,7 @@ const renderType = 'body';
|
|
|
6614
6621
|
}, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
6615
6622
|
class: 'vxe-tree--line',
|
|
6616
6623
|
style: {
|
|
6617
|
-
height: `${$xeTable
|
|
6624
|
+
height: `${getRowid($xeTable, afterFullData[0]) === rowid ? 1 : calcTreeLine(params, prevRow)}px`,
|
|
6618
6625
|
bottom: `-${Math.floor(cellHeight / 2)}px`,
|
|
6619
6626
|
left: `${rLevel * treeOpts.indent + (rLevel ? 2 - getOffsetSize($xeTable) : 0) + 16}px`
|
|
6620
6627
|
}
|
|
@@ -6922,6 +6929,7 @@ const renderType = 'body';
|
|
|
6922
6929
|
} else {
|
|
6923
6930
|
tcStyle.minHeight = `${cellHeight}px`;
|
|
6924
6931
|
}
|
|
6932
|
+
// console.log(lastScrollTime)
|
|
6925
6933
|
const tdVNs = [];
|
|
6926
6934
|
if (fixedHiddenColumn && isAllOverflow) {
|
|
6927
6935
|
tdVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
@@ -10945,7 +10953,7 @@ focused:{row:null,column:null}},// 存放 tooltip 相关信息
|
|
|
10945
10953
|
tooltipStore:{row:null,column:null,content:null,visible:false,currOpts:{}},// 存放数据校验相关信息
|
|
10946
10954
|
validStore:{visible:false},validErrorMaps:{},// 导入相关信息
|
|
10947
10955
|
importStore:{inited:false,file:null,type:'',modeList:[],typeList:[],filename:'',visible:false},importParams:{mode:'',types:null,message:true},// 导出相关信息
|
|
10948
|
-
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,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,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:false,isDragRowMove:false,dragRow:null,isDragColMove:false,dragCol:null,dragTipText:'',isDragResize:false,isRowLoading:false,isColLoading:false});const internalData={tZindex:0,currKeyField:'',isCurrDeepKey:false,elemStore:{},// 存放横向 X 虚拟滚动相关的信息
|
|
10956
|
+
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,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,isDragRowMove:false,dragRow:null,isDragColMove:false,dragCol:null,dragTipText:'',isDragResize:false,isRowLoading:false,isColLoading:false});const internalData={tZindex:0,currKeyField:'',isCurrDeepKey:false,elemStore:{},// 存放横向 X 虚拟滚动相关的信息
|
|
10949
10957
|
scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},// 存放纵向 Y 虚拟滚动相关信息
|
|
10950
10958
|
scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},// 表格宽度
|
|
10951
10959
|
tableWidth:0,// 表格高度
|
|
@@ -11196,7 +11204,7 @@ const matchObj=external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe
|
|
|
11196
11204
|
* @returns
|
|
11197
11205
|
*/const handleRowGroupVirtualExpand=(rows,expanded)=>{return handleRowGroupBaseExpand(rows,expanded).then(()=>{handleVirtualTreeToList();$xeTable.handleTableData();reactData.rowGroupExpandedFlag++;updateAfterDataIndex();return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();}).then(()=>{return handleLazyRecalculate(true,true,true);}).then(()=>{setTimeout(()=>{$xeTable.updateCellAreas();},30);});};const handleCheckAllEvent=(evnt,value)=>{handleCheckedAllCheckboxRow(value);if(evnt){dispatchEvent('checkbox-all',{records:()=>$xeTable.getCheckboxRecords(),reserves:()=>$xeTable.getCheckboxReserveRecords(),indeterminates:()=>$xeTable.getCheckboxIndeterminateRecords(),checked:value},evnt);}};/**
|
|
11198
11206
|
* 纵向 Y 可视渲染处理
|
|
11199
|
-
*/const loadScrollYData=()=>{const{isAllOverflow,isScrollYBig}=reactData;const{mergeBodyList,scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible();const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeBodyList,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}};const createGetRowCacheProp=prop=>{return function(row){const{fullAllDataRowIdData}=internalData;if(row){const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest[prop];}}return-1;};};const createGetColumnCacheProp=prop=>{return function(column){const{fullColumnIdData}=internalData;if(column){const colRest=fullColumnIdData[column.id];if(colRest){return colRest[prop];}}return-1;};};const lazyScrollXData=()=>{const{lxTimeout,lxRunTime,scrollXStore}=internalData;const{visibleSize}=scrollXStore;const fpsTime=visibleSize>26?26:visibleSize>16?14:6;if(lxTimeout){clearTimeout(lxTimeout);}if(!lxRunTime||lxRunTime+fpsTime<Date.now()){internalData.lxRunTime=Date.now();loadScrollXData();}internalData.lxTimeout=setTimeout(()=>{internalData.lxTimeout=undefined;internalData.lxRunTime=undefined;loadScrollXData();},fpsTime);};const lazyScrollYData=()=>{const{lyTimeout,lyRunTime,scrollYStore}=internalData;const{visibleSize}=scrollYStore;const fpsTime=visibleSize>30?32:visibleSize>20?18:8;if(lyTimeout){clearTimeout(lyTimeout);}if(!lyRunTime||lyRunTime+fpsTime<Date.now()){internalData.lyRunTime=Date.now();loadScrollYData();}internalData.lyTimeout=setTimeout(()=>{internalData.lyTimeout=undefined;internalData.lyRunTime=undefined;loadScrollYData();},fpsTime);};const checkLastSyncScroll=(isRollX,isRollY)=>{const{scrollXLoad,scrollYLoad,isAllOverflow}=reactData;const{lcsTimeout}=internalData;if(lcsTimeout){clearTimeout(lcsTimeout);}internalData.lcsTimeout=setTimeout(()=>{internalData.lcsRunTime=Date.now();internalData.lcsTimeout=undefined;internalData.intoRunScroll=false;internalData.inVirtualScroll=false;internalData.inWheelScroll=false;internalData.inHeaderScroll=false;internalData.inBodyScroll=false;internalData.inFooterScroll=false;internalData.scrollRenderType='';if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}if(isRollX&&scrollXLoad){$xeTable.updateScrollXData();}if(isRollY&&scrollYLoad){$xeTable.updateScrollYData().then(()=>{if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}$xeTable.updateScrollYSpace();});}updateRowExpandStyle();$xeTable.updateCellAreas();},200);};const getWheelSpeed=lastScrollTime=>{let multiple=1;const currTime=Date.now();if(lastScrollTime+25>currTime){multiple=1.18;}else if(lastScrollTime+30>currTime){multiple=1.15;}else if(lastScrollTime+40>currTime){multiple=1.12;}else if(lastScrollTime+55>currTime){multiple=1.09;}else if(lastScrollTime+75>currTime){multiple=1.06;}else if(lastScrollTime+100>currTime){multiple=1.03;}return multiple;};const wheelScrollLeftTo=(scrollLeft,cb)=>{requestAnimationFrame(()=>{cb(scrollLeft);});};const wheelScrollTopTo=(diffNum,cb)=>{const duration=Math.abs(diffNum);const startTime=performance.now();let countTop=0;const step=timestamp=>{let progress=(timestamp-startTime)/duration;if(progress>1){progress=1;}const easedProgress=Math.pow(progress,2);const offsetTop=Math.floor(diffNum*easedProgress)-countTop;countTop+=offsetTop;cb(offsetTop);if(progress<1){requestAnimationFrame(step);}};requestAnimationFrame(step);};const dispatchEvent=(type,params,evnt)=>{emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid},params));};const handleScrollToRowColumn=(fieldOrColumn,row)=>{const{fullColumnIdData}=internalData;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column&&fullColumnIdData[column.id]){return colToVisible($xeTable,column,row);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleUpdateResize=()=>{const el=refElem.value;if(el&&el.clientWidth&&el.clientHeight){$xeTable.recalculate();}};const handleUpdateColResize=(evnt,params)=>{$xeTable.analyColumnWidth();$xeTable.recalculate().then(()=>{$xeTable.saveCustomStore('update:width');$xeTable.updateCellAreas();$xeTable.dispatchEvent('column-resizable-change',params,evnt);// 已废弃 resizable-change
|
|
11207
|
+
*/const loadScrollYData=()=>{const{isAllOverflow,isScrollYBig}=reactData;const{mergeBodyList,scrollYStore}=internalData;const{preloadSize,startIndex,endIndex,offsetSize}=scrollYStore;const autoOffsetYSize=isAllOverflow?offsetSize:offsetSize+1;const{toVisibleIndex,visibleSize}=handleVirtualYVisible();const offsetItem={startIndex:Math.max(0,isScrollYBig?toVisibleIndex-1:toVisibleIndex-1-offsetSize-preloadSize),endIndex:isScrollYBig?toVisibleIndex+visibleSize:toVisibleIndex+visibleSize+autoOffsetYSize+preloadSize};scrollYStore.visibleStartIndex=toVisibleIndex-1;scrollYStore.visibleEndIndex=toVisibleIndex+visibleSize+1;calculateMergerOffsetIndex(mergeBodyList,offsetItem,'row');const{startIndex:offsetStartIndex,endIndex:offsetEndIndex}=offsetItem;if(toVisibleIndex<=startIndex||toVisibleIndex>=endIndex-visibleSize-1){if(startIndex!==offsetStartIndex||endIndex!==offsetEndIndex){scrollYStore.startIndex=offsetStartIndex;scrollYStore.endIndex=offsetEndIndex;$xeTable.updateScrollYData();}}};const createGetRowCacheProp=prop=>{return function(row){const{fullAllDataRowIdData}=internalData;if(row){const rowid=getRowid($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){return rowRest[prop];}}return-1;};};const createGetColumnCacheProp=prop=>{return function(column){const{fullColumnIdData}=internalData;if(column){const colRest=fullColumnIdData[column.id];if(colRest){return colRest[prop];}}return-1;};};const lazyScrollXData=()=>{const{lxTimeout,lxRunTime,scrollXStore}=internalData;const{visibleSize}=scrollXStore;const fpsTime=visibleSize>26?26:visibleSize>16?14:6;if(lxTimeout){clearTimeout(lxTimeout);}if(!lxRunTime||lxRunTime+fpsTime<Date.now()){internalData.lxRunTime=Date.now();loadScrollXData();}internalData.lxTimeout=setTimeout(()=>{internalData.lxTimeout=undefined;internalData.lxRunTime=undefined;loadScrollXData();},fpsTime);};const lazyScrollYData=()=>{const{lyTimeout,lyRunTime,scrollYStore}=internalData;const{visibleSize}=scrollYStore;const fpsTime=visibleSize>30?32:visibleSize>20?18:8;if(lyTimeout){clearTimeout(lyTimeout);}if(!lyRunTime||lyRunTime+fpsTime<Date.now()){internalData.lyRunTime=Date.now();loadScrollYData();}internalData.lyTimeout=setTimeout(()=>{internalData.lyTimeout=undefined;internalData.lyRunTime=undefined;loadScrollYData();},fpsTime);};const checkLastSyncScroll=(isRollX,isRollY)=>{const{scrollXLoad,scrollYLoad,isAllOverflow}=reactData;const{lcsTimeout}=internalData;reactData.lazScrollLoading=true;if(lcsTimeout){clearTimeout(lcsTimeout);}internalData.lcsTimeout=setTimeout(()=>{internalData.lcsRunTime=Date.now();internalData.lcsTimeout=undefined;internalData.intoRunScroll=false;internalData.inVirtualScroll=false;internalData.inWheelScroll=false;internalData.inHeaderScroll=false;internalData.inBodyScroll=false;internalData.inFooterScroll=false;reactData.lazScrollLoading=false;internalData.scrollRenderType='';if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}if(isRollX&&scrollXLoad){$xeTable.updateScrollXData();}if(isRollY&&scrollYLoad){$xeTable.updateScrollYData().then(()=>{if(!isAllOverflow){calcCellHeight();updateRowOffsetTop();}$xeTable.updateScrollYSpace();});}updateRowExpandStyle();$xeTable.updateCellAreas();},200);};const getWheelSpeed=lastScrollTime=>{let multiple=1;const currTime=Date.now();if(lastScrollTime+25>currTime){multiple=1.18;}else if(lastScrollTime+30>currTime){multiple=1.15;}else if(lastScrollTime+40>currTime){multiple=1.12;}else if(lastScrollTime+55>currTime){multiple=1.09;}else if(lastScrollTime+75>currTime){multiple=1.06;}else if(lastScrollTime+100>currTime){multiple=1.03;}return multiple;};const wheelScrollLeftTo=(scrollLeft,cb)=>{requestAnimationFrame(()=>{cb(scrollLeft);});};const wheelScrollTopTo=(diffNum,cb)=>{const duration=Math.abs(diffNum);const startTime=performance.now();let countTop=0;const step=timestamp=>{let progress=(timestamp-startTime)/duration;if(progress>1){progress=1;}const easedProgress=Math.pow(progress,2);const offsetTop=Math.floor(diffNum*easedProgress)-countTop;countTop+=offsetTop;cb(offsetTop);if(progress<1){requestAnimationFrame(step);}};requestAnimationFrame(step);};const dispatchEvent=(type,params,evnt)=>{emit(type,createEvent(evnt,{$table:$xeTable,$grid:$xeGrid},params));};const handleScrollToRowColumn=(fieldOrColumn,row)=>{const{fullColumnIdData}=internalData;const column=handleFieldOrColumn($xeTable,fieldOrColumn);if(column&&fullColumnIdData[column.id]){return colToVisible($xeTable,column,row);}return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();};const handleUpdateResize=()=>{const el=refElem.value;if(el&&el.clientWidth&&el.clientHeight){$xeTable.recalculate();}};const handleUpdateColResize=(evnt,params)=>{$xeTable.analyColumnWidth();$xeTable.recalculate().then(()=>{$xeTable.saveCustomStore('update:width');$xeTable.updateCellAreas();$xeTable.dispatchEvent('column-resizable-change',params,evnt);// 已废弃 resizable-change
|
|
11200
11208
|
$xeTable.dispatchEvent('resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const handleUpdateRowResize=(evnt,params)=>{reactData.resizeHeightFlag++;$xeTable.recalculate().then(()=>{$xeTable.updateCellAreas();$xeTable.dispatchEvent('row-resizable-change',params,evnt);setTimeout(()=>$xeTable.recalculate(true),300);});};const updateColumnOffsetLeft=()=>{const{visibleColumn,fullColumnIdData}=internalData;let offsetLeft=0;for(let cIndex=0,rLen=visibleColumn.length;cIndex<rLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid];if(colRest){colRest.oLeft=offsetLeft;}offsetLeft+=column.renderWidth;}};const updateRowOffsetTop=()=>{const{expandColumn}=reactData;const{afterFullData,fullAllDataRowIdData,rowExpandedMaps}=internalData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{handleGetRowId}=createHandleGetRowId($xeTable);let offsetTop=0;for(let rIndex=0,rLen=afterFullData.length;rIndex<rLen;rIndex++){const row=afterFullData[rIndex];const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid]||{};rowRest.oTop=offsetTop;offsetTop+=rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight;// 是否展开行
|
|
11201
11209
|
if(expandColumn&&rowExpandedMaps[rowid]){offsetTop+=rowRest.expandHeight||expandOpts.height||0;}}};const updateRowExpandStyle=()=>{const{expandColumn,scrollYLoad,scrollYTop,isScrollYBig}=reactData;const expandOpts=computeExpandOpts.value;const rowOpts=computeRowOpts.value;const cellOpts=computeCellOpts.value;const defaultRowHeight=computeDefaultRowHeight.value;const{mode}=expandOpts;if(expandColumn&&mode==='fixed'){const{elemStore,fullAllDataRowIdData}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){let isUpdateHeight=false;external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(rowExpandEl.children,reEl=>{const expandEl=reEl;const rowid=expandEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const expandHeight=expandEl.offsetHeight+1;const trEl=bodyScrollElem.querySelector(`.vxe-body--row[rowid="${rowid}"]`);let offsetTop=0;if(scrollYLoad){if(isScrollYBig&&trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}else{offsetTop=rowRest.oTop+(rowRest.resizeHeight||cellOpts.height||rowOpts.height||rowRest.height||defaultRowHeight);}}else{if(trEl){offsetTop=trEl.offsetTop+trEl.offsetHeight;}}if(isScrollYBig){offsetTop+=scrollYTop;}expandEl.style.top=toCssUnit(offsetTop);if(!isUpdateHeight){if(rowRest.expandHeight!==expandHeight){isUpdateHeight=true;}}rowRest.expandHeight=expandHeight;}});if(isUpdateHeight){reactData.rowExpandHeightFlag++;(0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(()=>{updateRowOffsetTop();});}}}};const handleRowExpandScroll=()=>{const{elemStore}=internalData;const rowExpandEl=refRowExpandElem.value;const bodyScrollElem=getRefElem(elemStore['main-body-scroll']);if(rowExpandEl&&bodyScrollElem){rowExpandEl.scrollTop=bodyScrollElem.scrollTop;}};tableMethods={dispatchEvent,getEl(){return refElem.value;},/**
|
|
11202
11210
|
* 重置表格的一切数据状态
|
|
@@ -13562,12 +13570,12 @@ const gridComponentEmits = [...emits, 'page-change', 'form-submit', 'form-submit
|
|
|
13562
13570
|
case 'insert_edit':
|
|
13563
13571
|
return $xeTable.insert({}).then(({
|
|
13564
13572
|
row
|
|
13565
|
-
}) => $xeTable.setEditRow(row));
|
|
13573
|
+
}) => $xeTable.setEditRow(row, true));
|
|
13566
13574
|
// 已废弃
|
|
13567
13575
|
case 'insert_actived':
|
|
13568
13576
|
return $xeTable.insert({}).then(({
|
|
13569
13577
|
row
|
|
13570
|
-
}) => $xeTable.setEditRow(row));
|
|
13578
|
+
}) => $xeTable.setEditRow(row, true));
|
|
13571
13579
|
// 已废弃
|
|
13572
13580
|
case 'mark_cancel':
|
|
13573
13581
|
triggerPendingEvent(code);
|
|
@@ -21699,7 +21707,8 @@ const Toolbar = VxeToolbar;
|
|
|
21699
21707
|
colorPicker: {
|
|
21700
21708
|
clear: '清除',
|
|
21701
21709
|
confirm: '确认',
|
|
21702
|
-
copySuccess: '已复制到剪贴板:{0}'
|
|
21710
|
+
copySuccess: '已复制到剪贴板:{0}',
|
|
21711
|
+
hex: '十六进制'
|
|
21703
21712
|
},
|
|
21704
21713
|
formDesign: {
|
|
21705
21714
|
formName: '表单名称',
|