'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

var vue = require('vue');
require('../../../utils/index.js');
var badge = require('./badge.js');
var createNamespace = require('../../../utils/create-namespace.js');

"use strict";
var _sfc_main = /* @__PURE__ */ vue.defineComponent({
  ...{
    name: "LlBadge"
  },
  __name: "badge",
  props: badge.badgeProps,
  setup(__props) {
    const attrs = vue.useAttrs();
    const props = __props;
    const bem = createNamespace.createNamespace("badge");
    return (_ctx, _cache) => {
      const _component_ll_icon = vue.resolveComponent("ll-icon");
      const _component_a_badge = vue.resolveComponent("a-badge");
      return vue.openBlock(), vue.createBlock(_component_a_badge, vue.mergeProps(vue.unref(attrs), {
        class: vue.unref(bem).b()
      }), vue.createSlots({
        _: 2
        /* DYNAMIC */
      }, [
        vue.renderList(Object.keys(_ctx.$slots).filter((key) => key !== "count"), (item) => {
          return {
            name: item,
            fn: vue.withCtx((data) => [
              vue.renderSlot(_ctx.$slots, item, vue.normalizeProps(vue.guardReactiveProps(data || {})))
            ])
          };
        }),
        _ctx.$slots.count || props.icon && props.icon?.iconName ? {
          name: "count",
          fn: vue.withCtx(() => [
            vue.renderSlot(_ctx.$slots, "count", {}, () => [
              vue.createVNode(
                _component_ll_icon,
                vue.normalizeProps(vue.guardReactiveProps(props.icon)),
                null,
                16
                /* FULL_PROPS */
              )
            ])
          ]),
          key: "0"
        } : void 0
      ]), 1040, ["class"]);
    };
  }
});

exports.default = _sfc_main;
//# sourceMappingURL=badge.vue2.js.map
