UNPKG

@extclp/vexip-ui

Version:

A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good

81 lines (80 loc) 2.6 kB
import { defineComponent as y, toRef as v, computed as h, createVNode as t, renderSlot as k } from "vue"; import "../icon/index.mjs"; import "../linker/index.mjs"; import { useProps as L, useNameHelper as g } from "@vexip-ui/config"; import { layoutFooterProps as F } from "./props.mjs"; import { useLayoutState as N, useMediaQuery as S } from "./helper.mjs"; import m from "../linker/linker.vue2.mjs"; import C from "../icon/icon.mjs"; const I = /* @__PURE__ */ y({ name: "LayoutFooter", props: F, setup(u, { slots: i }) { const n = L("layoutFooter", u, { tag: "footer", copyright: "", links: () => [], verticalLinks: "md" }), e = g("layout"), s = N(), l = S(v(n, "verticalLinks")), d = h(() => [e.be("footer"), { [e.bs("vars")]: !s.isLayout, [e.bem("footer", "inherit")]: s.isLayout || n.inherit }, s.classes.footer]); function f() { var r; return (r = n.links) != null && r.length ? t("div", { class: [e.be("links"), !l.value && e.bem("links", "vertical"), s.classes.footerLinks] }, [t("div", { class: e.be("links-row") }, [n.links.map((o, b) => { var c; return t("div", { key: b, class: [e.be("link-group"), !l.value && e.bem("link-group", "vertical")] }, [t("div", { class: [e.be("link-name"), e.bem("link-name", "group")] }, [o.to ? t(m, { icon: o.icon, to: o.to, target: o.target }, { default: () => [o.name] }) : [o.icon && t(C, { icon: o.icon }, null), o.name], o.subname && t("div", { class: e.be("link-subname") }, [`- ${o.subname}`])]), (c = o.children) != null && c.length ? o.children.map((a, p) => t("div", { key: p, class: e.be("link") }, [t(m, { icon: a.icon, to: a.to, target: a.target }, { default: () => [a.name] }), a.subname && t("div", { class: e.be("link-subname") }, [`- ${a.subname}`])])) : null]); })])]) : t("div", { role: "none", "aria-hidden": !0, style: "display: none" }, null); } return () => { const r = n.tag || "footer"; return t(r, { class: d.value }, { default: () => [i.links ? k(i, "links") : f(), t("div", { class: [e.be("copyright"), s.classes.copyright] }, [i.copyright ? i.copyright() : n.copyright])] }); }; } }); export { I as default }; //# sourceMappingURL=layout-footer.mjs.map