UNPKG

vxe-table-demonic

Version:

一个基于 vue 的 PC 端表单/表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、JSON 配置式...

1 lines 5.46 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireWildcard(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_utils=require("../../tools/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _getRequireWildcardCache(e){var t,r;return"function"!=typeof WeakMap?null:(t=new WeakMap,r=new WeakMap,(_getRequireWildcardCache=function(e){return e?r:t})(e))}function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};t=_getRequireWildcardCache(t);if(t&&t.has(e))return t.get(e);var r,a,o={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&((a=n?Object.getOwnPropertyDescriptor(e,r):null)&&(a.get||a.set)?Object.defineProperty(o,r,a):o[r]=e[r]);return o.default=e,t&&t.set(e,o),o}var _default=(0,_vue.defineComponent)({name:"VxeCard",props:{isCollapse:Boolean,loading:Boolean,round:{type:[Boolean,String,Number],default:function(){return _conf.default.card.round}},width:[String,Number],rotatingHeight:[String,Number],shadow:{type:Boolean,default:function(){return _conf.default.card.shadow}},transform:[Boolean,String],title:String,hoverEffect:String,bordered:{type:Boolean,default:function(){return _conf.default.card.bordered}},rotateMode:{type:String,default:"horizontal"}},emits:["rotate","hover","collapse","expand","update:is-collapse"],setup:function(t,e){function r(){var e=!l.isCollapse;return l.isCollapse=e,n("update:is-collapse",e),n(e?"collapse":"expand"),(0,_vue.nextTick)()}function a(){t.transform&&l.isCollapse&&_()}var o=e.slots,n=e.emit,i=_xeUtils.default.uniqueId(),l=(0,_vue.reactive)({inited:!1,isCollapse:!!t.isCollapse,tempExpand:!1}),u=(0,_vue.ref)(),c=(0,_vue.ref)(),s=(0,_vue.ref)(),d=(0,_vue.ref)(),v=(0,_vue.ref)(),f=(0,_vue.ref)(),p=(0,_vue.ref)(),h=((0,_vue.watchEffect)(function(){l.isCollapse=!!t.isCollapse}),{refElem:c}),x={xID:i,props:t,context:e,reactData:l,getRefMaps:function(){return h}},_=function(){return(l.isCollapse?r:(0,_vue.nextTick))()},g=(0,_utils.multiDebounce)([function(){"hover"!==t.transform&&"click-hover"!==t.transform||(l.tempExpand=!0)},function(){"hover"!==t.transform&&"click-hover"!==t.transform||(l.tempExpand=!1)}],200),m=function(e){return e.stopPropagation(),!0===t.transform||"click"===t.transform?n("update:is-collapse",!0):"click-hover"===t.transform&&n("update:is-collapse",!l.isCollapse),(0,_vue.nextTick)()},b=(Object.assign(x,{dispatchEvent:function(e,t,r){n(e,Object.assign({$card:x,$event:r},t))},getCollapseIf:function(){return l.isCollapse},toggleCollapse:r,expand:_,collapse:function(){return(l.isCollapse?(0,_vue.nextTick):r)()}}),(0,_vue.computed)(function(){return(0,_xeUtils.isNumber)(t.width)||(0,_xeUtils.isString)(t.width)&&/^\d+$/.test(t.width)?"".concat(t.width,"px"):(0,_xeUtils.isString)(t.width)&&/^\d+(\.\d+)?(px|%|em|rem|pt)?$/i.test(t.width)?t.width:void 0})),w=(0,_vue.computed)(function(){return(0,_xeUtils.isNumber)(t.rotatingHeight)||(0,_xeUtils.isString)(t.rotatingHeight)&&/^\d+$/.test(t.rotatingHeight)?"".concat(t.rotatingHeight,"px"):(0,_xeUtils.isString)(t.rotatingHeight)&&/^\d+(\.\d+)?(px|em|rem|pt)?$/i.test(t.rotatingHeight)?t.rotatingHeight:void 0}),C=function(){var e;return(0,_vue.h)("div",{ref:d,class:"vxe-card-header",onClick:m},[null!=(e=null==(e=o.header)?void 0:e.call(o,{title:t.title}))?e:(0,_vue.h)("span",{class:"vxe-card-header--title"},(0,_utils.getFuncText)(t.title))])},y=function(){var e;return(0,_vue.h)("div",{ref:s,class:"vxe-card-body"},[null==(e=o.default)?void 0:e.call(o)])},k=function(){var e;return o.footer?(0,_vue.h)("div",{ref:v,class:"vxe-card-footer"},[null==(e=o.footer)?void 0:e.call(o)]):null},E=(0,_vue.computed)(function(){return l.isCollapse&&!l.tempExpand&&t.transform});return x.renderVN=function(){return"rotate"===t.hoverEffect?(0,_vue.h)("div",{ref:u,class:["vxe-card-rotating-box","vxe-card--rotating-".concat(t.rotateMode)],style:{width:b.value,height:"diagonal"!==t.rotateMode?w.value:void 0}},[(0,_vue.h)("div",{ref:f,class:["vxe-card","vxe-card-rotating-front",E.value?"vxe-card-cover vxe-card-cover--circle":{"vxe-card--shadow":t.shadow,"vxe-card--press":"press"===t.hoverEffect,"vxe-card--scale":"scale"===t.hoverEffect}]},[o.header||t.title?C():null,y(),k()]),(0,_vue.h)("div",{ref:p,class:["vxe-card","vxe-card-rotating-back",E.value?"vxe-card-cover vxe-card-cover--circle":{"vxe-card--shadow":t.shadow,"vxe-card--press":"press"===t.hoverEffect,"vxe-card--scale":"scale"===t.hoverEffect}]},[(0,_vue.h)("div",{class:"vxe-card-body"},[null!=(e=null!=(e=null==(e=o.back)?void 0:e.call(o))?e:null==(e=o.default)?void 0:e.call(o))?e:""])])]):(0,_vue.h)("div",{ref:c,class:["vxe-card",E.value?"vxe-card-cover vxe-card-cover--circle":{"vxe-card--shadow":t.shadow,"vxe-card--press":"press"===t.hoverEffect,"vxe-card--scale":"scale"===t.hoverEffect}],style:E.value?null:{width:b.value,borderRadius:!1===t.round||void 0===t.round?"unset":!0===t.round?"5px":(0,_xeUtils.isNumber)(t.round)?"".concat(t.round,"px"):t.round},onClick:a,onMouseover:g.handleHoverCover,onMouseout:g.handleCardLeave},E.value?(0,_vue.h)("span",{class:"vxe-cover--content"},(0,_utils.getFuncText)(t.title)):[o.header||t.title?C():null,y(),k()]);var e},x},render:function(){return this.renderVN()}});exports.default=_default;