import { defineComponent, computed, resolveComponent, createElementBlock, openBlock, normalizeClass, unref, createCommentVNode, createElementVNode, createBlock, renderSlot, normalizeStyle, toDisplayString } from 'vue';
import '../../../utils/index.mjs';
import { groupTitleProps } from './group-title.mjs';
import { createNamespace } from '../../../utils/create-namespace.mjs';

"use strict";
var _sfc_main = /* @__PURE__ */ defineComponent({
  ...{
    name: "LlGroupTitle"
  },
  __name: "group-title",
  props: groupTitleProps,
  setup(__props) {
    const props = __props;
    const bem = createNamespace("group-title");
    const customStyle = computed(() => ({
      fontSize: props.titleFontSize,
      fontWeight: props.titleWeight,
      lineHeight: props.titleLineHeight,
      color: props.titleColor
    }));
    return (_ctx, _cache) => {
      const _component_ll_icon = resolveComponent("ll-icon");
      const _component_ll_tooltip = resolveComponent("ll-tooltip");
      const _component_ll_html = resolveComponent("ll-html");
      const _component_ll_divider = resolveComponent("ll-divider");
      return openBlock(), createElementBlock(
        "div",
        {
          class: normalizeClass(unref(bem).b())
        },
        [
          createCommentVNode(" \u5185\u5BB9\u533A "),
          createElementVNode(
            "div",
            {
              class: normalizeClass(unref(bem).e("container"))
            },
            [
              createElementVNode(
                "div",
                {
                  class: normalizeClass(unref(bem).e("left-info"))
                },
                [
                  createCommentVNode(" \u6807\u9898\u884C "),
                  createElementVNode(
                    "div",
                    {
                      class: normalizeClass(unref(bem).e("title-content"))
                    },
                    [
                      createCommentVNode(" \u5DE6\u4FA7\u56FE\u6807 "),
                      _ctx.iconName ? (openBlock(), createBlock(_component_ll_icon, {
                        key: 0,
                        "icon-name": _ctx.iconName,
                        size: _ctx.iconSize,
                        color: _ctx.iconColor,
                        class: normalizeClass(unref(bem).m("icon")),
                        style: normalizeStyle({ "margin-right": _ctx.iconSpace + "px" })
                      }, null, 8, ["icon-name", "size", "color", "class", "style"])) : createCommentVNode("v-if", true),
                      createCommentVNode(" \u52A8\u6001\u6807\u9898\u7EA7\u522B "),
                      createElementVNode(
                        "div",
                        {
                          class: normalizeClass([unref(bem).m("title"), unref(bem).is(_ctx.titleLevel)]),
                          style: normalizeStyle(_ctx.titleLevel === "custom" ? customStyle.value : "")
                        },
                        toDisplayString(_ctx.groupTitle),
                        7
                        /* TEXT, CLASS, STYLE */
                      ),
                      createCommentVNode(" \u95EE\u53F7\u63D0\u793A "),
                      createElementVNode(
                        "div",
                        {
                          class: normalizeClass(unref(bem).m("tooltip")),
                          style: normalizeStyle({ fontSize: _ctx.tipSize + "px" })
                        },
                        [
                          _ctx.tip ? (openBlock(), createBlock(_component_ll_tooltip, {
                            key: 0,
                            title: _ctx.tip,
                            placement: "top",
                            "is-white-bg": _ctx.isWhiteBg
                          }, null, 8, ["title", "is-white-bg"])) : createCommentVNode("v-if", true)
                        ],
                        6
                        /* CLASS, STYLE */
                      ),
                      createCommentVNode(" \u6807\u7B7E "),
                      _ctx.tagSlot ? renderSlot(_ctx.$slots, "tag", { key: 1 }) : createCommentVNode("v-if", true)
                    ],
                    2
                    /* CLASS */
                  ),
                  createCommentVNode(" \u63CF\u8FF0\u6587\u672C "),
                  _ctx.description ? (openBlock(), createBlock(_component_ll_html, {
                    key: 0,
                    class: normalizeClass(unref(bem).e("description")),
                    value: _ctx.description
                  }, null, 8, ["class", "value"])) : createCommentVNode("v-if", true)
                ],
                2
                /* CLASS */
              ),
              createCommentVNode(" \u64CD\u4F5C\u533A "),
              _ctx.rightOperateSlot ? (openBlock(), createElementBlock(
                "div",
                {
                  key: 0,
                  class: normalizeClass(unref(bem).e("right-operate"))
                },
                [
                  renderSlot(_ctx.$slots, "right-operate")
                ],
                2
                /* CLASS */
              )) : createCommentVNode("v-if", true)
            ],
            2
            /* CLASS */
          ),
          createCommentVNode(" \u5206\u5272\u7EBF "),
          _ctx.showDivider ? (openBlock(), createBlock(_component_ll_divider, {
            key: 0,
            class: normalizeClass(unref(bem).e("divider")),
            "border-color": _ctx.dividerColor,
            style: normalizeStyle({ "margin-top": _ctx.dividerSpace + "px", "margin-bottom": "0" })
          }, null, 8, ["class", "border-color", "style"])) : createCommentVNode("v-if", true)
        ],
        2
        /* CLASS */
      );
    };
  }
});

export { _sfc_main as default };
//# sourceMappingURL=group-title.vue2.mjs.map
