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.79 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,{type:u,field:f,width:g,visible:h,fixed:p,align:c,headerAlign:m,footerAlign:x,aggFunc:F,formatter:_,filterMultiple:v,cellRender:M,editRender:b,filterRender:w}=r,C=r.colId||_xeUtils.default.uniqueId("col_"),h=!_xeUtils.default.isBoolean(h)||h,g=g&&(0,_dom.isPx)(g)&&"auto"!==g?Math.max(0,_xeUtils.default.toInteger(g)):0,y=w&&(0,_utils.isEnableConf)(w)?renderer.get(w.name):null,y=y?y.createTableFilterOptions:null,A=(0,_util.toFilters)(r.filters,C),R=["seq","checkbox","radio","expand","html"];u&&-1===R.indexOf(u)&&warnLog("vxe.error.errProp",["type="+u,R.join(", ")]),(_xeUtils.default.isBoolean(M)||M&&!_xeUtils.default.isObject(M))&&warnLog("vxe.error.errProp",["column.cell-render="+M,"column.cell-render={}"]),(_xeUtils.default.isBoolean(b)||b&&!_xeUtils.default.isObject(b))&&warnLog("vxe.error.errProp",["column.edit-render="+b,"column.edit-render={}"]),"expand"===u&&(R=d.treeConfig,u=e.getComputeMaps().computeTreeOpts,d=u.value,R)&&(d.showLine||d.line)&&errLog("vxe.error.errConflicts",["tree-config.showLine","column.type=expand"]),_&&(_xeUtils.default.isString(_)?(u=formats.get(_)||_xeUtils.default[_])&&_xeUtils.default.isFunction(u.tableCellFormatMethod||u.cellFormatMethod)||errLog("vxe.error.notFormats",[_]):!_xeUtils.default.isArray(_)||(R=formats.get(_[0])||_xeUtils.default[_[0]])&&_xeUtils.default.isFunction(R.tableCellFormatMethod||R.cellFormatMethod)||errLog("vxe.error.notFormats",[_[0]])),F&&!e.handlePivotTableAggData&&!0!==F&&errLog("vxe.error.errProp",["column.agg-func="+F,"column.agg-func=true"]),f&&b&&(b.startField&&0<=(""+b.startField).indexOf(f)&&errLog("vxe.error.modelConflicts",["field="+f,"edit-render.startField="+b.startField]),b.endField)&&0<=(""+b.endField).indexOf(f)&&errLog("vxe.error.modelConflicts",["field="+f,"edit-render.endField="+b.endField]),Object.assign(this,{type:r.type,property:r.field,field:f,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:p,align:c,headerAlign:m,footerAlign:x,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:_,headerFormatter:r.headerFormatter,footerFormatter:r.footerFormatter,padding:r.padding,verticalAlign:r.verticalAlign,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:A,filterMultiple:!_xeUtils.default.isBoolean(v)||v,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:w,floatingFilters:r.floatingFilters,rules:r.rules,rowGroupNode:r.rowGroupNode,treeNode:r.treeNode,dragSort:r.dragSort,rowResize:r.rowResize,cellType:r.cellType,cellRender:M,editRender:b,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,aggFunc:F,copyMethod:r.copyMethod,cutMethod:r.cutMethod,pasteMethod:r.pasteMethod,params:r.params,id:C,parentId:null,visible:h,defaultParentId:null,halfVisible:!1,defaultVisible:h,defaultFixed:p,defaultAlign:c,defaultHeaderAlign:m,defaultFooterAlign:x,defaultAggFunc:F,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:g,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}),!y||A&&A.length||(this.filters=(0,_util.toFilters)(y({$table:e,column:this}),C)),s&&(d=s.getComputeMaps().computeProxyOpts,(u=d.value).beforeColumn)&&u.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;