vxe-table 4.12.0 → 4.12.2

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 (42) hide show
  1. package/es/style.css +1 -1
  2. package/es/table/module/edit/hook.js +22 -24
  3. package/es/table/module/keyboard/hook.js +3 -2
  4. package/es/table/module/validator/hook.js +2 -4
  5. package/es/table/src/body.js +7 -8
  6. package/es/table/src/table.js +79 -100
  7. package/es/ui/index.js +3 -3
  8. package/es/ui/src/dom.js +0 -1
  9. package/es/ui/src/log.js +1 -1
  10. package/lib/index.umd.js +12266 -1059
  11. package/lib/index.umd.min.js +1 -1
  12. package/lib/style.css +1 -1
  13. package/lib/table/module/edit/hook.js +26 -34
  14. package/lib/table/module/edit/hook.min.js +1 -1
  15. package/lib/table/module/keyboard/hook.js +2 -1
  16. package/lib/table/module/keyboard/hook.min.js +1 -1
  17. package/lib/table/module/validator/hook.js +3 -8
  18. package/lib/table/module/validator/hook.min.js +1 -1
  19. package/lib/table/src/body.js +7 -8
  20. package/lib/table/src/body.min.js +1 -1
  21. package/lib/table/src/table.js +83 -115
  22. package/lib/table/src/table.min.js +1 -1
  23. package/lib/ui/index.js +3 -3
  24. package/lib/ui/index.min.js +1 -1
  25. package/lib/ui/src/dom.js +0 -2
  26. package/lib/ui/src/dom.min.js +1 -1
  27. package/lib/ui/src/log.js +1 -1
  28. package/lib/ui/src/log.min.js +1 -1
  29. package/package.json +2 -2
  30. package/packages/table/module/edit/hook.ts +23 -24
  31. package/packages/table/module/keyboard/hook.ts +4 -2
  32. package/packages/table/module/validator/hook.ts +2 -4
  33. package/packages/table/src/body.ts +7 -8
  34. package/packages/table/src/table.ts +86 -108
  35. package/packages/ui/index.ts +2 -2
  36. package/packages/ui/src/dom.ts +0 -2
  37. /package/es/{iconfont.1742955995631.ttf → iconfont.1743125693758.ttf} +0 -0
  38. /package/es/{iconfont.1742955995631.woff → iconfont.1743125693758.woff} +0 -0
  39. /package/es/{iconfont.1742955995631.woff2 → iconfont.1743125693758.woff2} +0 -0
  40. /package/lib/{iconfont.1742955995631.ttf → iconfont.1743125693758.ttf} +0 -0
  41. /package/lib/{iconfont.1742955995631.woff → iconfont.1743125693758.woff} +0 -0
  42. /package/lib/{iconfont.1742955995631.woff2 → iconfont.1743125693758.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.hooks = 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 = "4.12.0";
16
+ const version = exports.version = "4.12.2";
17
17
  _core.VxeUI.version = version;
18
18
  _core.VxeUI.tableVersion = version;
19
19
  _core.VxeUI.setConfig({
@@ -206,13 +206,13 @@ _core.VxeUI.setConfig({
206
206
  enabled: true,
207
207
  gt: 60,
208
208
  preSize: 1,
209
- oSize: 2
209
+ oSize: 0
210
210
  },
211
211
  virtualYConfig: {
212
212
  enabled: true,
213
213
  gt: 100,
214
214
  preSize: 1,
215
- oSize: 2
215
+ oSize: 0
216
216
  },
217
217
  scrollbarConfig: {
218
218
  // width: 0,
@@ -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.hooks=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="4.12.0",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,minHeight:144,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},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",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:{showIcon:!0},treeConfig:{rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!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:{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:{enabled:!0,gt:60,preSize:1,oSize:2},virtualYConfig:{enabled:!0,gt:100,preSize:1,oSize:2},scrollbarConfig:{}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}}),"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_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",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_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",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,hooks=exports.hooks=_core.VxeUI.hooks,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,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});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.hooks=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="4.12.2",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,minHeight:144,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},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",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:{showIcon:!0},treeConfig:{rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!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:{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:{enabled:!0,gt:60,preSize:1,oSize:0},virtualYConfig:{enabled:!0,gt:100,preSize:1,oSize:0},scrollbarConfig:{}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}}),"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_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",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_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",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,hooks=exports.hooks=_core.VxeUI.hooks,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,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
package/lib/ui/src/dom.js CHANGED
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.addClass = addClass;
7
- exports.browse = void 0;
8
7
  exports.getAbsolutePos = getAbsolutePos;
9
8
  exports.getDomNode = getDomNode;
10
9
  exports.getEventTargetNode = getEventTargetNode;
@@ -28,7 +27,6 @@ exports.updateCellTitle = updateCellTitle;
28
27
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
29
28
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
30
29
  const reClsMap = {};
31
- const browse = exports.browse = _xeUtils.default.browse();
32
30
  let tpImgEl;
33
31
  function initTpImg() {
34
32
  if (!tpImgEl) {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.browse=void 0,exports.getAbsolutePos=getAbsolutePos,exports.getDomNode=getDomNode,exports.getEventTargetNode=getEventTargetNode,exports.getOffsetHeight=getOffsetHeight,exports.getOffsetPos=getOffsetPos,exports.getPaddingTopBottomSize=getPaddingTopBottomSize,exports.getPropClass=getPropClass,exports.getTpImg=getTpImg,exports.hasClass=hasClass,exports.initTpImg=initTpImg,exports.isNodeElement=isNodeElement,exports.isPx=isPx,exports.isScale=isScale,exports.removeClass=removeClass,exports.scrollToView=scrollToView,exports.setScrollLeft=setScrollLeft,exports.setScrollTop=setScrollTop,exports.toCssUnit=toCssUnit,exports.triggerEvent=triggerEvent,exports.updateCellTitle=updateCellTitle;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let reClsMap={},browse=exports.browse=_xeUtils.default.browse(),tpImgEl;function initTpImg(){return tpImgEl||((tpImgEl=new Image).src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),tpImgEl}function getTpImg(){return tpImgEl||initTpImg()}function getPropClass(e,t){return e?_xeUtils.default.isFunction(e)?e(t):e:""}function getClsRE(e){return reClsMap[e]||(reClsMap[e]=new RegExp(`(?:^|\\s)${e}(?!\\S)`,"g")),reClsMap[e]}function getNodeOffset(e,t,o){if(e){var s=e.parentNode;if(o.top+=e.offsetTop,o.left+=e.offsetLeft,s&&s!==document.documentElement&&s!==document.body&&(o.top-=s.scrollTop,o.left-=s.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return getNodeOffset(e.offsetParent,t,o)}return o}function isPx(e){return e&&/^\d+(px)?$/.test(e)}function isScale(e){return e&&/^\d+%$/.test(e)}function hasClass(e,t){return e&&e.className&&e.className.match&&e.className.match(getClsRE(t))}function removeClass(e,t){e&&hasClass(e,t)&&(e.className=e.className.replace(getClsRE(t),""))}function addClass(e,t){e&&!hasClass(e,t)&&(removeClass(e,t),e.className=e.className+" "+t)}function toCssUnit(e,t="px"){return _xeUtils.default.isNumber(e)||/^\d+$/.test(""+e)?""+e+t:""+(e||"")}function getDomNode(){var e=document.documentElement,t=document.body;return{scrollTop:e.scrollTop||t.scrollTop,scrollLeft:e.scrollLeft||t.scrollLeft,visibleHeight:e.clientHeight||t.clientHeight,visibleWidth:e.clientWidth||t.clientWidth}}function getOffsetHeight(e){return e?e.offsetHeight:0}function getPaddingTopBottomSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingTop)+_xeUtils.default.toNumber(e.paddingBottom)):0}function setScrollTop(e,t){e&&(e.scrollTop=t)}function setScrollLeft(e,t){e&&(e.scrollLeft=t)}function updateCellTitle(e,t){t="html"===t.type?e.innerText:e.textContent;e.getAttribute("title")!==t&&e.setAttribute("title",t)}function getEventTargetNode(e,t,o,s){let l,r=e.target.shadowRoot&&e.composed&&e.composedPath()[0]||e.target;for(;r&&r.nodeType&&r!==document;){if(o&&hasClass(r,o)&&(!s||s(r)))l=r;else if(r===t)return{flag:!o||!!l,container:t,targetElem:l};r=r.parentNode}return{flag:!1}}function getOffsetPos(e,t){return getNodeOffset(e,t,{left:0,top:0})}function getAbsolutePos(e){var e=e.getBoundingClientRect(),t=e.top,e=e.left,{scrollTop:o,scrollLeft:s,visibleHeight:l,visibleWidth:r}=getDomNode();return{boundingTop:t,top:o+t,boundingLeft:e,left:s+e,visibleHeight:l,visibleWidth:r}}let scrollIntoViewIfNeeded="scrollIntoViewIfNeeded",scrollIntoView="scrollIntoView";function scrollToView(e){e&&(e[scrollIntoViewIfNeeded]?e[scrollIntoViewIfNeeded]():e[scrollIntoView]&&e[scrollIntoView]())}function triggerEvent(e,t){e&&e.dispatchEvent(new Event(t))}function isNodeElement(e){return e&&1===e.nodeType}
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.getAbsolutePos=getAbsolutePos,exports.getDomNode=getDomNode,exports.getEventTargetNode=getEventTargetNode,exports.getOffsetHeight=getOffsetHeight,exports.getOffsetPos=getOffsetPos,exports.getPaddingTopBottomSize=getPaddingTopBottomSize,exports.getPropClass=getPropClass,exports.getTpImg=getTpImg,exports.hasClass=hasClass,exports.initTpImg=initTpImg,exports.isNodeElement=isNodeElement,exports.isPx=isPx,exports.isScale=isScale,exports.removeClass=removeClass,exports.scrollToView=scrollToView,exports.setScrollLeft=setScrollLeft,exports.setScrollTop=setScrollTop,exports.toCssUnit=toCssUnit,exports.triggerEvent=triggerEvent,exports.updateCellTitle=updateCellTitle;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let reClsMap={},tpImgEl;function initTpImg(){return tpImgEl||((tpImgEl=new Image).src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),tpImgEl}function getTpImg(){return tpImgEl||initTpImg()}function getPropClass(e,t){return e?_xeUtils.default.isFunction(e)?e(t):e:""}function getClsRE(e){return reClsMap[e]||(reClsMap[e]=new RegExp(`(?:^|\\s)${e}(?!\\S)`,"g")),reClsMap[e]}function getNodeOffset(e,t,o){if(e){var s=e.parentNode;if(o.top+=e.offsetTop,o.left+=e.offsetLeft,s&&s!==document.documentElement&&s!==document.body&&(o.top-=s.scrollTop,o.left-=s.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return getNodeOffset(e.offsetParent,t,o)}return o}function isPx(e){return e&&/^\d+(px)?$/.test(e)}function isScale(e){return e&&/^\d+%$/.test(e)}function hasClass(e,t){return e&&e.className&&e.className.match&&e.className.match(getClsRE(t))}function removeClass(e,t){e&&hasClass(e,t)&&(e.className=e.className.replace(getClsRE(t),""))}function addClass(e,t){e&&!hasClass(e,t)&&(removeClass(e,t),e.className=e.className+" "+t)}function toCssUnit(e,t="px"){return _xeUtils.default.isNumber(e)||/^\d+$/.test(""+e)?""+e+t:""+(e||"")}function getDomNode(){var e=document.documentElement,t=document.body;return{scrollTop:e.scrollTop||t.scrollTop,scrollLeft:e.scrollLeft||t.scrollLeft,visibleHeight:e.clientHeight||t.clientHeight,visibleWidth:e.clientWidth||t.clientWidth}}function getOffsetHeight(e){return e?e.offsetHeight:0}function getPaddingTopBottomSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingTop)+_xeUtils.default.toNumber(e.paddingBottom)):0}function setScrollTop(e,t){e&&(e.scrollTop=t)}function setScrollLeft(e,t){e&&(e.scrollLeft=t)}function updateCellTitle(e,t){t="html"===t.type?e.innerText:e.textContent;e.getAttribute("title")!==t&&e.setAttribute("title",t)}function getEventTargetNode(e,t,o,s){let l,n=e.target.shadowRoot&&e.composed&&e.composedPath()[0]||e.target;for(;n&&n.nodeType&&n!==document;){if(o&&hasClass(n,o)&&(!s||s(n)))l=n;else if(n===t)return{flag:!o||!!l,container:t,targetElem:l};n=n.parentNode}return{flag:!1}}function getOffsetPos(e,t){return getNodeOffset(e,t,{left:0,top:0})}function getAbsolutePos(e){var e=e.getBoundingClientRect(),t=e.top,e=e.left,{scrollTop:o,scrollLeft:s,visibleHeight:l,visibleWidth:n}=getDomNode();return{boundingTop:t,top:o+t,boundingLeft:e,left:s+e,visibleHeight:l,visibleWidth:n}}let scrollIntoViewIfNeeded="scrollIntoViewIfNeeded",scrollIntoView="scrollIntoView";function scrollToView(e){e&&(e[scrollIntoViewIfNeeded]?e[scrollIntoViewIfNeeded]():e[scrollIntoView]&&e[scrollIntoView]())}function triggerEvent(e,t){e&&e.dispatchEvent(new Event(t))}function isNodeElement(e){return e&&1===e.nodeType}
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${"4.12.0"}`;
11
+ const version = `table v${"4.12.2"}`;
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 v4.12.0",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 v4.12.2",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": "4.12.0",
3
+ "version": "4.12.2",
4
4
  "description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、拖拽排序,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -28,7 +28,7 @@
28
28
  "style": "lib/style.css",
29
29
  "typings": "types/index.d.ts",
30
30
  "dependencies": {
31
- "vxe-pc-ui": "^4.4.26"
31
+ "vxe-pc-ui": "^4.5.4"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@types/resize-observer-browser": "^0.1.11",
@@ -3,7 +3,7 @@ import XEUtils from 'xe-utils'
3
3
  import { VxeUI } from '../../../ui'
4
4
  import { isEnableConf } from '../../../ui/src/utils'
5
5
  import { getCellValue, setCellValue, getRowid } from '../../src/util'
6
- import { browse, removeClass, addClass } from '../../../ui/src/dom'
6
+ import { removeClass, addClass } from '../../../ui/src/dom'
7
7
  import { warnLog, errLog } from '../../../ui/src/log'
8
8
 
9
9
  import type { TableEditMethods, TableEditPrivateMethods, VxeTableDefines } from '../../../../types'
@@ -18,6 +18,8 @@ hooks.add('tableEditModule', {
18
18
  const { refElem } = $xeTable.getRefMaps()
19
19
  const { computeMouseOpts, computeEditOpts, computeCheckboxOpts, computeTreeOpts, computeValidOpts } = $xeTable.getComputeMaps()
20
20
 
21
+ const browseObj = XEUtils.browse()
22
+
21
23
  let editMethods = {} as TableEditMethods
22
24
  let editPrivateMethods = {} as TableEditPrivateMethods
23
25
 
@@ -106,8 +108,8 @@ hooks.add('tableEditModule', {
106
108
 
107
109
  const handleInsertRowAt = (records: any, targetRow: any, isInsertNextRow?: boolean) => {
108
110
  const { treeConfig } = props
109
- const { mergeList, editStore } = reactData
110
- const { tableFullTreeData, afterFullData, tableFullData, fullDataRowIdData, fullAllDataRowIdData } = internalData
111
+ const { mergeList } = reactData
112
+ const { tableFullTreeData, afterFullData, tableFullData, fullDataRowIdData, fullAllDataRowIdData, insertRowMaps } = internalData
111
113
  const treeOpts = computeTreeOpts.value
112
114
  const { transform, rowField, mapChildrenField } = treeOpts
113
115
  const childrenField = treeOpts.children || treeOpts.childrenField
@@ -246,11 +248,11 @@ hooks.add('tableEditModule', {
246
248
  }
247
249
  }
248
250
  }
249
- const { insertMaps } = editStore
250
251
  newRecords.forEach(newRow => {
251
252
  const rowid = getRowid($xeTable, newRow)
252
- insertMaps[rowid] = newRow
253
+ insertRowMaps[rowid] = newRow
253
254
  })
255
+ reactData.insertRowFlag++
254
256
  $xeTable.cacheRowMap(false)
255
257
  $xeTable.updateScrollYStatus()
256
258
  $xeTable.handleTableData(treeConfig && transform)
@@ -493,13 +495,12 @@ hooks.add('tableEditModule', {
493
495
  remove (rows: any) {
494
496
  const { treeConfig } = props
495
497
  const { mergeList, editStore } = reactData
496
- const { tableFullTreeData, selectCheckboxMaps, afterFullData, tableFullData, pendingRowMaps } = internalData
498
+ const { tableFullTreeData, selectCheckboxMaps, afterFullData, tableFullData, pendingRowMaps, insertRowMaps, removeRowMaps } = internalData
497
499
  const checkboxOpts = computeCheckboxOpts.value
498
500
  const treeOpts = computeTreeOpts.value
499
501
  const { transform, mapChildrenField } = treeOpts
500
502
  const childrenField = treeOpts.children || treeOpts.childrenField
501
- const { actived, removeMaps } = editStore
502
- const insertDataRowMaps = Object.assign({}, editStore.insertMaps)
503
+ const { actived } = editStore
503
504
  const { checkField } = checkboxOpts
504
505
  let delList: any[] = []
505
506
  if (!rows) {
@@ -511,7 +512,7 @@ hooks.add('tableEditModule', {
511
512
  rows.forEach((row: any) => {
512
513
  if (!$xeTable.isInsertByRow(row)) {
513
514
  const rowid = getRowid($xeTable, row)
514
- removeMaps[rowid] = row
515
+ removeRowMaps[rowid] = row
515
516
  }
516
517
  })
517
518
  // 如果绑定了多选属性,则更新状态
@@ -579,14 +580,15 @@ hooks.add('tableEditModule', {
579
580
  // 从新增中移除已删除的数据
580
581
  rows.forEach((row: any) => {
581
582
  const rowid = getRowid($xeTable, row)
582
- if (insertDataRowMaps[rowid]) {
583
- delete insertDataRowMaps[rowid]
583
+ if (insertRowMaps[rowid]) {
584
+ delete insertRowMaps[rowid]
584
585
  }
585
586
  if (pendingRowMaps[rowid]) {
586
587
  delete pendingRowMaps[rowid]
587
588
  }
588
589
  })
589
- editStore.insertMaps = insertDataRowMaps
590
+ reactData.removeRowFlag++
591
+ reactData.insertRowFlag++
590
592
  reactData.pendingRowFlag++
591
593
  $xeTable.updateFooter()
592
594
  $xeTable.cacheRowMap(false)
@@ -656,11 +658,9 @@ hooks.add('tableEditModule', {
656
658
  * 获取新增的临时数据
657
659
  */
658
660
  getInsertRecords () {
659
- const { editStore } = reactData
660
- const { fullAllDataRowIdData } = internalData
661
- const { insertMaps } = editStore
661
+ const { fullAllDataRowIdData, insertRowMaps } = internalData
662
662
  const insertRecords: any[] = []
663
- XEUtils.each(insertMaps, (row, rowid) => {
663
+ XEUtils.each(insertRowMaps, (row, rowid) => {
664
664
  if (fullAllDataRowIdData[rowid]) {
665
665
  insertRecords.push(row)
666
666
  }
@@ -671,10 +671,9 @@ hooks.add('tableEditModule', {
671
671
  * 获取已删除的数据
672
672
  */
673
673
  getRemoveRecords () {
674
- const { editStore } = reactData
675
- const { removeMaps } = editStore
674
+ const { removeRowMaps } = internalData
676
675
  const removeRecords: any[] = []
677
- XEUtils.each(removeMaps, (row) => {
676
+ XEUtils.each(removeRowMaps, (row) => {
678
677
  removeRecords.push(row)
679
678
  })
680
679
  return removeRecords
@@ -701,7 +700,7 @@ hooks.add('tableEditModule', {
701
700
  if (process.env.VUE_APP_VXE_ENV === 'development') {
702
701
  warnLog('vxe.error.delFunc', ['getActiveRecord', 'getEditRecord'])
703
702
  }
704
- return this.getEditRecord()
703
+ return $xeTable.getEditRecord()
705
704
  },
706
705
  getEditRecord () {
707
706
  const { editStore } = reactData
@@ -729,7 +728,7 @@ hooks.add('tableEditModule', {
729
728
  if (process.env.VUE_APP_VXE_ENV === 'development') {
730
729
  warnLog('vxe.error.delFunc', ['clearActived', 'clearEdit'])
731
730
  }
732
- return this.clearEdit(row)
731
+ return $xeTable.clearEdit(row)
733
732
  },
734
733
  /**
735
734
  * 清除激活的编辑
@@ -753,7 +752,7 @@ hooks.add('tableEditModule', {
753
752
  warnLog('vxe.error.delFunc', ['isActiveByRow', 'isEditByRow'])
754
753
  }
755
754
  // 即将废弃
756
- return this.isEditByRow(row)
755
+ return $xeTable.isEditByRow(row)
757
756
  },
758
757
  /**
759
758
  * 判断行是否为激活编辑状态
@@ -882,7 +881,7 @@ hooks.add('tableEditModule', {
882
881
  inputElem.select()
883
882
  } else {
884
883
  // 保持一致行为,光标移到末端
885
- if (browse.msie) {
884
+ if (browseObj.msie) {
886
885
  const textRange = inputElem.createTextRange()
887
886
  textRange.collapse(false)
888
887
  textRange.select()
@@ -914,7 +913,7 @@ hooks.add('tableEditModule', {
914
913
  if (isMouseSelected && (selected.row !== row || selected.column !== column)) {
915
914
  if (actived.row !== row || (editOpts.mode === 'cell' ? actived.column !== column : false)) {
916
915
  handleClearEdit(evnt)
917
- editMethods.clearSelected()
916
+ $xeTable.clearSelected()
918
917
  if ($xeTable.clearCellAreas) {
919
918
  $xeTable.clearCellAreas()
920
919
  $xeTable.clearCopyCellArea()
@@ -1,16 +1,18 @@
1
1
  import XEUtils from 'xe-utils'
2
2
  import { VxeUI } from '../../../ui'
3
3
  import { getRefElem } from '../../src/util'
4
- import { browse, hasClass, getAbsolutePos, addClass, removeClass } from '../../../ui/src/dom'
4
+ import { hasClass, getAbsolutePos, addClass, removeClass } from '../../../ui/src/dom'
5
5
 
6
6
  import type { TableKeyboardPrivateMethods, VxeTableDefines } from '../../../../types'
7
7
 
8
8
  const { hooks } = VxeUI
9
9
 
10
+ const browseObj = XEUtils.browse()
11
+
10
12
  function getTargetOffset (target: any, container: any) {
11
13
  let offsetTop = 0
12
14
  let offsetLeft = 0
13
- const triggerCheckboxLabel = !browse.firefox && hasClass(target, 'vxe-checkbox--label')
15
+ const triggerCheckboxLabel = !browseObj.firefox && hasClass(target, 'vxe-checkbox--label')
14
16
  if (triggerCheckboxLabel) {
15
17
  const checkboxLabelStyle = getComputedStyle(target)
16
18
  offsetTop -= XEUtils.toNumber(checkboxLabelStyle.paddingTop)
@@ -109,9 +109,7 @@ hooks.add('tableValidatorModule', {
109
109
  const beginValidate = (rows: any, cols: VxeTableDefines.ColumnInfo[] | null, cb: any, isFull?: boolean): Promise<any> => {
110
110
  const validRest: any = {}
111
111
  const { editRules, treeConfig } = props
112
- const { editStore } = reactData
113
- const { afterFullData, pendingRowMaps } = internalData
114
- const { removeMaps } = editStore
112
+ const { afterFullData, pendingRowMaps, removeRowMaps } = internalData
115
113
  const treeOpts = computeTreeOpts.value
116
114
  const childrenField = treeOpts.children || treeOpts.childrenField
117
115
  const validOpts = computeValidOpts.value
@@ -147,7 +145,7 @@ hooks.add('tableValidatorModule', {
147
145
  const handleVaild = (row: any) => {
148
146
  const rowid = getRowid($xeTable, row)
149
147
  // 是否删除
150
- if (removeMaps[rowid]) {
148
+ if (removeRowMaps[rowid]) {
151
149
  return
152
150
  }
153
151
  // 是否标记删除
@@ -465,10 +465,13 @@ export default defineComponent({
465
465
  const rows: any[] = []
466
466
  const { handleGetRowId } = createHandleGetRowId($xeTable)
467
467
  tableData.forEach((row, $rowIndex) => {
468
- const trOn: Record<string, any> = {}
468
+ const rowid = handleGetRowId(row)
469
+ const rowRest = fullAllDataRowIdData[rowid] || {}
469
470
  let rowIndex = $rowIndex
470
- // 确保任何情况下 rowIndex 都精准指向真实 data 索引
471
- rowIndex = $xeTable.getRowIndex(row)
471
+ let rowLevel = 0
472
+ let seq: string | number = -1
473
+ let _rowIndex = -1
474
+ const trOn: Record<string, any> = {}
472
475
  // 当前行事件
473
476
  if (rowOpts.isHover || highlightHoverRow) {
474
477
  trOn.onMouseenter = (evnt: MouseEvent) => {
@@ -484,11 +487,6 @@ export default defineComponent({
484
487
  $xeTable.clearHoverRow()
485
488
  }
486
489
  }
487
- const rowid = handleGetRowId(row)
488
- const rowRest = fullAllDataRowIdData[rowid] || {}
489
- let rowLevel = 0
490
- let seq: string | number = -1
491
- let _rowIndex = 0
492
490
  if (rowRest) {
493
491
  rowLevel = rowRest.level
494
492
  if (treeConfig && transform && seqMode === 'increasing') {
@@ -496,6 +494,7 @@ export default defineComponent({
496
494
  } else {
497
495
  seq = rowRest.seq
498
496
  }
497
+ rowIndex = rowRest.index
499
498
  _rowIndex = rowRest._index
500
499
  }
501
500
  const params = { $table: $xeTable, seq, rowid, fixed: fixedType, type: renderType, level: rowLevel, row, rowIndex, $rowIndex, _rowIndex }