import { createVNode } from "vue";
import { makeIconSetProps } from "../../composables/icon/make-icon-props.mjs";
import { defineComponent } from "../../utils/define-component.mjs";
const IconSvg = defineComponent({
  name: "VeIconSvg",
  props: {
    viewBox: {
      type: String,
      default: "0 0 24 24"
    },
    ...makeIconSetProps()
  },
  setup(props) {
    return () => {
      const isString = typeof props.icon === "string";
      return createVNode(props.tag, null, {
        default: () => [isString ? createVNode("svg", {
          "xmlns": "http://www.w3.org/2000/svg",
          "viewBox": props.viewBox,
          "role": "img",
          "aria-hidden": "true"
        }, [createVNode("path", {
          "d": props.icon
        }, null)]) : createVNode(props.icon, {
          "role": "img",
          "aria-hidden": "true"
        }, null)]
      });
    };
  }
});
export {
  IconSvg
};
//# sourceMappingURL=icon-svg.mjs.map
