@laerdal/life-react-components 5.0.0-dev.1 → 5.0.0-dev.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Accordion/AccordionItem.cjs +1 -1
- package/dist/Accordion/AccordionItem.cjs.map +1 -1
- package/dist/Accordion/AccordionItem.js +1 -1
- package/dist/Accordion/AccordionItem.js.map +1 -1
- package/dist/Accordion/styles.cjs +3 -3
- package/dist/Accordion/styles.cjs.map +1 -1
- package/dist/Accordion/styles.d.ts +1 -1
- package/dist/Accordion/styles.js +3 -3
- package/dist/Accordion/styles.js.map +1 -1
- package/dist/AuthPage/AuthPage.cjs +1 -1
- package/dist/AuthPage/AuthPage.cjs.map +1 -1
- package/dist/AuthPage/AuthPage.js +1 -1
- package/dist/AuthPage/AuthPage.js.map +1 -1
- package/dist/AuthPage/ScreenSetsContainer.cjs +1 -1
- package/dist/AuthPage/ScreenSetsContainer.cjs.map +1 -1
- package/dist/AuthPage/ScreenSetsContainer.d.ts +1 -1
- package/dist/AuthPage/ScreenSetsContainer.js +1 -1
- package/dist/AuthPage/ScreenSetsContainer.js.map +1 -1
- package/dist/Banners/Banner.cjs +8 -8
- package/dist/Banners/Banner.cjs.map +1 -1
- package/dist/Banners/Banner.d.ts +8 -2
- package/dist/Banners/Banner.js +8 -8
- package/dist/Banners/Banner.js.map +1 -1
- package/dist/Banners/OverviewBanner.d.ts +4 -4
- package/dist/Breadcrumb/Breadcrumb.cjs +2 -2
- package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.js +2 -2
- package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/Breadcrumb/styles.cjs +5 -5
- package/dist/Breadcrumb/styles.cjs.map +1 -1
- package/dist/Breadcrumb/styles.d.ts +2 -2
- package/dist/Breadcrumb/styles.js +5 -5
- package/dist/Breadcrumb/styles.js.map +1 -1
- package/dist/Button/BackButton.cjs +2 -2
- package/dist/Button/BackButton.cjs.map +1 -1
- package/dist/Button/BackButton.js +2 -2
- package/dist/Button/BackButton.js.map +1 -1
- package/dist/Button/Button.cjs +1 -1
- package/dist/Button/Button.cjs.map +1 -1
- package/dist/Button/Button.js +1 -1
- package/dist/Button/Button.js.map +1 -1
- package/dist/Button/DualFunctionButton.cjs +5 -5
- package/dist/Button/DualFunctionButton.cjs.map +1 -1
- package/dist/Button/DualFunctionButton.js +5 -5
- package/dist/Button/DualFunctionButton.js.map +1 -1
- package/dist/Button/Iconbutton.cjs +25 -23
- package/dist/Button/Iconbutton.cjs.map +1 -1
- package/dist/Button/Iconbutton.d.ts +24 -3
- package/dist/Button/Iconbutton.js +25 -23
- package/dist/Button/Iconbutton.js.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.cjs +2 -2
- package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.d.ts +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.js +2 -2
- package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.cjs +2 -2
- package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.d.ts +2 -2
- package/dist/Card/VerticalCard/CardMiddleSection.js +2 -2
- package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
- package/dist/Dropdown/BasicDropdown.cjs +9 -9
- package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
- package/dist/Dropdown/BasicDropdown.js +9 -9
- package/dist/Dropdown/BasicDropdown.js.map +1 -1
- package/dist/Dropdown/CommonStyling.cjs +10 -10
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.d.ts +9 -9
- package/dist/Dropdown/CommonStyling.js +10 -10
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownContent.cjs +41 -41
- package/dist/Dropdown/DropdownContent.cjs.map +1 -1
- package/dist/Dropdown/DropdownContent.d.ts +12 -12
- package/dist/Dropdown/DropdownContent.js +41 -41
- package/dist/Dropdown/DropdownContent.js.map +1 -1
- package/dist/Dropdown/DropdownFilter.cjs +8 -8
- package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
- package/dist/Dropdown/DropdownFilter.js +8 -8
- package/dist/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/Footer/Components/FooterDropdownLinks.cjs +3 -3
- package/dist/Footer/Components/FooterDropdownLinks.cjs.map +1 -1
- package/dist/Footer/Components/FooterDropdownLinks.js +3 -3
- package/dist/Footer/Components/FooterDropdownLinks.js.map +1 -1
- package/dist/Footer/Components/FooterNavSection.cjs +2 -2
- package/dist/Footer/Components/FooterNavSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNavSection.js +2 -2
- package/dist/Footer/Components/FooterNavSection.js.map +1 -1
- package/dist/Footer/SiteFooter.cjs +3 -3
- package/dist/Footer/SiteFooter.cjs.map +1 -1
- package/dist/Footer/SiteFooter.js +3 -3
- package/dist/Footer/SiteFooter.js.map +1 -1
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs +5 -5
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs.map +1 -1
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js +5 -5
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
- package/dist/GlobalNavigationBar/Logo.cjs +4 -4
- package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
- package/dist/GlobalNavigationBar/Logo.js +4 -4
- package/dist/GlobalNavigationBar/Logo.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs +2 -13
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.js +2 -13
- package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/SubMenu.cjs +5 -5
- package/dist/GlobalNavigationBar/desktop/SubMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/SubMenu.d.ts +2 -2
- package/dist/GlobalNavigationBar/desktop/SubMenu.js +5 -5
- package/dist/GlobalNavigationBar/desktop/SubMenu.js.map +1 -1
- package/dist/HyperLink/HyperLink.cjs +3 -3
- package/dist/HyperLink/HyperLink.cjs.map +1 -1
- package/dist/HyperLink/HyperLink.d.ts +2 -2
- package/dist/HyperLink/HyperLink.js +3 -3
- package/dist/HyperLink/HyperLink.js.map +1 -1
- package/dist/InputFields/Checkbox.cjs +4 -4
- package/dist/InputFields/Checkbox.cjs.map +1 -1
- package/dist/InputFields/Checkbox.d.ts +3 -3
- package/dist/InputFields/Checkbox.js +4 -4
- package/dist/InputFields/Checkbox.js.map +1 -1
- package/dist/InputFields/DatepickerField.cjs +9 -9
- package/dist/InputFields/DatepickerField.cjs.map +1 -1
- package/dist/InputFields/DatepickerField.js +9 -9
- package/dist/InputFields/DatepickerField.js.map +1 -1
- package/dist/InputFields/Label.cjs +2 -2
- package/dist/InputFields/Label.cjs.map +1 -1
- package/dist/InputFields/Label.js +2 -2
- package/dist/InputFields/Label.js.map +1 -1
- package/dist/InputFields/NumberField.cjs +24 -24
- package/dist/InputFields/NumberField.cjs.map +1 -1
- package/dist/InputFields/NumberField.js +24 -24
- package/dist/InputFields/NumberField.js.map +1 -1
- package/dist/InputFields/PasswordField.cjs +4 -4
- package/dist/InputFields/PasswordField.cjs.map +1 -1
- package/dist/InputFields/PasswordField.js +4 -4
- package/dist/InputFields/PasswordField.js.map +1 -1
- package/dist/InputFields/SearchBar.cjs +2 -2
- package/dist/InputFields/SearchBar.cjs.map +1 -1
- package/dist/InputFields/SearchBar.js +2 -2
- package/dist/InputFields/SearchBar.js.map +1 -1
- package/dist/InputFields/TextField.cjs +5 -5
- package/dist/InputFields/TextField.cjs.map +1 -1
- package/dist/InputFields/TextField.js +5 -5
- package/dist/InputFields/TextField.js.map +1 -1
- package/dist/InputFields/Textarea.cjs +3 -3
- package/dist/InputFields/Textarea.cjs.map +1 -1
- package/dist/InputFields/Textarea.js +3 -3
- package/dist/InputFields/Textarea.js.map +1 -1
- package/dist/InputFields/components/SearchField.cjs.map +1 -1
- package/dist/InputFields/components/SearchField.d.ts +1 -1
- package/dist/InputFields/components/SearchField.js.map +1 -1
- package/dist/InputFields/styling.cjs +7 -7
- package/dist/InputFields/styling.cjs.map +1 -1
- package/dist/InputFields/styling.d.ts +9 -9
- package/dist/InputFields/styling.js +7 -7
- package/dist/InputFields/styling.js.map +1 -1
- package/dist/Layouts/index.cjs +11 -11
- package/dist/Layouts/index.cjs.map +1 -1
- package/dist/Layouts/index.d.ts +6 -6
- package/dist/Layouts/index.js +11 -11
- package/dist/Layouts/index.js.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.cjs.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.js.map +1 -1
- package/dist/MenuItem/MenuItem.cjs +8 -8
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.d.ts +2 -2
- package/dist/MenuItem/MenuItem.js +8 -8
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/Modals/ModalContainer.cjs +2 -2
- package/dist/Modals/ModalContainer.cjs.map +1 -1
- package/dist/Modals/ModalContainer.js +2 -2
- package/dist/Modals/ModalContainer.js.map +1 -1
- package/dist/Modals/ModalDialog.cjs +11 -11
- package/dist/Modals/ModalDialog.cjs.map +1 -1
- package/dist/Modals/ModalDialog.js +11 -11
- package/dist/Modals/ModalDialog.js.map +1 -1
- package/dist/Modals/ModalNote.cjs +8 -8
- package/dist/Modals/ModalNote.cjs.map +1 -1
- package/dist/Modals/ModalNote.js +8 -8
- package/dist/Modals/ModalNote.js.map +1 -1
- package/dist/Modals/ModalStyles.cjs +19 -19
- package/dist/Modals/ModalStyles.cjs.map +1 -1
- package/dist/Modals/ModalStyles.d.ts +17 -17
- package/dist/Modals/ModalStyles.js +19 -19
- package/dist/Modals/ModalStyles.js.map +1 -1
- package/dist/NotificationDot/NotificationDot.cjs +11 -12
- package/dist/NotificationDot/NotificationDot.cjs.map +1 -1
- package/dist/NotificationDot/NotificationDot.js +11 -12
- package/dist/NotificationDot/NotificationDot.js.map +1 -1
- package/dist/Popover/Popover.cjs +40 -40
- package/dist/Popover/Popover.cjs.map +1 -1
- package/dist/Popover/Popover.d.ts +9 -9
- package/dist/Popover/Popover.js +40 -40
- package/dist/Popover/Popover.js.map +1 -1
- package/dist/QuizButton/QuizButton.cjs +14 -14
- package/dist/QuizButton/QuizButton.cjs.map +1 -1
- package/dist/QuizButton/QuizButton.js +14 -14
- package/dist/QuizButton/QuizButton.js.map +1 -1
- package/dist/Table/Table.cjs +1 -1
- package/dist/Table/Table.cjs.map +1 -1
- package/dist/Table/Table.js +1 -1
- package/dist/Table/Table.js.map +1 -1
- package/dist/Table/TableBody.cjs +2 -2
- package/dist/Table/TableBody.cjs.map +1 -1
- package/dist/Table/TableBody.js +2 -2
- package/dist/Table/TableBody.js.map +1 -1
- package/dist/Table/TableStyles.cjs +4 -4
- package/dist/Table/TableStyles.cjs.map +1 -1
- package/dist/Table/TableStyles.d.ts +3 -3
- package/dist/Table/TableStyles.js +4 -4
- package/dist/Table/TableStyles.js.map +1 -1
- package/dist/Tabs/TabLink.cjs +3 -3
- package/dist/Tabs/TabLink.cjs.map +1 -1
- package/dist/Tabs/TabLink.js +3 -3
- package/dist/Tabs/TabLink.js.map +1 -1
- package/dist/Tabs/Tabs.cjs.map +1 -1
- package/dist/Tabs/Tabs.js.map +1 -1
- package/dist/Tag/Tag.cjs +6 -6
- package/dist/Tag/Tag.cjs.map +1 -1
- package/dist/Tag/Tag.js +6 -6
- package/dist/Tag/Tag.js.map +1 -1
- package/dist/Toasters/Toast.cjs +16 -16
- package/dist/Toasters/Toast.cjs.map +1 -1
- package/dist/Toasters/Toast.d.ts +6 -7
- package/dist/Toasters/Toast.js +16 -16
- package/dist/Toasters/Toast.js.map +1 -1
- package/dist/Toggles/ToggleSwitch.cjs +1 -1
- package/dist/Toggles/ToggleSwitch.cjs.map +1 -1
- package/dist/Toggles/ToggleSwitch.js +1 -1
- package/dist/Toggles/ToggleSwitch.js.map +1 -1
- package/dist/Toggles/TogglerStyles.cjs.map +1 -1
- package/dist/Toggles/TogglerStyles.d.ts +1 -1
- package/dist/Toggles/TogglerStyles.js.map +1 -1
- package/dist/Tooltips/TooltipOverflow.cjs +7 -7
- package/dist/Tooltips/TooltipOverflow.cjs.map +1 -1
- package/dist/Tooltips/TooltipOverflow.js +7 -7
- package/dist/Tooltips/TooltipOverflow.js.map +1 -1
- package/dist/Tooltips/TooltipStyles.cjs +29 -29
- package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
- package/dist/Tooltips/TooltipStyles.d.ts +9 -9
- package/dist/Tooltips/TooltipStyles.js +29 -29
- package/dist/Tooltips/TooltipStyles.js.map +1 -1
- package/dist/Tooltips/TooltipWrapper.cjs +7 -7
- package/dist/Tooltips/TooltipWrapper.cjs.map +1 -1
- package/dist/Tooltips/TooltipWrapper.js +7 -7
- package/dist/Tooltips/TooltipWrapper.js.map +1 -1
- package/dist/styles/typography.cjs +11 -11
- package/dist/styles/typography.cjs.map +1 -1
- package/dist/styles/typography.d.ts +3 -3
- package/dist/styles/typography.js +11 -11
- package/dist/styles/typography.js.map +1 -1
- package/package.json +1 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalNavigationBar.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Logo","_MainMenu","_Layouts","_styles","_RightSideNav","_MobileMenu","_icons","_UserMenu","_CommonStyles","_Button","_DesktopActions","_rooks","_common","_utils","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","HeaderWrapper","styled","header","_taggedTemplateLiteral2","props","COLORS","getColor","theme","Z_INDEXES","sticky_menu","BREAKPOINTS","MEDIUM","LARGE","RowLayout","div","HamburgerButton","RightSide","MobileMenuBackdrop","backdrop","fadeIn","fadeOut","MobileWrapper","UserMenuWrapper","offsetRight","hasWindow","concat","window","innerWidth","GlobalNavigationBar","_ref","_actionsRef$current","_actionsRef$current$b","_actionsRef$current$b2","_actionsRef$current$b3","_desktop$items","_desktop$buttons","name","isAuthenticated","logo","profile","mobile","desktop","testId","_ref$useMaxWidth","useMaxWidth","maxWidth","profileComponent","_ref$border","border","_React$useState","useState","_React$useState2","_slicedToArray2","showMobileMenu","setShowMobileMenu","wasMobileMenuOpen","usePreviousImmediate","_React$useState3","_React$useState4","showUserMenu","setShowUserMenu","actionsRef","useRef","profileButtonRef","current","buttons","find","type","ref","mobileMenuButtonRef","rightSideRef","_React$useState5","_React$useState6","avatarRight","setAvatarRight","userMenuRef","useClickOutsideRef","mobileMenuRef","useEffect","handleResize","_profileButtonRef$cur","_profileButtonRef$cur2","profileRightOffset","getBoundingClientRect","right","addEventListener","removeEventListener","jsxs","Fragment","children","jsx","className","PageWidth","unsetMargin","showBetaTag","onClick","to","items","pinned","reverseRightSideOrder","map","x","action","onShowUserMenu","user","hidden","IconButton","shape","variant","SystemIcons","Menu","size","role","show","onClose","undefined","some","onHideUserMenu","propTypes","_propTypes","bool","number","string","func","node","_default","exports"],"sources":["../../src/GlobalNavigationBar/GlobalNavigationBar.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\n\r\nimport Logo from './Logo';\r\nimport MainMenu from './desktop/MainMenu';\r\nimport {PageWidth} from '../Layouts';\r\nimport {COLORS, BREAKPOINTS} from '../styles';\r\nimport RightSideNav from './desktop/RightSideNav';\r\nimport MobileMenu from './mobile/MobileMenu';\r\nimport {SystemIcons} from '../icons';\r\nimport UserMenu from './desktop/UserMenu';\r\nimport {fadeIn, fadeOut, Menu as MobileMenuWrapper} from './mobile/CommonStyles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {\r\n DesktopNavigationMenuProps, MenuNavigationItemTypeItem, MenuProfileButton,\r\n MobileNavigationMenuProps,\r\n ProfileMenu\r\n} from './types';\r\nimport {IconButton} from '../Button';\r\nimport DesktopActions, {DesktopActionsRef} from './desktop/DesktopActions';\r\nimport {usePreviousImmediate} from 'rooks';\r\nimport {useClickOutsideRef} from '../common';\r\nimport { hasWindow } from '../utils/utils';\r\n\r\nconst HeaderWrapper = styled.header`\r\n background: white;\r\n box-sizing: border-box;\r\n \r\n &.border:after{\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n right: 0;\r\n bottom: -1px;\r\n height: 1px;\r\n background: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n z-index: 5;\r\n }\r\n\r\n z-index: ${Z_INDEXES.sticky_menu};\r\n position: relative;\r\n\r\n height: 48px;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n height: 64px;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n height: 80px;\r\n }\r\n\r\n @media all and (-ms-high-contrast: none) {\r\n height: auto;\r\n }\r\n\r\n @media print {\r\n border-bottom: none;\r\n }\r\n`;\r\n\r\nconst RowLayout = styled.div`\r\n display: flex;\r\n align-items: center;\r\n`;\r\n\r\n\r\nconst HamburgerButton = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none;\r\n }\r\n`;\r\n\r\nconst RightSide = styled.div`\r\n display: flex;\r\n align-items: center;\r\n\r\n margin: 0 0 0 auto;\r\n\r\n &.reverse {\r\n ${HamburgerButton} {\r\n order: -1;\r\n }\r\n\r\n flex-direction: row-reverse;\r\n }\r\n`;\r\n\r\nconst MobileMenuBackdrop = styled.div`\r\n background: rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n position: fixed;\r\n left: 0;\r\n top: 0;\r\n height: 100%;\r\n width: 100%;\r\n overflow: hidden;\r\n z-index: ${Z_INDEXES.backdrop};\r\n visibility: hidden;\r\n\r\n &.open {\r\n visibility: visible;\r\n animation: ${fadeIn} 0.3s ease-in-out;\r\n }\r\n\r\n &.closed {\r\n visibility: hidden;\r\n animation: ${fadeOut} 0.3s ease-in-out;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n visibility: hidden !important;\r\n }\r\n`;\r\n\r\nconst MobileWrapper = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none !important;\r\n }\r\n`;\r\n\r\n\r\nconst UserMenuWrapper = styled.div<{ offsetRight?: number }>`\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n display: flex;\r\n position: absolute;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n top: 80px;\r\n right: ${(props) => (props.offsetRight && hasWindow() ? `${window.innerWidth - props.offsetRight + 296}px` : '10%')};\r\n }\r\n`;\r\n\r\n\r\n\r\ntype GlobalNavigationBarProps = {\r\n isAuthenticated?: boolean;\r\n useMaxWidth?: boolean;\r\n maxWidth?: number;\r\n\r\n name?: string;\r\n logo?: { onClick?: () => void; to?: string; showBetaTag?: boolean; };\r\n\r\n profile?: ProfileMenu;\r\n\r\n mobile?: MobileNavigationMenuProps;\r\n desktop?: DesktopNavigationMenuProps;\r\n\r\n testId?: string;\r\n\r\n profileComponent?: React.ReactNode\r\n border?: boolean;\r\n};\r\n\r\n/**\r\n * @param props\r\n * @constructor\r\n * @description This component is a global navigation header bar\r\n */\r\nconst GlobalNavigationBar = ({\r\n name,\r\n isAuthenticated,\r\n logo,\r\n profile,\r\n mobile,\r\n desktop,\r\n testId,\r\n useMaxWidth = true,\r\n maxWidth,\r\n profileComponent,\r\n border = true\r\n }: GlobalNavigationBarProps): React.ReactElement<GlobalNavigationBarProps> => {\r\n const [showMobileMenu, setShowMobileMenu] = React.useState(false);\r\n const wasMobileMenuOpen = usePreviousImmediate(showMobileMenu);\r\n\r\n const [showUserMenu, setShowUserMenu] = React.useState(false);\r\n\r\n const actionsRef = React.useRef<DesktopActionsRef>(null);\r\n const profileButtonRef = React.useRef<HTMLButtonElement | null>() as React.MutableRefObject<HTMLButtonElement | null | undefined>;\r\n profileButtonRef.current = actionsRef?.current?.buttons?.find(a => a.type === 'profile')?.ref?.current;\r\n\r\n const mobileMenuButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const rightSideRef = React.useRef(null);\r\n const [avatarRight, setAvatarRight] = React.useState<number>(0);\r\n\r\n\r\n const userMenuRef = useClickOutsideRef(() => setShowUserMenu(false), [profileButtonRef]);\r\n const mobileMenuRef = useClickOutsideRef(() => setShowMobileMenu(false), [mobileMenuButtonRef]);\r\n\r\n React.useEffect(() => {\r\n if (!profileButtonRef.current) return;\r\n\r\n const handleResize = () => {\r\n const profileRightOffset = profileButtonRef.current?.getBoundingClientRect()?.right;\r\n setAvatarRight(profileRightOffset || 0);\r\n };\r\n\r\n handleResize();\r\n window.addEventListener('resize', handleResize);\r\n return () => window.removeEventListener('resize', handleResize);\r\n }, [profileButtonRef.current]);\r\n\r\n\r\n return (\r\n <>\r\n <HeaderWrapper data-testid={testId} className={border ? 'border' : ''}>\r\n <PageWidth useMaxWidth={useMaxWidth} maxWidth={maxWidth} unsetMargin={true}>\r\n <RowLayout>\r\n <Logo name={name || ''} showBetaTag={logo?.showBetaTag} onClick={logo?.onClick} to={logo?.to}/>\r\n {\r\n isAuthenticated &&\r\n <MainMenu items={desktop?.items.filter(a => !a.pinned) || []} rightSideRef={rightSideRef}/>\r\n }\r\n <RightSide className={`${desktop?.reverseRightSideOrder ? 'reverse' : ''}`}\r\n ref={rightSideRef}>\r\n <RightSideNav items={desktop?.items?.filter(a => a.pinned && a.type == 'item').map(x => x as MenuNavigationItemTypeItem)} action={desktop?.action}/>\r\n <MobileWrapper>\r\n {!!profileComponent && profileComponent }\r\n </MobileWrapper>\r\n\r\n <DesktopActions ref={actionsRef}\r\n buttons={desktop?.buttons}\r\n onShowUserMenu={() => setShowUserMenu(!showUserMenu)}\r\n user={profile?.user}\r\n profileComponent= {profileComponent}\r\n />\r\n <HamburgerButton hidden={!isAuthenticated}>\r\n <IconButton action={() => setShowMobileMenu(!showMobileMenu)}\r\n ref={mobileMenuButtonRef}\r\n shape={'circular'}\r\n variant={'secondary'}>\r\n <SystemIcons.Menu size=\"24px\"/>\r\n </IconButton>\r\n </HamburgerButton>\r\n </RightSide>\r\n </RowLayout>\r\n </PageWidth>\r\n </HeaderWrapper>\r\n <MobileMenuBackdrop className={showMobileMenu ? 'open' : !showUserMenu && wasMobileMenuOpen ? 'closed' : ''}>\r\n <MobileMenuWrapper ref={mobileMenuRef}\r\n role=\"menu\"\r\n aria-labelledby=\"UserMenuButton\">\r\n <MobileMenu {...mobile}\r\n show={showMobileMenu}\r\n onClose={() => setShowMobileMenu(false)}\r\n profile={!profileComponent ? profile : undefined}/>\r\n </MobileMenuWrapper>\r\n </MobileMenuBackdrop>\r\n {\r\n desktop?.buttons?.some(a => a.type === 'profile') && !!profile &&\r\n <UserMenuWrapper ref={userMenuRef}\r\n offsetRight={avatarRight}\r\n data-testid=\"testUserMenuWrapper\">\r\n <UserMenu {...profile}\r\n show={showUserMenu}\r\n onHideUserMenu={() => setShowUserMenu(false)}/>\r\n </UserMenuWrapper>\r\n }\r\n </>\r\n );\r\n};\r\n\r\nexport default GlobalNavigationBar;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"GlobalNavigationBar.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Logo","_MainMenu","_Layouts","_styles","_RightSideNav","_MobileMenu","_icons","_UserMenu","_CommonStyles","_Button","_DesktopActions","_rooks","_common","_utils","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","HeaderWrapper","styled","header","_taggedTemplateLiteral2","props","COLORS","getColor","theme","Z_INDEXES","sticky_menu","BREAKPOINTS","MEDIUM","LARGE","RowLayout","div","HamburgerButton","RightSide","MobileMenuBackdrop","backdrop","fadeIn","fadeOut","MobileWrapper","UserMenuWrapper","$offsetRight","hasWindow","concat","window","innerWidth","GlobalNavigationBar","_ref","_actionsRef$current","_actionsRef$current$b","_actionsRef$current$b2","_actionsRef$current$b3","_desktop$items","_desktop$buttons","name","isAuthenticated","logo","profile","mobile","desktop","testId","_ref$useMaxWidth","useMaxWidth","maxWidth","profileComponent","_ref$border","border","_React$useState","useState","_React$useState2","_slicedToArray2","showMobileMenu","setShowMobileMenu","wasMobileMenuOpen","usePreviousImmediate","_React$useState3","_React$useState4","showUserMenu","setShowUserMenu","actionsRef","useRef","profileButtonRef","current","buttons","find","type","ref","mobileMenuButtonRef","rightSideRef","_React$useState5","_React$useState6","avatarRight","setAvatarRight","userMenuRef","useClickOutsideRef","mobileMenuRef","useEffect","handleResize","_profileButtonRef$cur","_profileButtonRef$cur2","profileRightOffset","getBoundingClientRect","right","addEventListener","removeEventListener","jsxs","Fragment","children","jsx","className","PageWidth","$useMaxWidth","$maxWidth","$unsetMargin","showBetaTag","onClick","to","items","pinned","reverseRightSideOrder","map","x","action","onShowUserMenu","user","hidden","IconButton","shape","variant","SystemIcons","Menu","size","role","show","onClose","undefined","some","onHideUserMenu","propTypes","_propTypes","bool","number","string","func","node","_default","exports"],"sources":["../../src/GlobalNavigationBar/GlobalNavigationBar.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\n\r\nimport Logo from './Logo';\r\nimport MainMenu from './desktop/MainMenu';\r\nimport {PageWidth} from '../Layouts';\r\nimport {COLORS, BREAKPOINTS} from '../styles';\r\nimport RightSideNav from './desktop/RightSideNav';\r\nimport MobileMenu from './mobile/MobileMenu';\r\nimport {SystemIcons} from '../icons';\r\nimport UserMenu from './desktop/UserMenu';\r\nimport {fadeIn, fadeOut, Menu as MobileMenuWrapper} from './mobile/CommonStyles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {\r\n DesktopNavigationMenuProps, MenuNavigationItemTypeItem, MenuProfileButton,\r\n MobileNavigationMenuProps,\r\n ProfileMenu\r\n} from './types';\r\nimport {IconButton} from '../Button';\r\nimport DesktopActions, {DesktopActionsRef} from './desktop/DesktopActions';\r\nimport {usePreviousImmediate} from 'rooks';\r\nimport {useClickOutsideRef} from '../common';\r\nimport { hasWindow } from '../utils/utils';\r\n\r\nconst HeaderWrapper = styled.header`\r\n background: white;\r\n box-sizing: border-box;\r\n \r\n &.border:after{\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n right: 0;\r\n bottom: -1px;\r\n height: 1px;\r\n background: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n z-index: 5;\r\n }\r\n\r\n z-index: ${Z_INDEXES.sticky_menu};\r\n position: relative;\r\n\r\n height: 48px;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n height: 64px;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n height: 80px;\r\n }\r\n\r\n @media all and (-ms-high-contrast: none) {\r\n height: auto;\r\n }\r\n\r\n @media print {\r\n border-bottom: none;\r\n }\r\n`;\r\n\r\nconst RowLayout = styled.div`\r\n display: flex;\r\n align-items: center;\r\n`;\r\n\r\n\r\nconst HamburgerButton = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none;\r\n }\r\n`;\r\n\r\nconst RightSide = styled.div`\r\n display: flex;\r\n align-items: center;\r\n\r\n margin: 0 0 0 auto;\r\n\r\n &.reverse {\r\n ${HamburgerButton} {\r\n order: -1;\r\n }\r\n\r\n flex-direction: row-reverse;\r\n }\r\n`;\r\n\r\nconst MobileMenuBackdrop = styled.div`\r\n background: rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n position: fixed;\r\n left: 0;\r\n top: 0;\r\n height: 100%;\r\n width: 100%;\r\n overflow: hidden;\r\n z-index: ${Z_INDEXES.backdrop};\r\n visibility: hidden;\r\n\r\n &.open {\r\n visibility: visible;\r\n animation: ${fadeIn} 0.3s ease-in-out;\r\n }\r\n\r\n &.closed {\r\n visibility: hidden;\r\n animation: ${fadeOut} 0.3s ease-in-out;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n visibility: hidden !important;\r\n }\r\n`;\r\n\r\nconst MobileWrapper = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none !important;\r\n }\r\n`;\r\n\r\n\r\nconst UserMenuWrapper = styled.div<{ $offsetRight?: number }>`\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n display: flex;\r\n position: absolute;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n top: 80px;\r\n right: ${(props) => (props.$offsetRight && hasWindow() ? `${window.innerWidth - props.$offsetRight + 296}px` : '10%')};\r\n }\r\n`;\r\n\r\n\r\n\r\ntype GlobalNavigationBarProps = {\r\n isAuthenticated?: boolean;\r\n useMaxWidth?: boolean;\r\n maxWidth?: number;\r\n\r\n name?: string;\r\n logo?: { onClick?: () => void; to?: string; showBetaTag?: boolean; };\r\n\r\n profile?: ProfileMenu;\r\n\r\n mobile?: MobileNavigationMenuProps;\r\n desktop?: DesktopNavigationMenuProps;\r\n\r\n testId?: string;\r\n\r\n profileComponent?: React.ReactNode\r\n border?: boolean;\r\n};\r\n\r\n/**\r\n * @param props\r\n * @constructor\r\n * @description This component is a global navigation header bar\r\n */\r\nconst GlobalNavigationBar = ({\r\n name,\r\n isAuthenticated,\r\n logo,\r\n profile,\r\n mobile,\r\n desktop,\r\n testId,\r\n useMaxWidth = true,\r\n maxWidth,\r\n profileComponent,\r\n border = true\r\n }: GlobalNavigationBarProps): React.ReactElement<GlobalNavigationBarProps> => {\r\n const [showMobileMenu, setShowMobileMenu] = React.useState(false);\r\n const wasMobileMenuOpen = usePreviousImmediate(showMobileMenu);\r\n\r\n const [showUserMenu, setShowUserMenu] = React.useState(false);\r\n\r\n const actionsRef = React.useRef<DesktopActionsRef>(null);\r\n const profileButtonRef = React.useRef<HTMLButtonElement | null>() as React.MutableRefObject<HTMLButtonElement | null | undefined>;\r\n profileButtonRef.current = actionsRef?.current?.buttons?.find(a => a.type === 'profile')?.ref?.current;\r\n\r\n const mobileMenuButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const rightSideRef = React.useRef(null);\r\n const [avatarRight, setAvatarRight] = React.useState<number>(0);\r\n\r\n\r\n const userMenuRef = useClickOutsideRef(() => setShowUserMenu(false), [profileButtonRef]);\r\n const mobileMenuRef = useClickOutsideRef(() => setShowMobileMenu(false), [mobileMenuButtonRef]);\r\n\r\n React.useEffect(() => {\r\n if (!profileButtonRef.current) return;\r\n\r\n const handleResize = () => {\r\n const profileRightOffset = profileButtonRef.current?.getBoundingClientRect()?.right;\r\n setAvatarRight(profileRightOffset || 0);\r\n };\r\n\r\n handleResize();\r\n window.addEventListener('resize', handleResize);\r\n return () => window.removeEventListener('resize', handleResize);\r\n }, [profileButtonRef.current]);\r\n\r\n\r\n return (\r\n <>\r\n <HeaderWrapper data-testid={testId} className={border ? 'border' : ''}>\r\n <PageWidth $useMaxWidth={useMaxWidth} $maxWidth={maxWidth} $unsetMargin={true}>\r\n <RowLayout>\r\n <Logo name={name || ''} showBetaTag={logo?.showBetaTag} onClick={logo?.onClick} to={logo?.to}/>\r\n {\r\n isAuthenticated &&\r\n <MainMenu items={desktop?.items.filter(a => !a.pinned) || []} rightSideRef={rightSideRef}/>\r\n }\r\n <RightSide className={`${desktop?.reverseRightSideOrder ? 'reverse' : ''}`}\r\n ref={rightSideRef}>\r\n <RightSideNav items={desktop?.items?.filter(a => a.pinned && a.type == 'item').map(x => x as MenuNavigationItemTypeItem)} action={desktop?.action}/>\r\n <MobileWrapper>\r\n {!!profileComponent && profileComponent }\r\n </MobileWrapper>\r\n\r\n <DesktopActions ref={actionsRef}\r\n buttons={desktop?.buttons}\r\n onShowUserMenu={() => setShowUserMenu(!showUserMenu)}\r\n user={profile?.user}\r\n profileComponent= {profileComponent}\r\n />\r\n <HamburgerButton hidden={!isAuthenticated}>\r\n <IconButton action={() => setShowMobileMenu(!showMobileMenu)}\r\n ref={mobileMenuButtonRef}\r\n shape={'circular'}\r\n variant={'secondary'}>\r\n <SystemIcons.Menu size=\"24px\"/>\r\n </IconButton>\r\n </HamburgerButton>\r\n </RightSide>\r\n </RowLayout>\r\n </PageWidth>\r\n </HeaderWrapper>\r\n <MobileMenuBackdrop className={showMobileMenu ? 'open' : !showUserMenu && wasMobileMenuOpen ? 'closed' : ''}>\r\n <MobileMenuWrapper ref={mobileMenuRef}\r\n role=\"menu\"\r\n aria-labelledby=\"UserMenuButton\">\r\n <MobileMenu {...mobile}\r\n show={showMobileMenu}\r\n onClose={() => setShowMobileMenu(false)}\r\n profile={!profileComponent ? profile : undefined}/>\r\n </MobileMenuWrapper>\r\n </MobileMenuBackdrop>\r\n {\r\n desktop?.buttons?.some(a => a.type === 'profile') && !!profile &&\r\n <UserMenuWrapper ref={userMenuRef}\r\n $offsetRight={avatarRight}\r\n data-testid=\"testUserMenuWrapper\">\r\n <UserMenu {...profile}\r\n show={showUserMenu}\r\n onHideUserMenu={() => setShowUserMenu(false)}/>\r\n </UserMenuWrapper>\r\n }\r\n </>\r\n );\r\n};\r\n\r\nexport default GlobalNavigationBar;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -36,7 +36,7 @@ var MobileWrapper = styled.div(_templateObject6 || (_templateObject6 = _taggedTe
|
|
|
36
36
|
var UserMenuWrapper = styled.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n background-color: ", ";\n display: flex;\n position: absolute;\n\n ", " {\n top: 80px;\n right: ", ";\n }\n"])), function (props) {
|
|
37
37
|
return COLORS.getColor('white', props.theme);
|
|
38
38
|
}, BREAKPOINTS.LARGE, function (props) {
|
|
39
|
-
return props
|
|
39
|
+
return props.$offsetRight && hasWindow() ? "".concat(window.innerWidth - props.$offsetRight + 296, "px") : '10%';
|
|
40
40
|
});
|
|
41
41
|
/**
|
|
42
42
|
* @param props
|
|
@@ -102,9 +102,9 @@ var GlobalNavigationBar = function GlobalNavigationBar(_ref) {
|
|
|
102
102
|
"data-testid": testId,
|
|
103
103
|
className: border ? 'border' : '',
|
|
104
104
|
children: /*#__PURE__*/_jsx(PageWidth, {
|
|
105
|
-
useMaxWidth: useMaxWidth,
|
|
106
|
-
maxWidth: maxWidth,
|
|
107
|
-
unsetMargin: true,
|
|
105
|
+
$useMaxWidth: useMaxWidth,
|
|
106
|
+
$maxWidth: maxWidth,
|
|
107
|
+
$unsetMargin: true,
|
|
108
108
|
children: /*#__PURE__*/_jsxs(RowLayout, {
|
|
109
109
|
children: [/*#__PURE__*/_jsx(Logo, {
|
|
110
110
|
name: name || '',
|
|
@@ -171,7 +171,7 @@ var GlobalNavigationBar = function GlobalNavigationBar(_ref) {
|
|
|
171
171
|
return a.type === 'profile';
|
|
172
172
|
})) && !!profile && /*#__PURE__*/_jsx(UserMenuWrapper, {
|
|
173
173
|
ref: userMenuRef,
|
|
174
|
-
offsetRight: avatarRight,
|
|
174
|
+
$offsetRight: avatarRight,
|
|
175
175
|
"data-testid": "testUserMenuWrapper",
|
|
176
176
|
children: /*#__PURE__*/_jsx(UserMenu, _objectSpread(_objectSpread({}, profile), {}, {
|
|
177
177
|
show: showUserMenu,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalNavigationBar.js","names":["React","styled","Logo","MainMenu","PageWidth","COLORS","BREAKPOINTS","RightSideNav","MobileMenu","SystemIcons","UserMenu","fadeIn","fadeOut","Menu","MobileMenuWrapper","Z_INDEXES","IconButton","DesktopActions","usePreviousImmediate","useClickOutsideRef","hasWindow","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","HeaderWrapper","header","_templateObject","_taggedTemplateLiteral","props","getColor","theme","sticky_menu","MEDIUM","LARGE","RowLayout","div","_templateObject2","HamburgerButton","_templateObject3","RightSide","_templateObject4","MobileMenuBackdrop","_templateObject5","backdrop","MobileWrapper","_templateObject6","UserMenuWrapper","_templateObject7","offsetRight","concat","window","innerWidth","GlobalNavigationBar","_ref","_actionsRef$current","_actionsRef$current$b","_actionsRef$current$b2","_actionsRef$current$b3","_desktop$items","_desktop$buttons","name","isAuthenticated","logo","profile","mobile","desktop","testId","_ref$useMaxWidth","useMaxWidth","maxWidth","profileComponent","_ref$border","border","_React$useState","useState","_React$useState2","_slicedToArray","showMobileMenu","setShowMobileMenu","wasMobileMenuOpen","_React$useState3","_React$useState4","showUserMenu","setShowUserMenu","actionsRef","useRef","profileButtonRef","current","buttons","find","a","type","ref","mobileMenuButtonRef","rightSideRef","_React$useState5","_React$useState6","avatarRight","setAvatarRight","userMenuRef","mobileMenuRef","useEffect","handleResize","_profileButtonRef$cur","_profileButtonRef$cur2","profileRightOffset","getBoundingClientRect","right","addEventListener","removeEventListener","children","className","unsetMargin","showBetaTag","onClick","to","items","filter","pinned","reverseRightSideOrder","map","x","action","onShowUserMenu","user","hidden","shape","variant","size","role","_objectSpread","show","onClose","undefined","some","onHideUserMenu","propTypes","_pt","bool","number","string","func","node"],"sources":["../../src/GlobalNavigationBar/GlobalNavigationBar.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\n\r\nimport Logo from './Logo';\r\nimport MainMenu from './desktop/MainMenu';\r\nimport {PageWidth} from '../Layouts';\r\nimport {COLORS, BREAKPOINTS} from '../styles';\r\nimport RightSideNav from './desktop/RightSideNav';\r\nimport MobileMenu from './mobile/MobileMenu';\r\nimport {SystemIcons} from '../icons';\r\nimport UserMenu from './desktop/UserMenu';\r\nimport {fadeIn, fadeOut, Menu as MobileMenuWrapper} from './mobile/CommonStyles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {\r\n DesktopNavigationMenuProps, MenuNavigationItemTypeItem, MenuProfileButton,\r\n MobileNavigationMenuProps,\r\n ProfileMenu\r\n} from './types';\r\nimport {IconButton} from '../Button';\r\nimport DesktopActions, {DesktopActionsRef} from './desktop/DesktopActions';\r\nimport {usePreviousImmediate} from 'rooks';\r\nimport {useClickOutsideRef} from '../common';\r\nimport { hasWindow } from '../utils/utils';\r\n\r\nconst HeaderWrapper = styled.header`\r\n background: white;\r\n box-sizing: border-box;\r\n \r\n &.border:after{\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n right: 0;\r\n bottom: -1px;\r\n height: 1px;\r\n background: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n z-index: 5;\r\n }\r\n\r\n z-index: ${Z_INDEXES.sticky_menu};\r\n position: relative;\r\n\r\n height: 48px;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n height: 64px;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n height: 80px;\r\n }\r\n\r\n @media all and (-ms-high-contrast: none) {\r\n height: auto;\r\n }\r\n\r\n @media print {\r\n border-bottom: none;\r\n }\r\n`;\r\n\r\nconst RowLayout = styled.div`\r\n display: flex;\r\n align-items: center;\r\n`;\r\n\r\n\r\nconst HamburgerButton = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none;\r\n }\r\n`;\r\n\r\nconst RightSide = styled.div`\r\n display: flex;\r\n align-items: center;\r\n\r\n margin: 0 0 0 auto;\r\n\r\n &.reverse {\r\n ${HamburgerButton} {\r\n order: -1;\r\n }\r\n\r\n flex-direction: row-reverse;\r\n }\r\n`;\r\n\r\nconst MobileMenuBackdrop = styled.div`\r\n background: rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n position: fixed;\r\n left: 0;\r\n top: 0;\r\n height: 100%;\r\n width: 100%;\r\n overflow: hidden;\r\n z-index: ${Z_INDEXES.backdrop};\r\n visibility: hidden;\r\n\r\n &.open {\r\n visibility: visible;\r\n animation: ${fadeIn} 0.3s ease-in-out;\r\n }\r\n\r\n &.closed {\r\n visibility: hidden;\r\n animation: ${fadeOut} 0.3s ease-in-out;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n visibility: hidden !important;\r\n }\r\n`;\r\n\r\nconst MobileWrapper = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none !important;\r\n }\r\n`;\r\n\r\n\r\nconst UserMenuWrapper = styled.div<{ offsetRight?: number }>`\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n display: flex;\r\n position: absolute;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n top: 80px;\r\n right: ${(props) => (props.offsetRight && hasWindow() ? `${window.innerWidth - props.offsetRight + 296}px` : '10%')};\r\n }\r\n`;\r\n\r\n\r\n\r\ntype GlobalNavigationBarProps = {\r\n isAuthenticated?: boolean;\r\n useMaxWidth?: boolean;\r\n maxWidth?: number;\r\n\r\n name?: string;\r\n logo?: { onClick?: () => void; to?: string; showBetaTag?: boolean; };\r\n\r\n profile?: ProfileMenu;\r\n\r\n mobile?: MobileNavigationMenuProps;\r\n desktop?: DesktopNavigationMenuProps;\r\n\r\n testId?: string;\r\n\r\n profileComponent?: React.ReactNode\r\n border?: boolean;\r\n};\r\n\r\n/**\r\n * @param props\r\n * @constructor\r\n * @description This component is a global navigation header bar\r\n */\r\nconst GlobalNavigationBar = ({\r\n name,\r\n isAuthenticated,\r\n logo,\r\n profile,\r\n mobile,\r\n desktop,\r\n testId,\r\n useMaxWidth = true,\r\n maxWidth,\r\n profileComponent,\r\n border = true\r\n }: GlobalNavigationBarProps): React.ReactElement<GlobalNavigationBarProps> => {\r\n const [showMobileMenu, setShowMobileMenu] = React.useState(false);\r\n const wasMobileMenuOpen = usePreviousImmediate(showMobileMenu);\r\n\r\n const [showUserMenu, setShowUserMenu] = React.useState(false);\r\n\r\n const actionsRef = React.useRef<DesktopActionsRef>(null);\r\n const profileButtonRef = React.useRef<HTMLButtonElement | null>() as React.MutableRefObject<HTMLButtonElement | null | undefined>;\r\n profileButtonRef.current = actionsRef?.current?.buttons?.find(a => a.type === 'profile')?.ref?.current;\r\n\r\n const mobileMenuButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const rightSideRef = React.useRef(null);\r\n const [avatarRight, setAvatarRight] = React.useState<number>(0);\r\n\r\n\r\n const userMenuRef = useClickOutsideRef(() => setShowUserMenu(false), [profileButtonRef]);\r\n const mobileMenuRef = useClickOutsideRef(() => setShowMobileMenu(false), [mobileMenuButtonRef]);\r\n\r\n React.useEffect(() => {\r\n if (!profileButtonRef.current) return;\r\n\r\n const handleResize = () => {\r\n const profileRightOffset = profileButtonRef.current?.getBoundingClientRect()?.right;\r\n setAvatarRight(profileRightOffset || 0);\r\n };\r\n\r\n handleResize();\r\n window.addEventListener('resize', handleResize);\r\n return () => window.removeEventListener('resize', handleResize);\r\n }, [profileButtonRef.current]);\r\n\r\n\r\n return (\r\n <>\r\n <HeaderWrapper data-testid={testId} className={border ? 'border' : ''}>\r\n <PageWidth useMaxWidth={useMaxWidth} maxWidth={maxWidth} unsetMargin={true}>\r\n <RowLayout>\r\n <Logo name={name || ''} showBetaTag={logo?.showBetaTag} onClick={logo?.onClick} to={logo?.to}/>\r\n {\r\n isAuthenticated &&\r\n <MainMenu items={desktop?.items.filter(a => !a.pinned) || []} rightSideRef={rightSideRef}/>\r\n }\r\n <RightSide className={`${desktop?.reverseRightSideOrder ? 'reverse' : ''}`}\r\n ref={rightSideRef}>\r\n <RightSideNav items={desktop?.items?.filter(a => a.pinned && a.type == 'item').map(x => x as MenuNavigationItemTypeItem)} action={desktop?.action}/>\r\n <MobileWrapper>\r\n {!!profileComponent && profileComponent }\r\n </MobileWrapper>\r\n\r\n <DesktopActions ref={actionsRef}\r\n buttons={desktop?.buttons}\r\n onShowUserMenu={() => setShowUserMenu(!showUserMenu)}\r\n user={profile?.user}\r\n profileComponent= {profileComponent}\r\n />\r\n <HamburgerButton hidden={!isAuthenticated}>\r\n <IconButton action={() => setShowMobileMenu(!showMobileMenu)}\r\n ref={mobileMenuButtonRef}\r\n shape={'circular'}\r\n variant={'secondary'}>\r\n <SystemIcons.Menu size=\"24px\"/>\r\n </IconButton>\r\n </HamburgerButton>\r\n </RightSide>\r\n </RowLayout>\r\n </PageWidth>\r\n </HeaderWrapper>\r\n <MobileMenuBackdrop className={showMobileMenu ? 'open' : !showUserMenu && wasMobileMenuOpen ? 'closed' : ''}>\r\n <MobileMenuWrapper ref={mobileMenuRef}\r\n role=\"menu\"\r\n aria-labelledby=\"UserMenuButton\">\r\n <MobileMenu {...mobile}\r\n show={showMobileMenu}\r\n onClose={() => setShowMobileMenu(false)}\r\n profile={!profileComponent ? profile : undefined}/>\r\n </MobileMenuWrapper>\r\n </MobileMenuBackdrop>\r\n {\r\n desktop?.buttons?.some(a => a.type === 'profile') && !!profile &&\r\n <UserMenuWrapper ref={userMenuRef}\r\n offsetRight={avatarRight}\r\n data-testid=\"testUserMenuWrapper\">\r\n <UserMenu {...profile}\r\n show={showUserMenu}\r\n onHideUserMenu={() => setShowUserMenu(false)}/>\r\n </UserMenuWrapper>\r\n }\r\n </>\r\n );\r\n};\r\n\r\nexport default GlobalNavigationBar;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"GlobalNavigationBar.js","names":["React","styled","Logo","MainMenu","PageWidth","COLORS","BREAKPOINTS","RightSideNav","MobileMenu","SystemIcons","UserMenu","fadeIn","fadeOut","Menu","MobileMenuWrapper","Z_INDEXES","IconButton","DesktopActions","usePreviousImmediate","useClickOutsideRef","hasWindow","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","HeaderWrapper","header","_templateObject","_taggedTemplateLiteral","props","getColor","theme","sticky_menu","MEDIUM","LARGE","RowLayout","div","_templateObject2","HamburgerButton","_templateObject3","RightSide","_templateObject4","MobileMenuBackdrop","_templateObject5","backdrop","MobileWrapper","_templateObject6","UserMenuWrapper","_templateObject7","$offsetRight","concat","window","innerWidth","GlobalNavigationBar","_ref","_actionsRef$current","_actionsRef$current$b","_actionsRef$current$b2","_actionsRef$current$b3","_desktop$items","_desktop$buttons","name","isAuthenticated","logo","profile","mobile","desktop","testId","_ref$useMaxWidth","useMaxWidth","maxWidth","profileComponent","_ref$border","border","_React$useState","useState","_React$useState2","_slicedToArray","showMobileMenu","setShowMobileMenu","wasMobileMenuOpen","_React$useState3","_React$useState4","showUserMenu","setShowUserMenu","actionsRef","useRef","profileButtonRef","current","buttons","find","a","type","ref","mobileMenuButtonRef","rightSideRef","_React$useState5","_React$useState6","avatarRight","setAvatarRight","userMenuRef","mobileMenuRef","useEffect","handleResize","_profileButtonRef$cur","_profileButtonRef$cur2","profileRightOffset","getBoundingClientRect","right","addEventListener","removeEventListener","children","className","$useMaxWidth","$maxWidth","$unsetMargin","showBetaTag","onClick","to","items","filter","pinned","reverseRightSideOrder","map","x","action","onShowUserMenu","user","hidden","shape","variant","size","role","_objectSpread","show","onClose","undefined","some","onHideUserMenu","propTypes","_pt","bool","number","string","func","node"],"sources":["../../src/GlobalNavigationBar/GlobalNavigationBar.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\n\r\nimport Logo from './Logo';\r\nimport MainMenu from './desktop/MainMenu';\r\nimport {PageWidth} from '../Layouts';\r\nimport {COLORS, BREAKPOINTS} from '../styles';\r\nimport RightSideNav from './desktop/RightSideNav';\r\nimport MobileMenu from './mobile/MobileMenu';\r\nimport {SystemIcons} from '../icons';\r\nimport UserMenu from './desktop/UserMenu';\r\nimport {fadeIn, fadeOut, Menu as MobileMenuWrapper} from './mobile/CommonStyles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {\r\n DesktopNavigationMenuProps, MenuNavigationItemTypeItem, MenuProfileButton,\r\n MobileNavigationMenuProps,\r\n ProfileMenu\r\n} from './types';\r\nimport {IconButton} from '../Button';\r\nimport DesktopActions, {DesktopActionsRef} from './desktop/DesktopActions';\r\nimport {usePreviousImmediate} from 'rooks';\r\nimport {useClickOutsideRef} from '../common';\r\nimport { hasWindow } from '../utils/utils';\r\n\r\nconst HeaderWrapper = styled.header`\r\n background: white;\r\n box-sizing: border-box;\r\n \r\n &.border:after{\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n right: 0;\r\n bottom: -1px;\r\n height: 1px;\r\n background: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n z-index: 5;\r\n }\r\n\r\n z-index: ${Z_INDEXES.sticky_menu};\r\n position: relative;\r\n\r\n height: 48px;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n height: 64px;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n height: 80px;\r\n }\r\n\r\n @media all and (-ms-high-contrast: none) {\r\n height: auto;\r\n }\r\n\r\n @media print {\r\n border-bottom: none;\r\n }\r\n`;\r\n\r\nconst RowLayout = styled.div`\r\n display: flex;\r\n align-items: center;\r\n`;\r\n\r\n\r\nconst HamburgerButton = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none;\r\n }\r\n`;\r\n\r\nconst RightSide = styled.div`\r\n display: flex;\r\n align-items: center;\r\n\r\n margin: 0 0 0 auto;\r\n\r\n &.reverse {\r\n ${HamburgerButton} {\r\n order: -1;\r\n }\r\n\r\n flex-direction: row-reverse;\r\n }\r\n`;\r\n\r\nconst MobileMenuBackdrop = styled.div`\r\n background: rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n position: fixed;\r\n left: 0;\r\n top: 0;\r\n height: 100%;\r\n width: 100%;\r\n overflow: hidden;\r\n z-index: ${Z_INDEXES.backdrop};\r\n visibility: hidden;\r\n\r\n &.open {\r\n visibility: visible;\r\n animation: ${fadeIn} 0.3s ease-in-out;\r\n }\r\n\r\n &.closed {\r\n visibility: hidden;\r\n animation: ${fadeOut} 0.3s ease-in-out;\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n visibility: hidden !important;\r\n }\r\n`;\r\n\r\nconst MobileWrapper = styled.div`\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: none !important;\r\n }\r\n`;\r\n\r\n\r\nconst UserMenuWrapper = styled.div<{ $offsetRight?: number }>`\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n display: flex;\r\n position: absolute;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n top: 80px;\r\n right: ${(props) => (props.$offsetRight && hasWindow() ? `${window.innerWidth - props.$offsetRight + 296}px` : '10%')};\r\n }\r\n`;\r\n\r\n\r\n\r\ntype GlobalNavigationBarProps = {\r\n isAuthenticated?: boolean;\r\n useMaxWidth?: boolean;\r\n maxWidth?: number;\r\n\r\n name?: string;\r\n logo?: { onClick?: () => void; to?: string; showBetaTag?: boolean; };\r\n\r\n profile?: ProfileMenu;\r\n\r\n mobile?: MobileNavigationMenuProps;\r\n desktop?: DesktopNavigationMenuProps;\r\n\r\n testId?: string;\r\n\r\n profileComponent?: React.ReactNode\r\n border?: boolean;\r\n};\r\n\r\n/**\r\n * @param props\r\n * @constructor\r\n * @description This component is a global navigation header bar\r\n */\r\nconst GlobalNavigationBar = ({\r\n name,\r\n isAuthenticated,\r\n logo,\r\n profile,\r\n mobile,\r\n desktop,\r\n testId,\r\n useMaxWidth = true,\r\n maxWidth,\r\n profileComponent,\r\n border = true\r\n }: GlobalNavigationBarProps): React.ReactElement<GlobalNavigationBarProps> => {\r\n const [showMobileMenu, setShowMobileMenu] = React.useState(false);\r\n const wasMobileMenuOpen = usePreviousImmediate(showMobileMenu);\r\n\r\n const [showUserMenu, setShowUserMenu] = React.useState(false);\r\n\r\n const actionsRef = React.useRef<DesktopActionsRef>(null);\r\n const profileButtonRef = React.useRef<HTMLButtonElement | null>() as React.MutableRefObject<HTMLButtonElement | null | undefined>;\r\n profileButtonRef.current = actionsRef?.current?.buttons?.find(a => a.type === 'profile')?.ref?.current;\r\n\r\n const mobileMenuButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const rightSideRef = React.useRef(null);\r\n const [avatarRight, setAvatarRight] = React.useState<number>(0);\r\n\r\n\r\n const userMenuRef = useClickOutsideRef(() => setShowUserMenu(false), [profileButtonRef]);\r\n const mobileMenuRef = useClickOutsideRef(() => setShowMobileMenu(false), [mobileMenuButtonRef]);\r\n\r\n React.useEffect(() => {\r\n if (!profileButtonRef.current) return;\r\n\r\n const handleResize = () => {\r\n const profileRightOffset = profileButtonRef.current?.getBoundingClientRect()?.right;\r\n setAvatarRight(profileRightOffset || 0);\r\n };\r\n\r\n handleResize();\r\n window.addEventListener('resize', handleResize);\r\n return () => window.removeEventListener('resize', handleResize);\r\n }, [profileButtonRef.current]);\r\n\r\n\r\n return (\r\n <>\r\n <HeaderWrapper data-testid={testId} className={border ? 'border' : ''}>\r\n <PageWidth $useMaxWidth={useMaxWidth} $maxWidth={maxWidth} $unsetMargin={true}>\r\n <RowLayout>\r\n <Logo name={name || ''} showBetaTag={logo?.showBetaTag} onClick={logo?.onClick} to={logo?.to}/>\r\n {\r\n isAuthenticated &&\r\n <MainMenu items={desktop?.items.filter(a => !a.pinned) || []} rightSideRef={rightSideRef}/>\r\n }\r\n <RightSide className={`${desktop?.reverseRightSideOrder ? 'reverse' : ''}`}\r\n ref={rightSideRef}>\r\n <RightSideNav items={desktop?.items?.filter(a => a.pinned && a.type == 'item').map(x => x as MenuNavigationItemTypeItem)} action={desktop?.action}/>\r\n <MobileWrapper>\r\n {!!profileComponent && profileComponent }\r\n </MobileWrapper>\r\n\r\n <DesktopActions ref={actionsRef}\r\n buttons={desktop?.buttons}\r\n onShowUserMenu={() => setShowUserMenu(!showUserMenu)}\r\n user={profile?.user}\r\n profileComponent= {profileComponent}\r\n />\r\n <HamburgerButton hidden={!isAuthenticated}>\r\n <IconButton action={() => setShowMobileMenu(!showMobileMenu)}\r\n ref={mobileMenuButtonRef}\r\n shape={'circular'}\r\n variant={'secondary'}>\r\n <SystemIcons.Menu size=\"24px\"/>\r\n </IconButton>\r\n </HamburgerButton>\r\n </RightSide>\r\n </RowLayout>\r\n </PageWidth>\r\n </HeaderWrapper>\r\n <MobileMenuBackdrop className={showMobileMenu ? 'open' : !showUserMenu && wasMobileMenuOpen ? 'closed' : ''}>\r\n <MobileMenuWrapper ref={mobileMenuRef}\r\n role=\"menu\"\r\n aria-labelledby=\"UserMenuButton\">\r\n <MobileMenu {...mobile}\r\n show={showMobileMenu}\r\n onClose={() => setShowMobileMenu(false)}\r\n profile={!profileComponent ? profile : undefined}/>\r\n </MobileMenuWrapper>\r\n </MobileMenuBackdrop>\r\n {\r\n desktop?.buttons?.some(a => a.type === 'profile') && !!profile &&\r\n <UserMenuWrapper ref={userMenuRef}\r\n $offsetRight={avatarRight}\r\n data-testid=\"testUserMenuWrapper\">\r\n <UserMenu {...profile}\r\n show={showUserMenu}\r\n onHideUserMenu={() => setShowUserMenu(false)}/>\r\n </UserMenuWrapper>\r\n }\r\n </>\r\n );\r\n};\r\n\r\nexport default GlobalNavigationBar;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -25,12 +25,12 @@ var LogoContainer = _styledComponents["default"].div(_templateObject2 || (_templ
|
|
|
25
25
|
var Name = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 8px;\n padding-left: 8px;\n border-left: 1px solid ", ";\n letter-spacing: -0.02em;\n max-width: 200px;\n \n white-space: nowrap;\n overflow: hidden;\n\n ", "\n\n font-weight: 300 !important;\n line-height: 24px !important;\n\n ", " {\n ", ";\n }\n\n ", " {\n margin-left: 12px;\n padding-left: 12px;\n }\n"])), function (props) {
|
|
26
26
|
return props.$color || _styles.COLORS.getColor('black', props.theme);
|
|
27
27
|
}, function (props) {
|
|
28
|
-
return props
|
|
28
|
+
return props.$noSizeChangeOnMobile ? (0, _styles.ComponentMStyling)(_styles.ComponentTextStyle.Regular, props.$color || _styles.COLORS.getColor('black', props.theme)) : (0, _styles.ComponentXSStyling)(_styles.ComponentTextStyle.Regular, props.$color || _styles.COLORS.getColor('black', props.theme));
|
|
29
29
|
}, _styles.BREAKPOINTS.MEDIUM, function (props) {
|
|
30
30
|
return (0, _styles.ComponentMStyling)(_styles.ComponentTextStyle.Regular, props.$color || _styles.COLORS.getColor('black', props.theme));
|
|
31
31
|
}, _styles.BREAKPOINTS.LARGE);
|
|
32
32
|
var BetaTag = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n padding: 4px 8px;\n margin-left: 8px;\n margin-top: 2px;\n border-left: none;\n border-radius: 2px;\n\n ", "\n"])), function (props) {
|
|
33
|
-
return props
|
|
33
|
+
return props.$backgroundColor || _styles.COLORS.getColor('accent2_500', props.theme);
|
|
34
34
|
}, function (props) {
|
|
35
35
|
return (0, _styles.ComponentXSStyling)(_styles.ComponentTextStyle.UppercaseBold, props.$color || _styles.COLORS.getColor('white', props.theme));
|
|
36
36
|
});
|
|
@@ -58,10 +58,10 @@ var Logo = function Logo(_ref) {
|
|
|
58
58
|
$color: color,
|
|
59
59
|
children: [color === _styles.COLORS.getColor('white', theme) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_assets.LaerdalWhiteLogo, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_assets.LaerdalLogo, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(Name, {
|
|
60
60
|
$color: color,
|
|
61
|
-
noSizeChangeOnMobile: noSizeChangeOnMobile || false,
|
|
61
|
+
$noSizeChangeOnMobile: noSizeChangeOnMobile || false,
|
|
62
62
|
children: name
|
|
63
63
|
}), showBetaTag && /*#__PURE__*/(0, _jsxRuntime.jsx)(BetaTag, {
|
|
64
|
-
backgroundColor: betaTagBackgroundColor,
|
|
64
|
+
$backgroundColor: betaTagBackgroundColor,
|
|
65
65
|
$color: betaTagColor,
|
|
66
66
|
children: "BETA"
|
|
67
67
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logo.cjs","names":["React","_interopRequireWildcard","require","_reactRouterDom","_styledComponents","_assets","_styles","_common","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","StyledLink","styled","Link","_taggedTemplateLiteral2","props","$color","BREAKPOINTS","MEDIUM","LogoContainer","div","LARGE","focusStyles","invertedFocusStyles","Name","span","COLORS","getColor","theme","noSizeChangeOnMobile","ComponentMStyling","ComponentTextStyle","Regular","ComponentXSStyling","BetaTag","backgroundColor","UppercaseBold","Logo","_ref","name","showBetaTag","onClick","to","color","betaTagBackgroundColor","betaTagColor","inverted","useTheme","jsx","className","children","jsxs","onMouseDown","defaultOnMouseDownHandler","LaerdalWhiteLogo","LaerdalLogo","propTypes","_propTypes","string","isRequired","bool","func","_default","exports"],"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { LaerdalLogo, LaerdalWhiteLogo } from '../assets';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles, invertedFocusStyles} from '../styles';\r\nimport { ComponentMStyling, ComponentXSStyling } from '../styles';\r\nimport {defaultOnMouseDownHandler} from '../common';\r\n\r\nconst StyledLink = styled(Link)<{ $color?: string }>`\r\n text-align: center;\r\n text-decoration: none;\r\n display: flex;\r\n align-items: center;\r\n &:focus-within {\r\n outline: none;\r\n }\r\n svg {\r\n width: 66px;\r\n height: 36px;\r\n color: ${(props) => props.$color};\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 88px;\r\n height: 48px;\r\n }\r\n }\r\n`;\r\n\r\nconst LogoContainer = styled.div`\r\n display: flex;\r\n max-width: calc(100% - 48px);\r\n overflow: hidden;\r\n align-items: center;\r\n height: 40px;\r\n box-sizing: border-box;\r\n padding: 24px 0;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n margin-top: 8px;\r\n margin-bottom: 7px;\r\n }\r\n\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n\r\n &.inverted:focus-within {\r\n ${invertedFocusStyles}\r\n }\r\n`;\r\n\r\nconst Name = styled.span<{ $color?: string; noSizeChangeOnMobile: boolean }>`\r\n margin-left: 8px;\r\n padding-left: 8px;\r\n border-left: 1px solid ${(props) => props.$color || COLORS.getColor('black', props.theme)};\r\n letter-spacing: -0.02em;\r\n max-width: 200px;\r\n \r\n white-space: nowrap;\r\n overflow: hidden;\r\n\r\n ${(props) =>\r\n props
|
|
1
|
+
{"version":3,"file":"Logo.cjs","names":["React","_interopRequireWildcard","require","_reactRouterDom","_styledComponents","_assets","_styles","_common","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","StyledLink","styled","Link","_taggedTemplateLiteral2","props","$color","BREAKPOINTS","MEDIUM","LogoContainer","div","LARGE","focusStyles","invertedFocusStyles","Name","span","COLORS","getColor","theme","$noSizeChangeOnMobile","ComponentMStyling","ComponentTextStyle","Regular","ComponentXSStyling","BetaTag","$backgroundColor","UppercaseBold","Logo","_ref","name","showBetaTag","onClick","to","color","noSizeChangeOnMobile","betaTagBackgroundColor","betaTagColor","inverted","useTheme","jsx","className","children","jsxs","onMouseDown","defaultOnMouseDownHandler","LaerdalWhiteLogo","LaerdalLogo","propTypes","_propTypes","string","isRequired","bool","func","_default","exports"],"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { LaerdalLogo, LaerdalWhiteLogo } from '../assets';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles, invertedFocusStyles} from '../styles';\r\nimport { ComponentMStyling, ComponentXSStyling } from '../styles';\r\nimport {defaultOnMouseDownHandler} from '../common';\r\n\r\nconst StyledLink = styled(Link)<{ $color?: string }>`\r\n text-align: center;\r\n text-decoration: none;\r\n display: flex;\r\n align-items: center;\r\n &:focus-within {\r\n outline: none;\r\n }\r\n svg {\r\n width: 66px;\r\n height: 36px;\r\n color: ${(props) => props.$color};\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 88px;\r\n height: 48px;\r\n }\r\n }\r\n`;\r\n\r\nconst LogoContainer = styled.div`\r\n display: flex;\r\n max-width: calc(100% - 48px);\r\n overflow: hidden;\r\n align-items: center;\r\n height: 40px;\r\n box-sizing: border-box;\r\n padding: 24px 0;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n margin-top: 8px;\r\n margin-bottom: 7px;\r\n }\r\n\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n\r\n &.inverted:focus-within {\r\n ${invertedFocusStyles}\r\n }\r\n`;\r\n\r\nconst Name = styled.span<{ $color?: string; $noSizeChangeOnMobile: boolean }>`\r\n margin-left: 8px;\r\n padding-left: 8px;\r\n border-left: 1px solid ${(props) => props.$color || COLORS.getColor('black', props.theme)};\r\n letter-spacing: -0.02em;\r\n max-width: 200px;\r\n \r\n white-space: nowrap;\r\n overflow: hidden;\r\n\r\n ${(props) =>\r\n props.$noSizeChangeOnMobile\r\n ? ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme))\r\n : ComponentXSStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme))}\r\n\r\n font-weight: 300 !important;\r\n line-height: 24px !important;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ${(props) => ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme))};\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n margin-left: 12px;\r\n padding-left: 12px;\r\n }\r\n`;\r\n\r\nconst BetaTag = styled.span<{ $backgroundColor?: string; $color?: string }>`\r\n background-color: ${(props) => props.$backgroundColor || COLORS.getColor('accent2_500', props.theme)};\r\n padding: 4px 8px;\r\n margin-left: 8px;\r\n margin-top: 2px;\r\n border-left: none;\r\n border-radius: 2px;\r\n\r\n ${(props) => ComponentXSStyling(ComponentTextStyle.UppercaseBold, props.$color || COLORS.getColor('white', props.theme))}\r\n`;\r\n\r\ntype LogoProps = {\r\n name: string;\r\n showBetaTag?: boolean;\r\n onClick?: () => void;\r\n to?: string;\r\n color?: string;\r\n noSizeChangeOnMobile?: boolean;\r\n betaTagBackgroundColor?: string;\r\n betaTagColor?: string;\r\n inverted?: boolean;\r\n};\r\n\r\nconst Logo: React.FunctionComponent<LogoProps> = ({ name, showBetaTag, onClick, to, color, noSizeChangeOnMobile, betaTagBackgroundColor, betaTagColor, inverted }: LogoProps) => {\r\n const theme = useTheme();\r\n return (\r\n <LogoContainer className={inverted ? 'inverted' : ''}>\r\n <StyledLink\r\n to={to || '/'}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onClick={() => {\r\n if (onClick) {\r\n onClick();\r\n }\r\n }}\r\n $color={color}>\r\n {color === COLORS.getColor('white', theme) ? <LaerdalWhiteLogo /> : <LaerdalLogo />}\r\n <Name $color={color} $noSizeChangeOnMobile={noSizeChangeOnMobile || false}>\r\n {name}\r\n </Name>\r\n {showBetaTag && (\r\n <BetaTag $backgroundColor={betaTagBackgroundColor} $color={betaTagColor}>\r\n BETA\r\n </BetaTag>\r\n )}\r\n </StyledLink>\r\n </LogoContainer>\r\n );\r\n};\r\n\r\nexport default Logo;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -17,12 +17,12 @@ var LogoContainer = styled.div(_templateObject2 || (_templateObject2 = _taggedTe
|
|
|
17
17
|
var Name = styled.span(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n margin-left: 8px;\n padding-left: 8px;\n border-left: 1px solid ", ";\n letter-spacing: -0.02em;\n max-width: 200px;\n \n white-space: nowrap;\n overflow: hidden;\n\n ", "\n\n font-weight: 300 !important;\n line-height: 24px !important;\n\n ", " {\n ", ";\n }\n\n ", " {\n margin-left: 12px;\n padding-left: 12px;\n }\n"])), function (props) {
|
|
18
18
|
return props.$color || COLORS.getColor('black', props.theme);
|
|
19
19
|
}, function (props) {
|
|
20
|
-
return props
|
|
20
|
+
return props.$noSizeChangeOnMobile ? ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme)) : ComponentXSStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme));
|
|
21
21
|
}, BREAKPOINTS.MEDIUM, function (props) {
|
|
22
22
|
return ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme));
|
|
23
23
|
}, BREAKPOINTS.LARGE);
|
|
24
24
|
var BetaTag = styled.span(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n background-color: ", ";\n padding: 4px 8px;\n margin-left: 8px;\n margin-top: 2px;\n border-left: none;\n border-radius: 2px;\n\n ", "\n"])), function (props) {
|
|
25
|
-
return props
|
|
25
|
+
return props.$backgroundColor || COLORS.getColor('accent2_500', props.theme);
|
|
26
26
|
}, function (props) {
|
|
27
27
|
return ComponentXSStyling(ComponentTextStyle.UppercaseBold, props.$color || COLORS.getColor('white', props.theme));
|
|
28
28
|
});
|
|
@@ -50,10 +50,10 @@ var Logo = function Logo(_ref) {
|
|
|
50
50
|
$color: color,
|
|
51
51
|
children: [color === COLORS.getColor('white', theme) ? /*#__PURE__*/_jsx(LaerdalWhiteLogo, {}) : /*#__PURE__*/_jsx(LaerdalLogo, {}), /*#__PURE__*/_jsx(Name, {
|
|
52
52
|
$color: color,
|
|
53
|
-
noSizeChangeOnMobile: noSizeChangeOnMobile || false,
|
|
53
|
+
$noSizeChangeOnMobile: noSizeChangeOnMobile || false,
|
|
54
54
|
children: name
|
|
55
55
|
}), showBetaTag && /*#__PURE__*/_jsx(BetaTag, {
|
|
56
|
-
backgroundColor: betaTagBackgroundColor,
|
|
56
|
+
$backgroundColor: betaTagBackgroundColor,
|
|
57
57
|
$color: betaTagColor,
|
|
58
58
|
children: "BETA"
|
|
59
59
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logo.js","names":["React","Link","styled","useTheme","LaerdalLogo","LaerdalWhiteLogo","BREAKPOINTS","COLORS","ComponentTextStyle","focusStyles","invertedFocusStyles","ComponentMStyling","ComponentXSStyling","defaultOnMouseDownHandler","jsx","_jsx","jsxs","_jsxs","StyledLink","_templateObject","_taggedTemplateLiteral","props","$color","MEDIUM","LogoContainer","div","_templateObject2","LARGE","Name","span","_templateObject3","getColor","theme","noSizeChangeOnMobile","Regular","BetaTag","_templateObject4","backgroundColor","UppercaseBold","Logo","_ref","name","showBetaTag","onClick","to","color","betaTagBackgroundColor","betaTagColor","inverted","className","children","onMouseDown","propTypes","_pt","string","isRequired","bool","func"],"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { LaerdalLogo, LaerdalWhiteLogo } from '../assets';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles, invertedFocusStyles} from '../styles';\r\nimport { ComponentMStyling, ComponentXSStyling } from '../styles';\r\nimport {defaultOnMouseDownHandler} from '../common';\r\n\r\nconst StyledLink = styled(Link)<{ $color?: string }>`\r\n text-align: center;\r\n text-decoration: none;\r\n display: flex;\r\n align-items: center;\r\n &:focus-within {\r\n outline: none;\r\n }\r\n svg {\r\n width: 66px;\r\n height: 36px;\r\n color: ${(props) => props.$color};\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 88px;\r\n height: 48px;\r\n }\r\n }\r\n`;\r\n\r\nconst LogoContainer = styled.div`\r\n display: flex;\r\n max-width: calc(100% - 48px);\r\n overflow: hidden;\r\n align-items: center;\r\n height: 40px;\r\n box-sizing: border-box;\r\n padding: 24px 0;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n margin-top: 8px;\r\n margin-bottom: 7px;\r\n }\r\n\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n\r\n &.inverted:focus-within {\r\n ${invertedFocusStyles}\r\n }\r\n`;\r\n\r\nconst Name = styled.span<{ $color?: string; noSizeChangeOnMobile: boolean }>`\r\n margin-left: 8px;\r\n padding-left: 8px;\r\n border-left: 1px solid ${(props) => props.$color || COLORS.getColor('black', props.theme)};\r\n letter-spacing: -0.02em;\r\n max-width: 200px;\r\n \r\n white-space: nowrap;\r\n overflow: hidden;\r\n\r\n ${(props) =>\r\n props
|
|
1
|
+
{"version":3,"file":"Logo.js","names":["React","Link","styled","useTheme","LaerdalLogo","LaerdalWhiteLogo","BREAKPOINTS","COLORS","ComponentTextStyle","focusStyles","invertedFocusStyles","ComponentMStyling","ComponentXSStyling","defaultOnMouseDownHandler","jsx","_jsx","jsxs","_jsxs","StyledLink","_templateObject","_taggedTemplateLiteral","props","$color","MEDIUM","LogoContainer","div","_templateObject2","LARGE","Name","span","_templateObject3","getColor","theme","$noSizeChangeOnMobile","Regular","BetaTag","_templateObject4","$backgroundColor","UppercaseBold","Logo","_ref","name","showBetaTag","onClick","to","color","noSizeChangeOnMobile","betaTagBackgroundColor","betaTagColor","inverted","className","children","onMouseDown","propTypes","_pt","string","isRequired","bool","func"],"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { LaerdalLogo, LaerdalWhiteLogo } from '../assets';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles, invertedFocusStyles} from '../styles';\r\nimport { ComponentMStyling, ComponentXSStyling } from '../styles';\r\nimport {defaultOnMouseDownHandler} from '../common';\r\n\r\nconst StyledLink = styled(Link)<{ $color?: string }>`\r\n text-align: center;\r\n text-decoration: none;\r\n display: flex;\r\n align-items: center;\r\n &:focus-within {\r\n outline: none;\r\n }\r\n svg {\r\n width: 66px;\r\n height: 36px;\r\n color: ${(props) => props.$color};\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 88px;\r\n height: 48px;\r\n }\r\n }\r\n`;\r\n\r\nconst LogoContainer = styled.div`\r\n display: flex;\r\n max-width: calc(100% - 48px);\r\n overflow: hidden;\r\n align-items: center;\r\n height: 40px;\r\n box-sizing: border-box;\r\n padding: 24px 0;\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n margin-top: 8px;\r\n margin-bottom: 7px;\r\n }\r\n\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n\r\n &.inverted:focus-within {\r\n ${invertedFocusStyles}\r\n }\r\n`;\r\n\r\nconst Name = styled.span<{ $color?: string; $noSizeChangeOnMobile: boolean }>`\r\n margin-left: 8px;\r\n padding-left: 8px;\r\n border-left: 1px solid ${(props) => props.$color || COLORS.getColor('black', props.theme)};\r\n letter-spacing: -0.02em;\r\n max-width: 200px;\r\n \r\n white-space: nowrap;\r\n overflow: hidden;\r\n\r\n ${(props) =>\r\n props.$noSizeChangeOnMobile\r\n ? ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme))\r\n : ComponentXSStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme))}\r\n\r\n font-weight: 300 !important;\r\n line-height: 24px !important;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ${(props) => ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.getColor('black', props.theme))};\r\n }\r\n\r\n ${BREAKPOINTS.LARGE} {\r\n margin-left: 12px;\r\n padding-left: 12px;\r\n }\r\n`;\r\n\r\nconst BetaTag = styled.span<{ $backgroundColor?: string; $color?: string }>`\r\n background-color: ${(props) => props.$backgroundColor || COLORS.getColor('accent2_500', props.theme)};\r\n padding: 4px 8px;\r\n margin-left: 8px;\r\n margin-top: 2px;\r\n border-left: none;\r\n border-radius: 2px;\r\n\r\n ${(props) => ComponentXSStyling(ComponentTextStyle.UppercaseBold, props.$color || COLORS.getColor('white', props.theme))}\r\n`;\r\n\r\ntype LogoProps = {\r\n name: string;\r\n showBetaTag?: boolean;\r\n onClick?: () => void;\r\n to?: string;\r\n color?: string;\r\n noSizeChangeOnMobile?: boolean;\r\n betaTagBackgroundColor?: string;\r\n betaTagColor?: string;\r\n inverted?: boolean;\r\n};\r\n\r\nconst Logo: React.FunctionComponent<LogoProps> = ({ name, showBetaTag, onClick, to, color, noSizeChangeOnMobile, betaTagBackgroundColor, betaTagColor, inverted }: LogoProps) => {\r\n const theme = useTheme();\r\n return (\r\n <LogoContainer className={inverted ? 'inverted' : ''}>\r\n <StyledLink\r\n to={to || '/'}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onClick={() => {\r\n if (onClick) {\r\n onClick();\r\n }\r\n }}\r\n $color={color}>\r\n {color === COLORS.getColor('white', theme) ? <LaerdalWhiteLogo /> : <LaerdalLogo />}\r\n <Name $color={color} $noSizeChangeOnMobile={noSizeChangeOnMobile || false}>\r\n {name}\r\n </Name>\r\n {showBetaTag && (\r\n <BetaTag $backgroundColor={betaTagBackgroundColor} $color={betaTagColor}>\r\n BETA\r\n </BetaTag>\r\n )}\r\n </StyledLink>\r\n </LogoContainer>\r\n );\r\n};\r\n\r\nexport default Logo;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -18,7 +18,6 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
18
18
|
var _NavItem = require("../../NavItem");
|
|
19
19
|
var _icons = require("../../icons");
|
|
20
20
|
var _styles = require("../../styles");
|
|
21
|
-
var _ExtendedMainMenu = require("./ExtendedMainMenu");
|
|
22
21
|
var _SubMenu = require("./SubMenu");
|
|
23
22
|
var _Button = require("../../Button");
|
|
24
23
|
var _common = require("../../common");
|
|
@@ -26,7 +25,7 @@ var _NavItem2 = require("../../NavItem/NavItem");
|
|
|
26
25
|
var _utils = require("../utils");
|
|
27
26
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
28
27
|
var _excluded = ["icon", "to", "exact", "disabled", "external", "action", "label", "note", "pinned"];
|
|
29
|
-
var _templateObject, _templateObject2, _templateObject3
|
|
28
|
+
var _templateObject, _templateObject2, _templateObject3;
|
|
30
29
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
31
30
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
32
31
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -35,17 +34,7 @@ var NavContainer = _styledComponents["default"].div(_templateObject || (_templat
|
|
|
35
34
|
var NavButton = _styledComponents["default"].button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n background: ", ";\n border: 0;\n"])), function (props) {
|
|
36
35
|
return _styles.COLORS.getColor('white', props.theme);
|
|
37
36
|
});
|
|
38
|
-
var
|
|
39
|
-
return props.floatRight ? 'auto' : 'unset';
|
|
40
|
-
}, function (props) {
|
|
41
|
-
return _styles.COLORS.getColor('white', props.theme);
|
|
42
|
-
});
|
|
43
|
-
var ExtendedSection = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n"])));
|
|
44
|
-
var SubMenuWrapper = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n ", " {\n top: ", ";\n left: ", ";\n }\n\n button {\n padding-left: 0px;\n }\n"])), _ExtendedMainMenu.Menu, function (props) {
|
|
45
|
-
return props.topLevel ? '100%' : '0px';
|
|
46
|
-
}, function (props) {
|
|
47
|
-
return props.topLevel ? '0px' : 'calc(100% - 12px)';
|
|
48
|
-
});
|
|
37
|
+
var ExtendedSection = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n"])));
|
|
49
38
|
var ExtendedMenuOption = 'extendedOption';
|
|
50
39
|
var MainMenu = function MainMenu(_ref) {
|
|
51
40
|
var items = _ref.items,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MainMenu.cjs","names":["React","_interopRequireWildcard","require","_reactRouterDom","_styledComponents","_interopRequireDefault","_NavItem","_icons","_styles","_ExtendedMainMenu","_SubMenu","_Button","_common","_NavItem2","_utils","_jsxRuntime","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","NavContainer","styled","div","_taggedTemplateLiteral2","BREAKPOINTS","MEDIUM","NavItemDiv","LARGE","NavButton","button","props","COLORS","getColor","theme","ExtendedMenuWrapper","floatRight","ExtendedSection","SubMenuWrapper","Menu","topLevel","ExtendedMenuOption","MainMenu","_ref","items","rightSideRef","menuButtonRef","useRef","dropdownMenusOpenedArray","mainMenuRef","_React$useState","useState","_React$useState2","_slicedToArray2","numberOfItemsAllowed","setNumberOfItemsAllowed","_React$useState3","_React$useState4","subMenuRefs","setAllSubMenuRefs","extendedMenuOptionRef","createRef","useEffect","map","x","type","undefined","_React$useState5","_React$useState6","forceUpdate","_React$useState7","_React$useState8","activeItem","setActiveItemId","_React$useState9","_React$useState10","focusedItemId","setFocusedItemId","widthOfItem","recalculateNumberOfItemsAllowed","current","_rightSideRef$current","_mainMenuRef$current","number","Math","floor","offsetLeft","onMouseLeave","event","id","_toConsumableArray2","onMouseEnter","existingRefForId","find","concat","window","addEventListener","removeEventListener","onFocus","onKeyDownTop","key","renderItem","item","index","_ref2","icon","to","exact","disabled","external","action","label","note","pinned","rest","_objectWithoutProperties2","jsx","NavItem","as","className","onMouseDown","defaultOnMouseDownHandler","children","NavLink","onClick","existingRef","onKeyDown","code","containsActiveItem","checkIfContainsItem","jsxs","style","position","_item$id","_item$id2","Boolean","role","tabIndex","SystemIcons","ArrowDropDown","size","SubMenu","ariaLabelledBy","ref","onItemFocused","activeItemId","nestPath","onItemStateChanged","state","extended","extendedSectionKeyHandler","stopPropagation","IconButton","slice","variant","shape","MoreHorizontal","propTypes","_propTypes","array","isRequired","_default","exports"],"sources":["../../../src/GlobalNavigationBar/desktop/MainMenu.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { NavLink, useLocation } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\nimport { NavItem } from '../../NavItem';\r\nimport {SystemIcons} from '../../icons';\r\nimport { COLORS, BREAKPOINTS } from '../../styles';\r\nimport { Menu } from './ExtendedMainMenu';\r\nimport { SubMenu } from './SubMenu';\r\nimport { IconButton } from '../../Button';\r\nimport { defaultOnMouseDownHandler } from '../../common';\r\nimport { MenuNavigationItemTypeDesktopGroup, MenuNavigationItemTypeItem } from '../types';\r\nimport { NavItemDiv } from '../../NavItem/NavItem';\r\nimport { checkIfContainsItem } from '../utils';\r\n\r\nconst NavContainer = styled.div`\r\n display: none;\r\n flex-grow: 1;\r\n justify-content: flex-start;\r\n align-items: center;\r\n \r\n padding: 0 16px;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: flex;\r\n }\r\n \r\n ${NavItemDiv} {\r\n cursor: pointer;\r\n }\r\n ${BREAKPOINTS.LARGE} {\r\n padding: 0 32px;\r\n }\r\n\r\n a {\r\n text-decoration: none;\r\n }\r\n`;\r\n\r\nconst NavButton = styled.button`\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n border: 0;\r\n`;\r\n\r\ninterface ExtendedMenuWrapperProps {\r\n floatRight: boolean;\r\n}\r\n\r\nconst ExtendedMenuWrapper = styled.div<ExtendedMenuWrapperProps>`\r\n display: flex;\r\n margin-left: ${(props) => (props.floatRight ? 'auto' : 'unset')};\r\n\r\n position: absolute;\r\n flex-direction: column;\r\n left: 290px;\r\n top: 22px;\r\n\r\n height: 0;\r\n width: 0;\r\n\r\n &:focus-within,\r\n &:hover,\r\n &.open {\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n }\r\n`;\r\n\r\nconst ExtendedSection = styled.div`\r\n position: relative;\r\n`;\r\n\r\nconst SubMenuWrapper = styled.div<{ topLevel: boolean }>`\r\n ${Menu} {\r\n top: ${(props) => (props.topLevel ? '100%' : '0px')};\r\n left: ${(props) => (props.topLevel ? '0px' : 'calc(100% - 12px)')};\r\n }\r\n\r\n button {\r\n padding-left: 0px;\r\n }\r\n`;\r\n\r\nconst ExtendedMenuOption = 'extendedOption';\r\n\r\ntype Props = {\r\n items: (MenuNavigationItemTypeItem | MenuNavigationItemTypeDesktopGroup)[];\r\n rightSideRef?: React.RefObject<HTMLDivElement> | null | undefined;\r\n};\r\n\r\nconst MainMenu = ({ items, rightSideRef }: Props): React.ReactElement<Props> => {\r\n const menuButtonRef = React.useRef<HTMLButtonElement>(null);\r\n //we have to use refs instead of 'state' here, because when onmouseleave is triggered for multiple nested divs, state update is not being updated in between\r\n const dropdownMenusOpenedArray = React.useRef<string[]>([]);\r\n const mainMenuRef: React.RefObject<HTMLDivElement> | null | undefined = React.useRef(null);\r\n const [numberOfItemsAllowed, setNumberOfItemsAllowed] = React.useState<number>(1);\r\n const [subMenuRefs, setAllSubMenuRefs] = React.useState<(React.RefObject<HTMLUListElement> | undefined)[]>([]);\r\n const extendedMenuOptionRef = React.createRef<HTMLUListElement>();\r\n\r\n React.useEffect(() => {\r\n setAllSubMenuRefs(items.map((x) => (x.type == 'desktopgroup' ? React.createRef<HTMLUListElement>() : undefined)));\r\n }, [items]);\r\n\r\n const [, forceUpdate] = React.useState({});\r\n const [activeItem, setActiveItemId] = React.useState<string>('');\r\n const [focusedItemId, setFocusedItemId] = React.useState<string>('');\r\n\r\n const widthOfItem = 120;\r\n const recalculateNumberOfItemsAllowed = () => {\r\n if (rightSideRef?.current && mainMenuRef?.current) {\r\n const number = Math.floor((rightSideRef?.current?.offsetLeft - mainMenuRef?.current?.offsetLeft) / widthOfItem);\r\n if (number !== numberOfItemsAllowed) {\r\n setNumberOfItemsAllowed(number);\r\n }\r\n }\r\n };\r\n\r\n const onMouseLeave = (event: any, id: string) => {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current.filter((x) => x != id)];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n };\r\n\r\n const onMouseEnter = (event: any, id: string) => {\r\n const existingRefForId = dropdownMenusOpenedArray.current.find((x) => x == id);\r\n if (existingRefForId == null) {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current, id];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n recalculateNumberOfItemsAllowed();\r\n // Bind the event listener\r\n window.addEventListener('resize', recalculateNumberOfItemsAllowed);\r\n return () => {\r\n // Unbind the event listener on clean up\r\n window.removeEventListener('resize', recalculateNumberOfItemsAllowed);\r\n };\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n recalculateNumberOfItemsAllowed();\r\n }, [items.length]);\r\n\r\n const onFocus = (event: React.FocusEvent<HTMLDivElement>) => {\r\n //no open dropdowns if top level was entered\r\n dropdownMenusOpenedArray.current = [];\r\n forceUpdate({});\r\n };\r\n\r\n const onKeyDownTop = (event: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (event.key === 'Escape' || event.key === 'Esc') {\r\n dropdownMenusOpenedArray.current = [];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n }\r\n };\r\n\r\n const renderItem = (item: MenuNavigationItemTypeItem | MenuNavigationItemTypeDesktopGroup, index: number) => {\r\n if (index > numberOfItemsAllowed - 2) return null;\r\n if (item.type != 'desktopgroup') {\r\n const { icon, to, exact, disabled, external, action, label, note, pinned, ...rest } = item as MenuNavigationItemTypeItem;\r\n return item?.disabled ? (\r\n <NavItem as={NavButton} className=\"disabled\" key={item.label} onMouseDown={defaultOnMouseDownHandler}>\r\n {item?.label}\r\n </NavItem>\r\n ) : (\r\n <NavItem as={NavLink} onFocus={onFocus} to={to || ''} key={label} onMouseDown={defaultOnMouseDownHandler} onClick={(e: React.MouseEvent) => action && action(e)} {...rest}>\r\n {item?.label}\r\n </NavItem>\r\n );\r\n } else {\r\n const existingRef = dropdownMenusOpenedArray.current.find((x) => x == item.id);\r\n const onClick = () => {\r\n if (existingRef == null) {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current, item.id];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n }\r\n };\r\n const onKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (event.key == 'Enter' || event.code == 'Space') {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current, item.id];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n } \r\n };\r\n\r\n const containsActiveItem = checkIfContainsItem(item, activeItem);\r\n return (\r\n <div\r\n style={{ position: 'relative' }}\r\n onMouseEnter={(event) => onMouseEnter(event, item.id ?? '')}\r\n onMouseLeave={(event) => onMouseLeave(event, item.id ?? '')}>\r\n <NavItem\r\n id={item.id + '_parentOption'}\r\n aria-expanded={Boolean(existingRef)}\r\n aria-activedescendant={containsActiveItem ? activeItem : ''}\r\n aria-controls={item.id}\r\n role=\"listbox\"\r\n onFocus={onFocus}\r\n onKeyDown={onKeyDown}\r\n tabIndex={0}\r\n className={existingRef != null || checkIfContainsItem(item, activeItem) ? 'active' : ''}\r\n key={item.label}\r\n to={null}\r\n onClick={onClick}>\r\n {item?.label} <SystemIcons.ArrowDropDown size=\"24px\" />\r\n </NavItem>\r\n <SubMenu\r\n ariaLabelledBy={item.id + '_parentOption'}\r\n ref={subMenuRefs[index]}\r\n onItemFocused={setFocusedItemId}\r\n focusedItemId={focusedItemId}\r\n activeItemId={activeItem}\r\n nestPath={[item.id]}\r\n onItemStateChanged={(item, state) => {\r\n if (state) {\r\n setActiveItemId(item);\r\n } else if (item == activeItem) setActiveItemId('');\r\n }}\r\n item={item as MenuNavigationItemTypeDesktopGroup}\r\n dropdownMenusOpenedArray={dropdownMenusOpenedArray}\r\n index={index + 1}\r\n topLevel={true}\r\n />\r\n </div>\r\n );\r\n }\r\n };\r\n\r\n\r\n const extended = dropdownMenusOpenedArray.current.find((x) => x == ExtendedMenuOption);\r\n const extendedSectionKeyHandler = (event: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (event.key == 'Enter' || event.code == 'Space') {\r\n event.stopPropagation();\r\n\r\n dropdownMenusOpenedArray.current = [ExtendedMenuOption];\r\n forceUpdate({});\r\n }\r\n };\r\n\r\n return (\r\n <NavContainer role=\"navigation\" className=\"GlobalNavigationMainMenu\" ref={mainMenuRef} onKeyDown={onKeyDownTop}>\r\n {items?.map(renderItem)}\r\n {items.length + 1 > numberOfItemsAllowed && (\r\n <ExtendedSection\r\n onKeyDown={(event) => extendedSectionKeyHandler(event)}\r\n onMouseEnter={(event) => onMouseEnter(event, ExtendedMenuOption)}\r\n onMouseLeave={(event) => onMouseLeave(event, ExtendedMenuOption)}>\r\n <IconButton\r\n id={ExtendedMenuOption + '_parentOption'}\r\n aria-expanded={Boolean(extended)}\r\n aria-activedescendant={checkIfContainsItem({ items: items.slice(numberOfItemsAllowed - 1), id: ExtendedMenuOption }, activeItem) ? activeItem : ''}\r\n aria-controls={ExtendedMenuOption}\r\n role=\"listbox\"\r\n \r\n ref={menuButtonRef} variant={'secondary'} shape={'circular'} action={() => {}}>\r\n <SystemIcons.MoreHorizontal size=\"24px\"/>\r\n </IconButton>\r\n <SubMenu\r\n ariaLabelledBy={ExtendedMenuOption + '_parentOption'}\r\n activeItemId={activeItem}\r\n onItemFocused={setFocusedItemId}\r\n focusedItemId={focusedItemId}\r\n ref={extendedMenuOptionRef}\r\n onItemStateChanged={(item, state) => {\r\n if (state) setActiveItemId(item);\r\n else if (item == activeItem) setActiveItemId('');\r\n }}\r\n nestPath={[ExtendedMenuOption]}\r\n item={{ items: items.slice(numberOfItemsAllowed - 1), id: ExtendedMenuOption }}\r\n topLevel={true}\r\n index={0}\r\n dropdownMenusOpenedArray={dropdownMenusOpenedArray}\r\n />\r\n </ExtendedSection>\r\n )}\r\n </NavContainer>\r\n );\r\n};\r\n\r\nexport default MainMenu;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"MainMenu.cjs","names":["React","_interopRequireWildcard","require","_reactRouterDom","_styledComponents","_interopRequireDefault","_NavItem","_icons","_styles","_SubMenu","_Button","_common","_NavItem2","_utils","_jsxRuntime","_excluded","_templateObject","_templateObject2","_templateObject3","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","NavContainer","styled","div","_taggedTemplateLiteral2","BREAKPOINTS","MEDIUM","NavItemDiv","LARGE","NavButton","button","props","COLORS","getColor","theme","ExtendedSection","ExtendedMenuOption","MainMenu","_ref","items","rightSideRef","menuButtonRef","useRef","dropdownMenusOpenedArray","mainMenuRef","_React$useState","useState","_React$useState2","_slicedToArray2","numberOfItemsAllowed","setNumberOfItemsAllowed","_React$useState3","_React$useState4","subMenuRefs","setAllSubMenuRefs","extendedMenuOptionRef","createRef","useEffect","map","x","type","undefined","_React$useState5","_React$useState6","forceUpdate","_React$useState7","_React$useState8","activeItem","setActiveItemId","_React$useState9","_React$useState10","focusedItemId","setFocusedItemId","widthOfItem","recalculateNumberOfItemsAllowed","current","_rightSideRef$current","_mainMenuRef$current","number","Math","floor","offsetLeft","onMouseLeave","event","id","_toConsumableArray2","onMouseEnter","existingRefForId","find","concat","window","addEventListener","removeEventListener","onFocus","onKeyDownTop","key","renderItem","item","index","_ref2","icon","to","exact","disabled","external","action","label","note","pinned","rest","_objectWithoutProperties2","jsx","NavItem","as","className","onMouseDown","defaultOnMouseDownHandler","children","NavLink","onClick","existingRef","onKeyDown","code","containsActiveItem","checkIfContainsItem","jsxs","style","position","_item$id","_item$id2","Boolean","role","tabIndex","SystemIcons","ArrowDropDown","size","SubMenu","ariaLabelledBy","ref","onItemFocused","activeItemId","nestPath","onItemStateChanged","state","topLevel","extended","extendedSectionKeyHandler","stopPropagation","IconButton","slice","variant","shape","MoreHorizontal","propTypes","_propTypes","array","isRequired","_default","exports"],"sources":["../../../src/GlobalNavigationBar/desktop/MainMenu.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { NavLink, useLocation } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\nimport { NavItem } from '../../NavItem';\r\nimport {SystemIcons} from '../../icons';\r\nimport { COLORS, BREAKPOINTS } from '../../styles';\r\nimport { Menu } from './ExtendedMainMenu';\r\nimport { SubMenu } from './SubMenu';\r\nimport { IconButton } from '../../Button';\r\nimport { defaultOnMouseDownHandler } from '../../common';\r\nimport { MenuNavigationItemTypeDesktopGroup, MenuNavigationItemTypeItem } from '../types';\r\nimport { NavItemDiv } from '../../NavItem/NavItem';\r\nimport { checkIfContainsItem } from '../utils';\r\n\r\nconst NavContainer = styled.div`\r\n display: none;\r\n flex-grow: 1;\r\n justify-content: flex-start;\r\n align-items: center;\r\n \r\n padding: 0 16px;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n display: flex;\r\n }\r\n \r\n ${NavItemDiv} {\r\n cursor: pointer;\r\n }\r\n ${BREAKPOINTS.LARGE} {\r\n padding: 0 32px;\r\n }\r\n\r\n a {\r\n text-decoration: none;\r\n }\r\n`;\r\n\r\nconst NavButton = styled.button`\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n border: 0;\r\n`;\r\n\r\nconst ExtendedSection = styled.div`\r\n position: relative;\r\n`;\r\n\r\nconst ExtendedMenuOption = 'extendedOption';\r\n\r\ntype Props = {\r\n items: (MenuNavigationItemTypeItem | MenuNavigationItemTypeDesktopGroup)[];\r\n rightSideRef?: React.RefObject<HTMLDivElement> | null | undefined;\r\n};\r\n\r\nconst MainMenu = ({ items, rightSideRef }: Props): React.ReactElement<Props> => {\r\n const menuButtonRef = React.useRef<HTMLButtonElement>(null);\r\n //we have to use refs instead of 'state' here, because when onmouseleave is triggered for multiple nested divs, state update is not being updated in between\r\n const dropdownMenusOpenedArray = React.useRef<string[]>([]);\r\n const mainMenuRef: React.RefObject<HTMLDivElement> | null | undefined = React.useRef(null);\r\n const [numberOfItemsAllowed, setNumberOfItemsAllowed] = React.useState<number>(1);\r\n const [subMenuRefs, setAllSubMenuRefs] = React.useState<(React.RefObject<HTMLUListElement> | undefined)[]>([]);\r\n const extendedMenuOptionRef = React.createRef<HTMLUListElement>();\r\n\r\n React.useEffect(() => {\r\n setAllSubMenuRefs(items.map((x) => (x.type == 'desktopgroup' ? React.createRef<HTMLUListElement>() : undefined)));\r\n }, [items]);\r\n\r\n const [, forceUpdate] = React.useState({});\r\n const [activeItem, setActiveItemId] = React.useState<string>('');\r\n const [focusedItemId, setFocusedItemId] = React.useState<string>('');\r\n\r\n const widthOfItem = 120;\r\n const recalculateNumberOfItemsAllowed = () => {\r\n if (rightSideRef?.current && mainMenuRef?.current) {\r\n const number = Math.floor((rightSideRef?.current?.offsetLeft - mainMenuRef?.current?.offsetLeft) / widthOfItem);\r\n if (number !== numberOfItemsAllowed) {\r\n setNumberOfItemsAllowed(number);\r\n }\r\n }\r\n };\r\n\r\n const onMouseLeave = (event: any, id: string) => {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current.filter((x) => x != id)];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n };\r\n\r\n const onMouseEnter = (event: any, id: string) => {\r\n const existingRefForId = dropdownMenusOpenedArray.current.find((x) => x == id);\r\n if (existingRefForId == null) {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current, id];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n recalculateNumberOfItemsAllowed();\r\n // Bind the event listener\r\n window.addEventListener('resize', recalculateNumberOfItemsAllowed);\r\n return () => {\r\n // Unbind the event listener on clean up\r\n window.removeEventListener('resize', recalculateNumberOfItemsAllowed);\r\n };\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n recalculateNumberOfItemsAllowed();\r\n }, [items.length]);\r\n\r\n const onFocus = (event: React.FocusEvent<HTMLDivElement>) => {\r\n //no open dropdowns if top level was entered\r\n dropdownMenusOpenedArray.current = [];\r\n forceUpdate({});\r\n };\r\n\r\n const onKeyDownTop = (event: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (event.key === 'Escape' || event.key === 'Esc') {\r\n dropdownMenusOpenedArray.current = [];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n }\r\n };\r\n\r\n const renderItem = (item: MenuNavigationItemTypeItem | MenuNavigationItemTypeDesktopGroup, index: number) => {\r\n if (index > numberOfItemsAllowed - 2) return null;\r\n if (item.type != 'desktopgroup') {\r\n const { icon, to, exact, disabled, external, action, label, note, pinned, ...rest } = item as MenuNavigationItemTypeItem;\r\n return item?.disabled ? (\r\n <NavItem as={NavButton} className=\"disabled\" key={item.label} onMouseDown={defaultOnMouseDownHandler}>\r\n {item?.label}\r\n </NavItem>\r\n ) : (\r\n <NavItem as={NavLink} onFocus={onFocus} to={to || ''} key={label} onMouseDown={defaultOnMouseDownHandler} onClick={(e: React.MouseEvent) => action && action(e)} {...rest}>\r\n {item?.label}\r\n </NavItem>\r\n );\r\n } else {\r\n const existingRef = dropdownMenusOpenedArray.current.find((x) => x == item.id);\r\n const onClick = () => {\r\n if (existingRef == null) {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current, item.id];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n }\r\n };\r\n const onKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (event.key == 'Enter' || event.code == 'Space') {\r\n dropdownMenusOpenedArray.current = [...dropdownMenusOpenedArray.current, item.id];\r\n //just trigger rerendering\r\n forceUpdate({});\r\n } \r\n };\r\n\r\n const containsActiveItem = checkIfContainsItem(item, activeItem);\r\n return (\r\n <div\r\n style={{ position: 'relative' }}\r\n onMouseEnter={(event) => onMouseEnter(event, item.id ?? '')}\r\n onMouseLeave={(event) => onMouseLeave(event, item.id ?? '')}>\r\n <NavItem\r\n id={item.id + '_parentOption'}\r\n aria-expanded={Boolean(existingRef)}\r\n aria-activedescendant={containsActiveItem ? activeItem : ''}\r\n aria-controls={item.id}\r\n role=\"listbox\"\r\n onFocus={onFocus}\r\n onKeyDown={onKeyDown}\r\n tabIndex={0}\r\n className={existingRef != null || checkIfContainsItem(item, activeItem) ? 'active' : ''}\r\n key={item.label}\r\n to={null}\r\n onClick={onClick}>\r\n {item?.label} <SystemIcons.ArrowDropDown size=\"24px\" />\r\n </NavItem>\r\n <SubMenu\r\n ariaLabelledBy={item.id + '_parentOption'}\r\n ref={subMenuRefs[index]}\r\n onItemFocused={setFocusedItemId}\r\n focusedItemId={focusedItemId}\r\n activeItemId={activeItem}\r\n nestPath={[item.id]}\r\n onItemStateChanged={(item, state) => {\r\n if (state) {\r\n setActiveItemId(item);\r\n } else if (item == activeItem) setActiveItemId('');\r\n }}\r\n item={item as MenuNavigationItemTypeDesktopGroup}\r\n dropdownMenusOpenedArray={dropdownMenusOpenedArray}\r\n index={index + 1}\r\n topLevel={true}\r\n />\r\n </div>\r\n );\r\n }\r\n };\r\n\r\n\r\n const extended = dropdownMenusOpenedArray.current.find((x) => x == ExtendedMenuOption);\r\n const extendedSectionKeyHandler = (event: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (event.key == 'Enter' || event.code == 'Space') {\r\n event.stopPropagation();\r\n\r\n dropdownMenusOpenedArray.current = [ExtendedMenuOption];\r\n forceUpdate({});\r\n }\r\n };\r\n\r\n return (\r\n <NavContainer role=\"navigation\" className=\"GlobalNavigationMainMenu\" ref={mainMenuRef} onKeyDown={onKeyDownTop}>\r\n {items?.map(renderItem)}\r\n {items.length + 1 > numberOfItemsAllowed && (\r\n <ExtendedSection\r\n onKeyDown={(event) => extendedSectionKeyHandler(event)}\r\n onMouseEnter={(event) => onMouseEnter(event, ExtendedMenuOption)}\r\n onMouseLeave={(event) => onMouseLeave(event, ExtendedMenuOption)}>\r\n <IconButton\r\n id={ExtendedMenuOption + '_parentOption'}\r\n aria-expanded={Boolean(extended)}\r\n aria-activedescendant={checkIfContainsItem({ items: items.slice(numberOfItemsAllowed - 1), id: ExtendedMenuOption }, activeItem) ? activeItem : ''}\r\n aria-controls={ExtendedMenuOption}\r\n role=\"listbox\"\r\n \r\n ref={menuButtonRef} variant={'secondary'} shape={'circular'} action={() => {}}>\r\n <SystemIcons.MoreHorizontal size=\"24px\"/>\r\n </IconButton>\r\n <SubMenu\r\n ariaLabelledBy={ExtendedMenuOption + '_parentOption'}\r\n activeItemId={activeItem}\r\n onItemFocused={setFocusedItemId}\r\n focusedItemId={focusedItemId}\r\n ref={extendedMenuOptionRef}\r\n onItemStateChanged={(item, state) => {\r\n if (state) setActiveItemId(item);\r\n else if (item == activeItem) setActiveItemId('');\r\n }}\r\n nestPath={[ExtendedMenuOption]}\r\n item={{ items: items.slice(numberOfItemsAllowed - 1), id: ExtendedMenuOption }}\r\n topLevel={true}\r\n index={0}\r\n dropdownMenusOpenedArray={dropdownMenusOpenedArray}\r\n />\r\n </ExtendedSection>\r\n )}\r\n </NavContainer>\r\n );\r\n};\r\n\r\nexport default MainMenu;\r\n"],"mappings":"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","ignoreList":[]}
|