import {
Box,
Button,
HStack,
Input,
Text,
Tooltip,
useDisclosure,
Image,
useToast,
} from "@chakra-ui/react";
import React, { useContext, useEffect, useRef, useState } from "react";
import InvestmentDocuments from "../InvestmentDocuments";
import DataTable from "../../../Components/DataTable/DataTable";
import CustomAlertDialog from "../../../Components/CustomAlertDialog";
import GlobalStateContext from "../../../Contexts/GlobalStateContext";
import { debounce } from "../../Master/Sponser/AddSponser";
import { formatDate } from "../../../Components/Functions/UTCConvertor";
import {
AddIcon,
DeleteIcon,
DownloadIcon,
EditIcon,
ViewIcon,
} from "@chakra-ui/icons";
import KeyMeritsAdd from "../KeyMeritsAdd";
import { useParams } from "react-router-dom";
import { useDeleteKeyMeritsMutation, useGetKeyMeritsQuery } from "../../../Services/io.service";
import FullscreenLoaders from "../../../Components/Loaders/FullscreenLoaders";
import ToastBox from "../../../Components/ToastBox";
import KeyMeritsEdit from "../KeyMeritsEdit";
import SetDisplayOrder from "./SetDisplayOrder";
const KeyMerits = ({ enableNextTab, index }) => {
const toast = useToast()
const params = useParams();
// =====================[ variables ]
const id = params?.id;
const { data, isLoading, error } = useGetKeyMeritsQuery(id);
console.log(data?.data);
const { keyMerits, setKeyMerits, slideFromRight } =
useContext(GlobalStateContext);
const firstField = useRef();
const [searchTerm, setSearchTerm] = useState("");
const [deleteAlert, setDeleteAlert] = useState(false);
const [actionId, setActionId] = useState(false);
const [mouseEntered, setMouseEntered] = useState(false);
const [isBtnLoading, setIsBtnLoading] = useState(false);
const [mouseEnteredId, setMouseEnteredId] = useState("");
const { isOpen, onOpen, onClose } = useDisclosure();
const { isOpen: isEditOpen, onOpen: onEditOpen, onClose: onEditCloseOpen } = useDisclosure();
const [ deleteKeyMerits ] = useDeleteKeyMeritsMutation()
const tableHeadRow = ["Sr.no", "Title", "Sub title", "Icon", "Action"];
const handleUpdateStatus = debounce((id) => {
setKeyMerits((prevKeyMerits) =>
prevKeyMerits.map((keyMerits) =>
keyMerits.id === id
? { ...keyMerits, status: !keyMerits.status }
: keyMerits
)
);
toast({
render: () => ,
});
}, 300);
const filteredData = data?.data?.filter((item) => {
// Filter by name (case insensitive)
const name = item.meritsHeader;
const searchLower = searchTerm.toLowerCase();
const nameMatches = name.toLowerCase().includes(searchLower);
return nameMatches;
});
const handleDelete = async () => {
setIsBtnLoading(true)
try {
const res = await deleteKeyMerits(actionId)
if(res?.data?.statusCode === 200){
toast({
render: () => ,
});
setIsBtnLoading(false)
setDeleteAlert(false)
}
} catch (error) {
}
};
const extractedArray = filteredData?.map((item, index) => ({
id: item.id,
"Sr.no": (
{index + 1}
),
Title: (
{item.meritsHeader}
),
"Sub title": (
{item.meritsDescription}
),
Icon: (
item.iconFilePath &&
// https://admin.tanami.betadelivery.com/public/icons/linkedin.png
),
Action: (
{/*
*/}
),
}));
return isLoading ? (
) : (
setSearchTerm(e.target.value)}
/>
}
onClick={onOpen}
size={"sm"}
// width={"44.5%"}
fontSize={"xs"}
rounded={"sm"}
colorScheme="forestGreen"
>
Add key merits
setDeleteAlert(false)}
isOpen={deleteAlert}
message={"Are you sure you want to delete key merit?"}
alertHandler={handleDelete}
isLoading={isBtnLoading}
/>
);
};
export default KeyMerits;