UNPKG

vxe-table

Version:

A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.

1 lines 4.84 kB
Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("table"),{getI18n,formats,renderer}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:l,renderFooter:o,renderData:i}={}){var d=e.props,n=e.xeGrid,a=e.xeGantt,s=n||a,{computeRendererOpts:u,computeTreeOpts:f}=e.getComputeMaps(),{type:g,field:h,width:p,visible:c,fixed:m,align:x,headerAlign:F,footerAlign:_,aggFunc:v,formatter:M,filterMultiple:b,cellRender:w,editRender:C,filterRender:y}=r,A=r.colId||_xeUtils.default.uniqueId("col_"),c=!_xeUtils.default.isBoolean(c)||c,p=p&&(0,_dom.isPx)(p)&&"auto"!==p?Math.max(0,_xeUtils.default.toInteger(p)):0,u=u.value,u=y&&(0,_utils.isEnableConf)(y)&&y.name?u[y.name]||renderer.get(y.name):null,u=u?u.createTableFilterOptions:null,R=(0,_util.toFilters)(r.filters,A),O=["seq","checkbox","radio","expand","html"];g&&-1===O.indexOf(g)&&warnLog("vxe.error.errProp",["type="+g,O.join(", ")]),(_xeUtils.default.isBoolean(w)||w&&!_xeUtils.default.isObject(w))&&warnLog("vxe.error.errProp",["column.cell-render="+w,"column.cell-render={}"]),(_xeUtils.default.isBoolean(C)||C&&!_xeUtils.default.isObject(C))&&warnLog("vxe.error.errProp",["column.edit-render="+C,"column.edit-render={}"]),"expand"===g&&(O=d.treeConfig,g=f.value,O)&&(g.showLine||g.line)&&errLog("vxe.error.errConflicts",["tree-config.showLine","column.type=expand"]),M&&(_xeUtils.default.isString(M)?(d=formats.get(M)||_xeUtils.default[M])&&_xeUtils.default.isFunction(d.tableCellFormatMethod||d.cellFormatMethod)||errLog("vxe.error.notFormats",[M]):!_xeUtils.default.isArray(M)||(f=formats.get(M[0])||_xeUtils.default[M[0]])&&_xeUtils.default.isFunction(f.tableCellFormatMethod||f.cellFormatMethod)||errLog("vxe.error.notFormats",[M[0]])),v&&!e.handlePivotTableAggData&&!0!==v&&errLog("vxe.error.errProp",["column.agg-func="+v,"column.agg-func=true"]),h&&C&&(C.startField&&0<=(""+C.startField).indexOf(h)&&errLog("vxe.error.modelConflicts",["field="+h,"edit-render.startField="+C.startField]),C.endField)&&0<=(""+C.endField).indexOf(h)&&errLog("vxe.error.modelConflicts",["field="+h,"edit-render.endField="+C.endField]),Object.assign(this,{type:r.type,property:r.field,field:h,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:m,align:x,headerAlign:F,footerAlign:_,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:M,headerFormatter:r.headerFormatter,footerFormatter:r.footerFormatter,padding:r.padding,verticalAlign:r.verticalAlign,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:R,filterMultiple:!_xeUtils.default.isBoolean(b)||b,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:y,floatingFilters:r.floatingFilters,rules:r.rules,rowGroupNode:r.rowGroupNode,treeNode:r.treeNode,dragSort:r.dragSort,rowResize:r.rowResize,cellType:r.cellType,cellRender:w,editRender:C,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,aggFunc:v,copyMethod:r.copyMethod,cutMethod:r.cutMethod,pasteMethod:r.pasteMethod,params:r.params,id:A,parentId:null,visible:c,defaultParentId:null,halfVisible:!1,defaultVisible:c,defaultFixed:m,defaultAlign:x,defaultHeaderAlign:F,defaultFooterAlign:_,defaultAggFunc:v,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderAggFn:"",renderAggDigits:null,renderAggFormat:null,renderAlign:"",renderHeaderAlign:"",renderFooterAlign:"",renderFixed:"",renderVisible:!1,renderWidth:p,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:l||r.renderCell,renderFooter:o||r.renderFooter,renderData:i,slots:r.slots}),!u||R&&R.length||(this.filters=(0,_util.toFilters)(u({$table:e,column:this}),A)),s&&(O=s.getComputeMaps().computeProxyOpts,(g=O.value).beforeColumn)&&g.beforeColumn({$table:e,$grid:n,$gantt:a,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){var{type:e,field:r}=this;return r||(e?"type="+e:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;