From 3e7f5cbd876b29c92fc1cda58aa54a9c591ef026 Mon Sep 17 00:00:00 2001 From: rohan09-raj Date: Wed, 17 Aug 2022 16:37:42 +0530 Subject: lol --- .../LanguageSelect/locales/hi/translation.json | 75 +++++++++++++++++++++- client/src/context/User.js | 28 ++++++++ client/src/index.js | 5 +- .../src/pages/Update/Demographic/Demographic.jsx | 48 +++++++++++++- client/src/pages/Update/Update.jsx | 15 +---- 5 files changed, 154 insertions(+), 17 deletions(-) create mode 100644 client/src/context/User.js (limited to 'client/src') diff --git a/client/src/components/LanguageSelect/locales/hi/translation.json b/client/src/components/LanguageSelect/locales/hi/translation.json index 3b0eadd..a5b3080 100644 --- a/client/src/components/LanguageSelect/locales/hi/translation.json +++ b/client/src/components/LanguageSelect/locales/hi/translation.json @@ -1,4 +1,77 @@ { + "AADHAAR": "आधार", + "MERA_AADHAAR_MERI_PEHCHAN": "मेरा आधार मेरी पहचान", "ENROLLMENT": "उपस्थिति पंजी", - "UPDATE": "अद्यतन" + "UPDATE": "अद्यतन", + "INDIAN_RESIDENT": "भारतीय निवासी", + "NON_RESIDENTIAL_INDIAN": "गैर-आवासीय भारतीय", + "FULL_NAME": "पूरा नाम", + "ENTER_YOUR_FULL_NAME": "अपना पूरा नाम भरें", + "MALE": "पुरुष", + "FEMALE": "मादा", + "OTHER": "अन्य", + "DATE_OF_BIRTH": "जन्म की तारीख", + "MOBILE": "मोबाइल", + "ENTER_YOUR_MOBILE_NUMBER": "अपना मोबाइल नंबर दर्ज करें", + "EMAIL": "ईमेल", + "ENTER_YOUR_EMAIL_ID": "अपना ईमेल आईडी दर्ज करें", + "COUNTRY": "देश", + "STATE": "राज्य", + "DISTRICT": "जिला", + "VILLAGE_TOWN": "गाँव / नगर", + "ENTER_YOUR_VILLAGE_TOWN": "अपना गांव / कस्बा दर्ज करें", + "HOUSE_NUMBER_APARTMENT": "हाउस नंबर / अपार्टमेंट", + "ENTER_YOUR_HOUSE_NUMBER_APARTMENT": "अपना घर नंबर/अपार्टमेंट दर्ज करें", + "STREET_ROAD": "सड़क / सड़क", + "ENTER_YOUR_STREET_ROAD": "अपनी गली / सड़क दर्ज करें", + "AREA_LOCALITY": "क्षेत्र / इलाका", + "ENTER_YOUR_AREA_LOCALITY": "अपना क्षेत्र / इलाका दर्ज करें", + "POST_OFFICE": "डाकघर", + "ENTER_YOUR_AREA_POST_OFFICE": "अपना क्षेत्र डाकघर दर्ज करें", + "LANDMARK": "लैंडमार्क", + "ENTER_ANY_NEAREST_LANDMARK": "कोई भी निकटतम लैंडमार्क दर्ज करें", + "PINCODE": "पिनकोड", + "ENTER_YOUR_AREA_PINCODE": "अपना क्षेत्र पिनकोड दर्ज करें", + "CAPTURE": "कैप्चर", + "RESET": "रीसेट", + "PLEASE_LOOK_INTO_THE_CAMERA": "कृपया कैमरे में देखें", + "CLICK_CAPTURE_TO_CAPTURE_THE_PHOTO": "फ़ोटो कैप्चर करने के लिए कैप्चर करें क्लिक करें", + "CLICK_RESET_TO_REMOVE_THE_CAPTURED_PHOTO": "कैप्चर की गई फ़ोटो को निकालने के लिए रीसेट करें क्लिक करें", + "PROOF_OF_IDENTITY": "पहचान का प्रमाण", + "PROOF_OF_ADDRESS": "पते का प्रमाण", + "PROOF_OF_DOB": "जन्म तिथि का प्रमाण", + "SCAN": "स्कैन", + "KINDLY_CLICK_THE_PICTURE_OF_YOUR_DOCUMENTS": "कृपया अपने दस्तावेज़ों की तस्वीर क्लिक करें", + "ALL_STEPS_COMPLETED": "सभी चरण पूरे हुए - आपका काम पूरा हो गया", + "BACK": "पीछे", + "FINISH": "फिनिश", + "NEXT": "अगला", + "PLEASE_PUT_YOUR_EYES_INSIDE_THE_IRIS_SCANNER": "कृपया अपनी आंखें आईरिस स्कैनर के अंदर रखें।.", + "WAIT_FOR_PROMPT_AND_BEEP_SOUND_TO_REMOVE_YOUR_EYES": "अपनी आंखों को हटाने के लिए संकेत और बीप ध्वनि की प्रतीक्षा करें", + "THANK_YOU_FOR_YOUR_TIME": "आपके समय के लिए धन्यवाद", + "ENSURE_THAT_RECIEVED_A_CONFIRMATION_MESSAGE": "कृपया सुनिश्चित करें कि आपको जाने से पहले एक पुष्टिकरण संदेश प्राप्त हुआ है", + "PLEASE_PUT_YOUR_FINGERS_ON_THE_FINGERPRINT_SCANNER": "कृपया अपनी उंगलियों को एक-एक करके फ़िंगरप्रिंट स्कैनर पर रखें", + "WAIT_FOR_PROMPT_AND_BEEP_SOUND_TO_REMOVE_YOUR_FINGERS": "अपनी उंगलियों को हटाने के लिए संकेत और बीप ध्वनि की प्रतीक्षा करें", + "PLEASE_VERIFY_YOUR_IDENTITY": "कृपया अपने पंजीकृत मोबाइल नंबर xxxxxxxx15 पर ओटीपी प्राप्त करके अपनी पहचान सत्यापित करें", + "SEND_OTP": "ओटीपी भेजें", + "RESEND": "फिर से भेजें", + "PLEASE_SELECT_YOUR_RESIDENCY": "कृपया अपना निवास चुनें", + "PLEASE_ENTER_VALID_EMAIL": "कृपया मान्य ईमेल दर्ज करें", + "PLEASE_SELECT_YOUR_COUNTRY": "कृपया अपना देश चुनें", + "PLEASE_SELECT_YOUR_STATE": "कृपया अपना राज्य चुनें", + "PLEASE_SELECT_YOUR_DISTRICT": "कृपया अपना जिला चुनें", + "PLEASE_ENTER_YOUR_VILLAGE": "कृपया अपने गांव में प्रवेश करें", + "PLEASE_ENTER_YOUR_HOUSE_NUMBER": "कृपया अपने घर का नंबर दर्ज करें", + "PLEASE_ENTER_YOUR_STREET": "कृपया अपनी गली में प्रवेश करें", + "PLEASE_ENTER_YOUR_LOCALITY": "कृपया अपना इलाका दर्ज करें", + "PLEASE_ENTER_YOUR_AREA_POST_OFFICE": "कृपया अपने क्षेत्र के डाकघर में प्रवेश करें", + "PLEASE_ENTER_NEAREST_LANDMARK": "कृपया निकटतम लैंडमार्क दर्ज करें", + "PLEASE_ENTER_YOUR_AREA_PINCODE": "कृपया अपने क्षेत्र का पिनकोड दर्ज करें", + "PLEASE_ENTER_VALID_PINCODE": "कृपया मान्य पिनकोड दर्ज करें", + "I_HEREBY_CONFIRM_THE_IDENTITY_AND_ADDRESS": "मैं ___________ की पहचान और पते को सत्य, सही और सटीक होने की पुष्टि करता हूं", + "PHOTOGRAPH": "फोटोग्राफ", + "FINGERPRINT_SCAN": "फिंगरप्रिंट स्कैन", + "IRIS_SCAN": "आइरिस स्कैन", + "DEMOGRAPHIC": "जनसांख्यिकीय", + "BIOMETRIC": "बायोमेट्रिक" } diff --git a/client/src/context/User.js b/client/src/context/User.js new file mode 100644 index 0000000..fce7eda --- /dev/null +++ b/client/src/context/User.js @@ -0,0 +1,28 @@ +import React, { createContext, useState, useContext } from 'react' + +export const UserContext = createContext() + +export const Context = ({ children }) => { + const [aadhaarNumber, setAadhaarNumber] = useState(null) + const [userData, setUserData] = useState({}) + + const initialUser = { + aadhaarNumber, + setAadhaarNumber, + userData, + setUserData + } + + return ( + {children} + ) +} + +export const userContext = () => { + const context = useContext(UserContext) + if (!context) { + throw new Error(`userContext context can only + be used in a component wrapped with UserContext`) + } + return context +} diff --git a/client/src/index.js b/client/src/index.js index 652a231..0f8c576 100644 --- a/client/src/index.js +++ b/client/src/index.js @@ -5,6 +5,7 @@ import { QueryClient, QueryClientProvider } from 'react-query' import './index.css' import App from './App' import './i18nextInit' +import { Context } from './context/User' const queryClient = new QueryClient() @@ -13,7 +14,9 @@ root.render( - + + + diff --git a/client/src/pages/Update/Demographic/Demographic.jsx b/client/src/pages/Update/Demographic/Demographic.jsx index 27a162a..5be3e3b 100644 --- a/client/src/pages/Update/Demographic/Demographic.jsx +++ b/client/src/pages/Update/Demographic/Demographic.jsx @@ -1,4 +1,6 @@ import React, { useState } from 'react' +import { useQuery } from 'react-query' +import { getUserByAadhaar } from '../../../services/apiservice' import Address from '../Address/Address' import DocumentScanner from '../DocumentScanner/DocumentScanner' import SubmitButton from '../../../components/SubmitButton/SubmitButton' @@ -11,15 +13,43 @@ import { } from '../../../components/RegEx/RegEx' import UpdateSelect from '../UpdateSelect/UpdateSelect' import { useTranslation } from 'react-i18next' +import { userContext } from '../../../context/User' const Demographic = () => { const { t } = useTranslation() + const { aadhaarNumber, userData, setUserData } = userContext() + const [page, setPage] = useState(0) + const isLongEnough = aadhaarNumber?.toString().length > 11 + + const { data } = useQuery( + ['user', aadhaarNumber], + () => getUserByAadhaar(aadhaarNumber), + { + enabled: isLongEnough, + retry: 1, + onSuccess: () => { + while (!data?.data?.name) { + console.log(formData.name) + console.log('success') + setUserData(data?.data) + console.log(data?.data) + console.log(userData?.name) + console.log(data?.data?.name) + setFormData({ + ...formData, + name: userData?.name + }) + } + } + } + ) + const [formData, setFormData] = useState({ name: '', gender: '', - dob: new Date().toISOString().slice(0, 10), + dob: '', mobile: '', email: '', country: '', @@ -31,10 +61,22 @@ const Demographic = () => { locality: '', postOffice: '', landmark: '', - pincode: '', - address: '' + pincode: '' + // address: userData?.address }) + const address = userData?.address + console.log(address) + + console.log( + 'Aadhaar: ', + aadhaarNumber, + 'Islong: ', + isLongEnough, + 'User: ', + userData + ) + const handleSubmit = () => { if (page === 0) { if (formData.name === '' || formData.name.length < 1) { diff --git a/client/src/pages/Update/Update.jsx b/client/src/pages/Update/Update.jsx index afa3bbd..eb0aa58 100644 --- a/client/src/pages/Update/Update.jsx +++ b/client/src/pages/Update/Update.jsx @@ -1,24 +1,15 @@ -import React, { useState } from 'react' +import React from 'react' import { useNavigate } from 'react-router-dom' import Header from '../../components/Header/Header' import styles from './Update.module.css' import Input from '../../components/Input/Input' -// import { useQuery } from 'react-query' import { Grid, Button } from '@mui/material' -// import { getUserByAadhaar } from '../../services/apiservice' -// import { validAadhaar } from '../../components/RegEx/RegEx' +import { userContext } from '../../context/User' const Update = () => { - const [aadhaarNumber, setAadhaarNumber] = useState() + const { aadhaarNumber, setAadhaarNumber } = userContext() const navigate = useNavigate() - // console.log(aadhaarNumber) - // const user = useQuery(['user', aadhaarNumber], () => - // getUserByAadhaar(aadhaarNumber) - // ) - - // console.log(user.data.data) - return ( <>
-- cgit From a6489c671275fc9bf21ec6bdd7db4cb47da86f2c Mon Sep 17 00:00:00 2001 From: Blaster4385 Date: Tue, 16 Aug 2022 16:35:00 +0530 Subject: Mega random super bullshit --- client/public/assets/images/background.png | Bin 0 -> 93110 bytes client/public/assets/images/next_icon.svg | 1 + client/src/components/Header/Header.jsx | 4 +--- client/src/components/Header/Header.module.css | 5 ----- client/src/components/RadioSelect/RadioSelect.jsx | 0 .../src/components/RadioSelect/RadioSelect.module.css | 0 client/src/components/RegEx/RegEx.jsx | 11 ----------- client/src/components/SubmitButton/SubmitButton.jsx | 2 +- client/src/constants/RegEx.js | 11 +++++++++++ client/src/index.css | 5 +++++ client/src/pages/Enrollment/Address/Address.jsx | 1 - client/src/pages/Enrollment/Enrollment.jsx | 2 +- client/src/pages/Enrollment/FormOne/FormOne.jsx | 1 - client/src/pages/Enrollment/FormTwo/FormTwo.jsx | 4 ---- client/src/pages/Update/Demographic/Demographic.jsx | 2 +- 15 files changed, 21 insertions(+), 28 deletions(-) create mode 100644 client/public/assets/images/background.png create mode 100644 client/public/assets/images/next_icon.svg delete mode 100644 client/src/components/RadioSelect/RadioSelect.jsx delete mode 100644 client/src/components/RadioSelect/RadioSelect.module.css delete mode 100644 client/src/components/RegEx/RegEx.jsx create mode 100644 client/src/constants/RegEx.js (limited to 'client/src') diff --git a/client/public/assets/images/background.png b/client/public/assets/images/background.png new file mode 100644 index 0000000..acf96a3 Binary files /dev/null and b/client/public/assets/images/background.png differ diff --git a/client/public/assets/images/next_icon.svg b/client/public/assets/images/next_icon.svg new file mode 100644 index 0000000..4e5714a --- /dev/null +++ b/client/public/assets/images/next_icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/src/components/Header/Header.jsx b/client/src/components/Header/Header.jsx index 1116312..d5e08c4 100644 --- a/client/src/components/Header/Header.jsx +++ b/client/src/components/Header/Header.jsx @@ -1,12 +1,10 @@ import React from 'react' -import { useTranslation } from 'react-i18next' import styles from './Header.module.css' const Header = ({ subheading }) => { - const { t } = useTranslation() return (
-

{t('AADHAAR')}

+

{subheading}

) diff --git a/client/src/components/Header/Header.module.css b/client/src/components/Header/Header.module.css index 8e6084f..2214f1b 100644 --- a/client/src/components/Header/Header.module.css +++ b/client/src/components/Header/Header.module.css @@ -9,11 +9,6 @@ padding: 20px; } -.header__heading { - font-size: var(--font-large); - font-weight: 400; -} - .header__subheading { font-size: var(--font-medium); font-weight: 400; diff --git a/client/src/components/RadioSelect/RadioSelect.jsx b/client/src/components/RadioSelect/RadioSelect.jsx deleted file mode 100644 index e69de29..0000000 diff --git a/client/src/components/RadioSelect/RadioSelect.module.css b/client/src/components/RadioSelect/RadioSelect.module.css deleted file mode 100644 index e69de29..0000000 diff --git a/client/src/components/RegEx/RegEx.jsx b/client/src/components/RegEx/RegEx.jsx deleted file mode 100644 index fca28f1..0000000 --- a/client/src/components/RegEx/RegEx.jsx +++ /dev/null @@ -1,11 +0,0 @@ -export const validString = /^[a-zA-Z]+$/ - -export const validMobileNumber = /^[0-9]{10}$/ - -export const validAadhaar = /^[0-9]{12}$/ - -export const validNumber = /^[0-9]+$/ - -export const validPincode = /^[0-9]{6}$/ - -export const validEmail = /^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$/ diff --git a/client/src/components/SubmitButton/SubmitButton.jsx b/client/src/components/SubmitButton/SubmitButton.jsx index 6098f3c..bcf3543 100644 --- a/client/src/components/SubmitButton/SubmitButton.jsx +++ b/client/src/components/SubmitButton/SubmitButton.jsx @@ -7,7 +7,7 @@ const SubmitButton = ({ onClick, onChange }) => { diff --git a/client/src/constants/RegEx.js b/client/src/constants/RegEx.js new file mode 100644 index 0000000..fca28f1 --- /dev/null +++ b/client/src/constants/RegEx.js @@ -0,0 +1,11 @@ +export const validString = /^[a-zA-Z]+$/ + +export const validMobileNumber = /^[0-9]{10}$/ + +export const validAadhaar = /^[0-9]{12}$/ + +export const validNumber = /^[0-9]+$/ + +export const validPincode = /^[0-9]{6}$/ + +export const validEmail = /^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$/ diff --git a/client/src/index.css b/client/src/index.css index 89ba707..27bb2c9 100644 --- a/client/src/index.css +++ b/client/src/index.css @@ -12,6 +12,11 @@ body { -moz-osx-font-smoothing: grayscale; height: 100%; width: 100%; + background: url('../public/assets/images/background.png') no-repeat center center fixed; + -webkit-background-size: cover; + -moz-background-size: cover; + -o-background-size: cover; + background-size: cover; } code { diff --git a/client/src/pages/Enrollment/Address/Address.jsx b/client/src/pages/Enrollment/Address/Address.jsx index 571d7ad..b6c3809 100644 --- a/client/src/pages/Enrollment/Address/Address.jsx +++ b/client/src/pages/Enrollment/Address/Address.jsx @@ -206,7 +206,6 @@ const Address = ({ formData, setFormData }) => { }) }} placeholder={t('ENTER_YOUR_AREA_PINCODE')} - pattern="[0-9]+" /> diff --git a/client/src/pages/Enrollment/Enrollment.jsx b/client/src/pages/Enrollment/Enrollment.jsx index 76461d2..d4b0a2a 100644 --- a/client/src/pages/Enrollment/Enrollment.jsx +++ b/client/src/pages/Enrollment/Enrollment.jsx @@ -16,7 +16,7 @@ import { validMobileNumber, validPincode, validString -} from '../../components/RegEx/RegEx' +} from '../../constants/RegEx' import { createUser } from '../../services/apiservice' import { useTranslation } from 'react-i18next' diff --git a/client/src/pages/Enrollment/FormOne/FormOne.jsx b/client/src/pages/Enrollment/FormOne/FormOne.jsx index dd336d8..c59621d 100644 --- a/client/src/pages/Enrollment/FormOne/FormOne.jsx +++ b/client/src/pages/Enrollment/FormOne/FormOne.jsx @@ -59,7 +59,6 @@ const FormOne = ({ formData, setFormData }) => { }) }} placeholder={t('ENTER_YOUR_FULL_NAME')} - pattern="[a-zA-z]+" />
diff --git a/client/src/pages/Enrollment/FormTwo/FormTwo.jsx b/client/src/pages/Enrollment/FormTwo/FormTwo.jsx index 6bc6223..205b3d9 100644 --- a/client/src/pages/Enrollment/FormTwo/FormTwo.jsx +++ b/client/src/pages/Enrollment/FormTwo/FormTwo.jsx @@ -21,9 +21,6 @@ const FormTwo = ({ formData, setFormData }) => { }) }} placeholder={t('ENTER_YOUR_MOBILE_NUMBER')} - pattern="[0-9]+" - maxLength="10" - minLength="10" /> { }) }} placeholder={t('ENTER_YOUR_EMAIL_ID')} - pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$" />
diff --git a/client/src/pages/Update/Demographic/Demographic.jsx b/client/src/pages/Update/Demographic/Demographic.jsx index 5be3e3b..6640cd3 100644 --- a/client/src/pages/Update/Demographic/Demographic.jsx +++ b/client/src/pages/Update/Demographic/Demographic.jsx @@ -10,7 +10,7 @@ import { validMobileNumber, validPincode, validString -} from '../../../components/RegEx/RegEx' +} from '../../../constants/RegEx' import UpdateSelect from '../UpdateSelect/UpdateSelect' import { useTranslation } from 'react-i18next' import { userContext } from '../../../context/User' -- cgit From 045bcc1af6579e1a6023f199fbb6e9ca725bd497 Mon Sep 17 00:00:00 2001 From: Blaster4385 Date: Wed, 17 Aug 2022 09:27:12 +0530 Subject: Replace alerts with toasts and fix header image size --- client/package.json | 1 + client/src/components/Header/Header.jsx | 2 +- client/src/components/Header/Header.module.css | 5 +++ client/src/pages/Enrollment/Enrollment.jsx | 41 ++++++++++++---------- .../src/pages/Update/Demographic/Demographic.jsx | 39 ++++++++++---------- 5 files changed, 50 insertions(+), 38 deletions(-) (limited to 'client/src') diff --git a/client/package.json b/client/package.json index 9769511..3a75fec 100644 --- a/client/package.json +++ b/client/package.json @@ -25,6 +25,7 @@ "react-router-dom": "^6.3.0", "react-scripts": "5.0.1", "react-select": "^5.4.0", + "react-toastify": "^9.0.8", "react-webcam": "^7.0.1", "web-vitals": "^2.1.4" }, diff --git a/client/src/components/Header/Header.jsx b/client/src/components/Header/Header.jsx index d5e08c4..a6e8523 100644 --- a/client/src/components/Header/Header.jsx +++ b/client/src/components/Header/Header.jsx @@ -4,7 +4,7 @@ import styles from './Header.module.css' const Header = ({ subheading }) => { return (
- +

{subheading}

) diff --git a/client/src/components/Header/Header.module.css b/client/src/components/Header/Header.module.css index 2214f1b..c67df95 100644 --- a/client/src/components/Header/Header.module.css +++ b/client/src/components/Header/Header.module.css @@ -13,3 +13,8 @@ font-size: var(--font-medium); font-weight: 400; } + +.header__image { + width: 150px; + height: 150px; +} diff --git a/client/src/pages/Enrollment/Enrollment.jsx b/client/src/pages/Enrollment/Enrollment.jsx index d4b0a2a..18529a4 100644 --- a/client/src/pages/Enrollment/Enrollment.jsx +++ b/client/src/pages/Enrollment/Enrollment.jsx @@ -19,6 +19,8 @@ import { } from '../../constants/RegEx' import { createUser } from '../../services/apiservice' import { useTranslation } from 'react-i18next' +import { ToastContainer, toast } from 'react-toastify' +import 'react-toastify/dist/ReactToastify.css' const Enrollment = () => { const { t } = useTranslation() @@ -55,51 +57,51 @@ const Enrollment = () => { const handleSubmit = () => { if (page === 0) { if (formData.indianResident === '') { - return alert(t('PLEASE_SELECT_YOUR_RESIDENCY')) + toast.error(t('PLEASE_SELECT_YOUR_RESIDENCY')) } else if (formData.name === '' || formData.name.length < 1) { - return alert(t('PLEASE_ENTER_YOUR_NAME')) + toast.error(t('PLEASE_ENTER_YOUR_NAME')) } else if (!validString.test(formData.name)) { - return alert(t('PLEASE_ENTER_VALID_NAME')) + toast.error(t('PLEASE_ENTER_VALID_NAME')) } else if (formData.gender === '') { - return alert(t('PLEASE_SELECT_YOUR_GENDER')) + toast.error(t('PLEASE_SELECT_YOUR_GENDER')) } else { setPage(page + 1) } } else if (page === 1) { if (formData.mobile === '') { - return alert(t('PLEASE_ENTER_YOUR_MOBILE_NUMBER')) + toast.error(t('PLEASE_ENTER_YOUR_MOBILE_NUMBER')) } else if (!validMobileNumber.test(formData.mobile)) { - return alert(t('PLEASE_ENTER_VALID_MOBILE_NUMBER')) + toast.error(t('PLEASE_ENTER_VALID_MOBILE_NUMBER')) } else if (formData.email === '') { - return alert(t('PLEASE_ENTER_YOUR_EMAIL')) + toast.error(t('PLEASE_ENTER_YOUR_EMAIL')) } else if (!validEmail.test(formData.email)) { - return alert(t('PLEASE_ENTER_VALID_EMAIL')) + toast.error(t('PLEASE_ENTER_VALID_EMAIL')) } else { setPage(page + 1) } } else if (page === 2) { if (formData.country === '') { - return alert(t('PLEASE_SELECT_YOUR_COUNTRY')) + toast.error(t('PLEASE_SELECT_YOUR_COUNTRY')) } else if (formData.state === '') { - return alert(t('PLEASE_SELECT_YOUR_STATE')) + toast.error(t('PLEASE_SELECT_YOUR_STATE')) } else if (formData.district === '') { - return alert(t('PLEASE_SELECT_YOUR_DISTRICT')) + toast.error(t('PLEASE_SELECT_YOUR_DISTRICT')) } else if (formData.village === '') { - return alert(t('PLEASE_ENTER_YOUR_VILLAGE')) + toast.error(t('PLEASE_ENTER_YOUR_VILLAGE')) } else if (formData.houseNo === '') { - return alert(t('PLEASE_ENTER_YOUR_HOUSE_NUMBER')) + toast.error(t('PLEASE_ENTER_YOUR_HOUSE_NUMBER')) } else if (formData.street === '') { - return alert(t('PLEASE_ENTER_YOUR_STREET')) + toast.error(t('PLEASE_ENTER_YOUR_STREET')) } else if (formData.locality === '') { - return alert(t('PLEASE_ENTER_YOUR_LOCALITY')) + toast.error(t('PLEASE_ENTER_YOUR_LOCALITY')) } else if (formData.postOffice === '') { - return alert(t('PLEASE_ENTER_YOUR_AREA_POST_OFFICE')) + toast.error(t('PLEASE_ENTER_YOUR_AREA_POST_OFFICE')) } else if (formData.landmark === '') { - return alert(t('PLEASE_ENTER_NEAREST_LANDMARK')) + toast.error(t('PLEASE_ENTER_NEAREST_LANDMARK')) } else if (formData.pincode === '') { - return alert(t('PLEASE_ENTER_YOUR_AREA_PINCODE')) + toast.error(t('PLEASE_ENTER_YOUR_AREA_PINCODE')) } else if (!validPincode.test(formData.pincode)) { - return alert(t('PLEASE_ENTER_VALID_PINCODE')) + toast.error(t('PLEASE_ENTER_VALID_PINCODE')) } else { setFormData({ ...formData, @@ -188,6 +190,7 @@ const Enrollment = () => { } return ( <> + {conditionalComponent()} {conditionalButton()} diff --git a/client/src/pages/Update/Demographic/Demographic.jsx b/client/src/pages/Update/Demographic/Demographic.jsx index 6640cd3..8853678 100644 --- a/client/src/pages/Update/Demographic/Demographic.jsx +++ b/client/src/pages/Update/Demographic/Demographic.jsx @@ -14,6 +14,8 @@ import { import UpdateSelect from '../UpdateSelect/UpdateSelect' import { useTranslation } from 'react-i18next' import { userContext } from '../../../context/User' +import { ToastContainer, toast } from 'react-toastify' +import 'react-toastify/dist/ReactToastify.css' const Demographic = () => { const { t } = useTranslation() @@ -80,45 +82,45 @@ const Demographic = () => { const handleSubmit = () => { if (page === 0) { if (formData.name === '' || formData.name.length < 1) { - return alert(t('PLEASE_ENTER_YOUR_NAME')) + toast.error(t('PLEASE_ENTER_YOUR_NAME')) } else if (!validString.test(formData.name)) { - return alert(t('PLEASE_ENTER_VALID_NAME')) + toast.error(t('PLEASE_ENTER_VALID_NAME')) } else if (formData.gender === '') { - return alert(t('PLEASE_SELECT_YOUR_GENDER')) + toast.error(t('PLEASE_SELECT_YOUR_GENDER')) } else if (formData.mobile === '') { - return alert(t('PLEASE_ENTER_YOUR_MOBILE_NUMBER')) + toast.error(t('PLEASE_ENTER_YOUR_MOBILE_NUMBER')) } else if (!validMobileNumber.test(formData.mobile)) { - return alert(t('PLEASE_ENTER_VALID_MOBILE_NUMBER')) + toast.error(t('PLEASE_ENTER_VALID_MOBILE_NUMBER')) } else if (formData.email === '') { - return alert(t('PLEASE_ENTER_YOUR_EMAIL')) + toast.error(t('PLEASE_ENTER_YOUR_EMAIL')) } else if (!validEmail.test(formData.email)) { - return alert(t('PLEASE_ENTER_VALID_EMAIL')) + toast.error(t('PLEASE_ENTER_VALID_EMAIL')) } else { setPage(page + 1) } } else if (page === 1) { if (formData.country === '') { - return alert(t('PLEASE_SELECT_YOUR_COUNTRY')) + toast.error(t('PLEASE_SELECT_YOUR_COUNTRY')) } else if (formData.state === '') { - return alert(t('PLEASE_SELECT_YOUR_STATE')) + toast.error(t('PLEASE_SELECT_YOUR_STATE')) } else if (formData.district === '') { - return alert(t('PLEASE_SELECT_YOUR_DISTRICT')) + toast.error(t('PLEASE_SELECT_YOUR_DISTRICT')) } else if (formData.village === '') { - return alert(t('PLEASE_ENTER_YOUR_VILLAGE')) + toast.error(t('PLEASE_ENTER_YOUR_VILLAGE')) } else if (formData.houseNo === '') { - return alert(t('PLEASE_ENTER_YOUR_HOUSE_NUMBER')) + toast.error(t('PLEASE_ENTER_YOUR_HOUSE_NUMBER')) } else if (formData.street === '') { - return alert(t('PLEASE_ENTER_YOUR_STREET')) + toast.error(t('PLEASE_ENTER_YOUR_STREET')) } else if (formData.locality === '') { - return alert(t('PLEASE_ENTER_YOUR_LOCALITY')) + toast.error(t('PLEASE_ENTER_YOUR_LOCALITY')) } else if (formData.postOffice === '') { - return alert(t('PLEASE_ENTER_YOUR_AREA_POST_OFFICE')) + toast.error(t('PLEASE_ENTER_YOUR_AREA_POST_OFFICE')) } else if (formData.landmark === '') { - return alert(t('PLEASE_ENTER_NEAREST_LANDMARK')) + toast.error(t('PLEASE_ENTER_NEAREST_LANDMARK')) } else if (formData.pincode === '') { - return alert(t('PLEASE_ENTER_YOUR_AREA_PINCODE')) + toast.error(t('PLEASE_ENTER_YOUR_AREA_PINCODE')) } else if (!validPincode.test(formData.pincode)) { - return alert(t('PLEASE_ENTER_VALID_PINCODE')) + toast.error(t('PLEASE_ENTER_VALID_PINCODE')) } else { setFormData({ ...formData, @@ -158,6 +160,7 @@ const Demographic = () => { } return ( <> + {conditionalComponent()} {conditionalButton()} -- cgit From e563ee2f67f5289c0ca50da6f55e874ae8a0136f Mon Sep 17 00:00:00 2001 From: Blaster4385 Date: Wed, 17 Aug 2022 11:25:45 +0530 Subject: Fix string regex --- client/src/constants/RegEx.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'client/src') diff --git a/client/src/constants/RegEx.js b/client/src/constants/RegEx.js index fca28f1..6c2ebbc 100644 --- a/client/src/constants/RegEx.js +++ b/client/src/constants/RegEx.js @@ -1,4 +1,4 @@ -export const validString = /^[a-zA-Z]+$/ +export const validString = /^[a-zA-Z ?]+$/ export const validMobileNumber = /^[0-9]{10}$/ -- cgit From 1af97096f8b7c71967279694c3f5271061d633ad Mon Sep 17 00:00:00 2001 From: Blaster4385 Date: Wed, 17 Aug 2022 17:03:22 +0530 Subject: Fix this shit --- .../src/pages/Update/Demographic/Demographic.jsx | 55 ++++++++++++---------- 1 file changed, 31 insertions(+), 24 deletions(-) (limited to 'client/src') diff --git a/client/src/pages/Update/Demographic/Demographic.jsx b/client/src/pages/Update/Demographic/Demographic.jsx index 8853678..6ce06a1 100644 --- a/client/src/pages/Update/Demographic/Demographic.jsx +++ b/client/src/pages/Update/Demographic/Demographic.jsx @@ -1,4 +1,4 @@ -import React, { useState } from 'react' +import React, { useEffect, useState } from 'react' import { useQuery } from 'react-query' import { getUserByAadhaar } from '../../../services/apiservice' import Address from '../Address/Address' @@ -25,29 +25,6 @@ const Demographic = () => { const isLongEnough = aadhaarNumber?.toString().length > 11 - const { data } = useQuery( - ['user', aadhaarNumber], - () => getUserByAadhaar(aadhaarNumber), - { - enabled: isLongEnough, - retry: 1, - onSuccess: () => { - while (!data?.data?.name) { - console.log(formData.name) - console.log('success') - setUserData(data?.data) - console.log(data?.data) - console.log(userData?.name) - console.log(data?.data?.name) - setFormData({ - ...formData, - name: userData?.name - }) - } - } - } - ) - const [formData, setFormData] = useState({ name: '', gender: '', @@ -67,6 +44,36 @@ const Demographic = () => { // address: userData?.address }) + useEffect(() => { + setFormData({ + ...formData, + ...userData + }) + }, [userData]) + +// Make api call using the provided aadhaar number and set the user data in the context if the api call is successful. Set form data to the user data if the api call is successful and prevent too many re-renders. + const { isLoading, isError, data } = useQuery( + 'user', + async () => { + if (isLongEnough) { + const response = await getUserByAadhaar(aadhaarNumber) + return response + } + } + ) + + if (isLoading) { + return
{t('loading')}
+ } + + if (isError) { + return
{t('error')}
+ } + + if (data) { + setUserData(data?.data) + } + const address = userData?.address console.log(address) -- cgit