vxe-table 3.12.12 → 3.12.14
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.css +1 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/edit/mixin.js +5 -6
- package/es/table/module/validator/mixin.js +13 -1
- package/es/table/render/index.js +104 -43
- package/es/table/src/header.js +4 -2
- package/es/table/src/methods.js +35 -28
- package/es/table/src/table.js +68 -28
- package/es/table/style.css +33 -2
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +5 -3
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +33 -2
- package/es/vxe-table/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +232 -106
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/edit/mixin.js +5 -6
- package/lib/table/module/edit/mixin.min.js +1 -1
- package/lib/table/module/validator/mixin.js +18 -4
- package/lib/table/module/validator/mixin.min.js +1 -1
- package/lib/table/render/index.js +109 -41
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/header.js +4 -2
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/methods.js +46 -40
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +44 -9
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +33 -2
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +5 -3
- 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/vxe-table/style/style.css +33 -2
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/table/module/edit/mixin.ts +5 -6
- package/packages/table/module/validator/mixin.ts +15 -2
- package/packages/table/render/index.ts +120 -51
- package/packages/table/src/header.ts +4 -2
- package/packages/table/src/methods.ts +42 -30
- package/packages/table/src/table.ts +71 -28
- package/packages/ui/index.ts +4 -2
- package/styles/components/table.scss +31 -2
- /package/es/{iconfont.1739010705633.ttf → iconfont.1739181382716.ttf} +0 -0
- /package/es/{iconfont.1739010705633.woff → iconfont.1739181382716.woff} +0 -0
- /package/es/{iconfont.1739010705633.woff2 → iconfont.1739181382716.woff2} +0 -0
- /package/lib/{iconfont.1739010705633.ttf → iconfont.1739181382716.ttf} +0 -0
- /package/lib/{iconfont.1739010705633.woff → iconfont.1739181382716.woff} +0 -0
- /package/lib/{iconfont.1739010705633.woff2 → iconfont.1739181382716.woff2} +0 -0
|
@@ -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;function insertTreeRow(s,e,t){let{tableFullTreeData:n,afterFullData:a,fullDataRowIdData:d,fullAllDataRowIdData:u,treeOpts:l}=s,{rowField:c,parentField:h,mapChildrenField:g}=l,f=l.children||l.childrenField,w=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(s,l),i=t?_xeUtils.default.findTree(n,e=>t===e[c],{children:g}):null;if(i){var i=i.item,o=u[(0,_util.getRowid)(s,i)],o=o?o.level:0;let e=i[f],t=i[g];_xeUtils.default.isArray(e)||(e=i[f]=[]),_xeUtils.default.isArray(t)||(t=i[f]=[]),e[w](l),t[w](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};d[r]=i,u[r]=i}else{"development"===process.env.NODE_ENV&&t&&(0,_log.warnLog)("vxe.error.unableInsert"),a[w](l),n[w](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:n,parent:null,level:0,height:0,resizeHeight:0,oTop:0};d[r]=o,u[r]=o}})}function handleInsertRowAt(a,t,l,d){let i=a.treeConfig;var{mergeList:e,editStore:r}=a;let{tableFullTreeData:u,afterFullData:o,tableFullData:s,fullDataRowIdData:c,fullAllDataRowIdData:h}=a,g=a.computeTreeOpts,{transform:n,rowField:f,mapChildrenField:w}=g,v=g.children||g.childrenField,m=(_xeUtils.default.isArray(t)||(t=[t]),a.defineField(t.map(e=>Object.assign(i&&n?{[w]:[],[v]:[]}:{},e))));if(_xeUtils.default.eqNull(l))i&&n?insertTreeRow(a,m,!1):(m.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};c[t]=l,h[t]=l,o.unshift(e),s.unshift(e)}),e.forEach(e=>{var t=e.row;0<t&&(e.row=t+m.length)}));else if(-1===l)i&&n?insertTreeRow(a,m,!0):(m.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};c[t]=l,h[t]=l,o.push(e),s.push(e)}),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>o.length&&(e.rowspan=l+m.length)}));else if(i&&n){let n=_xeUtils.default.findTree(u,e=>l[f]===e[f],{children:w});if(n){let i=n.parent,o=i?i[w]:u;t=h[(0,_util.getRowid)(a,i)];let s=t?t.level:0;if(m.forEach((e,t)=>{var l=(0,_util.getRowid)(a,e);"development"===process.env.NODE_ENV&&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=n.index+t;d&&(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:s+1,height:0,resizeHeight:0,oTop:0};c[l]=t,h[l]=t}),i){t=_xeUtils.default.findTree(u,e=>l[f]===e[f],{children:v});if(t){var p=t.items;let e=t.index;d&&(e+=1),p.splice(e,0,...m)}}}else"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.unableInsert"),insertTreeRow(a,m,!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=d?Math.min(o.length,r+1):r))throw new Error((0,_log.errLog)("vxe.error.unableInsert"));o.splice(r,0,...m);t=a.findRowIndexOf(s,l);-1<t?s.splice(t+(d?1:0),0,...m):s.push(...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+m.length:t+l>r&&(e.rowspan=l+m.length)})}let _=r.insertMaps;return m.forEach(e=>{var t=(0,_util.getRowid)(a,e);_[t]=e}),a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(i&&n),i&&n||a.updateAfterDataIndex(),a.updateFooter(),a.checkSelectionStatus(),a.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))}function handleInsertChildRowAt(e,t,l,r,i){var o=e.treeConfig;let{transform:s,rowField:n,parentField:a}=e.computeTreeOpts;return o&&s?handleInsertRowAt(e,(t=_xeUtils.default.isArray(t)?t:[t]).map(e=>Object.assign({},e,{[a]:l[n]})),r,i):((0,_log.errLog)("vxe.error.errProp",["tree-config.treeConfig=false","tree-config.treeConfig=true"]),Promise.resolve({row:null,rows:[]}))}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 t=this;var l=t,r=t,i=t,l=l.treeConfig;let{mergeList:o,editStore:s,selectCheckboxMaps:n}=r,{tableFullTreeData:a,afterFullData:d,tableFullData:u}=i;var i=t.computeCheckboxOpts,c=t.computeTreeOpts;let{transform:h,mapChildrenField:g}=c,f=c.children||c.childrenField,{actived:w,removeList:v,insertMaps:m}=s;c=i.checkField;let p=[];if(e?_xeUtils.default.isArray(e)||(e=[e]):e=u,e.forEach(e=>{t.isInsertByRow(e)||v.push(e)}),!c){let t=Object.assign({},n);e.forEach(e=>{e=(0,_util.getRowid)(this,e);t[e]&&delete t[e]}),this.selectCheckboxMaps=t}return u===e?(e=p=u.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):l&&h?e.forEach(e=>{let t=(0,_util.getRowid)(this,e);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(this,e),{children:g}),l=(l&&(l=l.items.splice(l.index,1),p.push(l[0])),_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(this,e),{children:f})),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(u,e);-1<t&&(t=u.splice(t,1),p.push(t[0]));let r=this.findRowIndexOf(d,e);-1<r&&(o.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<t.findRowIndexOf(e,w.row)&&t.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(t,e);m[e]&&delete m[e]}),t.updateFooter(),t.cacheRowMap(!1),t.handleTableData(l&&h),l&&h||t.updateAfterDataIndex(),t.checkSelectionStatus(),r.scrollYLoad&&t.updateScrollYSpace(),this.$nextTick().then(()=>(this.updateCellAreas(),this.recalculate())).then(()=>({row:p.length?p[p.length-1]:null,rows:p}))},_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(){var e=this.editStore;let l=this.fullAllDataRowIdData;e=e.insertMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){return this.editStore.removeList},_getUpdateRecords(){let{keepSource:e,tableFullData:t,isUpdateByRow:l,treeConfig:r,treeOpts:i,editStore:o}=this;var s,n;return e?(s=o.actived,{row:s,column:n}=s,(s||n)&&this._syncActivedCell(),r?_xeUtils.default.filterTree(t,e=>l(e),i):t.filter(e=>l(e))):[]},handleEdit(l,r){var{editStore:i,editOpts:o,tableColumn:s,editConfig:e,mouseConfig:n}=this,a=o.mode,{actived:i,focused:t}=i;let{row:d,column:u}=l;var c=u.editRender,h=l.cell=l.cell||this.getCellElement(d,u),g=o.beforeEditMethod||o.activeMethod;if(h&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(c)&&!this.hasPendingByRow(d)){if(i.row!==d||"cell"===a&&i.column!==u){let t="edit-disabled";if(!g||g(Object.assign(Object.assign({},l),{$table:this,$grid:this.$xegrid}))){n&&(this.clearSelected(r),this.clearCellAreas(r),this.clearCopyCellArea(r)),this.closeTooltip(),i.column&&this.handleClearEdit(r),t="edit-activated",u.renderHeight=h.offsetHeight,i.args=l,i.row=d,i.column=u,"row"===a?s.forEach(e=>this._getColumnModel(d,e)):this._getColumnModel(d,u);let e=o.afterEditMethod;this.$nextTick(()=>{this.handleFocus(l,r),e&&e(Object.assign(Object.assign({},l),{$table:this,$grid:this.$xegrid}))})}this.emitEvent(t,l,r),"edit-activated"===t&&this.emitEvent("edit-actived",l,r)}else{e=i.column;n&&(this.clearSelected(r),this.clearCellAreas(r),this.clearCopyCellArea(r)),e!==u&&(c=e.model,c.update&&(0,_util.setCellValue)(d,e,c.value),this.clearValidate()),u.renderHeight=h.offsetHeight,i.args=l,i.column=u,setTimeout(()=>{this.handleFocus(l,r)})}t.column=null,t.row=null,this.focus()}return this.$nextTick()},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},_setColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},_syncActivedCell(){var{tableColumn:e,editStore:t,editOpts:l}=this,t=t.actived;let{row:r,column:i}=t;(r||i)&&("row"===l.mode?e.forEach(e=>this._setColumnModel(r,e)):this._setColumnModel(r,i))},_clearActived(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return this.handleClearEdit(null,e)},handleClearEdit(e,t){let l=this;var r=l,i=l;let o=r.mouseConfig;var r=i.editStore,{actived:i,focused:r}=r,{row:s,column:n}=i,a=l.validOpts;let d=l.computeMouseOpts;if(s||n){if(t&&(0,_util.getRowid)(l,t)!==(0,_util.getRowid)(l,s))return l.$nextTick();l._syncActivedCell(),i.args=null,i.row=null,i.column=null,l.updateFooter(),l.emitEvent("edit-closed",{row:s,rowIndex:l.getRowIndex(s),$rowIndex:l.getVMRowIndex(s),column:n,columnIndex:l.getColumnIndex(n),$columnIndex:l.getVMColumnIndex(n)},e)}return r.row=null,r.column=null,l.$nextTick(()=>{if(o&&d.area&&l.handleRecalculateCellAreas)return l.handleRecalculateCellAreas()}),a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&l.clearValidate?l.clearValidate():l.$nextTick()},_getActiveRecord(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},_getEditRecord(){var{$el:e,editStore:t,afterFullData:l}=this,t=t.actived,{args:t,row:r}=t;return t&&-1<this.findRowIndexOf(l,r)&&e.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},t):null},_isActiveByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){return this.editStore.actived.row===e},handleFocus(r){var i=this.editOpts,{row:o,column:s,cell:n}=r,a=s.editRender;if((0,_utils.isEnableConf)(a)){var d=renderer.get(a.name);let e=a.autofocus||a.autoFocus,t=a.autoSelect||a.autoselect,l;i.autoFocus&&(!e&&d&&(e=d.tableAutoFocus||d.tableAutofocus||d.autoFocus||d.autofocus),!t&&d&&(t=d.tableAutoSelect||d.autoSelect||d.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():_dom.browse.msie&&((a=l.createTextRange()).collapse(!1),a.select()):i.autoPos&&!s.fixed&&this.scrollToRow(o,s)}},_setActiveRow(e){return"development"===process.env.NODE_ENV&&(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));return t&&(l=_xeUtils.default.isString(t)?this.getColumnByField(t):t),this.setEditCell(e,l)},_setActiveCell(e,t){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(t,e){var l=this.editConfig;let r=_xeUtils.default.isString(e)?this.getColumnByField(e):e;return t&&r&&(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(r.editRender)?this.scrollToRow(t,!0).then(()=>{var e=this.getCellElement(t,r);e&&(this.handleEdit({row:t,rowIndex:this.getRowIndex(t),column:r,columnIndex:this.getColumnIndex(r),cell:e,$table:this}),this.lastCallTime=Date.now())}):this.$nextTick()},_setSelectCell(e,t){var{tableData:l,editOpts:r,visibleColumn:i}=this,t=_xeUtils.default.isString(t)?this.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=this.findRowIndexOf(l,e))&&(l=this.getCellElement(e,t),e={row:e,rowIndex:r,column:t,columnIndex:i.indexOf(t),cell:l},this.handleSelected(e,{})),this.$nextTick()},handleSelected(e,t){let{mouseConfig:l,mouseOpts:r,editOpts:i,editStore:o}=this,{actived:s,selected:n}=o,{row:a,column:d}=e,u=l&&r.selected;return!u||n.row===a&&n.column===d||(s.row!==a||"cell"===i.mode&&s.column!==d)&&(this.handleClearEdit(t),this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t),n.args=e,n.row=a,n.column=d,u&&this.addColSdCls(),this.focus(),t)&&this.emitEvent("cell-selected",e,t),this.$nextTick()},_getSelectedCell(){var{args:e,column:t}=this.editStore.selected;return e&&t?Object.assign({},e):null},_clearSelected(){var e=this.editStore.selected;return e.row=null,e.column=null,this.reColTitleSdCls(),this.reColSdCls(),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"))},reColSdCls(){var e=this.$el.querySelector(".col--selected");e&&(0,_dom.removeClass)(e,"col--selected")},addColSdCls(){var e=this.editStore.selected,{row:e,column:t}=e;this.reColSdCls(),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;function insertTreeRow(s,e,t){let{tableFullTreeData:n,afterFullData:a,fullDataRowIdData:d,fullAllDataRowIdData:u,treeOpts:l}=s,{rowField:c,parentField:h,mapChildrenField:g}=l,f=l.children||l.childrenField,w=t?"push":"unshift";e.forEach(l=>{let t=l[h];var r=(0,_util.getRowid)(s,l),i=t?_xeUtils.default.findTree(n,e=>t===e[c],{children:g}):null;if(i){var i=i.item,o=u[(0,_util.getRowid)(s,i)],o=o?o.level:0;let e=i[f],t=i[g];_xeUtils.default.isArray(e)||(e=i[f]=[]),_xeUtils.default.isArray(t)||(t=i[f]=[]),e[w](l),t[w](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};d[r]=i,u[r]=i}else{"development"===process.env.NODE_ENV&&t&&(0,_log.warnLog)("vxe.error.unableInsert"),a[w](l),n[w](l);o={row:l,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,items:n,parent:null,level:0,height:0,resizeHeight:0,oTop:0};d[r]=o,u[r]=o}})}function handleInsertRowAt(a,t,l,d){let i=a.treeConfig;var{mergeList:e,editStore:r}=a;let{tableFullTreeData:u,afterFullData:o,tableFullData:s,fullDataRowIdData:c,fullAllDataRowIdData:h}=a,g=a.computeTreeOpts,{transform:n,rowField:f,mapChildrenField:w}=g,v=g.children||g.childrenField,m=(_xeUtils.default.isArray(t)||(t=[t]),a.defineField(t.map(e=>Object.assign(i&&n?{[w]:[],[v]:[]}:{},e))));if(_xeUtils.default.eqNull(l))i&&n?insertTreeRow(a,m,!1):(m.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};c[t]=l,h[t]=l,o.unshift(e),s.unshift(e)}),e.forEach(e=>{var t=e.row;0<t&&(e.row=t+m.length)}));else if(-1===l)i&&n?insertTreeRow(a,m,!0):(m.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};c[t]=l,h[t]=l,o.push(e),s.push(e)}),e.forEach(e=>{var{row:t,rowspan:l}=e;t+l>o.length&&(e.rowspan=l+m.length)}));else if(i&&n){let n=_xeUtils.default.findTree(u,e=>l[f]===e[f],{children:w});if(n){let i=n.parent,o=i?i[w]:u;t=h[(0,_util.getRowid)(a,i)];let s=t?t.level:0;if(m.forEach((e,t)=>{var l=(0,_util.getRowid)(a,e);"development"===process.env.NODE_ENV&&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=n.index+t;d&&(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:s+1,height:0,resizeHeight:0,oTop:0};c[l]=t,h[l]=t}),i){t=_xeUtils.default.findTree(u,e=>l[f]===e[f],{children:v});if(t){var p=t.items;let e=t.index;d&&(e+=1),p.splice(e,0,...m)}}}else"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.unableInsert"),insertTreeRow(a,m,!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=d?Math.min(o.length,r+1):r))throw new Error((0,_log.errLog)("vxe.error.unableInsert"));o.splice(r,0,...m);t=a.findRowIndexOf(s,l);-1<t?s.splice(t+(d?1:0),0,...m):s.push(...m),e.forEach(e=>{var{row:t,rowspan:l}=e;t>r?e.row=t+m.length:t+l>r&&(e.rowspan=l+m.length)})}let _=r.insertMaps;return m.forEach(e=>{var t=(0,_util.getRowid)(a,e);_[t]=e}),a.cacheRowMap(!1),a.updateScrollYStatus(),a.handleTableData(i&&n),i&&n||a.updateAfterDataIndex(),a.updateFooter(),a.checkSelectionStatus(),a.scrollYLoad&&a.updateScrollYSpace(),a.$nextTick().then(()=>(a.updateCellAreas(),a.recalculate())).then(()=>({row:m.length?m[m.length-1]:null,rows:m}))}function handleInsertChildRowAt(e,t,l,r,i){var o=e.treeConfig;let{transform:s,rowField:n,parentField:a}=e.computeTreeOpts;return o&&s?handleInsertRowAt(e,(t=_xeUtils.default.isArray(t)?t:[t]).map(e=>Object.assign({},e,{[a]:l[n]})),r,i):((0,_log.errLog)("vxe.error.errProp",["tree-config.treeConfig=false","tree-config.treeConfig=true"]),Promise.resolve({row:null,rows:[]}))}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 t=this;var l=t,r=t,i=t,l=l.treeConfig;let{mergeList:o,editStore:s,selectCheckboxMaps:n}=r,{tableFullTreeData:a,afterFullData:d,tableFullData:u}=i;var i=t.computeCheckboxOpts,c=t.computeTreeOpts;let{transform:h,mapChildrenField:g}=c,f=c.children||c.childrenField,{actived:w,removeList:v,insertMaps:m}=s;c=i.checkField;let p=[];if(e?_xeUtils.default.isArray(e)||(e=[e]):e=u,e.forEach(e=>{t.isInsertByRow(e)||v.push(e)}),!c){let t=Object.assign({},n);e.forEach(e=>{e=(0,_util.getRowid)(this,e);t[e]&&delete t[e]}),this.selectCheckboxMaps=t}return u===e?(e=p=u.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):l&&h?e.forEach(e=>{let t=(0,_util.getRowid)(this,e);var l=_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(this,e),{children:g}),l=(l&&(l=l.items.splice(l.index,1),p.push(l[0])),_xeUtils.default.findTree(a,e=>t===(0,_util.getRowid)(this,e),{children:f})),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(u,e);-1<t&&(t=u.splice(t,1),p.push(t[0]));let r=this.findRowIndexOf(d,e);-1<r&&(o.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<t.findRowIndexOf(e,w.row)&&t.clearEdit(),e.forEach(e=>{e=(0,_util.getRowid)(t,e);m[e]&&delete m[e]}),t.updateFooter(),t.cacheRowMap(!1),t.handleTableData(l&&h),l&&h||t.updateAfterDataIndex(),t.checkSelectionStatus(),r.scrollYLoad&&t.updateScrollYSpace(),this.$nextTick().then(()=>(this.updateCellAreas(),this.recalculate())).then(()=>({row:p.length?p[p.length-1]:null,rows:p}))},_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(){var e=this.editStore;let l=this.fullAllDataRowIdData;e=e.insertMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{l[t]&&r.push(e)}),r},_getRemoveRecords(){return this.editStore.removeList},_getUpdateRecords(){let{keepSource:e,tableFullData:t,isUpdateByRow:l,treeConfig:r,treeOpts:i,editStore:o}=this;var s,n;return e?(s=o.actived,{row:s,column:n}=s,(s||n)&&this._syncActivedCell(),r?_xeUtils.default.filterTree(t,e=>l(e),i):t.filter(e=>l(e))):[]},handleEdit(l,r){var{editStore:i,editOpts:o,tableColumn:s,editConfig:e,mouseConfig:n}=this,a=o.mode,{actived:i,focused:t}=i;let{row:d,column:u}=l;var c=u.editRender,h=l.cell=l.cell||this.getCellElement(d,u),g=o.beforeEditMethod||o.activeMethod;if(h&&(0,_utils.isEnableConf)(e)&&(0,_utils.isEnableConf)(c)&&!this.hasPendingByRow(d)){if(i.row!==d||"cell"===a&&i.column!==u){let t="edit-disabled";if(!g||g(Object.assign(Object.assign({},l),{$table:this,$grid:this.$xegrid}))){n&&(this.clearSelected(r),this.clearCellAreas(r),this.clearCopyCellArea(r)),this.closeTooltip(),i.column&&this.handleClearEdit(r),t="edit-activated",u.renderHeight=h.offsetHeight,i.args=l,i.row=d,i.column=u,"row"===a?s.forEach(e=>this._getColumnModel(d,e)):this._getColumnModel(d,u);let e=o.afterEditMethod;this.$nextTick(()=>{this.handleFocus(l,r),e&&e(Object.assign(Object.assign({},l),{$table:this,$grid:this.$xegrid}))})}this.emitEvent(t,l,r),"edit-activated"===t&&this.emitEvent("edit-actived",l,r)}else{e=i.column;n&&(this.clearSelected(r),this.clearCellAreas(r),this.clearCopyCellArea(r)),e!==u&&(c=e.model,c.update&&(0,_util.setCellValue)(d,e,c.value),this.clearValidate()),u.renderHeight=h.offsetHeight,i.args=l,i.column=u,setTimeout(()=>{this.handleFocus(l,r)})}t.column=null,t.row=null,this.focus()}return this.$nextTick()},handleActived(e,t){return this.handleEdit(e,t)},_getColumnModel(e,t){var{model:l,editRender:r}=t;r&&(l.value=(0,_util.getCellValue)(e,t),l.update=!1)},_setColumnModel(e,t){var{model:l,editRender:r}=t;r&&l.update&&((0,_util.setCellValue)(e,t,l.value),l.update=!1,l.value=null)},_syncActivedCell(){var{tableColumn:e,editStore:t,editOpts:l}=this,t=t.actived;let{row:r,column:i}=t;(r||i)&&("row"===l.mode?e.forEach(e=>this._setColumnModel(r,e)):this._setColumnModel(r,i))},_clearActived(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["clearActived","clearEdit"]),this.clearEdit(e)},_clearEdit(e){return this.handleClearEdit(null,e)},handleClearEdit(e,t){let l=this;var r=l,i=l;let o=r.mouseConfig;var r=i.editStore,{actived:i,focused:r}=r,{row:s,column:n}=i,a=l.validOpts;let d=l.computeMouseOpts;if(s||n){if(t&&(0,_util.getRowid)(l,t)!==(0,_util.getRowid)(l,s))return l.$nextTick();l._syncActivedCell(),i.args=null,i.row=null,i.column=null,l.updateFooter(),l.emitEvent("edit-closed",{row:s,rowIndex:l.getRowIndex(s),$rowIndex:l.getVMRowIndex(s),column:n,columnIndex:l.getColumnIndex(n),$columnIndex:l.getVMColumnIndex(n)},e)}return r.row=null,r.column=null,a.autoClear&&("full"!==a.msgMode||"obsolete"===getConfig().cellVaildMode)&&l.clearValidate?l.clearValidate():l.$nextTick().then(()=>{if(o&&d.area&&l.handleRecalculateCellAreas)return l.handleRecalculateCellAreas()})},_getActiveRecord(){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["getActiveRecord","getEditRecord"]),this.getEditRecord()},_getEditRecord(){var{$el:e,editStore:t,afterFullData:l}=this,t=t.actived,{args:t,row:r}=t;return t&&-1<this.findRowIndexOf(l,r)&&e.querySelectorAll(".vxe-body--column.col--active").length?Object.assign({},t):null},_isActiveByRow(e){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["isActiveByRow","isEditByRow"]),this.isEditByRow(e)},_isEditByRow(e){return this.editStore.actived.row===e},handleFocus(r){var i=this.editOpts,{row:o,column:s,cell:n}=r,a=s.editRender;if((0,_utils.isEnableConf)(a)){var d=renderer.get(a.name);let e=a.autofocus||a.autoFocus,t=a.autoSelect||a.autoselect,l;i.autoFocus&&(!e&&d&&(e=d.tableAutoFocus||d.tableAutofocus||d.autoFocus||d.autofocus),!t&&d&&(t=d.tableAutoSelect||d.autoSelect||d.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():_dom.browse.msie&&((a=l.createTextRange()).collapse(!1),a.select()):i.autoPos&&!s.fixed&&this.scrollToRow(o,s)}},_setActiveRow(e){return"development"===process.env.NODE_ENV&&(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));return t&&(l=_xeUtils.default.isString(t)?this.getColumnByField(t):t),this.setEditCell(e,l)},_setActiveCell(e,t){return"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.delFunc",["setActiveCell","setEditCell"]),this.setEditCell(e,t)},_setEditCell(t,e){var l=this.editConfig;let r=_xeUtils.default.isString(e)?this.getColumnByField(e):e;return t&&r&&(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(r.editRender)?this.scrollToRow(t,!0).then(()=>{var e=this.getCellElement(t,r);e&&(this.handleEdit({row:t,rowIndex:this.getRowIndex(t),column:r,columnIndex:this.getColumnIndex(r),cell:e,$table:this}),this.lastCallTime=Date.now())}):this.$nextTick()},_setSelectCell(e,t){var{tableData:l,editOpts:r,visibleColumn:i}=this,t=_xeUtils.default.isString(t)?this.getColumnByField(t):t;return e&&t&&"manual"!==r.trigger&&-1<(r=this.findRowIndexOf(l,e))&&(l=this.getCellElement(e,t),e={row:e,rowIndex:r,column:t,columnIndex:i.indexOf(t),cell:l},this.handleSelected(e,{})),this.$nextTick()},handleSelected(e,t){let{mouseConfig:l,mouseOpts:r,editOpts:i,editStore:o}=this,{actived:s,selected:n}=o,{row:a,column:d}=e,u=l&&r.selected;return!u||n.row===a&&n.column===d||(s.row!==a||"cell"===i.mode&&s.column!==d)&&(this.handleClearEdit(t),this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t),n.args=e,n.row=a,n.column=d,u&&this.addColSdCls(),this.focus(),t)&&this.emitEvent("cell-selected",e,t),this.$nextTick()},_getSelectedCell(){var{args:e,column:t}=this.editStore.selected;return e&&t?Object.assign({},e):null},_clearSelected(){var e=this.editStore.selected;return e.row=null,e.column=null,this.reColTitleSdCls(),this.reColSdCls(),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"))},reColSdCls(){var e=this.$el.querySelector(".col--selected");e&&(0,_dom.removeClass)(e,"col--selected")},addColSdCls(){var e=this.editStore.selected,{row:e,column:t}=e;this.reColSdCls(),e&&t&&(e=this.getCellElement(e,t))&&(0,_dom.addClass)(e,"col--selected")}}};
|
|
@@ -168,13 +168,22 @@ var _default = exports.default = {
|
|
|
168
168
|
* 返回 Promise 对象,或者使用回调方式
|
|
169
169
|
*/
|
|
170
170
|
beginValidate(rows, cols, cb, isFull) {
|
|
171
|
+
const $xeTable = this;
|
|
172
|
+
const props = $xeTable;
|
|
173
|
+
const reactData = $xeTable;
|
|
174
|
+
const internalData = $xeTable;
|
|
171
175
|
const validRest = {};
|
|
172
176
|
const {
|
|
173
177
|
editRules,
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
+
treeConfig
|
|
179
|
+
} = props;
|
|
180
|
+
const {
|
|
181
|
+
pendingRowMaps
|
|
182
|
+
} = reactData;
|
|
183
|
+
const {
|
|
184
|
+
afterFullData
|
|
185
|
+
} = internalData;
|
|
186
|
+
const treeOpts = $xeTable.computeTreeOpts;
|
|
178
187
|
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
179
188
|
let validList;
|
|
180
189
|
if (rows === true) {
|
|
@@ -197,6 +206,11 @@ var _default = exports.default = {
|
|
|
197
206
|
if (editRules) {
|
|
198
207
|
const columns = cols && cols.length ? cols : this.getColumns();
|
|
199
208
|
const handleVaild = row => {
|
|
209
|
+
const rowid = (0, _util.getRowid)($xeTable, row);
|
|
210
|
+
// 是否标记删除
|
|
211
|
+
if (pendingRowMaps[rowid]) {
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
200
214
|
if (isFull || !this.validRuleErr) {
|
|
201
215
|
const colVailds = [];
|
|
202
216
|
columns.forEach(column => {
|
|
@@ -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"),_dom=require("../../../ui/src/dom"),_util=require("../../src/util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,validators}=_ui.VxeUI;class Rule{constructor(e){Object.defineProperty(this,"$options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}get content(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}get message(){return this.content}}function validErrorRuleValue(e,t){var{type:e,min:l,max:i,pattern:r}=e,e="number"===e,s=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||!_xeUtils.default.eqNull(l)&&s<_xeUtils.default.toNumber(l)||!_xeUtils.default.eqNull(i)&&s>_xeUtils.default.toNumber(i)||!(!r||(_xeUtils.default.isRegExp(r)?r:new RegExp(r)).test(t))}var _default=exports.default={methods:{_fullValidate(e,t){return"development"===process.env.NODE_ENV&&_xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["fullValidate(rows, callback)","fullValidate(rows)"]),this.beginValidate(e,null,t,!0)},_validate(e,t){return"development"===process.env.NODE_ENV&&_xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["validate(rows, callback)","validate(rows)"]),this.beginValidate(e,null,t)},_fullValidateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null,!0):this.$nextTick()},_validateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null):this.$nextTick()},handleValidError(t){let l=this.validOpts;return new Promise(e=>{!1===l.autoPos?(this.emitEvent("valid-error",t),e()):this.handleEdit(t,{type:"valid-error",trigger:"call"}).then(()=>{setTimeout(()=>{e(this.showValidTooltip(t))},10)})})},handleErrMsgMode(e){var t,l=this.validOpts;return"single"===l.msgMode?(l={},(t=Object.keys(e)).length&&(l[t=t[0]]=e[t]),l):e},beginValidate(e,l,a,s){let o={},{editRules:
|
|
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"),_dom=require("../../../ui/src/dom"),_util=require("../../src/util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,validators}=_ui.VxeUI;class Rule{constructor(e){Object.defineProperty(this,"$options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}get content(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}get message(){return this.content}}function validErrorRuleValue(e,t){var{type:e,min:l,max:i,pattern:r}=e,e="number"===e,s=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||!_xeUtils.default.eqNull(l)&&s<_xeUtils.default.toNumber(l)||!_xeUtils.default.eqNull(i)&&s>_xeUtils.default.toNumber(i)||!(!r||(_xeUtils.default.isRegExp(r)?r:new RegExp(r)).test(t))}var _default=exports.default={methods:{_fullValidate(e,t){return"development"===process.env.NODE_ENV&&_xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["fullValidate(rows, callback)","fullValidate(rows)"]),this.beginValidate(e,null,t,!0)},_validate(e,t){return"development"===process.env.NODE_ENV&&_xeUtils.default.isFunction(t)&&(0,_log.warnLog)("vxe.error.notValidators",["validate(rows, callback)","validate(rows)"]),this.beginValidate(e,null,t)},_fullValidateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null,!0):this.$nextTick()},_validateField(e,t){t=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e));return t.length?this.beginValidate(e,t,null):this.$nextTick()},handleValidError(t){let l=this.validOpts;return new Promise(e=>{!1===l.autoPos?(this.emitEvent("valid-error",t),e()):this.handleEdit(t,{type:"valid-error",trigger:"call"}).then(()=>{setTimeout(()=>{e(this.showValidTooltip(t))},10)})})},handleErrMsgMode(e){var t,l=this.validOpts;return"single"===l.msgMode?(l={},(t=Object.keys(e)).length&&(l[t=t[0]]=e[t]),l):e},beginValidate(e,l,a,s){let i=this;var t=i,r=i,o=i;let u={},{editRules:n,treeConfig:d}=t,h=r.pendingRowMaps;t=o.afterFullData,r=i.computeTreeOpts,o=r.children||r.childrenField;let c,g=(!0===e?c=t:e&&(_xeUtils.default.isFunction(e)?a=e:c=_xeUtils.default.isArray(e)?e:[e]),c=c||this.getInsertRecords().concat(this.getUpdateRecords()),[]),f=(this.lastCallTime=Date.now(),this.validRuleErr=!1,this.clearValidate(),{});if(n){let t=l&&l.length?l:this.getColumns();r=r=>{var e=(0,_util.getRowid)(i,r);if(!h[e]&&(s||!this.validRuleErr)){let e=[];t.forEach(l=>{let i=_xeUtils.default.isString(l)?l:l.field;!s&&this.validRuleErr||!_xeUtils.default.has(n,i)||e.push(this.validCellRules("all",r,l).catch(({rule:e,rules:t})=>{t={rule:e,rules:t,rowIndex:this.getRowIndex(r),row:r,columnIndex:this.getColumnIndex(l),column:l,field:i,$table:this};if(u[i]||(u[i]=[]),f[(0,_util.getRowid)(this,r)+":"+l.id]={column:l,row:r,rule:e,content:e.content},u[i].push(t),!s)return this.validRuleErr=!0,Promise.reject(t)}))}),g.push(Promise.all(e))}};return d?_xeUtils.default.eachTree(c,r,{children:o}):c.forEach(r),Promise.all(g).then(()=>{let e=Object.keys(u);return this.validErrorMaps=this.handleErrMsgMode(f),this.$nextTick().then(()=>{if(e.length)return Promise.reject(u[e[0]][0]);a&&a()})}).catch(s=>new Promise((e,t)=>{let l=()=>{this.$nextTick(()=>{a?(a(u),e()):("obsolete"===getConfig().validToReject?t:e)(u)})};var i,r=()=>{s.cell=this.getCellElement(s.row,s.column),(0,_dom.scrollToView)(s.cell),this.handleValidError(s).then(l)};!1===this.validOpts.autoPos?l():(i=s.row,this.scrollToRow(i,s.column).then(r))}))}return this.validErrorMaps={},this.$nextTick().then(()=>{a&&a()})},hasCellRules(t,e,l){var i=this.editRules,l=l.property;return!(!l||!i)&&(i=_xeUtils.default.get(i,l))&&_xeUtils.default.find(i,e=>"all"===t||!e.trigger||t===e.trigger)},validCellRules(e,d,h,t){var l=this.editRules,i=h.property;let c=[],g=[];if(i&&l){let n=_xeUtils.default.get(l,i);if(n){let u=_xeUtils.default.isUndefined(t)?_xeUtils.default.get(d,i):t;n.forEach(t=>{let{type:l,trigger:i,required:r,validator:s}=t;if("all"===e||!i||e===i)if(s){var a={cellValue:u,rule:t,rules:n,row:d,rowIndex:this.getRowIndex(d),column:h,columnIndex:this.getColumnIndex(h),field:h.property,$table:this};let e;_xeUtils.default.isString(s)?(o=validators.get(s))?(o=o.tableCellValidatorMethod||o.cellValidatorMethod)?e=o(a):"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.notValidators",[s]):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notValidators",[s]):e=s(a),e&&(_xeUtils.default.isError(e)?(this.validRuleErr=!0,c.push(new Rule({type:"custom",trigger:i,content:e.message,rule:new Rule(t)}))):e.catch&&g.push(e.catch(e=>{this.validRuleErr=!0,c.push(new Rule({type:"custom",trigger:i,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))})))}else{var o="array"===l,a=_xeUtils.default.isArray(u);let e=!0;e=o||a?!a||!u.length:_xeUtils.default.isString(u)?(0,_utils.eqEmptyValue)(u.trim()):(0,_utils.eqEmptyValue)(u),(r?e||validErrorRuleValue(t,u):!e&&validErrorRuleValue(t,u))&&(this.validRuleErr=!0,c.push(new Rule(t)))}})}}return Promise.all(g).then(()=>{var e;if(c.length)return e={rules:c,rule:c[0]},Promise.reject(e)})},_clearValidate(e,t){var{validOpts:l,validErrorMaps:i}=this,r=this.$refs.refValidTooltip,e=_xeUtils.default.isArray(e)?e:e?[e]:[];let s=(_xeUtils.default.isArray(t)?t:t?[t]:[]).map(e=>(0,_util.handleFieldOrColumn)(this,e)),a={};if(r&&r.visible&&r.close(),"single"===l.msgMode)this.validErrorMaps={};else{if(e.length&&s.length)a=Object.assign({},i),e.forEach(t=>{s.forEach(e=>{e=(0,_util.getRowid)(this,t)+":"+e.id;a[e]&&delete a[e]})});else if(e.length){let l=e.map(e=>""+(0,_util.getRowid)(this,e));_xeUtils.default.each(i,(e,t)=>{-1<l.indexOf(t.split(":")[0])&&(a[t]=e)})}else if(s.length){let l=s.map(e=>""+e.id);_xeUtils.default.each(i,(e,t)=>{-1<l.indexOf(t.split(":")[1])&&(a[t]=e)})}this.validErrorMaps=a}return this.$nextTick()},triggerValidate(r){let{editConfig:e,editStore:t,editRules:l,editOpts:s,validOpts:i}=this;var a=t.actived;if(l&&"single"===i.msgMode&&(this.validErrorMaps={}),e&&l&&a.row){let{row:t,column:l,cell:i}=a.args;if(this.hasCellRules(r,t,l))return this.validCellRules(r,t,l).then(()=>{"row"===s.mode&&this.clearValidate(t,l)}).catch(({rule:e})=>e.trigger&&r!==e.trigger?Promise.resolve():(e={rule:e,row:t,column:l,cell:i},this.showValidTooltip(e),Promise.reject(e)))}return Promise.resolve()},showValidTooltip(e){var{$refs:t,height:l,validStore:i,validErrorMaps:r,tableData:s,validOpts:a}=this,{rule:o,row:u,column:n,cell:d}=e,t=t.refValidTooltip,h=o.content;return i.visible=!0,"single"===a.msgMode?this.validErrorMaps={[(0,_util.getRowid)(this,u)+":"+n.id]:{column:n,row:u,rule:o,content:h}}:this.validErrorMaps=Object.assign({},r,{[(0,_util.getRowid)(this,u)+":"+n.id]:{column:n,row:u,rule:o,content:h}}),this.emitEvent("valid-error",e,null),t&&("tooltip"===a.message||"default"===a.message&&!l&&s.length<2)?t.open(d,h):this.$nextTick()}}};
|
|
@@ -120,12 +120,17 @@ function getCellLabelVNs(h, renderOpts, params, cellLabel) {
|
|
|
120
120
|
* @param modelFunc
|
|
121
121
|
* @param changeFunc
|
|
122
122
|
*/
|
|
123
|
-
function getNativeElementOns(renderOpts, params,
|
|
123
|
+
function getNativeElementOns(renderOpts, params, eFns) {
|
|
124
124
|
const {
|
|
125
125
|
events
|
|
126
126
|
} = renderOpts;
|
|
127
127
|
const modelEvent = (0, _vn.getModelEvent)(renderOpts);
|
|
128
128
|
const changeEvent = (0, _vn.getChangeEvent)(renderOpts);
|
|
129
|
+
const {
|
|
130
|
+
model: modelFunc,
|
|
131
|
+
change: changeFunc,
|
|
132
|
+
blur: blurFunc
|
|
133
|
+
} = eFns || {};
|
|
129
134
|
const isSameEvent = changeEvent === modelEvent;
|
|
130
135
|
const ons = {};
|
|
131
136
|
if (events) {
|
|
@@ -147,15 +152,24 @@ function getNativeElementOns(renderOpts, params, modelFunc, changeFunc) {
|
|
|
147
152
|
};
|
|
148
153
|
}
|
|
149
154
|
if (!isSameEvent && changeFunc) {
|
|
150
|
-
ons[(0, _vn.getOnName)(changeEvent)] = function (
|
|
151
|
-
changeFunc(
|
|
155
|
+
ons[(0, _vn.getOnName)(changeEvent)] = function (evnt) {
|
|
156
|
+
changeFunc(evnt);
|
|
152
157
|
if (events && events[changeEvent]) {
|
|
153
|
-
events[changeEvent](params,
|
|
158
|
+
events[changeEvent](params, evnt);
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
if (blurFunc) {
|
|
163
|
+
ons[(0, _vn.getOnName)(blurEvent)] = function (evnt) {
|
|
164
|
+
blurFunc(evnt);
|
|
165
|
+
if (events && events[blurEvent]) {
|
|
166
|
+
events[blurEvent](params, evnt);
|
|
154
167
|
}
|
|
155
168
|
};
|
|
156
169
|
}
|
|
157
170
|
return ons;
|
|
158
171
|
}
|
|
172
|
+
const blurEvent = 'blur';
|
|
159
173
|
/**
|
|
160
174
|
* 组件事件处理
|
|
161
175
|
* @param renderOpts
|
|
@@ -163,12 +177,17 @@ function getNativeElementOns(renderOpts, params, modelFunc, changeFunc) {
|
|
|
163
177
|
* @param modelFunc
|
|
164
178
|
* @param changeFunc
|
|
165
179
|
*/
|
|
166
|
-
function getComponentOns(renderOpts, params,
|
|
180
|
+
function getComponentOns(renderOpts, params, eFns) {
|
|
167
181
|
const {
|
|
168
182
|
events
|
|
169
183
|
} = renderOpts;
|
|
170
184
|
const modelEvent = (0, _vn.getModelEvent)(renderOpts);
|
|
171
185
|
const changeEvent = (0, _vn.getChangeEvent)(renderOpts);
|
|
186
|
+
const {
|
|
187
|
+
model: modelFunc,
|
|
188
|
+
change: changeFunc,
|
|
189
|
+
blur: blurFunc
|
|
190
|
+
} = eFns || {};
|
|
172
191
|
const ons = {};
|
|
173
192
|
_xeUtils.default.objectEach(events, (func, key) => {
|
|
174
193
|
ons[(0, _vn.getOnName)(key)] = function (...args) {
|
|
@@ -196,6 +215,14 @@ function getComponentOns(renderOpts, params, modelFunc, changeFunc) {
|
|
|
196
215
|
}
|
|
197
216
|
};
|
|
198
217
|
}
|
|
218
|
+
if (blurFunc) {
|
|
219
|
+
ons[(0, _vn.getOnName)(blurEvent)] = function (...args) {
|
|
220
|
+
blurFunc(...args);
|
|
221
|
+
if (events && events[blurEvent]) {
|
|
222
|
+
events[blurEvent](params, ...args);
|
|
223
|
+
}
|
|
224
|
+
};
|
|
225
|
+
}
|
|
199
226
|
return ons;
|
|
200
227
|
}
|
|
201
228
|
function getEditOns(renderOpts, params) {
|
|
@@ -211,31 +238,47 @@ function getEditOns(renderOpts, params) {
|
|
|
211
238
|
model
|
|
212
239
|
} = column;
|
|
213
240
|
const isImmediate = isImmediateCell(renderOpts, params);
|
|
214
|
-
return getComponentOns(renderOpts, params,
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
model.value = cellValue;
|
|
218
|
-
if (isImmediate) {
|
|
219
|
-
(0, _util.setCellValue)(row, column, cellValue);
|
|
220
|
-
}
|
|
221
|
-
}, eventParams => {
|
|
222
|
-
// 处理 change 事件相关逻辑
|
|
223
|
-
if (!isImmediate && ['VxeInput', 'VxeNumberInput', 'VxeTextarea', '$input', '$textarea'].includes(name)) {
|
|
224
|
-
const cellValue = eventParams.value;
|
|
241
|
+
return getComponentOns(renderOpts, params, {
|
|
242
|
+
model(cellValue) {
|
|
243
|
+
// 处理 model 值双向绑定
|
|
225
244
|
model.update = true;
|
|
226
245
|
model.value = cellValue;
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
246
|
+
if (isImmediate) {
|
|
247
|
+
(0, _util.setCellValue)(row, column, cellValue);
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
change(eventParams) {
|
|
251
|
+
// 处理 change 事件相关逻辑
|
|
252
|
+
if (!isImmediate && name && ['VxeInput', 'VxeNumberInput', 'VxeTextarea', '$input', '$textarea'].includes(name)) {
|
|
253
|
+
const cellValue = eventParams.value;
|
|
254
|
+
model.update = true;
|
|
255
|
+
model.value = cellValue;
|
|
256
|
+
$table.updateStatus(params, cellValue);
|
|
257
|
+
} else {
|
|
258
|
+
$table.updateStatus(params);
|
|
259
|
+
}
|
|
260
|
+
},
|
|
261
|
+
blur() {
|
|
262
|
+
if (isImmediate) {
|
|
263
|
+
$table.handleCellRuleUpdateStatus('blur', params);
|
|
264
|
+
} else {
|
|
265
|
+
$table.handleCellRuleUpdateStatus('blur', params, model.value);
|
|
266
|
+
}
|
|
230
267
|
}
|
|
231
268
|
});
|
|
232
269
|
}
|
|
233
270
|
function getFilterOns(renderOpts, params, option) {
|
|
234
|
-
return getComponentOns(renderOpts, params,
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
271
|
+
return getComponentOns(renderOpts, params, {
|
|
272
|
+
model(value) {
|
|
273
|
+
// 处理 model 值双向绑定
|
|
274
|
+
option.data = value;
|
|
275
|
+
},
|
|
276
|
+
change() {
|
|
277
|
+
handleConfirmFilter(params, !_xeUtils.default.eqNull(option.data), option);
|
|
278
|
+
},
|
|
279
|
+
blur() {
|
|
280
|
+
handleConfirmFilter(params, !_xeUtils.default.eqNull(option.data), option);
|
|
281
|
+
}
|
|
239
282
|
});
|
|
240
283
|
}
|
|
241
284
|
function getNativeEditOns(renderOpts, params) {
|
|
@@ -247,27 +290,52 @@ function getNativeEditOns(renderOpts, params) {
|
|
|
247
290
|
const {
|
|
248
291
|
model
|
|
249
292
|
} = column;
|
|
250
|
-
return getNativeElementOns(renderOpts, params,
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
(
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
293
|
+
return getNativeElementOns(renderOpts, params, {
|
|
294
|
+
model(evnt) {
|
|
295
|
+
// 处理 model 值双向绑定
|
|
296
|
+
const targetEl = evnt.target;
|
|
297
|
+
if (targetEl) {
|
|
298
|
+
const cellValue = targetEl.value;
|
|
299
|
+
if (isImmediateCell(renderOpts, params)) {
|
|
300
|
+
(0, _util.setCellValue)(row, column, cellValue);
|
|
301
|
+
} else {
|
|
302
|
+
model.update = true;
|
|
303
|
+
model.value = cellValue;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
},
|
|
307
|
+
change(evnt) {
|
|
308
|
+
// 处理 change 事件相关逻辑
|
|
309
|
+
const targetEl = evnt.target;
|
|
310
|
+
if (targetEl) {
|
|
311
|
+
const cellValue = targetEl.value;
|
|
312
|
+
$table.updateStatus(params, cellValue);
|
|
313
|
+
}
|
|
314
|
+
},
|
|
315
|
+
blur(evnt) {
|
|
316
|
+
const targetEl = evnt.target;
|
|
317
|
+
if (targetEl) {
|
|
318
|
+
const cellValue = targetEl.value;
|
|
319
|
+
$table.updateStatus(params, cellValue);
|
|
320
|
+
}
|
|
258
321
|
}
|
|
259
|
-
}, evnt => {
|
|
260
|
-
// 处理 change 事件相关逻辑
|
|
261
|
-
const cellValue = evnt.target.value;
|
|
262
|
-
$table.updateStatus(params, cellValue);
|
|
263
322
|
});
|
|
264
323
|
}
|
|
265
324
|
function getNativeFilterOns(renderOpts, params, option) {
|
|
266
|
-
return getNativeElementOns(renderOpts, params,
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
325
|
+
return getNativeElementOns(renderOpts, params, {
|
|
326
|
+
model(evnt) {
|
|
327
|
+
// 处理 model 值双向绑定
|
|
328
|
+
const targetEl = evnt.target;
|
|
329
|
+
if (targetEl) {
|
|
330
|
+
option.data = targetEl.value;
|
|
331
|
+
}
|
|
332
|
+
},
|
|
333
|
+
change() {
|
|
334
|
+
handleConfirmFilter(params, !_xeUtils.default.eqNull(option.data), option);
|
|
335
|
+
},
|
|
336
|
+
blur() {
|
|
337
|
+
handleConfirmFilter(params, !_xeUtils.default.eqNull(option.data), option);
|
|
338
|
+
}
|
|
271
339
|
});
|
|
272
340
|
}
|
|
273
341
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,getI18n}=_ui.VxeUI,componentDefaultModelProp="value",defaultCompProps={};function handleDefaultValue(e,t,l){return _xeUtils.default.eqNull(e)?_xeUtils.default.eqNull(t)?l:t:e}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,l){var{dateConfig:r={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),r.labelFormat||l)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+(t.type||"date")))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getOldComponent({name:e}){return getOldComponentName(e)}function getDefaultComponent({name:e}){return e}function handleConfirmFilter(e,t,l){e=e.$panel;e.changeOption({},t,l)}function getNativeAttrs(e){let{name:t,attrs:l}=e;return l="input"===t?Object.assign({type:"text"},l):l}function getInputImmediateModel(e){var{name:e,immediate:t,props:l}=e;return t||("VxeInput"===e||"$input"===e?(t=(l||{}).type,!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,l,r){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,r,e.props,{[componentDefaultModelProp]:l})}function getCellEditFilterProps(e,t,l,r){return _xeUtils.default.assign({},defaultCompProps,r,e.props,{[componentDefaultModelProp]:l})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,l,r){t=t.placeholder;return[e("span",{class:"vxe-cell--label"},t&&(0,_utils.isEmptyValue)(r)?[e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(t),1))]:(0,_utils.formatText)(r,1))]}function getNativeElementOns(e,l,t,r){let n=e.events,o=(0,_vn.getModelEvent)(e),a=(0,_vn.getChangeEvent)(e),u=a===o,i={};return n&&_xeUtils.default.objectEach(n,(t,e)=>{i[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),t&&(i[(0,_vn.getOnName)(o)]=function(e){t(e),u&&r&&r(e),n&&n[o]&&n[o](l,e)}),!u&&r&&(i[(0,_vn.getOnName)(a)]=function(...e){r(...e),n&&n[a]&&n[a](l,...e)}),i}function getComponentOns(e,l,t,r){let n=e.events,o=(0,_vn.getModelEvent)(e),a=(0,_vn.getChangeEvent)(e),u={};return _xeUtils.default.objectEach(n,(t,e)=>{u[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||(0,_log.errLog)("vxe.error.errFunc",[t]),t(l,...e)}}),t&&(u[(0,_vn.getOnName)(o)]=function(e){t(e),n&&n[o]&&n[o](l,e)}),r&&(u[(0,_vn.getOnName)(a)]=function(...e){r(...e),n&&n[a]&&n[a](l,...e)}),u}function getEditOns(e,t){let{$table:l,row:r,column:n}=t,o=e.name,a=n.model,u=isImmediateCell(e,t);return getComponentOns(e,t,e=>{a.update=!0,a.value=e,u&&(0,_util.setCellValue)(r,n,e)},e=>{!u&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(o)?(e=e.value,a.update=!0,a.value=e,l.updateStatus(t,e)):l.updateStatus(t)})}function getFilterOns(e,t,l){return getComponentOns(e,t,e=>{l.data=e},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)})}function getNativeEditOns(t,l){let{$table:r,row:n,column:o}=l,a=o.model;return getNativeElementOns(t,l,e=>{e=e.target.value;isImmediateCell(t,l)?(0,_util.setCellValue)(n,o,e):(a.update=!0,a.value=e)},e=>{e=e.target.value;r.updateStatus(l,e)})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,e=>{l.data=e.target.value},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)})}function nativeEditRender(e,t,l){var{row:r,column:n}=l,o=t.name,r=isImmediateCell(t,l)?(0,_util.getCellValue)(r,n):n.model.value;return[e(o,{class:"vxe-default-"+o,attrs:getNativeAttrs(t),domProps:{value:r},on:getNativeEditOns(t,l)})]}function buttonCellRender(e,t,l){return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,null),on:getComponentOns(t,l)})]}function defaultEditRender(e,t,l){var{row:r,column:n}=l,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r),on:getEditOns(t,l)})]}function radioAndCheckboxEditRender(e,t,l){var r=t.options,{row:n,column:o}=l,n=(0,_util.getCellValue)(n,o);return[e(getDefaultComponent(t),{props:Object.assign({options:r},getCellEditProps(t,l,n)),on:getEditOns(t,l)})]}function oldEditRender(e,t,l){var{row:r,column:n}=l,r=(0,_util.getCellValue)(r,n);return[e(getOldComponent(t),{props:getCellEditProps(t,l,r),on:getEditOns(t,l)})]}function oldButtonEditRender(e,t,l){return[e("vxe-button",{props:getCellEditProps(t,l,null),on:getComponentOns(t,l)})]}function oldButtonsEditRender(t,e,l){return e.children.map(e=>oldButtonEditRender(t,e,l)[0])}function renderNativeOptgroups(l,r,n,o){var{optionGroups:e,optionGroupProps:t={}}=r;let a=t.options||"options",u=t.label||"label";return e.map((e,t)=>l("optgroup",{key:t,attrs:{label:e[u]}},o(l,e[a],r,n)))}function renderNativeOptions(l,e,t,r){var{optionProps:n={}}=t,{row:o,column:a}=r;let u=n.label||"label",i=n.value||"value",d=n.disabled||"disabled",s=isImmediateCell(t,r)?(0,_util.getCellValue)(o,a):a.model.value;return e.map((e,t)=>l("option",{key:t,attrs:{value:e[i],disabled:e[d]},domProps:{selected:e[i]==s}},e[u]))}function nativeFilterRender(l,r,n){var e=n.column;let o=r.name,a=getNativeAttrs(r);return e.filters.map((e,t)=>l(o,{key:t,class:"vxe-default-"+o,attrs:a,domProps:{value:e.data},on:getNativeFilterOns(r,n,e)}))}function defaultFilterRender(r,n,o){var e=o.column;return e.filters.map((e,t)=>{var l=e.data;return r(getDefaultComponent(n),{key:t,props:getCellEditFilterProps(n,n,l),on:getFilterOns(n,o,e)})})}function oldFilterRender(r,n,o){var e=o.column;return e.filters.map((e,t)=>{var l=e.data;return r(getOldComponent(n),{key:t,props:getCellEditFilterProps(n,n,l),on:getFilterOns(n,o,e)})})}function handleFilterMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e}function handleInputFilterMethod({option:e,row:t,column:l}){e=e.data,t=_xeUtils.default.get(t,l.field);return-1<_xeUtils.default.toValueString(t).indexOf(e)}function nativeSelectEditRender(e,t,l){return[e("select",{class:"vxe-default-select",attrs:getNativeAttrs(t),on:getNativeEditOns(t,l)},t.optionGroups?renderNativeOptgroups(e,t,l,renderNativeOptions):renderNativeOptions(e,t.options,t,l))]}function defaultSelectEditRender(e,t,l){var{row:r,column:n}=l,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}=t,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}),on:getEditOns(t,l)})]}function defaultTableOrTreeSelectEditRender(e,t,l){var{row:r,column:n}=l,{options:o,optionProps:a}=t,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{options:o,optionProps:a}),on:getEditOns(t,l)})]}function oldSelectEditRender(e,t,l){var{row:r,column:n}=l,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}=t,r=(0,_util.getCellValue)(r,n);return[e(getOldComponent(t),{props:getCellEditProps(t,l,r,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}),on:getEditOns(t,l)})]}function getSelectCellValue(e,{row:t,column:l}){let{options:r,optionGroups:n,optionProps:o={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,l.field);let u,i=o.label||"label",d=o.value||"value";return null!=e?_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],n?t=>{var l=a.options||"options";for(let e=0;e<n.length&&!(u=_xeUtils.default.find(n[e][l],e=>e[d]==t));e++);return u?u[i]:t}:t=>(u=_xeUtils.default.find(r,e=>e[d]==t))?u[i]:t).join(", "):""}function handleExportSelectMethod(e){var{row:t,column:l,options:r}=e;return r.original?(0,_util.getCellValue)(t,l):getSelectCellValue(l.editRender||l.cellRender,e)}function getTreeSelectCellValue(e,{row:l,column:r}){var{options:e,optionProps:t={}}=e,l=_xeUtils.default.get(l,r.field);let n=t.label||"label",o=t.value||"value";r=t.children||"children";if(null==l)return"";{let t={};return _xeUtils.default.eachTree(e,e=>{t[_xeUtils.default.get(e,o)]=e},{children:r}),_xeUtils.default.map(_xeUtils.default.isArray(l)?l:[l],e=>{e=t[e];return e&&_xeUtils.default.get(e,n)}).join(", ")}}function handleExportTreeSelectMethod(e){var{row:t,column:l,options:r}=e;return r.original?(0,_util.getCellValue)(t,l):getTreeSelectCellValue(l.editRender||l.cellRender,e)}renderer.mixin({input:{tableAutoFocus:"input",renderTableEdit:nativeEditRender,renderTableDefault:nativeEditRender,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:"textarea",renderTableEdit:nativeEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getSelectCellValue(t,l))},renderTableFilter(l,r,n){var e=n.column;return e.filters.map((e,t)=>l("select",{key:t,class:"vxe-default-select",attrs:getNativeAttrs(r),on:getNativeFilterOns(r,n,e)},r.optionGroups?renderNativeOptgroups(l,r,n,renderNativeOptions):renderNativeOptions(l,r.options,r,n)))},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t,l){var{props:r={}}=t,{row:n,column:o}=l,a=getConfig().input||{},u=r.digits||a.digits||2;let i=_xeUtils.default.get(n,o.field);if(i)switch(r.type){case"date":case"week":case"month":case"quarter":case"year":i=getLabelFormatDate(i,r);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,u),u)}return getCellLabelVNs(e,t,l,i)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},VxeNumberInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t,l){var r,{props:n={}}=t,{row:o,column:a}=l,u=n.type;let i=_xeUtils.default.get(o,a.field);return i&&(o=getConfig().numberInput||{},"float"===u?(a=handleDefaultValue(n.autoFill,o.autoFill,!0),r=handleDefaultValue(n.digits,o.digits,1),i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,r),r),a||(i=_xeUtils.default.toNumber(i))):"amount"===u&&(r=handleDefaultValue(n.autoFill,o.autoFill,!0),a=handleDefaultValue(n.digits,o.digits,2),u=handleDefaultValue(n.showCurrency,o.showCurrency,!1),i=_xeUtils.default.commafy(_xeUtils.default.toNumber(i),{digits:a}),r||([a,r]=i.split("."),r&&(r=r.replace(/0+$/,""),i=r?[a,".",r].join(""):a)),u)&&(i=""+(n.currencySymbol||o.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+i)),getCellLabelVNs(e,t,l,i)},renderTableFooter(e,t,l){var{props:t={}}=t,{row:l,column:r,_columnIndex:n}=l,o=t.type,n=_xeUtils.default.isArray(l)?l[n]:_xeUtils.default.get(l,r.field);if(_xeUtils.default.isNumber(n)){l=getConfig().numberInput||{};if("float"===o){var r=handleDefaultValue(t.autoFill,l.autoFill,!0),a=handleDefaultValue(t.digits,l.digits,1);let e=_xeUtils.default.toFixed(_xeUtils.default.floor(n,a),a);return e=r?e:_xeUtils.default.toNumber(e)}if("amount"===o){var a=handleDefaultValue(t.autoFill,l.autoFill,!0),r=handleDefaultValue(t.digits,l.digits,2),o=handleDefaultValue(t.showCurrency,l.showCurrency,!1);let e=_xeUtils.default.commafy(_xeUtils.default.toNumber(n),{digits:r});return a||([r,a]=e.split("."),a&&(a=a.replace(/0+$/,""),e=a?[r,".",a].join(""):r)),e=o?""+(t.currencySymbol||l.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e:e}}return(0,_utils.getFuncText)(n,1)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod,tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeDatePicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t,l){var{props:r={}}=t,{row:n,column:o}=l;let a=_xeUtils.default.get(n,o.field);return getCellLabelVNs(e,t,l,a=a&&"time"!==r.type?getLabelFormatDate(a,r):a)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeTextarea:{tableAutoFocus:"textarea",renderTableEdit:defaultEditRender},VxeButton:{renderTableDefault:buttonCellRender},VxeButtonGroup:{renderTableDefault(e,t,l){var r=t.options;return[e(getDefaultComponent(t),{props:Object.assign({options:r},getCellEditProps(t,l,null)),on:getComponentOns(t,l)})]}},VxeSelect:{tableAutoFocus:"input",renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getSelectCellValue(t,l))},renderTableFilter(r,n,o){var e=o.column;let{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}=n;return e.filters.map((e,t)=>{var l=e.data;return r(getDefaultComponent(n),{key:t,props:getCellEditFilterProps(n,o,l,{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}),on:getFilterOns(n,o,e)})})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getTreeSelectCellValue(t,l))},tableExportMethod:handleExportTreeSelectMethod},VxeTableSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getTreeSelectCellValue(t,l))},tableExportMethod:handleExportTreeSelectMethod},VxeColorPicker:{tableAutoFocus:"input",renderTableEdit(e,t,l){var{row:r,column:n}=l,o=t.options,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{colors:o}),on:getEditOns(t,l)})]},renderTableCell(e,t,l){var{row:l,column:r}=l;return e("span",{class:"vxe-color-picker--readonly"},[e("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:_xeUtils.default.get(l,r.field)}})])}},VxeIconPicker:{tableAutoFocus:"input",renderTableEdit(e,t,l){var{row:r,column:n}=l,o=t.options,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{icons:o}),on:getEditOns(t,l)})]},renderTableCell(e,t,l){var{row:l,column:r}=l;return e("i",{class:_xeUtils.default.get(l,r.field)})}},VxeRadioGroup:{renderTableDefault:radioAndCheckboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t,l){var{row:r,column:n}=l,o=t.props,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:Object.assign(Object.assign({},o),{src:r}),on:getEditOns(t,l)})]}},VxeImageGroup:{renderTableDefault(e,t,l){var{row:r,column:n}=l,o=t.props,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:Object.assign(Object.assign({},o),{urlList:r}),on:getEditOns(t,l)})]}},VxeTextEllipsis:{renderTableDefault(e,t,l){var{row:r,column:n}=l,o=t.props,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:Object.assign(Object.assign({},o),{content:r}),on:getEditOns(t,l)})]}},VxeRate:{renderTableDefault:defaultEditRender},VxeSlider:{renderTableDefault:defaultEditRender},$input:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldEditRender,renderTableCell(e,t,l){var r,{props:n={}}=t,{row:o,column:a}=l,u=n.digits||(null==(r=getConfig().input)?void 0:r.digits)||2;let i=_xeUtils.default.get(o,a.field);if(i)switch(n.type){case"date":case"week":case"month":case"year":i=getLabelFormatDate(i,n);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,u),u)}return getCellLabelVNs(e,t,l,i)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:".vxe-textarea--inner"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getSelectCellValue(t,l))},renderTableFilter(r,n,o){var e=o.column;let{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}=n;return e.filters.map((e,t)=>{var l=e.data;return r(getOldComponent(n),{key:t,props:getCellEditFilterProps(n,o,l,{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}),on:getFilterOns(n,o,e)})})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:".vxe-radio--input"},$checkbox:{tableAutoFocus:".vxe-checkbox--input"},$switch:{tableAutoFocus:".vxe-switch--button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
|
1
|
+
var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,getI18n}=_ui.VxeUI,componentDefaultModelProp="value",defaultCompProps={};function handleDefaultValue(e,t,l){return _xeUtils.default.eqNull(e)?_xeUtils.default.eqNull(t)?l:t:e}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,l){var{dateConfig:r={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),r.labelFormat||l)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+(t.type||"date")))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getOldComponent({name:e}){return getOldComponentName(e)}function getDefaultComponent({name:e}){return e}function handleConfirmFilter(e,t,l){e=e.$panel;e.changeOption({},t,l)}function getNativeAttrs(e){let{name:t,attrs:l}=e;return l="input"===t?Object.assign({type:"text"},l):l}function getInputImmediateModel(e){var{name:e,immediate:t,props:l}=e;return t||("VxeInput"===e||"$input"===e?(t=(l||{}).type,!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,l,r){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,r,e.props,{[componentDefaultModelProp]:l})}function getCellEditFilterProps(e,t,l,r){return _xeUtils.default.assign({},defaultCompProps,r,e.props,{[componentDefaultModelProp]:l})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,l,r){t=t.placeholder;return[e("span",{class:"vxe-cell--label"},t&&(0,_utils.isEmptyValue)(r)?[e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(t),1))]:(0,_utils.formatText)(r,1))]}function getNativeElementOns(e,l,t){let r=e.events,n=(0,_vn.getModelEvent)(e),o=(0,_vn.getChangeEvent)(e),{model:a,change:u,blur:i}=t||{},d=o===n,s={};return r&&_xeUtils.default.objectEach(r,(t,e)=>{s[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),a&&(s[(0,_vn.getOnName)(n)]=function(e){a(e),d&&u&&u(e),r&&r[n]&&r[n](l,e)}),!d&&u&&(s[(0,_vn.getOnName)(o)]=function(e){u(e),r&&r[o]&&r[o](l,e)}),i&&(s[(0,_vn.getOnName)(blurEvent)]=function(e){i(e),r&&r[blurEvent]&&r[blurEvent](l,e)}),s}let blurEvent="blur";function getComponentOns(e,l,t){let r=e.events,n=(0,_vn.getModelEvent)(e),o=(0,_vn.getChangeEvent)(e),{model:a,change:u,blur:i}=t||{},d={};return _xeUtils.default.objectEach(r,(t,e)=>{d[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||(0,_log.errLog)("vxe.error.errFunc",[t]),t(l,...e)}}),a&&(d[(0,_vn.getOnName)(n)]=function(e){a(e),r&&r[n]&&r[n](l,e)}),u&&(d[(0,_vn.getOnName)(o)]=function(...e){u(...e),r&&r[o]&&r[o](l,...e)}),i&&(d[(0,_vn.getOnName)(blurEvent)]=function(...e){i(...e),r&&r[blurEvent]&&r[blurEvent](l,...e)}),d}function getEditOns(e,t){let{$table:l,row:r,column:n}=t,o=e.name,a=n.model,u=isImmediateCell(e,t);return getComponentOns(e,t,{model(e){a.update=!0,a.value=e,u&&(0,_util.setCellValue)(r,n,e)},change(e){!u&&o&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(o)?(e=e.value,a.update=!0,a.value=e,l.updateStatus(t,e)):l.updateStatus(t)},blur(){u?l.handleCellRuleUpdateStatus("blur",t):l.handleCellRuleUpdateStatus("blur",t,a.value)}})}function getFilterOns(e,t,l){return getComponentOns(e,t,{model(e){l.data=e},change(){handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)},blur(){handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)}})}function getNativeEditOns(t,l){let{$table:r,row:n,column:o}=l,a=o.model;return getNativeElementOns(t,l,{model(e){var e=e.target;e&&(e=e.value,isImmediateCell(t,l)?(0,_util.setCellValue)(n,o,e):(a.update=!0,a.value=e))},change(e){var e=e.target;e&&(e=e.value,r.updateStatus(l,e))},blur(e){var e=e.target;e&&(e=e.value,r.updateStatus(l,e))}})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,{model(e){e=e.target;e&&(l.data=e.value)},change(){handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)},blur(){handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)}})}function nativeEditRender(e,t,l){var{row:r,column:n}=l,o=t.name,r=isImmediateCell(t,l)?(0,_util.getCellValue)(r,n):n.model.value;return[e(o,{class:"vxe-default-"+o,attrs:getNativeAttrs(t),domProps:{value:r},on:getNativeEditOns(t,l)})]}function buttonCellRender(e,t,l){return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,null),on:getComponentOns(t,l)})]}function defaultEditRender(e,t,l){var{row:r,column:n}=l,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r),on:getEditOns(t,l)})]}function radioAndCheckboxEditRender(e,t,l){var r=t.options,{row:n,column:o}=l,n=(0,_util.getCellValue)(n,o);return[e(getDefaultComponent(t),{props:Object.assign({options:r},getCellEditProps(t,l,n)),on:getEditOns(t,l)})]}function oldEditRender(e,t,l){var{row:r,column:n}=l,r=(0,_util.getCellValue)(r,n);return[e(getOldComponent(t),{props:getCellEditProps(t,l,r),on:getEditOns(t,l)})]}function oldButtonEditRender(e,t,l){return[e("vxe-button",{props:getCellEditProps(t,l,null),on:getComponentOns(t,l)})]}function oldButtonsEditRender(t,e,l){return e.children.map(e=>oldButtonEditRender(t,e,l)[0])}function renderNativeOptgroups(l,r,n,o){var{optionGroups:e,optionGroupProps:t={}}=r;let a=t.options||"options",u=t.label||"label";return e.map((e,t)=>l("optgroup",{key:t,attrs:{label:e[u]}},o(l,e[a],r,n)))}function renderNativeOptions(l,e,t,r){var{optionProps:n={}}=t,{row:o,column:a}=r;let u=n.label||"label",i=n.value||"value",d=n.disabled||"disabled",s=isImmediateCell(t,r)?(0,_util.getCellValue)(o,a):a.model.value;return e.map((e,t)=>l("option",{key:t,attrs:{value:e[i],disabled:e[d]},domProps:{selected:e[i]==s}},e[u]))}function nativeFilterRender(l,r,n){var e=n.column;let o=r.name,a=getNativeAttrs(r);return e.filters.map((e,t)=>l(o,{key:t,class:"vxe-default-"+o,attrs:a,domProps:{value:e.data},on:getNativeFilterOns(r,n,e)}))}function defaultFilterRender(r,n,o){var e=o.column;return e.filters.map((e,t)=>{var l=e.data;return r(getDefaultComponent(n),{key:t,props:getCellEditFilterProps(n,n,l),on:getFilterOns(n,o,e)})})}function oldFilterRender(r,n,o){var e=o.column;return e.filters.map((e,t)=>{var l=e.data;return r(getOldComponent(n),{key:t,props:getCellEditFilterProps(n,n,l),on:getFilterOns(n,o,e)})})}function handleFilterMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e}function handleInputFilterMethod({option:e,row:t,column:l}){e=e.data,t=_xeUtils.default.get(t,l.field);return-1<_xeUtils.default.toValueString(t).indexOf(e)}function nativeSelectEditRender(e,t,l){return[e("select",{class:"vxe-default-select",attrs:getNativeAttrs(t),on:getNativeEditOns(t,l)},t.optionGroups?renderNativeOptgroups(e,t,l,renderNativeOptions):renderNativeOptions(e,t.options,t,l))]}function defaultSelectEditRender(e,t,l){var{row:r,column:n}=l,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}=t,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}),on:getEditOns(t,l)})]}function defaultTableOrTreeSelectEditRender(e,t,l){var{row:r,column:n}=l,{options:o,optionProps:a}=t,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{options:o,optionProps:a}),on:getEditOns(t,l)})]}function oldSelectEditRender(e,t,l){var{row:r,column:n}=l,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}=t,r=(0,_util.getCellValue)(r,n);return[e(getOldComponent(t),{props:getCellEditProps(t,l,r,{options:o,optionProps:a,optionGroups:u,optionGroupProps:i}),on:getEditOns(t,l)})]}function getSelectCellValue(e,{row:t,column:l}){let{options:r,optionGroups:n,optionProps:o={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,l.field);let u,i=o.label||"label",d=o.value||"value";return null!=e?_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],n?t=>{var l=a.options||"options";for(let e=0;e<n.length&&!(u=_xeUtils.default.find(n[e][l],e=>e[d]==t));e++);return u?u[i]:t}:t=>(u=_xeUtils.default.find(r,e=>e[d]==t))?u[i]:t).join(", "):""}function handleExportSelectMethod(e){var{row:t,column:l,options:r}=e;return r.original?(0,_util.getCellValue)(t,l):getSelectCellValue(l.editRender||l.cellRender,e)}function getTreeSelectCellValue(e,{row:l,column:r}){var{options:e,optionProps:t={}}=e,l=_xeUtils.default.get(l,r.field);let n=t.label||"label",o=t.value||"value";r=t.children||"children";if(null==l)return"";{let t={};return _xeUtils.default.eachTree(e,e=>{t[_xeUtils.default.get(e,o)]=e},{children:r}),_xeUtils.default.map(_xeUtils.default.isArray(l)?l:[l],e=>{e=t[e];return e&&_xeUtils.default.get(e,n)}).join(", ")}}function handleExportTreeSelectMethod(e){var{row:t,column:l,options:r}=e;return r.original?(0,_util.getCellValue)(t,l):getTreeSelectCellValue(l.editRender||l.cellRender,e)}renderer.mixin({input:{tableAutoFocus:"input",renderTableEdit:nativeEditRender,renderTableDefault:nativeEditRender,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:"textarea",renderTableEdit:nativeEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getSelectCellValue(t,l))},renderTableFilter(l,r,n){var e=n.column;return e.filters.map((e,t)=>l("select",{key:t,class:"vxe-default-select",attrs:getNativeAttrs(r),on:getNativeFilterOns(r,n,e)},r.optionGroups?renderNativeOptgroups(l,r,n,renderNativeOptions):renderNativeOptions(l,r.options,r,n)))},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t,l){var{props:r={}}=t,{row:n,column:o}=l,a=getConfig().input||{},u=r.digits||a.digits||2;let i=_xeUtils.default.get(n,o.field);if(i)switch(r.type){case"date":case"week":case"month":case"quarter":case"year":i=getLabelFormatDate(i,r);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,u),u)}return getCellLabelVNs(e,t,l,i)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},VxeNumberInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t,l){var r,{props:n={}}=t,{row:o,column:a}=l,u=n.type;let i=_xeUtils.default.get(o,a.field);return i&&(o=getConfig().numberInput||{},"float"===u?(a=handleDefaultValue(n.autoFill,o.autoFill,!0),r=handleDefaultValue(n.digits,o.digits,1),i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,r),r),a||(i=_xeUtils.default.toNumber(i))):"amount"===u&&(r=handleDefaultValue(n.autoFill,o.autoFill,!0),a=handleDefaultValue(n.digits,o.digits,2),u=handleDefaultValue(n.showCurrency,o.showCurrency,!1),i=_xeUtils.default.commafy(_xeUtils.default.toNumber(i),{digits:a}),r||([a,r]=i.split("."),r&&(r=r.replace(/0+$/,""),i=r?[a,".",r].join(""):a)),u)&&(i=""+(n.currencySymbol||o.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+i)),getCellLabelVNs(e,t,l,i)},renderTableFooter(e,t,l){var{props:t={}}=t,{row:l,column:r,_columnIndex:n}=l,o=t.type,n=_xeUtils.default.isArray(l)?l[n]:_xeUtils.default.get(l,r.field);if(_xeUtils.default.isNumber(n)){l=getConfig().numberInput||{};if("float"===o){var r=handleDefaultValue(t.autoFill,l.autoFill,!0),a=handleDefaultValue(t.digits,l.digits,1);let e=_xeUtils.default.toFixed(_xeUtils.default.floor(n,a),a);return e=r?e:_xeUtils.default.toNumber(e)}if("amount"===o){var a=handleDefaultValue(t.autoFill,l.autoFill,!0),r=handleDefaultValue(t.digits,l.digits,2),o=handleDefaultValue(t.showCurrency,l.showCurrency,!1);let e=_xeUtils.default.commafy(_xeUtils.default.toNumber(n),{digits:r});return a||([r,a]=e.split("."),a&&(a=a.replace(/0+$/,""),e=a?[r,".",a].join(""):r)),e=o?""+(t.currencySymbol||l.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e:e}}return(0,_utils.getFuncText)(n,1)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod,tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeDatePicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t,l){var{props:r={}}=t,{row:n,column:o}=l;let a=_xeUtils.default.get(n,o.field);return getCellLabelVNs(e,t,l,a=a&&"time"!==r.type?getLabelFormatDate(a,r):a)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeTextarea:{tableAutoFocus:"textarea",renderTableEdit:defaultEditRender},VxeButton:{renderTableDefault:buttonCellRender},VxeButtonGroup:{renderTableDefault(e,t,l){var r=t.options;return[e(getDefaultComponent(t),{props:Object.assign({options:r},getCellEditProps(t,l,null)),on:getComponentOns(t,l)})]}},VxeSelect:{tableAutoFocus:"input",renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getSelectCellValue(t,l))},renderTableFilter(r,n,o){var e=o.column;let{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}=n;return e.filters.map((e,t)=>{var l=e.data;return r(getDefaultComponent(n),{key:t,props:getCellEditFilterProps(n,o,l,{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}),on:getFilterOns(n,o,e)})})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getTreeSelectCellValue(t,l))},tableExportMethod:handleExportTreeSelectMethod},VxeTableSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getTreeSelectCellValue(t,l))},tableExportMethod:handleExportTreeSelectMethod},VxeColorPicker:{tableAutoFocus:"input",renderTableEdit(e,t,l){var{row:r,column:n}=l,o=t.options,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{colors:o}),on:getEditOns(t,l)})]},renderTableCell(e,t,l){var{row:l,column:r}=l;return e("span",{class:"vxe-color-picker--readonly"},[e("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:_xeUtils.default.get(l,r.field)}})])}},VxeIconPicker:{tableAutoFocus:"input",renderTableEdit(e,t,l){var{row:r,column:n}=l,o=t.options,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:getCellEditProps(t,l,r,{icons:o}),on:getEditOns(t,l)})]},renderTableCell(e,t,l){var{row:l,column:r}=l;return e("i",{class:_xeUtils.default.get(l,r.field)})}},VxeRadioGroup:{renderTableDefault:radioAndCheckboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t,l){var{row:r,column:n}=l,o=t.props,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:Object.assign(Object.assign({},o),{src:r}),on:getEditOns(t,l)})]}},VxeImageGroup:{renderTableDefault(e,t,l){var{row:r,column:n}=l,o=t.props,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:Object.assign(Object.assign({},o),{urlList:r}),on:getEditOns(t,l)})]}},VxeTextEllipsis:{renderTableDefault(e,t,l){var{row:r,column:n}=l,o=t.props,r=(0,_util.getCellValue)(r,n);return[e(getDefaultComponent(t),{props:Object.assign(Object.assign({},o),{content:r}),on:getEditOns(t,l)})]}},VxeRate:{renderTableDefault:defaultEditRender},VxeSlider:{renderTableDefault:defaultEditRender},$input:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldEditRender,renderTableCell(e,t,l){var r,{props:n={}}=t,{row:o,column:a}=l,u=n.digits||(null==(r=getConfig().input)?void 0:r.digits)||2;let i=_xeUtils.default.get(o,a.field);if(i)switch(n.type){case"date":case"week":case"month":case"year":i=getLabelFormatDate(i,n);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,u),u)}return getCellLabelVNs(e,t,l,i)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:".vxe-textarea--inner"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t,l){return getCellLabelVNs(e,t,l,getSelectCellValue(t,l))},renderTableFilter(r,n,o){var e=o.column;let{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}=n;return e.filters.map((e,t)=>{var l=e.data;return r(getOldComponent(n),{key:t,props:getCellEditFilterProps(n,o,l,{options:a,optionProps:u,optionGroups:i,optionGroupProps:d}),on:getFilterOns(n,o,e)})})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:".vxe-radio--input"},$checkbox:{tableAutoFocus:".vxe-checkbox--input"},$switch:{tableAutoFocus:".vxe-switch--button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
package/lib/table/src/header.js
CHANGED
|
@@ -136,8 +136,10 @@ const renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) => {
|
|
|
136
136
|
const showResizable = _xeUtils.default.isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable;
|
|
137
137
|
const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
|
|
138
138
|
let isVNPreEmptyStatus = false;
|
|
139
|
-
if (
|
|
140
|
-
|
|
139
|
+
if (!isGroup) {
|
|
140
|
+
if (scrollXLoad && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
|
|
141
|
+
isVNPreEmptyStatus = true;
|
|
142
|
+
}
|
|
141
143
|
}
|
|
142
144
|
const tcStyle = {};
|
|
143
145
|
if (hasEllipsis) {
|
|
@@ -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("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,cellType="header",renderRows=($,e,
|
|
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("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,cellType="header",renderRows=($,e,E,S,D,T)=>{let R=e.$parent,I=R.xegrid;var l=R,r=R,a=R;let O=e.fixedType,{resizable:U,border:k,columnKey:z,headerCellClassName:M,headerCellStyle:A,showHeaderOverflow:F,headerAlign:q,align:X,mouseConfig:L}=l,{currentColumn:G,scrollXLoad:N,scrollYLoad:B,overflowX:V}=r,K=a.scrollXStore,P=R.computeColumnOpts,W=R.computeColumnDragOpts,Y=R.computeCellOpts;e=R.computeDefaultRowHeight;let j=R.computeHeaderCellOpts,J=(0,_util.getCellHeight)(j.height||Y.height)||e,{disabledMethod:Q,isCrossDrag:Z,isPeerDrag:ee}=W;return D.map((e,l)=>{var{type:r,showHeaderOverflow:a,headerAlign:t,align:i,filters:d,headerClassName:s,editRender:o,cellRender:n}=e,u=e.id,o=o||n,n=o?renderer.get(o.name):null,o=e.children&&e.children.length,c=O?e.fixed!==O&&!o:e.fixed&&V,p=(_xeUtils.default.isBoolean(j.padding)?j:Y).padding,a=_xeUtils.default.isUndefined(a)||_xeUtils.default.isNull(a)?F:a,t=t||(n?n.tableHeaderCellAlign:"")||q||i||(n?n.tableCellAlign:"")||X;let f="ellipsis"===a;i="title"===a,n=!0===a||"tooltip"===a;let x=i||n||f,m=!1,g=null;d&&(g=d[0],m=d.some(e=>e.checked));var a=R.getColumnIndex(e),h=R.getVTColumnIndex(e);let v={$table:R,$grid:I,$rowIndex:T,column:e,columnIndex:a,$columnIndex:l,_columnIndex:h,firstFilterOption:g,fixed:O,type:cellType,isHidden:c,hasFilter:m};var a={colid:u,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},C={click:e=>R.triggerHeaderCellClickEvent(e,v),dblclick:e=>R.triggerHeaderCellDblclickEvent(e,v)},b=(N&&!x&&(f=x=!0),P.drag&&"cell"===W.trigger);let y=!1;b&&(y=!(!Q||!Q(v))),(L||b)&&(C.mousedown=e=>R.triggerHeaderCellMousedownEvent(e,v)),P.drag&&(C.dragstart=R.handleHeaderCellDragDragstartEvent,C.dragend=R.handleHeaderCellDragDragendEvent,C.dragover=R.handleHeaderCellDragDragoverEvent,b)&&(C.mouseup=R.handleHeaderCellDragMouseupEvent);var b=l===D.length-1,w=_xeUtils.default.isBoolean(e.resizable)?e.resizable:P.resizable||U,H=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let _=!1;E||N&&!e.fixed&&(h<K.visibleStartIndex-K.preloadSize||h>K.visibleEndIndex+K.preloadSize)&&(_=!0);h={};return x?h.height=J+"px":h.minHeight=J+"px",$("th",{class:["vxe-header--column",u,{["col--"+t]:t,["col--"+r]:r,"col--last":b,"col--fixed":e.fixed,"col--group":o,"col--ellipsis":x,"fixed--width":!H,"fixed--hidden":c,"is--padding":p,"is--sortable":e.sortable,"col--filter":!!d,"is--filter-active":m,"is--drag-active":!e.fixed&&!y&&(Z||ee||!e.parentId),"is--drag-disabled":y,"col--current":G===e},(0,_utils.getClass)(s,v),(0,_utils.getClass)(M,v)],attrs:a,style:A?_xeUtils.default.isFunction(A)?A(v):A:void 0,on:C,key:z||N||B||P.useKey||P.drag||o?u:l},[$("div",{class:["vxe-cell",{"c--title":i,"c--tooltip":n,"c--ellipsis":f}],style:h},_||S&&c?[]:[$("div",{attrs:{colid:u},class:"vxe-cell--wrapper"},e.renderHeader($,v))]),!c&&w?$("div",{class:["vxe-cell--col-resizable",{"is--line":!k||"none"===k}],on:{mousedown:e=>R.handleColResizeMousedownEvent(e,O,v),dblclick:e=>R.handleColResizeDblclickEvent(e,v)}}):renderEmptyElement(R)])})};function renderHeads(a,t,i,d,e){let s=t.$parent;var l=s,r=s;let o=t.fixedType,n=s.computeColumnOpts,u=s.computeColumnDragOpts,{headerRowClassName:c,headerRowStyle:p}=l,{isColLoading:f,isDragColMove:x}=r;return e.map((e,l)=>{var r={$table:s,$rowIndex:l,fixed:o,type:cellType};return!f&&n.drag&&u.animation?a("transition-group",{key:l,props:{tag:"tr",name:"vxe-header--col-list"+(x?"":"-disabled"),class:["vxe-header--row",c?_xeUtils.default.isFunction(c)?c(r):c:""],style:p?_xeUtils.default.isFunction(p)?p(r):p:null}},renderRows(a,t,i,d,e,l)):a("tr",{key:l,class:["vxe-header--row",c?_xeUtils.default.isFunction(c)?c(r):c:""],style:p?_xeUtils.default.isFunction(p)?p(r):p:void 0},renderRows(a,t,i,d,e,l))})}var _default=exports.default={name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null},render(r){let l=this.$parent;var e=l,a=l,t=l,i=l.xID;let{fixedType:d,fixedColumn:s,tableColumn:o}=this;var n=this.headerColumn,{mouseConfig:e,showHeaderOverflow:u,spanMethod:c,footerSpanMethod:p}=e,{isGroup:a,scrollXLoad:f,scrollYLoad:x,dragCol:m}=a,{visibleColumn:t,fullColumnIdData:g}=t,h=l.computeMouseOpts;let v=n,C=o,b=!1;return a?C=t:(!(f||x||u)||c||p||(b=!0),d&&(C=t,b)&&(C=s||[]),v=[C]),d||a||f&&m&&2<C.length&&(n=g[m.id])&&(x=n._index,u=C[0],c=C[C.length-1],p=g[u.id],t=g[c.id],p)&&t&&(f=p._index,n=t._index,x<f?(C=[m].concat(C),v=[[m].concat(v[0])].concat(v.slice(1))):n<x&&(C=C.concat([m]),v=[v[0].concat([m])].concat(v.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",d?`fixed-${d}--wrapper`:"body--wrapper"],attrs:{xid:i}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,d)}}},[d?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0}},[r("colgroup",{ref:"refHeaderColgroup"},C.map((e,l)=>r("col",{attrs:{name:e.id},key:l}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,a,b,v)),e&&h.area?r("div",{class:"vxe-table--cell-area"},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-copy-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])])},methods:{uploadColumn(){var e=this.$parent;this.headerColumn=e.isGroup?(0,_util.convertHeaderColumnToRows)(this.tableGroupColumn):[]}}};
|
package/lib/table/src/methods.js
CHANGED
|
@@ -7079,10 +7079,9 @@ const Methods = {
|
|
|
7079
7079
|
} = sortOpts;
|
|
7080
7080
|
const {
|
|
7081
7081
|
field,
|
|
7082
|
-
sortable
|
|
7083
|
-
remoteSort
|
|
7082
|
+
sortable
|
|
7084
7083
|
} = column;
|
|
7085
|
-
if (sortable || remoteSort) {
|
|
7084
|
+
if (sortable || column.remoteSort) {
|
|
7086
7085
|
if (!order || column.order === order) {
|
|
7087
7086
|
if (allowClear) {
|
|
7088
7087
|
$xeTable.clearSort(multiple ? column : null);
|
|
@@ -7096,6 +7095,44 @@ const Methods = {
|
|
|
7096
7095
|
$xeTable.handleColumnSortEvent(evnt, column);
|
|
7097
7096
|
}
|
|
7098
7097
|
},
|
|
7098
|
+
handleCellRuleUpdateStatus(type, cellParams, cellValue) {
|
|
7099
|
+
const $xeTable = this;
|
|
7100
|
+
const reactData = $xeTable;
|
|
7101
|
+
const {
|
|
7102
|
+
validStore
|
|
7103
|
+
} = reactData;
|
|
7104
|
+
const {
|
|
7105
|
+
row,
|
|
7106
|
+
column
|
|
7107
|
+
} = cellParams;
|
|
7108
|
+
if ($xeTable.hasCellRules) {
|
|
7109
|
+
if ($xeTable.hasCellRules(type, row, column)) {
|
|
7110
|
+
const cell = $xeTable.getCellElement(row, column);
|
|
7111
|
+
if (cell) {
|
|
7112
|
+
const customVal = !_xeUtils.default.isUndefined(cellValue);
|
|
7113
|
+
return $xeTable.validCellRules(type, row, column, cellValue).then(() => {
|
|
7114
|
+
if (customVal && validStore.visible) {
|
|
7115
|
+
(0, _util.setCellValue)(row, column, cellValue);
|
|
7116
|
+
}
|
|
7117
|
+
$xeTable.clearValidate(row, column);
|
|
7118
|
+
}).catch(({
|
|
7119
|
+
rule
|
|
7120
|
+
}) => {
|
|
7121
|
+
if (customVal) {
|
|
7122
|
+
(0, _util.setCellValue)(row, column, cellValue);
|
|
7123
|
+
}
|
|
7124
|
+
$xeTable.showValidTooltip({
|
|
7125
|
+
rule,
|
|
7126
|
+
row,
|
|
7127
|
+
column,
|
|
7128
|
+
cell
|
|
7129
|
+
});
|
|
7130
|
+
});
|
|
7131
|
+
}
|
|
7132
|
+
}
|
|
7133
|
+
}
|
|
7134
|
+
return $xeTable.$nextTick();
|
|
7135
|
+
},
|
|
7099
7136
|
/**
|
|
7100
7137
|
* 表头单元格按下事件
|
|
7101
7138
|
*/
|
|
@@ -9805,45 +9842,14 @@ const Methods = {
|
|
|
9805
9842
|
* 如果单元格配置了校验规则,则会进行校验
|
|
9806
9843
|
*/
|
|
9807
9844
|
updateStatus(slotParams, cellValue) {
|
|
9808
|
-
const
|
|
9845
|
+
const $xeTable = this;
|
|
9846
|
+
const props = $xeTable;
|
|
9809
9847
|
return this.$nextTick().then(() => {
|
|
9810
9848
|
const {
|
|
9811
|
-
|
|
9812
|
-
|
|
9813
|
-
|
|
9814
|
-
|
|
9815
|
-
const refTableBody = $refs.refTableBody;
|
|
9816
|
-
if (slotParams && refTableBody && editRules) {
|
|
9817
|
-
const {
|
|
9818
|
-
row,
|
|
9819
|
-
column
|
|
9820
|
-
} = slotParams;
|
|
9821
|
-
const type = 'change';
|
|
9822
|
-
if (this.hasCellRules) {
|
|
9823
|
-
if (this.hasCellRules(type, row, column)) {
|
|
9824
|
-
const cell = this.getCellElement(row, column);
|
|
9825
|
-
if (cell) {
|
|
9826
|
-
return this.validCellRules(type, row, column, cellValue).then(() => {
|
|
9827
|
-
if (customVal && validStore.visible) {
|
|
9828
|
-
(0, _util.setCellValue)(row, column, cellValue);
|
|
9829
|
-
}
|
|
9830
|
-
this.clearValidate(row, column);
|
|
9831
|
-
}).catch(({
|
|
9832
|
-
rule
|
|
9833
|
-
}) => {
|
|
9834
|
-
if (customVal) {
|
|
9835
|
-
(0, _util.setCellValue)(row, column, cellValue);
|
|
9836
|
-
}
|
|
9837
|
-
this.showValidTooltip({
|
|
9838
|
-
rule,
|
|
9839
|
-
row,
|
|
9840
|
-
column,
|
|
9841
|
-
cell
|
|
9842
|
-
});
|
|
9843
|
-
});
|
|
9844
|
-
}
|
|
9845
|
-
}
|
|
9846
|
-
}
|
|
9849
|
+
editRules
|
|
9850
|
+
} = props;
|
|
9851
|
+
if (slotParams && editRules) {
|
|
9852
|
+
return $xeTable.handleCellRuleUpdateStatus('change', slotParams, cellValue);
|
|
9847
9853
|
}
|
|
9848
9854
|
});
|
|
9849
9855
|
},
|