{"version":3,"sources":["components/CalendarPopup/CalendarPopup.module.scss","components/Calendar/Calendar.module.scss","components/TimezoneSelect/TimezoneSelect.module.scss","components/CandidateForm/images/arrowRight.svg","components/CandidateForm/images/arrowLeft.svg","components/CandidateForm/images/add.svg","components/MeetingHours/MeetingHours.module.scss","components/TimeSlots/TimeSlots.module.scss","components/CalendarPage/CalendarPage.module.scss","components/CandidateForm/images/tick.svg","components/CandidateForm/images/note-warning.svg","components/CandidateForm/images/congrats.svg","assets/images/spanish.png","assets/images/turkishFlag.png","assets/images/romanian.png","assets/images/bulgarian.png","assets/images/serbia.png","assets/images/ukraine.svg","assets/images/russia.svg","assets/images/usa.svg","components/Preloader/Preloader.module.scss","assets/images/text_title_de.svg","assets/images/text_title_sh.svg","assets/images/text_title_ua.svg","assets/images/text_title_ru.svg","assets/images/text_title_en.svg","assets/images/text_title_turkish.svg","assets/images/text_title_romanian.svg","assets/images/text_title_bulgarian.svg","assets/images/text_title_spain.svg","assets/images/home_image.png","components/MainPage/images/image1.jpg","components/MainPage/images/image2.jpg","components/MainPage/images/image3.jpg","components/MainPage/images/Enaida.jpg","components/MainPage/images/zlatan.jpg","components/MainPage/images/Ljiljana.jpg","components/AboutPage/images/var1.svg","components/AboutPage/images/var2.svg","components/AboutPage/images/var3.svg","components/AboutPage/images/var4.svg","components/AboutPage/images/var5.svg","components/ForCandidatesPage/images/worker.jpg","components/ForCandidatesPage/images/worker2.jpg","components/ForCandidatesPage/images/worker3.jpg","components/ForCandidatesPage/images/worker4.jpg","components/ForCandidatesPage/images/worker5.jpg","components/ForCandidatesPage/images/worker6.jpg","components/CandidateForm/images/warning-sign.svg","components/CandidateForm/images/arrowDown.svg","components/CandidateForm/images/checked.svg","components/CandidateForm/images/notChecked.svg","assets/images/logo_light.svg","assets/images/logo_dark.svg","assets/images/fb_icon.svg","assets/images/fb_dark_icon.svg","assets/images/germany.svg","components/MainMenu/images/menu.svg","components/MainMenu/images/menuDark.svg","components/MainMenu/images/menuOpened.svg","components/MainMenu/images/arrowDown.svg","components/Footer/images/arrowDown.svg","components/Footer/images/deuchFlag.svg","components/Footer/images/facebook.svg","components/Footer/images/logo.svg","components/ApplyEmployerPage/images/tick.svg","components/ApplyEmployerPage/images/congrats.svg","components/CalendarPage/images/yugoLogo.svg","components/ConfirmCv/images/congrats.svg","assets/images/error-icon.svg","constants/routes.js","store/reducers/userDataReducer.js","store/reducers/registrationFormReducer.js","store/reducers/errorHandlingReducer.js","store/reducers/newEmployerReducer.js","store/reducers/calendarRaducer.js","store/actions/language.js","store/actionTypes/actionTypes.js","store/store.js","store/reducers/languageReducer.js","store/reducers/isLanguageLoadingReducer.js","store/reducers/userTypeReducer.js","store/reducers/confirmCvReducer.js","store/actions/userType.js","components/MainPage/MainPage.js","components/AboutPage/AboutPage.js","components/ForCandidatesPage/ForCandidates.js","components/CandidateForm/WarningMessage/WarningMessage.jsx","components/CandidateForm/FKinput/FKinput.jsx","components/CandidateForm/FKselect/FKselect.jsx","store/actions/errorHandling.js","store/actions/registrationForm.js","store/actions/userData.js","components/CandidateForm/PersonalDataForm.jsx","components/CandidateForm/FKtextarea/FKtextarea.jsx","components/CandidateForm/FKcheckbox/FKcheckbox.jsx","components/CandidateForm/EducationForm.jsx","components/CandidateForm/LanguagesForm.jsx","components/CandidateForm/MotivationForm.jsx","components/Popup/Popup.js","components/Preloader/Preloader.jsx","components/CandidateForm/UploadDocuments/DocumentsForm.jsx","components/CandidateForm/Congrats/Congrats.jsx","components/CandidateForm/CandidateFormPage.jsx","components/MainMenu/MainMenu.js","components/Footer/Footer.js","components/TermsOfUse/TermsOfUse.js","components/Impressum/Impressum.js","store/actions/newEmployer.js","components/ApplyEmployerPage/ApllyCongrads.js","components/ApplyEmployerPage/ApplyEmployerPage.js","store/actions/calendar.js","components/Calendar/Calendar.jsx","store/helpers/getWindowDimensions.js","components/TimezoneSelect/TimezoneSelect.jsx","components/MeetingHours/MeetingHours.jsx","components/CalendarPopup/CalendarPopup.jsx","components/TimeSlots/TimeSlots.jsx","components/CalendarPage/CalendarPage.jsx","components/CandidateForm/UploadDocuments/AdditionalForm.jsx","components/CandidateForm/UploadDocuments/Congrats.jsx","components/CandidateForm/UploadDocuments/AdditionalPage.jsx","components/ConfirmCv/Congrats.jsx","components/Error/Error.jsx","store/actions/confirmCv.js","components/ConfirmCv/ConfirmCv.jsx","containers/Main.js","App.js","serviceWorker.js","index.js"],"names":["module","exports","routes","HOME","ABOUT","FOR_CANDIDATES","APPLY_NOW","TERMS_OF_USE","IMPRESSUM","CALENDAR","UPLOAD_ADDITIONAL_DOCS","CONFIRM_CV","INIT_STATE","countries","documentsCategories","formPage","errorFromBack","isAdditionalDocsSended","currentCandidateData","isDocsLoading","message","name","email","company","day","activeHour","calendar","requestAccepted","isPopupActive","token","GMTChanged","setIsLanguageLoading","payload","type","getLanguage","dispatch","a","languages","serboCroatian","axios","get","response","lang","data","country_code","toLowerCase","isLang","includes","isSerboCroatian","setLanguage","console","warn","language","rootReducer","combineReducers","user","state","action","isLanguageLoading","userType","error","split","reverse","newEmployer","registrationForm","page","confirmCv","applyLanguage","applyUserType","devTools","window","__REDUX_DEVTOOLS_EXTENSION__","f","store","createStore","compose","applyMiddleware","thunk","storeFuncs","funcsFromStore","applyUser","connect","useState","deployKiraText","useDispatch","titles","ua","titleUa","sh","titleSh","ru","titleRu","en","titleEn","de","titleDe","tr","titleTurkish","ro","titleRomanian","bg","titleBulgarian","es","titleSpain","handleUserType","event","pressedButton","target","makeSmoothScroll","setTimeout","scrollTo","top","behavior","textSwithcher","string","className","onClick","i18n","t","src","alt","homeImage","to","image1","image2","image3","document","documentElement","clientWidth","Enaida","zlatan","Ljiljana","AboutPage","useSelector","var1","var2","var3","var4","var5","ForCandidates","translate","worker","worker2","worker3","worker4","worker5","worker6","WarningMessage","WarningSign","FKinput","field","form","label","id","width","onChange","gapSM","gapLG","minWidth","margin","padding","marginBot","inputWidth","props","getIn","errors","touch","touched","htmlFor","cn","style","borderColor","defaultProps","placeholder","undefined","FKselect","maxWidth","maxWidthSm","onBlur","fieldValue","value","styles","control","position","display","height","marginTop","border","borderRadius","backgroundColor","fontFamily","fontWeight","fontSize","outline","cursor","boxShadow","valueContainer","paddingLeft","singleValue","color","option","isDisabled","alignItems","minHeight","boxSizing","isSelected","borderLeft","menuList","maxHeight","menu","zIndex","components","DropdownIndicator","menuIsOpen","selectProps","ArrowDown","IndicatorSeparator","isSearchable","e","setFieldValue","setError","applyError","getDocumentsCategories","process","res","setCandidateFormPage","setIsAdditionalDocsSended","setIsDocsLoading","registerEmployer","config","header","body","post","patchCandidate","setCurrentCandidateData","PersonalDataForm","formRef","useRef","countriesFromServer","map","country","MIN_DATE","moment","year","MAX_DATE","monthNumber","setMonthNumber","yearNumber","setYearNumber","maxDaysNumber","setMaxDaysNumber","initialValues","firstName","lastName","code","phone","birthDay","birthMonth","birthYear","validationSchema","useMemo","yup","required","min","test","max","useEffect","getElementById","innerHTML","monthsIndex","months","findIndex","month","reduxData","current","values","handleSubmit","useCallback","setSubmitting","isFormHasChanges","countryId","find","item","dateOfBirth","phoneNumber","candidateId","localStorage","getItem","currentFormData","currentFormDataArr","Object","currentReduxDataArr","filter","length","serverData","username","setItem","handleNextPage","onSubmit","innerRef","formik","onChangeName","match","onChangePhone","replace","onBlurDropdowns","setTouched","onChangeBirth","component","Input","maxLength","Select","options","disabled","isSubmitting","ArrowRight","FKtextarea","gap","widthBlock","FkCheckbox","checkboxChecked","checkboxNotChecked","EducationForm","MIN_YEAR","MAX_YEAR","educationsFromRedux","educations","education","uuid","degree","jobsFromRedux","jobs","job","specialization","specialty","from","responsibilities","present","havePreviouslyWorked","of","shape","when","is","then","this","parent","createReduxData","educationOptions","jobOptions","handleBackPage","onChangeYear","prepareName","fieldArrayProps","push","remove","i","key","Add","FKcheckbox","targetField","checked","onChangePresent","TextArea","ArrowLeft","LanguagesForm","languagesFromRedux","level","skillsFromRedux","skills","skill","description","experienceAbroad","Boolean","levelOptions","languageOptions","skillOptions","onChangeLanguage","selectedLanguages","currentLangOptions","unshift","selectedSkills","currentSkillsOptions","MotivationForm","desiredSpheresFromRedux","desiredSpheres","sphere","motivation","availableForCall","desiredRegion","whenReadyToWork","available","desiredSpheresArr","desiredSpheresIsEmpty","every","jobsIsEmpty","skillsIsEmpty","languagesIsEmpty","availableForCallOptions","desiredRegionOptions","whenReadyToWorkOptions","sphereOptions","selectedDesiredSpheres","currentSphereOptions","onChangeSphere","Popup","text","hidePopup","Preloader","preLoader","container","size","DocumentsForm","uploadForm","setUploadForm","applyTermsOfUse","setApplyTermsOfUse","notChecckedTermsOfUse","setNotChecckedTermsOfUse","popupMaxSize","setPopupMaxSize","filesData","setFilesData","locale","uploadedFiles","category","files","forEach","file","uploadDocumentsCategories","categoryName","isSelectBtnActive","compressionImg","imageFile","maxSizeMB","maxWidthOrHeight","useWebWorker","imageCompression","handleAddFile","filesList","filesListArr","Promise","compressedFiles","preparedFiles","uuidv4","result","reduce","sum","handleSelectFiles","handleDeleteFiles","noteWarning","index","aria-label","uploadForm__selectBtnActive","categoryId","fileId","handleMarkFile","tick","rel","formData","FormData","categoriesData","append","JSON","stringify","patch","Congrats","congrats","CandidateFormPage","location","dark","setDark","setLangMenuVisible","displayMenuSmallScreen","setDisplayMenuSmallScreen","history","useHistory","flag","deFlag","shFlag","uaFlag","ruFlag","enFlag","turkishFlag","spanishFlag","romanianFlag","bulgarianFlag","addEventListener","role","onKeyPress","tabIndex","logoLight","logoDark","pathname","exact","activeClassName","href","fbLight","fbDark","setLangTitle","arrowDown","itemTemplate","menuOpened","menuDark","onScroll","preventDefault","deuchFlag","serbFlag","logo","facebook","TermsOfUse","Impressum","setNewEmployer","Congrads","ApplyEmployerPage","regName","isNameValid","setIsNameValid","isEmailValid","setIsEmailValid","isCompanyValid","setIsCompanyValid","isButtonActive","setIsButtonActive","isFormSubmitted","setFormIsSubmitted","isTermsErrorVisible","setIsTermsErrorVisible","isTermsChecked","setIsTermsChecked","formValid","handleInput","inputName","slice","validator","isEmail","trim","isFormDataEmpty","visibility","setActiveHour","setPopupActive","Calendar","activeDay","setActiveDay","setPosition","periods","search","today","Date","getFullYear","getMonth","getDate","GMT","timezone","getCalendar","y","m","dateToString","date","padStart","setDate","monthLength","startPosition","getDay","weeks","counter","j","getTime","outside","range","ranges","tempDate","setMonth","preparedWeeks","week","some","period","start","join","end","setHours","periodsWithDay","pos","idx","setDay","duration","acc","obj","keys","preparedTimes","time","currentTime","durationInMinutes","strTime","Math","trunc","toString","padEnd","getTimeRange","times","Set","sort","b","indexOf","setMinutes","acquiredDates","acquired","cx","classNames","bind","calendar__header","currentMonth","nextDate","calendar__button","calendar__button_prev","calendar__heading","toDateString","getUTCFullYear","calendar__button_next","calendar__week_header","cell_header","dates","weekIdx","dayIdx","cell_outside","cell","handlePick","getWindowDimensions","innerWidth","innerHeight","useWindowDimensions","windowDimensions","setWindowDimensions","handleResize","removeEventListener","TimezoneSelect","isVisible","setIsVisible","selectedZone","setSelectedZone","zones","zonesToRender","myRef","handleClickOutside","contains","parentNode","optionsHeight","showTime","offset","isoDate","toISOString","getUTCHours","getMinutes","form__select_container","form__select","form__text","form__triangle","transform","ref","form__options","form__option","form__checkbox","form__zone","handleSelectedZone","MeetingHours","activeTime","setActiveTime","componentId","active","memoizedHandleActiveTime","handleActiveTime","handleConfirm","arr","minutes","requestBody","meeting","meeting__date","meeting__date_selected","meeting__button","CalendarPopup","visible","handleClose","handleCloseWithErrorQuery","popup","popup__hidden","popup__container","popup__heading","popup__text","popup__button_ok","popup__buttons","popup__button_cancel","TimeSlots","slots","slots__name","slots__date","str","dateArr","dateFromString","slots__duration","CalendarPage","container__logo","container__heading","UploadAdditionalDocs","URLSearchParams","setAdditionalDocuments","AdditionalPage","AdditionalForm","isCongratsOpen","setConfirmToken","ConfirmCv","getConfirmToken","Error","path","MainContainer","hostname","require","fallbacks","translations","ReactDOM","render","navigator","serviceWorker","ready","registration","unregister","catch"],"mappings":"wGACAA,EAAOC,QAAU,CAAC,MAAQ,6BAA6B,cAAgB,qCAAqC,iBAAmB,wCAAwC,eAAiB,sCAAsC,YAAc,mCAAmC,eAAiB,sCAAsC,iBAAmB,wCAAwC,qBAAuB,8C,kBCAxZD,EAAOC,QAAU,CAAC,SAAW,2BAA2B,sBAAwB,wCAAwC,iBAAmB,mCAAmC,kBAAoB,oCAAoC,iBAAmB,mCAAmC,sBAAwB,wCAAwC,sBAAwB,wCAAwC,KAAO,uBAAuB,aAAe,+BAA+B,SAAW,2BAA2B,YAAc,8BAA8B,KAAO,uBAAuB,YAAc,8BAA8B,MAAQ,wBAAwB,WAAa,6BAA6B,kBAAoB,sC,yBCAluBD,EAAOC,QAAU,CAAC,uBAAyB,+CAA+C,aAAe,qCAAqC,eAAiB,uCAAuC,cAAgB,sCAAsC,aAAe,qCAAqC,mBAAqB,2CAA2C,eAAiB,uCAAuC,WAAa,mCAAmC,WAAa,qC,oBCDreD,EAAOC,QAAU,IAA0B,wC,gBCA3CD,EAAOC,QAAU,IAA0B,uC,mBCA3CD,EAAOC,QAAU,IAA0B,iC,uBCC3CD,EAAOC,QAAU,CAAC,QAAU,8BAA8B,cAAgB,oCAAoC,uBAAyB,6CAA6C,gBAAkB,wC,qBCAtMD,EAAOC,QAAU,CAAC,MAAQ,yBAAyB,gBAAkB,mCAAmC,YAAc,+BAA+B,YAAc,iC,gBCAnKD,EAAOC,QAAU,CAAC,UAAY,gCAAgC,gBAAkB,sCAAsC,mBAAqB,2C,+BCD3ID,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,0C,gBCA3CD,EAAOC,QAAU,IAA0B,sC,iBCA3CD,EAAOC,QAAU,IAA0B,qC,cCA3CD,EAAOC,QAAU,k5O,cCAjBD,EAAOC,QAAU,kuV,gBCAjBD,EAAOC,QAAU,IAA0B,uC,cCA3CD,EAAOC,QAAU,k/C,gBCAjBD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,oC,gBCA3CD,EAAOC,QAAU,IAA0B,iC,mDCC3CD,EAAOC,QAAU,CAAC,UAAY,6BAA6B,OAAS,0BAA0B,UAAY,+B,2HCD1GD,EAAOC,QAAU,IAA0B,2C,gBCA3CD,EAAOC,QAAU,IAA0B,2C,gBCA3CD,EAAOC,QAAU,IAA0B,2C,gBCA3CD,EAAOC,QAAU,IAA0B,2C,gBCA3CD,EAAOC,QAAU,IAA0B,2C,gBCA3CD,EAAOC,QAAU,IAA0B,gD,gBCA3CD,EAAOC,QAAU,IAA0B,iD,gBCA3CD,EAAOC,QAAU,IAA0B,kD,gBCA3CD,EAAOC,QAAU,IAA0B,8C,gBCA3CD,EAAOC,QAAU,IAA0B,wC,gBCA3CD,EAAOC,QAAU,IAA0B,oC,gBCA3CD,EAAOC,QAAU,IAA0B,oC,gBCA3CD,EAAOC,QAAU,IAA0B,oC,gBCA3CD,EAAOC,QAAU,IAA0B,oC,gBCA3CD,EAAOC,QAAU,IAA0B,oC,gBCA3CD,EAAOC,QAAU,IAA0B,sC,iBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,oC,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,0C,qBCA3CD,EAAOC,QAAU,IAA0B,uC,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,wC,mBCA3CD,EAAOC,QAAU,IAA0B,wC,gBCA3CD,EAAOC,QAAU,IAA0B,uC,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,0C,gBCA3CD,EAAOC,QAAU,IAA0B,qC,gBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,sC,gBCA3CD,EAAOC,QAAU,IAA0B,wC,gBCA3CD,EAAOC,QAAU,IAA0B,uC,gBCA3CD,EAAOC,QAAU,IAA0B,uC,gBCA3CD,EAAOC,QAAU,IAA0B,uC,gBCA3CD,EAAOC,QAAU,IAA0B,sC,gBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IAA0B,kC,gBCA3CD,EAAOC,QAAU,IA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","file":"static/js/main.76560033.chunk.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"popup\":\"CalendarPopup_popup__2ptka\",\"popup__hidden\":\"CalendarPopup_popup__hidden__7SFnq\",\"popup__container\":\"CalendarPopup_popup__container__2zpKT\",\"popup__heading\":\"CalendarPopup_popup__heading__6he4l\",\"popup__text\":\"CalendarPopup_popup__text__28GFr\",\"popup__buttons\":\"CalendarPopup_popup__buttons__1kUUR\",\"popup__button_ok\":\"CalendarPopup_popup__button_ok__2QPXk\",\"popup__button_cancel\":\"CalendarPopup_popup__button_cancel__Oh96B\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"calendar\":\"Calendar_calendar__B0R-q\",\"calendar__week_header\":\"Calendar_calendar__week_header__wfGbU\",\"calendar__header\":\"Calendar_calendar__header__F_k_G\",\"calendar__heading\":\"Calendar_calendar__heading__EGM_k\",\"calendar__button\":\"Calendar_calendar__button__1TNfy\",\"calendar__button_next\":\"Calendar_calendar__button_next__RabOB\",\"calendar__button_prev\":\"Calendar_calendar__button_prev__3efFQ\",\"cell\":\"Calendar_cell__cxO_h\",\"cell_outside\":\"Calendar_cell_outside__V31Ng\",\"in_range\":\"Calendar_in_range__1vxJU\",\"cell_active\":\"Calendar_cell_active__CRFD_\",\"week\":\"Calendar_week__B8Ymd\",\"cell_header\":\"Calendar_cell_header__3Zntg\",\"dates\":\"Calendar_dates__11wFD\",\"cell_alone\":\"Calendar_cell_alone__16U4z\",\"cell_active_alone\":\"Calendar_cell_active_alone__3MbNk\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"form__select_container\":\"TimezoneSelect_form__select_container__23LZx\",\"form__select\":\"TimezoneSelect_form__select__kTTzQ\",\"form__triangle\":\"TimezoneSelect_form__triangle__1ljyh\",\"form__options\":\"TimezoneSelect_form__options__1mxoc\",\"form__option\":\"TimezoneSelect_form__option__lfdK5\",\"form__options_open\":\"TimezoneSelect_form__options_open__3pTby\",\"form__checkbox\":\"TimezoneSelect_form__checkbox__1ldpI\",\"form__zone\":\"TimezoneSelect_form__zone__3AzAb\",\"form__text\":\"TimezoneSelect_form__text__1pWBw\"};","module.exports = __webpack_public_path__ + \"static/media/arrowRight.773e5b67.svg\";","module.exports = __webpack_public_path__ + \"static/media/arrowLeft.52ab6b31.svg\";","module.exports = __webpack_public_path__ + \"static/media/add.5007950a.svg\";","// extracted by mini-css-extract-plugin\nmodule.exports = {\"meeting\":\"MeetingHours_meeting__3uEYR\",\"meeting__date\":\"MeetingHours_meeting__date__3LhlS\",\"meeting__date_selected\":\"MeetingHours_meeting__date_selected__1t_D4\",\"meeting__button\":\"MeetingHours_meeting__button__1Nbh_\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"slots\":\"TimeSlots_slots__1dHC5\",\"slots__duration\":\"TimeSlots_slots__duration__LWJPg\",\"slots__date\":\"TimeSlots_slots__date__Q7PoV\",\"slots__name\":\"TimeSlots_slots__name__14BQH\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"CalendarPage_container__X8RvE\",\"container__logo\":\"CalendarPage_container__logo__2jHTs\",\"container__heading\":\"CalendarPage_container__heading__pfcNy\"};","module.exports = __webpack_public_path__ + \"static/media/tick.a5833eae.svg\";","module.exports = __webpack_public_path__ + \"static/media/note-warning.cc7d68c4.svg\";","module.exports = __webpack_public_path__ + \"static/media/congrats.9ec0f871.svg\";","module.exports = __webpack_public_path__ + \"static/media/spanish.30e2939e.png\";","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAACgAAAAarBAMAAAA7Ae2yAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAElBMVEUAK3+pmjn80RbtkRzOESb////z6orXAAAAAWJLR0QF+G/pxwAAAAd0SU1FB+MIFxERKNoypcYAAB7/SURBVHja7dQBDQAwCAMwsIKGS7h/TcggS1oRrSJEDyHeJ4RXBIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIAAUoFgEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEK8IEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABClAsAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgXhEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAIUoFgEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkC8IkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABChAsQgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgHhFgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIUIBiESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgA8YoAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABGgAMUiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAHiFQEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABikWACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAsQrAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAIUiwARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiFcEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgABSgWASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQrwgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEKUCwCRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESBeESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAhSgWASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQLwiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEKECxCBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAeEWACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAhQgGIRIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiADxigARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAEaAAxSJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQAeIVASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAGKRYAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACxCsCRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAAhSLABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIVwSIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAAFKBYBIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBCvCBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQAQpQLAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIF4RIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACFKBYBIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJAvCJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQAQoQLEIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABChABIkABIkAEKEAEiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJAASJABChABIgABYgAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQAQoQASIAAWIABGgABEgAhQgAkSAAkSACFCACBABChABIkABIkAEKEAEiAAFiAAFiAARoAARIAIUIAJEgAJEgAhQgAgQAQoQASJAASJABChABIgABYgAEaAAEaAAESACFCACRIACRIAIUIAIEAEKEAEiQAEiQAQoQASIAAWIABGgABEgAhQgAhQgAkSAAkSACFCACBABChABIkABcmsBn6BsX9qqsdwAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTktMDgtMjNUMTc6MTc6NDArMDA6MDBnIwnSAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE5LTA4LTIzVDE3OjE3OjQwKzAwOjAwFn6xbgAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"static/media/bulgarian.5352a10d.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAUCAIAAAARPMquAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjExR/NCNwAAA89JREFUOE+10ntMU1ccB/B7KTR9SYkQC4iKDhhM0dKWsoKKD8ZAogshGkNdxgxD/zATna9tZpnI5qINURCUUJlKSigiI0GYVtbi7Yu+bittldGKyzqBKIKv+Npi/TXHtORi4h9mN9+cfM/p7afn3F7sFvaWqLEPZ+aVBZsZHY0xM1QOhcKhUDgUCocSghyLacFO4VAoHErI4rCC/Y1yde8OSxfPXvNLENWsKYfRuvNoQKSlvROt2rcx2AOEljfbG4Y5iMND3DB9NBdW9Ppb56JX91Yrft/bINkkzyk9f3lwlMKhIEW7Is5UL9CtnRtCB1tj+g6yO8uYvTJu1w+xsNLjnqpL2NC94Zvf8re311ZsqzwyNvmIwqEghYiLNB4XEGJeCB3C8X5RhCUurC+HDlOI1fe0end9u7ikI/WT5rzy1l7XP39PctOPUUQIweUYvltilfHBMlWmmo7xr8VHYV4cd8ZzPNcdYFmMeue6QiiXYyWTExN3zHYoUxP3DesroGAf1PPXHqCgppIFunCGozULxsF2iS6CacjkYe5WxXB4uJvF0s9L8OKYLSXFvGoV/C1+v//JDS8qZO7nUKIymsD9qmLzdNTZIdExmMSuNEK6SFu1FGhXZzZms1l9Xk/LFunVPpV+/jyNRu3UqAECxZC4GpUpjQnK5IPnyh5P7MfNiuPCENop0dKZ6Vt//n73ZmFZlZbBDKBer0elukIuTJzw+W7SI9SaP0jS+nzs3jVOhjH5U1TudvVBAffAUQNsFjLcHYNQ8ykRuN/uKVXK8npqc50XJeYGITY+PuZ2ucbc7n9fvhx1u2Djg3byrccHq6j8Eozx2WdhfKyjA2qoybD9mtlVmyf68lBKmczSKDKeEGBE7yVtYYExOQl2ep3JtCTMvX1G/mzEp4tbbl72WaDELr97UfV0xAcQntTwCn7E719W1AbT/8w4Kc+EzX4tW4kyUCckmzMxbfWPTdJoF5ttNw04OWxFLteYnw9fozxTpVIJCuTRkxcPH7+AIt2lghHepIH9H1nlosOybMtpofWn9MB7ql86R1Me5U5OgoMP0SOIIo6rpDCn+AhwoeOv+SKntAWhKOz0RliHUZfFg/eJEM6BJ6svXUSeE2tnczD4zMEKI/s1NtJ2o/nMnzQcVoDI3lj3l9GmniU4LW+DKQXl8pvgNtaSRmIWO7BZGd9Yk2E6KYTeX5IYQOEaLSgYjowcl0rRFCmUTEfXbe3Gk+rFxRdAgdgVWQMnBPYWMXRiftQblHJROJTpKEp7jwehAbclK9jfC4UEoen5H1Aa4zWo/iLCfpwrhwAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"static/media/ukraine.a8b13525.svg\";","module.exports = __webpack_public_path__ + \"static/media/russia.0cacf46e.svg\";","module.exports = __webpack_public_path__ + \"static/media/usa.ae656592.svg\";","// extracted by mini-css-extract-plugin\nmodule.exports = {\"preLoader\":\"Preloader_preLoader__2_bRH\",\"loader\":\"Preloader_loader__2UV8v\",\"container\":\"Preloader_container__3VLfE\"};","module.exports = __webpack_public_path__ + \"static/media/text_title_de.3bba68eb.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_sh.efb2ac7f.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_ua.39e8eb2b.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_ru.dc30b8f0.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_en.1efa3f80.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_turkish.b40f4739.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_romanian.7afd2204.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_bulgarian.f2e5e8c3.svg\";","module.exports = __webpack_public_path__ + \"static/media/text_title_spain.f43bac7f.svg\";","module.exports = __webpack_public_path__ + \"static/media/home_image.912a38d0.png\";","module.exports = __webpack_public_path__ + \"static/media/image1.b3ea0d74.jpg\";","module.exports = __webpack_public_path__ + \"static/media/image2.fc891cee.jpg\";","module.exports = __webpack_public_path__ + \"static/media/image3.757942e5.jpg\";","module.exports = __webpack_public_path__ + \"static/media/Enaida.caa9895d.jpg\";","module.exports = __webpack_public_path__ + \"static/media/zlatan.e3449243.jpg\";","module.exports = __webpack_public_path__ + \"static/media/Ljiljana.6179ae98.jpg\";","module.exports = __webpack_public_path__ + \"static/media/var1.7966649c.svg\";","module.exports = __webpack_public_path__ + \"static/media/var2.2d164e62.svg\";","module.exports = __webpack_public_path__ + \"static/media/var3.5d3170de.svg\";","module.exports = __webpack_public_path__ + \"static/media/var4.8c3ee0fc.svg\";","module.exports = __webpack_public_path__ + \"static/media/var5.583cb121.svg\";","module.exports = __webpack_public_path__ + \"static/media/worker.107e7f13.jpg\";","module.exports = __webpack_public_path__ + \"static/media/worker2.e5efa6cb.jpg\";","module.exports = __webpack_public_path__ + \"static/media/worker3.ccfdecfd.jpg\";","module.exports = __webpack_public_path__ + \"static/media/worker4.3ed53031.jpg\";","module.exports = __webpack_public_path__ + \"static/media/worker5.363affcb.jpg\";","module.exports = __webpack_public_path__ + \"static/media/worker6.49bfaa5c.jpg\";","module.exports = __webpack_public_path__ + \"static/media/warning-sign.cc7d68c4.svg\";","module.exports = __webpack_public_path__ + \"static/media/arrowDown.0a5d4a8e.svg\";","module.exports = __webpack_public_path__ + \"static/media/checked.62735c64.svg\";","module.exports = __webpack_public_path__ + \"static/media/notChecked.eb8d306d.svg\";","module.exports = __webpack_public_path__ + \"static/media/logo_light.cff8caf8.svg\";","module.exports = __webpack_public_path__ + \"static/media/logo_dark.c0daf638.svg\";","module.exports = __webpack_public_path__ + \"static/media/fb_icon.030c64b3.svg\";","module.exports = __webpack_public_path__ + \"static/media/fb_dark_icon.aa7e4410.svg\";","module.exports = __webpack_public_path__ + \"static/media/germany.06ffff2f.svg\";","module.exports = __webpack_public_path__ + \"static/media/menu.94ad7635.svg\";","module.exports = __webpack_public_path__ + \"static/media/menuDark.e2479516.svg\";","module.exports = __webpack_public_path__ + \"static/media/menuOpened.aa555e93.svg\";","module.exports = __webpack_public_path__ + \"static/media/arrowDown.e0a6319a.svg\";","module.exports = __webpack_public_path__ + \"static/media/arrowDown.e0a6319a.svg\";","module.exports = __webpack_public_path__ + \"static/media/deuchFlag.06ffff2f.svg\";","module.exports = __webpack_public_path__ + \"static/media/facebook.aa7e4410.svg\";","module.exports = __webpack_public_path__ + \"static/media/logo.30f9c2c3.svg\";","module.exports = __webpack_public_path__ + \"static/media/tick.a5833eae.svg\";","module.exports = __webpack_public_path__ + \"static/media/congrats.9ec0f871.svg\";","module.exports = __webpack_public_path__ + \"static/media/yugoLogo.41904359.svg\";","module.exports = __webpack_public_path__ + \"static/media/congrats.9ec0f871.svg\";","module.exports = __webpack_public_path__ + \"static/media/error-icon.6be8d1c4.svg\";","const routes = {\n\tHOME: '/',\n\tABOUT: '/about',\n\tFOR_CANDIDATES: '/for_candidates',\n\tAPPLY_NOW: '/apply',\n\tTERMS_OF_USE: '/termsofuse',\n\tIMPRESSUM: '/impressum',\n\tCALENDAR: '/calendar',\n\tUPLOAD_ADDITIONAL_DOCS: '/upload',\n\tCONFIRM_CV: '/confirm',\n};\n\nexport default routes;\n","import { PATCH_CANDIDATE, CLEAR_CANDIDATE } from '../actionTypes/actionTypes';\n\nconst INIT_STATE = {};\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase PATCH_CANDIDATE:\n\t\t\treturn { ...state, ...action.payload };\n\t\tcase CLEAR_CANDIDATE:\n\t\t\treturn action.payload;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import {\n\tSET_COUNTRIES,\n\tSET_DOCUMENTS_CATEGORIES,\n\tSET_CANDIDATE_FORM_PAGE,\n\tSET_IS_ADDITIONAL_DOCS_SENDED,\n\tSET_CURRENT_CANDIDATE_DATA,\n\tSET_IS_DOCS_LOADING,\n} from '../actionTypes/actionTypes';\n\nconst INIT_STATE = {\n\tcountries: [],\n\tdocumentsCategories: [],\n\tformPage: 'personalData',\n\terrorFromBack: false,\n\tisAdditionalDocsSended: false,\n\tcurrentCandidateData: {},\n\tisDocsLoading: false,\n};\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase SET_COUNTRIES:\n\t\t\treturn { ...state, countries: action.payload };\n\t\tcase SET_DOCUMENTS_CATEGORIES:\n\t\t\treturn { ...state, documentsCategories: action.payload };\n\t\tcase SET_CANDIDATE_FORM_PAGE:\n\t\t\treturn { ...state, formPage: action.page };\n\t\tcase SET_IS_ADDITIONAL_DOCS_SENDED:\n\t\t\treturn { ...state, isAdditionalDocsSended: action.payload };\n\t\tcase SET_CURRENT_CANDIDATE_DATA:\n\t\t\treturn { ...state, currentCandidateData: action.payload };\n\t\tcase SET_IS_DOCS_LOADING:\n\t\t\treturn { ...state, isDocsLoading: action.payload };\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import { ERROR, CLEAR_ERROR } from '../actionTypes/actionTypes';\n\nconst INIT_STATE = { message: null };\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase ERROR:\n\t\t\tif (action.message?.split(' ')?.reverse()[0] === '400') {\n\t\t\t\treturn { message: action.message };\n\t\t\t}\n\n\t\t\treturn { message: action.message };\n\t\tcase CLEAR_ERROR:\n\t\t\treturn { message: null };\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import { NEW_EMPLOYER, GET_EMPLOYER } from '../actionTypes/actionTypes';\n\nconst INIT_STATE = {\n\tname: '',\n\temail: '',\n\tcompany: '',\n};\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase NEW_EMPLOYER:\n\t\t\treturn { ...action.payload };\n\t\tcase GET_EMPLOYER:\n\t\t\treturn state;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import {\n\tCHANGE_DAY,\n\tSET_ACTIVE_HOUR,\n\tSET_CALENDAR,\n\tSET_GMT_CHANGED,\n\tSET_POPUP_ACTIVE,\n\tSET_REQUEST_ACCEPT,\n\tSET_TOKEN,\n} from '../actionTypes/actionTypes';\n\nconst INIT_STATE = {\n\tday: {},\n\tactiveHour: null,\n\tcalendar: {},\n\trequestAccepted: false,\n\tisPopupActive: false,\n\ttoken: null,\n\tGMTChanged: 'Europe/Berlin',\n};\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase CHANGE_DAY:\n\t\t\treturn { ...state, day: action.payload };\n\n\t\tcase SET_ACTIVE_HOUR:\n\t\t\treturn { ...state, activeHour: action.payload };\n\n\t\tcase SET_CALENDAR:\n\t\t\treturn { ...state, calendar: action.payload };\n\n\t\tcase SET_REQUEST_ACCEPT:\n\t\t\treturn { ...state, requestAccepted: true };\n\n\t\tcase SET_POPUP_ACTIVE:\n\t\t\treturn { ...state, isPopupActive: action.payload };\n\n\t\tcase SET_TOKEN:\n\t\t\treturn { ...state, token: action.payload };\n\n\t\tcase SET_GMT_CHANGED:\n\t\t\treturn { ...state, GMTChanged: action.payload };\n\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import axios from 'axios';\nimport { LANGUAGE, IS_LANGUAGE_LOADING } from '../actionTypes/actionTypes';\n\n/**\n * @desc set is language loading\n * @param {boolean} payload - is language loading\n * @returns {object}\n */\nexport const setIsLanguageLoading = (payload) => ({\n\ttype: IS_LANGUAGE_LOADING,\n\tpayload,\n});\n\n/**\n * @desc get default language with using user location\n */\nexport const getLanguage = () => async (dispatch) => {\n\tdispatch(setIsLanguageLoading(true));\n\tconst url = 'https://freegeoip.app/json/';\n\tconst languages = ['en', 'ua', 'ru', 'de'];\n\tconst serboCroatian = ['rs', 'me', 'cs', 'hr', 'ba'];\n\n\ttry {\n\t\tconst response = await axios.get(url);\n\t\tconst lang = response.data.country_code.toLowerCase();\n\t\tconst isLang = languages.includes(lang);\n\t\tconst isSerboCroatian = serboCroatian.includes(lang);\n\n\t\tif (isLang) {\n\t\t\tdispatch(setLanguage(lang));\n\t\t} else if (isSerboCroatian) {\n\t\t\tdispatch(setLanguage('sh'));\n\t\t}\n\t} catch (error) {\n\t\tconsole.warn(error);\n\t} finally {\n\t\tdispatch(setIsLanguageLoading(false));\n\t}\n};\n\n/**\n * @desc set language\n * @param {string} language - selected language\n * @returns {object}\n */\nexport const setLanguage = (language) => ({\n\ttype: LANGUAGE,\n\tlanguage,\n});\n","export const SET_COUNTRIES = 'SET_COUNTRIES';\nexport const SET_DOCUMENTS_CATEGORIES = 'SET_DOCUMENTS_CATEGORIES';\nexport const SET_CANDIDATE_FORM_PAGE = 'SET_CANDIDATE_FORM_PAGE';\n\nexport const CHANGE_USER = 'CHANGE_USER';\nexport const PATCH_CANDIDATE = 'PATCH_CANDIDATE';\nexport const CLEAR_CANDIDATE = 'CLEAR_CANDIDATE';\nexport const SET_IS_ADDITIONAL_DOCS_SENDED = 'SET_IS_ADDITIONAL_DOCS_SENDED';\nexport const SET_CURRENT_CANDIDATE_DATA = 'SET_CURRENT_CANDIDATE_DATA';\nexport const SET_IS_DOCS_LOADING = 'SET_IS_DOCS_LOADING';\n\nexport const ERROR = 'ERROR';\nexport const CLEAR_ERROR = 'CLEAR_ERROR';\n\nexport const LANGUAGE = 'LANGUAGE';\nexport const IS_LANGUAGE_LOADING = 'IS_LANGUAGE_LOADING';\n\nexport const NEW_EMPLOYER = 'NEW_EMPLOYER';\nexport const GET_EMPLOYER = 'GET_EMPLOYER';\n\nexport const CHANGE_DAY = 'CHANGE_DAY';\nexport const SET_ACTIVE_HOUR = 'SET_ACTIVE_HOUR';\nexport const SET_CALENDAR = 'SET_CALENDAR';\nexport const SET_REQUEST_ACCEPT = 'SET_REQUEST_ACCEPT';\nexport const SET_POPUP_ACTIVE = 'SET_POPUP_ACTIVE';\nexport const SET_TOKEN = 'SET_TOKEN';\nexport const SET_GMT_CHANGED = 'SET_GMT_CHANGED';\n\nexport const SET_CONFIRM_TOKEN = 'CONFIRM_CV';\n","import { compose, applyMiddleware, createStore, combineReducers } from 'redux';\nimport thunk from 'redux-thunk';\n\nimport user from './reducers/userDataReducer';\nimport userType from './reducers/userTypeReducer';\nimport registrationForm from './reducers/registrationFormReducer';\nimport error from './reducers/errorHandlingReducer';\nimport language from './reducers/languageReducer';\nimport isLanguageLoading from './reducers/isLanguageLoadingReducer';\nimport newEmployer from './reducers/newEmployerReducer';\nimport calendar from './reducers/calendarRaducer';\nimport confirmCv from './reducers/confirmCvReducer';\n\nimport setUserType from './actions/userType';\nimport { setLanguage } from './actions/language';\n\nconst rootReducer = combineReducers({\n\tuser,\n\tlanguage,\n\tisLanguageLoading,\n\tuserType,\n\terror,\n\tnewEmployer,\n\tregistrationForm,\n\tcalendar,\n\tconfirmCv,\n});\n\n/**\n * @desc function for changing language\n * @param {string} language\n * @param {string} userType\n */\nexport const applyLanguage = (language, userType) => (dispatch) => {\n\tif (userType === 'employer') {\n\t\tdispatch(setLanguage('de'));\n\t\treturn;\n\t}\n\tdispatch(setLanguage(language));\n};\n\n/**\n * @desc function for changing user type between 'candidate' and 'employer'\n * @param {string} userType\n */\nexport const applyUserType = (userType) => (dispatch) => {\n\tdispatch(setUserType(userType));\n};\n\n// eslint-disable-next-line no-underscore-dangle\nconst devTools = window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__() : (f) => f;\n\nconst store = createStore(rootReducer, compose(applyMiddleware(thunk), devTools));\n\nexport default store;\n","import { LANGUAGE } from '../actionTypes/actionTypes';\n\nconst INIT_STATE = 'en';\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase LANGUAGE:\n\t\t\treturn action.language;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import { IS_LANGUAGE_LOADING } from '../actionTypes/actionTypes';\n\nconst INIT_STATE = false;\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase IS_LANGUAGE_LOADING:\n\t\t\treturn action.payload;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import { CHANGE_USER } from '../actionTypes/actionTypes';\n\nconst INIT_STATE = 'candidate';\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase CHANGE_USER:\n\t\t\treturn action.payload;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import { SET_CONFIRM_TOKEN } from '../actionTypes/actionTypes';\n\nconst INIT_STATE = false;\n\nexport default (state = INIT_STATE, action) => {\n\tswitch (action.type) {\n\t\tcase SET_CONFIRM_TOKEN:\n\t\t\treturn action.payload;\n\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n","import { CHANGE_USER } from '../actionTypes/actionTypes';\n\n/**\n * @desc set type of new user\n * @param {string} user - user type\n * @returns {object}\n */\nexport default (user) => ({\n\ttype: CHANGE_USER,\n\tpayload: user,\n});\n","/* eslint-disable no-unused-vars */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport './styles.scss';\nimport i18n from 'i18n-js';\nimport { Link } from 'react-router-dom';\nimport { connect, useDispatch } from 'react-redux';\nimport titleDe from '../../assets/images/text_title_de.svg';\nimport titleSh from '../../assets/images/text_title_sh.svg';\nimport titleUa from '../../assets/images/text_title_ua.svg';\nimport titleRu from '../../assets/images/text_title_ru.svg';\nimport titleEn from '../../assets/images/text_title_en.svg';\nimport titleTurkish from '../../assets/images/text_title_turkish.svg'\nimport titleRomanian from '../../assets/images/text_title_romanian.svg'\nimport titleBulgarian from '../../assets/images/text_title_bulgarian.svg'\nimport titleSpain from '../../assets/images/text_title_spain.svg'\nimport homeImage from '../../assets/images/home_image.png';\nimport image1 from './images/image1.jpg';\nimport image2 from './images/image2.jpg';\nimport image3 from './images/image3.jpg';\nimport Enaida from './images/Enaida.jpg';\nimport zlatan from './images/zlatan.jpg';\nimport Ljiljana from './images/Ljiljana.jpg';\nimport routes from '../../constants/routes';\nimport * as funcsFromStore from '../../store/store';\nimport { getLanguage } from '../../store/actions/language';\n\n/**\n * @desc UI of Main Page\n * @param {string} language - current language\n * @param {string} userType - current user type\n * @param {function} applyUser - function for set user type\n * @returns {JSX.Element}\n */\nconst MainPage = ({ language, userType, applyUser }) => {\n\tconst [deployKiraText] = useState(false);\n\tconst dispatch = useDispatch();\n\n\tconst titles = {\n\t\tua: titleUa,\n\t\tsh: titleSh,\n\t\tru: titleRu,\n\t\ten: titleEn,\n\t\tde: titleDe,\n\t\ttr: titleTurkish,\n\t\tro: titleRomanian,\n\t\tbg: titleBulgarian,\n\t\tes: titleSpain\n\t};\n\n\tconst handleUserType = (event) => {\n\t\tconst pressedButton = event.target.name;\n\n\t\tif (userType === 'candidate' && pressedButton === 'employer') {\n\t\t\tapplyUser('employer');\n\t\t}\n\t\tif (userType === 'employer' && pressedButton === 'candidate') {\n\t\t\tapplyUser('candidate');\n\t\t\tdispatch(getLanguage());\n\t\t}\n\t};\n\n\tconst makeSmoothScroll = () => {\n\t\tsetTimeout(() => {\n\t\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t\t}, 100);\n\t};\n\n\tconst textSwithcher = (string) => {\n\t\treturn userType === 'employer' ? `${userType}.${string}` : string;\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('For candidate')}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('For employer')}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\tlanguage\n\t\t\t\tyugokraft promo\n\t\t\t
\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t{i18n.t('Working-in-germany')}\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

{i18n.t('YUGOKRAFT je digitalni most')}

\n\t\t\t\t\t

{i18n.t('U vremenu kada je')}

\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('Apply-Now')}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t{i18n.t('YUGOKRAFT\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t{i18n.t('discover-the-best-jobs')}\n\t\t\t\t
\n\t\t\t\t\t

{i18n.t(textSwithcher('discover-the-best-jobs'))}

\n\t\t\t\t\t

{i18n.t(textSwithcher('discover-the-best-jobs-down-text'))}

\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('About-Us')}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

{i18n.t(textSwithcher('Explore-over-million'))}

\n\t\t\t\t\t

{i18n.t(textSwithcher('Explore-over-million-down-text'))}

\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('For-candidates')}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t{i18n.t('Explore-over-million')}\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t 600 ? 'main__companyReviews' : ''}\n `}\n\t\t\t\t>\n\t\t\t\t\t{i18n.t('company-reviews')}\n\t\t\t\t\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\tEnaida\n\t\t\t\t\t

{i18n.t('Gretta')}

\n\t\t\t\t\t

{i18n.t('Bosnien-Herzegowina')}

\n\t\t\t\t\t

\n\t\t\t\t\t\t{i18n.t('Gretta-description')}\n\t\t\t\t\t

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\tzlatan\n\t\t\t\t\t

{i18n.t('Zlatan')}

\n\t\t\t\t\t

{i18n.t('Bosnien-Herzegowina')}

\n\t\t\t\t\t

\n\t\t\t\t\t\t{i18n.t('Zlatan-description')}\n\t\t\t\t\t

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\tLjiljana\n\t\t\t\t\t

{i18n.t('Ljiljana')}

\n\t\t\t\t\t

{i18n.t('From-Serbia')}

\n\t\t\t\t\t

\n\t\t\t\t\t\t{i18n.t('Ljiljana-description')}\n\t\t\t\t\t

\n\t\t\t\t
\n\t\t\t
\n\t\t\n\t);\n};\n\nconst storeFuncs = {\n\tapplyLanguage: funcsFromStore.applyLanguage,\n\tapplyUser: funcsFromStore.applyUserType,\n};\n\nconst storeData = (state) => ({\n\tlanguage: state.language,\n\tuserType: state.userType,\n});\n\nMainPage.propTypes = {\n\tlanguage: PropTypes.string.isRequired,\n\tuserType: PropTypes.string.isRequired,\n\tapplyUser: PropTypes.func.isRequired,\n};\n\nexport default connect(storeData, storeFuncs)(MainPage);\n","import React from 'react';\nimport './styles.scss';\nimport i18n from 'i18n-js';\nimport { useSelector } from 'react-redux';\nimport var1 from './images/var1.svg';\nimport var2 from './images/var2.svg';\nimport var3 from './images/var3.svg';\nimport var4 from './images/var4.svg';\nimport var5 from './images/var5.svg';\n\n/**\n * @desc UI for About page\n * @returns {JSX.Element}\n */\nconst AboutPage = () => {\n\tconst { userType } = useSelector((state) => state);\n\tconst textSwithcher = (string) => {\n\t\treturn userType === 'employer' ? `${userType}.${string}` : string;\n\t};\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t

{i18n.t(textSwithcher('We-will-help-you-to-find'))}

\n\t\t\t\t

\n\t\t\t\t\t{i18n.t(textSwithcher('We-will-help-you-to-find-description1'))}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t{i18n.t(textSwithcher('We-will-help-you-to-find-description2'))}\n\t\t\t\t

\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t{i18n.t('Unsere-Grundsätze')}\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t

{i18n.t(textSwithcher('about-description1'))}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t{i18n.t(textSwithcher('about-description2'))}\n\t\t\t\t\t

{i18n.t(textSwithcher('about-description2'))}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t{i18n.t(textSwithcher('about-description2'))}\n\t\t\t\t\t

{i18n.t(textSwithcher('about-description3'))}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t{i18n.t(textSwithcher('about-description4'))}\n\t\t\t\t\t

{i18n.t(textSwithcher('about-description4'))}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t{i18n.t(textSwithcher('about-description5'))}\n\t\t\t\t\t

{i18n.t(textSwithcher('about-description5'))}

\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{i18n.t('Wichtigkeit-des-ersten-Jobs')}\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t

{i18n.t('Warum-der-erste-Job')}

\n\t\t\t\t\t

{i18n.t('Warum-der-erste-Job-description')}

\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default AboutPage;\n","import React from 'react';\nimport './styles.scss';\nimport i18n from 'i18n-js';\nimport worker from './images/worker.jpg';\nimport worker2 from './images/worker2.jpg';\nimport worker3 from './images/worker3.jpg';\nimport worker4 from './images/worker4.jpg';\nimport worker5 from './images/worker5.jpg';\nimport worker6 from './images/worker6.jpg';\n\n/**\n * @desc UI of For Candidates Page\n * @returns {JSX.Element}\n */\nconst ForCandidates = () => {\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t{i18n.t('How-it-will-be')}\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t1\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 1
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step1')}

\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t2\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 2
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step2')}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 3
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step3')}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t4\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 4
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step4')}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t5\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 5
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step5')}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t6\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 6
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step6')}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t7\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 7
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step7')}

\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t8\n\t\t\t\t\t\t\n\t\t\t\t\t\t
{i18n.t('Step')} 8
\n\t\t\t\t\t
\n\n\t\t\t\t\t

{i18n.t('step8')}

\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{i18n.t('YUGOKRAFT-VERBINDET-ARBEITSMÄRKTE')}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

{i18n.t('offers-10000-vacancies')}

\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

{i18n.t('Erzieher-Hilfskraft')}

\n\t\t\t\t\t\t\t\t\t{i18n.t('ab')}\n\t\t\t\t\t\t\t\t\t 22.500 {i18n.t('EURO')}\n\t\t\t\t\t\t\t\t\t{i18n.t('im-Jahr')}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

{i18n.t('Ingenieur')}

\n\t\t\t\t\t\t\t\t\t{i18n.t('ab')}\n\t\t\t\t\t\t\t\t\t 45.000 {i18n.t('EURO')}\n\t\t\t\t\t\t\t\t\t{i18n.t('im-Jahr')}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

{i18n.t('Security-Mitarbeiter')}

\n\t\t\t\t\t\t\t\t\t{i18n.t('ab')}\n\t\t\t\t\t\t\t\t\t 31.000 {i18n.t('EURO')}\n\t\t\t\t\t\t\t\t\t{i18n.t('im-Jahr')}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

{i18n.t('Reinigungskraft')}

\n\t\t\t\t\t\t\t\t\t{i18n.t('ab')}\n\t\t\t\t\t\t\t\t\t 27.000 {i18n.t('EURO')}\n\t\t\t\t\t\t\t\t\t{i18n.t('im-Jahr')}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

{i18n.t('Bauarbeiter')}

\n\t\t\t\t\t\t\t\t\t{i18n.t('ab')}\n\t\t\t\t\t\t\t\t\t 23.000 {i18n.t('EURO')}\n\t\t\t\t\t\t\t\t\t{i18n.t('im-Jahr')}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

{i18n.t('Küchenhilfskraft')}

\n\t\t\t\t\t\t\t\t\t{i18n.t('ab')}\n\t\t\t\t\t\t\t\t\t 25.000 {i18n.t('EURO')}\n\t\t\t\t\t\t\t\t\t{i18n.t('im-Jahr')}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t{i18n.t('for-job')}\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t

{i18n.t('what-do-you-need')}

\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t

{i18n.t('passport')}

\n\t\t\t\t\t\t

{i18n.t('Ein-abgelaufener-Pass')}

\n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\t\t\t\t\t\t

{i18n.t('application')}

\n\t\t\t\t\t\t

{i18n.t('application-description')}

\n\t\t\t\t\t
\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t

{i18n.t('Polizeiliches-Führungszeugnis')}

\n\t\t\t\t\t\t

{i18n.t('Bitte besorgen Sie eine Bestätigung')}

\n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\t\t\t\t\t\t

{i18n.t('Zeugnisse')}

\n\t\t\t\t\t\t

{i18n.t('Zeugnisse-description')}

\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default ForCandidates;\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport './styles.scss';\n\nimport WarningSign from '../images/warning-sign.svg';\n\n/**\n * @desc UI for show warning message\n * @returns {JSX.Element|null}\n */\nconst WarningMessage = () => {\n\tconst language = useSelector(({ language }) => language);\n\n\treturn (\n\t\t
\n\t\t\twarning-logo\n\t\t\t{language === 'de' ? (\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tBitte füllen Sie das Formular in der  \n\t\t\t\t\t\tdeutschen oder englischen Sprache aus.\n\t\t\t\t\t

\n\t\t\t\t\t

\n\t\t\t\t\t\tWenn Sie Dokumente wie Lebenslauf, Zeugnisse, Zertifikate in  \n\t\t\t\t\t\tdeutsch oder englisch haben, laden Sie diese ebenfalls übersetzt\n\t\t\t\t\t\thoch.\n\t\t\t\t\t

\n\t\t\t\t
\n\t\t\t) : (\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tPlease fill out the form in German or English.\n\t\t\t\t\t

\n\t\t\t\t\t

\n\t\t\t\t\t\tIf you have documents such as CV, references, certificates in  \n\t\t\t\t\t\tGerman or English, please upload the translated versions as well.\n\t\t\t\t\t

\n\t\t\t\t
\n\t\t\t)}\n\t\t
\n\t);\n};\n\nexport default WarningMessage;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { getIn } from 'formik';\nimport cn from 'classnames';\n\nimport './FKinput.scss';\n\n/**\n * @desc Custom input type text component\n * @param {object} field - formik field object\n * @param {object} form - formik form object\n * @param {string} label - label for element\n * @param {string} id - id for element\n * @param {number} width - width for element\n * @param {function} onChange - custom function for set form values\n * @param {boolean} gapSM - value for set small custom element gap\n * @param {boolean} gapLG - value for set large custom element gap\n * @param {boolean} minWidth - value for set custom element min width\n * @param {boolean} margin - value for set custom element margin\n * @param {boolean} padding - value for set custom element padding\n * @param {boolean} marginBot - value for set custom element margin bottom\n * @param {boolean} inputWidth - value for set custom element width\n * @returns {JSX.Element}\n */\nconst FKinput = ({ field, form, label, id, width, onChange, gapSM, gapLG, minWidth, margin, padding, marginBot, inputWidth, ...props }) => {\n\tconst error = getIn(form.errors, field.name);\n\tconst touch = getIn(form.touched, field.name);\n\n\treturn (\n\t\t\n\t\t\t{label}\n\t\t\t\n\t\t\n\t);\n};\n\nFKinput.propTypes = {\n\tfield: PropTypes.objectOf(PropTypes.any).isRequired,\n\tform: PropTypes.objectOf(PropTypes.any).isRequired,\n\tid: PropTypes.string.isRequired,\n\ttype: PropTypes.string,\n\tlabel: PropTypes.string,\n\tplaceholder: PropTypes.string,\n\twidth: PropTypes.number,\n\tonChange: PropTypes.func,\n\tgapSM: PropTypes.bool,\n\tgapLG: PropTypes.bool,\n\tminWidth: PropTypes.bool,\n\tmargin: PropTypes.bool,\n\tpadding: PropTypes.bool,\n\tmarginBot: PropTypes.bool,\n\tinputWidth: PropTypes.bool,\n};\n\nFKinput.defaultProps = {\n\tlabel: null,\n\tplaceholder: null,\n\ttype: 'text',\n\twidth: 323,\n\tonChange: undefined,\n\tgapSM: undefined,\n\tgapLG: undefined,\n\tminWidth: undefined,\n\tmargin: undefined,\n\tpadding: undefined,\n\tmarginBot: undefined,\n\tinputWidth: undefined,\n};\n\nexport default FKinput;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport Select from 'react-select';\nimport { getIn } from 'formik';\nimport './FKselect.scss';\nimport i18n from 'i18n-js';\nimport cn from 'classnames';\n\nimport ArrowDown from '../images/arrowDown.svg';\n\n/**\n * @desc Custom select component\n * @param {object} field - formik field object\n * @param {object} form - formik form object\n * @param {string} label - label for element\n * @param {string} id - id for element\n * @param {string} width - width for element\n * @param {boolean} gapSM - value for set small custom element gap\n * @param {boolean} gapLG - value for set large custom element gap\n * @param {boolean} maxWidth - value for set custom element max width\n * @param {boolean} minWidth - value for set custom element min width\n * @param {boolean} maxWidthSm - value for set custom element small max width\n * @param {boolean} padding - value for set custom element padding\n * @param {boolean} marginBot - value for set custom element margin bottom\n * @param {function} onChange - custom function for set form values\n * @param {function} onBlur - custom function for onBlur action\n * @returns {JSX.Element}\n */\nconst FKselect = ({\n\tfield,\n\tform,\n\tid,\n\tlabel,\n\tgapSM,\n\tgapLG,\n\tmaxWidth,\n\tminWidth,\n\tmaxWidthSm,\n\tpadding,\n\tmarginBot,\n\tonChange,\n\tonBlur,\n\t...props\n}) => {\n\tconst error = getIn(form.errors, field.name);\n\tconst touch = getIn(form.touched, field.name);\n\tconst fieldValue = {\n\t\tlabel: field.value.value ? i18n.t(field.value.value) : '',\n\t\tvalue: field.value.value ? i18n.t(field.value.value) : '',\n\t};\n\tconst styles = {\n\t\tcontrol: () => ({\n\t\t\tposition: 'relative',\n\t\t\tdisplay: 'flex',\n\t\t\twidth: props.width,\n\t\t\tminWidth: '131px',\n\t\t\theight: 43,\n\t\t\tmarginTop: 9,\n\t\t\tborder: '2px solid #e8eaec',\n\t\t\tborderColor: error && touch ? '#FF0000' : '#e8eaec',\n\t\t\tborderRadius: 3,\n\t\t\tbackgroundColor: '#fff',\n\t\t\tfontFamily: 'Montserrat',\n\t\t\tfontWeight: 600,\n\t\t\tfontSize: 13,\n\t\t\toutline: 'none',\n\t\t\tcursor: 'pointer',\n\t\t\tboxShadow: 'none',\n\t\t\t'@media only screen and (max-width: 767px)': {\n\t\t\t\t...styles['@media only screen and (max-width: 767px)'],\n\t\t\t\twidth: '100%',\n\t\t\t},\n\t\t}),\n\t\tvalueContainer: (styles) => ({\n\t\t\t...styles,\n\t\t\tpaddingLeft: 20,\n\t\t\t'@media only screen and (max-width: 767px)': {\n\t\t\t\t...styles['@media only screen and (max-width: 767px)'],\n\t\t\t\tpaddingLeft: 5,\n\t\t\t},\n\t\t}),\n\t\tsingleValue: (styles) => ({\n\t\t\t...styles,\n\t\t\tpadding: '5px 0',\n\t\t\tcolor: '#1E496B',\n\t\t}),\n\t\toption: (styles, { isDisabled, isSelected }) => {\n\t\t\treturn {\n\t\t\t\tdisplay: 'flex',\n\t\t\t\talignItems: 'center',\n\t\t\t\tminHeight: 33,\n\t\t\t\tpadding: '8px 0 8px 10px',\n\t\t\t\tboxSizing: 'border-box',\n\t\t\t\tfontFamily: 'Montserrat',\n\t\t\t\tfontWeight: 600,\n\t\t\t\tfontSize: 13,\n\t\t\t\tcolor: '#1E496B',\n\t\t\t\tbackgroundColor: isSelected ? '#E8EAEC' : '#FFFFFF',\n\t\t\t\tcursor: isDisabled ? 'not-allowed' : 'pointer',\n\n\t\t\t\t'&:hover': {\n\t\t\t\t\tbackgroundColor: '#E8EAEC',\n\t\t\t\t\tborderLeft: '6px solid #F27480',\n\t\t\t\t\tpaddingLeft: 4,\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t\tmenuList: (styles) => ({\n\t\t\t...styles,\n\t\t\tmaxHeight: 350,\n\t\t\tbackgroundColor: '#FFFFFF',\n\t\t\tborder: '2px solid #E8EAEC',\n\t\t\tborderRadius: 3,\n\t\t\tpadding: 0,\n\t\t}),\n\t\tmenu: (styles) => ({\n\t\t\t...styles,\n\t\t\ttop: 35,\n\t\t\tboxShadow: 'none',\n\t\t\tzIndex: 3,\n\t\t}),\n\t\tplaceholder: (styles) => ({\n\t\t\t...styles,\n\t\t\tcolor: '#C7C6C7',\n\t\t}),\n\t};\n\n\treturn (\n\t\t\n\t\t\t{label}\n\t\t\t {\n\t\t\t\t\t\tconst { menuIsOpen } = selectProps;\n\t\t\t\t\t\treturn arrow;\n\t\t\t\t\t},\n\t\t\t\t\tIndicatorSeparator: () => null,\n\t\t\t\t}}\n\t\t\t\tisSearchable={false}\n\t\t\t\tonChange={(e) => {\n\t\t\t\t\tif (onChange) {\n\t\t\t\t\t\tonChange(e, field.name);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tform.setFieldValue(field.name, e);\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t\tonBlur={() => {\n\t\t\t\t\tif (onBlur) {\n\t\t\t\t\t\tonBlur(field.name);\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t\tstyles={styles}\n\t\t\t/>\n\t\t\n\t);\n};\n\nFKselect.propTypes = {\n\tfield: PropTypes.objectOf(PropTypes.any).isRequired,\n\tform: PropTypes.objectOf(PropTypes.any).isRequired,\n\twidth: PropTypes.string.isRequired,\n\tid: PropTypes.string.isRequired,\n\tlabel: PropTypes.string,\n\tonChange: PropTypes.func,\n\tonBlur: PropTypes.func,\n\tgapSM: PropTypes.bool,\n\tgapLG: PropTypes.bool,\n\tmaxWidth: PropTypes.bool,\n\tmaxWidthSm: PropTypes.bool,\n\tminWidth: PropTypes.bool,\n\tpadding: PropTypes.bool,\n\tmarginBot: PropTypes.bool,\n};\n\nFKselect.defaultProps = {\n\tlabel: null,\n\tonChange: undefined,\n\tonBlur: undefined,\n\tgapSM: undefined,\n\tgapLG: undefined,\n\tmaxWidth: undefined,\n\tmaxWidthSm: undefined,\n\tminWidth: undefined,\n\tpadding: undefined,\n\tmarginBot: undefined,\n};\n\nexport default FKselect;\n","import { ERROR, CLEAR_ERROR } from '../actionTypes/actionTypes';\n\n/**\n * @desc set error action\n * @param {string} message - error message\n * @returns {object}\n */\nexport const setError = (message) => ({\n\ttype: ERROR,\n\tmessage,\n});\n\n/**\n * @desc clear error action\n * @returns {object}\n */\nexport const clearError = () => ({\n\ttype: CLEAR_ERROR,\n\tmessage: null,\n});\n\n/**\n * @desc apply error action\n * @param {string} error - error message\n * @return {function}\n */\nexport const applyError = (error) => (dispatch) => {\n\tdispatch(setError(error));\n};\n","import axios from 'axios';\nimport i18n from 'i18n-js';\nimport {\n\tSET_COUNTRIES,\n\tSET_DOCUMENTS_CATEGORIES,\n\tSET_CANDIDATE_FORM_PAGE,\n\tSET_IS_ADDITIONAL_DOCS_SENDED,\n\tSET_IS_DOCS_LOADING,\n} from '../actionTypes/actionTypes';\n\nimport { setError } from './errorHandling';\n\n/**\n * @desc get countries list from back\n */\nexport const getCountries = () => async (dispatch) => {\n\ttry {\n\t\tconst res = await axios.get(`${process.env.REACT_APP_API_URL}/api/data/countries`);\n\t\tdispatch({\n\t\t\ttype: SET_COUNTRIES,\n\t\t\tpayload: res.data,\n\t\t});\n\t} catch (err) {\n\t\tconsole.warn(err.message);\n\t}\n};\n\n/**\n * @desc get documents categories list from back\n */\nexport const getDocumentsCategories = () => async (dispatch) => {\n\ttry {\n\t\tconst res = await axios.get(`${process.env.REACT_APP_API_URL}/api/data/categories`);\n\t\tdispatch({\n\t\t\ttype: SET_DOCUMENTS_CATEGORIES,\n\t\t\tpayload: res.data,\n\t\t});\n\t} catch (err) {\n\t\tconsole.warn(err.message);\n\t}\n};\n\n/**\n * @desc set candidate form page\n * @param {string} page - selected candidate form page\n * @returns {object}\n */\nexport const setCandidateFormPage = (page) => ({\n\ttype: SET_CANDIDATE_FORM_PAGE,\n\tpage,\n});\n\n/**\n * @desc function for set candidate to back and to redux\n * @param {object} body - candidate data\n * @returns {function(*): Promise}\n */\nexport const setCandidate = (body) => async (dispatch) => {\n\ttry {\n\t\tconst res = await axios.post(`${process.env.REACT_APP_API_URL}/api/candidates/save`, body);\n\t\tlocalStorage.setItem('yugokraftCandidateId', res.data.candidateId);\n\t} catch (error) {\n\t\tdispatch(setError(error.response.data.message));\n\t}\n};\n\n/**\n * @desc function for patch candidate to back\n * @param {object} body - candidate data\n * @returns {function(*): Promise}\n */\nexport const setProfile = (body) => async (dispatch) => {\n\ttry {\n\t\tawait axios.post(`${process.env.REACT_APP_API_URL}/api/candidates/profile`, body);\n\t} catch (error) {\n\t\tdispatch(setError(error.response.data.message));\n\t}\n};\n\n/**\n * @desc function for set candidate documents to back\n * @param {object} body - candidate docs list\n * @param {string} candidateId - candidate id\n * @returns {function(*): Promise}\n */\nexport const setDocuments = (body, candidateId) => async (dispatch) => {\n\ttry {\n\t\tdispatch(setIsDocsLoading(true));\n\t\tawait axios.patch(`${process.env.REACT_APP_API_URL}/api/candidates/${candidateId}/attach`, body);\n\t\tdispatch(setCandidateFormPage('congrats'));\n\t} catch (error) {\n\t\tdispatch(setError(i18n.t('uploadForm.failed to load document')));\n\t} finally {\n\t\tdispatch(setIsDocsLoading(false));\n\t}\n};\n\n/**\n * @desc set is additional docs sended\n * @param {boolean} payload - is additional docs sended\n * @returns {object}\n */\nexport const setIsAdditionalDocsSended = (payload) => ({\n\ttype: SET_IS_ADDITIONAL_DOCS_SENDED,\n\tpayload,\n});\n\n/**\n * @desc set is docs loading\n * @param {boolean} payload - is docs loading\n * @returns {object}\n */\nexport const setIsDocsLoading = (payload) => ({\n\ttype: SET_IS_DOCS_LOADING,\n\tpayload,\n});\n\n/**\n * @desc function for set additional docs to back\n * @param {object} body - candidate additional docs list\n * @param {string} token - token\n * @returns {function(*): Promise}\n */\nexport const setAdditionalDocuments = (body, token) => async (dispatch) => {\n\ttry {\n\t\tdispatch(setIsDocsLoading(true));\n\t\tawait axios.post(`${process.env.REACT_APP_API_URL}/api/candidates/upload?token=${token}`, body);\n\t\tdispatch(setIsAdditionalDocsSended(true));\n\t} catch (error) {\n\t\tdispatch(setError(i18n.t('uploadForm.error')));\n\t} finally {\n\t\tdispatch(setIsDocsLoading(false));\n\t}\n};\n","import axios from 'axios';\nimport i18n from 'i18n-js';\nimport { PATCH_CANDIDATE, CLEAR_CANDIDATE, SET_CURRENT_CANDIDATE_DATA } from '../actionTypes/actionTypes';\nimport { applyError } from './errorHandling';\n\n/**\n * @desc create new employer\n * @param {object} { name, company, email} - information about employer\n */\nexport const registerEmployer = ({ name, company, email }) => async (dispatch) => {\n\ttry {\n\t\tconst config = {\n\t\t\theader: {\n\t\t\t\t'content-type': 'application/json',\n\t\t\t},\n\t\t};\n\t\tconst body = {\n\t\t\tname,\n\t\t\tcompany,\n\t\t\temail,\n\t\t};\n\n\t\tawait axios.post(`${process.env.REACT_APP_API_URL}/api/employers/register`, body, config);\n\t} catch (err) {\n\t\tdispatch(applyError(i18n.t('employer.registration-error-message')));\n\t}\n};\n\n/**\n * @desc patch candidate from redux\n * @param {object} body - information about candidate\n */\nexport const patchCandidate = (body) => ({\n\ttype: PATCH_CANDIDATE,\n\tpayload: body,\n});\n\n/**\n * @desc clear candidate from redux\n * @param {object} body - empty object\n */\nexport const clearCandidate = (body) => ({\n\ttype: CLEAR_CANDIDATE,\n\tpayload: body,\n});\n\n/**\n * @desc set current candidate on server\n * @param {object} body - information about candidate\n */\nexport const setCurrentCandidateData = (body) => ({\n\ttype: SET_CURRENT_CANDIDATE_DATA,\n\tpayload: body,\n});\n","import React, { useEffect, useMemo, useCallback, useState, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Formik, Form, Field } from 'formik';\nimport * as yup from 'yup';\nimport i18n from 'i18n-js';\nimport moment from 'moment';\n\nimport Input from './FKinput/FKinput';\nimport Select from './FKselect/FKselect';\nimport ArrowRight from './images/arrowRight.svg';\n\nimport { setCandidateFormPage, getCountries, setCandidate } from '../../store/actions/registrationForm';\nimport { patchCandidate, setCurrentCandidateData } from '../../store/actions/userData';\n\n/**\n * @desc UI for candidate registration form - step 1 personal data\n * @returns {JSX.Element|null}\n */\nconst PersonalDataForm = () => {\n\tconst dispatch = useDispatch();\n\tconst formRef = useRef();\n\tconst { countries, currentCandidateData } = useSelector(({ registrationForm }) => registrationForm);\n\tconst user = useSelector(({ user }) => user);\n\tconst countriesFromServer = countries.map((country) => ({ value: country.name, label: i18n.t(`${country.name}`) }));\n\tconst MIN_DATE = moment().year() - 120;\n\tconst MAX_DATE = moment().year() - 16;\n\tconst [monthNumber, setMonthNumber] = useState(null);\n\tconst [yearNumber, setYearNumber] = useState(null);\n\tconst [maxDaysNumber, setMaxDaysNumber] = useState(31);\n\n\t/**\n\t * @desc initial values object\n\t */\n\tconst initialValues = {\n\t\tfirstName: user.firstName || '',\n\t\tlastName: user.lastName || '',\n\t\temail: user.email || '',\n\t\tcode: user.code || '+',\n\t\tphone: user.phone || '',\n\t\tcountry: user.country ? { value: user.country, label: i18n.t(user.country) } : '',\n\t\tbirthDay: user.birthDay || '',\n\t\tbirthMonth: user.birthMonth ? { value: user.birthMonth, label: i18n.t(user.birthMonth) } : '',\n\t\tbirthYear: user.birthYear || '',\n\t};\n\n\t/**\n\t * @desc validation schema for form values\n\t */\n\tconst validationSchema = useMemo(\n\t\t() =>\n\t\t\tyup.object({\n\t\t\t\tfirstName: yup.string().required(),\n\t\t\t\tlastName: yup.string().required(),\n\t\t\t\temail: yup.string().email().required(),\n\t\t\t\tcode: yup.string().min(2).required(),\n\t\t\t\tphone: yup.string().required(),\n\t\t\t\tcountry: yup.object().required(),\n\t\t\t\tbirthDay: yup\n\t\t\t\t\t.number()\n\t\t\t\t\t.min(1)\n\t\t\t\t\t// eslint-disable-next-line func-names\n\t\t\t\t\t.test('', function (value) {\n\t\t\t\t\t\t// eslint-disable-next-line react/no-this-in-sfc\n\t\t\t\t\t\treturn maxDaysNumber >= value;\n\t\t\t\t\t})\n\t\t\t\t\t.required(),\n\t\t\t\tbirthMonth: yup.object().required(),\n\t\t\t\tbirthYear: yup.number().min(MIN_DATE).max(MAX_DATE).required(),\n\t\t\t}),\n\t\t[maxDaysNumber, MIN_DATE, MAX_DATE],\n\t);\n\n\t/**\n\t * @desc mount component and get countries list from server\n\t */\n\tuseEffect(() => {\n\t\tdocument.getElementById('facebook').innerHTML = `\n !function(f,b,e,v,n,t,s)\n {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\n n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n n.queue=[];t=b.createElement(e);t.async=!0;\n t.src=v;s=b.getElementsByTagName(e)[0];\n s.parentNode.insertBefore(t,s)}(window,document,'script',\n 'https://connect.facebook.net/en_US/fbevents.js');\n fbq('init', '223308032839011');\n fbq('track', 'Contact');\n fbq('track', 'Lead');\n fbq('track', 'SubmitApplication');\n\t\t`;\n\t\tdispatch(getCountries());\n\t}, [dispatch]);\n\n\t/**\n\t * @desc function for set month index\n\t */\n\tuseEffect(() => {\n\t\tconst monthsIndex = months.findIndex((month) => month.value === user.birthMonth);\n\n\t\tif (monthsIndex >= 0) {\n\t\t\tsetMonthNumber(monthsIndex + 1);\n\t\t}\n\t}, []);\n\n\t/**\n\t * @desc function for set max days in month\n\t */\n\tuseEffect(() => {\n\t\tsetMaxDaysNumber(31);\n\n\t\tif (monthNumber === 4 || monthNumber === 6 || monthNumber === 9 || monthNumber === 11) {\n\t\t\tsetMaxDaysNumber(30);\n\t\t}\n\t\tif (monthNumber === 2) {\n\t\t\tsetMaxDaysNumber(29);\n\t\t}\n\t\tif (monthNumber === 2 && yearNumber % 4 !== 0) {\n\t\t\tsetMaxDaysNumber(28);\n\t\t}\n\t\tif (monthNumber === 2 && yearNumber % 100 === 0 && yearNumber % 400 !== 0) {\n\t\t\tsetMaxDaysNumber(28);\n\t\t}\n\t}, [monthNumber, yearNumber]);\n\n\t/**\n\t * @desc function for set form values to redux\n\t */\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tconst reduxData = {\n\t\t\t\t...formRef.current.values,\n\t\t\t\tbirthMonth: formRef.current.values.birthMonth.value,\n\t\t\t\tcountry: formRef.current.values.country.value,\n\t\t\t};\n\t\t\tdispatch(patchCandidate(reduxData));\n\t\t};\n\t}, []);\n\n\tconst months = [\n\t\t{ value: 'January', label: i18n.t('January') },\n\t\t{ value: 'February', label: i18n.t('February') },\n\t\t{ value: 'March', label: i18n.t('March') },\n\t\t{ value: 'April', label: i18n.t('April') },\n\t\t{ value: 'May', label: i18n.t('May') },\n\t\t{ value: 'June', label: i18n.t('June') },\n\t\t{ value: 'July', label: i18n.t('July') },\n\t\t{ value: 'August', label: i18n.t('August') },\n\t\t{ value: 'September', label: i18n.t('September') },\n\t\t{ value: 'October', label: i18n.t('October') },\n\t\t{ value: 'November', label: i18n.t('November') },\n\t\t{ value: 'December', label: i18n.t('December') },\n\t];\n\n\t/**\n\t * @desc function for submit form data\n\t */\n\tconst handleSubmit = useCallback(\n\t\t(values, { setSubmitting }) => {\n\t\t\tlet isFormHasChanges = false;\n\t\t\tconst countryId = countries.find((item) => item.name === values.country.value).id;\n\t\t\tconst dateOfBirth = `${values.birthYear}-${monthNumber < 10 ? 0 : ''}${monthNumber}-${values.birthDay}`;\n\t\t\tconst phoneNumber = values.code + values.phone;\n\t\t\tconst candidateId = localStorage.getItem('yugokraftCandidateId');\n\t\t\tconst currentFormData = {\n\t\t\t\t...values,\n\t\t\t\tbirthMonth: values.birthMonth.value,\n\t\t\t\tcountry: values.country.value,\n\t\t\t};\n\n\t\t\tif (candidateId) {\n\t\t\t\tconst currentFormDataArr = Object.values(currentFormData);\n\t\t\t\tconst currentReduxDataArr = Object.values(currentCandidateData);\n\t\t\t\tconst differenceArr = currentFormDataArr.filter((item) => !currentReduxDataArr.includes(item));\n\n\t\t\t\tisFormHasChanges = differenceArr.length !== 0;\n\t\t\t}\n\n\t\t\tif (!candidateId || isFormHasChanges) {\n\t\t\t\tconst serverData = {\n\t\t\t\t\tusername: values.firstName,\n\t\t\t\t\tlastName: values.lastName,\n\t\t\t\t\temail: values.email,\n\t\t\t\t\tcountryId,\n\t\t\t\t\tphoneNumber,\n\t\t\t\t\tdateOfBirth,\n\t\t\t\t};\n\n\t\t\t\tif (isFormHasChanges) {\n\t\t\t\t\tserverData.id = candidateId;\n\t\t\t\t}\n\n\t\t\t\tdispatch(setCandidate(serverData));\n\t\t\t\tdispatch(setCurrentCandidateData(currentFormData));\n\t\t\t\tsetSubmitting(false);\n\t\t\t}\n\t\t\tdispatch(setCandidateFormPage('education'));\n\t\t},\n\t\t[dispatch, countries, monthNumber],\n\t);\n\n\t/**\n\t * @desc function for scroll page\n\t */\n\tconst handleNextPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t};\n\n\treturn (\n\t\t\n\t\t\t{(formik) => {\n\t\t\t\tconst onChangeName = ({ target: { value } }, name) => {\n\t\t\t\t\tconst pattern = /[^a-zA-ZА-Яа-яÄäÖöÜüßЇїЁёіІєЄ\\-Ђђ\\sЉљЊњЋћЏџЈјẞČčĆćDždžĐ𩹮ž]/g;\n\n\t\t\t\t\tif (!value.match(pattern)) {\n\t\t\t\t\t\tformik.setFieldValue(name, value);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst onChangePhone = ({ target: { value } }, name) => {\n\t\t\t\t\tconst codePattern = /((?!(\\d|^\\+)).)/g;\n\t\t\t\t\tconst phonePattern = /([^\\d\\s])/g;\n\n\t\t\t\t\tswitch (name) {\n\t\t\t\t\t\tcase 'code':\n\t\t\t\t\t\t\tformik.setFieldValue(name, value.replace(codePattern, ''));\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'phone':\n\t\t\t\t\t\t\tif (!value.match(phonePattern)) {\n\t\t\t\t\t\t\t\tformik.setFieldValue(name, value);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst onBlurDropdowns = (name) => {\n\t\t\t\t\tformik.setTouched({\n\t\t\t\t\t\t...formik.touched,\n\t\t\t\t\t\t[name]: true,\n\t\t\t\t\t});\n\t\t\t\t};\n\n\t\t\t\tconst onChangeBirth = (e, name) => {\n\t\t\t\t\tconst pattern = /([\\D])/g;\n\t\t\t\t\tconst monthsIndex = months.findIndex((month) => month.value === e.value);\n\n\t\t\t\t\tswitch (name) {\n\t\t\t\t\t\tcase 'birthDay':\n\t\t\t\t\t\t\tif (+e.target.value <= 31) {\n\t\t\t\t\t\t\t\tformik.setFieldValue(name, e.target.value);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'birthMonth':\n\t\t\t\t\t\t\tformik.setFieldValue(name, e);\n\t\t\t\t\t\t\tsetMonthNumber(monthsIndex + 1);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'birthYear':\n\t\t\t\t\t\t\tif (!e.target.value.match(pattern)) {\n\t\t\t\t\t\t\t\tformik.setFieldValue(name, e.target.value);\n\t\t\t\t\t\t\t\tsetYearNumber(e.target.value);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

{i18n.t('personal-data')}

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t onChangeName(e, 'firstName')}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t onChangeName(e, 'lastName')}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t onChangePhone(e, 'code')}\n\t\t\t\t\t\t\t\t\t\t\tgapSM\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t onChangePhone(e, 'phone')}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t onChangeBirth(e, 'birthDay')}\n\t\t\t\t\t\t\t\t\t\t\tgapSM\n\t\t\t\t\t\t\t\t\t\t\tminWidth\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t onChangeBirth(e, 'birthMonth')}\n\t\t\t\t\t\t\t\t\t\t\tgapSM\n\t\t\t\t\t\t\t\t\t\t\tmaxWidthSm\n\t\t\t\t\t\t\t\t\t\t\tonBlur={onBlurDropdowns}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t onChangeBirth(e, 'birthYear')}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{i18n.t('next-step')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t}}\n\t\t
\n\t);\n};\n\nexport default PersonalDataForm;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { getIn } from 'formik';\nimport cn from 'classnames';\n\nimport './FKtextarea.scss';\n\n/**\n * @desc Custom textarea component\n * @param {object} field - formik field object\n * @param {object} form - formik form object\n * @param {string} label - label for element\n * @param {string} id - id for element\n * @param {number} maxWidth - value for set custom element max width\n * @param {boolean} gap - value for set element gap\n * @param {boolean} widthBlock - value for set element gap\n * @param {boolean} padding - value for set custom element padding\n * @param {function} onChange - custom function for set form values\n * @param {string} placeholder - value for element placeholder\n * @returns {JSX.Element}\n */\nconst FKtextarea = ({ field, form, label, id, maxWidth, gap, widthBlock, padding, ...props }) => {\n\tconst error = getIn(form.errors, field.name);\n\tconst touch = getIn(form.touched, field.name);\n\n\treturn (\n\t\t\n\t\t\t{label}\n\t\t\t\n\t\t\n\t);\n};\n\nFKtextarea.propTypes = {\n\tfield: PropTypes.objectOf(PropTypes.any).isRequired,\n\tform: PropTypes.objectOf(PropTypes.any).isRequired,\n\tid: PropTypes.string.isRequired,\n\tlabel: PropTypes.string,\n\tplaceholder: PropTypes.string,\n\tmaxWidth: PropTypes.number,\n\twidthBlock: PropTypes.bool,\n\tonChange: PropTypes.func,\n\tgap: PropTypes.bool,\n\tpadding: PropTypes.bool,\n};\n\nFKtextarea.defaultProps = {\n\tlabel: null,\n\tplaceholder: null,\n\tmaxWidth: undefined,\n\twidthBlock: undefined,\n\tonChange: undefined,\n\tgap: undefined,\n\tpadding: undefined,\n};\n\nexport default FKtextarea;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport cn from 'classnames';\n\nimport './FKCheckbox.scss';\n\nimport checkboxChecked from '../images/checked.svg';\nimport checkboxNotChecked from '../images/notChecked.svg';\n\n/**\n * @desc Custom input type checkbox component\n * @param {object} field - formik field object\n * @param {object} form - formik form object\n * @param {string} label - label for element\n * @param {string} id - id for element\n * @param {function} onChange - custom function for set form values\n * @param {boolean} position - value for set element position\n * @param {boolean} gap - value for set element gap\n * @returns {JSX.Element}\n */\nconst FkCheckbox = ({ field, form, label, id, onChange, position, gap, ...props }) => {\n\tconst { value } = field;\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t{value\n\t\t\t{label}\n\t\t\n\t);\n};\n\nFkCheckbox.propTypes = {\n\tfield: PropTypes.objectOf(PropTypes.any).isRequired,\n\tform: PropTypes.objectOf(PropTypes.any).isRequired,\n\tid: PropTypes.string.isRequired,\n\tlabel: PropTypes.string,\n\tonChange: PropTypes.func,\n\tposition: PropTypes.bool,\n\tgap: PropTypes.bool,\n};\n\nFkCheckbox.defaultProps = {\n\tlabel: null,\n\tonChange: undefined,\n\tposition: undefined,\n\tgap: undefined,\n};\n\nexport default FkCheckbox;\n","import React, { useMemo, useCallback, useEffect, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Formik, Form, Field, FieldArray } from 'formik';\nimport * as yup from 'yup';\nimport i18n from 'i18n-js';\nimport { v4 as uuid } from 'uuid';\nimport moment from 'moment';\n\nimport Input from './FKinput/FKinput';\nimport Select from './FKselect/FKselect';\nimport TextArea from './FKtextarea/FKtextarea';\nimport FKcheckbox from './FKcheckbox/FKcheckbox';\nimport ArrowLeft from './images/arrowLeft.svg';\nimport ArrowRight from './images/arrowRight.svg';\nimport Add from './images/add.svg';\n\nimport { setCandidateFormPage } from '../../store/actions/registrationForm';\nimport { patchCandidate } from '../../store/actions/userData';\n\n/**\n * @desc UI for candidate registration form - step 2 education\n * @returns {JSX.Element|null}\n */\nconst EducationForm = () => {\n\tconst dispatch = useDispatch();\n\tconst formRef = useRef();\n\tconst user = useSelector(({ user }) => user);\n\tconst MIN_YEAR = moment().year() - 90;\n\tconst MAX_YEAR = moment().year();\n\tconst educationsFromRedux = user?.educations?.map((education) => {\n\t\treturn {\n\t\t\t...education,\n\t\t\tid: uuid(),\n\t\t\tdegree: education.degree ? { value: education.degree, label: i18n.t(education.degree) } : '',\n\t\t};\n\t});\n\tconst jobsFromRedux = user?.jobs?.map((job) => {\n\t\treturn {\n\t\t\t...job,\n\t\t\tid: uuid(),\n\t\t\tspecialization: job.specialization ? { value: job.specialization, label: i18n.t(job.specialization) } : '',\n\t\t};\n\t});\n\n\t/**\n\t * @desc initial values object\n\t */\n\tconst initialValues = {\n\t\teducations:\n\t\t\teducationsFromRedux?.length > 0\n\t\t\t\t? educationsFromRedux\n\t\t\t\t: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: uuid(),\n\t\t\t\t\t\t\tdegree: '',\n\t\t\t\t\t\t\tspecialty: '',\n\t\t\t\t\t\t},\n\t\t\t\t ],\n\t\tjobs:\n\t\t\tjobsFromRedux?.length > 0\n\t\t\t\t? jobsFromRedux\n\t\t\t\t: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: uuid(),\n\t\t\t\t\t\t\tspecialization: '',\n\t\t\t\t\t\t\tposition: '',\n\t\t\t\t\t\t\tcompany: '',\n\t\t\t\t\t\t\tfrom: '',\n\t\t\t\t\t\t\tto: '',\n\t\t\t\t\t\t\tresponsibilities: '',\n\t\t\t\t\t\t\tpresent: false,\n\t\t\t\t\t\t},\n\t\t\t\t ],\n\t\thavePreviouslyWorked: user.havePreviouslyWorked || false,\n\t};\n\n\t/**\n\t * @desc validation schema for form values\n\t */\n\tconst validationSchema = useMemo(\n\t\t() =>\n\t\t\tyup.object(\n\t\t\t\t{\n\t\t\t\t\teducations: yup.array().of(\n\t\t\t\t\t\tyup.object().shape({\n\t\t\t\t\t\t\tdegree: yup.object().required(),\n\t\t\t\t\t\t\tspecialty: yup.string().required(),\n\t\t\t\t\t\t}),\n\t\t\t\t\t),\n\t\t\t\t\tjobs: yup.mixed().when('havePreviouslyWorked', {\n\t\t\t\t\t\tis: (havePreviouslyWorked) => !havePreviouslyWorked,\n\t\t\t\t\t\tthen: yup.array().of(\n\t\t\t\t\t\t\tyup.object().shape({\n\t\t\t\t\t\t\t\tspecialization: yup.object().required(),\n\t\t\t\t\t\t\t\tposition: yup.string().required(),\n\t\t\t\t\t\t\t\tcompany: yup.string().required(),\n\t\t\t\t\t\t\t\tfrom: yup\n\t\t\t\t\t\t\t\t\t.number()\n\t\t\t\t\t\t\t\t\t.min(MIN_YEAR)\n\t\t\t\t\t\t\t\t\t.max(MAX_YEAR)\n\t\t\t\t\t\t\t\t\t// eslint-disable-next-line func-names\n\t\t\t\t\t\t\t\t\t.test('', function (value) {\n\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line react/no-this-in-sfc\n\t\t\t\t\t\t\t\t\t\treturn this.parent.to ? this.parent.to >= value : true;\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t.required(),\n\t\t\t\t\t\t\t\tto: yup.number().min(MIN_YEAR).max(MAX_YEAR).required(),\n\t\t\t\t\t\t\t\tresponsibilities: yup.string().required(),\n\t\t\t\t\t\t\t\tpresent: yup.bool(),\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t),\n\t\t\t\t\t}),\n\t\t\t\t\thavePreviouslyWorked: yup.bool(),\n\t\t\t\t},\n\t\t\t\t['havePreviouslyWorked'],\n\t\t\t),\n\t\t[],\n\t);\n\n\t/**\n\t * @desc function for set form values to redux\n\t */\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tconst reduxData = createReduxData(formRef.current.values);\n\t\t\tdispatch(patchCandidate(reduxData));\n\t\t};\n\t}, []);\n\n\tconst educationOptions = [\n\t\t{ value: 'Grundschule', label: i18n.t('Grundschule') },\n\t\t{ value: 'Abitur', label: i18n.t('Abitur') },\n\t\t{ value: 'Promotion', label: i18n.t('Promotion') },\n\t\t{ value: 'Mittlerer Schulabschluss', label: i18n.t('Mittlerer Schulabschluss') },\n\t\t{ value: 'Universitätsabschluss', label: i18n.t('Universitätsabschluss') },\n\t\t{ value: 'Bachelor', label: i18n.t('Bachelor') },\n\t\t{ value: 'Master', label: i18n.t('Master') },\n\t];\n\n\tconst jobOptions = [\n\t\t{ value: 'Ausbildungsbereich', label: i18n.t('Ausbildungsbereich') },\n\t\t{ value: 'Kaufmännischer-Bereich', label: i18n.t('Kaufmännischer-Bereich') },\n\t\t{ value: 'Technischer-Bereich', label: i18n.t('Technischer-Bereich') },\n\t\t{ value: 'Medizinischer-Bereich', label: i18n.t('Medizinischer-Bereich') },\n\t\t{ value: 'Sozialer Bereich', label: i18n.t('Sozialer Bereich') },\n\t\t{ value: 'Handwerksbereich', label: i18n.t('Handwerksbereich') },\n\t\t{ value: 'Verwaltungsbereich', label: i18n.t('Verwaltungsbereich') },\n\t\t{ value: 'Gastronomiebereich', label: i18n.t('Gastronomiebereich') },\n\t\t{ value: 'Anderer Bereich', label: i18n.t('Anderer Bereich') },\n\t];\n\n\t/**\n\t * @desc function for create redux object data\n\t * @param {any} values - form values\n\t */\n\tconst createReduxData = (values) => {\n\t\treturn {\n\t\t\teducations: values.educations.map((item) => ({ degree: item.degree.value, specialty: item.specialty })),\n\t\t\tjobs: values.jobs.map((item) => ({\n\t\t\t\tspecialization: item.specialization.value ? item.specialization.value : '',\n\t\t\t\tposition: item.position,\n\t\t\t\tcompany: item.company,\n\t\t\t\tfrom: item.from,\n\t\t\t\tto: item.to,\n\t\t\t\tresponsibilities: item.responsibilities,\n\t\t\t\tpresent: item.present,\n\t\t\t})),\n\t\t\thavePreviouslyWorked: values.havePreviouslyWorked,\n\t\t};\n\t};\n\n\t/**\n\t * @desc function for go to previous step\n\t */\n\tconst handleBackPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t\tdispatch(setCandidateFormPage('personalData'));\n\t};\n\n\t/**\n\t * @desc function for submit form data\n\t */\n\tconst handleSubmit = useCallback(\n\t\t(values, { setSubmitting }) => {\n\t\t\tsetSubmitting(false);\n\t\t\tdispatch(setCandidateFormPage('languages'));\n\t\t},\n\t\t[dispatch],\n\t);\n\n\t/**\n\t * @desc function for scroll page\n\t */\n\tconst handleNextPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t};\n\n\treturn (\n\t\t\n\t\t\t{(formik) => {\n\t\t\t\tconst onChangeYear = ({ target: { value } }, name) => {\n\t\t\t\t\tconst pattern = /([\\D])/g;\n\t\t\t\t\tif (!value.match(pattern)) {\n\t\t\t\t\t\tformik.setFieldValue(name, value);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst onChangeHavePreviouslyWorked = (name) => {\n\t\t\t\t\tformik.setFieldValue(name, !formik.values.havePreviouslyWorked);\n\t\t\t\t\tformik.setFieldValue('jobs', [\n\t\t\t\t\t\t{ id: uuid(), specialization: '', position: '', company: '', from: '', to: '', responsibilities: '', present: false },\n\t\t\t\t\t]);\n\t\t\t\t\tdelete formik.touched.jobs;\n\t\t\t\t};\n\n\t\t\t\tconst onChangePresent = ({ target: { checked } }, name, targetField) => {\n\t\t\t\t\tformik.setFieldValue(name, checked);\n\t\t\t\t\tformik.setFieldValue(targetField, checked ? `${moment().year()}` : '');\n\t\t\t\t};\n\n\t\t\t\tconst onBlurDropdowns = (name) => {\n\t\t\t\t\tconst prepareName = name.split('.');\n\t\t\t\t\tconst data = {\n\t\t\t\t\t\teducations: [],\n\t\t\t\t\t\tjobs: [],\n\t\t\t\t\t\t...formik.touched,\n\t\t\t\t\t};\n\n\t\t\t\t\tdata[prepareName[0]][prepareName[1]] = { ...data[prepareName[0]][prepareName[1]], [prepareName[2]]: true };\n\t\t\t\t\tformik.setTouched(data);\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

{i18n.t('Education-Experience')}

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{(fieldArrayProps) => {\n\t\t\t\t\t\t\t\t\t\tconst { push, remove, form } = fieldArrayProps;\n\t\t\t\t\t\t\t\t\t\tconst { values } = form;\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t{values.educations.map((item, i) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{i > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{(fieldArrayProps) => {\n\t\t\t\t\t\t\t\t\t\tconst { push, remove, form } = fieldArrayProps;\n\t\t\t\t\t\t\t\t\t\tconst { values } = form;\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t{values.jobs.map((item, i) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t onChangeYear(e, `jobs.${i}.from`)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tgapSM\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\twidth={100}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={values.havePreviouslyWorked}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t onChangeYear(e, `jobs.${i}.to`)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tgapSM\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\twidth={100}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={values.jobs[i].present || values.havePreviouslyWorked}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t onChangePresent(e, `jobs.${i}.present`, `jobs.${i}.to`)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={values.havePreviouslyWorked}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tgap\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{i > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t remove(i)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t×\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\t\t{!values.havePreviouslyWorked && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t onChangeHavePreviouslyWorked('havePreviouslyWorked')}\n\t\t\t\t\t\t\t\t\t\t\t\t\tposition\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t}}\n\t\t
\n\t);\n};\n\nexport default EducationForm;\n","/* eslint-disable func-names */\n/* eslint-disable react/forbid-prop-types */\nimport React, { useMemo, useCallback, useEffect, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Formik, Form, Field, FieldArray } from 'formik';\nimport * as yup from 'yup';\nimport i18n from 'i18n-js';\nimport { v4 as uuid } from 'uuid';\n\nimport Select from './FKselect/FKselect';\nimport TextArea from './FKtextarea/FKtextarea';\nimport ArrowLeft from './images/arrowLeft.svg';\nimport ArrowRight from './images/arrowRight.svg';\nimport Add from './images/add.svg';\n\nimport { setCandidateFormPage } from '../../store/actions/registrationForm';\nimport { patchCandidate } from '../../store/actions/userData';\n\n/**\n * @desc UI for candidate registration form - step 3 languages\n * @returns {JSX.Element|null}\n */\nconst LanguagesForm = () => {\n\tconst dispatch = useDispatch();\n\tconst formRef = useRef();\n\tconst user = useSelector(({ user }) => user);\n\tconst languagesFromRedux = user?.languages?.map((item) => {\n\t\treturn {\n\t\t\tid: uuid(),\n\t\t\tlanguage: item.language ? { value: item.language, label: i18n.t(item.language) } : '',\n\t\t\tlevel: item.level ? { value: item.level, label: i18n.t(item.level) } : '',\n\t\t};\n\t});\n\tconst skillsFromRedux = user?.skills?.map((skill) => {\n\t\treturn {\n\t\t\t...skill,\n\t\t\tid: uuid(),\n\t\t\tname: skill.name ? { value: skill.name, label: i18n.t(skill.name) } : '',\n\t\t};\n\t});\n\n\t/**\n\t * @desc initial values object\n\t */\n\tconst initialValues = {\n\t\tlanguages:\n\t\t\tlanguagesFromRedux?.length > 0\n\t\t\t\t? languagesFromRedux\n\t\t\t\t: [\n\t\t\t\t\t\t{ id: uuid(), language: '', level: '' },\n\t\t\t\t\t\t{ id: uuid(), language: '', level: '' },\n\t\t\t\t ],\n\t\tskills: skillsFromRedux?.length > 0 ? skillsFromRedux : [{ id: uuid(), name: '', description: '' }],\n\t\texperienceAbroad: user.experienceAbroad || '',\n\t};\n\n\t/**\n\t * @desc validation schema for form values\n\t */\n\tconst validationSchema = useMemo(\n\t\t() =>\n\t\t\tyup.object({\n\t\t\t\tlanguages: yup.array().of(\n\t\t\t\t\tyup.object().shape({\n\t\t\t\t\t\tlanguage: yup.object().test('', function (value) {\n\t\t\t\t\t\t\t// eslint-disable-next-line react/no-this-in-sfc\n\t\t\t\t\t\t\tif (this.parent?.level) {\n\t\t\t\t\t\t\t\treturn Boolean(value);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tlevel: yup.object().test('', function (value) {\n\t\t\t\t\t\t\t// eslint-disable-next-line react/no-this-in-sfc\n\t\t\t\t\t\t\tif (this.parent?.language) {\n\t\t\t\t\t\t\t\treturn Boolean(value);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t\tskills: yup.array().of(\n\t\t\t\t\tyup.object().shape({\n\t\t\t\t\t\tname: yup.object(),\n\t\t\t\t\t\tdescription: yup.string(),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t\texperienceAbroad: yup.string(),\n\t\t\t}),\n\t\t[],\n\t);\n\n\t/**\n\t * @desc function for set form values to redux\n\t */\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tconst reduxData = createReduxData(formRef.current.values);\n\t\t\tdispatch(patchCandidate(reduxData));\n\t\t};\n\t}, []);\n\n\tconst levelOptions = [\n\t\t{ value: '', label: i18n.t('level') },\n\t\t{ value: 'A1', label: i18n.t('A1') },\n\t\t{ value: 'A2', label: i18n.t('A2') },\n\t\t{ value: 'B1', label: i18n.t('B1') },\n\t\t{ value: 'B2', label: i18n.t('B2') },\n\t\t{ value: 'C1', label: i18n.t('C1') },\n\t\t{ value: 'C2', label: i18n.t('C2') },\n\t];\n\n\t/**\n\t * @desc function for create redux object data\n\t * @param {any} values - form values\n\t */\n\tconst createReduxData = (values) => {\n\t\treturn {\n\t\t\tlanguages: values.languages.map((item) => ({\n\t\t\t\tlanguage: item.language.value ? item.language.value : '',\n\t\t\t\tlevel: item.level.value ? item.level.value : '',\n\t\t\t})),\n\t\t\tskills: values.skills.map((item) => ({\n\t\t\t\tname: item.name.value ? item.name.value : '',\n\t\t\t\tdescription: item.description,\n\t\t\t})),\n\t\t\texperienceAbroad: values.experienceAbroad,\n\t\t};\n\t};\n\n\t/**\n\t * @desc function for go to previous step\n\t */\n\tconst handleBackPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t\tdispatch(setCandidateFormPage('education'));\n\t};\n\n\t/**\n\t * @desc function for submit form data\n\t */\n\tconst handleSubmit = useCallback(\n\t\t(values, { setSubmitting }) => {\n\t\t\tsetSubmitting(false);\n\t\t\tdispatch(setCandidateFormPage('motivation'));\n\t\t},\n\t\t[dispatch],\n\t);\n\n\tconst handleNextPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t};\n\n\treturn (\n\t\t\n\t\t\t{(formik) => {\n\t\t\t\tconst languageOptions = [\n\t\t\t\t\t{ value: '', label: i18n.t('language') },\n\t\t\t\t\t{ value: 'Deutsch', label: i18n.t('Deutsch') },\n\t\t\t\t\t{ value: 'Englisch', label: i18n.t('Englisch') },\n\t\t\t\t\t{ value: 'Französisch', label: i18n.t('Französisch') },\n\t\t\t\t\t{ value: 'Russisch', label: i18n.t('Russisch') },\n\t\t\t\t\t{ value: 'Italienisch', label: i18n.t('Italienisch') },\n\t\t\t\t\t{ value: 'Spanisch', label: i18n.t('Spanisch') },\n\t\t\t\t\t{ value: 'Türksich', label: i18n.t('Türksich') },\n\t\t\t\t];\n\n\t\t\t\tconst skillOptions = [\n\t\t\t\t\t{ value: '', label: i18n.t('choose-your-field-of-activity') },\n\t\t\t\t\t{ value: 'Kommunikation', label: i18n.t('Kommunikation') },\n\t\t\t\t\t{ value: 'Teamfähigkeit', label: i18n.t('Teamfähigkeit') },\n\t\t\t\t\t{ value: 'Problemlösung', label: i18n.t('Problemlösung') },\n\t\t\t\t\t{ value: 'Kreativität', label: i18n.t('Kreativität') },\n\t\t\t\t\t{ value: 'Arbeitsethik', label: i18n.t('Arbeitsethik') },\n\t\t\t\t\t{ value: 'Zwischenmenschliche Beziehungen', label: i18n.t('Zwischenmenschliche Beziehungen') },\n\t\t\t\t\t{ value: 'Zeitmanagement', label: i18n.t('Zeitmanagement') },\n\t\t\t\t\t{ value: 'Führungsqualität', label: i18n.t('Führungsqualität') },\n\t\t\t\t\t{ value: 'Präzision und Detailtreue', label: i18n.t('Präzision und Detailtreue') },\n\t\t\t\t];\n\n\t\t\t\tconst onChangeLanguage = (e, name) => {\n\t\t\t\t\tif (!e.value) {\n\t\t\t\t\t\tformik.setFieldValue(name, '');\n\t\t\t\t\t} else {\n\t\t\t\t\t\tformik.setFieldValue(name, e);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

{i18n.t('Languages-and-experience-abroad')}

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{(fieldArrayProps) => {\n\t\t\t\t\t\t\t\t\t\tconst { push, remove, form } = fieldArrayProps;\n\t\t\t\t\t\t\t\t\t\tconst { values } = form;\n\t\t\t\t\t\t\t\t\t\tconst selectedLanguages = values.languages.map((item) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!item.language.value) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn '';\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\treturn item.language.value;\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\tconst currentLangOptions = languageOptions.filter((language) => !selectedLanguages.includes(language.value));\n\n\t\t\t\t\t\t\t\t\t\tif (currentLangOptions[0].value !== '') {\n\t\t\t\t\t\t\t\t\t\t\tcurrentLangOptions.unshift({ value: '', label: i18n.t('language') });\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t{values.languages.map((item, i) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst buttonClass = 'form__delete-button form__delete-button--select';\n\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t onChangeLanguage(e, `languages.${i}.language`)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t onChangeLanguage(e, `languages.${i}.level`)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{i > 1 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{(fieldArrayProps) => {\n\t\t\t\t\t\t\t\t\t\tconst { push, remove, form } = fieldArrayProps;\n\t\t\t\t\t\t\t\t\t\tconst { values } = form;\n\t\t\t\t\t\t\t\t\t\tconst selectedSkills = values.skills.map((skill) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!skill.name.value) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn '';\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\treturn skill.name.value;\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\tconst currentSkillsOptions = skillOptions.filter((skill) => !selectedSkills.includes(skill.value));\n\n\t\t\t\t\t\t\t\t\t\tif (currentSkillsOptions[0].value !== '') {\n\t\t\t\t\t\t\t\t\t\t\tcurrentSkillsOptions.unshift({ value: '', label: i18n.t('choose-your-field-of-activity') });\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t{values.skills.map((item, i) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst buttonClass = 'form__delete-button form__delete-button--select';\n\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t onChangeLanguage(e, `skills.${i}.name`)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{i > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t}}\n\t\t
\n\t);\n};\n\nexport default LanguagesForm;\n","/* eslint-disable react/forbid-prop-types */\nimport React, { useMemo, useCallback, useEffect, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Formik, Form, Field, FieldArray } from 'formik';\nimport * as yup from 'yup';\nimport i18n from 'i18n-js';\nimport { v4 as uuid } from 'uuid';\n\nimport Select from './FKselect/FKselect';\nimport TextArea from './FKtextarea/FKtextarea';\nimport ArrowLeft from './images/arrowLeft.svg';\nimport ArrowRight from './images/arrowRight.svg';\nimport Add from './images/add.svg';\n\nimport { setCandidateFormPage, setProfile } from '../../store/actions/registrationForm';\nimport { patchCandidate } from '../../store/actions/userData';\n\n/**\n * @desc UI for candidate registration form - step 4 motivation\n * @returns {JSX.Element|null}\n */\nconst MotivationForm = () => {\n\tconst dispatch = useDispatch();\n\tconst formRef = useRef();\n\tconst user = useSelector(({ user }) => user);\n\tconst desiredSpheresFromRedux = user?.desiredSpheres?.map((sphere) => {\n\t\treturn {\n\t\t\tid: uuid(),\n\t\t\tsphere: sphere ? { value: sphere, label: i18n.t(sphere) } : '',\n\t\t};\n\t});\n\n\t/**\n\t * @desc initial values object\n\t */\n\tconst initialValues = {\n\t\tmotivation: user.motivation || '',\n\t\tdesiredSpheres: desiredSpheresFromRedux?.length > 0 ? desiredSpheresFromRedux : [{ id: uuid(), sphere: '' }],\n\t\tavailableForCall: user?.availableForCall\n\t\t\t? { value: user.availableForCall, label: i18n.t(user.availableForCall) }\n\t\t\t: { value: 'yes', label: i18n.t('yes') },\n\t\tdesiredRegion: user?.desiredRegion\n\t\t\t? { value: user.desiredRegion, label: i18n.t(user.desiredRegion) }\n\t\t\t: { value: 'Berlin', label: i18n.t('Berlin') },\n\t\twhenReadyToWork: user?.whenReadyToWork\n\t\t\t? { value: user.whenReadyToWork, label: i18n.t(user.whenReadyToWork) }\n\t\t\t: { value: 'Sofort', label: i18n.t('Sofort') },\n\t};\n\n\t/**\n\t * @desc validation schema for form values\n\t */\n\tconst validationSchema = useMemo(\n\t\t() =>\n\t\t\tyup.object({\n\t\t\t\tmotivation: yup.string().required(),\n\t\t\t\tdesiredSpheres: yup.array().of(\n\t\t\t\t\tyup.object().shape({\n\t\t\t\t\t\tsphere: yup.object(),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t\tavailable: yup.object(),\n\t\t\t\tdesiredRegion: yup.object(),\n\t\t\t\twhenReadyToWork: yup.object(),\n\t\t\t}),\n\t\t[],\n\t);\n\n\t/**\n\t * @desc function for set form values to redux\n\t */\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tconst reduxData = createReduxData(formRef.current.values);\n\t\t\tdispatch(patchCandidate(reduxData));\n\t\t};\n\t}, []);\n\n\t/**\n\t * @desc function for create redux object data\n\t * @param {any} values - form values\n\t */\n\tconst createReduxData = (values) => {\n\t\tconst desiredSpheresArr = values.desiredSpheres.map((item) => (item.sphere.value ? item.sphere.value : ''));\n\t\tconst desiredSpheresIsEmpty = desiredSpheresArr.every((sphere) => {\n\t\t\tconst sphereValues = Object.values(sphere);\n\t\t\treturn sphereValues.every((value) => !value);\n\t\t});\n\n\t\treturn {\n\t\t\tmotivation: values.motivation,\n\t\t\tdesiredSpheres: desiredSpheresIsEmpty ? [] : desiredSpheresArr,\n\t\t\tavailableForCall: values.availableForCall.value,\n\t\t\tdesiredRegion: values.desiredRegion.value,\n\t\t\twhenReadyToWork: values.whenReadyToWork.value,\n\t\t};\n\t};\n\n\t/**\n\t * @desc function for go to previous step\n\t */\n\tconst handleBackPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t\tdispatch(setCandidateFormPage('languages'));\n\t};\n\t/**\n\t * @desc function for submit form data\n\t */\n\tconst handleSubmit = useCallback(\n\t\t(values, { setSubmitting }) => {\n\t\t\tconst reduxData = createReduxData(values);\n\t\t\tconst jobs = user.jobs.map((job) => ({ ...job, from: job.from ? `${job.from}-01-01` : '', to: job.to ? `${job.to}-01-01` : '' }));\n\t\t\tconst jobsIsEmpty = user.jobs.every((job) => {\n\t\t\t\tconst jobValues = Object.values(job);\n\t\t\t\treturn jobValues.every((value) => !value);\n\t\t\t});\n\t\t\tconst skillsIsEmpty = user.skills.every((skill) => {\n\t\t\t\tconst skillValues = Object.values(skill);\n\t\t\t\treturn skillValues.every((value) => !value);\n\t\t\t});\n\t\t\tconst languagesIsEmpty = user.languages.every((language) => {\n\t\t\t\tconst languageValues = Object.values(language);\n\t\t\t\treturn languageValues.every((value) => !value);\n\t\t\t});\n\n\t\t\tconst serverData = {\n\t\t\t\t...reduxData,\n\t\t\t\tcandidateId: localStorage.getItem('yugokraftCandidateId'),\n\t\t\t\tavailableForCall: values.availableForCall.value === 'yes',\n\t\t\t\teducations: user.educations,\n\t\t\t\tjobs: jobsIsEmpty ? [] : jobs,\n\t\t\t\tskills: skillsIsEmpty ? [] : user.skills,\n\t\t\t\tlanguages: languagesIsEmpty ? [] : user.languages,\n\t\t\t\texperienceAbroad: user.experienceAbroad,\n\t\t\t\thavePreviouslyWorked: user.havePreviouslyWorked,\n\t\t\t};\n\t\t\tdispatch(setProfile(serverData));\n\t\t\tsetSubmitting(false);\n\t\t\tdispatch(setCandidateFormPage('documents'));\n\t\t},\n\t\t[dispatch, user],\n\t);\n\n\tconst handleNextPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t};\n\n\tconst availableForCallOptions = [\n\t\t{ value: 'yes', label: i18n.t('yes') },\n\t\t{ value: 'no', label: i18n.t('no') },\n\t];\n\n\tconst desiredRegionOptions = [\n\t\t{ value: 'Berlin', label: i18n.t('Berlin') },\n\t\t{ value: 'München', label: i18n.t('München') },\n\t\t{ value: 'Stuttgart', label: i18n.t('Stuttgart') },\n\t\t{ value: 'Köln/Düsseldorf', label: i18n.t('Köln/Düsseldorf') },\n\t\t{ value: 'Hamburg', label: i18n.t('Hamburg') },\n\t\t{ value: 'Dresden', label: i18n.t('Dresden') },\n\t\t{ value: 'Frankfurt', label: i18n.t('Frankfurt') },\n\t\t{ value: 'Other city', label: i18n.t('Other city') },\n\t];\n\n\tconst whenReadyToWorkOptions = [\n\t\t{ value: 'Sofort', label: i18n.t('Sofort') },\n\t\t{ value: 'Innerhalb-von-6-Monaten', label: i18n.t('Innerhalb-von-6-Monaten') },\n\t\t{ value: 'Innerhalb-von-12-Monaten', label: i18n.t('Innerhalb-von-12-Monaten') },\n\t\t{ value: 'Innerhalb-von-24-Monaten', label: i18n.t('Innerhalb-von-24-Monaten') },\n\t];\n\n\treturn (\n\t\t\n\t\t\t{(formik) => {\n\t\t\t\tconst sphereOptions = [\n\t\t\t\t\t{ value: '', label: i18n.t('Bereich') },\n\t\t\t\t\t{ value: 'Pflege', label: i18n.t('Pflege') },\n\t\t\t\t\t{ value: 'Reinigung', label: i18n.t('Reinigung') },\n\t\t\t\t\t{ value: 'Bau', label: i18n.t('Bau') },\n\t\t\t\t\t{ value: 'Gastronomie', label: i18n.t('Gastronomie') },\n\t\t\t\t\t{ value: 'Administration/Büro', label: i18n.t('Administration/Büro') },\n\t\t\t\t\t{ value: 'Industrie', label: i18n.t('Industrie') },\n\t\t\t\t\t{ value: 'Bildung/Sozialer Bereich', label: i18n.t('Bildung/Sozialer Bereich') },\n\t\t\t\t\t{ value: 'In jedem möglichen Bereich', label: i18n.t('In jedem möglichen Bereich') },\n\t\t\t\t];\n\n\t\t\t\tconst onChangeSphere = (e, name) => {\n\t\t\t\t\tif (!e.value) {\n\t\t\t\t\t\tformik.setFieldValue(name, '');\n\t\t\t\t\t} else {\n\t\t\t\t\t\tformik.setFieldValue(name, e);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

{i18n.t('Motivation')}

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{(fieldArrayProps) => {\n\t\t\t\t\t\t\t\t\t\tconst { push, remove, form } = fieldArrayProps;\n\t\t\t\t\t\t\t\t\t\tconst { values } = form;\n\t\t\t\t\t\t\t\t\t\tconst selectedDesiredSpheres = values.desiredSpheres.map((item) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!item.sphere.value) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn '';\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\treturn item.sphere.value;\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\tconst currentSphereOptions = sphereOptions.filter((sphere) => !selectedDesiredSpheres.includes(sphere.value));\n\n\t\t\t\t\t\t\t\t\t\tif (currentSphereOptions[0].value !== '') {\n\t\t\t\t\t\t\t\t\t\t\tcurrentSphereOptions.unshift({ value: '', label: i18n.t('Bereich') });\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t{values.desiredSpheres.map((item, i) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t onChangeSphere(e, `desiredSpheres.${i}.sphere`)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{i > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t remove(i)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t×\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t}}\n\t\t
\n\t);\n};\n\nexport default MotivationForm;\n","import './Popup.scss';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * @desc function for creating simple Popup with text\n * @param {string} text - popup text\n * @param {function} hidePopup - function for close popup\n * @returns {JSX.Element}\n */\nconst Popup = ({ text, hidePopup }) => {\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{text}\n\t\t\t\t\t {\n\t\t\t\t\t\t\thidePopup();\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tOk\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nPopup.propTypes = {\n\ttext: PropTypes.string.isRequired,\n\thidePopup: PropTypes.func.isRequired,\n};\n\nexport default Popup;\n","import React from 'react';\nimport { MetroSpinner } from 'react-spinners-kit';\nimport styles from './Preloader.module.scss';\n\nconst Preloader = () => {\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default Preloader;\n","import React, { useState, useEffect } from 'react';\nimport { Link } from 'react-router-dom';\nimport { useDispatch, useSelector } from 'react-redux';\nimport './styles.scss';\n\nimport cn from 'classnames';\nimport i18n from 'i18n-js';\nimport { v4 as uuidv4 } from 'uuid';\nimport imageCompression from 'browser-image-compression';\n\nimport { getDocumentsCategories, setCandidateFormPage, setDocuments, setIsDocsLoading } from '../../../store/actions/registrationForm';\nimport { patchCandidate } from '../../../store/actions/userData';\nimport { setError } from '../../../store/actions/errorHandling';\nimport routes from '../../../constants/routes';\n\nimport ArrowLeft from '../images/arrowLeft.svg';\nimport tick from '../images/tick.svg';\nimport noteWarning from '../images/note-warning.svg';\n\nimport Popup from '../../Popup/Popup';\nimport Preloader from '../../Preloader/Preloader';\n\n/**\n * @desc UI for candidate registration form - step 5 uploading documents\n * @returns {JSX.Element|null}\n */\nconst DocumentsForm = () => {\n\tconst dispatch = useDispatch();\n\tconst user = useSelector(({ user }) => user);\n\tconst [uploadForm, setUploadForm] = useState([]);\n\tconst [applyTermsOfUse, setApplyTermsOfUse] = useState(false);\n\tconst [notChecckedTermsOfUse, setNotChecckedTermsOfUse] = useState(false);\n\tconst [popupMaxSize, setPopupMaxSize] = useState(false);\n\tconst [filesData, setFilesData] = useState([]);\n\tconst { documentsCategories, isDocsLoading } = useSelector(({ registrationForm }) => registrationForm);\n\tconst language = useSelector(({ language }) => language);\n\tconst { message } = useSelector(({ error }) => error);\n\tconst errorFromBack = message;\n\ti18n.locale = language;\n\n\t/**\n\t * @desc mount component and get documents categories from server\n\t */\n\tuseEffect(() => {\n\t\tdocument.getElementById('facebook').innerHTML = `\n !function(f,b,e,v,n,t,s)\n {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\n n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n n.queue=[];t=b.createElement(e);t.async=!0;\n t.src=v;s=b.getElementsByTagName(e)[0];\n s.parentNode.insertBefore(t,s)}(window,document,'script',\n 'https://connect.facebook.net/en_US/fbevents.js');\n fbq('init', '614352799500868');\n\t\tfbq('track', 'CompleteRegistration'); `;\n\n\t\tdispatch(getDocumentsCategories());\n\t}, [dispatch]);\n\n\t/**\n\t * @desc preparing uploadedCategories object and uploadedFiles array for uploading to back\n\t */\n\tuseEffect(() => {\n\t\tconst uploadedFiles = [];\n\n\t\tuploadForm\n\t\t\t.filter((category) => category.files.length > 0)\n\t\t\t.forEach((category) => {\n\t\t\t\tcategory.files.forEach((file) => {\n\t\t\t\t\tuploadedFiles.push(file.data);\n\t\t\t\t});\n\t\t\t});\n\t\tsetFilesData(uploadedFiles);\n\t}, [uploadForm]);\n\n\t/**\n\t * @desc preparing documents categories array\n\t */\n\tuseEffect(() => {\n\t\tif (!user?.files || user?.files.length === 0) {\n\t\t\tconst uploadDocumentsCategories = documentsCategories.map((category) => {\n\t\t\t\tlet categoryName = '';\n\n\t\t\t\tswitch (category.name) {\n\t\t\t\t\tcase 'CV':\n\t\t\t\t\t\tcategoryName = 'uploadForm.lebenslauf';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'CVTranslatedInGermanOrEnglish':\n\t\t\t\t\t\tcategoryName = 'uploadForm.lebenslauf in Deutsch';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'Diploma':\n\t\t\t\t\t\tcategoryName = 'uploadForm.diplom';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'DiplomaTranslatedInGermanOrEnglish':\n\t\t\t\t\t\tcategoryName = 'uploadForm.diplom in Deutsch';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'Certificates':\n\t\t\t\t\t\tcategoryName = 'uploadForm.arbeitszeugnisse';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'CertificatesTranslatedInGermanOrEnglish':\n\t\t\t\t\t\tcategoryName = 'uploadForm.arbeitszeugnisse in Deutsch';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'References':\n\t\t\t\t\t\tcategoryName = 'uploadForm.referenzen';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'ReferencesTranslatedInGermanOrEnglish':\n\t\t\t\t\t\tcategoryName = 'uploadForm.referenzen in Deutsch';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'BiometricPhoto':\n\t\t\t\t\t\tcategoryName = 'uploadForm.biometrisches Foto';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'ValidPassport':\n\t\t\t\t\t\tcategoryName = 'uploadForm.reisepass';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'Other':\n\t\t\t\t\t\tcategoryName = 'uploadForm.unterlagen';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn '';\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\t...category,\n\t\t\t\t\tfiles: [],\n\t\t\t\t\tisSelectBtnActive: false,\n\t\t\t\t\tname: categoryName,\n\t\t\t\t};\n\t\t\t});\n\n\t\t\tsetUploadForm(uploadDocumentsCategories);\n\t\t} else {\n\t\t\tsetUploadForm(user.files);\n\t\t}\n\t}, [documentsCategories]);\n\n\t/**\n\t * @desc function for set files list to redux\n\t */\n\tuseEffect(() => {\n\t\tconst reduxData = {\n\t\t\tfiles: uploadForm,\n\t\t};\n\n\t\tdispatch(patchCandidate(reduxData));\n\t}, [uploadForm]);\n\n\t/**\n\t * @desc function for compress upload img\n\t * @param {File} imageFile - object with img\n\t */\n\tconst compressionImg = async (imageFile) => {\n\t\tconst options = {\n\t\t\tmaxSizeMB: 1,\n\t\t\tmaxWidthOrHeight: 1920,\n\t\t\tuseWebWorker: true,\n\t\t};\n\n\t\ttry {\n\t\t\treturn await imageCompression(imageFile, options).then((data) => data);\n\t\t} catch (error) {\n\t\t\treturn error;\n\t\t}\n\t};\n\n\tlet maxSize = 0;\n\t/**\n\t * @desc function for add files by click on upload button\n\t * @param {object} filesList - object with files\n\t * @param {event} event\n\t * @param {string} id - id selected category\n\t */\n\tconst handleAddFile = (filesList, id, event) => {\n\t\tif (filesList.length > 0) {\n\t\t\tdispatch(setIsDocsLoading(true));\n\t\t}\n\n\t\tconst filesListArr = Object.values(filesList);\n\t\tconst compressing = new Promise((res) => {\n\t\t\tconst compressedFiles = [];\n\t\t\tfilesListArr.forEach(async (file) => {\n\t\t\t\tif (file.type === 'image/jpeg') {\n\t\t\t\t\tawait compressionImg(file).then((data) => {\n\t\t\t\t\t\tcompressedFiles.push(data);\n\t\t\t\t\t\tres(compressedFiles);\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tcompressedFiles.push(file);\n\t\t\t\t\tres(compressedFiles);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\tcompressing.then(async (data) => {\n\t\t\tconst preparedFiles = data.map((file) => {\n\t\t\t\tconst result = {\n\t\t\t\t\tid: uuidv4(),\n\t\t\t\t\tisSelected: false,\n\t\t\t\t\tdata: file,\n\t\t\t\t};\n\n\t\t\t\treturn result;\n\t\t\t});\n\n\t\t\tconst result = uploadForm.map((category) => {\n\t\t\t\tif (category.id === id) {\n\t\t\t\t\tmaxSize =\n\t\t\t\t\t\tuploadForm\n\t\t\t\t\t\t\t.map((category) => {\n\t\t\t\t\t\t\t\treturn category.files.reduce((sum, current) => sum + current.data.size, 0);\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.reduce((sum, size) => {\n\t\t\t\t\t\t\t\treturn sum + size;\n\t\t\t\t\t\t\t}, 0) + preparedFiles.reduce((sum, current) => sum + current.data.size, 0);\n\t\t\t\t\tif (maxSize / 1024 / 1024 < 50) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...category,\n\t\t\t\t\t\t\tfiles: [...category.files, ...preparedFiles],\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tsetPopupMaxSize(true);\n\t\t\t\t}\n\t\t\t\treturn category;\n\t\t\t});\n\n\t\t\tsetUploadForm(result);\n\t\t\tmaxSize = result\n\t\t\t\t.map((category) => {\n\t\t\t\t\treturn category.files.reduce((sum, current) => sum + current.data.size, 0);\n\t\t\t\t})\n\t\t\t\t.reduce((sum, size) => {\n\t\t\t\t\treturn sum + size;\n\t\t\t\t}, 0);\n\t\t\tdispatch(setIsDocsLoading(false));\n\t\t});\n\t\tevent.target.value = '';\n\t};\n\n\t/**\n\t * @desc function for select files by click on select button\n\t * @param {string} id - id selected category\n\t */\n\tconst handleSelectFiles = (id) => {\n\t\tconst result = uploadForm.map((category) => {\n\t\t\tif (category.id === id && category.files.length > 0) {\n\t\t\t\treturn {\n\t\t\t\t\t...category,\n\t\t\t\t\tisSelectBtnActive: !category.isSelectBtnActive,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn category;\n\t\t});\n\n\t\tsetUploadForm(result);\n\t};\n\n\t/**\n\t * @desc function for mark files by click on checkbox\n\t * @param {string} categoryId - id selected category\n\t * @param {string} fileId - id selected file\n\t * @param {bool} isSelectBtnActive - is select btn active\n\t */\n\tconst handleMarkFile = (categoryId, fileId, isSelectBtnActive) => {\n\t\tif (!isSelectBtnActive) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst result = uploadForm.map((category) => {\n\t\t\tif (category.id === categoryId) {\n\t\t\t\treturn {\n\t\t\t\t\t...category,\n\t\t\t\t\tfiles: category.files.map((file) => {\n\t\t\t\t\t\tif (file.id === fileId) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...file,\n\t\t\t\t\t\t\t\tisSelected: !file.isSelected,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn file;\n\t\t\t\t\t}),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn category;\n\t\t});\n\n\t\tsetUploadForm(result);\n\t};\n\n\t/**\n\t * @desc function for delete files by click on delete btn\n\t * @param {string} id - id selected category\n\t */\n\tconst handleDeleteFiles = (id) => {\n\t\tconst result = uploadForm.map((category) => {\n\t\t\tif (category.id === id && category.files.length > 0) {\n\t\t\t\tconst deleteFilesAmount = category.files.filter((file) => file.isSelected).length;\n\n\t\t\t\tif (deleteFilesAmount === 0) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...category,\n\t\t\t\t\t\tfiles: [],\n\t\t\t\t\t\tisSelectBtnActive: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\t...category,\n\t\t\t\t\tfiles: category.files.filter((file) => !file.isSelected),\n\t\t\t\t\tisSelectBtnActive: false,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn category;\n\t\t});\n\n\t\tsetUploadForm(result);\n\t};\n\n\t/**\n\t * @desc function for back to prev page\n\t */\n\tconst handleBackPage = () => {\n\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t\tdispatch(setCandidateFormPage('motivation'));\n\t};\n\n\t/**\n\t * @desc function for submit documents\n\t */\n\tconst handleSubmitDocuments = () => {\n\t\tif (!applyTermsOfUse) {\n\t\t\tsetNotChecckedTermsOfUse(true);\n\t\t} else if (filesData.length > 0) {\n\t\t\tconst formData = new FormData();\n\t\t\tconst categoriesData = {};\n\t\t\tuploadForm\n\t\t\t\t.filter((category) => category.files.length > 0)\n\t\t\t\t.forEach((category, i) => {\n\t\t\t\t\tif (category.files.length === 0) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tcategory.files.forEach((file, index) => {\n\t\t\t\t\t\tif (file.data.name in categoriesData) {\n\t\t\t\t\t\t\tformData.append('docs', file.data, `${i}${index + 1}-${file.data.name}`);\n\t\t\t\t\t\t\tcategoriesData[`${i}${index + 1}-${file.data.name}`] = category.id;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tformData.append('docs', file.data, file.data.name);\n\t\t\t\t\t\t\tcategoriesData[file.data.name] = category.id;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\tformData.append('categories', JSON.stringify(categoriesData));\n\n\t\t\tdispatch(setDocuments(formData, localStorage.getItem('yugokraftCandidateId')));\n\t\t} else {\n\t\t\tdispatch(setCandidateFormPage('congrats'));\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t
\n\t\t\t\tnote\n\t\t\t\t
\n\t\t\t\t\t

{i18n.t('uploadForm.note')}

\n\t\t\t\t\t

{i18n.t('uploadForm.high-quality photos')}

\n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\t

{i18n.t('Nessesary-documents')}

\n\n\t\t\t\t
    \n\t\t\t\t\t
  • {i18n.t('uploadForm.document name')}
  • \n\t\t\t\t\t
  • {i18n.t('uploadForm.preview')}
  • \n\t\t\t\t\t
  • {i18n.t('uploadForm.operations')}
  • \n\t\t\t\t
\n\t\t\t\t
    \n\t\t\t\t\t{uploadForm.map((category, index) => (\n\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{i18n.t(category.name)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t handleSelectFiles(category.id)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t handleDeleteFiles(category.id)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t{category.files.map((file) => (\n\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t handleSelectFiles(category.id)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t handleDeleteFiles(category.id)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
  • \n\t\t\t\t\t))}\n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\t

{i18n.t('check confirmed terms of use')}

\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('next-step')}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t\t{popupMaxSize && setPopupMaxSize(false)} />}\n\t\t\t{errorFromBack && dispatch(setError(null))} />}\n\t\t\t{isDocsLoading && }\n\t\t\n\t);\n};\n\nexport default DocumentsForm;\n","import React from 'react';\nimport './styles.scss';\nimport i18n from 'i18n-js';\nimport { Link } from 'react-router-dom';\nimport { useDispatch, useSelector } from 'react-redux';\nimport congrats from '../images/congrats.svg';\nimport routes from '../../../constants/routes';\n\nimport { setCandidateFormPage } from '../../../store/actions/registrationForm';\nimport { clearCandidate, setCurrentCandidateData } from '../../../store/actions/userData';\n\n/**\n * @desc UI for screen after registration success\n * @returns {JSX.Element}\n */\nconst Congrats = () => {\n\tconst dispatch = useDispatch();\n\tconst language = useSelector(({ language }) => language);\n\ti18n.locale = language;\n\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\n\t/**\n\t * @desc function for reset candidate registration form in redux\n\t */\n\tconst handleResetForm = () => {\n\t\tdispatch(clearCandidate({}));\n\t\tdispatch(setCurrentCandidateData({}));\n\t\tdispatch(setCandidateFormPage('personalData'));\n\t};\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t

{i18n.t('You-have-applied-for-job')}

\n\t\t\t\t
\n\t\t\t\t\t{i18n.t('Congratulations')}\n\t\t\t\t\t

{i18n.t('Congratulations')}

\n\t\t\t\t\t

{i18n.t('We-will-consider')}

\n\t\t\t\t
\n\t\t\t
\n\t\t\t\n\t\t\t\t{i18n.t('Home')}\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default Congrats;\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport './styles.scss';\nimport i18n from 'i18n-js';\nimport WarningMessage from './WarningMessage/WarningMessage';\nimport PersonalDataForm from './PersonalDataForm';\nimport EducationForm from './EducationForm';\nimport LanguagesForm from './LanguagesForm';\nimport MotivationForm from './MotivationForm';\nimport DocumentsForm from './UploadDocuments/DocumentsForm';\nimport Congrats from './Congrats/Congrats';\n\n/**\n * @desc container for registration candidate form\n * @returns {JSX.Element|null}\n */\nconst CandidateFormPage = () => {\n\tconst language = useSelector(({ language }) => language);\n\ti18n.locale = language;\n\tconst { formPage } = useSelector(({ registrationForm }) => registrationForm);\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t{formPage === 'personalData' && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t{formPage === 'education' && }\n\t\t\t\t{formPage === 'languages' && }\n\t\t\t\t{formPage === 'motivation' && }\n\t\t\t\t{formPage === 'documents' && }\n\t\t\t\t{formPage === 'congrats' && }\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default CandidateFormPage;\n","/* eslint-disable no-unused-vars */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport './Menu.scss';\nimport { Link, NavLink, useHistory } from 'react-router-dom';\nimport i18n from 'i18n-js';\nimport { connect, useDispatch, useSelector } from 'react-redux';\nimport { Dropdown } from 'primereact/dropdown';\nimport routes from '../../constants/routes';\nimport logoLight from '../../assets/images/logo_light.svg';\nimport logoDark from '../../assets/images/logo_dark.svg';\nimport spanishFlag from '../../assets/images/spanish.png';\nimport fbLight from '../../assets/images/fb_icon.svg';\nimport turkishFlag from '../../assets/images/turkishFlag.png'\nimport romanianFlag from '../../assets/images/romanian.png'\nimport bulgarianFlag from '../../assets/images/bulgarian.png'\nimport fbDark from '../../assets/images/fb_dark_icon.svg';\nimport deFlag from '../../assets/images/germany.svg';\nimport shFlag from '../../assets/images/serbia.png';\nimport uaFlag from '../../assets/images/ukraine.svg';\nimport ruFlag from '../../assets/images/russia.svg';\nimport enFlag from '../../assets/images/usa.svg';\nimport menu from './images/menu.svg';\nimport menuDark from './images/menuDark.svg';\nimport * as funcsFromStore from '../../store/store';\nimport menuOpened from './images/menuOpened.svg';\nimport 'primereact/resources/themes/nova-light/theme.css';\nimport 'primereact/resources/primereact.min.css';\nimport 'primeicons/primeicons.css';\nimport arrowDown from './images/arrowDown.svg';\nimport { getLanguage } from '../../store/actions/language';\n\n/**\n * @desc function for creating UI of Main Menu in Header\n * @param {function} applyLanguage - function for set language\n * @param {string} userType - current user type\n * @param {function} applyUserType - function for set user type\n * @param {string} language - current language\n * @param {object} location - current location\n * @returns {JSX.Element}\n */\nconst MainMenu = ({ applyLanguage, userType, applyUserType, language, location }) => {\n\tconst [dark, setDark] = useState(true);\n\tconst [, setLangMenuVisible] = useState(false);\n\tconst [displayMenuSmallScreen, setDisplayMenuSmallScreen] = useState(false);\n\tconst history = useHistory();\n\tconst dispatch = useDispatch();\n\tconst isLanguageLoading = useSelector(({ isLanguageLoading }) => isLanguageLoading);\n\tconst flagsTemplate = (option) => {\n\t\tif (!option.value) return option.label;\n\n\t\treturn (\n\t\t\t
\n\t\t\t\t{option.label}\n\t\t\t\t{option.label}\n\t\t\t
\n\t\t);\n\t};\n\n\tconst languages = [\n\t\t{ label: i18n.t('languages.dutch'), value: 'de', flag: deFlag },\n\t\t{ label: i18n.t('languages.B/K/M/S'), value: 'sh', flag: shFlag },\n\t\t{ label: i18n.t('languages.ukrainian'), value: 'ua', flag: uaFlag },\n\t\t{ label: i18n.t('languages.russian'), value: 'ru', flag: ruFlag },\n\t\t{ label: i18n.t('languages.english'), value: 'en', flag: enFlag },\n\t\t{ label: i18n.t('languages.turkish'), value: 'tr', flag: turkishFlag },\n\t\t{ label: i18n.t('languages.spanish'), value: 'es', flag: spanishFlag },\n\t\t{ label: i18n.t('languages.romanian'), value: 'ro', flag: romanianFlag },\n\t\t{ label: i18n.t('languages.bulgarian'), value: 'bg', flag: bulgarianFlag },\n\t];\n\n\tdocument.addEventListener('click', (e) => {\n\t\tif (\n\t\t\t!e.target.className.includes('langValue') &&\n\t\t\t!e.target.className.includes('langItem') &&\n\t\t\t!e.target.className.includes('langVar') &&\n\t\t\t!e.target.className.includes('textLight') &&\n\t\t\t!e.target.className.includes('langSelect') &&\n\t\t\t!e.target.className.includes('down')\n\t\t) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tsetLangMenuVisible(false);\n\t\t\t}, 200);\n\t\t}\n\t});\n\n\tconst handleUserType = async () => {\n\t\tif (userType === 'candidate') {\n\t\t\tapplyUserType('employer');\n\t\t} else {\n\t\t\tawait dispatch(getLanguage());\n\t\t\tapplyUserType('candidate');\n\t\t}\n\t\thistory.push('/');\n\t};\n\n\tconst makeSmoothScroll = () => {\n\t\tsetTimeout(() => {\n\t\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t\t}, 100);\n\t};\n\n\tconst setHref = (lang) => languages.find((item) => item.value === lang).flag;\n\tconst setLangTitle = (lang) => languages.find((item) => item.value === lang).label;\n\tconst setClassNameButton = () =>\n\t\tdark ? `menuButton ${displayMenuSmallScreen ? 'grayBack' : ''}` : `menuDarkButton ${displayMenuSmallScreen ? 'grayBack' : ''}`;\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
{}} tabIndex={0} className='routeLinks' onClick={makeSmoothScroll}>\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{location.pathname !== routes.CALENDAR && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{i18n.t('Home')}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{i18n.t('About-Us')}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t{userType !== 'employer' && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{i18n.t('For-candidates')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{i18n.t('Apply-Now')}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{location.pathname !== routes.CALENDAR && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t{location.pathname !== routes.CALENDAR && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\tflag\n\t\t\t\t\t\t\t\t\t\t{setLangTitle(language)}\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t{userType === 'candidate' && select language}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tapplyLanguage(e.target.value, userType);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tplaceholder='B/K/M/S'\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetDisplayMenuSmallScreen(!displayMenuSmallScreen);\n\t\t\t\t\t\t\t\t\tsetDark(false);\n\n\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t!dark &&\n\t\t\t\t\t\t\t\t\t\t!window.location.href.includes('/about') &&\n\t\t\t\t\t\t\t\t\t\t!window.location.href.includes('/for_candidates') &&\n\t\t\t\t\t\t\t\t\t\t!window.location.href.includes('/apply')\n\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\tsetDark(true);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{/* eslint-disable-next-line no-nested-ternary */}\n\t\t\t\t\t\t\t\tmenu\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t
\n\t\t\t {\n\t\t\t\t\te.target.preventDefault();\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t
  • \n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('Home')}\n\t\t\t\t\t\n\t\t\t\t
  • \n\t\t\t\t
  • \n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('About-Us')}\n\t\t\t\t\t\n\t\t\t\t
  • \n\n\t\t\t\t{userType === 'candidate' && (\n\t\t\t\t\t
  • \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{i18n.t('For-candidates')}\n\t\t\t\t\t\t\n\t\t\t\t\t
  • \n\t\t\t\t)}\n\n\t\t\t\t
  • \n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('Apply-Now')}\n\t\t\t\t\t\n\t\t\t\t
  • \n\t\t\t\n\t\t
    \n\t);\n};\n\nconst storeFuncs = {\n\tapplyLanguage: funcsFromStore.applyLanguage,\n\tapplyUserType: funcsFromStore.applyUserType,\n};\n\nconst storeData = (state) => ({\n\tlanguage: state.language,\n\tuserType: state.userType,\n});\n\nMainMenu.propTypes = {\n\tlocation: PropTypes.shape({\n\t\tpathname: PropTypes.string.isRequired,\n\t}).isRequired,\n\tapplyLanguage: PropTypes.func.isRequired,\n\tuserType: PropTypes.string.isRequired,\n\tapplyUserType: PropTypes.func.isRequired,\n\tlanguage: PropTypes.string.isRequired,\n};\n\nexport default connect(storeData, storeFuncs)(MainMenu);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './styles.scss';\nimport i18n from 'i18n-js';\nimport { Link } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport { Dropdown } from 'primereact/dropdown';\nimport arrowDown from './images/arrowDown.svg';\nimport deuchFlag from './images/deuchFlag.svg';\nimport facebook from './images/facebook.svg';\nimport logo from './images/logo.svg';\nimport serbFlag from '../../assets/images/serbia.png';\nimport turkishFlag from '../../assets/images/turkishFlag.png'\nimport uaFlag from '../../assets/images/ukraine.svg';\nimport ruFlag from '../../assets/images/russia.svg';\nimport romanianFlag from '../../assets/images/romanian.png'\nimport bulgarianFlag from '../../assets/images/bulgarian.png'\nimport spanishFlag from '../../assets/images/spanish.png';\nimport enFlag from '../../assets/images/usa.svg';\nimport routes from '../../constants/routes';\nimport * as funcsFromStore from '../../store/store';\nimport 'primereact/resources/themes/nova-light/theme.css';\nimport 'primereact/resources/primereact.min.css';\nimport 'primeicons/primeicons.css';\n\n/**\n * @desc function for creating footer UI\n * @param {string} language - current language\n * @param {function} applyLanguage - function for set language\n * @param {string} userType - current user type\n * @returns {JSX.Element}\n */\nconst Footer = ({ language, applyLanguage, userType }) => {\n\tconst languages = [\n\t\t{ label: i18n.t('languages.dutch'), value: 'de', flag: deuchFlag },\n\t\t{ label: i18n.t('languages.B/K/M/S'), value: 'sh', flag: serbFlag },\n\t\t{ label: i18n.t('languages.ukrainian'), value: 'ua', flag: uaFlag },\n\t\t{ label: i18n.t('languages.russian'), value: 'ru', flag: ruFlag },\n\t\t{ label: i18n.t('languages.english'), value: 'en', flag: enFlag },\n\t\t{ label: i18n.t('languages.turkish'), value: 'tr', flag: turkishFlag },\n\t\t{ label: i18n.t('languages.spanish'), value: 'es', flag: spanishFlag },\n\t\t{ label: i18n.t('languages.romanian'), value: 'ro', flag: romanianFlag },\n\t\t{ label: i18n.t('languages.bulgarian'), value: 'bg', flag: bulgarianFlag },\n\t];\n\n\tconst flagsTemplate = (option) => {\n\t\tif (!option.value) return option.label;\n\n\t\treturn (\n\t\t\t
    \n\t\t\t\t{option.label}\n\t\t\t\t{option.label}\n\t\t\t
    \n\t\t);\n\t};\n\n\tconst makeSmoothScroll = () => {\n\t\tsetTimeout(() => {\n\t\t\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\t\t}, 100);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\tYugokraft\n\t\t\t\t\t
    \n\t\t\t\t\t

    {i18n.t('WIR-VERBINDEN-ARBEITSMÄRKTE-FÜR-SIE')}

    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t item.value === language).flag} className='footer__flag' alt='flag' />\n\t\t\t\t\t\t\t\t{languages.find((item) => item.value === language).label}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{userType === 'candidate' && select language}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tapplyLanguage(e.target.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tplaceholder='B/K/M/S'\n\t\t\t\t\t\t/>\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\tfacebook\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('Impressum')}\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('Datenschutz')}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t

    {i18n.t('Navigation')}

    \n\t\t\t\t\n\t\t\t\t\t{i18n.t('Home')}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{i18n.t('About-Us')}\n\t\t\t\t\n\n\t\t\t\t{userType === 'candidate' && (\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('For-candidates')}\n\t\t\t\t\t\n\t\t\t\t)}\n\n\t\t\t\t\n\t\t\t\t\t{i18n.t('Apply-Now')}\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n\nconst storeFuncs = {\n\tapplyLanguage: funcsFromStore.applyLanguage,\n};\n\nconst storeData = (state) => ({\n\tlanguage: state.language,\n\tuserType: state.userType,\n});\n\nFooter.propTypes = {\n\tlanguage: PropTypes.string.isRequired,\n\tuserType: PropTypes.string.isRequired,\n\tapplyLanguage: PropTypes.func.isRequired,\n};\n\nexport default connect(storeData, storeFuncs)(Footer);\n","import React from 'react';\nimport './style.scss';\nimport i18n from 'i18n-js';\n\n/**\n * @desc UI for Terms of Use screen\n * @returns {JSX.Element}\n */\nconst TermsOfUse = () => {\n\tif (i18n.locale !== 'de') {\n\t\treturn (\n\t\t\t
    \n\t\t\t\t

    Data protection

    \n\t\t\t\t

    Scope

    \n\t\t\t\t

    \n\t\t\t\t\tThis data protection statement explains to users the nature, scope and purposes of the collection and use of personal data by the\n\t\t\t\t\tresponsible provider YUGOKRAFT GmbH, Leipziger Platz 15, 10017 Berlin, Deutschland,{' '}\n\t\t\t\t\t\n\t\t\t\t\t\tdatenschutz@yugokraft.de\n\t\t\t\t\t\n\t\t\t\t\t, +49 30 25894066, on this website.\n\t\t\t\t

    \n\t\t\t\t

    Access data/server log files

    \n\t\t\t\t

    \n\t\t\t\t\tYUGOKRAFT GmbH (or its web space provider) collects data about every access to the website (so-called server log files). The\n\t\t\t\t\taccess data includes:\n\t\t\t\t\t
    \n\t\t\t\t\tName of the website accessed, file, date and time of access, amount of data transferred, notification of successful access,\n\t\t\t\t\tbrowser type and version, the user’s operating system, referrer URL (the page visited prior), IP address and the requesting\n\t\t\t\t\tprovider.
    \n\t\t\t\t\tYUGOKRAFT GmbH uses the log data only for statistical evaluations for the purpose of operating, security and optimisation of the\n\t\t\t\t\twebsite. However, YUGOKRAFT GmbH reserves the right to subsequently check the log data if there is a justified suspicion of\n\t\t\t\t\tillegal use based on concrete evidence. By visiting the website, information about the access (date, time, page accessed) may be\n\t\t\t\t\tstored on the server. This does not constitute an evaluation of personal data (e.g. name, address or email address).\n\t\t\t\t

    \n\t\t\t\t

    Handling of personal data

    \n\t\t\t\t

    \n\t\t\t\t\tPersonal data is information with the help of which a person can be identified, i.e. information that can be traced back to a\n\t\t\t\t\tperson. This includes the name, email address or telephone number, but data about preferences, hobbies, memberships or which\n\t\t\t\t\twebsites were viewed by somebody are also considered personal data.
    \n\t\t\t\t\tPersonal data is only collected, used and passed on by YUGOKRAFT GmbH if this is permitted by the law or if the user agrees to the\n\t\t\t\t\tcollection of data.
    \n\t\t\t\t\tIf personal data is collected, this is only done, if possible, with the prior consent of the user of the website. The data will\n\t\t\t\t\tnot be passed on to third parties without the express consent of the user. We expressly point out that the transmission of data on\n\t\t\t\t\tthe Internet (e.g. by email) may have security gaps. A comprehensive protection of data against access by third parties is not\n\t\t\t\t\tpossible. We cannot accept any liability for any damages caused by such security gaps. The use of all published contact data by\n\t\t\t\t\tthird parties for advertising purposes is expressly prohibited.
    \n\t\t\t\t\tYUGOKRAFT GmbH reserves the right to carry out a credit check on individuals applying for a flat using the application form. In\n\t\t\t\t\tcase of a rejection, application documents are not saved and stored, but are disposed of professionally!\n\t\t\t\t

    \n\t\t\t\t

    Recipients of personal data

    \n\t\t\t\t

    \n\t\t\t\t\tYUGOKRAFT GmbH only transfers data to external processors if it has concluded an agreement with them that meets the legal\n\t\t\t\t\trequirements for processor contracts. YUGOKRAFT GmbH only transfers personal data to processors outside the European Union if an\n\t\t\t\t\tadequate level of data protection is guaranteed.\n\t\t\t\t

    \n\t\t\t\t

    Contact

    \n\t\t\t\t

    \n\t\t\t\t\tWhen contacting YUGOKRAFT GmbH (e.g. via contact form, telephone or email), the user’s details will be stored for the purpose of\n\t\t\t\t\tprocessing the enquiry and in the event that follow-up questions arise.
    \n\t\t\t\t\tYUGOKRAFT GmbH records users’ master data as entered in the enquiry and contact form (salutation, name, email) as well as\n\t\t\t\t\tadditional information that is part of a contact enquiry and is designated as voluntary information. By submitting his or her\n\t\t\t\t\tconsent, the user agrees that YUGOKRAFT GmbH may store and use (mainly for the purpose of sending concrete information on projects\n\t\t\t\t\tof YUGOKRAFT GmbH) this master data and additional information for contact, information and marketing purposes (contacts that\n\t\t\t\t\tserve to process your project request; regular newsletter dispatch is excluded).\n\t\t\t\t

    \n\t\t\t\t

    Distribution

    \n\t\t\t\t

    \n\t\t\t\t\tYUGOKRAFT GmbH has a sales network comprising direct sales and sales partners. User data will therefore be forwarded to sales\n\t\t\t\t\tpartners and agents commissioned by YUGOKRAFT GmbH for processing, but only for the individual processing of the enquiry, not for\n\t\t\t\t\ttheir advertising and marketing purposes.\n\t\t\t\t

    \n\t\t\t\t

    Newsletter

    \n\t\t\t\t

    \n\t\t\t\t\tYUGOKRAFT GmbH uses the newsletter to inform users about offers.
    \n\t\t\t\t\tIf the user would like to receive the YUGOKRAFT newsletter, YUGOKRAFT GmbH requires a valid email address from the user as well as\n\t\t\t\t\tinformation that allows YUGOKRAFT GmbH to verify that the user is the owner of the email address/post address provided or that the\n\t\t\t\t\towner of the email address/post address agrees to receive the newsletter.
    \n\t\t\t\t\tFurther data will not be collected. This data is only used for sending the newsletter and will not be passed on to third parties.\n\t\t\t\t\t
    \n\t\t\t\t\tWhen registering for the newsletter, YUGOKRAFT GmbH saves the user’s IP address and the date of registration. This storage is only\n\t\t\t\t\tused as proof in the event that a third party misuses an email address and registers to receive the newsletter without the\n\t\t\t\t\tknowledge of the entitled person.
    \n\t\t\t\t\tYUGOKRAFT GmbH is therefore entitled to send information to the participating user by post or email after registration for the\n\t\t\t\t\tnewsletter (provided this data was provided when the user contacted YUGOKRAFT GmbH). This information can be oriented towards the\n\t\t\t\t\tuser’s individual interests. The alignment to individual interests results from the data provided by the user.\n\t\t\t\t

    \n\t\t\t\t

    Unsubscribe from newsletter

    \n\t\t\t\t

    \n\t\t\t\t\tConsent to the storage of the data, the email address and its use for sending the newsletter can be revoked by the user at any\n\t\t\t\t\ttime free of charge. The revocation can be done via an unsubscribe link in the newsletter of YUGOKRAFT GmbH itself or by sending a\n\t\t\t\t\tmessage to the email address:
    \n\t\t\t\t\t\n\t\t\t\t\t\tdatenschutz@yugokraft.de\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\tUpon revocation, all master data and voluntary information will be blocked by the system operator and deleted after the statutory\n\t\t\t\t\tretention period has expired.\n\t\t\t\t

    \n\t\t\t\t

    Integration of third-party services and content

    \n\t\t\t\t

    \n\t\t\t\t\tIt is possible that third-party content, such as videos from YouTube, map material from Google Maps, RSS feeds or graphics from\n\t\t\t\t\tother websites may be integrated within this online offer. This always presupposes that the providers of this content (hereinafter\n\t\t\t\t\treferred to as “third-party providers”) are aware of the IP address of the users. Without the IP address, they would not be able\n\t\t\t\t\tto send the content to the browser of the respective user. The IP address is therefore necessary for the display of this content.\n\t\t\t\t\tYUGOKRAFT GmbH endeavours to use only content whose respective providers use the IP address solely for the purpose of provision of\n\t\t\t\t\tthe content. However, YUGOKRAFT GmbH has no influence on whether or not the third-party providers store the IP address, e.g. for\n\t\t\t\t\tstatistical purposes. As far as YUGOKRAFT GmbH is aware of this, the users will be informed.\n\t\t\t\t

    \n\t\t\t\t

    Cookies

    \n\t\t\t\t

    \n\t\t\t\t\tCookies are small files that enable specific information relating to the device to be stored on the user’s access device (PC,\n\t\t\t\t\tsmartphone or similar). On the one hand, they serve the user-friendliness of websites and thus the users (e.g. storage of login\n\t\t\t\t\tdata). On the other hand, they are used to record statistical data on website usage and thereby enable analysis for the purpose of\n\t\t\t\t\timproving the services offered. Users can influence the use of cookies.
    \n\t\t\t\t\tWhen you surf our website for the first time, we will ask you for your permission regarding which cookies we may use. Without your\n\t\t\t\t\tconsent, we only use those cookies that are absolutely necessary for the operation of the website. You may of course revoke any\n\t\t\t\t\tconsent to the cookies we have set at any time without providing reasons. Please note that blocking or deleting cookies may affect\n\t\t\t\t\tyour online experience and prevent you from fully using this website.\n\t\t\t\t

    \n\t\t\t\t

    Google Analytics

    \n\t\t\t\t

    \n\t\t\t\t\tThis website uses Google Analytics, a web analysis service of Google Inc. (“Google”). Google Analytics uses so-called “cookies”,\n\t\t\t\t\ttext files that are stored on the user’s computer, which enable an analysis of the use of the website by them. The information\n\t\t\t\t\tgenerated by the cookie about the use of the website by the user is usually transferred to a Google server in the USA and stored\n\t\t\t\t\tthere.
    \n\t\t\t\t\tThe IP address of the users is shortened by Google within member states of the European Union or in other states which are party\n\t\t\t\t\tto the Agreement on the European Economic Area; the personal data is thus made anonymous.
    \n\t\t\t\t\tThe IP address transmitted by the user’s browser within the framework of Google Analytics is not merged with other Google data.\n\t\t\t\t\tUsers can prevent the storage of cookies by adjusting their browser settings accordingly; YUGOKRAFT GmbH points out to users that\n\t\t\t\t\tin this case not all functions of the website may be fully available. Furthermore, users can prevent the collection of data\n\t\t\t\t\tgenerated by the cookie and related to their use of the website (including their IP address) being sent to Google and the\n\t\t\t\t\tprocessing of this data by Google by downloading and installing the browser plug-in available at the following link:\n\t\t\t\t\t\n\t\t\t\t\t\thttp://tools.google.com/dlpage/gaoptout?hl=de\n\t\t\t\t\t\n\t\t\t\t\t.
    \n\t\t\t\t\tFurther information on Google’s use of data for advertising purposes, setting and objection options can be found on Google’s\n\t\t\t\t\twebsites:{' '}\n\t\t\t\t\t\n\t\t\t\t\t\thttps://www.google.com/intl/de/policies/privacy/partners/\n\t\t\t\t\t{' '}\n\t\t\t\t\t(“Data use by Google when you use websites or apps of our partners”),\n\t\t\t\t\t\n\t\t\t\t\t\thttp://www.google.com/policies/technologies/ads\n\t\t\t\t\t{' '}\n\t\t\t\t\t(“Data use for advertising purposes”),\n\t\t\t\t\t\n\t\t\t\t\t\thttp://www.google.de/settings/ads\n\t\t\t\t\t\n\t\t\t\t\t(“Manage information that Google uses to show you advertisements”) and\n\t\t\t\t\t\n\t\t\t\t\t\thttp://www.google.com/ads/preferences/\n\t\t\t\t\t\n\t\t\t\t\t(“Determine which advertisements Google shows you”).\n\t\t\t\t

    \n\t\t\t\t

    Use of Facebook social media plug-ins

    \n\t\t\t\t

    \n\t\t\t\t\tThis website uses social media plug-ins (“plug-ins”) of the social media network facebook.com, which is operated by Facebook\n\t\t\t\t\tIreland Ltd, 4 Grand Canal Square, Grand Canal Harbour, Dublin 2, Ireland (“Facebook”). The plug-ins can be recognised by one of\n\t\t\t\t\tthe Facebook logos (white “f” on blue tile, the word “Like” or a “Thumbs up” sign) or are marked with the addition “Facebook\n\t\t\t\t\tsocial media plug-in”. The list and appearance of the Facebook social media plug-ins can be viewed here:\n\t\t\t\t\t\n\t\t\t\t\t\thttps://developers.facebook.com/docs/plugins/\n\t\t\t\t\t\n\t\t\t\t\t.
    \n\t\t\t\t\tWhen a user calls up a website of this offer that contains such a plug-in, his/her browser establishes a direct connection with\n\t\t\t\t\tthe Facebook servers. The content of the plug-in is transmitted by Facebook directly to your browser, which integrates it into the\n\t\t\t\t\twebsite. YUGOKRAFT GmbH therefore has no influence on the extent of the data that Facebook collects with the help of this plug-in\n\t\t\t\t\tand therefore informs the users according to its state of knowledge: by integrating the plug-in, Facebook receives the information\n\t\t\t\t\tthat a user has called up the corresponding page of the website. If the user is logged in to Facebook, Facebook can assign the\n\t\t\t\t\tvisit to his or her Facebook account. If users interact with the plug-ins, for example by pressing the Like button or posting a\n\t\t\t\t\tcomment, the corresponding information is transmitted directly from their browser to Facebook and stored there. If a user is not a\n\t\t\t\t\tmember of Facebook, it is still possible for Facebook to find out his or her IP address and store it.
    \n\t\t\t\t\tThe purpose and scope of the data collection and the further processing and use of the data by Facebook, as well as the relevant\n\t\t\t\t\trights and setting options to protect the privacy of users, can be found in the Facebook privacy policy:\n\t\t\t\t\t\n\t\t\t\t\t\thttps://www.facebook.com/about/privacy/\n\t\t\t\t\t\n\t\t\t\t\t.
    \n\t\t\t\t\tIf a user is a Facebook member and does not want Facebook to collect data about him or her via the website and associate it with\n\t\t\t\t\this or her membership data stored on Facebook, he or she must log out of Facebook before visiting the website. Further settings\n\t\t\t\t\tand objections to the use of data for advertising purposes are possible within the Facebook profile settings:\n\t\t\t\t\t\n\t\t\t\t\t\thttps://www.facebook.com/settings?tab=ads\n\t\t\t\t\t\n\t\t\t\t\t.\n\t\t\t\t

    \n\t\t\t\t

    Use of Instagram social plug-ins

    \n\t\t\t\t

    \n\t\t\t\t\tOur website uses social plug-ins provided by Instagram, which is operated by Instagram LLC., 1601 Willow Road, Menlo Park, CA\n\t\t\t\t\t94025, United States (“Instagram”). The plug-ins are marked with an Instagram logo, e.g. in the form of an “Instagram camera”. If\n\t\t\t\t\tyou visit any part of our website that contains such a plug-in, your browser will establish a direct connection with the Instagram\n\t\t\t\t\tservers. Instagram transmits the content of the plug-in directly to your browser and integrates it in the website. Through this\n\t\t\t\t\tintegration, Instagram receives notification that your browser has accessed the corresponding part of our website even if you do\n\t\t\t\t\tnot have any Instagram profile of your own or are not currently logged onto Instagram. Your browser sends this information\n\t\t\t\t\t(including your IP address) directly to an Instagram server in the United States, where it is stored.
    \n\t\t\t\t\tIf you are currently logged onto Instagram, it can directly link your visit to our website with your Instagram account. If you\n\t\t\t\t\tinteract with the plug-ins, e.g. by clicking on the “Instagram” button, this information will also be automatically sent to and\n\t\t\t\t\tstored on an Instagram server. In addition, the information will be published in your Instagram account and shown to your contacts\n\t\t\t\t\tthere.
    \n\t\t\t\t\tDetails of the purpose of collecting, processing and using the data and the scope of such activities by Instagram as well as your\n\t\t\t\t\trights in this regard and the settings available to you for protecting your privacy can be found in Instagram’s privacy at\n\t\t\t\t\t\n\t\t\t\t\t\thttps://help.instagram.com/155833707900388/\n\t\t\t\t\t{' '}\n\t\t\t\t\t
    \n\t\t\t\t\tIf you don’t want Instagram to directly link the data collected from our website with your Instagram account, you must log off\n\t\t\t\t\tfrom Instagram before visiting our website. You can also prevent your browser from loading Instagram plug-ins, e.g. by using the\n\t\t\t\t\t“NoScript” script blocker (\n\t\t\t\t\t\n\t\t\t\t\t\thttp://noscript.net\n\t\t\t\t\t\n\t\t\t\t\t).\n\t\t\t\t

    \n\t\t\t\t

    Use of Twitter plug-ins

    \n\t\t\t\t

    \n\t\t\t\t\tOur website integrates plug-ins provided by Twitter Inc. (“Twitter”). You can recognise the Twitter plugins (“tweet” button) by\n\t\t\t\t\tthe Twitter logo on our website. An overview of the tweet buttons can be found here ({' '}\n\t\t\t\t\t\n\t\t\t\t\t\thttps://about.twitter.com/resources/buttons\n\t\t\t\t\t\n\t\t\t\t\t).
    \n\t\t\t\t\tIf you access any part of our website containing one of these plug-ins, this will establish a direct link between your browser and\n\t\t\t\t\tthe Twitter server. In this way, Twitter will know that you have visited our website with your IP address. If you click on the\n\t\t\t\t\tTwitter “tweet” button while you are logged into your Twitter account, you can share the contents of our website on your Twitter\n\t\t\t\t\tprofile. This allows Twitter to link the visit to our website with your user account. Please note that as the operator of this\n\t\t\t\t\twebsite we have no knowledge of the content of the transmitted data or how it is used by Twitter. If you do not want Twitter to be\n\t\t\t\t\table to link your visit to our website, make sure you first log out from your Twitter account. Further information can be found in\n\t\t\t\t\tTwitter’s privacy policy at{' '}\n\t\t\t\t\t\n\t\t\t\t\t\thttps://twitter.com/privacy\n\t\t\t\t\t\n\t\t\t\t\t.\n\t\t\t\t

    \n\t\t\t\t

    Use of LinkedIn social plug-ins

    \n\t\t\t\t

    \n\t\t\t\t\tOur website uses functions provided by LinkedIn. These services are provided by LinkedIn Corporation, 2029 Stierlin Court,\n\t\t\t\t\tMountain View, CA 94043, United States.
    \n\t\t\t\t\tWhenever you visit any part of our website containing LinkedIn functions, a connection with LinkedIn servers is established.\n\t\t\t\t\tLinkedIn is informed that you have visited our website with your IP address. If you click on the LinkedIn “Recommend” button and\n\t\t\t\t\tare logged into your LinkedIn account, LinkedIn is able to link your visit to our website with you and your user account. Please\n\t\t\t\t\tnote that as the operator of this website we have no knowledge of the content of the transmitted data or how it is used by\n\t\t\t\t\tLinkedIn.
    \n\t\t\t\t\tThe LinkedIn plugin is used on the basis of Article 6 (1) (f) of the European General Data Protection Regulation. The website\n\t\t\t\t\toperator has a legitimate interest in the widest possible visibility in social media.
    \n\t\t\t\t\tFurther information can be found in LinkedIn’s privacy policy at\n\t\t\t\t\t\n\t\t\t\t\t\thttps://www.linkedin.com/legal/privacy-policy\n\t\t\t\t\t\n\t\t\t\t\t.\n\t\t\t\t

    \n\t\t\t\t

    Use of YouTube social plug-ins

    \n\t\t\t\t

    \n\t\t\t\t\tThis website may also include a plug-in provided by YouTube, a company owned by Google Inc., domiciled in San Bruno, California,\n\t\t\t\t\tUnited States. As soon as you visit a page on our website featuring a YouTube plug-in, a connection will be established with the\n\t\t\t\t\tYouTube servers. In this connection, the YouTube server will be told the specific part of our website you have visited. If you are\n\t\t\t\t\tsimultaneously logged into your YouTube account, YouTube will be able to directly link your Internet activities with your personal\n\t\t\t\t\tprofile. You can prevent this by first logging out of your account. Further information on how YouTube collects and uses your data\n\t\t\t\t\tcan be found in YouTube’s privacy policy at\n\t\t\t\t\t\n\t\t\t\t\t\twww.youtube.com\n\t\t\t\t\t\n\t\t\t\t\t.\n\t\t\t\t

    \n\t\t\t\t

    Revocation, changes, corrections and updates

    \n\t\t\t\t

    \n\t\t\t\t\tThe user has the right to request information free of charge about the personal data stored about him/her. In addition, the user\n\t\t\t\t\thas the right to correct incorrect data and to block and delete his/her personal data, provided that this does not conflict with\n\t\t\t\t\tany legal storage obligation. The user also has the right to limit processing, the right of revocation, objection and the right to\n\t\t\t\t\tdata transferability.
    \n\t\t\t\t\t
    \n\t\t\t\t\tYUGOKRAFT GmbH reserves the right to amend or supplement this data protection declaration if and to the extent that this is\n\t\t\t\t\tnecessary in the interest of simple and secure processing and in particular to prevent misuse.\n\t\t\t\t

    \n\t\t\t\t

    Data protection officer

    \n\t\t\t\t

    \n\t\t\t\t\tYUGOKRAFT GmbH has a data protection officer (“DPO”), who is responsible for ensuring compliance with data protection legislation.\n\t\t\t\t\tThe data protection officer at YUGOKRAFT GmbH or the data protection officer’s office are available to you at all times if you\n\t\t\t\t\thave any questions or concerns relating to the processing of your personal data or any other matters regarding data protection.\n\t\t\t\t\tYou can contact the data protection officer, Mr. Amil Hota, at YUGOKRAFT GmbH via{' '}\n\t\t\t\t\t\n\t\t\t\t\t\tdatenschutz@yugokraft.de\n\t\t\t\t\t\n\t\t\t\t\t.\n\t\t\t\t

    \n\t\t\t
    \n\t\t);\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    {i18n.t('Datenschutz')}

    \n\t\t\t

    {i18n.t('datenschultz-1')}

    \n\t\t\t
    \n\t\t\t

    {i18n.t('datenschultz-2')}

    \n\t\t\t

    {i18n.t('Verantwortlicher')}

    \n\t\t\t

    {i18n.t('Verantwortlicher-description-1')}

    \n\t\t\t
    \n\t\t\t

    {i18n.t('Verantwortlicher-description-2')}

    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t

    \n\t\t\t\t\t\t{i18n.t('Yugokraft GmbH')}\n\t\t\t\t\t\t

    {i18n.t('Leipziger Platz 15')}

    \n\t\t\t\t\t\t

    {i18n.t('10117 Berlin')}

    \n\t\t\t\t\t

    \n\t\t\t\t
    \n\n\t\t\t\t
    \n\t\t\t\t\t

    \n\t\t\t\t\t\t{i18n.t('Kontakt')}\n\t\t\t\t\t\t

    {i18n.t('Telefon: +49 (0) 30 25894066')}

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {i18n.t('E-Mail')}

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tdatenschutz@yugokraft.de\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {i18n.t('Web')}

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\thttps://yugokraft.de\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t

    {i18n.t('Welche personenbezogenen Daten')}

    \n\t\t\t
      \n\t\t\t\t
    • {i18n.t('Informationen über den Browsertyp')}
    • \n\t\t\t\t
    • {i18n.t('Das Betriebssystem des Abrufgerätes')}
    • \n\t\t\t\t
    • {i18n.t('Die IP-Adresse des Abrufgerätes')}
    • \n\t\t\t\t
    • {i18n.t('Datum und Uhrzeit des Zugriffs')}
    • \n\t\t\t\t
    • {i18n.t('Websites und Ressorucen')}
    • \n\t\t\t\t
    • {i18n.t('Websites')}
    • \n\t\t\t\t
    • {i18n.t('Meldung, ob der Abruf erfolgreich war')}
    • \n\t\t\t\t
    • {i18n.t('übertragene Datenmenge')}
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Diese Daten werden in den Logfile')}

    \n\t\t\t

    {i18n.t('Rechtsgrundlage für die')}

    \n\t\t\t

    {i18n.t('Rechtsgrundlage für die description')}

    \n\t\t\t

    {i18n.t('Zweck der Datenverarbeitung')}

    \n\t\t\t

    {i18n.t('Zweck der Datenverarbeitung description')}

    \n\t\t\t

    {i18n.t('Dauer der Speicherung')}

    \n\t\t\t

    {i18n.t('Dauer der Speicherung description')}

    \n\t\t\t

    {i18n.t('Widerspruchs- und Löschungsmöglichkeit')}

    \n\t\t\t

    {i18n.t('Widerspruchs- und Löschungsmöglichkeit description')}

    \n\t\t\t

    {i18n.t('Besondere Funktionen der Internetseite')}

    \n\t\t\t

    {i18n.t('Besondere Funktionen der Internetseite description')}

    \n\t\t\t

    {i18n.t('Bewerbungsformular')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Welche personenbezogenen')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Die von Ihnen in die Formularfelder')}\n\t\t\t\t
    • \n\n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für description')}\n\t\t\t\t
    • \n\n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung 2 description')}\n\t\t\t\t
    • \n\n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Dauer der Speicherung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung description 2')}\n\t\t\t\t
    • \n\n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeit')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeit description 2')}\n\t\t\t\t
    • \n\n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten description')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Bewerbungsformular')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Welche personenbezogenen')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Welche personenbezogenen description 2')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die description 2')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung description 2')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Dauer der Speicherung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung description 3')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeiten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeiten description')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten d2')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Kommentar-Funktion')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten d3')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die description 2')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung d3')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Dauer der Speicherung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung d3')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeit')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeit d')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten d3')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Kontaktformular')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten d4')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die description 2')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung d4')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Dauer der Speicherung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung d4')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeit')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeit d4')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten d4')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Formular zur Newsletter-Anmeldung')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten d5')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die description 2')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung d5')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Dauer der Speicherung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung d5')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeit')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Widerrufs- und Löschungsmöglichkeit d5')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Erforderlichkeit der Angabe personenbezogener Daten d5')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Statistische Auswertung der')}

    \n\t\t\t

    {i18n.t('Statistische Auswertung der d')}

    \n\t\t\t

    {i18n.t('Google Tag Manager')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten d6')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die d6')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung d6')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Dauer der Speicherung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung d6')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeit')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeit d6')}\n\t\t\t\t\t\n\t\t\t\t\t\thttp://tools.google.com/dlpage/gaoptout?hl={i18n.locale}\n\t\t\t\t\t\n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeit d6-2')}\n\t\t\t\t\t\n\t\t\t\t\t\thttps://policies.google.com/privacy\n\t\t\t\t\t\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Twitter Advertising')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('Twitter Advertising d1')}\n\t\t\t\t\n\t\t\t\t\thttps://twitter.com/de/privacy\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{i18n.t('Twitter Advertising d2')}\n\t\t\t\t\n\t\t\t\t\thttps://twitter.com/de/privacy\n\t\t\t\t\n\t\t\t

    \n\t\t\t

    {i18n.t('Google Ads')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('Google Ads d1')}\n\t\t\t\t\n\t\t\t\t\thttps://policies.google.com/privacy\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{i18n.t('Google Ads d2')}\n\t\t\t\t\n\t\t\t\t\thttps://policies.google.com/privacy\n\t\t\t\t\n\t\t\t

    \n\t\t\t

    {i18n.t('Google-Analytics')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Umfang der Verarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Umfang der Verarbeitung d')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die d7')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung d7')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Dauer der Speicherung')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung d7')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeiten')}\n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeiten d7-1')}\n\t\t\t\t\t\n\t\t\t\t\t\t{`http://tools.google.com/dlpage/gaoptout?hl=${i18n.locale}`}\n\t\t\t\t\t\n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeiten d7-2')}\n\t\t\t\t\t\n\t\t\t\t\t\t{`https://policies.google.com/privacy?hl=${i18n.locale}`}\n\t\t\t\t\t\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Hotjar')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('Hotjar d-1')}\n\t\t\t\t\n\t\t\t\t\thttps://www.hotjar.com/privacy\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{i18n.t('Hotjar d-2')}\n\t\t\t

    \n\t\t\t

    {i18n.t('Facebook Connect')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('Facebook Connect d-1')}\n\t\t\t\t\n\t\t\t\t\thttps://www.facebook.com/about/privacy\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{i18n.t('Facebook Connect d-2')}\n\t\t\t\t\n\t\t\t\t\thttps://www.facebook.com/about/privacy\n\t\t\t\t\n\t\t\t

    \n\t\t\t

    {i18n.t('Facebook Custom Audience')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('Facebook Custom Audience d-1')}\n\t\t\t\t\n\t\t\t\t\thttps://www.facebook.com/about/privacy\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{i18n.t('Facebook Custom Audience d-2')}\n\t\t\t\t\n\t\t\t\t\thttps://www.facebook.com/about/privacy\n\t\t\t\t\n\t\t\t

    \n\t\t\t

    {i18n.t('Einbindung externer Webservices')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('Einbindung externer Webservices d1')}\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{i18n.t('Einbindung externer Webservices d2')}\n\t\t\t

    \n\t\t\t

    {i18n.t('Bootstrap CDN')}

    \n\t\t\t\n\t\t\t

    {i18n.t('Doubleclick')}

    \n\t\t\t\n\t\t\t

    {i18n.t('Google')}

    \n\t\t\t\n\t\t\t

    {i18n.t('Google APIS')}

    \n\t\t\t\n\t\t\t

    {i18n.t('Gstatic')}

    \n\t\t\t\n\t\t\t

    {i18n.t('MyFonts Counter')}

    \n\t\t\t\n\t\t\t

    {i18n.t('Youtube')}

    \n\t\t\t\n\t\t\t

    {i18n.t('website-checkde')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t{i18n.t('website-checkde d1')}\n\t\t\t\t\t\n\t\t\t\t\t\thttps://www.website-check.de/datenschutzerklaerung/\n\t\t\t\t\t\n\t\t\t\t\t
      \n\t\t\t\t\t
      \n\t\t\t\t\t{i18n.t('website-checkde d2')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('wwwpages03net')}

    \n\t\t\t\n\t\t\t

    {i18n.t('Social Plug')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Welche personenbezogenen Daten')}

      \n\t\t\t\t\t{i18n.t('Welche personenbezogenen Daten d8')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Rechtsgrundlage für die')}

      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die d8')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Zweck der Datenverarbeitung')}

      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung d8')}\n\t\t\t\t\t\n\t\t\t\t\t\thttps://twitter.com/de/privacy\n\t\t\t\t\t\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Dauer der Speicherung')}

      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die d8')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Widerspruchs- und Löschungsmöglichkeit')}

      \n\t\t\t\t\t{i18n.t('Widerspruchs- und Löschungsmöglichkeit d8')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Unterrichtung über die Nutzung von Cookies')}

    \n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Umfang der Verarbeitung')}

      \n\t\t\t\t\t{i18n.t('Umfang der Verarbeitung d9')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Rechtsgrundlage für die')}

      \n\t\t\t\t\t{i18n.t('Rechtsgrundlage für die d9')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Zweck der Datenverarbeitung')}

      \n\t\t\t\t\t{i18n.t('Zweck der Datenverarbeitung d9')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Dauer der Speicherung')}

      \n\t\t\t\t\t{i18n.t('Dauer der Speicherung d9')}\n\t\t\t\t
    • \n\t\t\t\t
    • \n\t\t\t\t\t

      {i18n.t('Widerspruchs- und Beseitigungsmöglichkeit')}

      \n\t\t\t\t\t{i18n.t('Widerspruchs- und Beseitigungsmöglichkeit d9')}\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Datensicherheit und Datenschutz')}

    \n\t\t\t

    {i18n.t('Datensicherheit und Datenschutz d')}

    \n\t\t\t

    {i18n.t('Auskunftsanspruch und Berichtigungswünsche')}

    \n\t\t\t

    {i18n.t('Auskunftsanspruch')}

    \n\t\t\t

    {i18n.t('Auskunftsanspruch d')}

    \n\t\t\t

    {i18n.t('Berichtigungsanspruch')}

    \n\t\t\t

    {i18n.t('Berichtigungsanspruch d')}

    \n\t\t\t

    {i18n.t('Recht auf Löschung')}

    \n\t\t\t

    {i18n.t('Recht auf Löschung d')}

    \n\t\t\t
      \n\t\t\t\t
    • {i18n.t('die Daten entweder nicht mehr benötigt werden')}
    • \n\t\t\t\t
    • {i18n.t('aufgrund des Widerrufs Ihrer Einwilligung')}
    • \n\t\t\t\t
    • {i18n.t('Sie Widerspruch gegen die Verarbeitung')}
    • \n\t\t\t\t
    • {i18n.t('Sie Widerspruch gegen die Verarbeitung')}
    • \n\t\t\t\t
    • {i18n.t('Ihre Daten unrechtmäßig verarbeitet werden')}
    • \n\t\t\t\t
    • {i18n.t('eine rechtliche Verpflichtung dies erfordert oder')}
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Das Recht besteht gem Art 17 Abs 3 DSGVO dann nicht wenn')}

    \n\t\t\t
      \n\t\t\t\t
    • {i18n.t('die Verarbeitung zur Ausübung')}
    • \n\t\t\t\t
    • {i18n.t('Ihre Daten auf Grundlage einer rechtlichen')}
    • \n\t\t\t\t
    • {i18n.t('die Verarbeitung aus Gründen des')}
    • \n\t\t\t\t
    • {i18n.t('die Daten zur Geltendmachung')}
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Recht auf Einschränkung der Verarbeitung')}

    \n\t\t\t

    {i18n.t('Recht auf Einschränkung der Verarbeitung d1')}

    \n\t\t\t

    \n\t\t\t

    {i18n.t('Recht auf Einschränkung der Verarbeitung d2')}

    \n\t\t\t
      \n\t\t\t\t
    • {i18n.t('die Richtigkeit der personenbezogenen')}
    • \n\t\t\t\t
    • {i18n.t('die Verarbeitung unrechtmäßig')}
    • \n\t\t\t\t
    • {i18n.t('ein Widerspruch gegen die Verarbeitung')}
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Recht auf Widerruf')}

    \n\t\t\t

    {i18n.t('Recht auf Widerruf d')}

    \n\t\t\t

    {i18n.t('Recht auf Widerspruch')}

    \n\t\t\t

    {i18n.t('Recht auf Widerspruch d')}

    \n\t\t\t

    {i18n.t('Wie nehme ich meine Rechte wahr')}

    \n\t\t\t

    {i18n.t('Wie nehme ich meine Rechte wahr d1')}

    \n\t\t\t
    \n\t\t\t
    \n\t\t\t

    {i18n.t('Wie nehme ich meine Rechte wahr d2')}

    \n\t\t\t
      \n\t\t\t\t
    • {i18n.t('Wie nehme ich meine Rechte wahr ul1')}
    • \n\t\t\t\t
    • {i18n.t('Wie nehme ich meine Rechte wahr ul2')}
    • \n\t\t\t\t
    • {i18n.t('Wie nehme ich meine Rechte wahr ul3')}
    • \n\t\t\t
    \n\t\t\t

    {i18n.t('Die Übertragung der personenbezogenen')}

    \n\t\t\t

    {i18n.t('Beschwerderecht bei der Aufsichtsbehörde')}

    \n\t\t\t

    {i18n.t('Sofern Sie den Verdacht haben')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('Erstellt durch')}\n\t\t\t\t
    \n\t\t\t\t{i18n.t('IT-Recht-Kanzlei DURY')}\n\t\t\t\t\n\t\t\t\t\twww.dury.de\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t{i18n.t('Website-Check GmbH')}\n\t\t\t\t\n\t\t\t\t\twww.website-check.de\n\t\t\t\t\n\t\t\t

    \n\t\t
    \n\t);\n};\n\nexport default TermsOfUse;\n","import React from 'react';\nimport './Impressum.scss';\nimport i18n from 'i18n-js';\n\n/**\n * @desc UI for LEGAL NOTICE screen\n * @returns {JSX.Element}\n */\nconst Impressum = () => {\n\treturn (\n\t\t
    \n\t\t\t

    {i18n.t('Impressum')}

    \n\n\t\t\t

    {i18n.t('Angaben')}

    \n\t\t\t

    {i18n.t('Geschäftsanschrift')}

    \n\t\t\t

    {i18n.t('Yugokraft GmbH')}

    \n\t\t\t

    {i18n.t('Leipziger Platz 15')}

    \n\t\t\t

    {i18n.t('10117 Berlin')}

    \n\t\t\t

    {i18n.t('Gesetzlich vertretungsberechtigter')}

    \n\t\t\t

    {i18n.t('Jan Seeger')}

    \n\t\t\t

    {i18n.t('Kontakt')}

    \n\t\t\t

    {i18n.t('Telefon')}

    \n\t\t\t

    \n\t\t\t\t{i18n.t('E-Mail')}\n\t\t\t\t\n\t\t\t\t\tinfo@yugokraft.de\n\t\t\t\t\n\t\t\t

    \n\n\t\t\t

    \n\t\t\t\t{i18n.t('Web')}\n\t\t\t\t\n\t\t\t\t\thttps://yugokraft.de\n\t\t\t\t\n\t\t\t

    \n\t\t\t

    {i18n.t('Handelsregister und')}

    \n\t\t\t

    {i18n.t('Registergericht Amtsgericht Charlottenburg')}

    \n\t\t\t

    {i18n.t('Registernummer')}

    \n\t\t\t

    {i18n.t('Ust-ID-Nr')}

    \n\t\t
    \n\t);\n};\n\nexport default Impressum;\n","import { NEW_EMPLOYER, GET_EMPLOYER } from '../actionTypes/actionTypes';\n\n/**\n * @desc set new employer action\n * @param {object} data - employer data\n * @returns {object}\n */\nexport const setNewEmployer = (data) => ({\n\ttype: NEW_EMPLOYER,\n\tpayload: data,\n});\n\n/**\n * @desc get employer action\n * @returns {object}\n */\nexport const getEmployer = () => ({\n\ttype: GET_EMPLOYER,\n});\n","import './styles.scss';\nimport React from 'react';\nimport i18n from 'i18n-js';\nimport { Link } from 'react-router-dom';\nimport { useSelector, useDispatch } from 'react-redux';\nimport congrats from './images/congrats.svg';\nimport routes from '../../constants/routes';\nimport { setNewEmployer } from '../../store/actions/newEmployer';\n\n/**\n * @desc UI for screen after registration success\n * @returns {JSX.Element}\n */\nconst Congrads = () => {\n\tconst dispatch = useDispatch();\n\tconst language = useSelector(({ language }) => language);\n\ti18n.locale = language;\n\n\t/**\n\t * @desc function for reset employer data from redux\n\t */\n\tconst handleClick = () =>\n\t\tdispatch(\n\t\t\tsetNewEmployer({\n\t\t\t\tname: '',\n\t\t\t\temail: '',\n\t\t\t\tcompany: '',\n\t\t\t}),\n\t\t);\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{i18n.t('Congratulations')}\n\t\t\t\t\t

    \n\t\t\t\t\t\tVielen Dank, dass Sie sich bei YUGOKRAFT registriert haben. Wir werden uns in kürze bei Ihnen melden.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t{i18n.t('Home')}\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default Congrads;\n","/* eslint-disable max-len */\nimport React, { useState, useEffect } from 'react';\nimport i18n from 'i18n-js';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport validator from 'validator';\nimport cn from 'classnames';\nimport tick from './images/tick.svg';\nimport './styles.scss';\nimport ApplyCongrads from './ApllyCongrads';\nimport { registerEmployer } from '../../store/actions/userData';\nimport Popup from '../Popup/Popup';\nimport { clearError } from '../../store/actions/errorHandling';\nimport { setNewEmployer } from '../../store/actions/newEmployer';\n\n/**\n * @desc UI for employer registration form\n * @returns {JSX.Element}\n */\nconst ApplyEmployerPage = () => {\n\tconst regName = /[^a-zA-ZА-Яа-яÄäÖöÜüßЇїЁёіІєЄ\\-Ђђ\\sЉљЊњЋћЏџЈјẞČčĆćDždžĐ𩹮ž']/g;\n\tconst dispatch = useDispatch();\n\n\tconst error = useSelector((state) => state.error);\n\tconst formData = useSelector((state) => state.newEmployer);\n\n\tconst [isNameValid, setIsNameValid] = useState(true);\n\tconst [isEmailValid, setIsEmailValid] = useState(true);\n\tconst [isCompanyValid, setIsCompanyValid] = useState(true);\n\tconst [isButtonActive, setIsButtonActive] = useState(false);\n\tconst [isFormSubmitted, setFormIsSubmitted] = useState(false);\n\tconst [isTermsErrorVisible, setIsTermsErrorVisible] = useState(false);\n\tconst [isTermsChecked, setIsTermsChecked] = useState(false);\n\tlet formValid = false;\n\n\t/**\n\t * @desc function for validation registr employer form\n\t */\n\tconst validation = () => {\n\t\tformValid = true;\n\n\t\tif (validator.isEmail(formData.email)) {\n\t\t\tsetIsEmailValid(true);\n\t\t} else {\n\t\t\tsetIsEmailValid(false);\n\t\t\tformValid = false;\n\t\t}\n\n\t\tif (formData.name.length < 1) {\n\t\t\tsetIsNameValid(false);\n\t\t\tformValid = false;\n\t\t}\n\n\t\tif (formData.company.length < 1) {\n\t\t\tsetIsCompanyValid(false);\n\t\t\tformValid = false;\n\t\t}\n\n\t\tif (!isTermsChecked) setIsTermsErrorVisible(true);\n\t};\n\n\t/**\n\t * @desc function for set form values\n\t * @param {object} event - native event\n\t */\n\tconst handleInput = (event) => {\n\t\tconst { value } = event.target;\n\t\tconst inputName = event.target.name;\n\n\t\tswitch (inputName) {\n\t\t\tcase 'name':\n\t\t\t\tsetIsNameValid(true);\n\n\t\t\t\tif (value.length < 1) {\n\t\t\t\t\tsetIsNameValid(false);\n\t\t\t\t\tformValid = false;\n\t\t\t\t}\n\n\t\t\t\tdispatch(\n\t\t\t\t\tsetNewEmployer({\n\t\t\t\t\t\t...formData,\n\t\t\t\t\t\t[inputName]: value.replace(regName, '').slice(0, 40),\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t\tbreak;\n\n\t\t\tcase 'email':\n\t\t\t\tsetIsEmailValid(true);\n\n\t\t\t\tif (!validator.isEmail(value)) {\n\t\t\t\t\tsetIsEmailValid(false);\n\t\t\t\t\tformValid = false;\n\t\t\t\t}\n\n\t\t\t\tdispatch(\n\t\t\t\t\tsetNewEmployer({\n\t\t\t\t\t\t...formData,\n\t\t\t\t\t\t[inputName]: value.slice(0, 40).trim(),\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t\tbreak;\n\n\t\t\tcase 'company':\n\t\t\t\tsetIsCompanyValid(true);\n\n\t\t\t\tif (value.length < 1) {\n\t\t\t\t\tsetIsCompanyValid(false);\n\t\t\t\t\tformValid = false;\n\t\t\t\t}\n\n\t\t\t\tdispatch(\n\t\t\t\t\tsetNewEmployer({\n\t\t\t\t\t\t...formData,\n\t\t\t\t\t\t[inputName]: value.slice(0, 40),\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t\tbreak;\n\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\t};\n\n\t/**\n\t * @desc function for disable submit button\n\t */\n\tuseEffect(() => {\n\t\tconst isFormDataEmpty = Object.values(formData).includes('');\n\n\t\tif (isNameValid && isEmailValid && isCompanyValid && isTermsChecked && !isFormDataEmpty) {\n\t\t\tsetIsButtonActive(true);\n\t\t} else {\n\t\t\tsetIsButtonActive(false);\n\t\t}\n\t}, [isNameValid, isEmailValid, isCompanyValid, isTermsChecked, formData]);\n\n\tconst handleSubmit = async () => {\n\t\tvalidation();\n\n\t\tif (formValid && isTermsChecked) {\n\t\t\tdispatch(registerEmployer(formData));\n\t\t\tsetTimeout(() => {\n\t\t\t\tsetFormIsSubmitted(true);\n\t\t\t}, 100);\n\t\t}\n\t};\n\n\t/**\n\t * @desc function for reset form values and employer data from redux\n\t */\n\tconst hidePopup = () => {\n\t\tdispatch(clearError());\n\t\tsetFormIsSubmitted(false);\n\t\tformValid = false;\n\t\tdispatch(\n\t\t\tsetNewEmployer({\n\t\t\t\tname: '',\n\t\t\t\temail: '',\n\t\t\t\tcompany: '',\n\t\t\t}),\n\t\t);\n\t\tsetIsTermsChecked(false);\n\t\tsetIsButtonActive(false);\n\t};\n\n\t/**\n\t * @desc function for toggle terms of use button\n\t */\n\tconst handleTermsCheckbox = () => {\n\t\tsetIsTermsChecked(!isTermsChecked);\n\n\t\tif (!isTermsChecked && isTermsErrorVisible) {\n\t\t\tsetIsTermsErrorVisible(false);\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{error.message && }\n\t\t\t{isFormSubmitted && !error.message ? (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t) : (\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {i18n.t('applyForm.registration')}

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{i18n.t('applyForm.name')} *\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{i18n.t('applyForm.email')} *\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{i18n.t('applyForm.company')} *\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t{i18n.t('check confirmed terms of use')}\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{i18n.t('applyForm.register')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{i18n.t('applyForm.login')}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t)}\n\t\t\n\t);\n};\n\nexport default ApplyEmployerPage;\n","import axios from 'axios';\nimport {\n\tCHANGE_DAY,\n\tSET_ACTIVE_HOUR,\n\tSET_CALENDAR,\n\tSET_GMT_CHANGED,\n\tSET_POPUP_ACTIVE,\n\tSET_REQUEST_ACCEPT,\n\tSET_TOKEN,\n} from '../actionTypes/actionTypes';\nimport { setError } from './errorHandling';\n\n/**\n * @desc function for controlling what day is picked in calendar\n * @param {object} payload - selected day\n * @returns {{payload: *, type: string}}\n */\nexport const setDay = (payload) => ({\n\ttype: CHANGE_DAY,\n\tpayload,\n});\n\n/**\n * @desc function for controlling what hour is picked\n * @param {string} payload - selected hour\n * @returns {{payload: *, type: string}}\n */\nexport const setActiveHour = (payload) => ({\n\ttype: SET_ACTIVE_HOUR,\n\tpayload,\n});\n\n/**\n * @desc function to put all calendar object to store\n * @param {object} payload - calendar values\n * @returns {{payload: *, type: string}}\n */\nexport const setCalendar = (payload) => ({\n\ttype: SET_CALENDAR,\n\tpayload,\n});\n\n/**\n * @desc function to changing popup status if API request accepted\n * @returns {{type: string}}\n */\nexport const setRequestAccept = () => ({\n\ttype: SET_REQUEST_ACCEPT,\n});\n\n/**\n * @desc function for managing popup visibility\n * @param {boolean} payload\n * @returns {{payload: *, type: string}}\n */\nexport const setPopupActive = (payload) => ({\n\ttype: SET_POPUP_ACTIVE,\n\tpayload,\n});\n\n/**\n * @desc function for managing token from url\n * @param {string} payload - token\n * @returns {{payload: *, type: string}}\n */\nexport const setToken = (payload) => ({\n\ttype: SET_TOKEN,\n\tpayload,\n});\n\n/**\n * @desc function for changing GMT\n * @param {string} payload - selected GMT\n * @returns {{payload: *, type: string}}\n */\nexport const setGMTChanged = (payload) => ({\n\ttype: SET_GMT_CHANGED,\n\tpayload,\n});\n\n/**\n * @desc function for getting employers calendar from API\n * @param {string} token - token\n * @param {string} timezone - timezone\n */\nexport const getCalendar = (token, timezone) => async (dispatch) => {\n\ttry {\n\t\tconst body = { timezone };\n\t\tconst response = await axios.post(`${process.env.REACT_APP_API_URL}/api/employers/calendars/${token}`, body);\n\t\tdispatch(setCalendar(response.data));\n\t} catch (error) {\n\t\tdispatch(setPopupActive(true));\n\t\tdispatch(setError(error.response.data.message));\n\t}\n};\n\n/**\n * @desc function for acquiring chosen interview date\n * @param {object} body - chosen interview date\n */\nexport const acquireDate = (body) => async (dispatch) => {\n\ttry {\n\t\tawait axios.post(`${process.env.REACT_APP_API_URL}/api/employers/acquireDateForInterview`, body);\n\t\tdispatch(setPopupActive(true));\n\t} catch (error) {\n\t\tdispatch(setPopupActive(true));\n\t\tdispatch(setError(error.response.data.message));\n\t}\n};\n","/* eslint-disable no-unused-expressions */\n/* eslint-disable max-len */\nimport React, { useEffect, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport classNames from 'classnames/bind';\nimport i18n from 'i18n-js';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useHistory } from 'react-router-dom';\nimport styles from './Calendar.module.scss';\nimport { getCalendar, setDay, setToken } from '../../store/actions/calendar';\n\n/**\n * @desc UI for month calendar\n * @returns {JSX.Element}\n */\nconst Calendar = () => {\n\tconst dispatch = useDispatch();\n\tconst [activeDay, setActiveDay] = useState('');\n\tconst [position, setPosition] = useState(null);\n\tconst history = useHistory();\n\tconst periods = useSelector((state) => state.calendar.calendar);\n\tconst GMTChanged = useSelector((state) => state.calendar.GMTChanged);\n\tconst { location } = history;\n\tconst token = location.search.split('=')[1];\n\tdispatch(setToken(token));\n\tconst calendar = useSelector((state) => state.calendar.calendar);\n\tconst today = `${new Date().getFullYear()} ${new Date().getMonth() + 1} ${new Date().getDate()}`;\n\tconst GMT = ['Europe/Berlin', 'Europe/Kiev', 'Europe/Minsk'];\n\n\tuseEffect(() => {\n\t\tif (token) {\n\t\t\tdispatch(getCalendar(token, GMTChanged));\n\t\t} else {\n\t\t\thistory.push('/');\n\t\t}\n\t}, [dispatch, token, GMTChanged]);\n\n\tconst daysInMonth = (y, m) => 32 - new Date(y, m - 1, 32).getDate();\n\n\tconst dateToString = (date) => {\n\t\tconst year = date.getFullYear();\n\t\tconst month = `${date.getMonth() + 1}`;\n\t\tconst day = `${date.getDate()}`;\n\n\t\treturn `${year} ${month.padStart(2, '0')} ${day.padStart(2, '0')}`;\n\t};\n\n\tconst [date, setDate] = useState(new Date());\n\tconst monthLength = daysInMonth(date.getFullYear(), date.getMonth() + 1);\n\tconst startPosition = (new Date(date.getFullYear(), date.getMonth()).getDay() + 6) % 7;\n\tconst calendarRows = startPosition >= 6 && monthLength >= 30 ? 6 : 6;\n\tconst days = ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'];\n\tconst weeks = [];\n\tlet counter = 1;\n\tconst msInDay = 86400000;\n\n\tfor (let i = 0; i < calendarRows; i += 1) {\n\t\tweeks[i] = [];\n\t\tfor (let j = 0; j < 7; j += 1) {\n\t\t\tif (counter === 1 && j < startPosition) {\n\t\t\t\tconst day = new Date(new Date(date.getFullYear(), date.getMonth()).getTime() - msInDay * (startPosition - j));\n\t\t\t\tweeks[i].push({\n\t\t\t\t\tday: day.getDate(),\n\t\t\t\t\toutside: true,\n\t\t\t\t\tdate: dateToString(day),\n\t\t\t\t\trange: '',\n\t\t\t\t\tranges: [],\n\t\t\t\t});\n\t\t\t} else if (counter <= monthLength) {\n\t\t\t\tconst day = new Date(new Date(date.getTime()).setDate(counter));\n\t\t\t\tweeks[i].push({\n\t\t\t\t\tday: counter,\n\t\t\t\t\toutside: false,\n\t\t\t\t\tdate: dateToString(day),\n\t\t\t\t\trange: '',\n\t\t\t\t\tranges: [],\n\t\t\t\t});\n\t\t\t\tcounter += 1;\n\t\t\t} else {\n\t\t\t\tconst tempDate = new Date(new Date(date).setMonth(date.getMonth()));\n\t\t\t\tconst day = new Date(new Date(tempDate.setDate(monthLength)).getTime() + msInDay * (counter - monthLength));\n\t\t\t\tweeks[i].push({\n\t\t\t\t\tday: day.getDate(),\n\t\t\t\t\toutside: true,\n\t\t\t\t\tdate: dateToString(day),\n\t\t\t\t\trange: '',\n\t\t\t\t\tranges: [],\n\t\t\t\t});\n\t\t\t\tcounter += 1;\n\t\t\t}\n\t\t}\n\t}\n\n\tlet preparedWeeks = weeks.map((week) =>\n\t\tweek.map((day) => {\n\t\t\tif (\n\t\t\t\tperiods[0]?.available?.some((period) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t+period.start.split('-').join('') <= +day.date.split(' ').join('') &&\n\t\t\t\t\t\t+period.end.split('-').join('') >= +day.date.split(' ').join('') &&\n\t\t\t\t\t\tnew Date(new Date(day.date).setHours(23)) >= new Date()\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t) {\n\t\t\t\tconst periodsWithDay = periods[0].available.filter(\n\t\t\t\t\t(period) =>\n\t\t\t\t\t\t+period.start.split('-').join('') <= +day.date.split(' ').join('') &&\n\t\t\t\t\t\t+period.end.split('-').join('') >= +day.date.split(' ').join(''),\n\t\t\t\t);\n\n\t\t\t\treturn {\n\t\t\t\t\t...day,\n\t\t\t\t\trange: 'in_range',\n\t\t\t\t\tranges: [...day.ranges, periodsWithDay],\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t...day,\n\t\t\t\trange: 'none',\n\t\t\t\tranges: [],\n\t\t\t};\n\t\t}),\n\t);\n\n\tconst handleNext = () => {\n\t\tconst currentMonth = date.getMonth();\n\t\tconst nextDate = new Date(date);\n\t\tnextDate.setDate(1);\n\t\tnextDate.setMonth(currentMonth + 1);\n\t\tsetDate(nextDate);\n\t};\n\n\tconst handlePrev = () => {\n\t\tconst currentMonth = date.getMonth();\n\t\tconst nextDate = new Date(date);\n\t\tnextDate.setMonth(currentMonth - 1);\n\t\tsetDate(nextDate);\n\t};\n\n\tconst handlePick = (day, weekIdx, dayIdx) => {\n\t\tsetDate(new Date(day.date));\n\t\tsetPosition({ week: weekIdx, day: dayIdx });\n\t\tsetActiveDay(day.date);\n\t};\n\n\tuseEffect(() => {\n\t\tconst pos = {\n\t\t\tweek: null,\n\t\t\tday: null,\n\t\t};\n\t\tconst current = preparedWeeks.find((week, idx) =>\n\t\t\tweek.find((item) => {\n\t\t\t\tif (item.date === activeDay) pos.week = idx;\n\t\t\t\treturn item.date === activeDay;\n\t\t\t}),\n\t\t);\n\t\tconst searchDay = current?.find((item, idx) => {\n\t\t\tif (item.date === activeDay) {\n\t\t\t\tpos.day = idx;\n\t\t\t}\n\t\t\treturn item.date === activeDay;\n\t\t});\n\t\tif (searchDay) {\n\t\t\tdispatch(setDay(preparedWeeks[pos.week][pos.day]));\n\t\t}\n\t}, [periods, activeDay, position, dispatch, GMTChanged]);\n\n\tpreparedWeeks = preparedWeeks.map((week) => {\n\t\treturn week.map((day) => {\n\t\t\tif (day.ranges.length !== 0) {\n\t\t\t\tconst periods = day.ranges.map((range) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tduration: range\n\t\t\t\t\t\t\t.map((item) => {\n\t\t\t\t\t\t\t\treturn { [item.duration]: { length: item.duration } };\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.reduce((acc, obj) => ({ ...acc, ...obj }), {}),\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t\treturn { ...day, periods: periods[0] };\n\t\t\t}\n\t\t\treturn day;\n\t\t});\n\t});\n\n\tconst getTimeRange = (from, to, duration) => {\n\t\tconst durationInMinutes = duration / 60;\n\t\tlet start = +from.slice(0, 2) * 60;\n\t\tconst range = [];\n\t\tlet end = +to.slice(0, 2) * 60;\n\t\tif (end === 0) end = 1440;\n\t\tif (end < start) end = 1440;\n\t\twhile (start < end) {\n\t\t\tconst strTime = `${Math.trunc(start / 60)\n\t\t\t\t.toString()\n\t\t\t\t.padStart(2, '0')}:${Math.trunc(start % 60)\n\t\t\t\t.toString()\n\t\t\t\t.padEnd(2, '0')}`;\n\t\t\trange.push(strTime);\n\t\t\tstart += durationInMinutes;\n\t\t}\n\t\treturn range;\n\t};\n\n\tpreparedWeeks = preparedWeeks.map((week) => {\n\t\treturn week.map((day) => {\n\t\t\tif (day.periods) {\n\t\t\t\tObject.keys(day.periods.duration)?.map((period) => {\n\t\t\t\t\tlet preparedTimes = day.ranges[0].filter((range) => +range.duration === +period);\n\n\t\t\t\t\tpreparedTimes = preparedTimes.reduce((acc, time) => [...acc, time.time], []);\n\t\t\t\t\tpreparedTimes = preparedTimes\n\t\t\t\t\t\t.map((currentTime) => {\n\t\t\t\t\t\t\tlet sum = [];\n\t\t\t\t\t\t\tcurrentTime.forEach((item) => (sum = [...sum, ...getTimeRange(item.from, item.to, period)]));\n\t\t\t\t\t\t\treturn sum;\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.reduce((acc, item) => [...acc, ...item], []);\n\t\t\t\t\tconst times = [...new Set(preparedTimes)]\n\t\t\t\t\t\t.sort((a, b) => +a.slice(0, 2) - +b.slice(0, 2))\n\t\t\t\t\t\t.filter((item) => {\n\t\t\t\t\t\t\tif (day.date === today) {\n\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\tnew Date().getTime() >=\n\t\t\t\t\t\t\t\t\tnew Date(new Date(day.date).setHours(+item.slice(0, 2) - GMT.indexOf(GMTChanged))).setMinutes(+item.slice(3, 5))\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst acquiredDates = calendar[0].acquired.filter((acquired) => {\n\t\t\t\t\t\t\t\treturn acquired.date === day.date.split(' ').join('-');\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tif (acquiredDates.length !== 0) {\n\t\t\t\t\t\t\t\treturn !acquiredDates.some((time) => time.from === item);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t});\n\t\t\t\t\tday.periods.duration[period].times = times;\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn day;\n\t\t});\n\t});\n\n\tconst cx = classNames.bind(styles);\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t(`calendar.months.${date.toDateString().split(' ')[1]}`)} {date.getUTCFullYear()}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{days.map((day) => (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{day}\n\t\t\t\t\t\t
    \n\t\t\t\t\t))}\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{preparedWeeks.map((week, weekIdx) => (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{week.map((day, dayIdx) =>\n\t\t\t\t\t\t\t\tday.range === 'none' ? (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{day.day}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t handlePick(day, weekIdx, dayIdx)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{day.day}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t))}\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n\nexport default Calendar;\n","import { useEffect, useState } from 'react';\n\n/**\n * @desc function for handling screen window size\n * @returns {{width: number, height: number}}\n */\nconst getWindowDimensions = () => {\n\tconst { innerWidth: width, innerHeight: height } = window;\n\treturn {\n\t\theight,\n\t\twidth,\n\t};\n};\n\n/**\n * @desc custom hook for handling screen window size\n * @returns {{width: number, height: number}}\n */\nconst useWindowDimensions = () => {\n\tconst [windowDimensions, setWindowDimensions] = useState(getWindowDimensions());\n\n\tuseEffect(() => {\n\t\tfunction handleResize() {\n\t\t\tsetWindowDimensions(getWindowDimensions());\n\t\t}\n\n\t\twindow.addEventListener('resize', handleResize);\n\t\treturn () => window.removeEventListener('resize', handleResize);\n\t}, []);\n\n\treturn windowDimensions;\n};\n\nexport default useWindowDimensions;\n","import React, { useEffect, useRef, useState } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { setGMTChanged } from '../../store/actions/calendar';\nimport useWindowDimensions from '../../store/helpers/getWindowDimensions';\nimport styles from './TimezoneSelect.module.scss';\n\n/**\n * @desc Component for choosing GMT time zone\n * @returns {JSX.Element}\n */\nconst TimezoneSelect = () => {\n\tconst { width } = useWindowDimensions();\n\tconst dispatch = useDispatch();\n\tconst [isVisible, setIsVisible] = useState(false);\n\tconst [selectedZone, setSelectedZone] = useState(0);\n\tconst zones = ['Central European Time - GMT +01', 'Eastern European time - GMT +02', 'European Time - GMT +03'];\n\tconst zonesToRender = zones.map((time) => {\n\t\tif (+width >= 925) {\n\t\t\treturn time;\n\t\t}\n\t\treturn time.split('-')[1];\n\t});\n\n\tconst myRef = useRef();\n\n\tconst handleClickOutside = (e) => {\n\t\tif (!myRef.current.contains(e.target) && e.target.id !== 'select' && e.target.parentNode.id !== 'select') {\n\t\t\tsetIsVisible(false);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tdocument.addEventListener('mousedown', handleClickOutside);\n\t\treturn () => document.removeEventListener('mousedown', handleClickOutside);\n\t});\n\n\tconst handleSelectedZone = (idx) => {\n\t\tconst GMT = ['Europe/Berlin', 'Europe/Kiev', 'Europe/Minsk'];\n\t\tsetSelectedZone(idx);\n\t\tdispatch(setGMTChanged(GMT[idx]));\n\t};\n\tconst optionsHeight = zones.length * 60 + 10;\n\n\tconst showTime = (offset) => {\n\t\tconst isoDate = new Date().toISOString();\n\t\treturn `${new Date(isoDate).getUTCHours() + offset + 1}:${`${new Date().getMinutes()}`.padStart(2, '0')}`;\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default TimezoneSelect;\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport PropTypes, { string } from 'prop-types';\nimport { v4 as uuidv4 } from 'uuid';\nimport { setActiveHour, acquireDate } from '../../store/actions/calendar';\nimport styles from './MeetingHours.module.scss';\n\n/**\n * @desc UI of available hours in a day\n * @param {number} duration - meeting duration\n * @param {number} idx - meeting index\n * @param {string} date - meeting date\n * @param {string} times - meeting times\n * @returns {JSX.Element}\n */\n\nconst MeetingHours = ({ duration, idx, date, times }) => {\n\tconst activeHour = useSelector((state) => state.calendar.activeHour);\n\tconst calendar = useSelector((state) => state.calendar.calendar);\n\tconst token = useSelector((state) => state.calendar.token);\n\tconst GMTChanged = useSelector((state) => state.calendar.GMTChanged);\n\tconst dispatch = useDispatch();\n\tconst [activeTime, setActiveTime] = useState();\n\tconst componentId = duration + idx + date + times;\n\n\tuseEffect(() => {\n\t\tdispatch(setActiveHour(componentId));\n\n\t\treturn () => {\n\t\t\tdispatch(setActiveHour(null));\n\t\t};\n\t}, [componentId, dispatch]);\n\n\tconst minutesInHour = 60;\n\tlet periods = [];\n\n\tconst timeFromMinutes = (time) => {\n\t\treturn `${Math.trunc(time / minutesInHour)}:${(time % minutesInHour).toString().padEnd(2, '0')}`;\n\t};\n\n\tperiods = useMemo(() => {\n\t\treturn times.map((time) => {\n\t\t\treturn { date: time, id: uuidv4(), active: false };\n\t\t});\n\t}, [duration, date, calendar, times]);\n\n\tconst memoizedHandleActiveTime = useCallback(\n\t\t(id) => {\n\t\t\tconst handleActiveTime = (id) => {\n\t\t\t\tif (componentId !== activeHour) dispatch(setActiveHour(componentId));\n\t\t\t\tsetActiveTime(id);\n\t\t\t};\n\t\t\thandleActiveTime(id);\n\t\t},\n\t\t[activeHour, componentId, dispatch],\n\t);\n\n\tconst handleConfirm = (period) => {\n\t\tconst offsets = ['Europe/Berlin', 'Europe/Kiev', 'Europe/Minsk'];\n\t\tconst offset = offsets.indexOf(GMTChanged);\n\t\tconst arr = period.date.split(':');\n\t\tconst minutes = +arr[0] * minutesInHour + +arr[1] + duration;\n\t\tconst requestBody = {\n\t\t\ttoken,\n\t\t\tdate: date.split(' ').join('-'),\n\t\t\ttime: {\n\t\t\t\tfrom: period.date.padStart(5, '0'),\n\t\t\t\tto: timeFromMinutes(minutes).padStart(5, '0'),\n\t\t\t},\n\t\t\toffset,\n\t\t};\n\t\tdispatch(acquireDate(requestBody));\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t{periods.map((period) => (\n\t\t\t\t
    memoizedHandleActiveTime(period.id)} role='presentation'>\n\t\t\t\t\t\n\t\t\t\t\t\t{period.date}\n\t\t\t\t\t
    \n\t\t\t\t\t handleConfirm(period)}\n\t\t\t\t\t>\n\t\t\t\t\t\tConfirm\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t))}\n\t\t\n\t);\n};\n\nMeetingHours.propTypes = {\n\tidx: PropTypes.number.isRequired,\n\tduration: PropTypes.number.isRequired,\n\tdate: PropTypes.string.isRequired,\n\ttimes: PropTypes.arrayOf(string).isRequired,\n};\n\nexport default MeetingHours;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useHistory } from 'react-router-dom';\nimport i18n from 'i18n-js';\nimport { setPopupActive } from '../../store/actions/calendar';\nimport { clearError } from '../../store/actions/errorHandling';\nimport styles from './CalendarPopup.module.scss';\n\n/**\n * @desc Popup for showing information after choosing time slot\n * @param {boolean} visible - value for toggle popup visible\n * @param {function} handleClose - function for close popup\n * @returns {JSX.Element}\n */\nconst CalendarPopup = ({ visible, handleClose }) => {\n\tconst dispatch = useDispatch();\n\tconst history = useHistory();\n\tconst { message } = useSelector((state) => state.error);\n\tconst handleCloseWithError = () => {\n\t\thistory.push('/');\n\t\tdispatch(clearError(null));\n\t\tdispatch(setPopupActive(false));\n\t};\n\n\tconst handleCloseWithErrorQuery = () => {\n\t\tdispatch(clearError(null));\n\t\tdispatch(setPopupActive(false));\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t{message === null && (\n\t\t\t\t
    \n\t\t\t\t\t{i18n.t('calendar.popup.Congratulations')}\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('calendar.popup.success')}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{i18n.t('calendar.popup.reminder')}\n\t\t\t\t\t
    \n\t\t\t\t\t{i18n.t('calendar.popup.thanks')}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t)}\n\t\t\t{message === 'Token has been expired!' && (\n\t\t\t\t
    \n\t\t\t\t\t{i18n.t('token.expired')}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t)}\n\t\t\t{message !== 'Token has been expired!' && message !== null && (\n\t\t\t\t
    \n\t\t\t\t\t{i18n.t('calendar.popup.another')}\n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('calendar.popup.cannot-take')}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{i18n.t('calendar.popup.time-taken')}\n\t\t\t\t\t
    \n\t\t\t\t\t{i18n.t('calendar.popup.go-back')}\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t)}\n\t\t
    \n\t);\n};\n\nCalendarPopup.propTypes = {\n\tvisible: PropTypes.bool.isRequired,\n\thandleClose: PropTypes.func.isRequired,\n};\n\nexport default CalendarPopup;\n","import React from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { v4 as uuidv4 } from 'uuid';\nimport i18n from 'i18n-js';\nimport { useHistory } from 'react-router-dom';\nimport MeetingHours from '../MeetingHours/MeetingHours';\nimport styles from './TimeSlots.module.scss';\nimport CalendarPopup from '../CalendarPopup/CalendarPopup';\nimport { setPopupActive } from '../../store/actions/calendar';\n\n/**\n * @desc Component for UI of available time for interview\n * @returns {JSX.Element}\n */\nconst TimeSlots = () => {\n\tconst history = useHistory();\n\tconst day = useSelector((state) => state.calendar.day);\n\tconst calendar = useSelector((state) => state.calendar.calendar);\n\tconst isPopupActive = useSelector((state) => state.calendar.isPopupActive);\n\tconst dispatch = useDispatch();\n\tconst dateFromString = (str) => {\n\t\tconst date = new Date(str);\n\t\tconst dateArr = date.toString().split(' ').slice(0, 4);\n\t\tconst result = `${i18n.t(`calendar.days.${dateArr[0]}`)}, ${dateArr[2]} ${dateArr[1]} ${dateArr[3]}`;\n\t\treturn result;\n\t};\n\n\tconst { date, periods } = day;\n\tconst period = calendar && calendar[0];\n\n\tconst handleClose = () => {\n\t\tdispatch(setPopupActive(false));\n\t\thistory.push('/');\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t{date && period?.name &&
    {period.name}
    }\n\t\t\t{date &&
    {dateFromString(day.date)}
    }\n\t\t\t{periods &&\n\t\t\t\tObject.values(periods?.duration).map((range, idx) => (\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    {range.length / 60} Minute Meeting
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t))}\n\t\t
    \n\t);\n};\n\nexport default TimeSlots;\n","import React from 'react';\nimport Calendar from '../Calendar/Calendar';\nimport TimezoneSelect from '../TimezoneSelect/TimezoneSelect';\nimport TimeSlots from '../TimeSlots/TimeSlots';\nimport styles from './CalendarPage.module.scss';\nimport logo from './images/yugoLogo.svg';\n\n/**\n * @desc Container for calendar components\n * @returns {JSX.Element}\n */\nconst CalendarPage = () => {\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\tlogo\n\t\t\t\t
    \n\t\t\t\t\tSelect date for interview\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tSelect timezone\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n};\n\nexport default CalendarPage;\n","import React, { useState, useEffect } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport { useHistory } from 'react-router';\n\nimport './styles.scss';\n\nimport i18n from 'i18n-js';\nimport { v4 as uuidv4 } from 'uuid';\nimport cn from 'classnames';\nimport imageCompression from 'browser-image-compression';\nimport noteWarning from '../images/note-warning.svg';\nimport tick from '../images/tick.svg';\n\nimport routes from '../../../constants/routes';\nimport Popup from '../../Popup/Popup';\nimport { getDocumentsCategories, setAdditionalDocuments, setIsDocsLoading } from '../../../store/actions/registrationForm';\nimport { setError } from '../../../store/actions/errorHandling';\nimport Preloader from '../../Preloader/Preloader';\n\n/**\n * @desc UI for uploading additional documents\n * @returns {JSX.Element|null}\n */\nconst UploadAdditionalDocs = () => {\n\tconst [uploadForm, setUploadForm] = useState([]);\n\tconst [applyTermsOfUse, setApplyTermsOfUse] = useState(false);\n\tconst [notChecckedTermsOfUse, setNotChecckedTermsOfUse] = useState(false);\n\tconst [popupMaxSize, setPopupMaxSize] = useState(false);\n\tconst [filesData, setFilesData] = useState([]);\n\tconst dispatch = useDispatch();\n\tconst { documentsCategories, isDocsLoading } = useSelector(({ registrationForm }) => registrationForm);\n\tconst language = useSelector(({ language }) => language);\n\tconst history = useHistory();\n\tconst { message } = useSelector(({ error }) => error);\n\tconst errorFromBack = message;\n\n\tconst token = new URLSearchParams(window.location.search).get('token');\n\n\t/**\n\t * @desc mount component and get documents categories from server\n\t */\n\tuseEffect(() => {\n\t\tif (!token) {\n\t\t\thistory.push('/');\n\t\t}\n\n\t\tdocument.getElementById('facebook').innerHTML = `\n !function(f,b,e,v,n,t,s)\n {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\n n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n n.queue=[];t=b.createElement(e);t.async=!0;\n t.src=v;s=b.getElementsByTagName(e)[0];\n s.parentNode.insertBefore(t,s)}(window,document,'script',\n 'https://connect.facebook.net/en_US/fbevents.js');\n fbq('init', '614352799500868');\n\t\tfbq('track', 'CompleteRegistration'); `;\n\n\t\tdispatch(getDocumentsCategories());\n\t}, [dispatch]);\n\n\t/**\n\t * @desc preparing uploadedCategories object and uploadedFiles array for uploading to back\n\t */\n\tuseEffect(() => {\n\t\tconst uploadedFiles = [];\n\n\t\tuploadForm\n\t\t\t.filter((category) => category.files.length > 0)\n\t\t\t.forEach((category) => {\n\t\t\t\tcategory.files.forEach((file) => {\n\t\t\t\t\tuploadedFiles.push(file.data);\n\t\t\t\t});\n\t\t\t});\n\t\tsetFilesData(uploadedFiles);\n\t}, [uploadForm]);\n\n\t/**\n\t * @desc preparing documents categories array\n\t */\n\tuseEffect(() => {\n\t\tconst uploadDocumentsCategories = documentsCategories.map((category) => {\n\t\t\tlet categoryName = '';\n\n\t\t\tswitch (category.name) {\n\t\t\t\tcase 'CV':\n\t\t\t\t\tcategoryName = 'uploadForm.lebenslauf';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'CVTranslatedInGermanOrEnglish':\n\t\t\t\t\tcategoryName = 'uploadForm.lebenslauf in Deutsch';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Diploma':\n\t\t\t\t\tcategoryName = 'uploadForm.diplom';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'DiplomaTranslatedInGermanOrEnglish':\n\t\t\t\t\tcategoryName = 'uploadForm.diplom in Deutsch';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Certificates':\n\t\t\t\t\tcategoryName = 'uploadForm.arbeitszeugnisse';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'CertificatesTranslatedInGermanOrEnglish':\n\t\t\t\t\tcategoryName = 'uploadForm.arbeitszeugnisse in Deutsch';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'References':\n\t\t\t\t\tcategoryName = 'uploadForm.referenzen';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ReferencesTranslatedInGermanOrEnglish':\n\t\t\t\t\tcategoryName = 'uploadForm.referenzen in Deutsch';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'BiometricPhoto':\n\t\t\t\t\tcategoryName = 'uploadForm.biometrisches Foto';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ValidPassport':\n\t\t\t\t\tcategoryName = 'uploadForm.reisepass';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Other':\n\t\t\t\t\tcategoryName = 'uploadForm.unterlagen';\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\t...category,\n\t\t\t\tfiles: [],\n\t\t\t\tisSelectBtnActive: false,\n\t\t\t\tname: categoryName,\n\t\t\t};\n\t\t});\n\n\t\tsetUploadForm(uploadDocumentsCategories);\n\t}, [documentsCategories]);\n\n\ti18n.locale = language;\n\n\t/**\n\t * @desc function for compress upload img\n\t * @param {object} imageFile - object with img\n\t */\n\tconst compressionImg = async (imageFile) => {\n\t\tconst options = {\n\t\t\tmaxSizeMB: 1,\n\t\t\tmaxWidthOrHeight: 1920,\n\t\t\tuseWebWorker: true,\n\t\t};\n\n\t\ttry {\n\t\t\treturn await imageCompression(imageFile, options).then((data) => data);\n\t\t} catch (error) {\n\t\t\treturn error;\n\t\t}\n\t};\n\n\tlet maxSize = 0;\n\t/**\n\t * @desc function for add files by click on upload button\n\t * @param {object} filesList - object with files\n\t * @param {event} event\n\t * @param {string} id - id selected category\n\t */\n\tconst handleAddFile = (filesList, id, event) => {\n\t\tif (filesList.length > 0) {\n\t\t\tdispatch(setIsDocsLoading(true));\n\t\t}\n\n\t\tconst filesListArr = Object.values(filesList);\n\t\tconst compressing = new Promise((res) => {\n\t\t\tconst compressedFiles = [];\n\t\t\tfilesListArr.forEach(async (file) => {\n\t\t\t\tif (file.type === 'image/jpeg') {\n\t\t\t\t\tawait compressionImg(file).then((data) => {\n\t\t\t\t\t\tcompressedFiles.push(data);\n\t\t\t\t\t\tres(compressedFiles);\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tcompressedFiles.push(file);\n\t\t\t\t\tres(compressedFiles);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\tcompressing.then(async (data) => {\n\t\t\tconst preparedFiles = data.map((file) => {\n\t\t\t\tconst result = {\n\t\t\t\t\tid: uuidv4(),\n\t\t\t\t\tisSelected: false,\n\t\t\t\t\tdata: file,\n\t\t\t\t};\n\n\t\t\t\treturn result;\n\t\t\t});\n\n\t\t\tconst result = uploadForm.map((category) => {\n\t\t\t\tif (category.id === id) {\n\t\t\t\t\tmaxSize =\n\t\t\t\t\t\tuploadForm\n\t\t\t\t\t\t\t.map((category) => {\n\t\t\t\t\t\t\t\treturn category.files.reduce((sum, current) => sum + current.data.size, 0);\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.reduce((sum, size) => {\n\t\t\t\t\t\t\t\treturn sum + size;\n\t\t\t\t\t\t\t}, 0) + preparedFiles.reduce((sum, current) => sum + current.data.size, 0);\n\t\t\t\t\tif (maxSize / 1024 / 1024 < 50) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...category,\n\t\t\t\t\t\t\tfiles: [...category.files, ...preparedFiles],\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tsetPopupMaxSize(true);\n\t\t\t\t}\n\t\t\t\treturn category;\n\t\t\t});\n\n\t\t\tsetUploadForm(result);\n\t\t\tmaxSize = result\n\t\t\t\t.map((category) => {\n\t\t\t\t\treturn category.files.reduce((sum, current) => sum + current.data.size, 0);\n\t\t\t\t})\n\t\t\t\t.reduce((sum, size) => {\n\t\t\t\t\treturn sum + size;\n\t\t\t\t}, 0);\n\t\t\tdispatch(setIsDocsLoading(false));\n\t\t});\n\t\tevent.target.value = '';\n\t};\n\n\t/**\n\t * @desc function for select files by click on select button\n\t * @param {string} id - id selected category\n\t */\n\tconst handleSelectFiles = (id) => {\n\t\tconst result = uploadForm.map((category) => {\n\t\t\tif (category.id === id && category.files.length > 0) {\n\t\t\t\treturn {\n\t\t\t\t\t...category,\n\t\t\t\t\tisSelectBtnActive: !category.isSelectBtnActive,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn category;\n\t\t});\n\n\t\tsetUploadForm(result);\n\t};\n\n\t/**\n\t * @desc function for mark files by click on checkbox\n\t * @param {string} categoryId - id selected category\n\t * @param {string} fileId - id selected file\n\t * @param {bool} isSelectBtnActive - is select btn active\n\t */\n\tconst handleMarkFile = (categoryId, fileId, isSelectBtnActive) => {\n\t\tif (!isSelectBtnActive) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst result = uploadForm.map((category) => {\n\t\t\tif (category.id === categoryId) {\n\t\t\t\treturn {\n\t\t\t\t\t...category,\n\t\t\t\t\tfiles: category.files.map((file) => {\n\t\t\t\t\t\tif (file.id === fileId) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...file,\n\t\t\t\t\t\t\t\tisSelected: !file.isSelected,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn file;\n\t\t\t\t\t}),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn category;\n\t\t});\n\n\t\tsetUploadForm(result);\n\t};\n\n\t/**\n\t * @desc function for delete files by click on delete btn\n\t * @param {string} id - id selected category\n\t */\n\tconst handleDeleteFiles = (id) => {\n\t\tconst result = uploadForm.map((category) => {\n\t\t\tif (category.id === id && category.files.length > 0) {\n\t\t\t\tconst deleteFilesAmount = category.files.filter((file) => file.isSelected).length;\n\n\t\t\t\tif (deleteFilesAmount === 0) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...category,\n\t\t\t\t\t\tfiles: [],\n\t\t\t\t\t\tisSelectBtnActive: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\t...category,\n\t\t\t\t\tfiles: category.files.filter((file) => !file.isSelected),\n\t\t\t\t\tisSelectBtnActive: false,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn category;\n\t\t});\n\n\t\tsetUploadForm(result);\n\t};\n\n\t/**\n\t * @desc function for submit documents\n\t */\n\tconst handleSubmitDocuments = () => {\n\t\tif (!applyTermsOfUse) {\n\t\t\tsetNotChecckedTermsOfUse(true);\n\t\t} else if (filesData.length > 0) {\n\t\t\tconst formData = new FormData();\n\t\t\tconst categoriesData = {};\n\t\t\tuploadForm\n\t\t\t\t.filter((category) => category.files.length > 0)\n\t\t\t\t.forEach((category, i) => {\n\t\t\t\t\tif (category.files.length === 0) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tcategory.files.forEach((file, index) => {\n\t\t\t\t\t\tif (file.data.name in categoriesData) {\n\t\t\t\t\t\t\tformData.append('docs', file.data, `${i}${index + 1}-${file.data.name}`);\n\t\t\t\t\t\t\tcategoriesData[`${i}${index + 1}-${file.data.name}`] = category.id;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tformData.append('docs', file.data, file.data.name);\n\t\t\t\t\t\t\tcategoriesData[file.data.name] = category.id;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\tformData.append('categories', JSON.stringify(categoriesData));\n\n\t\t\tdispatch(setAdditionalDocuments(formData, token));\n\t\t} else {\n\t\t\tdispatch(setError(i18n.t('uploadForm.error')));\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\tnote\n\t\t\t\t
    \n\t\t\t\t\t

    {i18n.t('uploadForm.note')}

    \n\t\t\t\t\t

    {i18n.t('uploadForm.high-quality photos')}

    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t

    {i18n.t('Nessesary-documents')}

    \n\n\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t\t\t

    {i18n.t('check confirmed terms of use')}

    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{i18n.t('next-step')}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t{popupMaxSize && setPopupMaxSize(false)} />}\n\t\t\t{errorFromBack && dispatch(setError(null))} />}\n\t\t\t{isDocsLoading && }\n\t\t\n\t);\n};\n\nexport default UploadAdditionalDocs;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport '../Congrats/styles.scss';\n\nimport i18n from 'i18n-js';\nimport congrats from '../images/congrats.svg';\nimport routes from '../../../constants/routes';\n\nimport { setIsAdditionalDocsSended } from '../../../store/actions/registrationForm';\n\n/**\n * @desc function for showing success screen on documents load\n * @returns {JSX.Element}\n */\nconst Congrats = () => {\n\tconst dispatch = useDispatch();\n\tconst language = useSelector(({ language }) => language);\n\ti18n.locale = language;\n\n\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\n\t/**\n\t * @desc function for set is additional documents sended success\n\t */\n\tconst handleSetIsAdditionalDocsSended = () => {\n\t\tdispatch(setIsAdditionalDocsSended(false));\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{i18n.t('Congratulations')}\n\t\t\t\t\t

    {i18n.t('uploadForm.Thank you')}

    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t{i18n.t('Home')}\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default Congrats;\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport './styles.scss';\nimport AdditionalForm from './AdditionalForm';\nimport Congrats from './Congrats';\n\n/**\n * @desc container for additional documents form\n * @returns {JSX.Element}\n */\nconst AdditionalPage = () => {\n\tconst { isAdditionalDocsSended } = useSelector(({ registrationForm }) => registrationForm);\n\n\treturn (\n\t\t
    \n\t\t\t
    {!isAdditionalDocsSended ? : }
    \n\t\t
    \n\t);\n};\n\nexport default AdditionalPage;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { useSelector } from 'react-redux';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nimport i18n from 'i18n-js';\nimport congrats from './images/congrats.svg';\nimport routes from '../../constants/routes';\n\n/**\n * @desc UI for screen after CV confirmation success\n * @param {boolean} isCongratsOpen - value for set congrats visible\n * @returns {JSX.Element}\n */\nconst Congrats = ({ isCongratsOpen }) => {\n\tconst language = useSelector(({ language }) => language);\n\ti18n.locale = language;\n\n\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t

    {i18n.t('confirmCv.confirm-header-success')}

    \n\t\t\t\t
    \n\t\t\t\t\t{i18n.t('Congratulations')}\n\t\t\t\t\t

    {i18n.t('confirmCv.confirm-title-success')}

    \n\t\t\t\t\t

    {i18n.t('confirmCv.confirm-text-success')}

    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t{i18n.t('Home')}\n\t\t\t\n\t\t
    \n\t);\n};\n\nCongrats.propTypes = {\n\tisCongratsOpen: PropTypes.func,\n};\n\nCongrats.defaultProps = {\n\tisCongratsOpen: undefined,\n};\n\nexport default Congrats;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { useSelector } from 'react-redux';\nimport PropTypes from 'prop-types';\n\nimport './styles.scss';\n\nimport i18n from 'i18n-js';\nimport error from '../../assets/images/error-icon.svg';\nimport routes from '../../constants/routes';\n\n/**\n * @desc UI for Error Screen\n * @param {boolean} isCongratsOpen - value for set congrats visible\n * @returns {JSX.Element}\n */\nconst Congrats = ({ isCongratsOpen }) => {\n\tconst language = useSelector(({ language }) => language);\n\ti18n.locale = language;\n\n\twindow.scrollTo({ top: 0, behavior: 'smooth' });\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t

    {i18n.t('confirmCv.confirm-header-error')}

    \n\t\t\t\t
    \n\t\t\t\t\t{i18n.t('confirmCv.confirm-header-error')}\n\t\t\t\t\t

    {i18n.t('confirmCv.confirm-title-error')}

    \n\t\t\t\t\t

    {i18n.t('confirmCv.confirm-text-error')}

    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t{i18n.t('Home')}\n\t\t\t\n\t\t
    \n\t);\n};\n\nCongrats.propTypes = {\n\tisCongratsOpen: PropTypes.func,\n};\n\nCongrats.defaultProps = {\n\tisCongratsOpen: undefined,\n};\n\nexport default Congrats;\n","import axios from 'axios';\nimport { SET_CONFIRM_TOKEN } from '../actionTypes/actionTypes';\nimport { setError } from './errorHandling';\n\n/**\n * @desc function for set confirm token to redux\n * @param {boolean} payload - is token confirmed\n * @returns {{payload: *, type: boolean}}\n */\nexport const setConfirmToken = (payload) => ({\n\ttype: SET_CONFIRM_TOKEN,\n\tpayload,\n});\n\n/**\n * @desc function for get confirm token\n * @param {string} token - token\n */\nexport const getConfirmToken = (token) => async (dispatch) => {\n\ttry {\n\t\tawait axios.patch(`${process.env.REACT_APP_API_URL}/api/candidates/setExpired`, token);\n\t\tdispatch(setConfirmToken(true));\n\t} catch (error) {\n\t\tdispatch(setConfirmToken(false));\n\t\tdispatch(setError(error.response.data.message));\n\t}\n};\n","import React, { useEffect } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useHistory } from 'react-router';\nimport './styles.scss';\n\nimport Congrats from './Congrats';\nimport Error from '../Error/Error';\n\nimport { getConfirmToken, setConfirmToken } from '../../store/actions/confirmCv';\n\n/**\n * @desc UI of CV confirmation screen\n * @returns {JSX.Element}\n */\nconst ConfirmCv = () => {\n\tconst history = useHistory();\n\tconst dispatch = useDispatch();\n\tconst token = new URLSearchParams(window.location.search).get('token');\n\tconst confirmCv = useSelector((state) => state.confirmCv);\n\n\tuseEffect(() => {\n\t\tif (!token) {\n\t\t\thistory.push('/');\n\t\t} else {\n\t\t\tdispatch(getConfirmToken({ token }));\n\t\t}\n\t}, []);\n\n\tconst isCongratsOpen = () => {\n\t\tdispatch(setConfirmToken(false));\n\t};\n\n\treturn
    {confirmCv ? : }
    ;\n};\n\nexport default ConfirmCv;\n","import React from 'react';\nimport { Route, Switch } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport routes from '../constants/routes';\nimport MainPage from '../components/MainPage/MainPage';\nimport AboutPage from '../components/AboutPage/AboutPage';\nimport ForCandidates from '../components/ForCandidatesPage/ForCandidates';\nimport CandidateForm from '../components/CandidateForm/CandidateFormPage';\nimport MainMenu from '../components/MainMenu/MainMenu';\nimport Footer from '../components/Footer/Footer';\nimport TermsOfUse from '../components/TermsOfUse/TermsOfUse';\nimport Impressum from '../components/Impressum/Impressum';\nimport * as funcsFromStore from '../store/store';\nimport ApplyEmployerPage from '../components/ApplyEmployerPage/ApplyEmployerPage';\nimport CalendarPage from '../components/CalendarPage/CalendarPage';\nimport AdditionalDocsPage from '../components/CandidateForm/UploadDocuments/AdditionalPage';\nimport ConfirmCv from '../components/ConfirmCv/ConfirmCv';\n\n/**\n * @desc function for handling routing\n * @param {object} location - current location\n * @param {string} userType - current user type\n * @returns {JSX.Element}\n */\nconst MainContainer = ({ location, userType }) => {\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{userType === 'candidate' ? : }\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{location.pathname !== routes.CALENDAR &&
    }\n\t\t\t
    \n\t\t\n\t);\n};\n\nconst storeFuncs = {\n\tapplyUserType: funcsFromStore.applyUserType,\n};\n\nconst storeData = (state) => ({\n\tuserType: state.userType,\n});\n\nexport default connect(storeData, storeFuncs)(MainContainer);\n","import React, { useEffect } from 'react';\nimport { connect, useDispatch, useSelector } from 'react-redux';\nimport './App.scss';\nimport { BrowserRouter, Route } from 'react-router-dom';\nimport i18n from 'i18n-js';\nimport MainContainer from './containers/Main';\nimport 'reset-css';\nimport routes from './constants/routes';\nimport * as funcsFromStore from './store/store';\nimport { getLanguage, setLanguage } from './store/actions/language';\n\nfunction App() {\n\tconst dispatch = useDispatch();\n\tconst userType = useSelector((state) => state.userType);\n\tconst language = useSelector((state) => state.language);\n\n\tuseEffect(() => {\n\t\tif (userType === 'employer') {\n\t\t\tdispatch(setLanguage('de'));\n\t\t\treturn;\n\t\t}\n\t\tdispatch(getLanguage());\n\t}, [dispatch, userType]);\n\n\ti18n.locale = userType === 'candidate' ? language : 'de';\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n}\n\nconst storeFuncs = {\n\tapplyLanguage: funcsFromStore.applyLanguage,\n};\n\nconst storeData = (state) => ({\n\tlanguage: state.language,\n});\n\nexport default connect(storeData, storeFuncs)(App);\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n\twindow.location.hostname === 'localhost' ||\n\t\t// [::1] is the IPv6 localhost address.\n\t\twindow.location.hostname === '[::1]' ||\n\t\t// 127.0.0.0/8 are considered localhost for IPv4.\n\t\twindow.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/),\n);\n\nexport function register(config) {\n\tif (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n\t\t// The URL constructor is available in all browsers that support SW.\n\t\tconst publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n\t\tif (publicUrl.origin !== window.location.origin) {\n\t\t\t// Our service worker won't work if PUBLIC_URL is on a different origin\n\t\t\t// from what our page is served on. This might happen if a CDN is used to\n\t\t\t// serve assets; see https://github.com/facebook/create-react-app/issues/2374\n\t\t\treturn;\n\t\t}\n\n\t\twindow.addEventListener('load', () => {\n\t\t\tconst swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n\t\t\tif (isLocalhost) {\n\t\t\t\t// This is running on localhost. Let's check if a service worker still exists or not.\n\t\t\t\tcheckValidServiceWorker(swUrl, config);\n\n\t\t\t\t// Add some additional logging to localhost, pointing developers to the\n\t\t\t\t// service worker/PWA documentation.\n\t\t\t\tnavigator.serviceWorker.ready.then(() => {\n\t\t\t\t\tconsole.log('This web app is being served cache-first by a service worker. To learn more, visit https://bit.ly/CRA-PWA');\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Is not localhost. Just register service worker\n\t\t\t\tregisterValidSW(swUrl, config);\n\t\t\t}\n\t\t});\n\t}\n}\n\nfunction registerValidSW(swUrl, config) {\n\tnavigator.serviceWorker\n\t\t.register(swUrl)\n\t\t.then((registration) => {\n\t\t\tregistration.onupdatefound = () => {\n\t\t\t\tconst installingWorker = registration.installing;\n\t\t\t\tif (installingWorker == null) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tinstallingWorker.onstatechange = () => {\n\t\t\t\t\tif (installingWorker.state === 'installed') {\n\t\t\t\t\t\tif (navigator.serviceWorker.controller) {\n\t\t\t\t\t\t\t// At this point, the updated precached content has been fetched,\n\t\t\t\t\t\t\t// but the previous service worker will still serve the older\n\t\t\t\t\t\t\t// content until all client tabs are closed.\n\t\t\t\t\t\t\tconsole.log('New content is available and will be used when all tabs for this page are closed. See https://bit.ly/CRA-PWA.');\n\n\t\t\t\t\t\t\t// Execute callback\n\t\t\t\t\t\t\tif (config && config.onUpdate) {\n\t\t\t\t\t\t\t\tconfig.onUpdate(registration);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// At this point, everything has been precached.\n\t\t\t\t\t\t\t// It's the perfect time to display a\n\t\t\t\t\t\t\t// \"Content is cached for offline use.\" message.\n\t\t\t\t\t\t\tconsole.log('Content is cached for offline use.');\n\n\t\t\t\t\t\t\t// Execute callback\n\t\t\t\t\t\t\tif (config && config.onSuccess) {\n\t\t\t\t\t\t\t\tconfig.onSuccess(registration);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t};\n\t\t})\n\t\t.catch((error) => {\n\t\t\tconsole.error('Error during service worker registration:', error);\n\t\t});\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n\t// Check if the service worker can be found. If it can't reload the page.\n\tfetch(swUrl, {\n\t\theaders: { 'Service-Worker': 'script' },\n\t})\n\t\t.then((response) => {\n\t\t\t// Ensure service worker exists, and that we really are getting a JS file.\n\t\t\tconst contentType = response.headers.get('content-type');\n\t\t\tif (response.status === 404 || (contentType != null && contentType.indexOf('javascript') === -1)) {\n\t\t\t\t// No service worker found. Probably a different app. Reload the page.\n\t\t\t\tnavigator.serviceWorker.ready.then((registration) => {\n\t\t\t\t\tregistration.unregister().then(() => {\n\t\t\t\t\t\twindow.location.reload();\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Service worker found. Proceed as normal.\n\t\t\t\tregisterValidSW(swUrl, config);\n\t\t\t}\n\t\t})\n\t\t.catch(() => {\n\t\t\tconsole.log('No internet connection found. App is running in offline mode.');\n\t\t});\n}\n\nexport function unregister() {\n\tif ('serviceWorker' in navigator) {\n\t\tnavigator.serviceWorker.ready\n\t\t\t.then((registration) => {\n\t\t\t\tregistration.unregister();\n\t\t\t})\n\t\t\t.catch((error) => {\n\t\t\t\tconsole.error(error.message);\n\t\t\t});\n\t}\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport i18n from 'i18n-js';\nimport { Provider } from 'react-redux';\nimport App from './App';\nimport * as serviceWorker from './serviceWorker';\nimport store from './store/store';\n\nconst en = require('./locale/en.json');\nconst de = require('./locale/de.json');\nconst sh = require('./locale/sh.json');\nconst ua = require('./locale/ua.json');\nconst ru = require('./locale/ru.json');\nconst tr = require('./locale/tr.json');\nconst es = require('./locale/es.json');\nconst ro = require('./locale/ro.json');\nconst bg = require('./locale/bg.json');\n\ni18n.fallbacks = true;\ni18n.translations = { en, de, sh, ua, ru, tr, es, ro, bg };\n\nReactDOM.render(\n\t\n\t\t\n\t,\n\tdocument.getElementById('root'),\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""}