import { Accordion, AccordionItem, AccordionButton, AccordionPanel, AccordionIcon, Box, Flex, Heading, } from "@chakra-ui/react"; import { Fragment, FunctionComponent } from "react"; import { useAnalytics } from "../../contexts/Analytics"; import { clickEvent, eventName } from "../../contexts/Analytics/util"; import { ExternalLink } from "../ExternalLink"; import { NavLink } from "../NavLink"; import type { IMenuItems, ILink } from "../NavPopover"; const linkProps = { color: "link", py: 2, w: "full", }; const Link: FunctionComponent = ({ "data-event": dataEvent, display, isNavLink, url, }) => { const event = dataEvent ? eventName(dataEvent, "Link", display) : undefined; return isNavLink ? ( {display} ) : ( {display} ); }; interface MobileNavLinksContentProps { dataEvent?: string; testId?: string; title: string; items: IMenuItems; } const MobileNavLinksContent: FunctionComponent = ({ title, items, testId, dataEvent, }) => { const { trackCustomEvent } = useAnalytics(); return ( { if (dataEvent) { trackCustomEvent( clickEvent({ name: eventName(dataEvent, "Menu") }) ); } }} px={0} py={4} > {title} {items.map((item, itemIdx) => { if ("links" in item) { return ( {item.display} {item.links.map((link, linkIdx) => ( ))} ); } return ( ); })} ); }; interface MobileNavLinksProps { sections: MobileNavLinksContentProps[]; } export const MobileNavLinks: FunctionComponent = ({ sections, }) => ( {sections.map((section, idx) => ( ))} );