UNPKG

1.36 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.NavGroup = void 0;
4const tslib_1 = require("tslib");
5const React = tslib_1.__importStar(require("react"));
6const nav_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/Nav/nav"));
7const react_styles_1 = require("@patternfly/react-styles");
8const util_1 = require("../../helpers/util");
9const NavGroup = (_a) => {
10 var { title, children = null, className = '', id = util_1.getUniqueId() } = _a, props = tslib_1.__rest(_a, ["title", "children", "className", "id"]);
11 if (!title && !props['aria-label']) {
12 // eslint-disable-next-line no-console
13 console.warn("For accessibility reasons an aria-label should be specified on nav groups if a title isn't");
14 }
15 const labelledBy = title ? id : undefined;
16 return (React.createElement("section", Object.assign({ className: react_styles_1.css(nav_1.default.navSection, className), "aria-labelledby": labelledBy }, props),
17 title && (React.createElement("h2", { className: react_styles_1.css(nav_1.default.navSectionTitle), id: id }, title)),
18 React.createElement("ul", { className: react_styles_1.css(nav_1.default.navList, className) }, children)));
19};
20exports.NavGroup = NavGroup;
21exports.NavGroup.displayName = 'NavGroup';
22//# sourceMappingURL=NavGroup.js.map
\No newline at end of file