vue-circle-flags
Version:
A vue component with a collection of 400+ circular SVG country flags. Wrapper of HatScripts/circle-flags
59 lines (58 loc) • 2.03 kB
JavaScript
import { defineComponent as r, computed as o, openBlock as c, createElementBlock as i, createElementVNode as e, toDisplayString as a, createCommentVNode as f, normalizeStyle as _ } from "vue";
const h = ["viewBox"], u = /* @__PURE__ */ e("mask", { id: "8dc8f890-bd34-4607-871e-92c8fe4806ed" }, [
/* @__PURE__ */ e("circle", {
cx: "256",
cy: "256",
r: "256",
fill: "#fff"
})
], -1), m = { mask: "url(#8dc8f890-bd34-4607-871e-92c8fe4806ed)" }, p = { key: 0 }, v = /* @__PURE__ */ e("path", {
fill: "#eee",
d: "M0 47.1 47 0h417.8L512 47.2v417.7L464.9 512H47L0 464.9z"
}, null, -1), k = /* @__PURE__ */ e("path", {
fill: "#d80027",
d: "M0 0v47.1L208.8 256 0 464.9V512h47.1L256 303.2 464.9 512H512v-47L303.1 256 512 47.2V0h-47.2L256 208.9 47 0z"
}, null, -1), g = /* @__PURE__ */ e("path", {
fill: "#ffda44",
d: "M211.5 78 256 89l44.5-11V40l-17.8 9L256 22.3 229.3 49l-17.8-9z"
}, null, -1), x = /* @__PURE__ */ e("path", {
fill: "#d80027",
d: "M211.5 78v27.7c0 34.1 44.5 44.6 44.5 44.6s44.5-10.5 44.5-44.6V78z"
}, null, -1), L = { fill: "none" }, w = ["r"], W = /* @__PURE__ */ r({
__name: "je",
props: {
flagName: {},
strokeColor: { default: "#000" },
strokeWidth: { default: 0 }
},
setup(d) {
const t = d, l = o(() => 512 + 2 * t.strokeWidth), s = o(() => -t.strokeWidth), n = o(() => 256 + t.strokeWidth / 2);
return (y, z) => (c(), i("svg", {
xmlns: "http://www.w3.org/2000/svg",
class: "svg-circle-flags",
viewBox: `${s.value} ${s.value} ${l.value} ${l.value}`
}, [
u,
e("g", m, [
t.flagName ? (c(), i("title", p, a(t.flagName), 1)) : f("", !0),
v,
k,
g,
x
]),
e("g", L, [
e("circle", {
cx: "256",
cy: "256",
r: n.value,
fill: "none",
style: _({ stroke: t.strokeColor, strokeWidth: t.strokeWidth })
}, null, 12, w)
])
], 8, h));
}
});
export {
W as default
};
//# sourceMappingURL=je-86e02d5a.js.map