vue-circle-flags
Version:
A vue component with a collection of 400+ circular SVG country flags. Wrapper of HatScripts/circle-flags
55 lines (54 loc) • 2 kB
JavaScript
import { defineComponent as a, computed as l, openBlock as i, createElementBlock as c, createElementVNode as e, toDisplayString as d, createCommentVNode as h, normalizeStyle as _ } from "vue";
const f = ["viewBox"], v = /* @__PURE__ */ e("mask", { id: "e7339f17-c563-427e-ae86-7656e104605d" }, [
/* @__PURE__ */ e("circle", {
cx: "256",
cy: "256",
r: "256",
fill: "#fff"
})
], -1), u = { mask: "url(#e7339f17-c563-427e-ae86-7656e104605d)" }, m = { key: 0 }, k = /* @__PURE__ */ e("path", {
fill: "#eee",
d: "M0 0h100.2l66.1 53.5L233.7 0H512v189.3L466.3 257l45.7 65.8V512H233.7l-68-50.7-65.5 50.7H0V322.8l51.4-68.5-51.4-65z"
}, null, -1), p = /* @__PURE__ */ e("path", {
fill: "#0052b4",
d: "M100.2 0v189.3H0v33.4l24.6 33L0 289.5v33.4h100.2V512h33.4l30.6-26.3 36.1 26.3h33.4V322.8H512v-33.4l-24.6-33.7 24.6-33v-33.4H233.7V0h-33.4l-33.8 25.3L133.6 0z"
}, null, -1), g = /* @__PURE__ */ e("path", {
fill: "#d80027",
d: "M133.6 0v222.7H0v66.7h133.6V512h66.7V289.4H512v-66.7H200.3V0h-66.7z"
}, null, -1), V = { fill: "none" }, H = ["r"], W = /* @__PURE__ */ a({
__name: "fo",
props: {
flagName: {},
strokeColor: { default: "#000" },
strokeWidth: { default: 0 }
},
setup(r) {
const t = r, o = l(() => 512 + 2 * t.strokeWidth), s = l(() => -t.strokeWidth), n = l(() => 256 + t.strokeWidth / 2);
return (x, w) => (i(), c("svg", {
xmlns: "http://www.w3.org/2000/svg",
class: "svg-circle-flags",
viewBox: `${s.value} ${s.value} ${o.value} ${o.value}`
}, [
v,
e("g", u, [
t.flagName ? (i(), c("title", m, d(t.flagName), 1)) : h("", !0),
k,
p,
g
]),
e("g", V, [
e("circle", {
cx: "256",
cy: "256",
r: n.value,
fill: "none",
style: _({ stroke: t.strokeColor, strokeWidth: t.strokeWidth })
}, null, 12, H)
])
], 8, f));
}
});
export {
W as default
};
//# sourceMappingURL=fo-bf7f11fb.js.map