Angular job portal app
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

112 lines
4.0 KiB

  1. import styles from "./TechnicalInterview.module.scss";
  2. import { IonButton, IonContent, IonIcon, IonPage } from "@ionic/react";
  3. import StepHeader from "../../components/stepsHeader/StepHeader";
  4. import techinicalInterview from "../../assets/icons/Technical_Interview.svg";
  5. import linkIcon from "../../assets/icons/link.svg";
  6. import { Link } from "react-router-dom";
  7. import { useState } from "react";
  8. import TimeSlot from "../../components/timeSlot/TimeSlot";
  9. interface dates {
  10. date: string;
  11. day: string;
  12. }
  13. const TechnicalInterview: React.FC = () => {
  14. const [isDateSet, setDate] = useState<boolean>(false);
  15. const [isTimeSlot, setTimeSlot] = useState<boolean>(false);
  16. const timeSlots = ["11:00 AM - 1:00 pm", "1:00 PM - 3:00 pm", "3:00 PM - 5:00 pm"];
  17. const dates: dates[] = [
  18. {
  19. date: "27",
  20. day: "Tue"
  21. },
  22. {
  23. date: "29",
  24. day: "Sat"
  25. },
  26. {
  27. date: "01",
  28. day: "Mon"
  29. },
  30. {
  31. date: "03",
  32. day: "Wed"
  33. },
  34. ];
  35. const getDate = (date: string) => {
  36. console.log(date);
  37. setTimeSlot(false);
  38. setDate(true);
  39. }
  40. return (
  41. <IonPage>
  42. <StepHeader stepNumber={3} roundName="Technical Interview" />
  43. <IonContent>
  44. <div className={styles.description}>
  45. <IonIcon src={techinicalInterview} />
  46. {
  47. !isDateSet ?
  48. <div className={styles.meet}>
  49. <h4>You seem interesting! Let's meet.</h4>
  50. <p>
  51. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt.
  52. </p>
  53. </div>
  54. :
  55. <div className={styles.countdown}>
  56. <h4>Let's Meet in:</h4>
  57. <div className={styles.timeLeft}>
  58. <h4 className={styles.time}>02 : 04 : 25 : 53</h4>
  59. <div className={styles.days}>
  60. <div>Days</div>
  61. <div>Hrs</div>
  62. <div>Mins</div>
  63. <div>Secs</div>
  64. </div>
  65. </div>
  66. <h4>Join us on Google Meet</h4>
  67. <div className={styles.icon}>
  68. <IonIcon src={linkIcon} />
  69. </div>
  70. </div>
  71. }
  72. </div>
  73. {
  74. !isDateSet ?
  75. <div className={styles.techinicalInterviewBtn} onClick={() => setTimeSlot(true)}>
  76. <IonButton shape="round" expand='block'>Find a slot</IonButton>
  77. </div>
  78. :
  79. <div className={styles.buttonHolder}>
  80. <Link to="/interviewRounds" className={styles.dashboardButton}>
  81. <IonButton shape="round">Goto Dashboard</IonButton>
  82. </Link>
  83. <Link to="/assignment" className={styles.nextStepButton}>
  84. <IonButton shape="round">Goto Next Step</IonButton>
  85. </Link>
  86. </div>
  87. }
  88. {
  89. isTimeSlot &&
  90. <TimeSlot
  91. month="April -May"
  92. dates={dates}
  93. timeSlots={timeSlots}
  94. getDate={getDate} />
  95. }
  96. </IonContent>
  97. </IonPage >
  98. );
  99. }
  100. export default TechnicalInterview;