vxe-table 3.19.20 → 3.19.21

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.
Files changed (34) hide show
  1. package/es/grid/src/grid.js +148 -33
  2. package/es/style.css +1 -1
  3. package/es/table/render/index.js +113 -4
  4. package/es/table/src/cell.js +3 -3
  5. package/es/table/src/methods.js +36 -16
  6. package/es/ui/index.js +3 -2
  7. package/es/ui/src/log.js +1 -1
  8. package/lib/grid/src/grid.js +166 -48
  9. package/lib/grid/src/grid.min.js +1 -1
  10. package/lib/index.umd.js +328 -73
  11. package/lib/index.umd.min.js +1 -1
  12. package/lib/style.css +1 -1
  13. package/lib/table/render/index.js +140 -10
  14. package/lib/table/render/index.min.js +1 -1
  15. package/lib/table/src/cell.js +6 -3
  16. package/lib/table/src/cell.min.js +1 -1
  17. package/lib/table/src/methods.js +35 -15
  18. package/lib/table/src/methods.min.js +1 -1
  19. package/lib/ui/index.js +3 -2
  20. package/lib/ui/index.min.js +1 -1
  21. package/lib/ui/src/log.js +1 -1
  22. package/lib/ui/src/log.min.js +1 -1
  23. package/package.json +2 -2
  24. package/packages/grid/src/grid.ts +148 -35
  25. package/packages/table/render/index.ts +115 -4
  26. package/packages/table/src/cell.ts +3 -3
  27. package/packages/table/src/methods.ts +35 -14
  28. package/packages/ui/index.ts +2 -1
  29. /package/es/{iconfont.1764045838630.ttf → iconfont.1764298141619.ttf} +0 -0
  30. /package/es/{iconfont.1764045838630.woff → iconfont.1764298141619.woff} +0 -0
  31. /package/es/{iconfont.1764045838630.woff2 → iconfont.1764298141619.woff2} +0 -0
  32. /package/lib/{iconfont.1764045838630.ttf → iconfont.1764298141619.ttf} +0 -0
  33. /package/lib/{iconfont.1764045838630.woff → iconfont.1764298141619.woff} +0 -0
  34. /package/lib/{iconfont.1764045838630.woff2 → iconfont.1764298141619.woff2} +0 -0
