{"version":3,"file":"ExtendedMainMenu.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_styles","_Tabs","_index","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","flowDown","exports","keyframes","Menu","styled","ul","props","COLORS","getColor","theme","Z_INDEXES","dropdown","BREAKPOINTS","SMALL","MEDIUM","focusStyles","MenuSection","li","MenuSectionList","ExtendedMainMenu","_ref","clickMenuAction","navigationOptions","entries","setEntries","useState","useEffect","handleKeyPress","keyCode","document","addEventListener","removeEventListener","list","map","requiredLine","label","to","disabled","onClick","action","exact","jsx","role","children","VerticalTabs","size","Size","Medium","propTypes","_propTypes","func","isRequired","array","_default"],"sources":["../../../src/GlobalNavigationBar/desktop/ExtendedMainMenu.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { keyframes } from 'styled-components';\r\n\r\nimport { BREAKPOINTS, COLORS, focusStyles } from '../../styles';\r\nimport { VerticalTabs } from '../../Tabs';\r\nimport { VerticalTabEntry } from '../../Tabs';\r\nimport {MenuNavigationItemTypeItem, Size} from '../../index';\r\nimport {Z_INDEXES} from '../../styles';\r\n\r\nexport const flowDown = keyframes`\r\n  0% {\r\n    opacity: 0;\r\n    transform: translateY(-10px);\r\n  }\r\n  to {\r\n    opacity: 1;\r\n    transform: translateY(0);\r\n  }\r\n`;\r\n\r\nexport const Menu = styled.ul`\r\n  list-style: none;\r\n  margin: 0;\r\n  padding: 0;\r\n  background-color: ${props => COLORS.getColor('white', props.theme)};\r\n  box-sizing: border-box;\r\n  display: none;\r\n  right: -8px;\r\n  min-width: 300px;\r\n  -webkit-animation: ${flowDown} 0.2s ease-in-out;\r\n  animation: ${flowDown} 0.2s ease-in-out;\r\n  position: absolute;\r\n  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);\r\n  border-radius: 4px;\r\n  z-index: ${Z_INDEXES.dropdown};\r\n\r\n  top: 12px;\r\n  ${BREAKPOINTS.SMALL} {\r\n    top: 18px;\r\n  }\r\n  ${BREAKPOINTS.MEDIUM} {\r\n    top: 24px;\r\n  }\r\n\r\n  .open & {\r\n    display: block;\r\n  }\r\n\r\n  &:focus {\r\n    ${focusStyles}\r\n  }\r\n`;\r\n\r\nexport const MenuSection = styled.li`\r\n  padding: 8px 0;\r\n  position: relative;\r\n\r\n  &:not(:first-of-type)::before {\r\n    content: '';\r\n    position: absolute;\r\n    background: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n    height: 1px;\r\n    top: 0;\r\n    left: 16px;\r\n    right: 16px;\r\n  }\r\n`;\r\n\r\nexport const MenuSectionList = styled.ul`\r\n  list-style: none;\r\n  margin: 0;\r\n  padding: 0 2px;\r\n`;\r\n\r\ntype Props = {\r\n  clickMenuAction: () => void;\r\n  navigationOptions: MenuNavigationItemTypeItem[];\r\n};\r\n\r\nconst ExtendedMainMenu = ({ clickMenuAction, navigationOptions }: Props) => {\r\n  const [entries, setEntries] = React.useState<VerticalTabEntry[]>([]);\r\n  React.useEffect(() => {\r\n    function handleKeyPress(e: any) {\r\n      if (e.keyCode === 27) {\r\n        clickMenuAction();\r\n      }\r\n    }\r\n\r\n    document.addEventListener('keydown', handleKeyPress, false);\r\n    return () => {\r\n      document.removeEventListener('keydown', handleKeyPress, false);\r\n    };\r\n  }, [clickMenuAction]);\r\n\r\n  React.useEffect(() => {\r\n    const list = navigationOptions?.map(n => {\r\n      return { requiredLine: n.label, to: n.to, disabled: n.disabled, onClick: n.action, exact: n.exact };\r\n    }) as VerticalTabEntry[];\r\n    setEntries(list);\r\n  }, [navigationOptions]);\r\n\r\n  return (\r\n    <Menu onClick={clickMenuAction} role=\"menu\" aria-labelledby=\"UserMenuButton\">\r\n      <MenuSection>\r\n        <MenuSectionList>\r\n          <VerticalTabs key=\"ExtendedMenu\" entries={entries} size={Size.Medium} />\r\n        </MenuSectionList>\r\n      </MenuSection>\r\n    </Menu>\r\n  );\r\n};\r\n\r\nexport default ExtendedMainMenu;\r\n"],"mappings":"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","ignoreList":[]}