UNPKG

@navikt/ds-react

Version:

React components from the Norwegian Labour and Welfare Administration.

65 lines 2.67 kB
var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; import React, { forwardRef } from "react"; import { Theme, useRenameCSS, useThemeInternal } from "../theme/Theme.js"; import InternalHeaderButton from "./InternalHeaderButton.js"; import InternalHeaderTitle from "./InternalHeaderTitle.js"; import InternalHeaderUser from "./InternalHeaderUser.js"; import InternalHeaderUserButton from "./InternalHeaderUserButton.js"; /** * Simple Header for internal pages and systems. * * @see [📝 Documentation](https://aksel.nav.no/komponenter/core/i-header) * @see 🏷️ {@link InternalHeaderProps} * * @example * ```jsx * <InternalHeader> * <InternalHeader.Title as="h1">Sykepenger</InternalHeader.Title> * <Spacer /> * <InternalHeader.User name="Ola Normann" /> * </InternalHeader> * ``` * @example * ```jsx * <InternalHeader > * <InternalHeader.Title href="/#home">Tittel med lenke</InternalHeader.Title> * <Dropdown> * <InternalHeader.Button * as={Dropdown.Toggle} * > * <MenuGridIcon title="MenuGridIconer og oppslagsverk" /> * </InternalHeader.Button> * <Dropdown.Menu /> * </Dropdown> * </InternalHeader> * ``` */ export const InternalHeader = forwardRef((_a, ref) => { var { className } = _a, rest = __rest(_a, ["className"]); const themeContext = useThemeInternal(false); const { cn } = useRenameCSS(); /* * Component is always in "dark" mode, so we manually override global theme. */ if (themeContext === null || themeContext === void 0 ? void 0 : themeContext.isDarkside) { return (React.createElement(Theme, { theme: "dark", asChild: true, hasBackground: false }, React.createElement("header", Object.assign({}, rest, { ref: ref, className: cn("navds-internalheader", className) })))); } return (React.createElement("header", Object.assign({ "data-theme": "dark" }, rest, { ref: ref, className: cn("navds-internalheader", className) }))); }); InternalHeader.Title = InternalHeaderTitle; InternalHeader.User = InternalHeaderUser; InternalHeader.Button = InternalHeaderButton; InternalHeader.UserButton = InternalHeaderUserButton; export default InternalHeader; //# sourceMappingURL=InternalHeader.js.map