diff --git a/src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx b/src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx
index fd4b968..e146ba2 100644
--- a/src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx
+++ b/src/components/FamilyAcc/Tabs/FamilyWaitlist.jsx
@@ -1,31 +1,50 @@
-import { useState } from "react";
+import { useState, useMemo, memo } from "react";
import { handlePagingFunc, PaginatedList } from "../../Pagination";
import LoadingSpinner from "../../Spinners/LoadingSpinner";
import SuggestTask from "../../FamilyPopup/SuggestTask";
import AssignTaskPopout from "../FamilyPopout/AssignTaskPopout";
-const FamilyWaitlist = ({ familyData, className, accountDetails, loader }) => {
+const FamilyWaitlist = memo(({ familyData, className, accountDetails, loader }) => {
const [popUp, setPopUp] = useState({ show: false, data: {} });
const [continueTaskPopup, setContinueTaskPopup] = useState({
show: false,
data: {},
});
-
- let filteredFamilyData = familyData?.result_list?.filter(
- (data) => data?.family_uid === accountDetails?.family_uid
+ const filteredFamilyData = useMemo(
+ () =>
+ familyData?.result_list?.filter(
+ (data) => data?.family_uid === accountDetails?.family_uid
+ ),
+ [familyData, accountDetails]
);
const [currentPage, setCurrentPage] = useState(0);
const itemsPerPage = Number(process.env.REACT_APP_ITEM_PER_PAGE);
const indexOfFirstItem = currentPage;
const indexOfLastItem = currentPage + itemsPerPage;
- const currentTask = filteredFamilyData?.slice(
- indexOfFirstItem,
- indexOfLastItem
+ const currentTask = useMemo(
+ () => filteredFamilyData?.slice(indexOfFirstItem, indexOfLastItem),
+ [filteredFamilyData, indexOfFirstItem, indexOfLastItem]
);
const handlePagination = (e) => handlePagingFunc(e, setCurrentPage);
+ const openPopUp = (value) => {
+ setPopUp({ show: true, data: { ...value } });
+ };
+
+ const closePopUp = () => {
+ setPopUp({ show: false, data: {} });
+ };
+
+ const openContinueTaskPopup = (value) => {
+ setContinueTaskPopup({ show: true, data: { ...value } });
+ };
+
+ const closeContinueTaskPopup = () => {
+ setContinueTaskPopup({ show: false, data: {} });
+ };
+
return (
{
|