vxe-table 4.12.1 → 4.12.3
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/style.css +1 -1
- package/es/table/module/edit/hook.js +3 -2
- package/es/table/module/keyboard/hook.js +3 -2
- package/es/table/module/menu/hook.js +1 -1
- package/es/table/src/table.js +54 -30
- package/es/ui/index.js +1 -1
- package/es/ui/src/dom.js +0 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +56 -31
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/edit/hook.js +2 -1
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/keyboard/hook.js +2 -1
- package/lib/table/module/keyboard/hook.min.js +1 -1
- package/lib/table/module/menu/hook.js +1 -1
- package/lib/table/module/menu/hook.min.js +1 -1
- package/lib/table/src/table.js +49 -25
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +0 -2
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/table/module/edit/hook.ts +4 -2
- package/packages/table/module/keyboard/hook.ts +4 -2
- package/packages/table/module/menu/hook.ts +1 -1
- package/packages/table/src/table.ts +56 -30
- package/packages/ui/src/dom.ts +0 -2
- /package/es/{iconfont.1743045589885.ttf → iconfont.1743389164894.ttf} +0 -0
- /package/es/{iconfont.1743045589885.woff → iconfont.1743389164894.woff} +0 -0
- /package/es/{iconfont.1743045589885.woff2 → iconfont.1743389164894.woff2} +0 -0
- /package/lib/{iconfont.1743045589885.ttf → iconfont.1743389164894.ttf} +0 -0
- /package/lib/{iconfont.1743045589885.woff → iconfont.1743389164894.woff} +0 -0
- /package/lib/{iconfont.1743045589885.woff2 → iconfont.1743389164894.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,hooks,getI18n}=_ui.VxeUI,tableEditMethodKeys=["insert","insertAt","insertNextAt","insertChild","insertChildAt","insertChildNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];hooks.add("tableEditModule",{setupTable(x){let{props:m,reactData:R,internalData:C}=x,o=x.getRefMaps().refElem,{computeMouseOpts:c,computeEditOpts:h,computeCheckboxOpts:_,computeTreeOpts:E,computeValidOpts:n}=x.getComputeMaps(),I={},g={},b=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},a=(e,t)=>{var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},l=()=>{var e=o.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")},d=()=>{var{editStore:e,tableColumn:t}=R,l=h.value,e=e.actived;let{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>a(r,e)):a(r,o))},F=(e,t)=>{let{tableFullTreeData:i,afterFullData:n,fullDataRowIdData:d,fullAllDataRowIdData:u}=C;var l=E.value;let{rowField:s,parentField:c,mapChildrenField:g}=l,v=l.children||l.childrenField,w=t?"push":"unshift";e.forEach(l=>{let t=l[c];var r=(0,_util.getRowid)(x,l),o=t?_xeUtils.default.findTree(i,e=>t===e[s],{children:g}):null;if(o){var o=o.item,a=u[(0,_util.getRowid)(x,o)],a=a?a.level:0;let e=o[v],t=o[g];_xeUtils.default.isArray(e)||(e=o[v]=[]),_xeUtils.default.isArray(t)||(t=o[v]=[]),e[w](l),t[w](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:e,parent:o,level:a+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};d[r]=o,u[r]=o}else{"development"===process.env.NODE_ENV&&t&&(0,_log.warnLog)("vxe.error.unableInsert"),n[w](l),i[w](l);a={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};d[r]=a,u[r]=a}})},u=(t,l,d)=>{let o=m.treeConfig;var e=R.mergeList;let{tableFullTreeData:r,afterFullData:a,tableFullData:i,fullDataRowIdData:u,fullAllDataRowIdData:s,insertRowMaps:n}=C,c=E.value,{transform:g,rowField:v,mapChildrenField:w}=c,f=c.children||c.childrenField,p=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(x.defineField(t.map(e=>Object.assign(o&&g?{[w]:[],[f]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))o&&g?F(p,!1):(p.forEach(e=>{var t=(0,_util.getRowid)(x,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,s[t]=l,a.unshift(e),i.unshift(e)}),e.forEach(e=>{var t=e.row;0<t&&(e.row=t+p.length)}));else if(-1===l)o&&g?F(p,!0):(p.forEach(e=>{var t=(0,_util.getRowid)(x,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,treeIndex:-1,$index:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,s[t]=l,a.push(e),i.push(e)}),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>a.length&&(e.rowspan=l+p.length)}));else if(o&&g){let n=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:w});if(n){let o=n.parent,a=o?o[w]:r;t=s[(0,_util.getRowid)(x,o)];let i=t?t.level:0;if(p.forEach((e,t)=>{var l=(0,_util.getRowid)(x,e);"development"===process.env.NODE_ENV&&e[c.parentField]&&o&&e[c.parentField]!==o[v]&&(0,_log.errLog)("vxe.error.errProp",[c.parentField+"="+e[c.parentField],c.parentField+"="+o[v]]),o&&(e[c.parentField]=o[v]);let r=n.index+t;d&&(r+=1),a.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:a,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[l]=t,s[l]=t}),o){t=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:f});if(t){var h=t.items;let e=t.index;d&&(e+=1),h.splice(e,0,...p)}}}else"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.unableInsert"),F(p,!0)}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<a.length&&(r=l):r=x.findRowIndexOf(a,l),-1===(r=d?Math.min(a.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));a.splice(r,0,...p);t=x.findRowIndexOf(i,l);-1<t?i.splice(t+(d?1:0),0,...p):i.push(...p),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+p.length:t+l>r&&(e.rowspan=l+p.length)})}return p.forEach(e=>{var t=(0,_util.getRowid)(x,e);n[t]=e}),R.insertRowFlag++,x.cacheRowMap(!1),x.updateScrollYStatus(),x.handleTableData(o&&g),o&&g||x.updateAfterDataIndex(),x.updateFooter(),x.checkSelectionStatus(),R.scrollYLoad&&x.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(x.updateCellAreas(),x.recalculate())).then(()=>({row:p.length?p[p.length-1]:null,rows:p}))},r=(e,t,l,r)=>{var o=m.treeConfig;let{transform:a,rowField:i,parentField:n}=E.value;return o&&a?(_xeUtils.default.isArray(e)||(e=[e]),u(e.map(e=>Object.assign({},e,{[n]:t[i]})),l,r)):((0,_log.errLog)("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]}))},A=(e,t)=>{var l=R.editStore,{actived:l,focused:r}=l,{row:o,column:a}=l,i=n.value;if(o||a){if(t&&(0,_util.getRowid)(x,t)!==(0,_util.getRowid)(x,o))return(0,_vue.nextTick)();d(),l.args=null,l.row=null,l.column=null,x.updateFooter(),x.dispatchEvent("edit-closed",{row:o,rowIndex:x.getRowIndex(o),$rowIndex:x.getVMRowIndex(o),column:a,columnIndex:x.getColumnIndex(a),$columnIndex:x.getVMColumnIndex(a)},e||null)}return r.row=null,r.column=null,i.autoClear&&("full"!==i.msgMode||"obsolete"===getConfig().cellVaildMode)&&x.clearValidate?x.clearValidate():(0,_vue.nextTick)().then(()=>x.updateCellAreas())},i=(l,r,o,e)=>{let a=x.xeGrid;var{editConfig:t,mouseConfig:i}=m,{editStore:n,tableColumn:d}=R,u=h.value,s=u.mode,{actived:n,focused:c}=n;let{row:g,column:v}=l;var w=v.editRender,f=l.cell||x.getCellElement(g,v),p=u.beforeEditMethod||u.activeMethod;if((l.cell=f)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(w)&&!x.isPendingByRow(g)){if(n.row!==g||"cell"===s&&n.column!==v){let t="edit-disabled";if(!p||p(Object.assign(Object.assign({},l),{$table:x,$grid:a}))){i&&(x.clearSelected(),x.clearCellAreas)&&(x.clearCellAreas(),x.clearCopyCellArea()),x.closeTooltip(),n.column&&A(r),t="edit-activated",v.renderHeight=f.offsetHeight,n.args=l,n.row=g,n.column=v,"row"===s?d.forEach(e=>b(g,e)):b(g,v);let e=u.afterEditMethod;(0,_vue.nextTick)(()=>{o&&x.handleFocus(l,r),e&&e(Object.assign(Object.assign({},l),{$table:x,$grid:a}))})}x.dispatchEvent(t,{row:g,rowIndex:x.getRowIndex(g),$rowIndex:x.getVMRowIndex(g),column:v,columnIndex:x.getColumnIndex(v),$columnIndex:x.getVMColumnIndex(v)},r),"edit-activated"===t&&x.dispatchEvent("edit-actived",{row:g,rowIndex:x.getRowIndex(g),$rowIndex:x.getVMRowIndex(g),column:v,columnIndex:x.getColumnIndex(v),$columnIndex:x.getVMColumnIndex(v)},r)}else{t=n.column;i&&(x.clearSelected(),x.clearCellAreas)&&(x.clearCellAreas(),x.clearCopyCellArea()),t!==v&&(w=t.model,w.update&&(0,_util.setCellValue)(g,t,w.value),x.clearValidate)&&x.clearValidate(g,v),v.renderHeight=f.offsetHeight,n.args=l,n.column=v,e&&setTimeout(()=>{x.handleFocus(l,r)})}c.column=null,c.row=null,x.focus()}return(0,_vue.nextTick)()},s=(t,e,l)=>{var r=m.editConfig;let o=_xeUtils.default.isString(e)?x.getColumnByField(e):e;return t&&o&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(o.editRender)?Promise.resolve(l?x.scrollToRow(t,o):null).then(()=>{var e=x.getCellElement(t,o);return e&&(i({row:t,rowIndex:x.getRowIndex(t),column:o,columnIndex:x.getColumnIndex(o),cell:e,$table:x},null,l,l),C._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()};return I={insert(e){return u(e,null)},insertAt(e,t){return u(e,t)},insertNextAt(e,t){return u(e,t,!0)},insertChild(e,t){return r(e,t,null)},insertChildAt(e,t,l){return r(e,t,l)},insertChildNextAt(e,t,l){return r(e,t,l,!0)},remove(e){var t=m.treeConfig;let{mergeList:l,editStore:r}=R,{tableFullTreeData:o,selectCheckboxMaps:a,afterFullData:i,tableFullData:n,pendingRowMaps:d,insertRowMaps:u,removeRowMaps:s}=C;var c=_.value,g=E.value;let{transform:v,mapChildrenField:w}=g,f=g.children||g.childrenField;g=r.actived,c=c.checkField;let p=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=n,e.forEach(e=>{var t;x.isInsertByRow(e)||(t=(0,_util.getRowid)(x,e),s[t]=e)}),c||(e.forEach(e=>{e=(0,_util.getRowid)(x,e);a[e]&&delete a[e]}),R.updateCheckboxFlag++),n===e?(e=p=n.slice(0),C.tableFullData=[],C.afterFullData=[],x.clearMergeCells()):t&&v?e.forEach(e=>{let t=(0,_util.getRowid)(x,e);var l=_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(x,e),{children:w}),l=(l&&(l=l.items.splice(l.index,1),p.push(l[0])),_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(x,e),{children:f})),l=(l&&l.items.splice(l.index,1),x.findRowIndexOf(i,e));-1<l&&i.splice(l,1)}):e.forEach(e=>{var t=x.findRowIndexOf(n,e);-1<t&&(t=n.splice(t,1),p.push(t[0]));let r=x.findRowIndexOf(i,e);-1<r&&(l.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),i.splice(r,1))}),g.row&&-1<x.findRowIndexOf(e,g.row)&&I.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(x,e);u[e]&&delete u[e],d[e]&&delete d[e]}),R.removeRowFlag++,R.insertRowFlag++,R.pendingRowFlag++,x.updateFooter(),x.cacheRowMap(!1),x.handleTableData(t&&v),t&&v||x.updateAfterDataIndex(),x.checkSelectionStatus(),R.scrollYLoad&&x.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(x.updateCellAreas(),x.recalculate())).then(()=>({row:p.length?p[p.length-1]:null,rows:p}))},removeCheckboxRow(){return I.remove(x.getCheckboxRecords()).then(e=>(x.clearCheckboxRow(),e))},removeRadioRow(){var e=x.getRadioRecord();return I.remove(e||[]).then(e=>(x.clearRadioRow(),e))},removeCurrentRow(){var e=x.getCurrentRecord();return I.remove(e||[]).then(e=>(x.clearCurrentRow(),e))},getRecordset(){var e=I.getRemoveRecords(),t=x.getPendingRecords();let l=e.concat(t);var r=I.getUpdateRecords().filter(t=>!l.some(e=>x.eqRow(e,t)));return{insertRecords:I.getInsertRecords(),removeRecords:e,updateRecords:r,pendingRecords:t}},getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=C,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=C.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=m,l=C.tableFullData,r=E.value;return e?(d(),t?_xeUtils.default.filterTree(l,e=>x.isUpdateByRow(e),r):l.filter(e=>x.isUpdateByRow(e))):[]},getActiveRecord(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),x.getEditRecord()},getEditRecord(){var e=R.editStore,t=C.afterFullData,l=o.value,{args:e,row:r}=e.actived;return e&&-1<x.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},getSelectedCell(){var e=R.editStore,{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},clearActived(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),x.clearEdit(e)},clearEdit(e){return A(null,e)},clearSelected(){var e=R.editStore,e=e.selected;return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),x.isEditByRow(e)},isEditByRow(e){var t=R.editStore;return t.actived.row===e},setActiveRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),I.setEditRow(e)},setEditRow(e,t){var l=C.visibleColumn;let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender)),o=!1;return t&&(o=!0)!==t&&(r=_xeUtils.default.isString(t)?x.getColumnByField(t):t),s(e,r,o)},setActiveCell(e,t){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),I.setEditCell(e,t)},setEditCell(e,t){return s(e,t,!0)},setSelectCell(e,t){var l=R.tableData,r=h.value,t=_xeUtils.default.isString(t)?x.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=x.findRowIndexOf(l,e))&&t&&(l=x.getCellElement(e,t),e={row:e,rowIndex:r,column:t,columnIndex:x.getColumnIndex(t),cell:l},x.handleSelected(e,{})),(0,_vue.nextTick)()}},g={handleEdit(e,t){return i(e,t,!0,!0)},handleActived(e,t){return g.handleEdit(e,t)},handleClearEdit:A,handleFocus(r){var{row:o,column:a,cell:i}=r,n=a.editRender,d=h.value;if((0,_utils.isEnableConf)(n)){var u=renderer.get(n.name);let e=n.autofocus||n.autoFocus,t=n.autoSelect||n.autoselect,l;d.autoFocus&&(!e&&u&&(e=u.tableAutoFocus||u.tableAutofocus||u.autofocus),!t&&u&&(t=u.tableAutoSelect||u.autoselect),_xeUtils.default.isFunction(e)?l=e(r):e&&(l=!0===e?i.querySelector("input,textarea"):i.querySelector(e))&&l.focus()),l?t?l.select():_dom.browse.msie&&((n=l.createTextRange()).collapse(!1),n.select()):d.autoPos&&!a.fixed&&x.scrollToRow(o,a)}},handleSelected(e,t){var l=m.mouseConfig,r=R.editStore,o=c.value;let a=h.value,{actived:i,selected:n}=r,{row:d,column:u}=e,s=l&&o.selected;return!s||n.row===d&&n.column===u||(i.row!==d||"cell"===a.mode&&i.column!==u)&&(A(t),x.clearSelected(),x.clearCellAreas&&(x.clearCellAreas(),x.clearCopyCellArea()),n.args=e,n.row=d,n.column=u,s&&g.addCellSelectedClass(),x.focus(),t)&&x.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=R.editStore,e=e.selected,{row:e,column:t}=e;l(),e&&t&&(e=x.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},I),g)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
|
|
1
|
+
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,hooks,getI18n}=_ui.VxeUI,tableEditMethodKeys=["insert","insertAt","insertNextAt","insertChild","insertChildAt","insertChildNextAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getEditRecord","getActiveRecord","getSelectedCell","clearEdit","clearActived","clearSelected","isEditByRow","isActiveByRow","setEditRow","setActiveRow","setEditCell","setActiveCell","setSelectCell"];hooks.add("tableEditModule",{setupTable(h){let{props:m,reactData:R,internalData:C}=h,o=h.getRefMaps().refElem,{computeMouseOpts:c,computeEditOpts:x,computeCheckboxOpts:_,computeTreeOpts:E,computeValidOpts:n}=h.getComputeMaps(),s=_xeUtils.default.browse(),I={},g={},b=(e,t)=>{var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},a=(e,t)=>{var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},l=()=>{var e=o.value;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")},d=()=>{var{editStore:e,tableColumn:t}=R,l=x.value,e=e.actived;let{row:r,column:o}=e;(r||o)&&("row"===l.mode?t.forEach(e=>a(r,e)):a(r,o))},F=(e,t)=>{let{tableFullTreeData:i,afterFullData:n,fullDataRowIdData:d,fullAllDataRowIdData:u}=C;var l=E.value;let{rowField:s,parentField:c,mapChildrenField:g}=l,v=l.children||l.childrenField,w=t?"push":"unshift";e.forEach(l=>{let t=l[c];var r=(0,_util.getRowid)(h,l),o=t?_xeUtils.default.findTree(i,e=>t===e[s],{children:g}):null;if(o){var o=o.item,a=u[(0,_util.getRowid)(h,o)],a=a?a.level:0;let e=o[v],t=o[g];_xeUtils.default.isArray(e)||(e=o[v]=[]),_xeUtils.default.isArray(t)||(t=o[v]=[]),e[w](l),t[w](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:e,parent:o,level:a+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};d[r]=o,u[r]=o}else{"development"===process.env.NODE_ENV&&t&&(0,_log.warnLog)("vxe.error.unableInsert"),n[w](l),i[w](l);a={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};d[r]=a,u[r]=a}})},u=(t,l,d)=>{let o=m.treeConfig;var e=R.mergeList;let{tableFullTreeData:r,afterFullData:a,tableFullData:i,fullDataRowIdData:u,fullAllDataRowIdData:s,insertRowMaps:n}=C,c=E.value,{transform:g,rowField:v,mapChildrenField:w}=c,f=c.children||c.childrenField,p=(_xeUtils.default.isArray(t)||(t=[t]),(0,_vue.reactive)(h.defineField(t.map(e=>Object.assign(o&&g?{[w]:[],[f]:[]}:{},e)))));if(_xeUtils.default.eqNull(l))o&&g?F(p,!1):(p.forEach(e=>{var t=(0,_util.getRowid)(h,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,s[t]=l,a.unshift(e),i.unshift(e)}),e.forEach(e=>{var t=e.row;0<t&&(e.row=t+p.length)}));else if(-1===l)o&&g?F(p,!0):(p.forEach(e=>{var t=(0,_util.getRowid)(h,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,treeIndex:-1,$index:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,s[t]=l,a.push(e),i.push(e)}),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>a.length&&(e.rowspan=l+p.length)}));else if(o&&g){let n=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:w});if(n){let o=n.parent,a=o?o[w]:r;t=s[(0,_util.getRowid)(h,o)];let i=t?t.level:0;if(p.forEach((e,t)=>{var l=(0,_util.getRowid)(h,e);"development"===process.env.NODE_ENV&&e[c.parentField]&&o&&e[c.parentField]!==o[v]&&(0,_log.errLog)("vxe.error.errProp",[c.parentField+"="+e[c.parentField],c.parentField+"="+o[v]]),o&&(e[c.parentField]=o[v]);let r=n.index+t;d&&(r+=1),a.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:a,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[l]=t,s[l]=t}),o){t=_xeUtils.default.findTree(r,e=>l[v]===e[v],{children:f});if(t){var x=t.items;let e=t.index;d&&(e+=1),x.splice(e,0,...p)}}}else"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.unableInsert"),F(p,!0)}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<a.length&&(r=l):r=h.findRowIndexOf(a,l),-1===(r=d?Math.min(a.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));a.splice(r,0,...p);t=h.findRowIndexOf(i,l);-1<t?i.splice(t+(d?1:0),0,...p):i.push(...p),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+p.length:t+l>r&&(e.rowspan=l+p.length)})}return p.forEach(e=>{var t=(0,_util.getRowid)(h,e);n[t]=e}),R.insertRowFlag++,h.cacheRowMap(!1),h.updateScrollYStatus(),h.handleTableData(o&&g),o&&g||h.updateAfterDataIndex(),h.updateFooter(),h.checkSelectionStatus(),R.scrollYLoad&&h.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(h.updateCellAreas(),h.recalculate())).then(()=>({row:p.length?p[p.length-1]:null,rows:p}))},r=(e,t,l,r)=>{var o=m.treeConfig;let{transform:a,rowField:i,parentField:n}=E.value;return o&&a?(_xeUtils.default.isArray(e)||(e=[e]),u(e.map(e=>Object.assign({},e,{[n]:t[i]})),l,r)):((0,_log.errLog)("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]}))},A=(e,t)=>{var l=R.editStore,{actived:l,focused:r}=l,{row:o,column:a}=l,i=n.value;if(o||a){if(t&&(0,_util.getRowid)(h,t)!==(0,_util.getRowid)(h,o))return(0,_vue.nextTick)();d(),l.args=null,l.row=null,l.column=null,h.updateFooter(),h.dispatchEvent("edit-closed",{row:o,rowIndex:h.getRowIndex(o),$rowIndex:h.getVMRowIndex(o),column:a,columnIndex:h.getColumnIndex(a),$columnIndex:h.getVMColumnIndex(a)},e||null)}return r.row=null,r.column=null,i.autoClear&&("full"!==i.msgMode||"obsolete"===getConfig().cellVaildMode)&&h.clearValidate?h.clearValidate():(0,_vue.nextTick)().then(()=>h.updateCellAreas())},i=(l,r,o,e)=>{let a=h.xeGrid;var{editConfig:t,mouseConfig:i}=m,{editStore:n,tableColumn:d}=R,u=x.value,s=u.mode,{actived:n,focused:c}=n;let{row:g,column:v}=l;var w=v.editRender,f=l.cell||h.getCellElement(g,v),p=u.beforeEditMethod||u.activeMethod;if((l.cell=f)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(w)&&!h.isPendingByRow(g)){if(n.row!==g||"cell"===s&&n.column!==v){let t="edit-disabled";if(!p||p(Object.assign(Object.assign({},l),{$table:h,$grid:a}))){i&&(h.clearSelected(),h.clearCellAreas)&&(h.clearCellAreas(),h.clearCopyCellArea()),h.closeTooltip(),n.column&&A(r),t="edit-activated",v.renderHeight=f.offsetHeight,n.args=l,n.row=g,n.column=v,"row"===s?d.forEach(e=>b(g,e)):b(g,v);let e=u.afterEditMethod;(0,_vue.nextTick)(()=>{o&&h.handleFocus(l,r),e&&e(Object.assign(Object.assign({},l),{$table:h,$grid:a}))})}h.dispatchEvent(t,{row:g,rowIndex:h.getRowIndex(g),$rowIndex:h.getVMRowIndex(g),column:v,columnIndex:h.getColumnIndex(v),$columnIndex:h.getVMColumnIndex(v)},r),"edit-activated"===t&&h.dispatchEvent("edit-actived",{row:g,rowIndex:h.getRowIndex(g),$rowIndex:h.getVMRowIndex(g),column:v,columnIndex:h.getColumnIndex(v),$columnIndex:h.getVMColumnIndex(v)},r)}else{t=n.column;i&&(h.clearSelected(),h.clearCellAreas)&&(h.clearCellAreas(),h.clearCopyCellArea()),t!==v&&(w=t.model,w.update&&(0,_util.setCellValue)(g,t,w.value),h.clearValidate)&&h.clearValidate(g,v),v.renderHeight=f.offsetHeight,n.args=l,n.column=v,e&&setTimeout(()=>{h.handleFocus(l,r)})}c.column=null,c.row=null,h.focus()}return(0,_vue.nextTick)()},v=(t,e,l)=>{var r=m.editConfig;let o=_xeUtils.default.isString(e)?h.getColumnByField(e):e;return t&&o&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(o.editRender)?Promise.resolve(l?h.scrollToRow(t,o):null).then(()=>{var e=h.getCellElement(t,o);return e&&(i({row:t,rowIndex:h.getRowIndex(t),column:o,columnIndex:h.getColumnIndex(o),cell:e,$table:h},null,l,l),C._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()};return I={insert(e){return u(e,null)},insertAt(e,t){return u(e,t)},insertNextAt(e,t){return u(e,t,!0)},insertChild(e,t){return r(e,t,null)},insertChildAt(e,t,l){return r(e,t,l)},insertChildNextAt(e,t,l){return r(e,t,l,!0)},remove(e){var t=m.treeConfig;let{mergeList:l,editStore:r}=R,{tableFullTreeData:o,selectCheckboxMaps:a,afterFullData:i,tableFullData:n,pendingRowMaps:d,insertRowMaps:u,removeRowMaps:s}=C;var c=_.value,g=E.value;let{transform:v,mapChildrenField:w}=g,f=g.children||g.childrenField;g=r.actived,c=c.checkField;let p=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=n,e.forEach(e=>{var t;h.isInsertByRow(e)||(t=(0,_util.getRowid)(h,e),s[t]=e)}),c||(e.forEach(e=>{e=(0,_util.getRowid)(h,e);a[e]&&delete a[e]}),R.updateCheckboxFlag++),n===e?(e=p=n.slice(0),C.tableFullData=[],C.afterFullData=[],h.clearMergeCells()):t&&v?e.forEach(e=>{let t=(0,_util.getRowid)(h,e);var l=_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(h,e),{children:w}),l=(l&&(l=l.items.splice(l.index,1),p.push(l[0])),_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(h,e),{children:f})),l=(l&&l.items.splice(l.index,1),h.findRowIndexOf(i,e));-1<l&&i.splice(l,1)}):e.forEach(e=>{var t=h.findRowIndexOf(n,e);-1<t&&(t=n.splice(t,1),p.push(t[0]));let r=h.findRowIndexOf(i,e);-1<r&&(l.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),i.splice(r,1))}),g.row&&-1<h.findRowIndexOf(e,g.row)&&I.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(h,e);u[e]&&delete u[e],d[e]&&delete d[e]}),R.removeRowFlag++,R.insertRowFlag++,R.pendingRowFlag++,h.updateFooter(),h.cacheRowMap(!1),h.handleTableData(t&&v),t&&v||h.updateAfterDataIndex(),h.checkSelectionStatus(),R.scrollYLoad&&h.updateScrollYSpace(),(0,_vue.nextTick)().then(()=>(h.updateCellAreas(),h.recalculate())).then(()=>({row:p.length?p[p.length-1]:null,rows:p}))},removeCheckboxRow(){return I.remove(h.getCheckboxRecords()).then(e=>(h.clearCheckboxRow(),e))},removeRadioRow(){var e=h.getRadioRecord();return I.remove(e||[]).then(e=>(h.clearRadioRow(),e))},removeCurrentRow(){var e=h.getCurrentRecord();return I.remove(e||[]).then(e=>(h.clearCurrentRow(),e))},getRecordset(){var e=I.getRemoveRecords(),t=h.getPendingRecords();let l=e.concat(t);var r=I.getUpdateRecords().filter(t=>!l.some(e=>h.eqRow(e,t)));return{insertRecords:I.getInsertRecords(),removeRecords:e,updateRecords:r,pendingRecords:t}},getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=C,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},getRemoveRecords(){var e=C.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},getUpdateRecords(){var{keepSource:e,treeConfig:t}=m,l=C.tableFullData,r=E.value;return e?(d(),t?_xeUtils.default.filterTree(l,e=>h.isUpdateByRow(e),r):l.filter(e=>h.isUpdateByRow(e))):[]},getActiveRecord(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),h.getEditRecord()},getEditRecord(){var e=R.editStore,t=C.afterFullData,l=o.value,{args:e,row:r}=e.actived;return e&&-1<h.findRowIndexOf(t,r)&&l.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},e):null},getSelectedCell(){var e=R.editStore,{args:e,column:t}=e.selected;return e&&t?Object.assign({},e):null},clearActived(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),h.clearEdit(e)},clearEdit(e){return A(null,e)},clearSelected(){var e=R.editStore,e=e.selected;return e.row=null,e.column=null,l(),(0,_vue.nextTick)()},isActiveByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),h.isEditByRow(e)},isEditByRow(e){var t=R.editStore;return t.actived.row===e},setActiveRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),I.setEditRow(e)},setEditRow(e,t){var l=C.visibleColumn;let r=_xeUtils.default.find(l,e=>(0,_utils.isEnableConf)(e.editRender)),o=!1;return t&&(o=!0)!==t&&(r=_xeUtils.default.isString(t)?h.getColumnByField(t):t),v(e,r,o)},setActiveCell(e,t){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),I.setEditCell(e,t)},setEditCell(e,t){return v(e,t,!0)},setSelectCell(e,t){var l=R.tableData,r=x.value,t=_xeUtils.default.isString(t)?h.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=h.findRowIndexOf(l,e))&&t&&(l=h.getCellElement(e,t),e={row:e,rowIndex:r,column:t,columnIndex:h.getColumnIndex(t),cell:l},h.handleSelected(e,{})),(0,_vue.nextTick)()}},g={handleEdit(e,t){return i(e,t,!0,!0)},handleActived(e,t){return g.handleEdit(e,t)},handleClearEdit:A,handleFocus(r){var{row:o,column:a,cell:i}=r,n=a.editRender,d=x.value;if((0,_utils.isEnableConf)(n)){var u=renderer.get(n.name);let e=n.autofocus||n.autoFocus,t=n.autoSelect||n.autoselect,l;d.autoFocus&&(!e&&u&&(e=u.tableAutoFocus||u.tableAutofocus||u.autofocus),!t&&u&&(t=u.tableAutoSelect||u.autoselect),_xeUtils.default.isFunction(e)?l=e(r):e&&(l=!0===e?i.querySelector("input,textarea"):i.querySelector(e))&&l.focus()),l?t?l.select():s.msie&&((n=l.createTextRange()).collapse(!1),n.select()):d.autoPos&&!a.fixed&&h.scrollToRow(o,a)}},handleSelected(e,t){var l=m.mouseConfig,r=R.editStore,o=c.value;let a=x.value,{actived:i,selected:n}=r,{row:d,column:u}=e,s=l&&o.selected;return!s||n.row===d&&n.column===u||(i.row!==d||"cell"===a.mode&&i.column!==u)&&(A(t),h.clearSelected(),h.clearCellAreas&&(h.clearCellAreas(),h.clearCopyCellArea()),n.args=e,n.row=d,n.column=u,s&&g.addCellSelectedClass(),h.focus(),t)&&h.dispatchEvent("cell-selected",e,t),(0,_vue.nextTick)()},addCellSelectedClass(){var e=R.editStore,e=e.selected,{row:e,column:t}=e;l(),e&&t&&(e=h.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}},Object.assign(Object.assign({},I),g)},setupGrid(e){return e.extendTableMethods(tableEditMethodKeys)}});
|
|
@@ -8,10 +8,11 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
8
8
|
const {
|
|
9
9
|
hooks
|
|
10
10
|
} = _ui.VxeUI;
|
|
11
|
+
const browseObj = _xeUtils.default.browse();
|
|
11
12
|
function getTargetOffset(target, container) {
|
|
12
13
|
let offsetTop = 0;
|
|
13
14
|
let offsetLeft = 0;
|
|
14
|
-
const triggerCheckboxLabel = !
|
|
15
|
+
const triggerCheckboxLabel = !browseObj.firefox && (0, _dom.hasClass)(target, 'vxe-checkbox--label');
|
|
15
16
|
if (triggerCheckboxLabel) {
|
|
16
17
|
const checkboxLabelStyle = getComputedStyle(target);
|
|
17
18
|
offsetTop -= _xeUtils.default.toNumber(checkboxLabelStyle.paddingTop);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let hooks=_ui.VxeUI.hooks;function getTargetOffset(e,t){let l=0,o=0;var r,n,u=!
|
|
1
|
+
var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let hooks=_ui.VxeUI.hooks,browseObj=_xeUtils.default.browse();function getTargetOffset(e,t){let l=0,o=0;var r,n,u=!browseObj.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(u&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,u&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}hooks.add("tableKeyboardModule",{setupTable(M){let{props:S,reactData:y,internalData:O}=M,D=M.getRefMaps().refElem,{computeEditOpts:v,computeCheckboxOpts:a,computeMouseOpts:s,computeTreeOpts:c,computeRowOpts:H,computeColumnOpts:p,computeCellOpts:V,computeDefaultRowHeight:F,computeCurrentRowOpts:C,computeCurrentColumnOpts:w}=M.getComputeMaps();let d=(e,k)=>{var t=O.elemStore,l=(0,_util.getRefElem)(t["main-body-scroll"]),o=(0,_util.getRefElem)(t["left-body-scroll"]),t=(0,_util.getRefElem)(t["right-body-scroll"]),{column:r,cell:n}=k;if("checkbox"===r.type){let _=l;if(o&&"left"===r.fixed?_=o:t&&"right"===r.fixed&&(_=t),_){let t=D.value,i=e.clientX,a=e.clientY,s=_.querySelector(".vxe-table--checkbox-range"),c=n.parentElement,d=M.getCheckboxRecords(),g=[],h=1;l=getTargetOffset(e.target,_);let m=l.offsetTop+e.offsetY,f=l.offsetLeft+e.offsetX,v=_.scrollTop,u=c.offsetHeight,p=c.getBoundingClientRect(),C=a-p.y,w=null,x=!1,b=1,R=(e,t)=>{M.dispatchEvent("checkbox-range-"+e,{records:M.getCheckboxRecords(),reserves:M.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-i,l=l-a+(_.scrollTop-v);let o=Math.abs(l),r=Math.abs(t),n=m,u=f;l<h?(n+=l)<h&&(n=h,o=m):o=Math.min(o,_.scrollHeight-m-h),t<h?(u+=t,r>f&&(u=h,r=f)):r=Math.min(r,_.clientWidth-f-h),s.style.height=o+"px",s.style.width=r+"px",s.style.left=u+"px",s.style.top=n+"px",s.style.display="block";t=((e,t,l,o,r)=>{var n=S.showOverflow,{fullAllDataRowIdData:u,isResizeCellHeight:i}=O,a=H.value,s=V.value,c=F.value,e=e.row;let d=0,g=[],h=0;var m=0<r,f=y.scrollYLoad,v=O.afterFullData;if(h=m?o+r:l.height-o+Math.abs(r),f){l=M.getVTRowIndex(e);if(!(i||s.height||a.height)&&n)g=m?v.slice(l,l+Math.ceil(h/c)):v.slice(l-Math.floor(h/c),l+1);else if(m)for(let e=l;e<v.length;e++){var p=v[e],C=u[M.getRowid(p)]||{};if(d+=C.resizeHeight||s.height||a.height||C.height||c,g.push(p),d>h)return g}else for(let e=l;0<=e;e--){var w=v[e],x=u[M.getRowid(w)]||{};if(d+=x.resizeHeight||s.height||a.height||x.height||c,g.push(w),d>h)return g}}else for(var b=m?"next":"previous";t&&d<h;){var R=M.getRowNode(t);R&&(g.push(R.item),d+=t.offsetHeight,t=t[b+"ElementSibling"])}return g})(k,c,p,C,l<h?-o:o);10<o&&t.length!==g.length&&(g=t,e.ctrlKey?t.forEach(e=>{M.handleBatchSelectRows([e],-1===d.indexOf(e))}):(M.setAllCheckboxRow(!1),M.handleCheckedCheckboxRow(t,!0,!1)),R("change",e))},I=()=>{clearTimeout(w),w=null},E=n=>{I(),w=setTimeout(()=>{var e,t,l,o,r;w&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=_,r=Math.ceil(50*b/u),x?t+l<o?(M.scrollTo(e,t+r),E(n),T(n)):I():t?(M.scrollTo(e,t-r),E(n),T(n)):I())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(_).boundingTop;t<l?(x=!1,b=l-t,w||E(e)):t>l+_.clientHeight?(x=!0,b=t-l-_.clientHeight,w||E(e)):w&&I(),T(e)},document.onmouseup=e=>{I(),(0,_dom.removeClass)(t,"drag--range"),s.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,R("end",e)},R("start",e)}}};let g=(e,t,l,o,r,n)=>{var{afterFullData:u,visibleColumn:i}=O;let a=Object.assign({},t);var t=M.getVTRowIndex(a.row),s=M.getVTColumnIndex(a.column);return e.preventDefault(),o&&0<t?(a.rowIndex=t-1,a.row=u[a.rowIndex]):n&&t<u.length-1?(a.rowIndex=t+1,a.row=u[a.rowIndex]):l&&s?(a.columnIndex=s-1,a.column=i[a.columnIndex]):r&&s<i.length-1&&(a.columnIndex=s+1,a.column=i[a.columnIndex]),M.scrollToRow(a.row,a.column).then(()=>{a.cell=M.getCellElement(a.row,a.column),M.handleSelected(a,e)}),a};return{moveTabSelected(e,t,l){var o=S.editConfig,{afterFullData:r,visibleColumn:n}=O,u=v.value,i=H.value,a=C.value,s=p.value,c=w.value;let d,g,h,m=Object.assign({},e);var e=M.getVTRowIndex(m.row),f=M.getVTColumnIndex(m.column),t=(l.preventDefault(),t?f<=0?0<e&&(g=e-1,d=r[g],h=n.length-1):h=f-1:f>=n.length-1?e<r.length-1&&(g=e+1,d=r[g],h=0):h=f+1,n[h]);t&&(d?(m.rowIndex=g,m.row=d):m.rowIndex=e,m.columnIndex=h,m.column=t,m.cell=M.getCellElement(m.row,m.column),i.isCurrent&&a.isFollowSelected&&M.triggerCurrentRowEvent(l,m),s.isCurrent&&c.isFollowSelected&&M.triggerCurrentColumnEvent(l,m),o?"click"!==u.trigger&&"dblclick"!==u.trigger||("row"===u.mode?M.handleEdit(m,l):M.scrollToRow(m.row,m.column).then(()=>{M.handleSelected(m,l)})):M.scrollToRow(m.row,m.column).then(()=>{M.handleSelected(m,l)}))},moveCurrentRow(e,t,l){var o=S.treeConfig;let r=y.currentRow;var n=O.afterFullData,u=c.value,u=u.children||u.childrenField;let i;if(r?o?({index:o,items:u}=_xeUtils.default.findTree(n,e=>e===r,{children:u}),e&&0<o?i=u[o-1]:t&&o<u.length-1&&(i=u[o+1])):(u=M.getVTRowIndex(r),e&&0<u?i=n[u-1]:t&&u<n.length-1&&(i=n[u+1])):i=n[0],i){l.preventDefault();let e={$table:M,row:i,rowIndex:M.getRowIndex(i),$rowIndex:M.getVMRowIndex(i)};M.scrollToRow(i).then(()=>M.triggerCurrentRowEvent(l,e))}},moveCurrentColumn(e,t,l){var o=y.currentColumn,r=O.visibleColumn;let n=null;if(o?(o=M.getVTColumnIndex(o),e&&0<o?n=r[o-1]:t&&o<r.length-1&&(n=r[o+1])):n=r[0],n){l.preventDefault();let e={$table:M,column:n,columnIndex:M.getColumnIndex(n),$columnIndex:M.getVMColumnIndex(n)};M.scrollToColumn(n).then(()=>M.triggerCurrentColumnEvent(l,e))}},moveArrowSelected(e,t,l,o,r,n){var{highlightCurrentRow:u,highlightCurrentColumn:i}=S,a=H.value,s=p.value;g(n,e,t,l,o,r),(l||r)&&(a.isCurrent||u)&&M.moveCurrentRow(l,r,n),(t||o)&&(s.isCurrent||i)&&M.moveCurrentColumn(t,o,n)},moveEnterSelected(e,t,l,o,r,n){var u=H.value,i=C.value,a=p.value,s=w.value,e=g(n,e,t,l,o,r);u.isCurrent&&i.isFollowSelected&&M.triggerCurrentRowEvent(n,e),a.isCurrent&&s.isFollowSelected&&M.triggerCurrentColumnEvent(n,e)},moveSelected(e,t,l,o,r,n){g(n,e,t,l,o,r)},handleCellMousedownEvent:(e,t)=>{var{editConfig:l,checkboxConfig:o,mouseConfig:r}=S,n=a.value,u=s.value,i=v.value;if(r&&u.area&&M.handleCellAreaMousedownEvent)return M.handleCellAreaMousedownEvent(e,t);o&&n.range&&d(e,t),r&&u.selected&&(l&&"cell"!==i.mode||M.handleSelected(t,e))}}}});
|
|
@@ -172,7 +172,7 @@ hooks.add('tableMenuModule', {
|
|
|
172
172
|
}
|
|
173
173
|
ctxMenuStore[property] = selectItem || menuList[0];
|
|
174
174
|
} else if (ctxMenuStore[property] && (globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ENTER) || globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.SPACEBAR))) {
|
|
175
|
-
|
|
175
|
+
$xeTable.ctxMenuLinkEvent(evnt, ctxMenuStore[property]);
|
|
176
176
|
}
|
|
177
177
|
},
|
|
178
178
|
handleOpenMenuEvent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{menus,hooks,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI,tableMenuMethodKeys=["closeMenu"];hooks.add("tableMenuModule",{setupTable(b){let{xID:m,props:p,reactData:M,internalData:E}=b,{refElem:x,refTableFilter:_,refTableMenu:C}=b.getRefMaps(),{computeMouseOpts:T,computeIsMenu:t,computeMenuOpts:y}=b.getComputeMaps(),w
|
|
1
|
+
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{menus,hooks,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI,tableMenuMethodKeys=["closeMenu"];hooks.add("tableMenuModule",{setupTable(b){let{xID:m,props:p,reactData:M,internalData:E}=b,{refElem:x,refTableFilter:_,refTableMenu:C}=b.getRefMaps(),{computeMouseOpts:T,computeIsMenu:t,computeMenuOpts:y}=b.getComputeMaps(),w;var e;let L=(l,n,v)=>{let f=M.ctxMenuStore;var o=t.value,e=y.value,n=e[n];let i=e.visibleMethod;if(n){let{options:t,disabled:e}=n;e?l.preventDefault():o&&t&&t.length&&(v.options=t,b.preventEvent(l,"event.showMenu",v,()=>{if(!i||i(v)){l.preventDefault(),b.updateZindex();let{scrollTop:o,scrollLeft:i,visibleHeight:u,visibleWidth:s}=(0,_dom.getDomNode)(),r=l.clientY+o,a=l.clientX+i,n=()=>{E._currMenuParams=v,Object.assign(f,{visible:!0,list:t,selected:null,selectChild:null,showChild:!1,style:{zIndex:E.tZindex,top:r+"px",left:a+"px"}}),(0,_vue.nextTick)(()=>{var e=C.value.getRefMaps().refElem.value,t=e.clientHeight,l=e.clientWidth,{boundingTop:e,boundingLeft:n}=(0,_dom.getAbsolutePos)(e),e=e+t-u,n=n+l-s;-10<e&&(f.style.top=Math.max(o+2,r-t-2)+"px"),-10<n&&(f.style.left=Math.max(i+2,a-l-2)+"px")})},{keyboard:e,row:d,column:c}=v;e&&d&&c?b.scrollToRow(d,c).then(()=>{var e,t,l=b.getCellElement(d,c);l&&({boundingTop:e,boundingLeft:t}=(0,_dom.getAbsolutePos)(l),r=e+o+Math.floor(l.offsetHeight/2),a=t+i+Math.floor(l.offsetWidth/2)),n()}):n()}else w.closeMenu()}))}b.closeFilter()};return w={closeMenu(){return Object.assign(M.ctxMenuStore,{visible:!1,selected:null,selectChild:null,showChild:!1}),(0,_vue.nextTick)()}},e={moveCtxMenu(e,t,l,n,o,i){let u;var s=_xeUtils.default.findIndexOf(i,e=>t[l]===e);if(n)o&&(0,_utils.hasChildrenList)(t.selected)?t.showChild=!0:(t.showChild=!1,t.selectChild=null);else if(globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ARROW_UP)){for(let e=s-1;0<=e;e--)if(!1!==i[e].visible){u=i[e];break}t[l]=u||i[i.length-1]}else if(globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ARROW_DOWN)){for(let e=s+1;e<i.length;e++)if(!1!==i[e].visible){u=i[e];break}t[l]=u||i[0]}else t[l]&&(globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ENTER)||globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.SPACEBAR))&&b.ctxMenuLinkEvent(e,t[l])},handleOpenMenuEvent:L,handleGlobalContextmenuEvent(t){var{mouseConfig:e,menuConfig:l}=p,{editStore:n,ctxMenuStore:o}=M,i=E.visibleColumn,u=_.value,s=C.value,r=T.value,a=y.value,d=x.value,n=n.selected,c=["header","body","footer"];if((0,_utils.isEnableConf)(l)){if(o.visible&&s&&(0,_dom.getEventTargetNode)(t,s.getRefMaps().refElem.value).flag)return void t.preventDefault();if(E._keyCtx){l="body",o={type:l,$table:b,keyboard:!0,columns:i.slice(0),$event:t};if(e&&r.area){s=b.getActiveCellArea();if(s&&s.row&&s.column)return o.row=s.row,o.column=s.column,void L(t,l,o)}else if(e&&r.selected&&n.row&&n.column)return o.row=n.row,o.column=n.column,void L(t,l,o)}for(let e=0;e<c.length;e++){var v=c[e],f=(0,_dom.getEventTargetNode)(t,d,`vxe-${v}--column`,e=>e.parentNode.parentNode.parentNode.getAttribute("xid")===m),g={type:v,$table:b,columns:i.slice(0),$event:t};if(f.flag){var f=f.targetElem,h=b.getColumnNode(f),h=h?h.item:null;let e=v+"-";h&&Object.assign(g,{column:h,columnIndex:b.getColumnIndex(h),cell:f}),"body"===v&&(f=(h=b.getRowNode(f.parentNode))?h.item:null,e="",f)&&(g.row=f,g.rowIndex=b.getRowIndex(f));h=e+"cell-menu";return L(t,v,g),void b.dispatchEvent(h,g,t)}if((0,_dom.getEventTargetNode)(t,d,`vxe-table--${v}-wrapper`,e=>e.getAttribute("xid")===m).flag)return void("cell"===a.trigger?t.preventDefault():L(t,v,g))}}u&&!(0,_dom.getEventTargetNode)(t,u.$el).flag&&b.closeFilter(),w.closeMenu()},ctxMenuMouseoverEvent(e,t,l){let a=e.currentTarget;var n=M.ctxMenuStore;e.preventDefault(),e.stopPropagation(),n.selected=t,(n.selectChild=l)||(n.showChild=(0,_utils.hasChildrenList)(t),n.showChild&&(0,_vue.nextTick)(()=>{var o=a.nextElementSibling;if(o){var{boundingTop:i,boundingLeft:u,visibleHeight:s,visibleWidth:r}=(0,_dom.getAbsolutePos)(a),i=i+a.offsetHeight;let e="",t="",l=(u+a.offsetWidth+o.offsetWidth>r-10&&(e="auto",t=a.offsetWidth+"px"),""),n="";i+o.offsetHeight>s-10&&(l="auto",n="0"),o.style.left=e,o.style.right=t,o.style.top=l,o.style.bottom=n}}))},ctxMenuMouseoutEvent(e,t){var l=M.ctxMenuStore;t.children||(l.selected=null),l.selectChild=null},ctxMenuLinkEvent(e,t){var l,n=b.xeGrid;t.disabled||!t.code&&t.children&&t.children.length||(l=menus.get(t.code),t=Object.assign({},E._currMenuParams,{menu:t,$table:b,$grid:n,$event:e}),(n=l?l.tableMenuMethod||l.menuMethod:null)&&n(t,e),b.dispatchEvent("menu-click",t,e),w.closeMenu())}},Object.assign(Object.assign({},w),e)},setupGrid(e){return e.extendTableMethods(tableMenuMethodKeys)}});
|
package/lib/table/src/table.js
CHANGED
|
@@ -53,6 +53,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
53
53
|
emit
|
|
54
54
|
} = context;
|
|
55
55
|
const xID = _xeUtils.default.uniqueId();
|
|
56
|
+
const browseObj = _xeUtils.default.browse();
|
|
56
57
|
// 使用已安装的组件,如果未安装则不渲染
|
|
57
58
|
const VxeUILoadingComponent = _ui.VxeUI.getComponent('VxeLoading');
|
|
58
59
|
const VxeUITooltipComponent = _ui.VxeUI.getComponent('VxeTooltip');
|
|
@@ -2195,11 +2196,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
2195
2196
|
}
|
|
2196
2197
|
if (xLeftCornerEl) {
|
|
2197
2198
|
xLeftCornerEl.style.width = scrollbarXToTop ? `${osbWidth}px` : '';
|
|
2198
|
-
xLeftCornerEl.style.display = scrollbarXToTop ?
|
|
2199
|
+
xLeftCornerEl.style.display = scrollbarXToTop ? overflowX && osbHeight ? 'block' : '' : '';
|
|
2199
2200
|
}
|
|
2200
2201
|
if (xRightCornerEl) {
|
|
2201
2202
|
xRightCornerEl.style.width = scrollbarXToTop ? '' : `${osbWidth}px`;
|
|
2202
|
-
xRightCornerEl.style.display = scrollbarXToTop ? '' :
|
|
2203
|
+
xRightCornerEl.style.display = scrollbarXToTop ? '' : overflowX && osbHeight ? 'block' : '';
|
|
2203
2204
|
}
|
|
2204
2205
|
const scrollYVirtualEl = refScrollYVirtualElem.value;
|
|
2205
2206
|
if (scrollYVirtualEl) {
|
|
@@ -2210,7 +2211,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
2210
2211
|
const yTopCornerEl = refScrollYTopCornerElem.value;
|
|
2211
2212
|
if (yTopCornerEl) {
|
|
2212
2213
|
yTopCornerEl.style.height = `${headerHeight}px`;
|
|
2213
|
-
yTopCornerEl.style.display = headerHeight ? 'block' : '';
|
|
2214
|
+
yTopCornerEl.style.display = overflowY && headerHeight ? 'block' : '';
|
|
2214
2215
|
}
|
|
2215
2216
|
const yWrapperEl = refScrollYWrapperElem.value;
|
|
2216
2217
|
if (yWrapperEl) {
|
|
@@ -2221,7 +2222,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
2221
2222
|
if (yBottomCornerEl) {
|
|
2222
2223
|
yBottomCornerEl.style.height = `${footerHeight}px`;
|
|
2223
2224
|
yBottomCornerEl.style.top = `${headerHeight + bodyHeight}px`;
|
|
2224
|
-
yBottomCornerEl.style.display = footerHeight ? 'block' : '';
|
|
2225
|
+
yBottomCornerEl.style.display = overflowY && footerHeight ? 'block' : '';
|
|
2225
2226
|
}
|
|
2226
2227
|
const rowExpandEl = refRowExpandElem.value;
|
|
2227
2228
|
if (rowExpandEl) {
|
|
@@ -2335,7 +2336,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
2335
2336
|
if (tableElem) {
|
|
2336
2337
|
tableElem.style.width = tWidth ? `${tWidth}px` : '';
|
|
2337
2338
|
// 兼容性处理
|
|
2338
|
-
tableElem.style.paddingRight = osbWidth && fixedType && (
|
|
2339
|
+
tableElem.style.paddingRight = osbWidth && fixedType && (browseObj['-moz'] || browseObj.safari) ? `${osbWidth}px` : '';
|
|
2339
2340
|
}
|
|
2340
2341
|
const emptyBlockElem = (0, _util.getRefElem)(elemStore[`${name}-${layout}-emptyBlock`]);
|
|
2341
2342
|
if (emptyBlockElem) {
|
|
@@ -7078,13 +7079,14 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7078
7079
|
const handleGlobalKeydownEvent = evnt => {
|
|
7079
7080
|
// 该行为只对当前激活的表格有效
|
|
7080
7081
|
if (internalData.isActivated) {
|
|
7081
|
-
|
|
7082
|
+
$xeTable.preventEvent(evnt, 'event.keydown', null, () => {
|
|
7082
7083
|
const {
|
|
7083
7084
|
mouseConfig,
|
|
7084
7085
|
keyboardConfig,
|
|
7085
7086
|
treeConfig,
|
|
7086
7087
|
editConfig,
|
|
7087
|
-
highlightCurrentRow
|
|
7088
|
+
highlightCurrentRow,
|
|
7089
|
+
highlightCurrentColumn
|
|
7088
7090
|
} = props;
|
|
7089
7091
|
const {
|
|
7090
7092
|
ctxMenuStore,
|
|
@@ -7102,6 +7104,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7102
7104
|
const treeOpts = computeTreeOpts.value;
|
|
7103
7105
|
const menuList = computeMenuList.value;
|
|
7104
7106
|
const rowOpts = computeRowOpts.value;
|
|
7107
|
+
const columnOpts = computeColumnOpts.value;
|
|
7105
7108
|
const {
|
|
7106
7109
|
selected,
|
|
7107
7110
|
actived
|
|
@@ -7143,7 +7146,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7143
7146
|
if ($xeTable.closeMenu) {
|
|
7144
7147
|
$xeTable.closeMenu();
|
|
7145
7148
|
}
|
|
7146
|
-
|
|
7149
|
+
$xeTable.closeFilter();
|
|
7147
7150
|
if (keyboardConfig && keyboardOpts.isEsc) {
|
|
7148
7151
|
// 如果是激活编辑状态,则取消编辑
|
|
7149
7152
|
if (actived.row) {
|
|
@@ -7257,18 +7260,27 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7257
7260
|
const params = {
|
|
7258
7261
|
$table: $xeTable,
|
|
7259
7262
|
row: targetRow,
|
|
7260
|
-
rowIndex:
|
|
7261
|
-
$rowIndex:
|
|
7263
|
+
rowIndex: $xeTable.getRowIndex(targetRow),
|
|
7264
|
+
$rowIndex: $xeTable.getVMRowIndex(targetRow)
|
|
7262
7265
|
};
|
|
7263
|
-
|
|
7266
|
+
$xeTable.setTreeExpand(currentRow, true).then(() => $xeTable.scrollToRow(targetRow)).then(() => $xeTable.triggerCurrentRowEvent(evnt, params));
|
|
7264
7267
|
}
|
|
7265
7268
|
}
|
|
7266
7269
|
}
|
|
7267
7270
|
} else if (operArrow && keyboardConfig && keyboardOpts.isArrow) {
|
|
7268
7271
|
if (!isEditStatus) {
|
|
7269
7272
|
// 如果按下了方向键
|
|
7270
|
-
if (selected.row && selected.column) {
|
|
7273
|
+
if (mouseOpts.selected && selected.row && selected.column) {
|
|
7271
7274
|
$xeTable.moveArrowSelected(selected.args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt);
|
|
7275
|
+
} else {
|
|
7276
|
+
// 当前行按键上下移动
|
|
7277
|
+
if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
|
|
7278
|
+
$xeTable.moveCurrentRow(isUpArrow, isDwArrow, evnt);
|
|
7279
|
+
}
|
|
7280
|
+
// 当前行按键左右移动
|
|
7281
|
+
if ((isLeftArrow || isRightArrow) && (columnOpts.isCurrent || highlightCurrentColumn)) {
|
|
7282
|
+
$xeTable.moveCurrentColumn(isLeftArrow, isRightArrow, evnt);
|
|
7283
|
+
}
|
|
7272
7284
|
}
|
|
7273
7285
|
}
|
|
7274
7286
|
} else if (isTab && keyboardConfig && keyboardOpts.isTab) {
|
|
@@ -7313,9 +7325,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7313
7325
|
if (keyboardOpts.isDel && (0, _utils.isEnableConf)(editConfig) && (selected.row || selected.column)) {
|
|
7314
7326
|
const params = {
|
|
7315
7327
|
row: selected.row,
|
|
7316
|
-
rowIndex:
|
|
7328
|
+
rowIndex: $xeTable.getRowIndex(selected.row),
|
|
7317
7329
|
column: selected.column,
|
|
7318
|
-
columnIndex:
|
|
7330
|
+
columnIndex: $xeTable.getColumnIndex(selected.column),
|
|
7319
7331
|
$table: $xeTable,
|
|
7320
7332
|
$grid: $xeGrid
|
|
7321
7333
|
};
|
|
@@ -7342,12 +7354,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7342
7354
|
evnt.preventDefault();
|
|
7343
7355
|
const params = {
|
|
7344
7356
|
row: parentRow,
|
|
7345
|
-
rowIndex:
|
|
7346
|
-
$rowIndex:
|
|
7357
|
+
rowIndex: $xeTable.getRowIndex(parentRow),
|
|
7358
|
+
$rowIndex: $xeTable.getVMRowIndex(parentRow),
|
|
7347
7359
|
$table: $xeTable,
|
|
7348
7360
|
$grid: $xeGrid
|
|
7349
7361
|
};
|
|
7350
|
-
|
|
7362
|
+
$xeTable.setTreeExpand(parentRow, false).then(() => $xeTable.scrollToRow(parentRow)).then(() => $xeTable.triggerCurrentRowEvent(evnt, params));
|
|
7351
7363
|
}
|
|
7352
7364
|
} else if (keyboardConfig && (0, _utils.isEnableConf)(editConfig) && keyboardOpts.isEdit && !hasCtrlKey && !hasMetaKey && (isSpacebar || keyCode >= 48 && keyCode <= 57 || keyCode >= 65 && keyCode <= 90 || keyCode >= 96 && keyCode <= 111 || keyCode >= 186 && keyCode <= 192 || keyCode >= 219 && keyCode <= 222)) {
|
|
7353
7365
|
const {
|
|
@@ -7363,9 +7375,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7363
7375
|
const beforeEditMethod = editOpts.beforeEditMethod || editOpts.activeMethod;
|
|
7364
7376
|
const params = {
|
|
7365
7377
|
row: selected.row,
|
|
7366
|
-
rowIndex:
|
|
7378
|
+
rowIndex: $xeTable.getRowIndex(selected.row),
|
|
7367
7379
|
column: selected.column,
|
|
7368
|
-
columnIndex:
|
|
7380
|
+
columnIndex: $xeTable.getColumnIndex(selected.column),
|
|
7369
7381
|
$table: $xeTable,
|
|
7370
7382
|
$grid: $xeGrid
|
|
7371
7383
|
};
|
|
@@ -7693,7 +7705,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7693
7705
|
* @param {Event} evnt 事件
|
|
7694
7706
|
* @param {Row} row 行对象
|
|
7695
7707
|
*/
|
|
7696
|
-
const handleTooltip = (evnt, tdEl, overflowElem, params) => {
|
|
7708
|
+
const handleTooltip = (evnt, tdEl, overflowElem, tipElem, params) => {
|
|
7697
7709
|
const tipOverEl = overflowElem || tdEl;
|
|
7698
7710
|
if (!tipOverEl) {
|
|
7699
7711
|
return (0, _vue.nextTick)();
|
|
@@ -7714,7 +7726,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7714
7726
|
const customContent = contentMethod ? contentMethod(params) : null;
|
|
7715
7727
|
const useCustom = contentMethod && !_xeUtils.default.eqNull(customContent);
|
|
7716
7728
|
const content = useCustom ? customContent : _xeUtils.default.toString(column.type === 'html' ? tipOverEl.innerText : tipOverEl.textContent).trim();
|
|
7717
|
-
|
|
7729
|
+
const isOver = tipOverEl.scrollWidth > tipOverEl.clientWidth;
|
|
7730
|
+
if (content && (showAll || useCustom || isOver)) {
|
|
7718
7731
|
Object.assign(tooltipStore, {
|
|
7719
7732
|
row,
|
|
7720
7733
|
column,
|
|
@@ -7724,7 +7737,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
7724
7737
|
(0, _vue.nextTick)(() => {
|
|
7725
7738
|
const $tooltip = refTooltip.value;
|
|
7726
7739
|
if ($tooltip && $tooltip.open) {
|
|
7727
|
-
$tooltip.open(tipOverEl, (0, _utils.formatText)(content));
|
|
7740
|
+
$tooltip.open(isOver ? tipOverEl : tipElem, (0, _utils.formatText)(content));
|
|
7728
7741
|
}
|
|
7729
7742
|
});
|
|
7730
7743
|
}
|
|
@@ -8850,7 +8863,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
8850
8863
|
return;
|
|
8851
8864
|
}
|
|
8852
8865
|
if (tooltipStore.column !== column || !tooltipStore.visible) {
|
|
8853
|
-
handleTooltip(evnt, thEl, thEl.querySelector('.vxe-cell--title') || cellEl, params);
|
|
8866
|
+
handleTooltip(evnt, thEl, thEl.querySelector('.vxe-cell--wrapper'), thEl.querySelector('.vxe-cell--title') || cellEl, params);
|
|
8854
8867
|
}
|
|
8855
8868
|
},
|
|
8856
8869
|
/**
|
|
@@ -8888,7 +8901,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
8888
8901
|
}
|
|
8889
8902
|
}
|
|
8890
8903
|
if (tooltipStore.column !== column || tooltipStore.row !== row || !tooltipStore.visible) {
|
|
8891
|
-
handleTooltip(evnt, tdEl, tdEl.querySelector('.vxe-cell--label') || tdEl.querySelector('.vxe-cell--wrapper'), params);
|
|
8904
|
+
handleTooltip(evnt, tdEl, tdEl.querySelector('.vxe-cell--wrapper'), tdEl.querySelector('.vxe-cell--label') || tdEl.querySelector('.vxe-cell--wrapper'), params);
|
|
8892
8905
|
}
|
|
8893
8906
|
},
|
|
8894
8907
|
/**
|
|
@@ -8904,7 +8917,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
8904
8917
|
const tdEl = evnt.currentTarget;
|
|
8905
8918
|
handleTargetEnterEvent(tooltipStore.column !== column || !!tooltipStore.row);
|
|
8906
8919
|
if (tooltipStore.column !== column || !tooltipStore.visible) {
|
|
8907
|
-
handleTooltip(evnt, tdEl, tdEl.querySelector('.vxe-cell--label') || tdEl.querySelector('.vxe-cell--wrapper'), params);
|
|
8920
|
+
handleTooltip(evnt, tdEl, tdEl.querySelector('.vxe-cell--wrapper'), tdEl.querySelector('.vxe-cell--label') || tdEl.querySelector('.vxe-cell--wrapper'), params);
|
|
8908
8921
|
}
|
|
8909
8922
|
},
|
|
8910
8923
|
handleTargetLeaveEvent() {
|
|
@@ -10762,6 +10775,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
10762
10775
|
elemStore,
|
|
10763
10776
|
fullColumnIdData
|
|
10764
10777
|
} = internalData;
|
|
10778
|
+
const mouseOpts = computeMouseOpts.value;
|
|
10765
10779
|
const tableBody = refTableBody.value;
|
|
10766
10780
|
const tableBodyElem = tableBody ? tableBody.$el : null;
|
|
10767
10781
|
if (tableBodyElem) {
|
|
@@ -10820,6 +10834,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
10820
10834
|
if (scrollXSpaceEl) {
|
|
10821
10835
|
scrollXSpaceEl.style.width = `${ySpaceWidth}px`;
|
|
10822
10836
|
}
|
|
10837
|
+
if (isScrollXBig && mouseOpts.area) {
|
|
10838
|
+
(0, _log.errLog)('vxe.error.notProp', ['mouse-config.area']);
|
|
10839
|
+
}
|
|
10823
10840
|
(0, _vue.nextTick)(() => {
|
|
10824
10841
|
updateStyle();
|
|
10825
10842
|
});
|
|
@@ -10843,6 +10860,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
10843
10860
|
const {
|
|
10844
10861
|
startIndex
|
|
10845
10862
|
} = scrollYStore;
|
|
10863
|
+
const mouseOpts = computeMouseOpts.value;
|
|
10846
10864
|
const expandOpts = computeExpandOpts.value;
|
|
10847
10865
|
const rowOpts = computeRowOpts.value;
|
|
10848
10866
|
const cellOpts = computeCellOpts.value;
|
|
@@ -10923,6 +10941,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
10923
10941
|
reactData.scrollYTop = scrollYTop;
|
|
10924
10942
|
reactData.scrollYHeight = scrollYHeight;
|
|
10925
10943
|
reactData.isScrollYBig = isScrollYBig;
|
|
10944
|
+
if (isScrollYBig && mouseOpts.area) {
|
|
10945
|
+
(0, _log.errLog)('vxe.error.notProp', ['mouse-config.area']);
|
|
10946
|
+
}
|
|
10926
10947
|
return (0, _vue.nextTick)().then(() => {
|
|
10927
10948
|
updateStyle();
|
|
10928
10949
|
});
|
|
@@ -11711,6 +11732,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
11711
11732
|
(0, _vue.watch)(computeScrollbarYToLeft, () => {
|
|
11712
11733
|
reLayoutFlag.value++;
|
|
11713
11734
|
});
|
|
11735
|
+
(0, _vue.watch)(() => _ui.VxeUI.getLanguage(), () => {
|
|
11736
|
+
reLayoutFlag.value++;
|
|
11737
|
+
});
|
|
11714
11738
|
(0, _vue.watch)(reLayoutFlag, () => {
|
|
11715
11739
|
(0, _vue.nextTick)(() => tableMethods.recalculate(true));
|
|
11716
11740
|
});
|