github.com/quickfeed/quickfeed@v0.0.0-20240507093252-ed8ca812a09c/public/src/components/NavFavorites.tsx (about)

     1  import React from "react"
     2  import { useAppState } from "../overmind"
     3  import { Link } from "react-router-dom"
     4  import NavBarCourse from "./navbar/NavBarCourse"
     5  import { isEnrolled, isVisible } from "../Helpers"
     6  
     7  const NavFavorites = (): JSX.Element => {
     8      const state = useAppState()
     9  
    10      const visible = state.enrollments.filter(enrollment => isEnrolled(enrollment) && isVisible(enrollment))
    11  
    12      const courses = visible.map((enrollment) => {
    13          return <NavBarCourse key={enrollment.ID.toString()} enrollment={enrollment} />
    14      })
    15  
    16      return (
    17          <nav className={`navigator ${state.showFavorites ? "" : "hidden"}`}>
    18              <ul key="list" className="sidebarList">
    19                  {courses}
    20                  {state.isLoggedIn &&
    21                      <li key="all" className="courseLink">
    22                          <Link to="/courses" className="sidebar-items-link">
    23                              View all courses
    24                          </Link>
    25                      </li>
    26                  }
    27              </ul>
    28          </nav>
    29      )
    30  }
    31  
    32  export default NavFavorites