import React, { useCallback, useEffect, useMemo, useState } from "react"; import dataImage1 from "../../assets/images/data-table-user-1.png"; import PaginatedList from "../Pagination/PaginatedList"; import { handlePagingFunc } from "../Pagination/HandlePagination"; import usersService from "../../services/UsersService"; import LoadingSpinner from "../Spinners/LoadingSpinner"; import {useNavigate, useLocation} from 'react-router-dom' export default function MyJobTable({ className, ActiveJobList }) { let navigate = useNavigate() let {pathname} = useLocation() // const [tasksData, setTasksData] = useState(null); // const [loader, setLoader] = useState(false); // let apiCall = useMemo(() => new usersService(), []); // const displayTasks = useCallback(async () => { // try { // const res = await apiCall.getMyActiveTaskList(); // let { // data: { result_list }, // internal_return, // statusText, // } = await res; // if (internal_return < 0 || statusText !== "OK") return; // setTasksData(result_list); // setLoader(false); // } catch (error) { // throw new Error(error); // } // }, [apiCall]); // useEffect(() => { // displayTasks(); // }, []); const [currentPage, setCurrentPage] = useState(0); const indexOfFirstItem = Number(currentPage); const indexOfLastItem = Number(indexOfFirstItem) + Number(process.env.REACT_APP_ITEM_PER_PAGE); const currentTask = ActiveJobList?.data?.slice(indexOfFirstItem, indexOfLastItem); const handlePagination = (e) => { handlePagingFunc(e, setCurrentPage); }; return (
{ActiveJobList.loading ? (
) : (
{ActiveJobList?.data?.length > 0 ? ( currentTask?.map((task, idx) => (
data

{task?.title}

{task?.description} Price: {Number(task?.price) * 0.01} Duration: {Number(task?.timeline_days) === 1 ? `${task?.timeline_days} day` : `${task?.timeline_days} day(s)`} Due Date: {task?.delivery_date} Confirmation: {task?.contract}
)) ) : ( ActiveJobList.status ?
No Tasks!
:

Error Occurred! Unable to display Tasks!

) }
{/* PAGINATION BUTTON */} = ActiveJobList?.data?.length ? true : false } data={ActiveJobList?.data} start={indexOfFirstItem} stop={indexOfLastItem} /> {/* END OF PAGINATION BUTTON */}
)}
); } /* */