UNPKG

vxe-pc-ui

Version:
1 lines 1.9 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeAvatar",props:{count:[String,Number],dot:Boolean,content:[String,Number],icon:String,src:String,width:[String,Number],height:[String,Number],circle:{type:Boolean,default:()=>(0,_ui.getConfig)().avatar.circle},status:{type:String,default:()=>(0,_ui.getConfig)().avatar.status},size:{type:String,default:()=>(0,_ui.getConfig)().avatar.size||(0,_ui.getConfig)().size}},emits:[],setup(n,e){const a=e["emit"];var t=_xeUtils.default.uniqueId();const s=(0,_ui.useSize)(n)["computeSize"],o=(0,_vue.ref)();var r=(0,_vue.reactive)({});const u={refElem:o},v=(0,_vue.computed)(()=>{var{width:e,height:t}=n,r={};return e&&(r.width=(0,_dom.toCssUnit)(e)),t&&(r.height=(0,_dom.toCssUnit)(t)),r}),c=(0,_vue.computed)(()=>{var e=n["count"];return e?_xeUtils.default.toNumber(e):0}),i={},l={xID:t,props:n,context:e,reactData:r,getRefMaps:()=>u,getComputeMaps:()=>i};Object.assign(l,{dispatchEvent:(e,t,r)=>{a(e,(0,_ui.createEvent)(r,{$avatar:l},t))}},{});return l.renderVN=()=>{var{circle:e,dot:t,status:r}=n,a=s.value,u=c.value,i=v.value;return(0,_vue.h)("div",{ref:o,class:["vxe-avatar",{["size--"+a]:a,["theme--"+r]:r,"is--circle":e,"is--dot":t}],style:i},[(()=>{var{icon:e,content:t,src:r}=n;return e?(0,_vue.h)("span",{class:"vxe-avatar--icon"},[(0,_vue.h)("i",{class:e})]):t?(0,_vue.h)("span",{class:"vxe-avatar--content"},""+t):r?(0,_vue.h)("img",{class:"vxe-avatar--img",src:r}):(0,_ui.renderEmptyElement)(l)})(),u?(0,_vue.h)("span",{class:"vxe-avatar--count"},99<u?"99+":""+u):(0,_ui.renderEmptyElement)(l)])},l},render(){return this.renderVN()}});