"use strict";
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
const Vue = require("vue");
const icon = require("./icon.js");
const pluginVue_exportHelper = require("../../../_virtual/plugin-vue_export-helper.js");
const index = require("../../../hooks/use-namespace/index.js");
const types = require("../../../utils/types.js");
const style = require("../../../utils/dom/style.js");
const k = Vue.defineComponent({
  name: "ElIcon",
  inheritAttrs: false
}), y = /* @__PURE__ */ Vue.defineComponent({
  ...k,
  props: icon.iconProps,
  setup(n) {
    const s = n, c = index.useNamespace("icon"), i = Vue.computed(() => {
      const { size: o, color: e } = s;
      return !o && !e ? {} : {
        fontSize: types.isUndefined(o) ? void 0 : style.addUnit(o),
        "--color": e
      };
    });
    return (o, e) => (Vue.openBlock(), Vue.createElementBlock("i", Vue.mergeProps({
      class: Vue.unref(c).b(),
      style: Vue.unref(i)
    }, o.$attrs), [
      Vue.renderSlot(o.$slots, "default")
    ], 16));
  }
});
var U = /* @__PURE__ */ pluginVue_exportHelper.default(y, [["__file", "icon.vue"]]);
exports.default = U;
