UNPKG

primevue

Version:

PrimeVue is an open source UI library for Vue featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBloc

2 lines (1 loc) 1.57 kB
import e from"primevue/avatar/style";import a from"primevue/basecomponent";import{openBlock as t,createElementBlock as r,mergeProps as l,renderSlot as n,toDisplayString as i,createBlock as o,resolveDynamicComponent as s,normalizeClass as p,createCommentVNode as u}from"vue";var c={name:"Avatar",extends:{name:"BaseAvatar",extends:a,props:{label:{type:String,default:null},icon:{type:String,default:null},image:{type:String,default:null},size:{type:String,default:"normal"},shape:{type:String,default:"square"},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},style:e,provide:function(){return{$parentInstance:this}}},emits:["error"],methods:{onError:function(e){this.$emit("error",e)},getPTOptions:function(e){return this.ptm(e,{parent:{instance:this.$parent}})}}},m=["aria-labelledby","aria-label"],d=["src","alt"];c.render=function(e,a,c,b,f,y){return t(),r("div",l({class:e.cx("root"),"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},y.getPTOptions("root"),{"data-pc-name":"avatar"}),[n(e.$slots,"default",{},(function(){return[e.label?(t(),r("span",l({key:0,class:e.cx("label")},y.getPTOptions("label")),i(e.label),17)):e.$slots.icon?(t(),o(s(e.$slots.icon),{key:1,class:p(e.cx("icon"))},null,8,["class"])):e.icon?(t(),r("span",l({key:2,class:[e.cx("icon"),e.icon]},y.getPTOptions("icon")),null,16)):e.image?(t(),r("img",l({key:3,src:e.image,alt:e.ariaLabel,onError:a[0]||(a[0]=function(){return y.onError&&y.onError.apply(y,arguments)})},y.getPTOptions("image")),null,16,d)):u("",!0)]}))],16,m)};export{c as default};