import React, { useEffect, useState } from "react";
import { Link, useLocation } from "react-router-dom";
import CustomBreadcrumb from "../../Breadcrumb/CustomBreadcrumb";
import Icons from "../../Helpers/Icons";
import Layout from "../../Partials/Layout";
import { AddFamily, FamilyBanner, Relatives } from "./Tabs";
const FamilySettings = () => {
let { state } = useLocation();
const tabs = [
{
id: 1,
name: "add_family",
title: "Add Family",
iconName: "new-family",
},
{
id: 2,
name: "relatives",
title: "Relatives",
iconName: "people-hover",
},
{
id: 3,
name: "family_banner",
title: "Family Banner",
iconName: "people-hover",
},
];
const [tab, setTab] = useState(() => {
// Retrieve the active tab from local storage or use the default tab
return localStorage.getItem("activeTab") || tabs[0].name;
});
const tabHandler = (value) => {
setTab(value);
};
// Update local storage when the tab changes
useEffect(() => {
localStorage.setItem("activeTab", tab);
}, [tab]);
const tabComponents = {
add_family: ,
relatives: ,
family_banner: ,
};
const defaultTabComponent = Array(tabComponents)[0].add_family;
const selectedComponent = tabComponents[tab] || defaultTabComponent;
return (
{/* heading */}
{tabs.map(({ name, id, title, iconName }) => (
- tabHandler(name)}
key={id}
className={`flex lg:space-x-4 space-x-2 hover:text-purple transition-all duration-300 ease-in-out items-center cursor-pointer lg:mb-11 mb-2 mr-6 lg:mr-0 float-left lg:float-none overflow-hidden ${
tab === name ? "text-purple" : " text-thin-light-gray"
}`}
>
))}
);
};
export default FamilySettings;