@progress/kendo-vue-layout
Version:
50 lines (49 loc) • 1.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 e, createVNode as i } from "vue";
import { templateRendering as d, getListeners as n, getDefaultSlots as a, guid as l } from "@progress/kendo-vue-common";
const o = /* @__PURE__ */ e({
name: "KendoTabStripTab",
props: {
disabled: Boolean,
contentClassName: String,
title: String,
id: String,
titleRender: [String, Function, Object]
},
inject: {
addRenderTitle: {
default: null
},
addTab: {
default: null
},
removeTab: {
default: null
}
},
created() {
this.tabId = l(), this.addTab({
title: this.$props.title,
tabId: this.tabId,
id: this.id,
disabled: this.$props.disabled,
contentClassName: this.$props.contentClassName
});
},
unmounted() {
this.removeTab(this.tabId);
},
render() {
const t = this.$props.titleRender ? d.call(this, this.$props.titleRender, n.call(this)) : null;
return t && this.addRenderTitle(this.tabId, t), i("div", null, [a(this)]);
}
});
export {
o as TabStripTab
};