import React, { useState } from "react"; import { apiRequest } from "@api/request"; import { useNotification } from "@hooks/useNotification"; import BaseButton from "@components/Common/BaseButton/BaseButton"; import ModalLayout from "@components/Common/ModalLayout/ModalLayout"; import anyMoment from "assets/icons/anyMoment.svg"; import doc from "assets/icons/doc.svg"; import telegramLogo from "assets/icons/tgLogo.svg"; import "./modalRegistration.scss"; export const ModalRegistration = ({ active, setActive }) => { const [inputsValue, setInputsValue] = useState({ userName: "", email: "", password: "", }); const validateEmail = (email) => { // регулярное выражение для проверки email const re = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; // возвращаем true, если email проходит проверку, и false, если нет return re.test(email); } const { showNotification } = useNotification(); const submitHandler = () => { apiRequest("/register/sign-up", { method: "POST", data: { username: inputsValue.userName, email: inputsValue.email, password: inputsValue.password, }, }).then(() => { setActive(false); showNotification({ show: true, text: "Аккаунт успешно создан", type: "success", }); }); }; return (

Подключайтесь к

itguild.

Зарегистрируйтесь и назначайте собеседования любым специалистам без задержек

Ваше имя
setInputsValue((prevValue) => ({ ...prevValue, userName: e.target.value, })) } placeholder="Name" />
E-mail
setInputsValue((prevValue) => ({ ...prevValue, email: e.target.value, })) } placeholder="Email" />
{/*
Название компании
*/} {/**/}
Пароль
setInputsValue((prevValue) => ({ ...prevValue, password: e.target.value, })) } placeholder="Password" />
{ e.preventDefault(); submitHandler(); }} styles={ inputsValue.userName && validateEmail(inputsValue.email) && inputsValue.password ? "button-box__submit" : "button-box__submit disable" } > Отправить {/*
*/} {/* У вас уже есть аккаунт?

Войти

*/} {/*
*/}

Отказ от специалиста в любой момент

Поменяйте, откажитесь или возьмите еще специалиста в любой момент работы.

100% постоплата

Договор не подразумевает какую‑либо оплату до того, как вы арендовали специалиста

Есть вопросы?

Напишите нам в Телеграм. Мы с удовольствием ответим!

setActive(false)} className="exit">
); }; export default ModalRegistration;