@progress/kendo-vue-layout
Version:
92 lines (91 loc) • 2.43 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
import { defineComponent as d, createVNode as n } from "vue";
import { avatarType as l } from "./interfaces/Enums.mjs";
import { packageMetadata as s } from "../package-metadata.mjs";
import { getDefaultSlots as u, kendoThemeMaps as o, validatePackage as p } from "@progress/kendo-vue-common";
const g = /* @__PURE__ */ d({
name: "KendoAvatar",
props: {
type: {
type: String,
default: l.TEXT,
validator: function(e) {
return ["text", "image", "icon"].includes(e);
}
},
border: Boolean,
rounded: {
type: String,
default: "medium",
validator: function(e) {
return ["small", "medium", "large", "full"].includes(e);
}
},
fillMode: {
type: String,
default: "solid",
validator: function(e) {
return ["solid", "outline"].includes(e);
}
},
size: {
type: String,
default: "medium",
validator: function(e) {
return ["small", "medium", "large", null].includes(e);
}
},
themeColor: {
type: String,
default: "primary",
validator: function(e) {
return ["primary", "secondary", "tertiary", "info", "success", "warning", "error", "dark", "light", "inverse", "inherit"].includes(e);
}
}
},
created() {
p(s);
},
computed: {
wrapperClass() {
const {
border: e,
type: m,
size: t,
rounded: a,
fillMode: r,
themeColor: i
} = this.$props;
return {
"k-avatar-bordered": e,
"k-avatar": !0,
[`k-avatar-${o.sizeMap[t] || t}`]: t,
[`k-rounded-${o.roundedMap[a] || a}`]: a,
[`k-avatar-${r}`]: r,
[`k-avatar-${r}-${i}`]: !!(r && i)
};
},
innerClass() {
return {
[`k-avatar-${this.$props.type}`]: this.$props.type
};
}
},
render() {
const e = u(this);
return n("div", {
class: this.wrapperClass
}, [n("span", {
class: this.innerClass
}, [e])]);
}
});
export {
g as Avatar
};