@amsterdam/design-system-react
Version:
All React components from the Amsterdam Design System. Use it to compose pages in your website or application.
19 lines (18 loc) • 1.15 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { clsx } from 'clsx';
import { forwardRef, useId } from 'react';
import { TabNavigationLink } from './TabNavigationLink';
import { TabNavigationList } from './TabNavigationList';
const TabNavigationRoot = forwardRef(({ accessibleName, accessibleNameId, children, className, orientation, ...restProps }, ref) => {
const generatedId = useId();
const labelId = accessibleNameId || generatedId;
return (_jsxs("nav", { ...restProps, "aria-labelledby": labelId, className: clsx('ams-tab-navigation', orientation === 'vertical' && 'ams-tab-navigation--vertical', className), ref: ref, children: [_jsx("h2", { "aria-hidden": true, className: "ams-visually-hidden", id: labelId, children: accessibleName || 'Navigatie' }), children] }));
});
TabNavigationRoot.displayName = 'TabNavigation';
/**
* @see {@link https://designsystem.amsterdam/?path=/docs/components-navigation-tab-navigation--docs Tab Navigation docs at Amsterdam Design System}
*/
export const TabNavigation = Object.assign(TabNavigationRoot, {
Link: TabNavigationLink,
List: TabNavigationList,
});