import React from "react"; import useUsers from "@/hooks/useUsers"; import useGroups from "@/hooks/useGroups"; import { User } from "@/interfaces/user"; import Select from "@/components/Low/Select"; import ProgressBar from "@/components/Low/ProgressBar"; import { BsBook, BsClipboard, BsHeadphones, BsMegaphone, BsPen, } from "react-icons/bs"; import { MODULE_ARRAY } from "@/utils/moduleUtils"; import { capitalize } from "lodash"; import { getLevelLabel } from "@/utils/score"; const Card = ({ user }: { user: User }) => { return (

{user.name}

{MODULE_ARRAY.map((module) => { const desiredLevel = user.desiredLevels[module] || 9; const level = user.levels[module] || 0; return (
{module === "reading" && ( )} {module === "listening" && ( )} {module === "writing" && ( )} {module === "speaking" && ( )} {module === "level" && ( )}
{capitalize(module)}
{module === "level" && ( English Level: {getLevelLabel(level).join(" / ")} )} {module !== "level" && (
Level {level} / Level 9 Desired Level: {desiredLevel}
)}
); })}
); }; const CorporateStudentsLevels = () => { const { users } = useUsers(); const { groups } = useGroups(); const corporateUsers = users.filter((u) => u.type === "corporate") as User[]; const [corporateId, setCorporateId] = React.useState(""); const corporate = corporateUsers.find((u) => u.id === corporateId) || corporateUsers[0]; const groupsFromCorporate = corporate ? groups.filter((g) => g.admin === corporate.id) : []; const groupsParticipants = groupsFromCorporate .flatMap((g) => g.participants) .reduce((accm: User[], p) => { const user = users.find((u) => u.id === p) as User; if (user) { return [...accm, user]; } return accm; }, []); return ( <>