vue-circle-flags
Version:
A vue component with a collection of 400+ circular SVG country flags. Wrapper of HatScripts/circle-flags
44 lines (43 loc) • 3.08 kB
JavaScript
import { defineComponent as r, computed as a, openBlock as s, createElementBlock as i, createElementVNode as e, toDisplayString as f, createCommentVNode as h, normalizeStyle as p, createStaticVNode as n } from "vue";
const m = ["viewBox"], _ = /* @__PURE__ */ e("mask", { id: "03009082-5130-4ad5-928f-d5a0ffb98ef7" }, [
/* @__PURE__ */ e("circle", {
cx: "256",
cy: "256",
r: "256",
fill: "#fff"
})
], -1), z = { mask: "url(#03009082-5130-4ad5-928f-d5a0ffb98ef7)" }, k = { key: 0 }, u = /* @__PURE__ */ n('<path fill="#eee" d="M0 0h512v512H0z"></path><path fill="#338af3" d="M109.6 153.1A71.8 71.8 0 0 0 38 224.7a71.8 71.8 0 0 0 71.6 71.6 71.8 71.8 0 0 0 71.6-71.6 71.8 71.8 0 0 0-71.6-71.6zm0 20c28.6 0 51.6 23 51.6 51.6s-23 51.6-51.6 51.6-51.6-23-51.6-51.6 23-51.6 51.6-51.6z"></path><path fill="#333" d="M256 153.1a71.8 71.8 0 0 0-71.6 71.6 71.8 71.8 0 0 0 71.6 71.6 71.8 71.8 0 0 0 71.6-71.6 71.8 71.8 0 0 0-71.6-71.6zm0 20c28.6 0 51.6 23 51.6 51.6s-23 51.6-51.6 51.6-51.6-23-51.6-51.6 23-51.6 51.6-51.6z"></path><path fill="#d80027" d="M402.4 153.1a71.8 71.8 0 0 0-71.6 71.6 71.8 71.8 0 0 0 71.6 71.6 71.8 71.8 0 0 0 71.6-71.6 71.8 71.8 0 0 0-71.6-71.6zm0 20c28.6 0 51.6 23 51.6 51.6s-23 51.6-51.6 51.6-51.6-23-51.6-51.6 23-51.6 51.6-51.6z"></path><path fill="#ffda44" d="M182.8 215.7a71.8 71.8 0 0 0-71.6 71.6 71.8 71.8 0 0 0 71.6 71.6 71.8 71.8 0 0 0 71.6-71.6 71.8 71.8 0 0 0-71.6-71.6zm0 20c28.6 0 51.6 23 51.6 51.6s-23 51.6-51.6 51.6-51.6-23-51.6-51.6 23-51.6 51.6-51.6z"></path><path fill="#6da544" d="M329.2 215.7a71.8 71.8 0 0 0-71.6 71.6 71.8 71.8 0 0 0 71.6 71.6 71.8 71.8 0 0 0 71.6-71.6 71.8 71.8 0 0 0-71.6-71.6zm0 20c28.6 0 51.6 23 51.6 51.6s-23 51.6-51.6 51.6-51.6-23-51.6-51.6 23-51.6 51.6-51.6z"></path><path fill="#338af3" d="m166.9 181.7-16 12a51.5 51.5 0 0 1 0 61.9l16 12a71.6 71.6 0 0 0 0-85.9z"></path><path fill="#333" d="m313.3 181.7-16 12a51.5 51.5 0 0 1 0 61.9l16 12a71.6 71.6 0 0 0 0-85.9zM225 266l-12 16a71.7 71.7 0 0 0 43 14.3v-20a51.5 51.5 0 0 1-31-10.3z"></path><path fill="#d80027" d="m371.4 266-12 16a71.7 71.7 0 0 0 43 14.3v-20a51.5 51.5 0 0 1-31-10.3z"></path>', 9), v = { fill: "none" }, g = ["r"], M = /* @__PURE__ */ r({
__name: "olympics",
props: {
flagName: {},
strokeColor: { default: "#000" },
strokeWidth: { default: 0 }
},
setup(c) {
const t = c, l = a(() => 512 + 2 * t.strokeWidth), o = a(() => -t.strokeWidth), d = a(() => 256 + t.strokeWidth / 2);
return (x, w) => (s(), i("svg", {
xmlns: "http://www.w3.org/2000/svg",
class: "svg-circle-flags",
viewBox: `${o.value} ${o.value} ${l.value} ${l.value}`
}, [
_,
e("g", z, [
t.flagName ? (s(), i("title", k, f(t.flagName), 1)) : h("", !0),
u
]),
e("g", v, [
e("circle", {
cx: "256",
cy: "256",
r: d.value,
fill: "none",
style: p({ stroke: t.strokeColor, strokeWidth: t.strokeWidth })
}, null, 12, g)
])
], 8, m));
}
});
export {
M as default
};
//# sourceMappingURL=olympics-55fe312f.js.map