import { useState } from "react"; import dataImage1 from "../../assets/images/data-table-user-1.png"; import PaginatedList from "../Pagination/PaginatedList"; import { handlePagingFunc } from "../Pagination/HandlePagination"; import LoadingSpinner from "../Spinners/LoadingSpinner"; import { useNavigate, useLocation } from "react-router-dom"; import { PriceFormatter } from "../Helpers/PriceFormatter"; import localImgLoad from "../../lib/localImgLoad"; const noTasksBg = require("../../assets/images/no-task-background.jpg"); const noFamilyTasksBg = require("../../assets/images/family-no-task-background.jpg"); export default function MyJobTable({ className, ActiveJobList, Account, imageServer }) { let navigate = useNavigate(); let { pathname } = useLocation(); 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); }; let accountType = Account?.account_type == "FULL" // To navigate to task const [btnLoader, setBtnLoader] = useState(false); const navigateMarket = () => { setBtnLoader(true); const timeoutId = setTimeout(() => { navigate(accountType ? "/market" : "/familymarket", { replace: true }); setBtnLoader(false); }, 2500); return () => clearTimeout(timeoutId); }; return (
{/* Adding this dark overlay in order to see the texts properly */} {!ActiveJobList?.data.length && accountType && (
)} {ActiveJobList?.loading ?
:
{ActiveJobList?.data?.length > 0 ? currentTask?.map((task, idx) => { // find due date const dueDate = task?.delivery_date.split(" ")[0]; let thePrice = PriceFormatter( task?.price * 0.01, task?.currency_code, task?.currency ); let image = `${imageServer}${localStorage.getItem('session_token')}/job/${task.origin_job_uid}` return (
data

{task?.title}

{task?.description} Reward: {thePrice}
Duration: {Number(task?.timeline_days) === 1 ? `${task?.timeline_days} day` : `${task?.timeline_days} day(s)`} Due Date: {dueDate} Confirmation: {task?.contract}
{accountType ? : }
); }) :
You currently have {accountType ? '"0"' : "no"} task
} {/* {ActiveJobList?.internal_return < 0 && (

Error Occurred! Unable to display Tasks!

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