import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, normalizeStyle, createBlock, resolveDynamicComponent, createCommentVNode, renderSlot } from "vue";
import { addSuffix } from "../../../utils/utils.mjs";
const _sfc_main = /* @__PURE__ */ defineComponent({
  __name: "SvgIcon",
  props: {
    size: {},
    responseSize: {},
    customClass: {},
    icon: {},
    color: {}
  },
  emits: ["click"],
  setup(__props, { emit: __emit }) {
    const props = __props;
    const emit = __emit;
    const customStyle = computed(
      () => props.size ? `width: ${addSuffix(props.size)};height: ${addSuffix(props.size)};` : ""
    );
    function handleClick(event) {
      emit("click", event);
    }
    return (_ctx, _cache) => {
      return openBlock(), createElementBlock("span", {
        class: normalizeClass(["svg-icon", [_ctx.customClass]]),
        style: normalizeStyle(customStyle.value),
        onClick: handleClick
      }, [
        _ctx.icon ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.icon), { key: 0 })) : createCommentVNode("", true),
        renderSlot(_ctx.$slots, "default", {}, void 0, true)
      ], 6);
    };
  }
});
export {
  _sfc_main as default
};
