import {
Box,
Flex,
Menu,
MenuButton,
MenuGroup,
MenuItem,
MenuList,
Popover,
PopoverArrow,
PopoverContent,
PopoverHeader,
PopoverTrigger,
} from "@chakra-ui/react";
import { t, Trans } from "@lingui/macro";
import { useLingui } from "@lingui/react";
import { useMyTheme } from "hooks/common";
import { useRouter } from "next/dist/client/router";
import Image from "next/image";
import Link from "next/link";
export const navIcons: {
code: string;
displayName: string;
menuItems: (
| {
code: string;
displayName: string;
}
| { component: React.ReactNode; code: string }
)[];
}[] = [
{
code: "xsearch",
displayName: t`Top 500`,
menuItems: [
{ code: "xsearch", displayName: t`Browser` },
{ code: "xtrends", displayName: t`Tier Lists` },
],
},
// {
// code: "leaderboards",
// displayName: t`Leaderboards`,
// menuItems: [],
// },
{
code: "sr",
displayName: "Salmon Run",
menuItems: [
{ code: "sr/leaderboards", displayName: t`Leaderboards` },
{ code: "sr/guide/fundamentals", displayName: t`Guide (Fundamentals)` },
{ code: "sr/guide/advanced", displayName: t`Guide (Advanced)` },
{
component: (
Overfishing Discord
),
code: "overfishing",
},
],
},
{
code: "builds",
displayName: t`Builds`,
menuItems: [],
},
{ code: "analyzer", displayName: t`Build Analyzer`, menuItems: [] },
// { code: "calendar", displayName: t`Calendar`, menuItems: [] },
{ code: "u", displayName: t`User Search`, menuItems: [] },
{ code: "freeagents", displayName: t`Free Agents`, menuItems: [] },
{ code: "t", displayName: t`Teams`, menuItems: [] },
{
code: "plans",
displayName: t`Maps`,
menuItems: [
{
code: "plans",
displayName: t`Map Planner`,
},
{
code: "maps",
displayName: t`Maplist Generator`,
},
],
},
// { code: "tournaments", displayName: t`Tournaments`, menuItems: [] },
{
code: "plus",
displayName: t`Plus Server`,
menuItems: [
// {
// code: "plus/voting",
// displayName: t`Voting`,
// },
// { code: "plus", displayName: t`Suggested and vouched players` },
{ code: "plus/history", displayName: t`Voting history` },
// { code: "draft", displayName: t`Draft Cup` },
// { code: "plus/faq", displayName: t`FAQ` },
],
},
{ code: "links", displayName: t`External links`, menuItems: [] },
];
const IconNavBar = () => {
const { i18n } = useLingui();
const {
secondaryBgColor,
textColor,
themeColorHex: themeColor,
} = useMyTheme();
const pathname = useRouter().pathname;
//const isVoting = !!plusInfoData?.plusInfo?.voting_ends;
const isVoting = false;
return (
{navIcons.map(({ displayName, code, menuItems }) => {
if (!menuItems.length) {
return (
);
}
return (
);
})}
);
function MenuNavIcon({
code,
showDownArrow,
}: {
code: string;
showDownArrow?: boolean;
}) {
return (
{showDownArrow && (
▾
)}
);
}
function MenuDialog({
children,
displayName,
}: {
children: React.ReactNode;
displayName: string;
}) {
return (
{children}
{displayName}
);
}
};
// function getFirstFridayDate() {
// const today = new Date();
// const month =
// today.getDate() - ((1 + today.getDay()) % 7) <= 0
// ? today.getMonth()
// : today.getMonth() + 1;
// let day = 1;
// while (day <= 7) {
// const dateOfVoting = new Date(
// Date.UTC(today.getFullYear(), month, day, 15, 0, 0)
// );
// if (dateOfVoting.getDay() === 5) return dateOfVoting;
// day++;
// }
// console.error("Couldn't resolve first friday of the month for voting");
// return new Date(2000, 1, 1);
// }
export default IconNavBar;