@vectara/vectara-ui
Version:
Vectara's design system, codified as a React and Sass component library
15 lines (14 loc) • 983 B
JavaScript
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
import { VuiTabs } from "./Tabs";
import { VuiTab } from "./Tab";
import { VuiSpacer } from "../spacer/Spacer";
import { useVuiContext } from "../context/Context";
export const VuiTabbedRoutes = ({ tabs, size, sideContent, children }) => {
const { getPath } = useVuiContext();
return (_jsxs(_Fragment, { children: [_jsx(VuiTabs, Object.assign({ append: sideContent, size: size }, { children: tabs.map(({ href, title, render, testId, isActive }, index) => {
const tabLink = (_jsx(VuiTab, Object.assign({ href: href, isActive: isActive !== null && isActive !== void 0 ? isActive : (href ? getPath().includes(href) : false), "data-testid": testId }, { children: title }), index));
if (render)
return render(tabLink);
return tabLink;
}) })), _jsx(VuiSpacer, { size: "m" }), children] }));
};