import { icons as r } from "@dialpad/dialtone-icons/vue2";
import { ICON_NAMES as n, ICON_SIZE_MODIFIERS as i } from "./icon-constants.js";
import { n as o } from "../../_plugin-vue2_normalizer-DSLOjnn3.js";
const c = {
  name: "DtIcon",
  props: {
    /**
     * The size of the icon.
     * @values 100, 200, 300, 400, 500, 600, 700, 800
     */
    size: {
      type: String,
      default: "500",
      validator: (t) => Object.keys(i).includes(t)
    },
    /**
     * The icon name in kebab-case
     */
    name: {
      type: String,
      required: !0,
      validator: (t) => n.includes(t)
    },
    /**
     * The label of the icon as read out by a screen-reader. Leave this unset if your icon is purely presentational
     */
    ariaLabel: {
      type: String,
      default: void 0
    }
  },
  data() {
    return {
      // i18n: new DialtoneLocalization(),
    };
  },
  computed: {
    icon() {
      return r[`./src/icons/${this.name}.vue`];
    },
    iconAriaLabel() {
      return this.ariaLabel;
    }
  }
};
var s = function() {
  var e = this, a = e._self._c;
  return e.icon ? a(e.icon, { tag: "component", attrs: { size: e.size, "aria-label": e.iconAriaLabel, "data-qa": e.$attrs["data-qa"] ?? "dt-icon" } }) : e._e();
}, d = [], _ = /* @__PURE__ */ o(
  c,
  s,
  d
);
const p = _.exports;
export {
  p as default
};
//# sourceMappingURL=icon.js.map
