import Title from "@/components/Title"; import styles from "./styles.module.css"; import MainButton from "@/components/MainButton"; import { useNavigate } from "react-router-dom"; import routes from "@/routes"; import { useSelector } from "react-redux"; import { selectors } from "@/store"; import { getZodiacSignByDate } from "@/services/zodiac-sign"; import { getRandomArbitrary } from "@/services/random-value"; import { zodiacSignsCompatibility } from "@/data/zodiacSignsCompatibility"; import { useMemo } from "react"; function RelationshipZodiacInfoPage() { const navigate = useNavigate(); const { gender, partnerGender, birthdate, partnerBirthdate } = useSelector( selectors.selectQuestionnaire ); const [zodiacSign, partnerZodiacSign] = [ getZodiacSignByDate(birthdate), getZodiacSignByDate(partnerBirthdate), ]; const randomCompatibility = useMemo(() => { const replaceValues = { _gender_: gender, _zodiacSign_: zodiacSign, _partnerGender_: partnerGender, _partnerZodiacSign_: partnerZodiacSign, }; let result = zodiacSignsCompatibility[ getRandomArbitrary(0, zodiacSignsCompatibility.length) ]; for (const key in replaceValues) { result = result.replace( key, String(replaceValues[key as keyof typeof replaceValues]) ); } return result; }, [gender, partnerGender, partnerZodiacSign, zodiacSign]); const handleBack = () => { navigate(-1); }; const handleNext = () => { navigate( `${routes.client.questionnaire()}/partnerProfile/partnerIsBirthTime` ); }; return (
The zodiac signs Plus The zodiac signs
{partnerZodiacSign} {partnerGender}s

{randomCompatibility}

So how compatible are you?

Let's go further and find out

Back Next
); } export default RelationshipZodiacInfoPage;