From 3b2b39bd067e17527b62af46499d7d2e96d27f36 Mon Sep 17 00:00:00 2001 From: Aswanth Vc Date: Sun, 13 Oct 2024 13:23:15 +0530 Subject: [PATCH 1/2] feat: LC design fix and college selection page on onboarding --- src/App.tsx | 4 + .../CollegePage/CollegePage.module.css | 18 + .../Onboarding/CollegePage/CollegePage.tsx | 406 +++++++++--------- .../Onboarding/UserInterest/UserInterest.tsx | 274 ++++++++---- .../Authentication/services/onboardingApis.ts | 29 ++ .../pages/LcDashboard/LcDashboard.module.css | 33 +- .../LcDashboard/components/LcHistory.tsx | 50 ++- .../pages/LcDashboard/components/LcHome.tsx | 107 ++--- .../pages/LearningCircle.module.css | 3 + 9 files changed, 562 insertions(+), 362 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index 6a3bf7332..8b9c6c752 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -310,6 +310,10 @@ function App() { path: "/register/interests", element: }, + { + path: "/register/organization", + element: + }, { path: "/signin", element: diff --git a/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.module.css b/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.module.css index 2f16e3978..6f649a823 100644 --- a/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.module.css +++ b/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.module.css @@ -8,6 +8,22 @@ } .wrapper form { width: 20rem; + /* background: rgba(238, 242, 255, 1); + border-radius: 10px; + padding: 20px; */ +} +.input_field { + display: flex; + justify-content: space-between; + align-items: center; + padding: 10px; + /* background: #eaeaea; */ + background: #dddddd30; + font-size: 14px; + border-radius: 10px; + margin-top: 20px; + color: rgb(86, 86, 255); + font-weight: 600; } .inputBox { width: 100%; @@ -32,6 +48,8 @@ display: flex; justify-content: center; align-items: center; + margin-top: 20px; + gap: 10px; } .submit button { width: 100%; diff --git a/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.tsx b/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.tsx index 328a67c12..b92c8bf5f 100644 --- a/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.tsx +++ b/src/modules/Common/Authentication/pages/Onboarding/CollegePage/CollegePage.tsx @@ -6,28 +6,30 @@ import { FormikTextInputWithoutLabel as SimpleInput } from "@/MuLearnComponents/ import { useEffect, useState } from "react"; import { getColleges, - getDepartments, - getRoles, - submitUserData + getCompanies, + getDepartments } from "../../../services/newOnboardingApis"; import ReactSelect from "react-select"; import { useLocation, useNavigate } from "react-router-dom"; +import OnboardingTemplate from "../../../components/OnboardingTeamplate/OnboardingTemplate"; +import OnboardingHeader from "../../../components/OnboardingHeader/OnboardingHeader"; +import { Switch } from "@chakra-ui/react"; +import { selectOrganization } from "../../../services/onboardingApis"; const inputObject = { - college: "College Name", + organization: "Organization", department: "Department", graduationYear: "Graduation Year" }; const scheme = z.object({ - college: z + organization: z .string() - .required(`${inputObject.college} is Required`) - .min(3, `${inputObject.college} must be at least 3 characters`) - .max(100, `${inputObject.college} must be at most 100 characters`), + .required(`${inputObject.organization} is Required`) + .min(3, `${inputObject.organization} must be at least 3 characters`) + .max(100, `${inputObject.organization} must be at most 100 characters`), department: z .string() - .required(`${inputObject.department} is Required`) .min(2, `${inputObject.department} must be at least 2 characters`) .max(100, `${inputObject.department} must be at most 100 characters`), graduationYear: z @@ -44,11 +46,7 @@ const scheme = z.object({ }) }); -export default function CollegePage({ - selectedRole -}: { - selectedRole: string; -}) { +export default function CollegePage() { const navigate = useNavigate(); const location = useLocation(); @@ -57,9 +55,9 @@ export default function CollegePage({ const [isloading, setIsLoading] = useState(true); const [colleges, setColleges] = useState([{ id: "", title: "" }]); const [departments, setDepartments] = useState([{ id: "", title: "" }]); - const [roles, setRoles] = useState([{ id: "", title: "" }]); - - const [selectedCollege, setSelectedCollege] = useState({ + const [isCollege, setIsCollege] = useState(true); + const [companies, setCompanies] = useState([{ id: "", title: "" }]); + const [selectedOrganization, setSelectedOrganization] = useState({ id: "", title: "" }); @@ -68,11 +66,6 @@ export default function CollegePage({ title: "" }); - const getRoleTitle = (id: string) => { - const slice = roles.filter(val => val.id === id); - if (slice[0]) return slice[0].title; - }; - const CustomFilter = ( { label, value }: { label: string; value: string }, string: string @@ -83,194 +76,211 @@ export default function CollegePage({ }; useEffect(() => { - if (userData === undefined || userData === null) { - navigate("/register", { replace: true }); - } else { - getColleges({ - setIsLoading: setIsLoading, - setColleges: setColleges - }); - getDepartments({ - setIsLoading: setIsLoading, - setDepartments: setDepartments - }); - getRoles().then((res: any) => { - setRoles(res); - setIsLoading(false); - }); - } + getColleges({ + setIsLoading: setIsLoading, + setColleges: setColleges + }); + getDepartments({ + setIsLoading: setIsLoading, + setDepartments: setDepartments + }); + getCompanies({ + setIsLoading: setIsLoading, + setCompanies: setCompanies + }); }, []); - - // useEffect(() => { - // setSelectedRole( - // roles.find((role: any) => role.id === userData.role)?.title || "" - // ); - // }, [userData, roles]); const onSubmit = async (values: any) => { - const newUserData: any = { - user: { - full_name: userData.user.full_name, - // mobile: userData.user.mobile, - email: userData.user.email, - password: userData.user.password, - district: userData.district - }, - organization: { - ...(values.department !== "Others" && { - department: values.department - }), - year_of_graduation: values.graduationYear, - organizations: [ - ...(values.college !== "Others" ? [values.college] : []), - ...userData.communities - ], - verified: true - } - }; - - if (selectedRole) newUserData.user["role"] = selectedRole; - - if (userData.referral) - newUserData["referral"] = { muid: userData.referral.muid }; - - if (userData.param) { - newUserData["integration"] = userData.integration; - } - - if (userData.role === "Enabler") - delete newUserData.organization.year_of_graduation; - - if (userData.gender) { - newUserData.user["gender"] = userData.gender; - } - - if (userData.dob) { - newUserData.user["dob"] = userData.dob; - } - console.log(newUserData); - - submitUserData({ + selectOrganization({ setIsLoading: setIsLoading, - userData: newUserData, + userData: { + organization: values.organization, + department: values.department, + graduation_year: + values.graduationYear == null || values.graduationYear != "" + ? values.graduationYear + : null + }, navigate: navigate }); }; // console.log(userData); return ( - [key, ""]) - )} - validationSchema={scheme} - onSubmit={(value, action) => onSubmit(value)} - > - {formik => ( -
-
-
-
- Please enter your college details -
-
- ({ - value: college.id, - label: college.title - })) - ] as any - } - name="college" - placeholder="College" - value={selectedCollege.title} - filterOption={CustomFilter} - isDisabled={isloading} - onChange={(e: any) => { - setSelectedCollege(e); - formik.setFieldValue( - "college", - e.value - ); - inputObject.college = e.value; - }} - /> -
- {formik.touched.college && - formik.errors.college && ( - - {formik.errors.college} - - )} -
- ({ - value: department.id, - label: department.title - })) - ] as any - } - name="department" - placeholder="Department" - value={selectedDepartment.title} - isDisabled={isloading} - filterOption={CustomFilter} - onChange={(e: any) => { - setSelectedDepartment(e); - formik.setFieldValue( - "department", - e.value - ); - inputObject.department = e.value; - }} - /> -
- {formik.touched.department && - formik.errors.department && ( - - {formik.errors.department} - - )} - {getRoleTitle(selectedRole) === "Student" && ( + + + [key, ""]) + )} + validationSchema={scheme} + onSubmit={(value, action) => onSubmit(value)} + > + {formik => ( +
+
+ +
+ Please enter your organization details +
+
+ Not a college ?{" "} + { + setIsCollege(!isCollege); + }} + /> +
- ({ + value: college.id, + label: college.title + })) + : companies.map( + company => ({ + value: company.id, + label: company.title + }) + )) + ] as any + } + name="organization" + placeholder={ + isCollege + ? "College" + : "Organization" + } + value={selectedOrganization.title} + filterOption={CustomFilter} + isDisabled={isloading} + onChange={(e: any) => { + setSelectedOrganization(e); + formik.setFieldValue( + "organization", + e.value + ); + inputObject.organization = e.value; + }} /> - {formik.touched.graduationYear && - formik.errors.graduationYear && ( - - {formik.errors.graduationYear} - - )}
- )} + {formik.touched.college && + formik.errors.college && ( + + {formik.errors.college} + + )} + {isCollege ? ( + <> +
+ ({ + value: department.id, + label: department.title + }) + ) + ] as any + } + name="department" + className={styles.inputBox} + placeholder="Department" + value={selectedDepartment.title} + isDisabled={isloading} + filterOption={CustomFilter} + onChange={(e: any) => { + setSelectedDepartment(e); + formik.setFieldValue( + "department", + e.value + ); + inputObject.department = + e.value; + }} + /> +
+ {formik.touched.department && + formik.errors.department && ( + + {formik.errors.department} + + )} +
+ + {formik.touched.graduationYear && + formik.errors + .graduationYear && ( + + { + formik.errors + .graduationYear + } + + )} +
+ + ) : ( + <> + )} -
- - {isloading ? "Please wait..." : "Submit"} - -
- +
+ { + e.preventDefault(); + navigate( + "/dashboard/connect-discord" + ); + }} + > + Skip + + + {isloading + ? "Please wait..." + : "Submit"} + +
+ +
-
- )} - + )} + + ); } diff --git a/src/modules/Common/Authentication/pages/Onboarding/UserInterest/UserInterest.tsx b/src/modules/Common/Authentication/pages/Onboarding/UserInterest/UserInterest.tsx index 68b821748..a464ca17f 100644 --- a/src/modules/Common/Authentication/pages/Onboarding/UserInterest/UserInterest.tsx +++ b/src/modules/Common/Authentication/pages/Onboarding/UserInterest/UserInterest.tsx @@ -17,15 +17,28 @@ import software from "/src/modules/Common/Authentication/assets/interests/softwa import others from "/src/modules/Common/Authentication/assets/interests/others.svg"; const CheckMark = () => ( - - + + ); const INITIAL_INTERESTS = [ { title: "Software", value: "software", img: software, checked: false }, { title: "Maker", value: "maker", img: maker, checked: false }, - { title: "Management", value: "management", img: management, checked: false }, + { + title: "Management", + value: "management", + img: management, + checked: false + }, { title: "Creative", value: "creative", img: creative, checked: false }, { title: "Others", value: "others", img: others, checked: false } ]; @@ -60,17 +73,25 @@ export default function UserInterest() { useEffect(() => { const fetchInterestGroups = async () => { try { - const res = await publicGateway.get(onboardingRoutes.interestGroups); - const data: InterestGroup[] = res.data?.response?.interestGroup ?? []; - - const interestGroupsData = interests.reduce((acc, interest) => ({ - ...acc, - [interest.value]: data.filter(group => group.category === interest.value) - }), {}); - + const res = await publicGateway.get( + onboardingRoutes.interestGroups + ); + const data: InterestGroup[] = + res.data?.response?.interestGroup ?? []; + + const interestGroupsData = interests.reduce( + (acc, interest) => ({ + ...acc, + [interest.value]: data.filter( + group => group.category === interest.value + ) + }), + {} + ); + setInterestGroups(interestGroupsData); } catch (err) { - console.error('Failed to fetch interest groups:', err); + console.error("Failed to fetch interest groups:", err); } }; @@ -80,24 +101,34 @@ export default function UserInterest() { const handleChange = useCallback((value: string, isInterest: boolean) => { const setter = isInterest ? setInterests : setEndgoals; const otherSetter = isInterest ? setOtherInterest : setOtherEndgoal; - - - setter((prev:any) => { - const newItems = prev.map((item:any) => - item.value === value ? { ...item, checked: !item.checked } : item + + setter((prev: any) => { + const newItems = prev.map((item: any) => + item.value === value + ? { ...item, checked: !item.checked } + : item ); - - if (value === "others" && newItems.find((item:any) => item.value === "others")?.checked === false) { + + if ( + value === "others" && + newItems.find((item: any) => item.value === "others") + ?.checked === false + ) { otherSetter([]); } - + return newItems; }); }, []); const handleContinue = useCallback(() => { - const selectedInterests = interests.filter(interest => interest.checked); - if (selectedInterests.some(i => i.value === "others") && otherInterest.length === 0) { + const selectedInterests = interests.filter( + interest => interest.checked + ); + if ( + selectedInterests.some(i => i.value === "others") && + otherInterest.length === 0 + ) { return; } if (selectedInterests.length > 0 || otherInterest.length > 0) { @@ -106,9 +137,13 @@ export default function UserInterest() { }, [interests, otherInterest]); const handleSubmit = useCallback(async () => { - const selectedInterests = interests.filter(i => i.checked).map(i => i.value); - const selectedEndgoals = endgoals.filter(e => e.checked).map(e => e.value); - + const selectedInterests = interests + .filter(i => i.checked) + .map(i => i.value); + const selectedEndgoals = endgoals + .filter(e => e.checked) + .map(e => e.value); + const data = { choosen_interests: selectedInterests, choosen_endgoals: selectedEndgoals, @@ -117,80 +152,123 @@ export default function UserInterest() { }; try { - const res = await privateGateway.post(onboardingRoutes.interests, data); + const res = await privateGateway.post( + onboardingRoutes.interests, + data + ); toast.success(res.data?.message.general[0]); - navigate("/dashboard/connect-discord"); + navigate("/register/organization"); } catch (err: any) { - toast.error(err.response?.data.message.general[0] || "Unexpected Error occurred"); + toast.error( + err.response?.data.message.general[0] || + "Unexpected Error occurred" + ); } }, [interests, endgoals, otherInterest, otherEndgoal, navigate]); const isInterestSelected = interests.some(interest => interest.checked); const isEndgoalSelected = endgoals.some(endgoal => endgoal.checked); - const renderItems = useCallback((items: typeof interests | typeof endgoals, isInterest: boolean) => ( -
- {items.map(item => { - const isOthers = item.value === "others"; - const isChecked = item.checked; - const otherItems = isInterest ? otherInterest : otherEndgoal; - const setOtherItems = isInterest ? setOtherInterest : setOtherEndgoal; - - return ( -
handleChange(item.value, isInterest)} - > - {isChecked && } - {isInterest ? ( -
- -

{item.title}

-
- ) : ( -

{item.title}

- )} - {isInterest && ( - <> -
e.stopPropagation()}> - - - - -
-
-

This category includes:

-
    - {interestGroups[item.value]?.map((group: InterestGroup) => ( -
  • {group.name}
  • - ))} -
+ const renderItems = useCallback( + (items: typeof interests | typeof endgoals, isInterest: boolean) => ( +
+ {items.map(item => { + const isOthers = item.value === "others"; + const isChecked = item.checked; + const otherItems = isInterest + ? otherInterest + : otherEndgoal; + const setOtherItems = isInterest + ? setOtherInterest + : setOtherEndgoal; + + return ( +
handleChange(item.value, isInterest)} + > + {isChecked && } + {isInterest ? ( +
+ +

{item.title}

- - )} - {isOthers && isChecked && ( -
e.stopPropagation()}> - { - if (e.target.value.length > 0) { - setOtherItems([...otherItems, e.target.value]); - e.target.value = ""; + ) : ( +

{item.title}

+ )} + {isInterest && ( + <> +
e.stopPropagation()} + > + + + + +
+
+

This category includes:

+
    + {interestGroups[item.value]?.map( + (group: InterestGroup) => ( +
  • + {group.name} +
  • + ) + )} +
+
+ + )} + {isOthers && isChecked && ( +
e.stopPropagation()}> + { + if (e.target.value.length > 0) { + setOtherItems([ + ...otherItems, + e.target.value + ]); + e.target.value = ""; + } + }} + onChange={setOtherItems} + name={`other_${ + isInterest + ? "interests" + : "endgoals" + }`} + placeHolder={`Specify your ${ + isInterest ? "interest" : "endgoal" + }`} + separators={ + isInterest ? [","] : undefined } - }} - onChange={setOtherItems} - name={`other_${isInterest ? 'interests' : 'endgoals'}`} - placeHolder={`Specify your ${isInterest ? 'interest' : 'endgoal'}`} - separators={isInterest ? [","] : undefined} - /> -
- )} -
- ); - })} -
- ), [handleChange, interestGroups, otherInterest, otherEndgoal]); + /> +
+ )} +
+ ); + })} +
+ ), + [handleChange, interestGroups, otherInterest, otherEndgoal] + ); return ( <> @@ -201,12 +279,20 @@ export default function UserInterest() {
mulearn -

{stepTwo ? "What describes you the most!" : "Your dynamic area of interest!"}

+

+ {stepTwo + ? "What describes you the most!" + : "Your dynamic area of interest!"} +

- {stepTwo ? "Choose one or goals you expect from µLearn." : "Please select your interested area"} + {stepTwo + ? "Choose one or goals you expect from µLearn." + : "Please select your interested area"}

- - {stepTwo ? renderItems(endgoals, false) : renderItems(interests, true)} + + {stepTwo + ? renderItems(endgoals, false) + : renderItems(interests, true)} {(stepTwo ? isEndgoalSelected : isInterestSelected) && ( ); -} \ No newline at end of file +} diff --git a/src/modules/Common/Authentication/services/onboardingApis.ts b/src/modules/Common/Authentication/services/onboardingApis.ts index 9c6905945..874bd892a 100644 --- a/src/modules/Common/Authentication/services/onboardingApis.ts +++ b/src/modules/Common/Authentication/services/onboardingApis.ts @@ -4,6 +4,8 @@ import { NavigateFunction } from "react-router-dom"; import { useFormik } from "formik"; import { getInfo } from "../../../Dashboard/modules/ConnectDiscord/services/apis"; import { Dispatch, SetStateAction } from "react"; +import { privateGateway } from "@/MuLearnServices/apiGateways"; +import toast from "react-hot-toast"; // Define the type of MyValues type NN = { name: string; id: string }; @@ -234,6 +236,33 @@ export const getCommunities = ({ setIsLoading && setIsLoading(false); }; +export const selectOrganization = async ({ + setIsLoading, + userData, + navigate +}: { + setIsLoading: Dispatch>; + userData: Object; + navigate: NavigateFunction; +}) => { + try { + setIsLoading(true); + const res = await privateGateway.post( + "/api/v1/dashboard/user/organization/", + userData + ); + if (res.status == 200 && !res.data.hasError) { + toast.success(res.data.message.general[0]); + navigate("/dashboard/connect-discord"); + } else { + toast.error("Organization selection failed."); + } + setIsLoading(false); + } catch (err: any) { + toast.error("Unable to select organization."); + } +}; + // POST request for registration export const registerUser = ( setFormSuccess: FormSuccess, diff --git a/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/LcDashboard.module.css b/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/LcDashboard.module.css index 07384052b..4bc69c08d 100644 --- a/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/LcDashboard.module.css +++ b/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/LcDashboard.module.css @@ -161,7 +161,6 @@ width: 45%; } .ReportWrapper .DetailSection .Sectionone > div label { - color: black; font-size: 18px; font-weight: 600; } @@ -187,7 +186,6 @@ gap: 10px; } .ReportWrapper .DetailSection .SectionTwo p { - color: black; font-size: 18px; font-weight: 600; } @@ -405,17 +403,37 @@ align-items: flex-start; } .HistoryDataWrapper .Headings { - width: 38%; + width: 43%; text-align: left; } .HistoryDataWrapper .detailedSection { - width: 60%; + width: 55%; } .HistoryDataWrapper .SectionBottom .Headings > div { display: flex; flex-wrap: wrap; gap: 5px; } +.Headings .meetupTags { + display: flex; + flex-direction: row; + flex-wrap: wrap; + width: 100%; + + .meetupInfoTag { + display: flex; + gap: 10px; + align-items: center; + justify-content: start; + padding: 5px 10px; + background-color: white; + color: #456ff6; + border: 1px dashed #456ff6; + border-radius: 10px; + margin: 5px; + } +} + .HistoryDataWrapper .SectionBottom .detailedSection { display: flex !important; flex-direction: row; @@ -463,7 +481,7 @@ display: flex; width: 100%; justify-content: space-between; - gap: 2%; + gap: 20px; flex-wrap: wrap; } @@ -536,7 +554,7 @@ .ContainerWrapper .ContentWrapper .BottomContainer { display: flex; flex-direction: column; - width: 100%; + width: 68%; gap: 10px; } .ContainerWrapper .ContentWrapper .BottomContainer > div { @@ -556,6 +574,9 @@ .ContainerWrapper .ContentWrapper .TopContainer .sectionOne { width: 100%; } + .ContainerWrapper .ContentWrapper .TopContainer .BottomContainer { + width: 100%; + } .ContainerWrapper .ContentWrapper .TopContainer { gap: 15px; } diff --git a/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHistory.tsx b/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHistory.tsx index 14d27edaa..aff699a78 100644 --- a/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHistory.tsx +++ b/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHistory.tsx @@ -11,6 +11,7 @@ import { } from "../../../services/utils"; import MuLoader from "@/MuLearnComponents/MuLoader/MuLoader"; import { PowerfulButton } from "@/MuLearnComponents/MuButtons/MuButton"; +import toast from "react-hot-toast"; type Props = { id: string | undefined; @@ -37,7 +38,41 @@ const LcHistory = (props: Props) => {

{props.lc?.title}

{getDayOfWeek(props.lc?.meet_time)}

-
+
+ {props.lc.is_lc_member && ( +
+

{ + navigator.clipboard.writeText( + props.lc?.meet_code ?? + "NOTCOPIED" + ); + toast.success("Code Copied"); + }} + > + {" "} + + + + + {props.lc.meet_code} +

+

+ {props.lc.total_interested}{" "} + Interests Submitted +

+

+ {props.lc.total_joined} Joined +

+
+ )} {

Venue:{" "} @@ -55,19 +90,6 @@ const LcHistory = (props: Props) => { ) )}

