vxe-table 3.15.48 → 3.15.50
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/index.esm.js +1 -2
- package/es/style.css +1 -1
- package/es/table/module/edit/mixin.js +27 -1
- package/es/table/src/columnInfo.js +5 -0
- package/es/table/src/methods.js +26 -10
- package/es/table/src/table.js +21 -2
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.common.js +1 -2
- package/lib/index.umd.js +2321 -926
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/edit/mixin.js +26 -1
- package/lib/table/module/edit/mixin.min.js +1 -1
- package/lib/table/src/columnInfo.js +5 -0
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/methods.js +23 -13
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +21 -1
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -2
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/vxe-colgroup/index.js +1 -2
- package/lib/vxe-colgroup/index.min.js +1 -1
- package/lib/vxe-column/index.js +1 -2
- package/lib/vxe-column/index.min.js +1 -1
- package/lib/vxe-grid/index.js +1 -2
- package/lib/vxe-grid/index.min.js +1 -1
- package/lib/vxe-table/index.js +1 -2
- package/lib/vxe-table/index.min.js +1 -1
- package/lib/vxe-toolbar/index.js +1 -2
- package/lib/vxe-toolbar/index.min.js +1 -1
- package/lib/vxe-ui/index.js +1 -2
- package/lib/vxe-ui/index.min.js +1 -1
- package/lib/vxe-v-x-e-table/index.js +1 -2
- package/lib/vxe-v-x-e-table/index.min.js +1 -1
- package/package.json +1 -1
- package/packages/table/module/edit/mixin.ts +26 -2
- package/packages/table/src/columnInfo.ts +5 -0
- package/packages/table/src/methods.ts +23 -10
- package/packages/table/src/table.ts +21 -2
- /package/es/{iconfont.1750813664386.ttf → iconfont.1751253085970.ttf} +0 -0
- /package/es/{iconfont.1750813664386.woff → iconfont.1751253085970.woff} +0 -0
- /package/es/{iconfont.1750813664386.woff2 → iconfont.1751253085970.woff2} +0 -0
- /package/lib/{iconfont.1750813664386.ttf → iconfont.1751253085970.ttf} +0 -0
- /package/lib/{iconfont.1750813664386.woff → iconfont.1751253085970.woff} +0 -0
- /package/lib/{iconfont.1750813664386.woff2 → iconfont.1751253085970.woff2} +0 -0
|
@@ -152,6 +152,8 @@ function insertTreeRow($xeTable, newRecords, isAppend) {
|
|
|
152
152
|
}
|
|
153
153
|
});
|
|
154
154
|
}
|
|
155
|
+
// function insertGroupRow ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, newRecords: any[], isAppend: boolean) {
|
|
156
|
+
// }
|
|
155
157
|
function handleInsertRowAt($xeTable, records, targetRow, isInsertNextRow) {
|
|
156
158
|
const props = $xeTable;
|
|
157
159
|
const reactData = $xeTable;
|
|
@@ -159,6 +161,9 @@ function handleInsertRowAt($xeTable, records, targetRow, isInsertNextRow) {
|
|
|
159
161
|
const {
|
|
160
162
|
treeConfig
|
|
161
163
|
} = props;
|
|
164
|
+
const {
|
|
165
|
+
isRowGroupStatus
|
|
166
|
+
} = reactData;
|
|
162
167
|
const {
|
|
163
168
|
tableFullTreeData,
|
|
164
169
|
afterFullData,
|
|
@@ -186,6 +191,12 @@ function handleInsertRowAt($xeTable, records, targetRow, isInsertNextRow) {
|
|
|
186
191
|
// 如果为虚拟树
|
|
187
192
|
if (treeConfig && transform) {
|
|
188
193
|
insertTreeRow($xeTable, newRecords, false);
|
|
194
|
+
} else if (isRowGroupStatus) {
|
|
195
|
+
// 如果分组
|
|
196
|
+
if (treeConfig) {
|
|
197
|
+
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
198
|
+
}
|
|
199
|
+
// insertGroupRow($xeTable, newRecords, false)
|
|
189
200
|
} else {
|
|
190
201
|
newRecords.forEach(item => {
|
|
191
202
|
const rowid = (0, _util.getRowid)($xeTable, item);
|
|
@@ -225,6 +236,12 @@ function handleInsertRowAt($xeTable, records, targetRow, isInsertNextRow) {
|
|
|
225
236
|
// 如果为虚拟树
|
|
226
237
|
if (treeConfig && transform) {
|
|
227
238
|
insertTreeRow($xeTable, newRecords, true);
|
|
239
|
+
} else if (isRowGroupStatus) {
|
|
240
|
+
// 如果分组
|
|
241
|
+
if (treeConfig) {
|
|
242
|
+
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
243
|
+
}
|
|
244
|
+
// insertGroupRow($xeTable, newRecords, false)
|
|
228
245
|
} else {
|
|
229
246
|
newRecords.forEach(item => {
|
|
230
247
|
const rowid = (0, _util.getRowid)($xeTable, item);
|
|
@@ -325,6 +342,11 @@ function handleInsertRowAt($xeTable, records, targetRow, isInsertNextRow) {
|
|
|
325
342
|
(0, _log.warnLog)('vxe.error.unableInsert');
|
|
326
343
|
insertTreeRow($xeTable, newRecords, true);
|
|
327
344
|
}
|
|
345
|
+
} else if (isRowGroupStatus) {
|
|
346
|
+
// 如果分组
|
|
347
|
+
if (treeConfig) {
|
|
348
|
+
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
349
|
+
}
|
|
328
350
|
} else {
|
|
329
351
|
if (treeConfig) {
|
|
330
352
|
throw new Error(getI18n('vxe.error.noTree', ['insert']));
|
|
@@ -669,7 +691,8 @@ var _default = exports.default = {
|
|
|
669
691
|
treeConfig
|
|
670
692
|
} = props;
|
|
671
693
|
const {
|
|
672
|
-
editStore
|
|
694
|
+
editStore,
|
|
695
|
+
isRowGroupStatus
|
|
673
696
|
} = reactData;
|
|
674
697
|
const {
|
|
675
698
|
tableFullTreeData,
|
|
@@ -746,6 +769,8 @@ var _default = exports.default = {
|
|
|
746
769
|
afterFullData.splice(afIndex, 1);
|
|
747
770
|
}
|
|
748
771
|
});
|
|
772
|
+
} else if (isRowGroupStatus) {
|
|
773
|
+
// 如果分组
|
|
749
774
|
} else {
|
|
750
775
|
rows.forEach(row => {
|
|
751
776
|
const tfIndex = this.findRowIndexOf(tableFullData, row);
|
|
@@ -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{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:i}=t;(r||i)&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,i))}function insertTreeRow(n,e,t){let{tableFullTreeData:d,afterFullData:a,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),i=t?_xeUtils.default.findTree(d,e=>t===e[c],{children:g}):null;if(i){var i=i.item,o=u[(0,_util.getRowid)(n,i)],o=o?o.level:0;let e=i[w],t=i[g];_xeUtils.default.isArray(e)||(e=i[w]=[]),_xeUtils.default.isArray(t)||(t=i[w]=[]),e[f](l),t[f](l);i={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:e,parent:i,level:o+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}else{t&&(0,_log.warnLog)("vxe.error.unableInsert"),a[f](l),d[f](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:d,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}})}function handleInsertRowAt(a,t,l,s){var e=a;let i=a.treeConfig,{tableFullTreeData:r,afterFullData:o,mergeBodyList:n,tableFullData:d,fullDataRowIdData:u,fullAllDataRowIdData:c,insertRowMaps:h}=a,g=a.computeTreeOpts,{transform:w,rowField:f,mapChildrenField:m}=g,p=g.children||g.childrenField,x=(_xeUtils.default.isArray(t)||(t=[t]),a.defineField(t.map(e=>Object.assign(i&&w?{[m]:[],[p]:[]}:{},e))));if(_xeUtils.default.eqNull(l))i&&w?insertTreeRow(a,x,!1):(x.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,c[t]=l,o.unshift(e),d.unshift(e)}),n.forEach(e=>{var t=e.row;0<t&&(e.row=t+x.length)}));else if(-1===l)i&&w?insertTreeRow(a,x,!0):(x.forEach(e=>{var t=(0,_util.getRowid)(a,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[t]=l,c[t]=l,o.push(e),d.push(e)}),n.forEach(e=>{var{row:t,rowspan:l}=e;t+l>o.length&&(e.rowspan=l+x.length)}));else if(i&&w){let d=_xeUtils.default.findTree(r,e=>l[f]===e[f],{children:m});if(d){let i=d.parent,o=i?i[m]:r;t=c[(0,_util.getRowid)(a,i)];let n=t?t.level:0;if(x.forEach((e,t)=>{var l=(0,_util.getRowid)(a,e);e[g.parentField]&&i&&e[g.parentField]!==i[f]&&(0,_log.errLog)("vxe.error.errProp",[g.parentField+"="+e[g.parentField],g.parentField+"="+i[f]]),i&&(e[g.parentField]=i[f]);let r=d.index+t;s&&(r+=1),o.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:i,level:n+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};u[l]=t,c[l]=t}),i){t=_xeUtils.default.findTree(r,e=>l[f]===e[f],{children:p});if(t){var v=t.items;let e=t.index;s&&(e+=1),v.splice(e,0,...x)}}}else(0,_log.warnLog)("vxe.error.unableInsert"),insertTreeRow(a,x,!0)}else{if(i)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<o.length&&(r=l):r=a.findRowIndexOf(o,l),-1===(r=s?Math.min(o.length,r+1):r))throw new Error((0,_log.errLog)("vxe.error.unableInsert"));o.splice(r,0,...x);t=a.findRowIndexOf(d,l);-1<t?d.splice(t+(s?1:0),0,...x):d.push(...x),n.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+x.length:t+l>r&&(e.rowspan=l+x.length)})}return x.forEach(e=>{var t=(0,_util.getRowid)(a,e);h[t]=e}),e.insertRowFlag++,a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(i&&w),i&&w||a.updateAfterDataIndex(),a.updateFooter(),a.handleUpdateBodyMerge(),a.checkSelectionStatus(),e.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate(!0))).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))}function handleInsertChildRowAt(e,t,l,r,i){var o=e.treeConfig;let{transform:n,rowField:d,parentField:a}=e.computeTreeOpts;return o&&n?handleInsertRowAt(e,(t=_xeUtils.default.isArray(t)?t:[t]).map(e=>Object.assign({},e,{[a]:l[d]})),r,i):((0,_log.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:i}=r,{row:o,column:n}=r,d=e.computeValidOpts;if(o||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,o))return e.$nextTick();syncActivedCell(e),r.args=null,r.row=null,r.column=null,e.updateFooter(),e.dispatchEvent("edit-closed",{row:o,rowIndex:e.getRowIndex(o),$rowIndex:e.getVMRowIndex(o),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return i.row=null,i.column=null,d.autoClear&&("full"!==d.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,i,o,e){let n=l.$xeGrid;var{editConfig:t,mouseConfig:d}=l,{editStore:a,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:a,focused:h}=a;let{row:g,column:w}=r;var f=w.editRender,m=r.cell||l.getCellElement(g,w),p=u.beforeEditMethod||u.activeMethod;if((r.cell=m)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(f)&&!l.isPendingByRow(g)&&!l.isAggregateRecord(g)){if(a.row!==g||"cell"===c&&a.column!==w){let t="edit-disabled";if(!p||p(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),a.column&&handleClearEdit(l,i),t="edit-activated",w.renderHeight=m.offsetHeight,a.args=r,a.row=g,a.column=w,"row"===c?s.forEach(e=>getEditColumnModel(g,e)):getEditColumnModel(g,w);let e=u.afterEditMethod;l.$nextTick(()=>{o&&l.handleFocus(r,i),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},i),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:g,rowIndex:l.getRowIndex(g),$rowIndex:l.getVMRowIndex(g),column:w,columnIndex:l.getColumnIndex(w),$columnIndex:l.getVMColumnIndex(w)},i)}else{t=a.column;d&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),t!==w&&(f=t.model,f.update&&(0,_util.setCellValue)(g,t,f.value),l.clearValidate)&&l.clearValidate(g,w),w.renderHeight=m.offsetHeight,a.args=r,a.column=w,e&&setTimeout(()=>{l.handleFocus(r,i)})}h.column=null,h.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let i=t;var o=t.editConfig;let n=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&n&&(0,_utils.isEnableConf)(o)&&(0,_utils.isEnableConf)(n.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(r?t.scrollToRow(l,n):null).then(()=>{var e=t.getCellElement(l,n);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:n,columnIndex:t.getColumnIndex(n),cell:e,$table:t},null,r,r),i._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 l=this;var t=l,r=l,t=t.treeConfig,i=r.editStore;let{tableFullTreeData:o,selectCheckboxMaps:n,afterFullData:d,mergeBodyList:a,tableFullData:s,pendingRowMaps:u,insertRowMaps:c,removeRowMaps:h}=l;var g=l.computeCheckboxOpts,w=l.computeTreeOpts;let{transform:f,mapChildrenField:m}=w,p=w.children||w.childrenField;w=i.actived,i=g.checkField;let x=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=s,e.forEach(e=>{var t;l.isInsertByRow(e)||(t=(0,_util.getRowid)(l,e),h[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);n[e]&&delete n[e]}),r.updateCheckboxFlag++),s===e?(e=x=s.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):t&&f?e.forEach(e=>{let t=(0,_util.getRowid)(this,e);var l=_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(this,e),{children:m}),l=(l&&(l=l.items.splice(l.index,1),x.push(l[0])),_xeUtils.default.findTree(o,e=>t===(0,_util.getRowid)(this,e),{children:p})),l=(l&&l.items.splice(l.index,1),this.findRowIndexOf(d,e));-1<l&&d.splice(l,1)}):e.forEach(e=>{var t=this.findRowIndexOf(s,e);-1<t&&(t=s.splice(t,1),x.push(t[0]));let r=this.findRowIndexOf(d,e);-1<r&&(a.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),d.splice(r,1))}),w.row&&-1<l.findRowIndexOf(e,w.row)&&l.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(l,e);c[e]&&delete c[e],u[e]&&delete u[e]}),r.removeRowFlag++,r.insertRowFlag++,r.pendingRowFlag++,l.cacheRowMap(!1),l.handleTableData(t&&f),l.updateFooter(),l.handleUpdateBodyMerge(),t&&f||l.updateAfterDataIndex(),l.checkSelectionStatus(),r.scrollYLoad&&l.updateScrollYSpace(),this.$nextTick().then(()=>(this.updateCellAreas(),this.recalculate(!0))).then(()=>({row:x.length?x[x.length-1]:null,rows:x}))},_removeCheckboxRow(){return this.remove(this.getCheckboxRecords()).then(e=>(this.clearCheckboxRow(),e))},_removeRadioRow(){var e=this.getRadioRecord();return this.remove(e||[]).then(e=>(this.clearRadioRow(),e))},_removeCurrentRow(){var e=this.getCurrentRecord();return this.remove(e||[]).then(e=>(this.clearCurrentRow(),e))},_getRecordset(){var e=this.getRemoveRecords(),t=this.getPendingRecords();let l=e.concat(t);var r=this.getUpdateRecords().filter(t=>!l.some(e=>this.eqRow(e,t)));return{insertRecords:this.getInsertRecords(),removeRecords:e,updateRecords:r,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,r=t.tableFullData,i=t.computeTreeOpts;return e?(syncActivedCell(t),l?_xeUtils.default.filterTree(r,e=>t.isUpdateByRow(e),i):r.filter(e=>t.isUpdateByRow(e))):[]},handleEdit(e,t){return handleEditActive(this,e,t,!0,!0)},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(0,_log.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=((0,_log.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=((0,_log.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,column:t}:null},_isActiveByRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:i,column:o,cell:n}=r,d=o.editRender,a=this.computeEditOpts;if((0,_utils.isEnableConf)(d)){var s=renderer.get(d.name);let e=d.autofocus||d.autoFocus,t=d.autoSelect||d.autoselect,l;a.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&&((d=l.createTextRange()).collapse(!1),d.select()):a.autoPos&&!o.fixed&&this.scrollToRow(i,o)}},_setActiveRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t){let l=_xeUtils.default.find(this.visibleColumn,e=>(0,_utils.isEnableConf)(e.editRender)),r=!1;return t&&(r=!0)!==t&&(l=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,l,r)},_setActiveCell(e,t){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t){return handleEditCell(this,e,t,!0)},_setSelectCell(e,t){var l=this,r=l.tableData,i=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==i.trigger&&-1<(i=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:i,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,i=l.editStore,o=l.computeMouseOpts;let n=l.computeEditOpts,{actived:d,selected:a}=i,{row:s,column:u}=e,c=r&&o.selected;return!c||a.row===s&&a.column===u||(d.row!==s||"cell"===n.mode&&d.column!==u)&&(handleClearEdit(l,t),l.clearSelected(),l.clearCellAreas&&(l.clearCellAreas(),l.clearCopyCellArea()),a.args=e,a.row=s,a.column=u,c&&this.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["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{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:i}=t;(r||i)&&("row"===e.mode?l.forEach(e=>setEditColumnModel(r,e)):setEditColumnModel(r,i))}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),i=t?_xeUtils.default.findTree(a,e=>t===e[c],{children:w}):null;if(i){var i=i.item,o=u[(0,_util.getRowid)(n,i)],o=o?o.level:0;let e=i[g],t=i[w];_xeUtils.default.isArray(e)||(e=i[g]=[]),_xeUtils.default.isArray(t)||(t=i[g]=[]),e[f](l),t[f](l);i={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:e,parent:i,level:o+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=i,u[r]=i}else{t&&(0,_log.warnLog)("vxe.error.unableInsert"),d[f](l),a[f](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:a,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};s[r]=o,u[r]=o}})}function handleInsertRowAt(d,t,l,s){var e=d;let i=d.treeConfig;var r=e.isRowGroupStatus;let{tableFullTreeData:u,afterFullData:o,mergeBodyList:n,tableFullData:a,fullDataRowIdData:c,fullAllDataRowIdData:h,insertRowMaps:w}=d,g=d.computeTreeOpts,{transform:f,rowField:m,mapChildrenField:p}=g,x=g.children||g.childrenField,v=(_xeUtils.default.isArray(t)||(t=[t]),d.defineField(t.map(e=>Object.assign(i&&f?{[p]:[],[x]:[]}:{},e))));if(_xeUtils.default.eqNull(l))if(i&&f)insertTreeRow(d,v,!1);else if(r){if(i)throw new Error(getI18n("vxe.error.noTree",["insert"]))}else v.forEach(e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,o.unshift(e),a.unshift(e)}),n.forEach(e=>{var t=e.row;0<t&&(e.row=t+v.length)});else if(-1===l)if(i&&f)insertTreeRow(d,v,!0);else if(r){if(i)throw new Error(getI18n("vxe.error.noTree",["insert"]))}else v.forEach(e=>{var t=(0,_util.getRowid)(d,e),l={row:e,rowid:t,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[t]=l,h[t]=l,o.push(e),a.push(e)}),n.forEach(e=>{var{row:t,rowspan:l}=e;t+l>o.length&&(e.rowspan=l+v.length)});else if(i&&f){let a=_xeUtils.default.findTree(u,e=>l[m]===e[m],{children:p});if(a){let i=a.parent,o=i?i[p]:u;t=h[(0,_util.getRowid)(d,i)];let n=t?t.level:0;if(v.forEach((e,t)=>{var l=(0,_util.getRowid)(d,e);e[g.parentField]&&i&&e[g.parentField]!==i[m]&&(0,_log.errLog)("vxe.error.errProp",[g.parentField+"="+e[g.parentField],g.parentField+"="+i[m]]),i&&(e[g.parentField]=i[m]);let r=a.index+t;s&&(r+=1),o.splice(r,0,e);t={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:o,parent:i,level:n+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};c[l]=t,h[l]=t}),i){t=_xeUtils.default.findTree(u,e=>l[m]===e[m],{children:x});if(t){var C=t.items;let e=t.index;s&&(e+=1),C.splice(e,0,...v)}}}else(0,_log.warnLog)("vxe.error.unableInsert"),insertTreeRow(d,v,!0)}else if(r){if(i)throw new Error(getI18n("vxe.error.noTree",["insert"]))}else{if(i)throw new Error(getI18n("vxe.error.noTree",["insert"]));let r=-1;if(_xeUtils.default.isNumber(l)?l<o.length&&(r=l):r=d.findRowIndexOf(o,l),-1===(r=s?Math.min(o.length,r+1):r))throw new Error((0,_log.errLog)("vxe.error.unableInsert"));o.splice(r,0,...v);t=d.findRowIndexOf(a,l);-1<t?a.splice(t+(s?1:0),0,...v):a.push(...v),n.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+v.length:t+l>r&&(e.rowspan=l+v.length)})}return v.forEach(e=>{var t=(0,_util.getRowid)(d,e);w[t]=e}),e.insertRowFlag++,d.cacheRowMap(!1),d.updateScrollYStatus(),d.handleTableData(i&&f),i&&f||d.updateAfterDataIndex(),d.updateFooter(),d.handleUpdateBodyMerge(),d.checkSelectionStatus(),e.scrollYLoad&&d.updateScrollYSpace(),d.$nextTick().then(()=>(d.updateCellAreas(),d.recalculate(!0))).then(()=>({row:v.length?v[v.length-1]:null,rows:v}))}function handleInsertChildRowAt(e,t,l,r,i){var o=e.treeConfig;let{transform:n,rowField:a,parentField:d}=e.computeTreeOpts;return o&&n?handleInsertRowAt(e,(t=_xeUtils.default.isArray(t)?t:[t]).map(e=>Object.assign({},e,{[d]:l[a]})),r,i):((0,_log.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:i}=r,{row:o,column:n}=r,a=e.computeValidOpts;if(o||n){if(l&&(0,_util.getRowid)(e,l)!==(0,_util.getRowid)(e,o))return e.$nextTick();syncActivedCell(e),r.args=null,r.row=null,r.column=null,e.updateFooter(),e.dispatchEvent("edit-closed",{row:o,rowIndex:e.getRowIndex(o),$rowIndex:e.getVMRowIndex(o),column:n,columnIndex:e.getColumnIndex(n),$columnIndex:e.getVMColumnIndex(n)},t||null)}return i.row=null,i.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&e.clearValidate?e.clearValidate():e.$nextTick().then(()=>e.updateCellAreas())}function handleEditActive(l,r,i,o,e){let n=l.$xeGrid;var{editConfig:t,mouseConfig:a}=l,{editStore:d,tableColumn:s}=l,u=l.computeEditOpts,c=u.mode,{actived:d,focused:h}=d;let{row:w,column:g}=r;var f=g.editRender,m=r.cell||l.getCellElement(w,g),p=u.beforeEditMethod||u.activeMethod;if((r.cell=m)&&(0,_utils.isEnableConf)(t)&&(0,_utils.isEnableConf)(f)&&!l.isPendingByRow(w)&&!l.isAggregateRecord(w)){if(d.row!==w||"cell"===c&&d.column!==g){let t="edit-disabled";if(!p||p(Object.assign(Object.assign({},r),{$table:l,$grid:n}))){a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),l.closeTooltip(),d.column&&handleClearEdit(l,i),t="edit-activated",g.renderHeight=m.offsetHeight,d.args=r,d.row=w,d.column=g,"row"===c?s.forEach(e=>getEditColumnModel(w,e)):getEditColumnModel(w,g);let e=u.afterEditMethod;l.$nextTick(()=>{o&&l.handleFocus(r,i),e&&e(Object.assign(Object.assign({},r),{$table:l,$grid:n}))})}l.dispatchEvent(t,{row:w,rowIndex:l.getRowIndex(w),$rowIndex:l.getVMRowIndex(w),column:g,columnIndex:l.getColumnIndex(g),$columnIndex:l.getVMColumnIndex(g)},i),"edit-activated"===t&&l.dispatchEvent("edit-actived",{row:w,rowIndex:l.getRowIndex(w),$rowIndex:l.getVMRowIndex(w),column:g,columnIndex:l.getColumnIndex(g),$columnIndex:l.getVMColumnIndex(g)},i)}else{t=d.column;a&&(l.clearSelected(),l.clearCellAreas)&&(l.clearCellAreas(),l.clearCopyCellArea()),t!==g&&(f=t.model,f.update&&(0,_util.setCellValue)(w,t,f.value),l.clearValidate)&&l.clearValidate(w,g),g.renderHeight=m.offsetHeight,d.args=r,d.column=g,e&&setTimeout(()=>{l.handleFocus(r,i)})}h.column=null,h.row=null,l.focus()}return l.$nextTick()}function handleEditCell(t,l,e,r){let i=t;var o=t.editConfig;let n=_xeUtils.default.isString(e)?t.getColumnByField(e):e;return l&&n&&(0,_utils.isEnableConf)(o)&&(0,_utils.isEnableConf)(n.editRender)&&!t.isAggregateRecord(l)?Promise.resolve(r?t.scrollToRow(l,n):null).then(()=>{var e=t.getCellElement(l,n);return e&&(handleEditActive(t,{row:l,rowIndex:t.getRowIndex(l),column:n,columnIndex:t.getColumnIndex(n),cell:e,$table:t},null,r,r),i._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 l=this;var t=l,r=l,t=t.treeConfig,{editStore:i,isRowGroupStatus:o}=r;let{tableFullTreeData:n,selectCheckboxMaps:a,afterFullData:d,mergeBodyList:s,tableFullData:u,pendingRowMaps:c,insertRowMaps:h,removeRowMaps:w}=l;var g=l.computeCheckboxOpts,f=l.computeTreeOpts;let{transform:m,mapChildrenField:p}=f,x=f.children||f.childrenField;f=i.actived,i=g.checkField;let v=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=u,e.forEach(e=>{var t;l.isInsertByRow(e)||(t=(0,_util.getRowid)(l,e),w[t]=e)}),i||(e.forEach(e=>{e=(0,_util.getRowid)(this,e);a[e]&&delete a[e]}),r.updateCheckboxFlag++),u===e?(e=v=u.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):t&&m?e.forEach(e=>{let t=(0,_util.getRowid)(this,e);var l=_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(this,e),{children:p}),l=(l&&(l=l.items.splice(l.index,1),v.push(l[0])),_xeUtils.default.findTree(n,e=>t===(0,_util.getRowid)(this,e),{children:x})),l=(l&&l.items.splice(l.index,1),this.findRowIndexOf(d,e));-1<l&&d.splice(l,1)}):o||e.forEach(e=>{var t=this.findRowIndexOf(u,e);-1<t&&(t=u.splice(t,1),v.push(t[0]));let r=this.findRowIndexOf(d,e);-1<r&&(s.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t-1:t+l>r&&(e.rowspan=l-1)}),d.splice(r,1))}),f.row&&-1<l.findRowIndexOf(e,f.row)&&l.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(l,e);h[e]&&delete h[e],c[e]&&delete c[e]}),r.removeRowFlag++,r.insertRowFlag++,r.pendingRowFlag++,l.cacheRowMap(!1),l.handleTableData(t&&m),l.updateFooter(),l.handleUpdateBodyMerge(),t&&m||l.updateAfterDataIndex(),l.checkSelectionStatus(),r.scrollYLoad&&l.updateScrollYSpace(),this.$nextTick().then(()=>(this.updateCellAreas(),this.recalculate(!0))).then(()=>({row:v.length?v[v.length-1]:null,rows:v}))},_removeCheckboxRow(){return this.remove(this.getCheckboxRecords()).then(e=>(this.clearCheckboxRow(),e))},_removeRadioRow(){var e=this.getRadioRecord();return this.remove(e||[]).then(e=>(this.clearRadioRow(),e))},_removeCurrentRow(){var e=this.getCurrentRecord();return this.remove(e||[]).then(e=>(this.clearCurrentRow(),e))},_getRecordset(){var e=this.getRemoveRecords(),t=this.getPendingRecords();let l=e.concat(t);var r=this.getUpdateRecords().filter(t=>!l.some(e=>this.eqRow(e,t)));return{insertRecords:this.getInsertRecords(),removeRecords:e,updateRecords:r,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,r=t.tableFullData,i=t.computeTreeOpts;return e?(syncActivedCell(t),l?_xeUtils.default.filterTree(r,e=>t.isUpdateByRow(e),i):r.filter(e=>t.isUpdateByRow(e))):[]},handleEdit(e,t){return handleEditActive(this,e,t,!0,!0)},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(0,_log.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=((0,_log.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=((0,_log.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,column:t}:null},_isActiveByRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){var t=this.editStore;return t.actived.row===e},handleFocus(r){var{row:i,column:o,cell:n}=r,a=o.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&&!o.fixed&&this.scrollToRow(i,o)}},_setActiveRow(e){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveRow","setEditRow"]),this.setEditRow(e)},_setEditRow(e,t){let l=_xeUtils.default.find(this.visibleColumn,e=>(0,_utils.isEnableConf)(e.editRender)),r=!1;return t&&(r=!0)!==t&&(l=_xeUtils.default.isString(t)?this.getColumnByField(t):t),handleEditCell(this,e,l,r)},_setActiveCell(e,t){return(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(e,t){return handleEditCell(this,e,t,!0)},_setSelectCell(e,t){var l=this,r=l.tableData,i=l.computeEditOpts,t=_xeUtils.default.isString(t)?l.getColumnByField(t):t;return e&&t&&"manual"!==i.trigger&&-1<(i=l.findRowIndexOf(r,e))&&(r=l.getCellElement(e,t),e={row:e,rowIndex:i,column:t,columnIndex:l.getColumnIndex(t),cell:r},l.handleSelected(e,{})),l.$nextTick()},handleSelected(e,t){let l=this;var r=l.mouseConfig,i=l.editStore,o=l.computeMouseOpts;let n=l.computeEditOpts,{actived:a,selected:d}=i,{row:s,column:u}=e,c=r&&o.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&&this.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["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")}}};
|
|
@@ -64,6 +64,11 @@ class ColumnInfo {
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
|
+
if (_vm.aggFunc) {
|
|
68
|
+
if (!$xeTable.handlePivotTableAggregateData && _vm.aggFunc !== true) {
|
|
69
|
+
(0, _log.errLog)('vxe.error.errProp', [`column.agg-func=${_vm.aggFunc}`, 'column.agg-func=true']);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
67
72
|
Object.assign(this, {
|
|
68
73
|
// 基本属性
|
|
69
74
|
type: _vm.type,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,formats}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:o,renderFooter:l,renderData:i}={}){var d=e,n=e.$xeGrid,s=n?n.proxyOpts:null,a=r.formatter,u=!_xeUtils.default.isBoolean(r.visible)||r.visible,f=["seq","checkbox","radio","expand","html"];r.type&&-1===f.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,f.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),"expand"===r.type&&(f=d.treeConfig,f)&&(e.treeOpts.showLine||e.treeOpts.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),r.remoteSort&&(0,_log.warnLog)("vxe.error.delProp",["column.remote-sort","sort-config.remote"]),r.sortMethod&&(0,_log.warnLog)("vxe.error.delProp",["column.sort-method","sort-config.sortMethod"]),a&&(_xeUtils.default.isString(a)?(d=formats.get(a)||_xeUtils.default[a])&&_xeUtils.default.isFunction(d.tableCellFormatMethod||d.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[a]):!_xeUtils.default.isArray(a)||(f=formats.get(a[0])||_xeUtils.default[a[0]])&&_xeUtils.default.isFunction(f.tableCellFormatMethod||f.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[a[0]])),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:a,footerFormatter:r.footerFormatter,padding:r.padding,verticalAlign:r.verticalAlign,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,sortMethod:r.sortMethod,remoteSort:r.remoteSort,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,rowGroupNode:r.rowGroupNode,treeNode:r.treeNode,dragSort:r.dragSort,rowResize:r.rowResize,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,aggFunc:r.aggFunc,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:u,halfVisible:!1,defaultVisible:u,defaultFixed:r.fixed,defaultAggFunc:r.aggFunc,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderAggFn:"",renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:o||r.renderCell,renderFooter:l||r.renderFooter,renderData:i,slots:r.slots}),s&&s.beforeColumn&&s.beforeColumn({$grid:n,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var e=this.type;return this.field||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,formats}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:o,renderFooter:l,renderData:i}={}){var d=e,n=e.$xeGrid,s=n?n.proxyOpts:null,a=r.formatter,u=!_xeUtils.default.isBoolean(r.visible)||r.visible,f=["seq","checkbox","radio","expand","html"];r.type&&-1===f.indexOf(r.type)&&(0,_log.warnLog)("vxe.error.errProp",["type="+r.type,f.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&(0,_log.warnLog)("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),"expand"===r.type&&(f=d.treeConfig,f)&&(e.treeOpts.showLine||e.treeOpts.line)&&(0,_log.errLog)("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),r.remoteSort&&(0,_log.warnLog)("vxe.error.delProp",["column.remote-sort","sort-config.remote"]),r.sortMethod&&(0,_log.warnLog)("vxe.error.delProp",["column.sort-method","sort-config.sortMethod"]),a&&(_xeUtils.default.isString(a)?(d=formats.get(a)||_xeUtils.default[a])&&_xeUtils.default.isFunction(d.tableCellFormatMethod||d.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[a]):!_xeUtils.default.isArray(a)||(f=formats.get(a[0])||_xeUtils.default[a[0]])&&_xeUtils.default.isFunction(f.tableCellFormatMethod||f.cellFormatMethod)||(0,_log.errLog)("vxe.error.notFormats",[a[0]])),r.aggFunc&&!e.handlePivotTableAggregateData&&!0!==r.aggFunc&&(0,_log.errLog)("vxe.error.errProp",["column.agg-func="+r.aggFunc,"column.agg-func=true"]),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:a,footerFormatter:r.footerFormatter,padding:r.padding,verticalAlign:r.verticalAlign,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,sortMethod:r.sortMethod,remoteSort:r.remoteSort,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,rowGroupNode:r.rowGroupNode,treeNode:r.treeNode,dragSort:r.dragSort,rowResize:r.rowResize,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,aggFunc:r.aggFunc,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:u,halfVisible:!1,defaultVisible:u,defaultFixed:r.fixed,defaultAggFunc:r.aggFunc,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderAggFn:"",renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:o||r.renderCell,renderFooter:l||r.renderFooter,renderData:i,slots:r.slots}),s&&s.beforeColumn&&s.beforeColumn({$grid:n,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var e=this.type;return this.field||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
|
package/lib/table/src/methods.js
CHANGED
|
@@ -7996,7 +7996,8 @@ const Methods = {
|
|
|
7996
7996
|
const childList = vals[2];
|
|
7997
7997
|
let sLen = 0; // 已选
|
|
7998
7998
|
let hLen = 0; // 半选
|
|
7999
|
-
let vLen = 0; //
|
|
7999
|
+
let vLen = 0; // 有效子行
|
|
8000
|
+
const cLen = childList.length; // 有效子行
|
|
8000
8001
|
childList.forEach(checkMethod ? item => {
|
|
8001
8002
|
const childRowid = handleGetRowId(item);
|
|
8002
8003
|
const isSelect = checkField ? _xeUtils.default.get(item, checkField) : selectCheckboxMaps[childRowid];
|
|
@@ -8027,18 +8028,25 @@ const Methods = {
|
|
|
8027
8028
|
}
|
|
8028
8029
|
vLen++;
|
|
8029
8030
|
});
|
|
8030
|
-
let isSelected =
|
|
8031
|
-
if (
|
|
8032
|
-
if (
|
|
8033
|
-
|
|
8034
|
-
row
|
|
8035
|
-
})) {
|
|
8036
|
-
isSelected = sLen >= vLen;
|
|
8031
|
+
let isSelected = false;
|
|
8032
|
+
if (cLen > 0) {
|
|
8033
|
+
if (vLen > 0) {
|
|
8034
|
+
isSelected = (sLen > 0 || hLen > 0) && sLen >= vLen;
|
|
8037
8035
|
} else {
|
|
8038
|
-
|
|
8036
|
+
// 如果存在子项禁用
|
|
8037
|
+
if (sLen > 0 && sLen >= vLen) {
|
|
8038
|
+
isSelected = true;
|
|
8039
|
+
} else if (selectCheckboxMaps[rowid]) {
|
|
8040
|
+
isSelected = true;
|
|
8041
|
+
} else {
|
|
8042
|
+
isSelected = false;
|
|
8043
|
+
}
|
|
8039
8044
|
}
|
|
8045
|
+
} else {
|
|
8046
|
+
// 如果无子项
|
|
8047
|
+
isSelected = selectCheckboxMaps[rowid];
|
|
8040
8048
|
}
|
|
8041
|
-
const halfSelect = !isSelected && (sLen
|
|
8049
|
+
const halfSelect = !isSelected && (sLen > 0 || hLen > 0);
|
|
8042
8050
|
if (checkField) {
|
|
8043
8051
|
_xeUtils.default.set(row, checkField, isSelected);
|
|
8044
8052
|
}
|
|
@@ -8096,7 +8104,9 @@ const Methods = {
|
|
|
8096
8104
|
handleGetRowId
|
|
8097
8105
|
} = (0, _util.createHandleGetRowId)($xeTable);
|
|
8098
8106
|
let sLen = 0; // 已选
|
|
8107
|
+
let dsLen = 0; // 禁用的已选
|
|
8099
8108
|
let hLen = 0; // 半选
|
|
8109
|
+
let dhLen = 0; // 禁用的半选
|
|
8100
8110
|
let vLen = 0; // 有效行
|
|
8101
8111
|
const rootList = treeConfig ? afterTreeFullData : isRowGroupStatus ? afterGroupFullData : afterFullData;
|
|
8102
8112
|
rootList.forEach(checkMethod ? row => {
|
|
@@ -8114,9 +8124,9 @@ const Methods = {
|
|
|
8114
8124
|
vLen++;
|
|
8115
8125
|
} else {
|
|
8116
8126
|
if (selected) {
|
|
8117
|
-
|
|
8127
|
+
dsLen++;
|
|
8118
8128
|
} else if (treeIndeterminateRowMaps[childRowid]) {
|
|
8119
|
-
|
|
8129
|
+
dhLen++;
|
|
8120
8130
|
}
|
|
8121
8131
|
}
|
|
8122
8132
|
} : row => {
|
|
@@ -8130,7 +8140,7 @@ const Methods = {
|
|
|
8130
8140
|
vLen++;
|
|
8131
8141
|
});
|
|
8132
8142
|
const isSelected = rootList.length > 0 ? vLen > 0 ? sLen >= vLen : sLen >= rootList.length : false;
|
|
8133
|
-
let halfSelect = !isSelected && (sLen
|
|
8143
|
+
let halfSelect = !isSelected && (sLen > 0 || hLen > 0 || dsLen > 0 || dhLen > 0);
|
|
8134
8144
|
// 如果复选框启用保留记录,当保留数据存在时显示半选
|
|
8135
8145
|
if (!isSelected && !halfSelect && showReserveStatus) {
|
|
8136
8146
|
halfSelect = !_xeUtils.default.isEmpty(checkboxReserveRowMap);
|