| @@ -0,0 +1,3 @@ | |||||
| @import '/src/common/styles/global.scss'; | |||||
| /* Theme variables */ | |||||
| @import '/src/theme/variables.scss'; | |||||
| @@ -19,8 +19,8 @@ import '@ionic/react/css/text-transformation.css'; | |||||
| import '@ionic/react/css/flex-utils.css'; | import '@ionic/react/css/flex-utils.css'; | ||||
| import '@ionic/react/css/display.css'; | import '@ionic/react/css/display.css'; | ||||
| /* Theme variables */ | |||||
| import './theme/variables.css'; | |||||
| import './App.scss'; | |||||
| import ConnectWithUs from './pages/ConnectWithUs'; | |||||
| setupIonicReact(); | setupIonicReact(); | ||||
| @@ -31,6 +31,9 @@ const App: React.FC = () => ( | |||||
| <Route exact path="/WorkWithUs"> | <Route exact path="/WorkWithUs"> | ||||
| <WorkWithUs /> | <WorkWithUs /> | ||||
| </Route> | </Route> | ||||
| <Route exact path="/ConnectWithUs"> | |||||
| <ConnectWithUs /> | |||||
| </Route> | |||||
| <Route exact path="/"> | <Route exact path="/"> | ||||
| <Redirect to="/WorkWithUs" /> | <Redirect to="/WorkWithUs" /> | ||||
| </Route> | </Route> | ||||
| @@ -0,0 +1,3 @@ | |||||
| <svg xmlns="http://www.w3.org/2000/svg" width="6.092" height="9.658" viewBox="0 0 6.092 9.658"> | |||||
| <path id="back" d="M10.889.857,6,5.747l4.768,4.768,1.2-1.2L8.4,5.747l3.688-3.688Z" transform="translate(-6 -0.857)" fill-rule="evenodd"/> | |||||
| </svg> | |||||
| @@ -0,0 +1,15 @@ | |||||
| @import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200&display=swap'); | |||||
| @import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200&family=Poppins:wght@100&display=swap'); | |||||
| :root { | |||||
| /* font size */ | |||||
| font-size: 62.5%; | |||||
| font-family: 'Poppins', sans-serif; | |||||
| /* box-sizing */ | |||||
| box-sizing: border-box; | |||||
| /* margin and padding */ | |||||
| margin: 0; | |||||
| padding: 0; | |||||
| } | |||||
| @@ -0,0 +1,142 @@ | |||||
| .tempDiv { | |||||
| background-color: black; | |||||
| height: 100vh; | |||||
| width: 100vw; | |||||
| .descriptionModal { | |||||
| position: absolute; | |||||
| left: 0; | |||||
| // top: 20%; | |||||
| top: calc(100vh - 56rem); | |||||
| background-color: #FFFFFF; | |||||
| // height: 80vh; | |||||
| // height: 80%; | |||||
| height: 56rem; | |||||
| width: 100vw; | |||||
| border-radius: 3rem 3rem 0rem 0rem; | |||||
| display: flex; | |||||
| flex-direction: column; | |||||
| justify-content: space-between; | |||||
| .iconHolder { | |||||
| display: flex; | |||||
| justify-content: space-around; | |||||
| align-items: center; | |||||
| margin-top: 2.5rem; | |||||
| .developerIcon { | |||||
| background-color: #F2F2F2; | |||||
| border-radius: 2.5rem; | |||||
| width: 5rem; | |||||
| height: 5rem; | |||||
| svg { | |||||
| margin-left: 1.4rem; | |||||
| margin-top: 1.2rem; | |||||
| width: 2.8rem; | |||||
| height: 2.8rem; | |||||
| } | |||||
| } | |||||
| } | |||||
| .roleHeader { | |||||
| text-align: center; | |||||
| // margin: 2rem 0; | |||||
| h3 { | |||||
| color: #676767; | |||||
| font-size: 2.1rem; | |||||
| margin: 0; | |||||
| font-family: 'Oswald', sans-serif; | |||||
| font-weight: 600; | |||||
| letter-spacing: 0.1rem; | |||||
| margin-bottom: 0.4rem; | |||||
| } | |||||
| div { | |||||
| color: #A3A3A3; | |||||
| font-size: 1.4rem; | |||||
| font-weight: 600; | |||||
| } | |||||
| } | |||||
| .jd { | |||||
| display: flex; | |||||
| justify-content: center; | |||||
| button { | |||||
| width: 16rem; | |||||
| height: 4.5rem; | |||||
| border-radius: 1rem; | |||||
| font-size: 1.4rem; | |||||
| font-weight: 600; | |||||
| } | |||||
| .requirement { | |||||
| background-color: #DAF3F5; | |||||
| color: #6CB3B9; | |||||
| } | |||||
| .description { | |||||
| background-color: #EDEDED; | |||||
| color: #A3A3A3; | |||||
| margin-left: 2rem; | |||||
| } | |||||
| } | |||||
| .qualification { | |||||
| width: 95%; | |||||
| overflow-y: scroll; | |||||
| max-height: 28.2rem; | |||||
| h4 { | |||||
| font-family: 'Oswald', sans-serif; | |||||
| color: #747474; | |||||
| font-size: 1.8rem; | |||||
| font-weight: 600; | |||||
| margin-left: 2.8rem; | |||||
| } | |||||
| ul { | |||||
| list-style: none; | |||||
| li { | |||||
| color: #A3A3A3; | |||||
| font-weight: 600; | |||||
| font-size: 1.4rem; | |||||
| line-height: 1.6; | |||||
| margin-left: 1.8rem; | |||||
| position: relative; | |||||
| &::before { | |||||
| content: ""; | |||||
| position: absolute; | |||||
| background: #BEBEBE; | |||||
| width: 0.8rem; | |||||
| height: 0.8rem; | |||||
| border-radius: 50%; | |||||
| left: -3rem; | |||||
| top: 0.7rem; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| .applyBtn { | |||||
| display: flex; | |||||
| justify-content: center; | |||||
| // margin-bottom: 2rem; | |||||
| background-color: #FFFFFF; | |||||
| box-shadow: 0rem -0.2rem 2.5rem #0000001C; | |||||
| height: 7.7rem; | |||||
| button { | |||||
| width: 30rem; | |||||
| height: 4rem; | |||||
| background-color: #33CE93; | |||||
| border-radius: 2.5rem; | |||||
| color: #FFFFFF; | |||||
| font-size: 1.6rem; | |||||
| font-weight: 600; | |||||
| align-self: center; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,59 @@ | |||||
| import styles from './JobDescriptionModal.module.scss' | |||||
| import { ReactComponent as BackIcon } from '../assets/icons/back-2.svg'; | |||||
| import { ReactComponent as ShareIcon } from '../assets/icons/share.svg'; | |||||
| import { ReactComponent as DeveloperIcon } from '../assets/icons/Developer.svg'; | |||||
| interface Props { } | |||||
| const JobDescriptionModal: React.FC<Props> = (props) => { | |||||
| return ( | |||||
| <div className={styles.tempDiv}> | |||||
| <div className={styles.descriptionModal}> | |||||
| <div className={styles.iconHolder}> | |||||
| <div className={styles.backIcon}> | |||||
| <BackIcon /> | |||||
| </div> | |||||
| <div className={styles.developerIcon}> | |||||
| <DeveloperIcon /> | |||||
| </div> | |||||
| <div className={styles.shareIcon}> | |||||
| <ShareIcon /> | |||||
| </div> | |||||
| </div> | |||||
| <div className={styles.roleHeader}> | |||||
| <h3>Software Developer</h3> | |||||
| <div>Full stack developer</div> | |||||
| </div> | |||||
| <div className={styles.jd}> | |||||
| <button className={styles.requirement}>Min Requirement</button> | |||||
| <button className={styles.description}>Job Description</button> | |||||
| </div> | |||||
| <div className={styles.qualification}> | |||||
| <h4>Minimum Qualification:</h4> | |||||
| <ul> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur adipisicing elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur adipisicing elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur adipisicing elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur adipisicing elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur adipisicing elit.</li> | |||||
| <li>Lorem, ipsum dolor sit amet consectetur adipisicing elit.</li> | |||||
| </ul> | |||||
| </div> | |||||
| <div className={styles.applyBtn}> | |||||
| <button>Apply Now!</button> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| ) | |||||
| } | |||||
| export default JobDescriptionModal; | |||||
| @@ -1,4 +1,4 @@ | |||||
| import './JobsCard.scss'; | |||||
| import styles from './JobsCard.module.scss'; | |||||
| import { ReactComponent as ShareIcon } from '../assets/icons/share.svg'; | import { ReactComponent as ShareIcon } from '../assets/icons/share.svg'; | ||||
| import { ReactComponent as ChairIcon } from '../assets/icons/officechair.svg'; | import { ReactComponent as ChairIcon } from '../assets/icons/officechair.svg'; | ||||
| @@ -16,29 +16,29 @@ interface Props { | |||||
| } | } | ||||
| const JobsCard: React.FC<Props> = (props: Props) => { | const JobsCard: React.FC<Props> = (props: Props) => { | ||||
| return ( | return ( | ||||
| <div className='jobsCard'> | |||||
| <header className='jobsCardHeader'> | |||||
| <div className='developerIcon'> | |||||
| <div className={styles.jobsCard}> | |||||
| <header className={styles.jobsCardHeader}> | |||||
| <div className={styles.developerIcon}> | |||||
| {props.icon} | {props.icon} | ||||
| </div> | </div> | ||||
| <div className='jobRole'> | |||||
| <div className={styles.jobRole}> | |||||
| <h3>{props.role}</h3> | <h3>{props.role}</h3> | ||||
| <div>{props.team}</div> | <div>{props.team}</div> | ||||
| </div> | </div> | ||||
| <div className='shareIcon'> | |||||
| <div className={styles.shareIcon}> | |||||
| <ShareIcon /> | <ShareIcon /> | ||||
| </div> | </div> | ||||
| </header> | </header> | ||||
| <section className='jobsCardDetails'> | |||||
| <div className='openPosition'> | |||||
| <section className={styles.jobsCardDetails}> | |||||
| <div className={styles.openPosition}> | |||||
| <ChairIcon /> | <ChairIcon /> | ||||
| <span>{props.openPosition}</span> | <span>{props.openPosition}</span> | ||||
| </div> | </div> | ||||
| <div className='experience'> | |||||
| <div className={styles.experience}> | |||||
| <InfiniteIcon /> | <InfiniteIcon /> | ||||
| <span>{props.experience}</span> | <span>{props.experience}</span> | ||||
| </div> | </div> | ||||
| <div className="location"> | |||||
| <div className={styles.location}> | |||||
| <PinIcon /> | <PinIcon /> | ||||
| <span>{props.location}</span> | <span>{props.location}</span> | ||||
| </div> | </div> | ||||
| @@ -0,0 +1,10 @@ | |||||
| import styles from './WorkWithUs.module.scss'; | |||||
| const ConnectWithUs = () => { | |||||
| return ( | |||||
| <div> | |||||
| </div> | |||||
| ) | |||||
| } | |||||
| export default ConnectWithUs; | |||||
| @@ -0,0 +1,3 @@ | |||||
| // IonContent { | |||||
| // --background-color: black; | |||||
| // } | |||||
| @@ -2,19 +2,22 @@ import { IonContent, IonHeader, IonPage, IonTitle, IonToolbar } from '@ionic/rea | |||||
| import JobsCard from '../components/JobsCard'; | import JobsCard from '../components/JobsCard'; | ||||
| import { ReactComponent as DeveloperIcon } from '../assets/icons/Developer.svg'; | import { ReactComponent as DeveloperIcon } from '../assets/icons/Developer.svg'; | ||||
| import './WorkWithUs.scss'; | |||||
| import styles from './WorkWithUs.module.scss'; | |||||
| import JobDescriptionModal from '../components/JobDescriptionModal'; | |||||
| const WorkWithUs: React.FC = () => { | const WorkWithUs: React.FC = () => { | ||||
| return ( | return ( | ||||
| <IonPage> | <IonPage> | ||||
| <IonContent fullscreen className='content'> | |||||
| <JobsCard | |||||
| <IonContent fullscreen> | |||||
| {/* <JobsCard | |||||
| role='Software Developer' | role='Software Developer' | ||||
| team='engineering' | team='engineering' | ||||
| openPosition='4 Open Position' | openPosition='4 Open Position' | ||||
| experience='Minimum 3 years Experience' | experience='Minimum 3 years Experience' | ||||
| location='Montreal, Canada' | location='Montreal, Canada' | ||||
| icon={<DeveloperIcon />} /> | |||||
| icon={<DeveloperIcon />} /> */} | |||||
| {/* <JobDescriptionModal /> */} | |||||
| </IonContent> | </IonContent> | ||||
| </IonPage> | </IonPage> | ||||
| @@ -2,17 +2,9 @@ | |||||
| http://ionicframework.com/docs/theming/ */ | http://ionicframework.com/docs/theming/ */ | ||||
| /** Ionic CSS Variables **/ | /** Ionic CSS Variables **/ | ||||
| @import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200&display=swap'); | |||||
| @import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200&family=Poppins:wght@100&display=swap'); | |||||
| :root { | :root { | ||||
| /* font size */ | |||||
| font-size: 62.5%; | |||||
| font-family: 'Poppins', sans-serif; | |||||
| /* box-sizing */ | |||||
| box-sizing: border-box; | |||||
| /** primary **/ | /** primary **/ | ||||
| --ion-color-primary: #3880ff; | --ion-color-primary: #3880ff; | ||||
| --ion-color-primary-rgb: 56, 128, 255; | --ion-color-primary-rgb: 56, 128, 255; | ||||