import { g as l } from "../../utils-BOfnFgIH.js";
import { I as i } from "../../constants-DeVuDy8J.js";
import { createElementBlock as d, openBlock as r, normalizeClass as o, createElementVNode as a } from "vue";
import { _ as s } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
const c = {
  name: "DtIconPin",
  props: {
    /**
     * The size of the icon.
     * @values 100, 200, 300, 400, 500, 600, 700, 800
     */
    size: {
      type: String,
      default: "500",
      validator: (e) => Object.keys(i).includes(e)
    },
    /**
     * The label of the icon as read out by a screenreader. Leave this unset if your icon is purely presentational
     */
    ariaLabel: {
      type: String,
      default: void 0
    }
  },
  /**
  * @TODO: Remove this emit once the icons migration is complete,
  * they will no longer need this event.
  * */
  emits: ["loaded"],
  computed: {
    iconSizeClass() {
      return i[this.size];
    },
    ariaHidden() {
      return this.ariaLabel ? "false" : "true";
    },
    dataQA() {
      return this.$attrs["data-qa"] ?? "dt-icon";
    }
  },
  created() {
    this.$emit("loaded"), this.uniqueID = l();
  }
}, _ = ["aria-label", "data-qa", "aria-hidden"], h = ["clip-path"], u = /* @__PURE__ */ a("path", {
  "fill-rule": "evenodd",
  "clip-rule": "evenodd",
  d: "M4 .5a1.5 1.5 0 0 0 0 3v1.88a.5.5 0 0 1-.277.447l-.892.451a1.5 1.5 0 0 0-.83 1.342v.88a.5.5 0 0 0 .5.5h3v2a.5.5 0 1 0 1 0V9h3a.5.5 0 0 0 .5-.5v-.88a1.5 1.5 0 0 0-.831-1.342l-.89-.45h-.002A.5.5 0 0 1 8 5.38V3.5a1.5 1.5 0 1 0 0-3H4Zm0 1a.5.5 0 0 0 0 1h.5A.5.5 0 0 1 5 3v2.38a1.5 1.5 0 0 1-.83 1.342l-.892.45A.5.5 0 0 0 3 7.62V8h6v-.38a.5.5 0 0 0-.277-.447L8.72 7.17l-.889-.449a1.5 1.5 0 0 1-.83-1.342V3a.5.5 0 0 1 .5-.5H8a.5.5 0 0 0 0-1H4Z",
  fill: "currentColor"
}, null, -1), p = [
  u
], f = ["id"], m = /* @__PURE__ */ a("path", {
  fill: "#fff",
  d: "M0 0h12v12H0z"
}, null, -1), v = [
  m
];
function g(e, I, n, b, q, t) {
  return r(), d("svg", {
    "aria-label": n.ariaLabel,
    class: o([t.iconSizeClass, "d-icon d-icon--pin"]),
    "data-qa": t.dataQA,
    "aria-hidden": t.ariaHidden,
    role: "img",
    "data-name": "Pin",
    viewBox: "0 0 12 12",
    xmlns: "http://www.w3.org/2000/svg"
  }, [
    a("g", {
      "clip-path": `url(#${e.uniqueID}a)`
    }, p, 8, h),
    a("defs", null, [
      a("clipPath", {
        id: `${e.uniqueID}a`
      }, v, 8, f)
    ])
  ], 10, _);
}
const A = /* @__PURE__ */ s(c, [["render", g]]);
export {
  A as default
};
//# sourceMappingURL=pin.js.map
