import { Link } from "react-router-dom"; import styles from "./styles.module.css"; import Onboarding from "../Onboarding"; import { useRef, useState } from "react"; import TextWithFinger from "../TextWithFinger"; import { useDispatch, useSelector } from "react-redux"; import { actions, selectors } from "@/store"; import { useTranslation } from "react-i18next"; export interface INavbarHomeItems { title: string; paths: string[]; image: string; path: string; active?: boolean; onClick?: () => void; } interface INavbarHomeProps { items: INavbarHomeItems[]; } function NavbarFooter({ items }: INavbarHomeProps): JSX.Element { const dispatch = useDispatch(); const { t } = useTranslation(); const onboardingConfigNavbarFooter = useSelector( selectors.selectOnboardingNavbarFooter ); const [isShowOnboardingNavbarFooter, setIsShowOnboardingNavbarFooter] = useState(!onboardingConfigNavbarFooter.isShown); const [selectedOnboarding, setSelectedOnboarding] = useState(3); const buttonsRef = useRef([] as HTMLDivElement[]); const setShownOnboarding = () => { setIsShowOnboardingNavbarFooter(false); dispatch( actions.onboardingConfig.update({ navbarFooter: { isShown: true, }, }) ); }; const onboardingsSettings = [ { text: t("au.web_onbording.breathing"), onClick: () => setSelectedOnboarding(2), classNameText: `${styles["breathing-onboarding__text"]} ${styles.onboarding}`, }, { text: t("au.web_onbording.onboarding_2"), onClick: () => setSelectedOnboarding(2), }, { text: t("au.web_onbording.compatibility"), onClick: () => setShownOnboarding(), classNameText: `${styles["compatibility-onboarding__text"]} ${styles.onboarding}`, }, { text: t("au.web_onbording.moon"), onClick: () => setSelectedOnboarding(0), classNameText: `${styles["moon-onboarding__text"]} ${styles.onboarding}`, }, ]; const handleClick = (item: INavbarHomeItems) => { onboardingsSettings[selectedOnboarding].onClick(); if (item.onClick) { item.onClick(); } }; return (
{items.map((item, index) => (
(buttonsRef.current[index] = el as HTMLDivElement)} > {isShowOnboardingNavbarFooter && ( onboardingsSettings[index].onClick()} classNameText={onboardingsSettings[index].classNameText} /> )} { handleClick(item); }} >
{/* {item.title} */}

{item.title}

))}
); } export default NavbarFooter;