diff --git a/src/App.tsx b/src/App.tsx index 0fa68bb..8a32970 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -53,9 +53,6 @@ const App: React.FC = () => ( - - - diff --git a/src/assets/icons/link.svg b/src/assets/icons/link.svg new file mode 100644 index 0000000..55fb8b0 --- /dev/null +++ b/src/assets/icons/link.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/timeSlot/TimeSlot.module.scss b/src/components/timeSlot/TimeSlot.module.scss index 76237ea..448041d 100644 --- a/src/components/timeSlot/TimeSlot.module.scss +++ b/src/components/timeSlot/TimeSlot.module.scss @@ -78,12 +78,30 @@ text-decoration: none; ion-button { - margin-top: 28vh; + width: 90%; + margin: 0 auto; + margin-top: 18vh; margin-bottom: 0; + --background: #DDDDDD; + } } .active { - color: #33CE93; + box-shadow: 0px 0px 10px #00000039; -} \ No newline at end of file + div { + color: #33CE93; + } +} + +.activeTime { + color: #33CE93 !important; + box-shadow: 0px 0px 10px #00000039; +} + +.buttonActive { + ion-button { + --background: var(--primary-button-color); + } +} \ No newline at end of file diff --git a/src/components/timeSlot/TimeSlot.tsx b/src/components/timeSlot/TimeSlot.tsx index a4b5612..246df35 100644 --- a/src/components/timeSlot/TimeSlot.tsx +++ b/src/components/timeSlot/TimeSlot.tsx @@ -1,13 +1,58 @@ import { IonButton, IonContent, IonIcon, IonPage } from "@ionic/react"; import styles from "./TimeSlot.module.scss"; -import { chevronBack } from 'ionicons/icons' +import { chevronBack, key } from 'ionicons/icons' import { Link } from "react-router-dom"; +import { useState } from "react"; -interface OwnProps { +interface dates { + date: string; + day: string; +} +interface OwnProps { + month: string; + dates: dates[]; + timeSlots: string[]; } -const TimeSlot: React.FC = () => { +const TimeSlot: React.FC = (props) => { + + const [highlightedDate, setHighlightedDate] = useState(); + const [highlightedTime, setHighlightedTime] = useState(""); + + const dates = props.dates.map((date, key) => { + return ( +
setHighlightedDate(date)}> + +
+ {date.day} +
+
+ {date.date} +
+ +
+ ); + }); + + const timeSlots = props.timeSlots.map((timeSlot, key) => { + return ( +
setHighlightedTime(timeSlot)}> + {timeSlot} +
+ ); + }); + + if (highlightedDate && highlightedTime !== "") { + + } + return (
@@ -17,36 +62,20 @@ const TimeSlot: React.FC = () => {
- April-May + {props.month}
-
-
Tue
-
27
-
-
-
Sat
-
29
-
-
-
Mon
-
01
-
-
-
Wed
-
03
-
+ {dates}
-
11:00 AM - 1:00 pm
-
1:00 PM - 3:00 pm
-
3:00 PM - 5:00 pm
+ {timeSlots}
- - Confirm for Apr 29, 2021, 11:00 AM + + Confirm slot
diff --git a/src/pages/skillInformationStep/SkillInformationStep.module.scss b/src/pages/skillInformationStep/SkillInformationStep.module.scss index a10537e..06886c5 100644 --- a/src/pages/skillInformationStep/SkillInformationStep.module.scss +++ b/src/pages/skillInformationStep/SkillInformationStep.module.scss @@ -1,4 +1,4 @@ -ion-content { +.skillInfo { .description { text-align: center; width: 85%; diff --git a/src/pages/skillInformationStep/SkillInformationStep.tsx b/src/pages/skillInformationStep/SkillInformationStep.tsx index 15d39bb..f4b428b 100644 --- a/src/pages/skillInformationStep/SkillInformationStep.tsx +++ b/src/pages/skillInformationStep/SkillInformationStep.tsx @@ -120,7 +120,7 @@ const SkillInformationStep: React.FC = () => { - +

What are you good at?

diff --git a/src/pages/technicalInterview/TechnicalInterview.module.scss b/src/pages/technicalInterview/TechnicalInterview.module.scss index c4f6c63..5c88ccd 100644 --- a/src/pages/technicalInterview/TechnicalInterview.module.scss +++ b/src/pages/technicalInterview/TechnicalInterview.module.scss @@ -1,4 +1,7 @@ ion-content { + display: fixed; + height: 100vh; + width: 100vw; .description { ion-icon { width: 15rem; @@ -8,31 +11,127 @@ ion-content { margin-top: 4rem; } - h4 { - color: #363636; - text-align: center; - font-size: 2.4rem; - font-weight: 300; - letter-spacing: 0.024rem; - margin-top: 3rem; + .meet { + h4 { + color: #363636; + text-align: center; + font-size: 2.4rem; + font-weight: 300; + letter-spacing: 0.024rem; + margin-top: 3rem; + } + p { + color: #868686; + font-size: 1.4rem; + text-align: center; + width: 90%; + margin: 0 auto; + margin-top: 2rem; + line-height: 1.8; + } } - p { - color: #868686; - font-size: 1.4rem; - text-align: center; - width: 90%; - margin: 0 auto; - margin-top: 2rem; - line-height: 1.8; + + .countdown { + display: flex; + flex-direction: column; + align-items: center; + height: 45vh; + justify-content: space-around; + h4 { + color: #363636; + text-align: center; + font-size: 2.4rem; + font-weight: 300; + letter-spacing: 0.024rem; + } + .timeLeft { + .time { + font-size: 3.6rem; + font-weight: 600; + color: #363636; + letter-spacing: 0.036rem; + } + .days { + font-size: 1.3rem; + color: #9F9F9F; + display: flex; + justify-content: space-between; + align-items: center; + width: 95%; + margin: 0 auto; + text-align: center; + } + } + .icon { + width: 6rem; + height: 6rem; + background-color: #33CE93; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + + ion-icon { + width: 2rem; + height: 2rem; + margin: 0; + } + } + } + } .techinicalInterviewBtn { text-decoration: none; ion-button { + width: 95%; + margin: 0 auto; margin-top: 38vh; margin-bottom: 0; + --background: var(--primary-button-color); + } + } + + .buttonHolder { + display: flex; + justify-content: space-around; + align-items: center; + width: 95%; + margin: 0 auto; + margin-top: 7rem; + a { + text-decoration: none; + } + + .dashboardButton { + width: 18rem; + + ion-button { + margin: 0; + --border-style: solid; + --border-width: 0.1rem; + --border-color: var(--primary-button-color); + --background: transparent; + --color: var(--primary-button-color); + font-size: 1.6rem; + font-weight: 600; + } + } + + .nextStepButton { + width: 18rem; + + margin-left: 1rem; + ion-button { + + font-size: 1.6rem; + font-weight: 600; + --background: var(--primary-button-color); + + } } + } } \ No newline at end of file diff --git a/src/pages/technicalInterview/TechnicalInterview.tsx b/src/pages/technicalInterview/TechnicalInterview.tsx index f2d60d2..129961b 100644 --- a/src/pages/technicalInterview/TechnicalInterview.tsx +++ b/src/pages/technicalInterview/TechnicalInterview.tsx @@ -3,26 +3,102 @@ import styles from "./TechnicalInterview.module.scss"; import { IonButton, IonContent, IonIcon, IonPage } from "@ionic/react"; import StepHeader from "../../components/stepsHeader/StepHeader"; import techinicalInterview from "../../assets/icons/Technical_Interview.svg"; +import linkIcon from "../../assets/icons/link.svg"; import { Link } from "react-router-dom"; +import { useState } from "react"; +import TimeSlot from "../../components/timeSlot/TimeSlot"; +interface dates { + date: string; + day: string; +} const TechnicalInterview: React.FC = () => { + + const [isDateSet, setDate] = useState(false); + const [isTimeSlot, setTimeSlot] = useState(false); + + const timeSlots = ["11:00 AM - 1:00 pm", "1:00 PM - 3:00 pm", "3:00 PM - 5:00 pm"]; + + const dates: dates[] = [ + { + date: "27", + day: "Tue" + }, + { + date: "29", + day: "Sat" + }, + { + date: "01", + day: "Mon" + }, + { + date: "03", + day: "Wed" + }, + ] + return (
-

You seem interesting! Let's meet.

-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt. -

+ { + !isDateSet ? +
+

You seem interesting! Let's meet.

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt. +

+
+ : +
+ +

Let's Meet in:

+
+

02 : 04 : 25 : 53

+
+
Days
+
Hrs
+
Mins
+
Secs
+
+
+

Join us on Google Meet

+
+ +
+
+ }
- - Find a slot - + { + !isDateSet ? +
setTimeSlot(true)}> + Find a slot +
+ : +
+ + Goto Dashboard + + + Goto Next Step + +
+ } + + { + isTimeSlot && + + } +
-
+ ); }