vxe-table 3.21.19 → 3.21.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/locale/lang/ar-EG.js +4 -0
- package/es/locale/lang/de-DE.js +4 -0
- package/es/locale/lang/en-US.js +5 -1
- package/es/locale/lang/es-ES.js +4 -0
- package/es/locale/lang/fr-FR.js +4 -0
- package/es/locale/lang/hu-HU.js +4 -0
- package/es/locale/lang/hy-AM.js +4 -0
- package/es/locale/lang/id-ID.js +4 -0
- package/es/locale/lang/it-IT.js +4 -0
- package/es/locale/lang/ja-JP.js +4 -0
- package/es/locale/lang/ko-KR.js +4 -0
- package/es/locale/lang/ms-MY.js +4 -0
- package/es/locale/lang/nb-NO.js +4 -0
- package/es/locale/lang/pt-BR.js +4 -0
- package/es/locale/lang/ru-RU.js +4 -0
- package/es/locale/lang/th-TH.js +4 -0
- package/es/locale/lang/ug-CN.js +4 -0
- package/es/locale/lang/uk-UA.js +4 -0
- package/es/locale/lang/uz-UZ.js +4 -0
- package/es/locale/lang/vi-VN.js +4 -0
- package/es/locale/lang/zh-CHT.js +4 -0
- package/es/locale/lang/zh-CN.js +4 -0
- package/es/style.css +1 -1
- package/es/table/module/edit/mixin.js +1 -1
- package/es/table/module/menu/mixin.js +11 -7
- package/es/table/src/methods.js +7 -3
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +23 -14
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +4 -0
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +4 -0
- package/lib/locale/lang/de-DE.js +4 -0
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +4 -0
- package/lib/locale/lang/en-US.js +5 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +5 -1
- package/lib/locale/lang/es-ES.js +4 -0
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +4 -0
- package/lib/locale/lang/fr-FR.js +4 -0
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +4 -0
- package/lib/locale/lang/hu-HU.js +4 -0
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +4 -0
- package/lib/locale/lang/hy-AM.js +4 -0
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +4 -0
- package/lib/locale/lang/id-ID.js +4 -0
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +4 -0
- package/lib/locale/lang/it-IT.js +4 -0
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +4 -0
- package/lib/locale/lang/ja-JP.js +4 -0
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +4 -0
- package/lib/locale/lang/ko-KR.js +4 -0
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +4 -0
- package/lib/locale/lang/ms-MY.js +4 -0
- package/lib/locale/lang/ms-MY.min.js +1 -1
- package/lib/locale/lang/ms-MY.umd.js +4 -0
- package/lib/locale/lang/nb-NO.js +4 -0
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +4 -0
- package/lib/locale/lang/pt-BR.js +4 -0
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +4 -0
- package/lib/locale/lang/ru-RU.js +4 -0
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +4 -0
- package/lib/locale/lang/th-TH.js +4 -0
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +4 -0
- package/lib/locale/lang/ug-CN.js +4 -0
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +4 -0
- package/lib/locale/lang/uk-UA.js +4 -0
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +4 -0
- package/lib/locale/lang/uz-UZ.js +4 -0
- package/lib/locale/lang/uz-UZ.min.js +1 -1
- package/lib/locale/lang/uz-UZ.umd.js +4 -0
- package/lib/locale/lang/vi-VN.js +4 -0
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +4 -0
- package/lib/locale/lang/zh-CHT.js +4 -0
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CHT.umd.js +4 -0
- package/lib/locale/lang/zh-CN.js +4 -0
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +4 -0
- package/lib/style.css +1 -1
- package/lib/table/module/edit/mixin.js +1 -1
- package/lib/table/module/edit/mixin.min.js +1 -1
- package/lib/table/module/menu/mixin.js +10 -5
- package/lib/table/module/menu/mixin.min.js +1 -1
- package/lib/table/src/methods.js +5 -5
- package/lib/table/src/methods.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/locale/lang/ar-EG.ts +4 -0
- package/packages/locale/lang/de-DE.ts +4 -0
- package/packages/locale/lang/en-US.ts +5 -1
- package/packages/locale/lang/es-ES.ts +4 -0
- package/packages/locale/lang/fr-FR.ts +4 -0
- package/packages/locale/lang/hu-HU.ts +4 -0
- package/packages/locale/lang/hy-AM.ts +4 -0
- package/packages/locale/lang/id-ID.ts +4 -0
- package/packages/locale/lang/it-IT.ts +4 -0
- package/packages/locale/lang/ja-JP.ts +4 -0
- package/packages/locale/lang/ko-KR.ts +4 -0
- package/packages/locale/lang/ms-MY.ts +4 -0
- package/packages/locale/lang/nb-NO.ts +4 -0
- package/packages/locale/lang/pt-BR.ts +4 -0
- package/packages/locale/lang/ru-RU.ts +4 -0
- package/packages/locale/lang/th-TH.ts +4 -0
- package/packages/locale/lang/ug-CN.ts +4 -0
- package/packages/locale/lang/uk-UA.ts +4 -0
- package/packages/locale/lang/uz-UZ.ts +4 -0
- package/packages/locale/lang/vi-VN.ts +4 -0
- package/packages/locale/lang/zh-CHT.ts +4 -0
- package/packages/locale/lang/zh-CN.ts +4 -0
- package/packages/table/module/edit/mixin.ts +1 -2
- package/packages/table/module/menu/mixin.ts +12 -7
- package/packages/table/src/methods.ts +12 -7
- /package/es/{iconfont.1782286848090.ttf → iconfont.1782656027274.ttf} +0 -0
- /package/es/{iconfont.1782286848090.woff → iconfont.1782656027274.woff} +0 -0
- /package/es/{iconfont.1782286848090.woff2 → iconfont.1782656027274.woff2} +0 -0
- /package/lib/{iconfont.1782286848090.ttf → iconfont.1782656027274.ttf} +0 -0
- /package/lib/{iconfont.1782286848090.woff → iconfont.1782656027274.woff} +0 -0
- /package/lib/{iconfont.1782286848090.woff2 → iconfont.1782656027274.woff2} +0 -0
|
@@ -20,7 +20,6 @@ const {
|
|
|
20
20
|
renderer,
|
|
21
21
|
getI18n
|
|
22
22
|
} = _ui.VxeUI;
|
|
23
|
-
const browseObj = _xeUtils.default.browse();
|
|
24
23
|
function getEditColumnModel(row, column) {
|
|
25
24
|
const {
|
|
26
25
|
model,
|
|
@@ -1192,6 +1191,7 @@ var _default = exports.default = {
|
|
|
1192
1191
|
} = column;
|
|
1193
1192
|
const editOpts = $xeTable.computeEditOpts;
|
|
1194
1193
|
if ((0, _utils.isEnableConf)(editRender)) {
|
|
1194
|
+
const browseObj = _xeUtils.default.browse();
|
|
1195
1195
|
const compRender = renderer.get(editRender.name);
|
|
1196
1196
|
let autoFocus = editRender.autofocus || editRender.autoFocus;
|
|
1197
1197
|
let autoSelect = editRender.autoSelect || editRender.autoselect;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _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{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getConfig,renderer,getI18n}=_ui.VxeUI,browseObj=_xeUtils.default.browse();function getEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)}function setEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)}function removeCellSelectedClass(e){var e=e.$refs.refElem;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}function syncActivedCell(e){var{editStore:t,tableColumn:l}=e,e=e.computeEditOpts,t=t.actived;let{row:r,column:o}=t;r&&o&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,o))}function insertTreeRow(n,e,t){let{tableFullTreeData:a,afterFullData:d,fullDataRowIdData:s,fullAllDataRowIdData:u}=n;var l=n.computeTreeOpts;let{rowField:c,parentField:h,mapChildrenField:w}=l,g=l.children||l.childrenField,f=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(n,l),o=t?_xeUtils.default.findTree(a,e=>t===e[c],{children:w}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(n,o)],i=i?i.level:0;let e=o[g],t=o[w];_xeUtils.default.isArray(e)||(e=o[g]=[]),_xeUtils.default.isArray(t)||(t=o[w]=[]),e[f](l),t[f](l);o={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:e,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}else{t&&warnLog("vxe.error.unableInsert"),d[f](l),a[f](l);i={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}})}function handleInsertRowAt(a,t,e,d){var l=a;let o=a.treeConfig;var r=l.isRowGroupStatus;let{tableFullTreeData:s,afterFullData:i,mergeBodyList:n,tableFullData:u,fullDataRowIdData:c,fullAllDataRowIdData:h,insertRowMaps:w,removeRowMaps:g}=a;var f=a.computeTreeOpts;let{transform:x,parentField:m,rowField:v,mapChildrenField:p}=f,C=f.children||f.childrenField,R=(_xeUtils.default.isArray(t)||(t=[t]),e);if((_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e))&&(f=h[e])&&(R=f.row),!t.length)return Promise.resolve({row:null,rows:[]});a.handlePushStack();let _=a.defineField(t.map(e=>Object.assign(o&&x?{[p]:[],[C]:[]}:{},e))),I=[];if(o&&x&&(I=_xeUtils.default.toArrayTree(_,{key:v,parentKey:m,children:C})),_xeUtils.default.eqNull(R))if(o&&x)insertTreeRow(a,_,!1);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.unshift(e),u.unshift(e)}),n.forEach(e=>{var t=e.row;0<=t&&(e.row=t+_.length)});else if(-1===R)if(o&&x)insertTreeRow(a,_,!0);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.push(e),u.push(e)});else if(o&&x){let n=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:p});if(n){let r=n.parent,o=r?r[p]:s;e=h[(0,_util.getRowid)(a,r)];let i=e?e.level:0;if(I.forEach((e,t)=>{r?e[m]!==r[v]&&(errLog("vxe.error.errProp",[m+"="+e[m],m+"="+r[v]]),e[m]=r[v]):null!==e[m]&&(_xeUtils.default.eqNull(e[m])||errLog("vxe.error.errProp",[m+"="+e[m],"null"]),e[m]=null);let l=n.index+t;d&&(l+=1),o.splice(l,0,e)}),_xeUtils.default.eachTree(I,e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:o,parent:r,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};e[C]&&(e[p]=e[C]),c[t]=l,h[t]=l},{children:C}),r){f=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:C});if(f){t=f.items;let e=f.index;d&&(e+=1),t.splice(e,0,...I)}}}else warnLog("vxe.error.unableInsert"),insertTreeRow(a,_,!0)}else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(R)?R<i.length&&(r=R):r=a.findRowIndexOf(i,R),-1===(r=d?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,..._);e=a.findRowIndexOf(u,R);-1<e?u.splice(e+(d?1:0),0,..._):u.push(..._),n.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+_.length:(d?t+l>=r:t+l>r)&&(e.rowspan=l+_.length)})}f=e=>{var t=(0,_util.getRowid)(a,e);g[t]?(delete g[t],w[t]&&delete w[t]):w[t]=e};return o&&x?_xeUtils.default.eachTree(I,f,{children:p}):_.forEach(f),l.removeRowFlag++,l.insertRowFlag++,a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(o&&x),o&&x||a.updateAfterDataIndex(),a.updateFooter(),a.handleUpdateBodyMerge(),a.checkSelectionStatus(),l.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate(!0))).then(()=>({row:_.length?_[_.length-1]:null,rows:_}))}function handleInsertChildRowAt(e,l,r,o,i){var n=e.treeConfig,a=e.fullAllDataRowIdData;let{transform:t,rowField:d,parentField:s}=e.computeTreeOpts;if(n&&t){_xeUtils.default.isArray(l)||(l=[l]);let t=r;return(_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(n=a[r])&&(t=n.row),handleInsertRowAt(e,l.map(e=>Object.assign({},e,{[s]:t[d]})),o,i)}return errLog("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]})}function handleClearEdit(e,t,l){var r=e.editStore,{actived:r,focused:o}=r,{row:i,column:n}=r,a=e.computeValidOpts;if(i||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,i))return e.$nextTick();syncActivedCell(e),e.updateFooter(),r.args=null,r.row=null,r.column=null,e.dispatchEvent("edit-closed",{row:i,rowIndex:e.getRowIndex(i),$rowIndex:e.getVMRowIndex(i),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return o.row=null,o.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,o,i){let n=l.$xeGrid;var{editConfig:e,mouseConfig:a}=l,{editStore:d,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:d,focused:t}=d;let{row:h,column:w}=r;var g=w.editRender;let{isFocus:f,isPos:x,isClear:m}=i;var i=r.cell||l.getCellElement(h,w),v=u.beforeEditMethod||u.activeMethod;if((r.cell=i)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(g)&&!l.isPendingByRow(h)&&!l.isAggregateRecord(h)){if(d.row!==h||"cell"===c&&d.column!==w){let t="edit-disabled";if(!v||v(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),d.column&&handleClearEdit(l,o),t="edit-activated",w.renderHeight=i.offsetHeight,d.args=r,d.row=h,d.column=w,l.handlePushStack(),m&&(0,_util.setCellValue)(h,w,null),"row"===c?s.forEach(e=>getEditColumnModel(h,e)):getEditColumnModel(h,w);let e=u.afterEditMethod;l.$nextTick(()=>{f&&l.handleFocus(r,o),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},o),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},o)}else{e=d.column;a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),e&&e!==w&&(g=e.model,g.update&&(0,_util.setCellValue)(h,e,g.value),l.clearValidate)&&l.clearValidate(h,w),w.renderHeight=i.offsetHeight,d.args=r,d.column=w,x&&setTimeout(()=>{l.handleFocus(r,o)})}t.column=null,t.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let o=t;var i=t.editConfig,n=r.isPos;let a=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&a&&(0,_utils.isEnableConf)(i)&&(0,_utils.isEnableConf)(a.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(n?t.scrollToRow(l,a):null).then(()=>{var e=t.getCellElement(l,a);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:a,columnIndex:t.getColumnIndex(a),cell:e,$table:t},null,r),o._lastCallTime=Date.now()),t.$nextTick()}):t.$nextTick()}var _default=exports.default={methods:{_insert(e){return handleInsertRowAt(this,e,null)},_insertAt(e,t){return handleInsertRowAt(this,e,t)},_insertNextAt(e,t){return handleInsertRowAt(this,e,t,!0)},_insertChild(e,t){return handleInsertChildRowAt(this,e,t,null)},_insertChildAt(e,t,l){return handleInsertChildRowAt(this,e,t,l)},_insertChildNextAt(e,t,l){return handleInsertChildRowAt(this,e,t,l,!0)},_remove(e){let o=this;var t=o,l=o,r=o,t=t.treeConfig,{editStore:i,isRowGroupStatus:n}=l;let{tableFullTreeData:a,selectCheckboxMaps:d,afterFullData:s,mergeBodyList:u,tableFullData:c,pendingRowMaps:h,insertRowMaps:w,removeRowMaps:g}=r;var f=o.computeCheckboxOpts,x=o.computeTreeOpts;let{transform:m,mapChildrenField:v}=x,p=x.children||x.childrenField;x=i.actived,i=f.checkField;let C=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=c,e.length?(o.handlePushStack(),e.forEach(e=>{var t;o.isInsertByRow(e)||(t=(0,_util.getRowid)(o,e),g[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);d[e]&&delete d[e]}),l.updateCheckboxFlag++),c===e?(e=C=c.slice(0),r.tableFullData=[],r.afterFullData=[],o.clearMergeCells()):t&&m?e.forEach(e=>{let t=(0,_util.getRowid)(o,e);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:v}),l=(l&&(l=l.items.splice(l.index,1),C.push(l[0])),_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:p})),l=(l&&l.items.splice(l.index,1),o.findRowIndexOf(s,e));-1<l&&s.splice(l,1)}):n?warnLog(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=o.findRowIndexOf(c,e);-1<t&&(t=c.splice(t,1),C.push(t[0]));let r=o.findRowIndexOf(s,e);-1<r&&(u.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),s.splice(r,1))}),x.row&&-1<o.findRowIndexOf(e,x.row)&&o.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(o,e);w[e]&&delete w[e],h[e]&&delete h[e]}),l.removeRowFlag++,l.insertRowFlag++,l.pendingRowFlag++,o.cacheRowMap(!1),o.handleTableData(t&&m),o.updateFooter(),o.handleUpdateBodyMerge(),t&&m||o.updateAfterDataIndex(),o.checkSelectionStatus(),l.scrollYLoad&&o.updateScrollYSpace(),o.$nextTick().then(()=>(o.updateCellAreas(),o.recalculate(!0))).then(()=>({row:C.length?C[C.length-1]:null,rows:C}))):Promise.resolve({row:null,rows:[]})},_removeCheckboxRow(){let t=this;return t.remove(t.getCheckboxRecords()).then(e=>(t.clearCheckboxRow(),e))},_removeRadioRow(){let t=this;var e=t.getRadioRecord();return t.remove(e||[]).then(e=>(t.clearRadioRow(),e))},_removeCurrentRow(){let t=this;var e=t.getCurrentRecord();return t.remove(e||[]).then(e=>(t.clearCurrentRow(),e))},_getRecordset(){let l=this;var e=l.getRemoveRecords(),t=l.getPendingRecords();let r=e.concat(t);var o=l.getUpdateRecords().filter(t=>!r.some(e=>l.eqRow(e,t)));return{insertRecords:l.getInsertRecords(),removeRecords:e,updateRecords:o,pendingRecords:t}},_getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=this,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){var e=this.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},_getUpdateRecords(){let t=this;var{keepSource:e,treeConfig:l}=t,{tableFullData:r,tableFullTreeData:o}=t,i=t.computeTreeOpts;let n=[];return e&&(syncActivedCell(t),l?(e=i.children||i.childrenField,_xeUtils.default.eachTree(o,e=>{t.isUpdateByRow(e)&&n.push(e)},{children:e})):r.forEach(e=>{t.isUpdateByRow(e)&&n.push(e)})),n},handleEdit(e,t,l){return handleEditActive(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){getEditColumnModel(e,t)},_setColumnModel(e,t){setEditColumnModel(e,t)},_syncActivedCell(){syncActivedCell(this)},_clearActived(e){return warnLog("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return handleClearEdit(this,null,e)},handleClearEdit(e,t){return handleClearEdit(this,e,t)},_getActiveRecord(){var e=(warnLog("vxe.error.delFunc",["getActiveRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditRecord(){var e=(warnLog("vxe.error.delFunc",["getEditRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditCell(){var e=this.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,rowIndex:this.getRowIndex(e),column:t,columnIndex:this.getColumnIndex(t)}:null},_isActiveByRow(e){return warnLog("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:o,column:i,cell:n}=r,a=i.editRender,d=this.computeEditOpts;if((0,_utils.isEnableConf)(a)){var s=renderer.get(a.name);let e=a.autofocus||a.autoFocus,t=a.autoSelect||a.autoselect,l;d.autoFocus&&(!e&&s&&(e=s.tableAutoFocus||s.tableAutofocus||s.autoFocus||s.autofocus),!t&&s&&(t=s.tableAutoSelect||s.autoSelect||s.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=!0===e?n.querySelector("input,textarea"):n.querySelector(e))&&l.focus()),l?t?l.select():browseObj.msie&&((a=l.createTextRange()).collapse(!1),a.select()):d.autoPos&&!i.fixed&&this.scrollToRow(o,i)}},_setActiveRow(e){return warnLog("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t,l){var r=this.visibleColumn;let o=_xeUtils.default.find(r,e=>(0,_utils.isEnableConf)(e.editRender)),i=!1;return t&&(i=!0)!==t&&(o=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,o,Object.assign({isPos:i,isFocus:i},l))},_setActiveCell(e,t){return warnLog("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t,l){return handleEditCell(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},_setSelectCell(e,t){var l=this,r=l.tableData,o=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&-1<(o=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:o,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,o=l.editStore,i=l.computeMouseOpts;let n=l.computeEditOpts,{actived:a,selected:d}=o,{row:s,column:u}=e,c=r&&i.selected;return!c||d.row===s&&d.column===u||(a.row!==s||"cell"===n.mode&&a.column!==u)&&(handleClearEdit(l,t),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),d.args=e,d.row=s,d.column=u,c&&l.addCellSelectedClass(),l.focus(),t)&&l.dispatchEvent("cell-selected",e,t),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}:null},_clearSelected(){var e=this.editStore,e=e.selected;return e.row=null,e.column=null,removeCellSelectedClass(this),this.$nextTick()},reColTitleSdCls(){var e=this.elemStore,e=e["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),e=>(0,_dom.removeClass)(e,"col--title-selected"))},addCellSelectedClass(){var e=this.editStore,e=e.selected,{row:e,column:t}=e;removeCellSelectedClass(this),e&&t&&(e=this.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}}};
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _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{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getConfig,renderer,getI18n}=_ui.VxeUI;function getEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)}function setEditColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)}function removeCellSelectedClass(e){var e=e.$refs.refElem;e&&(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}function syncActivedCell(e){var{editStore:t,tableColumn:l}=e,e=e.computeEditOpts,t=t.actived;let{row:r,column:o}=t;r&&o&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,o))}function insertTreeRow(n,e,t){let{tableFullTreeData:a,afterFullData:d,fullDataRowIdData:s,fullAllDataRowIdData:u}=n;var l=n.computeTreeOpts;let{rowField:c,parentField:h,mapChildrenField:g}=l,w=l.children||l.childrenField,f=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(n,l),o=t?_xeUtils.default.findTree(a,e=>t===e[c],{children:g}):null;if(o){var o=o.item,i=u[(0,_util.getRowid)(n,o)],i=i?i.level:0;let e=o[w],t=o[g];_xeUtils.default.isArray(e)||(e=o[w]=[]),_xeUtils.default.isArray(t)||(t=o[g]=[]),e[f](l),t[f](l);o={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:e,parent:o,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}else{t&&warnLog("vxe.error.unableInsert"),d[f](l),a[f](l);i={row:l,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}})}function handleInsertRowAt(a,t,e,d){var l=a;let o=a.treeConfig;var r=l.isRowGroupStatus;let{tableFullTreeData:s,afterFullData:i,mergeBodyList:n,tableFullData:u,fullDataRowIdData:c,fullAllDataRowIdData:h,insertRowMaps:g,removeRowMaps:w}=a;var f=a.computeTreeOpts;let{transform:x,parentField:m,rowField:v,mapChildrenField:p}=f,C=f.children||f.childrenField,R=(_xeUtils.default.isArray(t)||(t=[t]),e);if((_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e))&&(f=h[e])&&(R=f.row),!t.length)return Promise.resolve({row:null,rows:[]});a.handlePushStack();let _=a.defineField(t.map(e=>Object.assign(o&&x?{[p]:[],[C]:[]}:{},e))),I=[];if(o&&x&&(I=_xeUtils.default.toArrayTree(_,{key:v,parentKey:m,children:C})),_xeUtils.default.eqNull(R))if(o&&x)insertTreeRow(a,_,!1);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.unshift(e),u.unshift(e)}),n.forEach(e=>{var t=e.row;0<=t&&(e.row=t+_.length)});else if(-1===R)if(o&&x)insertTreeRow(a,_,!0);else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else _.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,i.push(e),u.push(e)});else if(o&&x){let n=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:p});if(n){let r=n.parent,o=r?r[p]:s;e=h[(0,_util.getRowid)(a,r)];let i=e?e.level:0;if(I.forEach((e,t)=>{r?e[m]!==r[v]&&(errLog("vxe.error.errProp",[m+"="+e[m],m+"="+r[v]]),e[m]=r[v]):null!==e[m]&&(_xeUtils.default.eqNull(e[m])||errLog("vxe.error.errProp",[m+"="+e[m],"null"]),e[m]=null);let l=n.index+t;d&&(l+=1),o.splice(l,0,e)}),_xeUtils.default.eachTree(I,e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:o,parent:r,level:i+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};e[C]&&(e[p]=e[C]),c[t]=l,h[t]=l},{children:C}),r){f=_xeUtils.default.findTree(s,e=>R[v]===e[v],{children:C});if(f){t=f.items;let e=f.index;d&&(e+=1),t.splice(e,0,...I)}}}else warnLog("vxe.error.unableInsert"),insertTreeRow(a,_,!0)}else if(r){if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));errLog(getI18n("vxe.error.noGroup",["insert"]))}else{if(o)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(R)?R<i.length&&(r=R):r=a.findRowIndexOf(i,R),-1===(r=d?Math.min(i.length,r+1):r))throw new Error(getI18n("vxe.error.unableInsert"));i.splice(r,0,..._);e=a.findRowIndexOf(u,R);-1<e?u.splice(e+(d?1:0),0,..._):u.push(..._),n.forEach(e=>{var{row:t,rowspan:l}=e;t>=r?e.row=t+_.length:(d?t+l>=r:t+l>r)&&(e.rowspan=l+_.length)})}f=e=>{var t=(0,_util.getRowid)(a,e);w[t]?(delete w[t],g[t]&&delete g[t]):g[t]=e};return o&&x?_xeUtils.default.eachTree(I,f,{children:p}):_.forEach(f),l.removeRowFlag++,l.insertRowFlag++,a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(o&&x),o&&x||a.updateAfterDataIndex(),a.updateFooter(),a.handleUpdateBodyMerge(),a.checkSelectionStatus(),l.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate(!0))).then(()=>({row:_.length?_[_.length-1]:null,rows:_}))}function handleInsertChildRowAt(e,l,r,o,i){var n=e.treeConfig,a=e.fullAllDataRowIdData;let{transform:t,rowField:d,parentField:s}=e.computeTreeOpts;if(n&&t){_xeUtils.default.isArray(l)||(l=[l]);let t=r;return(_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(n=a[r])&&(t=n.row),handleInsertRowAt(e,l.map(e=>Object.assign({},e,{[s]:t[d]})),o,i)}return errLog("vxe.error.errProp",["tree-config.transform=false","tree-config.transform=true"]),Promise.resolve({row:null,rows:[]})}function handleClearEdit(e,t,l){var r=e.editStore,{actived:r,focused:o}=r,{row:i,column:n}=r,a=e.computeValidOpts;if(i||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,i))return e.$nextTick();syncActivedCell(e),e.updateFooter(),r.args=null,r.row=null,r.column=null,e.dispatchEvent("edit-closed",{row:i,rowIndex:e.getRowIndex(i),$rowIndex:e.getVMRowIndex(i),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return o.row=null,o.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,o,i){let n=l.$xeGrid;var{editConfig:e,mouseConfig:a}=l,{editStore:d,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:d,focused:t}=d;let{row:h,column:g}=r;var w=g.editRender;let{isFocus:f,isPos:x,isClear:m}=i;var i=r.cell||l.getCellElement(h,g),v=u.beforeEditMethod||u.activeMethod;if((r.cell=i)&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(w)&&!l.isPendingByRow(h)&&!l.isAggregateRecord(h)){if(d.row!==h||"cell"===c&&d.column!==g){let t="edit-disabled";if(!v||v(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),d.column&&handleClearEdit(l,o),t="edit-activated",g.renderHeight=i.offsetHeight,d.args=r,d.row=h,d.column=g,l.handlePushStack(),m&&(0,_util.setCellValue)(h,g,null),"row"===c?s.forEach(e=>getEditColumnModel(h,e)):getEditColumnModel(h,g);let e=u.afterEditMethod;l.$nextTick(()=>{f&&l.handleFocus(r,o),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:g,columnIndex:l.getColumnIndex(g),$columnIndex:l.getVMColumnIndex(g)},o),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:h,rowIndex:l.getRowIndex(h),$rowIndex:l.getVMRowIndex(h),column:g,columnIndex:l.getColumnIndex(g),$columnIndex:l.getVMColumnIndex(g)},o)}else{e=d.column;a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),e&&e!==g&&(w=e.model,w.update&&(0,_util.setCellValue)(h,e,w.value),l.clearValidate)&&l.clearValidate(h,g),g.renderHeight=i.offsetHeight,d.args=r,d.column=g,x&&setTimeout(()=>{l.handleFocus(r,o)})}t.column=null,t.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let o=t;var i=t.editConfig,n=r.isPos;let a=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&a&&(0,_utils.isEnableConf)(i)&&(0,_utils.isEnableConf)(a.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(n?t.scrollToRow(l,a):null).then(()=>{var e=t.getCellElement(l,a);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:a,columnIndex:t.getColumnIndex(a),cell:e,$table:t},null,r),o._lastCallTime=Date.now()),t.$nextTick()}):t.$nextTick()}var _default=exports.default={methods:{_insert(e){return handleInsertRowAt(this,e,null)},_insertAt(e,t){return handleInsertRowAt(this,e,t)},_insertNextAt(e,t){return handleInsertRowAt(this,e,t,!0)},_insertChild(e,t){return handleInsertChildRowAt(this,e,t,null)},_insertChildAt(e,t,l){return handleInsertChildRowAt(this,e,t,l)},_insertChildNextAt(e,t,l){return handleInsertChildRowAt(this,e,t,l,!0)},_remove(e){let o=this;var t=o,l=o,r=o,t=t.treeConfig,{editStore:i,isRowGroupStatus:n}=l;let{tableFullTreeData:a,selectCheckboxMaps:d,afterFullData:s,mergeBodyList:u,tableFullData:c,pendingRowMaps:h,insertRowMaps:g,removeRowMaps:w}=r;var f=o.computeCheckboxOpts,x=o.computeTreeOpts;let{transform:m,mapChildrenField:v}=x,p=x.children||x.childrenField;x=i.actived,i=f.checkField;let C=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=c,e.length?(o.handlePushStack(),e.forEach(e=>{var t;o.isInsertByRow(e)||(t=(0,_util.getRowid)(o,e),w[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);d[e]&&delete d[e]}),l.updateCheckboxFlag++),c===e?(e=C=c.slice(0),r.tableFullData=[],r.afterFullData=[],o.clearMergeCells()):t&&m?e.forEach(e=>{let t=(0,_util.getRowid)(o,e);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:v}),l=(l&&(l=l.items.splice(l.index,1),C.push(l[0])),_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(o,e),{children:p})),l=(l&&l.items.splice(l.index,1),o.findRowIndexOf(s,e));-1<l&&s.splice(l,1)}):n?warnLog(getI18n("vxe.error.noGroup",["remove"])):e.forEach(e=>{var t=o.findRowIndexOf(c,e);-1<t&&(t=c.splice(t,1),C.push(t[0]));let r=o.findRowIndexOf(s,e);-1<r&&(u.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),s.splice(r,1))}),x.row&&-1<o.findRowIndexOf(e,x.row)&&o.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(o,e);g[e]&&delete g[e],h[e]&&delete h[e]}),l.removeRowFlag++,l.insertRowFlag++,l.pendingRowFlag++,o.cacheRowMap(!1),o.handleTableData(t&&m),o.updateFooter(),o.handleUpdateBodyMerge(),t&&m||o.updateAfterDataIndex(),o.checkSelectionStatus(),l.scrollYLoad&&o.updateScrollYSpace(),o.$nextTick().then(()=>(o.updateCellAreas(),o.recalculate(!0))).then(()=>({row:C.length?C[C.length-1]:null,rows:C}))):Promise.resolve({row:null,rows:[]})},_removeCheckboxRow(){let t=this;return t.remove(t.getCheckboxRecords()).then(e=>(t.clearCheckboxRow(),e))},_removeRadioRow(){let t=this;var e=t.getRadioRecord();return t.remove(e||[]).then(e=>(t.clearRadioRow(),e))},_removeCurrentRow(){let t=this;var e=t.getCurrentRecord();return t.remove(e||[]).then(e=>(t.clearCurrentRow(),e))},_getRecordset(){let l=this;var e=l.getRemoveRecords(),t=l.getPendingRecords();let r=e.concat(t);var o=l.getUpdateRecords().filter(t=>!r.some(e=>l.eqRow(e,t)));return{insertRecords:l.getInsertRecords(),removeRecords:e,updateRecords:o,pendingRecords:t}},_getInsertRecords(){let{fullAllDataRowIdData:l,insertRowMaps:e}=this,r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){var e=this.removeRowMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},_getUpdateRecords(){let t=this;var{keepSource:e,treeConfig:l}=t,{tableFullData:r,tableFullTreeData:o}=t,i=t.computeTreeOpts;let n=[];return e&&(syncActivedCell(t),l?(e=i.children||i.childrenField,_xeUtils.default.eachTree(o,e=>{t.isUpdateByRow(e)&&n.push(e)},{children:e})):r.forEach(e=>{t.isUpdateByRow(e)&&n.push(e)})),n},handleEdit(e,t,l){return handleEditActive(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){getEditColumnModel(e,t)},_setColumnModel(e,t){setEditColumnModel(e,t)},_syncActivedCell(){syncActivedCell(this)},_clearActived(e){return warnLog("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return handleClearEdit(this,null,e)},handleClearEdit(e,t){return handleClearEdit(this,e,t)},_getActiveRecord(){var e=(warnLog("vxe.error.delFunc",["getActiveRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditRecord(){var e=(warnLog("vxe.error.delFunc",["getEditRecord","getEditCell"]),this).editStore,t=this.fullAllDataRowIdData,{args:e,row:l}=e.actived;return e&&l&&t[(0,_util.getRowid)(this,l)]?Object.assign({},e,{row:l}):null},_getEditCell(){var e=this.editStore,{row:e,column:t}=e.actived;return t&&e?{row:e,rowIndex:this.getRowIndex(e),column:t,columnIndex:this.getColumnIndex(t)}:null},_isActiveByRow(e){return warnLog("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:o,column:i,cell:n}=r,a=i.editRender,d=this.computeEditOpts;if((0,_utils.isEnableConf)(a)){var s=_xeUtils.default.browse(),u=renderer.get(a.name);let e=a.autofocus||a.autoFocus,t=a.autoSelect||a.autoselect,l;d.autoFocus&&(!e&&u&&(e=u.tableAutoFocus||u.tableAutofocus||u.autoFocus||u.autofocus),!t&&u&&(t=u.tableAutoSelect||u.autoSelect||u.autoselect),_xeUtils.default.isFunction(e)?l=e.call(this,r):e&&(l=!0===e?n.querySelector("input,textarea"):n.querySelector(e))&&l.focus()),l?t?l.select():s.msie&&((a=l.createTextRange()).collapse(!1),a.select()):d.autoPos&&!i.fixed&&this.scrollToRow(o,i)}},_setActiveRow(e){return warnLog("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t,l){var r=this.visibleColumn;let o=_xeUtils.default.find(r,e=>(0,_utils.isEnableConf)(e.editRender)),i=!1;return t&&(i=!0)!==t&&(o=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,o,Object.assign({isPos:i,isFocus:i},l))},_setActiveCell(e,t){return warnLog("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t,l){return handleEditCell(this,e,t,Object.assign({isFocus:!0,isPos:!0},l))},_setSelectCell(e,t){var l=this,r=l.tableData,o=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&-1<(o=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:o,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,o=l.editStore,i=l.computeMouseOpts;let n=l.computeEditOpts,{actived:a,selected:d}=o,{row:s,column:u}=e,c=r&&i.selected;return!c||d.row===s&&d.column===u||(a.row!==s||"cell"===n.mode&&a.column!==u)&&(handleClearEdit(l,t),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),d.args=e,d.row=s,d.column=u,c&&l.addCellSelectedClass(),l.focus(),t)&&l.dispatchEvent("cell-selected",e,t),l.$nextTick()},_getSelectedCell(){var e=this.editStore,{row:e,column:t}=e.selected;return e&&t?{row:e,column:t}:null},_clearSelected(){var e=this.editStore,e=e.selected;return e.row=null,e.column=null,removeCellSelectedClass(this),this.$nextTick()},reColTitleSdCls(){var e=this.elemStore,e=e["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),e=>(0,_dom.removeClass)(e,"col--title-selected"))},addCellSelectedClass(){var e=this.editStore,e=e.selected,{row:e,column:t}=e;removeCellSelectedClass(this),e&&t&&(e=this.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}}};
|
|
@@ -216,6 +216,7 @@ var _default = exports.default = {
|
|
|
216
216
|
const {
|
|
217
217
|
zIndex,
|
|
218
218
|
transfer,
|
|
219
|
+
width,
|
|
219
220
|
visibleMethod
|
|
220
221
|
} = menuOpts;
|
|
221
222
|
if (config) {
|
|
@@ -247,17 +248,21 @@ var _default = exports.default = {
|
|
|
247
248
|
}
|
|
248
249
|
const handleVisible = () => {
|
|
249
250
|
internalData._currMenuParams = params;
|
|
251
|
+
const ctxStyle = {
|
|
252
|
+
zIndex: zIndex || internalData.tZindex,
|
|
253
|
+
top: `${top}px`,
|
|
254
|
+
left: `${left}px`
|
|
255
|
+
};
|
|
256
|
+
if (width) {
|
|
257
|
+
ctxStyle['--vxe-ui-table-menu-item-width'] = (0, _dom.toCssUnit)(width);
|
|
258
|
+
}
|
|
250
259
|
Object.assign(ctxMenuStore, {
|
|
251
260
|
visible: true,
|
|
252
261
|
list: options,
|
|
253
262
|
selected: null,
|
|
254
263
|
selectChild: null,
|
|
255
264
|
showChild: false,
|
|
256
|
-
style:
|
|
257
|
-
zIndex: zIndex || internalData.tZindex,
|
|
258
|
-
top: `${top}px`,
|
|
259
|
-
left: `${left}px`
|
|
260
|
-
}
|
|
265
|
+
style: ctxStyle
|
|
261
266
|
});
|
|
262
267
|
$xeTable.$nextTick(() => {
|
|
263
268
|
const tableMenu = $xeTable.$refs.refTableMenu;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let warnLog=(0,_log.createComponentLog)("table").warnLog,{menus,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI;var _default=exports.default={methods:{_closeMenu(){return Object.assign(this.ctxMenuStore,{visible:!1,selected:null,selectChild:null,showChild:!1}),this.$nextTick()},moveCtxMenu(e,t,l,n,o,i){let r;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){r=i[e];break}t[l]=r||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){r=i[e];break}t[l]=r||i[0]}else t[l]&&(globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ENTER)||globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.SPACEBAR))&&this.ctxMenuLinkEvent(e,t[l])},handleGlobalContextmenuEvent(t){var l=this,n=l.$xeGrid,o=l.$xeGantt,e=l;let i=l.xID;var{mouseConfig:r,menuConfig:s}=l,{editStore:u,ctxMenuStore:
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let warnLog=(0,_log.createComponentLog)("table").warnLog,{menus,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI;var _default=exports.default={methods:{_closeMenu(){return Object.assign(this.ctxMenuStore,{visible:!1,selected:null,selectChild:null,showChild:!1}),this.$nextTick()},moveCtxMenu(e,t,l,n,o,i){let r;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){r=i[e];break}t[l]=r||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){r=i[e];break}t[l]=r||i[0]}else t[l]&&(globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ENTER)||globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.SPACEBAR))&&this.ctxMenuLinkEvent(e,t[l])},handleGlobalContextmenuEvent(t){var l=this,n=l.$xeGrid,o=l.$xeGantt,e=l;let i=l.xID;var{mouseConfig:r,menuConfig:s}=l,{editStore:u,ctxMenuStore:d}=l,a=e.visibleColumn,c=l.$refs.refTableFilter,g=l.$refs.refTableMenu,v=l.computeMouseOpts,h=l.computeMenuOpts,f=l.$refs.refElem,u=u.selected,m=["header","body","footer"];if((0,_utils.isEnableConf)(s)){if(d.visible&&g&&(0,_dom.getEventTargetNode)(t,g.$el).flag)return void t.preventDefault();if(e._keyCtx){s="body",d={source:"table",type:s,$table:l,$grid:n,$gantt:o,keyboard:!0,columns:a.slice(0),$event:t};if(r&&v.area){g=l.getActiveCellArea();if(g&&g.row&&g.column)return d.row=g.row,d.column=g.column,void l.handleOpenMenuEvent(t,s,d)}else if(r&&v.selected&&u.row&&u.column)return d.row=u.row,d.column=u.column,void l.handleOpenMenuEvent(t,s,d)}for(let e=0;e<m.length;e++){var x=m[e],b=(0,_dom.getEventTargetNode)(t,f,`vxe-${x}--column`,e=>e.parentNode.parentNode.parentNode.getAttribute("xid")===i),p={source:"table",type:x,$table:l,$grid:n,$gantt:o,columns:a.slice(0),$event:t};if(b.flag){var b=b.targetElem,E=l.getColumnNode(b),E=E?E.item:null;let e=x+"-";E&&Object.assign(p,{column:E,columnIndex:l.getColumnIndex(E),cell:b}),"body"===x&&(b=(E=l.getRowNode(b.parentNode))?E.item:null,e="",b)&&(p.row=b,p.rowIndex=l.getRowIndex(b));E=e+"cell-menu";return l.handleOpenMenuEvent(t,x,p),void(l.$listeners[e+"cell-context-menu"]?(warnLog("vxe.error.delEvent",[e+"cell-context-menu",e+"cell-menu"]),l.dispatchEvent(e+"cell-context-menu",p,t)):l.dispatchEvent(E,p,t))}if((0,_dom.getEventTargetNode)(t,f,`vxe-table--${x}-wrapper`,e=>e.getAttribute("xid")===i).flag||"body"===x&&(0,_dom.getEventTargetNode)(t,f,"vxe-table--empty-place-wrapper",e=>e.getAttribute("xid")===i).flag)return void("cell"===h.trigger?t.preventDefault():l.handleOpenMenuEvent(t,x,p))}}c&&!(0,_dom.getEventTargetNode)(t,c.$el).flag&&l.closeFilter(),l.closeMenu()},handleOpenMenuEvent(g,t,v){let h=this;var e=h.$xeGrid,n=h.$xeGantt;let f=e||n;e=h;let m=h,x=e.ctxMenuStore;n=h.computeIsContentMenu,e=h.computeMenuOpts,t=e[t];let{zIndex:b,transfer:p,width:E,visibleMethod:o}=e;if(t){let{options:l,disabled:e}=t;e?g.preventDefault():n&&l&&l.length&&(v.options=l,h.preventEvent(g,"event.showMenu",v,()=>{if(!o||o(v)){g.preventDefault(),h.updateZindex();var t=(f||h).$refs.refElem.getBoundingClientRect();let{scrollTop:o,scrollLeft:i,visibleHeight:r,visibleWidth:s}=(0,_dom.getDomNode)(),u=g.clientY-t.y,d=g.clientX-t.x,n=(p&&(u=g.clientY+o,d=g.clientX+i),()=>{m._currMenuParams=v;var e={zIndex:b||m.tZindex,top:u+"px",left:d+"px"};E&&(e["--vxe-ui-table-menu-item-width"]=(0,_dom.toCssUnit)(E)),Object.assign(x,{visible:!0,list:l,selected:null,selectChild:null,showChild:!1,style:e}),h.$nextTick(()=>{var e=h.$refs.refTableMenu.$el,t=e.clientHeight,l=e.clientWidth,{boundingTop:e,boundingLeft:n}=(0,_dom.getAbsolutePos)(e),e=e+t-r,n=n+l-s;-10<e&&(x.style.top=Math.max(o+2,u-t-2)+"px"),-10<n&&(x.style.left=Math.max(i+2,d-l-2)+"px")})}),{keyboard:e,row:a,column:c}=v;e&&a&&c?h.scrollToRow(a,c).then(()=>{var e,t,l=h.getCellElement(a,c);l&&({boundingTop:e,boundingLeft:t}=(0,_dom.getAbsolutePos)(l),u=e+o+Math.floor(l.offsetHeight/2),d=t+i+Math.floor(l.offsetWidth/2)),n()}):n()}else h.closeMenu()}))}h.closeFilter()},ctxMenuMouseoverEvent(e,t,l){let d=e.currentTarget;var n=this.ctxMenuStore;e.preventDefault(),e.stopPropagation(),n.selected=t,(n.selectChild=l)||(n.showChild=(0,_utils.hasChildrenList)(t),n.showChild&&this.$nextTick(()=>{var o=d.nextElementSibling;if(o){var{boundingTop:i,boundingLeft:r,visibleHeight:s,visibleWidth:u}=(0,_dom.getAbsolutePos)(d),i=i+d.offsetHeight;let e="",t="",l=(r+d.offsetWidth+o.offsetWidth>u-10&&(e="auto",t=d.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=this.ctxMenuStore;t.children||(l.selected=null),l.selectChild=null},ctxMenuLinkEvent(e,t){var l,n=this,o=n.$xeGrid,i=n.$xeGantt,r=n;t.loading||t.disabled||!t.code&&t.children&&t.children.length||(l=menus.get(t.code),r=Object.assign({},r._currMenuParams,{menu:t,$table:n,$grid:o,$gantt:i,$event:e}),(t=l?l.tableMenuMethod||l.menuMethod:null)&&t(r,e),n.$listeners["context-menu-click"]?(warnLog("vxe.error.delEvent",["context-menu-click","menu-click"]),n.dispatchEvent("context-menu-click",r,e)):n.dispatchEvent("menu-click",r,e),n.closeMenu())}}};
|
package/lib/table/src/methods.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils"));var _dom=require("../../ui/src/dom");var _utils=require("../../ui/src/utils");var _ui=require("../../ui");var _cell=_interopRequireDefault(require("./cell"));var _util=require("./util");var _vn=require("../../ui/src/vn");var _anime=require("../../ui/src/anime");var _log=require("../../ui/src/log");var _store=require("./store");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const{warnLog,errLog}=(0,_log.createComponentLog)('table');const{getConfig,getI18n,renderer,formats,interceptor,createEvent,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI;const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils"));var _dom=require("../../ui/src/dom");var _utils=require("../../ui/src/utils");var _ui=require("../../ui");var _cell=_interopRequireDefault(require("./cell"));var _util=require("./util");var _vn=require("../../ui/src/vn");var _anime=require("../../ui/src/anime");var _log=require("../../ui/src/log");var _store=require("./store");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const{warnLog,errLog}=(0,_log.createComponentLog)('table');const{getConfig,getI18n,renderer,formats,interceptor,createEvent,globalEvents,GLOBAL_EVENT_KEYS}=_ui.VxeUI;const supportMaxRow=5e6;const customStorageKey='VXE_CUSTOM_STORE';const maxYHeight=5e6;const maxXWidth=5e6;const sourceType='table';let crossTableDragRowObj=null;function eqCellValue(newRow,oldRow,field){const val1=_xeUtils.default.get(newRow,field);const val2=_xeUtils.default.get(oldRow,field);let result=false;if((0,_utils.eqEmptyValue)(val1)&&(0,_utils.eqEmptyValue)(val2)){result=true;}else if(_xeUtils.default.isString(val1)||_xeUtils.default.isNumber(val1)){result=''+val1===''+val2;}else{result=_xeUtils.default.isEqual(val1,val2);}return{newValue:val1,oldValue:val2,result};}function hangleStorageDefaultValue(value,isAll){return _xeUtils.default.isBoolean(value)?value:isAll;}function getNextSortOrder($xeTable,column){const sortOpts=$xeTable.computeSortOpts;const{orders=[]}=sortOpts;const currOrder=column.order||null;const oIndex=orders.indexOf(currOrder)+1;return orders[oIndex<orders.length?oIndex:0];}const getCustomStorageMap=id=>{const version=getConfig().version;const rest=_xeUtils.default.toStringJSON(localStorage.getItem(customStorageKey)||'');const maps=rest&&rest._v===version?rest:{_v:version};return(id?maps[id]:maps)||{};};const setCustomStorageMap=(id,data)=>{const version=getConfig().version;const maps=getCustomStorageMap();maps[id]=data||undefined;maps._v=version;localStorage.setItem(customStorageKey,_xeUtils.default.toJSONString(maps));};const getRecoverRowMaps=($xeTable,keyMaps)=>{const internalData=$xeTable;const{fullAllDataRowIdData}=internalData;const restKeys={};_xeUtils.default.each(keyMaps,(row,rowid)=>{if(fullAllDataRowIdData[rowid]){restKeys[rowid]=row;}});return restKeys;};function handleReserveRow($xeTable,reserveRowMap){const internalData=$xeTable;const{fullDataRowIdData}=internalData;const reserveList=[];_xeUtils.default.each(reserveRowMap,(item,rowid)=>{if(fullDataRowIdData[rowid]&&reserveList.indexOf(fullDataRowIdData[rowid].row)===-1){reserveList.push(fullDataRowIdData[rowid].row);}});return reserveList;}function handleVirtualXVisible($xeTable){const reactData=$xeTable;const internalData=$xeTable;const{isScrollXBig,scrollXWidth}=reactData;const{elemStore,visibleColumn,fullColumnIdData}=internalData;const leftFixedWidth=$xeTable.computeLeftFixedWidth;const rightFixedWidth=$xeTable.computeRightFixedWidth;const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);if(bodyScrollElem){const clientWidth=bodyScrollElem.clientWidth;let scrollLeft=bodyScrollElem.scrollLeft;if(isScrollXBig){scrollLeft=Math.ceil((scrollXWidth-clientWidth)*Math.min(1,scrollLeft/(maxXWidth-clientWidth)));}const startLeft=scrollLeft+leftFixedWidth;const endLeft=scrollLeft+clientWidth-rightFixedWidth;let leftIndex=0;let rightIndex=visibleColumn.length;while(leftIndex<rightIndex){const cIndex=Math.floor((leftIndex+rightIndex)/2);const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};if(colRest.oLeft<=startLeft){leftIndex=cIndex+1;}else{rightIndex=cIndex;}}let visibleSize=0;const toVisibleIndex=leftIndex===visibleColumn.length?leftIndex:Math.max(0,leftIndex<visibleColumn.length?leftIndex-2:0);for(let cIndex=toVisibleIndex,cLen=visibleColumn.length;cIndex<cLen;cIndex++){const column=visibleColumn[cIndex];const colid=column.id;const colRest=fullColumnIdData[colid]||{};visibleSize++;if(colRest.oLeft>endLeft||visibleSize>=60){break;}}return{toVisibleIndex:Math.max(0,toVisibleIndex),visibleSize:Math.max(6,visibleSize)};}return{toVisibleIndex:0,visibleSize:6};}function handleCustomRestore($xeTable,storeData){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{aggregateConfig,rowGroupConfig}=props;const{collectColumn}=internalData;const customOpts=$xeTable.computeCustomOpts;const{storage,storeOptions}=customOpts;const isAllCustom=storage===true;const storageOpts=Object.assign({},isAllCustom?{}:storage||{},storeOptions);const isCustomResizable=hangleStorageDefaultValue(storageOpts.resizable,isAllCustom);const isCustomVisible=hangleStorageDefaultValue(storageOpts.visible,isAllCustom);const isCustomFixed=hangleStorageDefaultValue(storageOpts.fixed,isAllCustom);const isCustomSort=hangleStorageDefaultValue(storageOpts.sort,isAllCustom);const isCustomAggGroup=hangleStorageDefaultValue(storageOpts.aggGroup,isAllCustom);const isCustomAggFunc=hangleStorageDefaultValue(storageOpts.aggFunc,isAllCustom);let{resizableData,sortData,visibleData,fixedData,aggGroupData,aggFuncData}=storeData;// 处理还原
|
|
2
2
|
if(isCustomResizable&&resizableData||isCustomSort&&sortData||isCustomVisible&&visibleData||isCustomFixed&&fixedData||isCustomAggGroup&&aggGroupData||isCustomAggFunc&&aggFuncData){const sortColMaps={};if(isCustomSort&&sortData){// 转换兼容老版本数据,即将废弃兼容
|
|
3
3
|
if(!_xeUtils.default.isArray(sortData)){const sortRests=[];_xeUtils.default.each(sortData,(index,colKey)=>{sortRests.push({key:colKey,index});});sortData=_xeUtils.default.orderBy(sortRests,{field:'index',order:'asc'}).map(item=>({k:item.key}));}let colNum=1;_xeUtils.default.eachTree(sortData,(sObj,index,sOjs,path,pSObj)=>{sortColMaps[sObj.k]={key:sObj.k,sNum:colNum++,pKey:pSObj?pSObj.k:null};},{children:'c'});}const colKeyMaps={};const allCols=[];const aggGroupConfs=[];_xeUtils.default.eachTree(collectColumn,(column,index,items,path,parentColumn)=>{const colKey=column.getKey();// 支持一级
|
|
4
4
|
if(!parentColumn){if(isCustomFixed&&fixedData&&fixedData[colKey]!==undefined){column.fixed=fixedData[colKey];}}if(isCustomResizable&&resizableData&&_xeUtils.default.isNumber(resizableData[colKey])){column.resizeWidth=resizableData[colKey];}if(isCustomVisible&&visibleData&&_xeUtils.default.isBoolean(visibleData[colKey])){column.visible=visibleData[colKey];}if(isCustomAggFunc&&aggFuncData&&(aggregateConfig||rowGroupConfig)&&aggFuncData[colKey]){column.aggFunc=aggFuncData[colKey];}if(isCustomAggGroup&&aggGroupData&&aggGroupData[colKey]){aggGroupConfs.push({field:column.field});}colKeyMaps[colKey]=column;allCols.push(column);});if((aggregateConfig||rowGroupConfig)&&aggGroupConfs.length){const groupRest=handleGroupData($xeTable,internalData.tableFullData,aggGroupConfs);internalData.tableFullTreeData=[];internalData.tableFullGroupData=groupRest.treeData;reactData.isRowGroupStatus=true;reactData.rowGroupList=aggGroupConfs;$xeTable.cacheRowMap(false);}// 如果自定义了顺序
|
|
@@ -62,7 +62,7 @@ if(sortMultiple){tableData=_xeUtils.default.orderBy(tableData,orderColumns.map((
|
|
|
62
62
|
if(_xeUtils.default.isArray(firstOrderColumn.sortBy)){sortByConfs=firstOrderColumn.sortBy.map(item=>[item,firstOrderColumn.order]);}tableData=_xeUtils.default.orderBy(tableData,sortByConfs||[firstOrderColumn].map(({column,order})=>[getOrderField($xeTable,column),order]));}tableData=_xeUtils.default.orderBy(tableData,orderColumns.map(({column,order})=>[getOrderField($xeTable,column),order]));}tableTree=tableData;}}}else{if(isRowGroupStatus){// 还原行分组
|
|
63
63
|
// 还原虚拟树
|
|
64
64
|
tableTree=_xeUtils.default.searchTree(tableFullGroupData,()=>true,{original:true,isEvery:true,children:aggregateOpts.mapChildrenField,mapChildren:aggregateOpts.childrenField});tableData=tableTree;}else if(treeConfig&&transform&&isSortDeep!==false){// 还原虚拟树
|
|
65
|
-
tableTree=_xeUtils.default.searchTree(tableFullTreeData,()=>true,{original:true,isEvery,children:mapChildrenField,mapChildren:childrenField});tableData=tableTree;}else{tableData=treeConfig?tableFullTreeData.slice(0):tableFullData.slice(0);tableTree=tableData;}}internalData.afterFullData=tableData;internalData.afterTreeFullData=tableTree;internalData.afterGroupFullData=tableTree;updateAfterDataIndex($xeTable);}function updateStyle($xeTable){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const $xeGantt=$xeTable.$xeGantt;const{mouseConfig}=props;const{isGroup,tableColumn,overflowX,scrollbarWidth,overflowY,scrollbarHeight,scrollXWidth,columnStore,editStore,isColLoading}=reactData;const{visibleColumn,tableHeight,elemStore,currentRow,customHeight,customMinHeight,customMaxHeight,tHeaderHeight,tFooterHeight}=internalData;const $xeGanttView=internalData.xeGanttView;const el=$xeTable.$refs.refElem;if(!el||internalData.tBodyHeight&&!el.clientHeight){return;}const containerList=['main','left','right'];const{leftList,rightList}=columnStore;let osbWidth=overflowY?scrollbarWidth:0;let osbHeight=overflowX?scrollbarHeight:0;const emptyPlaceholderElem=$xeTable.$refs.refEmptyPlaceholder;const isHeaderRenderOptimize=$xeTable.computeIsHeaderRenderOptimize;const isBodyRenderOptimize=$xeTable.computeIsBodyRenderOptimize;const isFooterRenderOptimize=$xeTable.computeIsFooterRenderOptimize;const scrollbarOpts=$xeTable.computeScrollbarOpts;const mouseOpts=$xeTable.computeMouseOpts;const bodyWrapperElem=(0,_util.getRefElem)(elemStore['main-body-wrapper']);const bodyTableElem=(0,_util.getRefElem)(elemStore['main-body-table']);if(emptyPlaceholderElem){emptyPlaceholderElem.style.top=`${tHeaderHeight}px`;emptyPlaceholderElem.style.height=bodyWrapperElem?`${bodyWrapperElem.offsetHeight-osbHeight}px`:'';}const scrollbarXConf=scrollbarOpts.x||{};const scrollbarYConf=scrollbarOpts.y||{};const scrollbarYToLeft=$xeTable.computeScrollbarYToLeft;let xScrollbarVisible=overflowX?'visible':'hidden';if(scrollbarXConf.visible==='visible'||$xeGanttView){osbHeight=scrollbarHeight;xScrollbarVisible='visible';}else if(scrollbarXConf.visible==='hidden'||scrollbarXConf.visible===false){osbHeight=0;xScrollbarVisible='hidden';}let yScrollbarVisible=overflowY?'visible':'hidden';if(scrollbarYConf.visible==='hidden'||scrollbarYConf.visible===false||$xeGantt&&$xeGanttView&&$xeGantt.reactData.showRightView&&!scrollbarYToLeft){osbWidth=0;yScrollbarVisible='hidden';}else if(scrollbarYConf.visible==='visible'){osbWidth=scrollbarWidth;yScrollbarVisible='visible';}let tbHeight=0;let bodyMaxHeight=0;const bodyMinHeight=customMinHeight-tHeaderHeight-tFooterHeight-osbHeight;if(customMaxHeight){bodyMaxHeight=Math.max(bodyMinHeight,customMaxHeight-tHeaderHeight-tFooterHeight-osbHeight);}if(customHeight){tbHeight=customHeight-tHeaderHeight-tFooterHeight-osbHeight;}if(!tbHeight){if(bodyTableElem){tbHeight=bodyTableElem.clientHeight;}}if(tbHeight){if(bodyMaxHeight){tbHeight=Math.min(bodyMaxHeight,tbHeight);}tbHeight=Math.max(bodyMinHeight,tbHeight);}const xLeftCornerEl=$xeTable.$refs.refScrollXLeftCornerElem;const xRightCornerEl=$xeTable.$refs.refScrollXRightCornerElem;const scrollXVirtualEl=$xeTable.$refs.refScrollXVirtualElem;if(scrollXVirtualEl){scrollXVirtualEl.style.height=`${osbHeight}px`;scrollXVirtualEl.style.visibility=xScrollbarVisible;}const xWrapperEl=$xeTable.$refs.refScrollXWrapperElem;if(xWrapperEl){xWrapperEl.style.width=`${el.clientWidth-osbWidth}px`;if(scrollbarYToLeft){xWrapperEl.style.left=`${osbWidth}px`;}else{xWrapperEl.style.left='';}}if(xLeftCornerEl){if(scrollbarYToLeft){xLeftCornerEl.style.width=`${osbWidth}px`;xLeftCornerEl.style.display=overflowY&&osbWidth?'block':'';}else{xLeftCornerEl.style.display='';}}if(xRightCornerEl){if(scrollbarYToLeft){xRightCornerEl.style.display='';}else{xRightCornerEl.style.width=`${osbWidth}px`;xRightCornerEl.style.display=xScrollbarVisible==='visible'?'block':'';}}const scrollYVirtualEl=$xeTable.$refs.refScrollYVirtualElem;if(scrollYVirtualEl){scrollYVirtualEl.style.width=`${osbWidth}px`;scrollYVirtualEl.style.height=`${tbHeight+tHeaderHeight+tFooterHeight}px`;scrollYVirtualEl.style.visibility=yScrollbarVisible;}const yTopCornerEl=$xeTable.$refs.refScrollYTopCornerElem;if(yTopCornerEl){yTopCornerEl.style.height=`${tHeaderHeight}px`;yTopCornerEl.style.display=tHeaderHeight&&yScrollbarVisible==='visible'?'block':'';}const yWrapperEl=$xeTable.$refs.refScrollYWrapperElem;if(yWrapperEl){yWrapperEl.style.height=`${tbHeight}px`;yWrapperEl.style.top=`${tHeaderHeight}px`;}const yBottomCornerEl=$xeTable.$refs.refScrollYBottomCornerElem;if(yBottomCornerEl){yBottomCornerEl.style.height=`${tFooterHeight}px`;yBottomCornerEl.style.top=`${tHeaderHeight+tbHeight}px`;yBottomCornerEl.style.display=tFooterHeight&&yScrollbarVisible==='visible'?'block':'';}const rowExpandEl=$xeTable.$refs.refRowExpandElem;if(rowExpandEl){rowExpandEl.style.height=`${tbHeight}px`;rowExpandEl.style.top=`${tHeaderHeight}px`;}internalData.tBodyHeight=tbHeight;containerList.forEach((name,index)=>{const fixedType=index>0?name:'';const layoutList=['header','body','footer'];const isFixedLeft=fixedType==='left';let fixedColumn=[];let fixedWrapperElem;if(fixedType){fixedColumn=isFixedLeft?leftList:rightList;fixedWrapperElem=isFixedLeft?$xeTable.$refs.refLeftContainer:$xeTable.$refs.refRightContainer;}layoutList.forEach(layout=>{const wrapperElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-wrapper`]);const currScrollElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-scroll`]);const tableElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-table`]);if(layout==='header'){// 表头体样式处理
|
|
65
|
+
tableTree=_xeUtils.default.searchTree(tableFullTreeData,()=>true,{original:true,isEvery,children:mapChildrenField,mapChildren:childrenField});tableData=tableTree;}else{tableData=treeConfig?tableFullTreeData.slice(0):tableFullData.slice(0);tableTree=tableData;}}internalData.afterFullData=tableData;internalData.afterTreeFullData=tableTree;internalData.afterGroupFullData=tableTree;updateAfterDataIndex($xeTable);}function updateStyle($xeTable){const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const $xeGantt=$xeTable.$xeGantt;const{mouseConfig}=props;const{isGroup,tableColumn,overflowX,scrollbarWidth,overflowY,scrollbarHeight,scrollXWidth,columnStore,editStore,isColLoading}=reactData;const{visibleColumn,tableHeight,elemStore,currentRow,customHeight,customMinHeight,customMaxHeight,tHeaderHeight,tFooterHeight}=internalData;const $xeGanttView=internalData.xeGanttView;const el=$xeTable.$refs.refElem;if(!el||internalData.tBodyHeight&&!el.clientHeight){return;}const browseObj=_xeUtils.default.browse();const containerList=['main','left','right'];const{leftList,rightList}=columnStore;let osbWidth=overflowY?scrollbarWidth:0;let osbHeight=overflowX?scrollbarHeight:0;const emptyPlaceholderElem=$xeTable.$refs.refEmptyPlaceholder;const isHeaderRenderOptimize=$xeTable.computeIsHeaderRenderOptimize;const isBodyRenderOptimize=$xeTable.computeIsBodyRenderOptimize;const isFooterRenderOptimize=$xeTable.computeIsFooterRenderOptimize;const scrollbarOpts=$xeTable.computeScrollbarOpts;const mouseOpts=$xeTable.computeMouseOpts;const bodyWrapperElem=(0,_util.getRefElem)(elemStore['main-body-wrapper']);const bodyTableElem=(0,_util.getRefElem)(elemStore['main-body-table']);if(emptyPlaceholderElem){emptyPlaceholderElem.style.top=`${tHeaderHeight}px`;emptyPlaceholderElem.style.height=bodyWrapperElem?`${bodyWrapperElem.offsetHeight-osbHeight}px`:'';}const scrollbarXConf=scrollbarOpts.x||{};const scrollbarYConf=scrollbarOpts.y||{};const scrollbarYToLeft=$xeTable.computeScrollbarYToLeft;let xScrollbarVisible=overflowX?'visible':'hidden';if(scrollbarXConf.visible==='visible'||$xeGanttView){osbHeight=scrollbarHeight;xScrollbarVisible='visible';}else if(scrollbarXConf.visible==='hidden'||scrollbarXConf.visible===false){osbHeight=0;xScrollbarVisible='hidden';}let yScrollbarVisible=overflowY?'visible':'hidden';if(scrollbarYConf.visible==='hidden'||scrollbarYConf.visible===false||$xeGantt&&$xeGanttView&&$xeGantt.reactData.showRightView&&!scrollbarYToLeft){osbWidth=0;yScrollbarVisible='hidden';}else if(scrollbarYConf.visible==='visible'){osbWidth=scrollbarWidth;yScrollbarVisible='visible';}let tbHeight=0;let bodyMaxHeight=0;const bodyMinHeight=customMinHeight-tHeaderHeight-tFooterHeight-osbHeight;if(customMaxHeight){bodyMaxHeight=Math.max(bodyMinHeight,customMaxHeight-tHeaderHeight-tFooterHeight-osbHeight);}if(customHeight){tbHeight=customHeight-tHeaderHeight-tFooterHeight-osbHeight;}if(!tbHeight){if(bodyTableElem){tbHeight=bodyTableElem.clientHeight;}}if(tbHeight){if(bodyMaxHeight){tbHeight=Math.min(bodyMaxHeight,tbHeight);}tbHeight=Math.max(bodyMinHeight,tbHeight);}const xLeftCornerEl=$xeTable.$refs.refScrollXLeftCornerElem;const xRightCornerEl=$xeTable.$refs.refScrollXRightCornerElem;const scrollXVirtualEl=$xeTable.$refs.refScrollXVirtualElem;if(scrollXVirtualEl){scrollXVirtualEl.style.height=`${osbHeight}px`;scrollXVirtualEl.style.visibility=xScrollbarVisible;}const xWrapperEl=$xeTable.$refs.refScrollXWrapperElem;if(xWrapperEl){xWrapperEl.style.width=`${el.clientWidth-osbWidth}px`;if(scrollbarYToLeft){xWrapperEl.style.left=`${osbWidth}px`;}else{xWrapperEl.style.left='';}}if(xLeftCornerEl){if(scrollbarYToLeft){xLeftCornerEl.style.width=`${osbWidth}px`;xLeftCornerEl.style.display=overflowY&&osbWidth?'block':'';}else{xLeftCornerEl.style.display='';}}if(xRightCornerEl){if(scrollbarYToLeft){xRightCornerEl.style.display='';}else{xRightCornerEl.style.width=`${osbWidth}px`;xRightCornerEl.style.display=xScrollbarVisible==='visible'?'block':'';}}const scrollYVirtualEl=$xeTable.$refs.refScrollYVirtualElem;if(scrollYVirtualEl){scrollYVirtualEl.style.width=`${osbWidth}px`;scrollYVirtualEl.style.height=`${tbHeight+tHeaderHeight+tFooterHeight}px`;scrollYVirtualEl.style.visibility=yScrollbarVisible;}const yTopCornerEl=$xeTable.$refs.refScrollYTopCornerElem;if(yTopCornerEl){yTopCornerEl.style.height=`${tHeaderHeight}px`;yTopCornerEl.style.display=tHeaderHeight&&yScrollbarVisible==='visible'?'block':'';}const yWrapperEl=$xeTable.$refs.refScrollYWrapperElem;if(yWrapperEl){yWrapperEl.style.height=`${tbHeight}px`;yWrapperEl.style.top=`${tHeaderHeight}px`;}const yBottomCornerEl=$xeTable.$refs.refScrollYBottomCornerElem;if(yBottomCornerEl){yBottomCornerEl.style.height=`${tFooterHeight}px`;yBottomCornerEl.style.top=`${tHeaderHeight+tbHeight}px`;yBottomCornerEl.style.display=tFooterHeight&&yScrollbarVisible==='visible'?'block':'';}const rowExpandEl=$xeTable.$refs.refRowExpandElem;if(rowExpandEl){rowExpandEl.style.height=`${tbHeight}px`;rowExpandEl.style.top=`${tHeaderHeight}px`;}internalData.tBodyHeight=tbHeight;containerList.forEach((name,index)=>{const fixedType=index>0?name:'';const layoutList=['header','body','footer'];const isFixedLeft=fixedType==='left';let fixedColumn=[];let fixedWrapperElem;if(fixedType){fixedColumn=isFixedLeft?leftList:rightList;fixedWrapperElem=isFixedLeft?$xeTable.$refs.refLeftContainer:$xeTable.$refs.refRightContainer;}layoutList.forEach(layout=>{const wrapperElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-wrapper`]);const currScrollElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-scroll`]);const tableElem=(0,_util.getRefElem)(elemStore[`${name}-${layout}-table`]);if(layout==='header'){// 表头体样式处理
|
|
66
66
|
// 横向滚动渲染
|
|
67
67
|
let renderColumnList=tableColumn;const isOptimizeMode=isHeaderRenderOptimize;if(isGroup){renderColumnList=visibleColumn;}else{if(!isOptimizeMode||!isColLoading&&(fixedType||!overflowX)){renderColumnList=visibleColumn;}if(fixedType){// 如果是使用优化模式
|
|
68
68
|
if(isOptimizeMode){renderColumnList=fixedColumn||[];}}}const tWidth=renderColumnList.reduce((previous,column)=>previous+column.renderWidth,0);if(fixedType){if(isGroup){if(wrapperElem){wrapperElem.style.width=scrollXWidth?`${scrollXWidth}px`:'';}}else{if(isOptimizeMode){if(wrapperElem){wrapperElem.style.width=tWidth?`${tWidth}px`:'';}}else{if(wrapperElem){wrapperElem.style.width=scrollXWidth?`${scrollXWidth}px`:'';}}}}if(currScrollElem){currScrollElem.style.height=`${tHeaderHeight}px`;}if(tableElem){tableElem.style.width=tWidth?`${tWidth}px`:'';}}else if(layout==='body'){if(currScrollElem){currScrollElem.style.maxHeight=customMaxHeight?`${bodyMaxHeight}px`:'';currScrollElem.style.height=customHeight?`${tbHeight}px`:'';currScrollElem.style.minHeight=`${bodyMinHeight}px`;}// 如果是固定列
|
|
@@ -149,7 +149,7 @@ remainList.forEach(column=>{const width=Math.max(meanWidth,minCellWidth);column.
|
|
|
149
149
|
* 计算自适应行高
|
|
150
150
|
*/const calcCellAutoHeight=($xeTable,rowid,rowRest,wrapperEl)=>{const internalData=$xeTable;const{fullCellHeightMaps}=internalData;let chRest=fullCellHeightMaps[rowid];if(!chRest){chRest={};fullCellHeightMaps[rowid]=chRest;}const wrapperElemList=wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);let firstCellStyle=null;let topBottomPadding=0;let changeCH=false;for(let i=0;i<wrapperElemList.length;i++){const wrapperElem=wrapperElemList[i];const cellElem=wrapperElem.parentElement;const cellStyle=cellElem.style;const orHeight=cellStyle.height;const colid=wrapperElem.getAttribute('colid')||'';cellStyle.height='';if(!firstCellStyle){firstCellStyle=getComputedStyle(cellElem);topBottomPadding=firstCellStyle?Math.ceil(_xeUtils.default.toNumber(firstCellStyle.paddingTop)+_xeUtils.default.toNumber(firstCellStyle.paddingBottom)):0;}const cellHeight=wrapperElem?wrapperElem.clientHeight:0;const colHeight=Math.ceil(cellHeight+topBottomPadding);if(chRest[colid]!==colHeight){changeCH=true;chRest[colid]=colHeight;}cellStyle.height=orHeight;}const cellMaxHeight=(0,_util.getRowMaxHeight)(chRest,changeCH);return cellMaxHeight;};/**
|
|
151
151
|
* 自适应行高
|
|
152
|
-
*/const calcCellHeight=$xeTable=>{const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig}=props;const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const treeOpts=$xeTable.computeTreeOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;if(!isAllOverflow&&(scrollYLoad||scrollXLoad||treeConfig&&treeOpts.showLine)){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const height=calcCellAutoHeight($xeTable,rowid,rowRest,el);rowRest.height=Math.max(defaultRowHeight,height);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}};function getOrderField($xeTable,column){const reactData=$xeTable;const{isRowGroupStatus}=reactData;const{sortBy,sortType,aggFunc}=column;return isRowGroupStatus&&aggFunc?row=>{if(row.isAggregate){const aggData=row.aggData;const currAggData=aggData?aggData[column.field]:null;return currAggData?currAggData.value:null;}let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=$xeTable.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return
|
|
152
|
+
*/const calcCellHeight=$xeTable=>{const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig}=props;const{tableData,isAllOverflow,scrollYLoad,scrollXLoad}=reactData;const{fullAllDataRowIdData}=internalData;const el=$xeTable.$refs.refElem;if(!el||!el.clientWidth){return;}const treeOpts=$xeTable.computeTreeOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;if(!isAllOverflow&&(scrollYLoad||scrollXLoad||treeConfig&&treeOpts.showLine)){const{handleGetRowId}=(0,_util.createHandleGetRowId)($xeTable);el.setAttribute('data-calc-row','Y');tableData.forEach(row=>{const rowid=handleGetRowId(row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const height=calcCellAutoHeight($xeTable,rowid,rowRest,el);rowRest.height=Math.max(defaultRowHeight,height);}el.removeAttribute('data-calc-row');});reactData.calcCellHeightFlag++;}};function getOrderField($xeTable,column){const reactData=$xeTable;const{isRowGroupStatus}=reactData;const{sortBy,sortType,aggFunc}=column;return isRowGroupStatus&&aggFunc?row=>{if(row.isAggregate){const aggData=row.aggData;const currAggData=aggData?aggData[column.field]:null;return currAggData?currAggData.value:null;}let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=$xeTable.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return(0,_utils.eqEmptyValue)(cellValue)||isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;}:row=>{let cellValue;if(sortBy){cellValue=_xeUtils.default.isFunction(sortBy)?sortBy({row,column}):_xeUtils.default.get(row,sortBy);}else{cellValue=$xeTable.getCellLabel(row,column);}if(!sortType||sortType==='auto'){return(0,_utils.eqEmptyValue)(cellValue)||isNaN(cellValue)?cellValue:_xeUtils.default.toNumber(cellValue);}else if(sortType==='number'){return _xeUtils.default.toNumber(cellValue);}else if(sortType==='string'){return _xeUtils.default.toValueString(cellValue);}return cellValue;};}function handleTargetEnterEvent($xeTable,isClear){const internalData=$xeTable;const $tooltip=$xeTable.$refs.refTooltip;clearTimeout(internalData.tooltipTimeout);if(isClear){$xeTable.closeTooltip();}else{if($tooltip&&$tooltip.setActived){$tooltip.setActived(true);}}}function clearCrossTableDragStatus($xeTable){const crossTableDragRowInfo=(0,_store.getCrossTableDragRowInfo)($xeTable);crossTableDragRowObj=null;crossTableDragRowInfo.row=null;}function clearDragStatus($xeTable){const reactData=$xeTable;const{dragRow,dragCol}=reactData;if(dragRow||dragCol){clearColDropOrigin($xeTable);clearRowDropOrigin($xeTable);hideDropTip($xeTable);clearCrossTableDragStatus($xeTable);reactData.dragRow=null;reactData.dragCol=null;}}function handleRowDragEndClearStatus($xeTable){clearRowDragData($xeTable);clearCrossTableDragStatus($xeTable);handleRecalculateStyle($xeTable,false,true,true);}function handleColDragEndClearStatus($xeTable){clearColDragData($xeTable);clearCrossTableDragStatus($xeTable);handleRecalculateStyle($xeTable,true,true,true);}function clearRowDropOrigin($xeTable){const el=$xeTable.$el;if(el){const clss='row--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}}function updateRowDropOrigin($xeTable,row){const el=$xeTable.$el;if(el){const clss='row--drag-origin';const rowid=(0,_util.getRowid)($xeTable,row);_xeUtils.default.arrayEach(el.querySelectorAll(`[rowid="${rowid}"]`),elem=>{(0,_dom.addClass)(elem,clss);});}}function updateRowDropTipContent($xeTable,tdEl){const reactData=$xeTable;const props=$xeTable;const{dragConfig}=props;const{dragRow}=reactData;const rowDragOpts=$xeTable.computeRowDragOpts;const{tooltipMethod}=rowDragOpts;const rTooltipMethod=tooltipMethod||(dragConfig?dragConfig.rowTooltipMethod:null);let tipContent='';if(rTooltipMethod){const rtParams={$table:$xeTable,row:dragRow};tipContent=`${rTooltipMethod(rtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;}function updateColDropOrigin($xeTable,column){const el=$xeTable.$el;if(el){const colQuerys=[];_xeUtils.default.eachTree([column],item=>{colQuerys.push(`[colid="${item.id}"]`);});const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(colQuerys.join(',')),elem=>{(0,_dom.addClass)(elem,clss);});}}function clearColDropOrigin($xeTable){const el=$xeTable.$el;if(el){const clss='col--drag-origin';_xeUtils.default.arrayEach(el.querySelectorAll(`.${clss}`),elem=>{elem.draggable=false;(0,_dom.removeClass)(elem,clss);});}}function updateColDropTipContent($xeTable,tdEl){const reactData=$xeTable;const{dragCol}=reactData;const columnDragOpts=$xeTable.computeColumnDragOpts;const{tooltipMethod}=columnDragOpts;let tipContent='';if(tooltipMethod){const dtParams={$table:$xeTable,column:dragCol};tipContent=`${tooltipMethod(dtParams)||''}`;}else{tipContent=getI18n('vxe.table.dragTip',[tdEl.textContent||'']);}reactData.dragTipText=tipContent;}function showDropTip($xeTable,evnt,trEl,thEl,showLine,dragPos){const $xeGantt=$xeTable.$xeGantt;const reactData=$xeTable;const internalData=$xeTable;let wrapperEl=$xeTable.$refs.refElem;if($xeGantt&&trEl){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){wrapperEl=ganttContainerElem;}}if(!wrapperEl){return;}const{overflowX,scrollbarWidth,overflowY,scrollbarHeight}=reactData;const{prevDragToChild}=internalData;const wrapperRect=wrapperEl.getBoundingClientRect();const osbWidth=overflowY?scrollbarWidth:0;const osbHeight=overflowX?scrollbarHeight:0;const tableWrapperWidth=wrapperEl.clientWidth;const tableWrapperHeight=wrapperEl.clientHeight;if(trEl){const rdLineEl=$xeTable.$refs.refDragRowLineElem;if(rdLineEl){if(showLine){const scrollbarYToLeft=$xeTable.computeScrollbarYToLeft;const trRect=trEl.getBoundingClientRect();let trHeight=trEl.clientHeight;const offsetTop=Math.max(1,trRect.y-wrapperRect.y);if(offsetTop+trHeight>tableWrapperHeight-osbHeight){trHeight=tableWrapperHeight-offsetTop-osbHeight;}rdLineEl.style.display='block';rdLineEl.style.left=`${scrollbarYToLeft?osbWidth:0}px`;rdLineEl.style.top=`${offsetTop}px`;rdLineEl.style.height=`${trHeight}px`;rdLineEl.style.width=`${tableWrapperWidth-osbWidth}px`;rdLineEl.setAttribute('drag-pos',dragPos);rdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{rdLineEl.style.display='';}}}else if(thEl){const cdLineEl=$xeTable.$refs.refDragColLineElem;if(cdLineEl){if(showLine){const scrollbarXToTop=$xeTable.computeScrollbarXToTop;const leftContainerElem=$xeTable.$refs.refLeftContainer;const leftContainerWidth=leftContainerElem?leftContainerElem.clientWidth:0;const rightContainerElem=$xeTable.$refs.refRightContainer;const rightContainerWidth=rightContainerElem?rightContainerElem.clientWidth:0;const thRect=thEl.getBoundingClientRect();let thWidth=thEl.clientWidth;const offsetTop=Math.max(0,thRect.y-wrapperRect.y);const startX=leftContainerWidth;let offsetLeft=thRect.x-wrapperRect.x;if(offsetLeft<startX){thWidth-=startX-offsetLeft;offsetLeft=startX;}const endX=tableWrapperWidth-rightContainerWidth-(rightContainerWidth?0:osbWidth);if(offsetLeft+thWidth>endX){thWidth=endX-offsetLeft;}cdLineEl.style.display='block';cdLineEl.style.top=`${offsetTop}px`;cdLineEl.style.left=`${offsetLeft}px`;cdLineEl.style.width=`${thWidth}px`;if(prevDragToChild){cdLineEl.style.height=`${thRect.height}px`;}else{cdLineEl.style.height=`${tableWrapperHeight-offsetTop-(scrollbarXToTop?0:osbHeight)}px`;}cdLineEl.setAttribute('drag-pos',dragPos);cdLineEl.setAttribute('drag-to-child',prevDragToChild?'y':'n');}else{cdLineEl.style.display='';}}}const rdTipEl=$xeTable.$refs.refDragTipElem;if(rdTipEl){rdTipEl.style.display='block';rdTipEl.style.top=`${Math.min(wrapperEl.clientHeight-wrapperEl.scrollTop-rdTipEl.clientHeight,evnt.clientY-wrapperRect.y)}px`;rdTipEl.style.left=`${Math.min(wrapperEl.clientWidth-wrapperEl.scrollLeft-rdTipEl.clientWidth-16,evnt.clientX-wrapperRect.x)}px`;rdTipEl.setAttribute('drag-status',showLine?prevDragToChild?'sub':'normal':'disabled');}}function hideDropTip($xeTable){const rdTipEl=$xeTable.$refs.refDragTipElem;const rdLineEl=$xeTable.$refs.refDragRowLineElem;const cdLineEl=$xeTable.$refs.refDragColLineElem;if(rdTipEl){rdTipEl.style.display='';}if(rdLineEl){rdLineEl.style.display='';}if(cdLineEl){cdLineEl.style.display='';}}function clearRowDragData($xeTable){const $xeGantt=$xeTable.$xeGantt;const reactData=$xeTable;const internalData=$xeTable;let wrapperEl=$xeTable.$refs.refElem;const dtClss=['.vxe-body--row'];if($xeGantt){const ganttContainerElem=$xeGantt.$refs.refGanttContainerElem;if(ganttContainerElem){wrapperEl=ganttContainerElem;}dtClss.push('.vxe-gantt-view--body-row','.vxe-gantt-view--chart-row');}hideDropTip($xeTable);clearRowDropOrigin($xeTable);(0,_anime.clearRowAnimate)(wrapperEl,dtClss);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;}function clearColDragData($xeTable){const reactData=$xeTable;const internalData=$xeTable;const el=$xeTable.$refs.refElem;hideDropTip($xeTable);clearColDropOrigin($xeTable);(0,_anime.clearColAnimate)(el,['.vxe-table--column']);internalData.prevDragToChild=false;reactData.dragRow=null;reactData.dragCol=null;}/**
|
|
153
153
|
* 处理显示 tooltip
|
|
154
154
|
* @param {Event} evnt 事件
|
|
155
155
|
* @param {Row} row 行对象
|
|
@@ -685,7 +685,7 @@ if((0,_utils.isEnableConf)(editConfig)&&editOpts.trigger==='dblclick'){if(active
|
|
|
685
685
|
* 单元格按下事件
|
|
686
686
|
*/triggerCellMousedownEvent(evnt,params){const $xeTable=this;const{column}=params;const{type,treeNode}=column;const isRadioType=type==='radio';const isCheckboxType=type==='checkbox';const isExpandType=type==='expand';const rowOpts=$xeTable.computeRowOpts;const rowDragOpts=$xeTable.computeRowDragOpts;const{trigger,isCrossDrag,isPeerDrag,disabledMethod}=rowDragOpts;const cell=evnt.currentTarget;params.cell=cell;const triggerInput=cell&&cell.tagName&&cell.tagName.toLowerCase()==='input';const triggerRadio=isRadioType&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-cell--radio').flag;const triggerCheckbox=isCheckboxType&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-cell--checkbox').flag;const triggerTreeNode=treeNode&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-cell--tree-btn').flag;const triggerExpandNode=isExpandType&&(0,_dom.getEventTargetNode)(evnt,cell,'vxe-table--expanded').flag;let isColDragCell=false;if(rowOpts.drag){isColDragCell=trigger==='row'||column.dragSort&&trigger==='cell';}let triggerDrag=false;if(!(triggerInput||triggerRadio||triggerCheckbox||triggerTreeNode||triggerExpandNode)){if(isColDragCell&&(isCrossDrag||isPeerDrag||!params.level)&&!(disabledMethod&&disabledMethod(params))){triggerDrag=true;$xeTable.handleCellDragMousedownEvent(evnt,params);}}if(!triggerDrag&&$xeTable.handleCellMousedownEvent){$xeTable.handleCellMousedownEvent(evnt,params);}$xeTable.focus();$xeTable.closeFilter();if($xeTable.closeMenu){$xeTable.closeMenu();}},triggerCellMouseupEvent(){const $xeTable=this;clearDragStatus($xeTable);},/**
|
|
687
687
|
* 行拖拽
|
|
688
|
-
*/handleRowDragDragstartEvent(evnt){if(evnt.dataTransfer){evnt.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0);}},handleRowDragSwapEvent(evnt,isSyncRow,dragRow,prevDragRow,prevDragPos,prevDragToChild){const $xeTable=this;const $xeGantt=$xeTable.$xeGantt;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig,dragConfig}=props;const rowDragOpts=$xeTable.computeRowDragOpts;const{afterFullData,tableFullData,fullAllDataRowIdData}=internalData;const{animation,isPeerDrag,isCrossDrag,isSelfToChildDrag,dragEndMethod,dragToChildMethod}=rowDragOpts;const treeOpts=$xeTable.computeTreeOpts;const cellOpts=$xeTable.computeCellOpts;const rowOpts=$xeTable.computeRowOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const{transform,rowField,mapChildrenField,parentField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const dEndMethod=dragEndMethod||(dragConfig?dragConfig.dragEndMethod:null);const dragOffsetIndex=prevDragPos==='bottom'?1:0;const el=$xeTable.$refs.refElem;const errRest={status:false};if(!(el&&prevDragRow&&dragRow)){return Promise.resolve(errRest);}// 判断是否有拖动
|
|
688
|
+
*/handleRowDragDragstartEvent(evnt){const $xeTable=this;if(evnt.dataTransfer){evnt.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0);}$xeTable.closeTooltip();},handleRowDragSwapEvent(evnt,isSyncRow,dragRow,prevDragRow,prevDragPos,prevDragToChild){const $xeTable=this;const $xeGantt=$xeTable.$xeGantt;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig,dragConfig}=props;const rowDragOpts=$xeTable.computeRowDragOpts;const{afterFullData,tableFullData,fullAllDataRowIdData}=internalData;const{animation,isPeerDrag,isCrossDrag,isSelfToChildDrag,dragEndMethod,dragToChildMethod}=rowDragOpts;const treeOpts=$xeTable.computeTreeOpts;const cellOpts=$xeTable.computeCellOpts;const rowOpts=$xeTable.computeRowOpts;const defaultRowHeight=$xeTable.computeDefaultRowHeight;const{transform,rowField,mapChildrenField,parentField}=treeOpts;const childrenField=treeOpts.children||treeOpts.childrenField;const dEndMethod=dragEndMethod||(dragConfig?dragConfig.dragEndMethod:null);const dragOffsetIndex=prevDragPos==='bottom'?1:0;const el=$xeTable.$refs.refElem;const errRest={status:false};if(!(el&&prevDragRow&&dragRow)){return Promise.resolve(errRest);}// 判断是否有拖动
|
|
689
689
|
if(prevDragRow!==dragRow){const dragParams={oldRow:dragRow,newRow:prevDragRow,dragRow,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};const dragRowid=(0,_util.getRowid)($xeTable,dragRow);const dragRowRest=fullAllDataRowIdData[dragRowid]||{};const _dragRowIndex=dragRowRest._index;let dragRowHeight=0;let dragOffsetTop=-1;if(animation){dragRowHeight=(0,_util.getCellRestHeight)(dragRowRest,cellOpts,rowOpts,defaultRowHeight);const oldTrEl=el.querySelector(`.vxe-body--row[rowid="${dragRowid}"]`);if(oldTrEl){dragOffsetTop=oldTrEl.offsetTop;}}let oafIndex=-1;let nafIndex=-1;const oldRest=dragRowRest;const newRowid=(0,_util.getRowid)($xeTable,prevDragRow);const newRest=fullAllDataRowIdData[newRowid];const oldAllMaps={};let isSelfToChildStatus=false;// 如果为树结构
|
|
690
690
|
if(treeConfig){if(transform){if(oldRest&&newRest){const{level:oldLevel}=oldRest;const{level:newLevel}=newRest;_xeUtils.default.eachTree([dragRow],item=>{oldAllMaps[(0,_util.getRowid)($xeTable,item)]=item;},{children:mapChildrenField});if(oldLevel&&newLevel){// 子到子
|
|
691
691
|
if(isPeerDrag&&!isCrossDrag){if(oldRest.row[parentField]!==newRest.row[parentField]){// 非同级
|
|
@@ -715,7 +715,7 @@ if(isCrossTableDrag&&crossTableDragRowObj){const{$newTable}=crossTableDragRowObj
|
|
|
715
715
|
const newRowid=(0,_util.getRowid)($xeTable,prevDragRow);const rowRest=fullAllDataRowIdData[newRowid];if(prevDragRow[hasChildField]){if(rowRest&&rowRest.treeLoaded){$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}}else{$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}}else{$xeTable.handleRowDragSwapEvent(evnt,true,dragRow,prevDragRow,prevDragPos,prevDragToChild);}},handleRowDragDragoverEvent(evnt){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{treeConfig}=props;const{fullAllDataRowIdData}=internalData;const{dragRow}=reactData;const treeOpts=$xeTable.computeTreeOpts;const{lazy,transform,parentField}=treeOpts;const hasChildField=treeOpts.hasChild||treeOpts.hasChildField;const rowDragOpts=$xeTable.computeRowDragOpts;const{isPeerDrag,isCrossDrag,isToChildDrag,isCrossTableDrag}=rowDragOpts;if(!dragRow&&!(isCrossTableDrag&&(!treeConfig||isCrossDrag)&&crossTableDragRowObj)){evnt.preventDefault();return;}const isControlKey=(0,_dom.hasControlKey)(evnt);const trEl=evnt.currentTarget;const rowid=trEl.getAttribute('rowid')||'';const rowRest=fullAllDataRowIdData[rowid];if(rowRest){evnt.preventDefault();const row=rowRest.row;const offsetY=evnt.clientY-trEl.getBoundingClientRect().y;const dragPos=offsetY<trEl.clientHeight/2?'top':'bottom';internalData.prevDragToChild=!!(treeConfig&&transform&&isCrossDrag&&isToChildDrag&&isControlKey);internalData.prevDragRow=row;internalData.prevDragPos=dragPos;// 跨表拖拽
|
|
716
716
|
if(isCrossTableDrag&&(!treeConfig||isCrossDrag)&&crossTableDragRowObj){const{$oldTable,$newTable}=crossTableDragRowObj;if($oldTable){const oldTableReactData=$oldTable;if($oldTable.xID===$xeTable.xID){if($newTable){$newTable.hideCrossTableRowDropClearStatus();}reactData.isCrossDragRow=false;oldTableReactData.isCrossDragRow=false;crossTableDragRowObj.$newTable=null;}else if(!treeConfig||isCrossDrag){if($newTable&&$newTable.xID!==$xeTable.xID){$newTable.hideCrossTableRowDropClearStatus();}$oldTable.hideCrossTableRowDropClearStatus();oldTableReactData.isCrossDragRow=true;reactData.dragTipText=oldTableReactData.dragTipText;crossTableDragRowObj.$newTable=$xeTable;showDropTip($xeTable,evnt,trEl,null,true,dragPos);return;}}}if($xeTable.eqRow(dragRow,row)||isControlKey&&treeConfig&&lazy&&row[hasChildField]&&rowRest&&!rowRest.treeLoaded||!isCrossDrag&&treeConfig&&transform&&(isPeerDrag?dragRow[parentField]!==row[parentField]:rowRest.level)){showDropTip($xeTable,evnt,trEl,null,false,dragPos);return;}showDropTip($xeTable,evnt,trEl,null,true,dragPos);$xeTable.dispatchEvent('row-dragover',{oldRow:dragRow,targetRow:row,dragPos},evnt);}},handleCellDragMousedownEvent(evnt,params){var _a;const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const crossTableDragRowInfo=(0,_store.getCrossTableDragRowInfo)($xeTable);evnt.stopPropagation();const{dragConfig}=props;const rowDragOpts=$xeTable.computeRowDragOpts;const{isCrossTableDrag,trigger,dragStartMethod}=rowDragOpts;const{row}=params;const dragEl=evnt.currentTarget;const tdEl=trigger==='cell'||trigger==='row'?dragEl:(_a=dragEl.parentElement)===null||_a===void 0?void 0:_a.parentElement;const trEl=tdEl.parentElement;const dStartMethod=dragStartMethod||(dragConfig?dragConfig.dragStartMethod:null);clearRowDropOrigin($xeTable);if(dStartMethod&&!dStartMethod(params)){trEl.draggable=false;reactData.dragRow=null;reactData.dragCol=null;clearCrossTableDragStatus($xeTable);hideDropTip($xeTable);return;}if(isCrossTableDrag){crossTableDragRowInfo.row=row;crossTableDragRowObj={$oldTable:$xeTable,$newTable:null};}reactData.dragRow=row;reactData.isCrossDragRow=false;reactData.dragCol=null;trEl.draggable=true;updateRowDropOrigin($xeTable,row);updateRowDropTipContent($xeTable,tdEl);$xeTable.dispatchEvent('row-dragstart',params,evnt);},handleCellDragMouseupEvent(){const $xeTable=this;clearDragStatus($xeTable);},/**
|
|
717
717
|
* 列拖拽
|
|
718
|
-
*/handleHeaderCellDragDragstartEvent(evnt){if(evnt.dataTransfer){evnt.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0);}},handleColDragSwapColumn(){const $xeTable=this;handleUpdateColumn($xeTable);return parseColumns($xeTable,false).then(()=>{$xeTable.updateCellAreas();$xeTable.saveCustomStore('update:sort');});},handleColDragSwapEvent(evnt,isSyncColumn,dragCol,prevDragCol,prevDragPos,prevDragToChild){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{mouseConfig}=props;const columnDragOpts=$xeTable.computeColumnDragOpts;const{animation,isPeerDrag,isCrossDrag,isSelfToChildDrag,isToChildDrag,dragEndMethod,dragToChildMethod}=columnDragOpts;const{collectColumn,fullColumnIdData}=internalData;const el=$xeTable.$refs.refElem;const dragOffsetIndex=prevDragPos==='right'?1:0;const errRest={status:false};if(!(el&&prevDragCol&&dragCol)){return Promise.resolve(errRest);}// 判断是否有拖动
|
|
718
|
+
*/handleHeaderCellDragDragstartEvent(evnt){const $xeTable=this;if(evnt.dataTransfer){evnt.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0);}$xeTable.closeTooltip();},handleColDragSwapColumn(){const $xeTable=this;handleUpdateColumn($xeTable);return parseColumns($xeTable,false).then(()=>{$xeTable.updateCellAreas();$xeTable.saveCustomStore('update:sort');});},handleColDragSwapEvent(evnt,isSyncColumn,dragCol,prevDragCol,prevDragPos,prevDragToChild){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const internalData=$xeTable;const{mouseConfig}=props;const columnDragOpts=$xeTable.computeColumnDragOpts;const{animation,isPeerDrag,isCrossDrag,isSelfToChildDrag,isToChildDrag,dragEndMethod,dragToChildMethod}=columnDragOpts;const{collectColumn,fullColumnIdData}=internalData;const el=$xeTable.$refs.refElem;const dragOffsetIndex=prevDragPos==='right'?1:0;const errRest={status:false};if(!(el&&prevDragCol&&dragCol)){return Promise.resolve(errRest);}// 判断是否有拖动
|
|
719
719
|
if(prevDragCol!==dragCol){const dragColumn=dragCol;const newColumn=prevDragCol;const dragParams={oldColumn:dragColumn,newColumn,dragColumn,dragPos:prevDragPos,dragToChild:!!prevDragToChild,offsetIndex:dragOffsetIndex};let dragTargetColumn=null;const dragAllTargetCols=[];let dragColWidth=0;if(animation){_xeUtils.default.eachTree([dragColumn],column=>{if(!dragTargetColumn&&(!column.children||!column.children.length)){dragTargetColumn=column;dragColWidth+=column.renderWidth;}dragAllTargetCols.push(column);});}if(!dragTargetColumn){dragTargetColumn=dragColumn;}const dragColRest=fullColumnIdData[dragTargetColumn.id]||{};const _dragColIndex=dragColRest._index;let dragOffsetLeft=-1;if(animation){const oldTrEl=el.querySelector(`.vxe-table--column[colid="${dragTargetColumn.id}"]`);if(oldTrEl){dragOffsetLeft=oldTrEl.offsetLeft;}}let oafIndex=-1;let nafIndex=-1;const oldAllMaps={};_xeUtils.default.eachTree([dragColumn],column=>{oldAllMaps[column.id]=column;});let isSelfToChildStatus=false;if(dragColumn.parentId&&newColumn.parentId){// 子到子
|
|
720
720
|
if(isPeerDrag&&!isCrossDrag){if(dragColumn.parentId!==newColumn.parentId){// 非同级
|
|
721
721
|
handleColDragEndClearStatus($xeTable);return Promise.resolve(errRest);}}else{if(!isCrossDrag){handleColDragEndClearStatus($xeTable);return Promise.resolve(errRest);}if(oldAllMaps[newColumn.id]){isSelfToChildStatus=true;if(!(isCrossDrag&&isSelfToChildDrag)){if(_ui.VxeUI.modal){_ui.VxeUI.modal.message({status:'error',content:getI18n('vxe.error.treeDragChild')});}handleColDragEndClearStatus($xeTable);return Promise.resolve(errRest);}}}}else if(dragColumn.parentId){// 子到根
|