@progress/kendo-vue-common
Version:
Kendo UI for Vue Common Utilities package
76 lines (75 loc) • 1.65 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 o, createVNode as r } from "vue";
import { SIZE_CLASSES as l } from "./constants.mjs";
const p = /* @__PURE__ */ o({
name: "KendoFontIcon",
emits: {
click: null
},
props: {
name: String,
themeColor: {
type: String
},
size: {
type: String
},
flip: {
type: String
},
id: String,
ariaLabel: String,
title: String,
tabIndex: Number
},
computed: {
fontClassNames() {
const {
name: t,
flip: e,
size: i,
themeColor: n
} = this.$props;
return {
"k-icon": !0,
"k-font-icon": !0,
["k-i-" + t]: t,
["k-color-" + n]: n,
"k-flip-h": e === "horizontal" || e === "both",
"k-flip-v": e === "vertical" || e === "both",
[l[i]]: i
};
}
},
render() {
const {
id: t,
title: e,
tabIndex: i,
ariaLabel: n
} = this.$props;
return r("span", {
class: this.fontClassNames,
id: t,
title: e,
"aria-label": n,
tabindex: i,
role: "presentation",
onClick: this.handleClick
}, null);
},
methods: {
handleClick(t) {
this.$emit("click", t);
}
}
});
export {
p as FontIcon
};