"use client"; import { useCallback, useState } from "react"; import { useTranslation } from "react-i18next"; import Button from "@mui/material/Button"; import Stack from "@mui/material/Stack"; import { Add } from "@mui/icons-material"; import { Typography } from "@mui/material"; import ButtonGroup from "@mui/material/ButtonGroup"; import AssignedProjects from "./AssignedProjects"; import TimesheetModal from "../TimesheetModal"; import { AssignedProject } from "@/app/api/projects"; import { RecordLeaveInput, RecordTimesheetInput, } from "@/app/api/timesheets/actions"; import LeaveModal from "../LeaveModal"; import { LeaveType } from "@/app/api/timesheets"; export interface Props { leaveTypes: LeaveType[]; assignedProjects: AssignedProject[]; username: string; defaultLeaveRecords: RecordLeaveInput; defaultTimesheets: RecordTimesheetInput; } const UserWorkspacePage: React.FC = ({ leaveTypes, assignedProjects, username, defaultLeaveRecords, defaultTimesheets, }) => { const [isTimeheetModalVisible, setTimeheetModalVisible] = useState(false); const [isLeaveModalVisible, setLeaveModalVisible] = useState(false); const { t } = useTranslation("home"); const handleAddTimesheetButtonClick = useCallback(() => { setTimeheetModalVisible(true); }, []); const handleCloseTimesheetModal = useCallback(() => { setTimeheetModalVisible(false); }, []); const handleAddLeaveButtonClick = useCallback(() => { setLeaveModalVisible(true); }, []); const handleCloseLeaveModal = useCallback(() => { setLeaveModalVisible(false); }, []); return ( <> {t("User Workspace")} {assignedProjects.length > 0 ? ( ) : ( {t("You have no assigned projects!")} )} ); }; export default UserWorkspacePage;