- {props.lc.is_lc_member && ( - <> -

Meet Code: {props.lc.meet_code}

-

- Total interests: - {" " + props.lc.total_interested} -

-

- Total joinees: - {" " + props.lc.total_joined} -

- - )}
diff --git a/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHome.tsx b/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHome.tsx index 22cc8ec0f..b2af21824 100644 --- a/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHome.tsx +++ b/src/modules/Dashboard/modules/LearningCircle/pages/LcDashboard/components/LcHome.tsx @@ -1,6 +1,6 @@ import { Dispatch, SetStateAction, useEffect, useState } from "react"; import styles from "../LcDashboard.module.css"; -import { CalenderIcon, EditLogo, RightArrow } from "../../../assets/svg"; +import { CalenderIcon, RightArrow } from "../../../assets/svg"; import LcReport from "./LcReport"; import { convertToFormatedDate } from "../../../../../utils/common"; import LcMeetCreate from "./LcMeetCreate"; @@ -214,7 +214,8 @@ const LcHome = (props: Props) => { Kindly schedule a meeting.

- + Schedule Meet + )}
@@ -253,55 +254,61 @@ const LcHome = (props: Props) => { )}
-
- {props.lc?.previous_meetings && - props.lc?.previous_meetings.length > 0 && ( -

Your past meetings

- )} -
- {pastMeetups.map((report, index) => ( -
{ - navigate( - "/dashboard/learning-circle/meetup/" + - report.id - ); - }} - > -
-

{index + 1}.

-

- {convertToFormatedDate( - report.meet_time - )} -

-
-
-

- {convertToFormatedDate( - report.meet_time - )}{" "} - {convert24to12( - extract24hTimeFromDateTime( + {!props.temp.isSchedule && + !props.temp.isTeam && + !props.temp.isReport ? ( +

+ {props.lc?.previous_meetings && + props.lc?.previous_meetings.length > 0 && ( +

Your past meetings

+ )} +
+ {pastMeetups.map((report, index) => ( +
{ + navigate( + "/dashboard/learning-circle/meetup/" + + report.id + ); + }} + > +
+

{index + 1}.

+

+ {convertToFormatedDate( report.meet_time - ) - )} -

- + )} +

+
+
+

+ {convertToFormatedDate( + report.meet_time + )}{" "} + {convert24to12( + extract24hTimeFromDateTime( + report.meet_time + ) + )} +

+ +
-
- ))} + ))} +
-
+ ) : ( + <> + )}
{/* {props.temp.isReport ? ( diff --git a/src/modules/Dashboard/modules/LearningCircle/pages/LearningCircle.module.css b/src/modules/Dashboard/modules/LearningCircle/pages/LearningCircle.module.css index 8ae409cd5..ddc43678a 100644 --- a/src/modules/Dashboard/modules/LearningCircle/pages/LearningCircle.module.css +++ b/src/modules/Dashboard/modules/LearningCircle/pages/LearningCircle.module.css @@ -165,6 +165,9 @@ .learningCircleLandingPageLevel div { font-size: 0.8rem; } + .learningCircleLandingPage .learningCircleLandingPageButton button { + font-size: 15px; + } } @media (width<=820px) { From 77d09c1e0d98ff278adae57eeb3217ce18c14a06 Mon Sep 17 00:00:00 2001 From: Aswanth Vc Date: Sun, 13 Oct 2024 13:28:31 +0530 Subject: [PATCH 2/2] fix: removed error causing attribute --- .../Authentication/pages/Onboarding/RolePage/RolePage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/Common/Authentication/pages/Onboarding/RolePage/RolePage.tsx b/src/modules/Common/Authentication/pages/Onboarding/RolePage/RolePage.tsx index caa300853..c98715aef 100644 --- a/src/modules/Common/Authentication/pages/Onboarding/RolePage/RolePage.tsx +++ b/src/modules/Common/Authentication/pages/Onboarding/RolePage/RolePage.tsx @@ -120,7 +120,7 @@ export default function Rolepage() {
*/} {nextPage && (nextPage === "select-college" ? ( - + ) : ( ))}