var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name2 in all) __defProp(target, name2, { get: all[name2], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var stdin_exports = {}; __export(stdin_exports, { TabTitle: () => TabTitle }); module.exports = __toCommonJS(stdin_exports); var import_vue = require("vue"); var import_utils = require("../utils"); var import_badge = require("../badge"); const [name, bem] = (0, import_utils.createNamespace)("tab"); const TabTitle = (0, import_vue.defineComponent)({ name, props: { id: String, dot: Boolean, type: String, color: String, title: String, badge: import_utils.numericProp, shrink: Boolean, isActive: Boolean, disabled: Boolean, controls: String, scrollable: Boolean, activeColor: String, inactiveColor: String, showZeroBadge: import_utils.truthProp }, setup(props, { slots }) { const style = (0, import_vue.computed)(() => { const style2 = {}; const { type, color, disabled, isActive, activeColor, inactiveColor } = props; const isCard = type === "card"; if (color && isCard) { style2.borderColor = color; if (!disabled) { if (isActive) { style2.backgroundColor = color; } else { style2.color = color; } } } const titleColor = isActive ? activeColor : inactiveColor; if (titleColor) { style2.color = titleColor; } return style2; }); const renderText = () => { const Text = (0, import_vue.createVNode)("span", { "class": bem("text", { ellipsis: !props.scrollable }) }, [slots.title ? slots.title() : props.title]); if (props.dot || (0, import_utils.isDef)(props.badge) && props.badge !== "") { return (0, import_vue.createVNode)(import_badge.Badge, { "dot": props.dot, "content": props.badge, "showZero": props.showZeroBadge }, { default: () => [Text] }); } return Text; }; return () => (0, import_vue.createVNode)("div", { "id": props.id, "role": "tab", "class": [bem([props.type, { grow: props.scrollable && !props.shrink, shrink: props.shrink, active: props.isActive, disabled: props.disabled }])], "style": style.value, "tabindex": props.disabled ? void 0 : props.isActive ? 0 : -1, "aria-selected": props.isActive, "aria-disabled": props.disabled || void 0, "aria-controls": props.controls, "data-allow-mismatch": "attribute" }, [renderText()]); } });