diff --git a/web/src/components/ActivityCalendar.tsx b/web/src/components/ActivityCalendar.tsx index 1373a7ba..7d77d66d 100644 --- a/web/src/components/ActivityCalendar.tsx +++ b/web/src/components/ActivityCalendar.tsx @@ -84,7 +84,7 @@ const ActivityCalendar = (props: Props) => { const isToday = dayjs().format("YYYY-MM-DD") === date; const tooltipText = count === 0 - ? t("memo.no-memos") + ? date : t("memo.count-memos-in-date", { count: count, memos: count === 1 ? t("common.memo") : t("common.memos"), diff --git a/web/src/components/HomeSidebar/HomeSidebar.tsx b/web/src/components/HomeSidebar/HomeSidebar.tsx index cdb52e63..446f91ed 100644 --- a/web/src/components/HomeSidebar/HomeSidebar.tsx +++ b/web/src/components/HomeSidebar/HomeSidebar.tsx @@ -1,22 +1,55 @@ +import { Globe2Icon, HomeIcon, LogInIcon } from "lucide-react"; +import { NavLink } from "react-router-dom"; import useDebounce from "react-use/lib/useDebounce"; import SearchBar from "@/components/SearchBar"; import useCurrentUser from "@/hooks/useCurrentUser"; +import { Routes } from "@/router"; import { useMemoList, useUserStatsStore } from "@/store/v1"; import { cn } from "@/utils"; +import { useTranslate } from "@/utils/i18n"; import MemoFilters from "../MemoFilters"; import StatisticsView from "../StatisticsView"; import ShortcutsSection from "./ShortcutsSection"; import TagsSection from "./TagsSection"; +interface NavLinkItem { + id: string; + path: string; + title: string; + icon: React.ReactNode; +} + interface Props { className?: string; } const HomeSidebar = (props: Props) => { + const t = useTranslate(); const currentUser = useCurrentUser(); const memoList = useMemoList(); const userStatsStore = useUserStatsStore(); + const homeNavLink: NavLinkItem = { + id: "header-home", + path: Routes.ROOT, + title: t("common.home"), + icon: , + }; + const exploreNavLink: NavLinkItem = { + id: "header-explore", + path: Routes.EXPLORE, + title: t("common.explore"), + icon: , + }; + const signInNavLink: NavLinkItem = { + id: "header-auth", + path: Routes.AUTH, + title: t("common.sign-in"), + icon: , + }; + + const navLinks: NavLinkItem[] = currentUser ? [homeNavLink, exploreNavLink] : [exploreNavLink, signInNavLink]; + useDebounce( async () => { await userStatsStore.listUserStats(currentUser.name); @@ -26,12 +59,32 @@ const HomeSidebar = (props: Props) => { ); return ( -