@dialpad/dialtone-icons
Version:
Dialtone icon library
72 lines (71 loc) • 2.15 kB
JavaScript
import { I as r } from "../../constants-DeVuDy8J.js";
import { openBlock as n, createElementBlock as d, normalizeClass as o, createElementVNode as i } from "vue";
import { _ as s } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
const c = {
name: "DtIconExternalLink",
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");
}
}, u = ["aria-label", "data-qa", "aria-hidden"];
function m(e, t, l, _, f, a) {
return n(), d("svg", {
"aria-label": l.ariaLabel,
class: o([a.iconSizeClass, "d-icon d-icon--external-link"]),
"data-qa": a.dataQA,
"aria-hidden": a.ariaHidden,
role: "img",
"data-name": "External Link",
viewBox: "0 0 12 12",
xmlns: "http://www.w3.org/2000/svg"
}, [...t[0] || (t[0] = [
i("path", {
"fill-rule": "evenodd",
"clip-rule": "evenodd",
d: "M2.5 3.5A.5.5 0 0 0 2 4v5.5a.5.5 0 0 0 .5.5H8a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 1 1 0v3A1.5 1.5 0 0 1 8 11H2.5A1.5 1.5 0 0 1 1 9.5V4a1.5 1.5 0 0 1 1.5-1.5h3a.5.5 0 0 1 0 1h-3Z",
fill: "currentColor"
}, null, -1),
i("path", {
d: "M7 1.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0V2.707L5.354 7.354a.5.5 0 1 1-.708-.708L9.293 2H7.5a.5.5 0 0 1-.5-.5Z",
fill: "currentColor"
}, null, -1)
])], 10, u);
}
const x = /* @__PURE__ */ s(c, [["render", m]]);
export {
x as default
};
//# sourceMappingURL=external-link.js.map