vxe-table
Version:
一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟滚动、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、虚拟列表、模态窗口、自定义模板、渲染器、贼灵活的配置项、扩展接口等...
1 lines • 8.11 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.UtilTools=void 0;var _ctor=_interopRequireDefault(require("xe-utils/ctor")),_conf=_interopRequireDefault(require("../../conf")),_formats=_interopRequireDefault(require("../../v-x-e-table/src/formats"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var zindexIndex=0,lastZindex=1;function getColFuncWidth(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:16;return e?t:0}var ColumnInfo=function(){function h(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},o=r.renderHeader,n=r.renderCell,l=r.renderFooter,i=r.renderData;_classCallCheck(this,h);var a=e.$xegrid,u=a?a.proxyOpts:null,s=t.formatter,c=!_ctor.default.isBoolean(t.visible)||t.visible;if("development"===process.env.VUE_APP_VXE_TABLE_ENV){var d=["seq","checkbox","radio","expand","html"];if(t.type&&-1===d.indexOf(t.type)&&UtilTools.warn("vxe.error.errProp",["type=".concat(t.type),d.join(", ")]),t.cellRender&&t.editRender&&UtilTools.warn("vxe.error.errConflicts",["column.cell-render","column.edit-render"]),"expand"===t.type&&e.treeConfig&&e.treeOpts.line&&UtilTools.error("vxe.error.errConflicts",["tree-config.line","column.type=expand"]),t.remoteSort&&UtilTools.warn("vxe.error.delProp",["column.remote-sort","sort-config.remote"]),t.sortMethod&&UtilTools.warn("vxe.error.delProp",["column.sort-method","sort-config.sortMethod"]),s)if(_ctor.default.isString(s)){var f=_formats.default.get(s)||_ctor.default[s];_ctor.default.isFunction(f)||UtilTools.error("vxe.error.notFunc",[s])}else if(_ctor.default.isArray(s)){var p=_formats.default.get(s[0])||_ctor.default[s[0]];_ctor.default.isFunction(p)||UtilTools.error("vxe.error.notFunc",[s[0]])}}Object.assign(this,{type:t.type,property:t.field,title:t.title,width:t.width,minWidth:t.minWidth,resizable:t.resizable,fixed:t.fixed,align:t.align,headerAlign:t.headerAlign,footerAlign:t.footerAlign,showOverflow:t.showOverflow,showHeaderOverflow:t.showHeaderOverflow,showFooterOverflow:t.showFooterOverflow,className:t.className,headerClassName:t.headerClassName,footerClassName:t.footerClassName,formatter:s,sortable:t.sortable,sortBy:t.sortBy,sortMethod:t.sortMethod,remoteSort:t.remoteSort,filters:UtilTools.getFilters(t.filters),filterMultiple:!_ctor.default.isBoolean(t.filterMultiple)||t.filterMultiple,filterMethod:t.filterMethod,filterRender:t.filterRender,treeNode:t.treeNode,cellType:t.cellType,cellRender:t.cellRender,editRender:t.editRender,contentRender:t.contentRender,exportMethod:t.exportMethod,footerExportMethod:t.footerExportMethod,titleHelp:t.titleHelp,params:t.params,id:t.colId||_ctor.default.uniqueId("col_"),parentId:null,visible:c,halfVisible:!1,defaultVisible:c,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,renderWidth:0,renderHeight:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:o||t.renderHeader,renderCell:n||t.renderCell,renderFooter:l||t.renderFooter,renderData:i,slots:t.slots}),u&&u.beforeColumn&&u.beforeColumn({$grid:a,column:this})}return _createClass(h,[{key:"getTitle",value:function(){return UtilTools.getFuncText(this.title||("seq"===this.type?_conf.default.i18n("vxe.table.seqTitle"):""))}},{key:"getKey",value:function(){return this.property||(this.type?"type=".concat(this.type):null)}},{key:"update",value:function(e,t){"filters"!==e&&("field"===e?this.property=t:this[e]=t)}}]),h}();function outLog(o){return function(e,t){var r=UtilTools.getLog(e,t);return console[o](r),r}}var UtilTools={warn:outLog("warn"),error:outLog("error"),getLog:function(e,t){return"[vxe-table] ".concat(_conf.default.i18n(e,t))},getFuncText:function(e){return _ctor.default.isFunction(e)?e():_conf.default.translate?_conf.default.translate(e):e},nextZIndex:function(){return lastZindex=_conf.default.zIndex+zindexIndex++},getLastZIndex:function(){return lastZindex},getRowkey:function(e){return e.rowId||"_XID"},getRowid:function(e,t){var r=_ctor.default.get(t,UtilTools.getRowkey(e));return r?encodeURIComponent(r):""},getColumnList:function(e){var t=[];return e.forEach(function(e){t.push.apply(t,_toConsumableArray(e.children&&e.children.length?UtilTools.getColumnList(e.children):[e]))}),t},getClass:function(e,t){return e?_ctor.default.isFunction(e)?e(t):e:""},getFilters:function(e){return e&&_ctor.default.isArray(e)?e.map(function(e){var t=e.label,r=e.value,o=e.data,n=e.resetValue,l=e.checked;return{label:t,value:r,data:o,resetValue:n,checked:!!l,_checked:!!l}}):e},formatText:function(e,t){return""+(""===e||null==e?t?_conf.default.emptyCell:"":e)},getCellValue:function(e,t){return _ctor.default.get(e,t.property)},getCellLabel:function(e,t,r){var o=t.formatter,n=UtilTools.getCellValue(e,t),l=n;if(r&&o){var i,a,u=r.$table,s=t.id,c=u.fullAllDataRowMap,d={cellValue:n,row:e,column:t};if(c.has(e)&&((a=(i=c.get(e)).formatData)||(a=c.get(e).formatData={}),i&&a[s]&&a[s].value===n))return a[s].label;if(_ctor.default.isString(o)){var f=_formats.default.get(o);l=f?f(d):""}else if(_ctor.default.isArray(o)){var p=_formats.default.get(o[0]);l=p?p.apply(void 0,[d].concat(_toConsumableArray(o.slice(1)))):""}else l=o(d);a&&(a[s]={value:n,label:l})}return l},setCellValue:function(e,t,r){return _ctor.default.set(e,t.property,r)},isColumn:function(e){return e instanceof ColumnInfo},getColumnConfig:function(e,t,r){return UtilTools.isColumn(t)?t:new ColumnInfo(e,t,r)},assemColumn:function(e){var t=e.$el,r=e.$xetable,o=e.$xecolumn,n=e.columnConfig,l=o?o.columnConfig:null;n.slots=e.$scopedSlots,l?("development"===process.env.VUE_APP_VXE_TABLE_ENV&&"vxe-table-column"===o.$options._componentTag&&UtilTools.warn("vxe.error.groupTag",["<vxe-table-colgroup title=".concat(o.title," ...>"),"<vxe-table-column title=".concat(o.title," ...>")]),l.children||(l.children=[]),l.children.splice([].indexOf.call(o.$el.children,t),0,n)):r.staticColumns.splice([].indexOf.call(r.$refs.hideColumn.children,t),0,n)},destroyColumn:function(e){var t=e.$xetable,r=e.columnConfig,o=_ctor.default.findTree(t.staticColumns,function(e){return e===r});o&&o.items.splice(o.index,1)},hasChildrenList:function(e){return e&&e.children&&0<e.children.length},getColMinWidth:function(e,t){var r=e.sortOpts,o=e.filterOpts,n=e.editOpts,l=t.type,i=t.filters,a=t.sortable,u=t.remoteSort,s=t.editRender,c=t.titleHelp;return 40+getColFuncWidth("checkbox"===l,18)+getColFuncWidth(c,18)+getColFuncWidth(i&&o.showIcon)+getColFuncWidth((a||u)&&r.showIcon)+getColFuncWidth(s&&n.showIcon,32)},parseFile:function(e){var t=e.name,r=_ctor.default.lastIndexOf(t,"."),o=t.substring(r+1,t.length);return{filename:t.substring(0,r),type:o}},isNumVal:function(e){return!isNaN(parseFloat(""+e))}},_default=exports.UtilTools=UtilTools;exports.default=_default;