@dialpad/dialtone-icons
Version:
Dialtone icon library
83 lines (82 loc) • 2.62 kB
JavaScript
import { g as d } from "../../utils-BOfnFgIH.js";
import { I as r } from "../../constants-DeVuDy8J.js";
import { openBlock as n, createElementBlock as o, normalizeClass as s, createElementVNode as a } from "vue";
import { _ as u } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
const c = {
name: "DtIconHeart",
props: {
/**
* The size of the icon.
* @values 100, 200, 300, 400, 500, 600, 700, 800
*/
size: {
type: String,
default: "500",
validator: (e) => Object.keys(r).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 r[this.size];
},
ariaHidden() {
return this.ariaLabel ? "false" : "true";
},
dataQA() {
return this.$attrs["data-qa"] ?? "dt-icon";
}
},
created() {
this.$emit("loaded"), this.uniqueID = d();
}
}, f = ["aria-label", "data-qa", "aria-hidden"], m = ["clip-path"], p = ["id"];
function _(e, t, l, h, g, i) {
return n(), o("svg", {
"aria-label": l.ariaLabel,
class: s([i.iconSizeClass, "d-icon d-icon--heart"]),
"data-qa": i.dataQA,
"aria-hidden": i.ariaHidden,
role: "img",
"data-name": "Heart",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 12 12"
}, [
a("g", {
"clip-path": `url(#${e.uniqueID}a)`
}, [...t[0] || (t[0] = [
a("path", {
fill: "currentColor",
"fill-rule": "evenodd",
d: "M2.476 1.24a3.2 3.2 0 0 1 3.493.697l.002.002.03.03.028-.03.002-.002a3.2 3.2 0 0 1 4.533 0c1.273 1.273 1.3 3.377-.207 4.913l-.003.004-4 4a.5.5 0 0 1-.707 0L1.643 6.85C.136 5.314.163 3.21 1.436 1.937a3.2 3.2 0 0 1 1.04-.696Zm1.227.756a2.2 2.2 0 0 0-1.559.647c-.846.847-.949 2.322.211 3.505L6 9.793l3.645-3.645c1.16-1.183 1.059-2.658.212-3.504a2.204 2.204 0 0 0-2.403-.48 2.2 2.2 0 0 0-.714.478v.001l-.384.388a.5.5 0 0 1-.712 0l-.383-.388a2.2 2.2 0 0 0-1.558-.647Z",
"clip-rule": "evenodd"
}, null, -1)
])], 8, m),
a("defs", null, [
a("clipPath", {
id: `${e.uniqueID}a`
}, [...t[1] || (t[1] = [
a("path", {
fill: "#fff",
d: "M0 0h12v12H0z"
}, null, -1)
])], 8, p)
])
], 10, f);
}
const S = /* @__PURE__ */ u(c, [["render", _]]);
export {
S as default
};
//# sourceMappingURL=heart.js.map