package/lib/ui/index.js CHANGED
@@ -13,7 +13,7 @@ Object.defineProperty(exports, "VxeUI", {
13
13
  exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
14
14
  var _core = require("@vxe-ui/core");
15
15
  var _utils = require("./src/utils");
16
- const version = exports.version = "3.19.20";
16
+ const version = exports.version = "3.19.21";
17
17
  _core.VxeUI.version = version;
18
18
  _core.VxeUI.tableVersion = version;
19
19
  _core.VxeUI.setConfig({
@@ -293,9 +293,10 @@ _core.VxeUI.setConfig({
293
293
  showResponseMsg: true,
294
294
  showActionMsg: true,
295
295
  response: {
296
- list: null,
296
+ list: 'list',
297
297
  result: 'result',
298
298
  total: 'page.total',
299
+ footerData: 'footerData',
299
300
  message: 'message'
300
301
  }
301
302
  // beforeItem: null,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="3.19.20",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,padding:!0,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},headerTooltipConfig:{enterable:!0},footerTooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},menuConfig:{destroyOnClose:!0},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{destroyOnClose:!0,multiple:!0,showIcon:!0},floatingFilterConfig:{},aggregateConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0,showRootLine:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:0,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{},gantt:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_MENU_OPTION_LOADING:iconPrefix+"repeat roll",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_AGG_GROUP:iconPrefix+"grouping",TABLE_DRAG_STATUS_AGG_VALUES:iconPrefix+"values",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",TABLE_AGGREGATE_GROUPING:iconPrefix+"grouping",TABLE_AGGREGATE_VALUES:iconPrefix+"values",TABLE_AGGREGATE_SORT:iconPrefix+"drag-handle",TABLE_AGGREGATE_DELETE:iconPrefix+"close",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,i){return _core.VxeUI.modal.alert(e,o,i)},confirm(e,o,i){return _core.VxeUI.modal.confirm(e,o,i)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,i){return _core.VxeUI.modal.notification(e,o,i)}});var _default=exports.default=_core.VxeUI;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="3.19.21",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,padding:!0,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},headerTooltipConfig:{enterable:!0},footerTooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},menuConfig:{destroyOnClose:!0},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{destroyOnClose:!0,multiple:!0,showIcon:!0},floatingFilterConfig:{},aggregateConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0,showRootLine:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:0,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:"list",result:"result",total:"page.total",footerData:"footerData",message:"message"}}},toolbar:{},gantt:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_MENU_OPTION_LOADING:iconPrefix+"repeat roll",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_AGG_GROUP:iconPrefix+"grouping",TABLE_DRAG_STATUS_AGG_VALUES:iconPrefix+"values",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",TABLE_AGGREGATE_GROUPING:iconPrefix+"grouping",TABLE_AGGREGATE_VALUES:iconPrefix+"values",TABLE_AGGREGATE_SORT:iconPrefix+"drag-handle",TABLE_AGGREGATE_DELETE:iconPrefix+"close",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,i){return _core.VxeUI.modal.alert(e,o,i)},confirm(e,o,i){return _core.VxeUI.modal.confirm(e,o,i)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,i){return _core.VxeUI.modal.notification(e,o,i)}});var _default=exports.default=_core.VxeUI;
package/lib/ui/src/log.js CHANGED
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
8
8
  const {
9
9
  log
10
10
  } = _core.VxeUI;
11
- const version = `table v${"3.19.20"}`;
11
+ const version = `table v${"3.19.21"}`;
12
12
  const warnLog = exports.warnLog = log.create('warn', version);
13
13
  const errLog = exports.errLog = log.create('error', version);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v3.19.20",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v3.19.21",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-table",
3
- "version": "3.19.20",
3
+ "version": "3.19.21",
4
4
  "description": "A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -68,7 +68,7 @@
68
68
  "vue-i18n": "^8.15.1",
69
69
  "vue-router": "^3.5.1",
70
70
  "vue-template-compiler": "2.6.14",
71
- "vxe-gantt": "~3.0.21"
71
+ "vxe-gantt": "~3.0.25"
72
72
  },
73
73
  "vetur": {
74
74
  "tags": "helper/vetur/tags.json",
@@ -52,6 +52,7 @@ XEUtils.each(VxeTableComponent.methods, (fn, name) => {
52
52
 
53
53
  function createInternalData (): GridInternalData {
54
54
  return {
55
+ uFoot: false
55
56
  }
56
57
  }
57
58
 
@@ -76,6 +77,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
76
77
  editRules: PropType<VxeTablePropTypes.EditRules>
77
78
  animat: PropType<VxeTablePropTypes.Animat>
78
79
  scrollbarConfig: PropType<VxeTablePropTypes.ScrollbarConfig>
80
+ showFooter: PropType<VxeTablePropTypes.ShowFooter>
79
81
  params: PropType<VxeTablePropTypes.Params>
80
82
  }),
81
83
 
@@ -111,6 +113,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
111
113
  filterData: [],
112
114
  formData: {},
113
115
  sortData: [],
116
+ footerData: [],
114
117
  tZindex: 0,
115
118
  tablePage: {
116
119
  total: 0,
@@ -235,7 +238,9 @@ export default /* define-vxe-component start */ defineVxeComponent({
235
238
  const rest: any = {}
236
239
  const gridProps: any = props
237
240
  propKeys.forEach(key => {
238
- rest[key] = gridProps[key]
241
+ if (gridProps[key] !== undefined) {
242
+ rest[key] = gridProps[key]
243
+ }
239
244
  })
240
245
  return rest
241
246
  },
@@ -244,15 +249,22 @@ export default /* define-vxe-component start */ defineVxeComponent({
244
249
  const props = $xeGrid
245
250
  const reactData = $xeGrid.reactData
246
251
 
247
- const { seqConfig, pagerConfig, editConfig, proxyConfig } = props
248
- const { isZMax, tablePage } = reactData
252
+ const { showFooter, seqConfig, pagerConfig, editConfig, proxyConfig } = props
253
+ const { isZMax, tablePage, footerData } = reactData
249
254
  const tableExtendProps = $xeGrid.computeTableExtendProps as any
250
- const proxyOpts = $xeGrid.computeProxyOpts
251
- const pagerOpts = $xeGrid.computePagerOpts
252
- const isLoading = $xeGrid.computeIsLoading
255
+ const proxyOpts = $xeGrid.computeProxyOpts as VxeGridPropTypes.ProxyConfig
256
+ const pagerOpts = $xeGrid.computePagerOpts as VxeGridPropTypes.PagerConfig
257
+ const isLoading = $xeGrid.computeIsLoading as boolean
253
258
  const tProps = Object.assign({}, tableExtendProps)
259
+ if (showFooter && !tProps.footerData) {
260
+ // 如果未设置自己的标位数据,则使用代理的
261
+ tProps.footerData = footerData
262
+ } else if (proxyOpts.footer && footerData.length) {
263
+ // 如果代理标为数据,且未请求到数据,则用自己的
264
+ tProps.footerData = footerData
265
+ }
254
266
  if (isZMax) {
255
- if (tableExtendProps.maxHeight) {
267
+ if (tProps.maxHeight) {
256
268
  tProps.maxHeight = '100%'
257
269
  } else {
258
270
  tProps.height = '100%'
@@ -514,6 +526,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
514
526
  const $xeGrid = this
515
527
  const props = $xeGrid
516
528
  const reactData = $xeGrid.reactData
529
+ const internalData = $xeGrid.internalData
517
530
 
518
531
  const { proxyConfig, formConfig } = props
519
532
  const { proxyInited } = reactData
@@ -523,14 +536,31 @@ export default /* define-vxe-component start */ defineVxeComponent({
523
536
  if (isEnableConf(formConfig) && proxyOpts.form && formOpts.items) {
524
537
  reactData.formData = $xeGrid.getDefaultFormData()
525
538
  }
526
- if (!proxyInited && proxyOpts.autoLoad !== false) {
539
+ if (!proxyInited) {
527
540
  reactData.proxyInited = true
528
- $xeGrid.$nextTick().then(() => $xeGrid.commitProxy('initial')).then((rest) => {
529
- $xeGrid.dispatchEvent('proxy-query', { ...rest, isInited: true }, new Event('initial'))
530
- })
541
+ if (proxyOpts.autoLoad !== false) {
542
+ $xeGrid.$nextTick().then(() => {
543
+ internalData.uFoot = true
544
+ const rest = $xeGrid.commitProxy('initial')
545
+ internalData.uFoot = false
546
+ $xeGrid.updateQueryFooter()
547
+ return rest
548
+ }).then((rest) => {
549
+ $xeGrid.dispatchEvent('proxy-query', { ...rest, isInited: true }, new Event('initial'))
550
+ })
551
+ }
531
552
  }
532
553
  }
533
554
  },
555
+ updateQueryFooter () {
556
+ const $xeGrid = this
557
+
558
+ const proxyOpts = $xeGrid.computeProxyOpts
559
+ const { ajax } = proxyOpts
560
+ if (ajax && ajax.queryFooter) {
561
+ return $xeGrid.commitProxy('queryFooter')
562
+ }
563
+ },
534
564
  handleGlobalKeydownEvent (evnt: KeyboardEvent) {
535
565
  const $xeGrid = this
536
566
  const reactData = $xeGrid.reactData
@@ -605,6 +635,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
605
635
  const $xeGrid = this
606
636
  const props = $xeGrid
607
637
  const reactData = $xeGrid.reactData
638
+ const internalData = $xeGrid.internalData
608
639
 
609
640
  /**
610
641
  * 已废弃
@@ -612,15 +643,15 @@ export default /* define-vxe-component start */ defineVxeComponent({
612
643
  */
613
644
  const toolbar = (props as any).toolbar
614
645
 
615
- const { proxyConfig, toolbarConfig, pagerConfig, editRules, validConfig } = props
646
+ const { showFooter, proxyConfig, toolbarConfig, pagerConfig, editRules, validConfig } = props
616
647
  const { tablePage } = reactData
617
648
  const isActiveMsg = $xeGrid.computeIsActiveMsg
618
649
  const isRespMsg = $xeGrid.computeIsRespMsg
619
650
  const proxyOpts = $xeGrid.computeProxyOpts
620
651
  const pagerOpts = $xeGrid.computePagerOpts
621
652
  const toolbarOpts = $xeGrid.computeToolbarOpts
622
- const { beforeQuery, afterQuery, beforeDelete, afterDelete, beforeSave, afterSave, ajax = {} } = proxyOpts
623
- const resConfigs = proxyOpts.response || proxyOpts.props || {}
653
+ const { beforeQuery, afterQuery, beforeQueryFooter, afterQueryFooter, beforeDelete, afterDelete, beforeSave, afterSave, ajax = {} } = proxyOpts
654
+ const resConfigs = (proxyOpts.response || proxyOpts.props || {}) as VxeGridDefines.ProxyConfigResponseConfig
624
655
  const $xeTable = $xeGrid.$refs.refTable as VxeTableConstructor & VxeTablePrivateMethods
625
656
  let formData = $xeGrid.getFormData()
626
657
  let button: VxeToolbarPropTypes.ButtonConfig | null = null
@@ -669,10 +700,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
669
700
  case 'initial':
670
701
  case 'reload':
671
702
  case 'query': {
672
- const ajaxMethods = ajax.query
673
- const querySuccessMethods = ajax.querySuccess
674
- const queryErrorMethods = ajax.queryError
675
- if (ajaxMethods) {
703
+ const qMethods = ajax.query
704
+ const qsMethods = ajax.querySuccess
705
+ const qeMethods = ajax.queryError
706
+ if (qMethods) {
676
707
  const isInited = code === 'initial'
677
708
  const isReload = code === 'reload'
678
709
  if (!isInited && reactData.tableLoading) {
@@ -750,24 +781,25 @@ export default /* define-vxe-component start */ defineVxeComponent({
750
781
  sorts: sortList,
751
782
  filters: filterList,
752
783
  form: formData,
753
- options: ajaxMethods
784
+ options: qMethods
754
785
  }
755
786
  reactData.sortData = sortList
756
787
  reactData.filterData = filterList
757
788
  reactData.tableLoading = true
758
789
  return Promise.all([
759
- Promise.resolve((beforeQuery || ajaxMethods)(commitParams, ...args)),
790
+ Promise.resolve((beforeQuery || qMethods)(commitParams, ...args)),
760
791
  operPromise
761
792
  ]).then(([rest]) => {
762
793
  let tableData: any[] = []
763
794
  reactData.tableLoading = false
764
795
  if (rest) {
796
+ const reParams = { data: rest, $table: $xeTable, $grid: $xeGrid as VxeGridConstructor, $gantt: null }
765
797
  if (pagerConfig && isEnableConf(pagerOpts)) {
766
798
  const totalProp = resConfigs.total
767
- const total = (XEUtils.isFunction(totalProp) ? totalProp({ data: rest, $table: $xeTable, $grid: $xeGrid as VxeGridConstructor, $gantt: null }) : XEUtils.get(rest, totalProp || 'page.total')) || 0
799
+ const total = (XEUtils.isFunction(totalProp) ? totalProp(reParams) : XEUtils.get(rest, totalProp || 'page.total')) || 0
768
800
  tablePage.total = XEUtils.toNumber(total)
769
801
  const resultProp = resConfigs.result
770
- tableData = (XEUtils.isFunction(resultProp) ? resultProp({ data: rest, $table: $xeTable, $grid: $xeGrid as VxeGridConstructor, $gantt: null }) : XEUtils.get(rest, resultProp || 'result')) || []
802
+ tableData = (XEUtils.isFunction(resultProp) ? resultProp(reParams) : XEUtils.get(rest, resultProp || 'result')) || []
771
803
  // 检验当前页码,不能超出当前最大页数
772
804
  const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1)
773
805
  if (tablePage.currentPage > pageCount) {
@@ -775,7 +807,18 @@ export default /* define-vxe-component start */ defineVxeComponent({
775
807
  }
776
808
  } else {
777
809
  const listProp = resConfigs.list
778
- tableData = (listProp ? (XEUtils.isFunction(listProp) ? listProp({ data: rest, $table: $xeTable, $grid: $xeGrid as VxeGridConstructor, $gantt: null }) : XEUtils.get(rest, listProp)) : rest) || []
810
+ if (XEUtils.isArray(rest)) {
811
+ tableData = rest
812
+ } else if (listProp) {
813
+ tableData = (XEUtils.isFunction(listProp) ? listProp(reParams) : XEUtils.get(rest, listProp)) || []
814
+ }
815
+ }
816
+ if (showFooter) {
817
+ const fdProp = resConfigs.footerData
818
+ const footerList = fdProp ? (XEUtils.isFunction(fdProp) ? fdProp(reParams) : XEUtils.get(rest, fdProp)) : []
819
+ if (XEUtils.isArray(footerList)) {
820
+ reactData.footerData = footerList
821
+ }
779
822
  }
780
823
  }
781
824
  if ($xeTable) {
@@ -791,14 +834,14 @@ export default /* define-vxe-component start */ defineVxeComponent({
791
834
  if (afterQuery) {
792
835
  afterQuery(commitParams, ...args)
793
836
  }
794
- if (querySuccessMethods) {
795
- querySuccessMethods({ ...commitParams, response: rest })
837
+ if (qsMethods) {
838
+ qsMethods({ ...commitParams, response: rest })
796
839
  }
797
840
  return { status: true }
798
841
  }).catch((rest) => {
799
842
  reactData.tableLoading = false
800
- if (queryErrorMethods) {
801
- queryErrorMethods({ ...commitParams, response: rest })
843
+ if (qeMethods) {
844
+ qeMethods({ ...commitParams, response: rest })
802
845
  }
803
846
  return { status: false }
804
847
  })
@@ -807,11 +850,50 @@ export default /* define-vxe-component start */ defineVxeComponent({
807
850
  }
808
851
  break
809
852
  }
853
+ case 'queryFooter': {
854
+ const qfMethods = ajax.queryFooter
855
+ const qfSuccessMethods = ajax.queryFooterSuccess
856
+ const qfErrorMethods = ajax.queryFooterError
857
+ if (qfMethods) {
858
+ let filterList: VxeTableDefines.FilterCheckedParams[] = []
859
+ if ($xeTable) {
860
+ filterList = $xeTable.getCheckedFilters()
861
+ }
862
+ const commitParams = {
863
+ $table: $xeTable,
864
+ $grid: $xeGrid,
865
+ $gantt: null,
866
+ code,
867
+ button,
868
+ filters: filterList,
869
+ form: formData,
870
+ options: qfMethods
871
+ }
872
+ return Promise.resolve((beforeQueryFooter || qfMethods)(commitParams, ...args)).then(rest => {
873
+ reactData.footerData = XEUtils.isArray(rest) ? rest : []
874
+ if (afterQueryFooter) {
875
+ afterQueryFooter(commitParams, ...args)
876
+ }
877
+ if (qfSuccessMethods) {
878
+ qfSuccessMethods({ ...commitParams, response: rest })
879
+ }
880
+ return { status: true }
881
+ }).catch((rest) => {
882
+ if (qfErrorMethods) {
883
+ qfErrorMethods({ ...commitParams, response: rest })
884
+ }
885
+ return { status: false }
886
+ })
887
+ } else {
888
+ errLog('vxe.error.notFunc', ['[grid] proxy-config.ajax.queryFooter'])
889
+ }
890
+ break
891
+ }
810
892
  case 'delete': {
811
- const ajaxMethods = ajax.delete
893
+ const dMethods = ajax.delete
812
894
  const deleteSuccessMethods = ajax.deleteSuccess
813
895
  const deleteErrorMethods = ajax.deleteError
814
- if (ajaxMethods) {
896
+ if (dMethods) {
815
897
  const selectRecords = $xeTable.getCheckboxRecords()
816
898
  const removeRecords = selectRecords.filter((row) => !$xeTable.isInsertByRow(row))
817
899
  const body = { removeRecords }
@@ -823,7 +905,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
823
905
  button,
824
906
  body,
825
907
  form: formData,
826
- options: ajaxMethods
908
+ options: dMethods
827
909
  }
828
910
  const applyArgs = [commitParams].concat(args)
829
911
  if (selectRecords.length) {
@@ -832,7 +914,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
832
914
  return $xeTable.remove(selectRecords)
833
915
  }
834
916
  reactData.tableLoading = true
835
- return Promise.resolve((beforeDelete || ajaxMethods)(...applyArgs))
917
+ return Promise.resolve((beforeDelete || dMethods)(...applyArgs))
836
918
  .then(rest => {
837
919
  reactData.tableLoading = false
838
920
  $xeTable.setPendingRow(removeRecords, false)
@@ -844,7 +926,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
844
926
  if (afterDelete) {
845
927
  afterDelete(...applyArgs)
846
928
  } else {
929
+ internalData.uFoot = true
847
930
  $xeGrid.commitProxy('query')
931
+ internalData.uFoot = false
932
+ $xeGrid.updateQueryFooter()
848
933
  }
849
934
  if (deleteSuccessMethods) {
850
935
  deleteSuccessMethods({ ...commitParams, response: rest })
@@ -926,7 +1011,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
926
1011
  if (afterSave) {
927
1012
  afterSave(...applyArgs)
928
1013
  } else {
1014
+ internalData.uFoot = true
929
1015
  $xeGrid.commitProxy('query')
1016
+ internalData.uFoot = false
1017
+ $xeGrid.updateQueryFooter()
930
1018
  }
931
1019
  if (saveSuccessMethods) {
932
1020
  saveSuccessMethods({ ...commitParams, response: rest })
@@ -1114,13 +1202,26 @@ export default /* define-vxe-component start */ defineVxeComponent({
1114
1202
  },
1115
1203
  triggerToolbarCommitEvent (params: any, evnt: any) {
1116
1204
  const $xeGrid = this
1205
+ const internalData = $xeGrid.internalData
1117
1206
 
1118
1207
  const { code } = params
1119
- return $xeGrid.commitProxy(params, evnt).then((rest) => {
1120
- if (code && rest && rest.status && ['query', 'reload', 'delete', 'save'].includes(code)) {
1121
- $xeGrid.dispatchEvent(code === 'delete' || code === 'save' ? `proxy-${code as 'delete' | 'save'}` : 'proxy-query', { ...rest, isReload: code === 'reload' }, evnt)
1208
+ if (code) {
1209
+ const isUf = ['reload', 'delete', 'save'].includes(code)
1210
+ if (isUf) {
1211
+ internalData.uFoot = true
1122
1212
  }
1123
- })
1213
+ const rest = $xeGrid.commitProxy(params, evnt).then((rest) => {
1214
+ if (code && rest && rest.status && ['query', 'reload', 'delete', 'save'].includes(code)) {
1215
+ $xeGrid.dispatchEvent(code === 'delete' || code === 'save' ? `proxy-${code as 'delete' | 'save'}` : 'proxy-query', { ...rest, isReload: code === 'reload' }, evnt)
1216
+ }
1217
+ })
1218
+ if (isUf) {
1219
+ $xeGrid.updateQueryFooter()
1220
+ }
1221
+ internalData.uFoot = false
1222
+ return rest
1223
+ }
1224
+ return $xeGrid.$nextTick()
1124
1225
  },
1125
1226
  triggerToolbarBtnEvent (button: any, evnt: any) {
1126
1227
  const $xeGrid = this
@@ -1188,6 +1289,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1188
1289
  const $xeGrid = this
1189
1290
  const props = $xeGrid
1190
1291
  const reactData = $xeGrid.reactData
1292
+ const internalData = $xeGrid.internalData
1191
1293
  const $xeTable = $xeGrid.$refs.refTable as VxeTableConstructor & VxeTablePrivateMethods
1192
1294
 
1193
1295
  const { proxyConfig } = props
@@ -1198,9 +1300,12 @@ export default /* define-vxe-component start */ defineVxeComponent({
1198
1300
  reactData.filterData = params.filterList
1199
1301
  if (proxyConfig && isEnableConf(proxyOpts)) {
1200
1302
  reactData.tablePage.currentPage = 1
1303
+ internalData.uFoot = true
1201
1304
  $xeGrid.commitProxy('query').then((rest) => {
1202
1305
  $xeGrid.dispatchEvent('proxy-query', rest, params.$event)
1203
1306
  })
1307
+ internalData.uFoot = false
1308
+ $xeGrid.updateQueryFooter()
1204
1309
  }
1205
1310
  }
1206
1311
  },
@@ -1220,6 +1325,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1220
1325
  const $xeGrid = this
1221
1326
  const props = $xeGrid
1222
1327
  const reactData = $xeGrid.reactData
1328
+ const internalData = $xeGrid.internalData
1223
1329
 
1224
1330
  const { proxyConfig } = props
1225
1331
  const proxyOpts = $xeGrid.computeProxyOpts
@@ -1227,15 +1333,19 @@ export default /* define-vxe-component start */ defineVxeComponent({
1227
1333
  return
1228
1334
  }
1229
1335
  if (proxyConfig && isEnableConf(proxyOpts)) {
1336
+ internalData.uFoot = true
1230
1337
  $xeGrid.commitProxy('reload').then((rest) => {
1231
1338
  $xeGrid.dispatchEvent('proxy-query', { ...rest, isReload: true }, params.$event)
1232
1339
  })
1340
+ internalData.uFoot = false
1341
+ $xeGrid.updateQueryFooter()
1233
1342
  }
1234
1343
  $xeGrid.dispatchEvent('form-submit', params, params.$event)
1235
1344
  },
1236
1345
  resetFormEvent (params: VxeFormDefines.ResetEventParams) {
1237
1346
  const $xeGrid = this
1238
1347
  const props = $xeGrid
1348
+ const internalData = $xeGrid.internalData
1239
1349
 
1240
1350
  const $xeTable = $xeGrid.$refs.refTable as VxeTableConstructor & VxeTablePrivateMethods
1241
1351
  const { proxyConfig } = props
@@ -1243,9 +1353,12 @@ export default /* define-vxe-component start */ defineVxeComponent({
1243
1353
  const proxyOpts = $xeGrid.computeProxyOpts
1244
1354
  if (proxyConfig && isEnableConf(proxyOpts)) {
1245
1355
  $xeTable.clearScroll()
1356
+ internalData.uFoot = true
1246
1357
  $xeGrid.commitProxy('reload').then((rest) => {
1247
1358
  $xeGrid.dispatchEvent('proxy-query', { ...rest, isReload: true }, $event)
1248
1359
  })
1360
+ internalData.uFoot = false
1361
+ $xeGrid.updateQueryFooter()
1249
1362
  }
1250
1363
  $xeGrid.dispatchEvent('form-reset', params, $event)
1251
1364
  },