import { Grid, ThemeProvider, useBreakpointValue, Flex, } from "@aws-amplify/ui-react"; import { useEffect, useState } from "react"; import { studioTheme } from "../../ui-components"; import { LearnFooter } from "../LearnFooter"; import { BreadcrumbLayout } from "../BreadcrumbLayout"; import { LEFT_NAV_LINKS, RIGHT_NAV_LINKS, SOCIAL_LINKS, } from "../../data/globalnav"; import { GlobalNav, NavMenuItem } from "../GlobalNav"; import { LearnNavBarDesktop } from "../LearnNavBar/LearnNavBarDesktop"; import { LearnNavBarMobile } from "../LearnNavBar/LearnNavBarMobile"; import styles from "./Layout.module.scss"; export function Layout({ children, showBreadcrumb, breadcrumbCallback, }: { children: any; showBreadcrumb?: boolean; breadcrumbCallback?: (pathnameArray: string[], asPathArray: string[]) => any; }) { const [isMobile, setIsMobile] = useState(false); const [hasMounted, setHasMounted] = useState(false); const mobileBreakpointValue = useBreakpointValue({ base: "mobile", small: "mobile", medium: "mobile", large: "default", }); useEffect(() => { if (mobileBreakpointValue === "mobile") { setIsMobile(true); } else { setIsMobile(false); } }, [mobileBreakpointValue]); useEffect(() => { setHasMounted(true); }, []); if (!hasMounted) { return null; } return ( } secondaryNavMobile={} /> {showBreadcrumb && breadcrumbCallback && ( )} {children} ); }