UNPKG

@veracity/vui

Version:

Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.

35 lines (33 loc) 1.39 kB
import { isJsx } from "../utils/assertion.js"; import { cs } from "../utils/styles.js"; import { useStyleConfig } from "../core/theme.js"; import { v } from "../core/styled.js"; import vui from "../core/vui.js"; import { Box } from "../box/box.js"; import { useFooterContext } from "./context.js"; import { FooterHeading } from "./footerHeading.js"; import { FooterLink } from "./footerLink.js"; import { jsx, jsxs } from "react/jsx-runtime"; //#region src/footer/footerSection.tsx /** Section includes a heading and a set of links. */ const FooterSection = vui((props, ref) => { const { children, className, heading, links, ...rest } = props; const styles = useStyleConfig("Footer", useFooterContext()); return /* @__PURE__ */ jsxs(Box, { className: cs("vui-footerSection", className), column: true, ref, ...styles.section, ...rest, children: [isJsx(heading) ? heading : /* @__PURE__ */ jsx(FooterHeading, { text: heading }), children ?? (isJsx(links) ? links : /* @__PURE__ */ jsx(v.ul, { children: links?.map(({ text, url, target }, index) => /* @__PURE__ */ jsx(v.li, { children: /* @__PURE__ */ jsx(FooterLink, { href: url, text, target }) }, index)) }))] }); }); FooterSection.displayName = "FooterSection"; //#endregion export { FooterSection, FooterSection as default }; globalThis.__vuiVersion__ = "5.3.1" //# sourceMappingURL=footerSection.js.map