diff --git a/superset-frontend/src/common/components/index.tsx b/superset-frontend/src/common/components/index.tsx index bf17aac7432..c98099645a7 100644 --- a/superset-frontend/src/common/components/index.tsx +++ b/superset-frontend/src/common/components/index.tsx @@ -131,11 +131,9 @@ export const StyledNav = styled(AntdMenu)` } } - @media (min-width: 767px) { - &:not(.ant-menu-dark) > .ant-menu-submenu, - &:not(.ant-menu-dark) > .ant-menu-item { - margin: 0px; - } + &:not(.ant-menu-dark) > .ant-menu-submenu, + &:not(.ant-menu-dark) > .ant-menu-item { + margin: 0px; } & > .ant-menu-item > a { diff --git a/superset-frontend/src/components/Menu/Menu.tsx b/superset-frontend/src/components/Menu/Menu.tsx index ddd7946e214..6733d6a0592 100644 --- a/superset-frontend/src/components/Menu/Menu.tsx +++ b/superset-frontend/src/components/Menu/Menu.tsx @@ -23,7 +23,7 @@ import { Global } from '@emotion/react'; import { getUrlParam } from 'src/utils/urlUtils'; import { MainNav as DropdownMenu, MenuMode } from 'src/common/components'; import { Link } from 'react-router-dom'; -import { Row, Col } from 'antd'; +import { Row, Col, Grid } from 'antd'; import Icon from 'src/components/Icon'; import RightMenu from './MenuRight'; import { Languages } from './LanguagePicker'; @@ -137,11 +137,14 @@ const StyledHeader = styled.header` const { SubMenu } = DropdownMenu; +const { useBreakpoint } = Grid; + export function Menu({ data: { menu, brand, navbar_right: navbarRight, settings }, isFrontendRoute = () => false, }: MenuProps) { const [showMenu, setMenu] = useState('horizontal'); + const screens = useBreakpoint(); useEffect(() => { function handleResize() { @@ -216,7 +219,7 @@ export function Menu({ `} /> - + {brand.alt} @@ -245,8 +248,9 @@ export function Menu({ })} - + theme.colors.primary.dark1}; `; -const StyledDiv = styled.div` +const StyledDiv = styled.div<{ align: string }>` display: flex; flex-direction: row; - justify-content: flex-end; + justify-content: ${({ align }) => align}; align-items: center; - min-width: 360px; - margin-right: ${({ theme }) => theme.gridUnit * 4}px; + margin-right: ${({ theme }) => theme.gridUnit}px; +`; + +const StyledAnchor = styled.a` + padding-right: ${({ theme }) => theme.gridUnit}px; + padding-left: ${({ theme }) => theme.gridUnit}px; `; const { SubMenu } = Menu; interface RightMenuProps { + align: 'flex-start' | 'flex-end'; settings: MenuObjectProps[]; navbarRight: NavBarProps; isFrontendRoute: (path?: string) => boolean; } const RightMenu = ({ + align, settings, navbarRight, isFrontendRoute, }: RightMenuProps) => ( - + {!navbarRight.user_is_anonymous && ( {navbarRight.documentation_url && ( -   - + )} {navbarRight.bug_report_url && ( - - + )} {navbarRight.user_is_anonymous && ( - + {t('Login')} - + )} );