From 135c1c7d98a17cb239e1e5f1f83c366ffbbd195d Mon Sep 17 00:00:00 2001 From: Viggo Normann Date: Thu, 30 Sep 2021 16:06:00 +0200 Subject: [PATCH] Add Flagship to Navbar --- src/components/Navbar/Navbar.jsx | 11 +++++- src/components/Navbar/Navbar.stories.js | 32 +++++++++++++++++ src/components/Navbar/NavbarLogoFlagship.jsx | 36 ++++++++++++++++++++ 3 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 src/components/Navbar/NavbarLogoFlagship.jsx diff --git a/src/components/Navbar/Navbar.jsx b/src/components/Navbar/Navbar.jsx index f96643b..d300e96 100644 --- a/src/components/Navbar/Navbar.jsx +++ b/src/components/Navbar/Navbar.jsx @@ -2,10 +2,19 @@ import React from 'react' import { NavbarProvider } from './NavbarContext' export default function Navbar({ children }) { + const hasService = children.find( + (child) => child.type.displayName in ['NavbarLogoFlagship'] + ) + return (
-
+
{children}
diff --git a/src/components/Navbar/Navbar.stories.js b/src/components/Navbar/Navbar.stories.js index 34a472b..fe42043 100644 --- a/src/components/Navbar/Navbar.stories.js +++ b/src/components/Navbar/Navbar.stories.js @@ -10,6 +10,7 @@ import NavbarSearchButton from './NavbarSearchButton' import NavbarSearch from './NavbarSearch' import NavbarMenuButton from './NavbarMenuButton' import NavbarMenuDrawer from './NavbarMenuDrawer' +import NavbarLogoFlagship from './NavbarLogoFlagship' import Block from '../../layout/Block/Block' import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { faUser } from '@fortawesome/pro-regular-svg-icons' @@ -167,3 +168,34 @@ const Template = (args) => ( ) export const Default = Template.bind({}) + +const TemplateFlagship = (args) => ( +
+ + + + + + + + +
+) + +export const Flagship = TemplateFlagship.bind({}) diff --git a/src/components/Navbar/NavbarLogoFlagship.jsx b/src/components/Navbar/NavbarLogoFlagship.jsx new file mode 100644 index 0000000..fb37ed1 --- /dev/null +++ b/src/components/Navbar/NavbarLogoFlagship.jsx @@ -0,0 +1,36 @@ +import React from 'react' +import PropTypes from 'prop-types' +import ServiceIcon from '../ServiceIcon/ServiceIcon' + +export default function NavbarLogoFlagship({ + href, + logo, + title, + ariaLabel, + flagship +}) { + return ( + + + + + {flagship} + + ) +} + +NavbarLogoFlagship.propTypes = { + href: PropTypes.string.isRequired, + logo: PropTypes.oneOf(['bring', 'posten']).isRequired, + title: PropTypes.string.isRequired, + ariaLabel: PropTypes.string, + flagship: PropTypes.string.isRequired +}