import { Container, Stack, Text, Button, Input, Spinner, VStack, Table, } from "@chakra-ui/react"; import { useAtom } from "jotai"; import { getBorrowableItems } from "@/utils/Fetcher"; import { useState } from "react"; import MyAlert from "@/components/myChakra/MyAlert"; import { borrowAbleItemsAtom } from "@/states/Atoms"; import { createLoan } from "@/utils/Fetcher"; import { Header } from "@/components/Header"; import { useTranslation } from "react-i18next"; export interface User { username: string; role: number; } export const HomePage = () => { const { t } = useTranslation(); const [borrowableItems, setBorrowableItems] = useAtom(borrowAbleItemsAtom); const [startDate, setStartDate] = useState(""); const [endDate, setEndDate] = useState(""); const [isLoadingA, setIsLoadingA] = useState(false); const [selectedItems, setSelectedItems] = useState([]); // Error handling states const [isMsg, setIsMsg] = useState(false); const [msgStatus, setMsgStatus] = useState<"error" | "success">("error"); const [msgTitle, setMsgTitle] = useState(""); const [msgDescription, setMsgDescription] = useState(""); const handleCheckboxChange = (itemId: number) => { setSelectedItems((prevSelected) => prevSelected.includes(itemId) ? prevSelected.filter((id) => id !== itemId) : [...prevSelected, itemId] ); }; return (
{isMsg && ( )} setStartDate(e.target.value)} /> setEndDate(e.target.value)} /> {isLoadingA && ( {t("loading")} )} {borrowableItems.length > 0 && ( {t("item")} {borrowableItems.map((item) => ( handleCheckboxChange(item.id)} type="checkbox" name={item.id} id={item.id} /> {item.item_name} ))} )} {selectedItems.length >= 1 && ( )} ); };