diff --git a/src/components/FamilyAcc/FamilyManage.jsx b/src/components/FamilyAcc/FamilyManage.jsx index 1dc08ee..94b87eb 100644 --- a/src/components/FamilyAcc/FamilyManage.jsx +++ b/src/components/FamilyAcc/FamilyManage.jsx @@ -1,44 +1,59 @@ -import React, { useState } from "react"; +import React, { useState, useEffect } from "react"; import Layout from "../Partials/Layout"; import FamilyManageTabs from "./Tabs/FamilyManageTabs"; -import { useLocation } from "react-router-dom"; +import { useLocation, useNavigate } from "react-router-dom"; +import LoadingSpinner from "../Spinners/LoadingSpinner"; export default function FamilyManage() { const [selectTab, setValue] = useState("today"); + let [pageLoading, setPageLoading] = useState(true); let location = useLocation(); - let accountDetails = location?.state + let navigate = useNavigate(); + let accountDetails = location?.state; // tab handler const filterHandler = (value) => { setValue(value); }; + useEffect(() => { + if (!accountDetails) { + navigate("/acc-family", { replace: true }); + } else { + setPageLoading(false); + } + }, []); + return ( {/**/} -
-
- {/* heading */} -
-
-

- - Manage Family - -

-
-
-
filterHandler("today")} - className="relative" - >
+ {pageLoading ? ( + + ) : ( +
+
+ {/* heading */} +
+
+

+ + Manage Family + +

+
+
+
filterHandler("today")} + className="relative" + >
+
+
-
-
+ )} ); -} \ No newline at end of file +} diff --git a/src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx b/src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx index a8f409f..9ebd3fb 100644 --- a/src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx +++ b/src/components/FamilyAcc/Tabs/FamilyManageTabs.jsx @@ -200,7 +200,6 @@ function ProfileInfo({ browseProfileImg, accountDetails, }) { - let { firstname, lastname, age } = accountDetails; return (
@@ -241,13 +240,13 @@ function ProfileInfo({

- {firstname} + {accountDetails?.firstname}

- {lastname} + {accountDetails?.lastname}

- {age} + {accountDetails?.age}

diff --git a/src/components/FamilyAcc/Tabs/FamilyTasks.jsx b/src/components/FamilyAcc/Tabs/FamilyTasks.jsx index 010e74a..2a4e8cd 100644 --- a/src/components/FamilyAcc/Tabs/FamilyTasks.jsx +++ b/src/components/FamilyAcc/Tabs/FamilyTasks.jsx @@ -1,14 +1,18 @@ import React, { useState } from "react"; import dataImage2 from "../../../assets/images/data-table-user-2.png"; - +import { useNavigate, useLocation } from "react-router-dom"; import { handlePagingFunc } from "../../Pagination/HandlePagination"; import PaginatedList from "../../Pagination/PaginatedList"; import LoadingSpinner from "../../Spinners/LoadingSpinner"; +import Icons from "../../Helpers/Icons"; export default function FamilyTasks({ familyData, className, loader }) { const filterCategories = ["All Categories", "Explore", "Featured"]; const [selectedCategory, setCategory] = useState(filterCategories[0]); + let navigate = useNavigate(); + let { pathname } = useLocation(); + let data = ["1", "2", "3", "4", "5", "6"]; // to be replaced later by result from API CALL const [currentPage, setCurrentPage] = useState(0); @@ -20,6 +24,7 @@ export default function FamilyTasks({ familyData, className, loader }) { indexOfLastItem ); + const handlePagination = (e) => { handlePagingFunc(e, setCurrentPage); }; @@ -46,69 +51,69 @@ export default function FamilyTasks({ familyData, className, loader }) { {familyData && familyData?.result_list && familyData.result_list.length > 0 && - currentTask.map((value, index) => ( - - -
-
- data + currentTask.map((value, index) => { + // find due date + const dueDate = value?.delivery_date.split(" ")[0] + return ( + + +
+
+ data +
+
+

+ {value.title} +

+
+ + Price:{" "} + + {value.price * 0.01} + + + + Duration:{" "} + + {" "} + {value.timeline_days} day(s) + + + + Due Date:{" "} + + {" "} + {dueDate} + + +
+
-
-

- {value.title} -

-
{value.description}
- - Price:{" "} - - {value.price * 0.01} - - - - Duration:{" "} - - {" "} - {value.timeline_days} day(s) - - - - Expire:{" "} - - {" "} - {value.expire} - - - - Send to:{" "} - - {" "} - {value.job_to} - - -
-
- - - - - - - ))} + + + + + + + ) + })} } diff --git a/src/components/Helpers/Icons.jsx b/src/components/Helpers/Icons.jsx index ca65e6c..5fa5fd1 100644 --- a/src/components/Helpers/Icons.jsx +++ b/src/components/Helpers/Icons.jsx @@ -468,6 +468,21 @@ export default function Icons({ name }) { > + ) : name === "right-arrow" ? ( + + + ) : ( "" )} diff --git a/src/middleware/AuthRoute.jsx b/src/middleware/AuthRoute.jsx index 724f4c3..bfeb75d 100644 --- a/src/middleware/AuthRoute.jsx +++ b/src/middleware/AuthRoute.jsx @@ -26,7 +26,6 @@ const AuthRoute = ({ redirectPath = "/login", children }) => { navigate("/login", { replace: true }); // redirects user to login page after session expires }; - console.log(loadProfileDetails); const checkInactivity = setInterval(() => { let { account_type } = loadProfileDetails; if (account_type === "FAMILY") {