@workday/canvas-kit-react
Version:
The parent module that contains all Workday Canvas Kit React components
16 lines (15 loc) • 1.09 kB
JavaScript
import { jsxs as _jsxs } from "react/jsx-runtime";
import { createSubcomponent } from '@workday/canvas-kit-react/common';
import { Flex } from '@workday/canvas-kit-react/layout';
import { useOverflowListMeasure, useListRenderItems } from '@workday/canvas-kit-react/collection';
import { space } from '@workday/canvas-kit-react/tokens';
import { useBreadcrumbsModel } from './hooks/useBreadcrumbsModel';
export const BreadcrumbsList = createSubcomponent('ul')({
displayName: 'Breadcrumbs.List',
modelHook: useBreadcrumbsModel,
elemPropsHook: useOverflowListMeasure,
})(({ overflowButton, children, ...elemProps }, Element, model) => {
const items = useListRenderItems(model, children);
const splitIndex = items.length - 2;
return (_jsxs(Flex, { as: Element, padding: "zero", margin: "zero", display: "inline-flex", alignItems: "center", minHeight: space.xl, listStyle: "none", role: "list", width: "100%", ...elemProps, children: [items.length ? items.slice(0, splitIndex) : items, overflowButton, items.length ? items.slice(splitIndex, items.length) : null] }));
});