{"version":3,"sources":["@types/examen.ts","components/_dashboard/examen/ExamenFormEpreuveItem.tsx","utils/helper.ts","components/Markdown.tsx","components/MenuPopover.tsx","hooks/useScreenConfig.ts","redux/slices/chat.ts","redux/slices/blog.ts","redux/slices/user.ts","redux/slices/product.ts","redux/slices/kanban.ts","redux/slices/studyPlan.ts","redux/rootReducer.ts","redux/store.ts","utils/helperExamen.ts","hooks/useHubConnection.ts","components/_dashboard/studyPlan/details/SubChapterCard.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsSidebar.tsx","hooks/usePostMessage.ts","components/_dashboard/studyPlan/details/StudyPlanContentIframe.tsx","components/_dashboard/pedagogy/HomeworkCorrectedMeeting.tsx","components/_dashboard/pedagogy/HomeworkCorrected.tsx","components/_dashboard/pedagogy/HomeworkRejected.tsx","hooks/useChapterItem.ts","components/_dashboard/pedagogy/HomeworkIsScore.tsx","components/IconButtonClignoter.tsx","components/HelpPopover.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsContentQuiz.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsAssimilate.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsToolbar.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsItemInfo.tsx","components/_dashboard/message/MessageQuestionCard.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsItemQuestion.tsx","hooks/useStudyPlanMove.ts","components/TextMaxLine.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsMove.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsToolbarSide.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsContentHtml.tsx","components/_dashboard/media/MediaEmptyContent.tsx","components/_dashboard/media/MediaPDF.tsx","redux/db.ts","hooks/useDBEvaluation.ts","components/_dashboard/pedagogy/HomeworkTodoFiles.tsx","components/_dashboard/pedagogy/HomeworkTodoErrorFileMsg.tsx","hooks/useMediatheque.ts","hooks/useHomeworkFile.ts","components/_dashboard/pedagogy/HomeworkTodoFilesAdd.tsx","components/_dashboard/pedagogy/HomeworkTodoErrorSendedMsg.tsx","components/_dashboard/pedagogy/HomeworkTodoSave.tsx","components/_dashboard/pedagogy/HomeworkTodoSaveDraft.tsx","components/_dashboard/pedagogy/HomeworkTodoSaveErrorMsg.tsx","components/_dashboard/pedagogy/HomeworkTodoRetrieveDraft.tsx","components/_dashboard/pedagogy/HomeworkPlagiat.tsx","components/_dashboard/pedagogy/HomeworkAlertSave.tsx","components/_dashboard/pedagogy/HomeworkTodoForm.tsx","components/_dashboard/meeting/MeetingContainer.tsx","components/_dashboard/pedagogy/HomeworkTodoVoice.tsx","components/_dashboard/media/MediaIcon.tsx","components/_dashboard/media/MediaMenuItem.tsx","components/_dashboard/media/MediaMenuPopover.tsx","components/_dashboard/media/MediaCarrousel.tsx","components/_dashboard/pedagogy/HomeworkTodo.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsHomework.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsLearningICDL.tsx","hooks/useLearningICDL.ts","components/_dashboard/studyPlan/details/StudyPlanDetailsLearningICDLNote.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsContentByType.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsControl.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsContent.tsx","components/LightboxModal.tsx","components/_dashboard/help/HelpLightboxModal.tsx","components/_dashboard/help/HelpCardImage.tsx","components/_dashboard/help/HelpCardTutorial.tsx","components/_dashboard/help/HelpCardTutorials.tsx","components/_dashboard/help/HelpCard.tsx","components/_dashboard/help/HelpDrawer.tsx","components/editor/quill/QuillEditorToolbarStyle.tsx","components/editor/quill/QuillEditorToolbar.tsx","components/editor/quill/index.tsx","components/editor/draft/DraftEditorToolbar.tsx","components/editor/draft/DraftEditorStyle.tsx","components/_dashboard/examen/ExamenFormObjectifSession.tsx","components/_dashboard/examen/ExamenFormValidationSchema.ts","components/_dashboard/examen/ExamenFormInformations.tsx","components/_dashboard/examen/ExamenFormEpreuves.tsx","components/_dashboard/examen/ExamenFormConfirmation.tsx","components/_dashboard/examen/ExamenForm.tsx","components/file/FileCard.tsx","components/file/FileAttachment.tsx","hooks/useWorkshop.ts","components/_dashboard/workshop/WorkshopSummons.tsx","components/animate/variants/Wrap.ts","components/animate/variants/Actions.ts","components/animate/variants/background/BackgroundPan.ts","components/animate/variants/fade/FadeIn.ts","components/animate/variants/zoom/ZoomIn.ts","components/animate/variants/zoom/ZoomOut.ts","components/animate/variants/bounce/BounceIn.ts","components/animate/variants/bounce/BounceOut.ts","components/animate/MotionInView.tsx","components/animate/MotionContainer.tsx","components/animate/DialogAnimate.tsx","components/animate/ButtonAnimate.tsx","hooks/useStudyPlan.ts","hooks/useModuleAuthorize.tsx","pages/Page500.tsx","redux/slices/survey.ts","components/authentication/login/LoginForm.tsx","pages/authentication/LoginTrackerGoogle.tsx","pages/authentication/Login.tsx","config.ts","hooks/useSidebarConfig.tsx","hooks/useLocalStorage.ts","redux/slices/virtualClass.ts","hooks/useBrand.ts","@types/workshop.ts","components/Page.tsx","redux/slices/workshop.ts","components/ModuleNotAuthorized.tsx","@types/virtualClass.ts","hooks/useStudyPlanChapterItem.ts","redux/slices/homeworkInProgress.ts","components/CardContainer.tsx","hooks/useTrackerGoogle.ts","components/FormikInput.tsx","components/DialogConfirm.tsx","redux/slices/meeting.ts","utils/helperSupport.tsx","utils/formatTime.ts","utils/jwt.ts","theme/palette.ts","components/SkeletonLoadSingle.tsx","components/file/FileDetailsAttachments.tsx","hooks/useTrackerActivity.tsx","components/PhoneInfo.tsx","contexts/StudyPlanContext.tsx","components/DialogTitleWithClose.tsx","mapper/agendaMap.ts","@types/task.ts","locales/i18n.ts","utils/highlight.ts","contexts/CollapseDrawerContext.tsx","components/LoadingScreen.tsx","layouts/main/MainSearchStudent.tsx","layouts/main/index.tsx","hooks/useCollapseDrawer.ts","components/MyAvatar.tsx","layouts/dashboard/AccountPopover.tsx","components/_dashboard/scheduleTeacher/ScheduleTeacherEventForm.tsx","components/_dashboard/agenda/AgendaHomeworkForm.tsx","components/_dashboard/agenda/AgendaDispatcherEvent.tsx","layouts/dashboard/MeetPopover.tsx","components/_dashboard/help/HelpPopover.tsx","layouts/dashboard/HelpButton.tsx","layouts/dashboard/FavoritesPopover.tsx","layouts/dashboard/NotificationsPopover.tsx","components/_dashboard/student/account/AccountShortInfos.tsx","components/_dashboard/student/StudentHour.tsx","layouts/dashboard/AlertsPopover.tsx","components/_dashboard/tracking/CountdownTimer.tsx","hooks/useCountdown.ts","components/_dashboard/workflow/WorkflowUpdated.tsx","hooks/useStudyPlanAverage.ts","layouts/dashboard/DashboardNavbar.tsx","components/NavSection.tsx","components/OneTrust.tsx","components/Faciliti.tsx","layouts/dashboard/Footer.tsx","layouts/dashboard/DashboardSidebar.tsx","components/_dashboard/virtualClass/VirtualClassAccess.tsx","components/_dashboard/seminar/SeminarErrorMessage.tsx","components/_dashboard/seminar/SeminarActionRegister.tsx","components/_dashboard/seminar/SeminarActionCancel.tsx","components/_dashboard/virtualClass/VirtualClassReplay.tsx","components/_dashboard/workshop/WorkshopPaymentForm.tsx","components/_dashboard/seminar/SeminarActionPayment.tsx","components/_dashboard/workshop/WorkshopRegister.tsx","components/_dashboard/virtualClass/VirtualClassRegister.tsx","components/_dashboard/virtualClass/VirtualClassReplayVideo.tsx","components/_dashboard/seminar/SeminarButtons.tsx","components/_dashboard/virtualClass/VirtualClassForm.tsx","components/_dashboard/virtualClass/VirtualClassDetails.tsx","components/_dashboard/workshop/WorkshopCreditView.tsx","components/_dashboard/workshop/WorkshopForm.tsx","components/_dashboard/workshop/WorkshopDetails.tsx","components/_dashboard/chatbot/ChatBot.tsx","components/_dashboard/workflow/WorkflowReconnecting.tsx","layouts/dashboard/WelcomeCallPopup.tsx","components/_dashboard/tracking/attendance/AttendanceTracking.tsx","hooks/useAttendanceTracking.ts","components/_dashboard/hub/HubMessageState.tsx","components/_dashboard/workflow/WorkflowVersion.tsx","hooks/useWorkflowVersion.ts","components/_dashboard/survey/SurveyStepper.tsx","hooks/useSurveyStepper.ts","components/_dashboard/survey/SurveyFormDialog.tsx","components/_dashboard/virtualClass/VirtualClassSurveyAfterLive.tsx","components/_dashboard/virtualClass/VirtualClassSurveyAfterReplay.tsx","components/_dashboard/survey/SurveyRelance.tsx","components/_dashboard/studyPlan/PostMessageStudyPlan.tsx","hooks/useExamenInscriptionPopup.ts","components/_dashboard/examen/ExamenInscriptionPopup.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsTrackerGoogle.tsx","components/_dashboard/virtualClass/VirtualClassTrackerGoogle.tsx","components/_dashboard/workshop/WorkshopTrackerGoogle.tsx","hooks/useLocales.ts","components/_dashboard/agenda/AgendaTrackerGoogle.tsx","components/_dashboard/meeting/MeetingTrackerGoogle.tsx","hooks/useExamenRecupResultat.ts","components/_dashboard/examen/ExamenRecupResultatPopup.tsx","layouts/dashboard/index.tsx","guards/GuestGuard.tsx","guards/AuthGuard.tsx","components/_dashboard/overtime/OvertimeForm.tsx","components/_dashboard/overtime/OvertimeProposed.tsx","components/_dashboard/overtime/OvertimeCurrent.tsx","pages/dashboard/Overtimes.tsx","pages/dashboard/StudyPlanSearchDetails.tsx","pages/dashboard/ExamenCreate.tsx","components/_dashboard/tracking/attendance/report/communStyles.ts","components/_dashboard/tracking/attendance/report/AtendanceReportHeader.tsx","components/_dashboard/tracking/attendance/report/AttendanceReportFooter.tsx","components/_dashboard/tracking/attendance/report/AttendanceReportInformations.tsx","components/_dashboard/tracking/attendance/report/AttendanceReportPersonnal.tsx","hooks/useAttendanceReport.ts","components/_dashboard/tracking/attendance/report/AttendanceReportWeek.tsx","components/_dashboard/tracking/attendance/report/AttendanceReportPage.tsx","components/_dashboard/tracking/attendance/AttendanceReportView.tsx","pages/AttendanceReportLandingPage.tsx","components/_dashboard/examen/ExamenInscriptionAdd.tsx","hooks/useExamenFormGestionInterne.ts","components/_dashboard/examen/ExamenFormPeriode.tsx","components/_dashboard/examen/ExamenFormGestionInterneValidationSchema.ts","components/_dashboard/examen/ExamenFormObjectivePlanning.tsx","components/_dashboard/examen/ExamenFormSessionInterne.tsx","components/_dashboard/examen/ExamenFormGestionInterne.tsx","pages/dashboard/ExamenCreateGestionInterne.tsx","routes/index.tsx","theme/shape.ts","theme/typography.ts","theme/breakpoints.ts","theme/overrides/Rating.tsx","theme/overrides/TreeView.tsx","theme/overrides/Checkbox.tsx","theme/overrides/index.ts","theme/overrides/Fab.ts","theme/overrides/Tabs.ts","theme/overrides/Chip.tsx","theme/overrides/Card.ts","theme/overrides/Menu.ts","theme/overrides/Grid.ts","theme/overrides/Link.ts","theme/overrides/Input.ts","theme/overrides/Radio.ts","theme/overrides/Badge.ts","theme/overrides/Lists.ts","theme/overrides/Table.ts","theme/overrides/Paper.ts","theme/overrides/Alert.tsx","theme/overrides/Switch.ts","theme/overrides/Select.ts","theme/overrides/Button.ts","theme/overrides/Dialog.ts","theme/overrides/Avatar.ts","theme/overrides/Slider.ts","theme/overrides/Drawer.ts","theme/overrides/Pickers.ts","theme/overrides/Stepper.ts","theme/overrides/Tooltip.ts","theme/overrides/Popover.ts","theme/overrides/SvgIcon.ts","theme/overrides/DataGrid.tsx","theme/overrides/Skeleton.ts","theme/overrides/Timeline.ts","theme/overrides/Backdrop.ts","theme/overrides/Snackbar.ts","theme/overrides/Progress.ts","theme/overrides/Container.ts","theme/overrides/Accordion.ts","theme/overrides/IconButton.ts","theme/overrides/Typography.ts","theme/overrides/Pagination.ts","theme/overrides/ButtonGroup.ts","theme/overrides/Breadcrumbs.ts","theme/overrides/Autocomplete.ts","theme/overrides/ControlLabel.ts","theme/overrides/ToggleButton.ts","theme/overrides/LoadingButton.ts","theme/shadows.ts","theme/index.tsx","theme/globalStyles.tsx","components/RtlLayout.tsx","components/ScrollToTop.ts","components/GoogleAnalytics.tsx","components/NotistackProvider.tsx","components/ThemePrimaryColor.tsx","components/ThemeLocalization.tsx","components/charts/BaseOptionChart.tsx","components/ABTasty.tsx","App.tsx","serviceWorkerRegistration.ts","reportWebVitals.ts","index.tsx","components/_dashboard/favorite/FavoriteAction.tsx","redux/slices/message.ts","components/_dashboard/studyPlan/details/ChapterItemStatus.tsx","utils/axios.ts","redux/slices/homeworkCacheContent.ts","@types/objectiveType.ts","redux/slices/objective.ts","components/HeaderBreadcrumbs.tsx","hooks/useExamen.ts","redux/slices/examen.ts","components/CardMediaCustom.tsx","@types/learning.ts","redux/slices/learning.ts","components/_dashboard/studyPlan/details/ChapterItemCard.tsx","components/_dashboard/meeting/MeetingDrawer.tsx","components/_dashboard/meeting/MeetingTimeCount.tsx","redux/slices/notification.ts","hooks/useAuth.ts","assets/illustration_upload.tsx","assets/illustration_500.tsx","assets/illustration_404.tsx","assets/illustration_maintenance.tsx","assets/icon_sent.tsx","components/file/FileAction.tsx","components/_dashboard/pedagogy/HomeworkNote.tsx","components/_dashboard/studyPlan/ScoreView.tsx","@types/contract.ts","hooks/useFile.ts","contexts/PageSettingsContext.tsx","components/_dashboard/meeting/MeetingErrorMessage.tsx","components/_dashboard/meeting/MeetingForm.tsx","redux/slices/favorite.ts","routes/paths.ts","utils/getFileFormat.tsx","redux/slices/mediaFile.ts","utils/formatNumber.ts","components/_dashboard/survey/SurveyCategoryCard.tsx","components/Selector.tsx","hooks/usePageSettings.ts","components/RowListItem.tsx","utils/formatPhone.ts","hooks/useStudyPlanHomework.ts","components/_dashboard/media/MediaFileHeader.tsx","components/_dashboard/media/MediaFileAction.tsx","components/_dashboard/media/MediaFileCard.tsx","components/upload/UploadMultiFile.tsx","components/upload/UploadSingleFile.tsx","components/upload/UploadAvatar.tsx","components/_dashboard/student/StudentHourMessage.tsx","hooks/useTackerActivityEvents.ts","components/CardMediaVideo.tsx","hooks/useSurvey.ts","components/_dashboard/survey/SurveyInputCheck.tsx","components/_dashboard/survey/SurveyInputMemo.tsx","components/_dashboard/survey/SurveyInputRadio.tsx","components/_dashboard/survey/SurveyInputRating.tsx","components/_dashboard/survey/SurveyInput.tsx","hooks/useVisioSurvey.ts","components/_dashboard/meeting/MeetingButtonVisio.tsx","components/_dashboard/meeting/MeetingPhoneMessage.tsx","components/_dashboard/meeting/MeetingVisioMessage.tsx","components/Label.tsx","@types/seminar.ts","mapper/workshopMap.ts","mapper/taskMap.ts","@types/job.ts","redux/slices/task.ts","components/file/FileThumb.tsx","components/_dashboard/survey/SurveyCardInformation.tsx","pages/Page404.tsx","mapper/objectiveMap.ts","hooks/useObjective.ts","components/_dashboard/seminar/SeminarStatusDisplay.tsx","hooks/useIsMountedRef.ts","components/_dashboard/message/MessagePopover.tsx","components/_dashboard/examen/ExamenPrerequis.tsx","components/_dashboard/studyPlan/Moyenne/StudyPlanChapterAverageList.tsx","components/_dashboard/studyPlan/Moyenne/StudyPlanChapterAverageListContainer.tsx","components/_dashboard/studyPlan/Moyenne/StudyPlanChapterAverageDialog.tsx","@types/agenda.ts","components/_dashboard/pedagogy/HomeworkStatusRender.tsx","components/_dashboard/studyPlan/skill/SkillList.tsx","components/_dashboard/survey/SurveyContainer.tsx","components/_dashboard/studyPlan/details/ChapterItemGroupCard.tsx","hooks/useSettings.ts","components/_dashboard/survey/SurveyStepperStandard.tsx","hooks/useSurveyStepperStandard.tsx","@types/pageTemplateModel.ts","redux/slices/student.ts","components/AlertErrorMessage.tsx","components/_dashboard/pedagogy/HomeworkMandatoryRender.tsx","components/_dashboard/examen/ExamenFormDocument.tsx","components/_dashboard/message/MessageErrorMsg.tsx","components/_dashboard/message/MessageForm.tsx","@types/account.ts","redux/slices/pageTemplate.ts","contexts/HubContext.tsx","@types/payment.ts","contexts/SettingsContext.tsx","utils/formatText.tsx","components/_dashboard/scheduleTeacher/TimeSlotsFilter.tsx","components/_dashboard/scheduleTeacher/TimeSlotsDisplay.tsx","components/_dashboard/media/MediaFileAvatar.tsx","components/_dashboard/scheduleTeacher/ScheduleTeacherMessage.tsx","components/_dashboard/meeting/MeetingView.tsx","@types/notificationModel.ts","components/_dashboard/agenda/AgendaTaskDetail.tsx","components/_dashboard/examen/ExamenCentreInfosDisplay.tsx","@types/SpecificNeed.ts","redux/slices/specificNeeds.ts","mapper/specificNeedsMap.ts","hooks/useAppStart.ts","contexts/JWTContext.tsx","@types/meeting.ts","components/_dashboard/studyPlan/skill/SkillStatusIndicator.tsx","components/_dashboard/studyPlan/skill/SkillCardList.tsx","components/_dashboard/scheduleTeacher/TimeSlotsWeekDisplay.tsx","components/_dashboard/scheduleTeacher/ScheduleTeacherEventsForm.tsx","components/_dashboard/meeting/MeetingAlertMessageOral.tsx","hooks/usePerson.ts","components/Scrollbar.tsx","components/_dashboard/studyPlan/ScoreAvgProgress.tsx","@types/media.ts","utils/createAvatar.ts","components/EmptyContent.tsx","components/@material-extend/MAvatar.tsx","components/@material-extend/MBreadcrumbs.tsx","components/@material-extend/MIconButton.tsx","components/@material-extend/MHidden.tsx","components/MIconButton.tsx","mapper/virtualClassMap.ts","redux/slices/agenda.ts","components/_dashboard/job/JobFilter.tsx","components/_dashboard/payment/PaymentForm.tsx","components/EmptyContentLarge.tsx","components/_dashboard/studyPlan/toolbar/StudyPlanSearchPopover.tsx","components/_dashboard/studyPlan/toolbar/StudyPlanUpatedPopover.tsx","components/_dashboard/studyPlan/toolbar/StudyPlanActionsPopover.tsx","components/TagType.tsx","utils/collection.ts","components/_dashboard/objective/ObjectiveForm.tsx","@types/article.ts","redux/slices/article.ts","redux/slices/mail.ts","redux/slices/job.ts","components/_dashboard/studyPlan/details/StudyPlanItemScore.tsx","hooks/useFavorite.tsx","hooks/useOvertime.ts","hooks/usePayment.ts","hooks/useStudyPlanChapter.ts","components/_dashboard/survey/SurveyStandard.tsx","layouts/LogoOnlyLayout.tsx","components/_dashboard/studyPlan/details/ChapterStatus.tsx","components/_dashboard/main/CarouselDotsControlsPaging.tsx","hooks/useExamenForm.ts","@types/internship.ts","redux/slices/internship.ts","utils/helperInternship.ts","guards/ModuleGuard.tsx","utils/helperStudyPlan.ts","@types/common.ts","@types/pedagogy.ts","@types/survey.ts","redux/slices/calendar.ts","redux/slices/dashboardJob.ts","components/SvgIconStyle.tsx","@types/favorite.ts","components/IllustrationMessage.tsx","hooks/useModuleGuard.ts","components/_dashboard/meeting/MeetingStatusDisplay.tsx","components/_dashboard/studyPlan/skill/SkillDrawer.tsx","datas/helpCategories.ts","@types/message.ts","components/_dashboard/favorite/FavoriteListItem.tsx","components/Logo.tsx","hooks/useServices.ts","components/_dashboard/message/MessageQuestionCardDetail.tsx","components/_dashboard/studyPlan/details/StudyPlanDetailsEventPopover.tsx","components/_dashboard/studyPlan/details/StudyPlanItemFavoriteAction.tsx"],"names":["ExamenListResult","ExamenSaveResult","defaultExamen","_createClass","code","arguments","length","undefined","designation","categorie","etatInscription","session","defaultSession","epreuves","region","defaultMetadata","statutInscription","statutResultat","dispensee","avis","domaineTravaille","defaultDomaine","departement","defaultDepartement","academie","positionnement","defaultPositionnement","formePassage","observation","periode","defaultPeriode","gestionInscriptionInterne","_classCallCheck","dateEpreuvesAdmissibilite","dateEpreuvesAdmission","dateDebutInscription","dateFinInscription","dateEpreuvesPreAdmissibilite","dateEpreuvesSportives","filtreDepartemental","fichiers","filesMandatory","isSended","pourcentageDevoirsRealises","nombreJoursStage","noteDossierProMin","centreExamen","nombrePlacesMin","nombrePlacesMax","nombreInscrits","type","dateDebut","Date","dateFin","academieCode","regionCode","favorable","enCours","actif","adresseEntreprise","TypeCategoryObjectif","TypePeriodeInscription","ExamenUpdateDateEnvResult","Mois","Trimestre","ExamenFormEpreuveItem","props","_statutsEpreuve$filte","_statutsEpreuve$filte2","epreuve","statutsEpreuve","onChange","values","_props$isResultat","isResultat","error","_useState","useState","_useState2","_slicedToArray","current","setCurrent","handleChange","name","value","_objectSpread","_defineProperty","useEffect","typeFichier","filter","statut","listeCategoryObjectif","includes","listeProgression","isWriteNote","epr","saisiNote","isViewNote","affichageNote","_jsx","_Fragment","children","ViewResultat","statusList","etaIns","ViewInscription","_ref","isWriteNoteOverride","_jsxs","Box","sx","mt","Typography","variant","gutterBottom","concat","codeReferentiel","Stack","gap","flexDirection","alignItems","justifyItems","Selector","fullWidth","label","size","options","map","query","onFilter","disabled","TextFieldNote","_ref2","_ref3","yearMax","getFullYear","yearMin","direction","TextField","inputProps","min","max","step","style","textAlign","InputProps","endAdornment","InputAdornment","position","e","target","note","margin","marginTop","width","Boolean","helperText","select","anneeBenefice","years","i","push","getYears","MenuItem","getAccount","credit","getLeftToPay","creditStudent","priceUnit","amount","accountCredit","accountAmount","formatCardPayment","content","replace","resizeImage","img","height","canvas","document","createElement","ctx","getContext","drawImage","toDataURL","base64ToBlob","base64","binaryString","window","atob","len","bytes","Uint8Array","charCodeAt","Blob","urlBase64ToUint8Array","base64String","repeat","rawData","outputArray","removeAccents","text","r","toLowerCase","trim","RegExp","isValidHttpUrl","url","test","MarkdownWrapperStyle","styled","_blockquote","theme","isLight","palette","mode","typography","body1","paddingLeft","spacing","lineHeight","fontSize","fontFamily","padding","borderRadius","shape","borderRadiusMd","backgroundColor","background","neutral","color","secondary","breakpoints","up","marginBottom","left","top","display","overflowX","whiteSpace","common","white","grey","warning","components","h1","Object","assign","_objectDestructuringEmpty","h2","h3","_ref4","h4","_ref5","h5","_ref6","h6","_ref7","p","_ref8","component","hr","_ref9","Divider","my","ul","_ref10","li","_ref11","a","_ref12","href","Link","rel","Markdown","_ref13","other","ReactMarkdown","rehypePlugins","rehypeRaw","rehypeHighlight","ArrowStyle","zIndex","right","transform","paper","borderRight","alpha","borderBottom","MenuPopover","_objectWithoutProperties","_excluded","Popover","anchorOrigin","vertical","horizontal","transformOrigin","PaperProps","ml","overflow","boxShadow","customShadows","z20","border","useScreenConfig","useTheme","isMobile","useMediaQuery","down","isMediumOrMobile","isDesktop","isLargeScreen","objFromArray","array","key","reduce","accumulator","slice","createSlice","initialState","isLoading","contacts","byId","allIds","conversations","activeConversationId","participants","recipients","reducers","startLoading","state","hasError","action","payload","getContactsSuccess","keys","getConversationsSuccess","getConversationSuccess","conversation","id","onSendMessage","conversationId","newMessage","messageId","body","message","contentType","attachments","createdAt","senderId","messages","markConversationAsReadSuccess","unreadCount","getParticipantsSuccess","resetActiveConversation","addRecipients","_slice$actions","actions","posts","post","recentPosts","hasMore","index","getPostsSuccess","getPostsInitial","getMorePosts","setIndex","noHasMore","getPostSuccess","getRecentPostsSuccess","myProfile","users","userList","followers","friends","gallery","cards","addressBook","invoices","notifications","getProfileSuccess","getUsersSuccess","deleteUser","user","getFollowersSuccess","onToggleFollow","followerId","handleToggle","follower","isFollowed","getFriendsSuccess","getGallerySuccess","getUserListSuccess","getCardsSuccess","getAddressBookSuccess","getInvoicesSuccess","getNotificationsSuccess","products","product","sortBy","filters","gender","category","colors","priceRange","rating","checkout","activeStep","cart","subtotal","total","discount","shipping","billing","getProductsSuccess","getProductSuccess","sortByProducts","filterProducts","getCart","sum","cartItem","price","quantity","addCart","isEmptyCart","_toConsumableArray","_product","uniqBy","deleteCart","updateCart","item","resetCart","onBackStep","onNextStep","onGotoStep","goToStep","increaseQuantity","productId","decreaseQuantity","createBilling","applyDiscount","applyShipping","board","columns","columnOrder","getBoardSuccess","createColumnSuccess","newColumn","persistCard","persistColumn","addTask","_action$payload","card","columnId","cardIds","deleteTask","_action$payload2","cardId","omit","updateColumnSuccess","column","deleteColumnSuccess","deletedColumn","c","marker","chapterItemUpdatedList","phases","skills","chapter","subChapter","currentSendingPhase","constrainedCourse","updated","progression","context","internshipsOfSupport","endLoading","setStudyPlan","studyPlan","assimilate","count","selectItem","itemTmp","status","StudyPlanItemStatus","None","Read","initProgression","phasesTmp","produce","draft","getMarker","resetUpdated","resetState","rootPersistConfig","storage","keyPrefix","whitelist","productPersistConfig","allReducers","combineReducers","article","articleReducer","meeting","meetingReducer","favorite","favoriteReducer","agenda","agendaReducer","objective","objectiveReducer","task","taskReducer","virtualClass","virtualClassReducer","workshop","workshopReducer","mediaFile","mediaFileReducer","messageReducer","homeworkInProgress","homeworkInProgressReducer","mail","mailReducer","chat","chatReducer","blog","blogReducer","userReducer","calendar","calendarReducer","kanban","kanbanReducer","learning","learningReducer","pageTemplate","pageTemplateReducer","notification","notificationReducer","job","jobReducer","dashboardJob","dashboardJobReducer","survey","surveyReducer","internship","internshipReducer","studyPlanReducer","examen","examenReducer","specificNeeds","specificNeedsReducer","student","studentReducer","homeworkCacheContent","persistReducer","productReducer","store","configureStore","reducer","middleware","getDefaultMiddleware","serializableCheck","immutableCheck","persistor","persistStore","dispatch","useSelector","useReduxSelector","useDispatch","useReduxDispatch","getLabelCategoryObjectif","Examen","minuscule","debuteMajuscule","minusculePluriel","debuteMajusculePluriel","accord","accordPluriel","precision","precisionPluriel","possessif","debuteMajusculePossessif","Concours","TitrePro","Certification","getLabelDefaultCategoryObjectif","getLabelMultiCategoryObjectif","categories","defaultLabels","result","forEach","separator","labelsCategorie","getLabelTypeFile","getSessionsFutures","sessions","s","getSessionsFuturesDisponibles","getPeriodesFutures","periodes","isAllowedUnregisterExamenInterne","_examen$session","_examen$periode","_regeneratorRuntime","t","prototype","n","hasOwnProperty","o","defineProperty","Symbol","iterator","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","f","y","GeneratorFunction","GeneratorFunctionPrototype","d","getPrototypeOf","v","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","mark","setPrototypeOf","__proto__","awrap","async","Promise","reverse","pop","prev","charAt","stop","rval","handle","complete","finish","catch","delegateYield","TypeLog","useHubConnection","_methodeHttp","proxy","useContext","HubContext","methodeHttp","_x8","_x9","_x10","_x11","_asyncToGenerator","_callee4","description","idConnection","_context4","axiosInstance","localTime","getTime","headers","writeOnly","tracker","t0","console","log","apply","onError","_x","_x2","_callee","_context","process","onTrackerPage","_x3","_x4","_callee2","page","_context2","Tracker","onAttendanceTracking","_x5","_x6","_x7","_callee3","_context3","SkillStyle","Accordion","SubChapterCard","selectedId","onSelect","items","expanded","event","AccordionSummary","expandIcon","ExpandMore","ChapterStatus","flexShrink","AccordionDetails","paddingRight","flexGrow","StudyPlanChapterAverageDialog","chapters","averageComponent","ScoreAvgProgress","onClick","ChapterItemGroupCard","StudyPlanDetailsSidebar","_managerChapterItem$s3","_chapter$chapters","isOpenSidebar","onCloseSidebar","isFullScreen","pathname","useLocation","_React$useState","React","_React$useState2","setExpanded","isExpanded","managerChapterItem","useStudyPlanChapterItem","_managerChapterItem$s","_managerChapterItem$s2","selectedKey","selected","selector","section","querySelector","scrollIntoView","behavior","block","renderContent","CardHeader","title","Tooltip","MIconButton","MenuBook","ImportContacts","Scrollbar","MHidden","Drawer","open","onClose","ModalProps","keepMounted","keysListenOfUrl","usePostMessage","_ref$url","onEvent","location","URL","origin","listenerMessage","ev","data","addEventListener","removeEventListener","BoxStyled","StudyPlanDetailsIframe","eventHandler","courseId","useTrackerActivity","parent","StudyPlanItemType","Audio","Video","CardMediaVideoAudio","isVideo","CardMediaCustom","EmptyContent","HomeworkCorrectedMeeting","_lastMeeting$metadata","_last$teacher","_last$teacher2","last","homeworkBase","getContractCurrent","useAuth","events","openPopup","setOpenPopup","_useState3","_useState4","showMessage","setShowMessage","_useState5","_useState6","lastMeeting","setLastMeeting","contract","material","_homeworkNoteMin$find","_getTeacherListForMee","_events$filter","homeworkCorrected","HomeworkStatus","Corrected","Remade","noteMin","homeworkNoteMin","find","scoreOn","noteTooLow","isScore","scoreType","ScoreType","sur20","parseFloat","hasScheduleTeacher","getTeacherListForMeeting","scheduleId","previousMeetings","evt","_evt$metadatas","_evt$metadatas2","_evt$metadatas2$homew","eventType","AgendaEventType","Meeting","metadatas","MeetingStatus","Cancel","homework","barCode","sort","b","start","existingMeeting","correctionDate","askMeeting","manageMessage","homeworkType","HomeworkType","eLearning","Alert","severity","bgcolor","primary","lighter","icon","Info","main","fFullDateWithHours","teacher","civility","firstName","lastName","AlertTitle","MeetingDrawer","buttonType","defaultPro","MeetingPopup","Dialog","maxWidth","DialogContent","pb","xs","sm","md","src","maxHeight","DialogTitle","Card","HomeworkNote","DialogActions","justifyContent","Button","ContentStyle","HomeworkCorrected","fileCorrectedType","_ref2$isInPopup","isInPopup","elearning","Elearning","Sended","Rejected","dateCorrected","receptionDate","sendingDate","appreciation","Standard","Voice","ViewStandard","ReportStage","EvaluationStage","ViewEvaluationStage","ViewOther","divider","orientation","flexItem","Avatar","mr","fDate","FileDetailsAttachments","files","userType","UserType","Student","ViewScore","fileName","token","fileType","FileType","CorrectionType","typFicMed","MediaFileType","Pdf","isS3","marginLeft","Media","perimetre","MediaPerimetre","_item","MediaFileCard","HomeworkRejectedOrToRedo","anchorRef","useRef","setOpen","ref","anchorEl","py","px","useChapterItem","setState","information","getInformations","labels","getLabel","isDownload","_homeworkBase$files","Html","media","Homework","_f$references","references","split","_media$observation","_media$title","Url","Annexe","HomeworkIsScore","_ref$isScore","Label","RootStyle","IconButton","animationDuration","animationName","animationIterationCount","transition","IconButtonClignoter","HelpPopover","defaultOpen","_useLocalStorage","useLocalStorage","_useLocalStorage2","reminder","setReminder","openInfo","setOpenInfo","withoutImg","FormControlLabel","control","Checkbox","checked","StudyPlanDetailsContentQuiz","onScore","StudyPlanDetailsAssimilate","selectedItem","onAssimilate","quizOpen","setQuizOpen","openSuccess","setOpenSuccess","_useState7","_useState8","openEchec","setOpenEchec","isChecked","Assimilate","isAssimilateControl","isQuizAssimilate","quizAssimilate","handleOpen","handleClose","handleSuccessClose","handleQuizOpen","_selectedItem$quizAss","_selectedItem$quizAss2","buttonName","score","endOfRead","QuizRounded","DialogConnaissance","CheckRounded","FormControl","Switch","modeAccess","ModeAccess","Write","DialogTitleWithClose","StudyPlanDetailsToolbar","onFullScreen","openSidebar","locked","onToggleSidebar","_useChapterItem","isReadOnly","minHeight","MenuBookTwoTone","homeworks","ChapterItemStatus","HomeworkMandatoryRender","mandatory","coefficient","Chip","renderHomeworkStatus","FullscreenExit","Fullscreen","StudyPlanDetailsItemInfo","_selected$chapter","_selected$subChapter","_homeworkBase$materia","_homeworkBase$materia2","infoList","scheduleLabel","toString","boundCourse","focusOpacity","CopyToClipboard","info","getCopy","onCopy","CopyAll","ListItem","ListItemText","primaryTypographyProps","mb","secondaryTypographyProps","HeaderStyle","MessageQuestionCard","questionDetails","setQuestionDetails","idType","reference","read","publicationDate","getMessage","MessageType","Question","details","Answer","MessageQuestionCardDetail","questionAnswer","StudyPlanDetailsItemQuestion","questions","q","Badge","badgeContent","Icon","anchor","Close","question","MessagePopover","params","subjectId","serviceId","pro","small","useStudyPlanMove","_managerChapterItem$s4","useStudyPlan","previous","previousLine","rowNumber","nextLine","phase","unityChapter","TextMaxLine","textOverflow","wordBreak","fontWeight","ButtonsMobile","_useStudyPlanMove","m","ContainerButtonStyle","getStudyPlanItemLabel","Disabled","Locked","ChevronLeftRounded","ChevronRightRounded","ButtonsStandard","_useStudyPlanMove2","previousLabel","nextLabel","StudyPlanButtonReturn","mobile","getTypeSupport","ChapterItemIconTypeStatus","StudyPlanMove","navigate","useNavigate","handleClick","PATH_DASHBOARD","handleReturn","root","GpsFixed","StudyPlanDetailsToolbarSide","_selected$item4","services","_selected$item","_selected$item2","_selected$item3","subjects","getQuestionParameters","StudyPlanItemFavoriteAction","StudyPlanDetailsEventPopover","studyPlanItem","MIconButtonDowload","file","skillIds","SkillList","StudyPlanDetailsContentHtml","onEndOfRead","MediaEmptyContent","paddingBottom","FallbackViwerPdf","viewer","WebViewer","licenseKey","path","disabledElements","instance","UI","loadDocument","filename","setLanguage","setFitMode","FitMode","FitWidth","documentViewer","Core","pageNumber","ex","className","MediaPDF","setUrl","_useFile","useFile","getFile","errorDownload","getUrlS3","forceRefresh","setForceRefresh","loadUrl","_getUrl","_getLoadFile","response","fileNameS3","referentiel","MediaReferentiel","SkeletonLoadSingle","db","_Dexie","_inherits","SkillAndYouEntDBDexie","_super","_createSuper","_this","evaluations","version","stores","Dexie","HomeworkTodoFiles","_ref$fileFormats","fileFormats","isOpen","setIsOpen","attach2Fill","List","RowItemDisplay","Attachment","w","onDelete","deleteFileHomeworkInProgress","HomeworkTodoErrorFileMsg","HomeworkAddFileResult","ErrorFilesSizeReached","ErrorHomeworkSended","ErrorNumberFilesReached","ErrorExtensions","NotFound","RowItemDisplayAlert","alertColor","useMediatheque","_sendFile","getUrlSigned","urlApi","get","sendFile","axios","put","uploadDataToS3","fichier","isUploaded","useHomeworkFile","_useMediatheque","addFileS3","request","_yield$getUrlSigned","requestFinal","erreur","addFiles","filesAdd","_iterator","_step","startLoadingFile","_createForOfIteratorHelper","Success","hasErrorFile","endLoadingFile","HomeworkFilesAdd","_onSubmit","onAdd","filesAdded","alreadyAttached","_useSelector","isLoadingFile","errorFile","enqueueSnackbar","useSnackbar","FormSchema","Yup","required","getInitialValues","conDvrFicId","formik","useFormik","initialValues","validationSchema","onSubmit","resetForm","_yield$addFiles","setSubmitting","errors","touched","handleSubmit","setFieldValue","isSubmitting","extensions","getFieldProps","attachmentType","FormikProvider","Form","noValidate","autoComplete","UploadMultiFile","showPreview","maxSize","accept","onDrop","acceptedFiles","fileRejections","preview","onRemove","filteredItems","_file","labelFormat","maxFiles","isDragActive","LoadingButton","loading","loadingIndicator","HomeworkTodoErrorSendedMsg","HomeworkSendResult","IsFileRequired","IsOnlineError","IsTypeFileRequired","HomeworkTodoSave","onSaved","setIsLoading","saveContentAuto","CircularProgress","SaveRounded","HomeworkTodoSaveDraft","defaultValue","onSave","timeSaved","valueChanged","useWatch","interval","setTimeout","clearInterval","HomeworkTodoSaveErrorMsg","initError","HomeworkTodoRetrieveDraft","evaluation","onRetrieve","DialogConfirm","onCancel","onConfirm","HomeworkPlagiat","isPlagiat","setIsPlagiat","removePlagiat","HomeworkAlertSave","isSavedOnServer","setIsSavedOnServer","Snackbar","PanelStyle","marginRight","maxCaraterLength","HomeworkTodoPanelEdit","_errors$content","opened","fullScreen","isVisible","managerStudyPlanHomework","useStudyPlanHomework","errorSended","isLoadingSended","_useForm","useForm","resolver","yupResolver","defaultValues","watch","setValue","register","_useForm$formState","getValues","formState","isValid","openConfirm","setOpenConfirm","savedTime","setSavedTime","_useDBEvaluation","homeworkId","setEvaluation","setLoading","isDraft","setIsDraft","_getId","where","equals","toArray","addOrUpate","_evaluation","newId","evaluationKey","update","date","add","unDraft","remove","delete","useDBEvaluation","contentHeight","setContentHeight","_useSelector2","idCache","courseIdCache","barCodeCache","contentCache","applyContentCache","useContentCache","setUseContentCache","hasContentCache","getHomeworkInProgress","updateHomeworkCacheContent","container","getElementById","heightTitle","clientHeight","sendHomeworkInProgress","updatedSended","contentOnLine","isValidFiles","some","_f$fileName$toLocaleL","toLocaleLowerCase","_f$fileName$toLocaleL2","_toArray","extension","isValidOnline","isValidSend","ToolbarFileAttachments","fDateTime","Controller","render","field","fieldState","SendRounded","QuillEditor","simple","FormHelperText","numberOfCaracters","LinearProgress","withoutImage","RowItemDisplayTitle","RowItemDisplayFiles","Edit","join","MeetingContainer","_ref$isVoice","isVoice","modeRead","setModeRead","selectMeeting","MeetingView","onChangeMode","MeetingForm","HomeworkTodoVoice","meetings","getMeetings","isEventMaterial","ScheduleTeacher","meetingCurrent","_event$metadatas$home","Registered","alt","paragraph","duration","PhoneLabel","brandId","brand","phoneNumber","MediaIcon","PdfPersonnalise","PdfSecurises","PictureAsPdf","LibraryMusicRounded","Videos","VideoLibraryRounded","UrlText","Images","Image","ArticleRounded","MediaMenuItem","MediaMenuItemIframe","MediaMenuItemDownload","FileAction","download","downloadImage","downloadUrl","downloadS3","DialogAnimate","scroll","CardMedia","frameBorder","MediaMenuPopover","medias","MediaCarousel","_ref$nbRows","nbRows","carouselRef","settings","dots","arrows","autoplay","slidesToShow","slidesToScroll","rows","rtl","CarouselDotsControlsPagingProps","Slider","ContainerEvaluation","HomeworkTodo","_ref$isEnonceOnly","isEnonceOnly","keyId","tabValue","setTabValue","updateByActivity","HomeworkTodoPanelEnnonce","Tabs","indicatorColor","textColor","newValue","scrollButtons","allowScrollButtonsMobile","Tab","Collapse","in","flex","RootEnnonceStyle","_ref3$medias","mediaView","x","isFiles","RenderContent","view","setView","filesFilterred","CardContainer","getMediaType","StudyPlanDetailsHomework","_chapterItem$homework","_chapterItem$homework2","chapterItem","authorizedModule","useModuleAuthorize","accessibleModules","ModuleType","HomeworkUpdate","dateStatus","ModuleNotAuthorized","HomeworkStepFiles","StudyPlanDetailsLearningICDL","_useLearningICDL","_useAuth","getGenreMasculin","setScore","setError","getICDLInformations","onUrl","getTestICDL","compte","birth_date","birthDate","birth_name","birthPlace","email","first_name","last_name","testId","properties","customId","useLearningICDL","subheader","IllustrationInfo","maxHeightImg","isColumn","StudyPlanDetailsLearningICDLNote","ScoreView","avatar","StudyPlanDetailsContentByType","addLogLearning","fouEfm","proEfm","CardDownload","CardLinkUrl","StudyPlanDetailsControl","boundCourses","getStatus","assilimates","_save","isBlocked","isLocked","StudyPlanDetailsControlCard","dense","alignContent","CheckBoxRounded","course","ListItemButton","updateById","StudyPlanDetailsContent","setIsFullScreen","setOpenSidebar","initHomeworkCacheContent","clearHomeworkCacheContent","handleEndOfRead","z8","applyHomeworkCache","callBack","Container","disableGutters","LockedContent","ToolBarSide","AppBar","bottom","LightboxModalStyles","isRTL","backgroundIcon","iconName","backgroundSize","backgroundPosition","backgroundRepeat","backgroundImage","GlobalStyles","styles","backdropFilter","outline","borderRadiusSm","LightboxModal","images","photoIndex","setPhotoIndex","toolbarButtons","Lightbox","mainSrc","nextSrc","prevSrc","onCloseRequest","onMovePrevRequest","onMoveNextRequest","reactModalStyle","overlay","HelpLightboxModal","selectedImage","setSelectedImage","HelpCardImage","getUrl","image","CardActionArea","CardContent","AccordionStyle","z1","HelpCardTutorial","tutorial","disableRipple","HelpCardTutorials","tutorials","panel","CardStyle","z16","HelpCard","pageview","useTrackerGoogle","page_level_1","page_path","general","help","HelpLinkAllHelps","helpCategoryId","usePageSettings","HelpDrawer","QuillEditorToolbarStyle","fill","stroke","subtitle2","borderColor","focus","FONT_FAMILY","FONT_SIZE","HEADINGS","undoChange","this","quill","history","undo","redoChange","redo","Size","Quill","import","Font","formats","QuillEditorToolbar","isSimple","font","heading","roundUndo","roundRedo","fontStyle","body2","_ref2$id","_ref2$simple","_ref2$maxLength","maxLength","alertInContent","quillRef","imageHandler","input","setAttribute","click","onchange","_input$files$","_quillRef$current","_quillRef$current2","_quillRef$current3","editor","range","fileReader","getEditor","getEditorSelection","makeUnprivilegedEditor","getLength","FileReader","onload","_e$target","imgEvent","img2","insertEmbed","readAsDataURL","modules","useMemo","toolbar","handlers","maxlength","delay","maxStack","userOnly","syntax","clipboard","matchVisual","EditorToolbar","ReactQuill","placeholder","on","getText","toolbarFull","inline","bold","italic","underline","strikethrough","monospace","superscript","subscript","blockType","dropdownClassName","list","unordered","ordered","indent","outdent","center","justify","colorPicker","popupClassName","link","unlink","emoji","embedded","uploadCallback","reject","xhr","XMLHttpRequest","setRequestHeader","FormData","append","send","JSON","parse","responseText","present","opacity","disabledOpacity","hover","minWidth","borderTopColor","borderBottomColor","disabledBackground","fontWeightMedium","fontWeightBold","ExamenFormObjectifSession","_objectifs$filter$","_objectifs$filter$$se","_values$session","objectifs","_props$sessionsLocked","sessionsLocked","_useFormikContext","useFormikContext","setValues","labelType","useExamen","_newSession$epreuves","objGen","newSession","SelectField","ses","ExamenCentreInfosDisplay","ExamenFormValidationSchema","of","ensure","val","isFinite","nullable","Number","isInteger","when","is","ExamenFormInformations","_values$departement3","departements","regions","academies","dateDebutEpreuve","statutsInscription","_values$departement","_values$departement2","dep","ins","ExamenFormEpreuves","_errors$session","_errors$session$epreu","ExamenFormDocument","FileItemMandatory","ControllerField","ExamenFormConfirmation","useBrand","to","ExamenForm","sessionId","setActiveStep","setFiles","_useExamenForm","useExamenForm","errorForm","isLoadingForm","statutsResultat","examens","categoriesGereesEnExterne","steps","exa","ExamenFormValidationSchemaArr","currentValidationSchema","isLastStep","isStopAndSaveStep","_values$session2","isEpreuve","handleBack","isSendAction","Stepper","alternativeLabel","Step","StepLabel","Formik","addOrUpdate","suivi","setTouched","_values$session3","_values$session4","_values$session5","_values$session6","_values$session7","CardActions","pr","pl","pt","FileNameStyle","FileCard","actionFile","isDeleting","setIsDeleting","disableTypography","noWrap","handleDelete","DeleteOutlined","FileAttachment","getIcon","MediaFileAvatar","isRead","getFileThumb","getFileNameDisk","mediaCurrent","FileThumb","iconFile","_wrapRegExp","BabelRegExp","WeakMap","set","_setPrototypeOf","buildGroups","exec","groups","indices","Array","isArray","WorkshopSummons","getWorkshopSummons","appendChild","contentDisposition","_filename","blobURL","responseType","timeout","Accept","match","createObjectURL","useWorkshop","registered","varWrapEnter","animate","staggerChildren","varSmallClick","scale","tap","varMediumClick","TRANSITION","ease","gradient","deg","DISTANCE","TRANSITION_ENTER","TRANSITION_EXIT","varFadeIn","initial","exit","varFadeInUp","varFadeInDown","varFadeInRight","IN","OUT","translateY","translateX","varBounceIn","scaleY","scaleX","MotionInView","variants","threshold","controls","useAnimation","_useInView","useInView","triggerOnce","_useInView2","inView","motion","div","MotionContainer","_ref$open","AnimatePresence","PaperComponent","Paper","ButtonAnimate","_ref$mediumClick","mediumClick","whileTap","whileHover","studyPlanManager","StudyPlanContext","search","searchString","itemType","_studyPlanManager$pha","helperStudyPlan","progressionGeneral","getImageOfCourse","refresh","initialize","_getContractCurrent","modulesCurrent","moduleList","am","Page","paddingTop","Page500","navigation","SeverErrorIllustration","reload","surveys","surveyStandard","isOpenModal","setSurveys","removeSurvey","keyApp","tmpSurveys","setLastSurvey","selectSurveyStandard","addSurvey","k","closeModal","maskSurvey","lisQue","typApp","appId","createSurveyVirtuelle","created","LoginForm","login","errorMessage","isMountedRef","useIsMountedRef","_useSnackbar","closeSnackbar","showPassword","setShowPassword","setAnchorEl","LoginSchema","contractId","password","remember","setErrors","_values$contractId","_values$password","afterSubmit","currentTarget","edge","Help","show","eyeFill","eyeOffFill","RouterLink","PATH_AUTH","resetPassword","LoginTrackerGoogle","loginPageView","SectionStyle","Login","logout","URLSearchParams","accessToken","isValidToken","setSession","app","apiConfig","urlBase","modePlugin","signalRConfig","activate","brandDefaultConfig","googleAnalyticsConfig","REACT_APP_FIREBASE_API_KEY","REACT_APP_FIREBASE_AUTH_DOMAIN","REACT_APP_FIREBASE_DATABASE_URL","REACT_APP_FIREBASE_PROJECT_ID","REACT_APP_FIREBASE_STORAGE_BUCKET","REACT_APP_FIREBASE_MESSAGING_SENDER_ID","REACT_APP_FIREBASE_APPID","REACT_APP_FIREBASE_MEASUREMENT_ID","REACT_APP_AWS_COGNITO_USER_POOL_ID","REACT_APP_AWS_COGNITO_CLIENT_ID","REACT_APP_AUTH0_CLIENT_ID","REACT_APP_AUTH0_DOMAIN","REACT_APP_MAP_MAPBOX","messagesAccess","civilityId","messageFunctionLimitee","ICONS","training","Mail","DateRangeRounded","dashboard","Home","LaptopRounded","PeopleRounded","FeedRounded","SelfImprovementRounded","BusinessCenterRounded","advanced_tools","SvgIconStyle","contact","PhoneRounded","payment","CreditCard","available","EventAvailable","profil","Person","parrainage","ShareLocationRounded","CUSTOM_MENU","ADDACTIVITIES_MENU","activity","isExternalLink","EDUTOOLS_MENU","documents","useSidebarConfig","_getLabelDefaultCateg","_forumActivity$","getUrlParrainage","urlParrainage","setUrlParrainage","photoLibrary","additionalLearnings","forumActivity","getConfig","useCallback","newConfig","sidebarConfig","_item$children","child","Dashboard","config","toolsMenu","AdvancedTools","tmpToolsChildren","lib","idx","unshift","manageAdvancedTools","StudyPlan","WorkshopView","WorkshopUpdate","VirtualClassView","VirtualClassUpdate","notes","historic","internships","InternalShipView","InternalShipUpdate","Agenda","all","unread","school","JobView","Forum","storedValue","localStorage","getItem","listener","storageArea","currentValue","setItem","stringify","isLoadingList","virtualClasses","isFull","isRequired","virtualClassId","startLoadingList","getVirtualClassesSuccess","getVirtualClassSuccess","seminar","countMaxPlaces","countRegistered","supports","setReplay","updateList","_event","viewReplayCount","selectVirtualClassId","selectVirtualClass","toAssist","_state$virtualClass","registerOrCancel","waitingList","openModal","getVirtualClassList","_response$data","VirtualClassListResult","SeminarErrorResult","t1","getVirtualClass","_response$data2","VirtualClassItemResult","registerVirtualClass","onSuccess","_response$data3","VirtualClassRegisteredResult","ClosedContract","Full","WaitingList","updateSeminar","registeredId","cancelVirtualClass","VirtualClassCancelResult","getReplayVirtualClass","_callee5","_response$data4","_url","_context5","ClassilioResult","brands","urlContains","_brands$filter$2","_brands$filter$3","_brands$find","baseUrl","hostname","setBrand","_brands$filter$","brandDetect","domaine","host","brandName","WorkshopStatus","WorkshopListResult","WorkshopDetailResult","WorkshopRegisteredResult","forwardRef","_ref$title","fncPageView","pageContext","sendPageViewEvent","_getConfig","_meunItem","meunItem","_c$children","setHelpCategoryId","Helmet","workshops","workshopId","getWorkshopsSuccess","getWorkshopSuccess","selectWorkshopById","selectWorkshop","getWorkshopList","convertWorkshopToSeminar","getWorkshop","detail","putWaitingListWorkshop","errorDescription","ClosingDate","ErrorPlacespaceAvailable","PlaceSpaceAvailable","registerWorkshop","getLinksPayment","_response$data5","encodeURIComponent","PaymentAddResult","Payment","getMessagesAccess","InformationsContract","_contrat$debtRecovery","_contrat$debtRecovery2","_contrat$debtRecovery3","_contrat$debtRecovery4","_contrat$debtRecovery5","_useAuth2","contrat","informations","debtRecovery","blockingCorrection","blockingTraining","blockingPayment","blockingOvertime","UnBlockTemporary","suspendedTraining","ContractState","Registred","VirtualClassStatus","StudyPlanView","SendingPhase","saveProgress","mediaId","marked","getEvaluation","studyPlanSearch","chapterParent","level","getItemsByReference","startLoadingSended","initErrorFile","endLoadingSended","hasErrorSended","getHomeworkInProgressSuccess","HomeworkInProgressResult","HomeworkSaveContentResult","sended","linkedModules","ModuleGuard","tagManagerArgs","dataLayer","page_type","TagManager","tags","sub_chapter","material_name","material_type","user_id","contract_id","page_level_2","page_level_3","item_list_num","InputField","errorText","rest","_useField","useField","_useField2","meta","_at","at","_at2","renderHelperText","_excluded2","_useField3","_useField4","helpers","selectedValue","_at3","_at4","isError","InputLabel","Select","CheckboxField","_excluded3","_useField5","_useField6","_at5","_at6","_useField7","_useField8","_at7","_at8","_ref$isLoading","_ref$maxWidth","_ref$withoutImage","_ref$disabled","IllustrationMessage","selectMeetingByEvent","removeMeeting","addOrUpdateMeeting","MeetingAddOrUpdateResult","addEvent","convertMeetingToAgendaEvents","updateEvent","cancelMeeting","MeetingCancelResult","removeEvent","eventId","getUrlVisio","_survey","MeetingAccessResult","IconTypeSupport","MusicNote","HelpCenter","LinkSharp","OndemandVideoOutlined","ArticleOutlined","getDateFromTimeStamp","differenceBetweenMinute","dateEnd","differenceInMinutes","isDateValid","isAfterDate","isAfter","isBeforeDate","end","isBefore","fDateMeeting","format","locale","fr","fPeriode","getMonth","fDatePeriode","formatDate","getDay","fDashboardDate","timeCount","startDate","moment","targetDate","diffDuration","diff","totalDays","Math","abs","days","floor","daysms","hours","hoursms","minutes","durations","addTime","minute","addMinutes","addDayss","day","addDays","formatType","fDateFromNovadis","datString","substring","fTime","fDateTimeSuffix","fToNow","formatDistanceToNow","addSuffix","formatAPI","getDateMonthGlissant","month","addMonths","getDateTimeToString","convertStringToDate","getWeekdaysDescriptions","getWeekDays","startOfWeek","endDate","lastDayOfWeek","weeks","getWeekDaysMove","upOrDown","convertMinsToHrsMins","mins","eachWeekOfMonth","year","endOfMonth","eachWeekOfInterval","weekStartsOn","getCurrentDateFr","toLocaleString","timeZone","toDate","getDateLocaleFromFr","dateFr","dateLocale","currentDateFr","addMilliseconds","decoded","jwtDecode","currentTime","now","exp","defaults","Authorization","removeItem","createGradient","color1","color2","PRIMARY","light","dark","darker","INFO","SUCCESS","WARNING","ERROR","GREY","GRADIENTS","success","COMMON","black","contrastText","misc","gradients","chart","violet","blue","green","yellow","red","hoverOpacity","default","active","Grid","Skeleton","mx","_ref$parent","timeoutTracker","inactivityTime","clearTimeout","LogActivity","consoles","setLog","idConnextion","setInterval","expiredTimeValue","dateTimeServer","PhoneInfo","Phone","phoneFormat","Types","StudyPlanReducer","_action$payload$item","_action$payload$item2","refreshPhases","createContext","StudyPlanProvider","_useReducer","useReducer","_useReducer2","dispatchRedux","Provider","StudyPlanSaveProgressResult","change_Chapter_Item","reset_Updated","logoutUser","fileInfo","FileBaseImageOfCourseResult","_view","urlStudyPlanView","urlStudyPlan","Global","Control","StudyPlanResult","getItemsUpdated","uf","updateChapterUpdated","change_StudyPlan","extractHomework","getObjectives","_props$title","_props$disabled","CloseIcon","_meeting$material","allDay","dateStart","convertAgendaEventToMeeting","metadata","timeSlot","phone","isVisio","idVirtualClass","convertObjectifToAgendaEvent","isLate","ToDo","dvr","sup","codBarDvr","TaskUpdateResult","TaskListResult","TaskStatus","i18n","use","LanguageDetector","initReactI18next","init","resources","en","translations","enLocales","de","deLocales","frLocales","lng","fallbackLng","debug","ns","defaultNS","fallbackNS","interpolation","escapeValue","hljs","configure","languages","collapseClick","collapseHover","onToggleCollapse","onHoverEnter","onHoverLeave","CollapseDrawerContext","CollapseDrawerProvider","collapse","setCollapse","savedCollapse","setSavedCollapse","handleToggleCollapse","isCollapse","ProgressBarStyle","pointerEvents","snackbar","ProgressBar","NProgress","showSpinner","LoadingScreen","rotateY","repeatDelay","Infinity","rotate","MainSearchStudent","PageNotFoundIllustration","MainLayout","getStudent","Page404","isLinkDashboard","Outlet","QuestionnaireLayout","useCollapseDrawer","MyAvatar","MAvatar","avatarUrl","objectFit","createAvatar","AccountPopover","_ref$isSmall","isSmall","contractCurrent","MENU_OPTIONS","PersonRounded","linkTo","visible","CalendarTodayRounded","availability","LibraryBooksRounded","CreditCardRounded","PaymentView","PaymentUpdate","VpnKeyRounded","currentSize","truncate","option","ScheduleTeacherEventForm","_selectedEvent$metada3","isOpenMeeting","setIsOpenMeeting","errorRefreshEvent","setErrorRefreshEvent","selectedEvent","_selectedEvent$metada","_selectedEvent$metada2","getSchedulesEventByDateAndMaterial","SheduleTeacherMessage","TimeSlotsFilter","ScheduleType","Mixte","standard","duplicate","rdv","timeSlots","TimeSlotsDisplay","onSelected","hourLimit","AgendaHomeworkForm","_useObjective","useObjective","getHomeworkByEvent","updateObjectiveEvent","eventsToLate","setHomeworkBase","setUpdated","EventSchema","isDateError","isDateMinError","sendingPhase","StudentHourMessage","DesktopDatePicker","minDate","renderInput","TimePicker","ampm","WatchLater","AccessTime","DataUsage","HomeworkStatusRender","Assignment","VerifiedUser","RowItemDisplayComment","multiline","maxRows","DispatcherEventScreen","agendaEvent","Task","DispatchFavorite","DispatchRender","VirtualClass","FavoriteToggleAction","FavoriteType","keyFav","Workshop","Evaluation","AgendaTaskDetail","MeetItem","_getCategoryType","Examens","getCategoryType","MeetsPopover","_ref2$isSmall","selectEvent","dateCurrent","eventsMeet","sortEventsMeet","valueOf","browserFill","disablePadding","historicRdv","AgendaDispatcherEvent","updateConfig","notDisplayMessageHelp","HelpButton","_student$config","pageSettingsContext","helpCategory","helpCategories","HelpRounded","FavoritesPopover","_useFavorite","useFavorite","favorites","load","notificationContent","handleSelect","starFill","orderBy","FavoriteListItem","NotificationListItem","NotificationType","Adresse","tagLabel","setRead","VirtualClassNotificationCancelBySchool","VirtualClassNotificationCancel","VirtualClassNotificationConfirmation","Events","Actualites","DevoirsCorriges","Devoirs","DevoirsEnvoyes","DevoirsRecus","Colis","Medias","Notification","Questions","NovadisImportant","NovadisNormal","TachesMessage","MeetingAbsence","VirtualClassNotificationWaiting","getObservationByType","clockFill","createdDate","NotificationsPopover","connection","countUnRead","onScroll","getMoreNotifications","getNotifications","persist","bellFill","setAllRead","doneAllFill","InfiniteScroll","loader","dataLength","settingItem","getNotificationSettings","AccountShortInfos","StudentHour","msg","getHourAlertMessage","AlertsPopover","_useOvertime","useOvertime","authorized","getOvertimeAlert","_usePayment","usePayment","authorizedPayment","getPaymentAlert","alertList","setAlertList","tmpAlertList","messageLimited","WarningRounded","alert","CircularBaseStyle","CircularValueStyle","CountdownTimer","_ref3$startDate","warningSecond","errorSecond","_ref3$size","_ref3$fontSize","onExpired","_useCountdown","countDownDate","countDown","setCountDown","countInit","getReturnValues","useCountdown","_useCountdown2","seconds","compteur","getColor","colorBase","thickness","padStart","WorkflowUpdated","updatedDate","setUpdatedDate","time","timeOut","off","handleReset","PATH_PAGE","maintenance","useStudyPlanAverage","setChapters","chapterList","WebkitBackdropFilter","DRAWER_WIDTH","ToolbarStyle","Toolbar","DashboardNavbar","onOpenSidebar","showAccountInfo","lg","menu2Fill","numberOfMandatoryHomeworkCorrected","averageScore","Visibility","ListItemStyle","ListSubheader","disableSticky","overline","borderTopLeftRadius","borderBottomLeftRadius","ListItemIconStyle","ListItemIcon","NavListItem","NavItem","isShow","isActiveRoot","matchPath","hasActiveVisibleSub","hasActiveSub","activeRootStyle","selectedOpacity","activeIconStyle","activeSubHeader","activeSubStyle","activeSubBlock","arrowIosDownwardFill","arrowIosForwardFill","unmountOnExit","isActiveSub","transitions","NavSection","navConfig","_ref6$isShow","OneTrust","OneTrustFooter","textDecoration","Faciliti","FACILITI_SRC","scriptAlreadyExists","scriptsList","getElementsByTagName","_scriptsList$i","fs","dataset","applicationIdentifier","head","initFaciliti","VisibilityOff","Footer","mentionLegal","complex","DashboardSidebar","_useSidebarConfig","_useCollapseDrawer","Logo","ArrowForwardIos","ArrowBackIos","onMouseEnter","onMouseLeave","VirtualClassAccess","MeetingTimeCount","isVirtual","isActivate","isStarted","RowItemDisplayDateTime","isLimit","hideHourMessage","SeminarStatus","MeetingTimeCountDisplay","isPhone","Open","MeetingButtonVisio","Videocam","VisoRequiredDisplay","SeminarErrorMessage","OutOfTime","Invalid","Unavailable","SeminarActionType","SeminarActionRegister","Register","SeminarActionCancel","_meeting","VirtualClassReplay","replay","moveInactityTime","useTrackerActivityEvents","playbackId","playbackID","activityId","activityID","isSurvey","handleReplay","WorkshopPaymentForm","leftToPay","setChecked","formPayment","setFormPayment","getFormatCurrency","ConfirmationNumber","ConditionsGeneralesCard","Lock","SeminarActionPayment","WorkshopRegister","VirtualClassRegister","VirtualClassReplayVideo","loadSurvey","logReplay","SeminarButtonRender","isReplay","SeminarType","RegisterWaitingList","VirtualClassForm","_virtualClass$meeting","_virtualClass$meeting2","_virtualClass$meeting3","_virtualClass$meeting4","PersonalVideoOutlined","SeminarStatusDisplay","meetingState","dateLimit","Present","RowItemDisplayAnimateur","Notes","CheckCircleSharp","Done","CalendarToday","MediasView","isDisabledRegister","currentMedias","RowItemDisplayMedias","VirtualClassDetails","handClose","WorkshopCreditView","creditBalance","WorkShopForm","controlCheckCGV","isRegister","isFinished","RowItemDisplayLocation","place","RowItemDisplayTeacher","RowItemDisplayPayment","NotesOutlined","WorkShopDetailInfos","public","utils","program","BubbleChart","EventNote","SquareFoot","WorkshopDetails","ChatBot","enseignes","space","getServices","chatBotScript","chatBot","hideChatBot","dyduAfterLoad","_window","dydu","_contract$brand","_dydu$ui","_dydu$ui2","_contract$training","_contract$brand2","_contract$brand3","_contract$training2","_contract$bills","enseigne","valueEnseigne","ens","ui","toggle","setRegisterContext","registrationDate","debitAmount","bills","_invoice$scheduleNext","_invoice$scheduleNext2","vpcBills","bill","accountingJournal","invoice","scheduleNext","paymentChoice","teaser","WorkflowReconnecting","WelcomeCallPopup","WelcomeCall","notDisplayWelcomeCall","setNotDisplayWelcomeCall","openQuestion","setOpenQuestion","timeoutOut","MessageForm","AttendanceTrackingPopup","AttendanceTracking","_useAttendanceTrackin","delaySecond","relance","attendanceTracking","setAttendanceTracking","dayOfWeek","getHours","getMinutes","dateOff","setTime","AttendanceTrackingLoaded","onHere","AttendanceTrackingValidated","useAttendanceTracking","hour","HubMessageState","_useHubConnection","connect","HubConnectionState","Disconnected","Reconnecting","WorkflowVersion","isChangeVersion","currentVersion","parseInt","setIsChangeVersion","useVersion","SurveyStepper","isValidItem","setIsValidItem","_useSurvey","useSurvey","onMove","categoryList","onChangeOption","onChangeOptionTextRep","onChangeChecked","save","isErrorSurveyItem","_useSurveyStepper","getCountStep","accumulateur","valeurCourante","surveyList","onStepBack","prevActiveStep","onStepNext","getSurveyStep","useSurveyStepper","stepMax","surveyItemActif","arrowIosBackFill","SurveyCategoryCard","isRegroupement","SurveyInput","onChangeOptionText","onValid","MobileStepper","nextButton","backButton","SurveyFormDialog","hideBackdrop","SurveyContainer","isStepper","VirtualClassSurveyAfterLive","setSurvey","surveyMandatory","relanceOfNumber","classeVirtuelle","vc","VirtualClassSurveyAfterReplay","SurveyRelance","surveysLoaded","sondages","aDate","bDate","SurveyStepperStandard","SurveyStandard","PostMessageStudyPlan","postMessage","useExamenInscriptionPopup","objectifSAY","dateExamenEnvisagee","saisieNonObligatoire","setSaisieNonObligatoire","saisieObligatoire","setSaisieObligatoire","objectifOK","setObjectifOK","registrationMissing","setRegistrationMissing","_useState9","_useState10","_useState11","_useState12","setMandatory","closingDate","dateInscription","miFormationDepassee","nbJours","round","checkDatesContrat","_objectif$sessions","_objectif$periodes","_objectif$periodes2","objectif","periodeInscription","Session","checkObjectif","_e$statutInscription","managePopup","examenCreateInterne","onRegister","ExamenInscriptionPopup","_getLabelCategoryObje","_useExamenInscription","examenLabel","StudyPlanDetailsTrackerGoogle","_managerChapterItem$s10","_managerChapterItem$s11","_managerChapterItem$s5","_managerChapterItem$s6","_managerChapterItem$s7","_managerChapterItem$s8","_managerChapterItem$s9","VirtualClassTrackerGoogle","WorkshopTrackerGoogle","LANGS","systemValue","enUS","deDE","frFR","useLocales","_useTranslation","useTranslation","translate","langStorage","onChangeLang","newlang","changeLanguage","currentLang","_lang","allLang","language","AgendaTrackerGoogle","_useLocales","MeetingTrackerGoogle","account","useExamenRecupResultat","dateLastView","setDateLastView","today","differenceInDays","ExamenRecupResultatPopup","_useExamenRecupResult","MainStyle","APP_BAR_MOBILE","APP_BAR_DESKTOP","DashboardLayout","isControlOnly","useAxiosControl","elt","ScheduleTeacherTrackerGoogle","PageSettingsProvider","GuestGuard","isAuthenticated","Navigate","AuthGuard","requestedLocation","setRequestedLocation","OvertimeForm","choices","flexWrap","numberOfMonths","OvertimeProposed","setSelected","overtimes","OvertimeStatus","PaymentForm","PaymentFormType","overtime","OvertimeCurrent","Overtimes","Current","HeaderBreadcrumbs","links","StudyPlanSearchDetails","_useStudyPlan","StudyPlanSearch","StudyPlanActions","ExamenCreate","_useExamen","subHeader","communStyles","StyleSheet","subtitle1","colorGray","alignCenter","noBorder","borderBottomWidth","table","tableHeader","tableBody","tableRow","gridContainer","col2","col4","col8","col6","mb4","mb8","mb40","mb20","timelineDot","timelineDotEmpty","borderWidth","AttendanceReportHeader","View","fixed","source","Text","footer","AttendanceReportFooter","AttendanceReportInformation","AttendanceReportPersonnal","_report$student","_report$student2","_report$contract","_report$student3","_report$student3$addr","_report$student4","_report$student4$addr","_report$student5","_report$student5$addr","_report$student6","_report$student6$addr","_report$student7","_report$student7$addr","_report$contract2","_report$contract3","_report$contract4","_report$contract5","_report$contract6","_report$contract6$tra","_report$contract7","_report$contract7$tra","_report$contract8","_report$contract8$tra","_report$contract9","_report$contract9$tra","_report$contract9$tra2","_report$contract10","_report$contract11","_report$contract12","_report$contract12$tr","report","male","address","wayNumber","wayName","postalCode","city","countryName","partner","hoursReport","tableCell_1","tableCell_3","timelineItem","timelineSeparator","timelineConnector","timelineConnectorNone","mt4","AttendanceReportWeek","detailsOfWeek","lastDay","getFirstRowCol","firstConnection","_item$detailHours$fin","attendance","getCol","detailHours","family","fonts","AttendanceReportPage","Document","AttendanceReportView","_useAttendanceReport","setWeeks","formatTimeHHmm","timeSplit","getAttendance","_details","authorization","merge","firstDateEachWeekOfMonth","firstDate","weeksCurrent","firstDateOfWeek","getWeek","detailHour","generatePdfDocument","blob","pdf","toBlob","useAttendanceReport","PDFViewer","AttendanceReportLandingPage","_useParams","useParams","page404","ExamenInscriptionAdd","categoriesGereesParSAY","SubCardStyle","z12","defaultCategoryLabels","labelExamSAY","labelExamExterne","examenCreate","useExamenFormGestionInterne","getExamen","_exa$statutInscriptio","_student$address","_student$address2","_student$address2$pos","department","departmentCode","changeDepartment","ExamenFormPeriode","_values$periode3","labelExamen","filteredPeriodes","allowRegistration","_values$periode","_values$periode2","newPeriode","infosPeriode","ExamenPrerequis","ExamenFormGestIntPeriodeValidationSchema","ExamenFormGestIntSessionValidationSchema","ExamenFormObjectivePlanning","datExaEnv","examenObjective","ObjectiveParamsForm","onSaveSuccess","newDatExaEnv","updateDateExamenEnvisagee","amendmentId","dateEnvisagee","addWithoutSave","lockOnSave","disableStartEndDates","skipPopupGenerate","closeOnModifyPeriode","ExamenFormSessionInterne","_values$session8","_values$session9","_values$session10","_values$session11","_values$session12","filteredSessions","listeSessions","nbPlacesRestantes","estComplete","pluriel","_infosSession$epreuve","infosSession","ExamenFormGestionInterne","_useExamenFormGestion","backToExamens","formDateEnvisagee","ExamenCreateGestionInterne","examAlreadyExists","disableAddExamen","labelCategoryObjectif","Loadable","Component","isDashboard","Suspense","fallback","Router","useRoutes","element","ResetPassword","VerifyCode","ChangePassword","LandingStudyPlan","MentionLegal","Contact","StudyPlanDetails","StudyPlanHomeworks","Overtime","StudyPlanSkills","TranscriptOfStudyNotes","Historic","Internships","InternshipCreate","ExamenUpdate","Articles","Article","Jobs","Job","FavoriteList","VirtualClassList","WorkshopList","StudyPlanPlanDocuments","StudyPlanTools","Message","StudentAccount","LogoOnlyLayout","Maintenance","LandingSurveyPage","lazy","pxToRem","responsiveFontSizes","fontWeightRegular","caption","letterSpacing","textTransform","button","xl","ICON_SMALL","ICON_LARGE","ICON","SvgIcon","ICON_SIZE","CheckedIcon","IndeterminateIcon","ComponentsOverrides","MuiFab","defaultProps","styleOverrides","extended","Fab","MuiTab","borderTopRightRadius","labelIcon","wrapper","textColorInherit","MuiTabPanel","MuiTabScrollButton","MuiChip","deleteIcon","closeCircleFill","colorDefault","outlined","avatarColorInfo","avatarColorSuccess","avatarColorWarning","avatarColorError","MuiCard","MuiCardHeader","titleTypographyProps","subheaderTypographyProps","MuiCardContent","MuiMenuItem","Menu","MuiGrid","MuiLink","MuiInputBase","MuiInput","MuiFilledInput","MuiOutlinedInput","Input","MuiRadio","svg","Radio","MuiBadge","dot","MuiListItemIcon","MuiListItemAvatar","MuiListItemText","Lists","MuiTableRow","MuiTableCell","borderBottomRightRadius","stickyHeader","MuiTablePagination","borderTop","selectIcon","Table","MuiPaper","elevation","standardStyle","filledStyle","outlinedStyle","MuiAlert","iconMapping","infoFill","alertCircleFill","checkmarkCircle2Fill","alertTriangleFill","standardInfo","standardSuccess","standardWarning","standardError","filledInfo","filledSuccess","filledWarning","filledError","outlinedInfo","outlinedSuccess","outlinedWarning","outlinedError","MuiSwitch","thumb","track","switchBase","MuiSelect","IconComponent","ExpandMoreRoundedIcon","MuiButton","sizeLarge","containedInherit","containedPrimary","containedSecondary","containedInfo","containedSuccess","containedWarning","containedError","outlinedInherit","textInherit","MuiRating","emptyIcon","iconEmpty","sizeSmall","Rating","MuiDialog","z24","paperFullWidth","MuiDialogTitle","MuiDialogContent","MuiDialogActions","MuiAvatar","MuiAvatarGroup","MuiSlider","markLabel","valueLabel","MuiDrawer","modal","MuiStepConnector","line","MuiTooltip","tooltip","arrow","MuiPopover","MuiSvgIcon","fontSizeSmall","fontSizeLarge","MuiCheckbox","checkedIcon","indeterminateIcon","MuiDataGrid","MuiGridMenu","MuiGridFilterForm","MuiGridPanelFooter","DataGrid","MuiSkeleton","animation","MuiTimelineDot","MuiTimelineConnector","Timeline","MuiTreeView","defaultCollapseIcon","minusSquareOutline","defaultExpandIcon","plusSquareOutline","defaultEndIcon","closeSquareOutline","MuiTreeItem","iconContainer","TreeView","varLow","varHigh","MuiBackdrop","Backdrop","MuiSnackbarContent","MuiLinearProgress","bar","colorPrimary","buffer","Progress","MuiContainer","MuiAccordion","MuiAccordionSummary","expandIconWrapper","MuiIconButton","MuiTypography","MuiPaginationItem","textPrimary","outlinedPrimary","Pagination","styleContained","MuiButtonGroup","ButtonGroup","MuiBreadcrumbs","Breadcrumbs","MuiAutocomplete","Autocomplete","MuiFormControlLabel","MuiFormHelperText","MuiFormLabel","ControlLabel","MuiToggleButton","ToggleButton","MuiLoadingButton","LIGHT_MODE","DARK_MODE","createShadow","transparent1","transparent2","transparent3","createCustomShadow","transparent","shadows","ThemeConfig","_useSettings","useSettings","themeDirection","themeMode","themeOptions","createTheme","componentsOverride","StyledEngineProvider","injectFirst","ThemeProvider","CssBaseline","GlobalThemeStyles","boxSizing","html","WebkitOverflowScrolling","MozAppearance","WebkitAppearance","textarea","WebkitFilter","RtlLayout","dir","cacheRtl","createCache","stylisPlugins","rtlPlugin","compat","CacheProvider","ScrollToTop","scrollTo","GA_MEASUREMENT_ID","GoogleAnalytics","gtmId","SnackbarStyles","SnackbarIcon","NotistackProvider","CloseSnackbarAction","SnackbarProvider","maxSnack","preventDuplicate","autoHideDuration","iconVariant","ThemePrimaryColor","defaultTheme","setColor","ThemeLocalization","BaseOptionChartStyle","ABTasty","ErrorFallback","resetErrorBoundary","errorLocation","excludeErrors","App","isInitialized","ErrorBoundary","FallbackComponent","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","HelmetProvider","ReduxProvider","PersistGate","LocalizationProvider","dateAdapter","AdapterDateFns","SettingsProvider","HubContextProvider","HashRouter","AuthProvider","navigator","serviceWorker","ready","registration","unregister","getInit","dateCreated","_ref$type","News","isToolbarSide","stopPropagation","preventDefault","removeFavorite","addFavorite","Courses","starOutline","getMessagesSuccess","addQuestionSuccess","getQuestionSuccess","getServicesSuccess","updateRead","getLabels","getMessages","pageSize","MessageListResult","MessageItemResult","addQuestion","formData","_question","MessageAddResult","themeId","toggleReadMessage","ServiceListResult","_homeworkBase$homewor","withoutColor","getColorsStatus","cp","getColorsIconStatus","hexa","baseURL","AXIOS_FULL_READONLY_MESSAGE","disConnect","interceptors","Survey","_error$response","_error$response$confi","_error$response2","_error$response3","_error$response4","_error$response6","_error$response5","errorMsg","reqInterceptor","resInterceptor","eject","deactivateHomeworkCache","ObjectiveResult","ObjectiveSaveResult","ObjectiveCalculateResult","ObjectivePlanningAskUnlockResult","calculateInfos","getObjectiveSuccess","updateCalculateInfos","updateDateAskUnlock","dateAskUnlock","planningJson","objectivePlanning","eventList","_homework$homeworks","extractDateBad","lock","daysWorking","periodesOff","createObjective","_interval","_jalons","jalons","saveObjective","askUnlockObjective","_ref$moreLink","moreLink","MBreadcrumbs","isString","categoryObjectif","getInscriptionExamenSAY","insObjectifSAY","insExamenSAY","etatsInscription","objectifsGeresParSAY","objectifsGeresEnExterne","startLoadingForm","hasErrorForm","getLoadSuccess","_state$objectifsGeres","_state$objectifsGeres2","objectifInscriptionAnticipee","listeObjectifsSAY","from","Map","updateDatExaEnv","getExamens","form","onLoad","_useScreenConfig","setIsloading","iframeRef","mediaUrl","setMediaUrl","scrolling","allowFullScreen","LearningResultResponse","PHOTO_LIBRARY_ID","FORUM","learnings","getLearnings","_action$payload3","_x$id","_y$id","_y$properties","_y$properties2","updateLearning","updateLearnings","_learning","lastAccess","item1","item2","silence","ChapterItemCard","_ref$view","_getStudyPlanItemLabe","isIndicatorLocked","isUpdated","isSelected","selectedItemRef","Sync","CoefficientChip","StudyPlanItemScore","CardReference","_media","ChapterItemHomeworkNote","studyPlanItemHomework","_ref$buttonType","InsertInvitationRounded","ScheduleTeacherEventsForm","PaperStyled","setMinutes","PageSettingsContext","getDateServer","dateStartActivateVisio","dateEndActivateVisio","currentDate","isRefresh","notif","VirtualClassNotificationPlaceOfFree","CamCoaAbouti","CamCoaPriseContact","CamCoaRepondeur","CamCoaNeRepondsPas","CamCoaNumeroErrone","CamCoaAbandonne","EvaluationEnonceUnlock","CURRENCIES","_context$student2","_context$student4","_context$student5","_context$student6","_context$student7","_context$student11","_context$student12","_context$student13","AuthContext","_context$student","_context$student3","_context$student3$con","contracts","authorizeDownload","InProgress","showHourAlert","_getContractCurrent$b","_context$student8","_context$student8$add","_context$student9","_context$student9$add","_context$student10","_context$student10$ad","zoneGeographic","currency","UploadIllustration","PRIMARY_MAIN","PRIMARY_DARK","PRIMARY_DARKER","xmlns","viewBox","x1","x2","y1","y2","offset","stopColor","stopOpacity","fillRule","strokeWidth","cx","cy","rx","ry","strokeLinecap","MaintenanceIllustration","SentIcon","managerFile","fileNameDisk","_x12","_x13","mediaType","SocialNetworkType","LogConnectionUpdateResult","setErrorDownload","getCall","_x17","_callee9","_context9","getCallExterne","_x18","_callee10","_context10","_x14","_callee6","_context6","_x15","_x16","_callee8","_context8","getAvatar","_callee7","_context7","urlS3","exists","isCloseSidebar","setCloseSidebar","setDebugMode","setVideoPlay","play","dateServer","debugMode","isVideoPlay","setting","setSetting","diffTime","MeetingErrorMessage","ErrorDate","ErrorDouble","ErrorMaterial","ErrorTeacherBusy","_meeting$dateStart","_meeting$dateEnd","_ref$homework","MeetingUpdate","PHONE","VISIO","typeDefault","filteredTypes","updateMeetingType","PermContactCalendar","RowItem","MeetingTypeRadio","subTitle","MeetingType","MeetingPhoneMessage","MeetingVisioMessage","MeetingAlertMessageOral","getFavoritesSuccess","addFavoriteSuccess","removeFavoriteSuccess","addFavoriteNotification","removeFavoriteNotification","getFavorites","FavoriteListResult","FavoriteAddResult","showNotification","notifTxt","notifTimeout","sublink","ROOTS_AUTH","ROOTS_DASHBOARD","loginUnprotected","registerUnprotected","changePassword","verify","comingSoon","pricing","about","faqs","page500","new","historicSupport","internshipCreate","examenAdd","profile","newUser","editById","eCommerce","shop","productById","newProduct","postById","newPost","edit","FORMAT_IMG","FORMAT_VIDEO","FORMAT_WORD","FORMAT_EXCEL","FORMAT_POWERPOINT","FORMAT_PDF","FORMAT_PHOTOSHOP","FORMAT_ILLUSTRATOR","getFileType","fileUrl","getFileName","lastIndexOf","getFileFormat","ImageRounded","PictureAsPdfRounded","formatFileSize","decimalPoint","dm","pow","toFixed","mediaFiles","hash","getMediaFiles","updateMediaFiles","updateMedias","getAllMediaFiles","CategoryType","MediaFileListResult","logMediaFile","fData","number","numeral","_groupBy","dangerouslySetInnerHTML","__html","css","groupBy","regroupementId","group","SurveyGroupCard","SurveyContainerInput","SurveyCategoryCardTitle","regroupementTitre","TableHead","TableCell","optionList","reponse","align","TableBody","TableRow","RootListItem","coach","LocationOn","AlertErrorMessage","_ref14","_ref15","startsWith","getHomeworks","getHomework","getStudyPlanItemHomeworks","studyPlanItemHomeworkBase","MediaFileHeader","MediaFileAction","video","setVideo","downloadMedia","DropZoneStyle","cursor","_ref3$showFilesSelect","showFilesSelected","onRemoveAll","hasFile","_useDropzone","useDropzone","validator","_other$maxFileNameLen","_file$name","maxFileNameLg","maxFileNameLength","getRootProps","getInputProps","isDragReject","ShowRejectionItems","_getFileData","getFileData","fileFill","ListItemSecondaryAction","closeFill","PlaceholderStyle","easing","easeInOut","shorter","UploadAvatar","multiple","roundAddAPhoto","idEvent","createSaveRequest","requestSave","appTyp","reponses","questionId","valueText","QuestionType","Rad","Rat","Chk","questionType","textRep","titre","fait","modeLecture","categoryId","isErrorSurvey","_step2","isControl","_iterator2","getElementsByClassName","getComputedStyle","_step3","_iterator3","Mem","every","Txt","err","unChecked","notValue","textPre","optionId","SurveySaveResult","isCategoryError","SurveyInputCheck","FormGroup","SurveyInputMemo","isMemo","htmAdd","minRows","SurveyInputRadio","RadioGroup","SurveyInputRadioRegroupement","SurveyInputRating","objectOptions","fromEntries","rate","optionSelected","HoverRating","OptionTextPrecision","Star","controlError","useVisioSurvey","onVisio","surveyClaVir","_ref$isVirtual","showMeetingAlert","handleVisio","OutOfTimeEnd","Ended","WaitingTeacher","ownerState","styleFilled","styleOutlined","styleGhost","_ref2$color","_ref2$variant","convertWorkshopToAgendaEvents","isInscrit","heureDebut","heureFin","nomAtelier","nombreDePlacesMaxi","nombreInscription","professeur","convertWorkshopStatus","idStatut","isInWaitingList","Display","isDocument","containsFiles","descriptif","nombreHeure","dateLimiteInscription","lieu","coutEnEuros","coutEnCredit","prixUnitaire","txtMethode","txtObjectifs","txtProgramme","txtPublic","txtTheme","txtMateriel","convertTaskToAgendaEvent","ResultResponse","ResultDetailResult","tasks","getTasksSuccess","selectedTask","addOrUpdateTask","TitleIsRequired","DateStartIsRequired","DateEndIsRequired","removeTask","ThumbStyle","SurveyCardInformation","_ref2$isLinkDashboard","convertObjectiveEvent","notDvr","enable","lockBy","_useStudyPlanHomework","eventsLate","setEventsLate","addAgendaEvent","homeWorkToDoList","homeWork","convertEvent","convertObjectiveEventToAgendaEvent","_getHomeworks3","_getHomeworks4","homeworkDoList","jalonCount","_request$daysWorking2","eventsInAgenda","homeworkDoCount","updateEventsObjective","calculate","_getHomeworks","_getHomeworks2","_request$daysWorking","saveCalculatedObjective","eventTmp","eventLate","eventAgenda","_objective$events","newList","unlockObjective","currentContract","RenderRegisteredStatus","Absent","isMounted","_ref$small","_ref$labelButton","labelButton","LiveHelp","preReqPouDvrRea","preReqNbJouSta","preReqNotDosProMin","valuePourcentageDevoirsRealises","valueNombreJoursStage","valueNoteDossierProMin","examLabel","CustomCircularProgress","ListItemCardMobile","coef","ListItemCardPC","StudyPlanChapterAverageList","extractInfo","base","_createElement","TableContainer","StyledTab","TabsContainer","itemsIncludeDo","itemsExcludeDo","existInclude","TabIndicatorProps","CheckCircleOutlineRounded","HighlightOffRounded","StudyPlanChapterAverageListContainer","setItems","manager","useStudyPlanChapter","_manager$getItems","itemsFilter","getItems","averageType","StudyPlanItemScoreType","Include","IncludeDo","ExcludeDo","AgendaEventListResult","Do","_ref$skillIds","skillList","Verified","SkillDrawer","SkillCardList","SurveyResult","BadRequest","_getSurveyItemAsync","CannotFindSurvey","nextSteps","ListStyle","viewItemCard","SettingsContext","setStart","saved","setSaved","_useSurveyStepperStan","setSteps","findNextStep","getNextStep","stepIndex","findIndex","fnCallback","stepNext","conditions","idQuestion","arr","useSurveyStepperStandard","isErrorCategory","ContainerInput","PageTemplateType","PageTemplateResult","_action$payload$stude","clearData","StudentResult","resizeAvatar","_ref$mandatory","InfoOutlined","_touched$session","_touched$session2","_errors$session2","_errors$session3","handleRemove","idCurrent","nom","taille","nomDisk","typeMime","MessageErrorMsg","ObservationIsRequired","ServiceIsRequired","SubjectIsRequed","_params$subjects4","_params$services2","_params$services2$fin","_params$subjects5","_params$subjects5$fin","_params$subjects6","_ref2$params","_useModuleAuthorize","QuestionUpdate","QuestionUpdateFilter","servicesFiltered","useServices","MessageFormSchema","_params$subjects","_params$subjects2","subject","keyService","handleDrop","sortedSubjects","sub","observationTheme","observationSubject","_params$services","_params$subjects3","serviceCurrent","service","AlertDescription","descriptionServices","StudentUpdateAction","StudentUpdateResult","StudentChangePasswordResult","StudentSignInResult","StudentPasswordResult","templates","template","getPageTemplatesSuccess","getPageTemplates","_methode","setConnection","setConnectionState","setIsStarted","connectionId","_connect","accessTokenFactory","transport","HttpTransportType","WebSockets","skipNegotiation","newConnection","HubConnectionBuilder","withUrl","withAutomaticReconnect","configureLogging","LogLevel","build","onreconnecting","Disconnecting","onclose","onreconnected","Connected","methode","methodName","_len","args","_key","_args","PRIMARY_COLOR","themeColor","themeStretch","onChangeDirection","onChangeColor","onToggleStretch","colorOption","setSettings","tmpText","_metadatas$","_ref$metadatas","setTeacher","handleTeacher","TimeSlotTeacher","Fragment","Autres","LinkRounded","_meeting$homework2","handleModal","MeetingStatusDisplay","_meeting$homework","_ref$isLinkToCourse","isLinkToCourse","addHours","isCreating","DesktopDateTimePicker","trash2Fill","adresse","SpecificNeedResult","BSE_BSP_RADIO_BTN","listeBesSpeDeclares","aucunBesSpe","examenBesSpe","pedagogiqueBesSpe","radioButton","aucunBesSpeSauvegarde","alerteSuppressionBSE","alerteSuppressionBSP","getSpecificNeeds","_state$examenBesSpe2","_state$pedagogiqueBes2","_state$aucunBesSpe","_state$examenBesSpe3","_state$pedagogiqueBes3","_state$aucunBesSpe3","aucunBesoin","pedagogiques","pedagogique","_state$examenBesSpe","_state$pedagogiqueBes","isExamen","isPedagogique","existingBesSpe","besSpe","getStudentDeclaredSpecificNeeds","_state$aucunBesSpe$id","_state$aucunBesSpe2","changeRadioButton","updatePedagogies","_state$pedagogiqueBes4","updateExamens","_state$examenBesSpe4","useAppStart","loadData","_student$contracts","getSchedulesEvent","getMeetingsEvent","classes","getTaskList","elearnings","resetStudyPlan","JWTReducer","_state$student","_state$student2","_state$student3","_state$student4","phone1","phone2","isChangePassword","dayWeek","timeStart","timeEnd","keyAppId","dispatchSlice","_state$student5","_student","authorize","unAuthorized","Reconnected","Initial","loadAvatar","Logout","responseReset","EmailIncorrect","ts","sign","passwordNew","passwordConfirm","updateProfile","_form$student$contrac","AddressError","PersonnalDatas","Password","_state$student6","IdConnection","pastTimeMinute","Connection_Id","saveAvatar","_callee11","_context11","Config","MeetingListResult","SkillStatusIndicator","iconColor","labelColor","SkillStatusType","Acquired","PartialAcquired","BeingEvaluated","NotAcquired","Lens","SkillCard","skill","studyPlanItemHomeworks","homeworkKeys","myKey","TimeSlotsWeekDisplay","setIsError","WeekDaysControl","dates","_events$filter$","slots","endTime","startTime","accumaleur","_ref2$date","initWeekDaysControl","setDates","handleMove","materialId","teacherList","Oral","_materials$","materials","setMaterialId","selectedTeacher","eventsFiltered","eventsCurrent","eventsFind","metaEvent","_teacher$selected","isDuplicate","_w$metadatas$material","_w$metadatas$teacher","_teacher$selected2","_w$metadatas","materialsSorted","_teacher$selected3","_usePerson","Gender","getGender","MALE","FEMALE","UNDEFINED","usePerson","_meeting$teacher","_meeting$teacher2","teacherLabel","SimpleBarStyle","SimpleBarReact","userAgent","clickOnTrack","_ref$dense","scoreCount","PRIMARY_NAME","INFO_NAME","SUCCESS_NAME","WARNING_NAME","ERROR_NAME","getFirstCharacter","capitalize","getAvatarColor","_ref2$withoutImg","header","_ref$color","Separator","LinkItem","_last","_ref2$activeLast","activeLast","currentLink","listDefault","listActiveLast","breakpoint","hiddenUp","hiddenDown","fileDownload","convertVirtualClassToAgendaEvent","selectedRange","getSchedulesEventSuccess","getOtherEventsSuccess","selectEventByKey","allEventsWithoutObjective","deleteEvent","enabled","dateAPI","agendaMap","virtualClassList","_response$data6","AgendaListItems","module","SORT_OPTIONS","TYPE_OPTIONS","DirectionType","JobFilter","setFilter","onSearch","searchQuery","SearchRounded","getUrlType","urlReturn","contractLate","contractSchedule","workShop","_getLinkPayment","EmptyContentLarge","SearchStyle","OutlinedInput","SupportToggleGroup","ToggleButtonGroup","borderStyle","SupportToggleButton","STUDY_PLAN_ITEM_TYPE_FILTER","StudyPlanSearchControl","searchText","supportType","getSupportTypes","typeString","supportTypes","newTypes","startAdornment","searchFill","onKeyPress","charCode","autoFocus","newSupportTypes","_filter$searchText","itemTypeTab","_filter$supportType","_filter$supportType2","_getTypeSupport","StudyPlanSearchPopover","chapterItemList","setChapterItemList","StudyPlanUpdatedPopover","_ref$chapterItemUpdat","syncFill","Settings","LocalActivity","Filter","TagType","arrObject","groupingKeyFn","groupby","datas","entries","useStyles","makeStyles","selectedDay","_ref2$lockOnSave","_ref2$disableStartEnd","_ref2$skipPopupGenera","_ref2$closeOnModifyPe","objCalcInfos","setObjCalcInfos","handleDaysWorkingChange","currentIndex","indexOf","newChecked","splice","closePopupGenerate","closeConfirm","infos","calculateSuccessHandler","DateRangePicker","startText","endText","handleChangeDate","startProps","endProps","DayPicker","selectedDays","onDayClick","selectedIndex","DateUtils","isSameDay","localeUtils","MomentLocaleUtils","newObjInfos","ArticleResult","ArticlesResult","articles","getArticlesSuccess","Set","getArticlesInitial","getMoreArticles","getArticleSuccess","myArticle","categoryUrl","getRecentArticlesSuccess","getAllArticle","sortName","getArticle","mails","getLabelsSuccess","getMailsSuccess","getMailSuccess","getMail","mailId","isLoadingMore","jobs","startLoadingMore","getJobsSuccess","_action$payload$reque","pageIndex","clearJobs","getJob","getJobSuccess","getJobs","totalCount","totalPages","getDetailJob","currentOvertime","Reject","Validated","extractItems","phaseId","unityId","chapterId","_ph","_unityChpt$chapters","ph","unityChpt","chapterSelected","getAllItems","_studyPlanManager$pha2","isValidSurvey","itemsUpdated","hChapterColorProgression","listStyle","DotStyle","appendDots","customPaging","setExamen","InternshipListResult","InternshipAddResult","internshipTypeOfLocation","getIntershipListSuccess","typeOfLocation","addInternshipSuccess","selectInternship","_intership$signataire","_intership$gestion","intership","referentIsSignataire","signataire","site","referent","isGestion","gestion","initGestionaire","function","complement","toUpperCase","eventsJson","computeInternshipEventsIds","country","countryCode","getInternshipList","addInternship","moduleLocked","useModuleGuard","getColorsProgression","toDo","_chapter","setProgress","unLockFirstLocked","parameters","unlockLevelList","unlockLevel","setLock","parameter","numEnvMax","isHomeworkDo","intChapterProgress","coefficientSummary","scoreSummary","_chapHomework$homewor","chapHomework","homeworksCorrected","extractItem","cleanSearchString","StudyPlanItemTypeSearchString","unityCode","chapterCode","subChapterCode","getFirstSubChapterWithItems","extractDataType","itemHomework","itemMedia","StudyPlanContextTypeControl","selectedEventId","getEventsSuccess","createEventSuccess","newEvent","updateEventSuccess","deleteEventSuccess","selectRange","createEvent","getDashboardJobs","DSC","term","jobTypeId","mask","WebkitMask","_ref4$isColumn","_ref4$maxHeightImg","row","secondaryAction","setServicesFiltered","getServicesFiltered","InfoStyle","NoResponseStyle","SkeletonLoad","_ref5$questionAnswer","answer","MessageContentItem","_message$fromDetails","_message$fromDetails2","avatarImg","fromDetails","ser","keyOfCourse","StudyPlanItemEventPopover","schedule","taskOfCourse","Todo","isMedia"],"mappings":"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","file":"static/js/main.b5643f7a.chunk.js","sourcesContent":["import internal from 'stream';\r\nimport { boolean } from 'utils/mock-data/boolean';\r\n\r\nexport type ExamenState = {\r\n examens: Examen[];\r\n objectifs: ObjectifGeneral[];\r\n regions: RegionAdministrative[];\r\n departements: Departement[];\r\n academies: Academie[];\r\n statutsInscription: StatutInscription[];\r\n statutsResultat: StatutResultat[];\r\n statutsEpreuve: StatutEpreuve[];\r\n etatsInscription: EtatInscription[];\r\n categories: CategorieObjectif[];\r\n dateExamenEnvisagee: Date | null;\r\n pourcentageDevoirsRealises: number;\r\n nombreJoursStage: number;\r\n noteDossierProMin: number;\r\n examen: Examen | null;\r\n isLoading: boolean;\r\n error: any;\r\n isLoadingForm: boolean;\r\n errorForm: any;\r\n objectifsGeresParSAY: ObjectifGeneral[]; // Certifications et Titres pro (ou tout objectif avec GetInsInt à 'O')\r\n objectifsGeresEnExterne: ObjectifGeneral[]; // Examens et Concours (ou tout objectif avec GetInsInt à 'N')\r\n categoriesGereesParSAY: Array; // Certifications et Titres pro (ou toute catégorie des objectifs avec GetInsInt à 'O')\r\n categoriesGereesEnExterne: Array; // Examens et Concours (ou toute catégorie des objectifs avec GetInsInt à 'N')\r\n objectifSAY: ObjectifGeneral | null; // Objectif géré par SAY pour lequel l'élève devra choisir une période\r\n};\r\n\r\nexport interface ExamenListResponse {\r\n examens: Examen[];\r\n objectifs: ObjectifGeneral[];\r\n regions: RegionAdministrative[];\r\n departements: Departement[];\r\n academies: Academie[];\r\n statutsInscription: StatutInscription[];\r\n statutsResultat: StatutResultat[];\r\n result: ExamenListResult;\r\n categories: CategorieObjectif[];\r\n dateExamenEnvisagee: Date | null;\r\n statutsEpreuve: StatutEpreuve[];\r\n etatsInscription: EtatInscription[];\r\n pourcentageDevoirsRealises: number;\r\n nombreJoursStage: number;\r\n noteDossierProMin: number;\r\n objectifInscriptionAnticipee: ObjectifGeneral | null;\r\n errorMessage: string | null;\r\n}\r\n\r\nexport enum ExamenListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface ExamenSaveResponse {\r\n examen: Examen;\r\n result: ExamenSaveResult;\r\n errorMessage: string;\r\n}\r\n\r\nexport enum ExamenSaveResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2,\r\n ObjectifIsRequired = 3,\r\n SessionIsRequired = 4,\r\n DepartementIsRequired = 5,\r\n EpreuveIsRequired = 6\r\n}\r\n\r\nexport type ControlStep = {\r\n isValid: boolean;\r\n errorMessage: string;\r\n name: string;\r\n};\r\n\r\nexport class defaultExamen implements Examen {\r\n constructor(\r\n public code = '',\r\n public designation = '',\r\n public categorie = '',\r\n public etatInscription = '',\r\n public session = new defaultSession(),\r\n public epreuves = [],\r\n public region = new defaultMetadata(),\r\n public statutInscription = new defaultMetadata(),\r\n public statutResultat = new defaultMetadata(),\r\n public dispensee = false,\r\n public avis = '',\r\n\r\n public domaineTravaille = new defaultDomaine(),\r\n public departement = new defaultDepartement(),\r\n public academie = new defaultMetadata(),\r\n public positionnement = new defaultPositionnement(),\r\n public formePassage = 'GLO',\r\n public observation = '',\r\n public periode = new defaultPeriode(),\r\n public gestionInscriptionInterne = false\r\n ) {}\r\n}\r\n\r\nexport class defaultSession implements SessionExamen {\r\n constructor(\r\n public code = '',\r\n public designation = '',\r\n public dateEpreuvesAdmissibilite = '',\r\n public dateEpreuvesAdmission = '',\r\n public dateDebutInscription = '',\r\n public dateFinInscription = '',\r\n public dateEpreuvesPreAdmissibilite = '',\r\n public dateEpreuvesSportives = '',\r\n public filtreDepartemental = [],\r\n public epreuves = [],\r\n public fichiers = [],\r\n public filesMandatory = false,\r\n public isSended = false,\r\n public pourcentageDevoirsRealises = 0,\r\n public nombreJoursStage = 0,\r\n public noteDossierProMin = 0,\r\n public centreExamen = null,\r\n public nombrePlacesMin = 0,\r\n public nombrePlacesMax = 0,\r\n public nombreInscrits = 0\r\n ) {}\r\n}\r\n\r\nexport class defaultPeriode implements PeriodeExamen {\r\n constructor(\r\n public code = '',\r\n public designation = '',\r\n public periode = '',\r\n public type = '',\r\n public dateDebut = new Date(),\r\n public dateFin = new Date()\r\n ) {}\r\n}\r\n\r\nclass defaultMetadata implements Metadata {\r\n constructor(public code = '', public designation = '') {}\r\n}\r\n\r\nexport class defaultDepartement implements Departement {\r\n constructor(\r\n public code = '',\r\n public designation = '',\r\n public academieCode = '',\r\n public regionCode = ''\r\n ) {}\r\n}\r\n\r\nclass defaultPositionnement implements Positionnement {\r\n constructor(public favorable = '', public enCours = '') {}\r\n}\r\n\r\nclass defaultDomaine implements Domaine {\r\n constructor(\r\n public actif = false,\r\n public adresseEntreprise = '',\r\n public dateDebut = null,\r\n public dateFin = null\r\n ) {}\r\n}\r\n\r\nexport enum ExamenFileType {\r\n DIS = 0,\r\n INS = 1,\r\n REL = 2\r\n}\r\n\r\nexport interface ExamenFichier {\r\n id: number;\r\n nom: string;\r\n nomDisk: string;\r\n type: string;\r\n taille: number;\r\n typeMime: string;\r\n file: any;\r\n}\r\n\r\nexport interface Examen {\r\n code: string;\r\n designation: string;\r\n categorie: string;\r\n session: SessionExamen;\r\n region: RegionAdministrative;\r\n statutInscription: StatutInscription;\r\n statutResultat: StatutResultat;\r\n dispensee: boolean;\r\n avis: string;\r\n domaineTravaille: Domaine;\r\n departement: Departement;\r\n academie: Academie;\r\n formePassage: string;\r\n positionnement: Positionnement;\r\n etatInscription: string;\r\n observation: string;\r\n periode: PeriodeExamen;\r\n gestionInscriptionInterne: boolean;\r\n}\r\n\r\nexport interface Positionnement {\r\n favorable: string;\r\n enCours: string;\r\n}\r\n\r\nexport interface Domaine {\r\n adresseEntreprise: string;\r\n dateDebut: string | null;\r\n dateFin: string | null;\r\n}\r\n\r\nexport interface ObjectifGeneral extends Metadata {\r\n categorie: string;\r\n sessions: SessionExamen[];\r\n pourcentageDevoirsRealises: number;\r\n nombreJoursStage: number;\r\n noteDossierProMin: number;\r\n gestionInscriptionInterne: boolean;\r\n periodeInscription: string;\r\n periodes: PeriodeExamen[];\r\n}\r\n\r\nexport interface SessionExamen extends Metadata {\r\n dateEpreuvesAdmissibilite: string | null;\r\n dateEpreuvesAdmission: string | null;\r\n dateDebutInscription: string | null;\r\n dateFinInscription: string | null;\r\n dateEpreuvesPreAdmissibilite: string | null;\r\n dateEpreuvesSportives: string | null;\r\n filtreDepartemental: string[];\r\n epreuves: Array;\r\n fichiers: Array;\r\n filesMandatory: boolean;\r\n isSended: boolean;\r\n pourcentageDevoirsRealises: number;\r\n nombreJoursStage: number;\r\n noteDossierProMin: number;\r\n centreExamen: SessionCentreExamen | null;\r\n nombrePlacesMin: number;\r\n nombrePlacesMax: number;\r\n nombreInscrits: number;\r\n}\r\n\r\nexport interface Epreuve extends Metadata {\r\n codeReferentiel: string;\r\n statut: string;\r\n note: number | null;\r\n anneeBenefice: number;\r\n typeFichier: string;\r\n dateEpreuve: Date | null;\r\n dateCreated: Date;\r\n centreExamen: EpreuveCentreExamen | null;\r\n}\r\n\r\nexport interface PeriodeExamen extends Metadata {\r\n periode: string;\r\n type: string;\r\n dateDebut: Date;\r\n dateFin: Date;\r\n}\r\n\r\nexport interface CentreExamen {\r\n id: number;\r\n nom: string;\r\n adresse: string;\r\n}\r\n\r\nexport interface SessionCentreExamen extends CentreExamen {}\r\nexport interface EpreuveCentreExamen extends CentreExamen {}\r\n\r\nexport interface CategorieObjectif extends Metadata {}\r\n\r\nexport interface EtatInscription extends Metadata {}\r\nexport interface StatutInscription extends Metadata {}\r\n\r\nexport interface StatutResultat extends Metadata {}\r\n\r\nexport interface RegionAdministrative extends Metadata {}\r\n\r\nexport interface Academie extends Metadata {}\r\n\r\nexport interface Departement extends Metadata {\r\n academieCode: string;\r\n regionCode: string;\r\n}\r\n\r\nexport interface Metadata {\r\n code: string;\r\n designation: string;\r\n}\r\n\r\nexport interface StatutEpreuve extends Metadata {\r\n typeFichier: string;\r\n listeCategoryObjectif: string;\r\n listeProgression: string;\r\n saisiNote: boolean;\r\n affichageNote: boolean;\r\n}\r\n\r\nexport enum TypeCategoryObjectif {\r\n Examen = 'EXA',\r\n Concours = 'CON',\r\n TitrePro = 'TP',\r\n Certification = 'CQP',\r\n Metiers = ''\r\n}\r\n\r\nexport enum TypePeriodeInscription {\r\n Mois = 'MOI',\r\n Trimestre = 'TRI',\r\n Session = 'SES'\r\n}\r\n\r\nexport const InscriptionsTypesPeriodes: Array = [\r\n TypePeriodeInscription.Mois,\r\n TypePeriodeInscription.Trimestre\r\n];\r\n\r\nexport interface IExamenCreateForm {\r\n loading: boolean;\r\n error: string;\r\n onChangeText: void;\r\n setForm: React.Dispatch;\r\n onSubmit: void;\r\n form: Examen;\r\n objectifs: Array;\r\n regions: Array;\r\n departements: Array;\r\n academies: Array;\r\n statutsInscription: Array;\r\n statutsResultat: Array;\r\n statutsEpreuve: Array;\r\n onFilesSelected: Array;\r\n onFileDelete(file: any): void;\r\n onChangeDepartement(value: string): void;\r\n onChangeSession(value: string): void;\r\n}\r\n\r\nexport interface ExamenUpdateDateEnvRequest {\r\n contractId: number;\r\n amendmentId: number;\r\n dateEnvisagee: Date;\r\n}\r\n\r\nexport enum ExamenUpdateDateEnvResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport interface ExamenUpdateDateEnvResponse {\r\n result: ExamenUpdateDateEnvResult;\r\n errorMessage: string;\r\n}\r\n","import {\r\n Card,\r\n CardHeader,\r\n InputAdornment,\r\n MenuItem,\r\n Stack,\r\n TextField,\r\n Typography\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport Selector from 'components/Selector';\r\nimport { useEffect, useState } from 'react';\r\nimport { Epreuve, StatutEpreuve } from '../../../@types/examen';\r\n\r\n/**\r\n * Gestion de l'epreuve.\r\n * La gestion se fait dans le composant et on changement on remonte dans le form général\r\n * @param props :\r\n * @returns\r\n */\r\nexport const ExamenFormEpreuveItem = (props: any) => {\r\n const { epreuve, statutsEpreuve, onChange, values, isResultat = false, error } = props;\r\n const [current, setCurrent] = useState(epreuve);\r\n //const [error, setError] = useState(false);\r\n\r\n const handleChange = (name: string, value: string) => {\r\n if ((name === 'note' && +value > 20) || (name === 'note' && +value < 0)) value = '0';\r\n\r\n setCurrent({ ...current, [name]: value });\r\n };\r\n\r\n useEffect(() => {\r\n onChange({\r\n ...current,\r\n typeFichier: statutsEpreuve.filter(\r\n (statut: StatutEpreuve) => statut.code === current.statut\r\n )[0].typeFichier\r\n });\r\n }, [current]);\r\n\r\n // Filtre suivant la catégorie (examen,concours,..) et la forme de passage\r\n const statutsCurrent = statutsEpreuve.filter(\r\n (statut: StatutEpreuve) =>\r\n statut.listeCategoryObjectif.includes(values.categorie) &&\r\n statut.listeProgression.includes(values.formePassage)\r\n );\r\n\r\n const isWriteNote = statutsEpreuve.filter((epr: StatutEpreuve) => epr.code === current.statut)[0]\r\n ?.saisiNote;\r\n const isViewNote = statutsEpreuve.filter((epr: StatutEpreuve) => epr.code === current.statut)[0]\r\n ?.affichageNote;\r\n\r\n return (\r\n <>\r\n {isResultat ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\n/****************************************************************** */\r\n\r\ntype ViewPros = {\r\n statusList: Array;\r\n epreuve: Epreuve;\r\n isWriteNote: boolean;\r\n isViewNote: boolean;\r\n onChange: (name: string, value: string) => void;\r\n etatInscription: string;\r\n error: any;\r\n};\r\n\r\nfunction ViewInscription({\r\n statusList,\r\n epreuve,\r\n isWriteNote,\r\n isViewNote,\r\n etatInscription,\r\n error,\r\n onChange\r\n}: ViewPros) {\r\n // pas de saissi de note si il selectionne inscrit\r\n const isWriteNoteOverride = isWriteNote && epreuve.statut !== 'INS';\r\n\r\n return (\r\n \r\n {`${epreuve.codeReferentiel} - ${epreuve.designation}`}\r\n \r\n {\r\n return { value: epr.code, label: epr.designation };\r\n })}\r\n query={epreuve.statut}\r\n onFilter={(value: string) => onChange('statut', value)}\r\n disabled={etatInscription === 'INS'}\r\n />\r\n\r\n {isWriteNoteOverride && (\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\n/**************************************************************** */\r\n\r\nfunction ViewResultat({\r\n statusList,\r\n epreuve,\r\n isWriteNote,\r\n isViewNote,\r\n etatInscription,\r\n error,\r\n onChange\r\n}: ViewPros) {\r\n const getStatusLabel = () => {\r\n const status = statusList.find((epr: StatutEpreuve) => epr.code === epreuve.statut);\r\n return status ? (\r\n \r\n {status.designation}\r\n \r\n ) : (\r\n <>\r\n );\r\n };\r\n\r\n return (\r\n \r\n \r\n {`${epreuve.codeReferentiel} - ${epreuve.designation}`}\r\n \r\n {\r\n return { value: epr.code, label: epr.designation };\r\n })}\r\n query={epreuve.statut}\r\n onFilter={(value: string) => onChange('statut', value)}\r\n disabled={etatInscription === 'INS'}\r\n />\r\n {isViewNote && (\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\n//******************************************************************************************* */\r\ntype TextFieldNotePros = {\r\n epreuve: Epreuve;\r\n isWriteNote: boolean;\r\n onChange: (name: string, value: string) => void;\r\n error: any;\r\n};\r\n\r\nconst TextFieldNote = ({ epreuve, isWriteNote, error, onChange }: TextFieldNotePros) => {\r\n const yearMax = new Date().getFullYear();\r\n const yearMin = yearMax - 5;\r\n\r\n const getYears = () => {\r\n let years = [];\r\n for (var i: number = yearMin; i < yearMax; i++) {\r\n years.push(i);\r\n }\r\n return years;\r\n };\r\n\r\n return (\r\n \r\n }}\r\n disabled={!isWriteNote}\r\n onChange={(e: any) => onChange('note', e.target.value)}\r\n value={epreuve.note}\r\n margin=\"normal\"\r\n label=\"Note\"\r\n sx={{ marginTop: '10px', width: '120px' }}\r\n error={Boolean((error as any)?.note)}\r\n helperText={(error as any)?.note}\r\n />\r\n {epreuve.statut === 'BEN' && (\r\n onChange('anneeBenefice', e.target.value)}\r\n value={epreuve.anneeBenefice === 0 ? '' : epreuve.anneeBenefice}\r\n margin=\"normal\"\r\n label=\"année de bénéfice\"\r\n sx={{ marginTop: '10px', width: '150px' }}\r\n error={Boolean((error as any)?.anneeBenefice)}\r\n helperText={(error as any)?.anneeBenefice}\r\n >\r\n {getYears().map((value) => {\r\n return (\r\n \r\n {value}\r\n \r\n );\r\n })}\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { SeminarLeftToPay } from '../@types/seminar';\r\n\r\nexport const loadUrl = (url: string) => {\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.target = '_blanck';\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n};\r\n\r\nexport function getAccount(credit: number) {\r\n if (credit === 0) return 0;\r\n return (credit * 30) / 100;\r\n}\r\n\r\nexport function getLeftToPay(\r\n creditStudent: number,\r\n credit: number,\r\n priceUnit: number\r\n): SeminarLeftToPay {\r\n const value = getAccount(credit) - creditStudent;\r\n\r\n if (value > 0) {\r\n return {\r\n credit: credit - getAccount(credit),\r\n amount: (credit - getAccount(credit)) * priceUnit,\r\n accountCredit: value,\r\n accountAmount: value * priceUnit\r\n };\r\n }\r\n\r\n return {\r\n credit: 0,\r\n amount: 0,\r\n accountAmount: 0,\r\n accountCredit: 0\r\n };\r\n}\r\n\r\n///(\\,)/g\r\n\r\nexport const formatCardPayment = (content: string) => {\r\n content = content.replace(/(submit)/gim, 'hidden');\r\n\r\n content = content.replace(/(Choisissez votre carte ci-dessous :)/gim, '');\r\n content = content.replace(/()/gim, '');\r\n content = content.replace(/(\\\\\")/gim, '');\r\n content = content.replace(\r\n /(Contents\\/Images\\/CB.gif)/gim,\r\n 'https://assets.skillandyou.io/assets/620349a9-16a2-456e-b863-506af1a96097'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/VISA.gif)/gim,\r\n 'https://assets.skillandyou.io/assets/b072d214-d3e0-4213-b838-36d4c251f1f1'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/MASTERCARD.gif)/gim,\r\n 'https://assets.skillandyou.io/assets/2520310d-2417-4138-be1b-0b4f1db0af3c'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/PAYPAL.gif)/gim,\r\n 'https://assets.skillandyou.io/assets/b1dc5e16-d74a-4ee2-b549-1c155c053a06'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/logo_CB.png)/gim,\r\n 'https://assets.skillandyou.io/assets/620349a9-16a2-456e-b863-506af1a96097'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/logo_VISA.png)/gim,\r\n 'https://assets.skillandyou.io/assets/b072d214-d3e0-4213-b838-36d4c251f1f1'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/logo_MASTERCARD.png)/gim,\r\n 'https://assets.skillandyou.io/assets/2520310d-2417-4138-be1b-0b4f1db0af3c'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/logo_PAYPAL.png)/gim,\r\n 'https://assets.skillandyou.io/assets/b1dc5e16-d74a-4ee2-b549-1c155c053a06'\r\n );\r\n content = content.replace(\r\n /(Contents\\/Images\\/IcoSec.gif)/gim,\r\n 'https://assets.skillandyou.io/assets/ad1f222c-34ed-4cc8-bc9a-63e5086a08b8'\r\n );\r\n content = content.replace(/(align=)/gim, \"class='cards'\");\r\n content = content.replace(/(_top)/gim, '_self');\r\n return content;\r\n};\r\n\r\nexport const resizeImage = (img: any) => {\r\n var MAX_WIDTH = 300;\r\n var MAX_HEIGHT = 300;\r\n var width = img.width;\r\n var height = img.height;\r\n\r\n if (width > height) {\r\n if (width > MAX_WIDTH) {\r\n height *= MAX_WIDTH / width;\r\n width = MAX_WIDTH;\r\n }\r\n } else {\r\n if (height > MAX_HEIGHT) {\r\n width *= MAX_HEIGHT / height;\r\n height = MAX_HEIGHT;\r\n }\r\n }\r\n\r\n var canvas = document.createElement('canvas');\r\n if (canvas != null) {\r\n canvas.width = width;\r\n canvas.height = height;\r\n var ctx = canvas.getContext('2d');\r\n ctx?.drawImage(img, 0, 0, width, height);\r\n\r\n return canvas.toDataURL('image/png');\r\n }\r\n};\r\n\r\n//Convertion string en blob : a mettre dans utils\r\nexport function base64ToBlob(base64: string, type: string) {\r\n const binaryString = window.atob(base64);\r\n const len = binaryString.length;\r\n const bytes = new Uint8Array(len);\r\n for (let i = 0; i < len; ++i) {\r\n bytes[i] = binaryString.charCodeAt(i);\r\n }\r\n\r\n return new Blob([bytes], { type: type });\r\n}\r\n\r\n/**\r\n * urlBase64ToUint8Array\r\n *\r\n * @param {string} base64String a public vavid key\r\n */\r\nexport const urlBase64ToUint8Array = (base64String: string) => {\r\n var padding = '='.repeat((4 - (base64String.length % 4)) % 4);\r\n var base64 = (base64String + padding).replace(/\\-/g, '+').replace(/_/g, '/');\r\n\r\n var rawData = window.atob(base64);\r\n var outputArray = new Uint8Array(rawData.length);\r\n\r\n for (var i = 0; i < rawData.length; ++i) {\r\n outputArray[i] = rawData.charCodeAt(i);\r\n }\r\n return outputArray;\r\n};\r\n\r\nexport const removeAccents = (text: string) => {\r\n var r = text.toLowerCase().trim();\r\n r = r.replace(new RegExp('[àáâãäå]', 'g'), 'a');\r\n r = r.replace(new RegExp('æ', 'g'), 'ae');\r\n r = r.replace(new RegExp('ç', 'g'), 'c');\r\n r = r.replace(new RegExp('[èéêë]', 'g'), 'e');\r\n r = r.replace(new RegExp('[ìíîï]', 'g'), 'i');\r\n r = r.replace(new RegExp('ñ', 'g'), 'n');\r\n r = r.replace(new RegExp('[òóôõö]', 'g'), 'o');\r\n r = r.replace(new RegExp('œ', 'g'), 'oe');\r\n r = r.replace(new RegExp('[ùúûü]', 'g'), 'u');\r\n r = r.replace(new RegExp('[ýÿ]', 'g'), 'y');\r\n return r;\r\n};\r\n\r\nexport function isValidHttpUrl(url: string) {\r\n const pattern = new RegExp(\r\n '^(https?:\\\\/\\\\/)?' + // protocol\r\n '((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|' + // domain name\r\n '((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))' + // OR ip (v4) address\r\n '(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*' + // port and path\r\n '(\\\\?[;&a-z\\\\d%_.~+=-]*)?' + // query string\r\n '(\\\\#[-a-z\\\\d_]*)?$', // fragment locator\r\n 'i'\r\n );\r\n return pattern.test(url);\r\n}\r\n","import ReactMarkdown, { Options } from 'react-markdown';\r\n// markdown plugins\r\nimport rehypeRaw from 'rehype-raw';\r\nimport rehypeHighlight from 'rehype-highlight';\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport { Link, Typography, Divider } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst MarkdownWrapperStyle = styled('div')(({ theme }) => {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n // List\r\n '& ul, & ol': {\r\n ...theme.typography.body1,\r\n paddingLeft: theme.spacing(5),\r\n '& li': {\r\n lineHeight: 2\r\n }\r\n },\r\n\r\n // Blockquote\r\n '& blockquote': {\r\n lineHeight: 1.5,\r\n fontSize: '1.5em',\r\n margin: '40px auto',\r\n position: 'relative',\r\n fontFamily: 'Georgia, serif',\r\n padding: theme.spacing(3, 3, 3, 8),\r\n borderRadius: theme.shape.borderRadiusMd,\r\n backgroundColor: theme.palette.background.neutral,\r\n color: `${theme.palette.text.secondary} !important`,\r\n [theme.breakpoints.up('md')]: {\r\n width: '80%'\r\n },\r\n '& p, & span': {\r\n marginBottom: '0 !important',\r\n fontSize: 'inherit !important',\r\n fontFamily: 'Georgia, serif !important',\r\n color: `${theme.palette.text.secondary} !important`\r\n },\r\n '&:before': {\r\n left: 16,\r\n top: -8,\r\n display: 'block',\r\n fontSize: '3em',\r\n content: '\"\\\\201C\"',\r\n position: 'absolute',\r\n color: theme.palette.text.disabled\r\n }\r\n },\r\n '& pre, & pre > code': {\r\n fontSize: 16,\r\n overflowX: 'auto',\r\n whiteSpace: 'pre',\r\n padding: theme.spacing(2),\r\n color: theme.palette.common.white,\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: theme.palette.grey[isLight ? 900 : 500_16]\r\n },\r\n '& code': {\r\n fontSize: 14,\r\n borderRadius: 4,\r\n whiteSpace: 'pre',\r\n padding: theme.spacing(0.2, 0.5),\r\n color: theme.palette.warning[isLight ? 'darker' : 'lighter'],\r\n backgroundColor: theme.palette.warning[isLight ? 'lighter' : 'darker'],\r\n '&.hljs': { padding: 0, backgroundColor: 'transparent' }\r\n }\r\n };\r\n});\r\n\r\nconst components = {\r\n h1: ({ ...props }) => ,\r\n h2: ({ ...props }) => ,\r\n h3: ({ ...props }) => ,\r\n h4: ({ ...props }) => ,\r\n h5: ({ ...props }) => ,\r\n h6: ({ ...props }) => ,\r\n p: ({ ...props }) => ,\r\n hr: ({ ...props }) => ,\r\n ul: ({ ...props }) => ,\r\n li: ({ ...props }) => ,\r\n\r\n a: ({ ...props }) => {\r\n const { href } = props;\r\n return !href.includes('http') ? (\r\n \r\n ) : (\r\n \r\n );\r\n }\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Markdown({ ...other }: Options) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","// material\r\nimport { alpha, styled } from '@mui/material/styles';\r\nimport { Popover, PopoverProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst ArrowStyle = styled('span')(({ theme }) => ({\r\n [theme.breakpoints.up('sm')]: {\r\n top: -7,\r\n zIndex: 1,\r\n width: 12,\r\n right: 20,\r\n height: 12,\r\n content: \"''\",\r\n position: 'absolute',\r\n borderRadius: '0 0 4px 0',\r\n transform: 'rotate(-135deg)',\r\n background: theme.palette.background.paper,\r\n borderRight: `solid 1px ${alpha(theme.palette.grey[500], 0.12)}`,\r\n borderBottom: `solid 1px ${alpha(theme.palette.grey[500], 0.12)}`\r\n }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function MenuPopover({ children, sx, ...other }: PopoverProps) {\r\n return (\r\n theme.customShadows.z20,\r\n border: (theme) => `solid 1px ${theme.palette.grey[500_8]}`,\r\n width: 200,\r\n ...sx\r\n }\r\n }}\r\n {...other}\r\n >\r\n \r\n\r\n {children}\r\n \r\n );\r\n}\r\n","import { useMediaQuery } from '@mui/material';\r\nimport { useTheme } from '@mui/material/styles';\r\n\r\nexport default function useScreenConfig() {\r\n const theme = useTheme();\r\n\r\n //Taille écran\r\n //Valeurs possibles des breakpoints : xs, sm, md, lg, xl\r\n\r\n //Bornes max\r\n const isDownSM = useMediaQuery(theme.breakpoints.down('sm'));\r\n const isDownMD = useMediaQuery(theme.breakpoints.down('md'));\r\n\r\n //Bornes min\r\n const isUpMD = useMediaQuery(theme.breakpoints.up('md'));\r\n const isUpLG = useMediaQuery(theme.breakpoints.up('lg'));\r\n\r\n //Theme\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n isMobile: isDownSM,\r\n isMediumOrMobile: isDownMD,\r\n isDesktop: isUpMD,\r\n isLargeScreen: isUpLG,\r\n isLight\r\n };\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { dispatch } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport { Conversation, Participant } from '../../@types/chat';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction objFromArray(array: any[], key = 'id') {\r\n return array.reduce((accumulator, current) => {\r\n accumulator[current[key]] = current;\r\n return accumulator;\r\n }, {});\r\n}\r\n\r\ntype ChatState = {\r\n isLoading: boolean;\r\n error: boolean;\r\n contacts: {\r\n byId: Record;\r\n allIds: string[];\r\n };\r\n conversations: {\r\n byId: Record;\r\n allIds: string[];\r\n };\r\n activeConversationId: null | string;\r\n participants: Participant[];\r\n recipients: any[];\r\n};\r\n\r\nconst initialState: ChatState = {\r\n isLoading: false,\r\n error: false,\r\n contacts: { byId: {}, allIds: [] },\r\n conversations: { byId: {}, allIds: [] },\r\n activeConversationId: null,\r\n participants: [],\r\n recipients: []\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'chat',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET CONTACT SSUCCESS\r\n getContactsSuccess(state, action) {\r\n const contacts = action.payload;\r\n\r\n state.contacts.byId = objFromArray(contacts);\r\n state.contacts.allIds = Object.keys(state.contacts.byId);\r\n },\r\n\r\n // GET CONVERSATIONS\r\n getConversationsSuccess(state, action) {\r\n const conversations = action.payload;\r\n\r\n state.conversations.byId = objFromArray(conversations);\r\n state.conversations.allIds = Object.keys(state.conversations.byId);\r\n },\r\n\r\n // GET CONVERSATION\r\n getConversationSuccess(state, action) {\r\n const conversation = action.payload;\r\n\r\n if (conversation) {\r\n state.conversations.byId[conversation.id] = conversation;\r\n state.activeConversationId = conversation.id;\r\n if (!state.conversations.allIds.includes(conversation.id)) {\r\n state.conversations.allIds.push(conversation.id);\r\n }\r\n } else {\r\n state.activeConversationId = null;\r\n }\r\n },\r\n\r\n // ON SEND MESSAGE\r\n onSendMessage(state, action) {\r\n const conversation = action.payload;\r\n const { conversationId, messageId, message, contentType, attachments, createdAt, senderId } =\r\n conversation;\r\n\r\n const newMessage = {\r\n id: messageId,\r\n body: message,\r\n contentType,\r\n attachments,\r\n createdAt,\r\n senderId\r\n };\r\n\r\n state.conversations.byId[conversationId].messages.push(newMessage);\r\n },\r\n\r\n markConversationAsReadSuccess(state, action) {\r\n const { conversationId } = action.payload;\r\n const conversation = state.conversations.byId[conversationId];\r\n if (conversation) {\r\n conversation.unreadCount = 0;\r\n }\r\n },\r\n\r\n // GET PARTICIPANTS\r\n getParticipantsSuccess(state, action) {\r\n const participants = action.payload;\r\n state.participants = participants;\r\n },\r\n\r\n // RESET ACTIVE CONVERSATION\r\n resetActiveConversation(state) {\r\n state.activeConversationId = null;\r\n },\r\n\r\n addRecipients(state, action) {\r\n const recipients = action.payload;\r\n state.recipients = recipients;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { addRecipients, onSendMessage, resetActiveConversation } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getContacts() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/chat/contacts');\r\n dispatch(slice.actions.getContactsSuccess(response.data.contacts));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getConversations() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/chat/conversations');\r\n dispatch(slice.actions.getConversationsSuccess(response.data.conversations));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getConversation(conversationKey: string) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/chat/conversation', {\r\n params: { conversationKey }\r\n });\r\n dispatch(slice.actions.getConversationSuccess(response.data.conversation));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function markConversationAsRead(conversationId: string) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n await axios.get('/api/chat/conversation/mark-as-seen', {\r\n params: { conversationId }\r\n });\r\n dispatch(slice.actions.markConversationAsReadSuccess({ conversationId }));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getParticipants(conversationKey: string) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/chat/participants', {\r\n params: { conversationKey }\r\n });\r\n dispatch(slice.actions.getParticipantsSuccess(response.data.participants));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport { BlogState } from '../../@types/blog';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: BlogState = {\r\n isLoading: false,\r\n error: false,\r\n posts: [],\r\n post: null,\r\n recentPosts: [],\r\n hasMore: true,\r\n index: 0,\r\n step: 11\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'blog',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET POSTS\r\n getPostsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.posts = action.payload;\r\n },\r\n\r\n // GET POST INFINITE\r\n getPostsInitial(state, action) {\r\n state.isLoading = false;\r\n state.posts = action.payload;\r\n },\r\n\r\n getMorePosts(state) {\r\n const setIndex = state.index + state.step;\r\n state.index = setIndex;\r\n },\r\n\r\n noHasMore(state) {\r\n state.hasMore = false;\r\n },\r\n\r\n // GET POST\r\n getPostSuccess(state, action) {\r\n state.isLoading = false;\r\n state.post = action.payload;\r\n },\r\n\r\n // GET RECENT POST\r\n getRecentPostsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.recentPosts = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { getMorePosts } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getAllPosts() {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/blog/posts/all');\r\n dispatch(slice.actions.getPostsSuccess(response.data.posts));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getPostsInitial(index: number, step: number) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/blog/posts', {\r\n params: { index, step }\r\n });\r\n const results = response.data.results.length;\r\n const { maxLength } = response.data;\r\n\r\n dispatch(slice.actions.getPostsInitial(response.data.results));\r\n\r\n if (results >= maxLength) {\r\n dispatch(slice.actions.noHasMore());\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getPost(title: string) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/blog/post', {\r\n params: { title }\r\n });\r\n dispatch(slice.actions.getPostSuccess(response.data.post));\r\n } catch (error) {\r\n console.error(error);\r\n dispatch(slice.actions.hasError(true));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getRecentPosts(title: string) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/blog/posts/recent', {\r\n params: { title }\r\n });\r\n\r\n dispatch(slice.actions.getRecentPostsSuccess(response.data.recentPosts));\r\n } catch (error) {\r\n console.error(error);\r\n dispatch(slice.actions.hasError(true));\r\n }\r\n };\r\n}\r\n","import { map, filter } from 'lodash';\r\nimport { createSlice } from '@reduxjs/toolkit';\r\nimport { dispatch } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\nimport {\r\n Friend,\r\n Gallery,\r\n Profile,\r\n UserPost,\r\n Follower,\r\n UserData,\r\n CreditCard,\r\n UserInvoice,\r\n UserManager,\r\n UserAddressBook,\r\n NotificationSettings\r\n} from '../../@types/user';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype UserState = {\r\n isLoading: boolean;\r\n error: boolean;\r\n myProfile: null | Profile;\r\n posts: UserPost[];\r\n users: UserData[];\r\n userList: UserManager[];\r\n followers: Follower[];\r\n friends: Friend[];\r\n gallery: Gallery[];\r\n cards: CreditCard[] | null;\r\n addressBook: UserAddressBook[];\r\n invoices: UserInvoice[];\r\n notifications: NotificationSettings | null;\r\n};\r\n\r\nconst initialState: UserState = {\r\n isLoading: false,\r\n error: false,\r\n myProfile: null,\r\n posts: [],\r\n users: [],\r\n userList: [],\r\n followers: [],\r\n friends: [],\r\n gallery: [],\r\n cards: null,\r\n addressBook: [],\r\n invoices: [],\r\n notifications: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'user',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET PROFILE\r\n getProfileSuccess(state, action) {\r\n state.isLoading = false;\r\n state.myProfile = action.payload;\r\n },\r\n\r\n // GET POSTS\r\n getPostsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.posts = action.payload;\r\n },\r\n\r\n // GET USERS\r\n getUsersSuccess(state, action) {\r\n state.isLoading = false;\r\n state.users = action.payload;\r\n },\r\n\r\n // DELETE USERS\r\n deleteUser(state, action) {\r\n const deleteUser = filter(state.userList, (user) => user.id !== action.payload);\r\n state.userList = deleteUser;\r\n },\r\n\r\n // GET FOLLOWERS\r\n getFollowersSuccess(state, action) {\r\n state.isLoading = false;\r\n state.followers = action.payload;\r\n },\r\n\r\n // ON TOGGLE FOLLOW\r\n onToggleFollow(state, action) {\r\n const followerId = action.payload;\r\n\r\n const handleToggle = map(state.followers, (follower) => {\r\n if (follower.id === followerId) {\r\n return {\r\n ...follower,\r\n isFollowed: !follower.isFollowed\r\n };\r\n }\r\n return follower;\r\n });\r\n\r\n state.followers = handleToggle;\r\n },\r\n\r\n // GET FRIENDS\r\n getFriendsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.friends = action.payload;\r\n },\r\n\r\n // GET GALLERY\r\n getGallerySuccess(state, action) {\r\n state.isLoading = false;\r\n state.gallery = action.payload;\r\n },\r\n\r\n // GET MANAGE USERS\r\n getUserListSuccess(state, action) {\r\n state.isLoading = false;\r\n state.userList = action.payload;\r\n },\r\n\r\n // GET CARDS\r\n getCardsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.cards = action.payload;\r\n },\r\n\r\n // GET ADDRESS BOOK\r\n getAddressBookSuccess(state, action) {\r\n state.isLoading = false;\r\n state.addressBook = action.payload;\r\n },\r\n\r\n // GET INVOICES\r\n getInvoicesSuccess(state, action) {\r\n state.isLoading = false;\r\n state.invoices = action.payload;\r\n },\r\n\r\n // GET NOTIFICATIONS\r\n getNotificationsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.notifications = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { onToggleFollow, deleteUser } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getProfile() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/profile');\r\n dispatch(slice.actions.getProfileSuccess(response.data.profile));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getPosts() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/posts');\r\n dispatch(slice.actions.getPostsSuccess(response.data.posts));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getFollowers() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/social/followers');\r\n dispatch(slice.actions.getFollowersSuccess(response.data.followers));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getFriends() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/social/friends');\r\n dispatch(slice.actions.getFriendsSuccess(response.data.friends));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getGallery() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/social/gallery');\r\n dispatch(slice.actions.getGallerySuccess(response.data.gallery));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getUserList() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/manage-users');\r\n dispatch(slice.actions.getUserListSuccess(response.data.users));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getCards() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/account/cards');\r\n dispatch(slice.actions.getCardsSuccess(response.data.cards));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getAddressBook() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/account/address-book');\r\n dispatch(slice.actions.getAddressBookSuccess(response.data.addressBook));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getInvoices() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/account/invoices');\r\n dispatch(slice.actions.getInvoicesSuccess(response.data.invoices));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getNotifications() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/account/notifications-settings');\r\n dispatch(slice.actions.getNotificationsSuccess(response.data.notifications));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getUsers() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/user/all');\r\n dispatch(slice.actions.getUsersSuccess(response.data.users));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { sum, map, filter, uniqBy } from 'lodash';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\nimport { CartItem, Product, ProductState } from '../../@types/products';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: ProductState = {\r\n isLoading: false,\r\n error: false,\r\n products: [],\r\n product: null,\r\n sortBy: null,\r\n filters: {\r\n gender: [],\r\n category: 'All',\r\n colors: [],\r\n priceRange: '',\r\n rating: ''\r\n },\r\n checkout: {\r\n activeStep: 0,\r\n cart: [],\r\n subtotal: 0,\r\n total: 0,\r\n discount: 0,\r\n shipping: 0,\r\n billing: null\r\n }\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'product',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET PRODUCTS\r\n getProductsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.products = action.payload;\r\n },\r\n\r\n // GET PRODUCT\r\n getProductSuccess(state, action) {\r\n state.isLoading = false;\r\n state.product = action.payload;\r\n },\r\n\r\n // SORT & FILTER PRODUCTS\r\n sortByProducts(state, action) {\r\n state.sortBy = action.payload;\r\n },\r\n\r\n filterProducts(state, action) {\r\n state.filters.gender = action.payload.gender;\r\n state.filters.category = action.payload.category;\r\n state.filters.colors = action.payload.colors;\r\n state.filters.priceRange = action.payload.priceRange;\r\n state.filters.rating = action.payload.rating;\r\n },\r\n\r\n // CHECKOUT\r\n getCart(state, action) {\r\n const cart = action.payload;\r\n\r\n const subtotal = sum(cart.map((cartItem: CartItem) => cartItem.price * cartItem.quantity));\r\n const discount = cart.length === 0 ? 0 : state.checkout.discount;\r\n const shipping = cart.length === 0 ? 0 : state.checkout.shipping;\r\n const billing = cart.length === 0 ? null : state.checkout.billing;\r\n\r\n state.checkout.cart = cart;\r\n state.checkout.discount = discount;\r\n state.checkout.shipping = shipping;\r\n state.checkout.billing = billing;\r\n state.checkout.subtotal = subtotal;\r\n state.checkout.total = subtotal - discount;\r\n },\r\n\r\n addCart(state, action) {\r\n const product = action.payload;\r\n const isEmptyCart = state.checkout.cart.length === 0;\r\n\r\n if (isEmptyCart) {\r\n state.checkout.cart = [...state.checkout.cart, product];\r\n } else {\r\n state.checkout.cart = map(state.checkout.cart, (_product) => {\r\n const isExisted = _product.id === product.id;\r\n if (isExisted) {\r\n return {\r\n ..._product,\r\n quantity: _product.quantity + 1\r\n };\r\n }\r\n return _product;\r\n });\r\n }\r\n state.checkout.cart = uniqBy([...state.checkout.cart, product], 'id');\r\n },\r\n\r\n deleteCart(state, action) {\r\n const updateCart = filter(state.checkout.cart, (item) => item.id !== action.payload);\r\n\r\n state.checkout.cart = updateCart;\r\n },\r\n\r\n resetCart(state) {\r\n state.checkout.activeStep = 0;\r\n state.checkout.cart = [];\r\n state.checkout.total = 0;\r\n state.checkout.subtotal = 0;\r\n state.checkout.discount = 0;\r\n state.checkout.shipping = 0;\r\n state.checkout.billing = null;\r\n },\r\n\r\n onBackStep(state) {\r\n state.checkout.activeStep -= 1;\r\n },\r\n\r\n onNextStep(state) {\r\n state.checkout.activeStep += 1;\r\n },\r\n\r\n onGotoStep(state, action) {\r\n const goToStep = action.payload;\r\n state.checkout.activeStep = goToStep;\r\n },\r\n\r\n increaseQuantity(state, action) {\r\n const productId = action.payload;\r\n const updateCart = map(state.checkout.cart, (product) => {\r\n if (product.id === productId) {\r\n return {\r\n ...product,\r\n quantity: product.quantity + 1\r\n };\r\n }\r\n return product;\r\n });\r\n\r\n state.checkout.cart = updateCart;\r\n },\r\n\r\n decreaseQuantity(state, action) {\r\n const productId = action.payload;\r\n const updateCart = map(state.checkout.cart, (product) => {\r\n if (product.id === productId) {\r\n return {\r\n ...product,\r\n quantity: product.quantity - 1\r\n };\r\n }\r\n return product;\r\n });\r\n\r\n state.checkout.cart = updateCart;\r\n },\r\n\r\n createBilling(state, action) {\r\n state.checkout.billing = action.payload;\r\n },\r\n\r\n applyDiscount(state, action) {\r\n const discount = action.payload;\r\n state.checkout.discount = discount;\r\n state.checkout.total = state.checkout.subtotal - discount;\r\n },\r\n\r\n applyShipping(state, action) {\r\n const shipping = action.payload;\r\n state.checkout.shipping = shipping;\r\n state.checkout.total = state.checkout.subtotal - state.checkout.discount + shipping;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const {\r\n getCart,\r\n addCart,\r\n resetCart,\r\n onGotoStep,\r\n onBackStep,\r\n onNextStep,\r\n deleteCart,\r\n createBilling,\r\n applyShipping,\r\n applyDiscount,\r\n increaseQuantity,\r\n decreaseQuantity,\r\n sortByProducts,\r\n filterProducts\r\n} = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getProducts() {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response: { data: { products: Product[] } } = await axios.get('/api/products');\r\n dispatch(slice.actions.getProductsSuccess(response.data.products));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getProduct(name: string) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response: { data: { product: Product } } = await axios.get('/api/products/product', {\r\n params: { name }\r\n });\r\n dispatch(slice.actions.getProductSuccess(response.data.product));\r\n } catch (error) {\r\n console.error(error);\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { omit } from 'lodash';\r\n// utils\r\nimport axios from '../../utils/axios';\r\nimport { KanbanCard, KanbanColumn } from '../../@types/kanban';\r\nimport { dispatch } from '../store';\r\n// ----------------------------------------------------------------------\r\n\r\nfunction objFromArray>(array: Type[], key: string = 'id') {\r\n return array.reduce>((accumulator, current) => {\r\n accumulator[current[key]] = current;\r\n return accumulator;\r\n }, {});\r\n}\r\n\r\ntype InitialState = {\r\n isLoading: boolean;\r\n error: boolean;\r\n board: {\r\n cards: Record;\r\n columns: Record;\r\n columnOrder: string[];\r\n };\r\n};\r\n\r\nconst initialState: InitialState = {\r\n isLoading: false,\r\n error: false,\r\n board: {\r\n cards: {},\r\n columns: {},\r\n columnOrder: []\r\n }\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'kanban',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET BOARD\r\n getBoardSuccess(state, action) {\r\n state.isLoading = false;\r\n const board = action.payload;\r\n const cards = objFromArray(board.cards);\r\n const columns = objFromArray(board.columns);\r\n const { columnOrder } = board;\r\n state.board = {\r\n cards,\r\n columns,\r\n columnOrder\r\n };\r\n },\r\n\r\n // CREATE NEW COLUMN\r\n createColumnSuccess(state, action) {\r\n const newColumn = action.payload;\r\n state.isLoading = false;\r\n state.board.columns = {\r\n ...state.board.columns,\r\n [newColumn.id]: newColumn\r\n };\r\n state.board.columnOrder.push(newColumn.id);\r\n },\r\n\r\n persistCard(state, action) {\r\n const columns = action.payload;\r\n state.board.columns = columns;\r\n },\r\n\r\n persistColumn(state, action) {\r\n state.board.columnOrder = action.payload;\r\n },\r\n\r\n addTask(state, action) {\r\n const { card, columnId } = action.payload;\r\n\r\n state.board.cards[card.id] = card;\r\n state.board.columns[columnId].cardIds.push(card.id);\r\n },\r\n\r\n deleteTask(state, action) {\r\n const { cardId, columnId } = action.payload;\r\n\r\n state.board.columns[columnId].cardIds = state.board.columns[columnId].cardIds.filter(\r\n (id) => id !== cardId\r\n );\r\n state.board.cards = omit(state.board.cards, [cardId]);\r\n },\r\n\r\n // UPDATE COLUMN\r\n updateColumnSuccess(state, action) {\r\n const column = action.payload;\r\n\r\n state.isLoading = false;\r\n state.board.columns[column.id] = column;\r\n },\r\n\r\n // DELETE COLUMN\r\n deleteColumnSuccess(state, action) {\r\n const { columnId } = action.payload;\r\n const deletedColumn = state.board.columns[columnId];\r\n\r\n state.isLoading = false;\r\n state.board.columns = omit(state.board.columns, [columnId]);\r\n state.board.cards = omit(state.board.cards, [...deletedColumn.cardIds]);\r\n state.board.columnOrder = state.board.columnOrder.filter((c) => c !== columnId);\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\nexport const { actions } = slice;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getBoard() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/kanban/board');\r\n dispatch(slice.actions.getBoardSuccess(response.data.board));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function createColumn(newColumn: { name: string }) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post('/api/kanban/columns/new', newColumn);\r\n dispatch(slice.actions.createColumnSuccess(response.data.column));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function updateColumn(columnId: string, updateColumn: KanbanColumn) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post('/api/kanban/columns/update', {\r\n columnId,\r\n updateColumn\r\n });\r\n dispatch(slice.actions.updateColumnSuccess(response.data.column));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function deleteColumn(columnId: string) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n await axios.post('/api/kanban/columns/delete', { columnId });\r\n dispatch(slice.actions.deleteColumnSuccess({ columnId }));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function persistColumn(newColumnOrder: string[]) {\r\n return () => {\r\n dispatch(slice.actions.persistColumn(newColumnOrder));\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function persistCard(columns: Record) {\r\n return () => {\r\n dispatch(slice.actions.persistCard(columns));\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function addTask({ card, columnId }: { card: Partial; columnId: string }) {\r\n return () => {\r\n dispatch(slice.actions.addTask({ card, columnId }));\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function deleteTask({ cardId, columnId }: { cardId: string; columnId: string }) {\r\n return () => {\r\n dispatch(slice.actions.deleteTask({ cardId, columnId }));\r\n };\r\n}\r\n","import { createSlice, current } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\nimport axiosInstance from 'utils/axios';\r\n\r\n// @types\r\nimport {\r\n StudyPlanState,\r\n StudyPlanItemProgressRequest,\r\n StudyPlanSaveProgressResponse,\r\n StudyPlanSaveProgressResult,\r\n StudyPlanView,\r\n StudyPlanResponse,\r\n StudyPlanResult,\r\n StudyPlanChapter,\r\n StudyPlanItemStatus,\r\n Progression,\r\n StudyPlanItem\r\n} from '../../@types/pedagogy';\r\nimport { ModeAccess } from '../../@types/account';\r\nimport {\r\n getItemsUpdated,\r\n getMarker,\r\n initProgression,\r\n refreshPhases,\r\n setStudyPlan,\r\n updateChapterUpdated\r\n} from 'utils/helperStudyPlan';\r\nimport { map } from 'lodash';\r\nimport produce from 'immer';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: StudyPlanState = {\r\n isLoading: true,\r\n error: false,\r\n marker: null,\r\n chapterItemUpdatedList: null,\r\n phases: null,\r\n skills: null,\r\n chapter: null,\r\n item: null,\r\n subChapter: null,\r\n currentSendingPhase: 0,\r\n constrainedCourse: false,\r\n updated: false,\r\n progression: 0,\r\n context: null,\r\n internshipsOfSupport: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'studyPlan',\r\n initialState,\r\n reducers: {\r\n startLoading(state) {\r\n state.isLoading = true;\r\n state.error = false;\r\n },\r\n\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n setStudyPlan(state, action) {\r\n state.isLoading = false;\r\n state.marker = action.payload.studyPlan.marker;\r\n state.phases = action.payload.studyPlan.phases;\r\n state.skills = action.payload.studyPlan.skills;\r\n state.internshipsOfSupport = action.payload.studyPlan.internshipsOfSupport;\r\n state.chapterItemUpdatedList = action.payload.studyPlan.chapterItemUpdatedList;\r\n state.currentSendingPhase = action.payload.studyPlan.currentSendingPhase;\r\n state.constrainedCourse = action.payload.constrainedCourse;\r\n state.context = action.payload.studyPlan.context;\r\n state.progression =\r\n (action.payload.progression.assimilate / action.payload.progression.count) * 100;\r\n },\r\n\r\n selectItem(state, action) {\r\n const { chapter, item, updated, subChapter, phases } = action.payload;\r\n\r\n //marquer comme lu\r\n let itemTmp = {\r\n ...item,\r\n status: item?.status === StudyPlanItemStatus.None ? StudyPlanItemStatus.Read : item?.status,\r\n updated: item?.status === StudyPlanItemStatus.None ? true : item.updated\r\n };\r\n\r\n let progression = initProgression();\r\n\r\n const phasesTmp = produce(state.phases!, (draft) => {\r\n return setStudyPlan(draft, itemTmp);\r\n });\r\n\r\n //refreshPhases(phasesTemp, state.currentSendingPhase, state.constrainedCourse, progression);\r\n // console.log(phasesTemp, 'phasesTemp1');\r\n\r\n state.phases = phasesTmp;\r\n state.marker = getMarker(itemTmp);\r\n state.chapter = action.payload.chapter;\r\n state.item = itemTmp;\r\n state.subChapter = action.payload.subChapter;\r\n state.isLoading = false;\r\n state.error = null;\r\n state.updated = updated;\r\n state.progression = (progression.assimilate / progression.count) * 100;\r\n },\r\n\r\n resetUpdated(state) {\r\n state.updated = false;\r\n state.isLoading = false;\r\n },\r\n\r\n resetState(state) {\r\n state.isLoading = false;\r\n state.error = false;\r\n state.marker = null;\r\n state.chapterItemUpdatedList = null;\r\n state.phases = null;\r\n state.skills = null;\r\n state.chapter = null;\r\n state.item = null;\r\n state.subChapter = null;\r\n state.currentSendingPhase = 0;\r\n state.constrainedCourse = false;\r\n state.updated = false;\r\n state.progression = 0;\r\n state.context = null;\r\n state.internshipsOfSupport = null;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { resetState } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n/**\r\n * Sauvegarder la progression\r\n * Attention : seulement en mode lecture\r\n * @param request\r\n * @returns\r\n */\r\nexport const saveProgress =\r\n (request: StudyPlanItemProgressRequest) => (onSuccess: (state: boolean) => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n try {\r\n let response = await axiosInstance.post(\r\n `/api/pedagogy/progression/save`,\r\n request,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n const { result } = response.data;\r\n switch (result) {\r\n case StudyPlanSaveProgressResult.Success:\r\n onSuccess(true);\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n };\r\n };\r\n\r\n/**\r\n * Initialisation du plan d'étude\r\n * @param view : Type de vue demandée\r\n * @param modeAccess : Acces mode admin ou eleve\r\n * @returns\r\n */\r\nexport const getStudyPlan = (\r\n view: StudyPlanView,\r\n modeAccess: ModeAccess,\r\n constrainedCourse: boolean\r\n) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n dispatch(slice.actions.startLoading());\r\n\r\n //determiner le type de vue\r\n const urlStudyPlanView = view === StudyPlanView.Global ? `?view=${StudyPlanView.Global}` : '';\r\n\r\n const urlStudyPlan =\r\n modeAccess === ModeAccess.Control\r\n ? `/api/pedagogy/studyplan/control${urlStudyPlanView}`\r\n : `/api/pedagogy/studyplan${urlStudyPlanView}`;\r\n\r\n const response = await axiosInstance.get(urlStudyPlan);\r\n\r\n const { result, studyPlan } = response.data;\r\n switch (result) {\r\n case StudyPlanResult.Success:\r\n // liste des supports pedagos que l'élève doit revoir car maj\r\n studyPlan.chapterItemUpdatedList = getItemsUpdated(studyPlan.phases);\r\n\r\n // on remonte l'info aux parents\r\n studyPlan.phases.map((p) => {\r\n p.chapters.map((uf: StudyPlanChapter) => updateChapterUpdated(uf));\r\n });\r\n\r\n // Maj du PE brut avec les verrou suivant le type de parcours libre ou contraint\r\n let progression = initProgression();\r\n\r\n //mise à jour du plan d'étude\r\n refreshPhases(\r\n studyPlan.phases,\r\n studyPlan.currentSendingPhase,\r\n constrainedCourse,\r\n progression\r\n );\r\n\r\n dispatch(\r\n slice.actions.setStudyPlan({\r\n studyPlan: studyPlan,\r\n constrainedCourse: constrainedCourse,\r\n progression: progression\r\n })\r\n );\r\n\r\n //Extraction des devoirs\r\n /*\r\n let homeworks: Array = [];\r\n studyPlan.phases.map((phase: StudyPlanPhase) =>\r\n phase.chapters.map((chapter: StudyPlanChapter) => {\r\n extractHomework(chapter, homeworks);\r\n })\r\n );\r\n\r\n dispatchRedux(getObjectives(homeworks));\r\n*/\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError('Une erreur de traitement'));\r\n }\r\n };\r\n};\r\n","import { combineReducers } from 'redux';\r\nimport { persistReducer } from 'redux-persist';\r\nimport storage from 'redux-persist/lib/storage';\r\n// slices\r\nimport mailReducer from './slices/mail';\r\nimport chatReducer from './slices/chat';\r\nimport blogReducer from './slices/blog';\r\nimport userReducer from './slices/user';\r\nimport productReducer from './slices/product';\r\nimport calendarReducer from './slices/calendar';\r\nimport kanbanReducer from './slices/kanban';\r\nimport favoriteReducer from './slices/favorite';\r\nimport articleReducer from './slices/article';\r\nimport agendaReducer from './slices/agenda';\r\nimport meetingReducer from './slices/meeting';\r\nimport virtualClassReducer from './slices/virtualClass';\r\nimport workshopReducer from './slices/workshop';\r\nimport objectiveReducer from './slices/objective';\r\nimport learningReducer from './slices/learning';\r\nimport jobReducer from './slices/job';\r\nimport taskReducer from './slices/task';\r\nimport messageReducer from './slices/message';\r\nimport homeworkInProgressReducer from './slices/homeworkInProgress';\r\nimport mediaFileReducer from './slices/mediaFile';\r\nimport pageTemplateReducer from './slices/pageTemplate';\r\nimport notificationReducer from './slices/notification';\r\nimport internshipReducer from './slices/internship';\r\nimport surveyReducer from './slices/survey';\r\nimport studyPlanReducer from './slices/studyPlan';\r\nimport examenReducer from './slices/examen';\r\nimport specificNeedsReducer from './slices/specificNeeds';\r\nimport studentReducer from './slices/student';\r\nimport dashboardJobReducer from './slices/dashboardJob';\r\nimport homeworkCacheContent from './slices/homeworkCacheContent';\r\n// ----------------------------------------------------------------------\r\n\r\nconst rootPersistConfig = {\r\n key: 'root',\r\n storage,\r\n keyPrefix: 'redux-',\r\n whitelist: []\r\n};\r\n\r\nconst productPersistConfig = {\r\n key: 'product',\r\n storage,\r\n keyPrefix: 'redux-',\r\n whitelist: ['sortBy', 'checkout']\r\n};\r\n\r\nconst allReducers = combineReducers({\r\n article: articleReducer,\r\n meeting: meetingReducer,\r\n favorite: favoriteReducer,\r\n agenda: agendaReducer,\r\n objective: objectiveReducer,\r\n task: taskReducer,\r\n virtualClass: virtualClassReducer,\r\n workshop: workshopReducer,\r\n mediaFile: mediaFileReducer,\r\n message: messageReducer,\r\n homeworkInProgress: homeworkInProgressReducer,\r\n mail: mailReducer,\r\n chat: chatReducer,\r\n blog: blogReducer,\r\n user: userReducer,\r\n calendar: calendarReducer,\r\n kanban: kanbanReducer,\r\n learning: learningReducer,\r\n pageTemplate: pageTemplateReducer,\r\n notification: notificationReducer,\r\n job: jobReducer,\r\n dashboardJob: dashboardJobReducer,\r\n survey: surveyReducer,\r\n internship: internshipReducer,\r\n studyPlan: studyPlanReducer,\r\n examen: examenReducer,\r\n specificNeeds: specificNeedsReducer,\r\n student: studentReducer,\r\n homeworkCacheContent: homeworkCacheContent,\r\n product: persistReducer(productPersistConfig, productReducer)\r\n});\r\n\r\nconst rootReducer = (state: any, action: any) => {\r\n if (action.type === 'agenda/logoutUser') {\r\n state = undefined;\r\n }\r\n return allReducers(state, action);\r\n};\r\n\r\nexport { rootPersistConfig, rootReducer };\r\n","import { configureStore, getDefaultMiddleware } from '@reduxjs/toolkit';\r\nimport { useDispatch as useReduxDispatch, useSelector as useReduxSelector } from 'react-redux';\r\nimport { persistStore, persistReducer } from 'redux-persist';\r\nimport { rootPersistConfig, rootReducer } from './rootReducer';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst store = configureStore({\r\n reducer: persistReducer(rootPersistConfig, rootReducer),\r\n middleware: getDefaultMiddleware({\r\n serializableCheck: false,\r\n immutableCheck: false\r\n })\r\n});\r\n\r\nconst persistor = persistStore(store);\r\n\r\nexport type RootState = ReturnType;\r\nexport type AppDispatch = typeof store.dispatch;\r\n\r\nconst { dispatch } = store;\r\n\r\nconst useSelector = useReduxSelector;\r\nconst useDispatch = () => useReduxDispatch();\r\n\r\nexport { store, persistor, dispatch, useSelector, useDispatch };\r\n","import { Examen, PeriodeExamen, SessionExamen, TypeCategoryObjectif } from '../@types/examen';\r\n\r\nexport type LabelCategoryObjectif = {\r\n minuscule: string;\r\n debuteMajuscule: string;\r\n minusculePluriel: string;\r\n debuteMajusculePluriel: string;\r\n accord: string;\r\n accordPluriel: string;\r\n precision: string;\r\n precisionPluriel: string;\r\n possessif: string;\r\n debuteMajusculePossessif: string;\r\n};\r\n\r\nexport const getLabelCategoryObjectif = (category: string): LabelCategoryObjectif => {\r\n switch (category as TypeCategoryObjectif) {\r\n case TypeCategoryObjectif.Examen:\r\n return {\r\n minuscule: 'examen',\r\n debuteMajuscule: 'Examen',\r\n minusculePluriel: 'examens',\r\n debuteMajusculePluriel: 'Examens',\r\n accord: \"à l'examen\",\r\n accordPluriel: 'aux examens',\r\n precision: 'cet examen',\r\n precisionPluriel: 'ces examens',\r\n possessif: 'mon examen',\r\n debuteMajusculePossessif: 'Mon examen'\r\n };\r\n case TypeCategoryObjectif.Concours:\r\n return {\r\n minuscule: 'concours',\r\n debuteMajuscule: 'Concours',\r\n minusculePluriel: 'concours',\r\n debuteMajusculePluriel: 'Concours',\r\n accord: 'au concours',\r\n accordPluriel: 'aux concours',\r\n precision: 'cet concours',\r\n precisionPluriel: 'ces concours',\r\n possessif: 'mon concours',\r\n debuteMajusculePossessif: 'Mon concours'\r\n };\r\n case TypeCategoryObjectif.TitrePro:\r\n return {\r\n minuscule: 'titre professionnel',\r\n debuteMajuscule: 'Titre professionnel',\r\n minusculePluriel: 'titres professionnels',\r\n debuteMajusculePluriel: 'Titres professionnels',\r\n accord: 'au titre professionnel',\r\n accordPluriel: 'aux titres professionnels',\r\n precision: 'ce titre professionnel',\r\n precisionPluriel: 'ces titres professionnels',\r\n possessif: 'mon titre professionnel',\r\n debuteMajusculePossessif: 'Mon titre professionnel'\r\n };\r\n case TypeCategoryObjectif.Certification:\r\n return {\r\n minuscule: 'certification',\r\n debuteMajuscule: 'Certification',\r\n minusculePluriel: 'certifications',\r\n debuteMajusculePluriel: 'Certifications',\r\n accord: 'à la certification',\r\n accordPluriel: 'aux certifications',\r\n precision: 'cette certification',\r\n precisionPluriel: 'ces certifications',\r\n possessif: 'ma certification',\r\n debuteMajusculePossessif: 'Ma certification'\r\n };\r\n default:\r\n return {\r\n minuscule: '',\r\n debuteMajuscule: '',\r\n minusculePluriel: '',\r\n debuteMajusculePluriel: '',\r\n accord: '',\r\n accordPluriel: '',\r\n precision: '',\r\n precisionPluriel: '',\r\n possessif: '',\r\n debuteMajusculePossessif: ''\r\n };\r\n }\r\n};\r\n\r\n/*\r\n * Méthode retournant les libellés par défaut de la rubrique \"Examens\"\r\n * A modifier pour renommer le menu, les titres de rubriques...\r\n */\r\nexport const getLabelDefaultCategoryObjectif = () => {\r\n return getLabelCategoryObjectif(TypeCategoryObjectif.Examen);\r\n};\r\n\r\n/*\r\n * Utilisée pour les titres des rubriques, messages globaux...\r\n */\r\nexport const getLabelMultiCategoryObjectif = (categories: Array) => {\r\n const defaultLabels = getLabelDefaultCategoryObjectif();\r\n\r\n let result: LabelCategoryObjectif = {\r\n minuscule: '',\r\n debuteMajuscule: '',\r\n minusculePluriel: '',\r\n debuteMajusculePluriel: '',\r\n accord: defaultLabels?.accordPluriel,\r\n accordPluriel: '',\r\n precision: defaultLabels?.precisionPluriel,\r\n precisionPluriel: ''\r\n };\r\n\r\n categories.forEach((c: string, i: number) => {\r\n const separator: string = i > 0 ? ' / ' : '';\r\n const labelsCategorie = getLabelCategoryObjectif(c);\r\n\r\n result.minuscule = result.minuscule + separator + labelsCategorie?.minuscule;\r\n result.debuteMajuscule = result.debuteMajuscule + separator + labelsCategorie?.debuteMajuscule;\r\n result.minusculePluriel =\r\n result.minusculePluriel + separator + labelsCategorie?.minusculePluriel;\r\n result.debuteMajusculePluriel =\r\n result.debuteMajusculePluriel + separator + labelsCategorie?.debuteMajusculePluriel;\r\n });\r\n\r\n result.accordPluriel = 'aux ' + result.minusculePluriel;\r\n result.precisionPluriel = 'ces ' + result.minusculePluriel;\r\n\r\n return result;\r\n};\r\n\r\nexport const getLabelTypeFile = (type: string) => {\r\n switch (type) {\r\n case 'DIS':\r\n return 'justificatif de dispense';\r\n case 'INS':\r\n return 'fiche';\r\n case 'REL':\r\n return 'relevé de notes';\r\n\r\n default:\r\n return '';\r\n }\r\n};\r\n\r\nexport const getSessionsFutures = (sessions: SessionExamen[]) => {\r\n return sessions\r\n ? sessions.filter(\r\n (s: SessionExamen) =>\r\n s.dateEpreuvesAdmission &&\r\n s.dateEpreuvesAdmission !== '' &&\r\n new Date(s.dateEpreuvesAdmission) >= new Date()\r\n )\r\n : [];\r\n};\r\n\r\nexport const getSessionsFuturesDisponibles = (sessions: SessionExamen[]) => {\r\n return sessions\r\n ? sessions.filter(\r\n (s: SessionExamen) =>\r\n s.dateEpreuvesAdmission &&\r\n s.dateEpreuvesAdmission !== '' &&\r\n new Date(s.dateEpreuvesAdmission) >= new Date() &&\r\n s.nombreInscrits < s.nombrePlacesMax\r\n )\r\n : [];\r\n};\r\n\r\nexport const getPeriodesFutures = (periodes: PeriodeExamen[]) => {\r\n return periodes ? periodes.filter((p: PeriodeExamen) => new Date(p.dateDebut) >= new Date()) : [];\r\n};\r\n\r\nexport const isAllowedUnregisterExamenInterne = (examen: Examen) => {\r\n return examen?.session?.code === '' && examen?.periode?.code !== '';\r\n};\r\n","import { HubContext } from 'contexts/HubContext';\r\nimport { format } from 'date-fns';\r\nimport { useContext } from 'react';\r\nimport axiosInstance from 'utils/axios';\r\n\r\nexport enum TypeLog {\r\n None = 0,\r\n Connected = 1,\r\n Disconnected = 2,\r\n Tracker = 3,\r\n AttendanceTrackingLoaded = 4,\r\n AttendanceTrackingValidated = 5,\r\n Error = 6\r\n}\r\n\r\nexport default function useHubConnection() {\r\n const proxy = useContext(HubContext);\r\n\r\n const onError = async (message: string, description: string) => {\r\n const version = process.env.REACT_APP_ENT_VERSION;\r\n await methodeHttp(TypeLog.Error, message, `[${version}]-${description}`, 0);\r\n //proxy?.methode('onErrorApplication', message, description);\r\n };\r\n\r\n /**\r\n * Envoi une trace des pages consultés pour les élèves pris en charge\r\n *\r\n * @param page\r\n * @param idConnection\r\n * @returns\r\n */\r\n const onTrackerPage = async (page: string, idConnection: number) => {\r\n await methodeHttp(TypeLog.Tracker, page, '', idConnection);\r\n //proxy?.methode('onTrackerPage', page, idConnection);\r\n };\r\n\r\n /**\r\n * Suivi de Présence :attendance tracking\r\n *\r\n * @param type\r\n * @param idConnection\r\n * @returns\r\n */\r\n const onAttendanceTracking = async (type: TypeLog, label: string, idConnection: number) => {\r\n await methodeHttp(type, label, '', idConnection);\r\n //proxy?.methode('onTrackerPage', page, idConnection);\r\n };\r\n\r\n /**\r\n * Envoyer les donnees via http\r\n * @param methodName\r\n * @param args\r\n * @returns\r\n */\r\n async function methodeHttp(\r\n type: TypeLog,\r\n message: string,\r\n description: string,\r\n idConnection: number\r\n ) {\r\n try {\r\n await axiosInstance.post(\r\n `/api/tracker/create/${type}`,\r\n {\r\n message: message,\r\n description: description,\r\n idConnection: idConnection,\r\n localTime: new Date().getTime() //new Date().toLocaleString('fr-FR') //new Date().toISOString().slice(0, -1)\r\n },\r\n {\r\n headers: { writeOnly: true, tracker: true }\r\n }\r\n );\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n return {\r\n ...proxy,\r\n onError,\r\n onTrackerPage,\r\n onAttendanceTracking\r\n };\r\n}\r\n","import { styled } from '@mui/material/styles';\r\nimport { Verified, Close, ExpandMore } from '@mui/icons-material';\r\nimport { Accordion, AccordionDetails, AccordionSummary, Typography, Card } from '@mui/material';\r\nimport { Box, useTheme } from '@mui/system';\r\nimport CircularProgressWithLabel from 'components/CircularProgressWithLabel';\r\n\r\n//type\r\nimport { StudyPlanChapter } from '../../../../@types/pedagogy';\r\nimport ChapterScoreAvg from '../List/ChapterScoreAvg';\r\nimport ChapterItemGroupCard from './ChapterItemGroupCard';\r\nimport ChapterStatus from './ChapterStatus';\r\nimport { ScoreAvgProgress } from '../ScoreAvgProgress';\r\nimport StudyPlanChapterAverageDialog from '../Moyenne/StudyPlanChapterAverageDialog';\r\n\r\nconst SkillStyle = styled(Accordion)(({ theme }) => ({\r\n borderRadius: 0,\r\n '& .Mui-expanded': {\r\n backgroundColor: theme.palette.grey[100],\r\n marginTop: 0\r\n }\r\n}));\r\n\r\nexport type SubChapterCardProps = {\r\n chapter: StudyPlanChapter;\r\n selectedId?: string;\r\n onSelect: (value: string, expanded: boolean) => void;\r\n};\r\n\r\nexport default function SubChapterCard({ chapter, selectedId, onSelect }: SubChapterCardProps) {\r\n const { id, progression, label, items } = chapter;\r\n const theme = useTheme();\r\n return (\r\n onSelect(id, expanded)}\r\n >\r\n }>\r\n \r\n \r\n {label}\r\n \r\n \r\n \r\n \r\n \r\n }\r\n >\r\n {(onClick) => }\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport { useLocation } from 'react-router-dom';\r\nimport plusFill from '@iconify/icons-eva/plus-fill';\r\n\r\n// material\r\nimport { Box, List, Drawer, Button, Divider, Typography, CardHeader, Tooltip } from '@mui/material';\r\n//type\r\nimport { StudyPlanChapter } from '../../../../@types/pedagogy';\r\n// redux\r\nimport { RootState, useSelector } from 'redux/store';\r\n//components\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { MHidden } from 'components/@material-extend';\r\nimport SubChapterCard from './SubChapterCard';\r\nimport ChapterItemGroupCard from './ChapterItemGroupCard';\r\nimport MIconButton from 'components/MIconButton';\r\nimport { ImportContacts, MenuBook } from '@mui/icons-material';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport useStudyPlanChapterItem from 'hooks/useStudyPlanChapterItem';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype StudyPlanDetailsSidebarProps = {\r\n isOpenSidebar: boolean;\r\n onCloseSidebar: VoidFunction;\r\n chapter?: StudyPlanChapter;\r\n selectedId?: string;\r\n isFullScreen: boolean;\r\n};\r\n\r\nexport default function StudyPlanDetailsSidebar({\r\n isOpenSidebar,\r\n onCloseSidebar,\r\n chapter,\r\n selectedId,\r\n isFullScreen\r\n}: StudyPlanDetailsSidebarProps) {\r\n const { pathname } = useLocation();\r\n const [expanded, setExpanded] = React.useState(selectedId);\r\n const { isMediumOrMobile } = useScreenConfig();\r\n const handleChange = (id: string, isExpanded: boolean) => {\r\n setExpanded(isExpanded ? id : false);\r\n };\r\n\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n\r\n useEffect(() => {\r\n if (isOpenSidebar) {\r\n onCloseSidebar();\r\n }\r\n }, [pathname]);\r\n\r\n useEffect(() => {\r\n if (!selectedId) return;\r\n\r\n setExpanded(selectedId);\r\n }, [selectedId]);\r\n\r\n /**Déplacement vers l'item sélectionné */\r\n useEffect(() => {\r\n const selectedKey = managerChapterItem.selected?.item?.key;\r\n if (selectedKey) {\r\n const selector = `#SItem-${selectedKey}`;\r\n const section = document.querySelector(selector);\r\n section?.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n /**\r\n * if (isMediumOrMobile && onCloseSidebar) {\r\n onCloseSidebar();\r\n }\r\n */\r\n }\r\n }, [managerChapterItem.selected?.item]);\r\n\r\n const renderContent = (\r\n <>\r\n \r\n {chapter?.chapters ? 'Sous chapitres' : 'Supports pédagogiques'}\r\n \r\n }\r\n action={\r\n \r\n onCloseSidebar()}>\r\n {isOpenSidebar && !isMediumOrMobile ? : }\r\n \r\n \r\n }\r\n />\r\n \r\n \r\n {chapter?.chapters?.map((subChapter) => {\r\n return (\r\n \r\n );\r\n })}\r\n {chapter?.items && }\r\n \r\n \r\n \r\n );\r\n\r\n return (\r\n <>\r\n \r\n \r\n {renderContent}\r\n \r\n \r\n \r\n \r\n {renderContent}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Record } from 'immutable';\r\nimport { useEffect } from 'react';\r\nimport { useLocation } from 'react-router';\r\nimport { isValidHttpUrl } from 'utils/helper';\r\n\r\nconst keysListenOfUrl: Record> = {\r\n 'https://seriousskills.myskillandyou.com': ['scrolltop', 'time', 'note'],\r\n 'https://video.espace-eleves.com': ['time'],\r\n 'https://images.myskillandyou.com': ['currentarticle', 'end'],\r\n 'https://pre-seriousskills.skillandyou.io': ['note']\r\n};\r\n\r\ntype useIframeProps = {\r\n url: string;\r\n onEvent: (type: string, value: any) => void;\r\n};\r\n\r\n/**\r\n * permet de s'abonner aux events (postMessage)\r\n * @param param0\r\n * @returns\r\n */\r\nexport const usePostMessage = ({ url = '', onEvent }: useIframeProps) => {\r\n var location = isValidHttpUrl(url) ? new URL(url) : null;\r\n const keys = keysListenOfUrl[location?.origin];\r\n\r\n function listenerMessage(ev: MessageEvent<{ type: string; value: any; score: any }>) {\r\n if (keys === undefined || keys === null || keys.length === 0) return;\r\n\r\n if ([location?.origin].includes(ev.origin)) {\r\n if (keys?.includes(ev.data.type)) {\r\n onEvent(ev.data.type, ev.data.value);\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (!isValidHttpUrl(url)) return;\r\n\r\n //ecoute la position du cours html\r\n window.addEventListener('message', listenerMessage);\r\n return () => {\r\n window.removeEventListener('message', listenerMessage);\r\n };\r\n }, [url]);\r\n\r\n return {};\r\n};\r\n","// material\r\nimport { Box } from '@mui/material';\r\nimport { useEffect, useRef, useState } from 'react';\r\nimport useTrackerActivity from 'hooks/useTrackerActivity';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport CardMediaCustom from 'components/CardMediaCustom';\r\nimport { usePostMessage } from 'hooks/usePostMessage';\r\nimport { isValidHttpUrl } from 'utils/helper';\r\nimport { styled } from '@mui/styles';\r\nimport CardMediaVideoAudio from 'components/CardMediaVideo';\r\nimport { StudyPlanItemType } from '../../../../@types/pedagogy';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type StudyPlanDetailsIframeProps = {\r\n url: string;\r\n type: StudyPlanItemType;\r\n courseId?: string;\r\n};\r\n\r\nconst BoxStyled = styled(Box)({\r\n display: 'flex',\r\n flexDirection: 'column',\r\n flexGrow: 1,\r\n height: '100%',\r\n overflow: 'auto'\r\n});\r\n\r\nexport default function StudyPlanDetailsIframe({\r\n url,\r\n type,\r\n courseId\r\n}: StudyPlanDetailsIframeProps) {\r\n const { eventHandler } = useTrackerActivity({ parent: null });\r\n const {} = usePostMessage({\r\n url: url,\r\n onEvent: () => {\r\n eventHandler(null);\r\n }\r\n });\r\n\r\n if (!isValidHttpUrl(url))\r\n return (\r\n \r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n {[StudyPlanItemType.Audio, StudyPlanItemType.Video].includes(type) ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { useTheme } from '@mui/material/styles';\r\nimport {\r\n Alert,\r\n AlertTitle,\r\n Box,\r\n Button,\r\n Card,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n Stack,\r\n Typography\r\n} from '@mui/material';\r\nimport MeetingDrawer from '../meeting/MeetingDrawer';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport {\r\n Homework,\r\n HomeworkBase,\r\n HomeworkStatus,\r\n HomeworkType,\r\n ScoreType\r\n} from '../../../@types/pedagogy';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { homeworkNoteMin } from 'config';\r\nimport { useEffect, useState } from 'react';\r\nimport { Info } from '@mui/icons-material';\r\nimport { getTeacherListForMeeting } from '../scheduleTeacher/ScheduleTeacherEventsForm';\r\nimport useStudyPlanChapterItem from 'hooks/useStudyPlanChapterItem';\r\nimport { HomeworkNote } from './HomeworkNote';\r\nimport { AgendaEvent, AgendaEventType } from '../../../@types/agenda';\r\nimport { MeetingStatus } from '../../../@types/meeting';\r\nimport { fFullDateWithHours } from 'utils/formatTime';\r\n\r\ntype HomeworkCorrectedMeetingProps = {\r\n last: Homework;\r\n homeworkBase: HomeworkBase;\r\n};\r\n\r\nexport default function HomeworkCorrectedMeeting({\r\n last,\r\n homeworkBase\r\n}: HomeworkCorrectedMeetingProps) {\r\n const { getContractCurrent } = useAuth();\r\n const { events } = useSelector((state: RootState) => state.agenda);\r\n const [openPopup, setOpenPopup] = useState(false);\r\n const [showMessage, setShowMessage] = useState(false);\r\n const [lastMeeting, setLastMeeting] = useState(null);\r\n\r\n const theme = useTheme();\r\n\r\n const contract = getContractCurrent();\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n\r\n const material = managerChapterItem.selected?.item?.material;\r\n\r\n useEffect(() => {\r\n const homeworkCorrected: boolean =\r\n last != null && [HomeworkStatus.Corrected, HomeworkStatus.Remade].includes(last?.status);\r\n\r\n const noteMin = homeworkNoteMin.find((n) => n.key === contract?.scoreOn)?.value;\r\n\r\n let noteTooLow: boolean = false;\r\n\r\n // Devoir noté\r\n // Note au format numérique\r\n // Note minimale paramétrée\r\n // Note présente sur le devoir\r\n if (\r\n homeworkBase?.isScore &&\r\n homeworkBase?.scoreType === ScoreType.sur20 &&\r\n noteMin &&\r\n last?.note &&\r\n last?.note !== ''\r\n ) {\r\n try {\r\n noteTooLow = parseFloat(last.note.replace(',', '.')) < noteMin;\r\n } catch (e) {\r\n noteTooLow = false;\r\n }\r\n }\r\n\r\n const hasScheduleTeacher =\r\n getTeacherListForMeeting(events, material?.scheduleId, homeworkBase)?.length > 0;\r\n\r\n // RDV déjà pris pour le devoir (non annulés)\r\n const previousMeetings: AgendaEvent[] = events\r\n ?.filter(\r\n (evt: AgendaEvent) =>\r\n evt.eventType === AgendaEventType.Meeting &&\r\n evt.metadatas?.status !== MeetingStatus.Cancel &&\r\n evt.metadatas?.homework?.barCode === homeworkBase?.barCode\r\n )\r\n ?.sort((a: AgendaEvent, b: AgendaEvent) =>\r\n new Date(a.start!) < new Date(b.start!) ? 1 : -1\r\n );\r\n\r\n const existingMeeting: AgendaEvent | null =\r\n previousMeetings?.length > 0 ? previousMeetings[0] : null;\r\n\r\n const lastMeeting: AgendaEvent | null =\r\n existingMeeting?.start && last?.correctionDate && existingMeeting.start >= last.correctionDate\r\n ? existingMeeting\r\n : null;\r\n\r\n // Devoir corrigé\r\n // Note trop faible\r\n // Rdv disponibles\r\n // Pas de RDV déjà pris pour le devoir\r\n const askMeeting = homeworkCorrected && noteTooLow && hasScheduleTeacher && !lastMeeting;\r\n\r\n // Condition sur l'affichage du message et du bouton dans le corps du devoir\r\n const manageMessage = homeworkBase?.homeworkType !== HomeworkType.eLearning;\r\n\r\n setLastMeeting(lastMeeting);\r\n setShowMessage(manageMessage && askMeeting);\r\n setOpenPopup(askMeeting);\r\n }, [homeworkBase, events]);\r\n\r\n const handleClosePopup = () => {\r\n setOpenPopup(false);\r\n };\r\n\r\n return (\r\n <>\r\n {lastMeeting && (\r\n }\r\n >\r\n {`Vous avez déjà pris rendez-vous pour ce devoir, le ${fFullDateWithHours(\r\n lastMeeting.start\r\n )} ${\r\n lastMeeting?.metadatas?.teacher\r\n ? `avec ${lastMeeting?.metadatas.teacher.civility} ${lastMeeting?.metadatas.teacher.firstName} ${lastMeeting?.metadatas.teacher.lastName}`\r\n : ''\r\n }.`}\r\n \r\n )}\r\n\r\n {showMessage && (\r\n }\r\n >\r\n Prenez rendez-vous avec votre formateur\r\n \r\n Suite au résultat obtenu à cette évaluation, nous vous proposons de prendre un\r\n rendez-vous avec votre formateur ou votre formatrice pour vous aider à progresser.\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\nconst MeetingPopup = (props: any) => {\r\n const { open, onClose, homeworkBase, last, material, defaultPro } = props;\r\n\r\n // NB : on change le zIndex de la Dialog pour qu'elle puisse se positionner derrière le MeetingDrawer\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Prenez un rendez-vous\r\n \r\n \r\n Suite au résultat obtenu à l'évaluation \"{homeworkBase?.label}\", nous vous proposons\r\n de prendre un rendez-vous avec votre formateur ou votre formatrice pour vous aider à\r\n progresser.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","// material\r\nimport { styled } from '@mui/material/styles';\r\nimport { Box, Card, Typography, Avatar, Stack, Divider } from '@mui/material';\r\n\r\n//type\r\nimport {\r\n Homework,\r\n HomeworkBase,\r\n HomeworkStatus,\r\n HomeworkType,\r\n StudyPlanItemType,\r\n Teacher\r\n} from '../../../@types/pedagogy';\r\n\r\nimport { UserType, FileType } from '../../../@types/common';\r\nimport { MediaFileInfo, MediaFileType, MediaPerimetre } from '../../../@types/media';\r\nimport FileDetailsAttachments from 'components/file/FileDetailsAttachments';\r\nimport { fDate } from 'utils/formatTime';\r\nimport Markdown from 'components/Markdown';\r\nimport { HomeworkNote } from 'components/_dashboard/pedagogy/HomeworkNote';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport CardContainer from 'components/CardContainer';\r\nimport StudyPlanDetailsIframe from '../studyPlan/details/StudyPlanContentIframe';\r\nimport HomeworkCorrectedMeeting from './HomeworkCorrectedMeeting';\r\nimport MediaFileCard from '../media/MediaFileCard';\r\n\r\nconst ContentStyle = styled('div')(({ theme }) => ({\r\n padding: theme.spacing(1.5),\r\n marginTop: theme.spacing(0.5),\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: theme.palette.background.neutral\r\n}));\r\n\r\n//---------------------------------------------------------\r\n\r\ntype HomeworkCorrectedProps = {\r\n last: Homework;\r\n fileCorrectedType?: MediaFileInfo;\r\n homeworkBase: HomeworkBase;\r\n isInPopup?: boolean; // indique si la vue est incluse dans une popup (permer de gérer le cas du bouton \"voir l'évaluation envoyée / corrigée\")\r\n};\r\n\r\n/***\r\n * Details dernier devoir en cours\r\n */\r\nexport const HomeworkCorrected = ({\r\n last,\r\n fileCorrectedType,\r\n homeworkBase,\r\n isInPopup = false\r\n}: HomeworkCorrectedProps) => {\r\n //Aucun traitement si c'est un devoir de type eleaning\r\n if (homeworkBase.homeworkType === HomeworkType.eLearning) {\r\n return (\r\n \r\n {!isInPopup && }\r\n \r\n \r\n );\r\n }\r\n\r\n //dernier introuvable\r\n if (last === undefined) return <>;\r\n\r\n //dernier envoyé\r\n if (last !== null && last.status === HomeworkStatus.Sended)\r\n return (\r\n \r\n );\r\n\r\n if (\r\n [HomeworkStatus.Remade, HomeworkStatus.Corrected, HomeworkStatus.Rejected].includes(last.status)\r\n ) {\r\n const dateCorrected =\r\n last.status === HomeworkStatus.Rejected ? last?.receptionDate! : last?.sendingDate!;\r\n\r\n const observation =\r\n last.status === HomeworkStatus.Rejected ? last.observation : last.appreciation;\r\n switch (homeworkBase.homeworkType) {\r\n case HomeworkType.Standard:\r\n case HomeworkType.Voice:\r\n return (\r\n \r\n {!isInPopup && }\r\n \r\n \r\n );\r\n\r\n case HomeworkType.ReportStage:\r\n return (\r\n \r\n );\r\n\r\n case HomeworkType.EvaluationStage:\r\n return (\r\n \r\n );\r\n default:\r\n return (\r\n \r\n );\r\n }\r\n } else\r\n return (\r\n \r\n );\r\n};\r\n\r\n/*****************************************************************************/\r\ninterface ViewPros extends HomeworkCorrectedProps {\r\n dateCorrected: string;\r\n observation: string;\r\n}\r\n\r\n/**\r\n * Affichage standard d'un devoir corrigé\r\n * @param param0\r\n * @returns\r\n */\r\nconst ViewStandard = ({\r\n last,\r\n fileCorrectedType,\r\n homeworkBase,\r\n dateCorrected,\r\n observation\r\n}: ViewPros) => {\r\n return (\r\n \r\n }\r\n spacing={{ xs: 1, sm: 2, md: 4 }}\r\n width={'100%'}\r\n height={'100%'}\r\n >\r\n \r\n {last.teacher != null && (\r\n \r\n \r\n\r\n \r\n {`${last.teacher.firstName} ${last.teacher.lastName}`}\r\n \r\n \r\n \r\n {fDate(dateCorrected, 'eeee dd MMMM ')}\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n f.userType === UserType.Corrected ||\r\n ([HomeworkStatus.Remade, HomeworkStatus.Rejected].includes(last.status) &&\r\n [UserType.Corrected, UserType.Student].includes(f.userType))\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\n/**\r\n * Vue d'évaluation de stage\r\n * @param param0\r\n */\r\nconst ViewEvaluationStage = ({\r\n last,\r\n fileCorrectedType,\r\n homeworkBase,\r\n dateCorrected,\r\n observation\r\n}: ViewPros) => {\r\n return (\r\n \r\n \r\n Notation de votre responsable de stage\r\n \r\n \r\n \r\n \r\n\r\n \r\n Envoyé le {fDate(dateCorrected, 'eeee dd MMMM ')}\r\n \r\n \r\n );\r\n};\r\n\r\n/**\r\n * Vue d'évaluation de stage\r\n * @param param0\r\n */\r\nconst ViewOther = ({\r\n last,\r\n fileCorrectedType,\r\n homeworkBase,\r\n dateCorrected,\r\n observation\r\n}: ViewPros) => {\r\n return (\r\n \r\n \r\n \r\n Corrigé le {fDate(dateCorrected, 'eeee dd MMMM ')}\r\n \r\n \r\n );\r\n};\r\n\r\n/**\r\n * Affichage de la note + Fichier corrigé si il est présent\r\n */\r\nconst ViewScore = ({ last, homeworkBase, fileCorrectedType }: HomeworkCorrectedProps) => {\r\n // eval non corrigé : rien\r\n if (![HomeworkStatus.Corrected].includes(last.status)) return <>;\r\n\r\n return (\r\n \r\n {homeworkBase.isScore && (\r\n \r\n )}\r\n\r\n \r\n {fileCorrectedType && (\r\n \r\n )}\r\n \r\n {homeworkBase.files\r\n .filter((f) => f.fileType === FileType.Media && f.perimetre === MediaPerimetre.Corrected)\r\n .map((_item) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\n","import { Button, Divider, Popover, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { useRef, useState } from 'react';\r\nimport {\r\n Homework,\r\n HomeworkBase,\r\n HomeworkStatus,\r\n HomeworkType,\r\n StudyPlanItemType\r\n} from '../../../@types/pedagogy';\r\nimport { HomeworkCorrected } from './HomeworkCorrected';\r\n\r\nexport type HomeworkRejectedOrToRedoProps = {\r\n homework?: Homework;\r\n homeworkBase: HomeworkBase;\r\n};\r\nexport const HomeworkRejectedOrToRedo = ({\r\n homework,\r\n homeworkBase\r\n}: HomeworkRejectedOrToRedoProps) => {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n if (homeworkBase.homeworkType === HomeworkType.eLearning) return <>;\r\n\r\n // if (!!homework) return <>;\r\n\r\n if (\r\n homework != undefined &&\r\n homework != null &&\r\n [HomeworkStatus.Rejected, HomeworkStatus.Remade].includes(homework.status)\r\n ) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {homework.status === HomeworkStatus.Rejected\r\n ? 'Évaluation rejetée'\r\n : 'Évaluation à refaire'}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n return <>;\r\n};\r\n","import { MediaFileInfo } from '../@types/media';\r\nimport { useEffect, useState } from 'react';\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemMedia,\r\n StudyPlanItemType,\r\n HomeworkBase,\r\n Material,\r\n StudyPlanItemHtml\r\n} from '../@types/pedagogy';\r\nimport useAuth from './useAuth';\r\n\r\nexport default function useChapterItem(item: StudyPlanItem) {\r\n const [state, setState] = useState<{\r\n material: Material | null;\r\n homeworkBase: HomeworkBase | null;\r\n mediaFile: MediaFileInfo | null;\r\n isDownload: boolean;\r\n label: string;\r\n observation: string;\r\n }>();\r\n\r\n useEffect(() => {\r\n if (item === null) return;\r\n\r\n const material = item.material.scheduleId === '' ? null : item.material;\r\n\r\n const information = getInformations();\r\n const labels = getLabel();\r\n\r\n setState({\r\n material: material,\r\n isDownload: information.isDownload,\r\n homeworkBase: information.homeworkBase,\r\n mediaFile: information.mediaFile,\r\n label: labels.label,\r\n observation: labels.observation\r\n });\r\n }, [item]);\r\n\r\n const getInformations = () => {\r\n switch (item.type) {\r\n case StudyPlanItemType.Pdf:\r\n return {\r\n homeworkBase: null,\r\n isDownload: (item as StudyPlanItemMedia).media.id > 0,\r\n mediaFile: (item as StudyPlanItemMedia).media\r\n };\r\n\r\n case StudyPlanItemType.Html:\r\n return {\r\n homeworkBase: null,\r\n isDownload: (item as StudyPlanItemHtml).media.id > 0,\r\n mediaFile: (item as StudyPlanItemMedia).media\r\n };\r\n\r\n case StudyPlanItemType.Homework:\r\n const homeworkBase = (item as StudyPlanItemHomework).homeworkBase;\r\n //on cherche le fichier avec le codebarre\r\n let media = homeworkBase.files?.filter((f) =>\r\n f.references?.includes(f.fileName.split('.')[0])\r\n )[0];\r\n //sinon on prend le 1er\r\n if (media === undefined) media = homeworkBase && homeworkBase?.files[0];\r\n return {\r\n homeworkBase: homeworkBase,\r\n isDownload: media ? true : false,\r\n mediaFile: media\r\n };\r\n }\r\n return { homeworkBase: null, isDownload: false, mediaFile: null };\r\n };\r\n\r\n const getLabel = () => {\r\n switch (item.type) {\r\n case StudyPlanItemType.Audio:\r\n case StudyPlanItemType.Video:\r\n case StudyPlanItemType.Url:\r\n case StudyPlanItemType.Pdf:\r\n case StudyPlanItemType.Annexe:\r\n const media = (item as StudyPlanItemMedia).media;\r\n return {\r\n label: media.title,\r\n observation:\r\n media.observation?.toLowerCase() === media.title?.toLowerCase() ? '' : media.observation\r\n };\r\n\r\n default:\r\n return { label: item.label, observation: '' };\r\n }\r\n };\r\n\r\n return {\r\n ...state\r\n };\r\n}\r\n","import { Chip } from '@mui/material';\r\nimport Label from 'components/Label';\r\n\r\nexport default function HomeworkIsScore({ isScore = false }) {\r\n return isScore ? (\r\n <>\r\n ) : (\r\n \r\n );\r\n}\r\n","import { IconButtonProps, IconButton } from '@mui/material';\r\nimport { styled } from '@mui/material/styles';\r\nimport { Box } from '@mui/system';\r\n\r\nconst RootStyle = styled(IconButton)(({ theme }) => ({\r\n animationDuration: '.8s',\r\n animationName: 'clignoter',\r\n animationIterationCount: 6,\r\n transition: 'none',\r\n height: '40px',\r\n width: '40px',\r\n borderRadius: '12px',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center'\r\n}));\r\n\r\ninterface IconButtonClignoterProps extends IconButtonProps {}\r\n\r\nconst IconButtonClignoter = ({ children, sx, ...other }: IconButtonClignoterProps) => {\r\n return {children};\r\n};\r\nexport default IconButtonClignoter;\r\n","import { Checkbox, Divider, FormControlLabel } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport { ReactNode, useEffect, useRef, useState } from 'react';\r\n\r\ntype HelpPopoverProps = {\r\n name: string;\r\n title: string;\r\n description: ReactNode;\r\n img: string;\r\n anchorEl: any;\r\n defaultOpen: boolean;\r\n};\r\n\r\nexport default function HelpPopover({\r\n name,\r\n title,\r\n description,\r\n img,\r\n anchorEl,\r\n defaultOpen\r\n}: HelpPopoverProps) {\r\n const [reminder, setReminder] = useLocalStorage(name, defaultOpen);\r\n const [openInfo, setOpenInfo] = useState(reminder);\r\n\r\n const handleCloseInfo = () => {\r\n setOpenInfo(false);\r\n };\r\n\r\n const handleChange = () => {\r\n setOpenInfo(false);\r\n setReminder(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"Ne plus afficher ce message\"\r\n />\r\n \r\n \r\n \r\n );\r\n}\r\n/**\r\n *\r\n */\r\n","// material\r\n\r\nimport { Box } from '@mui/material';\r\nimport { useEffect, useRef, useState } from 'react';\r\nimport useTrackerActivity from 'hooks/useTrackerActivity';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport CardMediaCustom from 'components/CardMediaCustom';\r\nimport usePageSettings from 'hooks/usePageSettings';\r\nimport { usePostMessage } from 'hooks/usePostMessage';\r\nimport { isValidHttpUrl } from 'utils/helper';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type StudyPlanDetailsContentQuizProps = {\r\n url: string;\r\n courseId: string;\r\n onScore: (value: number) => void;\r\n};\r\n\r\nexport default function StudyPlanDetailsContentQuiz({\r\n url,\r\n courseId,\r\n onScore\r\n}: StudyPlanDetailsContentQuizProps) {\r\n const { eventHandler } = useTrackerActivity({ parent: null });\r\n const {} = usePostMessage({\r\n url: url,\r\n onEvent: (type: string, value: any) => {\r\n eventHandler(null);\r\n if (type === 'note') onScore(value);\r\n }\r\n });\r\n\r\n if (!isValidHttpUrl(url))\r\n return ;\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import {\r\n Alert,\r\n AlertTitle,\r\n Card,\r\n CardHeader,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogProps,\r\n DialogTitle,\r\n FormControl,\r\n FormControlLabel,\r\n IconButton,\r\n Switch,\r\n Tooltip,\r\n Typography\r\n} from '@mui/material';\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemHtml,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType\r\n} from '../../../../@types/pedagogy';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { ModeAccess } from '../../../../@types/account';\r\nimport { Button } from '@mui/material';\r\nimport HelpPopover from 'components/HelpPopover';\r\nimport { Box, Stack } from '@mui/system';\r\nimport { useEffect, useRef, useState } from 'react';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport { DialogTitleWithClose } from 'components/DialogTitleWithClose';\r\nimport StudyPlanDetailsContentQuiz from './StudyPlanDetailsContentQuiz';\r\nimport Label from 'components/Label';\r\nimport { CheckRounded, QuizRounded } from '@mui/icons-material';\r\nimport MIconButton from 'components/MIconButton';\r\n\r\ntype StudyPlanDetailsAssimilateProps = {\r\n selectedItem?: StudyPlanItem;\r\n onAssimilate: (event: any, checked: boolean) => void;\r\n};\r\n\r\nconst StudyPlanDetailsAssimilate = ({\r\n selectedItem,\r\n onAssimilate\r\n}: StudyPlanDetailsAssimilateProps) => {\r\n const { isMediumOrMobile } = useScreenConfig();\r\n const { student } = useAuth();\r\n const anchorEl = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n const [quizOpen, setQuizOpen] = useState(false);\r\n const [openSuccess, setOpenSuccess] = useState(false);\r\n const [openEchec, setOpenEchec] = useState(false);\r\n const isChecked = selectedItem?.status === StudyPlanItemStatus.Assimilate;\r\n const isAssimilateControl = selectedItem?.type !== StudyPlanItemType.Homework;\r\n\r\n const isQuizAssimilate = selectedItem?.quizAssimilate ? true : false;\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleSuccessClose = () => {\r\n setOpenSuccess(false);\r\n };\r\n\r\n const handleQuizOpen = () => {\r\n setQuizOpen(true);\r\n setOpenEchec(false);\r\n };\r\n\r\n const onScore = (value: number) => {\r\n if (value === 20) {\r\n onAssimilate(null, true);\r\n setOpenSuccess(true);\r\n } else {\r\n setQuizOpen(false);\r\n setOpenEchec(true);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (open) {\r\n setQuizOpen(false);\r\n setOpenEchec(false);\r\n }\r\n }, [open]);\r\n\r\n if (!isAssimilateControl) return <>;\r\n\r\n if (!selectedItem) return <>;\r\n\r\n if (!isChecked && isQuizAssimilate) {\r\n const score = selectedItem.quizAssimilate?.score || 0;\r\n const buttonName = score > 0 ? 'Poursuivre' : 'Commencer';\r\n const endOfRead = (selectedItem as StudyPlanItemHtml).endOfRead;\r\n\r\n return (\r\n \r\n {isMediumOrMobile ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n Tester mes connaissances\r\n \r\n )}\r\n \r\n \r\n {quizOpen && (\r\n \r\n )}\r\n {!quizOpen && !openEchec && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {openEchec && (\r\n <>\r\n \r\n \r\n \r\n Révisez votre cours et persévérez !\r\n Ce support pédagogique ne semble pas assimilé. Nous vous encourageons à le\r\n relire et à repasser le test ultérieurement.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n }\r\n\r\n if (isQuizAssimilate)\r\n return (\r\n \r\n \r\n \r\n \r\n {openSuccess && (\r\n \r\n \r\n \r\n \r\n Support pédagogique assimilé !\r\n Vous semblez bien connaitre votre support pédagogique.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n }\r\n label={isMediumOrMobile ? '' : 'Assimilé'}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nexport default StudyPlanDetailsAssimilate;\r\n\r\ninterface Props extends DialogProps {\r\n open: boolean;\r\n quizOpen: boolean;\r\n handleClose: () => void;\r\n}\r\n\r\nconst DialogConnaissance = ({ children, open, quizOpen, handleClose }: Props) => {\r\n return (\r\n \r\n \r\n {children}\r\n \r\n );\r\n};\r\n","// material\r\nimport {\r\n Box,\r\n FormControlLabel,\r\n FormControl,\r\n Switch,\r\n Tooltip,\r\n Typography,\r\n Chip,\r\n Stack\r\n} from '@mui/material';\r\n//type\r\nimport {\r\n HomeworkType,\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType\r\n} from '../../../../@types/pedagogy';\r\nimport { ModeAccess } from '../../../../@types/account';\r\n\r\n//components\r\nimport MIconButton from 'components/MIconButton';\r\nimport HomeworkMandatoryRender from 'components/_dashboard/pedagogy/HomeworkMandatoryRender';\r\nimport {\r\n ChevronLeftRounded,\r\n Fullscreen,\r\n FullscreenExit,\r\n MenuBookTwoTone\r\n} from '@mui/icons-material';\r\nimport { HomeworkRejectedOrToRedo } from 'components/_dashboard/pedagogy/HomeworkRejected';\r\nimport ChapterItemStatus from './ChapterItemStatus';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport useChapterItem from 'hooks/useChapterItem';\r\nimport HomeworkIsScore from 'components/_dashboard/pedagogy/HomeworkIsScore';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { IconButton } from '@mui/material';\r\nimport IconButtonClignoter from 'components/IconButtonClignoter';\r\nimport StudyPlanDetailsAssimilate from './StudyPlanDetailsAssimilate';\r\n// ----------------------------------------------------------------------\r\n\r\ntype StudyPlanDetailsToolbarProps = {\r\n selectedItem?: StudyPlanItem;\r\n locked: boolean;\r\n isFullScreen: boolean;\r\n openSidebar: boolean;\r\n onFullScreen: () => void;\r\n onAssimilate: (event: any, checked: boolean) => void;\r\n onToggleSidebar: () => void;\r\n};\r\n\r\n/**\r\n * Actions sur le média, quiz, support\r\n * @param\r\n * @returns\r\n */\r\nexport default function StudyPlanDetailsToolbar({\r\n selectedItem,\r\n onFullScreen,\r\n isFullScreen,\r\n openSidebar,\r\n locked,\r\n onAssimilate,\r\n onToggleSidebar\r\n}: StudyPlanDetailsToolbarProps) {\r\n const { isMediumOrMobile } = useScreenConfig();\r\n const { label, observation, homeworkBase } = useChapterItem(selectedItem!);\r\n const { isReadOnly } = useAuth();\r\n\r\n const renderHomeworkStatus = () => {\r\n const homework = homeworkBase?.homeworks[homeworkBase?.homeworks.length - 1];\r\n\r\n return (\r\n \r\n \r\n {selectedItem && }\r\n\r\n \r\n \r\n {homeworkBase?.coefficient !== 1 && homeworkBase!.coefficient > 0 && (\r\n \r\n )}\r\n \r\n \r\n {homeworkBase && (\r\n \r\n )}\r\n \r\n \r\n );\r\n };\r\n\r\n return (\r\n \r\n {(openSidebar || isMediumOrMobile) && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n {label}\r\n \r\n {observation !== '' && {observation}}\r\n\r\n {isReadOnly && (\r\n \r\n {homeworkBase ? homeworkBase.barCode : selectedItem?.id}\r\n \r\n )}\r\n\r\n {homeworkBase && renderHomeworkStatus()}\r\n \r\n \r\n \r\n {!isMediumOrMobile && (\r\n \r\n \r\n \r\n {isFullScreen ? : }\r\n \r\n \r\n \r\n )}\r\n {!locked && (\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n/*\r\n\r\n*/\r\n","import { useRef, useState } from 'react';\r\n\r\nimport {\r\n Divider,\r\n IconButton,\r\n ListItem,\r\n ListItemButton,\r\n ListItemText,\r\n Stack,\r\n Tooltip,\r\n Typography\r\n} from '@mui/material';\r\nimport { alpha } from '@mui/material/styles';\r\n\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemMedia,\r\n StudyPlanItemType,\r\n StudyPlanSelected\r\n} from '../../../../@types/pedagogy';\r\n\r\nimport MIconButton from 'components/MIconButton';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { CopyAll, Info } from '@mui/icons-material';\r\nimport { Box } from '@mui/system';\r\nimport { CopyToClipboard } from 'react-copy-to-clipboard';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\n\r\nexport type StudyPlanDetailsItemInfoProps = {\r\n selected?: StudyPlanSelected;\r\n};\r\n\r\n/**\r\n * Informations sur le support pédagogique sélectionné\r\n * @param support\r\n * @returns\r\n */\r\nexport default function StudyPlanDetailsItemInfo({ selected }: StudyPlanDetailsItemInfoProps) {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const homeworkBase =\r\n selected?.item.type === StudyPlanItemType.Homework\r\n ? (selected?.item as StudyPlanItemHomework).homeworkBase\r\n : null;\r\n\r\n const media = [\r\n StudyPlanItemType.Pdf,\r\n StudyPlanItemType.Url,\r\n StudyPlanItemType.Video,\r\n StudyPlanItemType.Audio\r\n ].includes(selected?.item.type!)\r\n ? (selected?.item as StudyPlanItemMedia).media\r\n : null;\r\n\r\n const infoList = [\r\n { key: 'UF', value: '' },\r\n { key: 'Chapitre', value: selected?.chapter?.label },\r\n { key: 'Sous chapitre', value: selected?.subChapter?.label },\r\n { key: 'Support', value: selected?.item.label },\r\n { key: 'Référence support', value: homeworkBase ? homeworkBase.barCode : selected?.item.id },\r\n { key: 'Permanence', value: homeworkBase ? homeworkBase?.material?.scheduleLabel : '' },\r\n { key: 'Matière', value: homeworkBase ? homeworkBase?.material?.label : '' },\r\n { key: 'Média', value: media ? media?.title! : '' },\r\n { key: 'Référence média', value: media ? media?.id.toString() : '' },\r\n { key: 'Support lié', value: selected?.item.boundCourse ? selected?.item.boundCourse : '' }\r\n ];\r\n\r\n const getCopy = () => {\r\n let info: string = '';\r\n infoList.map((item) => {\r\n if (item.value !== '') info += `${item.key} : ${item.value}\\n`;\r\n });\r\n return info;\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n alpha(theme.palette.primary.main, theme.palette.action.focusOpacity)\r\n })\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n Informations\r\n \r\n console.log('')}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {infoList\r\n .filter((i) => i.value !== '' && i.value !== null)\r\n .map((info) => {\r\n return (\r\n \r\n \r\n {info.key} : {info.value}\r\n \r\n }\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useState } from 'react';\r\n//materials\r\nimport { styled } from '@mui/material/styles';\r\nimport { Verified, Close, ExpandMore } from '@mui/icons-material';\r\n\r\nimport { AccordionDetails, AccordionSummary, Typography, Accordion, Card } from '@mui/material';\r\nimport { Box, width } from '@mui/system';\r\n// @types\r\nimport { Message, MessageDetail, MessageType } from '../../../@types/message';\r\n//utils\r\nimport { fDate } from 'utils/formatTime';\r\n//redux\r\nimport { RootState, useSelector, useDispatch } from 'redux/store';\r\nimport { getMessage } from 'redux/slices/message';\r\n//component\r\nimport Label from 'components/Label';\r\nimport MessageQuestionCardDetail from './MessageQuestionCardDetail';\r\n\r\n//--------------------------------------------------\r\n\r\nconst RootStyle = styled(Card)(({ theme }) => ({\r\n padding: 10,\r\n margin: 10\r\n}));\r\n\r\nconst HeaderStyle = styled(AccordionSummary)(({ theme }) => ({\r\n backgroundColor: theme.palette.grey[100]\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype MessageQuestionCardProps = {\r\n message: Message;\r\n};\r\n\r\n/**\r\n * Affiche l'entete de la question.\r\n * @params : QUestion\r\n */\r\nexport default function MessageQuestionCard({ message }: MessageQuestionCardProps) {\r\n const dispatch = useDispatch();\r\n //const [expanded, setExpanded] = useState(false);\r\n const [questionDetails, setQuestionDetails] = useState>([]);\r\n const { id, idType, reference, title, read, publicationDate, type } = message;\r\n\r\n const handleChange = (event: any, isExpanded: boolean) => {\r\n if (isExpanded && questionDetails.length === 0) {\r\n dispatch(\r\n getMessage(id, idType, MessageType.Question)((details) => setQuestionDetails(details))(\r\n () => {}\r\n )\r\n );\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n }>\r\n \r\n {title}\r\n \r\n {fDate(publicationDate, \"eeee dd MMMM 'à' HH:mm \")}\r\n \r\n \r\n {type === MessageType.Question && }\r\n {type === MessageType.Answer && (\r\n \r\n )}\r\n \r\n \r\n {}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { useRef, useState } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport questionAnswer from '@iconify/icons-ic/question-answer';\r\nimport clockFill from '@iconify/icons-eva/clock-fill';\r\n\r\nimport {\r\n Avatar,\r\n Badge,\r\n Button,\r\n Divider,\r\n Drawer,\r\n IconButton,\r\n List,\r\n ListItemAvatar,\r\n ListItemButton,\r\n ListItemText,\r\n ListSubheader,\r\n Stack,\r\n Tooltip,\r\n Typography\r\n} from '@mui/material';\r\nimport { Box, width } from '@mui/system';\r\n\r\nimport { Close } from '@mui/icons-material';\r\n//type\r\nimport { StudyPlanItem, StudyPlanItemType } from '../../../../@types/pedagogy';\r\nimport { Message, MessageType } from '../../../../@types/message';\r\n//composant\r\nimport MIconButton from 'components/MIconButton';\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport Scrollbar from 'components/Scrollbar';\r\n\r\nimport { fToNow } from 'utils/formatTime';\r\nimport MessageQuestionCard from 'components/_dashboard/message/MessageQuestionCard';\r\nimport MessagePopover from 'components/_dashboard/message/MessagePopover';\r\n\r\nexport type StudyPlanDetailsItemQuestionProps = {\r\n selected: StudyPlanItem;\r\n};\r\n\r\n/**\r\n * Liste des compétences\r\n */\r\nexport default function StudyPlanDetailsItemQuestion({\r\n selected\r\n}: StudyPlanDetailsItemQuestionProps) {\r\n const { messages } = useSelector((state: RootState) => state.message);\r\n const [open, setOpen] = useState(false);\r\n const anchorRef = useRef(null);\r\n\r\n const handleClick = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const questions = messages.filter(\r\n (q) =>\r\n q.reference === selected?.reference &&\r\n [MessageType.Question, MessageType.Answer].includes(q.type)\r\n );\r\n return (\r\n <>\r\n {questions.length > 0 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Historique des questions posées\r\n \r\n {selected?.label}\r\n
\r\n {selected?.reference}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {questions\r\n .filter((q) => q.read)\r\n .sort((a, b) => (a.publicationDate > b.publicationDate ? -1 : 1))\r\n .map((question) => (\r\n \r\n ))}\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction MessageQuestionListItem({ question }: { question: Message }) {\r\n const { id, reference, title, read, publicationDate } = question;\r\n\r\n return (\r\n \r\n \r\n \r\n {title}\r\n \r\n \r\n \r\n \r\n {fToNow(publicationDate)}\r\n
\r\n }\r\n />\r\n \r\n );\r\n}\r\n\r\n/***\r\n *\r\n */\r\n","import { StudyPlanContext } from 'contexts/StudyPlanContext';\r\nimport { useContext, useState, useEffect } from 'react';\r\nimport { StudyPlanChapter, StudyPlanItem, StudyPlanPhase } from '../@types/pedagogy';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport useStudyPlanChapterItem from './useStudyPlanChapterItem';\r\n\r\nconst useStudyPlanMove = () => {\r\n const { phases } = useStudyPlan();\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n\r\n const [state, setState] = useState<{\r\n previous: StudyPlanItem | null;\r\n next: StudyPlanItem | null;\r\n }>({\r\n previous: null,\r\n next: null\r\n });\r\n\r\n useEffect(() => {\r\n if (managerChapterItem.selected?.item === null) return;\r\n\r\n //console.log('selectedItem?.item.rowNumber', selectedItem?.item.rowNumber);\r\n\r\n let previous = null;\r\n let next = null;\r\n const previousLine = managerChapterItem.selected?.item.rowNumber - 1;\r\n const nextLine = managerChapterItem.selected?.item.rowNumber + 1;\r\n\r\n phases?.map((phase: StudyPlanPhase) => {\r\n phase.chapters.map((unityChapter: StudyPlanChapter) => {\r\n unityChapter.chapters.map((chapter: StudyPlanChapter) => {\r\n if (chapter.chapters !== null) {\r\n chapter.chapters.map((subChapter: StudyPlanChapter) =>\r\n subChapter.items.map((_item) => {\r\n if (_item.rowNumber === previousLine) previous = _item;\r\n\r\n if (_item.rowNumber === nextLine) next = _item;\r\n })\r\n );\r\n } else\r\n return chapter.items.map((_item) => {\r\n if (_item.rowNumber === previousLine) previous = _item;\r\n\r\n if (_item.rowNumber === nextLine) next = _item;\r\n });\r\n });\r\n });\r\n });\r\n\r\n setState({ previous: previous, next: next });\r\n }, [managerChapterItem.selected?.item]);\r\n\r\n return { previous: state.previous, next: state.next };\r\n};\r\n\r\nexport default useStudyPlanMove;\r\n","import { TypographyProps, Typography } from '@mui/material';\r\nimport { styled, Box } from '@mui/system';\r\n\r\ninterface TextMaxLineProps extends TypographyProps {\r\n text: string;\r\n maxWidth: number;\r\n}\r\n\r\nexport default function TextMaxLine({ text, maxWidth, sx, ...other }: TextMaxLineProps) {\r\n return (\r\n \r\n {text}\r\n
\r\n );\r\n}\r\n","import { Badge, Button, ButtonProps, Tooltip } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\nimport useStudyPlanMove from 'hooks/useStudyPlanMove';\r\nimport { ChevronLeftRounded, ChevronRightRounded, GpsFixed } from '@mui/icons-material';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport { ContainerButtonStyle } from './StudyPlanDetailsToolbarSide';\r\nimport MIconButton from 'components/MIconButton';\r\nimport { getStudyPlanItemLabel, getTypeSupport } from 'utils/helperSupport';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { ChapterItemIconTypeStatus } from './ChapterItemStatus';\r\nimport TextMaxLine from 'components/TextMaxLine';\r\nimport { StudyPlanItemStatus } from '../../../../@types/pedagogy';\r\n\r\nconst StudyPlanMove = () => {\r\n const { isMediumOrMobile } = useScreenConfig();\r\n const navigate = useNavigate();\r\n\r\n const handleClick = (reference: string, rowNumber: number) => {\r\n navigate(`${PATH_DASHBOARD.studyPlan.details}/${reference}/${rowNumber}`);\r\n };\r\n\r\n return (\r\n <>\r\n {isMediumOrMobile ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nconst ButtonsMobile = ({\r\n onClick\r\n}: {\r\n onClick: (reference: string, rowNumber: number) => void;\r\n}) => {\r\n const { previous, next } = useStudyPlanMove();\r\n\r\n return (\r\n \r\n {previous && (\r\n \r\n \r\n onClick(previous.reference, previous.rowNumber)}\r\n >\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {next && (\r\n \r\n \r\n onClick(next.reference, next.rowNumber)}\r\n >\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nconst ButtonsStandard = ({\r\n onClick\r\n}: {\r\n onClick: (reference: string, rowNumber: number) => void;\r\n}) => {\r\n const { previous, next } = useStudyPlanMove();\r\n\r\n const previousLabel = (previous && getStudyPlanItemLabel(previous).label) || '';\r\n const nextLabel = (next && getStudyPlanItemLabel(next).label) || '';\r\n\r\n return (\r\n \r\n \r\n \r\n {previous && (\r\n \r\n onClick(previous.reference, previous.rowNumber)}\r\n >\r\n {' '}\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {next && (\r\n \r\n onClick(next.reference, next.rowNumber)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default StudyPlanMove;\r\n/*\r\n \r\n*/\r\nexport const StudyPlanButtonReturn = ({ mobile }: { mobile: boolean }) => {\r\n const navigate = useNavigate();\r\n\r\n const handleReturn = () => {\r\n navigate(PATH_DASHBOARD.studyPlan.root);\r\n };\r\n\r\n return (\r\n \r\n {mobile ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n};\r\n","// material\r\nimport { Box, Tooltip } from '@mui/material';\r\nimport { alpha, styled } from '@mui/material/styles';\r\n\r\nimport { useFile } from 'hooks/useFile';\r\n\r\n//type\r\nimport {\r\n StudyPlanItemHomework,\r\n StudyPlanItemHtml,\r\n StudyPlanItemMedia,\r\n StudyPlanItemType,\r\n StudyPlanSelected\r\n} from '../../../../@types/pedagogy';\r\nimport { FavoriteType } from '../../../../@types/favorite';\r\n\r\n// composant\r\nimport MIconButton, { MIconButtonDowload } from 'components/MIconButton';\r\nimport StudyPlanDetailsItemInfo from './StudyPlanDetailsItemInfo';\r\nimport FavoriteToggleAction from 'components/_dashboard/favorite/FavoriteAction';\r\nimport StudyPlanDetailsItemQuestion from './StudyPlanDetailsItemQuestion';\r\nimport MeetingDrawer from 'components/_dashboard/meeting/MeetingDrawer';\r\nimport MessagePopover from 'components/_dashboard/message/MessagePopover';\r\nimport SkillList from '../skill/SkillList';\r\nimport StudyPlanDetailsEventPopover from './StudyPlanDetailsEventPopover';\r\nimport { StudyPlanItemFavoriteAction } from './StudyPlanItemFavoriteAction';\r\nimport { MenuBook } from '@mui/icons-material';\r\nimport StudyPlanMove, { StudyPlanButtonReturn } from './StudyPlanDetailsMove';\r\nimport StudyPlanDetailsSidebar from './StudyPlanDetailsSidebar';\r\nimport StudyPlanChapterSummary from '../List/StudyPlanChapterSummary';\r\nimport { useState } from 'react';\r\nimport useChapterItem from 'hooks/useChapterItem';\r\nimport useServices from 'hooks/useServices';\r\nimport { useSelector } from 'react-redux';\r\nimport { RootState } from 'redux/store';\r\n//--------------------------------------\r\n\r\nexport const ContainerButtonStyle = styled(Box)({\r\n margin: '0 5px 0 0'\r\n});\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype StudyPlanDetailsToolbarProps = {\r\n selected?: StudyPlanSelected;\r\n isMobile: boolean;\r\n};\r\n\r\nexport default function StudyPlanDetailsToolbarSide({\r\n selected,\r\n isMobile\r\n}: StudyPlanDetailsToolbarProps) {\r\n const { material, isDownload, homeworkBase, mediaFile } = useChapterItem(selected?.item!);\r\n const { services } = useSelector((state: RootState) => state.message);\r\n\r\n const getQuestionParameters = () => {\r\n if (material === undefined || material === null || material.id === '')\r\n return {\r\n subjectId: '',\r\n serviceId: '',\r\n pro: '',\r\n subjects: [],\r\n reference: selected?.item?.reference || '',\r\n services: services!\r\n };\r\n return {\r\n subjectId: selected?.item?.type === StudyPlanItemType.Homework ? 'DEVOIR' : 'COURS',\r\n serviceId: 'PED',\r\n pro: '',\r\n reference: selected?.item?.reference || ''\r\n };\r\n };\r\n\r\n return (\r\n \r\n {material && material.scheduleLabel && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {selected?.item && }\r\n \r\n \r\n \r\n \r\n\r\n \r\n {isDownload && mediaFile && }\r\n \r\n \r\n {homeworkBase && homeworkBase.mandatory && homeworkBase?.skillIds.length > 0 && (\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\nconst MobileToolbarSide = () => {\r\n const [open, setOpen] = useState(false);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n","// material\r\n\r\nimport { Box } from '@mui/material';\r\nimport { useEffect, useRef, useState } from 'react';\r\nimport useTrackerActivity from 'hooks/useTrackerActivity';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport CardMediaCustom from 'components/CardMediaCustom';\r\nimport usePageSettings from 'hooks/usePageSettings';\r\nimport { usePostMessage } from 'hooks/usePostMessage';\r\nimport { isValidHttpUrl } from 'utils/helper';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type StudyPlanDetailsContentHtmlProps = {\r\n url: string;\r\n isVideo: boolean;\r\n courseId: string;\r\n onEndOfRead?: () => void;\r\n};\r\n\r\nexport default function StudyPlanDetailsContentHtml({\r\n url,\r\n isVideo,\r\n courseId,\r\n onEndOfRead\r\n}: StudyPlanDetailsContentHtmlProps) {\r\n const { eventHandler } = useTrackerActivity({ parent: null });\r\n const {} = usePostMessage({\r\n url: url,\r\n onEvent: (type: string, value: any) => {\r\n if (type === 'end' && value === 'ok') {\r\n onEndOfRead && onEndOfRead();\r\n }\r\n eventHandler(null);\r\n }\r\n });\r\n\r\n if (!isValidHttpUrl(url))\r\n return ;\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Card, styled } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport React, { ReactNode } from 'react';\r\n\r\ntype MediaEmptyContentProps = {\r\n title: string;\r\n img?: string;\r\n description?: string;\r\n action?: ReactNode;\r\n};\r\n\r\nconst RootStyle = styled(Box)(({ theme }) => ({\r\n textAlign: 'center',\r\n height: '100%',\r\n width: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n gap: '10px',\r\n padding: '10px'\r\n}));\r\n\r\nexport default function MediaEmptyContent({\r\n title,\r\n img,\r\n description,\r\n action\r\n}: MediaEmptyContentProps) {\r\n return (\r\n \r\n \r\n \r\n {action &&
{action}
}\r\n
\r\n
\r\n );\r\n}\r\n","import { useEffect, useRef, useState } from 'react';\r\n// material\r\nimport { Box, Divider, Typography, Skeleton, CardMedia, Button } from '@mui/material';\r\n//\r\nimport { useFile } from 'hooks/useFile';\r\n\r\n/**\r\n * externe\r\n */\r\n/* eslint-disable @typescript-eslint/no-unused-vars */\r\n// @ts-ignore\r\nimport WebViewer from '@pdftron/pdfjs-express-viewer';\r\nimport useTrackerActivity from 'hooks/useTrackerActivity';\r\nimport MediaEmptyContent from './MediaEmptyContent';\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\nimport { MediaFileInfo } from '../../../@types/media';\r\nimport { FileType } from '../../../@types/common';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport type MediaPDFProps = {\r\n media: MediaFileInfo;\r\n reference?: string;\r\n};\r\n\r\n/**\r\n * Viewer pdf de secours\r\n * Utiliser par les mobiles ou les navigateurs safari ,...\r\n * @param param0\r\n * @returns\r\n */\r\nconst FallbackViwerPdf = ({ data, reference }: { data: any; reference: string }) => {\r\n const viewer = useRef(null);\r\n const { eventHandler } = useTrackerActivity({ parent: null });\r\n\r\n useEffect(() => {\r\n WebViewer(\r\n {\r\n licenseKey: 'kkfBo72oLGn3H0qaZsn6',\r\n path: '/webviewer',\r\n disabledElements: ['downloadButton', 'printButton']\r\n },\r\n viewer.current\r\n )\r\n .then((instance: any) => {\r\n instance.UI.loadDocument(data, { filename: `${reference}.pdf` });\r\n instance.UI.setLanguage('fr');\r\n instance.UI.setFitMode(instance.FitMode.FitWidth);\r\n\r\n const { documentViewer } = instance.Core;\r\n\r\n const hidePage = (pageIndex: number) => {\r\n //documentViewer.setPageZoom(pageIndex, 0.01);\r\n\r\n documentViewer\r\n .getViewerElement()\r\n .querySelector(`#pageSection${pageIndex}`).style.visibility = 'hidden';\r\n };\r\n\r\n documentViewer.addEventListener('pageComplete', (pageNumber: any, canvas: any) => {\r\n eventHandler(null); //trace sur le changement de page\r\n });\r\n })\r\n .catch((ex: any) => {\r\n console.log('error', ex.message);\r\n });\r\n\r\n return () => {\r\n //viewer.current?..removeEventListener('mousemove', eventHandler);\r\n };\r\n }, []);\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\n/***\r\n * Viewer PDF par defaut\r\n * Si il ne fonctionne pas, on prend celui de secours\r\n */\r\nexport default function MediaPDF({ media, reference }: MediaPDFProps) {\r\n const { id, isS3, token } = media;\r\n const [url, setUrl] = useState('');\r\n const { getFile, isLoading, errorDownload, getUrlS3 } = useFile();\r\n const [forceRefresh, setForceRefresh] = useState(false);\r\n\r\n const loadUrl = () => {\r\n setUrl('');\r\n isS3\r\n ? (async function getUrl() {\r\n var response: any = await getUrlS3(\r\n token.fileNameS3,\r\n media.referentiel ? FileType.MediaReferentiel : media.fileType\r\n );\r\n\r\n setUrl(response);\r\n })()\r\n : (async function getLoadFile() {\r\n var response: any = await getFile(id);\r\n\r\n setUrl(response);\r\n })();\r\n };\r\n\r\n /**\r\n * Chargement du fichier au demarrage\r\n */\r\n useEffect(() => {\r\n if (isLoading) {\r\n setForceRefresh(true);\r\n } else {\r\n loadUrl();\r\n }\r\n\r\n return () => {};\r\n }, [id]);\r\n\r\n useEffect(() => {\r\n if (!isLoading && forceRefresh) {\r\n setForceRefresh(false);\r\n loadUrl();\r\n }\r\n }, [isLoading, forceRefresh]);\r\n\r\n if (errorDownload)\r\n return (\r\n \r\n );\r\n\r\n return (\r\n \r\n {isLoading || url === '' ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","// db.ts\r\nimport Dexie, { Table } from 'dexie';\r\n\r\nexport interface Evaluation {\r\n /**\r\n * Represente la clé (support + N°devoir)\r\n */\r\n id?: number;\r\n evaluationKey: string;\r\n content: string;\r\n date: Date;\r\n isDraft: boolean;\r\n}\r\n\r\nexport class SkillAndYouEntDBDexie extends Dexie {\r\n // We just tell the typing system this is the case\r\n evaluations!: Table;\r\n\r\n constructor() {\r\n super('SkillAndYouEntDB');\r\n this.version(1).stores({\r\n evaluations: '++id, evaluationKey,isDraft' // Primary key and indexed props\r\n });\r\n }\r\n}\r\n\r\nexport const db = new SkillAndYouEntDBDexie();\r\n","import { useLiveQuery } from 'dexie-react-hooks';\r\nimport { useEffect, useState } from 'react';\r\nimport { db, Evaluation } from 'redux/db';\r\n\r\n/**\r\n * Gestion sauvegarde evaluation en base de données locale\r\n */\r\nexport const useDBEvaluation = ({\r\n courseId,\r\n homeworkId\r\n}: {\r\n courseId: string;\r\n homeworkId: number;\r\n}) => {\r\n const [evaluation, setEvaluation] = useState(null);\r\n const [loading, setLoading] = useState(true);\r\n const [isDraft, setIsDraft] = useState(false); // permet de savoir si il un bruillon non sauvegardé\r\n\r\n useEffect(() => {\r\n setEvaluation(null);\r\n setIsDraft(false);\r\n\r\n (async function getId() {\r\n const items = await db.evaluations\r\n .where('evaluationKey')\r\n .equals(`${courseId}-${homeworkId}`)\r\n .toArray();\r\n\r\n if (items.length > 0) {\r\n setEvaluation(items[0]);\r\n setIsDraft(items[0].isDraft);\r\n }\r\n setLoading(false);\r\n })();\r\n }, [courseId, homeworkId]);\r\n\r\n const addOrUpate = async (content: string) => {\r\n if (loading) return;\r\n\r\n if (evaluation && evaluation.evaluationKey !== '') {\r\n const isUpaded = await db.evaluations.update(evaluation.id!, {\r\n content: content,\r\n isDraft: true\r\n });\r\n\r\n return 1;\r\n }\r\n\r\n const _evaluation: Evaluation = {\r\n evaluationKey: `${courseId}-${homeworkId}`,\r\n date: new Date(),\r\n content: content,\r\n isDraft: true\r\n };\r\n\r\n const newId = await db.evaluations.add(_evaluation);\r\n _evaluation.id = +newId;\r\n setEvaluation(_evaluation);\r\n };\r\n\r\n const unDraft = async () => {\r\n if (evaluation == null) return;\r\n await db.evaluations.update(evaluation?.id!, {\r\n isDraft: false\r\n });\r\n };\r\n\r\n const remove = async () => {\r\n if (evaluation == null) return;\r\n await db.evaluations.delete(evaluation?.id!);\r\n };\r\n\r\n return {\r\n addOrUpate,\r\n evaluation,\r\n unDraft,\r\n isDraft,\r\n remove\r\n };\r\n};\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport attach2Fill from '@iconify/icons-eva/attach-2-fill';\r\nimport arrowIosBackFill from '@iconify/icons-eva/arrow-ios-back-fill';\r\n//materials\r\nimport { styled } from '@mui/material/styles';\r\nimport {\r\n Button,\r\n Card,\r\n Divider,\r\n FormHelperText,\r\n IconButton,\r\n Stack,\r\n Tooltip,\r\n Typography,\r\n Badge,\r\n Drawer,\r\n List\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\n// redux\r\nimport { useDispatch, useSelector, RootState, dispatch } from '../../../redux/store';\r\nimport {\r\n deleteFileHomeworkInProgress,\r\n getHomeworkInProgress,\r\n saveContentAuto\r\n} from 'redux/slices/homeworkInProgress';\r\n\r\n// type\r\nimport { HomeworkBase, HomeworkInProgress } from '../../../@types/pedagogy';\r\n\r\n//composant\r\nimport { HomeworkTodoPanelProps } from './HomeworkTodo';\r\nimport MIconButton from 'components/MIconButton';\r\nimport { fDate } from 'utils/formatTime';\r\nimport FileDetailsAttachments from 'components/file/FileDetailsAttachments';\r\nimport { RowItemDisplay } from 'components/RowListItem';\r\nimport { Attachment, Close } from '@mui/icons-material';\r\n\r\n//------------------------------------------------\r\n\r\nconst PanelStyle = styled(Card)({\r\n padding: 10,\r\n margin: 5\r\n});\r\n\r\nexport type HomeworkTodoFilesProps = {\r\n files: Array;\r\n onChange: (files: Array) => void;\r\n children(handleClose: () => void, files: Array): any;\r\n fileFormats?: string[];\r\n onClose: VoidFunction;\r\n};\r\n\r\nexport default function HomeworkTodoFiles({\r\n files,\r\n onChange,\r\n children,\r\n fileFormats = [],\r\n onClose\r\n}: HomeworkTodoFilesProps) {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setIsOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n onClose();\r\n setIsOpen(false);\r\n };\r\n\r\n const handleDelete = (id: number) => {\r\n dispatch(\r\n deleteFileHomeworkInProgress(id)(() => {\r\n onChange(files.filter((f) => f.id !== id));\r\n })\r\n );\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Liste des fichiers rattachés à l'évaluation\r\n \r\n \r\n \r\n \r\n \r\n } title=\"Joindre des fichiers\">\r\n \r\n Vous pouvez ajouter jusqu'à 5 fichiers maximum (\r\n {fileFormats?.map((w) => {\r\n return (\r\n \r\n {w},\r\n \r\n );\r\n })}\r\n ) pour un total de 200 Mo maximum.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {children(handleClose, files)}\r\n \r\n \r\n );\r\n}\r\n","import { Typography } from '@mui/material';\r\n//type\r\nimport { HomeworkAddFileResult } from '../../../@types/pedagogy';\r\n\r\n//composants\r\nimport { RowItemDisplayAlert } from 'components/RowListItem';\r\n\r\n//----------------------------------------------------------\r\nexport type HomeworkTodoErrorFileMsgProps = {\r\n error: HomeworkAddFileResult;\r\n};\r\n/**\r\n * Affiche le message d'erreur sur l'envoi du devoir\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function HomeworkTodoErrorFileMsg({ error }: HomeworkTodoErrorFileMsgProps) {\r\n let message: string = 'impossible de transmettre les fichiers';\r\n switch (error) {\r\n case HomeworkAddFileResult.ErrorFilesSizeReached:\r\n message = \"L'ensemble de vos fichiers est trop volumineux.\";\r\n break;\r\n case HomeworkAddFileResult.ErrorHomeworkSended:\r\n message = \"L'évaluation a déjà été transmise.\";\r\n break;\r\n case HomeworkAddFileResult.ErrorNumberFilesReached:\r\n message = 'Vous avez atteint le nombre max de fichiers';\r\n break;\r\n case HomeworkAddFileResult.ErrorExtensions:\r\n message = \"L'extension des fichiers n'est pas compatible.\";\r\n break;\r\n case HomeworkAddFileResult.NotFound:\r\n case HomeworkAddFileResult.Error:\r\n message = 'Nous rencontrons des problèmes.';\r\n break;\r\n }\r\n return (\r\n \r\n {message}\r\n \r\n );\r\n}\r\n","import axios from 'axios';\r\nimport axiosInstance from 'utils/axios';\r\n\r\nexport type Fichier = {\r\n url: string;\r\n id: string;\r\n};\r\n\r\nconst useMediatheque = () => {\r\n /**\r\n *\r\n * @param context\r\n * @param urlApi\r\n */\r\n const uploadDataToS3 = async (fileName: string, urlApi: string, data: any) => {\r\n //recuperer l'url signée\r\n const fichier = await getUrlSigned(fileName, urlApi);\r\n\r\n const { url, id } = fichier;\r\n if (url === null) return { ...fichier, statut: false };\r\n\r\n const isUploaded = await sendFile(data, url);\r\n\r\n return { ...fichier, statut: isUploaded };\r\n };\r\n\r\n /**\r\n * Appeler la médatique pour une url signed\r\n * @param context\r\n */\r\n const getUrlSigned = async (fileName: string, urlApi: string) => {\r\n let response = await axiosInstance.get(`${urlApi}?fileName=${fileName}`, {\r\n headers: { writeOnly: true }\r\n });\r\n return response.data;\r\n };\r\n /*\r\n const sendFile = async (file: any, url: string) => {\r\n const formData = new FormData();\r\n formData.append('file', file);\r\n\r\n const response = await axios.put(url, formData, {\r\n headers: { 'content-type': 'multipart/form-data' }\r\n });\r\n\r\n const { status } = response;\r\n\r\n return status === 200;\r\n };\r\n*/\r\n\r\n async function sendFile(data: Blob, url: string): Promise {\r\n try {\r\n const response = await axios.put(url, data);\r\n return response.status === 200;\r\n } catch (error) {\r\n console.error('Error uploading object:', error);\r\n return false;\r\n }\r\n }\r\n return { uploadDataToS3, getUrlSigned, sendFile };\r\n};\r\n\r\nexport default useMediatheque;\r\n","import useMediatheque from './useMediatheque';\r\n\r\nimport { FileBase, FileBaseInfo, FileType, UserType } from '../@types/common';\r\nimport {\r\n HomeworkAddFileResponse,\r\n HomeworkAddFileResult,\r\n HomeworkFileRequest,\r\n HomeworkInProgress\r\n} from '../@types/pedagogy';\r\nimport { dispatch } from 'redux/store';\r\nimport {\r\n addFileHomeworkInProgress,\r\n endLoadingFile,\r\n getHomeworkInProgress,\r\n hasErrorFile,\r\n saveContentAuto,\r\n startLoadingFile\r\n} from 'redux/slices/homeworkInProgress';\r\nimport axiosInstance from 'utils/axios';\r\nimport { formatFileSize } from 'utils/getFileFormat';\r\nimport useAuth from './useAuth';\r\n\r\nconst useHomeworkFile = () => {\r\n const { uploadDataToS3, getUrlSigned, sendFile } = useMediatheque();\r\n const { getContractCurrent } = useAuth();\r\n\r\n const addFiles = async (request: HomeworkFileRequest) => {\r\n dispatch(startLoadingFile());\r\n\r\n let filesAdd: Array = [];\r\n\r\n const files = request.files;\r\n request.files = [];\r\n\r\n for (const file of files) {\r\n const response = await addFileS3(request, file);\r\n\r\n if (response.result === HomeworkAddFileResult.Success) {\r\n filesAdd.push(response.files[0]);\r\n } else {\r\n dispatch(hasErrorFile(response.result));\r\n return { files: filesAdd, statut: false };\r\n }\r\n }\r\n\r\n dispatch(endLoadingFile());\r\n\r\n return { files: filesAdd, statut: true };\r\n };\r\n\r\n const addFileS3 = async (request: HomeworkFileRequest, file: any) => {\r\n try {\r\n // demander l'url au serveur\r\n const { fileName, url, erreur } = await getUrlSigned(\r\n file.name,\r\n 'api/pedagogy/homework/inprogress/file/url'\r\n );\r\n\r\n //envoyer le fichier sur le S3\r\n if (url !== '') {\r\n const isSended = await sendFile(file, url);\r\n if (isSended) {\r\n request.files = [];\r\n var requestFinal = Object.assign({}, request, {\r\n fileName: file.name,\r\n size: file.size,\r\n contentType: file.type,\r\n fileNameS3: fileName\r\n });\r\n //enregistrer les données en base\r\n let response = await axiosInstance.post(\r\n `/api/pedagogy/homework/inprogress/file/add`,\r\n requestFinal\r\n );\r\n return response.data;\r\n }\r\n }\r\n\r\n // gestion du fihcier avec la médiatheque\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n\r\n return { result: HomeworkAddFileResult.Error, files: [] };\r\n };\r\n\r\n return { addFiles };\r\n};\r\n\r\nexport default useHomeworkFile;\r\n","import * as Yup from 'yup';\r\nimport { useSnackbar } from 'notistack';\r\nimport { useFormik, Form, FormikProvider } from 'formik';\r\n// material\r\nimport { LoadingButton } from '@mui/lab';\r\n\r\nimport { Typography, DialogActions, Alert, Card } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n// @types\r\nimport { HomeworkAddFileResult, HomeworkBase, HomeworkFileRequest } from '../../../@types/pedagogy';\r\nimport { FileBaseInfo } from '../../../@types/common';\r\n\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { addFileHomeworkInProgress } from 'redux/slices/homeworkInProgress';\r\n\r\n//composants\r\nimport HomeworkTodoErrorFileMsg from './HomeworkTodoErrorFileMsg';\r\nimport { UploadMultiFile } from 'components/upload';\r\nimport useHubConnection from 'hooks/useHubConnection';\r\nimport { formatFileSize } from 'utils/getFileFormat';\r\nimport { DropEvent, FileRejection } from 'react-dropzone';\r\nimport useHomeworkFile from 'hooks/useHomeworkFile';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type HomeworkFilesAddProps = {\r\n onAdd: (files: Array) => void;\r\n onClose: () => void;\r\n homeworkBase: HomeworkBase;\r\n alreadyAttached: number;\r\n filesAdded: Array;\r\n};\r\n\r\nexport default function HomeworkFilesAdd({\r\n onAdd,\r\n onClose,\r\n homeworkBase,\r\n alreadyAttached,\r\n filesAdded\r\n}: HomeworkFilesAddProps) {\r\n const { isLoadingFile, errorFile } = useSelector((state: RootState) => state.homeworkInProgress);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { onError } = useHubConnection();\r\n const { addFiles } = useHomeworkFile();\r\n const FormSchema = Yup.object().shape({\r\n files: Yup.array()\r\n .required('Les fichiers sont obligatoire')\r\n .min(1, 'Vous devez joindre au moins 1 fichier')\r\n .max(5, 'Vous ne pouvez pas dépasser 5 fichiers')\r\n });\r\n\r\n /**\r\n * Initialisez les informations\r\n * @returns\r\n */\r\n const getInitialValues = () => ({\r\n files: [],\r\n barCode: homeworkBase.barCode,\r\n id: homeworkBase.id,\r\n courseId: homeworkBase.courseId,\r\n conDvrFicId: 0\r\n });\r\n\r\n const formik = useFormik({\r\n initialValues: getInitialValues(),\r\n validationSchema: FormSchema,\r\n onSubmit: async (values, { setSubmitting, resetForm }) => {\r\n const { files } = await addFiles(values);\r\n\r\n if (files.length > 0) {\r\n onAdd(files);\r\n enqueueSnackbar('Fichiers ajoutés', { variant: 'success' });\r\n resetForm({ values: getInitialValues() });\r\n }\r\n\r\n return;\r\n /**\r\n * enregistrement du ou des fichiers\r\n */\r\n try {\r\n dispatch(\r\n addFileHomeworkInProgress(values)((files: Array) => {\r\n onAdd(files);\r\n enqueueSnackbar('Fichiers ajoutés', { variant: 'success' });\r\n resetForm({ values: getInitialValues() });\r\n })((request: HomeworkFileRequest, message: string) => {\r\n resetForm({ values: getInitialValues() });\r\n let filesInfos = '';\r\n request.files.map((f) => {\r\n filesInfos += `${formatFileSize(f.size, 1)}-${f.name}`;\r\n });\r\n onError(`fichier évaluation ${request.barCode}`, `${filesInfos}- ${message}`);\r\n })((files: Array, error: HomeworkAddFileResult) => {\r\n resetForm({ values: getInitialValues() });\r\n })\r\n );\r\n } catch (error) {\r\n setSubmitting(false);\r\n }\r\n }\r\n });\r\n\r\n const { errors, values, touched, handleSubmit, isSubmitting, setFieldValue, getFieldProps } =\r\n formik;\r\n\r\n const handleDrop = (acceptedFiles: any, fileRejections: FileRejection[], event: DropEvent) => {\r\n if (acceptedFiles.length === 0) return;\r\n\r\n let files = values.files;\r\n\r\n acceptedFiles.map((file: File | string) =>\r\n files.push(\r\n Object.assign(file, {\r\n preview: ''\r\n })\r\n )\r\n );\r\n\r\n setFieldValue('files', files);\r\n handleSubmit();\r\n };\r\n\r\n const handleRemove = (file: File | string) => {\r\n const filteredItems = values.files.filter((_file: File) => _file !== file);\r\n setFieldValue('files', filteredItems);\r\n };\r\n\r\n let extensions = [...homeworkBase.attachmentType.extensions];\r\n if (!extensions.includes('.pdf')) extensions.push('.pdf');\r\n\r\n return (\r\n \r\n
\r\n {filesAdded?.length > 4 ? (\r\n \r\n \r\n Vous avez atteint le nombre maximun de fichiers à joindre.\r\n \r\n \r\n ) : (\r\n \r\n {!isLoadingFile && (\r\n \r\n )}\r\n {touched.files && errors.files && (\r\n {touched.files && errors.files}\r\n )}\r\n\r\n {errorFile && }\r\n \r\n )}\r\n\r\n \r\n \r\n FERMER\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n","import { Typography } from '@mui/material';\r\n//type\r\nimport { HomeworkSendResult } from '../../../@types/pedagogy';\r\n\r\n//composants\r\nimport { RowItemDisplayAlert } from 'components/RowListItem';\r\nimport { fDateMeeting } from 'utils/formatTime';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { ModeAccess } from '../../../@types/account';\r\n\r\n//----------------------------------------------------------\r\nexport type HomeworkTodoErrorSendedMsgProps = {\r\n error: HomeworkSendResult;\r\n};\r\n/**\r\n * Affiche le message d'erreur sur l'envoi du devoir\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function HomeworkTodoErrorSendedMsg({ error }: HomeworkTodoErrorSendedMsgProps) {\r\n let message: string = 'Nous ne pouvons pas donner suite à cette demande';\r\n switch (error) {\r\n case HomeworkSendResult.IsFileRequired:\r\n message = \"L'évaluation n'est pas complète(un fichier est requis).\";\r\n break;\r\n case HomeworkSendResult.IsOnlineError:\r\n message =\r\n \"Impossible d'enregistrer la rédaction en ligne. Veuillez joindre un fichier à la place\";\r\n\r\n break;\r\n case HomeworkSendResult.IsTypeFileRequired:\r\n message = 'Le type de fichier attendu est manquant';\r\n break;\r\n case HomeworkSendResult.NotFound:\r\n case HomeworkSendResult.Error:\r\n message = 'Nous rencontrons des problèmes.';\r\n break;\r\n }\r\n\r\n return (\r\n \r\n {message}\r\n \r\n );\r\n}\r\n","import React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\r\nimport { Button, CircularProgress, Divider, MenuItem, Tooltip, Typography } from '@mui/material';\r\nimport { Box, typography } from '@mui/system';\r\n\r\n// redux\r\nimport { dispatch, RootState } from 'redux/store';\r\nimport { saveContentAuto } from 'redux/slices/homeworkInProgress';\r\n\r\n// type\r\nimport { Homework, HomeworkBase, HomeworkInProgress } from '../../../@types/pedagogy';\r\n\r\n//composant\r\nimport MIconButton from 'components/MIconButton';\r\nimport { SaveAltRounded, SaveRounded } from '@mui/icons-material';\r\nimport HelpPopover from 'components/HelpPopover';\r\n\r\n//----------------------------------------------------------------------------------\r\n\r\ntype HomeworkTodoSaveProps = {\r\n content: string;\r\n homeworkBase: HomeworkBase;\r\n onSaved: () => void;\r\n};\r\n\r\n/**\r\n * Enregistrement coté serveur du devoir en cours\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function HomeworkTodoSave({\r\n content,\r\n homeworkBase,\r\n onSaved\r\n}: HomeworkTodoSaveProps) {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const anchorRef = useRef(null);\r\n\r\n const handleSave = () => {\r\n setIsLoading(true);\r\n if (content === null || content === undefined) content = '';\r\n\r\n dispatch(\r\n saveContentAuto({\r\n courseId: homeworkBase.courseId,\r\n id: homeworkBase.id,\r\n barCode: homeworkBase.barCode,\r\n content: content,\r\n attachmentType: null\r\n })(() => {\r\n setIsLoading(false);\r\n onSaved();\r\n })\r\n ).then(() => setIsLoading(false));\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {isLoading ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\n/**\r\n * \r\n\r\n */\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useWatch, Control } from 'react-hook-form';\r\n\r\n// type\r\nimport { Homework, HomeworkBase, HomeworkInProgress } from '../../../@types/pedagogy';\r\nimport { fDate } from 'utils/formatTime';\r\n\r\n//----------------------------------------------------------------------------------\r\n\r\ntype HomeworkTodoSaveDraftProps = {\r\n children: any;\r\n control: Control;\r\n defaultValue: string;\r\n homeworkBase: HomeworkBase;\r\n onSave: (value: string) => void;\r\n};\r\n\r\n/**\r\n * Enregistrement automatique sur changement de la zone de texte\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function HomeworkTodoSaveDraft({\r\n control,\r\n children,\r\n defaultValue,\r\n homeworkBase,\r\n onSave\r\n}: HomeworkTodoSaveDraftProps) {\r\n const [timeSaved, setTimeSaved] = useState('');\r\n\r\n //detecte les changements\r\n const valueChanged = useWatch({\r\n control,\r\n name: 'content',\r\n defaultValue: defaultValue\r\n });\r\n\r\n useEffect(() => {\r\n if (valueChanged === '') return;\r\n\r\n const interval = setTimeout(() => {\r\n onSave(valueChanged);\r\n }, 3000);\r\n return () => clearInterval(interval);\r\n }, [valueChanged]);\r\n\r\n return children(timeSaved, valueChanged?.length);\r\n}\r\n","import { Alert, Typography } from '@mui/material';\r\n//type\r\nimport { HomeworkSendResult } from '../../../@types/pedagogy';\r\nimport { useSelector } from 'react-redux';\r\nimport { dispatch, RootState } from 'redux/store';\r\n\r\n//composants\r\nimport { RowItemDisplayAlert } from 'components/RowListItem';\r\nimport { fDateMeeting } from 'utils/formatTime';\r\nimport { useSnackbar } from 'notistack';\r\nimport { useEffect } from 'react';\r\nimport { initError } from 'redux/slices/homeworkInProgress';\r\n\r\n/**\r\n * Affiche le message d'erreur sur l'enregistremnt du contenu du devoir en ligne\r\n */\r\nexport default function HomeworkTodoSaveErrorMsg({ reference }: { reference: string }) {\r\n const { error } = useSelector((state: RootState) => state.homeworkInProgress);\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n useEffect(() => {\r\n initError();\r\n }, [reference]);\r\n\r\n useEffect(() => {\r\n if (!error) return;\r\n enqueueSnackbar('Nous ne pouvons pas donner suite à cette demande', { variant: 'error' });\r\n }, [error]);\r\n\r\n let message: string = 'Nous ne pouvons pas donner suite à cette demande';\r\n if (!error || error === '') return <>;\r\n return (\r\n dispatch(initError())}>\r\n {message}\r\n \r\n );\r\n}\r\n","import React, { useRef, useEffect, useState } from 'react';\r\n\r\n//materials\r\nimport DialogConfirm from 'components/DialogConfirm';\r\nimport { Evaluation } from 'redux/db';\r\nimport { Typography } from '@mui/material';\r\n\r\n//composant\r\n\r\ntype HomeworkTodoRetrieveDraftProps = {\r\n evaluation?: Evaluation | null;\r\n onRetrieve: (value: string) => void;\r\n};\r\n\r\n/**\r\n * Recuperer le brouillon suite à une coupure ou une erreur\r\n * @param evaluation : Object contenant les données\r\n * @returns\r\n */\r\n\r\nexport default function HomeworkTodoRetrieveDraft({\r\n evaluation,\r\n onRetrieve\r\n}: HomeworkTodoRetrieveDraftProps) {\r\n const [open, setOpen] = useState(true);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleRetrieve = () => {\r\n if (evaluation) onRetrieve(evaluation.content);\r\n setOpen(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n Souhaitez-vous récupérer les dernières modifications retrouvées sur votre navigateur ?\r\n \r\n \r\n );\r\n}\r\n","import { Typography } from '@mui/material';\r\nimport { Alert } from '@mui/material';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { useEffect, useState } from 'react';\r\n\r\nexport default function HomeworkPlagiat({ defaultOpen }: { defaultOpen: boolean }) {\r\n const [isPlagiat, setIsPlagiat] = useState(defaultOpen);\r\n const { removePlagiat } = useStudyPlan();\r\n\r\n const handleClickPlagiat = () => {\r\n setIsPlagiat(false);\r\n //declenchement lecture devoir\r\n removePlagiat();\r\n };\r\n\r\n useEffect(() => {\r\n setIsPlagiat(defaultOpen);\r\n }, [defaultOpen]);\r\n\r\n if (!isPlagiat) return <>;\r\n\r\n return (\r\n \r\n Le plagiat tue l'apprentissage !\r\n \r\n Le plagiat tue l'apprentissage ! Pour que votre formation soit réellement bénéfique, les\r\n évaluations doivent être effectuées par vous-même et ne doivent pas contenir d’informations\r\n provenant de documents divers (informations de sources externes (plagiat), corrigé-type de\r\n l’évaluation, etc.) ni être produites par une intelligence artificielle générative.\r\n \r\n \r\n );\r\n}\r\n","import { SaveRounded } from '@mui/icons-material';\r\nimport { Snackbar, Typography } from '@mui/material';\r\nimport { Alert } from '@mui/material';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { useEffect, useState } from 'react';\r\n\r\nexport default function HomeworkAlertSave({ defaultOpen }: { defaultOpen: boolean }) {\r\n const [isSavedOnServer, setIsSavedOnServer] = useState(defaultOpen);\r\n\r\n const handleClick = () => {\r\n setIsSavedOnServer(false);\r\n };\r\n\r\n useEffect(() => {\r\n setIsSavedOnServer(defaultOpen);\r\n }, [defaultOpen]);\r\n\r\n if (!isSavedOnServer) return <>;\r\n\r\n return (\r\n \r\n }\r\n style={{ marginBottom: '50px' }}\r\n >\r\n Sauvegardez régulièrement votre travail ! \r\n \r\n Pensez à enregistrer régulièrement votre travail afin de ne pas le perdre. Une sauvegarde\r\n automatique est effectuée toutes les 30 secondes sur votre navigateur. Pour enregistrer\r\n sur nos serveurs, pensez à sauvegarder régulièrement et manuellement.\r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport * as Yup from 'yup';\r\nimport { useForm, Controller, useWatch, Control } from 'react-hook-form';\r\nimport { yupResolver } from '@hookform/resolvers/yup';\r\n\r\n//materials\r\nimport { styled } from '@mui/material/styles';\r\nimport {\r\n Alert,\r\n Button,\r\n Card,\r\n Divider,\r\n FormHelperText,\r\n IconButton,\r\n LinearProgress,\r\n List,\r\n Snackbar,\r\n Stack,\r\n Tooltip,\r\n Typography\r\n} from '@mui/material';\r\nimport { Box, typography } from '@mui/system';\r\nimport { Edit, SendRounded } from '@mui/icons-material';\r\n\r\n// redux\r\nimport { useDispatch, useSelector, RootState, dispatch } from '../../../redux/store';\r\nimport { getHomeworkInProgress, sendHomeworkInProgress } from 'redux/slices/homeworkInProgress';\r\n\r\n// type\r\nimport { Homework, HomeworkBase, HomeworkInProgress } from '../../../@types/pedagogy';\r\n\r\nimport { useDBEvaluation } from 'hooks/useDBEvaluation';\r\n\r\n//composant\r\nimport MIconButton from 'components/MIconButton';\r\nimport { HomeworkTodoPanelProps, ToolbarFileAttachments } from './HomeworkTodo';\r\nimport { QuillEditor } from 'components/editor';\r\n\r\nimport HomeworkTodoFiles from './HomeworkTodoFiles';\r\nimport HomeworkFilesAdd from './HomeworkTodoFilesAdd';\r\nimport DialogConfirm from 'components/DialogConfirm';\r\nimport {\r\n RowItemDisplay,\r\n RowItemDisplayAlert,\r\n RowItemDisplayFiles,\r\n RowItemDisplayTitle\r\n} from 'components/RowListItem';\r\nimport HomeworkTodoErrorSendedMsg from './HomeworkTodoErrorSendedMsg';\r\nimport HomeworkTodoSave from './HomeworkTodoSave';\r\nimport HomeworkTodoHistory from './HomeworkTodoHistory';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { useSnackbar } from 'notistack';\r\nimport HomeworkTodoSaveDraft from './HomeworkTodoSaveDraft';\r\nimport HomeworkTodoSaveErrorMsg from './HomeworkTodoSaveErrorMsg';\r\nimport { fDateTime } from 'utils/formatTime';\r\nimport HomeworkTodoRetrieveDraft from './HomeworkTodoRetrieveDraft';\r\nimport HomeworkPlagiat from './HomeworkPlagiat';\r\nimport HomeworkAlertSave from './HomeworkAlertSave';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport useStudyPlanHomework from 'hooks/useStudyPlanHomework';\r\nimport { updateHomeworkCacheContent } from 'redux/slices/homeworkCacheContent';\r\n\r\n//------------------------------------------------\r\n\r\nconst PanelStyle = styled(Card)({\r\n padding: 10,\r\n margin: 5,\r\n backgroundColor: '#f5f5f5',\r\n height: 'calc(100vh - 355px)',\r\n overflow: 'auto'\r\n});\r\n\r\nconst ContainerButtonStyle = styled(Box)({\r\n marginRight: 5\r\n});\r\n\r\n//------------------------------------------------\r\nconst maxCaraterLength = 300000; //nombre de caracteres max dans l editeur\r\n\r\nconst FormSchema = Yup.object().shape({\r\n content: Yup.string().max(maxCaraterLength, ''),\r\n // .required('la description est obligatoire')\r\n // .min(200, 'Vous devez saisir un minimum de 200 caractères'),\r\n files: Yup.array()\r\n});\r\n\r\nexport default function HomeworkTodoPanelEdit({\r\n homeworkBase,\r\n fullScreen,\r\n opened,\r\n isVisible\r\n}: HomeworkTodoPanelProps) {\r\n const dispatch = useDispatch();\r\n const { removePlagiat } = useStudyPlan();\r\n const managerStudyPlanHomework = useStudyPlanHomework();\r\n const { enqueueSnackbar } = useSnackbar();\r\n // const { speak } = useSpeechSynthesis();\r\n\r\n const { errorSended, isLoadingSended } = useSelector(\r\n (state: RootState) => state.homeworkInProgress\r\n );\r\n const {\r\n watch,\r\n reset,\r\n control,\r\n register,\r\n setValue,\r\n handleSubmit,\r\n getValues,\r\n formState: { errors, isSubmitting, isValid }\r\n } = useForm({\r\n mode: 'onTouched',\r\n resolver: yupResolver(FormSchema),\r\n defaultValues: {\r\n content: '',\r\n files: [],\r\n id: homeworkBase.id,\r\n barCode: homeworkBase.barCode,\r\n courseId: homeworkBase.courseId,\r\n status: 'A',\r\n isSavedOnServer: false\r\n }\r\n });\r\n\r\n const [openConfirm, setOpenConfirm] = useState(false);\r\n const [savedTime, setSavedTime] = useState('');\r\n const { addOrUpate, unDraft, evaluation, isDraft, remove } = useDBEvaluation({\r\n courseId: homeworkBase.courseId,\r\n homeworkId: homeworkBase.id\r\n });\r\n\r\n const { isMediumOrMobile } = useScreenConfig();\r\n const [isFullScreen, setIsFullScreen] = useLocalStorage('fullscreenDetailTraining', true);\r\n const [contentHeight, setContentHeight] = useState(350);\r\n\r\n const { idCache, courseIdCache, barCodeCache, contentCache, applyContentCache } = useSelector(\r\n (state: RootState) => state.homeworkCacheContent\r\n );\r\n\r\n const [useContentCache, setUseContentCache] = useState(false);\r\n\r\n useEffect(() => {\r\n setValue('files', []);\r\n setValue('status', 'A');\r\n setValue('content', '');\r\n setValue('barCode', homeworkBase.barCode);\r\n setValue('id', homeworkBase.id);\r\n setValue('courseId', homeworkBase.courseId);\r\n\r\n //Si le cache est activé pour le devoir en cours\r\n const hasContentCache =\r\n applyContentCache &&\r\n homeworkBase &&\r\n idCache === homeworkBase.id &&\r\n courseIdCache === homeworkBase.courseId &&\r\n barCodeCache === homeworkBase.barCode;\r\n\r\n setUseContentCache(hasContentCache ?? false);\r\n\r\n /*Recuperer le contenu commencé*/\r\n dispatch(\r\n getHomeworkInProgress(\r\n homeworkBase.courseId,\r\n homeworkBase.id\r\n )((_item) => {\r\n setValue('files', _item.files);\r\n setValue('status', _item.status);\r\n\r\n if (!hasContentCache) {\r\n setValue('content', _item.content);\r\n dispatch(updateHomeworkCacheContent({ homework: homeworkBase, content: _item.content }));\r\n }\r\n\r\n if (_item.content !== '') setValue('isSavedOnServer', true);\r\n })\r\n ).then(() => {\r\n if (hasContentCache) {\r\n setValue('content', contentCache);\r\n }\r\n });\r\n //setIsPlagiat(opened);\r\n }, [homeworkBase]);\r\n\r\n useEffect(() => {\r\n const container = document.getElementById('BoxContentTitle');\r\n let heightTitle = 77;\r\n if (container) {\r\n heightTitle = container.clientHeight;\r\n }\r\n\r\n if (isMediumOrMobile) {\r\n setContentHeight(150 + heightTitle);\r\n } else if (isFullScreen) {\r\n setContentHeight(140 + heightTitle);\r\n } else {\r\n setContentHeight(260 + heightTitle + 100);\r\n }\r\n });\r\n\r\n /**\r\n * Envoyer le devoir, puis l'ajouter au PE\r\n * @param data formulaire\r\n */\r\n const onSubmit = async (data: HomeworkInProgress) => {\r\n let value = data.content;\r\n value = `

Référence de l'évaluation : ${data.barCode} -

${value}`;\r\n dispatch(\r\n sendHomeworkInProgress({\r\n id: data.id,\r\n courseId: data.courseId,\r\n content: value,\r\n barCode: data.barCode,\r\n attachmentType: homeworkBase.attachmentType\r\n })((homework: Homework) => {\r\n /**\r\n * devoir bien envoyé => on l'ajoute au PE\r\n */\r\n managerStudyPlanHomework.updatedSended(homework);\r\n setOpenConfirm(false);\r\n remove(); //dblocale\r\n enqueueSnackbar(\"L'évaluation a bien été transmise\", { variant: 'success' });\r\n })(() => {\r\n setOpenConfirm(false);\r\n enqueueSnackbar(\"Nous avons détecté une erreur lors de l'envoi\", { variant: 'error' });\r\n })\r\n );\r\n };\r\n\r\n // Declenchement de la popup\r\n const handleClickSend = () => {\r\n setOpenConfirm(true);\r\n };\r\n\r\n const onUploadImage = (quillObj: any) => {};\r\n\r\n const onSaveDraft = (value: string) => {\r\n if (value === '


') return;\r\n try {\r\n //sauvegarde sur la base de donnéees du navigateur\r\n addOrUpate(value).then(() => {\r\n //setTimeSaved(fDate(new Date(), 'HH:mm'));\r\n });\r\n } catch (ex) {\r\n console.log(ex, 'erreur draft');\r\n }\r\n };\r\n\r\n // Passe le brouillon en mode ok\r\n const onSaved = () => {\r\n setSavedTime(fDateTime(new Date()));\r\n setValue('isSavedOnServer', true);\r\n unDraft();\r\n };\r\n\r\n // Recuperer le mode brouillon\r\n const onRetrieve = (value: string) => {\r\n setValue('content', value);\r\n dispatch(updateHomeworkCacheContent({ homework: homeworkBase, content: value }));\r\n };\r\n\r\n // contenu en ligne sauvegardé sur le server\r\n const isSavedOnServer = watch('isSavedOnServer');\r\n\r\n // Nombre de fichiers\r\n const files = watch('files');\r\n // contenu en ligne\r\n const contentOnLine = watch('content');\r\n // validation fichier\r\n const isValidFiles =\r\n files.length > 0 &&\r\n files.some((f) => {\r\n const [extension, ...fileName] = f.fileName.toLocaleLowerCase().split('.').reverse();\r\n return homeworkBase.attachmentType.extensions.includes(`.${extension}`);\r\n });\r\n\r\n // validation en ligne\r\n function getIsValidOnline() {\r\n if (contentOnLine === undefined || contentOnLine === null) return false;\r\n const is =\r\n contentOnLine.length > 200 &&\r\n contentOnLine.length < maxCaraterLength &&\r\n homeworkBase.attachmentType.extensions.includes('.pdf');\r\n\r\n return is;\r\n }\r\n\r\n const isValidOnline = getIsValidOnline();\r\n\r\n //validation pour envoi\r\n const isValidSend = isValidFiles || isValidOnline;\r\n\r\n return (\r\n <>\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n console.log('')}\r\n >\r\n {(handleClose, filesAdded) =>\r\n homeworkBase && (\r\n ) =>\r\n setValue('files', [...field.value, ...files])\r\n }\r\n onClose={handleClose}\r\n alreadyAttached={field.value.length}\r\n filesAdded={filesAdded}\r\n />\r\n )\r\n }\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {errorSended && }\r\n\r\n \r\n\r\n (\r\n {\r\n field.onChange(value);\r\n dispatch(updateHomeworkCacheContent({ homework: homeworkBase, content: value }));\r\n }}\r\n error={Boolean(error)}\r\n />\r\n )}\r\n />\r\n\r\n \r\n\r\n {Boolean(errors.content) && (\r\n \r\n {errors.content?.message}\r\n \r\n )}\r\n\r\n {!useContentCache && isDraft && (\r\n \r\n )}\r\n\r\n \r\n {(timeSaved: string, numberOfCaracters: number) => {\r\n let value = (numberOfCaracters / maxCaraterLength) * 100;\r\n if (value > 100) value = 100;\r\n\r\n const warning = value > 80 && value < 95 ? true : false;\r\n const error = value >= 95 ? true : false;\r\n\r\n return (\r\n \r\n {!warning && !error && (\r\n \r\n Limite de caractères : (minimum de 200 caractères )\r\n \r\n )}\r\n\r\n {warning && (\r\n \r\n Vous allez prochainement atteindre le nombre maximum de caractères autorisé\r\n \r\n )}\r\n\r\n {error && (\r\n \r\n Vous avez atteint le nombre maximum de caractères autorisé {value}%\r\n \r\n )}\r\n\r\n \r\n {savedTime !== '' && (\r\n Enregistrement effectué à {savedTime}\r\n )}\r\n \r\n );\r\n }}\r\n \r\n \r\n\r\n setOpenConfirm(false)}\r\n maxWidth=\"sm\"\r\n withoutImage={true}\r\n disabled={!isValidSend}\r\n >\r\n \r\n \r\n Confirmation de l'envoi}\r\n />\r\n\r\n \r\n {isValidOnline && (\r\n }>\r\n La rédaction de votre évaluation en ligne sera ajoutée automatiquement\r\n \r\n )}\r\n\r\n {!isValidSend ? (\r\n \r\n {contentOnLine?.length >= maxCaraterLength && (\r\n \r\n Vous avez dépassé le nombre maximum de caractères autorisé\r\n \r\n )}\r\n {!isValidFiles && !homeworkBase.attachmentType.extensions.includes('.pdf') && (\r\n \r\n Vous devez ajouter une pièce de type \"{homeworkBase.attachmentType.label}(\r\n {homeworkBase.attachmentType.extensions.join(',')})\" afin de pouvoir envoyer\r\n votre évaluation pour correction.\r\n \r\n )}\r\n {!isValidOnline && homeworkBase.attachmentType.extensions.includes('.pdf') && (\r\n \r\n Vous devez envoyer une pièce jointe de type \"{' '}\r\n {homeworkBase.attachmentType.extensions.join(',')}\" ou rédiger votre\r\n évaluation (200 caractères minimum) dans l'emplacement prévu à cet effet afin\r\n de pouvoir envoyer votre évaluation pour correction.\r\n \r\n )}\r\n \r\n ) : (\r\n <>\r\n \r\n \r\n N'hésitez pas à relire votre travail avant de l'envoyer pour supprimer toute\r\n faute d'orthographe ou de syntaxe qui pourrait faire baisser votre note\r\n finale.\r\n \r\n \r\n\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useState } from 'react';\r\n\r\n// redux\r\nimport { useDispatch } from 'react-redux';\r\nimport { selectMeeting } from 'redux/slices/meeting';\r\n\r\n//type\r\nimport { Meeting } from '../../../@types/meeting';\r\n\r\n// composant\r\nimport { MeetingForm } from './MeetingForm';\r\nimport { MeetingView } from './MeetingView';\r\n\r\nexport default function MeetingContainer({\r\n meeting,\r\n isVoice = false\r\n}: {\r\n meeting: Meeting;\r\n isVoice?: boolean;\r\n}) {\r\n const dispatch = useDispatch();\r\n const [modeRead, setModeRead] = useState(true);\r\n\r\n useEffect(() => {\r\n dispatch(selectMeeting(meeting));\r\n }, [meeting]);\r\n\r\n return modeRead ? (\r\n console.log('')}\r\n onChangeMode={() => setModeRead(false)}\r\n isVoice={isVoice}\r\n />\r\n ) : (\r\n setModeRead(true)}\r\n onClose={() => console.log('')}\r\n homework={meeting.homework}\r\n />\r\n );\r\n}\r\n","//materials\r\nimport { styled } from '@mui/material/styles';\r\nimport { Button, Card, Stack, Typography } from '@mui/material';\r\nimport { Box, useTheme } from '@mui/system';\r\n\r\n//redux\r\nimport { RootState } from 'redux/store';\r\nimport { useSelector } from 'react-redux';\r\nimport { getMeetings } from 'redux/slices/agenda';\r\n\r\n//type\r\nimport { AgendaEventType } from '../../../@types/agenda';\r\nimport { HomeworkBase } from '../../../@types/pedagogy';\r\nimport { MeetingStatus, Meeting } from '../../../@types/meeting';\r\n\r\nimport MeetingDrawer from '../meeting/MeetingDrawer';\r\n\r\nimport MeetingContainer from '../meeting/MeetingContainer';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { ToolbarFileAttachments } from './HomeworkTodo';\r\nimport { PhoneLabel } from 'components/PhoneInfo';\r\n\r\n//composant\r\n\r\nconst RootStyle = styled(Card)({\r\n padding: 10,\r\n margin: 5,\r\n flexGrow: 1,\r\n height: '100%',\r\n overflow: 'hidden'\r\n});\r\n\r\nexport function HomeworkTodoVoice({ homeworkBase }: { homeworkBase: HomeworkBase }) {\r\n const { events } = useSelector((state: RootState) => state.agenda);\r\n const { getContractCurrent } = useAuth();\r\n const meetings = getMeetings(events);\r\n\r\n const isEventMaterial =\r\n events.filter(\r\n (event) =>\r\n event.eventType === AgendaEventType.ScheduleTeacher &&\r\n event.title === homeworkBase.material.scheduleLabel\r\n ).length > 0;\r\n\r\n const meetingCurrent = meetings.filter(\r\n (event) =>\r\n event.eventType === AgendaEventType.Meeting &&\r\n event.metadatas.homework?.barCode === homeworkBase.barCode &&\r\n event.metadatas.status === MeetingStatus.Registered\r\n )[0];\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Évaluation orale ({homeworkBase.duration} minutes)\r\n \r\n {isEventMaterial || meetingCurrent ? (\r\n <>\r\n \r\n Pour réaliser l'évaluation orale, vous devez prendre rendez-vous avec votre\r\n formateur ou formatrice concernant la matière{' '}\r\n {homeworkBase.material?.scheduleLabel}.\r\n \r\n\r\n {meetingCurrent ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n Nous vous invitons{' '}\r\n \r\n {' '}\r\n à prendre rendez-vous pour votre évaluation orale seulement si vous êtes prêt\r\n \r\n .
\r\n Tout rendez-vous maintenu devra être honoré et aboutira à une note. Toute\r\n absence sera notée 0/{getContractCurrent().scoreOn}.\r\n
\r\n\r\n \r\n \r\n )}\r\n \r\n ) : (\r\n <>\r\n \r\n Pour réaliser l'évaluation orale, veuillez contacter votre tuteur ou tutrice afin de\r\n prendre rendez-vous. .\r\n \r\n \r\n Vous pouvez le ou la contacter par téléphone au{' '}\r\n {' '}\r\n , en sélectionnant la touche 2, ou via votre messagerie..\r\n \r\n \r\n )}\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n ArticleRounded,\r\n Image,\r\n LibraryMusicRounded,\r\n PictureAsPdf,\r\n VideoLibraryRounded\r\n} from '@mui/icons-material';\r\nimport { Link } from '@mui/material';\r\nimport { MediaFileType } from '../../../@types/media';\r\n\r\nexport type MediaIconProps = {\r\n type: MediaFileType;\r\n};\r\n\r\nexport function MediaIcon({ type }: MediaIconProps) {\r\n switch (type) {\r\n case MediaFileType.Pdf:\r\n case MediaFileType.PdfPersonnalise:\r\n case MediaFileType.PdfSecurises:\r\n return ;\r\n case MediaFileType.Audio:\r\n return ;\r\n case MediaFileType.Videos:\r\n return ;\r\n case MediaFileType.UrlText:\r\n return ;\r\n case MediaFileType.Images:\r\n return ;\r\n default:\r\n return ;\r\n }\r\n}\r\n","import {\r\n CardMedia,\r\n CircularProgress,\r\n DialogContent,\r\n DialogTitle,\r\n MenuItem,\r\n Typography\r\n} from '@mui/material';\r\nimport { DialogAnimate } from 'components/animate';\r\nimport CardMediaCustom from 'components/CardMediaCustom';\r\nimport FileAction from 'components/file/FileAction';\r\n\r\nimport { useEffect, useState } from 'react';\r\nimport { MediaFileInfo, MediaFileType } from '../../../@types/media';\r\nimport { MediaIcon } from './MediaIcon';\r\n\r\nexport type MediaMenuItemProps = {\r\n media: MediaFileInfo;\r\n};\r\n\r\nexport default function MediaMenuItem({ media }: MediaMenuItemProps) {\r\n switch (media.typFicMed) {\r\n case MediaFileType.UrlText:\r\n return (\r\n \r\n \r\n {media.title}\r\n \r\n );\r\n case MediaFileType.Audio:\r\n case MediaFileType.Videos:\r\n return ;\r\n default:\r\n return ;\r\n }\r\n}\r\n\r\nfunction MediaMenuItemDownload({ media }: MediaMenuItemProps) {\r\n const { id, fileType, fileName, isS3, token } = media;\r\n\r\n return (\r\n \r\n {(download, getFile, downloadImage, isLoading, errorDownload, downloadUrl, downloadS3) => (\r\n \r\n isS3\r\n ? downloadS3(token.fileNameS3, fileName, fileType, id)\r\n : download(id, fileType, fileName)\r\n }\r\n >\r\n {isLoading ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n {media.title}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction MediaMenuItemIframe({ media }: MediaMenuItemProps) {\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n return (\r\n <>\r\n \r\n {media.title}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { ArticleRounded } from '@mui/icons-material';\r\nimport { Divider, Typography } from '@mui/material';\r\nimport { Box, BoxProps } from '@mui/system';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport MIconButton from 'components/MIconButton';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { useRef, useState } from 'react';\r\nimport { MediaFileInfo, MediaFileType } from '../../../@types/media';\r\nimport MediaMenuItem from './MediaMenuItem';\r\n\r\ninterface MediaMenuPopoverProps extends BoxProps {\r\n medias: Array;\r\n title: string;\r\n}\r\n\r\nexport default function MediaMenuPopover({ medias, title }: MediaMenuPopoverProps) {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n if (medias.length === 0) return <>;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {title}\r\n \r\n \r\n \r\n {medias.map((m) => {\r\n return ;\r\n })}\r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { ReactNode, useRef } from 'react';\r\nimport Slider from 'react-slick';\r\nimport CarouselDotsControlsPagingProps from '../main/CarouselDotsControlsPaging';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box } from '@mui/material';\r\n\r\n// types\r\ntype MediaCarouselProps = {\r\n children?: ReactNode;\r\n nbRows?: number;\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function MediaCarousel({ children, nbRows = 3 }: MediaCarouselProps) {\r\n const theme = useTheme();\r\n const carouselRef = useRef(null);\r\n\r\n const settings = {\r\n dots: true,\r\n arrows: false,\r\n autoplay: false,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n rows: nbRows,\r\n rtl: Boolean(theme.direction === 'rtl'),\r\n ...CarouselDotsControlsPagingProps({\r\n sx: { mt: 3 }\r\n })\r\n };\r\n\r\n return (\r\n //Le carousel est placé dans une box pour qu'il puisse calculer correctement sa largeur (et par extension sa hauteur)\r\n //en fonction de son conteneur\r\n //NB : sinon les items prennent une largeur de 0\r\n \r\n \r\n {children}\r\n \r\n \r\n );\r\n}\r\n","import { useRef, useState } from 'react';\r\n//materials\r\nimport { styled } from '@mui/material/styles';\r\nimport { Collapse, Stack, Tab, Tabs, Typography } from '@mui/material';\r\nimport { Box, useTheme } from '@mui/system';\r\n\r\n//type\r\nimport {\r\n HomeworkBase,\r\n HomeworkType,\r\n StudyPlanItem,\r\n StudyPlanItemHtml,\r\n StudyPlanItemMedia,\r\n StudyPlanItemType,\r\n StudyPlanView\r\n} from '../../../@types/pedagogy';\r\nimport { MediaFileInfo, MediaFileType, MediaPerimetre } from '../../../@types/media';\r\nimport StudyPlanDetailsContentHtml from '../studyPlan/details/StudyPlanDetailsContentHtml';\r\nimport HomeworkTodoPanelEdit from './HomeworkTodoForm';\r\nimport MediaPDF from '../media/MediaPDF';\r\nimport { HomeworkTodoVoice } from './HomeworkTodoVoice';\r\nimport MIconButton, { MIconButtonDowload } from 'components/MIconButton';\r\nimport MediaMenuPopover from '../media/MediaMenuPopover';\r\nimport MediaCarousel from '../media/MediaCarrousel';\r\nimport CardContainer from 'components/CardContainer';\r\nimport { MediaIcon } from '../media/MediaIcon';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport StudyPlanDetailsIframe from '../studyPlan/details/StudyPlanContentIframe';\r\nimport StudyPlanDetailsContentQuiz from '../studyPlan/details/StudyPlanDetailsContentQuiz';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport LoadingScreen from 'components/LoadingScreen';\r\nimport { Card } from '@mui/material';\r\nimport useStudyPlanChapterItem from 'hooks/useStudyPlanChapterItem';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { useSnackbar } from 'notistack';\r\n\r\n//------------------------------------------------\r\nconst ContainerEvaluation = styled(Box)({\r\n flexGrow: 1,\r\n height: '100%'\r\n});\r\n//------------------------------------------------\r\n\r\nexport type HomeworkTodoProps = {\r\n homeworkBase: HomeworkBase;\r\n medias: Array;\r\n opened: boolean;\r\n isEnonceOnly?: boolean;\r\n keyId: string;\r\n};\r\n\r\nexport default function HomeworkTodo({\r\n homeworkBase,\r\n medias,\r\n opened,\r\n isEnonceOnly = false,\r\n keyId\r\n}: HomeworkTodoProps) {\r\n const theme = useTheme();\r\n const [tabValue, setTabValue] = useState(0);\r\n const { updateByActivity } = useStudyPlanChapterItem();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const handleChange = (event: any, newValue: number) => {\r\n setTabValue(newValue);\r\n };\r\n\r\n const onScore = () => {\r\n //enqueueSnackbar('Récupération de la note, patientez...', { variant: 'info' });\r\n setTimeout(() => {\r\n updateByActivity({ courseId: homeworkBase.courseId, id: homeworkBase.id, keyId: keyId })(\r\n () => {\r\n //enqueueSnackbar(\"Nous n'avons pas pu récupérer la note\", { variant: 'warning' });\r\n console.log(\"Nous n'avons pas pu récupérer la note\");\r\n }\r\n );\r\n }, 1500);\r\n };\r\n\r\n if (homeworkBase.homeworkType === HomeworkType.Voice)\r\n //detection type de devoir\r\n return ;\r\n\r\n if (homeworkBase.homeworkType === HomeworkType.eLearning)\r\n return (\r\n <>\r\n \r\n \r\n );\r\n\r\n //Permet d'afficher l'énonce dans l'onglet correction\r\n if (isEnonceOnly)\r\n return (\r\n \r\n );\r\n\r\n const renderContent = (\r\n \r\n {[HomeworkType.EvaluationStage].includes(homeworkBase.homeworkType) ? (\r\n <>\r\n \r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n\r\n return (\r\n \r\n {renderContent}\r\n \r\n );\r\n}\r\n/**\r\n * \r\n {renderContent}\r\n \r\n {!fullScreen && renderContent}\r\n */\r\n\r\n//-------------------------------------------------------------\r\n\r\nconst RootEnnonceStyle = styled(Box)(({ theme }) => ({\r\n width: '100%',\r\n height: '90%' // 'calc(100vh - 370px)',\r\n}));\r\n\r\nexport type HomeworkTodoPanelProps = {\r\n homeworkBase: HomeworkBase;\r\n opened?: boolean;\r\n medias?: Array;\r\n fullScreen: boolean;\r\n isVisible?: boolean;\r\n};\r\n\r\nfunction HomeworkTodoPanelEnnonce({\r\n homeworkBase,\r\n fullScreen,\r\n medias = []\r\n}: HomeworkTodoPanelProps) {\r\n let mediaView = medias?.find((x) => x.type === StudyPlanItemType.Html);\r\n if (!!!mediaView) mediaView = medias?.find((x) => x.type === StudyPlanItemType.Pdf);\r\n\r\n const isFiles = homeworkBase?.files?.length > 1;\r\n\r\n return (\r\n \r\n f.fileType !== 13 && f.perimetre !== MediaPerimetre.Corrected\r\n )}\r\n barCode={homeworkBase?.barCode}\r\n />\r\n {medias?.length > 0 && }\r\n \r\n );\r\n}\r\n\r\n//-------------------------------------------------------------\r\n\r\nfunction RenderContent({ studyPlanItem }: { studyPlanItem: StudyPlanItem }) {\r\n switch (studyPlanItem.type) {\r\n case StudyPlanItemType.Html:\r\n return (\r\n \r\n );\r\n\r\n case StudyPlanItemType.Pdf:\r\n return (\r\n \r\n );\r\n case StudyPlanItemType.Video:\r\n case StudyPlanItemType.Audio:\r\n return (\r\n \r\n );\r\n }\r\n return <>;\r\n}\r\n\r\nexport function ToolbarFileAttachments({\r\n files,\r\n barCode\r\n}: {\r\n files: Array;\r\n barCode: string;\r\n}) {\r\n const [view, setView] = useState<{ open: boolean; type: MediaFileType }>();\r\n\r\n const handleClick = (type: MediaFileType) => {\r\n if (view?.type === type) setView({ ...view, open: !view.open });\r\n else setView({ open: true, type: type });\r\n };\r\n\r\n const filesFilterred = files.filter((f) => !f.referentiel);\r\n\r\n if (filesFilterred?.length === 0) return <>;\r\n\r\n return (\r\n \r\n \r\n Fichiers à consulter pour réaliser l’évaluation :\r\n ![MediaFileType.Videos, MediaFileType.Audio].includes(f.typFicMed)\r\n )}\r\n title=\"Fichiers à télécharger pour réaliser l’évaluation\"\r\n >\r\n {filesFilterred.some((f) => [MediaFileType.Audio].includes(f.typFicMed)) && (\r\n handleClick(MediaFileType.Audio)}>\r\n \r\n \r\n )}\r\n {filesFilterred.some((f) => [MediaFileType.Videos].includes(f.typFicMed)) && (\r\n handleClick(MediaFileType.Videos)}>\r\n \r\n \r\n )}\r\n \r\n \r\n {view && view?.open && (\r\n \r\n [view?.type].includes(f.typFicMed))\r\n .map((media) => {\r\n return (\r\n \r\n {media.title}\r\n \r\n\r\n durée : {media.size}\r\n \r\n );\r\n })}\r\n />\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\n/*\r\n\r\n*/\r\nconst getMediaType = (typFicMed: MediaFileType) => {\r\n switch (typFicMed) {\r\n case MediaFileType.Audio:\r\n return StudyPlanItemType.Audio;\r\n\r\n case MediaFileType.Videos:\r\n return StudyPlanItemType.Video;\r\n default:\r\n return StudyPlanItemType.Elearning;\r\n }\r\n};\r\n/**/\r\n","import { useState } from 'react';\r\n\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport {\r\n Box,\r\n Card,\r\n Tab,\r\n Tabs,\r\n CardContent,\r\n Typography,\r\n Avatar,\r\n Stack,\r\n Divider\r\n} from '@mui/material';\r\n\r\n//type\r\nimport {\r\n Homework,\r\n HomeworkBase,\r\n HomeworkStatus,\r\n StudyPlanItemHomework,\r\n StudyPlanItemStatus,\r\n StudyPlanItemMedia,\r\n HomeworkType\r\n} from '../../../../@types/pedagogy';\r\nimport { ModuleType } from '../../../../@types/contract';\r\n\r\nimport { UserType, FileBaseInfo, FileType } from '../../../../@types/common';\r\nimport { MediaFileInfo, MediaFileType } from '../../../../@types/media';\r\n\r\nimport EmptyContent from 'components/EmptyContent';\r\n\r\nimport FileDetailsAttachments from 'components/file/FileDetailsAttachments';\r\nimport { fDate } from 'utils/formatTime';\r\nimport Markdown from 'components/Markdown';\r\n\r\nimport HomeworkTodo from 'components/_dashboard/pedagogy/HomeworkTodo';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport ModuleNotAuthorized from 'components/ModuleNotAuthorized';\r\nimport { HomeworkNote } from 'components/_dashboard/pedagogy/HomeworkNote';\r\nimport { HomeworkCorrected } from 'components/_dashboard/pedagogy/HomeworkCorrected';\r\n\r\n//-----------------------------------------------------------------------\r\nconst RootStyle = styled(Card)(({ theme }) => ({\r\n height: '98%',\r\n flexGrow: 1,\r\n overflow: 'hidden',\r\n backgroundColor: theme.palette.grey[100],\r\n padding: 5\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\nexport type StudyPlanDetailsHomeworkProps = {\r\n chapterItem: StudyPlanItemHomework;\r\n};\r\n\r\n/***\r\n * Afficher le devoir fait ou à faire\r\n */\r\nexport default function StudyPlanDetailsHomework({ chapterItem }: StudyPlanDetailsHomeworkProps) {\r\n const [tabValue, setTabValue] = useState(0);\r\n const { authorizedModule } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.HomeworkUpdate]\r\n });\r\n const handleChange = (event: any, newValue: number) => {\r\n setTabValue(newValue);\r\n };\r\n\r\n /** Devoir à faire */\r\n if (chapterItem.status !== StudyPlanItemStatus.Assimilate) {\r\n //controler le module\r\n if (!authorizedModule) return ;\r\n return (\r\n \r\n );\r\n }\r\n\r\n /*dernier devoir en cours*/\r\n const last = chapterItem.homeworkBase.homeworks[\r\n chapterItem.homeworkBase.homeworks.length - 1\r\n ] as Homework;\r\n\r\n return (\r\n \r\n \r\n {[HomeworkType.EvaluationStage].includes(chapterItem.homeworkBase.homeworkType) ? (\r\n <>\r\n \r\n f.fileType === FileType.CorrectionType\r\n )[0]\r\n }\r\n />\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n\r\n {![HomeworkType.EvaluationStage, HomeworkType.eLearning].includes(\r\n chapterItem.homeworkBase.homeworkType\r\n ) && }\r\n\r\n {![HomeworkType.EvaluationStage, HomeworkType.Voice, HomeworkType.eLearning].includes(\r\n chapterItem.homeworkBase.homeworkType\r\n ) && }\r\n \r\n\r\n \r\n {tabValue === 0 && (\r\n f.fileType === FileType.CorrectionType\r\n )[0]\r\n }\r\n />\r\n )}\r\n {tabValue === 1 && (\r\n w.userType === UserType.Student)}\r\n />\r\n )}\r\n {tabValue === 2 && (\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\n/**\r\n * Liste des fichiers\r\n * @param param0 L\r\n * @returns\r\n */\r\nconst HomeworkStepFiles = ({ files }: { files: Array }) => {\r\n /**\r\n * \r\n */\r\n return (\r\n \r\n }\r\n />\r\n \r\n );\r\n};\r\n","// material\r\nimport { Alert, Box } from '@mui/material';\r\nimport { useEffect, useRef, useState } from 'react';\r\nimport useTrackerActivity from 'hooks/useTrackerActivity';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport CardMediaCustom from 'components/CardMediaCustom';\r\nimport { Elearning, StudyPlanItemLearning } from '../../../../@types/pedagogy';\r\nimport { useLearningICDL } from 'hooks/useLearningICDL';\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\nimport IllustrationMessage, { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport { Typography } from '@mui/material';\r\nimport CardContainer from 'components/CardContainer';\r\nimport ChapterItemStatus from './ChapterItemStatus';\r\nimport { LoadingButton } from '@mui/lab';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type StudyPlanDetailsLearningProps = {\r\n item: StudyPlanItemLearning;\r\n};\r\n\r\nexport default function StudyPlanDetailsLearningICDL({ item }: StudyPlanDetailsLearningProps) {\r\n const { error, getICDLInformations, isLoading } = useLearningICDL();\r\n\r\n const handleClickInfo = () => {\r\n getICDLInformations(item)((url: string) => window.open(url));\r\n };\r\n\r\n return (\r\n \r\n } sx={{ minHeight: 0 }}>\r\n \r\n {item.label}\r\n \r\n \r\n Lorsque vous cliquerez sur “Commencer”, votre activité s’ouvrira dans un nouvel onglet,\r\n indépendamment de votre Espace Numérique de Travail.\r\n \r\n \r\n \r\n Commencer / Récupérer la note\r\n \r\n \r\n \r\n\r\n {error && (\r\n \r\n \r\n Erreur\r\n Nous ne parvenons pas à générer le lien de votre activité e-learning. Veuillez réessayer\r\n ultérieurement.\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { StudyPlanDetailsLearningProps } from 'components/_dashboard/studyPlan/details/StudyPlanDetailsLearningICDL';\r\nimport { useEffect, useState } from 'react';\r\nimport { getTestICDL } from 'redux/slices/learning';\r\nimport useAuth from './useAuth';\r\nimport { dispatch } from 'redux/store';\r\nimport useStudyPlan from './useStudyPlan';\r\nimport { StudyPlanItemLearning } from '../@types/pedagogy';\r\n\r\nexport function useLearningICDL() {\r\n const { student, getContractCurrent, getGenreMasculin } = useAuth();\r\n const { setScore } = useStudyPlan();\r\n const [error, setError] = useState(false);\r\n const [isLoading, setIsLoading] = useState(false);\r\n\r\n const getICDLInformations = (item: StudyPlanItemLearning) => (onUrl: (url: string) => void) => {\r\n setIsLoading(true);\r\n\r\n dispatch(\r\n getTestICDL(\r\n {\r\n compte: {\r\n birth_date: student?.birthDate,\r\n birth_name: student?.lastName,\r\n birthPlace: student?.birthPlace,\r\n email: student?.email,\r\n first_name: student?.firstName,\r\n gender: getGenreMasculin() ? 'MALE' : 'FEMALE',\r\n last_name: student?.lastName\r\n },\r\n testId: item.elearning.properties.customId\r\n },\r\n item.id\r\n )((note: number, url: string) => {\r\n setIsLoading(false);\r\n if (url && url !== '') {\r\n onUrl(url);\r\n return;\r\n }\r\n //récupération de la note => maj PE local\r\n setScore(note);\r\n })(() => {\r\n setError(true);\r\n setIsLoading(false);\r\n })\r\n );\r\n };\r\n\r\n return { error, isLoading, getICDLInformations };\r\n}\r\n","import { ScoreType, StudyPlanItem, StudyPlanItemLearning } from '../../../../@types/pedagogy';\r\nimport CardContainer from 'components/CardContainer';\r\nimport { Box } from '@mui/system';\r\nimport { ScoreView } from '../ScoreView';\r\nimport { Stack, Typography } from '@mui/material';\r\n\r\ntype StudyPlanDetailsLearningICDLNoteType = { item: StudyPlanItem };\r\n\r\nexport default function StudyPlanDetailsLearningICDLNote({\r\n item\r\n}: StudyPlanDetailsLearningICDLNoteType) {\r\n return (\r\n \r\n \r\n Note :\r\n \r\n \r\n }\r\n avatar={\r\n \r\n }\r\n >\r\n \r\n );\r\n}\r\n","import { Button, CardActionArea, Stack, Typography } from '@mui/material';\r\nimport { Box, height } from '@mui/system';\r\n// @types\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemHtml,\r\n StudyPlanItemLearning,\r\n StudyPlanItemMedia,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType\r\n} from '../../../../@types/pedagogy';\r\nimport { MediaFileType } from '../../../../@types/media';\r\n// components\r\nimport StudyPlanDetailsContentHtml from 'components/_dashboard/studyPlan/details/StudyPlanDetailsContentHtml';\r\nimport MediaPDF from 'components/_dashboard/media/MediaPDF';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport StudyPlanDetailsHomework from 'components/_dashboard/studyPlan/details/StudyPlanDetailsHomework';\r\nimport CardContainer from 'components/CardContainer';\r\nimport IllustrationMessage, { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport { ReactNode, useEffect } from 'react';\r\nimport { LoadingButton } from '@mui/lab';\r\nimport FileAction from 'components/file/FileAction';\r\nimport StudyPlanDetailsLearning from './StudyPlanDetailsLearningICDL';\r\nimport StudyPlanDetailsIframe from './StudyPlanContentIframe';\r\nimport StudyPlanDetailsLearningICDL from './StudyPlanDetailsLearningICDL';\r\nimport StudyPlanItemScore from './StudyPlanItemScore';\r\nimport StudyPlanDetailsLearningICDLNote from './StudyPlanDetailsLearningICDLNote';\r\nimport { dispatch } from 'redux/store';\r\nimport { addLogLearning } from 'redux/slices/learning';\r\n\r\ntype StudyPlanDetailsContentByType = { item: StudyPlanItem; onEndOfRead?: () => void };\r\n\r\n/**\r\n * Affichage du composant suivant le type d'item\r\n * @param item\r\n * @returns\r\n */\r\nexport default function StudyPlanDetailsContentByType({\r\n item,\r\n onEndOfRead\r\n}: StudyPlanDetailsContentByType) {\r\n useEffect(() => {\r\n if (item.type === StudyPlanItemType.Elearning) {\r\n const learning = (item as StudyPlanItemLearning).elearning;\r\n if (learning?.properties) {\r\n dispatch(\r\n addLogLearning(\r\n learning.properties.fouEfm,\r\n learning.properties.proEfm,\r\n learning.properties.customId\r\n )(() => console.log('trace'))\r\n );\r\n }\r\n }\r\n }, [item]);\r\n\r\n const handleEndOfRead = () => {\r\n if (onEndOfRead) onEndOfRead();\r\n };\r\n\r\n switch (item.type) {\r\n case StudyPlanItemType.Elearning:\r\n const elearning = (item as StudyPlanItemLearning).elearning;\r\n if (elearning?.properties) {\r\n switch (elearning.properties.fouEfm) {\r\n case 'IC':\r\n switch (item.status) {\r\n case StudyPlanItemStatus.Assimilate:\r\n return ;\r\n\r\n case StudyPlanItemStatus.None:\r\n case StudyPlanItemStatus.Read:\r\n return ;\r\n }\r\n }\r\n }\r\n\r\n return ;\r\n\r\n case StudyPlanItemType.Pdf:\r\n return ;\r\n case StudyPlanItemType.Video:\r\n case StudyPlanItemType.Audio:\r\n return (\r\n \r\n );\r\n case StudyPlanItemType.Html:\r\n return (\r\n \r\n );\r\n case StudyPlanItemType.Annexe:\r\n return ;\r\n case StudyPlanItemType.Url:\r\n const media = (item as StudyPlanItemMedia).media;\r\n return (\r\n \r\n \r\n \r\n );\r\n\r\n case StudyPlanItemType.Homework:\r\n return ;\r\n default:\r\n return <>;\r\n }\r\n}\r\n\r\nconst CardDownload = ({ id, media }: StudyPlanItemMedia) => {\r\n return (\r\n \r\n \r\n {(download, getFile, downloadImage, isLoading, errorDownload) => (\r\n download(media.id, media.fileType, media.fileName)}\r\n >\r\n Télécharger\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\ntype CardLinkUrlProps = {\r\n title: string;\r\n img: string;\r\n children: ReactNode;\r\n};\r\n\r\nconst CardLinkUrl = ({ title, img, children }: CardLinkUrlProps) => {\r\n return (\r\n \r\n \r\n \r\n \r\n {title}\r\n \r\n {children}\r\n \r\n \r\n \r\n );\r\n};\r\n","import { Box, BoxProps, Stack } from '@mui/system';\r\nimport { StudyPlanItem, StudyPlanItemStatus } from '../../../../@types/pedagogy';\r\nimport {\r\n Button,\r\n CardProps,\r\n List,\r\n ListItem,\r\n ListItemButton,\r\n ListItemText,\r\n Typography\r\n} from '@mui/material';\r\nimport { styled } from '@mui/material/styles';\r\nimport { Card } from '@mui/material';\r\nimport { useContext, useEffect, useState } from 'react';\r\nimport useStudyPlanChapterItem from 'hooks/useStudyPlanChapterItem';\r\nimport ChapterItemStatus from './ChapterItemStatus';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { CheckBoxOutlined, CheckBoxRounded, CheckOutlined } from '@mui/icons-material';\r\n\r\ninterface StudyPlanDetailsControlProps {\r\n item: StudyPlanItem | null;\r\n onChange: (value: StudyPlanItem) => void;\r\n updated: boolean;\r\n children(isBlocked: boolean, boundCourses: Array | null, isLocked: boolean): any;\r\n}\r\n\r\n/***\r\n * Controler le support lié\r\n *\r\n */\r\nconst StudyPlanDetailsControl = ({\r\n item,\r\n updated,\r\n onChange,\r\n children\r\n}: StudyPlanDetailsControlProps) => {\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n const [state, setState] = useState<{\r\n isLoading: boolean;\r\n boundCourses: Array | null;\r\n }>({ isLoading: item?.boundCourse === null ? false : true, boundCourses: null });\r\n\r\n useEffect(() => {\r\n if (item?.boundCourse) {\r\n const response = managerChapterItem.getStatus(item?.boundCourse);\r\n\r\n if (response && response.length > 0) {\r\n const assilimates = response.filter((i) => i.status !== StudyPlanItemStatus.Assimilate);\r\n\r\n //support\r\n if (assilimates.length > 0) {\r\n setState({ isLoading: false, boundCourses: assilimates });\r\n } else {\r\n setState({ isLoading: false, boundCourses: null });\r\n }\r\n } else setState({ isLoading: false, boundCourses: null });\r\n }\r\n }, [item]);\r\n\r\n /**\r\n * Enregistrement de la progression si il y a eu un changement\r\n */\r\n useEffect(() => {\r\n if (state.isLoading || state.boundCourses !== null) return;\r\n (async function save() {\r\n if (!item || !updated) return;\r\n let value = item;\r\n if (value == null || value.status === StudyPlanItemStatus.Disabled) return;\r\n\r\n onChange(value);\r\n })();\r\n }, [updated, state.isLoading]);\r\n\r\n if (state.isLoading) return Rechercher;\r\n\r\n const isBlocked = item?.boundCourse && (state.isLoading || state.boundCourses) ? true : false;\r\n const isLocked =\r\n item && [StudyPlanItemStatus.Locked, StudyPlanItemStatus.Disabled].includes(item.status)\r\n ? true\r\n : false;\r\n\r\n return {children(isBlocked, state.boundCourses, isLocked)};\r\n};\r\n\r\nexport default StudyPlanDetailsControl;\r\n\r\ntype StudyPlanDetailsControlCardProps = {\r\n items: Array | null;\r\n isMediumOrMobile: boolean;\r\n};\r\n\r\nexport const StudyPlanDetailsControlCard = ({\r\n items,\r\n isMediumOrMobile\r\n}: StudyPlanDetailsControlCardProps) => {\r\n const navigate = useNavigate();\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n const handleSelect = (item: StudyPlanItem) => {\r\n managerChapterItem.updateById(item.reference);\r\n //navigate(`${PATH_DASHBOARD.studyPlan.details}/${item.reference}`);\r\n };\r\n\r\n if (!items) return <>;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Pour accéder à ce contenu, vous devez assimiler{' '}\r\n {items?.length === 1 ? 'le contenu suivant' : 'les contenus suivants'}.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Contenu à assimiler{' '}\r\n \r\n\r\n {!isMediumOrMobile && Type}\r\n \r\n \r\n\r\n {items?.map((course) => (\r\n \r\n handleSelect(course)}>\r\n \r\n {course.label}{' '}\r\n \r\n {!isMediumOrMobile && (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { useEffect, useCallback, useState, useContext, useRef } from 'react';\r\n\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport { Card, Divider, AppBar, Stack, Container, Dialog } from '@mui/material';\r\nimport { Box, useTheme } from '@mui/system';\r\n\r\n// @types\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemHtml,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType,\r\n StudyPlanSelected\r\n} from '../../../../@types/pedagogy';\r\n// components\r\nimport StudyPlanDetailsSidebar from 'components/_dashboard/studyPlan/details/StudyPlanDetailsSidebar';\r\nimport StudyPlanDetailsToolbar from 'components/_dashboard/studyPlan/details/StudyPlanDetailsToolbar';\r\nimport StudyPlanDetailsToolbarSide from 'components/_dashboard/studyPlan/details/StudyPlanDetailsToolbarSide';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport StudyPlanDetailsContentByType from './StudyPlanDetailsContentByType';\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport StudyPlanMove, { StudyPlanButtonReturn } from './StudyPlanDetailsMove';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport { isModifier } from 'typescript';\r\nimport { dispatch, RootState, useSelector } from 'redux/store';\r\nimport {\r\n initHomeworkCacheContent,\r\n clearHomeworkCacheContent,\r\n applyHomeworkCache\r\n} from 'redux/slices/homeworkCacheContent';\r\nimport StudyPlanDetailsControl, { StudyPlanDetailsControlCard } from './StudyPlanDetailsControl';\r\nimport EmptyContent from 'components/EmptyContent';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport type StudyPlanDetailsContentProps = {\r\n selected: StudyPlanSelected;\r\n onAssimilate: (event: any, checked: boolean) => void;\r\n onChange: (value: StudyPlanItem) => void;\r\n updated: boolean;\r\n};\r\n\r\nexport function StudyPlanDetailsContent({\r\n selected,\r\n onAssimilate,\r\n onChange,\r\n updated\r\n}: StudyPlanDetailsContentProps) {\r\n const { isMediumOrMobile } = useScreenConfig();\r\n const [isFullScreen, setIsFullScreen] = useLocalStorage('fullscreenDetailTraining', true);\r\n const [openSidebar, setOpenSidebar] = useState(false);\r\n const theme = useTheme();\r\n const [contentHeight, setContentHeight] = useState(350);\r\n\r\n useEffect(() => {\r\n if (isMediumOrMobile && !isFullScreen) setIsFullScreen(true);\r\n }, [isMediumOrMobile]);\r\n\r\n useEffect(() => {\r\n const container = document.getElementById('BoxContentTitle');\r\n let heightTitle = 54;\r\n if (container) {\r\n heightTitle = container.clientHeight;\r\n }\r\n\r\n if (isMediumOrMobile) {\r\n setContentHeight(70 + heightTitle);\r\n } else if (isFullScreen) {\r\n setContentHeight(65 + heightTitle);\r\n } else {\r\n setContentHeight(260 + heightTitle);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n if (selected?.item?.type === StudyPlanItemType.Homework) {\r\n // init du content du devoir (mise en cache du content)\r\n dispatch(initHomeworkCacheContent((selected?.item as StudyPlanItemHomework)?.homeworkBase));\r\n } else {\r\n dispatch(clearHomeworkCacheContent());\r\n }\r\n\r\n return () => {\r\n dispatch(clearHomeworkCacheContent());\r\n };\r\n }, [selected?.item]);\r\n\r\n const handleEndOfRead = () => {\r\n let value = selected.item;\r\n if (value == null || value.status === StudyPlanItemStatus.Disabled) return;\r\n\r\n if (value.type !== StudyPlanItemType.Html) return;\r\n\r\n if (!(value as StudyPlanItemHtml).endOfRead) {\r\n (value as StudyPlanItemHtml).endOfRead = true;\r\n onChange(value);\r\n }\r\n };\r\n\r\n const render = (\r\n \r\n theme.customShadows.z8,\r\n margin: '10px'\r\n }}\r\n >\r\n {!selected || selected?.item == null ? (\r\n \r\n ) : (\r\n \r\n {\r\n setOpenSidebar(!openSidebar);\r\n }}\r\n chapter={selected?.chapter!}\r\n selectedId={selected?.subChapter?.id}\r\n isFullScreen={isFullScreen}\r\n />\r\n \r\n \r\n \r\n {(isBlocked, boundCourses, isLocked) => (\r\n <>\r\n {\r\n dispatch(\r\n applyHomeworkCache({\r\n homework: (selected?.item as StudyPlanItemHomework).homeworkBase,\r\n callBack: () => setIsFullScreen(!isFullScreen)\r\n })\r\n );\r\n }}\r\n onToggleSidebar={() => setOpenSidebar(!openSidebar)}\r\n />\r\n\r\n \r\n \r\n \r\n {isBlocked ? (\r\n \r\n ) : isLocked ? (\r\n \r\n ) : (\r\n \r\n \r\n {!isMediumOrMobile && (\r\n \r\n )}\r\n \r\n )}\r\n \r\n {isMediumOrMobile ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n\r\n return (\r\n <>\r\n {isFullScreen ? (\r\n \r\n {render}\r\n \r\n ) : (\r\n {render}\r\n )}\r\n \r\n );\r\n}\r\n\r\ntype ToolBarSideProps = {\r\n selected?: StudyPlanSelected;\r\n isMobile: boolean;\r\n};\r\n\r\nconst ToolBarSide = ({ selected, isMobile }: ToolBarSideProps) => {\r\n return (\r\n \r\n {isMobile && }\r\n \r\n {isMobile && }\r\n \r\n );\r\n};\r\n\r\nconst LockedContent = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport Lightbox from 'react-image-lightbox';\r\n// material\r\nimport { alpha, useTheme } from '@mui/material/styles';\r\nimport { Typography, GlobalStyles } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction LightboxModalStyles() {\r\n const theme = useTheme();\r\n const isRTL = theme.direction === 'rtl';\r\n\r\n const backgroundIcon = (iconName: string) => ({\r\n backgroundSize: '24px 24px',\r\n backgroundPosition: 'center',\r\n backgroundRepeat: 'no-repeat',\r\n backgroundColor: alpha(theme.palette.grey[900], 0.8),\r\n backgroundImage: `url(\"/static/icons/controls/${iconName}.svg\")`\r\n });\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface ModalLighboxProps {\r\n images: string[];\r\n photoIndex: number;\r\n setPhotoIndex: (index: number) => void;\r\n isOpen: boolean;\r\n onClose: VoidFunction;\r\n}\r\n\r\nfunction LightboxModal({\r\n images,\r\n photoIndex,\r\n setPhotoIndex,\r\n isOpen,\r\n onClose,\r\n ...other\r\n}: ModalLighboxProps) {\r\n useEffect(() => {\r\n if (isOpen) {\r\n document.body.style.overflow = 'hidden';\r\n } else {\r\n document.body.style.overflow = 'unset';\r\n }\r\n }, [isOpen]);\r\n\r\n const showIndex = (\r\n {`${photoIndex + 1} / ${images.length}`}\r\n );\r\n\r\n const toolbarButtons = [showIndex];\r\n const customStyles = {\r\n overlay: {\r\n zIndex: 9999\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n\r\n {isOpen && (\r\n setPhotoIndex((photoIndex + images.length - 1) % images.length)}\r\n onMoveNextRequest={() => setPhotoIndex((photoIndex + 1) % images.length)}\r\n toolbarButtons={toolbarButtons}\r\n reactModalStyle={customStyles}\r\n {...other}\r\n />\r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default LightboxModal;\r\n","import LightboxModal from 'components/LightboxModal';\r\nimport usePageSettings from 'hooks/usePageSettings';\r\nimport { useState } from 'react';\r\n\r\nexport type HelpLightboxModalProps = {\r\n open: boolean;\r\n setOpen: React.Dispatch>;\r\n images: Array;\r\n};\r\n\r\nexport function HelpLightboxModal({ open, setOpen, images }: HelpLightboxModalProps) {\r\n const [selectedImage, setSelectedImage] = useState(0);\r\n\r\n return (\r\n setOpen(false)}\r\n />\r\n );\r\n}\r\n","import { CardActionArea, CardMedia, Typography } from '@mui/material';\r\nimport { Card, CardContent } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { useState } from 'react';\r\nimport { HelpLightboxModal } from './HelpLightboxModal';\r\n\r\ntype HelpCardImageProps = {\r\n images: Array;\r\n};\r\n\r\n/**/\r\n\r\nexport default function HelpCardImage({ images }: HelpCardImageProps) {\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const getUrl = (image: string) => {\r\n return `/static/aide/${image}`;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n L’essentiel des fonctionnalités de votre page\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return getUrl(i);\r\n })}\r\n setOpen={setOpen}\r\n open={open}\r\n />\r\n \r\n );\r\n}\r\n","import { ExpandMore } from '@mui/icons-material';\r\nimport { Accordion, AccordionDetails, AccordionSummary, styled, Typography } from '@mui/material';\r\n\r\nimport { Box } from '@mui/system';\r\nimport CardMediaCustom from 'components/CardMediaCustom';\r\nimport IconStyle from 'components/IconStyle';\r\n\r\nimport { HelpCategoryTutorial } from 'datas/helpCategories';\r\n\r\n/**----------------------------- */\r\nconst AccordionStyle = styled(Accordion)(({ theme }) => ({\r\n boxShadow: theme.customShadows.z1,\r\n borderRadius: theme.shape.borderRadius,\r\n minHeight: '100%',\r\n\r\n '&.MuiAccordion-root:before': { background: 'none', boxShadow: 'none' }\r\n}));\r\n\r\n/******** */\r\n\r\ntype HelpCardTutorialProps = {\r\n index: number;\r\n expanded: string | boolean;\r\n tutorial: HelpCategoryTutorial;\r\n onChange: (panel: string) => (event: React.SyntheticEvent, isExpanded: boolean) => void;\r\n};\r\n\r\nexport default function HelpCardTutorial({\r\n index,\r\n expanded,\r\n tutorial,\r\n onChange\r\n}: HelpCardTutorialProps) {\r\n return (\r\n \r\n }>\r\n {tutorial.title}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { Card, Stack, styled, Typography } from '@mui/material';\r\nimport { HelpCategoryTutorial } from 'datas/helpCategories';\r\nimport { Box } from '@mui/system';\r\nimport { childrenToReact } from 'react-markdown/lib/ast-to-react';\r\nimport { useState } from 'react';\r\nimport HelpCardTutorial from './HelpCardTutorial';\r\n\r\ntype HelpCardTutorialProps = {\r\n tutorials: Array;\r\n};\r\n\r\nexport default function HelpCardTutorials({ tutorials }: HelpCardTutorialProps) {\r\n const [expanded, setExpanded] = useState(false);\r\n\r\n const handleChange = (panel: string) => (event: React.SyntheticEvent, isExpanded: boolean) => {\r\n setExpanded(isExpanded ? panel : false);\r\n };\r\n return (\r\n \r\n \r\n Tutoriels\r\n \r\n \r\n {tutorials.map((tutorial, index) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n}\r\n","import { Card, CardContent, CardHeader, Typography, Stack, styled } from '@mui/material';\r\nimport HelpCardImage from './HelpCardImage';\r\nimport { HelpCategory } from 'datas/helpCategories';\r\nimport HelpCardTutorials from './HelpCardTutorials';\r\n\r\nimport { Box } from '@mui/system';\r\nimport { Button } from '@mui/material';\r\nimport usePageSettings from 'hooks/usePageSettings';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { useEffect } from 'react';\r\nimport useTrackerGoogle from 'hooks/useTrackerGoogle';\r\n\r\nconst CardStyle = styled(Card)(({ theme }) => ({\r\n backgroundColor: '#F6F7F8',\r\n boxShadow: theme.customShadows.z16,\r\n borderRadius: theme.shape.borderRadiusMd,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n width: '100%'\r\n}));\r\n\r\ntype HelpCardProps = {\r\n category: HelpCategory;\r\n};\r\n\r\nexport default function HelpCard({ category }: HelpCardProps) {\r\n const { pageview } = useTrackerGoogle();\r\n\r\n useEffect(() => {\r\n pageview({\r\n page_level_1: `Aide - ${category.label}`,\r\n page_path: PATH_DASHBOARD.general.help\r\n });\r\n }, [category]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {category.image.length > 0 && }\r\n\r\n {category.tutorials && category.tutorials.length > 0 && (\r\n \r\n )}\r\n\r\n \r\n \r\n \r\n\r\n {category.tutorials && category.tutorials.length > 0 && (\r\n \r\n Pour information\r\n \r\n L’école sélectionnée pour chaque tutoriel vidéo est un exemple. En fonction de\r\n votre formation et de votre profil, vous avez accès ou non à certaines\r\n fonctionnalités ou rubriques.{' '}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nconst HelpLinkAllHelps = () => {\r\n const navigate = useNavigate();\r\n const { helpCategoryId } = usePageSettings();\r\n\r\n const handleClick = () => {\r\n navigate(PATH_DASHBOARD.general.help);\r\n };\r\n\r\n if (!helpCategoryId || helpCategoryId === '') return <>;\r\n\r\n return (\r\n \r\n );\r\n};\r\n","import { useEffect, useRef, useState } from 'react';\r\nimport { Drawer, Stack, Tooltip } from '@mui/material';\r\nimport { BoxProps } from '@mui/system';\r\nimport HelpCard from './HelpCard';\r\nimport { HelpCategory } from 'datas/helpCategories';\r\nimport MIconButton from 'components/MIconButton';\r\nimport { Close } from '@mui/icons-material';\r\nimport { Typography } from '@mui/material';\r\nimport { CardHeader } from '@mui/material';\r\nimport IconStyle from 'components/IconStyle';\r\nimport { IconButton } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface HelpDrawerProps extends BoxProps {\r\n open: boolean;\r\n onClose?: () => void;\r\n category: HelpCategory;\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function HelpDrawer({ open, onClose, category }: HelpDrawerProps) {\r\n const handleClose = (e: any) => {\r\n onClose && onClose();\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Aide - {category.label}\r\n \r\n \r\n\r\n \r\n \r\n );\r\n}\r\n","import { styled } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst QuillEditorToolbarStyle = styled('div')(({ theme }) => {\r\n const isRTL = theme.direction === 'rtl';\r\n\r\n return {\r\n '& .ql-snow.ql-toolbar button:hover .ql-fill, .ql-snow .ql-toolbar button:hover .ql-fill, .ql-snow.ql-toolbar button:focus .ql-fill, .ql-snow .ql-toolbar button:focus .ql-fill, .ql-snow.ql-toolbar button.ql-active .ql-fill, .ql-snow .ql-toolbar button.ql-active .ql-fill, .ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill, .ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill, .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill, .ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill, .ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill, .ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill, .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill, .ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill, .ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill, .ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill, .ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill, .ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill, .ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill, .ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill, .ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill, .ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill, .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill, .ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill, .ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill, .ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill, .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill, .ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill':\r\n {\r\n fill: theme.palette.primary.main\r\n },\r\n '& .ql-snow.ql-toolbar button:hover, .ql-snow .ql-toolbar button:hover, .ql-snow.ql-toolbar button:focus, .ql-snow .ql-toolbar button:focus, .ql-snow.ql-toolbar button.ql-active, .ql-snow .ql-toolbar button.ql-active, .ql-snow.ql-toolbar .ql-picker-label:hover, .ql-snow .ql-toolbar .ql-picker-label:hover, .ql-snow.ql-toolbar .ql-picker-label.ql-active, .ql-snow .ql-toolbar .ql-picker-label.ql-active, .ql-snow.ql-toolbar .ql-picker-item:hover, .ql-snow .ql-toolbar .ql-picker-item:hover, .ql-snow.ql-toolbar .ql-picker-item.ql-selected, .ql-snow .ql-toolbar .ql-picker-item.ql-selected':\r\n {\r\n color: theme.palette.primary.main\r\n },\r\n '& .ql-snow.ql-toolbar button:hover .ql-stroke, .ql-snow .ql-toolbar button:hover .ql-stroke, .ql-snow.ql-toolbar button:focus .ql-stroke, .ql-snow .ql-toolbar button:focus .ql-stroke, .ql-snow.ql-toolbar button.ql-active .ql-stroke, .ql-snow .ql-toolbar button.ql-active .ql-stroke, .ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke, .ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke, .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke, .ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke, .ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke, .ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke, .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke, .ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke, .ql-snow.ql-toolbar button:hover .ql-stroke-miter, .ql-snow .ql-toolbar button:hover .ql-stroke-miter, .ql-snow.ql-toolbar button:focus .ql-stroke-miter, .ql-snow .ql-toolbar button:focus .ql-stroke-miter, .ql-snow.ql-toolbar button.ql-active .ql-stroke-miter, .ql-snow .ql-toolbar button.ql-active .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter':\r\n {\r\n stroke: theme.palette.primary.main\r\n },\r\n '& .ql-stroke': {\r\n stroke: theme.palette.text.primary\r\n },\r\n '& .ql-fill, .ql-stroke.ql-fill': {\r\n fill: theme.palette.text.primary\r\n },\r\n '& .ql-picker, .ql-picker-options, .ql-picker-item, .ql-picker-label, button': {\r\n '&:focus': { outline: 'none' }\r\n },\r\n '& .ql-toolbar.ql-snow': {\r\n border: 'none',\r\n borderBottom: `solid 1px ${theme.palette.grey[500_32]}`,\r\n '& .ql-formats': {\r\n '&:not(:last-of-type)': {\r\n marginRight: theme.spacing(2)\r\n }\r\n },\r\n\r\n // Button\r\n '& button': {\r\n padding: 0,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n borderRadius: 4,\r\n color: theme.palette.text.primary\r\n },\r\n\r\n // Icon svg\r\n '& button svg, span svg': {\r\n width: 20,\r\n height: 20\r\n },\r\n\r\n // Select\r\n '& .ql-picker-label': {\r\n ...theme.typography.subtitle2,\r\n color: theme.palette.text.primary,\r\n '& .ql-stroke': {\r\n stroke: theme.palette.text.primary\r\n }\r\n },\r\n '& .ql-picker-label svg': {\r\n ...(isRTL && {\r\n right: '0 !important',\r\n left: 'auto !important'\r\n })\r\n },\r\n '& .ql-color,& .ql-background,& .ql-align ': {\r\n '& .ql-picker-label': {\r\n padding: 0,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n }\r\n },\r\n '& .ql-expanded': {\r\n '& .ql-picker-label': {\r\n borderRadius: 4,\r\n color: theme.palette.text.disabled,\r\n borderColor: 'transparent !important',\r\n backgroundColor: theme.palette.action.focus,\r\n '& .ql-stroke': { stroke: theme.palette.text.disabled }\r\n },\r\n '& .ql-picker-options': {\r\n padding: 0,\r\n marginTop: 4,\r\n border: 'none',\r\n maxHeight: 200,\r\n overflow: 'auto',\r\n boxShadow: theme.customShadows.z20,\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: theme.palette.background.paper\r\n },\r\n '& .ql-picker-item': {\r\n color: theme.palette.text.primary\r\n },\r\n\r\n // Align\r\n '&.ql-align': {\r\n '& .ql-picker-options': { padding: 0, display: 'flex' },\r\n '& .ql-picker-item': {\r\n width: 32,\r\n height: 32,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n }\r\n },\r\n // Color & Background\r\n '&.ql-color, &.ql-background': {\r\n '& .ql-picker-options': { padding: 8 },\r\n '& .ql-picker-item': {\r\n margin: 3,\r\n borderRadius: 4,\r\n '&.ql-selected': { border: 'solid 1px black' }\r\n }\r\n },\r\n // Font, Size, Header\r\n '&.ql-font, &.ql-size, &.ql-header': {\r\n '& .ql-picker-options': {\r\n padding: theme.spacing(1, 0)\r\n },\r\n '& .ql-picker-item': {\r\n padding: theme.spacing(0.5, 1.5)\r\n }\r\n }\r\n }\r\n }\r\n };\r\n});\r\n\r\nexport default QuillEditorToolbarStyle;\r\n","import { Quill } from 'react-quill';\r\nimport { Icon } from '@iconify/react';\r\nimport roundUndo from '@iconify/icons-ic/round-undo';\r\nimport roundRedo from '@iconify/icons-ic/round-redo';\r\n\r\nimport QuillEditorToolbarStyle from './QuillEditorToolbarStyle';\r\n// //\r\n// import QuillEditorToolbarStyle from './QuillEditorToolbarStyle';\r\n\r\n// // ----------------------------------------------------------------------\r\n\r\nconst FONT_FAMILY = ['Arial', 'Tahoma', 'Georgia', 'Impact', 'Verdana'];\r\n\r\nconst FONT_SIZE = [\r\n '8px',\r\n '9px',\r\n '10px',\r\n '12px',\r\n '14px',\r\n '16px',\r\n '20px',\r\n '24px',\r\n '32px',\r\n '42px',\r\n '54px',\r\n '68px',\r\n '84px',\r\n '98px'\r\n];\r\nconst HEADINGS = ['Heading 1', 'Heading 2', 'Heading 3', 'Heading 4', 'Heading 5', 'Heading 6'];\r\n\r\nexport function undoChange() {\r\n // @ts-ignore\r\n this.quill.history.undo();\r\n}\r\nexport function redoChange() {\r\n // @ts-ignore\r\n this.quill.history.redo();\r\n}\r\n\r\n// const Size = Quill.import('formats/size');\r\nconst Size = Quill.import('attributors/style/size');\r\nSize.whitelist = FONT_SIZE;\r\nQuill.register(Size, true);\r\n\r\n// const Font = Quill.import('formats/font');\r\nconst Font = Quill.import('attributors/style/font');\r\nFont.whitelist = FONT_FAMILY;\r\nQuill.register(Font, true);\r\n\r\nexport const formats = [\r\n 'align',\r\n 'background',\r\n 'blockquote',\r\n 'bold',\r\n 'bullet',\r\n 'code',\r\n 'code-block',\r\n 'color',\r\n 'direction',\r\n 'font',\r\n 'formula',\r\n 'header',\r\n 'image',\r\n 'indent',\r\n 'italic',\r\n 'link',\r\n 'list',\r\n 'script',\r\n 'size',\r\n 'strike',\r\n 'table',\r\n 'underline',\r\n 'video'\r\n];\r\n\r\ntype EditorToolbarProps = {\r\n id: string;\r\n isSimple?: boolean;\r\n};\r\n\r\nexport default function QuillEditorToolbar({ id, isSimple, ...other }: EditorToolbarProps) {\r\n return (\r\n \r\n
\r\n
\r\n {!isSimple && (\r\n \r\n )}\r\n\r\n {!isSimple && (\r\n \r\n )}\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n {!isSimple && (\r\n
\r\n \r\n
\r\n )}\r\n\r\n
\r\n
\r\n\r\n {!isSimple && (\r\n
\r\n
\r\n )}\r\n\r\n {!isSimple && (\r\n
\r\n
\r\n )}\r\n\r\n
\r\n \r\n )}\r\n {onConfirm && (\r\n \r\n Confirmer\r\n \r\n )}\r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n {withoutImage ? (\r\n <> {content}\r\n ) : (\r\n <>\r\n {content}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { RootState, store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\nimport { AxiosResponse } from 'axios';\r\n//Redux\r\nimport { addEvent, removeEvent, updateEvent } from 'redux/slices/agenda';\r\n\r\n// @types\r\nimport {\r\n Meeting,\r\n MeetingAccessResponse,\r\n MeetingAccessResult,\r\n MeetingAddOrUpdateResponse,\r\n MeetingAddOrUpdateResult,\r\n MeetingCancelResponse,\r\n MeetingCancelResult,\r\n MeetingState\r\n} from '../../@types/meeting';\r\nimport { convertMeetingToAgendaEvents } from 'mapper/agendaMap';\r\n\r\nimport { SurveyRequest } from '../../@types/survey';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: MeetingState = {\r\n isLoading: false,\r\n error: false,\r\n meeting: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'meeting',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n // end LOADING\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // meeting by event\r\n selectMeetingByEvent(state, action) {\r\n state.error = null;\r\n state.meeting = action.payload;\r\n state.isLoading = false;\r\n },\r\n\r\n // meeting\r\n selectMeeting(state, action) {\r\n state.error = null;\r\n state.meeting = action.payload;\r\n state.isLoading = false;\r\n },\r\n\r\n // Remove\r\n removeMeeting(state) {\r\n state.error = null;\r\n state.meeting = null;\r\n state.isLoading = false;\r\n },\r\n\r\n // CLOSE MODAL\r\n closeModal(state) {\r\n state.isLoading = false;\r\n state.meeting = null;\r\n state.error = null;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { selectMeeting, selectMeetingByEvent, closeModal, removeMeeting } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport const addOrUpdateMeeting = (meeting: Meeting) => (onSuccess: (meeting: Meeting) => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post(\r\n '/api/meeting/addOrUpdate',\r\n meeting\r\n );\r\n\r\n const { result, item } = response.data;\r\n\r\n switch (result) {\r\n case MeetingAddOrUpdateResult.Success:\r\n if (meeting.id === 0) dispatch(addEvent([convertMeetingToAgendaEvents(item)]));\r\n else dispatch(updateEvent(convertMeetingToAgendaEvents(item)));\r\n\r\n onSuccess(item);\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError(response.data));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError({ result: 99 }));\r\n }\r\n };\r\n};\r\n\r\nexport const cancelMeeting = (meeting: Meeting) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get(`/api/meeting/cancel/${meeting.id}`);\r\n const { result } = response.data;\r\n\r\n switch (result) {\r\n case MeetingCancelResult.Success:\r\n dispatch(slice.actions.removeMeeting());\r\n dispatch(removeEvent({ eventId: meeting.id }));\r\n onSuccess();\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError({ result: 99 }));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError({ result: 99 }));\r\n }\r\n };\r\n};\r\n\r\nexport const getUrlVisio =\r\n (id: number) =>\r\n (onSuccess: (url: string, survey: SurveyRequest) => void) =>\r\n (onError: (error: number) => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n var response = await axios.get(`/api/meeting/${id}/access`);\r\n const { result, link, survey } = response.data;\r\n switch (result) {\r\n case MeetingAccessResult.Success:\r\n dispatch(slice.actions.endLoading());\r\n onSuccess(link, survey);\r\n break;\r\n default:\r\n dispatch(slice.actions.endLoading());\r\n onError(result);\r\n\r\n return;\r\n }\r\n } catch (ex) {\r\n dispatch(slice.actions.endLoading());\r\n onError(99);\r\n }\r\n };\r\n };\r\n","import {\r\n ArticleOutlined,\r\n Edit,\r\n FolderOpen,\r\n HelpCenter,\r\n LinkSharp,\r\n MusicNote,\r\n OndemandVideoOutlined,\r\n SvgIconComponent,\r\n Videocam\r\n} from '@mui/icons-material';\r\nimport { BoxProps } from '@mui/system';\r\nimport { StudyPlanItem, StudyPlanItemMedia, StudyPlanItemType } from '../@types/pedagogy';\r\n\r\nexport function getTypeSupport(type: StudyPlanItemType, sx?: any) {\r\n switch (type) {\r\n //Annexes\r\n /*\r\n case StudyPlanItemType.:\r\n return \r\n */\r\n case StudyPlanItemType.Audio:\r\n return {\r\n icon: ,\r\n label: 'Audio'\r\n };\r\n case StudyPlanItemType.Elearning:\r\n return {\r\n icon: ,\r\n label: 'Activité e-learning'\r\n };\r\n case StudyPlanItemType.Homework:\r\n return { icon: , label: 'Évaluation' };\r\n case StudyPlanItemType.Url:\r\n return { icon: , label: 'Lien' };\r\n case StudyPlanItemType.Video:\r\n return { icon: , label: 'Vidéo' };\r\n //return \r\n default:\r\n return { icon: , label: 'Cours' };\r\n }\r\n}\r\n\r\ninterface IconTypeSupportProps extends BoxProps {\r\n type: StudyPlanItemType;\r\n}\r\n\r\nexport function IconTypeSupport({ type, sx }: IconTypeSupportProps) {\r\n switch (type) {\r\n //Annexes\r\n /*\r\n case StudyPlanItemType.:\r\n return \r\n */\r\n case StudyPlanItemType.Audio:\r\n return ;\r\n case StudyPlanItemType.Elearning:\r\n return ;\r\n case StudyPlanItemType.Homework:\r\n return ;\r\n case StudyPlanItemType.Url:\r\n return ;\r\n case StudyPlanItemType.Video:\r\n return ;\r\n //return \r\n default:\r\n return ;\r\n }\r\n}\r\nexport const getStudyPlanItemLabel = (item: StudyPlanItem) => {\r\n switch (item.type) {\r\n case StudyPlanItemType.Audio:\r\n case StudyPlanItemType.Video:\r\n case StudyPlanItemType.Url:\r\n case StudyPlanItemType.Pdf:\r\n case StudyPlanItemType.Annexe:\r\n const media = (item as StudyPlanItemMedia).media;\r\n return {\r\n label: media.title,\r\n observation:\r\n media.observation?.toLowerCase() === media.title?.toLowerCase() ? '' : media.observation\r\n };\r\n\r\n default:\r\n return { label: item.label, observation: '' };\r\n }\r\n};\r\n","import { ContactlessOutlined } from '@mui/icons-material';\r\nimport {\r\n format,\r\n getTime,\r\n formatDistanceToNow,\r\n addMonths,\r\n isAfter,\r\n addMinutes,\r\n formatDistance,\r\n isBefore,\r\n getWeek,\r\n isValid,\r\n differenceInMonths,\r\n startOfDay,\r\n lastDayOfWeek,\r\n addDays,\r\n startOfWeek,\r\n differenceInHours,\r\n differenceInMinutes,\r\n addSeconds,\r\n endOfMonth,\r\n eachWeekendOfYear,\r\n eachWeekOfInterval,\r\n addMilliseconds\r\n} from 'date-fns';\r\nimport fr from 'date-fns/locale/fr';\r\nimport { formatInTimeZone } from 'date-fns-tz';\r\nimport moment from 'moment';\r\n// ----------------------------------------------------------------------\r\n\r\nexport function differenceBetweenHours(\r\n date: Date | string | number,\r\n dateEnd: Date | string | number\r\n) {\r\n return differenceInHours(new Date(date), new Date(dateEnd));\r\n}\r\n\r\nexport function getDateFromTimeStamp(value: number) {\r\n return new Date(value * 1000);\r\n}\r\n\r\nexport function differenceBetweenMinute(\r\n date: Date | string | number,\r\n dateEnd: Date | string | number\r\n) {\r\n return differenceInMinutes(new Date(date), new Date(dateEnd));\r\n}\r\n\r\nexport function isDateValid(date: any): boolean {\r\n return isValid(date);\r\n}\r\n\r\nexport function isAfterDate(date: Date | string | number, dateEnd: Date | string | number) {\r\n return isAfter(new Date(date), new Date(dateEnd));\r\n}\r\n\r\nexport function isBeforeDate(start: Date | string | number, end: Date | string | number) {\r\n return isBefore(new Date(start), new Date(end));\r\n}\r\n\r\nexport const fDateMeeting = (start: Date | string, end: Date | string): string => {\r\n return `${format(new Date(start), 'eeee dd MMMM yyyy', { locale: fr })}, de ${format(\r\n new Date(start),\r\n 'HH:mm',\r\n { locale: fr }\r\n )} à ${format(new Date(end), 'HH:mm', { locale: fr })}`;\r\n};\r\n\r\nexport const fPeriode = (start: Date | string, end: Date | string) => {\r\n if (new Date(start).getMonth() !== new Date(end).getMonth()) {\r\n return `${fDate(start)} au ${fDate(end)}`;\r\n }\r\n return `${fDate(start, 'dd')} - ${fDate(end, 'dd MMM yyyy')}`;\r\n};\r\n\r\nexport const fDatePeriode = (start: Date | string, end: Date | string, formatDate: string) => {\r\n if (new Date(start).getDay() !== new Date(end).getDay()) {\r\n return `${format(new Date(start), 'eeee dd MMMM yyyy à HH:mm', { locale: fr })} au ${format(\r\n new Date(end),\r\n 'eeee dd MMMM yyyy à HH:mm',\r\n { locale: fr }\r\n )}`;\r\n }\r\n return `${format(new Date(start), formatDate, { locale: fr })} à ${format(\r\n new Date(end),\r\n 'HH:mm',\r\n { locale: fr }\r\n )}`;\r\n};\r\n\r\nexport const fDashboardDate = (start: Date | string, end: Date | string): string => {\r\n return `${format(new Date(start), 'eeee dd MMMM yyyy', { locale: fr })}, ${format(\r\n new Date(start),\r\n 'HH:mm',\r\n { locale: fr }\r\n )} à ${format(new Date(end), 'HH:mm', { locale: fr })}`;\r\n};\r\n\r\nexport const fFullDateWithHours = (date: Date | string): string => {\r\n return `${format(new Date(date), 'eeee dd MMMM yyyy', { locale: fr })}, à ${format(\r\n new Date(date),\r\n 'HH:mm',\r\n { locale: fr }\r\n )}`;\r\n};\r\n\r\nexport function timeCount(start: Date | string, target: Date | string) {\r\n let result = '';\r\n\r\n if (start && start !== '' && target && target != '') {\r\n const startDate = moment(new Date(start).getTime());\r\n const targetDate = moment(new Date(target).getTime());\r\n let diffDuration = startDate.diff(targetDate);\r\n\r\n if (diffDuration !== 0) {\r\n // RDV dans le futur ou dans le passé\r\n if (diffDuration > 0) {\r\n result = 'dans';\r\n } else {\r\n result = 'commencé depuis';\r\n }\r\n // Passage en valeur absolue pour le calcul\r\n diffDuration = Math.abs(diffDuration);\r\n\r\n const totalDays = diffDuration / (24 * 60 * 60 * 1000);\r\n const days = Math.floor(totalDays);\r\n const daysms = diffDuration % (24 * 60 * 60 * 1000);\r\n const hours = Math.floor(daysms / (60 * 60 * 1000));\r\n const hoursms = diffDuration % (60 * 60 * 1000);\r\n const minutes = Math.floor(hoursms / (60 * 1000));\r\n //const minutesms = diffDuration % (60 * 1000);\r\n //const sec = Math.floor(minutesms / 1000);\r\n\r\n const durations = [];\r\n\r\n if (days > 0) {\r\n durations.push(`${days} jour${days > 1 ? 's' : ''}`);\r\n }\r\n if (hours > 0) {\r\n durations.push(`${hours} heure${hours > 1 ? 's' : ''}`);\r\n }\r\n if (minutes > 0) {\r\n durations.push(`${minutes} minute${minutes > 1 ? 's' : ''}`);\r\n }\r\n\r\n if (durations.length > 0) {\r\n result = `${result} ${durations.join(', ')}`;\r\n } else {\r\n result = '';\r\n }\r\n }\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport function addTime(date: Date | string | number, minute: number) {\r\n return addMinutes(new Date(date), minute);\r\n}\r\n\r\nexport function addDayss(date: Date | number, day: number) {\r\n return addDays(date, day);\r\n}\r\n\r\nexport function fDate(date: Date | string | number, formatType: string = 'dd MMMM yyyy') {\r\n return format(new Date(date), formatType, { locale: fr }); //\r\n}\r\n\r\nexport function fDateTime(date: Date | string | number) {\r\n return format(new Date(date), 'dd MMM yyyy p', { locale: fr });\r\n}\r\nexport function fDateFromNovadis(date: number, format: string = 'dd MMMM yyyy') {\r\n if (date === 0) return '';\r\n\r\n let datString = `${date.toString().substring(0, 4)}-${date.toString().substring(4, 6)}-${date\r\n .toString()\r\n .substring(6, 8)}`;\r\n\r\n return fDate(datString, format);\r\n}\r\n\r\nexport function fTime(date: Date | string | number) {\r\n return format(new Date(date), 'HH:mm', { locale: fr });\r\n}\r\n\r\nexport function fTimestamp(date: Date | string | number) {\r\n return getTime(new Date(date));\r\n}\r\n\r\nexport function fDateTimeSuffix(date: Date | string | number) {\r\n return format(new Date(date), 'dd/MM/yyyy HH:mm p', { locale: fr });\r\n}\r\n\r\nexport function fToNow(date: Date | string | number) {\r\n return formatDistanceToNow(new Date(date), {\r\n addSuffix: true,\r\n locale: fr\r\n });\r\n}\r\n\r\nexport const formatAPI = (date: Date | string) => {\r\n return format(new Date(date), 'yyyy-MM-dd', { locale: fr });\r\n};\r\n\r\nexport const getDateMonthGlissant = (month: number): Date => {\r\n return addMonths(new Date(), month);\r\n};\r\n\r\nexport const getDateTimeToString = () => {\r\n return format(new Date(), 'yyyy-MM-dd HH:mm:ss.00', { locale: fr });\r\n};\r\n\r\nexport const getTimeToString = (date: Date | string) => {\r\n return format(new Date(date), 'HH:mm', { locale: fr });\r\n};\r\n\r\nexport const convertStringToDate = (date: string) => {\r\n return new Date(date);\r\n};\r\n\r\nexport const setDateTime = (date: string, time: string) => {\r\n let dateString = fDate(date, 'YYYY-MM-DD');\r\n\r\n return new Date(`${dateString}T${time}:00`);\r\n};\r\n\r\nexport function getWeekdaysDescriptions(): Array {\r\n return [\r\n { label: 'Lundi', value: 1 },\r\n { label: 'Mardi', value: 2 },\r\n { label: 'Mercredi', value: 3 },\r\n { label: 'Jeudi', value: 4 },\r\n { label: 'Vendredi', value: 5 },\r\n { label: 'Samedi', value: 6 },\r\n { label: 'Dimanche', value: 0 }\r\n ];\r\n}\r\n\r\nexport const getWeekDays = (date: Date): Array => {\r\n let startDate = startOfWeek(date);\r\n let endDate = lastDayOfWeek(date);\r\n const weeks = [];\r\n\r\n while (startDate <= endDate) {\r\n weeks.push(startDate);\r\n startDate = addDays(startDate, 1);\r\n }\r\n\r\n return weeks;\r\n};\r\n\r\nexport const getWeekDaysMove = (date: Date, upOrDown: boolean): Array => {\r\n return getWeekDays(addDays(date, upOrDown ? 7 : -1));\r\n};\r\n\r\nexport const convertMinsToHrsMins = (mins: number) => {\r\n let h = Math.floor(mins / 60);\r\n let m = mins % 60;\r\n const hours = h < 10 ? '0' + h : h; // (or alternatively) h = String(h).padStart(2, '0')\r\n const minutes = m < 10 ? '0' + m : m; // (or alternatively) m = String(m).padStart(2, '0')\r\n return `${hours}:${minutes}`;\r\n};\r\n\r\nexport const eachWeekOfMonth = (year: number, month: number): Array => {\r\n let start = new Date(year, month, 1);\r\n const end = endOfMonth(new Date(year, month, 1));\r\n\r\n return eachWeekOfInterval({ start: start, end: end }, { weekStartsOn: 1 });\r\n};\r\n\r\nexport const getCurrentDateFr = () => {\r\n return moment(\r\n new Date().toLocaleString('fr-FR', { timeZone: 'Europe/Paris' }),\r\n 'DD/MM/YYYY hh:mm:ss'\r\n ).toDate();\r\n};\r\n\r\n// dateFr : Date française (on ignorera le GMT)\r\nexport const getDateLocaleFromFr = (dateFr: Date) => {\r\n if (dateFr) {\r\n // Récupération de la date locale avec le GMT local\r\n const dateLocale = new Date();\r\n\r\n // Transformation de la date locale en date française\r\n // NB : transforme la date locale en date française en appliquant le décalage horaire d'après les infos du GMT\r\n const currentDateFr = moment(\r\n dateLocale.toLocaleString('fr-FR', { timeZone: 'Europe/Paris' }),\r\n 'DD/MM/YYYY hh:mm:ss'\r\n ).toDate();\r\n\r\n // Calcul du décalage horaire entre la date locale et la date française\r\n const diff = dateLocale.getTime() - currentDateFr.getTime();\r\n\r\n // Calcul de la date locale d'après la date française fournie\r\n const newDate = addMilliseconds(dateFr, diff);\r\n\r\n return newDate;\r\n }\r\n return dateFr;\r\n};\r\n","import jwtDecode from 'jwt-decode';\r\nimport { verify, sign } from 'jsonwebtoken';\r\n//\r\nimport axiosInstance from './axios';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst isValidToken = (accessToken: string) => {\r\n if (!accessToken) {\r\n return false;\r\n }\r\n const decoded = jwtDecode<{ exp: number }>(accessToken);\r\n const currentTime = Date.now() / 1000;\r\n\r\n return decoded.exp > currentTime;\r\n};\r\n\r\n// const handleTokenExpired = (exp) => {\r\n// let expiredTimer;\r\n\r\n// window.clearTimeout(expiredTimer);\r\n// const currentTime = Date.now();\r\n// const timeLeft = exp * 1000 - currentTime;\r\n// console.log(timeLeft);\r\n// expiredTimer = window.setTimeout(() => {\r\n// console.log('expired');\r\n// // You can do what ever you want here, like show a notification\r\n// }, timeLeft);\r\n// };\r\n\r\nconst setSession = (accessToken: string | null) => {\r\n if (accessToken) {\r\n localStorage.setItem('accessToken', accessToken);\r\n axiosInstance.defaults.headers.common.Authorization = `Bearer ${accessToken}`;\r\n // This function below will handle when token is expired\r\n // const { exp } = jwtDecode(accessToken);\r\n // handleTokenExpired(exp);\r\n } else {\r\n localStorage.removeItem('accessToken');\r\n delete axiosInstance.defaults.headers.common.Authorization;\r\n }\r\n};\r\n\r\nexport { isValidToken, setSession, verify, sign };\r\n","import { alpha } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction createGradient(color1: string, color2: string) {\r\n return `linear-gradient(to bottom, ${color1}, ${color2})`;\r\n}\r\n\r\ninterface GradientsPaletteOptions {\r\n primary: string;\r\n info: string;\r\n success: string;\r\n warning: string;\r\n error: string;\r\n}\r\n\r\ninterface ChartPaletteOptions {\r\n violet: string[];\r\n blue: string[];\r\n green: string[];\r\n yellow: string[];\r\n red: string[];\r\n}\r\n\r\ndeclare module '@mui/material/styles/createPalette' {\r\n interface TypeBackground {\r\n neutral: string;\r\n }\r\n interface SimplePaletteColorOptions {\r\n lighter: string;\r\n darker: string;\r\n }\r\n interface PaletteColor {\r\n lighter: string;\r\n darker: string;\r\n }\r\n interface Palette {\r\n gradients: GradientsPaletteOptions;\r\n chart: ChartPaletteOptions;\r\n misc: PaletteColor;\r\n }\r\n interface PaletteOptions {\r\n gradients: GradientsPaletteOptions;\r\n chart: ChartPaletteOptions;\r\n }\r\n}\r\n\r\ndeclare module '@mui/material' {\r\n interface Color {\r\n 0: string;\r\n 500_8: string;\r\n 500_12: string;\r\n 500_16: string;\r\n 500_24: string;\r\n 500_32: string;\r\n 500_48: string;\r\n 500_56: string;\r\n 500_80: string;\r\n }\r\n}\r\n\r\n// SETUP COLORS\r\nconst PRIMARY = {\r\n lighter: '#6369FF',\r\n light: '#5BE584',\r\n main: '#00AB55',\r\n dark: '#007B55',\r\n darker: '#005249'\r\n};\r\nconst SECONDARY = {\r\n lighter: '#D6E4FF',\r\n light: '#84A9FF',\r\n main: '#3366FF',\r\n dark: '#1939B7',\r\n darker: '#091A7A'\r\n};\r\nconst INFO = {\r\n lighter: '#D0F2FF',\r\n light: '#74CAFF',\r\n main: '#1890FF',\r\n dark: '#0C53B7',\r\n darker: '#04297A'\r\n};\r\nconst SUCCESS = {\r\n lighter: '#D6F5CC',\r\n light: '#AAF27F',\r\n main: '#00C040', //'#54D62C',\r\n dark: '#229A16',\r\n darker: '#08660D'\r\n};\r\nconst WARNING = {\r\n lighter: '#FFF7CD',\r\n light: '#FFE16A',\r\n main: '#FFC107',\r\n dark: '#B78103',\r\n darker: '#7A4F01'\r\n};\r\nconst ERROR = {\r\n lighter: '#FFE7D9',\r\n light: '#FFA48D',\r\n main: '#FF4842',\r\n dark: '#B72136',\r\n darker: '#7A0C2E'\r\n};\r\nconst MISC = {\r\n lighter: '#EC6000',\r\n light: '#EC6000',\r\n main: '#EC6000',\r\n dark: '#EC6000',\r\n darker: '#EC6000'\r\n};\r\n\r\nconst GREY = {\r\n 0: '#FFFFFF',\r\n 100: '#F9FAFB',\r\n 200: '#F4F6F8',\r\n 300: '#DFE3E8',\r\n 400: '#EDEFF2',\r\n 500: '#919EAB',\r\n 600: '#637381',\r\n 700: '#454F5B',\r\n 800: '#212B36',\r\n 900: '#161C24',\r\n 500_8: alpha('#919EAB', 0.08),\r\n 500_12: alpha('#919EAB', 0.12),\r\n 500_16: alpha('#919EAB', 0.16),\r\n 500_24: alpha('#919EAB', 0.24),\r\n 500_32: alpha('#919EAB', 0.32),\r\n 500_48: alpha('#919EAB', 0.48),\r\n 500_56: alpha('#919EAB', 0.56),\r\n 500_80: alpha('#919EAB', 0.8)\r\n};\r\n\r\nconst GRADIENTS = {\r\n primary: createGradient(PRIMARY.light, PRIMARY.main),\r\n info: createGradient(INFO.light, INFO.main),\r\n success: createGradient(SUCCESS.light, SUCCESS.main),\r\n warning: createGradient(WARNING.light, WARNING.main),\r\n error: createGradient(ERROR.light, ERROR.main)\r\n};\r\n\r\nconst CHART_COLORS = {\r\n violet: ['#826AF9', '#9E86FF', '#D0AEFF', '#F7D2FF'],\r\n blue: ['#2D99FF', '#83CFFF', '#A5F3FF', '#CCFAFF'],\r\n green: ['#2CD9C5', '#60F1C8', '#A4F7CC', '#C0F2DC'],\r\n yellow: ['#FFE700', '#FFEF5A', '#FFF7AE', '#FFF3D6'],\r\n red: ['#FF6C40', '#FF8F6D', '#FFBD98', '#FFF2D4']\r\n};\r\n\r\nconst COMMON = {\r\n common: { black: '#000', white: '#fff' },\r\n primary: { ...PRIMARY, contrastText: '#fff' },\r\n secondary: { ...SECONDARY, contrastText: '#fff' },\r\n info: { ...INFO, contrastText: '#fff' },\r\n success: { ...SUCCESS, contrastText: GREY[800] },\r\n warning: { ...WARNING, contrastText: GREY[800] },\r\n error: { ...ERROR, contrastText: '#fff' },\r\n misc: { ...MISC, contrastText: '#fff' },\r\n grey: GREY,\r\n gradients: GRADIENTS,\r\n chart: CHART_COLORS,\r\n divider: GREY[500_24],\r\n action: {\r\n hover: GREY[500_8],\r\n selected: GREY[500_16],\r\n disabled: GREY[500_80],\r\n disabledBackground: GREY[500_24],\r\n focus: GREY[500_24],\r\n hoverOpacity: 0.08,\r\n disabledOpacity: 0.48\r\n }\r\n};\r\n\r\nconst palette = {\r\n light: {\r\n ...COMMON,\r\n text: { primary: GREY[800], secondary: GREY[600], disabled: GREY[500] },\r\n background: { paper: '#fff', default: '#fff', neutral: GREY[100] },\r\n action: { active: GREY[600], ...COMMON.action }\r\n },\r\n dark: {\r\n ...COMMON,\r\n text: { primary: '#fff', secondary: GREY[500], disabled: GREY[600] },\r\n background: { paper: GREY[800], default: GREY[900], neutral: GREY[500_16] },\r\n action: { active: GREY[500], ...COMMON.action }\r\n }\r\n};\r\n\r\nexport default palette;\r\n","import { Grid, Skeleton } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\nexport default function SkeletonLoadSingle() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { Box } from '@mui/material';\r\n// @types\r\nimport { FileBaseInfo } from '../../@types/common';\r\nimport FileAttachment from './FileAttachment';\r\n\r\ntype FileDetailsAttachmentsProps = {\r\n files: Array;\r\n onDelete?: (id: number) => void;\r\n};\r\n\r\nexport default function FileDetailsAttachments({ files, onDelete }: FileDetailsAttachmentsProps) {\r\n return (\r\n \r\n {files.map((file) => (\r\n \r\n ))}\r\n \r\n );\r\n}\r\n","import { ModeAccess } from '../@types/account';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { ReactNode, useEffect, useRef } from 'react';\r\nimport { addTime, differenceBetweenMinute } from 'utils/formatTime';\r\nimport { nullFormat } from 'numeral';\r\nimport { dispatch } from 'redux/store';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n/**\r\n * Detection de l'activité sur le site\r\n * @param param0\r\n */\r\nexport default function useTrackerActivity({ parent = null }: { parent?: any | null }) {\r\n let timeoutTracker: NodeJS.Timeout | null = null;\r\n\r\n /**\r\n * Repousse le temps d'inactivité\r\n * @param inactivityTime temps d'inactivité autorisé en minute\r\n */\r\n const eventHandler = (event: any, inactivityTime: number = 30) => {\r\n //On relance au besoin\r\n if (timeoutTracker) {\r\n clearTimeout(timeoutTracker);\r\n }\r\n\r\n /**\r\n * on ne réagi pas de suite aux mouvements.\r\n * */\r\n timeoutTracker = setTimeout(() => {\r\n localStorage.setItem(\r\n '_expiredTime',\r\n addTime(Date.now(), inactivityTime).getTime().toString()\r\n );\r\n }, 300);\r\n };\r\n\r\n useEffect(() => {\r\n if (parent == null) return;\r\n //Abonnement à la souris\r\n parent.addEventListener('mousemove', eventHandler);\r\n parent.addEventListener('scroll', eventHandler);\r\n parent.addEventListener('keydown', eventHandler);\r\n parent.addEventListener('scroll', eventHandler);\r\n\r\n //supprimer les abonnements\r\n return () => {\r\n if (parent == null) return;\r\n parent.removeEventListener('mousemove', eventHandler);\r\n parent.removeEventListener('scroll', eventHandler);\r\n parent.removeEventListener('keydown', eventHandler);\r\n parent.removeEventListener('scroll', eventHandler);\r\n };\r\n }, [parent]);\r\n\r\n return {\r\n eventHandler\r\n };\r\n}\r\n\r\n/**\r\n * Permet de logger les temps de connexions\r\n * @param param0\r\n * @returns\r\n */\r\nexport function LogActivity({ consoles }: { consoles: (value: string) => void }) {\r\n const { setLog, getContractCurrent, student, logout } = useAuth();\r\n\r\n const idConnextion = getContractCurrent().idConnection;\r\n /**\r\n * envoi le temps de connexion\r\n */\r\n const log = async () => {\r\n // controler le mode d'accès\r\n if (![ModeAccess.Write].includes(student?.modeAccess)) return;\r\n\r\n //stockée en timestamp\r\n const expiredTimeValue = localStorage.getItem('_expiredTime');\r\n\r\n if (expiredTimeValue) {\r\n if (+expiredTimeValue > new Date(student?.dateTimeServer).getTime()) {\r\n const inactivity = differenceBetweenMinute(new Date(), new Date(+expiredTimeValue));\r\n //desactiver le site au bout de 60minutes d'inaction\r\n\r\n if (inactivity > 59) {\r\n await logout();\r\n return;\r\n }\r\n }\r\n }\r\n\r\n if (expiredTimeValue && +expiredTimeValue > new Date().getTime()) {\r\n setLog(idConnextion, 1, (value: string) => console.log(value));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n //déclenchement toutes les minutes\r\n const interval = setInterval(() => log(), 1000 * 60);\r\n\r\n //supprimer les abonnements\r\n return () => {\r\n clearInterval(interval);\r\n };\r\n }, [idConnextion]);\r\n\r\n return <>;\r\n}\r\n","import { Phone } from '@mui/icons-material';\r\nimport { Avatar, Button } from '@mui/material';\r\nimport { phoneFormat } from 'utils/formatPhone';\r\n\r\n/**\r\n * Retourne le composant phone\r\n */\r\nexport default function PhoneInfo({ value }: { value: string }) {\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport function PhoneLabel({ phoneNumber, brandId }: { phoneNumber: string; brandId: string }) {\r\n return <>{phoneFormat(phoneNumber, brandId)};\r\n}\r\n","import { createContext, ReactNode, useEffect, useReducer } from 'react';\r\n// utils\r\nimport axiosInstance from '../utils/axios';\r\n// @types\r\nimport {\r\n Homework,\r\n HomeworkBase,\r\n Progression,\r\n StudyPlan,\r\n StudyPlanChapter,\r\n StudyPlanContextType,\r\n StudyPlanItem,\r\n StudyPlanItemLearning,\r\n StudyPlanItemProgressRequest,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType,\r\n StudyPlanMarker,\r\n StudyPlanPhase,\r\n StudyPlanResponse,\r\n StudyPlanResult,\r\n StudyPlanSaveProgressResponse,\r\n StudyPlanSaveProgressResult,\r\n StudyPlanState,\r\n StudyPlanView\r\n} from '../@types/pedagogy';\r\nimport { ActionMap } from '../@types/authentication';\r\nimport { Contract } from '../@types/contract';\r\n\r\nimport {\r\n FileBaseImageOfCourseResponse,\r\n FileInfoToken,\r\n FileBaseImageOfCourseResult\r\n} from '../@types/common';\r\nimport { ModeAccess } from '../@types/account';\r\nimport {\r\n extractHomework,\r\n getItemsUpdated,\r\n getMarker,\r\n initProgression,\r\n refreshPhases,\r\n setStudyPlan,\r\n updateChapterUpdated\r\n} from 'utils/helperStudyPlan';\r\n\r\n//redux\r\nimport { getObjectives } from 'redux/slices/objective';\r\nimport { useDispatch } from 'redux/store';\r\n\r\n// ----------------------------------------------------------------------\r\nenum Types {\r\n change_StudyPlan = 'CHANGE_STUDYPLAN',\r\n change_Chapter_Item = 'CHANGE_CHAPTERITEM',\r\n reset_Updated = 'RESET_UPDATED',\r\n logoutUser = 'LOGOUT_USER',\r\n loading = 'LOADING',\r\n erreur = 'ERREUR',\r\n updateActivity = 'UPDATE_ACTIVITY'\r\n}\r\n\r\nexport type StudyPlanPayload = {\r\n [Types.change_StudyPlan]: {\r\n studyPlan: StudyPlan;\r\n constrainedCourse: boolean;\r\n progression: Progression;\r\n };\r\n [Types.change_Chapter_Item]: {\r\n chapter: StudyPlanChapter | null;\r\n subChapter: StudyPlanChapter | null;\r\n item: StudyPlanItem | null;\r\n updated: boolean;\r\n };\r\n [Types.reset_Updated]: {\r\n updated: boolean;\r\n };\r\n [Types.logoutUser]: {\r\n updated: boolean;\r\n };\r\n [Types.loading]: {\r\n isLoading: boolean;\r\n };\r\n [Types.erreur]: {\r\n error: any;\r\n };\r\n [Types.updateActivity]: {\r\n activity: Activity;\r\n };\r\n};\r\n\r\nexport type StudyPlanActions = ActionMap[keyof ActionMap];\r\n\r\n/**\r\n * Initialise le store\r\n */\r\nconst initialState: StudyPlanState = {\r\n isLoading: true,\r\n error: false,\r\n marker: null,\r\n chapterItemUpdatedList: null,\r\n phases: null,\r\n skills: null,\r\n chapter: null,\r\n item: null,\r\n subChapter: null,\r\n currentSendingPhase: 0,\r\n constrainedCourse: false,\r\n updated: false,\r\n progression: 0,\r\n context: null,\r\n internshipsOfSupport: null,\r\n boundCourses: null\r\n};\r\n\r\n/**\r\n * Store PE : permet de faire des maj du pe.\r\n * il est combiné avec useStudyPlan\r\n * @param state\r\n * @param action\r\n * @returns\r\n */\r\nconst StudyPlanReducer = (state: StudyPlanState, action: StudyPlanActions) => {\r\n switch (action.type) {\r\n case 'LOADING':\r\n return {\r\n ...state,\r\n isLoading: action.payload.isLoading,\r\n error: null\r\n };\r\n case 'ERREUR':\r\n return {\r\n ...state,\r\n error: action.payload.error,\r\n isLoading: false\r\n };\r\n case 'CHANGE_STUDYPLAN':\r\n return {\r\n ...state,\r\n isLoading: false,\r\n marker: action.payload.studyPlan.marker,\r\n phases: action.payload.studyPlan.phases,\r\n skills: action.payload.studyPlan.skills,\r\n internshipsOfSupport: action.payload.studyPlan.internshipsOfSupport,\r\n boundCourses: action.payload.studyPlan.boundCourses,\r\n chapterItemUpdatedList: action.payload.studyPlan.chapterItemUpdatedList,\r\n currentSendingPhase: action.payload.studyPlan.currentSendingPhase,\r\n constrainedCourse: action.payload.constrainedCourse,\r\n context: action.payload.studyPlan.context,\r\n progression:\r\n (action.payload.progression.assimilate / action.payload.progression.count) * 100\r\n };\r\n case 'CHANGE_CHAPTERITEM':\r\n // Marquer comme lu\r\n let updated: boolean = action.payload.updated;\r\n\r\n if (action.payload.item?.status === StudyPlanItemStatus.None) {\r\n action.payload.item.status = StudyPlanItemStatus.Read;\r\n }\r\n //seulement si il sont lus\r\n if (action.payload.item?.status === StudyPlanItemStatus.Read) updated = true;\r\n let phases = state.phases;\r\n let progression = initProgression();\r\n\r\n refreshPhases(\r\n setStudyPlan(phases!, action.payload.item!),\r\n state.currentSendingPhase,\r\n state.constrainedCourse,\r\n progression\r\n );\r\n\r\n return {\r\n ...state,\r\n phases: phases,\r\n marker: getMarker(action.payload.item!),\r\n chapter: action.payload.chapter,\r\n item: action.payload.item,\r\n subChapter: action.payload.subChapter,\r\n isLoading: false,\r\n error: null,\r\n updated: updated,\r\n progression: (progression.assimilate / progression.count) * 100\r\n };\r\n case 'RESET_UPDATED':\r\n return {\r\n ...state,\r\n updated: false,\r\n isLoading: false\r\n };\r\n case 'LOGOUT_USER':\r\n return {\r\n isLoading: false,\r\n error: false,\r\n marker: null,\r\n chapterItemUpdatedList: null,\r\n phases: null,\r\n skills: null,\r\n chapter: null,\r\n item: null,\r\n subChapter: null,\r\n currentSendingPhase: 0,\r\n constrainedCourse: false,\r\n updated: false,\r\n progression: 0,\r\n context: null,\r\n internshipsOfSupport: null,\r\n boundCourses: null\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst StudyPlanContext = createContext(null);\r\n\r\ntype Activity = {\r\n brandId: string;\r\n contractId: number;\r\n courseId: string;\r\n homeworkId: number;\r\n score: number;\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n/**\r\n * Provider plan d\"etude\r\n * Mise à disposition du plan d'étude sur les components enfants.\r\n * Differentes actions pour mettre à jour celui\r\n * Au démarrage on charge les objectifs (devoirs) pour mettre le status des devoirs suivant le PE\r\n */\r\nfunction StudyPlanProvider({ children }: { children: ReactNode }) {\r\n const [state, dispatch] = useReducer(StudyPlanReducer, initialState);\r\n const dispatchRedux = useDispatch();\r\n\r\n const initialize = async (\r\n _view: StudyPlanView,\r\n modeAccess: ModeAccess,\r\n constrainedCourse: boolean\r\n ) => {\r\n try {\r\n dispatch({ type: Types.loading, payload: { isLoading: true } });\r\n\r\n //determiner le type de vue\r\n const urlStudyPlanView =\r\n _view === StudyPlanView.Global ? `?view=${StudyPlanView.Global}` : '';\r\n\r\n const urlStudyPlan =\r\n modeAccess === ModeAccess.Control\r\n ? `/api/pedagogy/studyplan/control`\r\n : `/api/pedagogy/studyplan${urlStudyPlanView}`;\r\n\r\n const response = await axiosInstance.get(urlStudyPlan);\r\n\r\n const { result, studyPlan } = response.data;\r\n switch (result) {\r\n case StudyPlanResult.Success:\r\n // liste des supports pedagos que l'élève doit revoir car maj\r\n studyPlan.chapterItemUpdatedList = getItemsUpdated(studyPlan.phases);\r\n\r\n // on remonte l'info aux parents\r\n studyPlan.phases.map((p) => {\r\n p.chapters.map((uf: StudyPlanChapter) => updateChapterUpdated(uf));\r\n });\r\n\r\n // Maj du PE brut avec les verrou suivant le type de parcours libre ou contraint\r\n let progression = initProgression();\r\n\r\n refreshPhases(\r\n studyPlan.phases,\r\n studyPlan.currentSendingPhase,\r\n constrainedCourse,\r\n progression\r\n );\r\n\r\n dispatch({\r\n type: Types.change_StudyPlan,\r\n payload: {\r\n studyPlan: studyPlan,\r\n constrainedCourse: constrainedCourse,\r\n progression: progression\r\n }\r\n });\r\n\r\n //Extraction des devoirs\r\n let homeworks: Array = [];\r\n studyPlan.phases.map((phase: StudyPlanPhase) =>\r\n phase.chapters.map((chapter: StudyPlanChapter) => {\r\n extractHomework(chapter, homeworks);\r\n })\r\n );\r\n\r\n if ([ModeAccess.Write, ModeAccess.Read].includes(modeAccess)) {\r\n dispatchRedux(getObjectives(homeworks));\r\n }\r\n\r\n break;\r\n default:\r\n dispatch({ type: Types.erreur, payload: { error: 'Impossible de traiter la demande' } });\r\n }\r\n } catch (error: any) {\r\n dispatch({\r\n type: Types.erreur,\r\n payload: { error: 'Impossible de traiter la demande :' + error.message }\r\n });\r\n }\r\n };\r\n\r\n // ----------------------------------------------------------------------\r\n const saveProgress =\r\n (request: StudyPlanItemProgressRequest) => async (onSuccess: (state: boolean) => void) => {\r\n try {\r\n let response = await axiosInstance.post(\r\n `/api/pedagogy/progression/save`,\r\n request,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n const { result } = response.data;\r\n switch (result) {\r\n case StudyPlanSaveProgressResult.Success:\r\n onSuccess(true);\r\n\r\n break;\r\n }\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n };\r\n\r\n const getImageOfCourse =\r\n (fileInfo: FileInfoToken) => async (onSuccess: (images: Array) => void) => {\r\n let response = await axiosInstance.post(\r\n `/api/file/images/course`,\r\n fileInfo\r\n );\r\n const { result, images } = response.data;\r\n switch (result) {\r\n case FileBaseImageOfCourseResult.Success:\r\n onSuccess(images);\r\n\r\n break;\r\n }\r\n };\r\n\r\n // ----------------------------------------------------------------------\r\n const selectItem = (\r\n chapter: StudyPlanChapter | null,\r\n item: StudyPlanItem | null,\r\n updated: boolean,\r\n subChapter?: StudyPlanChapter | null\r\n ) => {\r\n dispatch({\r\n type: Types.change_Chapter_Item,\r\n payload: {\r\n chapter: chapter,\r\n item: item,\r\n subChapter: subChapter!,\r\n updated: updated\r\n }\r\n });\r\n };\r\n\r\n const resetUpdated = () => {\r\n dispatch({ type: Types.reset_Updated, payload: { updated: false } });\r\n };\r\n\r\n const resetState = () => {\r\n dispatch({\r\n type: Types.logoutUser,\r\n payload: { updated: false }\r\n });\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport { StudyPlanContext, StudyPlanProvider };\r\n","import { DialogTitle, IconButton } from '@mui/material';\r\nimport CloseIcon from '@mui/icons-material/Close';\r\nimport { styled } from '@mui/material/styles';\r\n\r\nexport interface DialogTitleProps {\r\n id: string;\r\n title?: any;\r\n children?: React.ReactNode;\r\n disabled?: boolean;\r\n onClose: () => void;\r\n}\r\n\r\nexport const DialogTitleWithClose = (props: DialogTitleProps) => {\r\n const {\r\n children,\r\n title = 'Enquête de satisfaction',\r\n onClose,\r\n disabled = false,\r\n ...other\r\n } = props;\r\n\r\n return (\r\n \r\n {title}\r\n {onClose ? (\r\n theme.palette.grey[500]\r\n }}\r\n >\r\n \r\n \r\n ) : null}\r\n {children}\r\n \r\n );\r\n};\r\n","import { fTime, convertStringToDate, fDate, isBeforeDate } from '../utils/formatTime';\r\n\r\n//type\r\nimport { AgendaEvent, AgendaEventType, AgendaScheduleTeacher, TimeSlot } from '../@types/agenda';\r\nimport { Meeting, MeetingStatus } from '../@types/meeting';\r\nimport { HomeworkStatus } from '../@types/pedagogy';\r\n\r\n//---------------------------------------------------------------------------------------\r\nexport const convertMeetingToAgendaEvents = (meeting: Meeting): AgendaEvent => {\r\n return {\r\n allDay: false,\r\n start: meeting.dateStart,\r\n end: meeting.dateEnd,\r\n title: `${meeting.material?.label}`,\r\n eventType: AgendaEventType.Meeting,\r\n textColor: '#4A86FD',\r\n color: '#4A86FD',\r\n id: meeting.id.toString(),\r\n metadatas: meeting,\r\n icon: 'calendar'\r\n } as AgendaEvent;\r\n};\r\n\r\n//---------------------------------------------------------------------------------------\r\n\r\nexport type convertAgendaEventToMeetingProps = {\r\n metadata: AgendaScheduleTeacher;\r\n timeSlot: TimeSlot;\r\n};\r\n\r\n//---------------------------------------------------------------------------------------\r\n\r\nexport function convertAgendaEventToMeeting(\r\n metadata: AgendaScheduleTeacher,\r\n timeSlot: TimeSlot\r\n): Meeting {\r\n return {\r\n id: 0,\r\n dateEnd: timeSlot.dateEnd,\r\n dateStart: timeSlot.dateStart,\r\n teacher: metadata.teacher,\r\n material: metadata.material,\r\n phone: '',\r\n isVisio: metadata.isVisio,\r\n observation: '',\r\n status: MeetingStatus.None,\r\n type: metadata.type,\r\n idVirtualClass: null,\r\n homework: null\r\n } as Meeting;\r\n}\r\n\r\n//---------------------------------------------------------------------------------------\r\n\r\nexport const convertObjectifToAgendaEvent = (\r\n event: any,\r\n index: number,\r\n locked: boolean\r\n): AgendaEvent => {\r\n if (event.end == null) {\r\n event.end = `${event.start}T10:00:00`;\r\n event.start = `${event.start}T08:00:00`;\r\n }\r\n\r\n const isLate =\r\n [HomeworkStatus.ToDo, HomeworkStatus.Rejected].includes(event.metadata.status) &&\r\n isBeforeDate(new Date(event.start), new Date());\r\n\r\n return {\r\n id: index.toString(),\r\n allDay: false,\r\n start: event.start,\r\n end: event.end,\r\n title: event.title,\r\n metadatas: {\r\n id: event.metadata.dvr,\r\n courseId: event.metadata.sup,\r\n barCode: event.metadata.codBarDvr,\r\n observation: event.observation,\r\n locked: locked,\r\n status: event.metadata.status,\r\n isLate: isLate\r\n },\r\n eventType: AgendaEventType.Homework,\r\n color: isLate ? '#EE0701' : '#45630A',\r\n textColor: isLate ? '#EE0701' : '#C9E987',\r\n icon: ''\r\n };\r\n};\r\n","export type TaskState = {\r\n isLoading: boolean;\r\n error: any;\r\n tasks: Array;\r\n task: null | TaskModel;\r\n};\r\n\r\nexport interface TaskListResponse {\r\n result: TaskListResult;\r\n list: TaskModel[];\r\n}\r\n\r\nexport interface TaskUpdateResponse {\r\n result: TaskUpdateResult;\r\n id: number;\r\n}\r\n\r\nexport enum TaskUpdateResult {\r\n NotFound = 0,\r\n Success = 1,\r\n TitleIsRequired = 2,\r\n ObservationIsRequired = 3,\r\n DateStartIsRequired = 4,\r\n DateEndIsRequired = 5\r\n}\r\n\r\nexport enum TaskListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport enum TaskStatus {\r\n None = 0,\r\n Todo = 1,\r\n Done = 2\r\n}\r\n\r\nexport interface TaskModel {\r\n id: number;\r\n label: string;\r\n dateStart: string;\r\n dateEnd: string;\r\n status: TaskStatus;\r\n observation: string;\r\n isReminder: boolean;\r\n isLocked: boolean;\r\n courseId: string;\r\n homeworkId: number | null;\r\n mediaId: number | null;\r\n barCode: string;\r\n url: string;\r\n}\r\n","import i18n from 'i18next';\r\nimport LanguageDetector from 'i18next-browser-languagedetector';\r\nimport { initReactI18next } from 'react-i18next';\r\n//\r\nimport enLocales from './en.json';\r\nimport deLocales from './de.json';\r\nimport frLocales from './fr.json';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ni18n\r\n .use(LanguageDetector)\r\n .use(initReactI18next)\r\n .init({\r\n resources: {\r\n en: { translations: enLocales },\r\n de: { translations: deLocales },\r\n fr: { translations: frLocales }\r\n },\r\n lng: 'fr', // langue en cours (localStorage.getItem('i18nextLng') || 'en'),\r\n fallbackLng: 'fr', // langue par défaut\r\n debug: false,\r\n ns: ['translations'], // liste des namespaces chargés (ajouter ici les namespaces déclarés dans le init -> resources. LoadNamespaces permet de charger d'autres namespaces)\r\n defaultNS: 'translations', // namespace par défaut\r\n fallbackNS: 'translations', // fichier utilisé si la traduction n'est pas trouvée dans le namespace par défaut (permet d'avoir un fichier par défaut en cas de changement via setDefaultNamespace)\r\n interpolation: {\r\n escapeValue: false\r\n }\r\n });\r\n\r\nexport default i18n;\r\n","import hljs from 'highlight.js';\r\nimport 'highlight.js/styles/atom-one-dark.css';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nhljs.configure({\r\n languages: ['javascript', 'jsx', 'sh', 'bash', 'html', 'scss', 'css', 'json']\r\n});\r\n\r\n// @ts-ignore\r\nwindow.hljs = hljs;\r\n","import { ReactNode, createContext, useState, useEffect } from 'react';\r\n// material\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport type CollapseDrawerContextProps = {\r\n isCollapse?: boolean;\r\n collapseClick: boolean;\r\n collapseHover: boolean;\r\n onToggleCollapse: VoidFunction;\r\n onHoverEnter: VoidFunction;\r\n onHoverLeave: VoidFunction;\r\n};\r\n\r\nconst initialState: CollapseDrawerContextProps = {\r\n collapseClick: false,\r\n collapseHover: false,\r\n onToggleCollapse: () => {},\r\n onHoverEnter: () => {},\r\n onHoverLeave: () => {}\r\n};\r\n\r\nconst CollapseDrawerContext = createContext(initialState);\r\n\r\ntype CollapseDrawerProviderProps = {\r\n children: ReactNode;\r\n};\r\n\r\nfunction CollapseDrawerProvider({ children }: CollapseDrawerProviderProps) {\r\n const { isLargeScreen } = useScreenConfig();\r\n const [collapse, setCollapse] = useState({\r\n click: false,\r\n hover: false\r\n });\r\n\r\n //sauvegarde de l'état du menu (réduit ou non)\r\n const [savedCollapse, setSavedCollapse] = useLocalStorage('dbSidebarCollapse', false);\r\n\r\n const handleToggleCollapse = () => {\r\n setSavedCollapse(!collapse.click);\r\n setCollapse({ ...collapse, click: !collapse.click });\r\n };\r\n\r\n const handleHoverEnter = () => {\r\n if (collapse.click) {\r\n setCollapse({ ...collapse, hover: true });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (!isLargeScreen) {\r\n //NB : mode \"mobile\", bouton dans la barre de menu pour déplier le drawer\r\n //Dans ce mode, le choix de l'élève (menu déplié ou replié) n'a pas de sens et n'est pas pris en compte\r\n //Le setCollapse permet de conditionner l'affichage correctement dans ce mode\r\n setCollapse({\r\n click: false,\r\n hover: false\r\n });\r\n } else {\r\n //NB : uniquement en mode \"Desktop\" (barre latérale)\r\n //Si le mode sauvegardé (savedCollapse) est différent du mode actuel (collapseClick),\r\n //on synchronise le contexte avec la sauvegarde au chargement de la barre\r\n if (savedCollapse !== collapse.click) {\r\n handleToggleCollapse();\r\n }\r\n }\r\n }, [isLargeScreen]);\r\n\r\n const handleHoverLeave = () => {\r\n setCollapse({ ...collapse, hover: false });\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport { CollapseDrawerProvider, CollapseDrawerContext };\r\n","import NProgress from 'nprogress';\r\nimport { useEffect, useMemo } from 'react';\r\nimport { motion } from 'framer-motion';\r\n// material\r\nimport { alpha, styled, useTheme } from '@mui/material/styles';\r\nimport { Box, GlobalStyles } from '@mui/material';\r\n//\r\nimport Logo from './Logo';\r\nimport useBrand from 'hooks/useBrand';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled('div')(({ theme }) => ({\r\n height: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n backgroundColor: theme.palette.background.default\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function ProgressBarStyle() {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nfunction ProgressBar() {\r\n NProgress.configure({\r\n showSpinner: false\r\n });\r\n\r\n useMemo(() => {\r\n NProgress.start();\r\n }, []);\r\n\r\n useEffect(() => {\r\n NProgress.done();\r\n }, []);\r\n\r\n return null;\r\n}\r\n\r\nexport default function LoadingScreen({ ...other }) {\r\n const { brand } = useBrand();\r\n return (\r\n <>\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n `solid 3px ${alpha(theme.palette.primary.dark, 0.24)}`\r\n }}\r\n />\r\n\r\n `solid 8px ${alpha(theme.palette.primary.dark, 0.24)}`\r\n }}\r\n />\r\n \r\n \r\n );\r\n}\r\n\r\n/**\r\n * \r\n */\r\n","import { motion } from 'framer-motion';\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport { Box, Button, Typography, Container, CircularProgress } from '@mui/material';\r\n// components\r\nimport { MotionContainer, varBounceIn } from '../../components/animate';\r\nimport Page from '../../components/Page';\r\nimport { PageNotFoundIllustration } from '../../assets';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled(Page)(({ theme }) => ({\r\n display: 'flex',\r\n minHeight: '100%',\r\n alignItems: 'center',\r\n paddingTop: theme.spacing(15),\r\n paddingBottom: theme.spacing(10)\r\n}));\r\n\r\nexport const MainSearchStudent = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Recherche des informations en cours\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { Link as ScrollLink } from 'react-scroll';\r\nimport { useNavigate, Outlet, useParams, useMatch, useLocation } from 'react-router-dom';\r\n// material\r\nimport { Box, Link, Container, Typography } from '@mui/material';\r\nimport { isValidToken, setSession } from 'utils/jwt';\r\nimport { useEffect } from 'react';\r\nimport { getStudent } from 'redux/slices/student';\r\nimport { dispatch, RootState, useSelector } from 'redux/store';\r\nimport { MainSearchStudent } from './MainSearchStudent';\r\nimport Page404 from 'pages/Page404';\r\n\r\nimport MainNavbar from './MainNavbar';\r\n\r\n// ----------------------------------------------------------------------\r\nexport default function MainLayout() {\r\n const { search } = useLocation();\r\n const params = new URLSearchParams(search);\r\n const accessToken = params.get('access_token');\r\n const { isLoading, error, student, contract } = useSelector((state: RootState) => state.student);\r\n\r\n useEffect(() => {\r\n if (!accessToken) return;\r\n\r\n if (accessToken && isValidToken(accessToken)) {\r\n dispatch(getStudent(accessToken));\r\n }\r\n }, [accessToken]);\r\n\r\n if (isLoading) return ;\r\n\r\n if (error) return ;\r\n\r\n if (!student || !contract) return ;\r\n\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\nexport function QuestionnaireLayout() {\r\n const { search } = useLocation();\r\n const params = new URLSearchParams(search);\r\n const accessToken = params.get('access_token');\r\n\r\n if (!accessToken) {\r\n return ;\r\n }\r\n\r\n if (accessToken && !isValidToken(accessToken)) {\r\n return ;\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n \r\n );\r\n}\r\n","import { useContext } from 'react';\r\nimport { CollapseDrawerContext } from '../contexts/CollapseDrawerContext';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst useCollapseDrawer = () => useContext(CollapseDrawerContext);\r\n\r\nexport default useCollapseDrawer;\r\n","// hooks\r\nimport useAuth from '../hooks/useAuth';\r\n//\r\nimport { MAvatar } from './@material-extend';\r\nimport { MAvatarProps } from './@material-extend/MAvatar';\r\nimport createAvatar from '../utils/createAvatar';\r\nimport { useEffect, useState, useCallback } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function MyAvatar({ ...other }: MAvatarProps) {\r\n const { student } = useAuth();\r\n\r\n return (\r\n \r\n {createAvatar(student?.name).name}\r\n \r\n );\r\n}\r\n","import { useSnackbar } from 'notistack';\r\nimport { useRef, useState } from 'react';\r\nimport { Link as RouterLink, useNavigate } from 'react-router-dom';\r\n// material\r\nimport { alpha } from '@mui/material/styles';\r\nimport { Button, Box, Divider, MenuItem, Typography, Avatar } from '@mui/material';\r\nimport { ModuleType } from '../../@types/contract';\r\n\r\n// routes\r\nimport { PATH_DASHBOARD } from '../../routes/paths';\r\n// hooks\r\nimport useAuth from '../../hooks/useAuth';\r\nimport useIsMountedRef from '../../hooks/useIsMountedRef';\r\n// components\r\nimport { MIconButton } from '../../components/@material-extend';\r\nimport MyAvatar from '../../components/MyAvatar';\r\nimport MenuPopover from '../../components/MenuPopover';\r\nimport {\r\n CalendarTodayRounded,\r\n CreditCardRounded,\r\n LibraryBooksRounded,\r\n PersonRounded,\r\n VpnKeyRounded\r\n} from '@mui/icons-material';\r\nimport TextMaxLine from 'components/TextMaxLine';\r\nimport { truncate } from 'utils/formatText';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype AccountPopoverProps = {\r\n isSmall?: boolean;\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function AccountPopover({ isSmall = false }: AccountPopoverProps) {\r\n const navigate = useNavigate();\r\n const anchorRef = useRef(null);\r\n const { logout, student, getContractCurrent } = useAuth();\r\n const isMountedRef = useIsMountedRef();\r\n const { closeSnackbar, enqueueSnackbar } = useSnackbar();\r\n const [open, setOpen] = useState(false);\r\n\r\n const DEFAULT_SIZE = 44;\r\n const SMALL_SIZE = 30;\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleLogout = async () => {\r\n try {\r\n closeSnackbar();\r\n\r\n await logout?.();\r\n if (isMountedRef.current) {\r\n navigate('/');\r\n handleClose();\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n enqueueSnackbar('Unable to logout', { variant: 'error' });\r\n }\r\n };\r\n\r\n const contractCurrent = getContractCurrent();\r\n\r\n const MENU_OPTIONS = [\r\n {\r\n label: 'Profil',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.student.profil,\r\n visible: true\r\n },\r\n {\r\n label: 'Mes disponibilités',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.student.availability,\r\n visible: true\r\n },\r\n {\r\n label: 'Documents importants',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.student.documents,\r\n visible: true\r\n },\r\n {\r\n label: 'Paiements',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.student.payment,\r\n visible: [ModuleType.PaymentView, ModuleType.PaymentUpdate].some((m) =>\r\n contractCurrent?.moduleList.includes(m)\r\n )\r\n },\r\n\r\n {\r\n label: 'Mot de passe',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.student.password,\r\n visible: true\r\n }\r\n ];\r\n\r\n const currentSize = isSmall ? SMALL_SIZE : DEFAULT_SIZE;\r\n\r\n return (\r\n <>\r\n alpha(theme.palette.grey[900], 0.72)\r\n }\r\n })\r\n }}\r\n >\r\n \r\n \r\n\r\n \r\n \r\n \r\n {student?.name}\r\n \r\n \r\n Contrat N° {contractCurrent.id}\r\n \r\n \r\n {truncate(contractCurrent.training.label, 50)}\r\n \r\n \r\n \r\n {MENU_OPTIONS.filter((o) => o.visible).map((option) => (\r\n \r\n \r\n {option.icon}\r\n \r\n\r\n {option.label}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n/**\r\n * \r\n \r\n \r\n * \r\n * {MENU_OPTIONS.map((option) => (\r\n \r\n \r\n\r\n {option.label}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n */\r\n","import { Icon } from '@iconify/react';\r\nimport arrowIosBackFill from '@iconify/icons-eva/arrow-ios-back-fill';\r\n// material\r\nimport { Drawer, Typography, Grid, Stack, Divider, Tooltip, Alert } from '@mui/material';\r\n\r\n//mapper\r\nimport { convertAgendaEventToMeeting } from 'mapper/agendaMap';\r\n\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { getMeetings, getSchedulesEventByDateAndMaterial } from 'redux/slices/agenda';\r\nimport { selectMeetingByEvent } from 'redux/slices/meeting';\r\n\r\n//Type\r\nimport {\r\n AgendaEvent,\r\n AgendaScheduleTeacher,\r\n TimeSlot,\r\n AgendaState,\r\n ScheduleType\r\n} from '../../../@types/agenda';\r\nimport { Meeting } from '../../../@types/meeting';\r\n\r\n//Utils\r\nimport { fDate, fDateMeeting, formatAPI, isAfterDate } from 'utils/formatTime';\r\n\r\n//Composant\r\nimport { TimeSlotsFilter } from './TimeSlotsFilter';\r\nimport { TimeSlotsDisplay } from './TimeSlotsDisplay';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport Scrollbar from '../../Scrollbar';\r\nimport { useEffect, useState } from 'react';\r\nimport { MeetingForm } from '../meeting/MeetingForm';\r\nimport { SheduleTeacherMessage } from './ScheduleTeacherMessage';\r\n\r\ntype ScheduleTeacherEventFormProps = {\r\n isOpen: boolean;\r\n onClose: VoidFunction;\r\n};\r\n\r\nexport const ScheduleTeacherEventForm = ({ isOpen, onClose }: ScheduleTeacherEventFormProps) => {\r\n const dispatch = useDispatch();\r\n const [isOpenMeeting, setIsOpenMeeting] = useState(false);\r\n const [errorRefreshEvent, setErrorRefreshEvent] = useState(false);\r\n const { selectedEvent, events } = useSelector((state: RootState) => state.agenda);\r\n const meetings = getMeetings(events);\r\n\r\n const handleSelect = (meeting: Meeting) => {\r\n dispatch(selectMeetingByEvent(meeting));\r\n setIsOpenMeeting(true);\r\n };\r\n\r\n /**\r\n * Actualiser les permanences\r\n */\r\n useEffect(() => {\r\n dispatch(\r\n getSchedulesEventByDateAndMaterial(\r\n formatAPI(selectedEvent!.start),\r\n selectedEvent?.metadatas[0]?.material?.id\r\n )(() => setErrorRefreshEvent(true))\r\n );\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n {isOpenMeeting && (\r\n setIsOpenMeeting(false)} onClose={onClose} />\r\n )}\r\n\r\n {!isOpenMeeting && selectedEvent != null && (\r\n \r\n \r\n \r\n {fDate(selectedEvent?.start, 'EEEE dd MMMM')}\r\n \r\n \r\n \r\n \r\n Matière : {selectedEvent?.title}\r\n \r\n\r\n {errorRefreshEvent && (\r\n \r\n Suite à une erreur, les heures de permanences n'ont pas pu être actualisées.\r\n \r\n )}\r\n\r\n \r\n \r\n\r\n \r\n \r\n [ScheduleType.Mixte, ScheduleType.standard].includes(m.type)\r\n )}\r\n >\r\n {(metadata: AgendaScheduleTeacher) => {\r\n const duplicate = (meetings || []).filter(\r\n (w: any) =>\r\n isAfterDate(w.start, new Date()) &&\r\n (w.metadatas.teacher.id === metadata.teacher.id ||\r\n metadata.material.id === w.metadatas.material.id)\r\n );\r\n\r\n if (duplicate.length > 0) {\r\n const rdv = `Vous avez déjà rendez-vous le ${fDateMeeting(\r\n duplicate[0].start,\r\n duplicate[0].end\r\n )} `;\r\n return (\r\n \r\n );\r\n } else if (!metadata.timeSlots || metadata.timeSlots.length === 0) {\r\n return (\r\n \r\n );\r\n } else\r\n return (\r\n \r\n handleSelect(convertAgendaEventToMeeting(metadata, timeSlot))\r\n }\r\n isSmall={false}\r\n hourLimit={metadata.hourLimit}\r\n />\r\n );\r\n }}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n","import { useEffect, useState } from 'react';\r\n\r\nimport { useFormik, Form } from 'formik';\r\nimport * as Yup from 'yup';\r\n\r\n//material\r\nimport {\r\n AccessTime,\r\n Assignment,\r\n ConstructionOutlined,\r\n DataUsage,\r\n Edit,\r\n TrainRounded,\r\n VerifiedUser,\r\n WatchLater\r\n} from '@mui/icons-material';\r\nimport {\r\n Alert,\r\n Button,\r\n Collapse,\r\n DialogActions,\r\n Grid,\r\n List,\r\n Stack,\r\n TextField,\r\n Typography\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\n//model\r\nimport { AgendaEvent } from '../../../@types/agenda';\r\nimport { HomeworkBase, HomeworkStatus } from '../../../@types/pedagogy';\r\n\r\n//composant\r\nimport {\r\n RowItemDisplay,\r\n RowItemDisplayComment,\r\n RowItemDisplayTitle,\r\n RowItemDisplayDateTime,\r\n RowItemDisplayError,\r\n RowItemDisplayAlert\r\n} from 'components/RowListItem';\r\n\r\nimport HomeworkStatusRender from 'components/_dashboard/pedagogy/HomeworkStatusRender';\r\nimport HomeworkMandatoryRender from '../pedagogy/HomeworkMandatoryRender';\r\nimport { HomeworkNote } from '../pedagogy/HomeworkNote';\r\n\r\nimport {\r\n DateRangePicker,\r\n DateTimePicker,\r\n DesktopDatePicker,\r\n DesktopDateTimePicker,\r\n LoadingButton,\r\n MobileDateTimePicker,\r\n TimePicker\r\n} from '@mui/lab';\r\nimport FileDetailsAttachments from 'components/file/FileDetailsAttachments';\r\nimport {\r\n fDate,\r\n fDateMeeting,\r\n formatAPI,\r\n fTime,\r\n isBeforeDate,\r\n isDateValid,\r\n setDateTime\r\n} from 'utils/formatTime';\r\nimport useObjective from 'hooks/useObjective';\r\nimport { useSnackbar } from 'notistack';\r\nimport Label from 'components/Label';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport SkillList from '../studyPlan/skill/SkillList';\r\nimport StudentHourMessage from '../student/StudentHourMessage';\r\n\r\nexport type AgendaHomeworkFormProps = {\r\n onClose: VoidFunction;\r\n event: AgendaEvent;\r\n};\r\n\r\nexport default function AgendaHomeworkForm({ event, onClose }: AgendaHomeworkFormProps) {\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { getHomeworkByEvent, updateObjectiveEvent, isLoading, error, eventsToLate } =\r\n useObjective();\r\n const [homeworkBase, setHomeworkBase] = useState(event.metadatas);\r\n const [updated, setUpdated] = useState(false);\r\n const navigate = useNavigate();\r\n\r\n //Schema de controle des données dans le formulaire\r\n const EventSchema = Yup.object().shape({\r\n title: Yup.string().max(255).required('Le titre est obligatoire'),\r\n start: Yup.date().min(new Date()).required('La date est obligatoire'),\r\n end: Yup.date().required('La date est obligatoire'),\r\n description: Yup.string()\r\n });\r\n\r\n // lien vers le devoir\r\n const handleLink = () => {\r\n navigate(PATH_DASHBOARD.studyPlan.details + `/${homeworkBase.barCode}`);\r\n };\r\n\r\n //init formulaire\r\n const formik = useFormik({\r\n initialValues: {\r\n title: event.title,\r\n start: event.start,\r\n end: event.end,\r\n description: event.metadatas.observation\r\n },\r\n validationSchema: EventSchema,\r\n onSubmit: async (values, { setSubmitting }) => {\r\n if (isDateError || isDateMinError) return;\r\n try {\r\n const val = Object.assign({}, event, {\r\n start: values.start,\r\n end: values.end,\r\n color: '#17C588',\r\n textColor: '#17C588',\r\n metadatas: Object.assign({}, event.metadatas, {\r\n observation: values.description,\r\n isLate: false\r\n })\r\n });\r\n\r\n updateObjectiveEvent(val)(() =>\r\n enqueueSnackbar('Enregistrement effectué', { variant: 'success' })\r\n );\r\n setSubmitting(false);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }\r\n });\r\n\r\n const { values, errors, touched, isSubmitting, setFieldValue, getFieldProps } = formik;\r\n\r\n useEffect(() => {\r\n setHomeworkBase(getHomeworkByEvent(homeworkBase.courseId, homeworkBase.id));\r\n }, []);\r\n\r\n if (!homeworkBase?.homeworks) return <>;\r\n\r\n const homework = homeworkBase.homeworks[homeworkBase.homeworks.length - 1];\r\n\r\n const isDateError = isBeforeDate(new Date(values.end), new Date(values.start));\r\n const isDateMinError = isBeforeDate(new Date(values.start), new Date());\r\n\r\n const unLocked = true; // homeworkBase.homeworks.length === 0 ? true : false;\r\n\r\n return (\r\n \r\n
\r\n \r\n }\r\n title={ {homeworkBase.label}}\r\n >\r\n \r\n {' '}\r\n Réf : {homeworkBase.barCode} - phase {homeworkBase.parent.sendingPhase}{' '}\r\n \r\n \r\n {eventsToLate.some(\r\n (evt) =>\r\n evt.metadatas.courseId === homeworkBase.courseId &&\r\n evt.metadatas.id === homeworkBase.id\r\n ) && (\r\n \r\n )}\r\n \r\n\r\n \r\n \r\n \r\n {\r\n if (isDateValid(date)) {\r\n setFieldValue(\r\n 'start',\r\n new Date(`${fDate(date!, 'yyyy-MM-dd')}T${fTime(values.start!)}:00`)\r\n );\r\n setFieldValue(\r\n 'end',\r\n new Date(`${fDate(date!, 'yyyy-MM-dd')}T${fTime(values.end!)}:00`)\r\n );\r\n }\r\n }}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n {\r\n if (isDateValid(newValue)) {\r\n setFieldValue(\r\n 'start',\r\n new Date(`${fDate(values.start, 'yyyy-MM-dd')}T${fTime(newValue!)}:00`)\r\n );\r\n }\r\n }}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n {\r\n if (isDateValid(newValue)) {\r\n setFieldValue(\r\n 'end',\r\n new Date(`${fDate(values.start, 'yyyy-MM-dd')}T${fTime(newValue!)}:00`)\r\n );\r\n }\r\n }}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n \r\n }\r\n icon={}\r\n />\r\n {(isDateError || isDateMinError || Boolean(errors.start)) && (\r\n \r\n {(Boolean(errors.start) || isDateMinError) && (\r\n La date de debut doit etre postérieure à aujourd'hui\r\n )}\r\n {isDateError && !Boolean(errors.start) && (\r\n La date de debut doit etre postérieure à la date de fin\r\n )}\r\n \r\n )}\r\n \r\n \r\n }\r\n >\r\n \r\n\r\n }\r\n title={\r\n <>\r\n Statut :{' '}\r\n \r\n \r\n }\r\n >\r\n\r\n {homeworkBase.isScore && homework && (\r\n }\r\n icon={}\r\n />\r\n )}\r\n\r\n {homeworkBase.skillIds.length > 0 && (\r\n }>\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n {error && {error}}\r\n \r\n \r\n {values.description && (\r\n {values.description}\r\n )}\r\n \r\n \r\n {event.metadatas.locked ? (\r\n <>\r\n Verrouillé par votre coach\r\n \r\n ) : (\r\n \r\n {updated ? (\r\n <>\r\n setUpdated(false)}\r\n >\r\n Annuler\r\n \r\n\r\n \r\n Enregistrer\r\n \r\n \r\n ) : (\r\n <>\r\n setUpdated(true)}\r\n >\r\n Modifier\r\n \r\n \r\n )}\r\n {!updated && (\r\n \r\n Voir l'évaluation\r\n \r\n )}\r\n \r\n )}\r\n
\r\n
\r\n );\r\n}\r\n","import { useState } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport arrowIosBackFill from '@iconify/icons-eva/arrow-ios-back-fill';\r\n// material\r\nimport { Drawer, Typography, Grid, Stack, Divider, Tooltip, Collapse } from '@mui/material';\r\nimport { MHidden, MIconButton } from 'components/@material-extend';\r\n\r\nimport { AgendaEvent, AgendaEventType } from '../../../@types/agenda';\r\nimport { FavoriteType } from '../../../@types/favorite';\r\n// redux\r\nimport { useDispatch } from 'redux/store';\r\nimport { selectMeeting } from 'redux/slices/meeting';\r\n\r\n//composant\r\nimport { ScheduleTeacherEventForm } from 'components/_dashboard/scheduleTeacher/ScheduleTeacherEventForm';\r\nimport { MeetingView } from '../meeting/MeetingView';\r\nimport { MeetingForm } from '../meeting/MeetingForm';\r\n\r\nimport FavoriteToggleAction from '../favorite/FavoriteAction';\r\n\r\nimport AgendaHomeworkForm from './AgendaHomeworkForm';\r\nimport AgendaTaskDetail from './AgendaTaskDetail';\r\nimport { Close } from '@mui/icons-material';\r\n\r\ntype DispatcherEventScreenProps = {\r\n agendaEvent?: AgendaEvent;\r\n isOpen: boolean;\r\n onClose: VoidFunction;\r\n};\r\n\r\n/**\r\n * Retourn l'écran souhaité et dispatche l'object dans le bon reducer\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function DispatcherEventScreen({\r\n agendaEvent,\r\n isOpen,\r\n onClose\r\n}: DispatcherEventScreenProps) {\r\n let title: string = '';\r\n\r\n switch (agendaEvent?.eventType) {\r\n case AgendaEventType.Task:\r\n title = 'Support pédagogique';\r\n break;\r\n case AgendaEventType.ScheduleTeacher:\r\n title = 'Prise de rendez-vous';\r\n break;\r\n case AgendaEventType.Homework:\r\n title = 'Évaluation';\r\n break;\r\n case AgendaEventType.Meeting:\r\n title = 'Rendez-vous';\r\n break;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n {title}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n );\r\n}\r\n\r\ntype DispatchFavoriteProps = {\r\n agendaEvent?: AgendaEvent;\r\n};\r\n\r\nconst DispatchFavorite = ({ agendaEvent }: DispatchFavoriteProps) => {\r\n switch (agendaEvent?.eventType) {\r\n case AgendaEventType.VirtualClass:\r\n return (\r\n \r\n );\r\n case AgendaEventType.Workshop:\r\n return (\r\n \r\n );\r\n case AgendaEventType.Task:\r\n return (\r\n \r\n );\r\n case AgendaEventType.Homework:\r\n return (\r\n \r\n );\r\n }\r\n return <>;\r\n};\r\n\r\nconst DispatchRender = ({ agendaEvent, isOpen, onClose }: DispatcherEventScreenProps) => {\r\n const dispatch = useDispatch();\r\n const [modeRead, setModeRead] = useState(true);\r\n\r\n switch (agendaEvent?.eventType) {\r\n case AgendaEventType.ScheduleTeacher:\r\n return ;\r\n\r\n case AgendaEventType.Meeting:\r\n dispatch(selectMeeting(agendaEvent.metadatas));\r\n return modeRead ? (\r\n setModeRead(false)} />\r\n ) : (\r\n setModeRead(true)} onClose={onClose} />\r\n );\r\n case AgendaEventType.Homework:\r\n return ;\r\n case AgendaEventType.Task:\r\n return ;\r\n }\r\n\r\n return <>;\r\n};\r\n","import { noCase } from 'change-case';\r\nimport { useEffect, useRef, useState } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport { Icon } from '@iconify/react';\r\nimport { ConstructionOutlined, Lens, PanoramaFishEye, Phone, Videocam } from '@mui/icons-material';\r\nimport browserFill from '@iconify/icons-eva/browser-fill';\r\n// material\r\nimport {\r\n Box,\r\n List,\r\n Badge,\r\n Button,\r\n Avatar,\r\n Tooltip,\r\n Divider,\r\n Typography,\r\n ListItemText,\r\n ListSubheader,\r\n ListItemAvatar,\r\n ListItemButton\r\n} from '@mui/material';\r\n// utils\r\nimport {\r\n convertStringToDate,\r\n fDateMeeting,\r\n fToNow,\r\n isAfterDate,\r\n isBeforeDate\r\n} from '../../utils/formatTime';\r\n\r\n//Type\r\nimport { MeetingStatus } from '../../@types/meeting';\r\nimport { AgendaEvent, AgendaEventType } from '../../@types/agenda';\r\n//redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\n\r\n// components\r\nimport Scrollbar from '../../components/Scrollbar';\r\nimport MenuPopover from '../../components/MenuPopover';\r\nimport { MIconButton } from '../../components/@material-extend';\r\nimport EmptyContent from '../../components/EmptyContent';\r\nimport AgendaDispatcherEvent from 'components/_dashboard/agenda/AgendaDispatcherEvent';\r\nimport Label from 'components/Label';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport DispatcherEventScreen from 'components/_dashboard/agenda/AgendaDispatcherEvent';\r\nimport { closeModal, selectEvent } from 'redux/slices/agenda';\r\nimport { selectVirtualClassId } from 'redux/slices/virtualClass';\r\nimport { selectWorkshopById } from 'redux/slices/workshop';\r\n// ----------------------------------------------------------------------\r\n\r\ntype MeetsPopoverProps = {\r\n isSmall?: boolean;\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction getCategoryType(eventType: AgendaEventType) {\r\n switch (eventType) {\r\n case AgendaEventType.Meeting:\r\n return { category: 'Rendez-vous', color: '' };\r\n case AgendaEventType.Workshop:\r\n return { category: 'Atelier', color: '' };\r\n case AgendaEventType.VirtualClass:\r\n return { category: 'Classe virtuelle', color: '' };\r\n case AgendaEventType.Task:\r\n return { category: 'Tache', color: '' };\r\n case AgendaEventType.Examens:\r\n return { category: 'Examens', color: '' };\r\n case AgendaEventType.Homework:\r\n return { category: 'Évaluation', color: '' };\r\n default:\r\n return { category: 'Permanence', color: '' };\r\n }\r\n}\r\n\r\nfunction MeetItem({\r\n event,\r\n onSelect\r\n}: {\r\n event: AgendaEvent;\r\n onSelect: (event: AgendaEvent) => void;\r\n}) {\r\n const { category, color } = getCategoryType(event.eventType);\r\n return (\r\n onSelect(event)}\r\n sx={{\r\n py: 1.5,\r\n px: 2.5,\r\n mt: '1px'\r\n }}\r\n >\r\n \r\n {event.title}\r\n \r\n \r\n }\r\n secondary={\r\n \r\n {fDateMeeting(event.start, event.end)}\r\n \r\n }\r\n />\r\n \r\n );\r\n}\r\n\r\nexport default function MeetsPopover({ isSmall = false }: MeetsPopoverProps) {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n const dispatch = useDispatch();\r\n const { events, isOpenModal, selectedEvent } = useSelector((state: RootState) => state.agenda);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleCloseModal = () => {\r\n dispatch(closeModal());\r\n };\r\n\r\n const onSelect = (event: AgendaEvent) => {\r\n setOpen(false);\r\n\r\n //suivant le type , on dispatch\r\n switch (event.eventType) {\r\n case AgendaEventType.VirtualClass:\r\n dispatch(selectVirtualClassId(event.id));\r\n return;\r\n case AgendaEventType.Workshop:\r\n dispatch(selectWorkshopById(event.id));\r\n return;\r\n }\r\n\r\n dispatch(selectEvent(event));\r\n };\r\n\r\n const dateCurrent = new Date();\r\n\r\n const eventsMeet = events.filter(\r\n (evt) =>\r\n isAfterDate(evt.end, dateCurrent) &&\r\n ((evt.eventType === AgendaEventType.Meeting &&\r\n evt.metadatas.status === MeetingStatus.Registered) ||\r\n (evt.eventType === AgendaEventType.VirtualClass && evt.metadatas.registered) ||\r\n (evt.eventType === AgendaEventType.Workshop && evt.metadatas.registered))\r\n );\r\n\r\n const sortEventsMeet = [...eventsMeet].sort((a, b) => {\r\n return new Date(a.start).valueOf() - new Date(b.start).valueOf();\r\n });\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Rendez-vous\r\n \r\n \r\n\r\n \r\n\r\n {sortEventsMeet.length === 0 ? (\r\n \r\n ) : (\r\n <>\r\n \r\n \r\n {sortEventsMeet.slice(0, 10).map((event) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n )}\r\n\r\n \r\n\r\n \r\n \r\n Historique\r\n \r\n \r\n \r\n\r\n {selectedEvent && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n/**\r\n * to={`${PATH_DASHBOARD.virtualClass.root}/${event.id}`}\r\n component={RouterLink}\r\n */\r\n","import { useEffect, useRef, useState } from 'react';\r\n\r\n// material\r\nimport { alpha } from '@mui/material/styles';\r\n\r\n// components\r\n\r\nimport { CheckBox, HelpRounded } from '@mui/icons-material';\r\nimport usePageSettings from 'hooks/usePageSettings';\r\nimport { Box, Checkbox, Divider, FormControlLabel, Tooltip, Typography } from '@mui/material';\r\nimport useAuth from 'hooks/useAuth';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport { dispatch } from 'redux/store';\r\n\r\n// ----------------------------------------------------------------------\r\ntype HelpPopoverProps = {\r\n anchorRef?: any;\r\n setOpenInfo: React.Dispatch>;\r\n openInfo: boolean;\r\n};\r\n\r\nexport default function HelpPopover({ anchorRef, openInfo, setOpenInfo }: HelpPopoverProps) {\r\n const { student, updateConfig, isReadOnly } = useAuth();\r\n\r\n const handleCloseInfo = () => {\r\n setOpenInfo(false);\r\n };\r\n\r\n const handleChange = () => {\r\n setOpenInfo(false);\r\n if (openInfo) dispatch(updateConfig({ ...student?.config, notDisplayMessageHelp: true }));\r\n };\r\n\r\n if (isReadOnly) return <>;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"Ne plus afficher ce message\"\r\n />\r\n \r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useRef, useState } from 'react';\r\n\r\n// material\r\nimport { alpha } from '@mui/material/styles';\r\n\r\n// components\r\nimport { MIconButton } from '../../components/@material-extend';\r\nimport { CheckBox, HelpRounded } from '@mui/icons-material';\r\nimport usePageSettings from 'hooks/usePageSettings';\r\nimport { Drawer, Tooltip } from '@mui/material';\r\nimport HelpPopover from 'components/_dashboard/help/HelpPopover';\r\nimport { helpCategories } from 'datas/helpCategories';\r\nimport HelpCard from 'components/_dashboard/help/HelpCard';\r\nimport HelpDrawer from 'components/_dashboard/help/HelpDrawer';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype HelpPopoverProps = {\r\n isSmall?: boolean;\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function HelpButton({ isSmall = false }: HelpPopoverProps) {\r\n const { student } = useAuth();\r\n const [open, setOpen] = useState(false);\r\n const anchorRef = useRef(null);\r\n const pageSettingsContext = usePageSettings();\r\n const [openInfo, setOpenInfo] = useState(!student?.config?.notDisplayMessageHelp);\r\n\r\n const handleOpen = (e: any) => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n if (pageSettingsContext.helpCategoryId === '') return <>;\r\n\r\n const helpCategory = helpCategories.find((c) => c.id === pageSettingsContext.helpCategoryId);\r\n\r\n if (!helpCategory || helpCategory === null) return <>;\r\n\r\n return (\r\n <>\r\n \r\n \r\n alpha(theme.palette.primary.main, theme.palette.action.focusOpacity)\r\n })\r\n }}\r\n >\r\n \r\n \r\n \r\n {anchorRef && anchorRef.current && (\r\n \r\n )}\r\n\r\n {open && }\r\n \r\n );\r\n}\r\n","import { orderBy, sortBy } from 'lodash';\r\n\r\nimport { useEffect, useRef, useState } from 'react';\r\nimport { Link as RouterLink, useNavigate } from 'react-router-dom';\r\nimport { Icon } from '@iconify/react';\r\nimport starFill from '@iconify/icons-eva/star-fill';\r\n\r\n// material\r\nimport { Box, List, Badge, Button, Avatar, Tooltip, Divider, Typography } from '@mui/material';\r\n\r\n//Type\r\nimport { FavoriteKey, FavoriteState, FavoriteType } from '../../@types/favorite';\r\n\r\n// components\r\nimport Scrollbar from '../../components/Scrollbar';\r\nimport MenuPopover from '../../components/MenuPopover';\r\nimport { MIconButton } from '../../components/@material-extend';\r\nimport EmptyContent from '../../components/EmptyContent';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport FavoriteListItem from 'components/_dashboard/favorite/FavoriteListItem';\r\nimport { useFavorite } from 'hooks/useFavorite';\r\nimport { MotionInView, varFadeIn } from 'components/animate';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype FavoritesPopoverProps = {\r\n isSmall?: boolean;\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function FavoritesPopover({ isSmall = false }: FavoritesPopoverProps) {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n const { favorites, load, select, remove, notificationContent } = useFavorite();\r\n\r\n useEffect(() => {\r\n load();\r\n }, []);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleSelect = (key: FavoriteKey, type: FavoriteType) => {\r\n handleClose();\r\n select(key, type);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n {notificationContent}\r\n )\r\n }\r\n color=\"error\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Favoris\r\n \r\n \r\n\r\n \r\n\r\n {favorites.length === 0 ? (\r\n \r\n ) : (\r\n <>\r\n \r\n \r\n {orderBy(\r\n favorites,\r\n (f) => {\r\n return f.id;\r\n },\r\n 'desc'\r\n )\r\n .slice(0, 4)\r\n .map((favorite) => (\r\n \r\n ))}\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n Voir tout\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { useCallback, useEffect, useRef, useState } from 'react';\r\nimport { useNavigate } from 'react-router-dom';\r\nimport { Icon } from '@iconify/react';\r\nimport bellFill from '@iconify/icons-eva/bell-fill';\r\nimport clockFill from '@iconify/icons-eva/clock-fill';\r\nimport doneAllFill from '@iconify/icons-eva/done-all-fill';\r\n// material\r\nimport {\r\n Box,\r\n List,\r\n Badge,\r\n Grid,\r\n Avatar,\r\n Tooltip,\r\n Divider,\r\n Typography,\r\n ListItemText,\r\n Skeleton,\r\n ListItemAvatar,\r\n ListItemButton,\r\n Button,\r\n ListItem,\r\n FormControlLabel,\r\n Checkbox,\r\n Stack\r\n} from '@mui/material';\r\n\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { selectVirtualClassId } from 'redux/slices/virtualClass';\r\nimport { RootState } from 'redux/store';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport {\r\n getMoreNotifications,\r\n getNotifications,\r\n setAllRead,\r\n getNotificationSettings,\r\n setRead\r\n} from 'redux/slices/notification';\r\n\r\n// utils\r\nimport { fDate, fToNow } from '../../utils/formatTime';\r\nimport {\r\n NotificationItem,\r\n NotificationSettingsProps,\r\n NotificationType\r\n} from '../../@types/notificationModel';\r\n\r\n// components\r\nimport Scrollbar from '../../components/Scrollbar';\r\nimport MenuPopover from '../../components/MenuPopover';\r\nimport { MIconButton } from '../../components/@material-extend';\r\n\r\nimport InfiniteScroll from 'react-infinite-scroll-component';\r\n\r\nimport { selectWorkshopById } from 'redux/slices/workshop';\r\nimport Markdown from 'components/Markdown';\r\nimport Label from 'components/Label';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport useHubConnection from 'hooks/useHubConnection';\r\nimport { useSnackbar } from 'notistack';\r\n// ----------------------------------------------------------------------\r\n\r\ntype NotificationPopoverProps = {\r\n isSmall?: boolean;\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction NotificationListItem({\r\n notification,\r\n settings,\r\n onClose\r\n}: {\r\n notification: NotificationItem;\r\n settings: NotificationSettingsProps;\r\n onClose?: VoidFunction;\r\n}) {\r\n const dispatch = useDispatch();\r\n const navigate = useNavigate();\r\n\r\n if (settings == null)\r\n settings = {\r\n id: NotificationType.Adresse,\r\n color: '#7649F0',\r\n bgcolor: '#F0EAFF',\r\n title: '',\r\n tagLabel: 'Information'\r\n };\r\n\r\n const handleSelect = (item: NotificationItem) => {\r\n if (onClose) onClose();\r\n\r\n // notification non lue, on tague lu\r\n if (!item.read) dispatch(setRead(item.id)(() => console.log('err')));\r\n\r\n switch (item.type) {\r\n case NotificationType.VirtualClassNotificationCancelBySchool:\r\n case NotificationType.VirtualClassNotificationCancel:\r\n case NotificationType.VirtualClassNotificationConfirmation:\r\n case NotificationType.VirtualClass:\r\n dispatch(selectVirtualClassId(item.idType));\r\n break;\r\n case NotificationType.Events:\r\n dispatch(selectWorkshopById(item.idType));\r\n break;\r\n case NotificationType.Actualites:\r\n navigate(`${PATH_DASHBOARD.article.root}/${item.idType}`);\r\n break;\r\n case NotificationType.DevoirsCorriges:\r\n case NotificationType.Devoirs:\r\n case NotificationType.DevoirsEnvoyes:\r\n case NotificationType.DevoirsRecus:\r\n if (item?.reference && item?.reference != '') {\r\n navigate(`${PATH_DASHBOARD.studyPlan.details}/${item.reference}`);\r\n } else {\r\n navigate(PATH_DASHBOARD.homeworks.root);\r\n }\r\n break;\r\n case NotificationType.Adresse:\r\n break;\r\n case NotificationType.Colis:\r\n navigate(`${PATH_DASHBOARD.studyPlan.root}`);\r\n break;\r\n case NotificationType.Medias:\r\n break;\r\n case NotificationType.Notification:\r\n break;\r\n case NotificationType.Questions:\r\n navigate(`${PATH_DASHBOARD.message.all}/${item.id}/${item.idType}/4`);\r\n break;\r\n case NotificationType.NovadisImportant:\r\n case NotificationType.NovadisNormal:\r\n navigate(`${PATH_DASHBOARD.message.all}/${item.id}/${item.idType}/3`);\r\n break;\r\n case NotificationType.TachesMessage:\r\n navigate(`${PATH_DASHBOARD.message.all}/${item.id}/${item.idType}/6`);\r\n break;\r\n case NotificationType.MeetingAbsence:\r\n dispatch(selectVirtualClassId(item.idType));\r\n break;\r\n case NotificationType.Examens:\r\n navigate(`${PATH_DASHBOARD.suivi.examens}`);\r\n break;\r\n }\r\n };\r\n\r\n const getObservationByType = (notification: NotificationItem) => {\r\n const type: NotificationType = notification?.type;\r\n\r\n switch (type) {\r\n case NotificationType.VirtualClassNotificationConfirmation:\r\n return (\r\n \r\n Merci de vous rendre disponible ou d’annuler votre présence au plus tard, 4 jours avant\r\n votre classe virtuelle.\r\n \r\n );\r\n case NotificationType.VirtualClassNotificationWaiting:\r\n return (\r\n \r\n Vous recevrez une notification dès qu'une place se libère. Vous pourrez alors vous\r\n inscrire.\r\n \r\n );\r\n case NotificationType.MeetingAbsence:\r\n return (\r\n \r\n Lors de la prochaine classe virtuelle, merci de veiller à vous rendre disponible ou\r\n d'annuler votre présence 4 jours avant au plus tard. Merci pour votre compréhension.\r\n \r\n );\r\n case NotificationType.DevoirsEnvoyes:\r\n if (notification.reference == null || notification.reference.trim() === '') {\r\n return (\r\n \r\n Référence non fournie, consulter la rubrique évaluations.\r\n \r\n );\r\n }\r\n }\r\n return <>;\r\n };\r\n\r\n return (\r\n handleSelect(notification)}\r\n sx={{\r\n py: 1.5,\r\n px: 2.5,\r\n mt: '1px',\r\n ...(notification.read && {\r\n bgcolor: 'action.selected'\r\n })\r\n }}\r\n >\r\n \r\n {settings.title === '' ? notification.title : settings.title}\r\n {getObservationByType(notification)}\r\n\r\n \r\n {settings.title === '' ? (\r\n *': {\r\n fontSize: '0.75rem!important'\r\n }\r\n }}\r\n >\r\n \r\n \r\n ) : (\r\n notification.title\r\n )}\r\n \r\n \r\n }\r\n secondary={\r\n \r\n \r\n {fDate(notification.createdDate)}\r\n \r\n\r\n \r\n \r\n }\r\n />\r\n \r\n );\r\n}\r\n\r\nexport default function NotificationsPopover({ isSmall = false }: NotificationPopoverProps) {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n const { connection } = useHubConnection(); //SignalR;\r\n const dispatch = useDispatch();\r\n const { hasMore, notifications, index, step, count, countUnRead } = useSelector(\r\n (state: RootState) => state.notification\r\n );\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleMarkAllAsRead = () => {\r\n dispatch(setAllRead()(() => console.log('err')));\r\n };\r\n\r\n const onScroll = useCallback(() => dispatch(getMoreNotifications()), [dispatch]);\r\n\r\n useEffect(() => {\r\n connection?.on('receiveEvent-notification', (params: any) => {\r\n dispatch(getNotifications(1, 50, true));\r\n enqueueSnackbar(params.title, { variant: 'info', persist: true });\r\n });\r\n }, []);\r\n\r\n useEffect(() => {\r\n dispatch(getNotifications(index, step, false));\r\n }, [index, step]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Notifications ({count})\r\n \r\n Vous avez {countUnRead} notification(s) non lue(s)\r\n \r\n \r\n \r\n {countUnRead > 0 && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n\r\n {count === 0 ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n }\r\n dataLength={count}\r\n >\r\n \r\n {notifications.map((notification) => {\r\n const settingItem = getNotificationSettings().filter(\r\n (s: NotificationSettingsProps) => s.id === notification.type\r\n )[0];\r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n/**\r\n * \r\n */\r\n","import { Card, Stack, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\n/**\r\n * Afficher des données élèves breves\r\n */\r\nexport default function AccountShortInfos() {\r\n const { student, getContractCurrent } = useAuth();\r\n\r\n const contract = getContractCurrent();\r\n\r\n return (\r\n \r\n \r\n \r\n {student?.lastName} {student?.firstName}\r\n \r\n \r\n Formation : {contract.training.id} {contract.training.label}\r\n \r\n Contrat N° {contract.id}\r\n \r\n \r\n );\r\n}\r\n","import { AccessTime } from '@mui/icons-material';\r\nimport { Tooltip } from '@mui/material';\r\nimport { Address } from '../../../@types/account';\r\nimport Label from 'components/Label';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\ntype StudentHourProps = { isSmall?: boolean };\r\n\r\nexport default function StudentHour({ isSmall = true }: StudentHourProps) {\r\n const { getHourAlertMessage } = useAuth();\r\n const msg: string = getHourAlertMessage();\r\n\r\n const children = () => {\r\n return isSmall ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n );\r\n };\r\n\r\n return <>{msg && msg !== '' && children()};\r\n}\r\n","import { useEffect, useRef, useState } from 'react';\r\n\r\n// material\r\nimport { Box, Tooltip, Divider, Typography, IconButton, Alert, Button } from '@mui/material';\r\n\r\n// components\r\nimport MenuPopover from '../../components/MenuPopover';\r\n\r\nimport { Info, WarningRounded } from '@mui/icons-material';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\nimport { Stack } from '@mui/material';\r\nimport useOvertime from 'hooks/useOvertime';\r\nimport usePayment from 'hooks/usePayment';\r\nimport { AlertBase } from '../../@types/common';\r\nimport { InformationsContract } from 'components/ModuleNotAuthorized';\r\n\r\nexport default function AlertsPopover() {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n const { getMessagesAccess, student } = useAuth();\r\n const { authorized, getOvertimeAlert } = useOvertime();\r\n const { authorizedPayment, getPaymentAlert } = usePayment();\r\n const [alertList, setAlertList] = useState>([]);\r\n\r\n useEffect(() => {\r\n let tmpAlertList = Array();\r\n\r\n // Paiement requis\r\n authorizedPayment && tmpAlertList.push(getPaymentAlert());\r\n\r\n // Expiration contrat\r\n authorized && tmpAlertList.push(getOvertimeAlert());\r\n\r\n // limite d'access\r\n const messageLimited = getMessagesAccess();\r\n if (messageLimited && messageLimited !== '')\r\n tmpAlertList.push({\r\n title: \"Accès à l'Espace numérique de travail limité\",\r\n description: messageLimited,\r\n img: ''\r\n });\r\n\r\n if (tmpAlertList) setAlertList(tmpAlertList);\r\n }, [student?.id]);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n //aucune alerte\r\n if (alertList.length === 0) return <>;\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Alertes\r\n \r\n \r\n\r\n \r\n\r\n \r\n {alertList.map((alert: AlertBase, index: number) => {\r\n if (alert.action)\r\n return (\r\n {\r\n alert?.action && alert?.action();\r\n handleClose();\r\n }}\r\n size=\"small\"\r\n key={index}\r\n >\r\n \r\n {alert.title}\r\n {alert.description}\r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n {alert.title}\r\n {alert.description}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { CircularProgress, Box, Typography } from '@mui/material';\r\nimport { styled } from '@mui/material/styles';\r\nimport useCountdown from 'hooks/useCountdown';\r\nimport { useEffect, useState } from 'react';\r\n\r\n//--------------------------- #4C67FD\r\nconst CircularBaseStyle = styled(CircularProgress)(({ theme }) => ({\r\n color: '#919eab1f'\r\n}));\r\nconst CircularValueStyle = styled(CircularProgress)(({ theme }) => ({\r\n color: theme.palette.primary.main,\r\n position: 'absolute',\r\n left: 0\r\n}));\r\n\r\ntype CountdownTimerProps = {\r\n targetDate: Date;\r\n startDate?: Date;\r\n warningSecond: number;\r\n errorSecond: number;\r\n size?: number;\r\n fontSize?: string;\r\n onExpired: () => void;\r\n};\r\n\r\nexport default function CountdownTimer({\r\n targetDate,\r\n startDate = new Date(),\r\n warningSecond,\r\n errorSecond,\r\n size = 60,\r\n fontSize = '1rem',\r\n onExpired\r\n}: CountdownTimerProps) {\r\n const [days, hours, minutes, seconds] = useCountdown(targetDate, startDate);\r\n const [value, setValue] = useState(hours * 3600 + minutes * 60 + seconds);\r\n const compteur = hours * 3600 + minutes * 60 + seconds;\r\n\r\n const getColor = () => {\r\n if (compteur < errorSecond) return { color: '#EE0701', colorBase: '#FFD3D2' };\r\n if (compteur < warningSecond) return { color: '#FFC107', colorBase: '#FFF7CD' };\r\n\r\n return { color: '#6369FF', colorBase: '#D4DBFF' };\r\n };\r\n\r\n //declenche fin du compte a rebours\r\n useEffect(() => {\r\n if (days + hours + minutes + seconds <= 0) onExpired();\r\n }, [seconds]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {minutes.toString().padStart(2, '0')}:{seconds.toString().padStart(2, '0')}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { useState, useEffect } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function useCountdown(targetDate: Date, startDate: Date) {\r\n const countDownDate = new Date(targetDate).getTime();\r\n const [countDown, setCountDown] = useState(countDownDate - startDate.getTime());\r\n\r\n useEffect(() => {\r\n const interval = setInterval(() => {\r\n setCountDown(countDownDate - new Date().getTime());\r\n }, 1000);\r\n\r\n return () => clearInterval(interval);\r\n }, [countDownDate]);\r\n\r\n const getReturnValues = (countDown: number, countInit: number) => {\r\n // calculate time left\r\n const days = Math.floor(countDown / (1000 * 60 * 60 * 24));\r\n const hours = Math.floor((countDown % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));\r\n const minutes = Math.floor((countDown % (1000 * 60 * 60)) / (1000 * 60));\r\n const seconds = Math.floor((countDown % (1000 * 60)) / 1000);\r\n\r\n return [days, hours, minutes, seconds];\r\n };\r\n\r\n return getReturnValues(countDown, startDate.getTime());\r\n}\r\n\r\n// Usage\r\n// const countdown = useCountdown(new Date('07/07/2022 21:30'));\r\n","import {\r\n Button,\r\n Card,\r\n CardHeader,\r\n ClickAwayListener,\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n IconButton,\r\n Menu,\r\n Popper,\r\n Portal,\r\n Stack,\r\n Typography\r\n} from '@mui/material';\r\n\r\nimport { Box } from '@mui/system';\r\n\r\nimport useHubConnection from 'hooks/useHubConnection';\r\nimport { useEffect, useState } from 'react';\r\nimport { fDate, addTime } from 'utils/formatTime';\r\nimport { styled } from '@mui/material/styles';\r\nimport CloseIcon from '@mui/icons-material/Close';\r\nimport { dispatch, RootState, useSelector } from 'redux/store';\r\nimport { Survey } from '../../../@types/contract';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport CountdownTimer from '../tracking/CountdownTimer';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport { DateRange } from '@mui/icons-material';\r\nimport useAuth from 'hooks/useAuth';\r\nimport useSettings from 'hooks/useSettings';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_PAGE } from 'routes/paths';\r\n\r\n//******************************** */\r\nconst CardStyle = styled(Card)(({ theme }) => ({\r\n overflow: 'hidden',\r\n position: 'absolute',\r\n right: 10,\r\n top: 100,\r\n zIndex: 50,\r\n boxShadow: theme.customShadows.z16,\r\n borderRadius: theme.shape.borderRadiusMd,\r\n border: '5px solid #d7d7d7',\r\n maxWidth: 400\r\n}));\r\n\r\n/**\r\n * Ecoute\r\n * et affiche une popup de coupure de l'application pour mise à jour\r\n */\r\nexport default function WorkflowUpdated() {\r\n const { logout } = useAuth();\r\n const { connection } = useHubConnection(); //SignalR;\r\n const [updatedDate, setUpdatedDate] = useLocalStorage<{\r\n start: number | null;\r\n end: number | null;\r\n }>('updatedApplication', { start: null, end: null });\r\n const [open, setOpen] = useState(false);\r\n const { isMobile } = useScreenConfig();\r\n const navigate = useNavigate();\r\n\r\n //Abonnement aux events\r\n useEffect(() => {\r\n connection?.on('workflowUpdated', (time: number) => {\r\n //time :=> temps en minute avant la coupure\r\n const timeOut = addTime(new Date(), time).getTime();\r\n setUpdatedDate({ start: new Date().getTime(), end: timeOut });\r\n setOpen(true);\r\n });\r\n\r\n return () => {\r\n connection?.off('workflowUpdated');\r\n };\r\n }, []);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleReset = async () => {\r\n setOpen(false);\r\n setUpdatedDate({ start: null, end: null });\r\n navigate(PATH_PAGE.maintenance);\r\n };\r\n\r\n //Verifier que la date est postérieure\r\n if (!updatedDate.start || updatedDate.end < new Date().getTime()) return <>;\r\n\r\n return (\r\n \r\n \r\n {!isMobile && (\r\n \r\n Mise à jour dans{' : '}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Mise à jour de votre Espace Numérique de Travail (ENT).\r\n \r\n\r\n \r\n Votre ENT sera mis à jour à {fDate(new Date(updatedDate.end), 'HH:mm')}.\r\n \r\n \r\n Pensez à enregistrer votre travail si vous êtes en cours de rédaction d’une\r\n évaluation.\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n/**\r\n *\r\n */\r\n","import { StudyPlanChapter, StudyPlanPhase } from '../@types/pedagogy';\r\nimport { useEffect, useState } from 'react';\r\nimport useStudyPlan from './useStudyPlan';\r\n\r\nconst useStudyPlanAverage = () => {\r\n const [chapters, setChapters] = useState>([]);\r\n const { phases } = useStudyPlan();\r\n\r\n useEffect(() => {\r\n if (phases === null || phases.length === 0 || chapters.length > 0) return;\r\n\r\n let chapterList: Array = [];\r\n phases.map((phase: StudyPlanPhase) => {\r\n chapterList = chapterList.concat([...phase.chapters]);\r\n });\r\n\r\n if (chapterList.length > 0) setChapters(chapterList);\r\n }, [phases]);\r\n\r\n return {\r\n chapters\r\n };\r\n};\r\n\r\nexport default useStudyPlanAverage;\r\n","import { Icon } from '@iconify/react';\r\nimport menu2Fill from '@iconify/icons-eva/menu-2-fill';\r\n// material\r\nimport { alpha, styled } from '@mui/material/styles';\r\nimport {\r\n Box,\r\n Stack,\r\n AppBar,\r\n Toolbar,\r\n IconButton,\r\n Tooltip,\r\n Typography,\r\n Card,\r\n useMediaQuery\r\n} from '@mui/material';\r\nimport { ModeAccess } from '../../@types/account';\r\nimport { ScoreType } from '../../@types/pedagogy';\r\n// hooks\r\nimport useCollapseDrawer from '../../hooks/useCollapseDrawer';\r\n// components\r\nimport { MHidden } from '../../components/@material-extend';\r\n\r\nimport AccountPopover from './AccountPopover';\r\nimport MeetsPopover from './MeetPopover';\r\nimport HelpButton from './HelpButton';\r\n\r\nimport PermittedAccessMessage from './PermittedAccessMessage';\r\nimport FavoritesPopover from './FavoritesPopover';\r\n\r\nimport useAuth from 'hooks/useAuth';\r\nimport { Info, Visibility } from '@mui/icons-material';\r\nimport NotificationsPopover from './NotificationsPopover';\r\nimport { ScoreView } from 'components/_dashboard/studyPlan/ScoreView';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport AccountShortInfos from 'components/_dashboard/student/account/AccountShortInfos';\r\nimport StudentHour from 'components/_dashboard/student/StudentHour';\r\nimport AlertsPopover from './AlertsPopover';\r\nimport WorkflowUpdated from 'components/_dashboard/workflow/WorkflowUpdated';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport { ModuleType } from '../../@types/contract';\r\nimport StudyPlanChapterAverageDialog from 'components/_dashboard/studyPlan/Moyenne/StudyPlanChapterAverageDialog';\r\nimport { Button } from '@mui/material';\r\nimport useStudyPlanAverage from 'hooks/useStudyPlanAverage';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst DRAWER_WIDTH = 280;\r\nconst COLLAPSE_WIDTH = 102;\r\n\r\nconst APPBAR_MOBILE = 64;\r\nconst APPBAR_DESKTOP = 64;\r\n\r\nconst RootStyle = styled(AppBar)(({ theme }) => ({\r\n boxShadow: 'none',\r\n backdropFilter: 'blur(6px)',\r\n WebkitBackdropFilter: 'blur(6px)', // Fix on Mobile\r\n backgroundColor: alpha(theme.palette.background.default, 0.72),\r\n [theme.breakpoints.up('lg')]: {\r\n width: `calc(100% - ${DRAWER_WIDTH + 1}px)`\r\n },\r\n zIndex: 1000\r\n}));\r\n\r\nconst ToolbarStyle = styled(Toolbar)(({ theme }) => ({\r\n minHeight: APPBAR_MOBILE,\r\n [theme.breakpoints.up('lg')]: {\r\n minHeight: APPBAR_DESKTOP,\r\n padding: theme.spacing(0, 5)\r\n }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype DashboardNavbarProps = {\r\n onOpenSidebar: VoidFunction;\r\n};\r\n\r\nexport default function DashboardNavbar({ onOpenSidebar }: DashboardNavbarProps) {\r\n const { isCollapse } = useCollapseDrawer();\r\n const { student, getContractCurrent, isReadOnly, logout } = useAuth();\r\n const { chapters } = useStudyPlanAverage();\r\n const contract = getContractCurrent();\r\n const { authorizedModule } = useModuleAuthorize({ accessibleModules: [ModuleType.Dashboard] });\r\n const theme = useTheme();\r\n const isSmall = useMediaQuery(theme.breakpoints.down(940));\r\n const showAccountInfo = useMediaQuery(theme.breakpoints.up(700));\r\n const isControlOnly = [ModeAccess.Control].includes(student?.modeAccess);\r\n\r\n const handleLogout = async () => {\r\n try {\r\n await logout?.();\r\n\r\n window.location.reload();\r\n } catch (error) {}\r\n };\r\n\r\n if (isControlOnly)\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n {contract.numberOfMandatoryHomeworkCorrected > 0 && (\r\n \r\n \r\n \r\n \r\n Moyenne générale\r\n \r\n \r\n \r\n \r\n {(onClick) => (\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n {isReadOnly && (\r\n <>\r\n {showAccountInfo && }\r\n \r\n \r\n \r\n \r\n )}\r\n {authorizedModule && }\r\n {/**/}\r\n \r\n {authorizedModule && }\r\n {authorizedModule && }\r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { useState, ReactNode } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport { NavLink as RouterLink, matchPath, useLocation } from 'react-router-dom';\r\nimport arrowIosForwardFill from '@iconify/icons-eva/arrow-ios-forward-fill';\r\nimport arrowIosDownwardFill from '@iconify/icons-eva/arrow-ios-downward-fill';\r\n// material\r\nimport { alpha, useTheme, styled } from '@mui/material/styles';\r\nimport {\r\n Box,\r\n List,\r\n BoxProps,\r\n Collapse,\r\n ListItemText,\r\n ListItemIcon,\r\n ListSubheader,\r\n ListItemButton,\r\n ListItemButtonProps\r\n} from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst ListSubheaderStyle = styled((props) => (\r\n \r\n))(({ theme }) => ({\r\n ...theme.typography.overline,\r\n marginTop: theme.spacing(3),\r\n marginBottom: theme.spacing(2),\r\n paddingLeft: theme.spacing(5),\r\n color: theme.palette.text.primary\r\n}));\r\n\r\ninterface ListItemStyleProps extends ListItemButtonProps {\r\n component?: ReactNode;\r\n to?: string;\r\n}\r\n\r\nconst ListItemStyle = styled(ListItemButton)(({ theme }) => ({\r\n ...theme.typography.body2,\r\n height: 48,\r\n position: 'relative',\r\n\r\n paddingLeft: theme.spacing(5),\r\n paddingRight: theme.spacing(2.5),\r\n color: theme.palette.text.secondary,\r\n '&:before': {\r\n top: 0,\r\n right: 0,\r\n width: 3,\r\n bottom: 0,\r\n content: \"''\",\r\n display: 'none',\r\n position: 'absolute',\r\n borderTopLeftRadius: 4,\r\n borderBottomLeftRadius: 4,\r\n backgroundColor: theme.palette.primary.main\r\n }\r\n}));\r\n\r\nconst ListItemIconStyle = styled(ListItemIcon)(({ theme }) => ({\r\n width: 22,\r\n height: 22,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface NavListItemProps extends ListItemStyleProps {\r\n item: NavItemProps;\r\n}\r\n\r\nfunction NavListItem({ item, children, sx }: NavListItemProps) {\r\n const handleExternalLink = () => window.open(item.path);\r\n\r\n return item.isExternalLink ? (\r\n \r\n {children}\r\n \r\n ) : (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype NavItemProps = {\r\n title: string;\r\n path: string;\r\n icon?: JSX.Element;\r\n info?: JSX.Element;\r\n isVisible?: boolean;\r\n isExternalLink?: boolean;\r\n children?: {\r\n title: string;\r\n path: string;\r\n isVisible?: boolean;\r\n isExternalLink?: boolean;\r\n }[];\r\n};\r\n\r\nfunction NavItem({ item, isShow }: { item: NavItemProps; isShow?: boolean | undefined }) {\r\n const theme = useTheme();\r\n const { pathname } = useLocation();\r\n const { title, path, icon, info, children, isExternalLink } = item;\r\n const isActiveRoot = path ? !!matchPath({ path, end: false }, pathname) : false;\r\n\r\n // Sous lien actif ? (uniquement les liens affichés)\r\n const hasActiveVisibleSub = children?.find(\r\n (child) =>\r\n child?.isVisible && child?.path && !!matchPath({ path: child.path, end: false }, pathname)\r\n );\r\n\r\n // Sous lien actif ?\r\n const hasActiveSub = children?.find(\r\n (child) => child?.path && !!matchPath({ path: child.path, end: false }, pathname)\r\n );\r\n\r\n const [open, setOpen] = useState(isActiveRoot);\r\n\r\n const handleOpen = () => {\r\n setOpen(!open);\r\n };\r\n\r\n const activeRootStyle = {\r\n color: 'primary.main',\r\n fontWeight: 'fontWeightMedium',\r\n bgcolor: alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity * 2),\r\n '&:before': { display: 'block' }\r\n };\r\n\r\n const activeIconStyle = {\r\n color: 'primary.main'\r\n };\r\n\r\n const activeSubHeader = {\r\n color: 'primary.main',\r\n fontWeight: 'fontWeightMedium',\r\n bgcolor: alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity * 2)\r\n };\r\n\r\n const activeSubStyle = {\r\n color: 'text.primary',\r\n fontWeight: 'fontWeightMedium',\r\n '&:before': { display: 'block' }\r\n };\r\n\r\n const activeSubBlock = {\r\n bgcolor: alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity)\r\n };\r\n\r\n const headerLinkStyle = () => {\r\n if (isActiveRoot) {\r\n //lien sélectionné\r\n return activeRootStyle;\r\n } else if (hasActiveVisibleSub) {\r\n //sous menu sélectionné\r\n if (isShow) {\r\n //sous menu visible\r\n return open ? activeSubHeader : activeRootStyle;\r\n } else {\r\n //sous menu invisible\r\n return activeRootStyle;\r\n }\r\n }\r\n return null;\r\n };\r\n\r\n const singleLinkStyle = () => {\r\n if (isActiveRoot || hasActiveSub) {\r\n //lien sélectionné OU sous menu invisible sélectionné\r\n return activeRootStyle;\r\n }\r\n return null;\r\n };\r\n\r\n if (children?.some((child: any) => child.isVisible)) {\r\n return (\r\n <>\r\n \r\n \r\n {icon && icon}\r\n \r\n\r\n {isShow && (\r\n <>\r\n {/*Le nowrap permet que le texte reste sur une ligne lors du déploiement du menu*/}\r\n \r\n {info && info}\r\n \r\n \r\n )}\r\n \r\n\r\n {isShow && (\r\n \r\n \r\n {children\r\n .filter((item) => item.isVisible)\r\n .map((item) => {\r\n const { title, path } = item;\r\n const isActiveSub = path ? !!matchPath({ path, end: false }, pathname) : false;\r\n\r\n return (\r\n \r\n \r\n theme.transitions.create('transform'),\r\n ...(isActiveSub && {\r\n transform: 'scale(2)',\r\n bgcolor: 'primary.main'\r\n })\r\n }}\r\n />\r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n {icon && icon}\r\n \r\n {isShow && (\r\n <>\r\n {/*Le nowrap permet que le texte reste sur une ligne lors du déploiement du menu*/}\r\n \r\n {info && info}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\ninterface NavSectionProps extends BoxProps {\r\n isShow?: boolean | undefined;\r\n navConfig: NavItemProps[];\r\n}\r\n\r\nexport default function NavSection({ navConfig, isShow = true, ...other }: NavSectionProps) {\r\n return (\r\n \r\n \r\n {navConfig\r\n .filter((x) => x.isVisible)\r\n .map((item: NavItemProps) => {\r\n return ;\r\n })}\r\n \r\n \r\n );\r\n}\r\n/**{isShow && subheader != '' && {subheader}} \r\n * {navConfig.map((list, i) => {\r\n const { items } = list;\r\n return (\r\n \r\n {items\r\n .filter((x) => x.isVisible)\r\n .map((item: NavItemProps) => {\r\n return ;\r\n })}\r\n \r\n );\r\n })}\r\n * \r\n*/\r\n","import { Button } from '@mui/material';\r\nimport { useEffect, useState } from 'react';\r\nimport { Helmet } from 'react-helmet-async';\r\n\r\nexport default function OneTrust() {\r\n useEffect(() => {\r\n function OptanonWrapper() {}\r\n }, []);\r\n\r\n return (\r\n \r\n {process.env.REACT_APP_ONE_TRUST === 'PROD' ? (\r\n <>\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport function OneTrustFooter() {\r\n return (\r\n \r\n Paramétrer les cookies\r\n \r\n );\r\n}\r\n\r\n/* \r\n \r\npre :\r\nprod : \r\n*/\r\n","import { VisibilityOff } from '@mui/icons-material';\r\nimport { Button, Tooltip } from '@mui/material';\r\nimport { useEffect } from 'react';\r\n\r\nexport default function Faciliti() {\r\n useEffect(() => {\r\n const FACILITI_SRC = 'https://cdn.facil-iti.app/tags/faciliti-tag.min.js';\r\n\r\n function initFaciliti() {\r\n var fs = document.createElement('script');\r\n fs.setAttribute('src', FACILITI_SRC);\r\n fs.dataset.applicationIdentifier = '21e78d92-41d5-4ebb-ab10-8529ce64e42e';\r\n document.head.appendChild(fs);\r\n }\r\n\r\n let i = 0;\r\n let scriptAlreadyExists = false;\r\n\r\n var scriptsList = document.getElementsByTagName('script');\r\n\r\n while (!scriptAlreadyExists && i < scriptsList?.length) {\r\n if (scriptsList[i]?.src === FACILITI_SRC) {\r\n scriptAlreadyExists = true;\r\n }\r\n\r\n i = i + 1;\r\n }\r\n\r\n if (!scriptAlreadyExists) {\r\n initFaciliti();\r\n }\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Icon } from '@iconify/react';\r\nimport googleFill from '@iconify/icons-eva/google-fill';\r\nimport twitterFill from '@iconify/icons-eva/twitter-fill';\r\nimport facebookFill from '@iconify/icons-eva/facebook-fill';\r\nimport linkedinFill from '@iconify/icons-eva/linkedin-fill';\r\nimport { Link as ScrollLink } from 'react-scroll';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport {\r\n Grid,\r\n Link,\r\n Divider,\r\n Container,\r\n Typography,\r\n IconButton,\r\n Stack,\r\n Card,\r\n CardContent\r\n} from '@mui/material';\r\n// routes\r\nimport { PATH_DASHBOARD, PATH_PAGE } from '../../routes/paths';\r\n\r\n//\r\n\r\nimport useAuth from 'hooks/useAuth';\r\nimport { Box } from '@mui/system';\r\nimport { phoneFormat } from 'utils/formatPhone';\r\nimport { OneTrustFooter } from 'components/OneTrust';\r\nimport Faciliti from 'components/Faciliti';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Footer() {\r\n const { student, getContractCurrent } = useAuth();\r\n\r\n const contract = getContractCurrent();\r\n\r\n return (\r\n \r\n {contract.brand.label}\r\n \r\n Téléphone : {phoneFormat(contract.brand.phone, contract.brand.id)}\r\n \r\n \r\n \r\n Mentions légales\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n/**\r\n * \r\n \r\n Illustrations de Storyset\r\n \r\n \r\n */\r\n","import { useEffect, useLayoutEffect } from 'react';\r\nimport { Link as RouterLink, useLocation } from 'react-router-dom';\r\n// material\r\nimport { alpha, styled } from '@mui/material/styles';\r\nimport {\r\n Box,\r\n Link,\r\n Stack,\r\n Button,\r\n Drawer,\r\n Tooltip,\r\n Typography,\r\n CardActionArea,\r\n IconButton,\r\n Divider\r\n} from '@mui/material';\r\n\r\nimport { Contract } from '../../@types/contract';\r\nimport { ModeAccess } from '../../@types/account';\r\n\r\n// hooks\r\nimport useAuth from '../../hooks/useAuth';\r\nimport useCollapseDrawer from '../../hooks/useCollapseDrawer';\r\n\r\n// components\r\nimport Logo from '../../components/Logo';\r\n\r\nimport Scrollbar from '../../components/Scrollbar';\r\nimport NavSection from '../../components/NavSection';\r\nimport { MHidden } from '../../components/@material-extend';\r\n//\r\nimport useSidebarConfig from 'hooks/useSidebarConfig';\r\nimport Footer from './Footer';\r\nimport { ArrowBackIos, ArrowForwardIos } from '@mui/icons-material';\r\nimport { useState } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst DRAWER_WIDTH = 280;\r\nconst COLLAPSE_WIDTH = 102;\r\n\r\nconst RootStyle = styled('div')(({ theme }) => ({\r\n [theme.breakpoints.up('lg')]: {\r\n flexShrink: 0,\r\n transition: theme.transitions.create('width', {\r\n duration: theme.transitions.duration.complex\r\n })\r\n }\r\n}));\r\n\r\nconst AccountStyle = styled('div')(({ theme }) => ({\r\n display: 'flex',\r\n alignItems: 'center',\r\n padding: theme.spacing(2, 2.5),\r\n borderRadius: theme.shape.borderRadiusSm,\r\n backgroundColor: theme.palette.grey[500_12]\r\n}));\r\n\r\ntype DashboardSidebarProps = {\r\n isOpenSidebar: boolean;\r\n onCloseSidebar: VoidFunction;\r\n};\r\n\r\nexport default function DashboardSidebar({ isOpenSidebar, onCloseSidebar }: DashboardSidebarProps) {\r\n const { pathname } = useLocation();\r\n const { student, getConfig, getContractCurrent } = useSidebarConfig();\r\n const { isCollapse, collapseClick, collapseHover, onToggleCollapse, onHoverEnter, onHoverLeave } =\r\n useCollapseDrawer();\r\n\r\n //Booléen de gestion du chargement de la vue\r\n const [isLoading, setIsLoading] = useState(true);\r\n\r\n useEffect(() => {\r\n //Chargement effectué\r\n setIsLoading(false);\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (isOpenSidebar) {\r\n onCloseSidebar();\r\n }\r\n\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [pathname]); // au changement de path le drawer en mode mobile est fermé automatiquement\r\n\r\n const contract = getContractCurrent(); //contrat par défaut\r\n\r\n const renderContent = (\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {!isCollapse && (\r\n \r\n \r\n {collapseClick ? : }\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {!isCollapse && (\r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n\r\n return (\r\n \r\n {/* MENU mode mobile */}\r\n \r\n \r\n {renderContent}\r\n \r\n \r\n\r\n {/* MENU mode desktop : déplié ou réduit*/}\r\n {!isLoading && (\r\n \r\n theme.customShadows.z20,\r\n bgcolor: (theme) => alpha(theme.palette.background.default, 0.88)\r\n })\r\n }\r\n }}\r\n >\r\n {renderContent}\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n//component={RouterLink} to=\"/\"\r\n/**\r\n * \r\n * {isCollapse ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n {student?.name}\r\n \r\n \r\n Contrat N° {getContractCurrent().id}\r\n \r\n \r\n \r\n )}\r\n */\r\n","import { Videocam, AccessTime } from '@mui/icons-material';\r\nimport { Chip, Typography } from '@mui/material';\r\n\r\n//type\r\nimport { SeminarStatus } from '../../../@types/seminar';\r\n\r\n//Composant\r\nimport {\r\n RowItemDisplay,\r\n RowItemDisplayDateTime,\r\n VisoRequiredDisplay\r\n} from 'components/RowListItem';\r\nimport { MeetingTimeCount, MeetingTimeCountDisplay } from '../meeting/MeetingTimeCount';\r\nimport MeetingButtonVisio from '../meeting/MeetingButtonVisio';\r\nimport Label from 'components/Label';\r\n\r\nexport type VirtualClassAccessProps = {\r\n dateStart: string;\r\n dateEnd: string;\r\n isVirtual: boolean;\r\n registered?: boolean;\r\n status?: SeminarStatus;\r\n registeredId: number;\r\n};\r\n\r\nexport const VirtualClassAccess = ({\r\n dateStart,\r\n dateEnd,\r\n registered,\r\n status,\r\n registeredId\r\n}: VirtualClassAccessProps) => {\r\n return (\r\n \r\n {(time: string, isActivate: boolean, isStarted: boolean) => (\r\n <>\r\n \r\n {registered ? (\r\n \r\n ) : (\r\n <>\r\n {' '}\r\n {!isStarted && registered && (\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n {status === SeminarStatus.Open && (\r\n <>\r\n {registered ? (\r\n }\r\n icon={}\r\n >\r\n \r\n {' '}\r\n Pré-requis : casque, micro, webcam\r\n \r\n \r\n ) : (\r\n }>\r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { Alert } from '@mui/material';\r\nimport { SeminarError, SeminarErrorResult, SeminarType } from '../../../@types/seminar';\r\n\r\nexport type SeminarErrorMessageProps = {\r\n error: SeminarError;\r\n type: SeminarType;\r\n};\r\n\r\nexport default function SeminarErrorMessage({ error, type }: SeminarErrorMessageProps) {\r\n let message: string = 'Nous ne pouvons pas donner suite à cette demande';\r\n\r\n switch (error.result) {\r\n case SeminarErrorResult.OutOfTime:\r\n message = 'Vous ne pouvez plus accéder à cette classe';\r\n break;\r\n case SeminarErrorResult.Invalid:\r\n message = \"Les données sont invalides.Veuillez prévenir l'école\";\r\n break;\r\n case SeminarErrorResult.Unavailable:\r\n message = \"Le replay est indisponible pour l'instant\";\r\n break;\r\n case SeminarErrorResult.ClosedContract:\r\n message = 'La date de clôture de votre contrat sera passée';\r\n break;\r\n case SeminarErrorResult.Full:\r\n case SeminarErrorResult.PlaceSpaceAvailable:\r\n message = \"Il n'y a plus de place disponible\";\r\n break;\r\n }\r\n\r\n return {message};\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\n\r\n// material\r\nimport {\r\n List,\r\n Button,\r\n Typography,\r\n TextField,\r\n MenuItem,\r\n Box,\r\n DialogActions,\r\n Alert,\r\n Dialog,\r\n DialogTitle,\r\n DialogContent\r\n} from '@mui/material';\r\n\r\nimport { LoadingButton } from '@mui/lab';\r\n\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { registerVirtualClass } from 'redux/slices/virtualClass';\r\nimport DialogConfirm from 'components/DialogConfirm';\r\n\r\nexport enum SeminarActionType {\r\n Cancel = 0,\r\n Register = 1,\r\n RegisterWaitingList = 2\r\n}\r\n\r\nexport type SeminarActionProps = {\r\n disabled: boolean;\r\n onClose: () => void;\r\n type: SeminarActionType;\r\n id: number;\r\n title: string;\r\n error: any;\r\n isLoading: boolean;\r\n onConfirm: () => void;\r\n};\r\n\r\n/**\r\n *\r\n * @param param0 Enregistrement d'un séminar (atelier et casse virtuelles)\r\n * @returns\r\n */\r\nexport default function SeminarActionRegister({\r\n id,\r\n type,\r\n disabled,\r\n title,\r\n error,\r\n onClose,\r\n isLoading,\r\n onConfirm\r\n}: SeminarActionProps) {\r\n const [open, setOpen] = useState(false);\r\n\r\n useEffect(() => {\r\n if (error) setOpen(false);\r\n }, [error]);\r\n\r\n return (\r\n <>\r\n setOpen(true)}\r\n disabled={disabled}\r\n sx={{ mt: 5, mb: 3 }}\r\n >\r\n {type === SeminarActionType.Register ? \"M'INSCRIRE\" : \"M'INSCRIRE SUR LISTE D'ATTENTE\"}\r\n \r\n\r\n setOpen(false)}\r\n onConfirm={onConfirm}\r\n isLoading={isLoading}\r\n >\r\n {type === SeminarActionType.Register\r\n ? 'Confirmez-vous votre inscription ?'\r\n : \"Confirmez-vous votre inscription sur liste d'attente ?\"}\r\n \r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\n\r\n// material\r\nimport {\r\n List,\r\n Button,\r\n Typography,\r\n TextField,\r\n MenuItem,\r\n Box,\r\n DialogActions,\r\n Alert,\r\n Dialog,\r\n DialogTitle,\r\n DialogContent\r\n} from '@mui/material';\r\n\r\nimport { LoadingButton } from '@mui/lab';\r\n\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { cancelVirtualClass } from 'redux/slices/virtualClass';\r\n\r\n//type\r\nimport { Meeting, MeetingStatus, MeetingType } from '../../../@types/meeting';\r\nimport { SeminarStatus, Seminar } from '../../../@types/seminar';\r\nimport DialogConfirm from 'components/DialogConfirm';\r\n\r\nexport enum SeminarActionType {\r\n VirtualClass = 0,\r\n Workshop = 1\r\n}\r\n\r\nexport enum SeminarType {\r\n Cancel = 0,\r\n Register = 1,\r\n RegisterWaitingList = 2\r\n}\r\n\r\nexport type SeminarActionProps = {\r\n disabled: boolean;\r\n onClose: () => void;\r\n};\r\n\r\n/**\r\n *\r\n * @param param0 Enregistrement d'un séminar (atelier et casse virtuelles)\r\n * @returns\r\n */\r\nexport default function SeminarActionCancel({ disabled, onClose }: SeminarActionProps) {\r\n const dispatch = useDispatch();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const [open, setOpen] = useState(false);\r\n const { isLoading, error, virtualClass } = useSelector((state: RootState) => state.virtualClass);\r\n\r\n const handleClick = () => {\r\n dispatch(\r\n cancelVirtualClass(\r\n virtualClass!.id,\r\n virtualClass!.meeting?.id\r\n )(() => {\r\n enqueueSnackbar('Inscription annulée', { variant: 'success' });\r\n // setOpen(false);\r\n })\r\n );\r\n };\r\n\r\n useEffect(() => {\r\n if (error) setOpen(false);\r\n }, [error]);\r\n\r\n return (\r\n <>\r\n setOpen(true)}\r\n disabled={disabled}\r\n >\r\n ANNULER MON INSCRIPTION\r\n \r\n setOpen(false)}\r\n >\r\n \r\n Confirmez-vous l'annulation de votre participation à la classe virtuelle ?\r\n \r\n \r\n \r\n );\r\n}\r\n","import { useState } from 'react';\r\n//hool\r\nimport useAuth from 'hooks/useAuth';\r\n//redux\r\nimport { RootState, useDispatch } from 'redux/store';\r\nimport { getReplayVirtualClass } from 'redux/slices/virtualClass';\r\n\r\n//type\r\nimport { Playback } from '../../../@types/virtualClass';\r\nimport { loadUrl } from 'utils/helper';\r\nimport { Button } from '@mui/material';\r\nimport { useSelector } from 'react-redux';\r\nimport { addSurvey, createSurveyVirtuelle, setLastSurvey } from 'redux/slices/survey';\r\nimport { Survey } from '../../../@types/contract';\r\nimport { useTrackerActivityEvents } from 'hooks/useTackerActivityEvents';\r\n\r\nexport type VirtualClassReplayProps = {\r\n replay: null | Playback;\r\n isLoading: boolean;\r\n id: number;\r\n};\r\n\r\n/**\r\n * Acces au replay de la classe\r\n * Maj dans la liste des classes virtuelles (viewReplay)\r\n * Activer le questionnaire\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function VirtualClassReplay({ replay, isLoading, id }: VirtualClassReplayProps) {\r\n const { student } = useAuth();\r\n const { moveInactityTime } = useTrackerActivityEvents();\r\n const dispatch = useDispatch();\r\n const { virtualClass } = useSelector((state: RootState) => state.virtualClass);\r\n\r\n const handleReplay = async () => {\r\n dispatch(\r\n getReplayVirtualClass({\r\n lastName: student?.lastName || '',\r\n firstName: student?.firstName || '',\r\n email: student?.email || '',\r\n playbackId: replay?.playbackID || '',\r\n activityId: replay?.activityID || '',\r\n id: id\r\n })((url: string) => {\r\n //loadUrl(url);\r\n window.open(url);\r\n moveInactityTime(virtualClass?.id.toString() || '');\r\n //Particularité => la méthode a ajouté viewReplayCount dans la liste et non sur l'item\r\n if (virtualClass?.viewReplayCount === 0 && !virtualClass?.isSurvey) {\r\n const survey = createSurveyVirtuelle(virtualClass?.id, false);\r\n\r\n dispatch(addSurvey(survey));\r\n dispatch(setLastSurvey(survey));\r\n }\r\n })\r\n );\r\n };\r\n\r\n if (replay == null) return <>;\r\n\r\n return (\r\n handleReplay()}\r\n size=\"large\"\r\n variant=\"contained\"\r\n color=\"primary\"\r\n >\r\n VOIR LE REPLAY\r\n \r\n );\r\n}\r\n","import { useState, useEffect } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport shieldFill from '@iconify/icons-eva/shield-fill';\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\n\r\nimport { Box } from '@mui/system';\r\nimport {\r\n Alert,\r\n Checkbox,\r\n Container,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n FormControl,\r\n FormControlLabel,\r\n List,\r\n Stack,\r\n Typography\r\n} from '@mui/material';\r\nimport { ConfirmationNumber, Lock, Payment } from '@mui/icons-material';\r\nimport { RowItemDisplay, RowItemDisplayInfo, RowItemDisplayTitle } from 'components/RowListItem';\r\nimport Markdown from 'components/Markdown';\r\nimport { formatCardPayment } from 'utils/helper';\r\nimport { getLinksPayment } from 'redux/slices/workshop';\r\nimport { SeminarLeftToPay } from '../../../@types/seminar';\r\nimport WorkshopCreditView from './WorkshopCreditView';\r\nimport { Button } from '@mui/material';\r\nimport { DialogTitleWithClose } from 'components/DialogTitleWithClose';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\nexport type WorkshopPaymentFormProps = {\r\n id: number;\r\n leftToPay: null | SeminarLeftToPay;\r\n};\r\n\r\nexport default function WorkshopPaymentForm({ id, leftToPay }: WorkshopPaymentFormProps) {\r\n const dispatch = useDispatch();\r\n const [isChecked, setChecked] = useState(false);\r\n const [formPayment, setFormPayment] = useState('');\r\n const { getFormatCurrency } = useAuth();\r\n\r\n useEffect(() => {\r\n if (isChecked)\r\n dispatch(\r\n getLinksPayment(id)((content: string) => {\r\n setFormPayment(formatCardPayment(content));\r\n })\r\n );\r\n }, [isChecked]);\r\n\r\n const handleCheck = () => {\r\n setChecked(!isChecked);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Paiement sécurisé pour l'achat de {leftToPay?.accountCredit} points atelier\r\n \r\n }\r\n >\r\n\r\n }\r\n title={\r\n \r\n Somme à payer :{' '}\r\n \r\n {getFormatCurrency(leftToPay?.accountAmount)}\r\n \r\n \r\n }\r\n >\r\n \r\n Si votre paiement est bien effectué, vous serez directement inscrit et vous recevrez\r\n un e-mail de confirmation de paiement et d'inscription à cet atelier. Il vous restera\r\n à régler sur place le jour de l'atelier avant votre participation les{' '}\r\n {leftToPay?.credit} points atelier pour un montant de{' '}\r\n {leftToPay?.amount} euros.{' '}\r\n \r\n \r\n\r\n }>\r\n \r\n }\r\n label={}\r\n />\r\n \r\n \r\n\r\n {isChecked && (\r\n }>\r\n \r\n \r\n \r\n \r\n La transaction s'effectue directement entre votre ordinateur et la Société Générale\r\n via une liaison sécurisée (SSL).\r\n \r\n \r\n *Pour les paiements par chèque, veuillez envoyer votre chèque à l'ordre de l'école\r\n et l'adresser à : Skill&You-Le Lab, 85 rue Gabriel Péri-92120 MONTROUGE. Attention\r\n Votre inscription ne sera prise en compte qu'à réception du chèque. Le chèque doit\r\n nous parvenir impérativement avant la date limite d'inscription.\r\n \r\n \r\n )}\r\n\r\n \r\n Pour information\r\n Une fois votre inscription validée, vous recevrez une notification de confirmation dans\r\n votre Espace Numérique de Travail.\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport const ConditionsGeneralesCard = () => {\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n En cochant cette case, je reconnais avoir pris connaissance des{' '}\r\n {' '}\r\n et je les accepte\r\n \r\n \r\n \r\n \r\n \r\n 1/ Notion de \"points ateliers\" et modalités d'achat\r\n \r\n \r\n Il s'agit du moyen de paiement des ateliers. Les points ateliers sont achetés soit sous\r\n forme de \"pack (par exemple un pack de 100 points ateliers), soit lors de l'inscription\r\n à un atelier en particulier.\r\n
\r\n Les packs peuvent être achetés sur l'Espace Élève ou au moment de l'inscription à une\r\n formation par l'élève.\r\n
\r\n Chaque atelier a un coût défini en nombre de points ateliers, l'élève paiera l'atelier\r\n avec des points ateliers.\r\n
\r\n \r\n 2/ Conditions d'inscription à une session atelier\r\n \r\n\r\n \r\n Lors de l'inscription à un atelier, un minimum de 30% du coût total de l'atelier doit\r\n être versé au LAB SKILL AND YOU. Le reste sera à payer avant le début de l'atelier.\r\n
\r\n Si l'élève dispose entre 30% et 100% du coût total de l'atelier, ses points ateliers lui\r\n seront prélevés.\r\n
\r\n\r\n 3/ Conditions d'annulation de l'élève\r\n\r\n \r\n L'élève peut annuler son inscription à un atelier sans frais d'annulation jusqu'à 8\r\n jours avant la date de l'atelier. Les points ateliers prélevés lui seront alors\r\n reversés. Si l'élève annule son inscription moins de 8 jours avant la date de l'atelier,\r\n un justificatif d'annulation devra être transmis au LAB SKILL AND YOU et il reviendra à\r\n la société, selon le justificatif, de décider de lui reverser ou non les points\r\n ateliers.\r\n \r\n\r\n 4/ Report de session d'atelier\r\n\r\n \r\n Une session d'atelier peut être annulée jusqu'à 8 jours avant sa date de déroulement,\r\n elle sera alors reportée et les points versés par l'élève lui seront remis.\r\n
\r\n Les frais annexes engagés par l'élève sont à sa charge.\r\n
\r\n 5/ Convocation à l'atelier\r\n\r\n \r\n La convocation à l'atelier sera envoyée par e-mail à l'élève 8 jours avant l'atelier.\r\n \r\n\r\n 6/ Déroulement des ateliers\r\n\r\n \r\n Les ateliers s'effectuent en général dans les locaux du LAB à cette adresse :
\r\n 85-87 rue Gabriel Péri
\r\n CS 9001
92541 Montrouge Cedex\r\n
\r\n Dans le cas contraire, l'adresse sera précisée dans la fiche descriptive de l'atelier.\r\n
\r\n\r\n 7/ Durée de l'atelier\r\n\r\n \r\n La durée des ateliers varie, elle est précisée dans la fiche descriptive de chaque\r\n atelier.\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n","import React, { useEffect, useState } from 'react';\r\n\r\n// material\r\nimport { Button, DialogActions, Dialog, DialogTitle, DialogContent } from '@mui/material';\r\nimport { SeminarLeftToPay } from '../../../@types/seminar';\r\nimport WorkshopPaymentForm from '../workshop/WorkshopPaymentForm';\r\n\r\nexport type SeminarActionProps = {\r\n leftToPay: null | SeminarLeftToPay;\r\n id: number;\r\n};\r\n\r\n/**\r\n *\r\n * @param param0 Enregistrement d'un séminar (atelier et casse virtuelles)\r\n * @returns\r\n */\r\nexport default function SeminarActionPayment({ id, leftToPay }: SeminarActionProps) {\r\n const [open, setOpen] = useState(false);\r\n\r\n return (\r\n <>\r\n setOpen(true)}\r\n >\r\n M'INSCRIRE\r\n \r\n\r\n \r\n Atelier\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\n\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { registerWorkshop, putWaitingListWorkshop, getWorkshopList } from 'redux/slices/workshop';\r\nimport SeminarActionRegister, { SeminarActionType } from '../seminar/SeminarActionRegister';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport { ModuleType } from '../../../@types/contract';\r\nimport ModuleNotAuthorized from 'components/ModuleNotAuthorized';\r\n\r\nexport type SeminarActionProps = {\r\n disabled: boolean;\r\n onClose: () => void;\r\n type: SeminarActionType;\r\n id: number;\r\n};\r\n\r\n/**\r\n *\r\n * @param param0 Enregistrement d'un atelier\r\n * @returns\r\n */\r\nexport default function WorkshopRegister({ id, type, disabled, onClose }: SeminarActionProps) {\r\n const dispatch = useDispatch();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { isLoading, error, isFull } = useSelector((state: RootState) => state.workshop);\r\n const { authorizedModule } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.WorkshopUpdate]\r\n });\r\n\r\n const handleClick = () => {\r\n isFull\r\n ? dispatch(\r\n putWaitingListWorkshop(id)(() => {\r\n enqueueSnackbar(\"Inscription sur liste d'attente effectuée\", { variant: 'success' });\r\n })\r\n )\r\n : dispatch(\r\n registerWorkshop(id)(() => {\r\n enqueueSnackbar('Inscription effectuée', { variant: 'success' });\r\n dispatch(getWorkshopList());\r\n })\r\n );\r\n };\r\n\r\n if (!authorizedModule) return ;\r\n\r\n return (\r\n <>\r\n console.log('')}\r\n id={id}\r\n onConfirm={handleClick}\r\n error={error}\r\n isLoading={isLoading}\r\n title=\"Atelier\"\r\n />\r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\n\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { registerVirtualClass } from 'redux/slices/virtualClass';\r\nimport SeminarActionRegister, { SeminarActionType } from '../seminar/SeminarActionRegister';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport { ModuleType } from '../../../@types/contract';\r\nimport ModuleNotAuthorized from 'components/ModuleNotAuthorized';\r\n\r\nexport type SeminarActionProps = {\r\n disabled: boolean;\r\n onClose: () => void;\r\n type: SeminarActionType;\r\n id: number;\r\n};\r\n\r\n/**\r\n *\r\n * @param param0 Enregistrement d'un séminar (atelier et casse virtuelles)\r\n * @returns\r\n */\r\nexport default function VirtualClassRegister({ id, type, disabled, onClose }: SeminarActionProps) {\r\n const dispatch = useDispatch();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { isLoading, isRequired, error, virtualClass } = useSelector(\r\n (state: RootState) => state.virtualClass\r\n );\r\n const { authorizedModule } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.VirtualClassUpdate]\r\n });\r\n\r\n const handleClick = () => {\r\n dispatch(\r\n registerVirtualClass(id)(() => {\r\n enqueueSnackbar('Inscription effectuée', { variant: 'success' });\r\n })\r\n ); //.then(() => setOpen(false));\r\n };\r\n\r\n if (!authorizedModule) return ;\r\n\r\n return (\r\n <>\r\n console.log('')}\r\n id={id}\r\n onConfirm={handleClick}\r\n error={error}\r\n isLoading={isLoading}\r\n title=\"Classe virtuelle\"\r\n />\r\n \r\n );\r\n}\r\n","import { useState } from 'react';\r\n//hool\r\nimport useAuth from 'hooks/useAuth';\r\n//redux\r\nimport { RootState, useDispatch } from 'redux/store';\r\nimport { getReplayVirtualClass } from 'redux/slices/virtualClass';\r\n\r\n//type\r\n\r\nimport { Button, Dialog, DialogActions, DialogContent } from '@mui/material';\r\nimport { useSelector } from 'react-redux';\r\nimport { addSurvey, setLastSurvey } from 'redux/slices/survey';\r\nimport { Survey } from '../../../@types/contract';\r\nimport { useTrackerActivityEvents } from 'hooks/useTackerActivityEvents';\r\nimport { DialogTitleWithClose } from 'components/DialogTitleWithClose';\r\nimport { Box } from '@mui/system';\r\nimport CardMediaVideoAudio from 'components/CardMediaVideo';\r\n\r\n/**\r\n * Acces au replay de la classe\r\n * Maj dans la liste des classes virtuelles (viewReplay)\r\n * Activer le questionnaire\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function VirtualClassReplayVideo() {\r\n const { student, isReadOnly } = useAuth();\r\n const { moveInactityTime } = useTrackerActivityEvents();\r\n const dispatch = useDispatch();\r\n const { virtualClass } = useSelector((state: RootState) => state.virtualClass);\r\n const [open, setOpen] = useState(false);\r\n\r\n const logReplay = async () => {\r\n dispatch(\r\n getReplayVirtualClass({\r\n lastName: student?.lastName || '',\r\n firstName: student?.firstName || '',\r\n email: student?.email || '',\r\n playbackId: '',\r\n activityId: 'videoMedias',\r\n id: virtualClass?.id!\r\n })((url: string) => {\r\n moveInactityTime(virtualClass?.id.toString() || '');\r\n })\r\n );\r\n };\r\n\r\n const loadSurvey = () => {\r\n if (virtualClass?.viewReplayCount === 0 && !virtualClass?.isSurvey) {\r\n const survey = {\r\n keyApp: 'ClaVir',\r\n keyId: virtualClass?.id.toString(),\r\n id: 433,\r\n url: '',\r\n label: '',\r\n created: '',\r\n observation: '',\r\n mandatory: false\r\n } as Survey;\r\n\r\n dispatch(addSurvey(survey));\r\n\r\n dispatch(setLastSurvey(survey));\r\n }\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n loadSurvey();\r\n };\r\n\r\n const url = virtualClass?.medias.filter((media: any) => media.typFicMed === 30)[0].url || '';\r\n\r\n if (url === '') return <>;\r\n\r\n const handleVideo = () => {\r\n setOpen(true);\r\n if (!isReadOnly) logReplay();\r\n };\r\n\r\n return (\r\n <>\r\n \r\n VOIR LE REPLAY\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { CardMedia } from '@mui/material';\r\n\r\n//type\r\nimport { Playback, VirtualClassRegisteredResult } from '../../../@types/virtualClass';\r\nimport { SeminarLeftToPay, SeminarStatus, SeminarType } from '../../../@types/seminar';\r\nimport { MediaFileInfo } from '../../../@types/media';\r\n//composant\r\nimport SeminarActionRegister, { SeminarActionType } from './SeminarActionRegister';\r\nimport SeminarActionCancel from './SeminarActionCancel';\r\nimport VirtualClassReplay from '../virtualClass/VirtualClassReplay';\r\nimport SeminarActionPayment from './SeminarActionPayment';\r\nimport WorkshopPaymentForm from '../workshop/WorkshopPaymentForm';\r\nimport WorkshopRegister from '../workshop/WorkshopRegister';\r\nimport VirtualClassRegister from '../virtualClass/VirtualClassRegister';\r\nimport CardMediaVideoAudio from 'components/CardMediaVideo';\r\nimport { StudyPlanItemType } from '../../../@types/pedagogy';\r\nimport VirtualClassReplayVideo from '../virtualClass/VirtualClassReplayVideo';\r\n\r\ntype SeminarButtonRenderProps = {\r\n isFull: boolean;\r\n status: SeminarStatus;\r\n registered: boolean;\r\n isReplay: boolean;\r\n isLoading: boolean;\r\n waitingList: boolean;\r\n replay: null | Playback;\r\n medias: MediaFileInfo[];\r\n isStarted: boolean;\r\n id: number;\r\n type: SeminarType;\r\n leftToPay: null | SeminarLeftToPay;\r\n disabled: boolean;\r\n};\r\n\r\n/**\r\n * Rendu des boutons\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function SeminarButtonRender({\r\n status,\r\n isFull,\r\n waitingList,\r\n registered,\r\n isReplay,\r\n replay,\r\n medias,\r\n isStarted,\r\n id,\r\n isLoading,\r\n type,\r\n leftToPay,\r\n disabled\r\n}: SeminarButtonRenderProps) {\r\n if (status === SeminarStatus.Open) {\r\n if (isFull)\r\n if (!waitingList && !registered)\r\n return (\r\n <>\r\n {type === SeminarType.Workshop ? (\r\n console.log('')}\r\n id={id}\r\n />\r\n ) : (\r\n console.log('')}\r\n id={id}\r\n />\r\n )}\r\n \r\n );\r\n\r\n if (registered && type === SeminarType.VirtualClass)\r\n return console.log('')} />;\r\n else if (!waitingList && !registered) {\r\n if (leftToPay == null || leftToPay?.accountCredit === 0)\r\n return (\r\n <>\r\n {type === SeminarType.Workshop ? (\r\n console.log('')}\r\n id={id}\r\n />\r\n ) : (\r\n console.log('')}\r\n id={id}\r\n />\r\n )}\r\n \r\n );\r\n else return ;\r\n }\r\n } else if (type === SeminarType.VirtualClass) {\r\n if (isReplay) {\r\n if (replay == null && medias != null && medias.some((media: any) => media.typFicMed === 30)) {\r\n return ;\r\n } else {\r\n return ;\r\n }\r\n }\r\n }\r\n return <>;\r\n}\r\n","import React, { useEffect } from 'react';\r\n// material\r\nimport { List, Box, DialogActions, Alert, CardMedia, Typography, Stack, Card } from '@mui/material';\r\nimport {\r\n VerifiedUser,\r\n Notes,\r\n PersonalVideoOutlined,\r\n CheckCircleSharp,\r\n Done,\r\n CalendarToday\r\n} from '@mui/icons-material';\r\n\r\n//type\r\nimport { SeminarStatus, SeminarType } from '../../../@types/seminar';\r\nimport { UserType } from '../../../@types/common';\r\nimport { VirtualClass } from '../../../@types/virtualClass';\r\nimport { MeetingStatus } from '../../../@types/meeting';\r\n\r\n//Composants\r\nimport {\r\n RowItemDisplay,\r\n RowItemDisplayAlert,\r\n RowItemDisplayAnimateur,\r\n RowItemDisplayDateTime,\r\n RowItemDisplayMedias,\r\n RowItemDisplayTitle\r\n} from 'components/RowListItem';\r\nimport { MeetingTimeCount } from '../meeting/MeetingTimeCount';\r\nimport { VirtualClassAccess } from './VirtualClassAccess';\r\nimport Markdown from 'components/Markdown';\r\nimport { SeminarStatusDisplay } from '../seminar/SeminarStatusDisplay';\r\nimport SeminarErrorMessage from '../seminar/SeminarErrorMessage';\r\nimport SeminarButtonRender from '../seminar/SeminarButtons';\r\nimport Label from 'components/Label';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport MeetingButtonVisio from '../meeting/MeetingButtonVisio';\r\n\r\nexport type VirtualClassFormProps = {\r\n virtualClass: VirtualClass;\r\n onClose: VoidFunction;\r\n error: any;\r\n isFull: boolean;\r\n isLoading: boolean;\r\n};\r\n\r\nexport default function VirtualClassForm({\r\n virtualClass,\r\n onClose,\r\n error,\r\n isFull,\r\n isLoading\r\n}: VirtualClassFormProps) {\r\n return (\r\n \r\n \r\n {virtualClass.title}}\r\n icon={}\r\n >\r\n \r\n \r\n\r\n {virtualClass.meeting?.status === MeetingStatus.Present &&\r\n virtualClass.state === SeminarStatus.Open ? (\r\n \r\n {' '}\r\n \r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n\r\n } title=\"Résumé\">\r\n \r\n \r\n\r\n } title=\"Descriptif\">\r\n \r\n \r\n\r\n {virtualClass.supports != null && virtualClass.supports.length > 0 && (\r\n }\r\n title=\"Prérequis pour participer à la session :\"\r\n >\r\n \r\n Elève en début ou en cours de formation ayant pris connaissance des supports prérequis\r\n suivants :\r\n \r\n {virtualClass.supports.map((w) => {\r\n return (\r\n \r\n \r\n {w.isRead ? : }\r\n \r\n );\r\n })}\r\n \r\n )}\r\n {virtualClass && }\r\n {virtualClass.state === SeminarStatus.Open && (\r\n <>\r\n {isFull && !virtualClass.registered && (\r\n \r\n \r\n {!virtualClass.waitingList && (\r\n \r\n La classe virtuelle est complète.\r\n
\r\n Vous avez la possibilité de vous inscrire sur la liste d'attente.\r\n
\r\n )}\r\n \r\n Dès qu'une place se libère, vous serez informé par mail.\r\n
\r\n C'est à ce moment précis que vous pourrez vous inscrire en passant par votre\r\n Espace Numérique de Travail.{' '}\r\n
\r\n \r\n
\r\n )}\r\n\r\n {virtualClass.registered && (\r\n \r\n \r\n Félicitations, votre inscription à la classe virtuelle est validée !\r\n \r\n\r\n \r\n Nous comptons sur votre présence. Si vous avez un empêchement, merci d'annuler\r\n votre présence quatre jours avant au plus tard via votre Espace Numérique de\r\n Travail.\r\n
\r\n
\r\n Attention, une classe virtuelle peut être annulée faute de participants, le nombre\r\n d'inscrits minimum étant de 10.\r\n
\r\n
\r\n )}\r\n\r\n {virtualClass.state === SeminarStatus.Open && virtualClass.waitingList && (\r\n \r\n \r\n Félicitations, vous êtes sur liste d'attente !\r\n \r\n \r\n )}\r\n \r\n )}\r\n
\r\n\r\n {error && }\r\n \r\n \r\n {(time: string, isActivate: boolean, isStarted: boolean, isDisabledRegister: boolean) => (\r\n \r\n )}\r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nconst MediasView = ({ virtualClass }: { virtualClass: VirtualClass }) => {\r\n const { medias, isReplay, replay } = virtualClass;\r\n\r\n if (medias === null || medias.length === 0) return <>;\r\n\r\n let currentMedias = medias;\r\n\r\n // ne pas afficher de media video si nous sommes en mode replay\r\n if (isReplay && replay === null)\r\n currentMedias = currentMedias.filter((media: any) => media.typFicMed !== 30);\r\n\r\n return currentMedias.length > 0 ? : <>;\r\n};\r\n","import { useEffect, useState } from 'react';\r\nimport { Close } from '@mui/icons-material';\r\nimport { useNavigate } from 'react-router';\r\n\r\n// material\r\nimport { Stack, Drawer, Tooltip, Divider, Container, Typography } from '@mui/material';\r\nimport { MIconButton } from 'components/@material-extend';\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { closeModal, getVirtualClass } from 'redux/slices/virtualClass';\r\n\r\n//type\r\nimport { FavoriteType } from '../../../@types/favorite';\r\nimport { ModuleType } from '../../../@types/contract';\r\nimport { SeminarErrorResult } from '../../../@types/seminar';\r\n\r\n// components\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\nimport VirtualClassForm from 'components/_dashboard/virtualClass/VirtualClassForm';\r\nimport { Box } from '@mui/system';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport ModuleNotAuthorized from 'components/ModuleNotAuthorized';\r\nimport FavoriteToggleAction from 'components/_dashboard/favorite/FavoriteAction';\r\n\r\nexport default function VirtualClassDetails() {\r\n const navigate = useNavigate();\r\n const { authorizedModule } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.VirtualClassView]\r\n });\r\n const dispatch = useDispatch();\r\n\r\n const { virtualClass, isFull, error, isLoading, virtualClassId, isOpenModal } = useSelector(\r\n (state: RootState) => state.virtualClass\r\n );\r\n\r\n useEffect(() => {\r\n if (virtualClassId === 0 || !authorizedModule) return;\r\n dispatch(getVirtualClass(virtualClassId));\r\n }, [dispatch, virtualClassId]);\r\n\r\n useEffect(() => {\r\n if (!error) return;\r\n\r\n if (\r\n [SeminarErrorResult.Error, SeminarErrorResult.NotFound].includes(error.result) &&\r\n !virtualClass &&\r\n virtualClassId > 0\r\n ) {\r\n dispatch(closeModal());\r\n navigate('/404');\r\n }\r\n }, [error]);\r\n\r\n const handClose = () => {\r\n dispatch(closeModal());\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Classe virtuelle\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {!authorizedModule ? (\r\n \r\n ) : (\r\n <>\r\n {!virtualClass ? (\r\n \r\n ) : (\r\n console.log('')}\r\n isFull={isFull}\r\n error={error}\r\n isLoading={isLoading}\r\n />\r\n )}\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { CardHeader, Card, Typography, CardContent } from '@mui/material';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { styled } from '@mui/styles';\r\nimport { Box } from '@mui/system';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\nimport { getAccount, getLeftToPay } from 'utils/helper';\r\nimport { Seminar, SeminarLeftToPay } from '../../../@types/seminar';\r\n\r\nexport type WorkshopCreditViewProps = {\r\n workshop: Seminar;\r\n creditBalance: number;\r\n leftToPay: SeminarLeftToPay;\r\n};\r\n\r\nexport default function WorkshopCreditView({\r\n workshop,\r\n creditBalance,\r\n leftToPay\r\n}: WorkshopCreditViewProps) {\r\n const theme = useTheme();\r\n const { getFormatCurrency } = useAuth();\r\n\r\n return (\r\n \r\n \r\n \r\n Inscription à l'atelier\r\n \r\n\r\n \r\n \r\n Coût de l'atelier :{' '}\r\n \r\n {getFormatCurrency(workshop.price)} - soit {workshop.credit} point(s)\r\n \r\n \r\n \r\n Votre solde actuel de points atelier : {creditBalance} point(s)\r\n \r\n \r\n Points minimum pour s'inscrire : {getAccount(workshop.credit)} point(s)\r\n \r\n\r\n \r\n Points restant à verser : {leftToPay.accountCredit} point(s)
\r\n
\r\n
\r\n \r\n {workshop.countMaxPlaces > workshop.countRegistered && (\r\n <>\r\n {leftToPay.accountCredit === 0 ? (\r\n \r\n Vous avez suffisamment de points pour vous inscrire.\r\n \r\n ) : (\r\n \r\n \r\n Il vous manque {leftToPay.accountCredit} points pour vous inscrire. Veuillez\r\n créditer votre compte points.\r\n \r\n \r\n )}\r\n \r\n )}\r\n\r\n \r\n Dans tous les cas, le transport, l’hébergement et le(s) repas restent à la charge de\r\n l’élève.\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\n// material\r\nimport {\r\n List,\r\n Box,\r\n DialogActions,\r\n Alert,\r\n CardMedia,\r\n Dialog,\r\n DialogTitle,\r\n DialogContent,\r\n Button,\r\n Typography,\r\n FormControl,\r\n FormControlLabel,\r\n Checkbox,\r\n Card,\r\n Stack\r\n} from '@mui/material';\r\nimport {\r\n VerifiedUser,\r\n Notes,\r\n PersonalVideoOutlined,\r\n NotesOutlined,\r\n Person,\r\n EventNote,\r\n SquareFoot,\r\n BubbleChart,\r\n ConfirmationNumber\r\n} from '@mui/icons-material';\r\n//hook\r\nimport useAuth from 'hooks/useAuth';\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\n\r\n//type\r\nimport { Seminar, SeminarInfo, SeminarStatus, SeminarType } from '../../../@types/seminar';\r\nimport { Student } from '../../../@types/account';\r\n\r\n//Composants\r\nimport {\r\n RowItemDisplay,\r\n RowItemDisplayDateTime,\r\n RowItemDisplayLocation,\r\n RowItemDisplayTeacher,\r\n RowItemDisplayTitle,\r\n RowItemDisplayPayment,\r\n RowItemDisplayAlert\r\n} from 'components/RowListItem';\r\nimport { MeetingTimeCount } from '../meeting/MeetingTimeCount';\r\nimport Markdown from 'components/Markdown';\r\nimport { SeminarStatusDisplay } from '../seminar/SeminarStatusDisplay';\r\nimport WorkshopCreditView from './WorkshopCreditView';\r\nimport SeminarErrorMessage from '../seminar/SeminarErrorMessage';\r\nimport { fDate, isAfterDate } from 'utils/formatTime';\r\nimport SeminarButtonRender from '../seminar/SeminarButtons';\r\nimport { getLeftToPay } from 'utils/helper';\r\nimport { phoneFormat } from 'utils/formatPhone';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport Label from 'components/Label';\r\nimport WorkshopSummons from './WorkshopSummons';\r\nimport { ConditionsGeneralesCard } from './WorkshopPaymentForm';\r\n\r\nexport type WorkShopFormProps = {\r\n workshop: Seminar;\r\n onClose: VoidFunction;\r\n error: any;\r\n isFull: boolean;\r\n isLoading: boolean;\r\n};\r\n\r\nexport default function WorkShopForm({\r\n workshop,\r\n error,\r\n isFull,\r\n isLoading,\r\n onClose\r\n}: WorkShopFormProps) {\r\n const [isChecked, setChecked] = useState(false);\r\n\r\n const { getContractCurrent, getFormatCurrency } = useAuth();\r\n\r\n const contractCurrent = getContractCurrent();\r\n const leftToPay = getLeftToPay(\r\n contractCurrent.creditBalance,\r\n workshop.credit,\r\n workshop.priceUnit\r\n );\r\n const controlCheckCGV =\r\n !workshop.registered && !workshop.waitingList && !isFull && leftToPay.credit === 0;\r\n const isRegister = isAfterDate(workshop.dateLimit, new Date());\r\n const isFinished = isAfterDate(new Date(), workshop.dateStart);\r\n\r\n return (\r\n \r\n \r\n {workshop.title}}\r\n icon={}\r\n >\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n Date limite d'inscription : {fDate(workshop.dateLimit)}\r\n \r\n {/*!isRegister && (\r\n \r\n \r\n \r\n )*/}\r\n \r\n\r\n \r\n \r\n\r\n {workshop.registered || workshop.waitingList || workshop.state != SeminarStatus.Open ? (\r\n \r\n \r\n \r\n Dans tous les cas, le transport, l’hébergement et le(s) repas restent à la charge de\r\n l’élève.\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n {contractCurrent != null && (\r\n \r\n )}\r\n \r\n )}\r\n \r\n {workshop.description && (\r\n }>\r\n \r\n \r\n )}\r\n\r\n {}\r\n\r\n {workshop.state === SeminarStatus.Open && isFull && isRegister && (\r\n \r\n \r\n {!workshop.waitingList && (\r\n \r\n L'atelier est complet.\r\n
\r\n Vous avez la possibilité de vous inscrire sur la liste d'attente.\r\n
\r\n )}\r\n \r\n Dès qu'une place se libère, vous serez informé par mail.\r\n
\r\n C'est à ce moment précis que vous pourrez vous inscrire en passant par votre Espace\r\n numérique de travail.\r\n
\r\n \r\n
\r\n )}\r\n\r\n {workshop.state === SeminarStatus.Open && controlCheckCGV && (\r\n }>\r\n \r\n setChecked(!isChecked)} />}\r\n label={}\r\n />\r\n \r\n \r\n )}\r\n {workshop.state === SeminarStatus.Open && workshop.registered && (\r\n \r\n \r\n Félicitations, votre inscription à l'atelier est validée !\r\n \r\n\r\n \r\n Nous comptons sur votre présence. En cas d'empêchement, merci de contacter votre école\r\n au {phoneFormat(contractCurrent.brand.phone, contractCurrent.brand.id)}, au minimum\r\n quatre jours avant votre atelier afin d'annuler votre présence.\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n\r\n {workshop.state === SeminarStatus.Open && workshop.waitingList && (\r\n \r\n \r\n Félicitations, vous êtes sur liste d'attente !\r\n \r\n \r\n )}\r\n
\r\n\r\n {error && }\r\n\r\n \r\n {!isFinished && (\r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n\r\ntype WorkShopDetailInfosProps = {\r\n workshop: Seminar;\r\n};\r\nfunction WorkShopDetailInfos({ workshop }: WorkShopDetailInfosProps) {\r\n const [open, setOpen] = useState(false);\r\n\r\n const info: SeminarInfo = workshop.info || {\r\n method: '',\r\n public: '',\r\n utils: '',\r\n program: '',\r\n objective: '',\r\n theme: ''\r\n };\r\n\r\n const program = info.program\r\n .replace(/(JOUR\\=false)/gim, '')\r\n .replace(/(JOUR\\=true)/gim, '')\r\n .replace(/(AM\\=false)/gim, '')\r\n .replace(/(DESCRIPTIFAM\\=)/gim, '')\r\n .replace(/(PM\\=false)/gim, '')\r\n .replace(/(AM\\=true)/gim, '')\r\n .replace(/(PM\\=true)/gim, '')\r\n .replace(/(DESCRIPTIFPM\\=)/gim, '')\r\n .replace(/(\\|)/gim, '');\r\n return (\r\n <>\r\n \r\n {info.objective && (\r\n } title=\"Objectifs Pédagogiques\">\r\n \r\n \r\n )}\r\n {info.method && (\r\n } title=\"Méthode\">\r\n \r\n \r\n )}\r\n {info.program && (\r\n } title=\"Programme\">\r\n \r\n \r\n )}\r\n {info.utils && (\r\n } title=\"Matériel nécessaire\">\r\n \r\n \r\n )}\r\n {info.public && (\r\n } title=\"Public concerné\">\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport { Close } from '@mui/icons-material';\r\n\r\n// material\r\nimport { Stack, Drawer, Tooltip, Divider, Container, Typography } from '@mui/material';\r\nimport { MIconButton } from 'components/@material-extend';\r\nimport { Box } from '@mui/system';\r\n\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { closeModal, getWorkshop } from 'redux/slices/workshop';\r\n//hook\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\n\r\n//type\r\nimport { ModuleType } from '../../../@types/contract';\r\nimport { SeminarErrorResult, SeminarType } from '../../../@types/seminar';\r\nimport { FavoriteType } from '../../../@types/favorite';\r\n\r\n// components\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\nimport WorkShopForm from 'components/_dashboard/workshop/WorkshopForm';\r\nimport SeminarErrorMessage from 'components/_dashboard/seminar/SeminarErrorMessage';\r\nimport ModuleNotAuthorized from 'components/ModuleNotAuthorized';\r\nimport FavoriteToggleAction from '../favorite/FavoriteAction';\r\nimport { useNavigate } from 'react-router';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n/**\r\n * Detail de l'atelier\r\n * Autorisation du module ici\r\n */\r\nexport default function WorkshopDetails() {\r\n const dispatch = useDispatch();\r\n const navigate = useNavigate();\r\n const { authorizedModule } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.WorkshopUpdate]\r\n });\r\n\r\n const { workshop, isFull, isLoading, error, workshopId, isOpenModal } = useSelector(\r\n (state: RootState) => state.workshop\r\n );\r\n\r\n useEffect(() => {\r\n if (workshopId === 0 || !authorizedModule) return;\r\n dispatch(getWorkshop(workshopId));\r\n }, [dispatch, workshopId]);\r\n\r\n useEffect(() => {\r\n if (!error) return;\r\n // introuvable\r\n if (\r\n [SeminarErrorResult.Error, SeminarErrorResult.NotFound].includes(error.result) &&\r\n !workshop &&\r\n workshopId > 0\r\n ) {\r\n dispatch(closeModal());\r\n navigate('/404');\r\n }\r\n }, [error]);\r\n\r\n const handleClose = () => {\r\n dispatch(closeModal());\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Atelier\r\n \r\n \r\n \r\n \r\n {workshop && (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n\r\n {!authorizedModule ? (\r\n \r\n ) : (\r\n \r\n {error ? (\r\n \r\n ) : (\r\n <>\r\n {!workshop ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import useAuth from 'hooks/useAuth';\r\nimport { useEffect, useState } from 'react';\r\nimport { Helmet } from 'react-helmet-async';\r\nimport { dispatch } from 'redux/store';\r\nimport axiosInstance from 'utils/axios';\r\nimport { fDateFromNovadis } from 'utils/formatTime';\r\n\r\ntype ChatBotProps = {};\r\n\r\nexport default function ChatBot({}: ChatBotProps) {\r\n const { getContractCurrent, student, getFormatCurrency } = useAuth();\r\n const [url, setUrl] = useState('');\r\n\r\n const enseignes = [\r\n { value: 'BE', space: 'Be Académie' },\r\n { value: 'SY', space: 'CFA' },\r\n { value: 'DC', space: 'Déficompta' },\r\n { value: 'MC', space: 'ESECAD' },\r\n { value: 'EC', space: 'Ecole Chez Soi' },\r\n { value: 'EP', space: 'Ecole des Pros' },\r\n { value: 'ED', space: 'Educatel' },\r\n { value: 'EK', space: 'Eric Kayser School' },\r\n { value: 'FS', space: 'Fashion Skills' },\r\n { value: 'IF', space: 'Ifsa Nature' },\r\n { value: 'KA', space: 'Karis' },\r\n { value: 'LI', space: 'Lignes & formations' },\r\n { value: 'MI', space: 'Minerve' },\r\n { value: 'NA', space: 'Ifsa Nature' }, //ancien espace : Natura-Dis\r\n { value: 'SE', space: 'Servais' },\r\n { value: 'XX', space: 'SkillAndYou' }\r\n ];\r\n\r\n function updateConfig() {\r\n (window as any).dyduAfterLoad = function () {\r\n const dydu = (window as any)?.dydu;\r\n\r\n if (dydu) {\r\n //Paramétrage\r\n const contract = getContractCurrent();\r\n const enseigne = contract?.brand?.id;\r\n const valueEnseigne = enseigne ? enseignes.find((ens) => ens?.value === enseigne) : null;\r\n const space = valueEnseigne ? valueEnseigne.space : '';\r\n\r\n //Affichage/masquage\r\n if (valueEnseigne) {\r\n (window as any).dydu.ui?.toggle(1);\r\n } else {\r\n (window as any).dydu.ui?.toggle(0);\r\n }\r\n\r\n //Enseigne\r\n if (space && space !== '') {\r\n (window as any).dydu.space.set(space);\r\n } else {\r\n (window as any).dydu.space.set('Défaut');\r\n }\r\n\r\n //Elève\r\n if (dydu.chat && dydu.chat.setRegisterContext) {\r\n dydu.chat.setRegisterContext('Code_Formation', contract?.training?.id);\r\n dydu.chat.setRegisterContext('Date_Inscription', contract?.registrationDate);\r\n dydu.chat.setRegisterContext('Ens', contract?.brand?.id);\r\n dydu.chat.setRegisterContext('Id_Contrat', contract?.id);\r\n dydu.chat.setRegisterContext('Nom_Enseigne', contract?.brand?.label);\r\n dydu.chat.setRegisterContext('Nom', student?.lastName);\r\n dydu.chat.setRegisterContext('Nom_Formation', contract?.training?.label);\r\n dydu.chat.setRegisterContext('Prenom', student?.firstName);\r\n\r\n //Recouvrement\r\n dydu.chat.setRegisterContext(\r\n 'En_Recouvrement',\r\n contract?.debtRecovery != null ? 'Oui' : 'Non'\r\n );\r\n\r\n //Solde\r\n if (contract?.debitAmount < 0) {\r\n dydu.chat.setRegisterContext('Solde_Debiteur', getFormatCurrency(contract.debitAmount));\r\n }\r\n\r\n //Prochain paiement\r\n //Prendre la facture VPC(contrat initial)\r\n if (contract?.bills?.length > 0) {\r\n const vpcBills = contract.bills.filter((bill) => bill.accountingJournal === 'VPC');\r\n\r\n const invoice = vpcBills?.length > 0 ? vpcBills[0] : null;\r\n if (\r\n invoice &&\r\n invoice.scheduleNext?.amount > 0 &&\r\n invoice.scheduleNext?.paymentChoice !== 'PA'\r\n ) {\r\n dydu.chat.setRegisterContext(\r\n 'Date_Prochain_Paiement',\r\n fDateFromNovadis(+invoice?.scheduleNext.date)\r\n );\r\n dydu.chat.setRegisterContext(\r\n 'Montant_Prochain_Paiement',\r\n getFormatCurrency(invoice?.scheduleNext.amount)\r\n );\r\n }\r\n }\r\n }\r\n const teaser = document.getElementById('dydu-teaser');\r\n if (teaser) {\r\n teaser.style.bottom = '10px';\r\n teaser.style.right = '20px';\r\n }\r\n }\r\n };\r\n }\r\n\r\n //Blindage : désactive le visuel et le script du ChatBot\r\n function hideChatBot() {\r\n //Suppression du script\r\n const chatBotScript = document.getElementById('chatBox_script');\r\n if (chatBotScript) {\r\n chatBotScript.remove();\r\n }\r\n //Suppression de Skilly\r\n const chatBot = document.getElementById('dydu-root');\r\n if (chatBot) {\r\n chatBot.remove();\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n dispatch(getServices());\r\n return () => {\r\n //Méthode exécutée à la sortie de la vue\r\n hideChatBot();\r\n };\r\n }, []);\r\n\r\n const getServices = () => {\r\n return async () => {\r\n try {\r\n const response = await axiosInstance.get(`/api/settings/chatbot`);\r\n if (response) setUrl(response.data);\r\n } catch (error) {}\r\n };\r\n };\r\n\r\n useEffect(() => {\r\n updateConfig();\r\n }, [getContractCurrent, student]);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n/*\r\npre :\r\nprod : \r\n*/\r\n","import {\r\n Button,\r\n Card,\r\n CardHeader,\r\n ClickAwayListener,\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n IconButton,\r\n Menu,\r\n Popper,\r\n Portal,\r\n Typography\r\n} from '@mui/material';\r\n\r\nimport { Box } from '@mui/system';\r\n\r\nimport useHubConnection from 'hooks/useHubConnection';\r\nimport { useEffect, useState } from 'react';\r\nimport { SurveyStepper } from '../survey/SurveyStepper';\r\nimport { DialogTitleWithClose } from 'components/DialogTitleWithClose';\r\nimport { fDate } from 'utils/formatTime';\r\nimport { styled } from '@mui/material/styles';\r\nimport CloseIcon from '@mui/icons-material/Close';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport { Survey } from '../../../@types/contract';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\n//******************************** */\r\nconst CardStyle = styled(Card)(({ theme }) => ({\r\n overflow: 'hidden',\r\n position: 'absolute',\r\n right: 10,\r\n top: 100,\r\n zIndex: 50,\r\n boxShadow: theme.customShadows.z16,\r\n borderRadius: theme.shape.borderRadiusMd,\r\n border: '5px solid #d7d7d7',\r\n maxWidth: 400\r\n}));\r\n\r\n/**\r\n * Suite à changment d'avenant ou demande de reconnection\r\n */\r\nexport default function WorkflowReconnecting() {\r\n const { connection } = useHubConnection(); //SignalR;\r\n const { logout } = useAuth();\r\n const [open, setOpen] = useState(false);\r\n\r\n useEffect(() => {\r\n connection?.on('workflowReconnecting', (value: string) => {\r\n setOpen(true);\r\n });\r\n\r\n return () => {\r\n connection?.off('workflowReconnecting');\r\n };\r\n }, []);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleReconnecting = () => {\r\n logout();\r\n };\r\n\r\n return (\r\n \r\n Sécurité\r\n\r\n \r\n \r\n \r\n Pour des raisons de sécurité, nous vous demandons de vous authentifier périodiquement.\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import {\r\n Button,\r\n CardActions,\r\n Checkbox,\r\n Collapse,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n Divider,\r\n FormControl,\r\n FormControlLabel,\r\n Typography\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { ModuleType } from '../../@types/contract';\r\nimport { DialogTitleWithClose } from 'components/DialogTitleWithClose';\r\nimport useAuth from 'hooks/useAuth';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport { useEffect, useState } from 'react';\r\nimport { dispatch } from 'redux/store';\r\nimport MessagePopover from 'components/_dashboard/message/MessagePopover';\r\nimport MessageForm from 'components/_dashboard/message/MessageForm';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport CardMediaVideoAudio from 'components/CardMediaVideo';\r\n\r\n/**\r\n * Popup de bienvenue\r\n */\r\nexport default function WelcomeCallPopup() {\r\n const { updateConfig, isReadOnly, student } = useAuth();\r\n const { authorizedModule } = useModuleAuthorize({ accessibleModules: [ModuleType.WelcomeCall] });\r\n const [open, setOpen] = useState(false);\r\n\r\n const [notDisplayWelcomeCall, setNotDisplayWelcomeCall] = useState(false);\r\n const [openQuestion, setOpenQuestion] = useState(false);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n if (notDisplayWelcomeCall)\r\n dispatch(updateConfig({ ...student?.config, notDisplayWelcomeCall: true }));\r\n };\r\n\r\n const handleChange = (event: any) => {\r\n setNotDisplayWelcomeCall(event.target.checked);\r\n };\r\n\r\n useEffect(() => {\r\n const timeoutOut = setTimeout(function () {\r\n setOpen(authorizedModule);\r\n }, 1000);\r\n\r\n return () => {\r\n clearTimeout(timeoutOut);\r\n };\r\n }, []);\r\n\r\n if (!authorizedModule || isReadOnly) return <>;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label={\r\n \r\n J’ai vu la vidéo, je l’ai comprise et je ne souhaite pas la revoir lors de mes\r\n prochaines connexions.\r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setOpenQuestion(false)}\r\n params={{\r\n subjectId: 'DIVERS',\r\n serviceId: 'PED',\r\n pro: '',\r\n reference: '',\r\n services: []\r\n }}\r\n />\r\n \r\n \r\n );\r\n}\r\n","import { Button, Typography } from '@mui/material';\r\nimport { Dialog, DialogContent } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { ModuleType } from '../../../../@types/contract';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport useAttendanceTracking from 'hooks/useAttendanceTracking';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\n\r\nimport CountdownTimer from '../CountdownTimer';\r\n\r\nexport default function AttendanceTrackingPopup() {\r\n const { authorizedModule } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.AttendanceTracking]\r\n });\r\n\r\n if (!authorizedModule) return <>;\r\n\r\n return ;\r\n}\r\n\r\n/**\r\n * Component de suivi de présence\r\n * du lundi au vendredi de 9h à 17h\r\n * toutes les heures on demande de confirmer sa présence\r\n * laisse une trace ou chargement du composant et à sa fermeture\r\n */\r\nfunction AttendanceTracking() {\r\n const { open, onClose, attendanceTracking, onHere, getGenreMasculin } = useAttendanceTracking({\r\n delaySecond: 300\r\n });\r\n\r\n const hour = new Date().getHours();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Signalez votre présence\r\n \r\n \r\n Merci de signaler votre présence dans un délai de 5 minutes en\r\n cliquant sur le bouton ci-dessous.\r\n \r\n \r\n Attention, une fois le compte à rebours terminé, vous serez noté\r\n {getGenreMasculin() ? '' : 'e'} absent{getGenreMasculin() ? '' : 'e'} sur cette heure\r\n si vous n’avez pas signalé votre présence.\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport useAuth from './useAuth';\r\nimport useHubConnection, { TypeLog } from './useHubConnection';\r\nimport useLocalStorage from './useLocalStorage';\r\n\r\ntype useAttendanceTrackingProps = {\r\n delaySecond: number;\r\n};\r\n\r\n/**\r\n * Component de suivi de présence\r\n * du lundi au vendredi de 9h à 17h\r\n * toutes les heures on demande de confirmer sa présence\r\n * laisse une trace ou chargement du composant et à sa fermeture\r\n */\r\nexport default function useAttendanceTracking({ delaySecond }: useAttendanceTrackingProps) {\r\n const [open, setOpen] = useState(false);\r\n const { onAttendanceTracking } = useHubConnection();\r\n const { getGenreMasculin, getContractCurrent, isReadOnly } = useAuth();\r\n const [attendanceTracking, setAttendanceTracking] = useLocalStorage<{\r\n start: number | null;\r\n end: number | null;\r\n relance: number | null;\r\n }>('attendanceTracking', { start: null, end: null, relance: null });\r\n\r\n useEffect(() => {\r\n if (isReadOnly) return;\r\n\r\n //déclenchement toutes les minutes\r\n const interval = setInterval(function () {\r\n const dayOfWeek: number = new Date().getDay();\r\n const hours = new Date().getHours();\r\n const minutes = new Date().getMinutes();\r\n\r\n // si la date mémorisée est postérieure à la date actuelle on relance le controle\r\n if (attendanceTracking.relance && new Date(attendanceTracking.relance) > new Date()) {\r\n return;\r\n }\r\n\r\n if (\r\n [1, 2, 3, 4, 5].includes(dayOfWeek) &&\r\n [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20].includes(hours) &&\r\n [0, 1, 2, 3, 4].includes(minutes)\r\n ) {\r\n //mémoriser la date\r\n let dateOff = new Date();\r\n\r\n // on ajoute le delay souhaité pour ne plus afficher\r\n dateOff.setTime(new Date().getTime() + delaySecond * 1000);\r\n\r\n // save en localStorage\r\n setAttendanceTracking({\r\n start: new Date().getTime(),\r\n end: dateOff.getTime(),\r\n relance: dateOff.getTime()\r\n });\r\n //aficher la popup\r\n setOpen(true);\r\n }\r\n }, 1000 * 10);\r\n\r\n //supprimer les abonnements\r\n return () => {\r\n clearInterval(interval);\r\n };\r\n }, [attendanceTracking]);\r\n\r\n /**\r\n * Tag popup de présence loaded\r\n */\r\n useEffect(() => {\r\n if (open)\r\n onAttendanceTracking(\r\n TypeLog.AttendanceTrackingLoaded,\r\n 'Popup présentée',\r\n getContractCurrent().idConnection\r\n );\r\n }, [open]);\r\n\r\n useEffect(() => {\r\n if (attendanceTracking.end && new Date(attendanceTracking.end) > new Date()) {\r\n setOpen(true);\r\n }\r\n }, []);\r\n\r\n /**\r\n * Présent sur click\r\n */\r\n const onHere = () => {\r\n onAttendanceTracking(\r\n TypeLog.AttendanceTrackingValidated,\r\n 'Popup présentée',\r\n getContractCurrent().idConnection\r\n );\r\n setAttendanceTracking({ ...attendanceTracking, end: null, start: null });\r\n setOpen(false);\r\n };\r\n\r\n const onClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n return {\r\n open,\r\n onClose,\r\n attendanceTracking,\r\n getGenreMasculin,\r\n onHere\r\n };\r\n}\r\n","import useHubConnection from 'hooks/useHubConnection';\r\nimport { HubConnectionState } from '@microsoft/signalr';\r\nimport { useEffect, useState } from 'react';\r\nimport { Alert, Button, Snackbar, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\nexport const HubMessageState = () => {\r\n const { connection, connect, error } = useHubConnection();\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleConnection = () => {\r\n if (connect) connect();\r\n setOpen(false);\r\n };\r\n\r\n useEffect(() => {\r\n if (HubConnectionState.Disconnected) setOpen(true);\r\n }, [connection?.state]);\r\n\r\n if (error && connection?.state === HubConnectionState.Disconnected) {\r\n return (\r\n \r\n \r\n Reconnexion avec le serveur impossible\r\n \r\n \r\n );\r\n }\r\n\r\n switch (connection?.state) {\r\n case HubConnectionState.Disconnected:\r\n return (\r\n \r\n \r\n Se reconnecter\r\n \r\n }\r\n >\r\n Vous avez été déconnecté.\r\n \r\n En poursuivant votre navigation, vous données ne seront pas sauvegardées.\r\n \r\n \r\n \r\n );\r\n\r\n case HubConnectionState.Reconnecting:\r\n return (\r\n \r\n \r\n Reconnexion avec le serveur en cours\r\n \r\n \r\n );\r\n\r\n default:\r\n return <>;\r\n }\r\n};\r\n","import { Alert } from '@mui/material';\r\nimport { Button, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport useVersion from 'hooks/useWorkflowVersion';\r\n\r\nexport default function WorkflowVersion() {\r\n const { isChangeVersion } = useVersion();\r\n\r\n const reloadApplication = () => {\r\n window.location.reload();\r\n };\r\n\r\n return (\r\n <>\r\n {isChangeVersion && (\r\n \r\n }\r\n >\r\n Mise à jour disponible\r\n \r\n Pour profiter de nouvelles fonctionnalités, mettez à jour votre ENT.\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n/*\r\n \r\n Mettre à jour\r\n \r\n }\r\n >\r\n Une mise à jour de votre Espace Numérique de Travail (ENT) est requise pour poursuivre\r\n votre navigation.\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n Une mise à jour de votre Espace Numérique de Travail (ENT) est requise pour poursuivre\r\n votre navigation.\r\n \r\n \r\n Veuillez mettre à jour la nouvelle version de votre ENT.\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n*/\r\n","import { useEffect, useState } from 'react';\r\nimport useHubConnection from './useHubConnection';\r\n\r\nexport default function useWorkflowVersion() {\r\n const currentVersion = parseInt(process.env.REACT_APP_ENT_VERSION || '0');\r\n const [isChangeVersion, setIsChangeVersion] = useState(false);\r\n const { connection } = useHubConnection();\r\n\r\n //Abonnement aux events\r\n useEffect(() => {\r\n connection?.on('workflowVersion', (version: number) => {\r\n if (version > currentVersion) setIsChangeVersion(true);\r\n });\r\n\r\n return () => {\r\n connection?.off('workflowVersion');\r\n };\r\n }, [connection]);\r\n\r\n useEffect(() => {\r\n console.log(`Version de l'application : ${process.env.REACT_APP_ENT_VERSION}`);\r\n }, []);\r\n\r\n return {\r\n isChangeVersion\r\n };\r\n}\r\n","import { Icon } from '@iconify/react';\r\nimport { Card, Typography, MobileStepper, Button, CardHeader, IconButton } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport MIconButton from 'components/MIconButton';\r\nimport { useSurvey } from 'hooks/useSurvey';\r\nimport { useSurveyStepper } from 'hooks/useSurveyStepper';\r\nimport { useEffect, useState } from 'react';\r\nimport { ReactNode } from 'react-markdown/lib/react-markdown';\r\nimport CloseIcon from '@mui/icons-material/Close';\r\nimport { SurveyCategory, SurveyRequest, Survey, SurveyResponse } from '../../../@types/survey';\r\nimport { SurveyCategoryCard } from './SurveyCategoryCard';\r\nimport { SurveyInput } from './SurveyInput';\r\nimport arrowIosBackFill from '@iconify/icons-eva/arrow-ios-back-fill';\r\nimport { useSnackbar } from 'notistack';\r\nimport { dispatch } from 'redux/store';\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\n\r\nexport type SurveyProps = {\r\n request: SurveyResponse;\r\n onClose?: () => void;\r\n children?: ReactNode;\r\n};\r\n\r\n/**\r\n * Questionnaire par étape (sondage classe virtuelle)\r\n * @param param0\r\n * @returns\r\n */\r\nexport const SurveyStepper = ({ request, onClose, children }: SurveyProps) => {\r\n const { enqueueSnackbar } = useSnackbar();\r\n const [isValidItem, setIsValidItem] = useState(false);\r\n const {\r\n categoryList,\r\n onChange,\r\n onChangeOption,\r\n onChangeOptionTextRep,\r\n onChangeChecked,\r\n save,\r\n isErrorSurveyItem\r\n } = useSurvey({\r\n request: request,\r\n onMove: () => {}\r\n });\r\n\r\n const { activeStep, getCountStep, onStepBack, onStepNext, getSurveyStep } = useSurveyStepper(\r\n request,\r\n categoryList\r\n );\r\n\r\n const stepMax = getCountStep();\r\n\r\n useEffect(() => {\r\n const surveyItemActif = getSurveyStep();\r\n if (surveyItemActif === undefined) return;\r\n if (!isErrorSurveyItem(surveyItemActif) && activeStep < 2) {\r\n onStepNext();\r\n }\r\n }, [categoryList]);\r\n\r\n const handleSave = () => {\r\n dispatch(\r\n save()(() => {\r\n //enregistrement\r\n enqueueSnackbar('Merci d’avoir répondu à ce sondage.', { variant: 'success' });\r\n if (onClose) onClose();\r\n })(() => {\r\n enqueueSnackbar(\r\n 'Nous rencontrons actuellement un problème, veuillez réessayer ultérieurement',\r\n { variant: 'error' }\r\n );\r\n if (onClose) onClose();\r\n })\r\n );\r\n };\r\n\r\n return (\r\n \r\n \r\n {activeStep !== 0 && (\r\n \r\n \r\n \r\n )}\r\n \r\n }\r\n action={\r\n \r\n \r\n \r\n }\r\n />\r\n {categoryList?.map((c, i) => (\r\n .MuiCardContent-root': { paddingBottom: '2px' }\r\n }}\r\n >\r\n {(survey, isRegroupement, index) => {\r\n if (index !== activeStep) return <>;\r\n\r\n return (\r\n <>\r\n {children}\r\n\r\n \r\n {survey.question}\r\n \r\n\r\n onChange(c.id, survey.id, value)}\r\n onChangeOption={(value: string) => onChangeOption(c.id, survey.id, value)}\r\n onChangeOptionText={(id: string, value: string) =>\r\n onChangeOptionTextRep(c.id, survey.id, id, value)\r\n }\r\n onChangeChecked={(value: string, checked: boolean) =>\r\n onChangeChecked(c.id, survey.id, value, checked)\r\n }\r\n onValid={(is: boolean) => setIsValidItem(is)}\r\n />\r\n \r\n );\r\n }}\r\n \r\n ))}\r\n\r\n \r\n {activeStep === stepMax - 1 && (\r\n \r\n )}\r\n\r\n {!(activeStep === stepMax - 1 || !isValidItem) && (\r\n \r\n )}\r\n \r\n\r\n }\r\n backButton={<>}\r\n />\r\n \r\n );\r\n};\r\n","import { useEffect, useState } from 'react';\r\n\r\nimport {\r\n SurveyCategory,\r\n SurveyResponse,\r\n SurveyResult,\r\n Survey,\r\n QuestOption,\r\n QuestionType\r\n} from '../@types/survey';\r\n\r\n/**\r\n * Gestion du questionnaire en mode etape\r\n * @returns\r\n */\r\nexport const useSurveyStepper = (request: SurveyResponse, categoryList: Array) => {\r\n const [activeStep, setActiveStep] = useState(0);\r\n\r\n useEffect(() => {\r\n setActiveStep(0);\r\n }, [request]);\r\n\r\n const onStepNext = () => {\r\n setActiveStep((prevActiveStep) => prevActiveStep + 1);\r\n };\r\n\r\n const onStepBack = () => {\r\n setActiveStep((prevActiveStep) => prevActiveStep - 1);\r\n };\r\n\r\n const getCountStep = () => {\r\n return categoryList.reduce(\r\n (accumulateur, valeurCourante) => accumulateur + valeurCourante.surveyList.length,\r\n 0\r\n );\r\n };\r\n\r\n const getSurveyStep = () => {\r\n let surveys: Array = [];\r\n categoryList.map((s, index) => s.surveyList.map((survey) => surveys.push(survey)));\r\n return surveys[activeStep];\r\n };\r\n\r\n return {\r\n categoryList,\r\n activeStep,\r\n getCountStep,\r\n onStepBack,\r\n onStepNext,\r\n getSurveyStep\r\n };\r\n};\r\n","import { Dialog, Typography } from '@mui/material';\r\nimport { SurveyStepper } from '../survey/SurveyStepper';\r\nimport { Survey } from '../../../@types/contract';\r\nimport { fDate } from 'utils/formatTime';\r\nimport SurveyContainer from './SurveyContainer';\r\n\r\ntype SurveyFormDialogProps = {\r\n survey: Survey;\r\n onClose: () => void;\r\n};\r\n\r\nconst SurveyFormDialog = ({ survey, onClose }: SurveyFormDialogProps) => {\r\n return (\r\n \r\n \r\n {(response, isStepper) => (\r\n \r\n {survey.label}\r\n {survey.created && (\r\n \r\n {fDate(survey.created, 'eeee dd MMMM yyyy à HH:mm')}\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default SurveyFormDialog;\r\n","import { useEffect, useState } from 'react';\r\nimport { RootState, dispatch, useSelector } from 'redux/store';\r\nimport SurveyFormDialog from '../survey/SurveyFormDialog';\r\nimport { maskSurvey } from 'redux/slices/survey';\r\nimport { Survey } from '../../../@types/contract';\r\n\r\nconst VirtualClassSurveyAfterLive = () => {\r\n const { surveys } = useSelector((state: RootState) => state.survey);\r\n const { virtualClasses } = useSelector((state: RootState) => state.virtualClass);\r\n const [survey, setSurvey] = useState(null);\r\n\r\n useEffect(() => {\r\n const surveyMandatory = surveys.find(\r\n (s) => s.relanceOfNumber > 0 && s.keyApp === 'ClaVir' && s.id === 433\r\n );\r\n\r\n if (surveyMandatory) {\r\n const classeVirtuelle = virtualClasses.find((vc) => vc.id === +surveyMandatory.keyId);\r\n\r\n if (classeVirtuelle) {\r\n setSurvey(\r\n Object.assign({}, surveyMandatory, {\r\n created: classeVirtuelle?.dateStart,\r\n label: classeVirtuelle?.title\r\n })\r\n );\r\n }\r\n }\r\n }, [virtualClasses, surveys]);\r\n\r\n const onClose = () => {\r\n if (survey)\r\n dispatch(maskSurvey({ typApp: survey?.keyApp, appId: survey?.keyId, lisQue: survey.id }));\r\n setSurvey(null);\r\n };\r\n\r\n if (survey === null) return <>;\r\n\r\n return ;\r\n};\r\nexport default VirtualClassSurveyAfterLive;\r\n","import { RootState, dispatch, useSelector } from 'redux/store';\r\nimport SurveyFormDialog from '../survey/SurveyFormDialog';\r\nimport { closeModal } from 'redux/slices/survey';\r\n\r\n/**\r\n * Declenche l'affichage d'un questionnaire - sondage\r\n */\r\nexport default function VirtualClassSurveyAfterReplay() {\r\n const { survey } = useSelector((state: RootState) => state.survey);\r\n\r\n const handleClose = () => {\r\n dispatch(closeModal());\r\n };\r\n\r\n if (survey === null) return <>;\r\n\r\n return ;\r\n}\r\n","import useAuth from 'hooks/useAuth';\r\nimport { Contract, Survey } from '../../../@types/contract';\r\n\r\nimport { Button, Dialog, DialogContent, Stack, Typography } from '@mui/material';\r\nimport { DialogTitleWithClose } from 'components/DialogTitleWithClose';\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { selectSurveyStandard, closeModal, maskSurvey, removeSurvey } from 'redux/slices/survey';\r\nimport { SurveyStandard } from '../survey/SurveyStandard';\r\nimport { useCallback, useEffect, useState } from 'react';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport { Box } from '@mui/system';\r\nimport { SurveyStepperStandard } from './SurveyStepperStandard';\r\nimport SurveyContainer from './SurveyContainer';\r\n\r\n/**\r\n * Relancer les questionnaires en mode popup\r\n * On prend seulement les questionnaires à relancer\r\n * On ne relance qu'une fois par jour.\r\n *\r\n * @returns\r\n */\r\nconst SurveyRelance = () => {\r\n const { surveys, surveyStandard, isOpenModal } = useSelector((state: RootState) => state.survey);\r\n const [survey, setSurvey] = useState(null);\r\n\r\n useEffect(() => {\r\n if (survey) {\r\n dispatch(maskSurvey({ typApp: survey.keyApp, appId: survey?.keyId, lisQue: survey?.id }));\r\n }\r\n }, [survey]);\r\n\r\n const onClose = () => {\r\n setSurvey(null);\r\n };\r\n\r\n const handleSelect = () => {\r\n if (survey?.url) {\r\n window.open(survey.url);\r\n return;\r\n }\r\n\r\n dispatch(selectSurveyStandard(survey));\r\n onClose();\r\n };\r\n\r\n /** detection event au chargement simplement de la liste des sondages*/\r\n const surveysLoaded = surveys.length > 0;\r\n\r\n useEffect(() => {\r\n //1 seule fois par rafraichessement(F5)\r\n const sondages = surveys\r\n .slice()\r\n .filter((s) => s.relanceOfNumber > 0 && s.keyApp !== 'ClaVir') //prendre les sondages à relancer sans les classes virtuelles\r\n .sort((a, b) => {\r\n const aDate = new Date(a.created);\r\n const bDate = new Date(b.created);\r\n\r\n if (aDate > bDate) {\r\n return -1;\r\n }\r\n if (aDate < bDate) {\r\n return 1;\r\n }\r\n return 0;\r\n });\r\n\r\n if (sondages && sondages.length > 0) setSurvey(sondages[0]);\r\n }, [surveysLoaded]);\r\n\r\n if (survey === null) return <>;\r\n\r\n return (\r\n \r\n \r\n\r\n \r\n {surveyStandard ? (\r\n <>\r\n \r\n {(response, isStepper) =>\r\n isStepper ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n {survey && (\r\n \r\n \r\n {survey.label}\r\n \r\n Dites-nous tout!\r\n \r\n Votre avis nous intéresse. Nous vous remercions de prendre quelques minutes pour\r\n répondre à ce questionnaire.\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\nexport default SurveyRelance;\r\n\r\n/**\r\n * \r\n */\r\n","import useAuth from 'hooks/useAuth';\r\nimport { usePostMessage } from 'hooks/usePostMessage';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { useEffect } from 'react';\r\n\r\nconst PostMessageStudyPlan = () => {\r\n const { context } = useStudyPlan();\r\n\r\n useEffect(() => {\r\n if (context) window.parent.postMessage({ code: context.code }, '*');\r\n }, [context]);\r\n\r\n return <>;\r\n};\r\nexport default PostMessageStudyPlan;\r\n","import { ObjectifGeneral, TypePeriodeInscription } from '../@types/examen';\r\nimport { useEffect, useState } from 'react';\r\nimport { useLocation, useNavigate } from 'react-router';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport useAuth from './useAuth';\r\nimport {\r\n getPeriodesFutures,\r\n getSessionsFutures,\r\n getSessionsFuturesDisponibles\r\n} from 'utils/helperExamen';\r\n\r\nexport default function useExamenInscriptionPopup() {\r\n const { objectifSAY, dateExamenEnvisagee, examens } = useSelector(\r\n (state: RootState) => state.examen\r\n );\r\n\r\n const { getContractCurrent } = useAuth();\r\n const contract = getContractCurrent();\r\n\r\n const location = useLocation();\r\n const navigate = useNavigate();\r\n\r\n /*\r\n * States des règles de gestion\r\n */\r\n // Si true : inscription à effectuer, mais non obligatoire\r\n const [saisieNonObligatoire, setSaisieNonObligatoire] = useState(false);\r\n // Si true : inscription à effectuer obligatoirement\r\n const [saisieObligatoire, setSaisieObligatoire] = useState(false);\r\n // Si true : l'objectif est paramétré correctement pour l'inscription anticipée\r\n const [objectifOK, setObjectifOK] = useState(false);\r\n // Si true : la date d'examen envisagée n'est pas saisie\r\n //const [datExaEnvMissing, setDatExaEnvMissing] = useState(false);\r\n // Si true : l'objectif est défini et pas d'inscription\r\n const [registrationMissing, setRegistrationMissing] = useState(false);\r\n\r\n /*\r\n * States de paramétrage de la popup\r\n */\r\n // Si true : affiche la popup\r\n const [open, setOpen] = useState(false);\r\n // Si true : l'inscription est obligatoire\r\n const [mandatory, setMandatory] = useState(false);\r\n\r\n /*\r\n * Indique si la popup doit être affichée en fonction des dates du contrat\r\n */\r\n const checkDatesContrat = () => {\r\n if (contract!.registrationDate && contract!.closingDate) {\r\n const currentTime = new Date().getTime();\r\n const dateInscription = new Date(contract.registrationDate!).getTime();\r\n const dateCloture = new Date(contract.closingDate!).getTime();\r\n\r\n const dateMiFormation = dateInscription + (dateCloture - dateInscription) / 2;\r\n const miFormationDepassee = currentTime - dateMiFormation > 0;\r\n\r\n const nbJours = Math.round((currentTime - dateInscription) / (1000 * 3600 * 24));\r\n\r\n if (miFormationDepassee) {\r\n setSaisieObligatoire(true);\r\n setSaisieNonObligatoire(false);\r\n } else if (nbJours >= 15) {\r\n setSaisieObligatoire(false);\r\n setSaisieNonObligatoire(true);\r\n }\r\n }\r\n };\r\n\r\n /*\r\n * Indique l'objectif (pour l'inscription anticipée) est utilisable\r\n */\r\n const checkObjectif = () => {\r\n if (!objectifSAY || !objectifSAY.gestionInscriptionInterne) {\r\n setObjectifOK(false);\r\n } else {\r\n const objectif: ObjectifGeneral = {\r\n ...objectifSAY,\r\n sessions: getSessionsFuturesDisponibles(objectifSAY?.sessions),\r\n periodes: getPeriodesFutures(objectifSAY?.periodes)\r\n };\r\n\r\n switch (objectif.periodeInscription) {\r\n case TypePeriodeInscription.Session:\r\n setObjectifOK(objectif.sessions?.length > 0);\r\n break;\r\n case TypePeriodeInscription.Mois:\r\n setObjectifOK(objectif.periodes?.length > 0);\r\n break;\r\n case TypePeriodeInscription.Trimestre:\r\n setObjectifOK(objectif.periodes?.length > 0);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Indique si la date de passage envisagée est renseignée\r\n */\r\n /*\r\n const checkDateExamen = () => {\r\n setDatExaEnvMissing(dateExamenEnvisagee === undefined || dateExamenEnvisagee === null);\r\n };\r\n */\r\n\r\n /**\r\n * Indique si l'inscription est manquante\r\n */\r\n const checkRegistration = () => {\r\n return setRegistrationMissing(\r\n objectifOK &&\r\n examens &&\r\n !examens.some(\r\n (e) => e.code === objectifSAY?.code && !['ABA', 'REP'].includes(e.statutInscription?.code)\r\n )\r\n );\r\n };\r\n\r\n /*\r\n * Au changement de contrat\r\n * Vérification des dates\r\n */\r\n useEffect(() => {\r\n checkDatesContrat();\r\n }, [contract?.id]);\r\n\r\n /**\r\n * L'objectif utilisé pour l'inscription anticipée est chargé\r\n */\r\n useEffect(() => {\r\n checkObjectif();\r\n }, [objectifSAY]);\r\n\r\n /**\r\n * Changement de date d'examen envisagée\r\n */\r\n /*\r\n useEffect(() => {\r\n checkDateExamen();\r\n }, [dateExamenEnvisagee]);\r\n */\r\n\r\n /** Examens */\r\n useEffect(() => {\r\n checkRegistration();\r\n }, [objectifOK, examens]);\r\n\r\n /**\r\n * Méthode déclenchée pour vérifier toutes les infos pouvant mener à l'affichage de la popup\r\n */\r\n useEffect(() => {\r\n managePopup();\r\n }, [\r\n saisieNonObligatoire,\r\n saisieObligatoire,\r\n objectifOK,\r\n registrationMissing\r\n /* datExaEnvMissing, */\r\n ]);\r\n\r\n /**\r\n * Quand l'élève navigue sur une vue qui n'est pas la vue d'inscription anticipée\r\n */\r\n useEffect(() => {\r\n if (saisieObligatoire && location.pathname != PATH_DASHBOARD.suivi.examenCreateInterne) {\r\n managePopup();\r\n }\r\n }, [location]);\r\n\r\n /**\r\n * Affichage / masquage de la popup\r\n */\r\n const managePopup = () => {\r\n if (\r\n (saisieNonObligatoire || saisieObligatoire) &&\r\n objectifOK &&\r\n registrationMissing\r\n //datExaEnvMissing\r\n ) {\r\n setMandatory(saisieObligatoire);\r\n setOpen(true);\r\n } else {\r\n setMandatory(false);\r\n setOpen(false);\r\n }\r\n };\r\n\r\n const onClose = () => {\r\n if (!mandatory) {\r\n setOpen(false);\r\n }\r\n };\r\n\r\n const onCancel = () => {\r\n setOpen(false);\r\n };\r\n\r\n const onRegister = () => {\r\n setOpen(false);\r\n navigate(PATH_DASHBOARD.suivi.examenCreateInterne);\r\n };\r\n\r\n return {\r\n getContractCurrent,\r\n objectifSAY,\r\n mandatory,\r\n open,\r\n onClose,\r\n onCancel,\r\n onRegister\r\n };\r\n}\r\n","import {\r\n Box,\r\n Button,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n Typography\r\n} from '@mui/material';\r\nimport useAuth from 'hooks/useAuth';\r\nimport useExamenInscriptionPopup from 'hooks/useExamenInscriptionPopup';\r\nimport { getLabelCategoryObjectif } from 'utils/helperExamen';\r\n\r\ntype ExamenInscriptionPopupProps = {};\r\n\r\n/**\r\n * Affichage du message d'attente de traitement de l'école\r\n * Visible seulement dans le cas de statut interne à ATT\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function ExamenInscriptionPopup({}: ExamenInscriptionPopupProps) {\r\n const { objectifSAY, open, mandatory, onClose, onCancel, onRegister } =\r\n useExamenInscriptionPopup();\r\n const { getGenreMasculin } = useAuth();\r\n\r\n if (!objectifSAY) return <>;\r\n\r\n const examenLabel = `${getLabelCategoryObjectif(objectifSAY.categorie)?.accord} ${\r\n objectifSAY.designation\r\n }`;\r\n\r\n return (\r\n \r\n Inscriptions {examenLabel}\r\n \r\n \r\n {mandatory &&

Vous êtes à la moitié de votre formation. Dernière ligne droite !

}\r\n Prenez un instant pour estimer votre passage prévisionnel l'examen. Nous allons ensuite\r\n générer un planning permettant de fixer votre objectif. Cela vous permettra de définir un\r\n rythme de travail à suivre pour être prêt{getGenreMasculin() ? '' : 'e'}. Une fois les\r\n conditions d'éligibilité aux épreuves réunies, nous vous invitons à revenir vers l'école\r\n afin de connaître votre date d'examen. A défaut, vous serez invité\r\n {getGenreMasculin() ? '' : 'e'} à sélectionner une autre période.\r\n
\r\n \r\n
\r\n\r\n \r\n {!mandatory && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n
\r\n );\r\n}\r\n","import { StudyPlanItemType } from '../../../../@types/pedagogy';\r\nimport { useEffect } from 'react';\r\nimport useTrackerGoogle from 'hooks/useTrackerGoogle';\r\nimport useStudyPlanChapterItem from 'hooks/useStudyPlanChapterItem';\r\n\r\nconst StudyPlanDetailsTrackerGoogle = () => {\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n const { pageview } = useTrackerGoogle();\r\n\r\n useEffect(() => {\r\n if (!managerChapterItem.selected?.item) return;\r\n pageview({\r\n chapter: managerChapterItem.selected?.chapter?.label,\r\n page_level_1: 'Formation',\r\n page_level_2: 'formation-details',\r\n sub_chapter: managerChapterItem.selected?.subChapter?.label,\r\n material_name: managerChapterItem.selected?.item?.label,\r\n material_type: StudyPlanItemType[managerChapterItem.selected?.item?.type].toString()\r\n });\r\n }, [managerChapterItem.selected?.item?.id]);\r\n\r\n return <>;\r\n};\r\n\r\nexport default StudyPlanDetailsTrackerGoogle;\r\n","import { useEffect } from 'react';\r\nimport useTrackerGoogle from 'hooks/useTrackerGoogle';\r\n\r\nimport { useSelector } from 'react-redux';\r\nimport { RootState } from 'redux/store';\r\n\r\nexport default function VirtualClassTrackerGoogle() {\r\n const { virtualClass } = useSelector((state: RootState) => state.virtualClass);\r\n const { pageview } = useTrackerGoogle();\r\n\r\n useEffect(() => {\r\n if (!virtualClass?.id) return;\r\n\r\n pageview({\r\n page_path: `virtualclass/${virtualClass.id}`,\r\n page_level_1: 'Classe virtuelle',\r\n page_level_2: virtualClass.title\r\n });\r\n }, [virtualClass?.id]);\r\n\r\n return <>;\r\n}\r\n","import { useEffect } from 'react';\r\nimport useTrackerGoogle from 'hooks/useTrackerGoogle';\r\n\r\nimport { useSelector } from 'react-redux';\r\nimport { RootState } from 'redux/store';\r\n\r\nexport default function WorkshopTrackerGoogle() {\r\n const { workshop } = useSelector((state: RootState) => state.workshop);\r\n const { pageview } = useTrackerGoogle();\r\n\r\n useEffect(() => {\r\n if (!workshop?.id) return;\r\n\r\n pageview({\r\n page_path: `atelier/${workshop.id}`,\r\n page_level_1: 'Ateliers',\r\n page_level_2: workshop.title\r\n });\r\n }, [workshop?.id]);\r\n\r\n return <>;\r\n}\r\n","import { useTranslation } from 'react-i18next';\r\n// material\r\nimport { enUS, deDE, frFR } from '@mui/material/locale';\r\nimport fr from 'date-fns/locale/fr';\r\n// ----------------------------------------------------------------------\r\n\r\nconst LANGS = [\r\n {\r\n label: 'English',\r\n value: 'en',\r\n systemValue: enUS,\r\n icon: '/static/icons/ic_flag_en.svg'\r\n },\r\n {\r\n label: 'German',\r\n value: 'de',\r\n systemValue: deDE,\r\n\r\n icon: '/static/icons/ic_flag_de.svg'\r\n },\r\n {\r\n label: 'French',\r\n value: 'fr',\r\n systemValue: frFR,\r\n icon: '/static/icons/ic_flag_fr.svg'\r\n }\r\n];\r\n\r\nexport default function useLocales() {\r\n const { i18n, t: translate } = useTranslation();\r\n const langStorage = localStorage.getItem('i18nextLng');\r\n const currentLang = LANGS.find((_lang) => _lang.value === langStorage) || LANGS[1];\r\n\r\n const handleChangeLanguage = (newlang: string) => {\r\n i18n.changeLanguage(newlang);\r\n };\r\n\r\n return {\r\n onChangeLang: handleChangeLanguage,\r\n translate,\r\n currentLang,\r\n allLang: LANGS,\r\n language: fr\r\n };\r\n}\r\n","import { useEffect } from 'react';\r\nimport useTrackerGoogle from 'hooks/useTrackerGoogle';\r\n\r\nimport { useSelector } from 'react-redux';\r\nimport { RootState } from 'redux/store';\r\nimport { AgendaEventType } from '../../../@types/agenda';\r\nimport useLocales from 'hooks/useLocales';\r\n\r\nexport default function AgendaTrackerGoogle() {\r\n const { selectedEvent } = useSelector((state: RootState) => state.agenda);\r\n const { pageview } = useTrackerGoogle();\r\n const { currentLang, translate, onChangeLang } = useLocales();\r\n\r\n useEffect(() => {\r\n if (!selectedEvent?.id) return;\r\n\r\n pageview({\r\n page_path: `agenda/${selectedEvent.id}`,\r\n page_level_1: 'Agenda',\r\n page_level_2: translate(\r\n `agenda.type.${AgendaEventType[selectedEvent?.eventType].toString()}`\r\n ),\r\n page_level_3: selectedEvent.title\r\n });\r\n }, [selectedEvent?.id]);\r\n\r\n return <>;\r\n}\r\n","import { useEffect } from 'react';\r\nimport useTrackerGoogle from 'hooks/useTrackerGoogle';\r\n\r\nimport { useSelector } from 'react-redux';\r\nimport { RootState } from 'redux/store';\r\n\r\nexport default function MeetingTrackerGoogle() {\r\n const { meeting } = useSelector((state: RootState) => state.meeting);\r\n const { pageview } = useTrackerGoogle();\r\n\r\n useEffect(() => {\r\n if (!meeting?.id) return;\r\n\r\n pageview({\r\n page_path: `rendez-vous/${meeting.material.label}/${meeting.teacher.account}`,\r\n page_level_1: 'Rendez-vous'\r\n });\r\n }, [meeting?.id]);\r\n\r\n return <>;\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport useLocalStorage from './useLocalStorage';\r\nimport { add, differenceInDays } from 'date-fns';\r\nimport { addDayss } from 'utils/formatTime';\r\nimport { RootState, useSelector } from 'redux/store';\r\n\r\nconst useExamenRecupResultat = () => {\r\n const [open, setOpen] = useState(false);\r\n const [dateLastView, setDateLastView] = useLocalStorage(\r\n 'ExamenRecupResultPopup',\r\n addDayss(new Date(), -1)\r\n );\r\n\r\n const { examens } = useSelector((state: RootState) => state.examen);\r\n\r\n useEffect(() => {\r\n const today = new Date();\r\n\r\n //limité au 31 septembre\r\n if (today > new Date(2024, 9, 31)) return;\r\n\r\n // si il ya des examens\r\n if (examens?.length === 0) return;\r\n\r\n // prendre seulement les examens inscrits et non remplis et si la date d'epreuve est passée mais inférieure à 6mois\r\n const isToFill = examens.some(\r\n (ex) =>\r\n ex.categorie === 'EXA' &&\r\n ['INS', 'PRE'].includes(ex.statutInscription.code) &&\r\n ex.statutResultat.code === 'INC' &&\r\n ex.etatInscription === 'VAL' &&\r\n ex.session.dateEpreuvesAdmissibilite &&\r\n differenceInDays(today, new Date(ex.session.dateEpreuvesAdmissibilite)) < 150\r\n );\r\n\r\n if (isToFill && differenceInDays(today, new Date(dateLastView)) > 0) {\r\n setOpen(true);\r\n setDateLastView(today);\r\n }\r\n }, [examens]);\r\n\r\n return {\r\n open,\r\n setOpen\r\n };\r\n};\r\n\r\nexport default useExamenRecupResultat;\r\n","import {\r\n Box,\r\n Button,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n Typography\r\n} from '@mui/material';\r\nimport useExamenRecupResultat from 'hooks/useExamenRecupResultat';\r\nimport { useState } from 'react';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\n\r\ntype ExamenRecupResultatPopupProps = {};\r\n\r\n/**\r\n * Popup de rappel de saisie des résultats des examens\r\n * @returns\r\n */\r\nexport default function ExamenRecupResultatPopup({}: ExamenRecupResultatPopupProps) {\r\n const { open, setOpen } = useExamenRecupResultat();\r\n const navigate = useNavigate();\r\n\r\n function handleClick() {\r\n navigate(PATH_DASHBOARD.suivi.examens);\r\n setOpen(false);\r\n }\r\n\r\n return (\r\n {}}>\r\n Vos résultats\r\n \r\n \r\n Vous avez passé votre examen, n'oubliez pas de nous communiquer les résultats !\r\n \r\n \r\n \r\n\r\n \r\n {\r\n setOpen(false);\r\n }}\r\n variant=\"text\"\r\n >\r\n Plus tard\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useRef, useState } from 'react';\r\nimport { Outlet, useNavigate, useLocation } from 'react-router-dom';\r\n// material\r\nimport { styled, useTheme } from '@mui/material/styles';\r\n// hooks\r\nimport useCollapseDrawer from 'hooks/useCollapseDrawer';\r\n\r\nimport { ModeAccess } from '../../@types/account';\r\n\r\n//\r\nimport DashboardNavbar from './DashboardNavbar';\r\nimport DashboardSidebar from './DashboardSidebar';\r\nimport { PageSettingsProvider } from 'contexts/PageSettingsContext';\r\nimport VirtualClassDetails from 'components/_dashboard/virtualClass/VirtualClassDetails';\r\nimport WorkshopDetails from 'components/_dashboard/workshop/WorkshopDetails';\r\nimport useTrackerActivity, { LogActivity } from 'hooks/useTrackerActivity';\r\n\r\nimport { useSnackbar } from 'notistack';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { Box } from '@mui/system';\r\nimport { Button, Stack } from '@mui/material';\r\nimport ChatBot from 'components/_dashboard/chatbot/ChatBot';\r\nimport { useAxiosControl } from 'utils/axios';\r\nimport WorkflowReconnecting from 'components/_dashboard/workflow/WorkflowReconnecting';\r\nimport WorkflowSurvey from 'components/_dashboard/workflow/WorkflowSurvey';\r\nimport WelcomeCallPopup from './WelcomeCallPopup';\r\nimport AttendanceTrackingPopup from 'components/_dashboard/tracking/attendance/AttendanceTracking';\r\nimport TrackerPage from 'components/_dashboard/tracking/TrackerPage';\r\nimport { HubMessageState } from 'components/_dashboard/hub/HubMessageState';\r\nimport WorkflowVersion from 'components/_dashboard/workflow/WorkflowVersion';\r\nimport VirtualClassSurveyAfterLive from 'components/_dashboard/virtualClass/VirtualClassSurveyAfterLive';\r\nimport VirtualClassSurveyAfterReplay from 'components/_dashboard/virtualClass/VirtualClassSurveyAfterReplay';\r\nimport SurveyRelance from 'components/_dashboard/survey/SurveyRelance';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport PostMessageStudyPlan from 'components/_dashboard/studyPlan/PostMessageStudyPlan';\r\nimport ExamenInscriptionPopup from 'components/_dashboard/examen/ExamenInscriptionPopup';\r\n\r\nimport StudyPlanDetailsTrackerGoogle from 'components/_dashboard/studyPlan/details/StudyPlanDetailsTrackerGoogle';\r\nimport VirtualClassTrackerGoogle from 'components/_dashboard/virtualClass/VirtualClassTrackerGoogle';\r\nimport WorkshopTrackerGoogle from 'components/_dashboard/workshop/WorkshopTrackerGoogle';\r\nimport ScheduleTeacherTrackerGoogle from 'components/_dashboard/agenda/AgendaTrackerGoogle';\r\nimport MeetingTrackerGoogle from 'components/_dashboard/meeting/MeetingTrackerGoogle';\r\nimport ExamenRecupResultatPopup from 'components/_dashboard/examen/ExamenRecupResultatPopup';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst APP_BAR_MOBILE = 64;\r\nconst APP_BAR_DESKTOP = 92;\r\n\r\nconst RootStyle = styled('div')({\r\n display: 'flex',\r\n // minHeight: '100%',\r\n overflow: 'hidden'\r\n});\r\n\r\nconst MainStyle = styled('div')(({ theme }) => ({\r\n flexGrow: 1,\r\n overflow: 'auto',\r\n\r\n height: '100vh',\r\n backgroundColor: '#F9FAFB',\r\n paddingTop: APP_BAR_MOBILE + 4,\r\n // paddingBottom: theme.spacing(10),\r\n [theme.breakpoints.up('lg')]: {\r\n paddingTop: APP_BAR_DESKTOP + 4,\r\n paddingLeft: theme.spacing(2),\r\n paddingRight: theme.spacing(2)\r\n }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function DashboardLayout() {\r\n const theme = useTheme();\r\n const navigate = useNavigate();\r\n const { pathname } = useLocation();\r\n const { collapseClick } = useCollapseDrawer();\r\n const [open, setOpen] = useState(false);\r\n const tracker = useTrackerActivity({ parent: window });\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { student, isReadOnly } = useAuth();\r\n const controlAccess = useAxiosControl();\r\n\r\n //Pas de navbar\r\n const isControlOnly = [ModeAccess.Control].includes(student?.modeAccess);\r\n\r\n useEffect(() => {\r\n let elt = document.getElementById('wrapperEEContent');\r\n if (elt) {\r\n elt.style.display = 'none';\r\n }\r\n if (isControlOnly) navigate(PATH_DASHBOARD.studyPlan.root);\r\n }, []);\r\n\r\n return (\r\n \r\n {isControlOnly && }\r\n {!isControlOnly && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {!isControlOnly && enqueueSnackbar(value)} />}\r\n\r\n setOpen(true)} />\r\n {!isControlOnly && (\r\n setOpen(false)} />\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n\r\n {!isControlOnly && (\r\n <>\r\n \r\n\r\n \r\n \r\n )}\r\n {!isReadOnly && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { ReactNode } from 'react';\r\nimport { Navigate, useLocation } from 'react-router-dom';\r\n// hooks\r\nimport useAuth from '../hooks/useAuth';\r\n// routes\r\nimport { PATH_DASHBOARD } from '../routes/paths';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype GuestGuardProps = {\r\n children: ReactNode;\r\n};\r\n\r\n/**\r\n * Controler si l'élève est connecté\r\n * Sinon on affiche la page demandée\r\n * ATTENTION : Si un token est présent, c'est que l'on demande à changer d'espace élèves. Donc on doit impérativement passer par la page de login\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function GuestGuard({ children }: GuestGuardProps) {\r\n const { isAuthenticated } = useAuth();\r\n const { search } = useLocation();\r\n const params = new URLSearchParams(search);\r\n const accessToken = params.get('access_token');\r\n\r\n // check connecté et pas de demande de conection à un autre espace élève\r\n if (isAuthenticated && !accessToken) {\r\n return ;\r\n }\r\n\r\n return <>{children};\r\n}\r\n","import { useState, ReactNode } from 'react';\r\nimport { Navigate, useLocation } from 'react-router-dom';\r\nimport { PATH_PAGE } from 'routes/paths';\r\n\r\n// hooks\r\nimport useAuth from '../hooks/useAuth';\r\n// pages\r\nimport Login from '../pages/authentication/Login';\r\n\r\n// ----------------------------------------------------------------------\r\ntype AuthGuardProps = {\r\n children: ReactNode;\r\n};\r\n\r\n/**\r\n * Controler les droits et la page de maintenance\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function AuthGuard({ children }: AuthGuardProps) {\r\n const { isAuthenticated } = useAuth();\r\n const { pathname } = useLocation();\r\n const [requestedLocation, setRequestedLocation] = useState(null);\r\n //détection maintenance\r\n const isMaintenance = document.getElementById('isMaintenance');\r\n if (isMaintenance) return ;\r\n\r\n if (!isAuthenticated) {\r\n if (pathname !== requestedLocation) {\r\n setRequestedLocation(pathname);\r\n }\r\n return ;\r\n }\r\n\r\n if (requestedLocation && pathname !== requestedLocation) {\r\n setRequestedLocation(null);\r\n return ;\r\n }\r\n\r\n return <>{children};\r\n}\r\n","import { Button, Stack } from '@mui/material';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { Overtime } from '../../../@types/contract';\r\n\r\nexport type OvertimeFormProps = {\r\n choices: Array;\r\n onSelect: (value: Overtime) => void;\r\n};\r\n\r\n/**\r\n * Choix de la prolongation.\r\n * On envoi au server le choix, il nous retourne le paiement\r\n * Le paiement effectué, on ferme la popup\r\n */\r\nexport function OvertimeForm({ choices, onSelect }: OvertimeFormProps) {\r\n const { getFormatCurrency } = useAuth();\r\n return (\r\n \r\n {choices.map((o) => {\r\n const label = `${o.numberOfMonths} mois : ${getFormatCurrency(o.amount)} `;\r\n return (\r\n onSelect(o)}\r\n color=\"primary\"\r\n key={o.numberOfMonths}\r\n variant=\"contained\"\r\n >\r\n {label}\r\n \r\n );\r\n })}\r\n \r\n );\r\n}\r\n","// material\r\nimport { Typography } from '@mui/material';\r\nimport { ReactNode, useState } from 'react';\r\nimport { Box } from '@mui/system';\r\n// type\r\nimport { Contract, OvertimeStatus, Overtime } from '../../../@types/contract';\r\nimport PaymentForm, { PaymentFormType } from '../payment/PaymentForm';\r\n// components\r\n\r\nimport { fDate } from 'utils/formatTime';\r\n\r\nimport { OvertimeForm } from './OvertimeForm';\r\nimport DialogConfirm from 'components/DialogConfirm';\r\nimport useAuth from 'hooks/useAuth';\r\nimport useBrand from 'hooks/useBrand';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type OvertimeProposedProps = {\r\n contract: Contract;\r\n};\r\n\r\nexport default function OvertimeProposed({ contract }: OvertimeProposedProps) {\r\n const [selected, setSelected] = useState(null);\r\n const { brand } = useBrand();\r\n const handleChoice = (value: Overtime) => {\r\n setSelected(value);\r\n };\r\n\r\n return (\r\n \r\n {contract.closingDate && (\r\n \r\n Votre formation expire le {fDate(contract.closingDate)}\r\n \r\n )}\r\n\r\n \r\n Pour vous permettre de valider votre formation dans les meilleures conditions, nous vous\r\n offrons la possibilité de prolonger votre contrat. Vous pourrez ainsi continuer à bénéficier\r\n de tous les outils de formation (espace numérique de travail, cours, évaluations corrigées,\r\n activités complémentaires…), ainsi que de l'accompagnement personnalisé des formateurs et\r\n formatrices de l'école.\r\n \r\n\r\n \r\n Comment prolonger ma formation ?\r\n \r\n\r\n \r\n Comment prolonger ma formation ? Prolonger votre formation, c'est simple et rapide. En\r\n cliquant sur la durée de votre choix, vous serez redirigé(e) vers une page de paiement\r\n sécurisé. La prolongation sera validée par votre école, 24h après avoir reçu le paiement.\r\n Votre formation sera alors automatiquement prolongée pour la durée choisie. Pour toute\r\n question, vous pouvez nous joindre au {contract.brand.phone} en tapant 2.\r\n \r\n {brand !== 'CH' && (\r\n <>\r\n \r\n Comment rompre ma prolongation ?\r\n \r\n\r\n \r\n Vous disposez d'un droit de rétractation de 14 jours à compter de la date de votre\r\n souscription à la prolongation. Ce délai vous permet d'interrompre votre prolongation et\r\n d'obtenir le remboursement des sommes versées. Pour l'exercer, nous vous invitons à nous\r\n retourner le formulaire de rétractation disponible sur votre ENT, rubrique \"documents\r\n importants\". Vous disposez du droit de résilier votre prolongation de formation dans les\r\n mêmes délais et sous le même formalisme que votre contrat initial, délai qui débute à\r\n compter de la date de souscription de la prolongation. Cette résiliation entraîne le\r\n paiement au prorata temporis de la durée de prolongation effectivement réalisée (chaque\r\n mois de prolongation entamé est dû). Au-delà de ce délai, vous ne pourrez obtenir la\r\n résiliation de votre prolongation que si vous justifiez de la survenance soit d’un cas\r\n de force majeure, soit d’un cas fortuit, vous empêchant de poursuivre la formation,\r\n auquel cas seule la durée de prolongation réalisée sera due au prorata temporis. A\r\n défaut, vous resterez redevable de l’intégralité du montant de la prolongation.\r\n \r\n \r\n )}\r\n o.status === OvertimeStatus.None)}\r\n onSelect={handleChoice}\r\n />\r\n\r\n {selected && (\r\n setSelected(null)}\r\n open={selected.amount > 0}\r\n isLoading={false}\r\n withoutImage={true}\r\n >\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { Box, Card, CardActionArea, CardHeader, styled, Typography } from '@mui/material';\r\nimport CardContainer from 'components/CardContainer';\r\nimport { Overtime, OvertimeStatus } from '../../../@types/contract';\r\n\r\n//------------------------------------------\r\n\r\n//---------------------------------------------------------------------\r\n\r\nexport type OvertimeCurrentProps = {\r\n current: Overtime;\r\n};\r\n\r\nconst RootStyle = styled(CardHeader)(({ theme }) => ({\r\n padding: 20\r\n}));\r\n\r\n/**\r\n * Prolongation en cours de traitement par le service.\r\n */\r\nexport default function OvertimeCurrent({ current }: OvertimeCurrentProps) {\r\n //const message // getOvertimeMessage(current);\r\n return <>;\r\n}\r\n\r\n/**\r\n * \r\n \r\n {message.title}}\r\n subheader={message.description}\r\n avatar={message.img && }\r\n />\r\n \r\n \r\n */\r\n","import { useEffect, useState } from 'react';\r\n// material\r\nimport { Card, Container } from '@mui/material';\r\n\r\n// type\r\nimport { Overtime, OvertimeStatus } from '../../@types/contract';\r\n\r\n// hooks\r\nimport useAuth from 'hooks/useAuth';\r\n\r\n// components\r\nimport Page from 'components/Page';\r\nimport CardContainer from 'components/CardContainer';\r\nimport HeaderBreadcrumbs from 'components/HeaderBreadcrumbs';\r\nimport OvertimeProposed from 'components/_dashboard/overtime/OvertimeProposed';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport OvertimeCurrent from 'components/_dashboard/overtime/OvertimeCurrent';\r\n// ----------------------------------------------------------------------\r\n/**\r\n * Affichage de la prolongation\r\n * Saisi du nombre de mois puis payement\r\n * @returns\r\n */\r\nexport default function Overtimes() {\r\n const { getContractCurrent } = useAuth();\r\n const contract = getContractCurrent();\r\n\r\n // en cours de traitement par les services de l'école\r\n const current = contract.overtimes.filter((w) => w.status === OvertimeStatus.Current)[0];\r\n\r\n return (\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {current ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","// material\r\nimport { Container } from '@mui/material';\r\nimport { Home, ArrowBackIos, Verified } from '@mui/icons-material';\r\n\r\n// hooks\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\n\r\n// routes\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\n// @types\r\nimport { StudyPlanItemType } from '../../@types/pedagogy';\r\n\r\n// components\r\nimport Page from 'components/Page';\r\n\r\nimport HeaderBreadcrumbs from 'components/HeaderBreadcrumbs';\r\n\r\nimport { StudyPlanActions } from 'components/_dashboard/studyPlan/toolbar/StudyPlanActionsPopover';\r\n\r\nimport { StudyPlanDetailsContent } from 'components/_dashboard/studyPlan/details/StudyPlanDetailsContent';\r\nimport { useEffect } from 'react';\r\nimport { useNavigate } from 'react-router';\r\nimport useStudyPlanChapterItem from 'hooks/useStudyPlanChapterItem';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n/**\r\n * Affichage du détails de la liste de révisions filtrées : supports et médias, devoir, learning\r\n *\r\n * @returns\r\n */\r\nexport default function StudyPlanSearchDetails() {\r\n const { updated, chapterItemUpdatedList } = useStudyPlan();\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n const navigate = useNavigate();\r\n\r\n useEffect(() => {\r\n //Pas de phase on retourne à la liste\r\n if (!managerChapterItem.selected?.item) {\r\n navigate(PATH_DASHBOARD.studyPlan.StudyPlanSearch);\r\n return;\r\n }\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n ,\r\n name: 'Révisions filtrées',\r\n href: PATH_DASHBOARD.studyPlan.StudyPlanSearch\r\n },\r\n {\r\n icon: ,\r\n name: managerChapterItem.selected?.chapter?.label,\r\n href: PATH_DASHBOARD.studyPlan.details\r\n }\r\n ]}\r\n action={}\r\n />\r\n {managerChapterItem.selected?.item && (\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useCallback, useState } from 'react';\r\n\r\nimport { Box } from '@mui/system';\r\n\r\n// material\r\nimport { Grid, Container, Stack, Typography, Button, Card } from '@mui/material';\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from '../../redux/store';\r\n\r\n// @types\r\n\r\n// components\r\nimport Page from '../../components/Page';\r\nimport HeaderBreadcrumbs from '../../components/HeaderBreadcrumbs';\r\nimport ExamenForm from 'components/_dashboard/examen/ExamenForm';\r\nimport CardContainer from 'components/CardContainer';\r\nimport PhoneInfo from 'components/PhoneInfo';\r\nimport useExamen from 'hooks/useExamen';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { useNavigate } from 'react-router';\r\n\r\n/**\r\n * Liste des examens\r\n * @returns\r\n */\r\nexport default function ExamenCreate() {\r\n const { getLabel, getContractCurrent, getGenreMasculin } = useExamen();\r\n const contract = getContractCurrent();\r\n const navigate = useNavigate();\r\n const labels = getLabel();\r\n\r\n const handleCancel = () => {\r\n navigate(PATH_DASHBOARD.suivi.examens);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n Renseignez dans cette rubrique les {labels.minusculePluriel} auxquels vous êtes\r\n inscrit{getGenreMasculin() ? '' : 'e'} et transmettez-nous les résultats obtenus !\r\n \r\n }\r\n action={\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { StyleSheet } from '@react-pdf/renderer';\r\n\r\nexport const communStyles = StyleSheet.create({\r\n title: { fontSize: 14, fontWeight: 400 },\r\n subtitle1: { fontSize: 12, fontWeight: 600 },\r\n subtitle2: { fontSize: 12, fontWeight: 400 },\r\n body1: { fontSize: 10, fontWeight: 600 },\r\n body2: { fontSize: 10, fontWeight: 400 },\r\n colorGray: { color: '#637381' },\r\n alignCenter: { textAlign: 'center' },\r\n noBorder: { paddingTop: 8, paddingBottom: 0, borderBottomWidth: 0 },\r\n table: { display: 'flex', width: 'auto' },\r\n tableHeader: { backgroundColor: '#F9FAFB', borderRadius: 8, height: 40 },\r\n tableBody: {},\r\n tableRow: {\r\n padding: 0,\r\n flexDirection: 'row'\r\n },\r\n gridContainer: { flexDirection: 'row', alignItems: 'baseline', gap: '20px' },\r\n h3: { fontSize: 16, fontWeight: 700 },\r\n h4: { fontSize: 13, fontWeight: 700 },\r\n\r\n col2: { width: '15%' },\r\n col4: { width: '25%' },\r\n col8: { width: '75%' },\r\n col6: { width: '50%' },\r\n mb4: { marginBottom: 4 },\r\n mb8: { marginBottom: 8 },\r\n mb40: { marginBottom: 40 },\r\n mb20: { marginBottom: 20 },\r\n timelineDot: {\r\n margin: '1px',\r\n width: '12px',\r\n height: '12px',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n borderRadius: 10,\r\n backgroundColor: '#6369FF',\r\n fontSize: 8\r\n },\r\n timelineDotEmpty: {\r\n margin: '1px',\r\n width: '12px',\r\n height: '12px',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n borderRadius: 10,\r\n borderColor: '#c7c7c7',\r\n borderWidth: 1,\r\n backgroundColor: 'white',\r\n fontSize: 8\r\n }\r\n});\r\n","import { style } from '@mui/system';\r\nimport { View, Text, StyleSheet, Image } from '@react-pdf/renderer';\r\nimport { fDate } from 'utils/formatTime';\r\nimport { AttendanceReport } from '../../../../../@types/AttendanceReport';\r\nimport { communStyles } from './communStyles';\r\n\r\nexport const styles = StyleSheet.create({\r\n container: { display: 'flex', flexDirection: 'column', gap: '10px' }\r\n});\r\n\r\ntype AttendanceReportHeaderProps = {\r\n date: Date;\r\n};\r\n\r\nexport default function AttendanceReportHeader({ date }: AttendanceReportHeaderProps) {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Rapport de présence {fDate(date, 'MMMM')}\r\n \r\n \r\n );\r\n}\r\n","import { View, Text, StyleSheet, Image } from '@react-pdf/renderer';\r\nimport { communStyles } from './communStyles';\r\nimport { PhoneLabel } from 'components/PhoneInfo';\r\nimport useBrand from 'hooks/useBrand';\r\n\r\nexport const styles = StyleSheet.create({\r\n footer: {\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n padding: 20,\r\n margin: 'auto',\r\n position: 'absolute',\r\n textAlign: 'center',\r\n fontSize: 8\r\n }\r\n});\r\n\r\nexport default function AttendanceReportFooter() {\r\n const { brand } = useBrand();\r\n return (\r\n \r\n \r\n SKILL AND YOU\r\n \r\n \r\n \r\n \r\n 85-87 rue Gabriel Péri - 92120 Montrouge · Tél.{' '}\r\n \r\n \r\n \r\n \r\n S.A.S au capital de 2 743 815,40 € \r\n \r\n Immatriculée au RCS de Nanterre sous le n°530.188.986 · Siège social : 85-87 rue Gabriel\r\n Péri - 92120 Montrouge établissements secondaires : 368 Boulevard Henri Harpignies -\r\n 59300 Valenciennes, 415 Rue Pierre Seghers - 84000 Avignon, - 258 Avenue Roland Moreno -\r\n 59410 Anzin\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { View, Text, StyleSheet } from '@react-pdf/renderer';\r\nimport { communStyles } from './communStyles';\r\n\r\nexport const styles = StyleSheet.create({\r\n overline: {\r\n fontSize: 9,\r\n fontWeight: 400,\r\n margin: 8\r\n },\r\n container: { display: 'flex', flexDirection: 'row', alignItems: 'center', gap: '10px' }\r\n});\r\n\r\nexport default function AttendanceReportInformation() {\r\n return (\r\n \r\n \r\n Légende du rapport de présence :\r\n \r\n \r\n \r\n \r\n \r\n L’apprenant a émargé\r\n \r\n \r\n \r\n L’apprenant n’a pas émargé\r\n \r\n \r\n \r\n \r\n *L’émargement se fait numériquement et à heure fixe de 08:00 à 20:05.\r\n \r\n L’apprenant est considéré comme absent s’il ne signale pas sa présence sur son Espace\r\n Numérique de Travail durant les 5 premières minutes de chaque heure.\r\n \r\n \r\n \r\n );\r\n}\r\n","import { View, Text, StyleSheet } from '@react-pdf/renderer';\r\nimport { AttendanceReportData } from 'hooks/useAttendanceReport';\r\nimport { fDate } from 'utils/formatTime';\r\nimport { communStyles } from './communStyles';\r\n\r\ntype AttendanceReportPersonnalProps = {\r\n report: AttendanceReportData;\r\n male: boolean;\r\n};\r\n\r\nexport const styles = StyleSheet.create({\r\n container: { display: 'flex', flexDirection: 'column', alignItems: 'center', gap: '10px' }\r\n});\r\n\r\nconst getRow = (label: string, value: any) => {\r\n return (\r\n \r\n \r\n {label} : \r\n {typeof value === 'string' ? (\r\n {value}\r\n ) : (\r\n value\r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default function AttendanceReportPersonnal({\r\n report,\r\n male\r\n}: AttendanceReportPersonnalProps) {\r\n return (\r\n \r\n \r\n \r\n Résumé de l’apprenant{male ? '' : 'e'} :\r\n \r\n \r\n\r\n {[\r\n {\r\n label: `Apprenant${male ? '' : 'e'}`,\r\n value: `${report.student?.lastName} ${report.student?.firstName}`\r\n },\r\n { label: 'Numéro de contrat', value: `${report.contract?.id}` },\r\n {\r\n label: 'Adresse',\r\n value: (\r\n \r\n \r\n {report.student?.address?.wayNumber} {report.student?.address?.wayName}\r\n \r\n \r\n {report.student?.address?.postalCode} {report.student?.address?.city}\r\n \r\n \r\n {report.student?.address?.countryName}\r\n \r\n \r\n )\r\n },\r\n {\r\n label: 'Date d’inscription',\r\n value:\r\n report.contract?.registrationDate &&\r\n fDate(report.contract?.registrationDate, 'dd MMMM yyyy')\r\n },\r\n {\r\n label: 'Date de clôture pédagogique',\r\n value: report.contract?.closingDate && fDate(report.contract?.closingDate, 'dd MMMM yyyy')\r\n },\r\n {\r\n label: 'Formation',\r\n value: `${report.contract?.training?.label} (${report.contract?.training?.id})`\r\n },\r\n\r\n {\r\n label: 'Options',\r\n value: (\r\n \r\n {report.contract?.training?.options &&\r\n report.contract?.training?.options?.map((option) => {\r\n return (\r\n \r\n {option.label}\r\n \r\n );\r\n })}\r\n \r\n )\r\n },\r\n\r\n {\r\n label: 'Organisme',\r\n value: `${report.contract?.partner && report.contract?.partner.label}`\r\n },\r\n {\r\n label: 'Durée de la formation',\r\n value: `${report.contract?.training?.duration}h`\r\n }\r\n ].map((item) => {\r\n return getRow(item.label, item.value);\r\n })}\r\n \r\n );\r\n}\r\n","import { pdf } from '@react-pdf/renderer';\r\nimport { AttendanceReport, AttendanceReportDetail } from '../@types/AttendanceReport';\r\nimport { ReactElement } from 'react-markdown/lib/react-markdown';\r\nimport { eachWeekOfMonth, fDate, getWeekDays } from 'utils/formatTime';\r\nimport { dispatch, RootState, useSelector } from 'redux/store';\r\nimport { addDays, getWeek } from 'date-fns';\r\nimport { Student } from '../@types/account';\r\nimport { Contract } from '../@types/contract';\r\nimport axiosInstance from 'utils/axios';\r\nimport { useState } from 'react';\r\n\r\n/**Liste des heures */\r\nexport const hoursReport = [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20];\r\n\r\nexport type AttendanceReportData = {\r\n weeks: Record>;\r\n student: Student | null;\r\n contract: Contract | null;\r\n};\r\n\r\nexport default function useAttendanceReport() {\r\n const { student, contract, token } = useSelector((state: RootState) => state.student);\r\n const [weeks, setWeeks] = useState> | null>(null);\r\n\r\n const merge = async (year: number, month: number) => {\r\n //premier jour de chaque semaine du mois\r\n const firstDateEachWeekOfMonth = eachWeekOfMonth(year, month);\r\n //période\r\n const firstDate = firstDateEachWeekOfMonth[0];\r\n const endDate = addDays(firstDateEachWeekOfMonth.slice(-1)[0], 7);\r\n\r\n let weeksCurrent: Record> = {};\r\n\r\n //récupérer les informations\r\n dispatch(\r\n getAttendance(\r\n fDate(firstDate, 'yyyy-M-dd'),\r\n fDate(endDate, 'yyyy-M-dd')\r\n )((details) => {\r\n // valorise le tableau de semaine\r\n firstDateEachWeekOfMonth.map((firstDateOfWeek: Date) => {\r\n if (\r\n getWeekDays(firstDateOfWeek)\r\n .filter((d) => [1, 2, 3, 4, 5, 6].includes(d.getDay()))\r\n .some((d) => d.getMonth() === month)\r\n ) {\r\n weeksCurrent[getWeek(firstDateOfWeek)] = getWeekDays(firstDateOfWeek)\r\n // on prend seulement les jours du mois et du lundi au vendredi\r\n .filter((d) => [1, 2, 3, 4, 5, 6].includes(d.getDay()))\r\n .map((d: Date) => {\r\n const dateCurrent = fDate(d, 'yyyy-MM-dd');\r\n const detail = details.find((d) => d.day === dateCurrent);\r\n return {\r\n day: dateCurrent,\r\n firstConnection: detail ? formatTimeHHmm(detail.firstConnection) : '-',\r\n detailHours: hoursReport.map((hour: number) => {\r\n let attendance: boolean = false;\r\n if (detail?.detailHours) {\r\n const detailHour = detail?.detailHours.find((h) => +h.hour === hour);\r\n attendance = detailHour?.attendance ? detailHour?.attendance : false;\r\n }\r\n\r\n return { attendance: attendance, hour: hour.toString() };\r\n })\r\n };\r\n });\r\n }\r\n });\r\n setWeeks(weeksCurrent);\r\n })\r\n );\r\n };\r\n\r\n const formatTimeHHmm = (time: string) => {\r\n const timeSplit = time.split(':');\r\n\r\n if (timeSplit.length === 3) return `${timeSplit[0]}:${timeSplit[1]}`;\r\n return time;\r\n };\r\n\r\n const generatePdfDocument = async (component: ReactElement) => {\r\n const blob = await pdf(component).toBlob();\r\n const blobURL = window.URL.createObjectURL(blob);\r\n window.open(blobURL);\r\n };\r\n\r\n const getAttendance =\r\n (start: string, end: string) =>\r\n (onSuccess: (details: Array) => void) => {\r\n return async () => {\r\n try {\r\n // le token est passé exclusivement dans l'appel. NE PAS LE METTRE DANS LA SESSION STORAGE\r\n const response = await axiosInstance.get(\r\n `/api/report/attendance/${start}/${end}`,\r\n {\r\n headers: { authorization: `Bearer ${token}` }\r\n }\r\n );\r\n\r\n const { details } = response.data;\r\n\r\n onSuccess(details);\r\n } catch (error) {\r\n setWeeks({});\r\n }\r\n };\r\n };\r\n\r\n return {\r\n student,\r\n contract,\r\n weeks,\r\n merge,\r\n generatePdfDocument\r\n };\r\n}\r\n","import { View, Text, StyleSheet } from '@react-pdf/renderer';\r\nimport { hoursReport } from 'hooks/useAttendanceReport';\r\nimport { fDate } from 'utils/formatTime';\r\nimport { communStyles } from './communStyles';\r\nimport { AttendanceReportDetail } from '../../../../../@types/AttendanceReport';\r\n\r\nconst styles = StyleSheet.create({\r\n container: { borderRadius: 8, padding: 7, borderColor: '#F9FAFB', borderWidth: 1 },\r\n gridContainer: { flexDirection: 'row', alignItems: 'center', justifyContent: 'space-between' },\r\n tableCell_1: { width: '20%' },\r\n tableCell_3: { width: '15%', alignItems: 'center', textAlign: 'center' },\r\n timelineItem: {\r\n display: 'flex'\r\n },\r\n timelineSeparator: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n timelineConnector: {\r\n width: '1px',\r\n backgroundColor: '#c7c7c7', //'rgba(145, 158, 171, 0.24)',\r\n flexGrow: 1,\r\n height: '15px'\r\n },\r\n timelineConnectorNone: {\r\n flexGrow: 1,\r\n height: '15px'\r\n },\r\n mt4: { marginTop: '4px' }\r\n});\r\n\r\ntype AttendanceReportWeekProps = {\r\n detailsOfWeek: Array;\r\n lastName: string;\r\n contractId: string;\r\n title: string;\r\n month: number;\r\n male: boolean;\r\n};\r\n// { ...(disabled && communStyles.colorGray) }\r\nconst getRowHeader = (day: string, disabled: boolean) => {\r\n return (\r\n \r\n {fDate(day, 'eeee')}\r\n {fDate(day, 'dd')}\r\n \r\n );\r\n};\r\n\r\nconst getFirstRowCol = (value: string, index: number) => {\r\n return (\r\n \r\n {value}\r\n \r\n \r\n );\r\n};\r\n\r\nconst getCol = (attendance: boolean, index: number) => {\r\n return (\r\n \r\n \r\n \r\n {attendance ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default function AttendanceReportWeek({\r\n detailsOfWeek,\r\n lastName,\r\n contractId,\r\n title,\r\n month,\r\n male\r\n}: AttendanceReportWeekProps) {\r\n const lastDay = detailsOfWeek.pop();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Apprenant {male ? '' : 'e'} : \r\n {lastName}\r\n \r\n \r\n \r\n \r\n Numéro de contrat : \r\n {contractId}\r\n \r\n \r\n \r\n\r\n \r\n \r\n Rapport de présence du {fDate(detailsOfWeek[0].day, 'dd/MM/yyyy')} au{' '}\r\n {lastDay && fDate(lastDay.day, 'dd/MM/yyyy')}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {detailsOfWeek.map((item) => {\r\n const disabled = month !== new Date(item.day).getMonth();\r\n\r\n return getRowHeader(item.day, disabled);\r\n })}\r\n \r\n \r\n\r\n \r\n \r\n \r\n 1ère connexion\r\n \r\n {detailsOfWeek.map((item, index) => getFirstRowCol(item.firstConnection, index))}\r\n \r\n {hoursReport.map((hour: number, index: number) => {\r\n return (\r\n \r\n \r\n {hour.toString().padStart(1, '0')}:00\r\n \r\n {detailsOfWeek.map((item, index) => {\r\n return getCol(\r\n item.detailHours.find((h) => parseInt(h.hour) === hour)?.attendance || false,\r\n index\r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n/*\r\n const disabled = month !== new Date(item.day).getMonth();\r\n\r\n return disabled ? (\r\n \r\n -\r\n \r\n ) : (\r\n getCol(\r\n item.detailHours.find((h) => parseInt(h.hour) === hour)?.attendance ||\r\n false,\r\n index\r\n )\r\n );\r\n*/\r\n","import { Page, Font, Image, Document, StyleSheet, PDFViewer, Text } from '@react-pdf/renderer';\r\nimport { AttendanceReportData } from 'hooks/useAttendanceReport';\r\nimport { useCallback } from 'react';\r\nimport { AttendanceReport } from '../../../../../@types/AttendanceReport';\r\nimport AttendanceReportHeader from './AtendanceReportHeader';\r\nimport AttendanceReportFooter from './AttendanceReportFooter';\r\nimport AttendanceReportInformation from './AttendanceReportInformations';\r\nimport AttendanceReportPersonnal from './AttendanceReportPersonnal';\r\nimport AttendanceReportWeek from './AttendanceReportWeek';\r\n\r\nFont.register({\r\n family: 'Poppins',\r\n fonts: [\r\n { src: '/fonts/Poppins-Regular.ttf' },\r\n { src: '/fonts/Poppins-Bold.ttf' },\r\n { src: '/fonts/Poppins-SemiBold.ttf' }\r\n ]\r\n});\r\n\r\nconst styles = StyleSheet.create({\r\n page: {\r\n padding: '40px 24px 0 24px',\r\n fontSize: 9,\r\n lineHeight: 1.6,\r\n fontFamily: 'Poppins',\r\n backgroundColor: '#fff'\r\n }\r\n});\r\n\r\ntype AttendanceReportPageProps = {\r\n report: AttendanceReportData;\r\n date: Date;\r\n};\r\n\r\nexport default function AttendanceReportPage({ report, date }: AttendanceReportPageProps) {\r\n const getGenreMasculin = useCallback(() => {\r\n return report?.student?.civilityId === 'M.' ? true : false;\r\n }, [report.student?.id]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {Object.keys(report.weeks).map((index) => {\r\n return (\r\n \r\n );\r\n })}\r\n\r\n \r\n \r\n \r\n );\r\n}\r\n/*\r\n \r\n\r\n `${pageNumber} / ${totalPages}`} />\r\n \r\n*/\r\n","import { LoadingButton } from '@mui/lab';\r\nimport { Icon } from '@iconify/react';\r\nimport downloadFill from '@iconify/icons-eva/download-fill';\r\nimport AttendanceReportPage from './report/AttendanceReportPage';\r\nimport useAttendanceReport from 'hooks/useAttendanceReport';\r\nimport { useEffect } from 'react';\r\nimport { PDFViewer } from '@react-pdf/renderer';\r\nimport { Box } from '@mui/system';\r\nimport { MainSearchStudent } from 'layouts/main/MainSearchStudent';\r\n\r\ntype AttendanceReportItemProps = {\r\n year: number;\r\n month: number;\r\n};\r\n\r\nexport default function AttendanceReportView({ month, year }: AttendanceReportItemProps) {\r\n const { merge, student, contract, weeks } = useAttendanceReport();\r\n\r\n useEffect(() => {\r\n merge(year, month);\r\n }, []);\r\n\r\n if (weeks == null) return ;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { useNavigate, useParams } from 'react-router';\r\nimport { PATH_PAGE } from 'routes/paths';\r\nimport { Box } from '@mui/system';\r\nimport AttendanceReportView from 'components/_dashboard/tracking/attendance/AttendanceReportView';\r\nimport { DialogAnimate } from 'components/animate';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function AttendanceReportLandingPage(props: any) {\r\n const { month, year } = useParams();\r\n\r\n const navigate = useNavigate();\r\n\r\n if (!month || !year) {\r\n navigate(PATH_PAGE.page404);\r\n return <>;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import {\r\n Card,\r\n CardActions,\r\n CardContent,\r\n CardHeader,\r\n Container,\r\n styled,\r\n Button,\r\n Box,\r\n Typography,\r\n Grid,\r\n Stack\r\n} from '@mui/material';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport HeaderBreadcrumbs from 'components/HeaderBreadcrumbs';\r\nimport Page from 'components/Page';\r\nimport PhoneInfo from 'components/PhoneInfo';\r\nimport useExamen from 'hooks/useExamen';\r\nimport { useSelector } from 'react-redux';\r\nimport { useNavigate } from 'react-router';\r\nimport { RootState } from 'redux/store';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { getLabelDefaultCategoryObjectif, getLabelMultiCategoryObjectif } from 'utils/helperExamen';\r\n\r\ntype ExamenInscriptionAddProps = {};\r\n\r\n/**\r\n * Ajout d'une inscription à un examen (sélection du type d'inscription)\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function ExamenInscriptionAdd({}: ExamenInscriptionAddProps) {\r\n const { getContractCurrent } = useExamen();\r\n const contract = getContractCurrent();\r\n const theme = useTheme();\r\n const navigate = useNavigate();\r\n\r\n const { categoriesGereesEnExterne, categoriesGereesParSAY } = useSelector(\r\n (state: RootState) => state.examen\r\n );\r\n\r\n const SubCardStyle = styled(Card)({\r\n padding: 10,\r\n margin: 10,\r\n backgroundColor: theme.palette.grey[100],\r\n boxShadow: theme.customShadows.z12,\r\n height: '100%',\r\n minWidth: '300px',\r\n maxWidth: '450px',\r\n minHeight: '550px',\r\n width: '100%'\r\n });\r\n\r\n const addExamenSAY = () => {\r\n navigate(`${PATH_DASHBOARD.suivi.examenCreateInterne}`);\r\n };\r\n\r\n const addExamenExterne = () => {\r\n navigate(`${PATH_DASHBOARD.suivi.examenCreate}`);\r\n };\r\n\r\n const defaultCategoryLabels = getLabelDefaultCategoryObjectif();\r\n const labelExamSAY = getLabelMultiCategoryObjectif(categoriesGereesParSAY);\r\n const labelExamExterne = getLabelMultiCategoryObjectif(categoriesGereesEnExterne);\r\n\r\n return (\r\n \r\n \r\n \r\n {`Retrouvez dans cette rubrique tous les ${defaultCategoryLabels?.minusculePluriel} que vous souhaitez passer au cours de votre formation.`}\r\n \r\n }\r\n action={\r\n \r\n \r\n \r\n }\r\n />\r\n\r\n \r\n \r\n \r\n {categoriesGereesParSAY?.length > 0 && (\r\n \r\n \r\n \r\n \r\n {labelExamSAY?.debuteMajusculePluriel}\r\n \r\n \r\n {`Dans cette rubrique, pré-inscrivez-vous ${labelExamSAY?.accordPluriel} que vous souhaitez passer et générez votre planning de travail jusqu’${defaultCategoryLabels?.accord}.`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {categoriesGereesEnExterne?.length > 0 && (\r\n \r\n \r\n \r\n \r\n {labelExamExterne?.debuteMajusculePluriel}\r\n \r\n \r\n {`Dans cette rubrique, pré-inscrivez-vous ${labelExamExterne?.accordPluriel} que vous souhaitez passer et générez votre planning de travail jusqu’${defaultCategoryLabels?.accord}.`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport useAuth from './useAuth';\r\nimport {\r\n Academie,\r\n defaultDepartement,\r\n defaultExamen,\r\n Departement,\r\n Examen,\r\n ObjectifGeneral,\r\n RegionAdministrative\r\n} from '../@types/examen';\r\nimport useExamen from './useExamen';\r\n\r\nexport default function useExamenFormGestionInterne() {\r\n const { student } = useAuth();\r\n const { getLabel } = useExamen();\r\n const { examens, departements, academies, regions, objectifSAY, errorForm } = useSelector(\r\n (state: RootState) => state.examen\r\n );\r\n\r\n const objectif: ObjectifGeneral | null = objectifSAY;\r\n\r\n function getExamen() {\r\n if (objectif) {\r\n const examen = examens.find(\r\n (exa: Examen) =>\r\n exa.code === objectif?.code && !['ABA', 'REP'].includes(exa.statutInscription?.code)\r\n );\r\n\r\n if (examen) {\r\n return examen;\r\n } else {\r\n let departement = student?.address?.department;\r\n if (!departement || departement === undefined || departement === '') {\r\n departement = student?.address?.postalCode?.substring(0, 2);\r\n }\r\n return create(departement);\r\n }\r\n }\r\n return new defaultExamen();\r\n }\r\n\r\n function create(departmentCode: string) {\r\n const response = changeDepartment(departmentCode);\r\n let current = new defaultExamen();\r\n\r\n //Infos de l'objectif\r\n if (objectif) {\r\n current.code = objectif.code;\r\n current.categorie = objectif.categorie;\r\n current.designation = objectif.designation;\r\n }\r\n\r\n current.etatInscription = 'PRE';\r\n\r\n if (response) {\r\n current.departement = response.department;\r\n current.region = response.region;\r\n current.academie = response.academie;\r\n }\r\n current.statutInscription = { code: 'ENV', designation: '' };\r\n current.statutResultat = { code: 'INC', designation: '' };\r\n current.formePassage = 'GLO';\r\n\r\n current.gestionInscriptionInterne = true;\r\n\r\n return current;\r\n }\r\n\r\n function changeDepartment(code: string) {\r\n const department = departements.filter((d: Departement) => d.code === code)[0];\r\n const academie = academies.filter((a: Academie) => a.code === department?.academieCode)[0];\r\n const region = regions.filter(\r\n (r: RegionAdministrative) => r.code === department?.regionCode\r\n )[0];\r\n\r\n return {\r\n department,\r\n academie,\r\n region\r\n };\r\n }\r\n\r\n return {\r\n getExamen,\r\n getLabel,\r\n examens,\r\n objectif,\r\n errorForm\r\n };\r\n}\r\n","import {\r\n Alert,\r\n Box,\r\n Button,\r\n Card,\r\n CardActions,\r\n CardContent,\r\n CardHeader,\r\n Grid,\r\n Stack,\r\n Typography\r\n} from '@mui/material';\r\nimport { defaultPeriode, Examen, ObjectifGeneral, PeriodeExamen } from '../../../@types/examen';\r\nimport { getLabelCategoryObjectif, getPeriodesFutures } from 'utils/helperExamen';\r\nimport ExamenPrerequis from './ExamenPrerequis';\r\nimport { SelectField } from 'components/FormikInput';\r\nimport { useEffect } from 'react';\r\nimport { useFormikContext } from 'formik';\r\n\r\ntype ExamenFormPeriodeProps = { objectif: ObjectifGeneral; onClose: () => void };\r\n\r\nexport default function ExamenFormPeriode({ objectif, onClose }: ExamenFormPeriodeProps) {\r\n const { values, setValues } = useFormikContext();\r\n\r\n const labelExamen = getLabelCategoryObjectif(objectif?.categorie);\r\n\r\n const filteredPeriodes = getPeriodesFutures(objectif?.periodes);\r\n\r\n const allowRegistration = filteredPeriodes?.length > 0;\r\n\r\n useEffect(() => {\r\n /*\r\n Informations de la periode au changement de celle-ci\r\n */\r\n let newPeriode = new defaultPeriode();\r\n\r\n if (values?.periode?.code != undefined && values?.periode?.code !== '') {\r\n const infosPeriode = filteredPeriodes?.find((p) => p.code === values.periode.code);\r\n\r\n if (infosPeriode) {\r\n newPeriode = { ...infosPeriode };\r\n }\r\n }\r\n\r\n setValues({ ...values, periode: newPeriode });\r\n }, [values?.periode?.code]);\r\n\r\n if (!objectif) return <>;\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Période\r\n \r\n \r\n {`Quand souhaitez-vous passer ${labelExamen?.precision} ?`}\r\n \r\n {allowRegistration ? (\r\n {\r\n return { code: p.code, label: p.designation };\r\n })}\r\n />\r\n ) : (\r\n \r\n Pour information\r\n {`Les périodes de pré-inscription à votre ${objectif?.designation} ne sont pas encore ouvertes.`}\r\n
\r\n Nous vous invitons à revenir ultérieurement et à rester attentif aux\r\n communications de votre école à ce sujet.\r\n
\r\n )}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {allowRegistration && (\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import * as Yup from 'yup';\r\n\r\nexport const ExamenFormGestIntPeriodeValidationSchema = [\r\n Yup.object().shape({\r\n periode: Yup.object().shape({\r\n code: Yup.string().required('La période est obligatoire')\r\n })\r\n })\r\n];\r\n\r\nexport const ExamenFormGestIntSessionValidationSchema = [\r\n Yup.object().shape({\r\n session: Yup.object().shape({\r\n code: Yup.string().required('La session est obligatoire')\r\n })\r\n })\r\n];\r\n","import { Examen } from '../../../@types/examen';\r\nimport { useFormikContext } from 'formik';\r\nimport ObjectiveParamsForm from '../objective/ObjectiveForm';\r\nimport { formatAPI } from 'utils/formatTime';\r\nimport { addOrUpdate, addWithoutSave, updateDateExamenEnvisagee } from 'redux/slices/examen';\r\nimport { useSnackbar } from 'notistack';\r\nimport { dispatch } from 'redux/store';\r\nimport { Contract } from '../../../@types/contract';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { Stack, Typography } from '@mui/material';\r\n\r\nexport type ExamenFormObjectivePlanningProps = { contract: Contract; onClose: () => void };\r\n\r\nexport default function ExamenFormObjectivePlanning({\r\n contract,\r\n onClose\r\n}: ExamenFormObjectivePlanningProps) {\r\n const { values } = useFormikContext();\r\n\r\n const { enqueueSnackbar } = useSnackbar();\r\n const navigate = useNavigate();\r\n\r\n let datExaEnv: string | null = values?.session?.dateEpreuvesAdmission; // Pour Novadis DatAdmDef\r\n\r\n if (!datExaEnv || datExaEnv === '') {\r\n datExaEnv = values.periode?.code != '' ? formatAPI(values.periode.dateDebut) : '';\r\n }\r\n\r\n const examenObjective: any = {\r\n start: formatAPI(new Date()),\r\n end: datExaEnv\r\n };\r\n\r\n const handleSaveSuccess = () => {\r\n const newDatExaEnv: Date | null = datExaEnv && datExaEnv != '' ? new Date(datExaEnv) : null;\r\n\r\n if (newDatExaEnv) {\r\n dispatch(\r\n updateDateExamenEnvisagee({\r\n contractId: contract?.id,\r\n amendmentId: contract?.amendmentId,\r\n dateEnvisagee: newDatExaEnv\r\n })(() => {\r\n if (values?.session?.code != '') {\r\n dispatch(\r\n addOrUpdate(values)(() => {\r\n enqueueSnackbar('Enregistrement effectué', { variant: 'success' });\r\n navigate(PATH_DASHBOARD.suivi.examens);\r\n })\r\n );\r\n } else if (values?.periode?.code != '') {\r\n dispatch(\r\n addWithoutSave(values)(() => {\r\n enqueueSnackbar('Enregistrement effectué', { variant: 'success' });\r\n navigate(PATH_DASHBOARD.suivi.examens);\r\n })\r\n );\r\n }\r\n })(() => {\r\n enqueueSnackbar('Nous rencontrons actuellement un problème', { variant: 'error' });\r\n })\r\n );\r\n }\r\n };\r\n\r\n if (!contract || !datExaEnv) return <>;\r\n\r\n return (\r\n \r\n \r\n Veuillez nous indiquer vos périodes d'études et de congés afin que nous puissions mieux\r\n planifier votre charge de travail et vous proposer un rythme adapté à vos contraintes.\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Alert, Box, Button, CardActions, Stack, Tooltip, Typography } from '@mui/material';\r\nimport { SelectField } from 'components/FormikInput';\r\nimport { useFormikContext } from 'formik';\r\nimport useExamenFormGestionInterne from 'hooks/useExamenFormGestionInterne';\r\nimport { useEffect } from 'react';\r\nimport { fDate } from 'utils/formatTime';\r\nimport { getSessionsFutures } from 'utils/helperExamen';\r\nimport {\r\n defaultSession,\r\n Epreuve,\r\n Examen,\r\n ObjectifGeneral,\r\n SessionExamen\r\n} from '../../../@types/examen';\r\nimport ExamenCentreInfosDisplay from './ExamenCentreInfosDisplay';\r\nimport ExamenPrerequis from './ExamenPrerequis';\r\n\r\nexport type ExamenFormSessionInterneProps = {\r\n objectif: ObjectifGeneral;\r\n sessionsLocked: Array;\r\n onClose: () => void;\r\n};\r\n\r\n/**\r\n * Créer une session d'examen\r\n * La validation se fait par étape.\r\n * Le paramétrage de la validation se trouve dans un tableau qui correspond à une étape\r\n * @returns\r\n */\r\nexport default function ExamenFormSessionInterne({\r\n objectif,\r\n sessionsLocked,\r\n onClose\r\n}: ExamenFormSessionInterneProps) {\r\n const { values, setValues } = useFormikContext();\r\n\r\n const filteredSessions = getSessionsFutures(objectif?.sessions);\r\n\r\n const listeSessions =\r\n filteredSessions\r\n ?.filter((ses: SessionExamen) => !sessionsLocked.includes(ses.code))\r\n .map((x: SessionExamen) => {\r\n const nbPlacesRestantes = x.nombrePlacesMax - x.nombreInscrits;\r\n const estComplete = nbPlacesRestantes <= 0;\r\n const pluriel = nbPlacesRestantes > 1 ? 's' : '';\r\n\r\n return {\r\n code: x.code,\r\n label: `${x.designation} (${\r\n estComplete ? 'complète' : `${nbPlacesRestantes} place${pluriel} restante${pluriel}`\r\n })`,\r\n date: x.dateEpreuvesAdmission,\r\n disabled: estComplete\r\n };\r\n })\r\n .sort(function (a, b) {\r\n if (a.disabled === b.disabled) {\r\n // Deux sessions dans le même état (complète ou pas) : tri par ordre croissant de dates\r\n if (a.date && b.date) {\r\n if (a.date > b.date) {\r\n return 1;\r\n }\r\n if (a.date < b.date) {\r\n return -1;\r\n }\r\n } else {\r\n if (a.date && !b.date) {\r\n return 1;\r\n }\r\n if (!a.date && b.date) {\r\n return -1;\r\n }\r\n }\r\n return 0;\r\n } else {\r\n // Les sessions désactivées en fin de liste\r\n return a.disabled ? 1 : -1;\r\n }\r\n }) || [];\r\n\r\n const allowRegistration = filteredSessions?.length > 0;\r\n\r\n useEffect(() => {\r\n /*\r\n Récupérer les informations liées à la session au changement de celle ci\r\n */\r\n let newSession: SessionExamen = new defaultSession();\r\n\r\n if (values?.session?.code != undefined && values?.session?.code !== '') {\r\n const infosSession = filteredSessions?.find((s) => s.code === values.session.code);\r\n\r\n if (infosSession) {\r\n newSession = {\r\n ...infosSession,\r\n epreuves: infosSession?.epreuves?.map((epr: Epreuve) => {\r\n return { ...epr, statut: 'INS', note: 0, typeFichier: 'INS' };\r\n }),\r\n centreExamen: infosSession?.centreExamen\r\n };\r\n }\r\n }\r\n\r\n setValues({ ...values, session: newSession });\r\n }, [values?.session?.code]);\r\n\r\n return (\r\n \r\n \r\n {allowRegistration ? (\r\n \r\n \r\n \r\n {values?.session?.dateEpreuvesAdmission != null &&\r\n values?.session?.dateEpreuvesAdmission != '' && (\r\n {`Date des épreuves : ${fDate(\r\n values.session.dateEpreuvesAdmission\r\n )}`}\r\n )}\r\n \r\n \r\n {values?.session?.code && values?.session?.code !== '' && (\r\n \r\n )}\r\n \r\n ) : (\r\n \r\n Pour information\r\n {`Les sessions de votre ${objectif?.designation} ne sont pas encore ouvertes.`}\r\n
\r\n Nous vous invitons à revenir ultérieurement et à rester attentif aux communications de\r\n votre école à ce sujet.\r\n
\r\n )}\r\n
\r\n \r\n \r\n {allowRegistration && (\r\n \r\n \r\n \r\n S'inscrire\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import { Alert, Button, Card, CardActions, CardContent, CardHeader } from '@mui/material';\r\nimport { useNavigate } from 'react-router';\r\nimport { updateDateExamenEnvisagee } from 'redux/slices/examen';\r\nimport { dispatch } from 'redux/store';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { Examen, ObjectifGeneral, TypePeriodeInscription } from '../../../@types/examen';\r\nimport { Form, Formik, FormikErrors, useFormik } from 'formik';\r\nimport { useState } from 'react';\r\nimport useAuth from 'hooks/useAuth';\r\nimport useExamenFormGestionInterne from 'hooks/useExamenFormGestionInterne';\r\nimport ExamenFormPeriode from './ExamenFormPeriode';\r\nimport {\r\n ExamenFormGestIntPeriodeValidationSchema,\r\n ExamenFormGestIntSessionValidationSchema\r\n} from './ExamenFormGestionInterneValidationSchema';\r\nimport ExamenFormObjectivePlanning from './ExamenFormObjectivePlanning';\r\nimport ExamenFormSessionInterne from './ExamenFormSessionInterne';\r\n\r\nexport type ExamenFormGestionInterneProps = {\r\n objectif: ObjectifGeneral;\r\n};\r\n\r\n/**\r\n * Créer une session d'examen\r\n * La validation se fait par étape.\r\n * Le paramétrage de la validation se trouve dans un tableau qui correspond à une étape\r\n * @returns\r\n */\r\nexport default function ExamenFormGestionInterne({ objectif }: ExamenFormGestionInterneProps) {\r\n const { getContractCurrent } = useAuth();\r\n const contractCurrent = getContractCurrent();\r\n\r\n const { getExamen, examens, errorForm } = useExamenFormGestionInterne();\r\n\r\n const navigate = useNavigate();\r\n\r\n const backToExamens = () => {\r\n navigate(PATH_DASHBOARD.suivi.examens);\r\n };\r\n\r\n const backToPeriod = () => {\r\n setActiveStep(0);\r\n };\r\n\r\n const handleNext = () => {\r\n setActiveStep(activeStep + 1);\r\n };\r\n\r\n let formDateEnvisagee = <>;\r\n let validationSchema: Array = [];\r\n\r\n switch (objectif?.periodeInscription) {\r\n case TypePeriodeInscription.Session:\r\n formDateEnvisagee = (\r\n exa.session.code)}\r\n onClose={backToExamens}\r\n />\r\n );\r\n validationSchema = ExamenFormGestIntSessionValidationSchema;\r\n break;\r\n case TypePeriodeInscription.Mois:\r\n formDateEnvisagee = ;\r\n validationSchema = ExamenFormGestIntPeriodeValidationSchema;\r\n break;\r\n case TypePeriodeInscription.Trimestre:\r\n formDateEnvisagee = ;\r\n validationSchema = ExamenFormGestIntPeriodeValidationSchema;\r\n break;\r\n default:\r\n formDateEnvisagee = <>;\r\n validationSchema = [];\r\n break;\r\n }\r\n\r\n let steps = [\r\n {\r\n id: 'DATEENVISAGEE',\r\n label: 'Période',\r\n component: formDateEnvisagee\r\n },\r\n {\r\n id: 'OBJECTIF',\r\n label: 'Objectif',\r\n component: \r\n }\r\n ];\r\n\r\n const [activeStep, setActiveStep] = useState(0);\r\n const isLastStep = activeStep === steps.length - 1;\r\n const currentValidationSchema =\r\n validationSchema.length >= activeStep + 1 ? validationSchema[activeStep] : null;\r\n\r\n const handleSubmit = (values: Examen, actions: any) => {\r\n if (!isLastStep) {\r\n handleNext();\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {(props: any) => {\r\n const { values, errors } = props;\r\n\r\n return
{activeStep === steps.length ? <> : steps[activeStep].component}
;\r\n }}\r\n \r\n {errorForm && {errorForm}}\r\n
\r\n
\r\n );\r\n}\r\n","import { Box, Button, Card, CardContent, Container } from '@mui/material';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport { getLabelCategoryObjectif, getLabelDefaultCategoryObjectif } from 'utils/helperExamen';\r\nimport Page from 'components/Page';\r\nimport HeaderBreadcrumbs from 'components/HeaderBreadcrumbs';\r\nimport ExamenFormPeriode from 'components/_dashboard/examen/ExamenFormPeriode';\r\nimport { ObjectifGeneral } from '../../@types/examen';\r\nimport CardContainer from 'components/CardContainer';\r\nimport ExamenFormGestionInterne from 'components/_dashboard/examen/ExamenFormGestionInterne';\r\nimport EmptyContent from 'components/EmptyContent';\r\n\r\ntype ExamenCreateGestionInterneProps = {};\r\n\r\nexport default function ExamenCreateGestionInterne({}: ExamenCreateGestionInterneProps) {\r\n const { objectifSAY, examens } = useSelector((state: RootState) => state.examen);\r\n\r\n const objectif: ObjectifGeneral | null = objectifSAY;\r\n\r\n // Blindage si navigation par URL\r\n const examAlreadyExists =\r\n objectif &&\r\n examens?.some(\r\n (e) => e.code === objectif.code && !['ABA', 'REP'].includes(e.statutInscription?.code)\r\n );\r\n\r\n const disableAddExamen = !objectif || examAlreadyExists;\r\n\r\n const labelCategoryObjectif = objectif\r\n ? getLabelCategoryObjectif(objectif?.categorie)\r\n : getLabelDefaultCategoryObjectif();\r\n\r\n return (\r\n \r\n \r\n }\r\n />\r\n {disableAddExamen ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { Suspense, lazy, useEffect } from 'react';\r\nimport { Navigate, useRoutes, useLocation } from 'react-router-dom';\r\n// layouts\r\nimport MainLayout, { QuestionnaireLayout } from '../layouts/main';\r\nimport DashboardLayout from '../layouts/dashboard';\r\nimport LogoOnlyLayout from '../layouts/LogoOnlyLayout';\r\n\r\n//type\r\nimport { ModuleType } from '../@types/contract';\r\n\r\n// guards\r\nimport GuestGuard from '../guards/GuestGuard';\r\nimport AuthGuard from '../guards/AuthGuard';\r\n// import RoleBasedGuard from '../guards/RoleBasedGuard';\r\n// components\r\nimport LoadingScreen from '../components/LoadingScreen';\r\n\r\nimport ModuleGuard from 'guards/ModuleGuard';\r\nimport Overtimes from 'pages/dashboard/Overtimes';\r\nimport StudyPlanSearchDetails from 'pages/dashboard/StudyPlanSearchDetails';\r\nimport ExamenCreate from 'pages/dashboard/ExamenCreate';\r\nimport AttendanceReportLandingPage from 'pages/AttendanceReportLandingPage';\r\nimport ExamenInscriptionAdd from 'components/_dashboard/examen/ExamenInscriptionAdd';\r\nimport ExamenCreateGestionInterne from 'pages/dashboard/ExamenCreateGestionInterne';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst Loadable = (Component: React.ElementType) => (props: any) => {\r\n // eslint-disable-next-line react-hooks/rules-of-hooks\r\n const { pathname } = useLocation();\r\n const isDashboard = pathname.includes('/dashboard');\r\n\r\n return (\r\n \r\n }\r\n >\r\n \r\n \r\n );\r\n};\r\n\r\nexport default function Router() {\r\n return useRoutes([\r\n { path: '*', element: },\r\n {\r\n path: 'auth',\r\n\r\n children: [\r\n {\r\n path: 'login',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'register',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n { path: 'login-unprotected', element: },\r\n { path: 'register-unprotected', element: },\r\n { path: 'reset-password', element: },\r\n { path: 'verify', element: },\r\n { path: 'change-password', element: },\r\n\r\n { path: 'auth/', element: }\r\n ]\r\n },\r\n { path: 'reset', element: }, //provisoire le temps de supprimer l'ancien espace élèves\r\n // Dashboard Routes\r\n {\r\n path: 'dashboard',\r\n element: (\r\n \r\n \r\n \r\n ),\r\n children: [\r\n { element: },\r\n\r\n {\r\n path: 'landing-pe',\r\n element: \r\n },\r\n /*\r\n { path: 'app', element: },\r\n { path: 'app/:mode', element: },\r\n */\r\n { path: 'app', element: },\r\n { path: 'app/:mode', element: },\r\n { path: 'mentionslegales', element: },\r\n { path: 'contact', element: },\r\n { path: 'aides', element: },\r\n {\r\n path: 'evaluations',\r\n children: [\r\n {\r\n path: 'details/:itemId',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: '',\r\n element: (\r\n \r\n \r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'prolongation',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n },\r\n\r\n {\r\n path: 'suivi',\r\n children: [\r\n { element: },\r\n {\r\n path: 'skills',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'relevenotes',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'historiques',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'historiques/:historicType',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'internships',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'internship',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'examens',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'examen-new',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'examen-add',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'examen-preinscription',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'article',\r\n children: [\r\n { element: },\r\n {\r\n path: 'list',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: ':id',\r\n element: (\r\n \r\n
{' '}\r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'job',\r\n children: [\r\n { element: },\r\n {\r\n path: 'list',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: ':id',\r\n element: (\r\n \r\n {' '}\r\n \r\n )\r\n }\r\n ]\r\n },\r\n\r\n {\r\n path: 'agenda',\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n\r\n {\r\n path: 'favoris',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'virtualclass',\r\n children: [\r\n { element: },\r\n {\r\n path: 'list',\r\n element: (\r\n \r\n {' '}\r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'workshop',\r\n children: [\r\n { element: },\r\n {\r\n path: 'list',\r\n element: (\r\n \r\n \r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'studyPlan',\r\n children: [\r\n { element: },\r\n { path: 'list', element: },\r\n\r\n {\r\n path: 'details/:itemId/:rowNumber',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n },\r\n {\r\n path: 'details/:itemId',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n },\r\n {\r\n path: 'details/:phaseId/:unityId/:chapterId',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n },\r\n\r\n {\r\n path: 'documents',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n },\r\n {\r\n path: 'activity',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n },\r\n {\r\n path: 'search',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n },\r\n {\r\n path: 'searchdetails',\r\n element: (\r\n \r\n {' '}\r\n {' '}\r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'mail',\r\n children: [\r\n {\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: ':systemLabel/:messageId/:typeId/:messageTypeId',\r\n element: (\r\n \r\n \r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'message',\r\n children: [\r\n {\r\n element: (\r\n \r\n {' '}\r\n \r\n \r\n )\r\n },\r\n {\r\n path: ':systemLabel',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: ':systemLabel/:messageId/:typeId/:messageType',\r\n element: (\r\n \r\n \r\n \r\n )\r\n }\r\n ]\r\n },\r\n {\r\n path: 'student',\r\n children: [\r\n { element: },\r\n {\r\n path: '/dashboard/student/account/:tabName',\r\n element: \r\n }\r\n ]\r\n },\r\n { path: '/dashboard/*', element: }\r\n ]\r\n },\r\n { path: '/', element: },\r\n // Main Routes\r\n {\r\n path: '*',\r\n element: ,\r\n children: [\r\n { path: '500', element: },\r\n { path: '404', element: },\r\n { path: 'Maintenance', element: }\r\n ]\r\n },\r\n\r\n {\r\n path: '/',\r\n element: ,\r\n children: [\r\n {\r\n path: 'assiduite/:year/:month',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: '/',\r\n element: ,\r\n children: [\r\n {\r\n path: 'questionnaire',\r\n element: \r\n }\r\n ]\r\n }\r\n ]);\r\n}\r\n\r\n// IMPORT COMPONENTS\r\n\r\n//close //mode ancien EE\r\nconst PageClose = () => {\r\n return <>;\r\n};\r\n\r\n// Authentication\r\nconst Login = Loadable(lazy(() => import('../pages/authentication/Login')));\r\nconst Register = Loadable(lazy(() => import('../pages/authentication/Register')));\r\nconst ResetPassword = Loadable(lazy(() => import('../pages/authentication/ResetPassword')));\r\nconst ChangePassword = Loadable(lazy(() => import('../pages/authentication/ChangePassword')));\r\nconst VerifyCode = Loadable(lazy(() => import('../pages/authentication/VerifyCode')));\r\n// Dashboard\r\nconst GeneralApp = Loadable(lazy(() => import('../pages/dashboard/GeneralApp')));\r\nconst Dashboard = Loadable(lazy(() => import('../pages/dashboard/Dashboard')));\r\nconst Articles = Loadable(lazy(() => import('../pages/dashboard/Articles')));\r\nconst Article = Loadable(lazy(() => import('../pages/dashboard/Article')));\r\nconst Internships = Loadable(lazy(() => import('../pages/dashboard/Internships')));\r\nconst InternshipCreate = Loadable(lazy(() => import('../pages/dashboard/InternshipCreate')));\r\nconst Examens = Loadable(lazy(() => import('../pages/dashboard/Examens')));\r\n\r\nconst Jobs = Loadable(lazy(() => import('../pages/dashboard/Jobs')));\r\nconst Job = Loadable(lazy(() => import('../pages/dashboard/Job')));\r\nconst LandingStudyPlan = Loadable(lazy(() => import('../pages/LandingStudyPlan')));\r\n\r\nconst StudentAccount = Loadable(lazy(() => import('../pages/dashboard/StudentAccount')));\r\n\r\nconst Agenda = Loadable(lazy(() => import('../pages/dashboard/Agenda')));\r\nconst FavoriteList = Loadable(lazy(() => import('../pages/dashboard/FavoriteList')));\r\nconst VirtualClassList = Loadable(lazy(() => import('../pages/dashboard/VirtualClassList')));\r\nconst Help = Loadable(lazy(() => import('../pages/dashboard/Help')));\r\nconst WorkshopList = Loadable(lazy(() => import('../pages/dashboard/WorkshopList')));\r\nconst MentionLegal = Loadable(lazy(() => import('../pages/dashboard/MentionLegal')));\r\nconst Contact = Loadable(lazy(() => import('../pages/dashboard/Contact')));\r\n\r\nconst Historic = Loadable(lazy(() => import('../pages/dashboard/Historic')));\r\n\r\nconst StudyPlan = Loadable(lazy(() => import('../pages/dashboard/StudyPlan')));\r\nconst StudyPlanDetails = Loadable(lazy(() => import('../pages/dashboard/StudyPlanDetails')));\r\nconst StudyPlanSkills = Loadable(lazy(() => import('../pages/dashboard/StudyPlanSkills')));\r\nconst StudyPlanTools = Loadable(lazy(() => import('../pages/dashboard/StudyPlanTools')));\r\nconst StudyPlanHomeworks = Loadable(lazy(() => import('../pages/dashboard/StudyPlanHomeworks')));\r\nconst StudyPlanSearch = Loadable(lazy(() => import('../pages/dashboard/StudyPlanSearch')));\r\nconst TranscriptOfStudyNotes = Loadable(\r\n lazy(() => import('../pages/dashboard/TranscriptOfStudyNotes'))\r\n);\r\nconst StudyPlanPlanDocuments = Loadable(\r\n lazy(() => import('../pages/dashboard/StudyPlanPlanDocuments'))\r\n);\r\n\r\nconst Mail = Loadable(lazy(() => import('../pages/dashboard/Mail')));\r\nconst Message = Loadable(lazy(() => import('../pages/dashboard/Message')));\r\n\r\nconst Page500 = Loadable(lazy(() => import('../pages/Page500')));\r\nconst NotFound = Loadable(lazy(() => import('../pages/Page404')));\r\nconst Maintenance = Loadable(lazy(() => import('../pages/Maintenance')));\r\nconst LandingSurveyPage = Loadable(lazy(() => import('../pages/LandingSurveyPage')));\r\n","// ----------------------------------------------------------------------\r\n\r\ndeclare module '@mui/system' {\r\n interface Shape {\r\n borderRadiusSm: number | string;\r\n borderRadiusMd: number | string;\r\n }\r\n}\r\n\r\nconst shape = {\r\n borderRadius: 8,\r\n borderRadiusSm: 12,\r\n borderRadiusMd: 16\r\n};\r\n\r\nexport default shape;\r\n","// ----------------------------------------------------------------------\r\n\r\nfunction pxToRem(value: number) {\r\n return `${value / 16}rem`;\r\n}\r\n\r\nfunction responsiveFontSizes({ sm, md, lg }: { sm: number; md: number; lg: number }) {\r\n return {\r\n '@media (min-width:600px)': {\r\n fontSize: pxToRem(sm)\r\n },\r\n '@media (min-width:900px)': {\r\n fontSize: pxToRem(md)\r\n },\r\n '@media (min-width:1200px)': {\r\n fontSize: pxToRem(lg)\r\n }\r\n };\r\n}\r\n\r\nconst FONT_PRIMARY = 'Public Sans, sans-serif'; // Google Font\r\n// const FONT_SECONDARY = 'CircularStd, sans-serif'; // Local Font\r\n\r\nconst typography = {\r\n fontFamily: FONT_PRIMARY,\r\n fontWeightRegular: 400,\r\n fontWeightMedium: 600,\r\n fontWeightBold: 700,\r\n h1: {\r\n fontWeight: 700,\r\n lineHeight: 80 / 64,\r\n fontSize: pxToRem(40),\r\n ...responsiveFontSizes({ sm: 52, md: 58, lg: 64 })\r\n },\r\n h2: {\r\n fontWeight: 700,\r\n lineHeight: 64 / 48,\r\n fontSize: pxToRem(32),\r\n ...responsiveFontSizes({ sm: 40, md: 44, lg: 48 })\r\n },\r\n h3: {\r\n fontWeight: 700,\r\n lineHeight: 1.5,\r\n fontSize: pxToRem(24),\r\n ...responsiveFontSizes({ sm: 26, md: 30, lg: 32 })\r\n },\r\n h4: {\r\n fontWeight: 700,\r\n lineHeight: 1.5,\r\n fontSize: pxToRem(20),\r\n ...responsiveFontSizes({ sm: 20, md: 24, lg: 24 })\r\n },\r\n h5: {\r\n fontWeight: 700,\r\n lineHeight: 1.5,\r\n fontSize: pxToRem(18),\r\n ...responsiveFontSizes({ sm: 19, md: 20, lg: 20 })\r\n },\r\n h6: {\r\n fontWeight: 700,\r\n lineHeight: 28 / 18,\r\n fontSize: pxToRem(17),\r\n ...responsiveFontSizes({ sm: 18, md: 18, lg: 18 })\r\n },\r\n subtitle1: {\r\n fontWeight: 600,\r\n lineHeight: 1.5,\r\n fontSize: pxToRem(16)\r\n },\r\n subtitle2: {\r\n fontWeight: 700,\r\n lineHeight: 22 / 14,\r\n fontSize: pxToRem(14)\r\n },\r\n body1: {\r\n lineHeight: 1.5,\r\n fontSize: pxToRem(16)\r\n },\r\n body2: {\r\n lineHeight: 22 / 14,\r\n fontSize: pxToRem(14)\r\n },\r\n caption: {\r\n lineHeight: 22 / 14,\r\n fontSize: pxToRem(12),\r\n color: '#637381'\r\n },\r\n overline: {\r\n fontWeight: 700,\r\n lineHeight: 1.5,\r\n fontSize: pxToRem(12),\r\n letterSpacing: 1.1,\r\n textTransform: 'uppercase'\r\n },\r\n button: {\r\n fontWeight: 700,\r\n lineHeight: 24 / 14,\r\n fontSize: pxToRem(12),\r\n textTransform: 'initial'\r\n }\r\n} as const;\r\n\r\nexport default typography;\r\n","// ----------------------------------------------------------------------\r\n\r\nconst breakpoints = {\r\n values: {\r\n xs: 0,\r\n sm: 600,\r\n md: 900,\r\n lg: 1200,\r\n xl: 1536\r\n }\r\n};\r\n\r\nexport default breakpoints;\r\n","import { Icon } from '@iconify/react';\r\nimport starFill from '@iconify/icons-eva/star-fill';\r\nimport { Theme } from '@mui/material/styles';\r\nimport { SvgIcon } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst ICON_SMALL = { width: 20, height: 20 };\r\nconst ICON_LARGE = { width: 28, height: 28 };\r\n\r\nconst ICON = (\r\n \r\n \r\n \r\n);\r\n\r\nexport default function Rating(theme: Theme) {\r\n return {\r\n MuiRating: {\r\n defaultProps: {\r\n emptyIcon: ICON,\r\n icon: ICON\r\n },\r\n\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-disabled': {\r\n opacity: 0.48\r\n }\r\n },\r\n iconEmpty: { color: theme.palette.grey[500_48] },\r\n sizeSmall: { '& svg': { ...ICON_SMALL } },\r\n sizeLarge: { '& svg': { ...ICON_LARGE } }\r\n }\r\n }\r\n };\r\n}\r\n","import { Icon } from '@iconify/react';\r\nimport plusSquareOutline from '@iconify/icons-eva/plus-square-outline';\r\nimport minusSquareOutline from '@iconify/icons-eva/minus-square-outline';\r\nimport closeSquareOutline from '@iconify/icons-eva/close-square-outline';\r\nimport { Theme } from '@mui/material/styles';\r\nimport { Box } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst ICON_SIZE = { width: 20, height: 20 };\r\n\r\nexport default function TreeView(theme: Theme) {\r\n return {\r\n MuiTreeView: {\r\n defaultProps: {\r\n defaultCollapseIcon: ,\r\n defaultExpandIcon: ,\r\n defaultEndIcon: (\r\n \r\n )\r\n }\r\n },\r\n MuiTreeItem: {\r\n styleOverrides: {\r\n label: { ...theme.typography.body2 },\r\n iconContainer: { width: 'auto' }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\nimport { SvgIcon, SvgIconProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction Icon(props: SvgIconProps) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction CheckedIcon(props: SvgIconProps) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction IndeterminateIcon(props: SvgIconProps) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default function Checkbox(theme: Theme) {\r\n return {\r\n MuiCheckbox: {\r\n defaultProps: {\r\n icon: ,\r\n checkedIcon: ,\r\n indeterminateIcon: \r\n },\r\n\r\n styleOverrides: {\r\n root: {\r\n padding: theme.spacing(1),\r\n '&.Mui-checked.Mui-disabled, &.Mui-disabled': {\r\n color: theme.palette.action.disabled\r\n },\r\n '& .MuiSvgIcon-fontSizeMedium': {\r\n width: 24,\r\n height: 24\r\n },\r\n '& .MuiSvgIcon-fontSizeSmall': {\r\n width: 20,\r\n height: 20\r\n },\r\n svg: {\r\n fontSize: 24,\r\n '&[font-size=small]': {\r\n fontSize: 20\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { merge } from 'lodash';\r\nimport { Theme } from '@mui/material/styles';\r\nimport Fab from './Fab';\r\nimport Card from './Card';\r\nimport Chip from './Chip';\r\nimport Tabs from './Tabs';\r\nimport Menu from './Menu';\r\nimport Grid from './Grid';\r\nimport Link from './Link';\r\nimport Lists from './Lists';\r\nimport Table from './Table';\r\nimport Alert from './Alert';\r\nimport Badge from './Badge';\r\nimport Paper from './Paper';\r\nimport Input from './Input';\r\nimport Radio from './Radio';\r\nimport Drawer from './Drawer';\r\nimport Dialog from './Dialog';\r\nimport Avatar from './Avatar';\r\nimport Rating from './Rating';\r\nimport Slider from './Slider';\r\nimport Button from './Button';\r\nimport Switch from './Switch';\r\nimport Select from './Select';\r\nimport SvgIcon from './SvgIcon';\r\nimport Tooltip from './Tooltip';\r\nimport Popover from './Popover';\r\nimport Stepper from './Stepper';\r\nimport Pickers from './Pickers';\r\nimport DataGrid from './DataGrid';\r\nimport Skeleton from './Skeleton';\r\nimport Backdrop from './Backdrop';\r\nimport Snackbar from './Snackbar';\r\nimport Progress from './Progress';\r\nimport Timeline from './Timeline';\r\nimport TreeView from './TreeView';\r\nimport Checkbox from './Checkbox';\r\nimport Container from './Container';\r\nimport Accordion from './Accordion';\r\nimport Typography from './Typography';\r\nimport Pagination from './Pagination';\r\nimport IconButton from './IconButton';\r\nimport Breadcrumbs from './Breadcrumbs';\r\nimport ButtonGroup from './ButtonGroup';\r\nimport Autocomplete from './Autocomplete';\r\nimport ToggleButton from './ToggleButton';\r\nimport ControlLabel from './ControlLabel';\r\nimport LoadingButton from './LoadingButton';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function ComponentsOverrides(theme: Theme) {\r\n return merge(\r\n Fab(theme),\r\n Tabs(theme),\r\n Chip(theme),\r\n Card(theme),\r\n Menu(theme),\r\n Grid(theme),\r\n Link(theme),\r\n Input(theme),\r\n Radio(theme),\r\n Badge(theme),\r\n Lists(theme),\r\n Table(theme),\r\n Paper(theme),\r\n Alert(theme),\r\n Switch(theme),\r\n Select(theme),\r\n Button(theme),\r\n Rating(theme),\r\n Dialog(theme),\r\n Avatar(theme),\r\n Slider(theme),\r\n Drawer(theme),\r\n Pickers(theme),\r\n Stepper(theme),\r\n Tooltip(theme),\r\n Popover(theme),\r\n SvgIcon(theme),\r\n Checkbox(theme),\r\n DataGrid(theme),\r\n Skeleton(theme),\r\n Timeline(theme),\r\n TreeView(theme),\r\n Backdrop(theme),\r\n Snackbar(theme),\r\n Progress(theme),\r\n Container(theme),\r\n Accordion(theme),\r\n IconButton(theme),\r\n Typography(theme),\r\n Pagination(theme),\r\n ButtonGroup(theme),\r\n Breadcrumbs(theme),\r\n Autocomplete(theme),\r\n ControlLabel(theme),\r\n ToggleButton(theme),\r\n LoadingButton(theme)\r\n );\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Fab(theme: Theme) {\r\n return {\r\n MuiFab: {\r\n defaultProps: {\r\n color: 'primary'\r\n },\r\n\r\n styleOverrides: {\r\n root: {\r\n boxShadow: theme.customShadows.z8,\r\n '&:hover': {\r\n boxShadow: 'none',\r\n backgroundColor: theme.palette.grey[400]\r\n }\r\n },\r\n primary: {\r\n boxShadow: theme.customShadows.primary,\r\n '&:hover': {\r\n backgroundColor: theme.palette.primary.dark\r\n }\r\n },\r\n secondary: {\r\n boxShadow: theme.customShadows.secondary,\r\n '&:hover': {\r\n backgroundColor: theme.palette.secondary.dark\r\n }\r\n },\r\n extended: {\r\n '& svg': {\r\n marginRight: theme.spacing(1)\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Tabs(theme: Theme) {\r\n return {\r\n MuiTab: {\r\n styleOverrides: {\r\n root: {\r\n padding: 0,\r\n fontWeight: theme.typography.fontWeightMedium,\r\n borderTopLeftRadius: theme.shape.borderRadius,\r\n borderTopRightRadius: theme.shape.borderRadius,\r\n '&.Mui-selected': {\r\n //color: theme.palette.text.primary\r\n },\r\n '&:not(:last-of-type)': {\r\n marginRight: theme.spacing(5)\r\n },\r\n '@media (min-width: 600px)': {\r\n minWidth: 48\r\n }\r\n },\r\n labelIcon: {\r\n minHeight: 48,\r\n flexDirection: 'row',\r\n '& > *:first-of-type': {\r\n marginBottom: 0,\r\n marginRight: theme.spacing(1)\r\n }\r\n },\r\n wrapper: {\r\n flexDirection: 'row',\r\n whiteSpace: 'nowrap'\r\n },\r\n textColorInherit: {\r\n opacity: 1,\r\n color: theme.palette.text.secondary\r\n },\r\n '&.MuiTabs-indicator': {\r\n height: 5\r\n }\r\n }\r\n },\r\n MuiTabPanel: {\r\n styleOverrides: {\r\n root: {\r\n padding: 0\r\n }\r\n }\r\n },\r\n MuiTabScrollButton: {\r\n styleOverrides: {\r\n root: {\r\n width: 48,\r\n borderRadius: '50%'\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Icon } from '@iconify/react';\r\nimport closeCircleFill from '@iconify/icons-eva/close-circle-fill';\r\nimport { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Chip(theme: Theme) {\r\n return {\r\n MuiChip: {\r\n defaultProps: {\r\n deleteIcon: \r\n },\r\n\r\n styleOverrides: {\r\n colorDefault: {\r\n '& .MuiChip-avatarMedium, .MuiChip-avatarSmall': {\r\n color: theme.palette.text.secondary\r\n }\r\n },\r\n outlined: {\r\n borderColor: theme.palette.grey[500_32],\r\n '&.MuiChip-colorPrimary': {\r\n borderColor: theme.palette.primary.main\r\n },\r\n '&.MuiChip-colorSecondary': {\r\n borderColor: theme.palette.secondary.main\r\n }\r\n },\r\n //\r\n avatarColorInfo: {\r\n color: theme.palette.info.contrastText,\r\n backgroundColor: theme.palette.info.dark\r\n },\r\n avatarColorSuccess: {\r\n color: theme.palette.success.contrastText,\r\n backgroundColor: theme.palette.success.dark\r\n },\r\n avatarColorWarning: {\r\n color: theme.palette.warning.contrastText,\r\n backgroundColor: theme.palette.warning.dark\r\n },\r\n avatarColorError: {\r\n color: theme.palette.error.contrastText,\r\n backgroundColor: theme.palette.error.dark\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Card(theme: Theme) {\r\n return {\r\n MuiCard: {\r\n styleOverrides: {\r\n root: {\r\n boxShadow: theme.customShadows.z1,\r\n borderRadius: theme.shape.borderRadiusMd,\r\n position: 'relative',\r\n zIndex: 0 // Fix Safari overflow: hidden with border radius\r\n }\r\n }\r\n },\r\n MuiCardHeader: {\r\n defaultProps: {\r\n titleTypographyProps: { variant: 'h6' },\r\n subheaderTypographyProps: { variant: 'body2', marginTop: theme.spacing(0.5) }\r\n },\r\n styleOverrides: {\r\n root: {\r\n padding: theme.spacing(3, 3, 0)\r\n }\r\n }\r\n },\r\n MuiCardContent: {\r\n styleOverrides: {\r\n root: {\r\n padding: theme.spacing(3)\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Menu(theme: Theme) {\r\n return {\r\n MuiMenuItem: {\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-selected': {\r\n backgroundColor: theme.palette.action.selected,\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Grid(theme: Theme) {\r\n return {\r\n MuiGrid: {\r\n styleOverrides: {}\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Link(theme: Theme) {\r\n return {\r\n MuiLink: {\r\n defaultProps: {\r\n underline: 'hover'\r\n },\r\n\r\n styleOverrides: {\r\n root: {}\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Input(theme: Theme) {\r\n return {\r\n MuiInputBase: {\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-disabled': {\r\n '& svg': { color: theme.palette.text.disabled }\r\n }\r\n },\r\n input: {\r\n '&::placeholder': {\r\n opacity: 1,\r\n color: theme.palette.text.disabled\r\n }\r\n }\r\n }\r\n },\r\n MuiInput: {\r\n styleOverrides: {\r\n underline: {\r\n '&:before': {\r\n borderBottomColor: theme.palette.grey[500_56]\r\n }\r\n }\r\n }\r\n },\r\n MuiFilledInput: {\r\n styleOverrides: {\r\n root: {\r\n backgroundColor: theme.palette.grey[500_12],\r\n '&:hover': {\r\n backgroundColor: theme.palette.grey[500_16]\r\n },\r\n '&.Mui-focused': {\r\n backgroundColor: theme.palette.action.focus\r\n },\r\n '&.Mui-disabled': {\r\n backgroundColor: theme.palette.action.disabledBackground\r\n }\r\n },\r\n underline: {\r\n '&:before': {\r\n borderBottomColor: theme.palette.grey[500_56]\r\n }\r\n }\r\n }\r\n },\r\n MuiOutlinedInput: {\r\n styleOverrides: {\r\n root: {\r\n '& .MuiOutlinedInput-notchedOutline': {\r\n borderColor: theme.palette.grey[500_32]\r\n },\r\n '&.Mui-disabled': {\r\n '& .MuiOutlinedInput-notchedOutline': {\r\n borderColor: theme.palette.action.disabledBackground\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Radio(theme: Theme) {\r\n return {\r\n MuiRadio: {\r\n styleOverrides: {\r\n root: {\r\n padding: theme.spacing(1),\r\n svg: {\r\n fontSize: 24,\r\n '&[font-size=small]': {\r\n fontSize: 20\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Badge(theme: Theme) {\r\n return {\r\n MuiBadge: {\r\n styleOverrides: {\r\n dot: {\r\n width: 10,\r\n height: 10,\r\n borderRadius: '50%'\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Lists(theme: Theme) {\r\n return {\r\n MuiListItemIcon: {\r\n styleOverrides: {\r\n root: {\r\n minWidth: 'auto', // color: '#637381', //!important\r\n marginRight: theme.spacing(2)\r\n }\r\n }\r\n },\r\n MuiListItemAvatar: {\r\n styleOverrides: {\r\n root: {\r\n minWidth: 'auto',\r\n marginRight: theme.spacing(2)\r\n }\r\n }\r\n },\r\n MuiListItemText: {\r\n styleOverrides: {\r\n root: {\r\n marginTop: 0,\r\n marginBottom: 0\r\n },\r\n multiline: {\r\n marginTop: 0,\r\n marginBottom: 0\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n/**\r\n *\r\n *\r\n *\r\n */\r\nexport default function Table(theme: Theme) {\r\n return {\r\n MuiTableRow: {\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-selected': {\r\n backgroundColor: theme.palette.action.selected,\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n }\r\n }\r\n },\r\n MuiTableCell: {\r\n styleOverrides: {\r\n root: {\r\n borderBottom: 'none'\r\n },\r\n head: {\r\n color: theme.palette.text.secondary,\r\n backgroundColor: theme.palette.background.neutral,\r\n '&:first-of-type': {\r\n paddingLeft: theme.spacing(3),\r\n borderTopLeftRadius: theme.shape.borderRadius,\r\n borderBottomLeftRadius: theme.shape.borderRadius,\r\n boxShadow: `inset 8px 0 0 ${theme.palette.background.paper}`\r\n },\r\n '&:last-of-type': {\r\n paddingRight: theme.spacing(3),\r\n borderTopRightRadius: theme.shape.borderRadius,\r\n borderBottomRightRadius: theme.shape.borderRadius,\r\n boxShadow: `inset -8px 0 0 ${theme.palette.background.paper}`\r\n }\r\n },\r\n stickyHeader: {\r\n backgroundColor: theme.palette.background.paper,\r\n backgroundImage: `linear-gradient(to bottom, ${theme.palette.background.neutral} 0%, ${theme.palette.background.neutral} 100%)`\r\n },\r\n body: {\r\n '&:first-of-type': {\r\n paddingLeft: theme.spacing(3)\r\n },\r\n '&:last-of-type': {\r\n paddingRight: theme.spacing(3)\r\n }\r\n }\r\n }\r\n },\r\n MuiTablePagination: {\r\n styleOverrides: {\r\n root: {\r\n borderTop: `solid 1px ${theme.palette.divider}`\r\n },\r\n toolbar: {\r\n height: 64\r\n },\r\n select: {\r\n '&:focus': {\r\n borderRadius: theme.shape.borderRadius\r\n }\r\n },\r\n selectIcon: {\r\n width: 20,\r\n height: 20,\r\n marginTop: 2\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Paper(theme: Theme) {\r\n return {\r\n MuiPaper: {\r\n defaultProps: {\r\n elevation: 0\r\n },\r\n\r\n styleOverrides: {\r\n root: {\r\n backgroundImage: 'none'\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Icon } from '@iconify/react';\r\nimport infoFill from '@iconify/icons-eva/info-fill';\r\nimport alertCircleFill from '@iconify/icons-eva/alert-circle-fill';\r\nimport alertTriangleFill from '@iconify/icons-eva/alert-triangle-fill';\r\nimport checkmarkCircle2Fill from '@iconify/icons-eva/checkmark-circle-2-fill';\r\n// material\r\nimport { Theme } from '@mui/material/styles';\r\n// @types\r\nimport { ColorSchema } from '../../@types/theme';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Alert(theme: Theme) {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n const standardStyle = (color: ColorSchema) => ({\r\n color: theme.palette[color][isLight ? 'darker' : 'lighter'],\r\n backgroundColor: theme.palette[color][isLight ? 'lighter' : 'darker'],\r\n '& .MuiAlert-icon': {\r\n color: theme.palette[color][isLight ? 'main' : 'light']\r\n }\r\n });\r\n\r\n const filledStyle = (color: ColorSchema) => ({\r\n color: theme.palette[color].contrastText\r\n });\r\n\r\n const outlinedStyle = (color: ColorSchema) => ({\r\n color: theme.palette[color][isLight ? 'darker' : 'lighter'],\r\n border: `solid 1px ${theme.palette[color][isLight ? 'light' : 'dark']}`,\r\n backgroundColor: theme.palette[color][isLight ? 'lighter' : 'darker'],\r\n '& .MuiAlert-icon': {\r\n color: theme.palette[color][isLight ? 'main' : 'light']\r\n }\r\n });\r\n\r\n return {\r\n MuiAlert: {\r\n defaultProps: {\r\n iconMapping: {\r\n error: ,\r\n info: ,\r\n success: ,\r\n warning: \r\n }\r\n },\r\n\r\n styleOverrides: {\r\n message: {\r\n '& .MuiAlertTitle-root': {\r\n marginBottom: theme.spacing(0.5)\r\n }\r\n },\r\n action: {\r\n '& button:not(:first-of-type)': {\r\n marginLeft: theme.spacing(1)\r\n }\r\n },\r\n\r\n standardInfo: standardStyle('info'),\r\n standardSuccess: standardStyle('success'),\r\n standardWarning: standardStyle('warning'),\r\n standardError: standardStyle('error'),\r\n\r\n filledInfo: filledStyle('info'),\r\n filledSuccess: filledStyle('success'),\r\n filledWarning: filledStyle('warning'),\r\n filledError: filledStyle('error'),\r\n\r\n outlinedInfo: outlinedStyle('info'),\r\n outlinedSuccess: outlinedStyle('success'),\r\n outlinedWarning: outlinedStyle('warning'),\r\n outlinedError: outlinedStyle('error')\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Switch(theme: Theme) {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n MuiSwitch: {\r\n styleOverrides: {\r\n thumb: {\r\n boxShadow: theme.customShadows.z1\r\n },\r\n track: {\r\n opacity: 1,\r\n backgroundColor: theme.palette.grey[500]\r\n },\r\n switchBase: {\r\n left: 0,\r\n right: 'auto',\r\n '&:not(:.Mui-checked)': {\r\n color: theme.palette.grey[isLight ? 100 : 300]\r\n },\r\n '&.Mui-checked.Mui-disabled, &.Mui-disabled': {\r\n color: theme.palette.grey[isLight ? 400 : 600]\r\n },\r\n '&.Mui-disabled+.MuiSwitch-track': {\r\n opacity: 1,\r\n backgroundColor: `${theme.palette.action.disabledBackground} !important`\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import ExpandMoreRoundedIcon from '@mui/icons-material/ExpandMoreRounded';\r\nimport { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Select(theme: Theme) {\r\n return {\r\n MuiSelect: {\r\n defaultProps: {\r\n IconComponent: ExpandMoreRoundedIcon\r\n },\r\n\r\n styleOverrides: {\r\n root: {}\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Button(theme: Theme) {\r\n return {\r\n MuiButton: {\r\n styleOverrides: {\r\n root: {\r\n '&:hover': {\r\n boxShadow: 'none'\r\n }\r\n },\r\n sizeLarge: {\r\n height: 48\r\n },\r\n // contained\r\n containedInherit: {\r\n color: theme.palette.grey[800],\r\n boxShadow: theme.customShadows.z8,\r\n '&:hover': {\r\n backgroundColor: theme.palette.grey[400]\r\n }\r\n },\r\n containedPrimary: {\r\n boxShadow: theme.customShadows.primary\r\n },\r\n containedSecondary: {\r\n boxShadow: theme.customShadows.secondary\r\n },\r\n containedInfo: {\r\n boxShadow: theme.customShadows.info\r\n },\r\n containedSuccess: {\r\n boxShadow: theme.customShadows.success\r\n },\r\n containedWarning: {\r\n boxShadow: theme.customShadows.warning\r\n },\r\n containedError: {\r\n boxShadow: theme.customShadows.error\r\n },\r\n // outlined\r\n outlinedInherit: {\r\n border: `1px solid ${theme.palette.grey[500_32]}`,\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n },\r\n textInherit: {\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Dialog(theme: Theme) {\r\n return {\r\n MuiDialog: {\r\n styleOverrides: {\r\n paper: {\r\n boxShadow: theme.customShadows.z24,\r\n '&.MuiPaper-rounded': {\r\n borderRadius: theme.shape.borderRadiusMd\r\n },\r\n '&.MuiDialog-paperFullScreen': {\r\n borderRadius: 0\r\n },\r\n '&.MuiDialog-paper .MuiDialogActions-root': {\r\n padding: theme.spacing(3)\r\n },\r\n '@media (max-width: 600px)': {\r\n margin: theme.spacing(2)\r\n },\r\n '@media (max-width: 663.95px)': {\r\n '&.MuiDialog-paperWidthSm.MuiDialog-paperScrollBody': {\r\n maxWidth: '100%'\r\n }\r\n }\r\n },\r\n paperFullWidth: {\r\n width: '100%'\r\n }\r\n }\r\n },\r\n MuiDialogTitle: {\r\n styleOverrides: {\r\n root: {\r\n padding: theme.spacing(3, 3, 0)\r\n }\r\n }\r\n },\r\n MuiDialogContent: {\r\n styleOverrides: {\r\n root: {\r\n borderTop: 0,\r\n borderBottom: 0,\r\n padding: theme.spacing(3)\r\n }\r\n }\r\n },\r\n MuiDialogActions: {\r\n styleOverrides: {\r\n root: {\r\n '& > :not(:first-of-type)': {\r\n marginLeft: theme.spacing(1.5)\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Avatar(theme: Theme) {\r\n return {\r\n MuiAvatar: {\r\n styleOverrides: {\r\n colorDefault: {\r\n color: theme.palette.text.secondary,\r\n backgroundColor: theme.palette.grey[400]\r\n }\r\n }\r\n },\r\n MuiAvatarGroup: {\r\n styleOverrides: {\r\n avatar: {\r\n fontSize: 16,\r\n fontWeight: theme.typography.fontWeightMedium,\r\n '&:first-of-type': {\r\n fontSize: 14,\r\n color: theme.palette.primary.main,\r\n backgroundColor: theme.palette.primary.lighter\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Slider(theme: Theme) {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n MuiSlider: {\r\n defaultProps: {\r\n size: 'small'\r\n },\r\n\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-disabled': {\r\n color: theme.palette.action.disabled\r\n }\r\n },\r\n markLabel: {\r\n fontSize: 13,\r\n color: theme.palette.text.disabled\r\n },\r\n valueLabel: {\r\n borderRadius: 8,\r\n backgroundColor: theme.palette.grey[isLight ? 800 : 700]\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { alpha, Theme } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Drawer(theme: Theme) {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n MuiDrawer: {\r\n styleOverrides: {\r\n modal: {\r\n '&[role=\"presentation\"]': {\r\n '& .MuiDrawer-paperAnchorLeft': {\r\n boxShadow: `8px 24px 24px 12px ${alpha(\r\n theme.palette.grey[900],\r\n isLight ? 0.16 : 0.48\r\n )}`\r\n },\r\n '& .MuiDrawer-paperAnchorRight': {\r\n backgroundColor: '#FFF',\r\n boxShadow: `-8px 24px 24px 12px ${alpha(\r\n theme.palette.grey[900],\r\n isLight ? 0.16 : 0.48\r\n )}`\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Pickers(theme: Theme) {\r\n return {};\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Stepper(theme: Theme) {\r\n return {\r\n MuiStepConnector: {\r\n styleOverrides: {\r\n line: {\r\n borderColor: theme.palette.divider\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Tooltip(theme: Theme) {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n MuiTooltip: {\r\n styleOverrides: {\r\n tooltip: {\r\n backgroundColor: theme.palette.grey[isLight ? 600 : 500]\r\n },\r\n arrow: {\r\n color: theme.palette.grey[isLight ? 600 : 500]\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Popover(theme: Theme) {\r\n return {\r\n MuiPopover: {\r\n styleOverrides: {\r\n paper: {\r\n boxShadow: theme.customShadows.z12\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function SvgIcon(theme: Theme) {\r\n return {\r\n MuiSvgIcon: {\r\n styleOverrides: {\r\n fontSizeSmall: {\r\n width: 20,\r\n height: 20,\r\n fontSize: 'inherit'\r\n },\r\n fontSizeLarge: {\r\n width: 32,\r\n height: 32,\r\n fontSize: 'inherit'\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function DataGrid(theme: Theme) {\r\n return {\r\n MuiDataGrid: {\r\n styleOverrides: {\r\n root: {\r\n borderRadius: 0,\r\n border: `1px solid transparent`,\r\n '& .MuiTablePagination-root': {\r\n borderTop: 0\r\n },\r\n '& .MuiDataGrid-toolbarContainer': {\r\n padding: theme.spacing(2),\r\n backgroundColor: theme.palette.background.neutral,\r\n '& .MuiButton-root': {\r\n marginRight: theme.spacing(1.5),\r\n color: theme.palette.text.primary,\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n },\r\n '& .MuiDataGrid-cell, .MuiDataGrid-columnsContainer': {\r\n borderBottom: `1px solid ${theme.palette.divider}`\r\n },\r\n '& .MuiDataGrid-columnSeparator': {\r\n color: theme.palette.divider\r\n },\r\n '& .MuiDataGrid-columnHeader[data-field=\"__check__\"]': {\r\n padding: 0\r\n }\r\n }\r\n }\r\n },\r\n MuiGridMenu: {\r\n styleOverrides: {\r\n root: {\r\n '& .MuiDataGrid-gridMenuList': {\r\n boxShadow: theme.customShadows.z20,\r\n borderRadius: theme.shape.borderRadius\r\n },\r\n '& .MuiMenuItem-root': {\r\n ...theme.typography.body2\r\n }\r\n }\r\n }\r\n },\r\n MuiGridFilterForm: {\r\n styleOverrides: {\r\n root: {\r\n padding: theme.spacing(1.5, 0),\r\n '& .MuiFormControl-root': {\r\n margin: theme.spacing(0, 0.5)\r\n },\r\n '& .MuiInput-root': {\r\n marginTop: theme.spacing(3),\r\n '&::before, &::after': {\r\n display: 'none'\r\n },\r\n '& .MuiNativeSelect-select, .MuiInput-input': {\r\n ...theme.typography.body2,\r\n padding: theme.spacing(0.75, 1),\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: theme.palette.background.neutral\r\n },\r\n '& .MuiSvgIcon-root': {\r\n right: 4\r\n }\r\n }\r\n }\r\n }\r\n },\r\n MuiGridPanelFooter: {\r\n styleOverrides: {\r\n root: {\r\n padding: theme.spacing(2),\r\n justifyContent: 'flex-end',\r\n '& .MuiButton-root': {\r\n '&:first-of-type': {\r\n marginRight: theme.spacing(1.5),\r\n color: theme.palette.text.primary,\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n },\r\n '&:last-of-type': {\r\n color: theme.palette.common.white,\r\n backgroundColor: theme.palette.primary.main,\r\n '&:hover': {\r\n backgroundColor: theme.palette.primary.dark\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Skeleton(theme: Theme) {\r\n return {\r\n MuiSkeleton: {\r\n defaultProps: {\r\n animation: 'wave'\r\n },\r\n\r\n styleOverrides: {\r\n root: {\r\n backgroundColor: theme.palette.background.neutral\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Timeline(theme: Theme) {\r\n return {\r\n MuiTimelineDot: {\r\n styleOverrides: {\r\n root: {\r\n boxShadow: 'none'\r\n }\r\n }\r\n },\r\n\r\n MuiTimelineConnector: {\r\n styleOverrides: {\r\n root: {\r\n backgroundColor: theme.palette.divider\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { alpha, Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Backdrop(theme: Theme) {\r\n const varLow = alpha(theme.palette.grey[900], 0.48);\r\n const varHigh = alpha(theme.palette.grey[900], 1);\r\n\r\n return {\r\n MuiBackdrop: {\r\n styleOverrides: {\r\n root: {\r\n background: [\r\n `rgb(22,28,36)`,\r\n `-moz-linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`,\r\n `-webkit-linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`,\r\n `linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`\r\n ],\r\n '&.MuiBackdrop-invisible': {\r\n background: 'transparent'\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Snackbar(theme: Theme) {\r\n return {\r\n MuiSnackbarContent: {\r\n styleOverrides: {\r\n root: {}\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Progress(theme: Theme) {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n MuiLinearProgress: {\r\n styleOverrides: {\r\n root: {\r\n borderRadius: 4,\r\n overflow: 'hidden'\r\n },\r\n bar: {\r\n borderRadius: 4\r\n },\r\n colorPrimary: {\r\n backgroundColor: theme.palette.primary[isLight ? 'lighter' : 'darker']\r\n },\r\n buffer: {\r\n backgroundColor: 'transparent'\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Container(theme: Theme) {\r\n return {\r\n MuiContainer: {\r\n styleOverrides: {\r\n root: {}\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Accordion(theme: Theme) {\r\n return {\r\n MuiAccordion: {\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-expanded': {\r\n boxShadow: theme.customShadows.z8,\r\n borderRadius: theme.shape.borderRadius\r\n },\r\n '&.Mui-disabled': {\r\n backgroundColor: 'transparent'\r\n }\r\n }\r\n }\r\n },\r\n MuiAccordionSummary: {\r\n styleOverrides: {\r\n root: {\r\n paddingLeft: theme.spacing(2),\r\n paddingRight: theme.spacing(1),\r\n '&.Mui-disabled': {\r\n opacity: 1,\r\n color: theme.palette.action.disabled,\r\n '& .MuiTypography-root': {\r\n color: 'inherit'\r\n }\r\n }\r\n },\r\n expandIconWrapper: {\r\n color: 'inherit'\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function IconButton(theme: Theme) {\r\n return {\r\n MuiIconButton: {\r\n styleOverrides: {\r\n root: {}\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Typography(theme: Theme) {\r\n return {\r\n MuiTypography: {\r\n styleOverrides: {\r\n paragraph: {\r\n marginBottom: theme.spacing(2)\r\n },\r\n gutterBottom: {\r\n marginBottom: theme.spacing(1)\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { alpha, Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Pagination(theme: Theme) {\r\n return {\r\n MuiPaginationItem: {\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-selected': {\r\n fontWeight: theme.typography.fontWeightBold\r\n }\r\n },\r\n textPrimary: {\r\n '&.Mui-selected': {\r\n color: theme.palette.primary.main,\r\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\r\n '&:hover, &.Mui-focusVisible': {\r\n backgroundColor: `${alpha(theme.palette.primary.main, 0.24)} !important`\r\n }\r\n }\r\n },\r\n outlined: {\r\n border: `1px solid ${theme.palette.grey[500_32]}`\r\n },\r\n outlinedPrimary: {\r\n '&.Mui-selected': {\r\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\r\n border: `1px solid ${alpha(theme.palette.primary.main, 0.24)}`\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function ButtonGroup(theme: Theme) {\r\n const styleContained = (\r\n color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'\r\n ) => ({\r\n props: { variant: 'contained', color },\r\n style: { boxShadow: theme.customShadows[color] }\r\n });\r\n\r\n return {\r\n MuiButtonGroup: {\r\n variants: [\r\n {\r\n props: { variant: 'contained', color: 'inherit' },\r\n style: { boxShadow: theme.customShadows.z8 }\r\n },\r\n styleContained('primary'),\r\n styleContained('secondary'),\r\n styleContained('info'),\r\n styleContained('success'),\r\n styleContained('warning'),\r\n styleContained('error'),\r\n\r\n {\r\n props: { disabled: true },\r\n style: {\r\n boxShadow: 'none',\r\n '& .MuiButtonGroup-grouped.Mui-disabled': {\r\n color: theme.palette.action.disabled,\r\n borderColor: `${theme.palette.action.disabledBackground} !important`,\r\n '&.MuiButton-contained': {\r\n backgroundColor: theme.palette.action.disabledBackground\r\n }\r\n }\r\n }\r\n }\r\n ],\r\n\r\n styleOverrides: {\r\n root: {\r\n '&:hover': {\r\n boxShadow: 'none'\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Breadcrumbs(theme: Theme) {\r\n return {\r\n MuiBreadcrumbs: {\r\n styleOverrides: {\r\n separator: {\r\n marginLeft: theme.spacing(0.5),\r\n marginRight: theme.spacing(0.5)\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Autocomplete(theme: Theme) {\r\n return {\r\n MuiAutocomplete: {\r\n styleOverrides: {\r\n paper: {\r\n boxShadow: theme.customShadows.z20\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function ControlLabel(theme: Theme) {\r\n return {\r\n MuiFormControlLabel: {\r\n styleOverrides: {\r\n label: {\r\n ...theme.typography.body2\r\n }\r\n }\r\n },\r\n MuiFormHelperText: {\r\n styleOverrides: {\r\n root: {\r\n marginTop: theme.spacing(1)\r\n }\r\n }\r\n },\r\n MuiFormLabel: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.palette.text.disabled\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function ToggleButton(theme: Theme) {\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return {\r\n MuiToggleButton: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.palette.grey[500],\r\n border: `solid 1px ${theme.palette.grey[500_32]}`,\r\n '&.Mui-selected': {\r\n color: theme.palette.grey[isLight ? 600 : 0],\r\n backgroundColor: theme.palette.action.selected\r\n },\r\n '&.Mui-disabled': {\r\n color: theme.palette.grey[500_48]\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import { Theme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function LoadingButton(theme: Theme) {\r\n return {\r\n MuiLoadingButton: {\r\n styleOverrides: {\r\n root: {\r\n marginLeft: 10,\r\n '&.MuiButton-text': {\r\n '& .MuiLoadingButton-startIconPendingStart': {\r\n marginLeft: 0\r\n },\r\n '& .MuiLoadingButton-endIconPendingEnd': {\r\n marginRight: 0\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","// material\r\nimport { alpha } from '@mui/material/styles';\r\nimport { Shadows } from '@mui/material/styles/shadows';\r\n//\r\nimport palette from './palette';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface CustomShadowOptions {\r\n z1: string;\r\n z8: string;\r\n z12: string;\r\n z16: string;\r\n z20: string;\r\n z24: string;\r\n primary: string;\r\n secondary: string;\r\n info: string;\r\n success: string;\r\n warning: string;\r\n error: string;\r\n}\r\n\r\ndeclare module '@mui/material/styles' {\r\n interface Theme {\r\n customShadows: CustomShadowOptions;\r\n }\r\n interface ThemeOptions {\r\n customShadows?: CustomShadowOptions;\r\n }\r\n}\r\n\r\nconst LIGHT_MODE = palette.light.grey[500];\r\nconst DARK_MODE = '#000000';\r\n\r\nconst createShadow = (color: string): Shadows => {\r\n const transparent1 = alpha(color, 0.2);\r\n const transparent2 = alpha(color, 0.14);\r\n const transparent3 = alpha(color, 0.12);\r\n return [\r\n 'none',\r\n `0px 2px 1px -1px ${transparent1},0px 1px 1px 0px ${transparent2},0px 1px 3px 0px ${transparent3}`,\r\n `0px 3px 1px -2px ${transparent1},0px 2px 2px 0px ${transparent2},0px 1px 5px 0px ${transparent3}`,\r\n `0px 3px 3px -2px ${transparent1},0px 3px 4px 0px ${transparent2},0px 1px 8px 0px ${transparent3}`,\r\n `0px 2px 4px -1px ${transparent1},0px 4px 5px 0px ${transparent2},0px 1px 10px 0px ${transparent3}`,\r\n `0px 3px 5px -1px ${transparent1},0px 5px 8px 0px ${transparent2},0px 1px 14px 0px ${transparent3}`,\r\n `0px 3px 5px -1px ${transparent1},0px 6px 10px 0px ${transparent2},0px 1px 18px 0px ${transparent3}`,\r\n `0px 4px 5px -2px ${transparent1},0px 7px 10px 1px ${transparent2},0px 2px 16px 1px ${transparent3}`,\r\n `0px 5px 5px -3px ${transparent1},0px 8px 10px 1px ${transparent2},0px 3px 14px 2px ${transparent3}`,\r\n `0px 5px 6px -3px ${transparent1},0px 9px 12px 1px ${transparent2},0px 3px 16px 2px ${transparent3}`,\r\n `0px 6px 6px -3px ${transparent1},0px 10px 14px 1px ${transparent2},0px 4px 18px 3px ${transparent3}`,\r\n `0px 6px 7px -4px ${transparent1},0px 11px 15px 1px ${transparent2},0px 4px 20px 3px ${transparent3}`,\r\n `0px 7px 8px -4px ${transparent1},0px 12px 17px 2px ${transparent2},0px 5px 22px 4px ${transparent3}`,\r\n `0px 7px 8px -4px ${transparent1},0px 13px 19px 2px ${transparent2},0px 5px 24px 4px ${transparent3}`,\r\n `0px 7px 9px -4px ${transparent1},0px 14px 21px 2px ${transparent2},0px 5px 26px 4px ${transparent3}`,\r\n `0px 8px 9px -5px ${transparent1},0px 15px 22px 2px ${transparent2},0px 6px 28px 5px ${transparent3}`,\r\n `0px 8px 10px -5px ${transparent1},0px 16px 24px 2px ${transparent2},0px 6px 30px 5px ${transparent3}`,\r\n `0px 8px 11px -5px ${transparent1},0px 17px 26px 2px ${transparent2},0px 6px 32px 5px ${transparent3}`,\r\n `0px 9px 11px -5px ${transparent1},0px 18px 28px 2px ${transparent2},0px 7px 34px 6px ${transparent3}`,\r\n `0px 9px 12px -6px ${transparent1},0px 19px 29px 2px ${transparent2},0px 7px 36px 6px ${transparent3}`,\r\n `0px 10px 13px -6px ${transparent1},0px 20px 31px 3px ${transparent2},0px 8px 38px 7px ${transparent3}`,\r\n `0px 10px 13px -6px ${transparent1},0px 21px 33px 3px ${transparent2},0px 8px 40px 7px ${transparent3}`,\r\n `0px 10px 14px -6px ${transparent1},0px 22px 35px 3px ${transparent2},0px 8px 42px 7px ${transparent3}`,\r\n `0px 11px 14px -7px ${transparent1},0px 23px 36px 3px ${transparent2},0px 9px 44px 8px ${transparent3}`,\r\n `0px 11px 15px -7px ${transparent1},0px 24px 38px 3px ${transparent2},0px 9px 46px 8px ${transparent3}`\r\n ];\r\n};\r\n\r\nconst createCustomShadow = (color: string) => {\r\n const transparent = alpha(color, 0.24);\r\n return {\r\n z1: `0 1px 2px 0 ${transparent}`,\r\n z8: `0 8px 16px 0 ${transparent}`,\r\n z12: `0 0 2px 0 ${transparent}, 0 12px 24px 0 ${transparent}`,\r\n z16: `0 0 2px 0 ${transparent}, 0 16px 32px -4px ${transparent}`,\r\n z20: `0 0 2px 0 ${transparent}, 0 20px 40px -4px ${transparent}`,\r\n z24: `0 0 4px 0 ${transparent}, 0 24px 48px 0 ${transparent}`,\r\n primary: `0 8px 16px 0 ${alpha(palette.light.primary.main, 0.24)}`,\r\n info: `0 8px 16px 0 ${alpha(palette.light.info.main, 0.24)}`,\r\n secondary: `0 8px 16px 0 ${alpha(palette.light.secondary.main, 0.24)}`,\r\n success: `0 8px 16px 0 ${alpha(palette.light.success.main, 0.24)}`,\r\n warning: `0 8px 16px 0 ${alpha(palette.light.warning.main, 0.24)}`,\r\n error: `0 8px 16px 0 ${alpha(palette.light.error.main, 0.24)}`\r\n };\r\n};\r\n\r\nexport const customShadows = {\r\n light: createCustomShadow(LIGHT_MODE),\r\n dark: createCustomShadow(DARK_MODE)\r\n};\r\n\r\nconst shadows: {\r\n light: Shadows;\r\n dark: Shadows;\r\n} = {\r\n light: createShadow(LIGHT_MODE),\r\n dark: createShadow(DARK_MODE)\r\n};\r\n\r\nexport default shadows;\r\n","import { useMemo, ReactNode } from 'react';\r\n// material\r\nimport { CssBaseline } from '@mui/material';\r\nimport {\r\n createTheme,\r\n ThemeOptions,\r\n ThemeProvider,\r\n StyledEngineProvider\r\n} from '@mui/material/styles';\r\n// hooks\r\nimport useSettings from '../hooks/useSettings';\r\n//\r\nimport shape from './shape';\r\nimport palette from './palette';\r\nimport typography from './typography';\r\nimport breakpoints from './breakpoints';\r\nimport componentsOverride from './overrides';\r\nimport shadows, { customShadows } from './shadows';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype ThemeConfigProps = {\r\n children: ReactNode;\r\n};\r\n\r\nexport default function ThemeConfig({ children }: ThemeConfigProps) {\r\n const { themeMode, themeDirection } = useSettings();\r\n const isLight = true; //themeMode === 'light';\r\n\r\n const themeOptions: ThemeOptions = useMemo(\r\n () => ({\r\n palette: isLight ? { ...palette.light, mode: 'light' } : { ...palette.dark, mode: 'dark' },\r\n shape,\r\n typography,\r\n breakpoints,\r\n direction: themeDirection,\r\n shadows: isLight ? shadows.light : shadows.dark,\r\n customShadows: isLight ? customShadows.light : customShadows.dark\r\n }),\r\n [isLight, themeDirection]\r\n );\r\n\r\n const theme = createTheme(themeOptions);\r\n theme.components = componentsOverride(theme);\r\n\r\n return (\r\n \r\n \r\n \r\n {children}\r\n \r\n \r\n );\r\n}\r\n","// material\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { GlobalStyles as GlobalThemeStyles } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function GlobalStyles() {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n );\r\n}\r\n","import { useEffect, ReactNode } from 'react';\r\n// rtl\r\nimport rtlPlugin from 'stylis-plugin-rtl';\r\n// emotion\r\nimport createCache from '@emotion/cache';\r\nimport { CacheProvider } from '@emotion/react';\r\n// material\r\nimport { useTheme } from '@mui/material/styles';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype RtlLayoutProps = {\r\n children?: ReactNode;\r\n};\r\n\r\nexport default function RtlLayout({ children }: RtlLayoutProps) {\r\n const theme = useTheme();\r\n\r\n useEffect(() => {\r\n document.dir = theme.direction;\r\n }, [theme.direction]);\r\n\r\n const cacheRtl = createCache({\r\n key: theme.direction === 'rtl' ? 'rtl' : 'css',\r\n // @ts-ignore\r\n stylisPlugins: theme.direction === 'rtl' ? [rtlPlugin] : []\r\n });\r\n\r\n cacheRtl.compat = true;\r\n\r\n return {children};\r\n}\r\n","import { useEffect } from 'react';\r\nimport { useLocation } from 'react-router-dom';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function ScrollToTop() {\r\n const { pathname } = useLocation();\r\n\r\n useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, [pathname]);\r\n\r\n return null;\r\n}\r\n","import { Helmet } from 'react-helmet-async';\r\nimport { googleAnalyticsConfig } from '../config';\r\nimport TagManager from 'react-gtm-module';\r\nimport { useEffect } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst GA_MEASUREMENT_ID = googleAnalyticsConfig;\r\n\r\nexport default function GoogleAnalytics() {\r\n const tagManagerArgs = {\r\n gtmId: GA_MEASUREMENT_ID || ''\r\n };\r\n useEffect(() => {\r\n TagManager.initialize(tagManagerArgs);\r\n }, []);\r\n\r\n return <>;\r\n}\r\n","import { ReactNode } from 'react';\r\nimport { Icon, IconifyIcon } from '@iconify/react';\r\nimport { SnackbarProvider, useSnackbar } from 'notistack';\r\nimport infoFill from '@iconify/icons-eva/info-fill';\r\nimport CloseIcon from '@mui/icons-material/Close';\r\nimport alertCircleFill from '@iconify/icons-eva/alert-circle-fill';\r\nimport alertTriangleFill from '@iconify/icons-eva/alert-triangle-fill';\r\nimport checkmarkCircle2Fill from '@iconify/icons-eva/checkmark-circle-2-fill';\r\n// material\r\nimport { alpha, useTheme } from '@mui/material/styles';\r\nimport { Box, GlobalStyles, IconButton } from '@mui/material';\r\n// @types\r\nimport { ColorSchema } from '../@types/theme';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction SnackbarStyles() {\r\n const theme = useTheme();\r\n const isLight = theme.palette.mode === 'light';\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\ntype SnackbarIconProps = {\r\n icon: IconifyIcon;\r\n color: ColorSchema;\r\n};\r\n\r\nfunction SnackbarIcon({ icon, color }: SnackbarIconProps) {\r\n return (\r\n alpha(theme.palette[color].main, 0.16)\r\n }}\r\n >\r\n \r\n \r\n );\r\n}\r\n\r\ntype NotistackProviderProps = {\r\n children: ReactNode;\r\n};\r\n\r\nexport default function NotistackProvider({ children }: NotistackProviderProps) {\r\n const CloseSnackbarAction = ({ id }: any) => {\r\n const { closeSnackbar } = useSnackbar();\r\n return (\r\n {\r\n closeSnackbar(id);\r\n }}\r\n >\r\n \r\n \r\n );\r\n };\r\n\r\n return (\r\n <>\r\n \r\n\r\n ,\r\n error: ,\r\n warning: ,\r\n info: \r\n }}\r\n action={(key) => }\r\n >\r\n {children}\r\n \r\n \r\n );\r\n}\r\n","import { ReactNode, useMemo } from 'react';\r\n// material\r\nimport { alpha, ThemeProvider, createTheme, useTheme } from '@mui/material/styles';\r\n// hooks\r\nimport useSettings from '../hooks/useSettings';\r\n//\r\nimport componentsOverride from '../theme/overrides';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype ThemePrimaryColorProps = {\r\n children: ReactNode;\r\n};\r\n\r\nexport default function ThemePrimaryColor({ children }: ThemePrimaryColorProps) {\r\n const defaultTheme = useTheme();\r\n const { setColor } = useSettings();\r\n\r\n const themeOptions = useMemo(\r\n () => ({\r\n ...defaultTheme,\r\n palette: {\r\n ...defaultTheme.palette,\r\n primary: setColor\r\n },\r\n customShadows: {\r\n ...defaultTheme.customShadows,\r\n primary: `0 8px 16px 0 ${alpha(setColor.main, 0.24)}`\r\n }\r\n }),\r\n [setColor, defaultTheme]\r\n );\r\n\r\n const theme = createTheme(themeOptions);\r\n theme.components = componentsOverride(theme);\r\n\r\n return {children};\r\n}\r\n","import { ReactNode } from 'react';\r\n// material\r\nimport { ThemeProvider, createTheme, useTheme } from '@mui/material/styles';\r\n// hooks\r\nimport useLocales from '../hooks/useLocales';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype ThemeLocalizationProps = {\r\n children: ReactNode;\r\n};\r\n\r\nexport default function ThemeLocalization({ children }: ThemeLocalizationProps) {\r\n const defaultTheme = useTheme();\r\n const { currentLang } = useLocales();\r\n\r\n const theme = createTheme(defaultTheme, currentLang.systemValue);\r\n\r\n return {children};\r\n}\r\n","import { ApexOptions } from 'apexcharts';\r\n// material\r\nimport { alpha, useTheme } from '@mui/material/styles';\r\nimport { GlobalStyles } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function BaseOptionChartStyle() {\r\n const theme = useTheme();\r\n\r\n const background = {\r\n backdropFilter: 'blur(6px)',\r\n WebkitBackdropFilter: 'blur(6px)', // Fix on Mobile\r\n backgroundColor: alpha(theme.palette.background.default, 0.72)\r\n };\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport default function BaseOptionChart(): ApexOptions {\r\n const theme = useTheme();\r\n\r\n const LABEL_TOTAL = {\r\n show: true,\r\n label: 'Total',\r\n color: theme.palette.text.secondary,\r\n fontSize: theme.typography.subtitle2.fontSize as string,\r\n fontWeight: theme.typography.subtitle2.fontWeight,\r\n lineHeight: theme.typography.subtitle2.lineHeight\r\n };\r\n\r\n const LABEL_VALUE = {\r\n offsetY: 8,\r\n color: theme.palette.text.primary,\r\n fontSize: theme.typography.h3.fontSize as string,\r\n fontWeight: theme.typography.h3.fontWeight,\r\n lineHeight: theme.typography.h3.lineHeight\r\n };\r\n\r\n return {\r\n // Colors\r\n colors: [\r\n theme.palette.primary.main,\r\n theme.palette.chart.yellow[0],\r\n theme.palette.chart.blue[0],\r\n theme.palette.chart.violet[0],\r\n theme.palette.chart.green[0],\r\n theme.palette.chart.red[0]\r\n ],\r\n\r\n // Chart\r\n chart: {\r\n toolbar: { show: false },\r\n zoom: { enabled: false },\r\n // animations: { enabled: false },\r\n foreColor: theme.palette.text.disabled,\r\n fontFamily: theme.typography.fontFamily\r\n },\r\n\r\n // States\r\n states: {\r\n hover: {\r\n filter: {\r\n type: 'lighten',\r\n value: 0.04\r\n }\r\n },\r\n active: {\r\n filter: {\r\n type: 'darken',\r\n value: 0.88\r\n }\r\n }\r\n },\r\n\r\n // Fill\r\n fill: {\r\n opacity: 1,\r\n gradient: {\r\n type: 'vertical',\r\n shadeIntensity: 0,\r\n opacityFrom: 0.4,\r\n opacityTo: 0,\r\n stops: [0, 100]\r\n }\r\n },\r\n\r\n // Datalabels\r\n dataLabels: { enabled: false },\r\n\r\n // Stroke\r\n stroke: {\r\n width: 3,\r\n curve: 'smooth',\r\n lineCap: 'round'\r\n },\r\n\r\n // Grid\r\n grid: {\r\n strokeDashArray: 3,\r\n borderColor: theme.palette.divider\r\n },\r\n\r\n // Xaxis\r\n xaxis: {\r\n axisBorder: { show: false },\r\n axisTicks: { show: false }\r\n },\r\n\r\n // Markers\r\n markers: {\r\n size: 0,\r\n strokeColors: theme.palette.background.paper\r\n },\r\n\r\n // Tooltip\r\n tooltip: {\r\n x: {\r\n show: false\r\n }\r\n },\r\n\r\n // Legend\r\n legend: {\r\n show: true,\r\n fontSize: String(13),\r\n position: 'top',\r\n horizontalAlign: 'right',\r\n markers: {\r\n radius: 12\r\n },\r\n fontWeight: 500,\r\n itemMargin: { horizontal: 12 },\r\n labels: {\r\n colors: theme.palette.text.primary\r\n }\r\n },\r\n\r\n // plotOptions\r\n plotOptions: {\r\n // Bar\r\n bar: {\r\n columnWidth: '28%',\r\n borderRadius: 4\r\n },\r\n // Pie + Donut\r\n pie: {\r\n donut: {\r\n labels: {\r\n show: true,\r\n value: LABEL_VALUE,\r\n total: LABEL_TOTAL\r\n }\r\n }\r\n },\r\n // Radialbar\r\n radialBar: {\r\n track: {\r\n strokeWidth: '100%',\r\n background: theme.palette.grey[500_16]\r\n },\r\n dataLabels: {\r\n value: LABEL_VALUE,\r\n total: LABEL_TOTAL\r\n }\r\n },\r\n // Radar\r\n radar: {\r\n polygons: {\r\n fill: { colors: ['transparent'] },\r\n strokeColors: theme.palette.divider,\r\n connectorColors: theme.palette.divider\r\n }\r\n },\r\n // polarArea\r\n polarArea: {\r\n rings: {\r\n strokeColor: theme.palette.divider\r\n },\r\n spokes: {\r\n connectorColors: theme.palette.divider\r\n }\r\n }\r\n },\r\n\r\n // Responsive\r\n responsive: [\r\n {\r\n // sm\r\n breakpoint: theme.breakpoints.values.sm,\r\n options: {\r\n plotOptions: { bar: { columnWidth: '40%' } }\r\n }\r\n },\r\n {\r\n // md\r\n breakpoint: theme.breakpoints.values.md,\r\n options: {\r\n plotOptions: { bar: { columnWidth: '32%' } }\r\n }\r\n }\r\n ]\r\n };\r\n}\r\n","import { Helmet } from 'react-helmet-async';\r\n\r\nexport default function ABTasty() {\r\n return (\r\n \r\n <>\r\n \r\n \r\n \r\n );\r\n}\r\n","// routes\r\nimport Router from './routes';\r\n// theme\r\nimport ThemeConfig from './theme';\r\nimport GlobalStyles from './theme/globalStyles';\r\n// hooks\r\nimport useAuth from './hooks/useAuth';\r\n// components\r\n\r\nimport RtlLayout from './components/RtlLayout';\r\nimport ScrollToTop from './components/ScrollToTop';\r\nimport GoogleAnalytics from './components/GoogleAnalytics';\r\nimport NotistackProvider from './components/NotistackProvider';\r\nimport ThemePrimaryColor from './components/ThemePrimaryColor';\r\nimport ThemeLocalization from './components/ThemeLocalization';\r\nimport { BaseOptionChartStyle } from './components/charts/BaseOptionChart';\r\nimport LoadingScreen, { ProgressBarStyle } from './components/LoadingScreen';\r\nimport { ErrorBoundary } from 'react-error-boundary';\r\nimport Page500 from 'pages/Page500';\r\nimport useHubConnection from 'hooks/useHubConnection';\r\nimport { useLocation, useNavigate } from 'react-router';\r\nimport { useEffect, useRef } from 'react';\r\nimport { HubContextProvider } from 'contexts/HubContext';\r\nimport OneTrust, { OneTrustFooter } from 'components/OneTrust';\r\nimport ABTasty from 'components/ABTasty';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst myErrorHandler = (error: Error, info: { componentStack: string }) => {\r\n // Do something with the error\r\n // E.g. log to an error logging client here\r\n console.log(error, info.componentStack, 'error');\r\n};\r\n\r\nconst ErrorFallback = ({\r\n error,\r\n resetErrorBoundary\r\n}: {\r\n error: Error;\r\n resetErrorBoundary: any;\r\n}) => {\r\n const location = useLocation();\r\n const errorLocation = useRef(location.pathname);\r\n useEffect(() => {\r\n if (location.pathname !== errorLocation.current) {\r\n resetErrorBoundary();\r\n }\r\n }, [location.pathname]);\r\n return ;\r\n};\r\n\r\nconst excludeErrors = [\r\n 'ResizeObserver',\r\n 'IntersectionObserver',\r\n 'Loading chunk',\r\n 'Minified',\r\n 'Request aborted',\r\n 'insertBefore',\r\n 'u is not a function',\r\n 'Cannot read properties',\r\n 'Invalid time'\r\n];\r\n\r\nexport default function App() {\r\n const { isInitialized } = useAuth();\r\n const { onError } = useHubConnection();\r\n\r\n return (\r\n \r\n \r\n \r\n {\r\n if (excludeErrors.some((w) => error.message.includes(w))) return;\r\n onError('Erreur javascript', `${error.message} : path => ${document.location.href}`);\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {isInitialized ? (\r\n <>\r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\nimport { urlBase64ToUint8Array } from \"utils/helper\";\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://cra.link/PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.0/8 are considered localhost for IPv4.\r\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\r\n);\r\n\r\ntype Config = {\r\n onSuccess?: (registration: ServiceWorkerRegistration) => void;\r\n onUpdate?: (registration: ServiceWorkerRegistration) => void;\r\n};\r\n\r\nexport function register(config?: Config) {\r\n \r\n \r\n \r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://cra.link/PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl: string, config?: Config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then((registration) => { \r\n\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://cra.link/PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch((error) => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl: string, config?: Config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' }\r\n })\r\n .then((response) => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.indexOf('javascript') === -1)\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then((registration) => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log('No internet connection found. App is running in offline mode.');\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready\r\n .then((registration) => {\r\n registration.unregister();\r\n })\r\n .catch((error) => {\r\n console.error(error.message);\r\n });\r\n }\r\n}\r\n","import { ReportHandler } from 'web-vitals';\r\n\r\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","// mock api\r\n//import './_apis_';\r\n\r\n// i18n\r\nimport './locales/i18n';\r\n\r\n// highlight\r\nimport './utils/highlight';\r\n\r\n// scroll bar\r\nimport 'simplebar/src/simplebar.css';\r\n\r\n// map\r\nimport 'mapbox-gl/dist/mapbox-gl.css';\r\n\r\n// lightbox\r\nimport 'react-image-lightbox/style.css';\r\n\r\n// editor\r\nimport 'react-quill/dist/quill.snow.css';\r\nimport 'react-draft-wysiwyg/dist/react-draft-wysiwyg.css';\r\n\r\n// slick-carousel\r\nimport 'slick-carousel/slick/slick.css';\r\nimport 'slick-carousel/slick/slick-theme.css';\r\n\r\n// lazy image\r\nimport 'lazysizes';\r\nimport 'lazysizes/plugins/attrchange/ls.attrchange';\r\nimport 'lazysizes/plugins/object-fit/ls.object-fit';\r\nimport 'lazysizes/plugins/parent-fit/ls.parent-fit';\r\n\r\nimport ReactDOM from 'react-dom';\r\nimport { BrowserRouter, HashRouter } from 'react-router-dom';\r\nimport { HelmetProvider } from 'react-helmet-async';\r\nimport { Provider as ReduxProvider } from 'react-redux';\r\nimport { PersistGate } from 'redux-persist/lib/integration/react';\r\n// material\r\nimport AdapterDateFns from '@mui/lab/AdapterDateFns';\r\nimport LocalizationProvider from '@mui/lab/LocalizationProvider';\r\n// redux\r\nimport { store, persistor } from './redux/store';\r\n// contexts\r\nimport { SettingsProvider } from './contexts/SettingsContext';\r\nimport { CollapseDrawerProvider } from './contexts/CollapseDrawerContext';\r\n// components\r\nimport LoadingScreen from './components/LoadingScreen';\r\n\r\n// Check our docs\r\n// https://docs-minimals.vercel.app/authentication/ts-version\r\n\r\nimport { AuthProvider } from './contexts/JWTContext';\r\n// import { AuthProvider } from './contexts/AwsCognitoContext';\r\n// import { AuthProvider } from './contexts/Auth0Context';\r\n// import { AuthProvider } from './contexts/FirebaseContext';\r\n\r\n//\r\nimport App from './App';\r\nimport * as serviceWorkerRegistration from './serviceWorkerRegistration';\r\nimport reportWebVitals from './reportWebVitals';\r\nimport { fr } from 'date-fns/locale';\r\nimport { HubContextProvider } from 'contexts/HubContext';\r\nimport { StudyPlanProvider } from 'contexts/StudyPlanContext';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n } persistor={persistor}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n// document.getElementById('root')\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://cra.link/PWA\r\nserviceWorkerRegistration.unregister();\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n","import { Icon } from '@iconify/react';\r\nimport starOutline from '@iconify/icons-eva/star-outline';\r\nimport starFill from '@iconify/icons-eva/star-fill';\r\n\r\n// material\r\nimport { alpha, styled } from '@mui/material/styles';\r\nimport { Box, Stack, AppBar, Toolbar, IconButton, Tooltip } from '@mui/material';\r\n\r\n//Type\r\nimport { FavoriteKey, FavoriteType, FavoriteState, Favorite } from '../../../@types/favorite';\r\n\r\n//redux\r\nimport { useDispatch, useSelector } from 'redux/store';\r\nimport { addFavorite, removeFavorite } from 'redux/slices/favorite';\r\nimport { useEffect, useState } from 'react';\r\nimport { getDateTimeToString } from '../../../utils/formatTime';\r\nimport { useSnackbar } from 'notistack';\r\nimport MIconButton from 'components/MIconButton';\r\n\r\n//----------------------------------------------------------\r\n\r\ntype FavoriteToggleActionProps = {\r\n type: FavoriteType;\r\n keyFav: FavoriteKey;\r\n title: string;\r\n isToolbarSide?: boolean;\r\n};\r\n\r\nconst getInit = (type: FavoriteType, keyFav: FavoriteKey, title: string) => {\r\n return {\r\n id: 0,\r\n label: title,\r\n key: keyFav,\r\n type: type,\r\n dateCreated: getDateTimeToString()\r\n } as Favorite;\r\n};\r\n\r\nexport default function FavoriteToggleAction({\r\n type = FavoriteType.News,\r\n keyFav,\r\n title = '',\r\n isToolbarSide\r\n}: FavoriteToggleActionProps) {\r\n const dispatch = useDispatch();\r\n const { favorites, error, isLoading } = useSelector(\r\n (state: { favorite: FavoriteState }) => state.favorite\r\n );\r\n\r\n const [current, setCurrent] = useState(getInit(type, keyFav, title));\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const handleAdd = () => {\r\n dispatch(addFavorite(current)).then((data) => {\r\n // enqueueSnackbar('Favori ajouté', { variant: 'success' });\r\n });\r\n };\r\n\r\n const handleRemove = () => {\r\n dispatch(removeFavorite(current.id));\r\n };\r\n\r\n const handleClick = (event: any) => {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n current.id > 0 ? handleRemove() : handleAdd();\r\n };\r\n\r\n useEffect(() => {\r\n const favorite = favorites.filter((w: Favorite) => {\r\n switch (type) {\r\n case FavoriteType.Courses:\r\n return w.key.courseId === keyFav.courseId && w.key.mediaId === keyFav.mediaId;\r\n\r\n case FavoriteType.Evaluation:\r\n return w.key.courseId === keyFav.courseId && w.key.homeworkId === keyFav.homeworkId;\r\n\r\n case FavoriteType.News:\r\n case FavoriteType.VirtualClass:\r\n case FavoriteType.Workshop:\r\n case FavoriteType.Job:\r\n case FavoriteType.Task:\r\n return w.key.id === keyFav.id;\r\n }\r\n });\r\n\r\n if (favorite.length > 0) setCurrent(favorite[0]);\r\n else setCurrent(getInit(type, keyFav, title));\r\n }, [favorites, keyFav]);\r\n\r\n if (isToolbarSide) {\r\n return (\r\n \r\n \r\n 0 ? starFill : starOutline} width={20} height={20} />\r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n 0 ? starFill : starOutline} width={20} height={20} />\r\n \r\n \r\n );\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { dispatch } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport {\r\n Message,\r\n MessageAddResponse,\r\n MessageAddResult,\r\n MessageDetail,\r\n MessageItemResponse,\r\n MessageItemResult,\r\n MessageLabel,\r\n MessageListResponse,\r\n MessageListResult,\r\n MessageState,\r\n MessageType,\r\n Question,\r\n ServiceListResponse,\r\n ServiceListResult\r\n} from '../../@types/message';\r\nimport { map } from 'lodash';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: MessageState = {\r\n isLoading: false,\r\n error: false,\r\n messages: [],\r\n question: null,\r\n services: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'message',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n getMessagesSuccess(state, action) {\r\n state.isLoading = false;\r\n state.messages = action.payload;\r\n },\r\n addQuestionSuccess(state, action) {\r\n state.isLoading = false;\r\n state.messages = [...state.messages, ...action.payload];\r\n },\r\n\r\n getQuestionSuccess(state, action) {\r\n state.isLoading = false;\r\n state.question = action.payload;\r\n },\r\n\r\n getServicesSuccess(state, action) {\r\n state.services = action.payload;\r\n },\r\n updateRead(state, action) {\r\n const { id, read } = action.payload;\r\n const messages = map(state.messages, (x) => {\r\n if (x.id === id) {\r\n x.read = read;\r\n }\r\n return x;\r\n });\r\n state.messages = messages;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { updateRead } = slice.actions;\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getLabels(messages: Array): MessageLabel[] {\r\n return [\r\n {\r\n id: 'all',\r\n type: 'system',\r\n name: 'Tous mes messages',\r\n unreadCount: messages.filter((x) => !x.read).length\r\n },\r\n {\r\n id: 'unread',\r\n type: 'system',\r\n name: 'Messages non lus',\r\n unreadCount: messages.filter((x) => !x.read).length\r\n },\r\n {\r\n id: 'school',\r\n type: 'system',\r\n name: 'Communications de l’école',\r\n unreadCount: messages.filter(\r\n (x) => ![MessageType.Answer, MessageType.Question].includes(x.type) && !x.read\r\n ).length\r\n },\r\n {\r\n id: 'question',\r\n type: 'system',\r\n name: 'Mes questions / réponses',\r\n unreadCount: messages.filter(\r\n (x) => [MessageType.Answer, MessageType.Question].includes(x.type) && !x.read\r\n ).length\r\n }\r\n ];\r\n}\r\n\r\nexport function getMessages() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post('/api/message/list', {\r\n type: 5,\r\n index: 1,\r\n pageSize: 1000\r\n });\r\n const { result, list } = response.data;\r\n switch (result) {\r\n case MessageListResult.Success:\r\n dispatch(slice.actions.getMessagesSuccess(list));\r\n break;\r\n default:\r\n dispatch(slice.actions.endLoading());\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport const getMessage =\r\n (id: number, idType: number, type: number) =>\r\n (onSuccess: (question: Array) => void) =>\r\n (onError: () => void) => {\r\n return async () => {\r\n try {\r\n const response = await axios.get(\r\n `/api/message/${id}/${idType}/${type}`\r\n );\r\n const { result, items } = response.data;\r\n switch (result) {\r\n case MessageItemResult.Success:\r\n dispatch(updateRead({ id: id, read: true }));\r\n onSuccess(items);\r\n\r\n break;\r\n default:\r\n onError();\r\n break;\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n onError();\r\n }\r\n };\r\n };\r\n\r\nexport const addQuestion = (message: Question) => (onSuccess: (question: Question) => void) => {\r\n return async () => {\r\n const formData = new FormData();\r\n dispatch(slice.actions.startLoading());\r\n if (message.files != null) {\r\n message.files.forEach((file) => {\r\n formData.append('file', file);\r\n });\r\n }\r\n formData.append('data', JSON.stringify(message));\r\n try {\r\n let response = await axios.post(`/api/message/add/question`, formData, {\r\n headers: { 'Content-Type': 'multipart/form-data', writeOnly: true }\r\n });\r\n const { result, question } = response.data;\r\n switch (result) {\r\n case MessageAddResult.Success:\r\n if (message.themeId) {\r\n Object.assign(question, {\r\n serviceId: message.themeId,\r\n category: message.themeId\r\n });\r\n }\r\n\r\n dispatch(slice.actions.addQuestionSuccess([question]));\r\n onSuccess(question);\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError(result));\r\n break;\r\n }\r\n } catch (e) {\r\n dispatch(slice.actions.hasError(99));\r\n }\r\n };\r\n};\r\n\r\nexport const toggleReadMessage = (id: number, value: boolean) => (onSuccess: () => void) => {\r\n return async () => {\r\n try {\r\n const response = await axios.get(`/api/message/${!value ? 'unread' : 'read'}/${id}`);\r\n if (response.data) {\r\n dispatch(updateRead({ id: id, read: value }));\r\n\r\n onSuccess();\r\n }\r\n } catch (error) {}\r\n };\r\n};\r\n\r\nexport const getServices = () => {\r\n return async () => {\r\n try {\r\n const response = await axios.get(`/api/settings/services`);\r\n const { result, list } = response.data;\r\n switch (result) {\r\n case ServiceListResult.Success:\r\n dispatch(slice.actions.getServicesSuccess(list));\r\n\r\n break;\r\n }\r\n } catch (error) {}\r\n };\r\n};\r\n","//materials\r\nimport Label, { LabelColor } from 'components/Label';\r\nimport HomeworkStatusRender from 'components/_dashboard/pedagogy/HomeworkStatusRender';\r\nimport { getColorsIconStatus, getColorsStatus } from 'utils/helperStudyPlan';\r\nimport { IconTypeSupport } from 'utils/helperSupport';\r\nimport { BoxProps } from '@mui/system';\r\n//type\r\nimport {\r\n HomeworkStatus,\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType\r\n} from '../../../../@types/pedagogy';\r\n\r\n//--------------------------------------------------\r\n\r\n/**\r\n * Affciher le statut de l'item du chapitre (média, devoir,quiz)\r\n */\r\nexport default function ChapterItemStatus({\r\n item,\r\n withoutColor\r\n}: {\r\n item: StudyPlanItem;\r\n withoutColor?: boolean;\r\n}) {\r\n let color: LabelColor = getColorsStatus().filter(\r\n (cp) => cp.status === StudyPlanItemStatus[item.status].toString().toLowerCase()\r\n )[0].color;\r\n\r\n if (withoutColor) color = 'default';\r\n\r\n switch (item.type) {\r\n case StudyPlanItemType.Audio:\r\n return ;\r\n case StudyPlanItemType.Video:\r\n return ;\r\n\r\n case StudyPlanItemType.Elearning:\r\n return ;\r\n case StudyPlanItemType.Url:\r\n return ;\r\n case StudyPlanItemType.Pdf:\r\n case StudyPlanItemType.Html:\r\n return ;\r\n\r\n case StudyPlanItemType.Homework:\r\n const homeworkBase = (item as StudyPlanItemHomework).homeworkBase;\r\n const homework = (item as StudyPlanItemHomework).homeworkBase.homeworks[\r\n homeworkBase.homeworks?.length - 1\r\n ];\r\n\r\n return (\r\n \r\n );\r\n\r\n default:\r\n return ;\r\n }\r\n}\r\n\r\ninterface IconTypeSupportProps extends BoxProps {\r\n status: StudyPlanItemStatus;\r\n type: StudyPlanItemType;\r\n}\r\n\r\nexport function ChapterItemIconTypeStatus({ status, type, sx }: IconTypeSupportProps) {\r\n const color = getColorsIconStatus().filter(\r\n (cp) => cp.status === StudyPlanItemStatus[status].toString().toLowerCase()\r\n )[0].hexa;\r\n\r\n return ;\r\n}\r\n","import axios, { AxiosRequestConfig, AxiosResponse } from 'axios';\r\nimport { useEffect, useMemo } from 'react';\r\nimport { apiConfig } from '../config';\r\nimport { ModeAccess } from '../@types/account';\r\nimport useAuth from 'hooks/useAuth';\r\nimport useHubConnection from 'hooks/useHubConnection';\r\nimport { dispatch } from 'redux/store';\r\nimport { useSnackbar } from 'notistack';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst axiosInstance = axios.create({\r\n baseURL: apiConfig.urlBase\r\n});\r\n\r\nexport const AXIOS_FULL_READONLY_MESSAGE = 'Fonctionnalité non accessible en mode lecture';\r\n\r\n/**\r\n * Exclure l'envoi de requete permettant de tracer l'activity de l'élève\r\n * Pour chaque requete de trace, il faut ajouter un header writeOnly.\r\n * A partir de l'authenfication , on verifie que l'utilisateur est bien en mode ecriture\r\n * @returns\r\n */\r\nexport const useAxiosControl = () => {\r\n const { student, getContractCurrent, logout } = useAuth();\r\n const { onError, disConnect } = useHubConnection();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const interceptors = useMemo(() => {\r\n return {\r\n request: (config: AxiosRequestConfig) => {\r\n //aucun traitement si on est en mode lecture\r\n if (\r\n config.headers.writeOnly &&\r\n ![ModeAccess.Write, ModeAccess.Survey].includes(student?.modeAccess)\r\n ) {\r\n throw new Error(AXIOS_FULL_READONLY_MESSAGE); //'Fonctionnalité non accessible en mode lecture'\r\n }\r\n\r\n if (config.headers.tracker && student?.id === 1) {\r\n throw new Error('aucune erreur envoyé au serveur pour eleve de test 1'); //'Fonctionnalité non accessible en mode lecture'\r\n }\r\n\r\n //envoyer l'id de connection\r\n config.headers.common['x-api-userIdLog'] = getContractCurrent().idConnection;\r\n config.headers.common['x-api-entversion'] = process.env.REACT_APP_ENT_VERSION;\r\n return config;\r\n },\r\n response: (response: AxiosResponse) => response,\r\n error: (error: any) => {\r\n const url: string = error?.response?.config?.url || '';\r\n\r\n if (\r\n (error?.response?.status === 401 || error?.response?.status === 403) &&\r\n [ModeAccess.Write].includes(student?.modeAccess) // si l'élève n'est pas en mode lecture\r\n ) {\r\n dispatch(logout());\r\n return window.location.reload();\r\n }\r\n if (error?.response !== undefined) {\r\n if (\r\n !['/api/file/images/resize', '/api/pedagogy/learning/evaluation'].some((w) =>\r\n url.includes(w)\r\n )\r\n )\r\n onError(`Appel Api en erreur : ${url}`, `${error.toString()}`);\r\n }\r\n\r\n //badrequest code api\r\n if (error?.response?.status === 400) {\r\n return Promise.reject((error?.response && error?.response?.data) || error);\r\n }\r\n\r\n // Ajout de l'alerte\r\n let errorMsg =\r\n 'Nous rencontrons actuellement un problème avec votre Espace Numérique de Travail';\r\n\r\n if (error && 'message' in error) {\r\n if (error?.message === AXIOS_FULL_READONLY_MESSAGE) {\r\n errorMsg = AXIOS_FULL_READONLY_MESSAGE;\r\n } else if (error?.message === 'Network Error') {\r\n errorMsg =\r\n 'Nous rencontrons un problème de connexion avec votre Espace Numérique de Travail';\r\n } else if (error?.message === 'Request failed with status code 404') {\r\n errorMsg = 'Le contenu est inaccessible';\r\n }\r\n }\r\n //afficher le message seulement en ecriture\r\n if ([ModeAccess.Write, ModeAccess.Survey].includes(student?.modeAccess))\r\n enqueueSnackbar(errorMsg, { variant: 'error', persist: false });\r\n\r\n return Promise.reject((error?.response && error?.response?.data) || error);\r\n }\r\n };\r\n }, []); // create the interceptors}\r\n\r\n useEffect(() => {\r\n // add request interceptors\r\n const reqInterceptor = axiosInstance.interceptors.request.use(\r\n interceptors.request,\r\n interceptors.error\r\n );\r\n\r\n // add response interceptors\r\n const resInterceptor = axiosInstance.interceptors.response.use(\r\n interceptors.response,\r\n interceptors.error\r\n );\r\n return () => {\r\n // remove all intercepts when done\r\n axiosInstance.interceptors.request.eject(reqInterceptor);\r\n axiosInstance.interceptors.response.eject(resInterceptor);\r\n };\r\n }, [interceptors]);\r\n\r\n return {};\r\n};\r\n\r\n/*\r\naxiosInstance.interceptors.request.use((config) => {\r\n console.log(config);\r\n\r\n //axios.interceptors.request.eject(myInterceptor);\r\n return config;\r\n});\r\n\r\naxiosInstance.interceptors.response.use(\r\n (response) => {\r\n if (response.status === 403) {\r\n console.log('You are not authorized');\r\n }\r\n return response;\r\n },\r\n (error) => {\r\n if (error.response.status === 403) {\r\n }\r\n return Promise.reject((error.response && error.response.data) || error);\r\n }\r\n\r\n if (error.response.status === 403 || error.response.status === 401) {\r\n window.location.reload();\r\n }\r\n);\r\n*/\r\n\r\nexport default axiosInstance;\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { HomeworkCacheContentState } from '../../@types/homeworkCacheContent';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: HomeworkCacheContentState = {\r\n idCache: 0,\r\n courseIdCache: '',\r\n barCodeCache: '',\r\n contentCache: '',\r\n applyContentCache: false\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst slice = createSlice({\r\n name: 'homeworkCacheContent',\r\n initialState,\r\n reducers: {\r\n initHomeworkCacheContent(state, action) {\r\n if (action.payload) {\r\n const homework = { ...action.payload };\r\n\r\n state.idCache = homework.id;\r\n state.courseIdCache = homework.courseId;\r\n state.barCodeCache = homework.barCode;\r\n state.contentCache = homework.content;\r\n } else {\r\n state.idCache = 0;\r\n state.courseIdCache = '';\r\n state.barCodeCache = '';\r\n state.contentCache = '';\r\n }\r\n\r\n state.applyContentCache = false;\r\n },\r\n updateHomeworkCacheContent(state, action) {\r\n const { homework, content } = action.payload;\r\n\r\n state.idCache = homework ? homework.id : 0;\r\n state.courseIdCache = homework ? homework.courseId : '';\r\n state.barCodeCache = homework ? homework.barCode : '';\r\n\r\n state.contentCache = content;\r\n },\r\n clearHomeworkCacheContent(state) {\r\n state.idCache = 0;\r\n state.courseIdCache = '';\r\n state.barCodeCache = '';\r\n state.contentCache = '';\r\n state.applyContentCache = false;\r\n },\r\n applyHomeworkCache(state, action) {\r\n const { homework, callBack } = action.payload;\r\n if (\r\n homework &&\r\n homework.id === state.idCache &&\r\n homework.courseId === state.courseIdCache &&\r\n homework.barCode === state.barCodeCache\r\n ) {\r\n state.applyContentCache = true;\r\n }\r\n\r\n if (callBack) {\r\n callBack();\r\n }\r\n },\r\n deactivateHomeworkCache(state) {\r\n state.applyContentCache = false;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\nexport const {\r\n initHomeworkCacheContent,\r\n updateHomeworkCacheContent,\r\n clearHomeworkCacheContent,\r\n applyHomeworkCache,\r\n deactivateHomeworkCache\r\n} = slice.actions;\r\n","import { AgendaEvent } from './agenda';\r\nimport { HomeworkBase } from './pedagogy';\r\n\r\nexport interface ObjectiveState {\r\n isLoading: boolean;\r\n error: any;\r\n objective: Objective | null;\r\n calculateInfos: ObjectiveCalculateInfos | null;\r\n}\r\n\r\nexport interface ObjectiveResponse {\r\n planningJson: string;\r\n result: ObjectiveResult;\r\n}\r\n\r\nexport enum ObjectiveResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface ObjectiveRequest {\r\n dateStart: string;\r\n dateEnd: string;\r\n daysWorking: Array;\r\n periodesOff: string[];\r\n jalonCount: number;\r\n lock: boolean;\r\n lockBy: string;\r\n}\r\n\r\nexport interface Objective {\r\n events: AgendaEvent[];\r\n start: string;\r\n end: string;\r\n periodesOff: string[];\r\n jalonCount: number;\r\n homeworkDoCount: number;\r\n interval: number;\r\n daysWorking: Array;\r\n progression: number;\r\n lock: boolean;\r\n lockBy: string;\r\n observation: string;\r\n dateAskUnlock: string;\r\n}\r\n\r\nexport interface ObjectiveSaveResponse {\r\n errorDescription: string;\r\n result: ObjectiveSaveResult;\r\n}\r\n\r\nexport enum ObjectiveSaveResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface ObjectiveCalculateResponse {\r\n jalons: string[];\r\n interval: number;\r\n result: ObjectiveCalculateResult;\r\n}\r\n\r\nexport enum ObjectiveCalculateResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport interface ObjectiveCalculateInfos {\r\n objective: Objective;\r\n eventsInAgenda: Array;\r\n}\r\n\r\nexport interface ObjectivePlanningAskUnlockRequest {\r\n contractId: number;\r\n amendmentId: number;\r\n}\r\n\r\nexport enum ObjectivePlanningAskUnlockResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport interface ObjectivePlanningAskUnlockResponse {\r\n result: ObjectivePlanningAskUnlockResult;\r\n errorDescription: string;\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { dispatch, store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport {\r\n ObjectiveResponse,\r\n ObjectiveState,\r\n ObjectiveResult,\r\n ObjectiveRequest,\r\n ObjectiveCalculateResponse,\r\n ObjectiveCalculateResult,\r\n ObjectiveSaveResponse,\r\n Objective,\r\n ObjectiveSaveResult,\r\n ObjectiveCalculateInfos,\r\n ObjectivePlanningAskUnlockRequest,\r\n ObjectivePlanningAskUnlockResponse,\r\n ObjectivePlanningAskUnlockResult\r\n} from '../../@types/objectiveType';\r\nimport { Homework, HomeworkBase, HomeworkStatus } from '../../@types/pedagogy';\r\n\r\nimport { convertObjectifToAgendaEvent } from 'mapper/agendaMap';\r\nimport { addEvent } from './agenda';\r\nimport { fDate, formatAPI } from 'utils/formatTime';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: ObjectiveState = {\r\n isLoading: false,\r\n error: false,\r\n objective: null,\r\n calculateInfos: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'objective',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n // START LOADING\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n\r\n state.error = action.payload;\r\n },\r\n\r\n // GET POSTS\r\n getObjectiveSuccess(state, action) {\r\n state.isLoading = false;\r\n state.objective = action.payload;\r\n },\r\n\r\n // MAJ des infos du calcul (au retour de l'API)\r\n updateCalculateInfos(state, action) {\r\n state.calculateInfos = action.payload;\r\n },\r\n\r\n updateDateAskUnlock(state, action) {\r\n if (state.objective) state.objective.dateAskUnlock = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\n//export const { getMoreArticles } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getObjectives(homeworks: Array) {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n const response = await axios.get(`/api/agenda/objectivePlanning`);\r\n\r\n const { result, planningJson } = response.data;\r\n switch (result) {\r\n case ObjectiveResult.Success:\r\n let objectivePlanning = JSON.parse(planningJson);\r\n\r\n let eventList = objectivePlanning.events.map((event: any, index: number) => {\r\n if (event.start.includes(')T')) {\r\n event.start = extractDateBad(event.start.split(')T')[0], event.start.split(')T')[1]);\r\n }\r\n if (event.end && event.end.includes(')T')) {\r\n event.end = extractDateBad(event.end.split(')T')[0], event.end.split(')T')[1]);\r\n }\r\n\r\n const homework = homeworks.filter(\r\n (d) => d.courseId === event.metadata.sup && d.id === event.metadata.dvr\r\n )[0];\r\n\r\n if (homework !== null && homework?.homeworks?.length > 0) {\r\n event.metadata.status = homework.homeworks[homework.homeworks.length - 1].status;\r\n } else event.metadata.status = HomeworkStatus.ToDo;\r\n\r\n return convertObjectifToAgendaEvent(event, index, objectivePlanning.lock);\r\n });\r\n\r\n objectivePlanning.events = eventList;\r\n objectivePlanning.daysWorking = objectivePlanning.daysWorking || [0, 1, 2, 3, 4, 5, 6];\r\n objectivePlanning.periodesOff = objectivePlanning.periodesOff || [];\r\n\r\n dispatch(slice.actions.getObjectiveSuccess(objectivePlanning));\r\n\r\n dispatch(addEvent(eventList));\r\n break;\r\n case ObjectiveResult.NotFound:\r\n break;\r\n }\r\n } catch (error) {\r\n //dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n/*\r\nformat en erreur :Tue Nov 29 2022 00:00:00 GMT+0100 (heure normale d’Europe centrale)T08:00:00\r\n*/\r\nconst extractDateBad = (date: string, time: string) => {\r\n return formatAPI(new Date(date + ')')) + 'T' + time;\r\n};\r\n\r\n/**\r\n *\r\n * @param request Générer le planning\r\n * @returns\r\n */\r\nexport const createObjective =\r\n (request: ObjectiveRequest) => (onSuccess: (interval: number, jalons: Array) => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post(\r\n `/api/agenda/objectivePlanning/calculate`,\r\n request,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n const { result, interval, jalons } = response.data;\r\n switch (result) {\r\n case ObjectiveCalculateResult.Success:\r\n dispatch(slice.actions.endLoading());\r\n onSuccess(interval, jalons);\r\n break;\r\n case ObjectiveCalculateResult.Error:\r\n dispatch(\r\n slice.actions.hasError(\r\n 'Désolé, Nous ne sommes pas en mesure de générer votre planning'\r\n )\r\n );\r\n break;\r\n }\r\n } catch (ex) {\r\n dispatch(slice.actions.hasError(ex));\r\n }\r\n };\r\n };\r\n\r\nexport const saveObjective = (objective: Objective) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post(\r\n `/api/agenda/objectivePlanning`,\r\n objective,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n const { result, errorDescription } = response.data;\r\n switch (result) {\r\n case ObjectiveSaveResult.Success:\r\n let eventList = objective.events.map((event: any, index: number) => {\r\n return convertObjectifToAgendaEvent(event, index, objective.lock);\r\n });\r\n\r\n objective.events = eventList;\r\n dispatch(slice.actions.getObjectiveSuccess(objective));\r\n\r\n onSuccess();\r\n break;\r\n case ObjectiveSaveResult.NotFound:\r\n dispatch(\r\n slice.actions.hasError(\r\n \"Désolé, Nous ne sommes pas en mesure d'enregistrer vos modifications\"\r\n )\r\n );\r\n break;\r\n }\r\n } catch (ex) {\r\n dispatch(\r\n slice.actions.hasError(\r\n \"Désolé, Nous ne sommes pas en mesure d'enregistrer vos modifications\"\r\n )\r\n );\r\n }\r\n };\r\n};\r\n\r\nexport const askUnlockObjective =\r\n (request: ObjectivePlanningAskUnlockRequest) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n try {\r\n const response = await axios.post(\r\n `/api/agenda/objectivePlanning/askUnlock`,\r\n request,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n\r\n const { result, errorDescription } = response.data;\r\n\r\n switch (result) {\r\n case ObjectivePlanningAskUnlockResult.Success:\r\n dispatch(slice.actions.updateDateAskUnlock(fDate(Date.now(), 'yyyy-MM-dd')));\r\n onSuccess();\r\n break;\r\n default:\r\n dispatch(\r\n slice.actions.hasError(\r\n 'Désolé, Nous ne sommes pas en mesure de traitrer votre demande'\r\n )\r\n );\r\n break;\r\n }\r\n } catch (ex) {\r\n dispatch(\r\n slice.actions.hasError('Désolé, Nous ne sommes pas en mesure de traitrer votre demande')\r\n );\r\n }\r\n };\r\n };\r\n","import { ReactNode } from 'react';\r\nimport { isString } from 'lodash';\r\n// material\r\nimport { Box, Typography, Link, Divider } from '@mui/material';\r\n//\r\nimport { MBreadcrumbs, MHidden } from './@material-extend';\r\nimport { MBreadcrumbsProps } from './@material-extend/MBreadcrumbs';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface HeaderBreadcrumbsProps extends MBreadcrumbsProps {\r\n action?: ReactNode;\r\n heading: string;\r\n moreLink?: string | string[];\r\n subHeader?: ReactNode;\r\n}\r\n\r\nexport default function HeaderBreadcrumbs({\r\n links,\r\n action,\r\n heading,\r\n moreLink = '' || [],\r\n subHeader,\r\n sx,\r\n ...other\r\n}: HeaderBreadcrumbsProps) {\r\n return (\r\n \r\n \r\n \r\n {heading}\r\n \r\n\r\n \r\n {action && {action}}\r\n \r\n {subHeader}\r\n \r\n \r\n \r\n\r\n {moreLink && (\r\n \r\n {isString(moreLink) ? (\r\n \r\n {moreLink}\r\n \r\n ) : (\r\n moreLink.map((href) => (\r\n \r\n {href}\r\n \r\n ))\r\n )}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { Examen, ObjectifGeneral } from '../@types/examen';\r\nimport { useCallback } from 'react';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport { getLabelCategoryObjectif } from 'utils/helperExamen';\r\nimport useAuth from './useAuth';\r\n\r\n/**\r\n * Gestion des libelles ou autres des examens\r\n */\r\nexport default function useExamen() {\r\n const { getContractCurrent, getGenreMasculin, student } = useAuth();\r\n const { objectifSAY, examens } = useSelector((state: RootState) => state.examen);\r\n\r\n /**\r\n * Retourne l'ensemble des labels (examen,concours....)\r\n * possible lié à la catégorie objectif sur la formation\r\n */\r\n const getLabel = useCallback(() => {\r\n if (student) return getLabelCategoryObjectif(getContractCurrent().training.categoryObjectif);\r\n else return getLabelCategoryObjectif('');\r\n }, []);\r\n\r\n /**\r\n * Retourne l'inscription à l'examen SAY\r\n * @returns\r\n */\r\n const getInscriptionExamenSAY = () => {\r\n let inscription: {\r\n insObjectifSAY: ObjectifGeneral | null;\r\n insExamenSAY: Examen | null | undefined;\r\n } = {\r\n insObjectifSAY: objectifSAY,\r\n insExamenSAY: objectifSAY?.gestionInscriptionInterne\r\n ? examens?.find(\r\n (e) =>\r\n e.code === objectifSAY?.code && ['ENV', 'INS'].includes(e.statutInscription?.code)\r\n )\r\n : null\r\n };\r\n\r\n return inscription;\r\n };\r\n\r\n return {\r\n getLabel,\r\n getContractCurrent,\r\n getGenreMasculin,\r\n getInscriptionExamenSAY\r\n };\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axiosInstance from '../../utils/axios';\r\n// @types\r\nimport {\r\n CategorieObjectif,\r\n Examen,\r\n ExamenListResponse,\r\n ExamenListResult,\r\n ExamenSaveResponse,\r\n ExamenSaveResult,\r\n ExamenState,\r\n ExamenUpdateDateEnvRequest,\r\n ExamenUpdateDateEnvResponse,\r\n ExamenUpdateDateEnvResult,\r\n ObjectifGeneral\r\n} from '../../@types/examen';\r\nimport { DateTimePicker } from '@mui/lab';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: ExamenState = {\r\n isLoading: false,\r\n error: null,\r\n examens: [],\r\n objectifs: [],\r\n regions: [],\r\n departements: [],\r\n academies: [],\r\n statutsInscription: [],\r\n statutsResultat: [],\r\n statutsEpreuve: [],\r\n etatsInscription: [],\r\n categories: [],\r\n dateExamenEnvisagee: null,\r\n pourcentageDevoirsRealises: 0,\r\n nombreJoursStage: 0,\r\n noteDossierProMin: 0,\r\n examen: null,\r\n isLoadingForm: false,\r\n errorForm: null,\r\n objectifsGeresParSAY: [],\r\n objectifsGeresEnExterne: [],\r\n categoriesGereesParSAY: [],\r\n categoriesGereesEnExterne: [],\r\n objectifSAY: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'examen',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n state.error = false;\r\n state.errorForm = false;\r\n },\r\n // START LOADING\r\n startLoadingForm(state) {\r\n state.isLoadingForm = true;\r\n state.errorForm = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n // HAS ERROR\r\n hasErrorForm(state, action) {\r\n state.isLoadingForm = false;\r\n state.errorForm = action.payload;\r\n },\r\n\r\n // Liste\r\n getLoadSuccess(state, action) {\r\n state.isLoading = false;\r\n const {\r\n examens,\r\n objectifs,\r\n regions,\r\n departements,\r\n academies,\r\n statutsInscription,\r\n statutsResultat,\r\n statutsEpreuve,\r\n etatsInscription,\r\n categories,\r\n dateExamenEnvisagee,\r\n pourcentageDevoirsRealises,\r\n nombreJoursStage,\r\n noteDossierProMin,\r\n objectifInscriptionAnticipee\r\n } = action.payload;\r\n state.examens = examens;\r\n state.objectifs = objectifs;\r\n state.regions = regions;\r\n state.departements = departements;\r\n state.academies = academies;\r\n state.statutsInscription = statutsInscription;\r\n state.statutsResultat = statutsResultat;\r\n state.statutsEpreuve = statutsEpreuve;\r\n state.etatsInscription = etatsInscription;\r\n state.categories = categories;\r\n state.dateExamenEnvisagee = dateExamenEnvisagee;\r\n state.pourcentageDevoirsRealises = pourcentageDevoirsRealises;\r\n state.nombreJoursStage = nombreJoursStage;\r\n state.noteDossierProMin = noteDossierProMin;\r\n\r\n const listeObjectifsSAY = objectifs?.filter(\r\n (o: ObjectifGeneral) => o.gestionInscriptionInterne\r\n );\r\n state.objectifsGeresParSAY = listeObjectifsSAY;\r\n\r\n state.objectifsGeresEnExterne = objectifs?.filter(\r\n (o: ObjectifGeneral) => !o.gestionInscriptionInterne\r\n );\r\n state.categoriesGereesParSAY = Array.from(\r\n new Map(\r\n state.objectifsGeresParSAY?.map((o: ObjectifGeneral) => [o.categorie, o.categorie])\r\n ).values()\r\n ) as Array;\r\n state.categoriesGereesEnExterne = Array.from(\r\n new Map(\r\n state.objectifsGeresEnExterne?.map((o: ObjectifGeneral) => [o.categorie, o.categorie])\r\n ).values()\r\n ) as Array;\r\n\r\n // L'API retourne l'objectif interne utilisé pour l'inscription anticipée (premier objectif interne qui se présente)\r\n state.objectifSAY = objectifInscriptionAnticipee;\r\n },\r\n add(state, action) {\r\n state.isLoading = false;\r\n state.isLoadingForm = false;\r\n state.error = false;\r\n state.errorForm = false;\r\n const examen = action.payload;\r\n\r\n const examens = state.examens.filter(\r\n (ex) => !(ex.code === examen.code && ex.session.code === examen.session.code)\r\n );\r\n examens.push(examen);\r\n\r\n state.examens = examens;\r\n },\r\n updateDatExaEnv(state, action) {\r\n state.dateExamenEnvisagee = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getExamens() {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axiosInstance.get('/api/examen/list');\r\n const { result } = response.data;\r\n\r\n switch (result) {\r\n case ExamenListResult.Success:\r\n dispatch(slice.actions.getLoadSuccess(response.data));\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError('error'));\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\nexport const addOrUpdate = (form: Examen) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoadingForm());\r\n try {\r\n const formData = new FormData();\r\n\r\n if (form.session.fichiers != null) {\r\n form.session.fichiers.forEach((fichier) => {\r\n formData.append('file', fichier.file);\r\n });\r\n }\r\n\r\n formData.append('data', JSON.stringify(form));\r\n const response = await axiosInstance.post('/api/examen/edit', formData, {\r\n headers: { 'Content-Type': 'multipart/form-data', writeOnly: true }\r\n });\r\n const { result, examen, errorMessage } = response.data;\r\n\r\n switch (result) {\r\n case ExamenSaveResult.Success:\r\n dispatch(slice.actions.add(examen));\r\n onSuccess();\r\n break;\r\n default:\r\n if (errorMessage && errorMessage !== undefined && errorMessage !== '') {\r\n dispatch(slice.actions.hasErrorForm(errorMessage));\r\n } else {\r\n dispatch(slice.actions.hasErrorForm('Nous rencontrons actuellement un problème'));\r\n }\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasErrorForm('Nous rencontrons actuellement un problème'));\r\n }\r\n };\r\n};\r\n\r\n/*\r\n * Ajoute un examen dans la liste sans le sauvegarder en BDD\r\n */\r\nexport const addWithoutSave = (examen: Examen) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n if (examen) {\r\n dispatch(slice.actions.add(examen));\r\n onSuccess();\r\n }\r\n };\r\n};\r\n\r\nexport const updateDateExamenEnvisagee =\r\n (request: ExamenUpdateDateEnvRequest) => (onSuccess: () => void) => (onError: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n try {\r\n const response = await axiosInstance.post(\r\n '/api/examen/updateDateExaEnv',\r\n request,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n\r\n const { result, errorMessage } = response.data;\r\n\r\n switch (result) {\r\n case ExamenUpdateDateEnvResult.Success:\r\n dispatch(slice.actions.updateDatExaEnv(request.dateEnvisagee));\r\n onSuccess();\r\n break;\r\n default:\r\n onError();\r\n break;\r\n }\r\n } catch (error) {\r\n onError();\r\n }\r\n };\r\n };\r\n","import { Box, CardMediaProps, Stack, StackProps, styled } from '@mui/material';\r\nimport { borderColor } from '@mui/system';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport { useCallback, useEffect, useRef, useState } from 'react';\r\nimport axiosInstance from 'utils/axios';\r\nimport SkeletonLoadSingle from './SkeletonLoadSingle';\r\n\r\n//type\r\ninterface CardMediaCustomProps {\r\n url: string;\r\n isVideo: boolean; //Attention : obligation de le mettre à true si une vidéo est chargée (permet de calculer la hauteur en fonction du ratio)\r\n onLoad?: () => void;\r\n}\r\n\r\nexport default function CardMediaCustom({ url, isVideo, onLoad }: CardMediaCustomProps) {\r\n const { isMobile, isDesktop } = useScreenConfig();\r\n const [isLoading, setIsloading] = useState(true);\r\n\r\n const iframeRef = useRef(null);\r\n const [mediaUrl, setMediaUrl] = useState('');\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleLoad = () => {\r\n setIsloading(false);\r\n if (onLoad) onLoad();\r\n };\r\n\r\n const handleError = () => {\r\n console.log('error');\r\n };\r\n\r\n useEffect(() => {\r\n setOpen(false);\r\n setMediaUrl(url);\r\n }, [url]);\r\n\r\n useEffect(() => {\r\n if (mediaUrl === '') return;\r\n\r\n setOpen(true);\r\n }, [mediaUrl]);\r\n\r\n return (\r\n <>\r\n {isLoading && (\r\n \r\n \r\n
\r\n )}\r\n {open && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","export interface LearningResponse {\r\n url: string;\r\n score: number;\r\n result: LearningResultResponse;\r\n}\r\n\r\nexport enum LearningResultResponse {\r\n Success = 0,\r\n Error = 1\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport { Elearning, Homework, HomeworkStatus } from '../../@types/pedagogy';\r\nimport { map } from 'lodash';\r\nimport { fDate, fDateTime } from 'utils/formatTime';\r\nimport { ICDLRequest } from '../../@types/learningICDL';\r\nimport { LearningResponse, LearningResultResponse } from '../../@types/learning';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type LearningState = {\r\n learnings: Array; // ensemble des activités\r\n photoLibrary: Array; // liens vers la photothèque\r\n additionalLearnings: Array; // activités complémentaires\r\n forumActivity: Array; // liens vers le forum\r\n};\r\n\r\nconst PHOTO_LIBRARY_ID = ['IG2', 'IG3'];\r\nconst FORUM = ['HH'];\r\n\r\nconst initialState: LearningState = {\r\n learnings: [],\r\n photoLibrary: [],\r\n additionalLearnings: [],\r\n forumActivity: []\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'learning',\r\n initialState,\r\n reducers: {\r\n // GET POSTS\r\n getLearnings(state, action) {\r\n state.learnings = action.payload;\r\n state.photoLibrary = action.payload?.filter((x: Elearning) =>\r\n PHOTO_LIBRARY_ID.includes(x.id?.trim())\r\n );\r\n state.additionalLearnings = action.payload?.filter(\r\n (y: Elearning) =>\r\n !PHOTO_LIBRARY_ID.includes(y.id?.trim()) && !FORUM.includes(y.properties?.fouEfm)\r\n );\r\n state.forumActivity = action.payload?.filter((y: Elearning) =>\r\n FORUM.includes(y.properties?.fouEfm)\r\n );\r\n },\r\n\r\n updateLearning(state, action) {\r\n const id = action.payload;\r\n const updateLearnings = map(state.learnings, (_learning) => {\r\n if (id === _learning.id) {\r\n _learning.lastAccess = fDate(new Date());\r\n return _learning;\r\n }\r\n return _learning;\r\n });\r\n\r\n state.learnings = updateLearnings;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { updateLearning, getLearnings } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\nexport const addLogLearning =\r\n (fouEfm: string, proEfm: string, customId: string) => (onSuccess: () => void) => {\r\n return async () => {\r\n try {\r\n const response = await axios.get(\r\n `/api/contract/log/learning/${fouEfm}/${proEfm}?customId=${customId}`,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n if (response.data) {\r\n onSuccess();\r\n }\r\n } catch (error) {}\r\n };\r\n };\r\n\r\nexport const getTestICDL =\r\n (request: ICDLRequest, courseId: string) =>\r\n (onSuccess: (note: number, url: string) => void) =>\r\n (onError: () => void) => {\r\n return async () => {\r\n try {\r\n const response = await axios.post(\r\n `/api/pedagogy/learning/url/${courseId}`,\r\n request,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n\r\n const { result, score, url } = response.data;\r\n\r\n switch (result) {\r\n case LearningResultResponse.Success:\r\n onSuccess(score, url);\r\n break;\r\n default:\r\n onError();\r\n break;\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n onError();\r\n }\r\n };\r\n };\r\n\r\nexport const getEvaluation =\r\n (activity: any) =>\r\n (onSuccess: (evaluation: any, learning: any, keyId: string) => void) =>\r\n (onError: () => void) => {\r\n return async () => {\r\n try {\r\n const response = await axios.get(\r\n `/api/pedagogy/learning/evaluation/${activity.courseId}/${activity.id}`,\r\n {\r\n headers: { writeOnly: true, silence: true }\r\n }\r\n );\r\n\r\n const { item1, item2 } = response.data;\r\n\r\n onSuccess(item1, item2, activity.keyId);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n };\r\n };\r\n","//materials\r\nimport { Lock, Sync } from '@mui/icons-material';\r\nimport { Chip, ListItem, ListItemText, Stack, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport Label from 'components/Label';\r\nimport { HomeworkNote } from 'components/_dashboard/pedagogy/HomeworkNote';\r\nimport useChapterItem from 'hooks/useChapterItem';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { useEffect, useRef } from 'react';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { truncate } from 'utils/formatText';\r\nimport { getStudyPlanItemLabel } from 'utils/helperSupport';\r\n\r\n//type\r\nimport {\r\n HomeworkStatus,\r\n StudyPlanChapter,\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemMedia,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType\r\n} from '../../../../@types/pedagogy';\r\n\r\n//Composant\r\nimport ChapterItemStatus from './ChapterItemStatus';\r\nimport StudyPlanItemScore from './StudyPlanItemScore';\r\nimport useStudyPlanChapterItem from 'hooks/useStudyPlanChapterItem';\r\n\r\nexport type ChapterItemCardView = 'search' | 'standard';\r\n\r\nexport type ChapterItemCardProps = {\r\n item: StudyPlanItem;\r\n subChapter?: StudyPlanChapter | null;\r\n view?: ChapterItemCardView;\r\n onClose?: () => void;\r\n};\r\n\r\nexport default function ChapterItemCard({\r\n item,\r\n subChapter,\r\n view = 'standard',\r\n onClose\r\n}: ChapterItemCardProps) {\r\n const navigate = useNavigate();\r\n\r\n const managerChapterItem = useStudyPlanChapterItem();\r\n\r\n const { label, observation } = getStudyPlanItemLabel(item);\r\n\r\n const isIndicatorLocked = [StudyPlanItemStatus.Locked, StudyPlanItemStatus.Disabled].includes(\r\n item.status\r\n );\r\n\r\n /**\r\n * \r\n const isUpdated = selectedItem?.item?.isUpdated;\r\n const isSelected = item.key === selectedItem?.item?.key;\r\n */\r\n\r\n const isUpdated = item.isUpdated;\r\n const isSelected = item.key === managerChapterItem.selected?.item?.key;\r\n\r\n const handleClick = () => {\r\n if (onClose) {\r\n onClose();\r\n }\r\n\r\n if (view === 'standard') {\r\n managerChapterItem.update(item);\r\n } else navigate(`${PATH_DASHBOARD.studyPlan.details}/${item.reference}/${item.rowNumber}`);\r\n };\r\n\r\n //Gestion du scroll\r\n const selectedItemRef = useRef(null);\r\n\r\n useEffect(() => {\r\n if (isSelected && selectedItemRef.current) {\r\n selectedItemRef.current.scrollIntoView();\r\n }\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n {label}\r\n \r\n {observation && observation !== '' && item.type === StudyPlanItemType.Annexe && (\r\n \r\n {truncate(observation, 50)}\r\n \r\n )}\r\n \r\n }\r\n secondaryTypographyProps={{ component: 'div' }}\r\n secondary={\r\n <>\r\n \r\n {isIndicatorLocked && }\r\n {isUpdated && }\r\n \r\n {view === 'search' && (\r\n <>\r\n Phase {item.sendingPhase}\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n {managerChapterItem.isReadOnly && }\r\n \r\n }\r\n />\r\n \r\n );\r\n}\r\n\r\nfunction CoefficientChip(item: StudyPlanItem) {\r\n switch (item.type) {\r\n case StudyPlanItemType.Homework:\r\n const homework = item as StudyPlanItemHomework;\r\n if (homework.homeworkBase.coefficient !== 1 && homework.homeworkBase.coefficient > 0)\r\n return (\r\n \r\n );\r\n break;\r\n }\r\n return <>;\r\n}\r\n\r\n//---------------------------------------------------------------------------------------\r\nfunction CardReference(item: StudyPlanItem) {\r\n const mediaId = (item as StudyPlanItemMedia)?.media?.id;\r\n\r\n return (\r\n \r\n {item.reference} {mediaId && - Média {mediaId}}\r\n \r\n );\r\n}\r\n\r\n//---------------------------------------------------------------------------------------\r\nexport type ChapterItemHomeworkNoteProps = {\r\n studyPlanItemHomework: StudyPlanItemHomework;\r\n};\r\nexport function ChapterItemHomeworkNote({ studyPlanItemHomework }: ChapterItemHomeworkNoteProps) {\r\n const { homeworkBase } = studyPlanItemHomework;\r\n const homework = homeworkBase.homeworks[homeworkBase.homeworks?.length - 1];\r\n if (\r\n !homeworkBase.isScore ||\r\n (homework && [HomeworkStatus.Remade, HomeworkStatus.Rejected].includes(homework.status))\r\n )\r\n return <>;\r\n return ;\r\n}\r\n","import { useState } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport arrowIosBackFill from '@iconify/icons-eva/arrow-ios-back-fill';\r\nimport calendarFill from '@iconify/icons-eva/calendar-outline';\r\n\r\n//material\r\nimport { Button, Divider, Drawer, Stack, Tooltip, Typography, IconButton } from '@mui/material';\r\nimport { CalendarToday, Close, InsertInvitationRounded, MeetingRoom } from '@mui/icons-material';\r\n\r\n//type\r\nimport { ButtonType } from '../../../@types/common';\r\nimport { HomeworkBase, Material } from '../../../@types/pedagogy';\r\n\r\n//composants\r\nimport { ScheduleTeacherEventsForm } from '../scheduleTeacher/ScheduleTeacherEventsForm';\r\nimport MIconButton from 'components/MIconButton';\r\nimport { Box } from '@mui/system';\r\n\r\n//--------------------------------------------------------------\r\n\r\nexport type MeetingDrawerProps = {\r\n material?: Material | null;\r\n buttonType?: ButtonType;\r\n homework?: HomeworkBase | null;\r\n defaultPro?: string | null; // Code Pro du professeur par défaut\r\n onClose?: VoidFunction; // Callback appelée quand le drawer se ferme\r\n};\r\n\r\n/**\r\n * Ecran permettant d'jouter un rendez vous de type permanence prof ou devoir oral\r\n *\r\n * @param material : matiere de permanence\r\n *@param homework : Devoir\r\n * @param buttonType : Type de bouton\r\n * @returns\r\n */\r\nexport default function MeetingDrawer({\r\n material,\r\n homework,\r\n buttonType = 'button',\r\n defaultPro,\r\n onClose\r\n}: MeetingDrawerProps) {\r\n const [isOpen, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n if (onClose) onClose();\r\n };\r\n\r\n const getIconEdit = (\r\n \r\n );\r\n\r\n return (\r\n <>\r\n {buttonType === 'button' && (\r\n \r\n )}\r\n\r\n {buttonType === 'iconButton' && material != null && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {buttonType === 'iconButton' && !material && (\r\n \r\n \r\n {' '}\r\n \r\n \r\n \r\n )}\r\n\r\n {isOpen && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Prendre rendez-vous\r\n \r\n {homework && (\r\n \r\n {homework.label} -{homework.barCode}\r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import React, { ReactNode, useContext, useEffect, useState } from 'react';\r\n\r\n// material\r\nimport { Paper, Typography } from '@mui/material';\r\n\r\n//Composants\r\nimport { styled } from '@mui/styles';\r\nimport { addTime, getCurrentDateFr, isAfterDate, timeCount } from 'utils/formatTime';\r\nimport Label from 'components/Label';\r\nimport { Box } from '@mui/system';\r\nimport { PageSettingsContext } from 'contexts/PageSettingsContext';\r\nimport { formatInTimeZone } from 'date-fns-tz';\r\n\r\nconst PaperStyled = styled(Paper)((theme) => ({\r\n borderRadius: 9,\r\n padding: 5\r\n}));\r\n\r\nexport type MeetingTimeCountProps = {\r\n start: string;\r\n end: string;\r\n isVirtual: boolean;\r\n children: any;\r\n};\r\n\r\n//Décompte du temps\r\nexport const MeetingTimeCount = ({ start, end, isVirtual, children }: MeetingTimeCountProps) => {\r\n const [minutes, setMinutes] = useState(0);\r\n const { getDateServer } = useContext(PageSettingsContext);\r\n\r\n useEffect(() => {\r\n //Relance toutes les nminutes\r\n const interval = setInterval(() => {\r\n setMinutes((minutes) => minutes + 1);\r\n }, 60000);\r\n return () => clearInterval(interval);\r\n }, []);\r\n\r\n const dateStartActivateVisio = addTime(start, -11);\r\n const dateEndActivateVisio = isVirtual ? addTime(start, 11) : new Date(end);\r\n const currentDate = getCurrentDateFr();\r\n\r\n const isActivate = dateStartActivateVisio < currentDate && dateEndActivateVisio > currentDate;\r\n const isStarted = isAfterDate(currentDate, start);\r\n\r\n const isDisabledRegister = isAfterDate(currentDate, dateEndActivateVisio);\r\n\r\n const time = timeCount(start, currentDate);\r\n\r\n return children(time, isActivate, isStarted, isDisabledRegister);\r\n};\r\n\r\nexport const MeetingTimeCountDisplay = ({ ...props }) => {\r\n const { isPhone, time, isStarted, isActivate, isVirtual } = props;\r\n\r\n return (\r\n \r\n {isStarted ? (\r\n <>\r\n {isVirtual && !isActivate ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport {\r\n NotificationListResponse,\r\n NotificationSettingsProps,\r\n NotificationState,\r\n NotificationType\r\n} from '../../@types/notificationModel';\r\nimport { getMessages } from './message';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: NotificationState = {\r\n isLoading: false,\r\n error: false,\r\n notifications: [],\r\n hasMore: true,\r\n index: 1,\r\n step: 50,\r\n count: 0,\r\n countUnRead: 0\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'notification',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET POSTS\r\n getNotificationsSuccess(state, action) {\r\n const { data, isRefresh } = action.payload;\r\n state.isLoading = false;\r\n if (isRefresh) state.notifications = data.list;\r\n else state.notifications = [...state.notifications, ...data.list];\r\n state.count = data.count;\r\n state.countUnRead = data.countUnRead;\r\n state.hasMore = data.count > state.notifications.length;\r\n },\r\n\r\n setAllRead(state) {\r\n state.isLoading = false;\r\n const notifications = [...state.notifications].map((notif) => {\r\n notif.read = true;\r\n return notif;\r\n });\r\n state.notifications = notifications;\r\n state.countUnRead = 0;\r\n },\r\n\r\n setRead(state, action) {\r\n const id = action.payload;\r\n const notifications = [...state.notifications].map((notif) => {\r\n if (id === notif.id && !notif.read) {\r\n state.countUnRead = state.countUnRead - 1;\r\n return {\r\n ...notif,\r\n read: true\r\n };\r\n }\r\n return notif;\r\n });\r\n state.notifications = notifications;\r\n },\r\n\r\n getMoreNotifications(state) {\r\n const setIndex = state.index + 1;\r\n state.index = setIndex;\r\n },\r\n\r\n noHasMore(state) {\r\n state.hasMore = false;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { getMoreNotifications } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getNotifications(index: number, step: number, isRefresh: boolean) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n\r\n try {\r\n const response = await axios.post('/api/notification/list', {\r\n index: index,\r\n pageSize: step\r\n });\r\n\r\n dispatch(\r\n slice.actions.getNotificationsSuccess({ data: response.data, isRefresh: isRefresh })\r\n );\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\nexport const setAllRead = () => (onError: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n\r\n try {\r\n const response = await axios.get('/api/notification/allread');\r\n if (response.data) {\r\n dispatch(slice.actions.setAllRead());\r\n dispatch(getMessages());\r\n return;\r\n }\r\n onError();\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n};\r\n\r\nexport const setRead = (id: number) => (onError: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n const response = await axios.get(`/api/message/read/${id}`, {\r\n headers: { writeOnly: true }\r\n });\r\n if (response.data) {\r\n dispatch(slice.actions.setRead(id));\r\n return;\r\n }\r\n onError();\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n};\r\n\r\nexport function getNotificationSettings(): Array {\r\n return [\r\n {\r\n id: NotificationType.Actualites,\r\n tagLabel: 'Actualité',\r\n color: '#85370E',\r\n bgcolor: '#FFAD73',\r\n title: 'Nouvelle actualité'\r\n },\r\n {\r\n id: NotificationType.Adresse,\r\n tagLabel: 'Adresse',\r\n color: '#85370E',\r\n bgcolor: '#FFAD73',\r\n title: \"Changement d'adresse\"\r\n },\r\n {\r\n id: NotificationType.Colis,\r\n tagLabel: 'Formation',\r\n color: '#835A03',\r\n bgcolor: '#FEDA65',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.DevoirsEnvoyes,\r\n tagLabel: 'Évaluation',\r\n color: '#45630A',\r\n bgcolor: '#C9E987',\r\n title: 'La correction de votre évaluation est disponible'\r\n },\r\n {\r\n id: NotificationType.DevoirsRecus,\r\n tagLabel: 'Évaluation',\r\n color: '#45630A',\r\n bgcolor: '#C9E987',\r\n title: 'Nous avons bien reçu votre évaluation'\r\n },\r\n {\r\n id: NotificationType.VirtualClass,\r\n tagLabel: 'Classe virtuelle',\r\n color: '#2D6A53',\r\n bgcolor: '#97E9CC',\r\n title: 'Cette classe virtuelle est susceptible de vous intéresser !'\r\n },\r\n {\r\n id: NotificationType.VirtualClassNotificationConfirmation,\r\n tagLabel: 'Classe virtuelle',\r\n color: '#2D6A53',\r\n bgcolor: '#97E9CC',\r\n title: 'Votre inscription est confirmée !'\r\n },\r\n {\r\n id: NotificationType.VirtualClassNotificationPlaceOfFree,\r\n tagLabel: 'Classe virtuelle',\r\n color: '#2D6A53',\r\n bgcolor: '#97E9CC',\r\n title: 'Des places se sont libérées - Réservez la vôtre !'\r\n },\r\n\r\n {\r\n id: NotificationType.VirtualClassNotificationCancel,\r\n tagLabel: 'Classe virtuelle',\r\n color: '#2D6A53',\r\n bgcolor: '#97E9CC',\r\n title: 'Votre annulation est confirmée !'\r\n },\r\n {\r\n id: NotificationType.VirtualClassNotificationCancelBySchool,\r\n tagLabel: 'Classe virtuelle',\r\n color: '#2D6A53',\r\n bgcolor: '#97E9CC',\r\n title: 'Annulation de la classe virtuelle'\r\n },\r\n\r\n {\r\n id: NotificationType.VirtualClassNotificationWaiting,\r\n tagLabel: 'Classe virtuelle',\r\n color: '#2D6A53',\r\n bgcolor: '#97E9CC',\r\n title: \"Votre inscription sur liste d'attente est confirmée !\"\r\n },\r\n\r\n {\r\n id: NotificationType.Events,\r\n tagLabel: 'Atelier',\r\n color: '#BB0E93',\r\n bgcolor: '#FED6F8',\r\n title: 'Nouvel atelier'\r\n },\r\n {\r\n id: NotificationType.Questions,\r\n tagLabel: 'Question',\r\n color: '#B78103',\r\n bgcolor: '#ffc10729',\r\n title: 'Réponse à votre question'\r\n },\r\n {\r\n id: NotificationType.NovadisImportant,\r\n tagLabel: 'Message',\r\n color: '#1F57B5',\r\n bgcolor: '#BCD3FF',\r\n title: 'Nouveau message'\r\n },\r\n {\r\n id: NotificationType.NovadisNormal,\r\n tagLabel: 'Message',\r\n color: '#1F57B5',\r\n bgcolor: '#BCD3FF',\r\n title: 'Nouveau message'\r\n },\r\n {\r\n id: NotificationType.TachesMessage,\r\n tagLabel: 'Message',\r\n color: '#1F57B5',\r\n bgcolor: '#BCD3FF',\r\n title: 'Nouveau message'\r\n },\r\n {\r\n id: NotificationType.CamCoaAbouti,\r\n tagLabel: 'Information',\r\n color: '#7649F0',\r\n bgcolor: '#F0EAFF',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.CamCoaPriseContact,\r\n tagLabel: 'Information',\r\n color: '#7649F0',\r\n bgcolor: '#F0EAFF',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.CamCoaRepondeur,\r\n tagLabel: 'Information',\r\n color: '#1F57B5',\r\n bgcolor: '#BCD3FF',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.CamCoaNeRepondsPas,\r\n tagLabel: 'Information',\r\n color: '#7649F0',\r\n bgcolor: '#F0EAFF',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.CamCoaNumeroErrone,\r\n tagLabel: 'Information',\r\n color: '#7649F0',\r\n bgcolor: '#F0EAFF',\r\n title: ''\r\n },\r\n\r\n {\r\n id: NotificationType.CamCoaAbandonne,\r\n tagLabel: 'Information',\r\n color: '#7649F0',\r\n bgcolor: '#F0EAFF',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.MeetingAbsence,\r\n tagLabel: 'Classe virtuelle',\r\n color: '#2D6A53',\r\n bgcolor: '#97E9CC',\r\n title: 'Absence à la classe virtuelle'\r\n },\r\n {\r\n id: NotificationType.Meeting,\r\n tagLabel: 'Rendez-vous',\r\n color: '#BB0E93',\r\n bgcolor: '#FED6F8',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.EvaluationEnonceUnlock,\r\n tagLabel: 'Évaluation',\r\n color: '#45630A',\r\n bgcolor: '#C9E987',\r\n title: \"Déblocage de l'énoncé de l'évaluation\"\r\n },\r\n {\r\n id: NotificationType.Examens,\r\n tagLabel: 'Examens',\r\n color: '#B60502',\r\n bgcolor: '#FFC0C0',\r\n title: ''\r\n },\r\n {\r\n id: NotificationType.Payment,\r\n tagLabel: 'Information',\r\n color: '#6369FF',\r\n bgcolor: '#D4DBFF',\r\n title: ''\r\n }\r\n ];\r\n}\r\n","import { useCallback, useContext } from 'react';\r\nimport { AuthContext } from '../contexts/JWTContext';\r\nimport { Contract, ContractState } from '../@types/contract';\r\nimport { Address, ModeAccess, StudentConfig } from '../@types/account';\r\nimport { messagesAccess } from 'config';\r\nimport axiosInstance from 'utils/axios';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst CURRENCIES = [\r\n { value: 'USD', label: '$', format: '$@value' },\r\n { value: 'EUR', label: '€', format: '@value €' },\r\n { value: 'CHF', label: 'CHF', format: 'CHF @value' },\r\n { value: 'JPY', label: '¥', format: '0,0' }\r\n];\r\n\r\nconst useAuth = () => {\r\n const context = useContext(AuthContext);\r\n\r\n if (!context) throw new Error('Auth context must be use inside AuthProvider');\r\n\r\n const getGenreMasculin = useCallback(() => {\r\n return context?.student?.civilityId === 'M.' ? true : false;\r\n }, [context.student?.id]);\r\n\r\n const getContractCurrent = useCallback(() => {\r\n return context?.student?.contracts?.filter((c: Contract) => c.current)[0] as Contract;\r\n }, [context.student?.id, context.student?.contracts]);\r\n\r\n const getMessagesAccess = useCallback(() => {\r\n const contrat = getContractCurrent();\r\n\r\n //Aucun accès limité pour les inscrits => pour l'instant\r\n if (contrat.state !== ContractState.Registred)\r\n return messagesAccess.filter((w) => w.key === 'limited')[0].value(context?.student!);\r\n\r\n //deblocage partiel\r\n if (contrat.debtRecovery?.UnBlockTemporary)\r\n return messagesAccess.filter((w) => w.key === 'blocagePartiel')[0].value(context?.student!);\r\n\r\n //blocage pédagogique\r\n if (contrat.debtRecovery?.blockingTraining)\r\n return messagesAccess.filter((w) => w.key === 'blocagePayment')[0].value(context?.student!);\r\n\r\n //blocage prise de rendez-vous, classes virtuelles,ateliers, questions\r\n if (contrat.debtRecovery?.blockingCorrection)\r\n return messagesAccess\r\n .filter((w) => w.key === 'blocageCorrection')[0]\r\n .value(context?.student!);\r\n\r\n return null;\r\n }, [context.student?.id]);\r\n\r\n const authorizeDownload = useCallback(() => {\r\n const contrat = getContractCurrent();\r\n return contrat.state !== ContractState.InProgress;\r\n }, [context.student?.id]);\r\n\r\n const getFormatCurrency = (value: number = 0) => {\r\n const currency = CURRENCIES.find((w) => w.value === getContractCurrent().currency);\r\n return currency?.format.replace('@value', value.toString());\r\n };\r\n\r\n const showHourAlert = () => {\r\n return (\r\n getContractCurrent()?.brand?.id !== 'CH' &&\r\n context.student?.address?.zoneGeographic &&\r\n context.student?.address?.zoneGeographic !== '' &&\r\n context.student?.address?.zoneGeographic !== 'FRANCE'\r\n );\r\n };\r\n\r\n const getHourAlertMessage = useCallback(() => {\r\n return showHourAlert() ? 'Attention, les horaires indiqués sont en France métropolitaine.' : '';\r\n }, [context.student?.id]);\r\n\r\n const getUrlParrainage = useCallback(async () => {\r\n const response = await axiosInstance.get('/api/contract/parrainage');\r\n return response.data;\r\n }, [context.student?.id]);\r\n\r\n const isReadOnly = context.student?.modeAccess !== ModeAccess.Write;\r\n\r\n return {\r\n ...context,\r\n getContractCurrent,\r\n getMessagesAccess,\r\n getFormatCurrency,\r\n getGenreMasculin,\r\n getHourAlertMessage,\r\n getUrlParrainage,\r\n showHourAlert,\r\n authorizeDownload,\r\n isReadOnly\r\n };\r\n};\r\n\r\nexport default useAuth;\r\n","// material\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function UploadIllustration({ ...other }: BoxProps) {\r\n const theme = useTheme();\r\n const PRIMARY_MAIN = theme.palette.primary.main;\r\n const PRIMARY_DARK = theme.palette.primary.dark;\r\n const PRIMARY_DARKER = theme.palette.primary.darker;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","// material\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function SeverErrorIllustration({ ...other }: BoxProps) {\r\n const theme = useTheme();\r\n const PRIMARY_LIGHTER = theme.palette.primary.lighter;\r\n const PRIMARY_MAIN = theme.palette.primary.main;\r\n const PRIMARY_DARK = theme.palette.primary.dark;\r\n const PRIMARY_DARKER = theme.palette.primary.darker;\r\n\r\n return ;\r\n}\r\n","// material\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function PageNotFoundIllustration({ ...other }: BoxProps) {\r\n return ;\r\n}\r\n","// material\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function MaintenanceIllustration({ ...other }: BoxProps) {\r\n const theme = useTheme();\r\n\r\n return ;\r\n}\r\n","// material\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function SentIcon({ ...other }: BoxProps) {\r\n const theme = useTheme();\r\n const PRIMARY_MAIN = theme.palette.primary.main;\r\n const PRIMARY_DARK = theme.palette.primary.dark;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { Typography, Paper, Box, BoxProps } from '@mui/material';\r\nimport { FileBaseInfo, FileType } from '../../@types/common';\r\nimport { useFile, useFileType } from 'hooks/useFile';\r\nimport { useSnackbar } from 'notistack';\r\nimport { ReactNode, useEffect } from 'react';\r\nimport { MediaFileType } from '../../@types/media';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { messageFunctionLimitee } from 'config';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface FileActionProps extends BoxProps {\r\n children(\r\n download: (\r\n id: number,\r\n fileType: FileType,\r\n fileNameDisk?: string,\r\n fileName?: string\r\n ) => Promise,\r\n getFile: (id: number) => Promise,\r\n downloadImage: (fileName: string, brandId: string) => Promise,\r\n\r\n isLoading: boolean,\r\n errorDownload: boolean,\r\n downloadUrl: (url: string, fileName: string, isS3?: boolean) => Promise,\r\n downloadS3: (url: string, fileName: string, fileType: FileType, id: number) => Promise,\r\n downloadMedia?: (id: number, mediaType: MediaFileType, url: string) => void\r\n ): any;\r\n}\r\n\r\n/**\r\n * Gestion de l'appel au serveur pour télécharger un fichier.\r\n * Gestion de l'erreur avec message\r\n */\r\nexport default function FileAction({ children, sx }: FileActionProps) {\r\n const managerFile = useFile();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { authorizeDownload } = useAuth();\r\n const downloadMedia = (id: number, mediaType: MediaFileType, url: string) => {};\r\n\r\n useEffect(() => {\r\n if (managerFile.errorDownload) {\r\n enqueueSnackbar('Impossible de télécharger le fichier', { variant: 'error' });\r\n }\r\n }, [managerFile.errorDownload]);\r\n\r\n const downloadUrl = async (url: string, fileName: string, isS3?: boolean) => {\r\n if (!authorizeDownload()) {\r\n enqueueSnackbar(messageFunctionLimitee, { variant: 'warning' });\r\n return;\r\n }\r\n\r\n await managerFile.downloadUrl(url, fileName);\r\n };\r\n\r\n const downloadS3 = async (url: string, fileName: string, fileType: FileType, id: number) => {\r\n if (!authorizeDownload()) {\r\n enqueueSnackbar(messageFunctionLimitee, { variant: 'warning' });\r\n return;\r\n }\r\n\r\n await managerFile.downloadS3(url, fileName, fileType, id);\r\n };\r\n\r\n const download = async (\r\n id: number,\r\n fileType: FileType,\r\n fileNameDisk?: string,\r\n fileName?: string\r\n ) => {\r\n if (!authorizeDownload()) {\r\n enqueueSnackbar(messageFunctionLimitee, { variant: 'warning' });\r\n return;\r\n }\r\n\r\n await managerFile.download(id, fileType, fileNameDisk, fileName);\r\n };\r\n\r\n const downloadImage = async (fileName: string, brandId: string) => {\r\n if (!authorizeDownload()) {\r\n enqueueSnackbar(messageFunctionLimitee, { variant: 'warning' });\r\n return;\r\n }\r\n\r\n await managerFile.downloadImage(fileName, brandId);\r\n };\r\n\r\n // getFile, download, isLoading, errorDownload, downloadImage, downloadUrl, downloadS3;\r\n\r\n return (\r\n \r\n {children(\r\n download,\r\n managerFile.getFile,\r\n downloadImage,\r\n managerFile.isLoading,\r\n managerFile.errorDownload,\r\n downloadUrl,\r\n downloadS3,\r\n downloadMedia\r\n )}\r\n \r\n );\r\n}\r\n","import { Typography } from '@mui/material';\r\nimport { Homework, HomeworkStatus, ScoreType } from '../../../@types/pedagogy';\r\nimport { ScoreView } from '../studyPlan/ScoreView';\r\n\r\nexport type HomeworkNoteProps = {\r\n scoreType: ScoreType;\r\n homework?: Homework;\r\n label?: string;\r\n};\r\n\r\n/**\r\n * Afficher la note de l'élève du devoir\r\n * @param param0\r\n * @returns\r\n * Null si aucun devoir n'est passé\r\n * la note si le devoir n'est pas en cours de correction\r\n */\r\nexport const HomeworkNote = ({ scoreType, homework, label }: HomeworkNoteProps) => {\r\n if (\r\n homework != null &&\r\n [HomeworkStatus.Corrected, HomeworkStatus.Remade].includes(homework?.status)\r\n ) {\r\n return ;\r\n }\r\n return <>;\r\n};\r\n","import { Typography } from '@mui/material';\r\nimport { TypographyProps } from '@mui/system';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { ScoreType } from '../../../@types/pedagogy';\r\n\r\nexport interface ScoreViewProps extends TypographyProps {\r\n scoreType: ScoreType;\r\n score: string; //evaluation ou note sur 20\r\n label?: string;\r\n}\r\n\r\n/**\r\n * Afficher la note suivant le type\r\n * @param param0\r\n * @returns\r\n */\r\nexport const ScoreView = ({ scoreType, score, label, ...sx }: ScoreViewProps) => {\r\n const { getContractCurrent } = useAuth();\r\n return (\r\n \r\n {label && (\r\n \r\n {label}\r\n \r\n )}\r\n {score}\r\n {scoreType === ScoreType.sur20 && (\r\n \r\n /{getContractCurrent().scoreOn}\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { Address } from './account';\r\nimport { PaymentStatus } from './payment';\r\nimport { Training, Teacher, Elearning } from './pedagogy';\r\n\r\nexport interface ContractSelectResponse {\r\n contract: Contract;\r\n result: ContractSelectResult;\r\n}\r\n\r\nexport enum ContractSelectResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface ModuleExtends {\r\n module: ModuleType;\r\n}\r\n\r\nexport interface Contract {\r\n id: number;\r\n amendmentId: number;\r\n brand: Brand;\r\n training: Training;\r\n averageScore: number;\r\n averageScoreClass: number;\r\n maxScore: number;\r\n lastScore: number;\r\n pEC: boolean;\r\n registrationDate: string | null;\r\n distributionDate: string | null;\r\n marketingTest: string;\r\n unblockDate: string | null;\r\n closingDate: string | null;\r\n state: ContractState;\r\n sendingPhase: number;\r\n suspendedTraining: boolean;\r\n authorize: ContractAuthorize;\r\n numberOfMandatoryHomeworkReceived: number;\r\n numberOfMandatoryHomeworkCorrected: number;\r\n numberOfTotHomeworkCorrected: number;\r\n numberOfMandatoryHomework: number;\r\n numberOfTotalHomework: number;\r\n idConnection: number;\r\n progressRate: number;\r\n partner: Partner;\r\n debtRecovery: DebtRecovery;\r\n current: boolean;\r\n moduleList: ModuleType[];\r\n logConnections: LogConnection[];\r\n creditBalance: number;\r\n coach: Teacher;\r\n debitAmount: number;\r\n bills: Bill[];\r\n constrainedCourse: boolean;\r\n elearnings: Elearning[];\r\n surveys: Survey[];\r\n overtimes: Overtime[];\r\n isChangePassword: boolean;\r\n isLinkOldEE: boolean;\r\n paramsOldEE: string;\r\n currency: string;\r\n scoreOn: number;\r\n isSupported: boolean;\r\n isWorkStudy: boolean;\r\n}\r\n\r\nexport interface Survey {\r\n label: string;\r\n observation: string;\r\n url: string;\r\n id: number;\r\n keyApp: string;\r\n keyId: string;\r\n created: string;\r\n mandatory: boolean;\r\n relanceOfNumber: number;\r\n}\r\n\r\nexport interface Overtime {\r\n amount: number;\r\n code: string;\r\n numberOfMonths: number;\r\n status: OvertimeStatus;\r\n statusPayment: PaymentStatus;\r\n}\r\n\r\nexport enum OvertimeStatus {\r\n None = 0,\r\n Current = 1,\r\n Validated = 2,\r\n Reject = 3\r\n}\r\n\r\nexport interface Partner {\r\n id: string;\r\n label: string;\r\n blockingPayment: boolean;\r\n}\r\n\r\nexport interface ContractAuthorize {\r\n description: string;\r\n type: ContractAuthorizeType;\r\n}\r\n\r\nexport enum ContractAuthorizeType {\r\n Error = 0,\r\n Warning = 1,\r\n OutOfTime = 2,\r\n Info = 3,\r\n Suspended = 4,\r\n PasswordToChange = 5,\r\n Success = 6,\r\n Unkown = 7\r\n}\r\n\r\nexport enum ContractState {\r\n InProgress = 0,\r\n Registred = 1,\r\n Closed = 2\r\n}\r\n\r\nexport interface Brand {\r\n id: string;\r\n label: string;\r\n url: string;\r\n address: Address;\r\n phone: string;\r\n email: string;\r\n addressSociety: Address;\r\n labelSociety: string;\r\n info: string;\r\n rCS: string;\r\n socialNetworks: Array;\r\n}\r\n\r\nexport interface SocialNetwork {\r\n type: SocialNetworkType;\r\n url: string;\r\n}\r\n\r\nexport enum SocialNetworkType {\r\n Facebook = 0,\r\n Google = 1,\r\n Instagram = 2,\r\n Twitter = 3,\r\n Linkedin = 4,\r\n YouTube = 5\r\n}\r\n\r\nexport interface DebtRecovery {\r\n blockingPayment: boolean;\r\n blockingOvertime: boolean;\r\n blockingTraining: boolean;\r\n blockingStudent: boolean;\r\n blockingCorrection: boolean;\r\n blockingMail: boolean;\r\n UnBlockTemporary: boolean;\r\n}\r\n\r\nexport interface Bill {\r\n accountingJournal: string;\r\n accountingDocument: number;\r\n accountingLine: number;\r\n effectDate: string;\r\n designation: string;\r\n scheduleId: number;\r\n scheduleNumber: number;\r\n scheduleAmount: number;\r\n balanceAmount: number;\r\n scheduleNext: BillSchedule;\r\n paymentPending: number;\r\n amountLate: number;\r\n cANet: number;\r\n id: number;\r\n}\r\n\r\nexport interface BillSchedule {\r\n date: string;\r\n amount: number;\r\n paymentChoice: string;\r\n}\r\n\r\nexport interface LogConnectionUpdateResponse {\r\n idConnection: number;\r\n result: LogConnectionUpdateResult;\r\n}\r\n\r\nexport interface LogConnectionUpdateRequest {\r\n idConnection: number;\r\n pastTimeMinute: number;\r\n}\r\n/*\r\nconstructor(id: number, pastTimeMinute: number) {\r\n this.idConnection = id;\r\n this.pastTimeMinute = pastTimeMinute;\r\n } */\r\n\r\nexport enum LogConnectionUpdateResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface LogConnectionListResponse {\r\n list: LogConnection[];\r\n result: LogConnectionListResult;\r\n}\r\n\r\nexport enum LogConnectionListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\nexport interface LogConnectionListRequest {\r\n type: LogConnectionType;\r\n dateStart: string;\r\n dateEnd: string;\r\n}\r\n\r\nexport enum LogConnectionType {\r\n Date = 0,\r\n Day = 1,\r\n Week = 2,\r\n Month = 3,\r\n Year = 4\r\n}\r\n\r\nexport interface LogConnection {\r\n date: string;\r\n pastTimeMinute: number;\r\n}\r\n\r\nexport enum ModuleType {\r\n ProfileUpdate = 0,\r\n QuestionUpdate = 1,\r\n\r\n HomeworkUpdate = 2,\r\n LessonView = 3,\r\n InternalShipView = 4,\r\n InternalShipUpdate = 5,\r\n PaymentView = 6,\r\n PaymentUpdate = 7,\r\n VirtualClassView = 8,\r\n VirtualClassUpdate = 9,\r\n MeetingUpdate = 10,\r\n WorkshopView = 11,\r\n WorkshopUpdate = 12,\r\n Overtime = 13,\r\n JobView = 14,\r\n Agenda = 15,\r\n StudyPlan = 16,\r\n StudyPlanValidate = 17,\r\n ContactHandicap = 18,\r\n Examen = 19,\r\n ExamenUpdate = 22,\r\n Elearning = 20,\r\n Coaching = 21,\r\n WelcomeCall = 23,\r\n AttendanceTracking = 24,\r\n Tracker = 25,\r\n QuestionUpdateFilter = 26,\r\n Dashboard = 27,\r\n News = 28\r\n}\r\n","import { useEffect, useState } from 'react';\r\n\r\n// utils\r\nimport axiosInstance from '../utils/axios';\r\n\r\n// @types\r\nimport { FileType } from '../@types/common';\r\nimport useHubConnection from './useHubConnection';\r\nimport { ca } from 'date-fns/locale';\r\nimport axios from 'axios';\r\n\r\nexport type useFileType = {\r\n download: (\r\n id: number,\r\n fileType: FileType,\r\n fileNameDisk?: string,\r\n fileName?: string\r\n ) => Promise;\r\n getFile: (id: number) => Promise;\r\n downloadImage: (fileName: string, brandId: string) => Promise;\r\n downloadUrl: (url: string, fileName: string) => Promise;\r\n downloadS3: (url: string, fileName: string, fileType: FileType, id: number) => Promise;\r\n getUrlS3: (url: string, fileType: FileType) => Promise;\r\n isLoading: boolean;\r\n errorDownload: boolean;\r\n getAvatar: () => Promise;\r\n exists: (url: string) => Promise;\r\n};\r\n\r\n/**\r\n * Hook de téléchargement fichier\r\n * @param param0\r\n * @returns\r\n */\r\nexport const useFile = () => {\r\n const [isLoading, setLoading] = useState(false);\r\n const [errorDownload, setErrorDownload] = useState(false);\r\n const { onError } = useHubConnection();\r\n\r\n /**\r\n * Prevoir mettre un lien direct si fichier volumineux\r\n * @param url\r\n * @returns\r\n */\r\n const downloadUrl = async (url: string, fileName: string) => {\r\n const response = await getCallExterne(url);\r\n\r\n if (response?.data) {\r\n var blobURL = window.URL.createObjectURL(response.data);\r\n return loadUrl(blobURL, fileName);\r\n }\r\n };\r\n\r\n const exists = async (url: string) => {\r\n try {\r\n const response = await axios.head(url);\r\n return response.status === 200;\r\n } catch (ex) {\r\n return false;\r\n }\r\n };\r\n\r\n const downloadS3 = async (url: string, fileName: string, fileType: FileType, id: number) => {\r\n const urlS3 = await axiosInstance.get(`/api/file/url/${fileType}?name=${url}&id=${id}`);\r\n\r\n const response = await getCallExterne(urlS3.data);\r\n if (response?.data) {\r\n var blobURL = window.URL.createObjectURL(response.data);\r\n return loadUrl(blobURL, fileName || url);\r\n }\r\n };\r\n\r\n const getUrlS3 = async (url: string, fileType: FileType) => {\r\n const urlS3 = await axiosInstance.get(`/api/file/url/${fileType}?name=${url}`);\r\n const response = await getCallExterne(urlS3.data);\r\n return response?.data;\r\n };\r\n\r\n /**\r\n * Prevoir mettre un lien direct si fichier volumineux\r\n * @param id\r\n * @param fileType\r\n * @param fileName\r\n * @returns\r\n */\r\n const download = async (\r\n id: number,\r\n fileType: FileType,\r\n fileNameDisk?: string,\r\n fileName?: string\r\n ) => {\r\n const response = await getCall(\r\n `/api/file/downloadfile/${fileType}/${id}${\r\n fileNameDisk ? `?name=${fileNameDisk}&token=` : ''\r\n }`\r\n );\r\n if (response?.data) {\r\n const contentDisposition = response?.headers['content-disposition'];\r\n let _filename: string = fileName || '';\r\n\r\n if (contentDisposition && _filename === '')\r\n _filename = contentDisposition.match(/filename=(?[^,;]+);/)[1];\r\n\r\n var blobURL = window.URL.createObjectURL(response.data);\r\n setLoading(false);\r\n return loadUrl(blobURL, _filename);\r\n }\r\n };\r\n\r\n /**\r\n * Téléchargement fichier\r\n */\r\n const getFile = async (id: number) => {\r\n const response = await getCall(`/api/file/downloadfile/${FileType.Media}/${id}`);\r\n if (response?.data) return window.URL.createObjectURL(response?.data);\r\n };\r\n\r\n /**\r\n * Téléchargement avatar()\r\n * @param fileName\r\n * @param brandId\r\n * @returns\r\n */\r\n const getAvatar = async () => {\r\n const response = await axiosInstance.get(`/api/file/downloadfile/${FileType.Avatar}/0`);\r\n if (response?.data) return response?.data;\r\n };\r\n\r\n /**\r\n * Téléchargement image()\r\n * @param fileName\r\n * @param brandId\r\n * @returns\r\n */\r\n const downloadImage = async (fileName: string, brandId: string) => {\r\n const response = await getCall(\r\n `/api/file/downloadimage?fileName=${fileName}&brandId=${brandId}`\r\n );\r\n if (response?.data) return response?.data;\r\n };\r\n\r\n //Appel serveur\r\n const getCall = async (url: string) => {\r\n setLoading(true);\r\n setErrorDownload(false);\r\n try {\r\n let response = await axiosInstance.get(url, {\r\n responseType: 'blob',\r\n timeout: 120000,\r\n headers: {\r\n Accept: 'application/octet-stream'\r\n }\r\n });\r\n setLoading(false);\r\n return response;\r\n } catch (ex: any) {\r\n setLoading(false);\r\n setErrorDownload(true);\r\n\r\n //onError(`Erreur fichier ${url}`, `${url} - ${document.location.toString()} ${ex.toString()}`);\r\n }\r\n };\r\n\r\n //Appel serveur\r\n const getCallExterne = async (url: string) => {\r\n setLoading(true);\r\n setErrorDownload(false);\r\n try {\r\n let response = await axios.get(url, {\r\n responseType: 'blob',\r\n timeout: 120000\r\n });\r\n setLoading(false);\r\n return response;\r\n } catch (ex: any) {\r\n setLoading(false);\r\n setErrorDownload(true);\r\n console.log(ex);\r\n //onError(`Erreur fichier ${url}`, `${url} - ${document.location.toString()} ${ex.toString()}`);\r\n }\r\n };\r\n\r\n const loadUrl = (url: string, fileName: string) => {\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.target = '_blank';\r\n link.download = fileName;\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n };\r\n\r\n return {\r\n download,\r\n isLoading,\r\n getFile,\r\n downloadImage,\r\n errorDownload,\r\n getAvatar,\r\n downloadUrl,\r\n downloadS3,\r\n getUrlS3,\r\n exists\r\n } as useFileType;\r\n};\r\n","import useAuth from 'hooks/useAuth';\r\nimport { ReactNode, createContext, useState, useEffect } from 'react';\r\nimport { addTime, differenceBetweenMinute } from 'utils/formatTime';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport type PageSettingsContextProps = {\r\n helpCategoryId: string;\r\n isCloseSidebar: boolean;\r\n setHelpCategoryId: (category: string) => void;\r\n setCloseSidebar: () => void;\r\n setDebugMode: () => void;\r\n setVideoPlay: (play: boolean) => void;\r\n getDateServer: () => Date;\r\n debugMode: boolean;\r\n dateServer: Date;\r\n dateLocale: Date;\r\n isVideoPlay: boolean;\r\n};\r\n\r\nconst initialState: PageSettingsContextProps = {\r\n helpCategoryId: '',\r\n isCloseSidebar: false,\r\n setCloseSidebar: () => {},\r\n setHelpCategoryId: (id: string) => {},\r\n setDebugMode: () => {},\r\n getDateServer: () => new Date(),\r\n setVideoPlay: (play: boolean) => {},\r\n dateServer: new Date(),\r\n dateLocale: new Date(),\r\n debugMode: false,\r\n isVideoPlay: false\r\n};\r\n\r\nconst PageSettingsContext = createContext(initialState);\r\n\r\ntype PageSettingsProviderProps = {\r\n children: ReactNode;\r\n};\r\n\r\nfunction PageSettingsProvider({ children }: PageSettingsProviderProps) {\r\n const { student } = useAuth();\r\n const [setting, setSetting] = useState({\r\n helpCategoryId: '',\r\n isCloseSidebar: false,\r\n debugMode: false,\r\n dateServer: new Date(),\r\n dateLocale: new Date(),\r\n isVideoPlay: false\r\n });\r\n\r\n const setHelpCategoryId = (id: string) => {\r\n if (id !== setting.helpCategoryId) setSetting({ ...setting, helpCategoryId: id });\r\n };\r\n\r\n const setCloseSidebar = () => {\r\n setSetting({ ...setting, isCloseSidebar: true });\r\n };\r\n\r\n const setVideoPlay = (play: boolean) => {\r\n setSetting({ ...setting, isVideoPlay: play });\r\n };\r\n\r\n const setDebugMode = () => {\r\n setSetting({ ...setting, debugMode: true });\r\n };\r\n\r\n const getDateServer = () => {\r\n if (student?.address.zoneGeographic === 'FRANCE') return new Date();\r\n else {\r\n const diffTime = differenceBetweenMinute(setting.dateLocale, new Date());\r\n\r\n return addTime(setting.dateServer, Math.abs(diffTime));\r\n }\r\n };\r\n\r\n /**Synchro date server */\r\n useEffect(() => {\r\n setSetting({ ...setting, dateServer: student?.dateTimeServer, dateLocale: new Date() });\r\n }, []);\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport { PageSettingsProvider, PageSettingsContext };\r\n","import { Typography } from '@mui/material';\r\nimport { ModeAccess } from '../../../@types/account';\r\nimport { RowItemDisplayAlert } from 'components/RowListItem';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { fDateMeeting } from 'utils/formatTime';\r\nimport { MeetingAddOrUpdateResponse, MeetingAddOrUpdateResult } from '../../../@types/meeting';\r\n\r\nexport type MeetingErrorMessageProps = {\r\n error: MeetingAddOrUpdateResponse;\r\n};\r\n\r\nexport default function MeetingErrorMessage({ error }: MeetingErrorMessageProps) {\r\n let message: string = 'Nous ne pouvons pas donner suite à cette demande';\r\n switch (error.result) {\r\n case MeetingAddOrUpdateResult.ClosedContract:\r\n message = 'La date de clôture de votre contrat sera passée';\r\n break;\r\n case MeetingAddOrUpdateResult.ErrorDate:\r\n message = 'La date du rendez vous est passée';\r\n break;\r\n case MeetingAddOrUpdateResult.ErrorDouble:\r\n message = 'Vous avez déja un rendez vous de programmer à cette heure ci';\r\n break;\r\n case MeetingAddOrUpdateResult.ErrorMaterial:\r\n message = `Vous ne pouvez prendre qu'un seul rendez vous à la fois - Rdv le ${fDateMeeting(\r\n error.item.dateStart,\r\n error.item.dateEnd\r\n )}`;\r\n break;\r\n\r\n case MeetingAddOrUpdateResult.ErrorTeacherBusy:\r\n message = \"Désolé le professeur n'est plus disponible\";\r\n break;\r\n }\r\n\r\n return (\r\n \r\n {message}\r\n \r\n );\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\nimport * as Yup from 'yup';\r\nimport { useFormik, Form, FormikProvider } from 'formik';\r\n// material\r\nimport {\r\n List,\r\n Button,\r\n Typography,\r\n TextField,\r\n MenuItem,\r\n Box,\r\n DialogActions,\r\n Alert,\r\n RadioGroup,\r\n FormControlLabel,\r\n Radio,\r\n Card,\r\n Stack\r\n} from '@mui/material';\r\nimport {\r\n PermContactCalendar,\r\n CheckOutlined,\r\n Phone,\r\n Videocam,\r\n Notes,\r\n PhoneRounded\r\n} from '@mui/icons-material';\r\nimport { LoadingButton } from '@mui/lab';\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { addOrUpdateMeeting } from 'redux/slices/meeting';\r\n\r\n//type\r\nimport { Meeting, MeetingStatus, MeetingType } from '../../../@types/meeting';\r\nimport { HomeworkBase } from '../../../@types/pedagogy';\r\nimport { ModuleType } from '../../../@types/contract';\r\n\r\n//Composants\r\nimport {\r\n RowItem,\r\n RowItemDisplay,\r\n RowItemDisplayDateTime,\r\n RowItemDisplayTeacher,\r\n RowItemDisplayTitle\r\n} from 'components/RowListItem';\r\n\r\nimport { MeetingVisioMessage, MeetingPhoneMessage } from 'components/_dashboard/meeting';\r\n\r\nimport MeetingErrorMessage from './MeetingErrorMessage';\r\nimport MeetingAlertMessageOral from './MeetingAlertMessageOral';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport ModuleNotAuthorized from 'components/ModuleNotAuthorized';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { useTheme } from '@mui/material/styles';\r\n\r\nexport type MeetingFormProps = {\r\n onCancel(is: boolean): void;\r\n onClose: VoidFunction;\r\n homework?: HomeworkBase | null;\r\n};\r\n\r\nexport const MeetingForm = ({ onCancel, onClose, homework = null }: MeetingFormProps) => {\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { getContractCurrent } = useAuth();\r\n const { meeting, isLoading, error } = useSelector((state: RootState) => state.meeting);\r\n const { authorizedModule } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.MeetingUpdate]\r\n });\r\n\r\n const validationSchema = Yup.object({\r\n type: Yup.number(),\r\n phone: Yup.string().when('type', {\r\n is: 0,\r\n then: Yup.string().required('Le téléphone est obligatoire')\r\n }),\r\n observation: Yup.string()\r\n .required(\"L'objet du rendez-vous est obligatoire\")\r\n .min(30, \"Veuillez compléter l'objet de votre rendez-vous (au minimum 30 caractères)\")\r\n });\r\n\r\n //Types de RDV\r\n const PHONE = { key: 0, label: 'Téléphone', icon: };\r\n const VISIO = { key: 1, label: 'Visio', icon: };\r\n\r\n //valeur par defaut du type\r\n const typeDefault =\r\n meeting?.isVisio || getContractCurrent().brand.id === 'CH' ? VISIO.key : PHONE.key;\r\n\r\n //Types de RDV à afficher\r\n let filteredTypes = [];\r\n\r\n if (getContractCurrent().brand.id === 'CH') {\r\n // Cas particulier de la Suisse, uniquement la Visio\r\n filteredTypes.push(VISIO);\r\n } else {\r\n // Autres écoles\r\n if (meeting?.isVisio) {\r\n // Si la Visio est gérée\r\n filteredTypes.push(VISIO);\r\n }\r\n // Dans tous les cas, le téléphone est autorisé\r\n filteredTypes.push(PHONE);\r\n }\r\n\r\n const formik = useFormik({\r\n initialValues: {\r\n type: meeting?.id === 0 ? typeDefault : (meeting?.type as number),\r\n phone: meeting?.phone || '',\r\n observation: meeting?.observation || ''\r\n },\r\n validationSchema: validationSchema,\r\n\r\n onSubmit: async (values) => {\r\n dispatch(\r\n addOrUpdateMeeting({\r\n type: values.type,\r\n observation: values.observation,\r\n phone: values.phone,\r\n status: MeetingStatus.Registered,\r\n dateEnd: meeting!.dateEnd,\r\n dateStart: meeting!.dateStart,\r\n homework: homework,\r\n id: meeting!.id,\r\n idVirtualClass: meeting!.idVirtualClass,\r\n isVisio: meeting!.isVisio,\r\n material: meeting!.material,\r\n teacher: meeting!.teacher\r\n })((meeting: Meeting) => {\r\n enqueueSnackbar('Enregistrement effectué', { variant: 'success' });\r\n onClose();\r\n })\r\n );\r\n }\r\n });\r\n\r\n const { setFieldValue } = formik;\r\n\r\n const updateMeetingType = (value: number) => {\r\n setFieldValue('type', value);\r\n };\r\n\r\n if (!authorizedModule) return ;\r\n\r\n return (\r\n \r\n
\r\n \r\n {!homework && (\r\n } title=\"\">\r\n {meeting?.material?.label}\r\n \r\n )}\r\n \r\n\r\n \r\n {filteredTypes?.map((option) => (\r\n \r\n ))}\r\n \r\n }\r\n icon={<>}\r\n subTitle=\"\"\r\n />\r\n\r\n {formik.values.type === MeetingType.Phone ? (\r\n <>\r\n Participer par téléphone}\r\n icon={}\r\n subTitle={\r\n <>\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n ) : (\r\n <>\r\n Participer en visio}\r\n icon={}\r\n subTitle={}\r\n />\r\n \r\n )}\r\n\r\n \r\n\r\n Objet de mon rendez-vous :}\r\n icon={}\r\n subTitle={\r\n \r\n }\r\n />\r\n \r\n {!homework && }\r\n {error && }\r\n \r\n \r\n \r\n \r\n {meeting?.id === 0 ? 'CONFIRMER' : 'ENREGISTRER'}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport type MeetingTypeRadioProps = {\r\n value: number;\r\n label: string;\r\n icon: JSX.Element | null;\r\n selected?: boolean;\r\n onChange(value: number): void;\r\n};\r\n\r\nconst MeetingTypeRadio = ({ value, label, icon, selected, onChange }: MeetingTypeRadioProps) => {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n onChange(value)}\r\n sx={{\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n width: '100px',\r\n height: '100px',\r\n color: selected ? theme.palette.primary.main : theme.palette.grey[500]\r\n }}\r\n >\r\n {icon}\r\n {label}\r\n \r\n \r\n );\r\n};\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axiosInstance from '../../utils/axios';\r\n// @types\r\nimport {\r\n Favorite,\r\n FavoriteActionResult,\r\n FavoriteAddResponse,\r\n FavoriteAddResult,\r\n FavoriteListResponse,\r\n FavoriteListResult,\r\n FavoriteState\r\n} from '../../@types/favorite';\r\nimport { filter } from 'lodash';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: FavoriteState = {\r\n isLoading: false,\r\n error: false,\r\n favorites: [],\r\n notificationContent: undefined\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'favorite',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // Liste\r\n getFavoritesSuccess(state, action) {\r\n state.isLoading = false;\r\n state.favorites = action.payload;\r\n },\r\n\r\n // ajouter\r\n addFavoriteSuccess(state, action) {\r\n state.isLoading = false;\r\n state.favorites = [...state.favorites, action.payload];\r\n },\r\n // Supprimer\r\n removeFavoriteSuccess(state, action) {\r\n state.isLoading = false;\r\n\r\n const removeFavorite = filter(state.favorites, (favorite) => favorite.id !== action.payload);\r\n\r\n state.favorites = removeFavorite;\r\n },\r\n //Ajout notification\r\n addFavoriteNotification(state, action) {\r\n state.notificationContent = action.payload;\r\n },\r\n //Suppression notification\r\n removeFavoriteNotification(state) {\r\n state.notificationContent = undefined;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getFavorites() {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axiosInstance.get('/api/favorite/list');\r\n const { result, list } = response.data;\r\n\r\n switch (result) {\r\n case FavoriteListResult.Success:\r\n dispatch(slice.actions.getFavoritesSuccess(list));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function addFavorite(request: Favorite) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axiosInstance.post('/api/favorite/add', request, {\r\n headers: { writeOnly: true }\r\n });\r\n const { result, item } = response.data;\r\n\r\n switch (result) {\r\n case FavoriteAddResult.Success:\r\n dispatch(slice.actions.addFavoriteSuccess(item));\r\n\r\n //Notification\r\n dispatch(showNotification('+1'));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function removeFavorite(id: number) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axiosInstance.get(`/api/favorite/remove/${id}`, {\r\n headers: { writeOnly: true }\r\n });\r\n if (response.data) {\r\n dispatch(slice.actions.removeFavoriteSuccess(id));\r\n\r\n //Notification\r\n dispatch(showNotification('-1'));\r\n } else {\r\n dispatch(slice.actions.hasError(true));\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(true));\r\n }\r\n };\r\n}\r\n\r\nfunction showNotification(notifTxt: string) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.addFavoriteNotification(notifTxt));\r\n const notifTimeout = setTimeout(() => {\r\n dispatch(slice.actions.removeFavoriteNotification());\r\n clearInterval(notifTimeout);\r\n }, 2000);\r\n };\r\n}\r\n","// ----------------------------------------------------------------------\r\n\r\nfunction path(root: string, sublink: string) {\r\n return `${root}${sublink}`;\r\n}\r\n\r\nconst ROOTS_AUTH = '/auth';\r\nexport const ROOTS_DASHBOARD = '/dashboard';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport const PATH_AUTH = {\r\n root: ROOTS_AUTH,\r\n login: path(ROOTS_AUTH, '/login'),\r\n loginUnprotected: path(ROOTS_AUTH, '/login-unprotected'),\r\n register: path(ROOTS_AUTH, '/register'),\r\n registerUnprotected: path(ROOTS_AUTH, '/register-unprotected'),\r\n resetPassword: path(ROOTS_AUTH, '/reset-password'),\r\n changePassword: path(ROOTS_AUTH, '/change-password'),\r\n verify: path(ROOTS_AUTH, '/verify')\r\n};\r\n\r\nexport const PATH_PAGE = {\r\n comingSoon: '/coming-soon',\r\n maintenance: '/maintenance',\r\n pricing: '/pricing',\r\n payment: '/payment',\r\n about: '/about-us',\r\n contact: '/contact-us',\r\n faqs: '/faqs',\r\n page404: '/404',\r\n page500: '/500',\r\n components: '/components'\r\n};\r\n\r\nexport const PATH_DASHBOARD = {\r\n root: ROOTS_DASHBOARD,\r\n general: {\r\n app: path(ROOTS_DASHBOARD, '/app'),\r\n mentionLegal: path(ROOTS_DASHBOARD, '/mentionslegales'),\r\n contact: path(ROOTS_DASHBOARD, '/contact'),\r\n help: path(ROOTS_DASHBOARD, '/aides'),\r\n //homeworks: path(ROOTS_DASHBOARD, '/evaluations'),\r\n overtimes: path(ROOTS_DASHBOARD, '/prolongation')\r\n },\r\n mail: {\r\n root: path(ROOTS_DASHBOARD, '/mail'),\r\n all: path(ROOTS_DASHBOARD, '/mail/all')\r\n },\r\n message: {\r\n root: path(ROOTS_DASHBOARD, '/message'),\r\n all: path(ROOTS_DASHBOARD, '/message/all'),\r\n unread: path(ROOTS_DASHBOARD, '/message/unread'),\r\n school: path(ROOTS_DASHBOARD, '/message/school'),\r\n question: path(ROOTS_DASHBOARD, '/message/question')\r\n },\r\n chat: {\r\n root: path(ROOTS_DASHBOARD, '/chat'),\r\n new: path(ROOTS_DASHBOARD, '/chat/new'),\r\n conversation: path(ROOTS_DASHBOARD, '/chat/:conversationKey')\r\n },\r\n agenda: path(ROOTS_DASHBOARD, '/agenda'),\r\n\r\n favorite: path(ROOTS_DASHBOARD, '/favoris'),\r\n studyPlan: {\r\n root: path(ROOTS_DASHBOARD, '/studyPlan/list'),\r\n details: path(ROOTS_DASHBOARD, '/studyPlan/details'),\r\n // skills: path(ROOTS_DASHBOARD, '/studyPlan/skills'),\r\n documents: path(ROOTS_DASHBOARD, '/studyPlan/documents'),\r\n activity: path(ROOTS_DASHBOARD, '/studyPlan/activity'),\r\n StudyPlanSearch: path(ROOTS_DASHBOARD, '/studyPlan/search'),\r\n StudyPlanSearchDetails: path(ROOTS_DASHBOARD, '/studyPlan/searchdetails')\r\n },\r\n student: {\r\n profil: path(ROOTS_DASHBOARD, '/student/account/profil'),\r\n documents: path(ROOTS_DASHBOARD, '/student/account/documents'),\r\n notifications: path(ROOTS_DASHBOARD, '/student/account/notifications'),\r\n payment: path(ROOTS_DASHBOARD, '/student/account/payment'),\r\n password: path(ROOTS_DASHBOARD, '/student/account/password'),\r\n availability: path(ROOTS_DASHBOARD, '/student/account/availability'),\r\n specificNeeds: path(ROOTS_DASHBOARD, '/student/account/specificneeds')\r\n },\r\n\r\n suivi: {\r\n root: path(ROOTS_DASHBOARD, '/suivi'),\r\n skills: path(ROOTS_DASHBOARD, '/suivi/skills'),\r\n notes: path(ROOTS_DASHBOARD, '/suivi/relevenotes'),\r\n historic: path(ROOTS_DASHBOARD, '/suivi/historiques'),\r\n historicRdv: path(ROOTS_DASHBOARD, '/suivi/historiques/rdv'),\r\n historicSupport: path(ROOTS_DASHBOARD, '/suivi/historiques/supports'),\r\n internships: path(ROOTS_DASHBOARD, '/suivi/internships'),\r\n internshipCreate: path(ROOTS_DASHBOARD, '/suivi/internship'),\r\n examens: path(ROOTS_DASHBOARD, '/suivi/examens'),\r\n examenCreate: path(ROOTS_DASHBOARD, '/suivi/examen-new'),\r\n //examenPeriode: path(ROOTS_DASHBOARD, '/suivi/examen-periode'),\r\n examenAdd: path(ROOTS_DASHBOARD, '/suivi/examen-add'),\r\n examenCreateInterne: path(ROOTS_DASHBOARD, '/suivi/examen-preinscription')\r\n //assiduite: path(ROOTS_DASHBOARD, '/suivi/assiduite')\r\n },\r\n\r\n user: {\r\n root: path(ROOTS_DASHBOARD, '/user'),\r\n profile: path(ROOTS_DASHBOARD, '/user/profile'),\r\n cards: path(ROOTS_DASHBOARD, '/user/cards'),\r\n list: path(ROOTS_DASHBOARD, '/user/list'),\r\n newUser: path(ROOTS_DASHBOARD, '/user/new'),\r\n editById: path(ROOTS_DASHBOARD, `/user/reece-chung/edit`),\r\n account: path(ROOTS_DASHBOARD, '/user/account')\r\n },\r\n eCommerce: {\r\n root: path(ROOTS_DASHBOARD, '/e-commerce'),\r\n shop: path(ROOTS_DASHBOARD, '/e-commerce/shop'),\r\n product: path(ROOTS_DASHBOARD, '/e-commerce/product/:name'),\r\n productById: path(ROOTS_DASHBOARD, '/e-commerce/product/nike-air-force-1-ndestrukt'),\r\n list: path(ROOTS_DASHBOARD, '/e-commerce/list'),\r\n newProduct: path(ROOTS_DASHBOARD, '/e-commerce/product/new'),\r\n editById: path(ROOTS_DASHBOARD, '/e-commerce/product/nike-blazer-low-77-vintage/edit'),\r\n checkout: path(ROOTS_DASHBOARD, '/e-commerce/checkout'),\r\n invoice: path(ROOTS_DASHBOARD, '/e-commerce/invoice')\r\n },\r\n blog: {\r\n root: path(ROOTS_DASHBOARD, '/blog'),\r\n posts: path(ROOTS_DASHBOARD, '/blog/posts'),\r\n post: path(ROOTS_DASHBOARD, '/blog/post/:title'),\r\n postById: path(ROOTS_DASHBOARD, '/blog/post/apply-these-7-secret-techniques-to-improve-event'),\r\n newPost: path(ROOTS_DASHBOARD, '/blog/new-post')\r\n },\r\n article: {\r\n root: path(ROOTS_DASHBOARD, '/article'),\r\n list: path(ROOTS_DASHBOARD, '/article/list')\r\n },\r\n job: {\r\n root: path(ROOTS_DASHBOARD, '/job'),\r\n list: path(ROOTS_DASHBOARD, '/job/list')\r\n },\r\n\r\n virtualClass: {\r\n root: path(ROOTS_DASHBOARD, '/virtualclass'),\r\n list: path(ROOTS_DASHBOARD, '/virtualclass/list'),\r\n edit: path(ROOTS_DASHBOARD, '/virtualclass/:id')\r\n },\r\n workshop: {\r\n root: path(ROOTS_DASHBOARD, '/workshop'),\r\n list: path(ROOTS_DASHBOARD, '/workshop/list'),\r\n edit: path(ROOTS_DASHBOARD, '/workshop/:id')\r\n },\r\n homeworks: {\r\n root: path(ROOTS_DASHBOARD, '/evaluations'),\r\n details: path(ROOTS_DASHBOARD, '/evaluations/details')\r\n }\r\n};\r\n\r\nexport const PATH_DOCS = '';\r\n","// material\r\nimport { Box } from '@mui/material';\r\n//\r\nimport { Icon } from '@iconify/react';\r\nimport fileFill from '@iconify/icons-eva/file-fill';\r\nimport {\r\n ArticleRounded,\r\n ImageRounded,\r\n PictureAsPdfRounded,\r\n VideoCallRounded,\r\n VideoLibraryRounded\r\n} from '@mui/icons-material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst FORMAT_IMG = ['jpg', 'jpeg', 'gif', 'bmp', 'png'];\r\nconst FORMAT_VIDEO = ['m4v', 'avi', 'mpg', 'mp4', 'webm'];\r\nconst FORMAT_WORD = ['doc', 'docx'];\r\nconst FORMAT_EXCEL = ['xls', 'xlsx'];\r\nconst FORMAT_POWERPOINT = ['ppt', 'pptx'];\r\nconst FORMAT_PDF = ['pdf'];\r\nconst FORMAT_PHOTOSHOP = ['psd'];\r\nconst FORMAT_ILLUSTRATOR = ['ai', 'esp'];\r\n\r\nexport function getFileType(fileUrl: string = '') {\r\n return fileUrl.split('.').pop() || '';\r\n}\r\n\r\nexport function getFileName(fileUrl: string) {\r\n return fileUrl.substring(fileUrl.lastIndexOf('/') + 1).replace(/\\.[^/.]+$/, '');\r\n}\r\n\r\nexport function getFileFullName(fileUrl: string) {\r\n return fileUrl.split('/').pop();\r\n}\r\n\r\nexport function getFileFormat(fileUrl: string) {\r\n let format;\r\n\r\n switch (fileUrl.includes(getFileType(fileUrl))) {\r\n case FORMAT_IMG.includes(getFileType(fileUrl)):\r\n format = 'image';\r\n break;\r\n case FORMAT_VIDEO.includes(getFileType(fileUrl)):\r\n format = 'video';\r\n break;\r\n case FORMAT_WORD.includes(getFileType(fileUrl)):\r\n format = 'word';\r\n break;\r\n case FORMAT_EXCEL.includes(getFileType(fileUrl)):\r\n format = 'excel';\r\n break;\r\n case FORMAT_POWERPOINT.includes(getFileType(fileUrl)):\r\n format = 'powerpoint';\r\n break;\r\n case FORMAT_PDF.includes(getFileType(fileUrl)):\r\n format = 'pdf';\r\n break;\r\n case FORMAT_PHOTOSHOP.includes(getFileType(fileUrl)):\r\n format = 'photoshop';\r\n break;\r\n case FORMAT_ILLUSTRATOR.includes(getFileType(fileUrl)):\r\n format = 'illustrator';\r\n break;\r\n default:\r\n format = getFileType(fileUrl);\r\n }\r\n\r\n return format;\r\n}\r\n\r\nconst getIcon = (name: string) => (\r\n \r\n);\r\n\r\nexport function getFileThumb(fileUrl: string) {\r\n let thumb;\r\n switch (getFileFormat(fileUrl)) {\r\n case 'image':\r\n thumb = ;\r\n break;\r\n case 'video':\r\n thumb = ;\r\n break;\r\n case 'word':\r\n thumb = ;\r\n break;\r\n case 'excel':\r\n thumb = ;\r\n break;\r\n case 'powerpoint':\r\n thumb = ;\r\n break;\r\n case 'pdf':\r\n thumb = ;\r\n break;\r\n case 'photoshop':\r\n thumb = ;\r\n break;\r\n case 'illustrator':\r\n thumb = ;\r\n break;\r\n default:\r\n thumb = ;\r\n }\r\n return thumb;\r\n}\r\n\r\nexport function getFileExtensionThumb(fileUrl: string) {\r\n let thumb;\r\n switch (getFileFormat(fileUrl)) {\r\n case 'image':\r\n thumb = ;\r\n break;\r\n case 'video':\r\n thumb = getIcon('file_type_video');\r\n break;\r\n case 'word':\r\n thumb = getIcon('file_type_word');\r\n break;\r\n case 'excel':\r\n thumb = getIcon('file_type_excel');\r\n break;\r\n case 'powerpoint':\r\n thumb = getIcon('file_type_powerpoint');\r\n break;\r\n case 'pdf':\r\n thumb = ;\r\n break;\r\n case 'photoshop':\r\n thumb = getIcon('file_type_photoshop');\r\n break;\r\n case 'illustrator':\r\n thumb = getIcon('file_type_ai');\r\n break;\r\n default:\r\n thumb = ;\r\n }\r\n return thumb;\r\n}\r\n\r\nexport function formatFileSize(bytes: number, decimalPoint: number) {\r\n if (bytes === 0) return '0 Bytes';\r\n var k = 1000,\r\n dm = decimalPoint || 2,\r\n sizes = ['Bytes', 'KB', 'Mo', 'Go', 'To', 'PB', 'EB', 'ZB', 'YB'],\r\n i = Math.floor(Math.log(bytes) / Math.log(k));\r\n return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];\r\n}\r\n\r\n//;\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport {\r\n CategoryType,\r\n MediaFileListResponse,\r\n MediaFileListResult,\r\n MediaFileState\r\n} from '../../@types/media';\r\nimport { map } from 'lodash';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: MediaFileState = {\r\n isLoading: false,\r\n error: false,\r\n mediaFiles: [],\r\n hash: ''\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'mediaFile',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET POST INFINITE\r\n getMediaFiles(state, action) {\r\n state.isLoading = false;\r\n state.mediaFiles = action.payload;\r\n },\r\n\r\n updateMediaFiles(state, action) {\r\n const mediaId = action.payload;\r\n const updateMedias = map(state.mediaFiles, (_media) => {\r\n if (_media.id === mediaId) {\r\n _media.read = true;\r\n return _media;\r\n }\r\n return _media;\r\n });\r\n\r\n state.mediaFiles = updateMedias;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { updateMediaFiles } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getAllMediaFiles(category: CategoryType, hash: string) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get(\r\n `/api/document/${CategoryType[category].toString().toLowerCase()}?hash=${hash}`\r\n );\r\n const { items, result } = response.data;\r\n switch (result) {\r\n case MediaFileListResult.Success:\r\n dispatch(slice.actions.getMediaFiles(items));\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError(''));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport const logMediaFile = (id: number) => (onSuccess: (id: number) => void) => {\r\n return async () => {\r\n try {\r\n const response = await axios.get(`/api/document/log/${id}`);\r\n if (response.data) {\r\n onSuccess(id);\r\n }\r\n } catch (error) {}\r\n };\r\n};\r\n","import { replace } from 'lodash';\r\nimport numeral from 'numeral';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function fCurrency(number: string | number) {\r\n return numeral(number).format(Number.isInteger(number) ? '$0,0' : '$0,0.00');\r\n}\r\n\r\nexport function fCurrencyWithFormat(number: string | number, format: string) {\r\n return numeral(number).format(format);\r\n}\r\n\r\nexport function fPercent(number: number) {\r\n return numeral(number / 100).format('0.0%');\r\n}\r\n\r\nexport function fNumber(number: string | number) {\r\n return numeral(number).format();\r\n}\r\n\r\nexport function fShortenNumber(number: string | number) {\r\n return replace(numeral(number).format('0.00a'), '.00', '');\r\n}\r\n\r\nexport function fData(number: string | number) {\r\n return numeral(number).format('0.0 b');\r\n}\r\n","import {\r\n Card,\r\n Typography,\r\n Stack,\r\n BoxProps,\r\n CardProps,\r\n Table,\r\n responsiveFontSizes,\r\n TableHead,\r\n TableCell,\r\n TableBody,\r\n TableRow,\r\n Avatar\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\nimport CardContainer, { CardContainerProps } from 'components/CardContainer';\r\nimport React, { ReactNode, useEffect, useRef } from 'react';\r\nimport { Helmet } from 'react-helmet-async';\r\n\r\nimport { SurveyCategory, SurveyRequest, Survey } from '../../../@types/survey';\r\nimport ScrollView from 'pages/components-overview/extra/animate/scroll';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { groupBy } from 'utils/collection';\r\n\r\nexport interface SurveyCategoryCardProps extends CardContainerProps {\r\n category: SurveyCategory;\r\n children(survey: Survey, isRegroupement: boolean, index: number): any;\r\n}\r\n// category.html\r\nexport const SurveyCategoryCard = ({\r\n category,\r\n sx,\r\n children,\r\n avatar,\r\n ...other\r\n}: SurveyCategoryCardProps) => {\r\n return (\r\n \r\n
\r\n \r\n }\r\n className={category.css}\r\n >\r\n \r\n {groupBy(category.surveyList, (c: Survey) => c.regroupementId)?.map((group, index) => {\r\n const isRegroupement = group.key !== '';\r\n\r\n return (\r\n \r\n {group.value.map((survey: Survey, i: number) => {\r\n return (\r\n \r\n {children(survey, isRegroupement, i)}\r\n \r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n};\r\n\r\ntype SurveyGroupCardProps = {\r\n // items: Array;\r\n group: any;\r\n isRegroupement: boolean;\r\n children: ReactNode;\r\n index: number;\r\n};\r\n\r\nconst SurveyGroupCard = ({ group, isRegroupement, index, children }: SurveyGroupCardProps) => {\r\n return isRegroupement ? (\r\n \r\n }\r\n isRequired={false}\r\n index={index}\r\n />\r\n \r\n \r\n \r\n \r\n {group.value[0].optionList.map((reponse: any) => (\r\n \r\n {' '}\r\n {reponse.label}\r\n \r\n ))}\r\n \r\n {children}\r\n
\r\n
\r\n
\r\n ) : (\r\n <>{children}\r\n );\r\n};\r\n\r\ninterface SurveyContainerInputProps extends BoxProps {\r\n survey: Survey;\r\n isRegroupement: boolean;\r\n}\r\nconst SurveyContainerInput = ({ survey, isRegroupement, children }: SurveyContainerInputProps) => {\r\n if (isRegroupement)\r\n return (\r\n \r\n \r\n \r\n {survey.question}{' '}\r\n {survey.isRequired && (\r\n \r\n *\r\n \r\n )}\r\n \r\n \r\n {children}\r\n \r\n );\r\n\r\n return <>{children};\r\n};\r\n\r\ntype SurveyCategoryCardTitleProps = {\r\n title: ReactNode;\r\n isRequired: boolean;\r\n index: number;\r\n};\r\n\r\nexport const SurveyCategoryCardTitle = ({\r\n title,\r\n isRequired,\r\n index\r\n}: SurveyCategoryCardTitleProps) => {\r\n return (\r\n \r\n \r\n {index + 1}\r\n \r\n\r\n \r\n {title}\r\n {isRequired && (\r\n \r\n *\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n","// material\r\nimport { MenuItem, TextField, BaseTextFieldProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface SelectorProps extends BaseTextFieldProps {\r\n query: any;\r\n options: { value: any; label: string }[];\r\n onFilter: (value?: any) => void;\r\n}\r\n\r\nexport default function Selector({ query, options, onFilter, ...other }: SelectorProps) {\r\n return (\r\n onFilter(e.target.value)} {...other}>\r\n {options.map((option) => (\r\n \r\n {option.label}\r\n \r\n ))}\r\n \r\n );\r\n}\r\n","import { useContext } from 'react';\r\nimport { PageSettingsContext } from '../contexts/PageSettingsContext';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst usePageSettings = () => useContext(PageSettingsContext);\r\n\r\nexport default usePageSettings;\r\n","import React, { ReactNode } from 'react';\r\nimport {\r\n Alert,\r\n AlertColor,\r\n Chip,\r\n ListItem,\r\n ListItemIcon,\r\n ListItemText,\r\n Stack,\r\n Typography\r\n} from '@mui/material';\r\nimport { styled } from '@mui/styles';\r\n\r\nimport {\r\n AccessTime,\r\n Attachment,\r\n Info,\r\n InfoRounded,\r\n LocationOn,\r\n Notes,\r\n Payment,\r\n Person\r\n} from '@mui/icons-material';\r\n\r\nimport { Teacher } from '../@types/pedagogy';\r\nimport { FileBaseInfo } from '../@types/common';\r\n\r\nimport { MAvatar } from './@material-extend';\r\nimport { addTime, fDate, fDateMeeting, fDatePeriode, fTime, isAfterDate } from 'utils/formatTime';\r\n\r\nimport FileDetailsAttachments from './file/FileDetailsAttachments';\r\n\r\nimport { SxProps, Theme } from '@mui/system';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport AlertErrorMessage from './AlertErrorMessage';\r\nimport { MediaFileInfo } from '../@types/media';\r\nimport MediaFileCard from './_dashboard/media/MediaFileCard';\r\nimport StudentHourMessage from './_dashboard/student/StudentHourMessage';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\nconst RootListItem = styled(ListItem)(({ theme }) => ({\r\n display: 'flex',\r\n alignItems: 'flex-start',\r\n marginBottom: 5,\r\n padding: 5\r\n}));\r\n\r\nexport type RowItemProps = {\r\n title?: ReactNode;\r\n subTitle?: ReactNode;\r\n icon?: ReactNode;\r\n sx?: SxProps;\r\n};\r\n\r\nexport const RowItem = ({ title, subTitle, icon, sx }: RowItemProps) => {\r\n return (\r\n \r\n {icon && {icon}}\r\n \r\n \r\n );\r\n};\r\n\r\nexport type RowItemTeacherProps = {\r\n teacher?: Teacher;\r\n children?: ReactNode;\r\n};\r\n\r\nexport const RowItemDisplayTeacher = ({ teacher, children }: RowItemTeacherProps) => {\r\n return (\r\n \r\n {teacher?.coach ? 'Coach' : 'Formateur ou formatrice :'} {teacher?.firstName}{' '}\r\n {teacher?.lastName}\r\n \r\n }\r\n icon={teacher?.coach ? : }\r\n subTitle={\r\n \r\n {children}\r\n \r\n }\r\n />\r\n );\r\n};\r\n\r\nexport type RowItemAnimateurProps = {\r\n teacher?: Teacher;\r\n};\r\n\r\nexport const RowItemDisplayAnimateur = ({ teacher }: RowItemTeacherProps) => {\r\n return (\r\n \r\n {`Animateur ou animatrice : ${teacher?.firstName} ${teacher?.lastName}`}\r\n \r\n }\r\n icon={}\r\n />\r\n );\r\n};\r\n\r\nexport type RowItemDisplayProps = {\r\n title: ReactNode;\r\n icon?: ReactNode;\r\n children?: ReactNode;\r\n sx?: SxProps;\r\n};\r\n\r\nexport const RowItemDisplay = ({ title, icon, children, sx }: RowItemDisplayProps) => {\r\n return (\r\n {title}}\r\n icon={icon}\r\n subTitle={\r\n \r\n {children}\r\n \r\n }\r\n sx={{ ...sx }}\r\n />\r\n );\r\n};\r\n\r\nexport type RowItemDisplayDateTimeProps = {\r\n children?: ReactNode;\r\n start: string;\r\n end: string;\r\n isLimit: boolean;\r\n hideHourMessage?: boolean;\r\n};\r\n\r\nexport const RowItemDisplayDateTime = ({\r\n children,\r\n start,\r\n end,\r\n isLimit,\r\n hideHourMessage\r\n}: RowItemDisplayDateTimeProps) => {\r\n const { student } = useAuth();\r\n const isFinished = isAfterDate(new Date(), end);\r\n return (\r\n <>\r\n {!hideHourMessage && }\r\n \r\n {fDatePeriode(start, end, \"eeee dd MMMM yyyy 'de' HH:mm\")}\r\n \r\n }\r\n icon={}\r\n subTitle={\r\n <>\r\n {!isFinished && (\r\n <>\r\n \r\n {' '}\r\n {isLimit && (\r\n \r\n Limite d'accès : {fDate(addTime(start, -10))} - {fTime(addTime(start, 10))}{' '}\r\n \r\n )}{' '}\r\n \r\n {children}\r\n \r\n )}\r\n \r\n }\r\n />\r\n \r\n );\r\n};\r\n\r\nexport const RowItemDisplayComment = ({ ...props }) => {\r\n return (\r\n Commentaire}\r\n icon={}\r\n subTitle={{props.children}}\r\n />\r\n );\r\n};\r\n\r\nexport const RowItemDisplayLocation = ({ ...props }) => {\r\n const { children, title } = props;\r\n return (\r\n {title}}\r\n icon={}\r\n subTitle={{children}}\r\n />\r\n );\r\n};\r\n\r\nexport const RowItemDisplayPayment = ({ ...props }) => {\r\n const { children, title } = props;\r\n return (\r\n {title}}\r\n icon={}\r\n subTitle={{children}}\r\n />\r\n );\r\n};\r\n\r\nexport const RowItemDisplayInfo = ({ ...props }) => {\r\n const { text } = props;\r\n const theme = useTheme();\r\n return (\r\n {text}}\r\n icon={}\r\n subTitle={{props.children}}\r\n />\r\n );\r\n};\r\n\r\nexport const VisoRequiredDisplay = () => {\r\n return (\r\n \r\n Pré-requis : casque, micro, webcam\r\n
\r\n Vous recevrez un SMS de rappel de rendez-vous 24h avant celui-ci.\r\n
\r\n );\r\n};\r\n\r\nexport const RowItemDisplayTitle = ({ ...props }) => {\r\n const { title, icon, children } = props;\r\n return (\r\n {children}}\r\n />\r\n );\r\n};\r\n\r\nexport const RowItemDisplayError = ({ ...props }) => {\r\n const { title, icon, children } = props;\r\n return (\r\n }\r\n icon={}\r\n subTitle={\r\n \r\n {children}\r\n \r\n }\r\n />\r\n );\r\n};\r\n\r\nexport type RowItemDisplayAlert = {\r\n alertColor: AlertColor;\r\n children: ReactNode;\r\n};\r\n\r\nexport function RowItemDisplayAlert({ alertColor, children }: RowItemDisplayAlert) {\r\n return (\r\n \r\n {alertColor === 'error' ? (\r\n \r\n {children}\r\n \r\n ) : (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n }\r\n icon={null}\r\n />\r\n );\r\n}\r\n\r\nexport type RowItemDisplayFilesProps = {\r\n files: Array;\r\n};\r\n\r\nexport const RowItemDisplayFiles = ({ files }: RowItemDisplayFilesProps) => {\r\n if (files == null || files.length == 0) return <>;\r\n\r\n return (\r\n Pièces jointes}\r\n icon={}\r\n subTitle={}\r\n />\r\n );\r\n};\r\n\r\nexport type RowItemDisplayMediasProps = {\r\n medias: Array;\r\n};\r\n\r\nexport const RowItemDisplayMedias = ({ medias }: RowItemDisplayMediasProps) => {\r\n if (medias == null || medias.length == 0) return <>;\r\n\r\n return (\r\n Pièces jointes}\r\n icon={}\r\n subTitle={\r\n \r\n {medias?.map((m) => (\r\n \r\n ))}\r\n \r\n }\r\n />\r\n );\r\n};\r\n\r\n/*\r\nexport const RowItemDisplaySuccess = ({ ...props }) => {\r\n const classes = useStyles();\r\n const { title, icon, children } = props;\r\n return (\r\n }\r\n subTitle={\r\n \r\n {title}\r\n {children}\r\n \r\n }\r\n />\r\n );\r\n};*/\r\n/*\r\nexport const RowItemDisplayMedias = ({ ...props }) => {\r\n const { files } = props;\r\n\r\n if (files == null || files.length == 0) return <>;\r\n\r\n return (\r\n }\r\n subTitle={}\r\n />\r\n );\r\n};\r\n\r\nexport const RowItemDisplayFiles = ({ ...props }) => {\r\n const { files } = props;\r\n\r\n if (files == null || files.length == 0) return <>;\r\n\r\n return (\r\n }\r\n subTitle={}\r\n />\r\n );\r\n};\r\n*/\r\n","export function phoneFormat(phone: string, brand: string = 'IF') {\r\n if (phone && phone.trim() !== '') {\r\n //Cas particulier de la Suisse\r\n const phoneNumber = phone?.trim().replace(/[.]/g, '');\r\n if (brand === 'CH') {\r\n if (phoneNumber?.startsWith('0041')) {\r\n return phoneNumber.replace(/(\\d{4})(\\d{2})(\\d{3})(\\d{2})(\\d{2})/, '$1.$2.$3.$4.$5');\r\n } else {\r\n return phoneNumber.replace(/(\\d{3})(\\d{3})(\\d{2})(\\d{2})/, '$1.$2.$3.$4');\r\n }\r\n }\r\n //Remplace les points par des espaces par défaut\r\n return phone?.trim().replace(/[.]/g, ' ');\r\n }\r\n return '';\r\n}\r\n","import {\r\n Homework,\r\n HomeworkBase,\r\n StudyPlanChapter,\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType,\r\n StudyPlanPhase\r\n} from '../@types/pedagogy';\r\nimport { StudyPlanContext } from 'contexts/StudyPlanContext';\r\nimport { useContext } from 'react';\r\nimport * as helperStudyPlan from 'utils/helperStudyPlan';\r\n\r\nconst useStudyPlanHomework = () => {\r\n const studyPlanManager = useContext(StudyPlanContext);\r\n /**\r\n * Extraction des devoirs\r\n * @returns Liste des devoirs\r\n */\r\n function getHomeworks() {\r\n if (studyPlanManager?.phases == null) return;\r\n let list: Array = [];\r\n\r\n studyPlanManager?.phases.map((phase: StudyPlanPhase) =>\r\n phase.chapters.map((chapter: StudyPlanChapter) => {\r\n helperStudyPlan.extractHomework(chapter, list);\r\n })\r\n );\r\n return list;\r\n }\r\n\r\n /**\r\n * Retourne les items de type devoir\r\n */\r\n function getStudyPlanItemHomeworks(): Array {\r\n let list: Array = [];\r\n\r\n studyPlanManager?.phases?.map((phase: StudyPlanPhase) => {\r\n phase.chapters.map((unityChapter: StudyPlanChapter) => {\r\n unityChapter.chapters.map((chapter: StudyPlanChapter) => {\r\n if (chapter.chapters !== null) {\r\n chapter.chapters.map((subChapter: StudyPlanChapter) =>\r\n subChapter.items\r\n .filter((_item: StudyPlanItem) => _item.type === StudyPlanItemType.Homework)\r\n .map((_item) => list.push(_item as StudyPlanItemHomework))\r\n );\r\n } else\r\n return chapter.items\r\n .filter((_item: StudyPlanItem) => _item.type === StudyPlanItemType.Homework)\r\n .map((_item) => list.push(_item as StudyPlanItemHomework));\r\n });\r\n });\r\n });\r\n\r\n return list;\r\n }\r\n\r\n /**\r\n * Rechercher un devoir par reférence\r\n */\r\n function getHomework(courseId: string, id: number, barCode?: string) {\r\n const homeworks = getHomeworks();\r\n return homeworks?.filter(\r\n (w) => w.courseId === courseId && (w.id === id || w.barCode === barCode)\r\n )[0]!;\r\n }\r\n\r\n /**\r\n * Mise à jour du pe suite à l'envoi d'un devoir\r\n */\r\n function updatedSended(homework: Homework) {\r\n //On mets à jour l'item en cours du context qui est de type homeworkBase et ensuite l'ensemble du PE (se fera dans le context)\r\n let studyPlanItemHomeworkBase = studyPlanManager?.item as StudyPlanItemHomework;\r\n //on ajoute le devoir\r\n studyPlanItemHomeworkBase.homeworkBase.homeworks.push(homework);\r\n //on modife le status de l'item\r\n studyPlanItemHomeworkBase.status = StudyPlanItemStatus.Assimilate;\r\n // demande maj pe\r\n studyPlanManager?.selectItem(\r\n studyPlanManager.chapter!,\r\n studyPlanItemHomeworkBase,\r\n false,\r\n studyPlanManager?.subChapter\r\n );\r\n }\r\n\r\n return {\r\n getHomework,\r\n getHomeworks,\r\n getStudyPlanItemHomeworks,\r\n updatedSended\r\n };\r\n};\r\n\r\nexport default useStudyPlanHomework;\r\n","import { Typography, CardHeader, CardHeaderProps, Tooltip } from '@mui/material';\r\n\r\n//type\r\nimport { MediaFileType } from '../../../@types/media';\r\nimport { ModeAccess } from '../../../@types/account';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { styled } from '@mui/system';\r\nimport FileThumb from 'components/file/FileThumb';\r\nimport { MediaFileAvatar } from './MediaFileAvatar';\r\n\r\nconst FileNameStyle = styled(Typography)(({ theme }) => ({\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n maxWidth: '190px',\r\n display: 'block'\r\n}));\r\n\r\nexport interface MediaFileHeaderProps extends CardHeaderProps {\r\n title: string;\r\n format?: string;\r\n isRead: boolean;\r\n type: MediaFileType;\r\n isLoading: boolean;\r\n onClick?: () => void;\r\n}\r\n\r\n/**\r\n * Header du média\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function MediaFileHeader({\r\n onClick,\r\n title,\r\n id,\r\n isRead,\r\n format,\r\n isLoading,\r\n type,\r\n sx,\r\n ...other\r\n}: MediaFileHeaderProps) {\r\n const { student } = useAuth();\r\n\r\n return (\r\n }\r\n />\r\n }\r\n title={\r\n \r\n \r\n {title}\r\n \r\n \r\n }\r\n subheader={\r\n <>\r\n {format && {format}}\r\n {student?.modeAccess !== ModeAccess.Write && (\r\n - media {id}\r\n )}\r\n \r\n }\r\n sx={{ padding: '5px', ...sx }}\r\n {...other}\r\n />\r\n );\r\n}\r\n","import { DialogTitle, DialogContent, Box, BoxProps, Typography } from '@mui/material';\r\nimport { useFile } from 'hooks/useFile';\r\nimport { useSnackbar } from 'notistack';\r\nimport { useEffect, useState } from 'react';\r\nimport { MediaFileInfo, MediaFileType } from '../../../@types/media';\r\nimport { dispatch } from 'redux/store';\r\nimport { logMediaFile, updateMediaFiles } from 'redux/slices/mediaFile';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { DialogAnimate } from 'components/animate';\r\nimport { FileType } from '../../../@types/common';\r\nimport CardMediaCustom from 'components/CardMediaCustom';\r\nimport { median } from 'd3-array';\r\nimport { messageFunctionLimitee } from 'config';\r\n// ----------------------------------------------------------------------\r\n\r\ninterface MediaFileActionProps extends BoxProps {\r\n children(\r\n downloadMedia: (media: MediaFileInfo) => Promise,\r\n isLoading: boolean,\r\n errorDownload: boolean\r\n ): any;\r\n}\r\n\r\n/**\r\n * Gestion de l'appel au serveur pour télécharger un fichier.\r\n * Gestion de l'erreur avec message\r\n */\r\nexport default function MediaFileAction({ children, sx }: MediaFileActionProps) {\r\n const { getFile, download, isLoading, errorDownload, downloadImage, downloadS3 } = useFile();\r\n const [video, setVideo] = useState(null);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { isReadOnly, authorizeDownload } = useAuth();\r\n\r\n const downloadMedia = async (media: MediaFileInfo) => {\r\n if (!authorizeDownload()) {\r\n enqueueSnackbar(messageFunctionLimitee, {\r\n variant: 'warning'\r\n });\r\n return;\r\n }\r\n\r\n switch (media.typFicMed) {\r\n case MediaFileType.Audio:\r\n case MediaFileType.Videos:\r\n setVideo(media);\r\n break;\r\n case MediaFileType.UrlText:\r\n window.open(media.url);\r\n break;\r\n default:\r\n if (media.isS3) {\r\n downloadS3(\r\n media.token.fileNameS3,\r\n media.fileName,\r\n media.referentiel ? FileType.MediaReferentiel : media.fileType,\r\n media.id\r\n ).then(() => {\r\n if (isReadOnly) return;\r\n dispatch(updateMediaFiles(+media.id));\r\n });\r\n return;\r\n }\r\n\r\n download(media.id, FileType.Media).then(() => {\r\n if (isReadOnly) return;\r\n dispatch(updateMediaFiles(+media.id));\r\n });\r\n return;\r\n }\r\n if (isReadOnly) return;\r\n\r\n dispatch(\r\n logMediaFile(+media.id)((id: number) => {\r\n dispatch(updateMediaFiles(id));\r\n })\r\n );\r\n };\r\n\r\n const handleClose = () => {\r\n setVideo(null);\r\n };\r\n\r\n useEffect(() => {\r\n if (errorDownload) {\r\n enqueueSnackbar('Impossible de télécharger le fichier', { variant: 'error' });\r\n }\r\n }, [errorDownload]);\r\n\r\n return (\r\n \r\n {children(downloadMedia, isLoading, errorDownload)}\r\n \r\n {video?.title}\r\n \r\n \r\n {/*video?.observation && (\r\n \r\n {video.observation}\r\n \r\n )*/}\r\n \r\n \r\n \r\n );\r\n}\r\n","//type\r\nimport { MediaFileInfo } from '../../../@types/media';\r\nimport MediaFileHeader from './MediaFileHeader';\r\nimport MediaFileAction from './MediaFileAction';\r\n\r\nexport type MediaFileCardProps = {\r\n mediaFile: MediaFileInfo;\r\n};\r\n\r\n/**\r\n * Détail du média\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function MediaFileCard({ mediaFile }: MediaFileCardProps) {\r\n return (\r\n \r\n {(downloadMedia, isLoading, errorDownload) => (\r\n downloadMedia(mediaFile)}\r\n title={mediaFile.title}\r\n isRead={mediaFile.read}\r\n isLoading={isLoading}\r\n type={mediaFile.typFicMed}\r\n format={mediaFile.size}\r\n id={mediaFile.id.toString()}\r\n />\r\n )}\r\n \r\n );\r\n}\r\n","import { isString } from 'lodash';\r\nimport { Icon } from '@iconify/react';\r\nimport { useDropzone, DropzoneOptions, FileError } from 'react-dropzone';\r\nimport fileFill from '@iconify/icons-eva/file-fill';\r\nimport closeFill from '@iconify/icons-eva/close-fill';\r\nimport { motion, AnimatePresence } from 'framer-motion';\r\n// material\r\nimport { alpha, Theme, styled } from '@mui/material/styles';\r\nimport {\r\n Box,\r\n List,\r\n Paper,\r\n ListItem,\r\n Typography,\r\n ListItemIcon,\r\n ListItemText,\r\n ListItemSecondaryAction\r\n} from '@mui/material';\r\nimport { SxProps } from '@mui/system';\r\n// utils\r\nimport { fData } from '../../utils/formatNumber';\r\n//\r\nimport { MIconButton } from '../@material-extend';\r\nimport { varFadeInRight } from '../animate';\r\nimport { formatFileSize } from 'utils/getFileFormat';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst DropZoneStyle = styled('div')(({ theme }) => ({\r\n outline: 'none',\r\n display: 'flex',\r\n textAlign: 'center',\r\n alignItems: 'center',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n padding: theme.spacing(2, 1),\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: theme.palette.background.neutral,\r\n border: `1px dashed ${theme.palette.grey[500_32]}`,\r\n '&:hover': { opacity: 0.72, cursor: 'pointer' },\r\n [theme.breakpoints.up('md')]: { textAlign: 'left', flexDirection: 'row' }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface CustomFile extends File {\r\n path?: string;\r\n preview?: string;\r\n}\r\n\r\ninterface UploadMultiFileProps extends DropzoneOptions {\r\n error?: boolean;\r\n files: (File | string)[];\r\n showPreview: boolean;\r\n onRemove: (file: File | string) => void;\r\n onRemoveAll?: VoidFunction;\r\n sx?: SxProps;\r\n showFilesSelected?: boolean;\r\n labelFormat?: string;\r\n maxFileNameLength?: number;\r\n maxFiles?: number;\r\n isDragActive?: boolean;\r\n}\r\n\r\nconst getFileData = (file: CustomFile | string) => {\r\n if (typeof file === 'string') {\r\n return {\r\n key: file\r\n };\r\n }\r\n return {\r\n key: file.name,\r\n name: file.name,\r\n size: file.size,\r\n preview: file.preview\r\n };\r\n};\r\n\r\nexport default function UploadMultiFile({\r\n error,\r\n showPreview = false,\r\n showFilesSelected = true,\r\n files,\r\n onRemove,\r\n onRemoveAll,\r\n sx,\r\n labelFormat,\r\n ...other\r\n}: UploadMultiFileProps) {\r\n const hasFile = files.length > 0;\r\n\r\n const DEFAULT_MAX_FILE_NAME_LENGTH = 70;\r\n\r\n const fileValidator = (file: File) => {\r\n var errors: FileError[] = [];\r\n\r\n //Caractères spéciaux non acceptés\r\n if (/[@#$%^&*+=:<>|]/g.test(file?.name)) {\r\n errors.push({\r\n message: 'Le nom du fichier ne peut pas contenir de caractères spéciaux',\r\n code: 'file-name-special-characters'\r\n });\r\n }\r\n\r\n //Taille max du nom de fichiers\r\n const maxFileNameLg = other.maxFileNameLength ?? DEFAULT_MAX_FILE_NAME_LENGTH;\r\n\r\n if (file?.name?.length > maxFileNameLg) {\r\n errors.push({\r\n message: `La taille max des noms de fichiers est de ${maxFileNameLg} caractères`,\r\n code: 'file-name-too-large'\r\n });\r\n }\r\n return errors?.length > 0 ? errors : null;\r\n };\r\n\r\n const { getRootProps, getInputProps, isDragActive, isDragReject, fileRejections } = useDropzone({\r\n ...other,\r\n validator: fileValidator\r\n });\r\n\r\n const ShowRejectionItems = () => (\r\n alpha(theme.palette.error.main, 0.08)\r\n }}\r\n >\r\n {fileRejections.map(({ file, errors }) => {\r\n const { path, size }: CustomFile = file;\r\n\r\n return (\r\n \r\n \r\n {path} - {fData(size)}\r\n \r\n {errors.map((e) => {\r\n switch (e.code) {\r\n case 'file-invalid-type':\r\n return (\r\n \r\n - Le type de fichier doit être :{' '}\r\n {other && other.accept ? other.accept.toString() : ''}\r\n \r\n );\r\n case 'file-too-large':\r\n return (\r\n \r\n - La taille max du fichier doit être{' '}\r\n {other && other.maxSize ? formatFileSize(other.maxSize, 1) : ''}\r\n \r\n );\r\n case 'too-many-files':\r\n return (\r\n \r\n - Vous ne pouvez joindre que {other.maxFiles} fichiers maximun\r\n \r\n );\r\n default:\r\n return (\r\n \r\n - {e.message}\r\n \r\n );\r\n }\r\n })}\r\n \r\n );\r\n })}\r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Glisser-déposer vos fichiers ici\r\n \r\n\r\n \r\n ou\r\n \r\n Parcourir\r\n \r\n \r\n {!labelFormat ? (\r\n \r\n Fichiers de type : {other && other.accept ? other.accept.toString() : ''}\r\n \r\n ) : (\r\n \r\n Fichiers de type : {labelFormat}\r\n \r\n )}\r\n \r\n \r\n\r\n {fileRejections.length > 0 && }\r\n\r\n {showFilesSelected && (\r\n \r\n \r\n {files.map((file, index) => {\r\n const { name, size } = getFileData(file as CustomFile);\r\n\r\n return (\r\n `solid 1px ${theme.palette.divider}`,\r\n bgcolor: 'background.paper'\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n onRemove(file)}>\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { isString } from 'lodash';\r\nimport { useDropzone, DropzoneOptions } from 'react-dropzone';\r\n// material\r\nimport { alpha, styled } from '@mui/material/styles';\r\nimport { Box, Theme, Typography, Paper } from '@mui/material';\r\nimport { SxProps } from '@mui/system';\r\n// utils\r\nimport { fData } from '../../utils/formatNumber';\r\n//\r\nimport { UploadIllustration } from '../../assets';\r\nimport { formatFileSize } from 'utils/getFileFormat';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst DropZoneStyle = styled('div')(({ theme }) => ({\r\n outline: 'none',\r\n display: 'flex',\r\n overflow: 'hidden',\r\n textAlign: 'center',\r\n position: 'relative',\r\n alignItems: 'center',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n padding: theme.spacing(5, 0),\r\n borderRadius: theme.shape.borderRadius,\r\n transition: theme.transitions.create('padding'),\r\n backgroundColor: theme.palette.background.neutral,\r\n border: `1px dashed ${theme.palette.grey[500_32]}`,\r\n '&:hover': {\r\n opacity: 0.72,\r\n cursor: 'pointer'\r\n },\r\n [theme.breakpoints.up('md')]: { textAlign: 'left', flexDirection: 'row' }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface CustomFile extends File {\r\n path?: string;\r\n preview?: string;\r\n}\r\n\r\ninterface UploadSingleFileProps extends DropzoneOptions {\r\n error?: boolean;\r\n file: CustomFile | string | null;\r\n sx?: SxProps;\r\n}\r\n\r\nexport default function UploadSingleFile({\r\n error = false,\r\n file,\r\n sx,\r\n ...other\r\n}: UploadSingleFileProps) {\r\n const { getRootProps, getInputProps, isDragActive, isDragReject, fileRejections } = useDropzone({\r\n multiple: false,\r\n ...other\r\n });\r\n\r\n const ShowRejectionItems = () => (\r\n alpha(theme.palette.error.main, 0.08)\r\n }}\r\n >\r\n {fileRejections.map(({ file, errors }) => {\r\n const { path, size }: CustomFile = file;\r\n return (\r\n \r\n \r\n {path} - {fData(size)}\r\n \r\n {errors.map((e) => {\r\n switch (e.code) {\r\n case 'file-invalid-type':\r\n return (\r\n \r\n - Le type de fichier doit être :{' '}\r\n {other && other.accept ? other.accept.toString() : ''}\r\n \r\n );\r\n case 'file-too-large':\r\n return (\r\n \r\n - La taille max du fichier doit être{' '}\r\n {other && other.maxSize ? formatFileSize(other.maxSize, 1) : ''}\r\n \r\n );\r\n\r\n default:\r\n return (\r\n \r\n - {e.message}\r\n \r\n );\r\n }\r\n })}\r\n \r\n );\r\n })}\r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n Drop or Select file\r\n \r\n\r\n \r\n Drop files here or click \r\n \r\n browse\r\n \r\n  thorough your machine\r\n \r\n \r\n\r\n {file && (\r\n \r\n )}\r\n \r\n\r\n {fileRejections.length > 0 && }\r\n \r\n );\r\n}\r\n","import { isString } from 'lodash';\r\nimport { ReactNode } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport { useDropzone, DropzoneOptions } from 'react-dropzone';\r\nimport roundAddAPhoto from '@iconify/icons-ic/round-add-a-photo';\r\n// material\r\nimport { alpha, Theme, styled } from '@mui/material/styles';\r\nimport { Box, Typography, Paper } from '@mui/material';\r\nimport { SxProps } from '@mui/system';\r\n// utils\r\nimport { fData } from '../../utils/formatNumber';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled('div')(({ theme }) => ({\r\n width: 144,\r\n height: 144,\r\n margin: 'auto',\r\n borderRadius: '50%',\r\n padding: theme.spacing(1),\r\n border: `1px dashed ${theme.palette.grey[500_32]}`\r\n}));\r\n\r\nconst DropZoneStyle = styled('div')({\r\n zIndex: 0,\r\n width: '100%',\r\n height: '100%',\r\n outline: 'none',\r\n display: 'flex',\r\n overflow: 'hidden',\r\n borderRadius: '50%',\r\n position: 'relative',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n '& > *': { width: '100%', height: '100%' },\r\n '&:hover': {\r\n cursor: 'pointer',\r\n '& .placeholder': {\r\n zIndex: 9\r\n }\r\n }\r\n});\r\n\r\nconst PlaceholderStyle = styled('div')(({ theme }) => ({\r\n display: 'flex',\r\n position: 'absolute',\r\n alignItems: 'center',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n color: theme.palette.text.secondary,\r\n backgroundColor: theme.palette.background.neutral,\r\n transition: theme.transitions.create('opacity', {\r\n easing: theme.transitions.easing.easeInOut,\r\n duration: theme.transitions.duration.shorter\r\n }),\r\n '&:hover': { opacity: 0.72 }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface CustomFile extends File {\r\n path?: string;\r\n preview?: string;\r\n}\r\n\r\ninterface UploadAvatarProps extends DropzoneOptions {\r\n error?: boolean;\r\n file: CustomFile | string | null;\r\n caption?: ReactNode;\r\n sx?: SxProps;\r\n}\r\n\r\nexport default function UploadAvatar({ error, file, caption, sx, ...other }: UploadAvatarProps) {\r\n const { getRootProps, getInputProps, isDragActive, isDragReject, fileRejections } = useDropzone({\r\n multiple: false,\r\n ...other\r\n });\r\n\r\n const ShowRejectionItems = () => (\r\n alpha(theme.palette.error.main, 0.08)\r\n }}\r\n >\r\n {fileRejections.map(({ file, errors }) => {\r\n const { path, size }: CustomFile = file;\r\n return (\r\n \r\n \r\n {path} - {fData(size)}\r\n \r\n {errors.map((e) => (\r\n \r\n - {e.message}\r\n \r\n ))}\r\n \r\n );\r\n })}\r\n \r\n );\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n\r\n {file && (\r\n \r\n )}\r\n\r\n \r\n \r\n \r\n {file ? 'Mettre à jour la photo' : 'Importer une photo'}\r\n \r\n \r\n \r\n \r\n\r\n {caption}\r\n\r\n {fileRejections.length > 0 && }\r\n \r\n );\r\n}\r\n","import { Alert } from '@mui/material';\r\nimport { Address } from '../../../@types/account';\r\nimport React from 'react';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\ntype StudentHourMessageProps = {};\r\n\r\nexport default function StudentHourMessage({}: StudentHourMessageProps) {\r\n const { getHourAlertMessage } = useAuth();\r\n const msg: string = getHourAlertMessage();\r\n\r\n return <>{msg && msg !== '' && {msg}};\r\n}\r\n","import { RootState, useSelector } from 'redux/store';\r\nimport { differenceBetweenMinute } from 'utils/formatTime';\r\nimport useTrackerActivity from './useTrackerActivity';\r\n\r\nexport const useTrackerActivityEvents = () => {\r\n const { events } = useSelector((state: RootState) => state.agenda);\r\n const { eventHandler } = useTrackerActivity({ parent: null });\r\n\r\n function moveInactityTime(idEvent: string) {\r\n const evt = events.find((evt) => evt.id === idEvent);\r\n\r\n if (evt) {\r\n const value = differenceBetweenMinute(evt.end, evt.start);\r\n\r\n if (!isNaN(value)) {\r\n eventHandler(null, value);\r\n }\r\n }\r\n }\r\n\r\n return {\r\n moveInactityTime\r\n };\r\n};\r\n","import { Box, CardMediaProps, Stack, StackProps, styled } from '@mui/material';\r\nimport { borderColor } from '@mui/system';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport { useCallback, useEffect, useRef, useState } from 'react';\r\nimport axiosInstance from 'utils/axios';\r\nimport SkeletonLoadSingle from './SkeletonLoadSingle';\r\n\r\n//type\r\ninterface CardMediaVideoAudioProps {\r\n url: string;\r\n isVideo: boolean;\r\n onLoad?: () => void;\r\n}\r\n\r\nexport default function CardMediaVideoAudio({ url, isVideo, onLoad }: CardMediaVideoAudioProps) {\r\n const [isLoading, setIsloading] = useState(true);\r\n const { isMediumOrMobile } = useScreenConfig();\r\n const handleLoad = () => {\r\n setIsloading(false);\r\n if (onLoad) onLoad();\r\n };\r\n\r\n const handleError = () => {\r\n console.log('error');\r\n };\r\n\r\n const maxWidth = isMediumOrMobile ? 300 : 600;\r\n\r\n return (\r\n <>\r\n {isLoading && (\r\n \r\n \r\n
\r\n )}\r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport { dispatch } from 'redux/store';\r\nimport axiosInstance from 'utils/axios';\r\nimport {\r\n SurveyCategory,\r\n SurveyResponse,\r\n Survey,\r\n QuestionType,\r\n Reponse,\r\n SurveySaveRequest,\r\n SurveySaveResponse,\r\n SurveySaveResult\r\n} from '../@types/survey';\r\n\r\nimport { removeSurvey } from 'redux/slices/survey';\r\n\r\ntype useSurveyProps = {\r\n request: SurveyResponse;\r\n onMove: () => void;\r\n};\r\n\r\n/**\r\n * Gestion du questionnaire\r\n * @returns\r\n */\r\nexport const useSurvey = ({ request, onMove }: useSurveyProps) => {\r\n const [state, setState] = useState(request);\r\n /**\r\n * Changement de value dans un Mémo\r\n * @param categoryId\r\n * @param id\r\n * @param value\r\n * @returns\r\n */\r\n const onChange = (categoryId: number, id: number, value: string) => {\r\n setState({\r\n ...state,\r\n categoryList: state.categoryList.map((category) =>\r\n category.id === categoryId\r\n ? {\r\n ...category,\r\n surveyList: category.surveyList.map((survey) =>\r\n survey.id === id ? { ...survey, value: value } : { ...survey }\r\n )\r\n }\r\n : { ...category }\r\n )\r\n });\r\n\r\n return;\r\n };\r\n\r\n /**\r\n * Changement de valeur dans une liste d'option\r\n * @param categoryId\r\n * @param id\r\n * @param value\r\n * @returns\r\n */\r\n const onChangeOption = (categoryId: number, id: number, value: string) => {\r\n setState({\r\n ...state,\r\n categoryList: state.categoryList.map((category) =>\r\n category.id === categoryId\r\n ? {\r\n ...category,\r\n surveyList: category.surveyList.map((survey: Survey) =>\r\n survey.id === id\r\n ? {\r\n ...survey,\r\n optionList: survey.optionList.map((question) => {\r\n return { ...question, checked: question.id === value };\r\n })\r\n }\r\n : { ...survey }\r\n )\r\n }\r\n : { ...category }\r\n )\r\n });\r\n\r\n return;\r\n };\r\n\r\n /**\r\n * Changement de valeur dans une liste de checkbox\r\n * @param categoryId\r\n * @param id\r\n * @param value\r\n * @returns\r\n */\r\n const onChangeChecked = (categoryId: number, id: number, value: string, checked: boolean) => {\r\n setState({\r\n ...state,\r\n categoryList: state.categoryList.map((category) =>\r\n category.id === categoryId\r\n ? {\r\n ...category,\r\n surveyList: category.surveyList.map((survey: Survey) =>\r\n survey.id === id\r\n ? {\r\n ...survey,\r\n optionList: survey.optionList.map((question) => {\r\n if (question.id === value) return { ...question, checked: checked };\r\n else return question;\r\n })\r\n }\r\n : { ...survey }\r\n )\r\n }\r\n : { ...category }\r\n )\r\n });\r\n\r\n return;\r\n };\r\n\r\n const onChangeOptionTextRep = (\r\n categoryId: number,\r\n id: number,\r\n optionId: string,\r\n text: string\r\n ) => {\r\n setState({\r\n ...state,\r\n categoryList: state.categoryList.map((category) =>\r\n category.id === categoryId\r\n ? {\r\n ...category,\r\n surveyList: category.surveyList.map((survey: Survey) =>\r\n survey.id === id\r\n ? {\r\n ...survey,\r\n optionList: survey.optionList.map((question) => {\r\n if (question.id === optionId) {\r\n return { ...question, textRep: text };\r\n } else return question;\r\n })\r\n }\r\n : { ...survey }\r\n )\r\n }\r\n : { ...category }\r\n )\r\n });\r\n };\r\n\r\n const isCategoryError = (category: SurveyCategory): boolean => {\r\n for (let survey of category.surveyList) {\r\n switch (survey.questionType) {\r\n case QuestionType.Mem:\r\n case QuestionType.Txt:\r\n if (survey.isRequired && survey.value.trim() == '') {\r\n //props.setErrorSurvey(true);\r\n return true;\r\n }\r\n break;\r\n case QuestionType.Chk:\r\n case QuestionType.Rat:\r\n case QuestionType.Rad:\r\n if (\r\n survey.isRequired &&\r\n survey.optionList &&\r\n survey.optionList.length > 0 &&\r\n survey.optionList.every((x) => !x.checked)\r\n ) {\r\n //props.setErrorSurvey(true);\r\n return true;\r\n }\r\n\r\n if (\r\n survey.isRequired &&\r\n survey.optionList &&\r\n survey.optionList.length > 0 &&\r\n survey.optionList.some((c) => c.checked && c.textPre !== '' && c.textRep === '')\r\n )\r\n return true;\r\n break;\r\n }\r\n }\r\n return false;\r\n };\r\n\r\n //&&window.getComputedStyle(document.getElementsByClassName(item.css)[0], null).display ==='none'\r\n const isErrorSurvey = (): boolean => {\r\n let isControl = true;\r\n for (let item of state.categoryList) {\r\n isControl = true;\r\n if (\r\n item &&\r\n item.css !== '' &&\r\n document.getElementsByClassName(item.css).length > 0 &&\r\n window.getComputedStyle(document.getElementsByClassName(item.css)[0], null).display ===\r\n 'none'\r\n ) {\r\n isControl = false;\r\n }\r\n\r\n if (isControl)\r\n for (let survey of item.surveyList) {\r\n switch (survey.questionType) {\r\n case QuestionType.Mem:\r\n if (survey.isRequired && survey.value.trim() == '') {\r\n //props.setErrorSurvey(true);\r\n return true;\r\n }\r\n break;\r\n case QuestionType.Chk:\r\n case QuestionType.Rat:\r\n case QuestionType.Rad:\r\n if (\r\n survey.isRequired &&\r\n survey.optionList &&\r\n survey.optionList.length > 0 &&\r\n survey.optionList.every((x) => !x.checked)\r\n ) {\r\n //props.setErrorSurvey(true);\r\n return true;\r\n }\r\n break;\r\n\r\n case QuestionType.Txt:\r\n if (survey.isRequired && survey.value.trim() == '') {\r\n //props.setErrorSurvey(true);\r\n return true;\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n //props.setErrorSurvey(false);\r\n return false;\r\n };\r\n\r\n const isErrorSurveyItem = (survey: Survey): boolean => {\r\n switch (survey.questionType) {\r\n case QuestionType.Mem:\r\n return survey.isRequired && survey.value.trim() === '';\r\n case QuestionType.Rad:\r\n case QuestionType.Rat:\r\n case QuestionType.Chk:\r\n const unChecked =\r\n survey.isRequired &&\r\n survey.optionList &&\r\n survey.optionList.length > 0 &&\r\n survey.optionList.every((x) => !x.checked);\r\n\r\n const notValue =\r\n survey.isRequired &&\r\n survey.optionList &&\r\n survey.optionList.length > 0 &&\r\n survey.optionList.some((c) => c.checked && c.textPre !== '' && c.textRep === '');\r\n\r\n return unChecked || notValue;\r\n default:\r\n return false;\r\n }\r\n };\r\n\r\n /**\r\n * ENregistrement\r\n */\r\n const save = () => (onSuccess: () => void) => (onError: () => void) => {\r\n return async () => {\r\n const form = createSaveRequest();\r\n try {\r\n const response = await axiosInstance.post(`/api/survey/save`, form, {\r\n headers: { writeOnly: true }\r\n });\r\n const { result } = response.data;\r\n\r\n switch (result) {\r\n case SurveySaveResult.Success:\r\n onSuccess();\r\n dispatch(\r\n removeSurvey({ id: request.id, keyApp: request.appTyp, keyId: request.appId })\r\n );\r\n\r\n break;\r\n case SurveySaveResult.Error:\r\n onError();\r\n break;\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n onError();\r\n }\r\n };\r\n };\r\n\r\n const createSaveRequest = () => {\r\n let requestSave: SurveySaveRequest = {\r\n appId: request.appId,\r\n typApp: request.appTyp,\r\n lisQue: request.id,\r\n reponses: []\r\n };\r\n\r\n state.categoryList\r\n .map((x) => x.surveyList)\r\n .reduce((x, y) => x.concat(y))\r\n .map((x) => {\r\n let reponse: Reponse = {\r\n questionId: x.id,\r\n value: '',\r\n valueText: x.value\r\n };\r\n\r\n if (\r\n [QuestionType.Rad, QuestionType.Rat, QuestionType.Chk].includes(x.questionType) &&\r\n x.optionList != null &&\r\n x.optionList.length > 0\r\n ) {\r\n const items = x.optionList.filter((x) => x.checked);\r\n items?.forEach((item) => {\r\n reponse.value = item.id;\r\n\r\n if (item.textRep && item.textRep !== '') reponse.valueText = item.textRep;\r\n requestSave.reponses.push(reponse);\r\n });\r\n } else requestSave.reponses.push(reponse);\r\n });\r\n return requestSave;\r\n };\r\n\r\n return {\r\n categoryList: state.categoryList,\r\n title: state.titre,\r\n fill: state.fait,\r\n modeLecture: state.modeLecture,\r\n observation: state.observation,\r\n onChange,\r\n onChangeOption,\r\n onChangeChecked,\r\n isErrorSurvey,\r\n isErrorSurveyItem,\r\n onChangeOptionTextRep,\r\n save,\r\n isCategoryError\r\n };\r\n};\r\n","import { CheckBox, Star } from '@mui/icons-material';\r\nimport {\r\n Checkbox,\r\n FormControl,\r\n FormControlLabel,\r\n FormGroup,\r\n FormHelperText,\r\n Radio,\r\n RadioGroup,\r\n Stack,\r\n TextField,\r\n Typography\r\n} from '@mui/material';\r\nimport { Survey, QuestOption } from '../../../@types/survey';\r\n\r\ntype SurveyInputProps = {\r\n survey: Survey;\r\n isReadOnly: boolean;\r\n onChangeOptionText: (optionId: string, value: string) => void;\r\n onChangeChecked: (value: string, checked: boolean) => void;\r\n index: number;\r\n};\r\n\r\nexport const SurveyInputCheck = ({\r\n survey,\r\n onChangeOptionText,\r\n onChangeChecked,\r\n isReadOnly,\r\n index\r\n}: SurveyInputProps) => {\r\n return (\r\n \r\n {survey.optionList.map((option: QuestOption, i: number) => {\r\n // console.log(option);\r\n return (\r\n \r\n {\r\n onChangeChecked(option.id, e.target.checked);\r\n }}\r\n />\r\n }\r\n label={option.label}\r\n key={option.id}\r\n />\r\n {option.textPre && option.textPre !== '' && option.checked && (\r\n onChangeOptionText(option.id, e.target.value),\r\n disabled: isReadOnly\r\n }}\r\n />\r\n )}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n","import { TextField, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport Markdown from 'components/Markdown';\r\n\r\nimport { Survey } from '../../../@types/survey';\r\n\r\ntype SurveyInputProps = {\r\n survey: Survey;\r\n isReadOnly: boolean;\r\n onChange: (value: string) => void;\r\n isMemo: boolean;\r\n};\r\n\r\nexport const SurveyInputMemo = ({ survey, onChange, isReadOnly, isMemo }: SurveyInputProps) => {\r\n return (\r\n \r\n \r\n onChange(e.target.value),\r\n disabled: isReadOnly\r\n }}\r\n variant=\"outlined\"\r\n multiline={isMemo}\r\n minRows={isMemo ? 3 : 1}\r\n maxRows={isMemo ? 5 : 1}\r\n fullWidth\r\n />\r\n \r\n );\r\n};\r\n","import { Star } from '@mui/icons-material';\r\nimport {\r\n FormControl,\r\n FormControlLabel,\r\n FormHelperText,\r\n Radio,\r\n RadioGroup,\r\n Stack,\r\n TableCell,\r\n TextField,\r\n Typography\r\n} from '@mui/material';\r\nimport { Survey, QuestOption } from '../../../@types/survey';\r\n\r\ntype SurveyInputProps = {\r\n survey: Survey;\r\n isReadOnly: boolean;\r\n onChangeOption: (value: string) => void;\r\n onChangeOptionText: (optionId: string, value: string) => void;\r\n index: number;\r\n};\r\n\r\nexport const SurveyInputRadio = ({\r\n survey,\r\n onChangeOption,\r\n onChangeOptionText,\r\n isReadOnly,\r\n index\r\n}: SurveyInputProps) => {\r\n return (\r\n \r\n 2 ? 'column' : 'row' }}\r\n aria-label=\"options\"\r\n name={`${100 + index}`}\r\n value={survey.value}\r\n onChange={(e: any) => {\r\n onChangeOption(e.target.value);\r\n }}\r\n >\r\n {survey.optionList.map((option: QuestOption, i: number) => {\r\n const idx = i + index;\r\n return (\r\n \r\n \r\n }\r\n label={option.label}\r\n />\r\n {option.textPre && option.textPre !== '' && option.checked && (\r\n onChangeOptionText(option.id, e.target.value),\r\n disabled: isReadOnly\r\n }}\r\n />\r\n )}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const SurveyInputRadioRegroupement = ({\r\n survey,\r\n onChangeOption,\r\n onChangeOptionText,\r\n isReadOnly,\r\n index\r\n}: SurveyInputProps) => {\r\n return (\r\n <>\r\n {survey.optionList.map((option: QuestOption, i: number) => {\r\n const idx = i + index;\r\n return (\r\n \r\n {\r\n onChangeOption(e.target.value);\r\n }}\r\n />\r\n }\r\n label={''}\r\n />\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n","import { Star } from '@mui/icons-material';\r\nimport {\r\n Chip,\r\n FormControl,\r\n FormControlLabel,\r\n FormHelperText,\r\n Radio,\r\n RadioGroup,\r\n Rating,\r\n Stack,\r\n TextField,\r\n Typography\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport Label from 'components/Label';\r\nimport Selector from 'components/Selector';\r\nimport { useState } from 'react';\r\nimport { Survey, QuestOption } from '../../../@types/survey';\r\n\r\nexport type SurveyInputRatingProps = {\r\n survey: Survey;\r\n isReadOnly: boolean;\r\n onChangeOption: (value: string) => void;\r\n onChangeOptionText: (optionId: string, value: string) => void;\r\n index: number;\r\n};\r\n\r\nexport const SurveyInputRating = ({\r\n survey,\r\n onChangeOption,\r\n onChangeOptionText,\r\n isReadOnly,\r\n index\r\n}: SurveyInputRatingProps) => {\r\n //Options en object\r\n const objectOptions = Object.fromEntries(\r\n [...survey.optionList].map((t) => [t.rate, t.id, t.label])\r\n );\r\n const optionSelected = survey.optionList.filter((o) => o.checked)[0];\r\n\r\n return (\r\n \r\n \r\n {optionSelected && (\r\n \r\n )}\r\n\r\n \r\n \r\n );\r\n};\r\n\r\nfunction OptionTextPrecision({\r\n id,\r\n option,\r\n onChange,\r\n label\r\n}: {\r\n id: number;\r\n option: QuestOption;\r\n onChange(optionId: string, value: string): void;\r\n label: string;\r\n}) {\r\n if (option.textPre && option.textPre !== '')\r\n switch (option.textPre.includes('|')) {\r\n case true:\r\n const list = option.textPre.split('|').map((x) => {\r\n return { value: x, label: x };\r\n });\r\n\r\n return (\r\n \r\n \r\n {label}. Quel a été le problème ?{' '}\r\n \r\n \r\n {list.map((item, index) => {\r\n const key = id * index;\r\n return (\r\n onChange(option.id, item.value)}\r\n label={item.label}\r\n size=\"small\"\r\n />\r\n );\r\n })}\r\n \r\n \r\n );\r\n default:\r\n return (\r\n console.log(e.target.value)\r\n }}\r\n variant=\"outlined\"\r\n />\r\n );\r\n }\r\n\r\n return <>;\r\n}\r\n\r\nexport default function HoverRating({\r\n values,\r\n max,\r\n onChangeOption,\r\n value\r\n}: {\r\n values: { [index: string]: string };\r\n max: number;\r\n onChangeOption: (value: string) => void;\r\n value: number;\r\n}) {\r\n return (\r\n \r\n {\r\n //attention on match avec le rate\r\n if (newValue) onChangeOption(newValue.toString());\r\n }}\r\n emptyIcon={}\r\n />\r\n
\r\n );\r\n}\r\n","import { useEffect } from 'react';\r\nimport { QuestionType, Survey, SurveyCategory } from '../../../@types/survey';\r\nimport { SurveyInputCheck } from './SurveyInputCheck';\r\nimport { SurveyInputMemo } from './SurveyInputMemo';\r\nimport { SurveyInputRadio, SurveyInputRadioRegroupement } from './SurveyInputRadio';\r\nimport { SurveyInputRating } from './SurveyInputRating';\r\nimport { TableRow } from '@mui/material';\r\nimport { BoxProps } from '@mui/system';\r\n\r\ntype SurveyInputProps = {\r\n survey: Survey;\r\n isReadOnly: boolean;\r\n onChange: (value: string) => void;\r\n onChangeOption: (value: string) => void;\r\n onChangeOptionText: (optionId: string, value: string) => void;\r\n onValid: (is: boolean) => void;\r\n onChangeChecked: (id: string, checked: boolean) => void;\r\n index: number;\r\n};\r\n\r\nexport const SurveyInput = ({\r\n survey,\r\n isReadOnly,\r\n index,\r\n\r\n onChange,\r\n onChangeOption,\r\n onChangeChecked,\r\n onChangeOptionText,\r\n onValid\r\n}: SurveyInputProps) => {\r\n const controlError = (): boolean => {\r\n switch (survey.questionType) {\r\n case QuestionType.Mem:\r\n case QuestionType.Txt:\r\n return survey.isRequired && survey.value.trim() === '';\r\n case QuestionType.Rad:\r\n case QuestionType.Rat:\r\n const unChecked =\r\n survey.isRequired &&\r\n survey.optionList &&\r\n survey.optionList.length > 0 &&\r\n survey.optionList.every((x) => !x.checked);\r\n\r\n const notValue =\r\n survey.isRequired &&\r\n survey.optionList &&\r\n survey.optionList.length > 0 &&\r\n survey.optionList.some((c) => c.checked && c.textPre !== '' && c.textRep === '');\r\n\r\n return unChecked || notValue;\r\n default:\r\n return false;\r\n }\r\n };\r\n\r\n const isError = controlError();\r\n const isRegroupement = survey.regroupementId !== '';\r\n useEffect(() => {\r\n onValid(!isError);\r\n }, [isError]);\r\n\r\n switch (survey.questionType) {\r\n case QuestionType.Mem:\r\n return (\r\n \r\n );\r\n case QuestionType.Rat:\r\n return (\r\n \r\n );\r\n case QuestionType.Rad:\r\n return isRegroupement ? (\r\n \r\n ) : (\r\n \r\n );\r\n case QuestionType.Chk:\r\n return (\r\n \r\n );\r\n default:\r\n return (\r\n \r\n );\r\n }\r\n};\r\n","import { Survey } from '../@types/contract';\r\nimport { SurveyRequest } from '../@types/survey';\r\n\r\nimport { addSurvey, createSurveyVirtuelle, setLastSurvey } from 'redux/slices/survey';\r\nimport { RootState, dispatch, useSelector } from 'redux/store';\r\n\r\nconst useVisioSurvey = () => {\r\n const onVisio = (survey: SurveyRequest) => {\r\n if (survey === null) return;\r\n\r\n const surveyClaVir: Survey = {\r\n keyApp: survey.typApp,\r\n keyId: survey.appId,\r\n id: survey.lisQue,\r\n url: '',\r\n label: '',\r\n created: '',\r\n observation: '',\r\n mandatory: true,\r\n relanceOfNumber: 0\r\n };\r\n\r\n //dispatch(addSurvey(surveyClaVir));\r\n dispatch(setLastSurvey(surveyClaVir));\r\n };\r\n\r\n return { onVisio };\r\n};\r\n\r\nexport default useVisioSurvey;\r\n","import React, { useEffect, useState } from 'react';\r\n\r\nimport {\r\n Button,\r\n Container,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n Typography,\r\n Card\r\n} from '@mui/material';\r\nimport { styled } from '@mui/material/styles';\r\n\r\n//redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { getUrlVisio } from 'redux/slices/meeting';\r\nimport { DialogAnimate } from 'components/animate';\r\nimport { LoadingButton } from '@mui/lab';\r\n\r\nimport { Box } from '@mui/system';\r\n\r\nimport { loadUrl } from 'utils/helper';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport { toAssist } from 'redux/slices/virtualClass';\r\nimport { useSnackbar, VariantType } from 'notistack';\r\nimport { useTrackerActivityEvents } from 'hooks/useTackerActivityEvents';\r\nimport { MeetingAccessResult } from '../../../@types/meeting';\r\nimport { addSurvey, createSurveyVirtuelle, setLastSurvey } from 'redux/slices/survey';\r\nimport useVisioSurvey from 'hooks/useVisioSurvey';\r\n\r\nexport type MeetingButtonVisioProps = {\r\n id: number;\r\n disabled: boolean;\r\n isVirtual?: boolean;\r\n};\r\n\r\nexport default function MeetingButtonVisio({\r\n id,\r\n disabled,\r\n isVirtual = true\r\n}: MeetingButtonVisioProps) {\r\n const { isLoading } = useSelector((state: RootState) => state.meeting);\r\n const { moveInactityTime } = useTrackerActivityEvents();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const [open, setOpen] = useState(false);\r\n\r\n const { onVisio } = useVisioSurvey();\r\n\r\n const showMeetingAlert = async (errorMsg: string, severity: VariantType | undefined) => {\r\n enqueueSnackbar(errorMsg, { variant: severity, persist: true });\r\n };\r\n\r\n /**\r\n * Lancer la visio\r\n */\r\n const handleVisio = async () => {\r\n dispatch(\r\n getUrlVisio(id)((url, survey) => {\r\n //repousser le temps d'inactivité\r\n moveInactityTime(id.toString());\r\n //Tag présent\r\n window.open(url);\r\n //loadUrl(url);\r\n // fermer la fenetre\r\n setOpen(false);\r\n\r\n onVisio(survey);\r\n })((error: number) => {\r\n setOpen(false);\r\n switch (error as MeetingAccessResult) {\r\n case MeetingAccessResult.OutOfTime:\r\n showMeetingAlert(\r\n \"Vous pouvez vous connecter seulement 10 minutes avant l'évènement.\",\r\n 'info'\r\n );\r\n break;\r\n case MeetingAccessResult.OutOfTimeEnd:\r\n showMeetingAlert(\r\n \"Vous avez dépassé la date limite de connection à l'évènement.\",\r\n 'info'\r\n );\r\n break;\r\n case MeetingAccessResult.Ended:\r\n showMeetingAlert(\"L'évènement est terminé\", 'warning');\r\n break;\r\n case MeetingAccessResult.Invalid:\r\n showMeetingAlert(\"L'èvenement n'est pas accessible\", 'warning');\r\n break;\r\n case MeetingAccessResult.WaitingTeacher:\r\n showMeetingAlert(\r\n 'Veuillez patienter, le professeur va bientôt se connecter',\r\n 'warning'\r\n );\r\n break;\r\n default:\r\n showMeetingAlert('Nous rencontrons un problème.', 'error');\r\n break;\r\n }\r\n })\r\n );\r\n };\r\n\r\n return (\r\n <>\r\n {isVirtual ? (\r\n setOpen(true)}\r\n size=\"large\"\r\n disabled={disabled}\r\n variant=\"contained\"\r\n color=\"primary\"\r\n >\r\n PARTICIPER À LA VISIO\r\n \r\n ) : (\r\n handleVisio()}\r\n size=\"large\"\r\n disabled={disabled || isLoading}\r\n variant=\"contained\"\r\n color=\"primary\"\r\n >\r\n PARTICIPER À LA VISIO\r\n \r\n )}\r\n\r\n \r\n Vous allez entrer dans la classe virtuelle.\r\n \r\n \r\n \r\n Les classes pourront être utilisées à des fins pédagogiques et commerciales.\r\n \r\n \r\n Vous devez respecter le droit à l'image et la vie privée, il est interdit de capturer\r\n l'image des participants et formateurs quel qu’en soit l'usage envisagé.\r\n \r\n \r\n\r\n \r\n Vous vous engagez à :\r\n \r\n \r\n
  • respecter le droit des personnes.
  • \r\n
  • communiquer en respectant les règles de civilité.
  • \r\n
  • ne pas perturber volontairement le fonctionnement de la classe.
  • \r\n
  • \r\n {' '}\r\n ne pas diffuser des documents ou des propos choquants, par exemple à caractère\r\n raciste, violent ou injurieux.\r\n
  • \r\n
  • ne pas diffuser des documents ou des propos contraires à la neutralité.
  • \r\n
  • ne communiquer aucun renseignement à caractère personnel.
  • \r\n
  • \r\n {' '}\r\n respecter les règles relatives au droit d’auteur et au droit à l’image pour la\r\n diffusion de tout document.\r\n
  • \r\n
  • ne pas diffuser vos identifiants et code d'accès.
  • \r\n
    \r\n
    \r\n \r\n J'ai bien pris connaissance des conditions d'accès à la classe virtuelle\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n J'accepte\r\n \r\n \r\n
    \r\n \r\n );\r\n}\r\n","import { Typography } from '@mui/material';\r\n\r\nexport default function MeetingPhoneMessage() {\r\n return (\r\n <>\r\n \r\n Votre formateur ou formatrice vous contactera au moment indiqué.\r\n
    \r\n Vous recevrez un SMS de rappel de rendez-vous 24 h avant celui-ci.\r\n
    \r\n \r\n );\r\n}\r\n","import { Typography } from '@mui/material';\r\n\r\nexport default function MeetingVisioMessage() {\r\n return (\r\n \r\n La visio est disponible seulement 10 min avant l'heure indiquée.\r\n
    \r\n Merci de vous connecter quelques minutes avant votre rendez-vous.\r\n
    \r\n Vous recevrez un SMS de rappel de rendez-vous 24h avant celui-ci.\r\n
    \r\n Pré-requis : casque, micro, webcam\r\n
    \r\n );\r\n}\r\n","// material\r\nimport { alpha, Theme, useTheme, styled } from '@mui/material/styles';\r\nimport { BoxProps } from '@mui/material';\r\n// @types\r\nimport { ColorSchema } from '../@types/theme';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport type LabelColor =\r\n | 'default'\r\n | 'primary'\r\n | 'secondary'\r\n | 'info'\r\n | 'success'\r\n | 'warning'\r\n | 'error'\r\n | 'misc';\r\n\r\ntype LabelVariant = 'filled' | 'outlined' | 'ghost';\r\n\r\nconst RootStyle = styled('div')(\r\n ({\r\n theme,\r\n ownerState\r\n }: {\r\n theme: Theme;\r\n ownerState: {\r\n color: LabelColor;\r\n variant: LabelVariant;\r\n };\r\n }) => {\r\n const isLight = theme.palette.mode === 'light';\r\n const { color, variant } = ownerState;\r\n\r\n const styleFilled = (color: ColorSchema) => ({\r\n color: theme.palette[color].contrastText,\r\n backgroundColor: theme.palette[color].main\r\n });\r\n\r\n const styleOutlined = (color: ColorSchema) => ({\r\n color: theme.palette[color].main,\r\n backgroundColor: 'transparent',\r\n border: `1px solid ${theme.palette[color].main}`\r\n });\r\n\r\n const styleGhost = (color: ColorSchema) => ({\r\n color: theme.palette[color][isLight ? 'dark' : 'light'],\r\n backgroundColor: alpha(theme.palette[color].main, 0.16)\r\n });\r\n\r\n return {\r\n minWidth: 22,\r\n height: 'max-content',\r\n borderRadius: 8,\r\n cursor: 'default',\r\n alignItems: 'center',\r\n display: 'inline-block',\r\n justifyContent: 'center',\r\n alignContent: 'center',\r\n padding: theme.spacing(0, 1),\r\n color: theme.palette.grey[800],\r\n fontSize: theme.typography.pxToRem(12),\r\n fontFamily: theme.typography.fontFamily,\r\n backgroundColor: theme.palette.grey[300],\r\n fontWeight: theme.typography.fontWeightBold,\r\n\r\n ...(color !== 'default'\r\n ? {\r\n ...(variant === 'filled' && { ...styleFilled(color) }),\r\n ...(variant === 'outlined' && { ...styleOutlined(color) }),\r\n ...(variant === 'ghost' && { ...styleGhost(color) })\r\n }\r\n : {\r\n ...(variant === 'outlined' && {\r\n backgroundColor: 'transparent',\r\n color: theme.palette.text.primary,\r\n border: `1px solid ${theme.palette.grey[500_32]}`\r\n }),\r\n ...(variant === 'ghost' && {\r\n color: isLight ? theme.palette.text.secondary : theme.palette.common.white,\r\n backgroundColor: theme.palette.grey[500_16]\r\n })\r\n })\r\n };\r\n }\r\n);\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface LabelProps extends BoxProps {\r\n color?: LabelColor;\r\n variant?: LabelVariant;\r\n}\r\n\r\nexport default function Label({ color = 'default', variant = 'ghost', children, sx }: LabelProps) {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n","import { MediaFileInfo } from './media';\r\nimport { Meeting } from './meeting';\r\nimport { Teacher } from './pedagogy';\r\nimport { Playback } from './virtualClass';\r\n\r\nexport interface Seminar {\r\n id: string;\r\n title: string;\r\n description: string;\r\n dateStart: string;\r\n dateEnd: string;\r\n dateLimit: string;\r\n state: SeminarStatus;\r\n countMaxPlaces: number;\r\n teacher: Teacher;\r\n registered: boolean;\r\n waitingList: boolean;\r\n isDocument: boolean;\r\n countRegistered: number;\r\n isReplay: boolean;\r\n content: string;\r\n replay: null | Playback;\r\n meeting: null | Meeting;\r\n activityId: string;\r\n medias: MediaFileInfo[];\r\n supports: SeminarSupport[];\r\n place: string;\r\n credit: number;\r\n price: number;\r\n info: SeminarInfo;\r\n duration: string;\r\n type: SeminarType;\r\n priceUnit: number;\r\n}\r\n\r\nexport interface SeminarLeftToPay {\r\n credit: number;\r\n amount: number;\r\n accountCredit: number;\r\n accountAmount: number;\r\n}\r\n\r\nexport enum SeminarType {\r\n VirtualClass = 0,\r\n Workshop = 1\r\n}\r\n\r\nexport interface SeminarInfo {\r\n program: string;\r\n objective: string;\r\n utils: string;\r\n method: string;\r\n public: string;\r\n theme: string;\r\n}\r\n\r\nexport interface SeminarSupport {\r\n code: string;\r\n label: string;\r\n isRead: boolean;\r\n}\r\n\r\nexport enum SeminarStatus {\r\n None = 0,\r\n Open = 1,\r\n Cancel = 2,\r\n Full = 3,\r\n Close = 4,\r\n All = 5,\r\n Display = 6\r\n}\r\n\r\nexport enum SeminarErrorResult {\r\n NotFound = 0,\r\n Error = 1,\r\n Full = 2,\r\n ClosedContract = 3,\r\n OutCoaching = 4,\r\n OutPartner = 5,\r\n OutOfTime = 6,\r\n Invalid = 7,\r\n PlaceSpaceAvailable = 8,\r\n Payment = 9,\r\n Unavailable = 10\r\n}\r\n\r\nexport type SeminarError = {\r\n result: SeminarErrorResult;\r\n data: string;\r\n};\r\n","import { Teacher } from '../@types/pedagogy';\r\nimport { convertStringToDate, formatAPI } from 'utils/formatTime';\r\nimport { AgendaEvent, AgendaEventType, AgendaSeminar } from '../@types/agenda';\r\nimport { SessionAtelier, WorkshopStatus } from '../@types/workshop';\r\nimport { Seminar, SeminarStatus, SeminarType } from '../@types/seminar';\r\n\r\nexport const convertWorkshopToAgendaEvents = (list: Array): Array => {\r\n return list.map((w: SessionAtelier) => {\r\n const start = convertStringToDate(w.dateDebut);\r\n const end = convertStringToDate(w.dateFin);\r\n\r\n return {\r\n allDay: !w.isInscrit,\r\n start: `${formatAPI(start)}T${w.heureDebut}:00`,\r\n end: `${formatAPI(end)}T${w.heureFin}:00`,\r\n title: w.nomAtelier,\r\n icon: 'asterisk',\r\n eventType: AgendaEventType.Workshop,\r\n metadatas: {\r\n countMaxPlaces: w.nombreDePlacesMaxi,\r\n registered: w.isInscrit,\r\n countRegistered: w.nombreInscription,\r\n teacher: { lastName: w.professeur } as Teacher,\r\n state: convertWorkshopStatus(w.idStatut),\r\n waitingList: w.isInWaitingList,\r\n start: `${formatAPI(start)}T${w.heureDebut}:00`,\r\n end: `${formatAPI(end)}T${w.heureFin}:00`\r\n } as AgendaSeminar,\r\n textColor: w.isInscrit ? '#F49BCA' : '',\r\n color: '#F49BCA',\r\n id: w.id.toString()\r\n } as AgendaEvent;\r\n });\r\n};\r\n\r\nexport const convertWorkshopStatus = (state: WorkshopStatus): SeminarStatus => {\r\n switch (state) {\r\n case WorkshopStatus.Open:\r\n return SeminarStatus.Open;\r\n case WorkshopStatus.Full:\r\n return SeminarStatus.Close;\r\n case WorkshopStatus.Current:\r\n return SeminarStatus.Display;\r\n case WorkshopStatus.Close:\r\n return SeminarStatus.Close;\r\n default:\r\n return SeminarStatus.Cancel;\r\n }\r\n};\r\n\r\nexport const convertWorkshopToSeminar = (session: SessionAtelier): Seminar => {\r\n return {\r\n dateStart: `${formatAPI(session.dateDebut)}T${session.heureDebut}:00`,\r\n dateEnd: `${formatAPI(session.dateFin)}T${session.heureFin}:00`,\r\n title: session.nomAtelier,\r\n content: session.html,\r\n countMaxPlaces: session.nombreDePlacesMaxi,\r\n registered: session.isInscrit,\r\n countRegistered: session.nombreInscription,\r\n teacher: { lastName: session.professeur, coach: false, account: '', id: '' } as Teacher,\r\n state: convertWorkshopStatus(session.idStatut),\r\n waitingList: session.isInWaitingList,\r\n id: session.id.toString(),\r\n activityId: '',\r\n isDocument: session.containsFiles,\r\n description: session.descriptif,\r\n isReplay: false,\r\n duration: session.nombreHeure,\r\n replay: null,\r\n medias: [],\r\n meeting: null,\r\n supports: [],\r\n dateLimit: session.dateLimiteInscription,\r\n place: session.lieu,\r\n price: session.coutEnEuros,\r\n credit: session.coutEnCredit,\r\n priceUnit: session.prixUnitaire,\r\n type: SeminarType.Workshop,\r\n info: {\r\n method: session.txtMethode,\r\n objective: session.txtObjectifs,\r\n program: session.txtProgramme,\r\n public: session.txtPublic,\r\n theme: session.txtTheme,\r\n utils: session.txtMateriel\r\n }\r\n };\r\n};\r\n","import { convertStringToDate, fTime } from 'utils/formatTime';\r\nimport { AgendaEvent, AgendaEventType } from '../@types/agenda';\r\nimport { TaskModel } from '../@types/task';\r\n\r\nexport const convertTaskToAgendaEvent = (task: TaskModel): AgendaEvent => {\r\n return {\r\n allDay: false,\r\n start: convertStringToDate(task.dateStart),\r\n end: convertStringToDate(task.dateEnd),\r\n title: `${task.label}`,\r\n eventType: AgendaEventType.Task,\r\n textColor: '#F0C163',\r\n color: '#F0C163',\r\n id: task.id.toString(),\r\n metadatas: task,\r\n icon: ''\r\n };\r\n};\r\n","import { Student } from './account';\r\n\r\nexport type JobState = {\r\n isLoading: boolean;\r\n error: boolean;\r\n jobs: AnnoncesDTO[];\r\n job: AnnoncesDTO | null;\r\n hasMore: boolean;\r\n index: number;\r\n step: number;\r\n count: number;\r\n isLoadingMore: boolean;\r\n};\r\n\r\nexport interface JobsResponse {\r\n result: ResultResponse;\r\n data: AnnoncesDTO[];\r\n totalCount: number;\r\n pageIndex: number;\r\n pageCount: number;\r\n startRow: number;\r\n totalPages: number;\r\n term: string;\r\n codeTheme: string;\r\n sort: string;\r\n direct: string;\r\n}\r\n\r\nexport enum ResultResponse {\r\n Success = 1,\r\n NoDataFound = 2,\r\n Notauthorized = 3\r\n}\r\n\r\nexport interface AnnoncesDTOList {\r\n list: AnnoncesDTO[];\r\n}\r\n\r\nexport interface AnnoncesDTO {\r\n id: number;\r\n jobName: string;\r\n jobTypeId: number;\r\n jobTypeName: string;\r\n contactName: string;\r\n phoneContactNumber: string;\r\n duree: string;\r\n remuneration: string;\r\n description: string;\r\n enseigne: string;\r\n contactEmail: string;\r\n url: string;\r\n state: number;\r\n idCompany: number;\r\n companyName: string;\r\n codeLanguage: number;\r\n active: boolean;\r\n createDate: string;\r\n beginDate: string;\r\n logoContent: string;\r\n logoContentType: string;\r\n logoUrl: string;\r\n themes: Theme[];\r\n currentAddress: Address;\r\n}\r\n\r\nexport interface Theme {\r\n code: string;\r\n label: string;\r\n}\r\n\r\nexport interface Address {\r\n id: number;\r\n addressStr: string;\r\n cityName: string;\r\n codePostal: string;\r\n regionName: string;\r\n countryName: string;\r\n complement: string;\r\n longitude: number | null;\r\n latitude: number | null;\r\n distance: number | null;\r\n street: string;\r\n}\r\n\r\nexport interface JobsDetailResponse {\r\n result: ResultDetailResult;\r\n detail: AnnoncesDTO;\r\n}\r\n\r\nexport enum ResultDetailResult {\r\n Success = 1,\r\n NoDataFound = 2,\r\n Notauthorized = 3\r\n}\r\n\r\nexport interface JobRequestDTO {\r\n term: string;\r\n sort: string;\r\n direction: string;\r\n pageIndex: number;\r\n pageSize: number;\r\n jobTypeId: number;\r\n}\r\n\r\nexport type DashboardJobState = {\r\n isLoading: boolean;\r\n jobs: AnnoncesDTO[];\r\n};\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n\r\n//Redux\r\nimport { addEvent, removeEvent, updateEvent } from 'redux/slices/agenda';\r\n\r\n// utils\r\nimport axios from '../../utils/axios';\r\n\r\n// @types\r\nimport {\r\n TaskListResponse,\r\n TaskModel,\r\n TaskUpdateResponse,\r\n TaskUpdateResult,\r\n TaskStatus,\r\n TaskState,\r\n TaskListResult\r\n} from '../../@types/task';\r\nimport { convertTaskToAgendaEvent } from 'mapper/taskMap';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: TaskState = {\r\n isLoading: false,\r\n error: false,\r\n tasks: [],\r\n task: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'task',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n state.error = false;\r\n },\r\n\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET POSTS\r\n getTasksSuccess(state, action) {\r\n state.isLoading = false;\r\n state.tasks = action.payload;\r\n },\r\n\r\n selectedTask(state, action) {\r\n state.isLoading = false;\r\n state.task = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { selectedTask } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getTaskList() {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/agenda/task/list');\r\n const { list, result } = response.data;\r\n\r\n switch (result) {\r\n case TaskListResult.Success:\r\n dispatch(slice.actions.getTasksSuccess(list));\r\n break;\r\n case TaskListResult.NotFound:\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport const addOrUpdateTask = (task: TaskModel) => (onSuccess: (task: TaskModel) => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n\r\n try {\r\n const response = await axios.post('/api/agenda/task/update', task, {\r\n headers: { writeOnly: true }\r\n });\r\n const { result, id } = response.data;\r\n\r\n switch (result) {\r\n case TaskUpdateResult.Success:\r\n dispatch(slice.actions.endLoading());\r\n if (task.id === 0) {\r\n task.id = id;\r\n dispatch(addEvent([convertTaskToAgendaEvent(task)]));\r\n } else dispatch(updateEvent(convertTaskToAgendaEvent(task)));\r\n\r\n onSuccess(task);\r\n break;\r\n case TaskUpdateResult.TitleIsRequired:\r\n dispatch(slice.actions.hasError('Le titre est obligatoire'));\r\n break;\r\n case TaskUpdateResult.DateStartIsRequired:\r\n case TaskUpdateResult.DateEndIsRequired:\r\n dispatch(slice.actions.hasError('Les dates sont obligatoire'));\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError(response.data));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError('Nous ne pouvons pas enregistrer vos données'));\r\n }\r\n };\r\n};\r\n\r\nexport const removeTask = (id: number) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get(`/api/agenda/task/remove/${id}`, {\r\n headers: { writeOnly: true }\r\n });\r\n\r\n switch (response.data) {\r\n case true:\r\n dispatch(slice.actions.endLoading());\r\n dispatch(removeEvent({ eventId: id }));\r\n\r\n onSuccess();\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError(response.data));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError('Nous ne pouvons pas supprimer vos données'));\r\n }\r\n };\r\n};\r\n","import { styled } from '@mui/material/styles';\r\nimport { CircularProgress, IconButton } from '@mui/material';\r\nimport { Box, useTheme } from '@mui/system';\r\nimport { ReactNode } from 'react';\r\n\r\n//---------------------------------------------------------------------\r\n\r\nconst ThumbStyle = styled(IconButton)(({ theme }) => ({\r\n width: 40,\r\n height: 40,\r\n minWidth: 40,\r\n display: 'flex',\r\n cursor: 'pointer',\r\n overflow: 'hidden',\r\n position: 'relative',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n borderRadius: theme.shape.borderRadiusSm,\r\n backgroundColor: theme.palette.background.paper,\r\n border: `solid 1px ${theme.palette.divider}`,\r\n color: theme.palette.primary.main,\r\n '& img': { width: '100%', height: '100%' },\r\n '&:hover': {\r\n backgroundImage: 'url(\"static/icons/file/file_download.svg\");',\r\n '> .MuiSvgIcon-root': { display: 'none' }\r\n }\r\n}));\r\n\r\n//---------------------------------------------------------------------\r\n\r\ninterface FileThumbProps {\r\n isRead: boolean;\r\n isLoading: boolean;\r\n iconFile: ReactNode;\r\n onClick?: () => void;\r\n}\r\n\r\nexport default function FileThumb({ isLoading, isRead, iconFile, onClick }: FileThumbProps) {\r\n const theme = useTheme();\r\n\r\n return (\r\n .MuiSvgIcon-root': { color: '#00C040' }\r\n })\r\n }}\r\n >\r\n {isLoading ? : iconFile}\r\n \r\n );\r\n}\r\n","import { Alert, Typography } from '@mui/material';\r\nimport { Card } from '@mui/material';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport { ReactNode } from 'react';\r\n\r\ntype SurveyCardErrorProps = {\r\n title: string;\r\n children: ReactNode;\r\n};\r\n\r\nconst SurveyCardInformation = ({ title, children }: SurveyCardErrorProps) => {\r\n return (\r\n \r\n \r\n \r\n {title}\r\n \r\n {children}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default SurveyCardInformation;\r\n","import { motion } from 'framer-motion';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport { Box, Button, Typography, Container } from '@mui/material';\r\n// components\r\nimport { MotionContainer, varBounceIn } from '../components/animate';\r\nimport Page from '../components/Page';\r\nimport { PageNotFoundIllustration } from '../assets';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled(Page)(({ theme }) => ({\r\n display: 'flex',\r\n minHeight: '100%',\r\n alignItems: 'center',\r\n paddingTop: theme.spacing(15),\r\n paddingBottom: theme.spacing(10)\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Page404({ isLinkDashboard = true }: { isLinkDashboard: boolean }) {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Désolé, la page est introuvable!\r\n \r\n \r\n \r\n Désolé, nous ne trouvons pas la page que vous recherchez.\r\n
    \r\n Avez vous vérifié l'url ?\r\n
    \r\n\r\n \r\n \r\n \r\n\r\n {isLinkDashboard && (\r\n \r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n","import { HomeworkStatus } from '../@types/pedagogy';\r\nimport { AgendaEvent, AgendaEventType } from '../@types/agenda';\r\nimport { isBeforeDate } from 'utils/formatTime';\r\n\r\nexport const convertObjectiveEventToAgendaEvent = (event: any, index: number): AgendaEvent => {\r\n if (event.end == null) {\r\n event.end = `${event.start}T10:00:00`;\r\n event.start = `${event.start}T08:00:00`;\r\n }\r\n\r\n const isLate =\r\n [HomeworkStatus.ToDo, HomeworkStatus.Rejected].includes(event.metadata.status) &&\r\n isBeforeDate(new Date(event.start), new Date());\r\n\r\n return {\r\n id: event.id,\r\n allDay: false,\r\n start: event.start,\r\n end: event.end,\r\n title: event.title,\r\n metadatas: {\r\n id: event.metadata.dvr,\r\n courseId: event.metadata.sup,\r\n barCode: event.metadata.codBarDvr,\r\n observation: event.observation,\r\n isLate: isLate,\r\n status: event.metadata.status\r\n },\r\n eventType: AgendaEventType.Homework,\r\n color: isLate ? '#EE0701' : '#17C588',\r\n textColor: isLate ? '#EE0701' : '#17C588',\r\n icon: ''\r\n };\r\n};\r\n\r\nexport const convertObjectiveEvent = (event: any): any => {\r\n return {\r\n id: event.id,\r\n start: event.start,\r\n end: event.end,\r\n title: event.title,\r\n status: 0,\r\n metadata: {\r\n dvr: event.metadatas.id,\r\n sup: event.metadatas.courseId,\r\n codBarDvr: event.metadatas.barCode,\r\n notDvr: 0,\r\n status: 0,\r\n teacher: null\r\n },\r\n type: 0,\r\n observation: event.metadatas.observation,\r\n color: '#17C588',\r\n enable: false,\r\n className: '',\r\n backgroundColor: '',\r\n icon: 'edit',\r\n url: '',\r\n lock: false,\r\n lockBy: ''\r\n };\r\n};\r\n","import { useEffect, useState } from 'react';\r\n\r\n//Type\r\nimport {\r\n HomeworkBase,\r\n HomeworkStatus,\r\n StudyPlan,\r\n StudyPlanChapter,\r\n StudyPlanPhase\r\n} from '../@types/pedagogy';\r\nimport { AgendaEvent } from '../@types/agenda';\r\nimport { ObjectiveRequest, Objective, ObjectiveCalculateInfos } from '../@types/objectiveType';\r\n\r\n//redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { askUnlockObjective, createObjective, saveObjective } from 'redux/slices/objective';\r\n\r\n//hook\r\nimport useStudyPlan from './useStudyPlan';\r\nimport { formatAPI, isBeforeDate } from 'utils/formatTime';\r\nimport { convertObjectiveEvent, convertObjectiveEventToAgendaEvent } from 'mapper/objectiveMap';\r\nimport { updateEvent, updateEventsObjective } from 'redux/slices/agenda';\r\nimport useAuth from './useAuth';\r\nimport useStudyPlanHomework from './useStudyPlanHomework';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst useObjective = () => {\r\n const { getHomeworks, getStudyPlanItemHomeworks, getHomework } = useStudyPlanHomework();\r\n const dispatch = useDispatch();\r\n const { getContractCurrent } = useAuth();\r\n const { objective, isLoading, error } = useSelector((state: RootState) => state.objective);\r\n const [eventsLate, setEventsLate] = useState | null>([]);\r\n\r\n useEffect(() => {\r\n const homeworks = getHomeworks();\r\n\r\n const events = objective?.events.filter(\r\n (evt: AgendaEvent) =>\r\n isBeforeDate(evt.start, new Date()) &&\r\n homeworks?.some(\r\n (x) =>\r\n x.courseId === evt.metadatas.courseId &&\r\n x.id === evt.metadatas.id &&\r\n x.homeworks.length === 0\r\n )\r\n );\r\n\r\n if (events) setEventsLate(events!);\r\n }, [objective]);\r\n\r\n /**\r\n * search\r\n */\r\n function search(courseId: string, id: number) {\r\n const eventTmp = objective?.events.filter(\r\n (evt) => evt.metadatas.courseId === courseId && id === evt.metadatas.id\r\n );\r\n if (eventTmp)\r\n if (eventsLate && eventsLate?.length > 0) {\r\n const eventLate = eventsLate?.filter(\r\n (evt) => evt.metadatas.courseId === courseId && id === evt.metadatas.id\r\n );\r\n if (eventLate) return eventLate;\r\n }\r\n return eventTmp;\r\n }\r\n\r\n /**\r\n * Ajouter les events (devoirs) dans l'agenda suite à une reprogrammation\r\n * @param jalons Ajou\r\n * @param homeWorkToDoList\r\n * @returns\r\n */\r\n const addAgendaEvent = (\r\n jalons: Array,\r\n homeWorkToDoList: Array\r\n ): Array => {\r\n const events: Array = [];\r\n\r\n for (var i = 0; i < jalons.length; i++) {\r\n if (homeWorkToDoList.length >= i) {\r\n let homeWork = homeWorkToDoList[i];\r\n\r\n events.push(convertEvent(homeWork, jalons[i], i));\r\n }\r\n }\r\n return events;\r\n };\r\n\r\n /**\r\n * Convertir le devoir en event agenda\r\n * @param homeWork\r\n * @param date\r\n * @param index\r\n * @returns\r\n */\r\n const convertEvent = (homeWork: HomeworkBase, date: any, index: number) => {\r\n return convertObjectiveEventToAgendaEvent(\r\n {\r\n id: index + 1000,\r\n start: formatAPI(date),\r\n end: null,\r\n title: homeWork.label,\r\n metadata: {\r\n sup: homeWork.courseId,\r\n dvr: homeWork.id,\r\n codBarDvr: homeWork.barCode,\r\n observation: '',\r\n status: homeWork.status\r\n }\r\n },\r\n index\r\n );\r\n };\r\n\r\n const calculate =\r\n (request: ObjectiveRequest) => (onSuccess: (infos: ObjectiveCalculateInfos) => void) => {\r\n //devoirs à faire\r\n const homeWorkToDoList = getHomeworks()?.filter(\r\n (w: HomeworkBase) =>\r\n w.mandatory &&\r\n (w.homeworks.length === 0 ||\r\n w.homeworks.some((x) =>\r\n [HomeworkStatus.Remade, HomeworkStatus.Rejected].includes(x.status)\r\n ))\r\n );\r\n\r\n // devoirs fait\r\n const homeworkDoList = getHomeworks()?.filter(\r\n (w: HomeworkBase) =>\r\n w.mandatory &&\r\n w.homeworks.some(\r\n (x) => ![HomeworkStatus.Remade, HomeworkStatus.Rejected].includes(x.status)\r\n )\r\n );\r\n\r\n //nombre de jalons\r\n request.jalonCount =\r\n homeWorkToDoList && homeWorkToDoList !== undefined ? homeWorkToDoList.length : 0;\r\n\r\n //génération des jalons par le serveur\r\n dispatch(\r\n createObjective(request)((interval: number, jalons: Array) => {\r\n // ajout d'évents dans devoir à faire\r\n let eventsInAgenda = addAgendaEvent(jalons, homeWorkToDoList!);\r\n\r\n //ajout des devoirs faits\r\n homeworkDoList?.map((w, i) =>\r\n eventsInAgenda.push(convertEvent(w, w.homeworks[0].correctionDate, i))\r\n );\r\n\r\n const calculateInfos: ObjectiveCalculateInfos = {\r\n objective: {\r\n start: formatAPI(request.dateStart),\r\n end: formatAPI(request.dateEnd),\r\n jalonCount: jalons.length,\r\n daysWorking:\r\n request.daysWorking?.length === 0 ? [0, 1, 2, 3, 4, 5, 6] : request.daysWorking,\r\n interval: interval,\r\n periodesOff: request.periodesOff,\r\n homeworkDoCount: getContractCurrent().numberOfMandatoryHomeworkCorrected,\r\n lock: request.lock,\r\n lockBy: request.lockBy ? request.lockBy : '',\r\n observation: '',\r\n progression: 0,\r\n events: eventsInAgenda.map((w) => convertObjectiveEvent(w)),\r\n dateAskUnlock: ''\r\n },\r\n eventsInAgenda: eventsInAgenda\r\n };\r\n\r\n onSuccess(calculateInfos);\r\n })\r\n );\r\n };\r\n\r\n const saveCalculatedObjective = (request: ObjectiveCalculateInfos) => (onSuccess: () => void) => {\r\n dispatch(\r\n saveObjective(request.objective)(() => {\r\n dispatch(updateEventsObjective(request.eventsInAgenda));\r\n onSuccess();\r\n })\r\n );\r\n };\r\n\r\n const create = (request: ObjectiveRequest) => (onSuccess: () => void) => {\r\n //devoirs à faire\r\n const homeWorkToDoList = getHomeworks()?.filter(\r\n (w: HomeworkBase) =>\r\n w.mandatory &&\r\n (w.homeworks.length === 0 ||\r\n w.homeworks.some((x) =>\r\n [HomeworkStatus.Remade, HomeworkStatus.Rejected].includes(x.status)\r\n ))\r\n );\r\n\r\n // devoirs fait\r\n const homeworkDoList = getHomeworks()?.filter(\r\n (w: HomeworkBase) =>\r\n w.mandatory &&\r\n w.homeworks.some(\r\n (x) => ![HomeworkStatus.Remade, HomeworkStatus.Rejected].includes(x.status)\r\n )\r\n );\r\n\r\n //nombre de jalons\r\n request.jalonCount = homeWorkToDoList!.length;\r\n\r\n //génération des jalons par le serveur\r\n dispatch(\r\n createObjective(request)((interval: number, jalons: Array) => {\r\n // ajout d'évents dans devoir à faire\r\n let eventsInAgenda = addAgendaEvent(jalons, homeWorkToDoList!);\r\n\r\n //ajout des devoirs faits\r\n homeworkDoList?.map((w, i) =>\r\n eventsInAgenda.push(convertEvent(w, w.homeworks[0].correctionDate, i))\r\n );\r\n\r\n //sauvegarde sur le serveur\r\n dispatch(\r\n saveObjective({\r\n start: formatAPI(request.dateStart),\r\n end: formatAPI(request.dateEnd),\r\n jalonCount: jalons.length,\r\n daysWorking:\r\n request.daysWorking?.length === 0 ? [0, 1, 2, 3, 4, 5, 6] : request.daysWorking,\r\n interval: interval,\r\n periodesOff: request.periodesOff,\r\n homeworkDoCount: getContractCurrent().numberOfMandatoryHomeworkCorrected,\r\n lock: request.lock,\r\n lockBy: request.lockBy ? request.lockBy : '',\r\n observation: '',\r\n progression: 0,\r\n events: eventsInAgenda.map((w) => convertObjectiveEvent(w)),\r\n dateAskUnlock: ''\r\n })(() => {\r\n dispatch(updateEventsObjective(eventsInAgenda));\r\n onSuccess();\r\n })\r\n );\r\n })\r\n );\r\n };\r\n /**\r\n * \r\n * @param courseId \r\n * @param id \r\n * @returns \r\n \r\n function getHomeworkByEvent(courseId: string, id: number) {\r\n const homeworks = studyPlanManager.getHomeworks();\r\n return homeworks?.filter((w) => w.courseId === courseId && w.id === id)[0]!;\r\n }\r\n*/\r\n const updateObjectiveEvent = (eventAgenda: AgendaEvent) => (onSuccess: VoidFunction) => {\r\n let newList = objective?.events?.filter(\r\n (event) =>\r\n !(\r\n event.metadatas.courseId === eventAgenda.metadatas.courseId &&\r\n event.metadatas.id === eventAgenda.metadatas.id\r\n )\r\n );\r\n\r\n newList?.push(eventAgenda);\r\n\r\n //sauvegarde sur le serveur\r\n dispatch(\r\n saveObjective({\r\n start: objective!.start,\r\n end: objective!.end,\r\n jalonCount: objective!.jalonCount,\r\n daysWorking: objective!.daysWorking,\r\n interval: objective!.interval,\r\n periodesOff: objective!.periodesOff,\r\n homeworkDoCount: 0,\r\n lock: objective!.lock,\r\n lockBy: '',\r\n observation: '',\r\n progression: 0,\r\n events: newList!.map((w) => convertObjectiveEvent(w)),\r\n dateAskUnlock: ''\r\n })(() => {\r\n dispatch(updateEvent(eventAgenda));\r\n onSuccess();\r\n })\r\n );\r\n };\r\n\r\n const unlockObjective = () => (onSuccess: VoidFunction) => {\r\n const currentContract = getContractCurrent();\r\n\r\n dispatch(\r\n askUnlockObjective({\r\n contractId: currentContract?.id,\r\n amendmentId: currentContract?.amendmentId\r\n })(() => {\r\n onSuccess();\r\n })\r\n );\r\n };\r\n\r\n return {\r\n create,\r\n calculate,\r\n saveCalculatedObjective,\r\n search,\r\n getHomeworkByEvent: getHomework,\r\n updateObjectiveEvent,\r\n isLoading: isLoading,\r\n eventsToLate: eventsLate!,\r\n objective,\r\n error,\r\n unlockObjective\r\n };\r\n};\r\n\r\nexport default useObjective;\r\n","import React, { useContext } from 'react';\r\nimport { Chip } from '@mui/material';\r\nimport { Seminar, SeminarStatus } from '../../../@types/seminar';\r\nimport { MeetingStatus } from '../../../@types/meeting';\r\n\r\nimport Label from 'components/Label';\r\nimport { convertStringToDate } from 'utils/formatTime';\r\nimport { PageSettingsContext } from 'contexts/PageSettingsContext';\r\n\r\nexport type SeminarStatusDisplayProps = {\r\n registered: boolean;\r\n isReplay: boolean;\r\n countRegistered: number;\r\n state: SeminarStatus;\r\n countMaxPlaces: number;\r\n waitingList: boolean;\r\n meetingState?: MeetingStatus;\r\n dateLimit?: string;\r\n dateEnd?: string;\r\n};\r\n\r\nconst RenderRegisteredStatus = ({ meetingState }: { meetingState: MeetingStatus }) => {\r\n switch (meetingState) {\r\n case MeetingStatus.Absent:\r\n return (\r\n \r\n );\r\n\r\n case MeetingStatus.Present:\r\n return (\r\n \r\n );\r\n\r\n case MeetingStatus.Registered:\r\n return (\r\n \r\n );\r\n case MeetingStatus.WaitingList:\r\n return (\r\n \r\n );\r\n default:\r\n return (\r\n \r\n );\r\n }\r\n};\r\n\r\nexport const SeminarStatusDisplay = ({\r\n registered,\r\n isReplay,\r\n countRegistered,\r\n state,\r\n countMaxPlaces,\r\n waitingList,\r\n meetingState,\r\n dateLimit,\r\n dateEnd\r\n}: SeminarStatusDisplayProps) => {\r\n const { getDateServer } = useContext(PageSettingsContext);\r\n\r\n const dateServer = getDateServer();\r\n\r\n if (registered)\r\n return (\r\n <>\r\n \r\n {isReplay && (\r\n \r\n )}\r\n \r\n );\r\n\r\n if (waitingList && !isReplay)\r\n return (\r\n \r\n );\r\n\r\n if (state === SeminarStatus.Open) {\r\n if (dateEnd && convertStringToDate(dateEnd!) < dateServer)\r\n return (\r\n \r\n );\r\n\r\n if (dateLimit && convertStringToDate(dateLimit!) < dateServer)\r\n return (\r\n \r\n );\r\n\r\n if (countMaxPlaces - countRegistered <= 0)\r\n return (\r\n {`Complet - Inscrivez-vous sur liste d'attente`}\r\n );\r\n else\r\n return (\r\n \r\n );\r\n }\r\n\r\n if (state === SeminarStatus.Close && isReplay)\r\n return (\r\n \r\n );\r\n\r\n return (\r\n \r\n );\r\n};\r\n","import { useRef, useEffect } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function useIsMountedRef() {\r\n const isMounted = useRef(true);\r\n\r\n useEffect(\r\n () => () => {\r\n isMounted.current = false;\r\n },\r\n []\r\n );\r\n\r\n return isMounted;\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport { Close, LiveHelp } from '@mui/icons-material';\r\nimport { Button, Divider, Drawer, IconButton, Stack, Tooltip, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { ButtonType } from '../../../@types/common';\r\nimport MessageForm, { MessageFormParams } from './MessageForm';\r\nimport MIconButton from 'components/MIconButton';\r\n\r\nexport type MessagePopoverProps = {\r\n params?: MessageFormParams;\r\n label?: string;\r\n small: boolean;\r\n buttonType?: ButtonType;\r\n labelButton?: string;\r\n onLoad?: () => void;\r\n};\r\n\r\n/**\r\n * Ajouter un message de type question\r\n */\r\nexport default function MessagePopover({\r\n params,\r\n label,\r\n small = false,\r\n buttonType = 'button',\r\n labelButton = '',\r\n onLoad\r\n}: MessagePopoverProps) {\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleClick = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n useEffect(() => {\r\n if (open && onLoad) onLoad();\r\n }, [open]);\r\n\r\n return (\r\n <>\r\n {buttonType === 'button' && (\r\n \r\n )}\r\n\r\n {buttonType === 'iconButton' && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {labelButton === '' ? 'Poser une question' : labelButton}\r\n \r\n \r\n {label}\r\n
    \r\n {params?.reference}\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n \r\n \r\n \r\n );\r\n}\r\n","import {\r\n Box,\r\n Card,\r\n CircularProgress,\r\n Grid,\r\n LinearProgress,\r\n Tooltip,\r\n Typography\r\n} from '@mui/material';\r\nimport { styled } from '@mui/material/styles';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { RowItem, RowItemDisplay } from 'components/RowListItem';\r\nimport useAuth from 'hooks/useAuth';\r\nimport useExamen from 'hooks/useExamen';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport { getLabelCategoryObjectif } from 'utils/helperExamen';\r\nimport { ObjectifGeneral, SessionExamen } from '../../../@types/examen';\r\n\r\ntype ExamenPrerequisProps = {\r\n objectif: ObjectifGeneral | null;\r\n session?: SessionExamen | null;\r\n isSmall?: boolean;\r\n};\r\n\r\nexport default function ExamenPrerequis({\r\n objectif,\r\n session,\r\n isSmall = false\r\n}: ExamenPrerequisProps) {\r\n const theme = useTheme();\r\n const { pourcentageDevoirsRealises, nombreJoursStage, noteDossierProMin } = useSelector(\r\n (state: RootState) => state.examen\r\n );\r\n const { getContractCurrent } = useAuth();\r\n const { isMediumOrMobile } = useScreenConfig();\r\n\r\n // Blindage\r\n if (!objectif || objectif === undefined) {\r\n return <>;\r\n }\r\n\r\n const CardStyle = styled(Card)({\r\n padding: isSmall || isMediumOrMobile ? 10 : 30,\r\n marginTop: 10,\r\n boxShadow: theme.customShadows.z12\r\n });\r\n\r\n let preReqPouDvrRea = 0;\r\n let preReqNbJouSta = 0;\r\n let preReqNotDosProMin = 0;\r\n\r\n // Les prérequis de la session sont prioritaires\r\n const sessionHasPreReq =\r\n session &&\r\n (session.pourcentageDevoirsRealises > 0 ||\r\n session.nombreJoursStage > 0 ||\r\n session.noteDossierProMin > 0);\r\n\r\n if (sessionHasPreReq) {\r\n preReqPouDvrRea = session.pourcentageDevoirsRealises;\r\n preReqNbJouSta = session.nombreJoursStage;\r\n preReqNotDosProMin = session.noteDossierProMin;\r\n } else if (objectif) {\r\n preReqPouDvrRea = objectif.pourcentageDevoirsRealises;\r\n preReqNbJouSta = objectif.nombreJoursStage;\r\n preReqNotDosProMin = objectif.noteDossierProMin;\r\n }\r\n\r\n let valuePourcentageDevoirsRealises =\r\n preReqPouDvrRea > 0 ? (pourcentageDevoirsRealises * 100) / preReqPouDvrRea : 0;\r\n let valueNombreJoursStage = preReqNbJouSta > 0 ? (nombreJoursStage * 100) / preReqNbJouSta : 0;\r\n let valueNoteDossierProMin =\r\n preReqNotDosProMin > 0 ? (noteDossierProMin * 100) / preReqNotDosProMin : 0;\r\n\r\n //Blindage (pas plus de 100% pour afficher la complétion)\r\n if (valuePourcentageDevoirsRealises > 100) valuePourcentageDevoirsRealises = 100;\r\n if (valueNombreJoursStage > 100) valueNombreJoursStage = 100;\r\n if (valueNoteDossierProMin > 100) valueNoteDossierProMin = 100;\r\n\r\n const examLabel = getLabelCategoryObjectif(objectif?.categorie);\r\n\r\n return (\r\n \r\n \r\n Pré-requis\r\n \r\n {preReqPouDvrRea === 0 && preReqNbJouSta === 0 && preReqNotDosProMin === 0 ? (\r\n \r\n {`L'inscription à ${examLabel?.precision} ne requiert pas de prérequis.`}\r\n \r\n ) : (\r\n <>\r\n \r\n {`Afin que l’école vous inscrive à la session d’examen ${\r\n ['TRI', 'MOI'].includes(objectif?.periodeInscription) ? 'pour la période' : ''\r\n } sélectionnée, vous devez remplir les conditions suivantes`}\r\n \r\n \r\n {isSmall || isMediumOrMobile ? (\r\n <>\r\n {preReqPouDvrRea > 0 && (\r\n {`Réaliser ${preReqPouDvrRea}% des évaluations obligatoires`}\r\n }\r\n icon={\r\n 1 ? 's' : ''\r\n }`}\r\n />\r\n }\r\n />\r\n )}\r\n {preReqNbJouSta > 0 && (\r\n {`Effectuer ${preReqNbJouSta} jours de stage`}\r\n }\r\n icon={\r\n 1 ? 's' : ''\r\n } de stage effectué${nombreJoursStage > 1 ? 's' : ''}`}\r\n />\r\n }\r\n />\r\n )}\r\n {preReqNotDosProMin > 0 && (\r\n {`Obtenir une note supérieure à ${preReqNotDosProMin}/${\r\n getContractCurrent().scoreOn\r\n } au dossier professionnel`}\r\n }\r\n icon={\r\n \r\n }\r\n />\r\n )}\r\n \r\n ) : (\r\n \r\n {preReqPouDvrRea > 0 && (\r\n <>\r\n \r\n {`Réaliser ${preReqPouDvrRea}% des évaluations obligatoires`}\r\n \r\n \r\n 1 ? 's' : ''\r\n }`}\r\n >\r\n \r\n \r\n \r\n \r\n )}\r\n {preReqNbJouSta > 0 && (\r\n <>\r\n \r\n {`Effectuer ${preReqNbJouSta} jours de stage`}\r\n \r\n \r\n 1 ? 's' : ''\r\n } de stage effectué${nombreJoursStage > 1 ? 's' : ''}`}\r\n >\r\n \r\n \r\n \r\n \r\n )}\r\n {preReqNotDosProMin > 0 && (\r\n <>\r\n \r\n {`Obtenir une note supérieure à ${preReqNotDosProMin}/${\r\n getContractCurrent().scoreOn\r\n } au dossier professionnel`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nconst CircularBaseStyle = styled(CircularProgress)(({ theme }) => ({\r\n color: theme.palette.primary.lighter\r\n}));\r\nconst CircularValueStyle = styled(CircularProgress)(({ theme }) => ({\r\n color: theme.palette.primary.main,\r\n position: 'absolute',\r\n left: 0\r\n}));\r\n\r\ntype CustomCircularProgressProps = {\r\n value: number;\r\n info?: string;\r\n};\r\n\r\nfunction CustomCircularProgress({ value, info }: CustomCircularProgressProps) {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import useScreenConfig from 'hooks/useScreenConfig';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport {\r\n Card,\r\n CardContent,\r\n CardHeader,\r\n Chip,\r\n Stack,\r\n Table,\r\n TableBody,\r\n TableContainer,\r\n Typography\r\n} from '@mui/material';\r\nimport { TableCell } from '@mui/material';\r\nimport { TableHead, TableRow } from '@mui/material';\r\nimport { ReactNode } from 'react';\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemLearning,\r\n StudyPlanItemType\r\n} from '../../../../@types/pedagogy';\r\nimport { getTypeSupport } from 'utils/helperSupport';\r\nimport CardContainer from 'components/CardContainer';\r\nimport { Box } from '@mui/system';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\nexport type StudyPlanChapterAverageListProps = {\r\n items: Array;\r\n icon: any;\r\n};\r\n\r\nconst StudyPlanChapterAverageList = ({ items, icon }: StudyPlanChapterAverageListProps) => {\r\n const { isMobile } = useScreenConfig();\r\n\r\n const extractInfo = (item: StudyPlanItem, icon: any) => {\r\n let score = '';\r\n let coef = 0;\r\n let isScore = true;\r\n\r\n switch (item.type) {\r\n case StudyPlanItemType.Homework:\r\n const base = (item as StudyPlanItemHomework).homeworkBase;\r\n isScore = base.isScore;\r\n score = base.homeworks.slice(-1)[0].note;\r\n coef = base.coefficient;\r\n break;\r\n case StudyPlanItemType.Elearning:\r\n score = (item as StudyPlanItemLearning).elearning.score.toString();\r\n isScore = score !== '' ? true : false;\r\n break;\r\n }\r\n\r\n return {\r\n label: item.label,\r\n type: item.type,\r\n score: score,\r\n coef: coef,\r\n icon: icon,\r\n isScore: isScore\r\n };\r\n };\r\n if (isMobile)\r\n return (\r\n \r\n {items.map((item) => {\r\n const info = extractInfo(item, icon);\r\n return ;\r\n })}\r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n {icon} Évaluation\r\n \r\n \r\n Type\r\n Note obtenue\r\n Coefficient\r\n \r\n \r\n\r\n \r\n {items?.map((item) => {\r\n const info = extractInfo(item, icon);\r\n return ;\r\n })}\r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\ntype ListItemCardProps = {\r\n label: string;\r\n type: StudyPlanItemType;\r\n score: string;\r\n coef: number;\r\n icon: ReactNode;\r\n isScore: boolean;\r\n};\r\n\r\nconst ListItemCardMobile = ({ label, type, score, coef, icon, isScore }: ListItemCardProps) => {\r\n return (\r\n \r\n {label}} action={icon} />\r\n \r\n \r\n \r\n Note obtenue : {score}\r\n {coef > 0 && Coefficient : {coef}}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst ListItemCardPC = ({ label, type, score, coef, isScore, icon }: ListItemCardProps) => {\r\n const { getContractCurrent } = useAuth();\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n \r\n \r\n\r\n \r\n {isScore && score && score !== ''\r\n ? `${parseFloat(score.replace(',', '.')).toString().replace('.', ',')}/${\r\n getContractCurrent().scoreOn\r\n }`\r\n : ''}\r\n \r\n {coef > 0 && (\r\n \r\n {coef}\r\n \r\n )}\r\n \r\n );\r\n};\r\nexport default StudyPlanChapterAverageList;\r\n","import { Box, styled } from '@mui/system';\r\nimport {\r\n StudyPlanChapter,\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemLearning,\r\n StudyPlanItemScoreType,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType\r\n} from '../../../../@types/pedagogy';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport useStudyPlanChapter from 'hooks/useStudyPlanChapter';\r\nimport { useEffect, useState } from 'react';\r\nimport StudyPlanChapterAverageList from './StudyPlanChapterAverageList';\r\nimport { Alert, Button, Collapse, Stack, Tab, Tabs, Typography } from '@mui/material';\r\nimport {\r\n CheckCircleOutlineRounded,\r\n CheckCircleRounded,\r\n HighlightOffRounded\r\n} from '@mui/icons-material';\r\n\r\nconst StyledTab = styled(Tab)(({ theme }) => ({\r\n color: theme.palette.primary.main,\r\n fontWeight: 700,\r\n fontSize: 13,\r\n '&.Mui-selected': {\r\n backgroundColor: '#6369FF14',\r\n margin: '10px',\r\n padding: '10px',\r\n borderRadius: 8\r\n }\r\n}));\r\n\r\ntype StudyPlanChapterAverageListProps = {\r\n chapters: Array;\r\n};\r\n\r\nconst StudyPlanChapterAverageListContainer = ({ chapters }: StudyPlanChapterAverageListProps) => {\r\n const [items, setItems] = useState>([]);\r\n const manager = useStudyPlanChapter();\r\n\r\n useEffect(() => {\r\n const itemsFilter = manager\r\n .getItems(chapters)\r\n ?.filter((i) => i.averageType !== StudyPlanItemScoreType.None);\r\n\r\n setItems(itemsFilter);\r\n }, [chapters]);\r\n\r\n const existInclude = items?.some((i) => i.averageType === StudyPlanItemScoreType.Include);\r\n\r\n const itemsIncludeDo = items?.filter((i) => i.averageType === StudyPlanItemScoreType.IncludeDo);\r\n const itemsExcludeDo = items?.filter((i) => i.averageType === StudyPlanItemScoreType.ExcludeDo);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\ntype TabsContainerProps = {\r\n itemsIncludeDo: Array;\r\n itemsExcludeDo: Array;\r\n existInclude: boolean;\r\n};\r\n\r\nconst TabsContainer = ({ itemsIncludeDo, itemsExcludeDo, existInclude }: TabsContainerProps) => {\r\n const [tabValue, setTabValue] = useState(0);\r\n\r\n const handleChange = (event: any, newValue: number) => {\r\n setTabValue(newValue);\r\n };\r\n\r\n return (\r\n \r\n \r\n Prises en compte ({itemsIncludeDo.length})} />\r\n {itemsExcludeDo.length > 0 && (\r\n Non prises en compte ({itemsExcludeDo.length})} />\r\n )}\r\n \r\n \r\n \r\n {!existInclude && itemsIncludeDo.length === 0 ? (\r\n \r\n Pour information \r\n Il n’y a pas d’évaluation obligatoire dans ce module.\r\n \r\n ) : (\r\n }\r\n />\r\n )}\r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default StudyPlanChapterAverageListContainer;\r\n","import { Card, DialogProps, Typography } from '@mui/material';\r\nimport { Dialog, DialogContent } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { DialogTitleWithClose } from 'components/DialogTitleWithClose';\r\nimport { ReactNode, useState } from 'react';\r\n\r\nimport { ScoreView } from '../ScoreView';\r\nimport { ScoreType, StudyPlanChapter } from '../../../../@types/pedagogy';\r\n\r\nimport StudyPlanChapterAverageListContainer from './StudyPlanChapterAverageListContainer';\r\n\r\ninterface StudyPlanChapterAverageDialogProps {\r\n children(handleOpen: () => void): any;\r\n name: string;\r\n chapters: Array;\r\n averageComponent?: ReactNode;\r\n}\r\n\r\nconst StudyPlanChapterAverageDialog = ({\r\n children,\r\n chapters,\r\n name,\r\n averageComponent\r\n}: StudyPlanChapterAverageDialogProps) => {\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n return (\r\n \r\n {children(handleOpen)}\r\n \r\n \r\n \r\n Seules les évaluations et évaluations e-learning obligatoires comptent dans la moyenne.\r\n \r\n \r\n\r\n \r\n {averageComponent}\r\n\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default StudyPlanChapterAverageDialog;\r\n","import { EventInput } from '@fullcalendar/common';\r\nimport { ListItemType } from './common';\r\nimport { MeetingType } from './meeting';\r\nimport { Material, Teacher } from './pedagogy';\r\nimport { SeminarStatus } from './seminar';\r\n\r\nexport type AgendaState = {\r\n isLoading: boolean;\r\n error: any;\r\n events: Array;\r\n materials: Array;\r\n isOpenModal: boolean;\r\n selectedEvent: null | AgendaEvent;\r\n selectedRange: null | { start: Date; end: Date };\r\n};\r\n\r\nexport enum SAYCalendarTypeView {\r\n Day = 0,\r\n Week = 1,\r\n Month = 2,\r\n List = 3\r\n}\r\n\r\nexport interface AgendaFilter {\r\n dateCurrent: Date;\r\n dateMax: Date;\r\n dateMin: Date;\r\n view: SAYCalendarTypeView;\r\n}\r\n\r\nexport interface AgendaEventListResponse {\r\n list: AgendaEvent[];\r\n materials: Array;\r\n result: AgendaEventListResult;\r\n}\r\n\r\nexport interface AgendaEventListRequest {\r\n dateStart: string;\r\n dateEnd: string;\r\n material: string;\r\n}\r\n\r\nexport enum AgendaEventListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface AgendaEventBase extends EventInput {\r\n id: string;\r\n title: string;\r\n start: Date | string;\r\n end: Date | string;\r\n color: string;\r\n allDay: boolean;\r\n}\r\n\r\nexport interface AgendaEvent extends AgendaEventBase {\r\n eventType: AgendaEventType;\r\n icon: string;\r\n metadatas: any;\r\n}\r\n\r\nexport interface AgendaScheduleTeacher {\r\n teacher: Teacher;\r\n timeSlots: Array;\r\n isVisio: boolean;\r\n isMeeting: boolean;\r\n material: Material;\r\n type: MeetingType;\r\n hourLimit: number;\r\n}\r\n\r\nexport interface AgendaHomework {\r\n id: number;\r\n courseId: string;\r\n barCode: string;\r\n observation: string;\r\n}\r\n\r\nexport interface AgendaTask {\r\n id: number;\r\n courseId: string;\r\n barCode: string;\r\n observation: string;\r\n isLocked: boolean;\r\n mediaId: number;\r\n url: string;\r\n label: string;\r\n}\r\n\r\nexport interface AgendaWorkshop {\r\n id: number;\r\n nomAtelier: string;\r\n idAtelier: number;\r\n nom: string;\r\n dateDebut: string;\r\n heureDebut: string;\r\n dateFin: string;\r\n heureFin: string;\r\n debutFin: string;\r\n nombreHeure: string;\r\n relativeDateString: string;\r\n nombreDePlacesMini: number;\r\n nombreDePlacesMaxi: number;\r\n nombreInscription: number;\r\n nombreDePlaceDisponibles: number;\r\n lieu: string;\r\n salle: string;\r\n statut: string;\r\n idStatut: number;\r\n co: number;\r\n}\r\n\r\nexport interface AgendaSeminar {\r\n state: SeminarStatus;\r\n countMaxPlaces: number;\r\n teacher: Teacher;\r\n registered: boolean;\r\n waitingList: boolean;\r\n countRegistered: number;\r\n isReplay: boolean;\r\n start: string;\r\n end: string;\r\n registeredId: number;\r\n}\r\n\r\nexport interface TimeSlot {\r\n id: number;\r\n dateStart: string;\r\n dateEnd: string;\r\n duration: number;\r\n visible: boolean;\r\n}\r\n\r\nexport enum AgendaEventType {\r\n ScheduleTeacher = 0,\r\n VirtualClass = 1,\r\n Workshop = 2,\r\n Homework = 3,\r\n Job = 4,\r\n Meeting = 5,\r\n Task = 6,\r\n HomeworkMandatory = 7,\r\n HomeworkNotMandatory = 8,\r\n Examens = 9,\r\n Internship = 10\r\n}\r\n\r\nexport enum ScheduleType {\r\n standard = 0,\r\n Mixte = 1,\r\n Oral = 2\r\n}\r\n","import Label from 'components/Label';\r\nimport { HomeworkStatus, HomeworkType } from '../../../@types/pedagogy';\r\n\r\nexport type HomeworkStatusRenderProps = {\r\n status?: HomeworkStatus;\r\n color?: any;\r\n type?: HomeworkType;\r\n};\r\n\r\nexport default function HomeworkStatusRender({\r\n status,\r\n color,\r\n type = HomeworkType.Standard\r\n}: HomeworkStatusRenderProps) {\r\n let label = '';\r\n switch (type) {\r\n case HomeworkType.EvaluationStage:\r\n label = 'Notation';\r\n return [HomeworkStatus.Corrected].includes(status!) ? (\r\n \r\n ) : (\r\n \r\n );\r\n\r\n break;\r\n case HomeworkType.ReportStage:\r\n label = 'Rapport de stage';\r\n break;\r\n case HomeworkType.eLearning:\r\n label = 'Évaluation e-learning';\r\n break;\r\n case HomeworkType.Voice:\r\n label = 'Évaluation orale';\r\n break;\r\n default:\r\n label = 'Évaluation';\r\n break;\r\n }\r\n\r\n switch (status) {\r\n case HomeworkStatus.Corrected:\r\n return ;\r\n case HomeworkStatus.Sended:\r\n case HomeworkStatus.Do:\r\n return ;\r\n case HomeworkStatus.InProgress:\r\n return ;\r\n case HomeworkStatus.Remade:\r\n return ;\r\n case HomeworkStatus.Rejected:\r\n return ;\r\n default:\r\n return ;\r\n }\r\n}\r\n\r\n/**\r\n * if (status === HomeworkStatus.Corrected)\r\n return ;\r\n\r\n if (status === HomeworkStatus.Sended || homework.status === HomeworkStatus.Do)\r\n return ;\r\n\r\n if (status === HomeworkStatus.InProgress) return ;\r\n\r\n if (status === HomeworkStatus.Remade)\r\n return ;\r\n\r\n if (status === HomeworkStatus.Rejected) {\r\n return ;\r\n }\r\n\r\n return ;\r\n */\r\n","import { useState } from 'react';\r\n\r\nimport { Verified } from '@mui/icons-material';\r\nimport { Button, Stack, Tooltip, Badge, Chip } from '@mui/material';\r\n\r\n//type\r\nimport { ButtonType } from '../../../../@types/common';\r\n//hook\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\n\r\n//compsant\r\nimport MIconButton from 'components/MIconButton';\r\nimport { MHidden } from 'components/@material-extend';\r\nimport SkillCardList from './SkillCardList';\r\nimport SkillDrawer from './SkillDrawer';\r\nimport useStudyPlanHomework from 'hooks/useStudyPlanHomework';\r\n\r\n//-----------------------------------------------------------\r\n\r\nexport type ChapterSummaryProps = {\r\n skillIds?: Array;\r\n buttonType?: ButtonType;\r\n};\r\n\r\n/**\r\n * Liste des compétences\r\n */\r\nexport default function SkillList({ skillIds = [], buttonType = 'button' }: ChapterSummaryProps) {\r\n const { skills } = useStudyPlan();\r\n const { getStudyPlanItemHomeworks } = useStudyPlanHomework();\r\n const homeworks = getStudyPlanItemHomeworks();\r\n const skillList = skills?.filter((s) => skillIds.includes(s.id) || skillIds.length === 0);\r\n\r\n //Gestion de l'ouverture du drawer\r\n const [open, setOpen] = useState(false);\r\n const handleClick = () => {\r\n setOpen(true);\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n return (\r\n <>\r\n {buttonType === 'button' && skillList?.length > 0 && (\r\n \r\n )}\r\n {buttonType === 'iconButton' && skillList?.length > 0 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {buttonType === 'chipButton' && skillList?.length > 0 && (\r\n }\r\n />\r\n )}\r\n\r\n {buttonType !== 'without' ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { SurveyRequest, SurveyResponse, SurveyResult } from '../../../@types/survey';\r\nimport { ReactNode, useCallback, useEffect, useState } from 'react';\r\nimport axiosInstance from 'utils/axios';\r\nimport SurveyCardInformation from './SurveyCardInformation';\r\nimport { Alert } from '@mui/material';\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\n\r\ninterface SurveyContainerProps {\r\n request: SurveyRequest;\r\n children: (state: SurveyResponse, isStepper: boolean) => ReactNode;\r\n}\r\n\r\nconst SurveyContainer = ({ request, children }: SurveyContainerProps) => {\r\n const [loading, setLoading] = useState(true);\r\n const [state, setState] = useState({\r\n fait: false,\r\n modeLecture: false,\r\n observation: '',\r\n titre: '',\r\n categoryList: [],\r\n result: SurveyResult.BadRequest,\r\n id: request.lisQue,\r\n appId: request.appId,\r\n appTyp: request.typApp\r\n });\r\n\r\n useEffect(() => {\r\n (async function getSurveyItemAsync() {\r\n try {\r\n setLoading(true);\r\n const response = await axiosInstance.post(`/api/survey/list`, request);\r\n const { result } = response.data;\r\n\r\n switch (result) {\r\n case SurveyResult.Success:\r\n setState(response.data);\r\n setLoading(false);\r\n break;\r\n case SurveyResult.CannotFindSurvey:\r\n setLoading(false);\r\n break;\r\n }\r\n } catch (error) {\r\n setLoading(false);\r\n }\r\n })();\r\n }, [request]);\r\n\r\n const isStepper = useCallback(() => {\r\n let is = false;\r\n state.categoryList.map((c) => {\r\n if (c.nextSteps !== null && c.nextSteps.length > 0) is = true;\r\n });\r\n\r\n return is;\r\n }, [request]);\r\n\r\n if (loading)\r\n return (\r\n <>\r\n \r\n \r\n );\r\n\r\n if (state.result !== SurveyResult.Success) {\r\n return (\r\n \r\n \r\n Nous rencontrons actuellement un problème, veuillez réessayer ultérieurement\r\n \r\n \r\n );\r\n }\r\n\r\n return <>{children(state, isStepper())};\r\n};\r\n\r\nexport default SurveyContainer;\r\n","//materials\r\nimport { Card, Box, Typography, List, Divider, ListSubheader } from '@mui/material';\r\nimport { styled } from '@mui/material/styles';\r\n\r\n//type\r\nimport { StudyPlanItem, StudyPlanChapter } from '../../../../@types/pedagogy';\r\nimport ChapterItemCard, { ChapterItemCardView } from './ChapterItemCard';\r\n\r\nimport { groupBy } from 'utils/collection';\r\nimport { ConstructionOutlined } from '@mui/icons-material';\r\n\r\n//-------------------------------------------------\r\nconst RootStyle = styled(Box)(({ theme }) => ({\r\n marginBottom: 0,\r\n backgroundColor: theme.palette.grey[100]\r\n}));\r\n\r\nconst TitleStyle = styled(Typography)(({ theme }) => ({\r\n padding: 5\r\n}));\r\n\r\nconst ListStyle = styled(List)(({ theme }) => ({\r\n padding: 0\r\n}));\r\n\r\n//-------------------------------------------------\r\n\r\nexport type ChapterItemGroupCardProps = {\r\n items: Array;\r\n subChapter?: StudyPlanChapter | null;\r\n viewItemCard?: ChapterItemCardView;\r\n};\r\n/**\r\n * Regroupement des items(médias,quiz,...) par label support\r\n * @param liste des (médias,quiz...)\r\n * @returns\r\n */\r\nexport default function ChapterItemGroupCard({\r\n items,\r\n subChapter,\r\n viewItemCard\r\n}: ChapterItemGroupCardProps) {\r\n return (\r\n <>\r\n \r\n \r\n {items.map((item: StudyPlanItem) => {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\n/**\r\n * {groupCourse.map((group: any) => {\r\n return (\r\n \r\n \r\n {items\r\n .filter((item) => item.reference === group.key)\r\n .map((item: StudyPlanItem) => {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n })}\r\n * \r\n * \r\n {group.key}\r\n\r\n \r\n {group.value.map((item: StudyPlanItem, index: number) => {\r\n return (\r\n \r\n \r\n console.log('')} />\r\n \r\n );\r\n })}\r\n \r\n \r\n */\r\n","import { useContext } from 'react';\r\nimport { SettingsContext } from '../contexts/SettingsContext';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst useSettings = () => useContext(SettingsContext);\r\n\r\nexport default useSettings;\r\n","import { Card, Typography, Button, Avatar, CardActions, Alert, TableCell } from '@mui/material';\r\nimport { Box, BoxProps, Stack } from '@mui/system';\r\nimport { useSurvey } from 'hooks/useSurvey';\r\nimport { useEffect, useState } from 'react';\r\nimport { ReactNode } from 'react-markdown/lib/react-markdown';\r\nimport { SurveyCategory, SurveyRequest, Survey, SurveyResponse } from '../../../@types/survey';\r\nimport { SurveyCategoryCard, SurveyCategoryCardTitle } from './SurveyCategoryCard';\r\nimport { SurveyInput } from './SurveyInput';\r\nimport { useSnackbar } from 'notistack';\r\nimport { dispatch } from 'redux/store';\r\nimport SkeletonLoadSingle from 'components/SkeletonLoadSingle';\r\nimport { useSurveyStepperStandard } from 'hooks/useSurveyStepperStandard';\r\nimport SurveyCardInformation from './SurveyCardInformation';\r\n\r\nexport type SurveyProps = {\r\n response: SurveyResponse;\r\n onClose?: () => void;\r\n};\r\n\r\n/**\r\n * Questionnaire par étape (sondage classe virtuelle)\r\n * @param param0\r\n * @returns\r\n */\r\nexport const SurveyStepperStandard = ({ response, onClose }: SurveyProps) => {\r\n const { enqueueSnackbar } = useSnackbar();\r\n const [start, setStart] = useState(false);\r\n const [saved, setSaved] = useState(false);\r\n\r\n const {\r\n categoryList,\r\n onChange,\r\n onChangeOption,\r\n onChangeOptionTextRep,\r\n onChangeChecked,\r\n save,\r\n isErrorSurveyItem,\r\n observation,\r\n title,\r\n fill,\r\n modeLecture,\r\n isCategoryError\r\n } = useSurvey({\r\n request: response,\r\n onMove: () => {}\r\n });\r\n\r\n const { activeStep, getCountStep, onStepBack, onStepNext, isLastStep } = useSurveyStepperStandard(\r\n response,\r\n categoryList\r\n );\r\n\r\n const handleStart = () => {\r\n setStart(true);\r\n };\r\n /*\r\n useEffect(() => {\r\n if (start) onLoad && onLoad(title);\r\n }, [start]);\r\n\r\n if (errorLoading)\r\n return (\r\n \r\n \r\n Nous rencontrons actuellement un problème, veuillez réessayer ultérieurement\r\n \r\n \r\n );\r\n\r\n if ((categoryList === null || categoryList.length === 0) && !errorLoading) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }*/\r\n\r\n if (!modeLecture && (fill || saved))\r\n return (\r\n \r\n \r\n {saved\r\n ? \"Merci d'avoir répondu au questionaire\"\r\n : 'Vous avez déja répondu au questionnaire'}\r\n \r\n \r\n );\r\n\r\n if (!start && (!modeLecture || !fill)) {\r\n return (\r\n \r\n Dites-nous tout !\r\n \r\n Nous vous remercions de prendre quelques minutes pour nous transmettre vos réponses.\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n const handleSave = () => {\r\n if (modeLecture) {\r\n enqueueSnackbar('Mode lecture activé. Vous ne pouvez pas enregistrer', {\r\n variant: 'warning'\r\n });\r\n return;\r\n }\r\n\r\n dispatch(\r\n save()(() => {\r\n //enregistrement\r\n enqueueSnackbar(\"Merci d'avoir renseigner le questionnaire\", { variant: 'success' });\r\n setSaved(true);\r\n onClose && onClose();\r\n })(() => {\r\n enqueueSnackbar(\r\n 'Nous rencontrons actuellement un problème, veuillez réessayer ultérieurement',\r\n { variant: 'error' }\r\n );\r\n })\r\n );\r\n };\r\n\r\n const isErrorCategory = isCategoryError(categoryList[activeStep]);\r\n\r\n return (\r\n \r\n {categoryList?.map((c, i) => {\r\n if (i !== activeStep) return ;\r\n return (\r\n \r\n {(survey, isRegroupement, index) => {\r\n return (\r\n \r\n onChange(c.id, survey.id, value)}\r\n onChangeOption={(value: string) => onChangeOption(c.id, survey.id, value)}\r\n onChangeOptionText={(id: string, value: string) =>\r\n onChangeOptionTextRep(c.id, survey.id, id, value)\r\n }\r\n onChangeChecked={(value: string, checked: boolean) =>\r\n onChangeChecked(c.id, survey.id, value, checked)\r\n }\r\n onValid={(is: boolean) => {}}\r\n />\r\n \r\n );\r\n }}\r\n \r\n );\r\n })}\r\n \r\n \r\n\r\n {isLastStep() && (\r\n \r\n )}\r\n\r\n {!isLastStep() && (\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\ninterface ContainerInputProps extends BoxProps {\r\n survey: Survey;\r\n isRegroupement: boolean;\r\n index: number;\r\n}\r\nexport const ContainerInput = ({\r\n survey,\r\n isRegroupement,\r\n index,\r\n children\r\n}: ContainerInputProps) => {\r\n if (isRegroupement) return <>{children};\r\n\r\n return (\r\n \r\n \r\n {children}\r\n \r\n );\r\n};\r\n","import { useCallback, useEffect, useState } from 'react';\r\nimport { SurveyResponse, SurveyCategory, Survey, ISurveyCategoryNext } from '../@types/survey';\r\n\r\n/**\r\n * Gestion du questionnaire en mode etape\r\n * @returns\r\n */\r\nexport const useSurveyStepperStandard = (\r\n request: SurveyResponse,\r\n categoryList: Array\r\n) => {\r\n const [activeStep, setActiveStep] = useState(0);\r\n const [steps, setSteps] = useState>([]);\r\n\r\n useEffect(() => {\r\n setActiveStep(0);\r\n }, [request]);\r\n\r\n const onStepNext = () => {\r\n setSteps((arr) => [...arr, activeStep]);\r\n getNextStep();\r\n };\r\n\r\n const onStepBack = () => {\r\n setActiveStep(steps.pop() || 0);\r\n };\r\n\r\n const getCountStep = () => {\r\n return categoryList.reduce(\r\n (accumulateur, valeurCourante) => accumulateur + valeurCourante.surveyList.length,\r\n 0\r\n );\r\n };\r\n\r\n const isLastStep = useCallback(() => {\r\n let isLastStep = false;\r\n if (categoryList) {\r\n findNextStep((step: number) => {\r\n isLastStep = step === -1 ? true : false;\r\n });\r\n }\r\n return isLastStep;\r\n }, [categoryList, activeStep]);\r\n\r\n const getNextStep = () => {\r\n findNextStep((step: number) => {\r\n const stepIndex = categoryList.findIndex((c) => c.id === step);\r\n if (stepIndex > 0) setActiveStep(stepIndex);\r\n });\r\n };\r\n\r\n const findNextStep = (fnCallback: (categoryId: number) => void) => {\r\n const current = categoryList[activeStep];\r\n\r\n if (current.nextSteps) {\r\n current.nextSteps.map((stepNext: ISurveyCategoryNext) => {\r\n if (stepNext.conditions) {\r\n return stepNext.conditions.map((c) => {\r\n const question = current.surveyList.find((q) => q.id === c.idQuestion);\r\n if (question?.optionList[c.index].checked === c.value) {\r\n return fnCallback(stepNext.step);\r\n }\r\n });\r\n } else {\r\n return fnCallback(stepNext.step);\r\n }\r\n });\r\n } else return fnCallback(-1);\r\n };\r\n\r\n const getSurveyStep = () => {\r\n let surveys: Array = [];\r\n categoryList.map((s, index) => s.surveyList.map((survey) => surveys.push(survey)));\r\n return surveys[activeStep];\r\n };\r\n\r\n return {\r\n categoryList,\r\n activeStep,\r\n isLastStep,\r\n getCountStep,\r\n onStepBack,\r\n onStepNext,\r\n getSurveyStep\r\n };\r\n};\r\n","export interface PageTemplateResponse {\r\n page: PageTemplate;\r\n result: PageTemplateResult;\r\n}\r\n\r\nexport type PageTemplateState = {\r\n isLoading: boolean;\r\n error: any;\r\n templates: Array;\r\n template: PageTemplate | null;\r\n};\r\n\r\nexport enum PageTemplateType {\r\n MentionLegal = 1,\r\n Contact = 2\r\n}\r\n\r\nexport interface PageTemplate {\r\n id: number;\r\n name: string;\r\n details: PageTemplateDetail[];\r\n}\r\n\r\nexport interface PageTemplateDetail {\r\n row: number;\r\n title: string;\r\n content: string;\r\n}\r\n\r\nexport enum PageTemplateResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { dispatch } from '../store';\r\nimport { Contract } from '../../@types/contract';\r\nimport { StudentResponse, StudentResult, StudentState } from '../../@types/account';\r\nimport axios from 'axios';\r\nimport axiosInstance from 'utils/axios';\r\n\r\n/*\r\nCAS PARTICULIER DES LANDING PAGE\r\nPOUR ISOLER LES TRAITEMENTS\r\n*/\r\n\r\nconst initialState: StudentState = {\r\n isLoading: false,\r\n error: false,\r\n student: null,\r\n contract: null,\r\n token: ''\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'student',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n state.student = null;\r\n state.contract = null;\r\n state.token = '';\r\n },\r\n\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n getStudent(state, action) {\r\n state.isLoading = false;\r\n state.student = action.payload.student;\r\n state.contract = action.payload.student.contracts?.filter(\r\n (c: Contract) => c.current\r\n )[0] as Contract;\r\n state.token = action.payload.token;\r\n },\r\n clearData(state, action) {\r\n state.student = null;\r\n state.contract = null;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getStudent(token: string) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n // le token est passé exclusivement dans l'appel. NE PAS LE METTRE DANS LA SESSION STORAGE\r\n const response = await axiosInstance.get('/api/student/informations', {\r\n headers: { authorization: `Bearer ${token}` }\r\n });\r\n const { result, student } = response.data;\r\n\r\n switch (result) {\r\n case StudentResult.Success:\r\n dispatch(slice.actions.getStudent({ student: student, token: token }));\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError(true));\r\n break;\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n\r\n dispatch(slice.actions.hasError(true));\r\n }\r\n };\r\n}\r\n\r\nexport const resizeAvatar =\r\n (file: any) => (onSuccess: (files: Array) => void) => (onError: () => void) => {\r\n return async () => {\r\n try {\r\n //preparation au file\r\n const formData = new FormData();\r\n formData.append('file', file);\r\n //post direct\r\n const response = await axiosInstance.post('/api/file/images/resize', formData, {\r\n headers: { 'Content-Type': 'multipart/form-data', writeOnly: true }\r\n });\r\n\r\n onSuccess(response.data);\r\n } catch (error) {\r\n onError();\r\n }\r\n };\r\n };\r\n","import { Alert, AlertProps, Typography } from '@mui/material';\r\nimport { ModeAccess } from '../@types/account';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { ReactNode } from 'react';\r\n\r\ninterface AlertErrorMessageProps extends AlertProps {}\r\n\r\nexport default function AlertErrorMessage({ children, sx }: AlertErrorMessageProps) {\r\n const { student } = useAuth();\r\n\r\n const isLocked = [ModeAccess.Read, ModeAccess.Control].includes(student?.modeAccess);\r\n\r\n return (\r\n \r\n {isLocked ? (\r\n Fonctionnalité non accessible en mode lecture\r\n ) : (\r\n children\r\n )}\r\n \r\n );\r\n}\r\n","import { InfoOutlined } from '@mui/icons-material';\r\nimport { Stack, Tooltip } from '@mui/material';\r\nimport Label from 'components/Label';\r\n\r\nexport default function HomeworkMandatoryRender({ mandatory = false }) {\r\n return mandatory ? (\r\n <>\r\n ) : (\r\n \r\n );\r\n}\r\n","import { Box } from '@mui/system';\r\nimport { Epreuve, Examen, ExamenFichier, StatutEpreuve } from '../../../@types/examen';\r\nimport { UserType } from '../../../@types/common';\r\nimport { useFormikContext } from 'formik';\r\n\r\nimport { UploadMultiFile } from 'components/upload';\r\n\r\nimport { Button, Divider, FormHelperText, Typography } from '@mui/material';\r\n\r\nimport FileDetailsAttachments from 'components/file/FileDetailsAttachments';\r\nimport { ControllerField } from 'components/FormikInput';\r\n\r\n/**\r\n * Gestion des fichiers joints\r\n * @param props\r\n * @returns\r\n */\r\nexport default function ExamenFormDocument(props: any) {\r\n const { onChange, files, type, statutsEpreuve, children } = props;\r\n const { values, setValues, touched, errors } = useFormikContext();\r\n\r\n /**\r\n * Ajouter un fichier\r\n * @param type\r\n * @param acceptedFiles\r\n */\r\n const handleDrop = (acceptedFiles: any) => {\r\n const idCurrent = values.session.fichiers.length + 1;\r\n\r\n setValues({\r\n ...values,\r\n session: {\r\n ...values.session,\r\n fichiers: [\r\n ...values.session.fichiers,\r\n ...acceptedFiles.map((file: any | string, index: number) => {\r\n return {\r\n nom: file.name,\r\n id: -(idCurrent + index),\r\n taille: file.size,\r\n type: type,\r\n nomDisk: '',\r\n typeMime: file.type,\r\n file: file\r\n };\r\n })\r\n ]\r\n }\r\n });\r\n //Recupérer le fichier physique\r\n onChange([...files, acceptedFiles.map((file: any | string) => file)]);\r\n };\r\n\r\n /**\r\n * Supprimer le fichier\r\n * @param type\r\n * @param file\r\n */\r\n const handleRemove = (file: any) => {\r\n setValues({\r\n ...values,\r\n session: {\r\n ...values.session,\r\n fichiers: [...values.session.fichiers.filter((f) => f.id !== file)]\r\n }\r\n });\r\n //supprimer le fichier physique\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n \r\n\r\n {Boolean(touched.session?.fichiers && errors.session?.fichiers) && (\r\n {errors.session?.fichiers}\r\n )}\r\n handleRemove(file)}\r\n files={values.session.fichiers\r\n .filter((f) => f.type === type)\r\n .map((f: ExamenFichier) => {\r\n return {\r\n id: f.id,\r\n fileName: f.nom,\r\n fileType: 1,\r\n size: '',\r\n userType: UserType.Student,\r\n metadatas: { id: f.id, observation: '', typFicMed: 1, url: '' }\r\n };\r\n })}\r\n />\r\n \r\n \r\n );\r\n}\r\n","import { Typography } from '@mui/material';\r\nimport { MessageAddResult } from '../../../@types/message';\r\nimport { RowItemDisplayAlert } from 'components/RowListItem';\r\nimport { fDateMeeting } from 'utils/formatTime';\r\nimport { ModeAccess } from '../../../@types/account';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\nexport type MessageErrorMsg = {\r\n error: MessageAddResult;\r\n};\r\n\r\nexport default function MessageErrorMsg({ error }: MessageErrorMsg) {\r\n let message: string = 'Nous ne pouvons pas donner suite à cette demande';\r\n switch (error) {\r\n case MessageAddResult.TitleIsRequired:\r\n message = 'Le titre est obligatoire';\r\n break;\r\n case MessageAddResult.ObservationIsRequired:\r\n message = \"L'observation est obligatoire\";\r\n break;\r\n case MessageAddResult.ServiceIsRequired:\r\n message = 'Le service est obligatoire';\r\n break;\r\n case MessageAddResult.SubjectIsRequed:\r\n message = `le sujet est obligatoire`;\r\n break;\r\n\r\n case MessageAddResult.files:\r\n message = 'Les fichiers ne respectent pas les extensions requises';\r\n break;\r\n }\r\n\r\n return (\r\n \r\n {message}\r\n \r\n );\r\n}\r\n","import * as Yup from 'yup';\r\nimport { useCallback, useEffect, useState } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\nimport { useFormik, Form, FormikProvider } from 'formik';\r\n// material\r\nimport { LoadingButton } from '@mui/lab';\r\nimport { styled } from '@mui/material/styles';\r\nimport {\r\n Button,\r\n TextField,\r\n Typography,\r\n FormHelperText,\r\n List,\r\n DialogActions,\r\n MenuItem,\r\n ListItem,\r\n Avatar,\r\n Stack,\r\n Divider,\r\n InputAdornment,\r\n Alert,\r\n Collapse\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { Attachment } from '@mui/icons-material';\r\n// utils\r\n\r\n// @types\r\nimport { MessageAddResult, Question, Service, SubjectModel } from '../../../@types/message';\r\nimport { ModuleType } from '../../../@types/contract';\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { addQuestion } from 'redux/slices/message';\r\n\r\n//composants\r\nimport { RowItem, RowItemDisplay, RowItemDisplayTitle } from 'components/RowListItem';\r\n\r\nimport { UploadMultiFile } from 'components/upload';\r\n\r\nimport MessageErrorMsg from 'components/_dashboard/message/MessageErrorMsg';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport useAuth from 'hooks/useAuth';\r\nimport Markdown from 'components/Markdown';\r\nimport useModuleAuthorize from 'hooks/useModuleAuthorize';\r\nimport ModuleNotAuthorized from 'components/ModuleNotAuthorized';\r\nimport useServices from 'hooks/useServices';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst LabelStyle = styled(Typography)(({ theme }) => ({\r\n ...theme.typography.subtitle2,\r\n color: theme.palette.text.secondary,\r\n marginBottom: theme.spacing(1)\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\nexport type MessageFormParams = {\r\n reference: string;\r\n serviceId: string;\r\n subjectId: string;\r\n pro: string;\r\n subjects?: Array;\r\n services?: Array;\r\n descriptionServices?: string;\r\n};\r\n\r\nexport type MessageFormProps = {\r\n params?: MessageFormParams;\r\n onCancel: () => void;\r\n};\r\n\r\nexport default function MessageForm({\r\n params = { subjectId: '', serviceId: '', pro: '', reference: '', subjects: [] },\r\n onCancel\r\n}: MessageFormProps) {\r\n const { authorizedModule, getContractCurrent } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.QuestionUpdate, ModuleType.QuestionUpdateFilter]\r\n });\r\n\r\n const { isLoading, error } = useSelector((state: RootState) => state.message);\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const { servicesFiltered } = useServices();\r\n\r\n const MessageFormSchema = Yup.object().shape({\r\n title: Yup.string().trim().required(\"L'objet est obligatoire\"),\r\n description: Yup.string().trim().required('La description est obligatoire'),\r\n reference: Yup.string(),\r\n pro: Yup.string(),\r\n serviceId: Yup.string().required('Le service est obligatoire'),\r\n subjectId: Yup.string().required('Le sujet est obligatoire'),\r\n files: Yup.array()\r\n });\r\n\r\n const formik = useFormik({\r\n initialValues: {\r\n title: '',\r\n description: '',\r\n reference: params?.reference,\r\n pro: params?.pro,\r\n serviceId: params?.serviceId,\r\n subjectId: params?.subjectId,\r\n files: []\r\n },\r\n validationSchema: MessageFormSchema,\r\n onSubmit: async (values, { setSubmitting, resetForm }) => {\r\n try {\r\n /**Particularite => le service est le theme quand on a le choix du sujet\r\n * Il faut retrouver le service sur le sujet\r\n */\r\n if (params.subjects && params.subjects?.length > 0) {\r\n const subject = params.subjects?.find((s) => s.key === values.subjectId);\r\n const themeId = values.serviceId;\r\n if (subject) {\r\n Object.assign(values, {\r\n serviceId: subject.keyService,\r\n themeId: themeId\r\n });\r\n }\r\n }\r\n\r\n dispatch(\r\n addQuestion(values)((question: Question) => {\r\n onCancel();\r\n setSubmitting(false);\r\n enqueueSnackbar('Votre question a été enregistrée', { variant: 'success' });\r\n })\r\n );\r\n } catch (error) {\r\n console.error(error);\r\n setSubmitting(false);\r\n }\r\n }\r\n });\r\n\r\n const { errors, values, touched, handleSubmit, isSubmitting, setFieldValue, getFieldProps } =\r\n formik;\r\n\r\n const handleDrop = useCallback(\r\n (acceptedFiles) => {\r\n setFieldValue(\r\n 'files',\r\n acceptedFiles.map((file: File) =>\r\n Object.assign(file, {\r\n preview: URL.createObjectURL(file)\r\n })\r\n )\r\n );\r\n },\r\n [setFieldValue]\r\n );\r\n\r\n const handleChangeService = (e: any) => {\r\n const serviceCurrent = params.services?.filter((s) => s.key === e.target.value)[0];\r\n setFieldValue('serviceId', serviceCurrent?.key);\r\n setFieldValue('subjectId', '');\r\n params.subjects = serviceCurrent?.subjects;\r\n if (params.subjects?.length === 1) setFieldValue('subjectId', params.subjects[0].key);\r\n };\r\n\r\n const handleRemoveAll = () => {\r\n setFieldValue('images', []);\r\n };\r\n\r\n const handleRemove = (file: File | string) => {\r\n const filteredItems = values.files.filter((_file) => _file !== file);\r\n setFieldValue('files', filteredItems);\r\n };\r\n\r\n //trier les sujets\r\n //Fix : filtre pour éviter que deux sujets soit liés au même theme (key identique : on conserve le premier sujet)\r\n const sortedSubjects = params.subjects?.filter(\r\n (sub: SubjectModel, idx: number) =>\r\n params.subjects && params.subjects.findIndex((e) => e.key === sub.key) === idx\r\n ); //?.slice().sort((a, b) => (b.label > a.label ? -1 : 1));\r\n\r\n const observationTheme = params.services?.find((s) => s.key === values.serviceId)?.description;\r\n\r\n const observationSubject = params.subjects?.find((s) => s.key === values.subjectId)?.observation;\r\n\r\n if (!authorizedModule) return ;\r\n\r\n return (\r\n \r\n
    \r\n \r\n \r\n \r\n {servicesFiltered?.length > 0 && // Hotfix pour la Suisse\r\n params.serviceId === '' && (\r\n \r\n {servicesFiltered.map((service: Service) => {\r\n return (\r\n \r\n \r\n {' '}\r\n \r\n {service.label}\r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n }\r\n subTitle={\r\n <>{observationTheme && }\r\n }\r\n >\r\n )}\r\n\r\n {params.descriptionServices && (\r\n \r\n )}\r\n\r\n {params.subjects?.length! > 0 && (\r\n \r\n {sortedSubjects?.map((subject) => {\r\n return (\r\n \r\n {subject.label}\r\n \r\n );\r\n })}\r\n \r\n }\r\n subTitle={\r\n <>\r\n {observationSubject && }\r\n \r\n }\r\n >\r\n )}\r\n\r\n \r\n }\r\n >\r\n\r\n \r\n }\r\n >\r\n\r\n } title=\"Joindre des fichiers\">\r\n \r\n Vous pouvez ajouter jusqu'à 5 fichiers maximum (pdf, image) pour un total de 5Mo\r\n maximum.\r\n \r\n \r\n {touched.files && errors.files && (\r\n \r\n {touched.files && errors.files}\r\n \r\n )}\r\n \r\n {error && }\r\n \r\n \r\n \r\n \r\n \r\n \r\n Envoyer\r\n \r\n \r\n \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nfunction AlertDescription({ description }: { description?: string | null }) {\r\n const [open, setOpen] = useState(true);\r\n\r\n useEffect(() => {\r\n setOpen(true);\r\n }, [description]);\r\n\r\n if (!description || description === '') return <>;\r\n\r\n return (\r\n \r\n setOpen(false)}>\r\n ')} />\r\n \r\n \r\n );\r\n}\r\n","// ----------------------------------------------------------------------\r\n\r\nimport { Contract, ContractAuthorize } from './contract';\r\n\r\nexport type User = {\r\n id: string;\r\n displayName: string;\r\n email: string;\r\n password: string;\r\n photoURL: File | any;\r\n phoneNumber: string | null;\r\n country: string | null;\r\n city: string | null;\r\n state: string | null;\r\n zipCode: string | null;\r\n isPublic: boolean;\r\n address: string | null;\r\n about: string | null;\r\n role: string | null;\r\n};\r\n\r\nexport type StudentForm = {\r\n email: string;\r\n photoURL: File | any;\r\n phoneNumber: string | null;\r\n phoneNumber2: string | null;\r\n country: string | null;\r\n wayName: string | null;\r\n wayNumber: string | null;\r\n complement: string | null;\r\n pointOfDelivery: string | null;\r\n placeSaid: string | null;\r\n recipient: string | null;\r\n city: string | null;\r\n zipCode: string | null;\r\n isPublic: boolean;\r\n};\r\n\r\nexport interface StudentResponse {\r\n result: StudentResult;\r\n student: Student;\r\n authorize: ContractAuthorize;\r\n}\r\n\r\nexport enum ModeAccess {\r\n Write = 0,\r\n Read = 1,\r\n Control = 2,\r\n Survey = 5,\r\n SurveyRead = 6\r\n}\r\n\r\nexport enum StudentResult {\r\n NotFound = 0,\r\n Success = 1,\r\n unAuthorized = 2,\r\n Reconnected = 3\r\n}\r\n\r\nexport type Student = {\r\n civilityId: string;\r\n id: number;\r\n name: string;\r\n lastName: string;\r\n firstName: string;\r\n birthDate?: Date;\r\n birthPlace: string;\r\n email: string;\r\n phone1: string;\r\n phone2: string;\r\n addressPrincipalId: number;\r\n addressId: number;\r\n notification: Notification;\r\n address: Address;\r\n contracts: Contract[];\r\n avatarUrl: string;\r\n modeAccess: ModeAccess;\r\n dateTimeServer: Date;\r\n config: StudentConfig;\r\n availability: Array;\r\n};\r\n\r\nexport interface StudentConfig {\r\n notDisplayWelcomeCall: boolean;\r\n NotDisplayMessageHelp: boolean;\r\n settings: string;\r\n}\r\n\r\nexport type Notification = {\r\n lesson: boolean;\r\n question: boolean;\r\n virtualClass: boolean;\r\n homework: boolean;\r\n actuality: boolean;\r\n workshop: boolean;\r\n job: boolean;\r\n};\r\nexport type Address = {\r\n complement: string;\r\n pointOfDelivery: string;\r\n placeSaid: string;\r\n recipient: string;\r\n nativeCountry: string;\r\n wayName: string;\r\n wayNumber: string;\r\n postalCode: string;\r\n city: string;\r\n countryCode: string;\r\n countryName: string;\r\n department: string;\r\n zoneGeographic: string;\r\n};\r\n\r\nexport type StudentUpdateResponse = {\r\n result: StudentUpdateResult;\r\n message: string;\r\n};\r\n\r\nexport type StudentUpdateRequest = {\r\n action: StudentUpdateAction;\r\n student: Student;\r\n passwordCurrent: string;\r\n passwordNew: string;\r\n availability: string;\r\n};\r\n\r\nexport enum StudentUpdateAction {\r\n None = 0,\r\n AddressPhone = 1,\r\n NotificationEmail = 2,\r\n Password = 3,\r\n AddressPhoneEmail = 4,\r\n Availability = 5\r\n}\r\n\r\nexport enum StudentUpdateResult {\r\n None = 0,\r\n Success = 1,\r\n Error = 3,\r\n EmailInvalid = 4,\r\n PasswordError = 5,\r\n PasswordIsRequired = 6,\r\n AddressError = 7,\r\n PasswordInvalid = 8,\r\n PasswordOldIncorrect = 9\r\n}\r\n\r\nexport type StudentContext = {\r\n id: number;\r\n contractId: number;\r\n amendmentId: number;\r\n brandId: string;\r\n};\r\n\r\nexport interface StudentChangePasswordRequest {\r\n passwordNew: string;\r\n passwordConfirm: string;\r\n}\r\n\r\nexport interface StudentChangePasswordResponse {\r\n result: StudentChangePasswordResult;\r\n message: string;\r\n}\r\n\r\nexport enum StudentChangePasswordResult {\r\n Success = 1,\r\n Error = 2,\r\n PasswordIsRequired = 3,\r\n PasswordInvalid = 6,\r\n PasswordError = 4,\r\n TimeOut = 5\r\n}\r\n\r\nexport interface StudentSignInResponse {\r\n result: StudentSignInResult;\r\n student: StudentContext;\r\n token: string;\r\n}\r\n\r\nexport interface StudentSignInRequest {\r\n contractId: number;\r\n password: string;\r\n}\r\n\r\nexport enum StudentSignInResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\nexport interface StudentPasswordResponse {\r\n result: StudentPasswordResult;\r\n}\r\n\r\nexport interface StudentPasswordRequest {\r\n email: string;\r\n}\r\n\r\nexport enum StudentPasswordResult {\r\n NotFound = 0,\r\n Success = 1,\r\n EmailIncorrect = 2,\r\n Error = 4\r\n}\r\n\r\nexport interface StudentState {\r\n isLoading: boolean;\r\n error: boolean;\r\n student: Student | null;\r\n contract: Contract | null;\r\n token: string;\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { dispatch } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\nimport {\r\n PageTemplateResponse,\r\n PageTemplateResult,\r\n PageTemplateState,\r\n PageTemplateType\r\n} from '../../@types/pageTemplateModel';\r\n// @types\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: PageTemplateState = {\r\n isLoading: false,\r\n error: false,\r\n templates: [],\r\n template: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'pageTemplate',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n getPageTemplatesSuccess(state, action) {\r\n state.isLoading = false;\r\n state.templates = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getPageTemplates(type: PageTemplateType) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get(`/api/settings/page/${type}`);\r\n const { result, page } = response.data;\r\n switch (result) {\r\n case PageTemplateResult.Success:\r\n dispatch(slice.actions.getPageTemplatesSuccess([page]));\r\n break;\r\n default:\r\n dispatch(slice.actions.endLoading());\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n","import { ReactNode, createContext, useState, useEffect } from 'react';\r\nimport {\r\n HubConnection,\r\n HubConnectionBuilder,\r\n IHttpConnectionOptions,\r\n LogLevel,\r\n HttpTransportType,\r\n HubConnectionState\r\n} from '@microsoft/signalr';\r\nimport { apiConfig, signalRConfig } from 'config';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface IHubContext {\r\n methode(methodName: string, ...args: any[]): Promise;\r\n error: any;\r\n connect: () => void;\r\n disConnect: () => void;\r\n connection?: HubConnection | null;\r\n}\r\n\r\nconst HubContext = createContext(null);\r\n\r\ntype HubContextProviderProps = {\r\n children: ReactNode;\r\n};\r\n\r\nfunction HubContextProvider({ children }: HubContextProviderProps) {\r\n const [connection, setConnection] = useState();\r\n const [connectionState, setConnectionState] = useState();\r\n const [isStarted, setIsStarted] = useState(false);\r\n const [error, setError] = useState();\r\n\r\n useEffect(() => {\r\n load();\r\n return () => {\r\n //deconnection\r\n if (connection && connection.connectionId != null) connection.stop();\r\n };\r\n }, []);\r\n\r\n /**\r\n * permet de se reconnecter automatiquement sur F5\r\n */\r\n useEffect(() => {\r\n if (connection === null) return;\r\n _connect();\r\n }, [connection]);\r\n\r\n const load = () => {\r\n if (!signalRConfig.activate) return;\r\n\r\n const token = localStorage.getItem('accessToken') || '';\r\n\r\n if (token === '') return;\r\n\r\n // connexion au studentHub : centre d'events liés à l'élève\r\n // les informations sont capturées coté serveur\r\n var url: string = `${apiConfig.urlBase}/studenthub`;\r\n\r\n const options: IHttpConnectionOptions = {\r\n accessTokenFactory: () => token,\r\n transport: HttpTransportType.WebSockets,\r\n skipNegotiation: true\r\n };\r\n try {\r\n const newConnection = new HubConnectionBuilder()\r\n .withUrl(url, options) //transport signalR : websocket ou pooling\r\n .withAutomaticReconnect() // .configureLogging(LogLevel.Trace)\r\n .configureLogging(LogLevel.None)\r\n .build(); //\r\n\r\n //ecoutes les events suivants\r\n newConnection.onreconnecting((error) => {\r\n setConnectionState(HubConnectionState.Disconnecting);\r\n });\r\n\r\n newConnection.onclose((error) => {\r\n setConnectionState(HubConnectionState.Disconnected);\r\n });\r\n\r\n newConnection.onreconnected((error) => {\r\n setConnectionState(HubConnectionState.Connected);\r\n });\r\n\r\n setConnection(newConnection);\r\n } catch (ex) {\r\n console.log('errorConnectedHub');\r\n }\r\n };\r\n\r\n const _connect = () => {\r\n if (!connection) load();\r\n\r\n if (!connection || connection?.state === HubConnectionState.Connected) return;\r\n\r\n if (connection) {\r\n //console.log('connection', connection.connectionId, connection);\r\n connection\r\n .start()\r\n .then(function (value: any) {\r\n setConnectionState(HubConnectionState.Connected);\r\n setIsStarted(true);\r\n })\r\n .catch(function (err: any) {\r\n if (isStarted) {\r\n // la connection a deja eu lieu : il faut faire un refresh général pour avoir la page de login\r\n setError('reload');\r\n }\r\n return console.error(err.toString());\r\n });\r\n }\r\n };\r\n\r\n //Connection standard\r\n const connect = () => {\r\n _connect();\r\n };\r\n\r\n const deconnect = () => {\r\n connection?.stop();\r\n\r\n setConnection(null);\r\n };\r\n\r\n /**\r\n * Envoyer au serveur les données\r\n * @param methodName : Nom de la méthode\r\n * @param args : parameters\r\n * @returns\r\n */\r\n async function methode(methodName: string, ...args: any[]) {\r\n if (connection && connection.state === HubConnectionState.Connected) {\r\n try {\r\n return await connection?.invoke(methodName, ...args);\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport { HubContextProvider, HubContext };\r\n","import { FormikProps } from 'formik';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport type InitialValues = {\r\n name: string;\r\n phone: string;\r\n email: string;\r\n address: string;\r\n subscription?: string;\r\n isMonthly?: boolean;\r\n method?: string;\r\n card?: string;\r\n newCardName?: string;\r\n newCardNumber?: string;\r\n newCardExpired?: string;\r\n newCardCvv?: string;\r\n};\r\n\r\nexport type PaymentFormikProps = FormikProps;\r\n\r\nexport interface PaymentAddResponse {\r\n result: PaymentAddResult;\r\n content: string;\r\n errorDescription: string;\r\n}\r\n\r\nexport enum PaymentAddResult {\r\n Error = 0,\r\n Success = 1\r\n}\r\n\r\nexport enum PaymentStatus {\r\n Current = 0,\r\n Accepted = 1,\r\n Rejected = 2\r\n}\r\n","import { ReactNode, createContext, useEffect } from 'react';\r\n// hooks\r\nimport useLocalStorage from '../hooks/useLocalStorage';\r\n// theme\r\nimport palette from '../theme/palette';\r\n// @type\r\nimport { ThemeMode, ThemeDirection, ThemeColor, SettingsContextProps } from '../@types/settings';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst PRIMARY_COLOR = [\r\n // DEFAULT\r\n {\r\n name: 'default',\r\n ...palette.light.primary\r\n },\r\n // PURPLE\r\n {\r\n name: 'purple',\r\n lighter: '#EBD6FD',\r\n light: '#B985F4',\r\n main: '#7635dc',\r\n dark: '#431A9E',\r\n darker: '#200A69',\r\n contrastText: '#fff'\r\n },\r\n // CYAN\r\n {\r\n name: 'cyan',\r\n lighter: '#D1FFFC',\r\n light: '#76F2FF',\r\n main: '#1CCAFF',\r\n dark: '#0E77B7',\r\n darker: '#053D7A',\r\n contrastText: palette.light.grey[800]\r\n },\r\n // BLUE\r\n {\r\n name: 'blue',\r\n lighter: '#CCDFFF',\r\n light: '#6697FF',\r\n main: '#6369FF',\r\n dark: '#0027B7',\r\n darker: '#00137A',\r\n contrastText: '#fff'\r\n },\r\n // ORANGE\r\n {\r\n name: 'orange',\r\n lighter: '#FEF4D4',\r\n light: '#FED680',\r\n main: '#fda92d',\r\n dark: '#B66816',\r\n darker: '#793908',\r\n contrastText: palette.light.grey[800]\r\n },\r\n // RED\r\n {\r\n name: 'red',\r\n lighter: '#FFE3D5',\r\n light: '#FFC1AC',\r\n main: '#FF3030',\r\n dark: '#B71833',\r\n darker: '#7A0930',\r\n contrastText: '#fff'\r\n }\r\n];\r\n\r\nfunction SetColor(themeColor: ThemeColor) {\r\n return PRIMARY_COLOR[3];\r\n}\r\n\r\nconst initialState: SettingsContextProps = {\r\n themeMode: 'light',\r\n themeDirection: 'ltr',\r\n themeColor: 'default',\r\n themeStretch: false,\r\n onChangeMode: () => {},\r\n onChangeDirection: () => {},\r\n onChangeColor: () => {},\r\n onToggleStretch: () => {},\r\n setColor: PRIMARY_COLOR[0],\r\n colorOption: []\r\n};\r\n\r\nconst SettingsContext = createContext(initialState);\r\n\r\ntype SettingsProviderProps = {\r\n children: ReactNode;\r\n};\r\n\r\nfunction SettingsProvider({ children }: SettingsProviderProps) {\r\n const [settings, setSettings] = useLocalStorage('settings', {\r\n themeMode: initialState.themeMode,\r\n themeDirection: initialState.themeDirection,\r\n themeColor: initialState.themeColor,\r\n themeStretch: initialState.themeStretch\r\n });\r\n\r\n const onChangeMode = (event: React.ChangeEvent) => {\r\n setSettings({\r\n ...settings,\r\n themeMode: (event.target as HTMLInputElement).value as ThemeMode\r\n });\r\n };\r\n\r\n const onChangeDirection = (event: React.ChangeEvent) => {\r\n setSettings({\r\n ...settings,\r\n themeDirection: (event.target as HTMLInputElement).value as ThemeDirection\r\n });\r\n };\r\n\r\n const onChangeColor = (event: React.ChangeEvent) => {\r\n setSettings({\r\n ...settings,\r\n themeColor: (event.target as HTMLInputElement).value as ThemeColor\r\n });\r\n };\r\n\r\n const onToggleStretch = () => {\r\n setSettings({\r\n ...settings,\r\n themeStretch: !settings.themeStretch\r\n });\r\n };\r\n\r\n return (\r\n ({\r\n name: color.name,\r\n value: color.main\r\n })),\r\n // Stretch\r\n onToggleStretch\r\n }}\r\n >\r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport { SettingsProvider, SettingsContext };\r\n","export function truncate(text: string, maxSize: number = 50) {\r\n const tmpText = text?.trim();\r\n return tmpText?.length > maxSize ? tmpText.substring(0, maxSize) + '...' : tmpText;\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\n\r\n//material\r\nimport { Button, Grid, Typography, Avatar, Stack, Alert } from '@mui/material';\r\n\r\n//utils\r\nimport { fTime } from 'utils/formatTime';\r\n\r\n//Type\r\nimport { AgendaScheduleTeacher, TimeSlot } from '../../../@types/agenda';\r\nimport { Teacher } from '../../../@types/pedagogy';\r\n\r\ntype TimeSlotsFilterProps = {\r\n metadatas: Array;\r\n children: (slot: AgendaScheduleTeacher) => React.ReactNode;\r\n};\r\n\r\nexport const TimeSlotsFilter = ({ metadatas = [], children }: TimeSlotsFilterProps) => {\r\n const [teacher, setTeacher] = useState(metadatas[0]?.teacher);\r\n\r\n const handleTeacher = (teacher: Teacher) => {\r\n setTeacher(teacher);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n 1\r\n Sélectionnez un formateur ou une formatrice\r\n \r\n \r\n \r\n {metadatas.map((data) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n 2 Sélectionnez un horaire{' '}\r\n \r\n \r\n \r\n \r\n {metadatas\r\n .filter((w) => w.teacher.id === teacher.id)\r\n .map((data, index) => {\r\n return (\r\n {children(data)}\r\n );\r\n })}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport function TimeSlotTeacher({\r\n teacher,\r\n selected,\r\n onSelect\r\n}: {\r\n teacher: Teacher;\r\n selected: boolean;\r\n onSelect(teacher: Teacher): void;\r\n}) {\r\n return (\r\n \r\n onSelect(teacher)}\r\n >\r\n {teacher.civility} {teacher.lastName}\r\n \r\n \r\n );\r\n}\r\n","//material\r\nimport { Button, Tooltip, Typography } from '@mui/material';\r\nimport { fTime } from 'utils/formatTime';\r\n\r\n//Type\r\nimport { TimeSlot } from '../../../@types/agenda';\r\n\r\nexport const TimeSlotsDisplay = (props: {\r\n timeSlots: Array;\r\n onSelected(timeSlot: TimeSlot): void;\r\n isSmall: boolean;\r\n hourLimit: number;\r\n}) => {\r\n const getLabel = (duration: number) => {\r\n return `durée ${duration} min`;\r\n };\r\n\r\n return (\r\n <>\r\n {props.timeSlots.map((timeSlot: any, index: number) => {\r\n return (\r\n \r\n props.onSelected(timeSlot)}\r\n variant=\"contained\"\r\n size=\"small\"\r\n color=\"primary\"\r\n sx={{ textTransform: 'lowercase', m: 0.3 }}\r\n >\r\n {fTime(timeSlot.dateStart)} {!props.isSmall && ` - durée ${timeSlot.duration}min`}\r\n \r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n","import { MediaFileType } from '../../../@types/media';\r\nimport {\r\n ArticleRounded,\r\n ExpandMore,\r\n Image,\r\n LibraryMusicRounded,\r\n LinkRounded,\r\n PictureAsPdfRounded,\r\n VideoLibraryRounded\r\n} from '@mui/icons-material';\r\n\r\ntype MediaFileAvatarProps = {\r\n type: MediaFileType;\r\n isRead: boolean;\r\n};\r\n\r\n/**\r\n * Avatar par type de media\r\n * @param type\r\n * @param isRead\r\n * @returns\r\n */\r\nexport function MediaFileAvatar({ type, isRead }: MediaFileAvatarProps) {\r\n switch (type) {\r\n case MediaFileType.Audio:\r\n return ;\r\n\r\n case MediaFileType.Videos:\r\n return ;\r\n case MediaFileType.Autres:\r\n return ;\r\n case MediaFileType.Html:\r\n return ;\r\n case MediaFileType.Images:\r\n return ;\r\n case MediaFileType.UrlText:\r\n return ;\r\n default:\r\n return ;\r\n }\r\n}\r\n","import { Typography } from '@mui/material';\r\nimport { Alert } from '@mui/material';\r\nimport { useState } from 'react';\r\nimport StudentHourMessage from '../student/StudentHourMessage';\r\n\r\nexport const SheduleTeacherMessage = () => {\r\n const [open, setOpen] = useState(true);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n if (!open) return <>;\r\n\r\n return (\r\n <>\r\n \r\n Pour information\r\n Vous êtes sur le point de prendre rendez-vous avec un formateur. Nous tenons à vous rappeler\r\n que ce n’est pas un cours, mais un rendez-vous vous permettant de discuter avec vos\r\n formateurs sur vos difficultés liées à un cours ou une évaluation.\r\n \r\n \r\n \r\n );\r\n};\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\n\r\n// material\r\nimport {\r\n List,\r\n Button,\r\n Typography,\r\n Box,\r\n DialogActions,\r\n Dialog,\r\n DialogTitle,\r\n DialogContent,\r\n Alert\r\n} from '@mui/material';\r\nimport {\r\n PermContactCalendar,\r\n CheckOutlined,\r\n Phone,\r\n Videocam,\r\n Notes,\r\n AccessTime\r\n} from '@mui/icons-material';\r\nimport { LoadingButton } from '@mui/lab';\r\n\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { cancelMeeting } from 'redux/slices/meeting';\r\n\r\n//type\r\nimport { Meeting, MeetingStatus, MeetingType } from '../../../@types/meeting';\r\n\r\n//Composants\r\nimport {\r\n RowItem,\r\n RowItemDisplay,\r\n RowItemDisplayComment,\r\n RowItemDisplayDateTime,\r\n RowItemDisplayTeacher,\r\n RowItemDisplayTitle\r\n} from 'components/RowListItem';\r\n\r\nimport { MeetingVisioMessage, MeetingPhoneMessage } from 'components/_dashboard/meeting';\r\n\r\nimport MeetingErrorMessage from './MeetingErrorMessage';\r\nimport { MeetingTimeCount, MeetingTimeCountDisplay } from './MeetingTimeCount';\r\nimport { isAfterDate } from 'utils/formatTime';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport { MeetingStatusDisplay } from 'components/_dashboard/meeting/MeetingStatusDisplay';\r\nimport MeetingAlertMessageOral from './MeetingAlertMessageOral';\r\nimport DialogConfirm from 'components/DialogConfirm';\r\nimport MeetingButtonVisio from './MeetingButtonVisio';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\n\r\ntype MeetingViewProps = {\r\n onClose: VoidFunction;\r\n onChangeMode: VoidFunction;\r\n isVoice?: boolean;\r\n};\r\n\r\n/**\r\n * Vue des rendezvous : affichage et annulation\r\n */\r\nexport function MeetingView({ onClose, onChangeMode, isVoice = false }: MeetingViewProps) {\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { meeting, isLoading, error } = useSelector((state: RootState) => state.meeting);\r\n const [open, setOpen] = useState(false);\r\n const navigate = useNavigate();\r\n\r\n const handleModal = () => {\r\n setOpen(!open);\r\n };\r\n\r\n const handleCancel = () => {\r\n //annulation envoyé\r\n dispatch(\r\n cancelMeeting(meeting!)(() => {\r\n enqueueSnackbar('Le rendez-vous a été annulé', { variant: 'success' });\r\n onClose();\r\n })\r\n );\r\n };\r\n\r\n // lien vers le devoir\r\n const handleLink = () => {\r\n navigate(PATH_DASHBOARD.studyPlan.details + `/${meeting?.homework?.barCode}`);\r\n };\r\n\r\n //Gestion des constante de date\r\n const dateStart = meeting?.dateStart ?? new Date().toString();\r\n const dateEnd = meeting?.dateEnd ?? new Date().toString();\r\n // Bloque la modification eventuelle\r\n const isStarted = isAfterDate(new Date(), dateStart);\r\n const isFinished = isAfterDate(new Date(), dateEnd);\r\n\r\n isVoice = meeting?.homework !== null;\r\n\r\n return (\r\n \r\n \r\n \r\n {!isVoice && (\r\n }\r\n title={ {meeting?.material?.label}}\r\n >\r\n {}\r\n \r\n )}\r\n \r\n \r\n {(time: string) => (\r\n <>\r\n \r\n \r\n )}\r\n \r\n \r\n\r\n {meeting?.type !== MeetingType.Phone ? (\r\n \r\n {(time: string, isActivate: boolean) => {\r\n return (\r\n \r\n );\r\n }}\r\n \r\n }\r\n icon={}\r\n subTitle={}\r\n />\r\n ) : (\r\n Participer par téléphone}\r\n icon={}\r\n subTitle={\r\n <>\r\n Mon numéro : {meeting.phone}\r\n {!isFinished && }\r\n \r\n }\r\n />\r\n )}\r\n \r\n\r\n {meeting?.observation && (\r\n {meeting?.observation} \r\n )}\r\n\r\n {isVoice && (\r\n }\r\n title={Évaluation}\r\n >\r\n \r\n {meeting?.homework?.label}\r\n \r\n \r\n \r\n )}\r\n \r\n {!isStarted && !isFinished && !isVoice && }\r\n\r\n {!isFinished && (\r\n \r\n \r\n\r\n {!isStarted && (\r\n \r\n ANNULER MON RENDEZ-VOUS\r\n \r\n )}\r\n \r\n )}\r\n\r\n \r\n \r\n Confirmez-vous l'annulation de votre rendez-vous ?\r\n \r\n {error && (\r\n \r\n Désolé, Nous ne pouvons pas donner suite à cette demande.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { SummaryRequest } from './common';\r\n\r\nexport type NotificationState = {\r\n isLoading: boolean;\r\n error: any;\r\n notifications: Array;\r\n hasMore: boolean;\r\n index: number;\r\n step: number;\r\n count: number;\r\n countUnRead: number;\r\n};\r\n\r\nexport enum NotificationStatus {\r\n New = 1,\r\n Treated = 2\r\n}\r\n\r\nexport interface NotificationItem {\r\n type: NotificationType;\r\n title: string;\r\n createdDate: string;\r\n reference: string;\r\n id: number;\r\n read: boolean;\r\n idType: number;\r\n description: string;\r\n}\r\n\r\nexport interface NotificationListRequest extends SummaryRequest {}\r\n\r\nexport enum NotificationType {\r\n Actualites = 0,\r\n Events = 1,\r\n Annonces = 2,\r\n Medias = 3,\r\n Preinscription = 4,\r\n Questions = 5,\r\n Devoirs = 6,\r\n DevoirsRecus = 10,\r\n DevoirsEnvoyes = 11,\r\n DevoirsCorriges = 12,\r\n Colis = 7,\r\n NovadisNormal = 20,\r\n NovadisImportant = 21,\r\n Adresse = 22,\r\n TachesMessage = 23,\r\n NoteEvenements = 24,\r\n Notification = 25,\r\n CamCoaAbouti = 30,\r\n CamCoaPriseContact = 31,\r\n CamCoaRepondeur = 32,\r\n CamCoaNumeroErrone = 33,\r\n CamCoaNeRepondsPas = 34,\r\n CamCoaAbandonne = 35,\r\n TravauxPratiques = 36,\r\n MeetingAbsence = 37,\r\n Meeting = 38,\r\n VirtualClass = 100,\r\n VirtualClassNotificationConfirmation = 101,\r\n VirtualClassNotificationCancel = 102,\r\n VirtualClassNotificationPlaceOfFree = 103,\r\n VirtualClassNotificationWaiting = 104,\r\n EvaluationEnonceUnlock = 105,\r\n Examens = 106,\r\n VirtualClassNotificationCancelBySchool = 107,\r\n Payment = 110\r\n}\r\n\r\nexport interface NotificationListResponse {\r\n result: NotificationListResult;\r\n list: NotificationItem[];\r\n count: number;\r\n countUnRead: number;\r\n}\r\n\r\nexport enum NotificationListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport type NotificationSettingsProps = {\r\n id: NotificationType;\r\n tagLabel: string;\r\n color: string;\r\n bgcolor: string;\r\n title: string;\r\n};\r\n","import { useState } from 'react';\r\nimport { useFormik, Form } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport { useSnackbar } from 'notistack';\r\nimport trash2Fill from '@iconify/icons-eva/trash-2-fill';\r\nimport { Icon } from '@iconify/react';\r\n//material\r\nimport {\r\n AccessTime,\r\n DataUsage,\r\n Edit,\r\n SettingsInputComponent,\r\n WatchLater\r\n} from '@mui/icons-material';\r\nimport {\r\n Link,\r\n DialogActions,\r\n IconButton,\r\n List,\r\n Stack,\r\n TextField,\r\n Tooltip,\r\n Typography,\r\n Button,\r\n Collapse,\r\n Alert\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { DesktopDateTimePicker, LoadingButton } from '@mui/lab';\r\n\r\n//model\r\nimport { TaskModel } from '../../../@types/task';\r\n\r\n//redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { addOrUpdateTask, removeTask } from 'redux/slices/task';\r\n\r\n//hook\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\n\r\nimport { fDate, fDateMeeting, formatAPI, isBeforeDate, isDateValid } from 'utils/formatTime';\r\n\r\n//composant\r\nimport {\r\n RowItem,\r\n RowItemDisplay,\r\n RowItemDisplayAlert,\r\n RowItemDisplayComment,\r\n RowItemDisplayTitle\r\n} from 'components/RowListItem';\r\nimport DialogConfirm from 'components/DialogConfirm';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { addDays, addHours } from 'date-fns';\r\n\r\nexport type AgendaTaskDetailProps = {\r\n onClose: VoidFunction;\r\n task: TaskModel;\r\n isLinkToCourse?: boolean;\r\n};\r\n\r\nexport default function AgendaTaskDetail({\r\n task,\r\n onClose,\r\n isLinkToCourse = true\r\n}: AgendaTaskDetailProps) {\r\n const dispatch = useDispatch();\r\n const navigate = useNavigate();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const studyPlanManager = useStudyPlan();\r\n const { isLoading, error } = useSelector((state: RootState) => state.task);\r\n const [open, setOpen] = useState(false);\r\n const [updated, setUpdated] = useState(task.id === 0);\r\n\r\n const EventSchema = Yup.object().shape({\r\n label: Yup.string().max(255).required('Le titre est obligatoire'),\r\n dateStart: Yup.date().required('La date est obligatoire'),\r\n dateEnd: Yup.date().required('La date est obligatoire'),\r\n observation: Yup.string()\r\n });\r\n\r\n const formik = useFormik({\r\n initialValues: task,\r\n validationSchema: EventSchema,\r\n onSubmit: async (values, { setSubmitting }) => {\r\n if (isDateError) return;\r\n try {\r\n dispatch(\r\n addOrUpdateTask(values)(() => {\r\n enqueueSnackbar('Enregistrement effectué', { variant: 'success' });\r\n onClose();\r\n })\r\n );\r\n\r\n setSubmitting(false);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }\r\n });\r\n\r\n const handleDelete = async () => {\r\n if (task.id === 0) return;\r\n dispatch(\r\n removeTask(task.id)(() => {\r\n setOpen(false);\r\n onClose();\r\n enqueueSnackbar('Suppression effectuée', { variant: 'success' });\r\n })\r\n );\r\n };\r\n\r\n const handleMove = () => {\r\n navigate(\r\n PATH_DASHBOARD.studyPlan.details + `/${task.barCode === '' ? task.courseId : task.barCode}`\r\n );\r\n };\r\n\r\n const handleChange = (name: string, value: Date | string | null) => {\r\n if (isDateValid(value)) {\r\n switch (name) {\r\n case 'dateStart':\r\n value && setFieldValue('dateEnd', addHours(new Date(value), 2));\r\n }\r\n setFieldValue(name, value);\r\n }\r\n };\r\n\r\n const { values, errors, touched, isSubmitting, setFieldValue, getFieldProps } = formik;\r\n const isCreating = task.id === 0;\r\n const isDateError = isBeforeDate(new Date(values.dateEnd), new Date(values.dateStart));\r\n\r\n return (\r\n \r\n
    \r\n \r\n \r\n {values.label}}>\r\n \r\n Ref - {values.barCode ? values.barCode : values.courseId}\r\n \r\n \r\n\r\n {fDateMeeting(task.dateStart, task.dateEnd)}\r\n ) : (\r\n \r\n Du {fDate(task.dateStart, 'eeee dd MMMM HH:mm')} au{' '}\r\n {fDate(task.dateEnd, 'eeee dd MMMM HH:mm')}\r\n \r\n )\r\n }\r\n icon={}\r\n >\r\n\r\n {values.observation}\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n handleChange('dateStart', date)}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n\r\n handleChange('dateEnd', date)}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n \r\n }\r\n icon={}\r\n />\r\n\r\n \r\n \r\n \r\n \r\n {task.isLocked && (\r\n \r\n Cette planification est verrouillée par votre coach\r\n \r\n )}\r\n \r\n {error && {error}}\r\n \r\n {!isCreating && !updated && (\r\n \r\n \r\n setOpen(true)}>\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {!isCreating && (\r\n setUpdated(!updated)}\r\n color=\"primary\"\r\n >\r\n {updated ? 'Annuler' : 'Modifier'}\r\n \r\n )}\r\n\r\n {updated ? (\r\n \r\n ENREGISTRER\r\n \r\n ) : (\r\n <>\r\n {isLinkToCourse && (\r\n \r\n CONSULTER\r\n \r\n )}\r\n \r\n )}\r\n \r\n
    \r\n\r\n {!task.isLocked && (\r\n setOpen(false)}\r\n onConfirm={handleDelete}\r\n isLoading={isLoading}\r\n >\r\n Confirmez-vous la suppression de la tache ?\r\n \r\n )}\r\n
    \r\n );\r\n}\r\n/*\r\n\r\n }\r\n title={`Support pédagogique`}\r\n >\r\n {taskManager.current?.label}
    \r\n Réf : {taskManager.current?.barCode || taskManager.current?.courseId} \r\n \r\n \r\n\r\n \r\n \r\n }\r\n title={\r\n \r\n
    Statut :
    \r\n
    \r\n }\r\n />\r\n\r\n \r\n\r\n {taskManager.current?.id>0 &&\r\n \r\n Annuler la programmation du support pédagogique \r\n }>\r\n \r\n }\r\n\r\n \r\n
    \r\n \r\n {!task.isLocked && (\r\n \r\n {updated?Annuler:Modifier} \r\n \r\n )}\r\n\r\n \r\n updated?taskManager.save():null}\r\n >\r\n {updated?Enregistrer:Consulter}\r\n \r\n \r\n \r\n*/\r\n","import { Typography } from '@mui/material';\r\nimport { SessionCentreExamen } from '../../../@types/examen';\r\n\r\ntype ExamenCentreInfosDisplayProps = { centreExamen: SessionCentreExamen | null };\r\n\r\nexport default function ExamenCentreInfosDisplay({ centreExamen }: ExamenCentreInfosDisplayProps) {\r\n return (\r\n <>\r\n {centreExamen && centreExamen.adresse != '' && (\r\n Centre d'examen de {centreExamen.adresse}\r\n )}\r\n \r\n );\r\n}\r\n","export interface SpecificNeed {\r\n id: string;\r\n label: string;\r\n checked: boolean;\r\n main: boolean;\r\n}\r\n\r\nexport interface SpecificNeedState {\r\n isLoading: boolean;\r\n error: any;\r\n listeBesSpeDeclares: Array;\r\n aucunBesSpe: SpecificNeedAucun | null;\r\n examenBesSpe: SpecificNeedExamen | null;\r\n pedagogiqueBesSpe: SpecificNeedPedagogique | null;\r\n radioButton: string;\r\n aucunBesSpeSauvegarde: boolean;\r\n alerteSuppressionBSE: boolean;\r\n alerteSuppressionBSP: boolean;\r\n}\r\n\r\nexport interface SpecificNeedAucun extends SpecificNeed {}\r\n\r\nexport interface SpecificNeedExamen extends SpecificNeed {}\r\n\r\nexport interface SpecificNeedPedagogique extends SpecificNeed {}\r\n\r\nexport interface SpecificNeedListItem extends SpecificNeed {\r\n isExamen: boolean;\r\n isPedagogique: boolean;\r\n}\r\n\r\nexport interface SpecificNeedResponse {\r\n aucunBesoin: SpecificNeedAucun;\r\n examen: boolean;\r\n pedagogique: boolean;\r\n examens: SpecificNeedExamen[];\r\n pedagogiques: SpecificNeedPedagogique[];\r\n result: SpecificNeedResult;\r\n errorMessage: string;\r\n}\r\n\r\nexport enum SpecificNeedResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport interface SpecificNeedUpdateResponse {\r\n result: SpecificNeedUpdateResult;\r\n errorMessage: string;\r\n}\r\n\r\nexport enum SpecificNeedUpdateResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport const BSE_BSP_RADIO_BTN = 'BSE_BSP';\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\nimport {\r\n BSE_BSP_RADIO_BTN,\r\n SpecificNeedExamen,\r\n SpecificNeedPedagogique,\r\n SpecificNeedResponse,\r\n SpecificNeedResult,\r\n SpecificNeedState,\r\n SpecificNeedUpdateResponse,\r\n SpecificNeedUpdateResult\r\n} from '../../@types/SpecificNeed';\r\nimport { getStudentDeclaredSpecificNeeds } from 'mapper/specificNeedsMap';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: SpecificNeedState = {\r\n isLoading: false,\r\n error: false,\r\n listeBesSpeDeclares: [],\r\n aucunBesSpe: null,\r\n examenBesSpe: null,\r\n pedagogiqueBesSpe: null,\r\n radioButton: '',\r\n aucunBesSpeSauvegarde: false, //on considère que le référent handicap a effectué une saisie en amont\r\n alerteSuppressionBSE: false,\r\n alerteSuppressionBSP: false\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'specificNeed',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n state.error = false;\r\n },\r\n // end LOADING\r\n endLoading(state) {\r\n state.isLoading = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n getSpecificNeeds(state, action) {\r\n const { aucunBesoin, examens, pedagogiques, examen, pedagogique } = action.payload;\r\n\r\n //Reset de l'erreur\r\n state.error = null;\r\n\r\n //Traitements avec les données de la BDD (avant modificatons automatiques)\r\n state.aucunBesSpe = aucunBesoin;\r\n state.examenBesSpe = examens?.find((e: SpecificNeedExamen) => e.main);\r\n state.pedagogiqueBesSpe = pedagogiques?.find((p: SpecificNeedPedagogique) => p.main);\r\n\r\n //Indique si une alerte de suppression doit apparaître\r\n state.alerteSuppressionBSE = examens.some(\r\n (e: SpecificNeedExamen) => e.id !== state.examenBesSpe?.id && e.checked\r\n );\r\n state.alerteSuppressionBSP = pedagogiques.some(\r\n (p: SpecificNeedPedagogique) => p.id !== state.pedagogiqueBesSpe?.id && p.checked\r\n );\r\n\r\n //Début des traitements de coche/décoches automatiques\r\n //Coche automatique de BSE ou BSP\r\n if (state.examenBesSpe && !state.examenBesSpe.checked) {\r\n state.examenBesSpe.checked = examen;\r\n }\r\n if (state.pedagogiqueBesSpe && !state.pedagogiqueBesSpe.checked) {\r\n state.pedagogiqueBesSpe.checked = pedagogique;\r\n }\r\n\r\n //Listes de besoins déclarés par l'élève\r\n state.listeBesSpeDeclares = getStudentDeclaredSpecificNeeds(examens, pedagogiques);\r\n\r\n //Init du formulaire\r\n if (state.examenBesSpe?.checked || state.pedagogiqueBesSpe?.checked) {\r\n state.radioButton = BSE_BSP_RADIO_BTN;\r\n } else if (state.aucunBesSpe?.checked) {\r\n state.radioButton = state.aucunBesSpe?.id ?? '';\r\n }\r\n\r\n state.aucunBesSpeSauvegarde =\r\n !state.examenBesSpe?.checked &&\r\n !state.pedagogiqueBesSpe?.checked &&\r\n !state.aucunBesSpe?.checked;\r\n\r\n state.isLoading = false;\r\n },\r\n\r\n changeRadioButton(state, action) {\r\n const { radioButton } = action.payload;\r\n\r\n if (radioButton !== BSE_BSP_RADIO_BTN) {\r\n //\"aucun besoin\"\r\n if (state.aucunBesSpe) {\r\n state.aucunBesSpe.checked = true;\r\n }\r\n\r\n //Désactivation de BSE/BSP\r\n if (state.examenBesSpe) {\r\n state.examenBesSpe.checked = false;\r\n }\r\n\r\n if (state.pedagogiqueBesSpe) {\r\n state.pedagogiqueBesSpe.checked = false;\r\n }\r\n } else {\r\n //Cas des BSE BSP\r\n if (state.aucunBesSpe) {\r\n state.aucunBesSpe.checked = false;\r\n }\r\n }\r\n\r\n state.radioButton = radioButton;\r\n },\r\n\r\n updatePedagogies(state, action) {\r\n const { checked, id } = action.payload;\r\n if (state.pedagogiqueBesSpe && state.pedagogiqueBesSpe?.id === id) {\r\n //Coche automatique du bouton radio\r\n if (state.radioButton !== BSE_BSP_RADIO_BTN) {\r\n state.radioButton = BSE_BSP_RADIO_BTN;\r\n if (state.aucunBesSpe) {\r\n state.aucunBesSpe.checked = false;\r\n }\r\n }\r\n\r\n //Mise à jour de la checkbox\r\n state.pedagogiqueBesSpe.checked = checked;\r\n }\r\n },\r\n\r\n updateExamens(state, action) {\r\n const { checked, id } = action.payload;\r\n if (state.examenBesSpe && state.examenBesSpe?.id === id) {\r\n //Coche automatique du bouton radio\r\n if (state.radioButton !== BSE_BSP_RADIO_BTN) {\r\n state.radioButton = BSE_BSP_RADIO_BTN;\r\n if (state.aucunBesSpe) {\r\n state.aucunBesSpe.checked = false;\r\n }\r\n }\r\n\r\n //Mise à jour de la checkbox\r\n state.examenBesSpe.checked = checked;\r\n }\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { updateExamens, updatePedagogies, changeRadioButton } = slice.actions;\r\n\r\n/**/\r\nexport const getSpecificNeeds = () => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n var response = await axios.get(`/api/student/besoinspecifique`);\r\n const { result } = response.data;\r\n switch (result) {\r\n case SpecificNeedResult.Success:\r\n dispatch(slice.actions.getSpecificNeeds(response.data));\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError({ result: 99 }));\r\n return;\r\n }\r\n } catch (ex) {\r\n dispatch(slice.actions.hasError({ result: 99 }));\r\n }\r\n };\r\n};\r\n\r\n/**/\r\nexport const updateSpecificNeeds = (ids: Array) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n var response = await axios.post(\r\n `/api/student/besoinspecifique`,\r\n ids\r\n );\r\n const { result } = response.data;\r\n switch (result) {\r\n case SpecificNeedUpdateResult.Success:\r\n dispatch(slice.actions.endLoading());\r\n //Rechargement pour obtenir les données MAJ\r\n //Permet de récupérer le résultat des suppressions des valeurs saisies par le référent handicap\r\n dispatch(getSpecificNeeds());\r\n onSuccess();\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError({ result: 99 }));\r\n return;\r\n }\r\n } catch (ex) {\r\n dispatch(slice.actions.hasError({ result: 99 }));\r\n }\r\n };\r\n};\r\n","import {\r\n SpecificNeedExamen,\r\n SpecificNeedListItem,\r\n SpecificNeedPedagogique\r\n} from '../@types/SpecificNeed';\r\n\r\nexport const getStudentDeclaredSpecificNeeds = (\r\n examens: Array,\r\n pedagogiques: Array\r\n): Array => {\r\n var result: Array = [];\r\n\r\n // Ajout des besoins de type \"examen\"\r\n if (examens && examens.length > 0) {\r\n examens\r\n .filter((e: SpecificNeedExamen) => !e.main && e.checked)\r\n .forEach((e: SpecificNeedExamen) =>\r\n result.push({\r\n id: e.id,\r\n label: e.label,\r\n checked: e.checked,\r\n main: e.main,\r\n isExamen: true,\r\n isPedagogique: false\r\n })\r\n );\r\n }\r\n\r\n // Merge avec les besoins de type \"pédagogique\"\r\n if (pedagogiques && pedagogiques.length > 0) {\r\n pedagogiques\r\n .filter((p: SpecificNeedPedagogique) => !p.main && p.checked)\r\n .forEach((p: SpecificNeedPedagogique) => {\r\n var existingBesSpe: SpecificNeedListItem | undefined = result.find(\r\n (besSpe: SpecificNeedListItem) => besSpe.id === p.id\r\n );\r\n if (existingBesSpe != null) {\r\n existingBesSpe.isPedagogique = true;\r\n } else {\r\n result.push({\r\n id: p.id,\r\n label: p.label,\r\n checked: p.checked,\r\n main: p.main,\r\n isExamen: false,\r\n isPedagogique: true\r\n });\r\n }\r\n });\r\n }\r\n return result.sort((a: SpecificNeedListItem, b: SpecificNeedListItem) =>\r\n a.label > b.label ? 1 : -1\r\n );\r\n};\r\n","import { useContext, useEffect, useState } from 'react';\r\n\r\n// redux\r\nimport { useDispatch } from 'redux/store';\r\nimport {\r\n getSchedulesEvent,\r\n getMeetingsEvent,\r\n getVirtualClassList,\r\n getWorkshopList,\r\n getTaskList,\r\n init\r\n} from '../redux/slices/agenda';\r\n\r\n//type\r\nimport { ModeAccess, Student } from '../@types/account';\r\nimport { PageTemplateType } from '../@types/pageTemplateModel';\r\nimport { getMessages, getServices } from 'redux/slices/message';\r\nimport { getPageTemplates } from 'redux/slices/pageTemplate';\r\nimport { StudyPlanView } from '../@types/pedagogy';\r\nimport { Contract, ModuleType, Survey } from '../@types/contract';\r\n\r\nimport { StudyPlanContext } from 'contexts/StudyPlanContext';\r\nimport { getLearnings } from 'redux/slices/learning';\r\nimport { reset } from 'numeral';\r\nimport { getExamens } from 'redux/slices/examen';\r\nimport { setSurveys } from 'redux/slices/survey';\r\nimport { VirtualClass } from '../@types/virtualClass';\r\nimport { getSpecificNeeds } from 'redux/slices/specificNeeds';\r\nimport useLocalStorage from './useLocalStorage';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst useAppStart = () => {\r\n // Chargement du store\r\n const manager = useContext(StudyPlanContext);\r\n const dispatch = useDispatch();\r\n const [view, setView] = useLocalStorage('view', StudyPlanView.SendingPhase);\r\n\r\n function loadData(student: Student) {\r\n const contractCurrent = student?.contracts?.filter((c: Contract) => c.current)[0];\r\n\r\n if ([ModeAccess.Write, ModeAccess.Read].includes(student?.modeAccess)) {\r\n dispatch(init());\r\n\r\n dispatch(getSchedulesEvent());\r\n dispatch(getMeetingsEvent());\r\n if (contractCurrent.moduleList.includes(ModuleType.VirtualClassView)) {\r\n dispatch(\r\n getVirtualClassList()((classes: VirtualClass[]) => {\r\n const surveys = classes\r\n .filter((c) => c.viewReplayCount > 0 && !c.isSurvey)\r\n .map((c) => {\r\n return {\r\n id: 433,\r\n keyApp: 'ClaVir',\r\n keyId: c.id.toString(),\r\n label: c.title,\r\n url: '',\r\n observation: '',\r\n mandatory: false,\r\n created: '' //c.dateStart\r\n } as Survey;\r\n });\r\n dispatch(setSurveys(surveys));\r\n })\r\n );\r\n }\r\n if (contractCurrent.moduleList.includes(ModuleType.WorkshopView)) {\r\n dispatch(getWorkshopList());\r\n }\r\n dispatch(getTaskList());\r\n\r\n if (contractCurrent.moduleList.includes(ModuleType.Examen)) {\r\n dispatch(getExamens());\r\n }\r\n }\r\n\r\n manager?.initialize(view, student.modeAccess, contractCurrent.constrainedCourse);\r\n\r\n if ([ModeAccess.Write, ModeAccess.Read].includes(student?.modeAccess)) {\r\n dispatch(getMessages());\r\n dispatch(getServices());\r\n dispatch(getPageTemplates(PageTemplateType.MentionLegal));\r\n dispatch(getLearnings(contractCurrent.elearnings));\r\n dispatch(getSpecificNeeds());\r\n\r\n // Questionnaires en attente à remplir\r\n if (contractCurrent.surveys.length > 0) {\r\n // mise en place dans redux pour une gestionnaire plus simple\r\n dispatch(setSurveys(contractCurrent.surveys));\r\n }\r\n }\r\n }\r\n\r\n function reset() {\r\n manager?.resetState();\r\n }\r\n\r\n return {\r\n loadData,\r\n resetStudyPlan: reset\r\n };\r\n};\r\n\r\nexport default useAppStart;\r\n","import { createContext, ReactNode, useEffect, useReducer } from 'react';\r\n// utils\r\nimport axiosInstance from '../utils/axios';\r\nimport { isValidToken, setSession } from '../utils/jwt';\r\n// @types\r\nimport {\r\n ActionMap,\r\n AuthState,\r\n AuthUser,\r\n JWTContextType,\r\n AuthStudent\r\n} from '../@types/authentication';\r\nimport {\r\n StudentSignInResponse,\r\n StudentResponse,\r\n StudentSignInResult,\r\n StudentPasswordResponse,\r\n StudentPasswordResult,\r\n StudentUpdateRequest,\r\n StudentUpdateResponse,\r\n StudentUpdateResult,\r\n StudentResult,\r\n Student,\r\n Address,\r\n Notification,\r\n StudentUpdateAction,\r\n StudentChangePasswordResponse,\r\n StudentChangePasswordResult,\r\n StudentConfig,\r\n ModeAccess\r\n} from '../@types/account';\r\n\r\nimport {\r\n Contract,\r\n LogConnectionUpdateResponse,\r\n LogConnectionUpdateResult\r\n} from '../@types/contract';\r\nimport useAppStart from 'hooks/useAppStart';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { logoutUser } from 'redux/slices/agenda';\r\nimport useBrand from 'hooks/useBrand';\r\nimport useHubConnection from 'hooks/useHubConnection';\r\nimport { useFile } from 'hooks/useFile';\r\nimport { RootState } from 'redux/store';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nenum Types {\r\n Error = 'ERROR',\r\n Initial = 'INITIALIZE',\r\n Login = 'LOGIN',\r\n Logout = 'LOGOUT',\r\n Register = 'REGISTER',\r\n Avatar = 'AVATAR',\r\n PersonnalDatas = 'PERSONNALDATAS',\r\n Connection_Id = 'CONNECTION_ID',\r\n Survey = 'SURVEY',\r\n Config = 'CONFIG'\r\n}\r\n\r\ntype JWTAuthPayload = {\r\n [Types.Initial]: {\r\n isAuthenticated: boolean;\r\n user: AuthUser;\r\n student: Student | null;\r\n };\r\n [Types.Login]: {\r\n user: AuthUser;\r\n student: Student;\r\n };\r\n [Types.Logout]: undefined;\r\n [Types.Register]: {\r\n user: AuthUser;\r\n student: Student;\r\n };\r\n [Types.Error]: { errorMessage: any };\r\n [Types.Avatar]: {\r\n avatarUrl: string;\r\n };\r\n [Types.PersonnalDatas]: {\r\n email: string;\r\n phone1: string;\r\n phone2: string;\r\n notifications: Notification;\r\n address: Address;\r\n isChangePassword: boolean;\r\n availability: Array;\r\n };\r\n [Types.Connection_Id]: {\r\n id: number;\r\n };\r\n [Types.Survey]: {\r\n id: number;\r\n keyApp: string;\r\n keyAppId: string;\r\n };\r\n [Types.Config]: {\r\n config: StudentConfig;\r\n };\r\n};\r\n\r\nexport type JWTActions = ActionMap[keyof ActionMap];\r\n\r\nconst initialState: AuthState = {\r\n isAuthenticated: false,\r\n isInitialized: false,\r\n errorMessage: null,\r\n user: null,\r\n student: null\r\n};\r\n\r\nconst JWTReducer = (state: AuthState, action: JWTActions) => {\r\n switch (action.type) {\r\n case 'INITIALIZE':\r\n return {\r\n isAuthenticated: action.payload.isAuthenticated,\r\n isInitialized: true,\r\n user: action.payload.user,\r\n student: action.payload.student,\r\n errorMessage: null\r\n };\r\n\r\n case 'LOGIN':\r\n return {\r\n ...state,\r\n isAuthenticated: true,\r\n user: action.payload.user,\r\n student: action.payload.student,\r\n errorMessage: null\r\n };\r\n case 'LOGOUT':\r\n return {\r\n ...state,\r\n isAuthenticated: false,\r\n user: null,\r\n student: null,\r\n errorMessage: null\r\n };\r\n\r\n case 'REGISTER':\r\n return {\r\n ...state,\r\n isAuthenticated: true,\r\n user: action.payload.user,\r\n student: action.payload.student,\r\n errorMessage: null\r\n };\r\n case 'ERROR':\r\n return {\r\n ...state,\r\n isAuthenticated: false,\r\n user: null,\r\n student: null,\r\n errorMessage: action.payload.errorMessage\r\n };\r\n case 'AVATAR':\r\n return {\r\n ...state,\r\n student: {\r\n ...state.student,\r\n avatarUrl: action.payload.avatarUrl\r\n }\r\n };\r\n case 'PERSONNALDATAS':\r\n const availability = state.student?.availability;\r\n return {\r\n ...state,\r\n student: {\r\n ...state.student,\r\n email: action.payload.email,\r\n phone1: action.payload.phone1,\r\n phone2: action.payload.phone2,\r\n address: action.payload.address,\r\n notification: action.payload.notifications,\r\n contracts: state.student?.contracts.map((c: Contract) => {\r\n if (c.current) {\r\n return { ...c, isChangePassword: action.payload.isChangePassword };\r\n }\r\n return c;\r\n }),\r\n availability: action.payload.availability\r\n ? action.payload.availability.map((day) => {\r\n return {\r\n day: day.dayWeek,\r\n timeStart: day.start,\r\n timeEnd: day.end,\r\n timeZone: day.timeZone\r\n };\r\n })\r\n : availability\r\n }\r\n };\r\n case 'CONNECTION_ID':\r\n return {\r\n ...state,\r\n student: {\r\n ...state.student,\r\n contracts: state.student?.contracts.map((c: Contract) => {\r\n if (c.current) {\r\n return { ...c, idConnection: action.payload.id };\r\n }\r\n return c;\r\n })\r\n }\r\n };\r\n case 'SURVEY':\r\n return {\r\n ...state,\r\n student: {\r\n ...state.student,\r\n contracts: state.student?.contracts.map((c: Contract) => {\r\n if (c.current) {\r\n return {\r\n ...c,\r\n surveys: c.surveys\r\n .slice()\r\n .filter(\r\n (s) =>\r\n !(\r\n s.id === action.payload.id &&\r\n s.keyApp === action.payload.keyApp &&\r\n s.keyId === action.payload.keyAppId\r\n )\r\n )\r\n };\r\n }\r\n return c;\r\n })\r\n }\r\n };\r\n case 'CONFIG':\r\n return {\r\n ...state,\r\n student: {\r\n ...state.student,\r\n config: action.payload.config\r\n }\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nconst AuthContext = createContext(null);\r\n\r\nfunction AuthProvider({ children }: { children: ReactNode }) {\r\n const { student } = useSelector((state: RootState) => state.student);\r\n\r\n const { brand } = useBrand();\r\n const [state, dispatch] = useReducer(JWTReducer, initialState);\r\n const app = useAppStart();\r\n const dispatchSlice = useDispatch();\r\n const { getAvatar, exists } = useFile();\r\n\r\n const { disConnect, connect } = useHubConnection(); //SignalR;\r\n\r\n useEffect(() => {\r\n initialize();\r\n }, []);\r\n\r\n /**\r\n * Connection à SignalR\r\n */\r\n useEffect(() => {\r\n if (state.isAuthenticated && connect && state.student?.modeAccess === ModeAccess.Write) {\r\n connect();\r\n }\r\n }, [state.isAuthenticated]);\r\n\r\n const initialize = async () => {\r\n try {\r\n const accessToken = window.localStorage.getItem('accessToken');\r\n\r\n if (accessToken && isValidToken(accessToken)) {\r\n setSession(accessToken);\r\n\r\n const response = await axiosInstance.get('/api/student/informations');\r\n const { student, result, authorize } = response.data;\r\n\r\n switch (result) {\r\n case StudentResult.Success:\r\n dispatch({\r\n type: Types.Initial,\r\n payload: {\r\n isAuthenticated: true,\r\n user: null,\r\n student: student\r\n }\r\n });\r\n\r\n app.loadData(student);\r\n if ([ModeAccess.Write, ModeAccess.Read].includes(student?.modeAccess)) {\r\n loadAvatar();\r\n }\r\n\r\n break;\r\n case StudentResult.unAuthorized:\r\n setSession(null);\r\n dispatch({\r\n type: Types.Initial,\r\n payload: {\r\n isAuthenticated: false,\r\n user: null,\r\n student: null\r\n }\r\n });\r\n dispatch({\r\n type: Types.Error,\r\n payload: { errorMessage: authorize.description }\r\n });\r\n break;\r\n case StudentResult.Reconnected:\r\n dispatch({\r\n type: Types.Initial,\r\n payload: {\r\n isAuthenticated: false,\r\n user: null,\r\n student: null\r\n }\r\n });\r\n dispatch({\r\n type: Types.Error,\r\n payload: {\r\n errorMessage:\r\n 'Pour des raisons de sécurité, nous vous demandons de vous authentifier périodiquement.'\r\n }\r\n });\r\n setSession(null);\r\n break;\r\n default:\r\n setSession(null);\r\n dispatch({\r\n type: Types.Initial,\r\n payload: {\r\n isAuthenticated: false,\r\n user: null,\r\n student: null\r\n }\r\n });\r\n dispatch({\r\n type: Types.Error,\r\n payload: { errorMessage: \"Vous n'êtes pas autorisé \" }\r\n });\r\n }\r\n } else {\r\n setSession(null);\r\n dispatch({\r\n type: Types.Initial,\r\n payload: {\r\n isAuthenticated: false,\r\n user: null,\r\n student: null\r\n }\r\n });\r\n }\r\n } catch (err) {\r\n dispatch({\r\n type: Types.Initial,\r\n payload: {\r\n isAuthenticated: false,\r\n user: null,\r\n student: null\r\n }\r\n });\r\n }\r\n };\r\n\r\n /**\r\n * Chargement de l'avatar au démarrage du site\r\n */\r\n const loadAvatar = () => {\r\n getAvatar().then(async (value: any) => {\r\n //if (value == null || value.size === 0) return;\r\n if (!(await exists(value))) return;\r\n\r\n dispatch({\r\n type: Types.Avatar,\r\n payload: {\r\n avatarUrl: value\r\n }\r\n });\r\n });\r\n };\r\n\r\n const saveAvatar = (file: any) => (onSuccess: VoidFunction) => (onError: VoidFunction) => {\r\n return async () => {\r\n try {\r\n const formData = new FormData();\r\n formData.append('file', file);\r\n const response = await axiosInstance.post('/api/account/avatar/save', formData, {\r\n headers: { 'Content-Type': 'multipart/form-data', writeOnly: true }\r\n });\r\n if (response.data) {\r\n dispatch({\r\n type: Types.Avatar,\r\n payload: {\r\n avatarUrl: URL.createObjectURL(file)\r\n }\r\n });\r\n onSuccess();\r\n } else {\r\n onError();\r\n }\r\n } catch (error) {\r\n onError();\r\n }\r\n };\r\n };\r\n\r\n /**\r\n * Demande de connection à l'api\r\n * Retourne seulement Token si valid\r\n */\r\n const login = async (contractId: string, password: string) => {\r\n const response = await axiosInstance.post(\r\n `/api/account/signin/web?brandId=${brand}`,\r\n {\r\n contractId,\r\n password\r\n }\r\n );\r\n const { result, token } = response.data;\r\n\r\n switch (result) {\r\n case StudentSignInResult.Success:\r\n setSession(token);\r\n initialize();\r\n\r\n break;\r\n case StudentSignInResult.NotFound:\r\n dispatch({\r\n type: Types.Error,\r\n payload: { errorMessage: 'Vos identifiants sont incorrects' }\r\n });\r\n break;\r\n }\r\n };\r\n\r\n const register = async (\r\n email: string,\r\n password: string,\r\n firstName: string,\r\n lastName: string\r\n ) => {};\r\n\r\n const logout = async () => {\r\n setSession(null);\r\n\r\n app.resetStudyPlan();\r\n dispatch({ type: Types.Logout });\r\n dispatchSlice(logoutUser());\r\n if (disConnect) disConnect();\r\n };\r\n\r\n const resetPassword = async (email: string) => {\r\n const responseReset = await axiosInstance.post(\r\n `/api/account/forgetpassword?brandId=${brand}`,\r\n {\r\n email\r\n }\r\n );\r\n switch (responseReset.data.result) {\r\n case StudentPasswordResult.Success:\r\n break;\r\n case StudentPasswordResult.NotFound:\r\n break;\r\n case StudentPasswordResult.EmailIncorrect:\r\n break;\r\n case StudentPasswordResult.Error:\r\n break;\r\n }\r\n };\r\n\r\n const updateProfile =\r\n (form: StudentUpdateRequest) =>\r\n (onSuccess: VoidFunction) =>\r\n (onError: (value: StudentUpdateResult) => void) => {\r\n return async () => {\r\n try {\r\n const response = await axiosInstance.post(\r\n '/api/student/update',\r\n form,\r\n { headers: { writeOnly: true } }\r\n );\r\n const { result, message } = response.data;\r\n\r\n switch (result) {\r\n case StudentUpdateResult.AddressError:\r\n case StudentUpdateResult.Success:\r\n dispatch({\r\n type: Types.PersonnalDatas,\r\n payload: {\r\n address: form.student.address,\r\n notifications: form.student.notification,\r\n phone1: form.student.phone1,\r\n phone2: form.student.phone2,\r\n email: form.student.email,\r\n availability: form.availability !== '' ? JSON.parse(form.availability) : null,\r\n isChangePassword:\r\n form.action === StudentUpdateAction.Password\r\n ? false\r\n : form.student.contracts.filter((c) => c.current)[0]?.isChangePassword\r\n }\r\n });\r\n\r\n if (result === StudentUpdateResult.AddressError) {\r\n onError(result);\r\n return;\r\n }\r\n\r\n onSuccess();\r\n break;\r\n default:\r\n onError(result);\r\n break;\r\n }\r\n } catch (ex: any) {\r\n onError(StudentUpdateResult.Error);\r\n }\r\n };\r\n };\r\n\r\n const setLog = async (id: number, addTime: number, console: (value: string) => void) => {\r\n if (!state.isAuthenticated && state.student?.modeAccess !== ModeAccess.Write) return;\r\n\r\n try {\r\n const response = await axiosInstance.post(\r\n '/api/contract/logconnection/update',\r\n {\r\n IdConnection: id,\r\n pastTimeMinute: addTime\r\n }\r\n );\r\n const { idConnection, result } = response.data;\r\n switch (result) {\r\n case LogConnectionUpdateResult.Success:\r\n if (idConnection === id) return;\r\n\r\n dispatch({\r\n type: Types.Connection_Id,\r\n payload: { id: idConnection }\r\n });\r\n\r\n //onSuccess(idConnection);\r\n break;\r\n }\r\n } catch (ex) {}\r\n };\r\n\r\n const removeSurvey = (id: number, keyApp: string, keyAppId: string) => {\r\n dispatch({\r\n type: Types.Survey,\r\n payload: {\r\n id: id,\r\n keyApp: keyApp,\r\n keyAppId: keyAppId\r\n }\r\n });\r\n };\r\n\r\n const changePassword =\r\n (contractId: number, ts: number, sign: string, passwordNew: string, passwordConfirm: string) =>\r\n (onSuccess: VoidFunction) =>\r\n (onError: (value: StudentChangePasswordResult) => void) => {\r\n return async () => {\r\n try {\r\n const response = await axiosInstance.post(\r\n `/api/account/password/change/${contractId}/${ts}/${sign}?brandId=${brand}`,\r\n {\r\n passwordNew: passwordNew,\r\n passwordConfirm: passwordConfirm\r\n }\r\n );\r\n const { result } = response.data;\r\n switch (result) {\r\n case StudentChangePasswordResult.Success:\r\n return onSuccess();\r\n default:\r\n onError(result);\r\n }\r\n } catch (ex) {\r\n onError(StudentChangePasswordResult.Error);\r\n }\r\n };\r\n };\r\n\r\n const updateConfig = (config: StudentConfig) => {\r\n return async () => {\r\n try {\r\n const response = await axiosInstance.post(\r\n '/api/student/updateconfig',\r\n config,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n\r\n if (response.status === 200) {\r\n // Mise à jour du contexte\r\n dispatch({\r\n type: Types.Config,\r\n payload: { config: config }\r\n });\r\n }\r\n } catch (ex) {}\r\n };\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport { AuthContext, AuthProvider };\r\n","import { Survey } from './contract';\r\nimport { HomeworkBase, Material, Teacher } from './pedagogy';\r\nimport { SurveyRequest } from './survey';\r\n\r\nexport type MeetingState = {\r\n isLoading: boolean;\r\n error: any;\r\n meeting: null | Meeting;\r\n};\r\n\r\nexport interface Meeting {\r\n id: number;\r\n teacher: Teacher;\r\n dateStart: string;\r\n dateEnd: string;\r\n idVirtualClass: number | null;\r\n status: MeetingStatus;\r\n phone: string;\r\n observation: string;\r\n type: MeetingType;\r\n isVisio: boolean;\r\n material: Material;\r\n homework: null | HomeworkBase;\r\n}\r\n\r\nexport enum ProviderType {\r\n None = 0,\r\n Classilio = 1,\r\n BigBlueButton = 2\r\n}\r\n\r\nexport enum MeetingType {\r\n Phone = 0,\r\n Visio = 1,\r\n Virtual = 2\r\n}\r\n\r\nexport enum MeetingStatus {\r\n None = 0,\r\n Registered = 1,\r\n Cancel = 2,\r\n Present = 3,\r\n Absent = 4,\r\n Locked = 5,\r\n WaitingList = 6\r\n}\r\n\r\nexport interface MeetingAddOrUpdateResponse {\r\n result: MeetingAddOrUpdateResult;\r\n item: Meeting;\r\n}\r\n\r\nexport enum MeetingAddOrUpdateResult {\r\n None = 0,\r\n Success = 1,\r\n ClosedContract = 2,\r\n ErrorDouble = 3,\r\n ErrorMaterial = 4,\r\n ErrorTeacherBusy = 5,\r\n ErrorSupport = 6,\r\n ErrorDate = 7,\r\n ErrorService = 8\r\n}\r\n\r\nexport interface MeetingListResponse {\r\n result: MeetingListResult;\r\n list: Meeting[];\r\n}\r\n\r\nexport enum MeetingListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface MeetingItemResponse {\r\n result: MeetingItemResult;\r\n item: Meeting;\r\n}\r\n\r\nexport enum MeetingItemResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\nexport interface MeetingCancelResponse {\r\n result: MeetingCancelResult;\r\n}\r\n\r\nexport enum MeetingCancelResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface MeetingAccessResponse {\r\n link: string;\r\n result: MeetingAccessResult;\r\n survey: SurveyRequest;\r\n}\r\n\r\nexport enum MeetingAccessResult {\r\n NotFound = 0,\r\n Success = 1,\r\n OutOfTime = 2,\r\n Invalid = 3,\r\n Error = 4,\r\n WaitingTeacher = 5,\r\n Ended = 6,\r\n OutOfTimeEnd = 7\r\n}\r\n","import { Lens } from '@mui/icons-material';\r\nimport { SvgIconPropsColorOverrides } from '@mui/material';\r\nimport Label, { LabelColor } from 'components/Label';\r\nimport { SkillStatusType } from '../../../../@types/pedagogy';\r\n\r\nexport type IndicatorType = 'color' | 'label' | 'tag';\r\n\r\nexport type SkillStatusIndicatorProps = {\r\n type: IndicatorType;\r\n status: SkillStatusType;\r\n label: string;\r\n};\r\n\r\n/**\r\n * Indique le statut\r\n * @param param0\r\n */\r\nexport default function SkillStatusIndicator({ label, status, type }: SkillStatusIndicatorProps) {\r\n let data: { iconColor: string; labelColor: LabelColor; label: string } = {\r\n iconColor: '#637381',\r\n labelColor: 'default',\r\n label: 'Non évaluée'\r\n };\r\n\r\n switch (status) {\r\n case SkillStatusType.Acquired:\r\n data.iconColor = '#00C040';\r\n data.labelColor = 'success';\r\n data.label = 'acquise';\r\n break;\r\n case SkillStatusType.PartialAcquired:\r\n data.iconColor = '#FFC107';\r\n data.labelColor = 'warning';\r\n data.label = 'Partiellement acquise';\r\n break;\r\n case SkillStatusType.BeingEvaluated:\r\n data.iconColor = '#FFC107';\r\n data.labelColor = 'warning';\r\n data.label = \"En cours d'évaluation\";\r\n break;\r\n case SkillStatusType.NotAcquired:\r\n data.iconColor = '#C4C4C4';\r\n data.labelColor = 'error';\r\n data.label = 'Non acquise';\r\n break;\r\n }\r\n\r\n switch (type) {\r\n case 'color':\r\n return ;\r\n case 'label':\r\n return <>{data.label};\r\n default:\r\n return ;\r\n }\r\n}\r\n","//type\r\nimport { ExpandMore } from '@mui/icons-material';\r\nimport {\r\n Accordion,\r\n AccordionDetails,\r\n AccordionSummary,\r\n Box,\r\n Card,\r\n Divider,\r\n List,\r\n styled,\r\n Typography\r\n} from '@mui/material';\r\nimport { Skill, StudyPlanItemHomework } from '../../../../@types/pedagogy';\r\nimport ChapterItemCard from '../details/ChapterItemCard';\r\nimport SkillStatusIndicator from './SkillStatusIndicator';\r\n\r\n//--------------------------------------------------\r\n\r\n//type\r\ntype SkillCardListProps = {\r\n skills?: Skill[];\r\n homeworks?: Array;\r\n};\r\n\r\n//--------------------------------------------------\r\n\r\n//Composant de génération de la box d'affichage des compétences\r\nexport default function SkillCardList({ skills, homeworks }: SkillCardListProps) {\r\n return (\r\n \r\n {skills?.map((s, index) => {\r\n return (\r\n \r\n h.homeworkBase.skillIds.includes(s.id)\r\n ) || []\r\n }\r\n />\r\n );\r\n })}\r\n \r\n );\r\n}\r\n\r\n//-----------------------------------------------------------\r\nconst RootStyle = styled(Card)(({ theme }) => ({\r\n padding: 10,\r\n marginBottom: 5\r\n}));\r\n\r\nconst SkillStyle = styled(AccordionSummary)(({ theme }) => ({\r\n backgroundColor: theme.palette.grey[100],\r\n borderRadius: 10\r\n}));\r\n\r\n//-----------------------------------------------------------\r\n/**\r\n * Dé&tails de la compétence\r\n * @param studyPlanItemHomeworks : Liste des supprts de type devoirs\r\n * @returns\r\n */\r\nfunction SkillCard({\r\n skill,\r\n studyPlanItemHomeworks\r\n}: {\r\n skill: Skill;\r\n studyPlanItemHomeworks: Array;\r\n}) {\r\n return (\r\n \r\n \r\n }>\r\n \r\n \r\n {skill.label}\r\n \r\n Compétence : \r\n \r\n \r\n\r\n \r\n {skill.homeworkKeys.length} évaluation(s)\r\n \r\n \r\n \r\n \r\n {studyPlanItemHomeworks.map((_item, index) => {\r\n const myKey = `${_item.key}_${skill.id}${index}`;\r\n return (\r\n
    \r\n \r\n \r\n
    \r\n );\r\n })}\r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n","import { ReactNode, useState } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport arrowIosBackFill from '@iconify/icons-eva/arrow-ios-back-fill';\r\nimport arrowIosForwardFill from '@iconify/icons-eva/arrow-ios-forward-fill';\r\n\r\n//material\r\nimport { Alert, Button, Card, CardContent, Grid, IconButton, Typography } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\n// utils\r\nimport { addTime, fDate, formatAPI, getWeekDays, getWeekDaysMove } from 'utils/formatTime';\r\n\r\n//type\r\nimport { AgendaEvent, AgendaScheduleTeacher, TimeSlot } from '../../../@types/agenda';\r\nimport { TimeSlotsDisplay } from './TimeSlotsDisplay';\r\n\r\n//------------------------------------------------------\r\nexport type TimeSlotsWeekDisplayProps = {\r\n events: Array;\r\n onSelect(metadata: AgendaScheduleTeacher, timeSlot: TimeSlot): void;\r\n duration: number;\r\n};\r\n\r\nexport default function TimeSlotsWeekDisplay({\r\n events,\r\n duration,\r\n onSelect\r\n}: TimeSlotsWeekDisplayProps) {\r\n const [isError, setIsError] = useState(false);\r\n\r\n const handleSelect = (\r\n slots: Array,\r\n metadata: AgendaScheduleTeacher,\r\n timeSlot: TimeSlot\r\n ) => {\r\n /*controler la durée*/\r\n if (duration > 0) {\r\n const endTime = parseInt(fDate(addTime(timeSlot.dateStart, duration), 'HHmm'));\r\n const startTime = parseInt(fDate(timeSlot.dateStart, 'HHmm'));\r\n\r\n let value = slots\r\n .filter(\r\n (w) =>\r\n startTime <= parseInt(fDate(w.dateStart, 'HHmm')) &&\r\n endTime > parseInt(fDate(w.dateStart, 'HHmm'))\r\n )\r\n .reduce((accumaleur, currentValue) => accumaleur + currentValue.duration, 0);\r\n\r\n if (value < duration) {\r\n setIsError(true);\r\n return;\r\n }\r\n }\r\n\r\n onSelect(metadata, timeSlot);\r\n };\r\n\r\n return (\r\n \r\n \r\n {isError && (\r\n \r\n Erreur : le créneau que vous avez sélectionné est insuffisant.\r\n
    \r\n Veuillez selectionner un créneau de {duration} minutes ou rechercher\r\n plusieurs créneaux à la suite pour un total de {duration} minutes.\r\n
    \r\n )}\r\n\r\n {duration > 0 && (\r\n \r\n Attention la durée du rendez vous est de {duration} minutes.\r\n
    \r\n \r\n S'il n'y a pas de créneaux de {duration} minutes disponibles, vous devez rechercher\r\n plusieurs créneaux à la suite pour cumuler {duration} minutes.\r\n \r\n Sélectionnez le premier horaire du groupe de créneaux repéré, notre système vous réserve\r\n les créneaux suivants pour une durée de {duration} min.\r\n
    \r\n
    \r\n )}\r\n\r\n \r\n {(dates: Array) => {\r\n return (\r\n \r\n {dates\r\n .filter((w) => w.getDay() !== 0) //sauf dimanche\r\n .map((date, index) => {\r\n const dateCurrent = formatAPI(date);\r\n const metadatas = events.filter((w) => w.start === dateCurrent)[0]?.metadatas;\r\n return (\r\n \r\n \r\n {fDate(date, 'eeee')}\r\n \r\n \r\n {fDate(date, 'dd MMM')}\r\n \r\n {metadatas == null ? (\r\n -\r\n ) : (\r\n <>\r\n {metadatas.map((metadata: any) => {\r\n return (\r\n \r\n handleSelect(metadata.timeSlots, metadata, timeSlot)\r\n }\r\n isSmall={true}\r\n hourLimit={metadata.hourLimit}\r\n />\r\n );\r\n })}\r\n \r\n )}\r\n \r\n );\r\n })}\r\n
    \r\n );\r\n }}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\n//-------------------------------------------------------\r\n\r\nconst initWeekDaysControl = (date: Date) => {\r\n return getWeekDays(date);\r\n};\r\n\r\ntype WeekDaysControlProps = {\r\n date?: Date;\r\n children: any;\r\n};\r\n\r\nfunction WeekDaysControl({ children, date = new Date() }: WeekDaysControlProps) {\r\n const [dates, setDates] = useState(initWeekDaysControl(date));\r\n\r\n const handleMove = (upOrDown: boolean) => {\r\n setDates(getWeekDaysMove(dates[0], upOrDown));\r\n };\r\n\r\n return (\r\n \r\n \r\n handleMove(false)}>\r\n \r\n \r\n\r\n \r\n {fDate(dates[0], 'MMMM')}\r\n \r\n\r\n handleMove(true)}>\r\n \r\n \r\n \r\n {children(dates)}\r\n \r\n );\r\n}\r\n","import { Icon } from '@iconify/react';\r\nimport arrowIosBackFill from '@iconify/icons-eva/arrow-ios-back-fill';\r\n// material\r\nimport { Stack, List, TextField, MenuItem, Avatar } from '@mui/material';\r\nimport { Box } from '@mui/system';\r\n\r\n//mapper\r\nimport { convertAgendaEventToMeeting } from 'mapper/agendaMap';\r\n\r\n// redux\r\nimport { dispatch, RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { getMeetings, getSchedulesEventByDateAndMaterial } from 'redux/slices/agenda';\r\nimport { selectMeetingByEvent } from 'redux/slices/meeting';\r\n\r\n//Type\r\nimport {\r\n AgendaEvent,\r\n AgendaScheduleTeacher,\r\n TimeSlot,\r\n AgendaState,\r\n AgendaEventType,\r\n ScheduleType\r\n} from '../../../@types/agenda';\r\n\r\nimport { HomeworkBase, HomeworkType, Material, Teacher } from '../../../@types/pedagogy';\r\n\r\n//Utils\r\nimport { addTime, fDate, formatAPI } from 'utils/formatTime';\r\n\r\n//Composant\r\nimport { TimeSlotsFilter, TimeSlotTeacher } from './TimeSlotsFilter';\r\nimport Scrollbar from '../../Scrollbar';\r\nimport { useCallback, useEffect, useState } from 'react';\r\nimport { MeetingForm } from '../meeting/MeetingForm';\r\nimport { RowItemDisplay } from 'components/RowListItem';\r\nimport TimeSlotsWeekDisplay from './TimeSlotsWeekDisplay';\r\nimport MeetingAlertMessageOral from '../meeting/MeetingAlertMessageOral';\r\nimport { MeetingStatus } from '../../../@types/meeting';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport { SheduleTeacherMessage } from './ScheduleTeacherMessage';\r\n\r\ntype ScheduleTeacherEventFormProps = {\r\n homework?: HomeworkBase | null;\r\n material?: Material | null;\r\n onClose: VoidFunction;\r\n defaultPro?: string | null; // Code Pro du professeur par défaut\r\n};\r\n\r\nexport function getTeacherListForMeeting(\r\n events: Array,\r\n materialId: string,\r\n homework: HomeworkBase | null\r\n): Array {\r\n let teacherList: Array = [];\r\n\r\n events\r\n .filter(\r\n (w: AgendaEvent) =>\r\n w.eventType === AgendaEventType.ScheduleTeacher &&\r\n w.metadatas.some((m: any) => m.material.id === materialId) &&\r\n ((homework != null &&\r\n homework.homeworkType === HomeworkType.Voice &&\r\n w.metadatas.some((s: any) => [ScheduleType.Mixte, ScheduleType.Oral].includes(s.type))) ||\r\n w.metadatas.some((s: any) =>\r\n [ScheduleType.Mixte, ScheduleType.standard].includes(s.type)\r\n ))\r\n )\r\n .map((w) =>\r\n w.metadatas.map((x: any) => {\r\n if (!teacherList.some((w: any) => w.id === x.teacher.id)) teacherList.push(x.teacher);\r\n })\r\n );\r\n\r\n return teacherList;\r\n}\r\n\r\n/**\r\n * Liste des permanences professeurs\r\n * Filtre matiere de permanence et devoir\r\n * Extraction des matières et des professeurs des permanences\r\n *\r\n * @param param0\r\n * @returns\r\n */\r\nexport const ScheduleTeacherEventsForm = ({\r\n material,\r\n homework = null,\r\n onClose,\r\n defaultPro\r\n}: ScheduleTeacherEventFormProps) => {\r\n const { events, materials } = useSelector((state: RootState) => state.agenda);\r\n\r\n const [materialId, setMaterialId] = useState(material?.scheduleId || materials[0]?.id);\r\n const [teacher, setTeacher] = useState<{ list: Array; selected: Teacher | null }>({\r\n list: [],\r\n selected: null\r\n });\r\n\r\n const [isOpenMeeting, setIsOpenMeeting] = useState(false);\r\n const duration =\r\n homework !== null && homework?.homeworkType === HomeworkType.Voice ? homework?.duration : 0;\r\n\r\n const handleChange = (e: any) => {\r\n setMaterialId(e.target.value);\r\n };\r\n\r\n /**\r\n * Liste des profs suivants la matiere\r\n */\r\n useEffect(() => {\r\n (function getTeacherByMaterial() {\r\n let teacherList: Array = getTeacherListForMeeting(events, materialId, homework);\r\n\r\n let selectedTeacher = null;\r\n\r\n if (teacherList?.length > 0) {\r\n if (defaultPro && defaultPro !== '') {\r\n selectedTeacher = teacherList.find((t) => t.id === defaultPro);\r\n }\r\n\r\n if (!selectedTeacher) {\r\n selectedTeacher = teacherList[0];\r\n }\r\n }\r\n\r\n setTeacher({ list: teacherList, selected: selectedTeacher });\r\n })();\r\n }, [materialId]);\r\n\r\n /**\r\n * Choix de l'élève\r\n *\r\n */\r\n const handleSelect = (metadata: AgendaScheduleTeacher, timeSlot: TimeSlot) => {\r\n let meeting = convertAgendaEventToMeeting(metadata, timeSlot);\r\n\r\n meeting.homework =\r\n homework !== null && homework?.homeworkType === HomeworkType.Voice ? homework : null; //récupérer le devoir si il est présent\r\n\r\n if (duration > 0) {\r\n // definir la date de fin\r\n meeting.dateEnd = fDate(addTime(meeting.dateStart, duration), 'yyyy-MM-dd HH:mm:00');\r\n }\r\n\r\n dispatch(selectMeetingByEvent(meeting));\r\n setIsOpenMeeting(true);\r\n };\r\n\r\n /* Filtre des permanences suivant la matiere et le prof */\r\n const eventsFiltered = useCallback(() => {\r\n const eventsCurrent: Array = [];\r\n events\r\n .filter((w: AgendaEvent) => w.eventType === AgendaEventType.ScheduleTeacher)\r\n .map((event) => {\r\n const eventsFind = event.metadatas.filter(\r\n (metaEvent: any) =>\r\n metaEvent.material.id === materialId && metaEvent.teacher.id === teacher.selected?.id\r\n );\r\n if (eventsFind.length > 0) {\r\n eventsCurrent.push({ ...event, metadatas: eventsFind });\r\n }\r\n });\r\n\r\n return eventsCurrent;\r\n }, [teacher, materialId]);\r\n\r\n /** Controler que l'élève n'a pas deja pris un rendez vous pour cette matiere ou prf */\r\n /** NB : ne s'applique pas pour les devoirs oraux (dans ce cas les doublons sont autorisés) */\r\n const isDuplicate = events.some(\r\n (w: AgendaEvent) =>\r\n w.eventType === AgendaEventType.Meeting &&\r\n homework?.homeworkType !== HomeworkType.Voice &&\r\n w.start > formatAPI(new Date()) &&\r\n (w.metadatas.material?.id === materialId ||\r\n w.metadatas.teacher?.id === teacher.selected?.id) &&\r\n w.metadatas?.status === MeetingStatus.Registered\r\n );\r\n\r\n if (eventsFiltered.length === 0 && teacher.list.length === 0) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n const materialsSorted = [...materials].sort((a, b) => (a.label > b.label ? 1 : -1));\r\n\r\n return (\r\n \r\n {isOpenMeeting ? (\r\n setIsOpenMeeting(false)}\r\n onClose={onClose}\r\n homework={\r\n homework !== null && homework?.homeworkType === HomeworkType.Voice ? homework : null\r\n }\r\n />\r\n ) : (\r\n \r\n \r\n \r\n 1}\r\n >\r\n \r\n {materialsSorted.map((option) => (\r\n \r\n {option.label}\r\n \r\n ))}\r\n \r\n \r\n\r\n 2}\r\n >\r\n \r\n {teacher.list.map((t: Teacher) => {\r\n return (\r\n setTeacher({ ...teacher, selected: value })}\r\n />\r\n );\r\n })}\r\n \r\n \r\n 3}\r\n />\r\n {isDuplicate ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { Typography } from '@mui/material';\r\nimport { Meeting } from '../../../@types/meeting';\r\nimport { RowItemDisplayAlert } from 'components/RowListItem';\r\nimport usePerson from 'hooks/usePerson';\r\n\r\ntype MeetingAlertMessageOralProps = {\r\n meeting?: Meeting | null;\r\n};\r\n\r\nexport default function MeetingAlertMessageOral({ meeting }: MeetingAlertMessageOralProps) {\r\n const { Gender, getGender } = usePerson();\r\n\r\n const teacherLabel = (meeting?: Meeting | null) => {\r\n if (meeting?.teacher?.civility) {\r\n let gender = getGender(meeting?.teacher?.civility);\r\n switch (gender) {\r\n case Gender.MALE:\r\n return 'Votre formateur';\r\n case Gender.FEMALE:\r\n return 'Votre formatrice';\r\n }\r\n }\r\n return 'Votre formateur / formatrice';\r\n };\r\n\r\n return (\r\n \r\n \r\n Attention, si votre demande concerne le passage d’une évaluation orale, il\r\n faut prendre le rendez-vous via la page de l'évaluation orale. Si cela n’est pas fait, votre\r\n passage d'évaluation vous sera refusé le jour du rendez-vous.\r\n
    À bientôt ! {teacherLabel(meeting)}\r\n
    \r\n
    \r\n );\r\n}\r\n","export default function usePerson() {\r\n enum Gender {\r\n MALE,\r\n FEMALE,\r\n UNDEFINED\r\n }\r\n\r\n const getGender = (civility: String) => {\r\n switch (civility) {\r\n case 'M.':\r\n return Gender.MALE;\r\n case 'Mme':\r\n case 'Mlle':\r\n return Gender.FEMALE;\r\n default:\r\n return Gender.UNDEFINED;\r\n }\r\n };\r\n\r\n return {\r\n getGender,\r\n Gender\r\n };\r\n}\r\n","import SimpleBarReact, { Props } from 'simplebar-react';\r\n// material\r\nimport { alpha, styled } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled('div')(({ theme }) => ({\r\n flexGrow: 1,\r\n height: '100%',\r\n overflow: 'hidden'\r\n}));\r\n\r\nconst SimpleBarStyle = styled(SimpleBarReact)(({ theme }) => ({\r\n maxHeight: '100%',\r\n '& .simplebar-scrollbar': {\r\n '&:before': {\r\n backgroundColor: alpha(theme.palette.grey[600], 0.48)\r\n },\r\n '&.simplebar-visible:before': {\r\n opacity: 1\r\n }\r\n },\r\n '& .simplebar-track.simplebar-vertical': {\r\n width: 10\r\n },\r\n '& .simplebar-track.simplebar-horizontal .simplebar-scrollbar': {\r\n height: 6\r\n },\r\n '& .simplebar-mask': {\r\n zIndex: 'inherit'\r\n }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function Scrollbar({ children, sx, ...other }: BoxProps & Props) {\r\n const isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(\r\n navigator.userAgent\r\n );\r\n\r\n if (isMobile) {\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n {children}\r\n \r\n \r\n );\r\n}\r\n","import { Button, Typography } from '@mui/material';\r\nimport { Progression } from '../../../@types/pedagogy';\r\nimport useAuth from 'hooks/useAuth';\r\n\r\ntype ScoreAvgProgressProps = {\r\n progression: Progression;\r\n dense?: boolean;\r\n onClick?: () => void;\r\n};\r\n\r\nexport const ScoreAvgProgress = ({\r\n progression,\r\n dense = false,\r\n onClick\r\n}: ScoreAvgProgressProps) => {\r\n const { getContractCurrent } = useAuth();\r\n const { isScore, scoreCount, score } = progression;\r\n if (!isScore) return <>;\r\n\r\n const handleClick = () => {\r\n if (onClick) onClick();\r\n };\r\n\r\n const content = (\r\n \r\n Moyenne{' '}\r\n {scoreCount > 0 && score ? `: ${score.toFixed(2)}/${getContractCurrent().scoreOn}` : ''}\r\n \r\n );\r\n\r\n if (!onClick) return content;\r\n\r\n return (\r\n \r\n );\r\n};\r\n","import { FileType } from './common';\r\n\r\nexport type MediaFileState = {\r\n isLoading: boolean;\r\n error: any;\r\n mediaFiles: Array;\r\n hash: string;\r\n};\r\n\r\nexport interface MediaFileCategory {\r\n label: string;\r\n}\r\n\r\nexport enum CategoryType {\r\n None = 0,\r\n Magazines = 1,\r\n Important = 3,\r\n StudyPlan = 4,\r\n Pedagogy = 5\r\n}\r\n\r\nexport enum MediaPerimetre {\r\n Standard = 0,\r\n Corrected = 1,\r\n Pre = 2,\r\n Pre2 = 3,\r\n Examen = 4,\r\n stage = 5,\r\n Regsitered = 6\r\n}\r\n\r\nexport enum MediaFileType {\r\n None = 0,\r\n Pdf = 1,\r\n PdfSecurises = 2,\r\n PdfPersonnalise = 3,\r\n Html = 4,\r\n UrlText = 5,\r\n Images = 8,\r\n Autres = 9,\r\n Interne = 10,\r\n Audio = 23,\r\n Videos = 30,\r\n Merge = 31\r\n}\r\n\r\nexport interface MediaFileListResponse {\r\n result: MediaFileListResult;\r\n items: MediaFileInfo[];\r\n}\r\n\r\nexport enum MediaFileListResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport interface MediaFileListRequest {\r\n listId: number[];\r\n contractId: number;\r\n amendmentId: number;\r\n categoryType: CategoryType;\r\n}\r\n\r\nexport interface MediaFile {\r\n id: number;\r\n observation: string;\r\n url: string;\r\n typFicMed: MediaFileType;\r\n isS3: boolean;\r\n referentiel: boolean;\r\n token: FileInfoToken;\r\n}\r\n\r\nexport interface MediaFileInfo extends MediaFile {\r\n fileName: string;\r\n title: string;\r\n size: string;\r\n category: MediaFileCategory;\r\n read: boolean;\r\n fileType: FileType;\r\n perimetre: MediaPerimetre;\r\n references: Array;\r\n}\r\n\r\nexport interface FileInfoToken {\r\n fileName: string;\r\n fileNameS3: string;\r\n brandId: string;\r\n}\r\n","import { capitalize } from 'lodash';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst PRIMARY_NAME = ['A', 'N', 'H', 'L', 'Q', '9', '8'];\r\nconst INFO_NAME = ['F', 'G', 'T', 'I', 'J', '1', '2', '3'];\r\nconst SUCCESS_NAME = ['K', 'D', 'Y', 'B', 'O', '4', '5'];\r\nconst WARNING_NAME = ['P', 'E', 'R', 'S', 'C', 'U', '6', '7'];\r\nconst ERROR_NAME = ['V', 'W', 'X', 'M', 'Z'];\r\n\r\nfunction getFirstCharacter(name: string) {\r\n return capitalize(name && name.charAt(0));\r\n}\r\n\r\nfunction getAvatarColor(name: string) {\r\n if (PRIMARY_NAME.includes(getFirstCharacter(name))) return 'primary';\r\n if (INFO_NAME.includes(getFirstCharacter(name))) return 'info';\r\n if (SUCCESS_NAME.includes(getFirstCharacter(name))) return 'success';\r\n if (WARNING_NAME.includes(getFirstCharacter(name))) return 'warning';\r\n if (ERROR_NAME.includes(getFirstCharacter(name))) return 'error';\r\n return 'default';\r\n}\r\n\r\nexport default function createAvatar(name: string) {\r\n return {\r\n name: getFirstCharacter(name),\r\n color: getAvatarColor(name)\r\n } as const;\r\n}\r\n","import { styled } from '@mui/material/styles';\r\nimport { Typography, Box, BoxProps } from '@mui/material';\r\nimport { ReactNode } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled(Box)(({ theme }) => ({\r\n height: '100%',\r\n display: 'flex',\r\n textAlign: 'center',\r\n alignItems: 'center',\r\n flexDirection: 'column',\r\n // justifyContent: 'center',\r\n padding: theme.spacing(1, 2),\r\n overflow: 'auto'\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface EmptyContentProps extends BoxProps {\r\n title: string;\r\n img?: string;\r\n description?: ReactNode;\r\n withoutImg?: boolean;\r\n header?: ReactNode;\r\n}\r\n\r\nexport default function EmptyContent({\r\n title,\r\n description,\r\n img,\r\n withoutImg = false,\r\n header,\r\n ...other\r\n}: EmptyContentProps) {\r\n return (\r\n \r\n {!withoutImg && (\r\n \r\n )}\r\n\r\n {header}\r\n\r\n \r\n {title}\r\n \r\n\r\n {description && (\r\n \r\n {description}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { forwardRef } from 'react';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Avatar, AvatarProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype AvatarColor = 'default' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport interface MAvatarProps extends AvatarProps {\r\n color?: AvatarColor;\r\n}\r\n\r\nconst MAvatar = forwardRef(\r\n ({ color = 'default', children, sx, ...other }, ref) => {\r\n const theme = useTheme();\r\n\r\n if (color === 'default') {\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n }\r\n);\r\n\r\nexport default MAvatar;\r\n","import { last } from 'lodash';\r\nimport { ReactElement } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport { Box, Link, Typography, Breadcrumbs, BreadcrumbsProps } from '@mui/material';\r\nimport { styled } from '@mui/system';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst Separator = (\r\n \r\n);\r\n\r\ntype TLink = {\r\n href?: string;\r\n name: string;\r\n icon?: ReactElement;\r\n};\r\n\r\nfunction LinkItem({ link }: { link: TLink }) {\r\n const { href, name, icon } = link;\r\n return (\r\n div': { display: 'inherit' }\r\n }}\r\n >\r\n {icon && (\r\n \r\n {icon}\r\n \r\n )}\r\n {name}\r\n \r\n );\r\n}\r\n\r\nexport interface MBreadcrumbsProps extends BreadcrumbsProps {\r\n links: TLink[];\r\n activeLast?: boolean;\r\n}\r\n\r\nexport default function MBreadcrumbs({ links, activeLast = false, ...other }: MBreadcrumbsProps) {\r\n const currentLink = last(links)?.name;\r\n\r\n const listDefault = links.map((link, index) => );\r\n const listActiveLast = links.map((link, index) => (\r\n
    \r\n {link.name !== currentLink ? (\r\n \r\n ) : (\r\n \r\n {currentLink}\r\n \r\n )}\r\n
    \r\n ));\r\n\r\n return (\r\n \r\n {activeLast ? listDefault : listActiveLast}\r\n \r\n );\r\n}\r\n","import { forwardRef } from 'react';\r\n// material\r\nimport { IconButton, IconButtonProps } from '@mui/material';\r\n//\r\nimport { ButtonAnimate } from '../animate';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst MIconButton = forwardRef(\r\n ({ children, ...other }, ref) => (\r\n \r\n \r\n {children}\r\n \r\n \r\n )\r\n);\r\n\r\nexport default MIconButton;\r\n","import { ReactNode } from 'react';\r\n// material\r\nimport { Breakpoint, Theme, useMediaQuery } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype MHiddenProps = {\r\n children: ReactNode;\r\n width:\r\n | 'xsDown'\r\n | 'smDown'\r\n | 'mdDown'\r\n | 'lgDown'\r\n | 'xlDown'\r\n | 'xsUp'\r\n | 'smUp'\r\n | 'mdUp'\r\n | 'lgUp'\r\n | 'xlUp';\r\n};\r\n\r\nexport default function MHidden({ width, children }: MHiddenProps) {\r\n const breakpoint = width.substring(0, 2) as Breakpoint;\r\n const hiddenUp = useMediaQuery((theme) => theme.breakpoints.up(breakpoint));\r\n const hiddenDown = useMediaQuery((theme) => theme.breakpoints.down(breakpoint));\r\n\r\n if (width.includes('Down')) {\r\n return hiddenDown ? null : <>{children};\r\n }\r\n\r\n if (width.includes('Up')) {\r\n return hiddenUp ? null : <>{children};\r\n }\r\n\r\n return null;\r\n}\r\n","import { forwardRef } from 'react';\r\n// material\r\nimport { CircularProgress, IconButton, IconButtonProps, Tooltip } from '@mui/material';\r\n\r\nimport { styled } from '@mui/material/styles';\r\nimport { ReactNode } from 'react';\r\nimport { FileType } from '../@types/common';\r\nimport { Icon } from '@iconify/react';\r\nimport fileDownload from '@iconify/icons-ic/file-download';\r\nimport FileAction from './file/FileAction';\r\nimport { FileInfoToken } from '../@types/media';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { useSnackbar } from 'notistack';\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled(IconButton)(({ theme }) => ({\r\n color: theme.palette.primary.main,\r\n backgroundColor: '#F3F3F3'\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport interface MIconButtonProps extends IconButtonProps {\r\n toggle?: boolean;\r\n children: ReactNode;\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst MIconButton = forwardRef(\r\n ({ children, ...other }, ref) => (\r\n \r\n {children}\r\n \r\n )\r\n);\r\n\r\n// ----------------------------------------------------------------------\r\nexport type MIconButtonDowloadFile = {\r\n id: number;\r\n fileType: FileType;\r\n fileName?: string;\r\n isS3: boolean;\r\n token: FileInfoToken;\r\n referentiel: boolean;\r\n};\r\n\r\nexport type MIconButtonDowloadProps = {\r\n file: MIconButtonDowloadFile;\r\n};\r\n\r\n/**\r\n * Téléchargement des fichiers\r\n */\r\nexport const MIconButtonDowload = ({ file }: MIconButtonDowloadProps) => {\r\n const { id, fileType, fileName, referentiel } = file;\r\n\r\n return (\r\n \r\n {(download, getFile, downloadImage, isLoading, errorDownload, downloadUrl, downloadS3) => (\r\n \r\n \r\n file.isS3\r\n ? downloadS3(\r\n file.token.fileNameS3,\r\n file.token.fileName,\r\n referentiel ? FileType.MediaReferentiel : fileType,\r\n id\r\n )\r\n : download(id, fileType, fileName)\r\n }\r\n >\r\n {isLoading ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default MIconButton;\r\n","import { AgendaEvent, AgendaSeminar, AgendaEventType } from '../@types/agenda';\r\nimport { VirtualClass, VirtualClassStatus } from '../@types/virtualClass';\r\nimport { Seminar, SeminarStatus } from '../@types/seminar';\r\nimport { convertStringToDate } from 'utils/formatTime';\r\n\r\nexport const convertVirtualClassToAgendaEvent = (virtualClass: VirtualClass): AgendaEvent => {\r\n return {\r\n allDay: !virtualClass.registered,\r\n start: virtualClass.dateStart,\r\n end: virtualClass.dateEnd,\r\n title: virtualClass.title,\r\n icon: 'PermContactCalendar',\r\n eventType: AgendaEventType.VirtualClass,\r\n metadatas: {\r\n countMaxPlaces: virtualClass.countMaxPlaces,\r\n registered: virtualClass.registered,\r\n countRegistered: virtualClass.countRegistered,\r\n teacher: virtualClass.teacher,\r\n state: virtualClass.state,\r\n waitingList: virtualClass.waitingList,\r\n isReplay: virtualClass.isReplay,\r\n start: virtualClass.dateStart,\r\n end: virtualClass.dateEnd,\r\n registeredId: virtualClass.meeting?.id\r\n } as AgendaSeminar,\r\n color: '#34CECD',\r\n textColor: virtualClass.registered ? '#34CECD' : '',\r\n id: virtualClass.id.toString()\r\n };\r\n};\r\n\r\nexport const convertVirtualClassStatus = (state: VirtualClassStatus): SeminarStatus => {\r\n switch (state) {\r\n case VirtualClassStatus.Open:\r\n return SeminarStatus.Open;\r\n case VirtualClassStatus.Full:\r\n return SeminarStatus.Full;\r\n case VirtualClassStatus.Display:\r\n return SeminarStatus.Display;\r\n case VirtualClassStatus.Close:\r\n return SeminarStatus.Close;\r\n default:\r\n return SeminarStatus.Cancel;\r\n }\r\n};\r\n\r\nexport const convertAgendaEventToSeminar = (event: AgendaEvent): Seminar => {\r\n let metadata = event.metadatas as AgendaSeminar;\r\n return {\r\n id: event.id,\r\n title: event.title,\r\n dateStart: metadata.start,\r\n dateEnd: metadata.end,\r\n registered: metadata.registered,\r\n teacher: metadata.teacher,\r\n state: metadata.state,\r\n waitingList: metadata.waitingList,\r\n countMaxPlaces: metadata.countMaxPlaces,\r\n isReplay: metadata.isReplay,\r\n countRegistered: metadata.countRegistered\r\n } as Seminar;\r\n};\r\n","import { map, filter } from 'lodash';\r\nimport { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\nimport { formatAPI, getDateMonthGlissant } from '../../utils/formatTime';\r\n\r\n// @types\r\nimport {\r\n AgendaEvent,\r\n AgendaEventListResponse,\r\n AgendaEventListResult,\r\n AgendaEventType,\r\n AgendaState\r\n} from '../../@types/agenda';\r\nimport { ListItemType } from '../../@types/common';\r\nimport { MeetingListResponse, MeetingListResult } from '../../@types/meeting';\r\n\r\n//mapper\r\nimport * as agendaMap from '../../mapper/agendaMap';\r\nimport {\r\n VirtualClass,\r\n VirtualClassListResponse,\r\n VirtualClassListResult\r\n} from '../../@types/virtualClass';\r\nimport { convertVirtualClassToAgendaEvent } from 'mapper/virtualClassMap';\r\nimport { WorkshopListResponse, WorkshopListResult } from '../../@types/workshop';\r\nimport { convertWorkshopToAgendaEvents } from 'mapper/workshopMap';\r\nimport { convertTaskToAgendaEvent } from 'mapper/taskMap';\r\nimport { TaskListResult, TaskListResponse } from '../../@types/task';\r\nimport { ModuleType } from '../../@types/contract';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: AgendaState = {\r\n isLoading: false,\r\n error: false,\r\n events: [],\r\n materials: [],\r\n isOpenModal: false,\r\n selectedEvent: null,\r\n selectedRange: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'agenda',\r\n initialState,\r\n reducers: {\r\n logoutUser(state) {},\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n init(state) {\r\n state.events = [];\r\n state.materials = [];\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n getSchedulesEventSuccess(state, action) {\r\n state.isLoading = false;\r\n state.events = [...state.events, ...action.payload.events];\r\n state.materials = action.payload.materials;\r\n },\r\n\r\n getOtherEventsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.events = [...state.events, ...action.payload];\r\n },\r\n\r\n // SELECT EVENT\r\n selectEvent(state, action) {\r\n state.isOpenModal = true;\r\n state.selectedEvent = action.payload;\r\n state.error = null;\r\n },\r\n\r\n // SELECT EVENT by key(id, eventType)\r\n selectEventByKey(state, action) {\r\n const { id, type } = action.payload;\r\n\r\n state.selectedEvent = state.events.filter(\r\n (_event) => _event.id === id && _event.eventType === type\r\n )[0];\r\n state.isOpenModal = true;\r\n state.error = null;\r\n },\r\n\r\n // OPEN MODAL\r\n openModal(state) {\r\n state.isOpenModal = true;\r\n },\r\n\r\n // CLOSE MODAL\r\n closeModal(state) {\r\n state.isOpenModal = false;\r\n state.selectedEvent = null;\r\n state.selectedRange = null;\r\n },\r\n\r\n addEvent(state, action) {\r\n state.events = [...state.events, ...action.payload];\r\n state.isOpenModal = false;\r\n state.selectedEvent = null;\r\n },\r\n\r\n updateEvent(state, action) {\r\n const event = action.payload;\r\n\r\n const updateEvent = map(state.events, (_event) => {\r\n if (_event.id === event.id) {\r\n return event;\r\n }\r\n return _event;\r\n });\r\n\r\n state.isLoading = false;\r\n state.isOpenModal = false;\r\n state.events = updateEvent;\r\n },\r\n\r\n updateEventsObjective(state, action) {\r\n const events = action.payload;\r\n const allEventsWithoutObjective = filter(\r\n state.events,\r\n (evt) => evt.eventType != AgendaEventType.Homework\r\n );\r\n\r\n state.isLoading = false;\r\n state.isOpenModal = false;\r\n state.events = allEventsWithoutObjective.concat(events);\r\n },\r\n\r\n removeEvent(state, action) {\r\n const { eventId } = action.payload;\r\n const deleteEvent = filter(state.events, (evt) => evt.id != eventId);\r\n\r\n state.events = deleteEvent;\r\n state.isOpenModal = false;\r\n state.selectedEvent = null;\r\n },\r\n\r\n updateSeminar(state, action) {\r\n const eventId = action.payload.id.toString();\r\n const updateEvent = map(state.events, (_event) => {\r\n if (_event.id === eventId) {\r\n _event.allDay = !action.payload.registered;\r\n _event.metadatas.registered = action.payload.registered;\r\n _event.metadatas.waitingList = action.payload.waitingList;\r\n _event.metadatas.registeredId = action.payload.registeredId;\r\n _event.textColor = action.payload.registered ? '#34CECD' : '';\r\n return _event;\r\n }\r\n return _event;\r\n });\r\n\r\n state.events = updateEvent;\r\n state.isOpenModal = false;\r\n state.selectedEvent = null;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const {\r\n openModal,\r\n closeModal,\r\n selectEvent,\r\n selectEventByKey,\r\n addEvent,\r\n removeEvent,\r\n updateEvent,\r\n updateSeminar,\r\n updateEventsObjective,\r\n init,\r\n logoutUser\r\n} = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n//Liste des permanences professeurs\r\nexport function getSchedulesEvent() {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post(`/api/agenda/list`, {\r\n dateStart: formatAPI(new Date()),\r\n dateEnd: formatAPI(getDateMonthGlissant(6)),\r\n material: ''\r\n });\r\n\r\n const { result, list, materials } = response.data;\r\n\r\n switch (result) {\r\n case AgendaEventListResult.Success:\r\n let eventList = list;\r\n\r\n dispatch(\r\n slice.actions.getSchedulesEventSuccess({\r\n events: eventList,\r\n materials: materials.map((w) => {\r\n return {\r\n id: w.id,\r\n enabled: true,\r\n label: w.label,\r\n color: '#4a86fd'\r\n } as ListItemType;\r\n })\r\n })\r\n );\r\n\r\n break;\r\n case AgendaEventListResult.NotFound:\r\n dispatch(slice.actions.hasError(true));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n//Liste des permanences professeurs\r\nexport const getSchedulesEventByDateAndMaterial =\r\n (dateAPI: string, materialId: string) => (onError: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n const response = await axios.post(`/api/agenda/list`, {\r\n dateStart: dateAPI,\r\n dateEnd: dateAPI,\r\n material: materialId\r\n });\r\n\r\n const { result, list } = response.data;\r\n\r\n switch (result) {\r\n case AgendaEventListResult.Success:\r\n let eventList = list;\r\n\r\n dispatch(slice.actions.selectEvent(eventList[0]));\r\n\r\n break;\r\n case AgendaEventListResult.NotFound:\r\n onError();\r\n break;\r\n }\r\n } catch (error) {\r\n onError();\r\n }\r\n };\r\n };\r\n\r\n// ----------------------------------------------------------------------\r\n//Liste des rendez-vous\r\nexport function getMeetingsEvent() {\r\n return async () => {\r\n const { dispatch } = store;\r\n let response = await axios.get(`/api/meeting/list`);\r\n const { result, list } = response.data;\r\n switch (result) {\r\n case MeetingListResult.Success:\r\n let eventList = list.map((w: any) => {\r\n return agendaMap.convertMeetingToAgendaEvents(w);\r\n });\r\n dispatch(slice.actions.getOtherEventsSuccess(eventList));\r\n\r\n break;\r\n case MeetingListResult.NotFound:\r\n break;\r\n }\r\n };\r\n}\r\n\r\nexport const getVirtualClassList = () => (onSuccess: (items: VirtualClass[]) => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n const response = await axios.get('/api/virtualClass/list');\r\n const { list, result } = response.data;\r\n\r\n switch (result) {\r\n case VirtualClassListResult.Success:\r\n let virtualClassList = list.map((item) => convertVirtualClassToAgendaEvent(item));\r\n\r\n dispatch(slice.actions.getOtherEventsSuccess(virtualClassList));\r\n onSuccess(list);\r\n break;\r\n case VirtualClassListResult.NotFound:\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n};\r\n\r\nexport function getWorkshopList() {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n let response = await axios.get('/api/workshop/list');\r\n const { list, result } = response.data;\r\n switch (result) {\r\n case WorkshopListResult.Success:\r\n let eventList = convertWorkshopToAgendaEvents(list);\r\n dispatch(slice.actions.getOtherEventsSuccess(eventList));\r\n break;\r\n case WorkshopListResult.NotFound:\r\n break;\r\n }\r\n } catch (ex) {}\r\n };\r\n}\r\n\r\nexport function getTaskList() {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n let response = await axios.get('/api/agenda/task/list');\r\n const { list, result } = response.data;\r\n\r\n switch (result) {\r\n case TaskListResult.Success:\r\n let eventList = list.map((w: any) => {\r\n return convertTaskToAgendaEvent(w);\r\n });\r\n dispatch(slice.actions.getOtherEventsSuccess(eventList));\r\n break;\r\n case TaskListResult.NotFound:\r\n break;\r\n }\r\n } catch (ex) {}\r\n };\r\n}\r\n\r\n//Liste des redv\r\nexport function getMeetings(events: Array): Array {\r\n return events.filter((evt) => evt.eventType === AgendaEventType.Meeting);\r\n}\r\n\r\nexport const AgendaListItems: Array = [\r\n {\r\n id: AgendaEventType.Meeting.toString(),\r\n label: 'Rendez-vous formateurs',\r\n enabled: true,\r\n color: '#4A86FD',\r\n module: ModuleType.MeetingUpdate\r\n },\r\n {\r\n id: AgendaEventType.ScheduleTeacher.toString(),\r\n label: 'Permanences formateurs',\r\n enabled: true,\r\n color: '#4A86FD',\r\n module: ModuleType.MeetingUpdate\r\n },\r\n {\r\n id: AgendaEventType.Task.toString(),\r\n label: 'Supports pédagogiques',\r\n enabled: true,\r\n color: '#F0C163',\r\n module: ModuleType.Agenda\r\n },\r\n {\r\n id: AgendaEventType.Homework.toString(),\r\n label: 'Évaluations obligatoires',\r\n enabled: true,\r\n color: '#17C588',\r\n module: ModuleType.HomeworkUpdate\r\n },\r\n /* {\r\n id: AgendaEventType.Examens.toString(),\r\n label: 'Examens',\r\n enabled: true,\r\n color: '#A20025',\r\n },*/\r\n {\r\n id: AgendaEventType.Workshop.toString(),\r\n label: 'Ateliers',\r\n enabled: true,\r\n color: '#F49BCA',\r\n module: ModuleType.WorkshopView\r\n },\r\n {\r\n id: AgendaEventType.VirtualClass.toString(),\r\n label: 'Classes virtuelles',\r\n enabled: true,\r\n color: '#34CECD',\r\n module: ModuleType.VirtualClassView\r\n }\r\n /* {\r\n id:AgendaEventType.Internship.toString(), \r\n label: 'Stages',\r\n enabled: true,\r\n color: '#B935FB',\r\n },*/\r\n];\r\n","import { LoupeRounded, SearchRounded } from '@mui/icons-material';\r\nimport { IconButton } from '@mui/material';\r\nimport { Button, Stack, TextField } from '@mui/material';\r\nimport Selector from 'components/Selector';\r\nimport { Dispatch, useState } from 'react';\r\n\r\nconst SORT_OPTIONS = [\r\n { value: 'CreateDate', label: 'Les dernières' },\r\n { value: 'JobName', label: 'Intitulé du poste' },\r\n { value: 'CurrentAddress.Distance', label: 'Les plus proches' }\r\n];\r\n\r\nconst TYPE_OPTIONS = [\r\n { value: 0, label: 'Tous' },\r\n { value: 1, label: 'Stage' },\r\n { value: 2, label: 'CDI' },\r\n { value: 3, label: 'CDD' },\r\n { value: 4, label: 'Intérim' },\r\n { value: 5, label: 'Alternance' },\r\n { value: 6, label: 'Franchise' },\r\n { value: 7, label: 'Indépendant' },\r\n { value: 8, label: 'Associé(e)' }\r\n];\r\n// ----------------------------------------------------------------------\r\n\r\nexport enum DirectionType {\r\n ASC = 0,\r\n DSC = 1\r\n}\r\n\r\nexport interface JobFilterProps {\r\n sort: string;\r\n sortDirection: DirectionType;\r\n type: number;\r\n searchQuery: string;\r\n}\r\n\r\n/**\r\n * Filters des jobs\r\n * @param filter => objet filtre envoyé par le parent\r\n * @param setFilter => permet de modifier l'objet directement dans le parent\r\n * @returns\r\n */\r\nexport function JobFilter({\r\n filter,\r\n setFilter,\r\n onSearch\r\n}: {\r\n filter: JobFilterProps;\r\n setFilter: Dispatch;\r\n onSearch: () => void;\r\n}) {\r\n const handleChange = (e: any) => {\r\n setFilter({ ...filter, searchQuery: e.target.value });\r\n };\r\n\r\n return (\r\n \r\n setFilter({ ...filter, sort: value })}\r\n label=\"\"\r\n size=\"small\"\r\n sx={{ mr: 2 }}\r\n />\r\n\r\n setFilter({ ...filter, type: +value })}\r\n label={''}\r\n size=\"small\"\r\n sx={{ mr: 2 }}\r\n />\r\n\r\n \r\n\r\n \r\n \r\n );\r\n}\r\n","import { useState, useEffect } from 'react';\r\nimport { useDispatch } from 'redux/store';\r\nimport { Box } from '@mui/system';\r\nimport { Alert, Container, List, Stack, Typography } from '@mui/material';\r\nimport { ConfirmationNumber, Lock, Payment } from '@mui/icons-material';\r\n\r\n//utils\r\nimport axiosInstance from 'utils/axios';\r\n\r\n// type\r\nimport { PaymentAddResult, PaymentAddResponse } from '../../../@types/payment';\r\nimport { ModeAccess } from '../../../@types/account';\r\n\r\n//cmposant\r\nimport { RowItemDisplay, RowItemDisplayTitle } from 'components/RowListItem';\r\nimport Markdown from 'components/Markdown';\r\nimport { formatCardPayment } from 'utils/helper';\r\nimport useAuth from 'hooks/useAuth';\r\nimport AlertErrorMessage from 'components/AlertErrorMessage';\r\n\r\n//-----------------------------------------------------\r\nexport enum PaymentFormType {\r\n contractLate = 0,\r\n contractSchedule = 1,\r\n workShop = 2,\r\n overtime = 3\r\n}\r\n\r\nexport type PaymentFormProps = {\r\n type: PaymentFormType;\r\n params: string;\r\n amount: number;\r\n};\r\n\r\nexport default function PaymentForm({ type, amount, params }: PaymentFormProps) {\r\n const [formPayment, setFormPayment] = useState('');\r\n const [isError, setIsError] = useState(false);\r\n\r\n const { getFormatCurrency, student } = useAuth();\r\n\r\n const getUrlType = () => {\r\n const urlReturn = `urlreturn=${document.location.href}`;\r\n\r\n switch (type) {\r\n case PaymentFormType.contractLate:\r\n return `api/contract/payment/late/${params}?${urlReturn}`;\r\n case PaymentFormType.contractSchedule:\r\n return `api/contract/payment/schedule/${params}?${urlReturn}`;\r\n case PaymentFormType.workShop:\r\n return `api/workshop/payment/add/${params}?${urlReturn}`;\r\n case PaymentFormType.overtime:\r\n return `api/contract/overtime/${params}?${urlReturn}`;\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n (async function getLinkPayment() {\r\n try {\r\n let response = await axiosInstance.get(getUrlType(), {\r\n headers: { writeOnly: true }\r\n });\r\n const { result, content } = response.data;\r\n switch (result) {\r\n case PaymentAddResult.Success:\r\n if (content === '') {\r\n setIsError(true);\r\n return;\r\n }\r\n if (content.startsWith('https://')) {\r\n document.location.href = content;\r\n return;\r\n }\r\n setFormPayment(formatCardPayment(content));\r\n break;\r\n default:\r\n setIsError(true);\r\n }\r\n } catch (error) {\r\n setIsError(true);\r\n }\r\n })();\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n Paiement sécurisé}\r\n >\r\n\r\n }\r\n title={\r\n \r\n Somme à payer : \r\n \r\n {getFormatCurrency(amount)}\r\n \r\n \r\n }\r\n >\r\n\r\n }>\r\n {isError && (\r\n \r\n Nous rencontrons un problème actuellement, veuillez réessayer ultérieurement\r\n \r\n )}\r\n \r\n {formPayment === '' && !isError && (\r\n \r\n Recherche des modes de paiement en cours...\r\n \r\n )}\r\n \r\n \r\n \r\n La transaction s'effectue directement entre votre ordinateur et la Société Générale\r\n via une liaison sécurisée (SSL).\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { styled } from '@mui/material/styles';\r\nimport { Typography, Box, BoxProps } from '@mui/material';\r\nimport { ReactNode } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled(Box)(({ theme }) => ({\r\n height: '100%',\r\n display: 'flex',\r\n textAlign: 'left',\r\n alignItems: 'center',\r\n flexDirection: 'row',\r\n justifyContent: 'left',\r\n padding: theme.spacing(1, 2)\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface EmptyContentLargeProps extends BoxProps {\r\n title: string;\r\n img?: string;\r\n description?: ReactNode;\r\n withoutImg?: boolean;\r\n}\r\n\r\nexport default function EmptyContentLarge({\r\n title,\r\n description,\r\n img,\r\n withoutImg = false,\r\n ...other\r\n}: EmptyContentLargeProps) {\r\n return (\r\n \r\n {!withoutImg && (\r\n \r\n )}\r\n \r\n \r\n {title}\r\n \r\n\r\n {description && (\r\n \r\n {description}\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { useRef, useState } from 'react';\r\nimport { Icon } from '@iconify/react';\r\nimport searchFill from '@iconify/icons-eva/search-fill';\r\n\r\n// material\r\nimport {\r\n Box,\r\n List,\r\n Tooltip,\r\n Divider,\r\n FormControl,\r\n InputAdornment,\r\n OutlinedInput\r\n} from '@mui/material';\r\n\r\nimport { alpha, styled, useTheme } from '@mui/material/styles';\r\n\r\n// search\r\nimport { StudyPlanItemType, StudyPlanSearch } from '../../../../@types/pedagogy';\r\n\r\n// components\r\nimport { MIconButton } from 'components/@material-extend';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport ChapterItemCard from '../details/ChapterItemCard';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { getTypeSupport } from 'utils/helperSupport';\r\nimport { ToggleButton, ToggleButtonGroup } from '@mui/material';\r\n\r\n//---------------------------------------------------------------------\r\n\r\nconst SearchStyle = styled(OutlinedInput)(({ theme }) => ({\r\n '&.Mui-focused': { boxShadow: theme.customShadows.z8 },\r\n '& fieldset': {\r\n borderWidth: `1px !important`,\r\n borderColor: `${theme.palette.grey[500_32]} !important`\r\n },\r\n [theme.breakpoints.up('md')]: {\r\n width: 320,\r\n flexDirection: 'row'\r\n }\r\n}));\r\n\r\nconst SupportToggleGroup = styled(ToggleButtonGroup)(({ theme }) => ({\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n justifyContent: 'space-around',\r\n borderStyle: 'solid',\r\n borderColor: theme.palette.grey[300],\r\n borderWidth: '1px',\r\n borderRadius: theme.shape.borderRadius,\r\n marginTop: 10,\r\n padding: 0,\r\n width: 320\r\n}));\r\n\r\nconst SupportToggleButton = styled(ToggleButton)(({ theme }) => ({\r\n borderStyle: 'hidden',\r\n borderRadius: `8px !important`,\r\n margin: 4,\r\n padding: 4,\r\n '&.Mui-selected, &.Mui-selected:hover': {\r\n backgroundColor: `${alpha(theme.palette.primary.main, 0.08)} !important`\r\n }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst STUDY_PLAN_ITEM_TYPE_FILTER = [\r\n `${StudyPlanItemType.Pdf.toString()}|${StudyPlanItemType.Html.toString()}|${StudyPlanItemType.Annexe.toString()}`,\r\n StudyPlanItemType.Video.toString(),\r\n StudyPlanItemType.Audio.toString(),\r\n StudyPlanItemType.Url.toString(),\r\n StudyPlanItemType.Elearning.toString(),\r\n StudyPlanItemType.Homework.toString()\r\n];\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype SearchFilter = {\r\n searchText: string;\r\n supportType: string[];\r\n};\r\n\r\ntype StudyPlanSearchControlProps = {\r\n onChange: (value: string, types: StudyPlanItemType[]) => void;\r\n};\r\n\r\nfunction StudyPlanSearchControl({ onChange }: StudyPlanSearchControlProps) {\r\n const [filter, setFilter] = useState({ searchText: '', supportType: [] });\r\n const theme = useTheme();\r\n\r\n const getSupportTypes = (typeString: string[]) => {\r\n if (typeString?.length > 0) {\r\n let supportTypes: StudyPlanItemType[] = [];\r\n\r\n typeString.map((t) => {\r\n let newTypes: string[] = t.split('|');\r\n newTypes?.map((n: string) => supportTypes.push(parseInt(n) as StudyPlanItemType));\r\n });\r\n\r\n return supportTypes;\r\n }\r\n return [];\r\n };\r\n\r\n const handleChange = (e: any) => {\r\n setFilter((current) => {\r\n return { ...filter, searchText: e.target.value };\r\n });\r\n onChange(e.target.value, getSupportTypes(filter?.supportType));\r\n };\r\n\r\n const handleTypeClick = (event: React.MouseEvent, newSupportTypes: []) => {\r\n setFilter({ ...filter, supportType: newSupportTypes });\r\n if (filter?.searchText?.trim() !== '') {\r\n onChange(filter?.searchText, getSupportTypes(newSupportTypes));\r\n }\r\n };\r\n\r\n const handleKeyPress = (e: any) => {\r\n if (e.charCode === 13) {\r\n setFilter((current) => {\r\n return { ...filter, searchText: e.target.value };\r\n });\r\n onChange(e.target.value, getSupportTypes(filter?.supportType));\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n }\r\n onKeyPress={handleKeyPress}\r\n autoFocus\r\n />\r\n \r\n\r\n \r\n \r\n {STUDY_PLAN_ITEM_TYPE_FILTER.map((t: string) => {\r\n const itemTypeTab: string[] = t.split('|');\r\n const itemType =\r\n itemTypeTab?.length > 0 ? (parseInt(itemTypeTab[0]) as StudyPlanItemType) : null;\r\n if (itemType != null) {\r\n const { icon, label } = getTypeSupport(itemType, {\r\n color: filter?.supportType?.includes(t)\r\n ? theme.palette.primary.main\r\n : theme.palette.grey[600]\r\n });\r\n return (\r\n \r\n \r\n {icon}\r\n \r\n \r\n );\r\n }\r\n })}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default function StudyPlanSearchPopover() {\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n const [chapterItemList, setChapterItemList] = useState>([]);\r\n const { search } = useStudyPlan();\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setChapterItemList([]);\r\n setOpen(false);\r\n };\r\n\r\n const handleChange = (value: string, itemType?: StudyPlanItemType[]) => {\r\n const values = search(value, itemType);\r\n setChapterItemList(values);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n {chapterItemList.map((item) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { noCase } from 'change-case';\r\nimport { useRef, useState } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport { Icon } from '@iconify/react';\r\nimport syncFill from '@iconify/icons-eva/sync-fill';\r\nimport clockFill from '@iconify/icons-eva/clock-fill';\r\nimport doneAllFill from '@iconify/icons-eva/done-all-fill';\r\n// material\r\nimport {\r\n Box,\r\n List,\r\n Badge,\r\n Button,\r\n Avatar,\r\n Tooltip,\r\n Divider,\r\n Typography,\r\n ListItemText,\r\n ListSubheader,\r\n ListItemAvatar,\r\n ListItemButton,\r\n Alert\r\n} from '@mui/material';\r\n\r\nimport { StudyPlanItemUpdated } from '../../../../@types/pedagogy';\r\n\r\n// components\r\nimport { MIconButton } from 'components/@material-extend';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport MenuPopover from 'components/MenuPopover';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport ChapterItemCard from '../details/ChapterItemCard';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport type StudyPlanUpdatedPopoverProps = {\r\n chapterItemUpdatedList?: Array;\r\n};\r\n\r\nexport default function StudyPlanUpdatedPopover({\r\n chapterItemUpdatedList = []\r\n}: StudyPlanUpdatedPopoverProps) {\r\n const anchorRef = useRef(null);\r\n\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n if (chapterItemUpdatedList.length === 0) return <>;\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {open && (\r\n \r\n \r\n \r\n Supports pédagogiques mis à jour\r\n \r\n Retrouvez ici la liste des supports que vous avez déjà consultés/assimilés et qui\r\n ont été mis à jour depuis.\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n {chapterItemUpdatedList.map((updated) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { useRef, useState } from 'react';\r\n\r\nimport { Verified, Star, Settings, Filter, LocalActivity, Menu } from '@mui/icons-material';\r\nimport { Link as RouterLink, useNavigate } from 'react-router-dom';\r\n\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\n\r\nimport { StudyPlanItemUpdated } from '../../../../@types/pedagogy';\r\n\r\n// material\r\n\r\nimport {\r\n Button,\r\n Box,\r\n Divider,\r\n MenuItem,\r\n Tooltip,\r\n IconButton,\r\n FormControlLabel,\r\n Checkbox\r\n} from '@mui/material';\r\nimport { MIconButton } from 'components/@material-extend';\r\nimport MenuPopover from 'components/MenuPopover';\r\n\r\nimport StudyPlanSearchPopover from './StudyPlanSearchPopover';\r\nimport StudyPlanUpdatedPopover from './StudyPlanUpatedPopover';\r\nimport MeetingDrawer from 'components/_dashboard/meeting/MeetingDrawer';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\nimport { useSelector } from 'react-redux';\r\nimport { RootState } from 'redux/store';\r\nimport useLocalStorage from 'hooks/useLocalStorage';\r\nimport EmptyContent from 'components/EmptyContent';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { ModeAccess } from '../../../../@types/account';\r\n\r\n// components\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst MENU_OPTIONS = [\r\n {\r\n id: 'skills',\r\n label: 'Compétences',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.suivi.skills,\r\n doControl: 'skillControl',\r\n visible: true\r\n },\r\n {\r\n id: 'pedagogie',\r\n label: 'Outils pédagogiques',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.studyPlan.documents,\r\n visible: true\r\n },\r\n {\r\n id: 'activites',\r\n label: 'Activités complémentaires',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.studyPlan.activity,\r\n doControl: 'learningControl',\r\n visible: true\r\n },\r\n {\r\n id: 'bibliotheque',\r\n label: 'Bibliothèque de contenus',\r\n icon: ,\r\n linkTo: PATH_DASHBOARD.studyPlan.StudyPlanSearch,\r\n visible: false\r\n }\r\n];\r\n/**\r\n * \r\n * @returns ,\r\n {\r\n label: 'Recherche par support pédagogique',\r\n icon: ,\r\n linkTo: '/'\r\n },\r\n {\r\n label: 'Favoris / Marques pages',\r\n icon: ,\r\n linkTo: '/'\r\n },\r\n */\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function StudyPlanActionsPopover({ isSkill }: { isSkill: boolean }) {\r\n const navigate = useNavigate();\r\n const [reminder, setReminder] = useLocalStorage('AideTools', false); // désactivé pour l'instant\r\n const anchorRef = useRef(null);\r\n const { additionalLearnings } = useSelector((state: RootState) => state.learning);\r\n const [openInfo, setOpenInfo] = useState(reminder);\r\n\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleChange = () => {\r\n setOpenInfo(false);\r\n setReminder(false);\r\n };\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleCloseInfo = () => {\r\n setOpenInfo(false);\r\n };\r\n\r\n const handleNavigate = (url: string) => {\r\n navigate(url);\r\n };\r\n\r\n if (!isSkill && additionalLearnings?.length === 0) {\r\n const item = MENU_OPTIONS.filter((item) => item.id === 'pedagogie')[0];\r\n\r\n return (\r\n handleNavigate(item.linkTo)}\r\n >\r\n {item.label}\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n \r\n\r\n \r\n {MENU_OPTIONS.filter((item) => item.visible).map((option, index) => {\r\n if (option.doControl && option.doControl === 'skillControl' && !isSkill) {\r\n return ;\r\n }\r\n if (\r\n option.doControl &&\r\n option.doControl === 'learningControl' &&\r\n additionalLearnings?.length === 0\r\n )\r\n return ;\r\n\r\n return (\r\n \r\n {option.label}\r\n \r\n );\r\n })}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"Ne plus afficher ce message\"\r\n />\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport function StudyPlanActions({\r\n chapterItemUpdatedList\r\n}: {\r\n chapterItemUpdatedList: StudyPlanItemUpdated[];\r\n}) {\r\n const { student, isReadOnly } = useAuth();\r\n const isControlOnly = [ModeAccess.Control].includes(student?.modeAccess);\r\n\r\n return (\r\n \r\n \r\n\r\n {!isControlOnly && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import Label from 'components/Label';\r\n\r\nexport default function TagType({ type }: { type: string }) {\r\n switch (type) {\r\n case 'VirtualClass': //34cecd\r\n return (\r\n \r\n );\r\n case 'Evaluation':\r\n case 'Homework':\r\n return (\r\n \r\n );\r\n case 'Workshop': //FED6F8//\r\n return (\r\n \r\n );\r\n\r\n case 'Meeting':\r\n return (\r\n \r\n );\r\n case 'ScheduleTeacher':\r\n return (\r\n \r\n );\r\n case 'News':\r\n return (\r\n \r\n );\r\n case 'Task':\r\n return (\r\n \r\n );\r\n case 'Courses':\r\n return (\r\n \r\n );\r\n case 'Job':\r\n return (\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n );\r\n}\r\n","export const groupBy = function (arrObject: Array, groupingKeyFn: any) {\r\n if (typeof groupingKeyFn !== 'function') {\r\n throw new Error('groupBy take a function as only parameter');\r\n }\r\n\r\n let groupby = arrObject.reduce((result, item) => {\r\n let key = groupingKeyFn(item);\r\n if (!result[key]) result[key] = [];\r\n result[key].push(item);\r\n return result;\r\n }, {});\r\n\r\n let datas: Array = [];\r\n Object.entries(groupby).map((w) => datas.push({ key: w[0], value: w[1] }));\r\n return datas;\r\n};\r\n","import DayPicker, { DateUtils } from 'react-day-picker';\r\nimport 'react-day-picker/lib/style.css';\r\nimport MomentLocaleUtils from 'react-day-picker/moment';\r\nimport 'moment/locale/fr';\r\n\r\nimport {\r\n Chip,\r\n Dialog,\r\n FormControl,\r\n FormControlLabel,\r\n Switch,\r\n Typography,\r\n TextField,\r\n Stack,\r\n Button,\r\n Divider,\r\n Card,\r\n DialogActions,\r\n Alert,\r\n DialogContent\r\n} from '@mui/material';\r\nimport { Box } from '@mui/system';\r\nimport { styled } from '@mui/material/styles';\r\nimport { makeStyles } from '@mui/styles';\r\n//types\r\nimport {\r\n Objective,\r\n ObjectiveCalculateInfos,\r\n ObjectiveRequest\r\n} from '../../../@types/objectiveType';\r\nimport { Contract } from '../../../@types/contract';\r\n\r\nimport {\r\n convertStringToDate,\r\n fDate,\r\n formatAPI,\r\n getWeekdaysDescriptions,\r\n isDateValid\r\n} from 'utils/formatTime';\r\nimport { useEffect, useState } from 'react';\r\n\r\nimport { DateRange, DateRangePicker } from '@mui/lab';\r\nimport moment from 'moment';\r\nimport useObjective from 'hooks/useObjective';\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport DialogConfirm from 'components/DialogConfirm';\r\n\r\nconst ContentStyle = styled(Card)(({ theme }) => ({\r\n boxShadow: 'none',\r\n padding: theme.spacing(2),\r\n paddingTop: theme.spacing(1),\r\n backgroundImage: `linear-gradient(135deg,\r\n #E9EAF9 0%,\r\n #E9EAF9 100%)`\r\n}));\r\n\r\nconst useStyles = makeStyles({\r\n selectedDay: {\r\n fontSize: '0.85rem',\r\n '& .DayPicker-Day--selected:not(.DayPicker-Day--disabled):not(.DayPicker-Day--outside)': {\r\n backgroundColor: '#455aa4'\r\n }\r\n }\r\n});\r\n\r\nexport type ObjectiveParamsFormProps = {\r\n objective: Objective;\r\n contract: Contract;\r\n onSaveSuccess: () => void;\r\n onClose: () => void;\r\n lockOnSave?: boolean;\r\n disableStartEndDates?: boolean;\r\n skipPopupGenerate?: boolean;\r\n closeOnModifyPeriode?: boolean;\r\n};\r\n\r\nexport default function ObjectiveParamsForm({\r\n objective,\r\n contract,\r\n onSaveSuccess,\r\n onClose,\r\n lockOnSave = false,\r\n disableStartEndDates = false,\r\n skipPopupGenerate = false,\r\n closeOnModifyPeriode = false\r\n}: ObjectiveParamsFormProps) {\r\n const [open, setOpen] = useState(false);\r\n const [objCalcInfos, setObjCalcInfos] = useState(null);\r\n\r\n const [settings, setSettings] = useState({\r\n dateStart: objective?.start || formatAPI(new Date()),\r\n dateEnd: objective?.end || formatAPI(contract.closingDate || new Date()),\r\n daysWorking: objective?.daysWorking || [0, 1, 2, 3, 4, 5, 6],\r\n jalonCount: objective?.homeworkDoCount,\r\n periodesOff: objective?.periodesOff || [],\r\n lock: lockOnSave || objective?.lock,\r\n lockBy:\r\n lockOnSave && contract?.coach\r\n ? contract?.coach.id\r\n : objective?.lockBy\r\n ? objective?.lockBy\r\n : ''\r\n });\r\n const styles = useStyles();\r\n const { create, calculate, saveCalculatedObjective, isLoading, error } = useObjective();\r\n\r\n const isDayWorking = (value: number) => {\r\n return settings.daysWorking.some((w) => w === value);\r\n };\r\n\r\n const handleDaysWorkingChange = (value: number) => () => {\r\n const currentIndex = settings.daysWorking.indexOf(value);\r\n const newChecked = [...settings.daysWorking];\r\n\r\n if (currentIndex === -1) {\r\n newChecked.push(value);\r\n } else {\r\n newChecked.splice(currentIndex, 1);\r\n }\r\n\r\n setSettings({ ...settings, daysWorking: newChecked });\r\n };\r\n\r\n const handleDayClick = (day: any, { selected }: any) => {\r\n const selectedDays = settings.periodesOff.map((evt) => convertStringToDate(evt)).concat();\r\n\r\n if (selected) {\r\n const selectedIndex = selectedDays.findIndex((selectedDay) =>\r\n DateUtils.isSameDay(selectedDay, day)\r\n );\r\n selectedDays.splice(selectedIndex, 1);\r\n } else {\r\n selectedDays.push(day);\r\n }\r\n setSettings({ ...settings, periodesOff: selectedDays.map((w: Date) => formatAPI(w)) });\r\n };\r\n\r\n const handleChangeDate = (date: DateRange) => {\r\n const dateStart = date[0]!;\r\n const dateEnd = date[1]!;\r\n\r\n if (isDateValid(dateStart) && isDateValid(dateEnd))\r\n setSettings({ ...settings, dateStart: formatAPI(dateStart), dateEnd: formatAPI(dateEnd) });\r\n };\r\n\r\n const handleDelete = (date: any) => {\r\n setSettings({\r\n ...settings,\r\n periodesOff: [...settings.periodesOff.filter((w) => w !== date).map((w) => formatAPI(w))]\r\n });\r\n };\r\n\r\n const handleOpen = () => {\r\n setOpen(!open);\r\n };\r\n\r\n const closePopupGenerate = () => {\r\n if (open) setOpen(false);\r\n };\r\n\r\n const closeConfirm = () => {\r\n setObjCalcInfos(null);\r\n if (closeOnModifyPeriode) onClose();\r\n };\r\n\r\n const calculateSuccessHandler = (infos: ObjectiveCalculateInfos) => {\r\n //Force la fermeture de la popup de lancement du calcul (peut ne pas être ouverte)\r\n closePopupGenerate();\r\n\r\n //Popup de confirmation\r\n setObjCalcInfos(infos);\r\n };\r\n\r\n const saveObjective = (infos: ObjectiveCalculateInfos | null) => {\r\n const newObjInfos = infos ? { ...infos } : null;\r\n\r\n // Fermeture de la popup de confirmation\r\n closeConfirm();\r\n\r\n if (newObjInfos) {\r\n saveCalculatedObjective(newObjInfos)(() => {\r\n if (onSaveSuccess) {\r\n onSaveSuccess();\r\n }\r\n\r\n // Fermeture du formulaire de saisie\r\n onClose();\r\n });\r\n }\r\n };\r\n\r\n const handleSubmit = () => {\r\n if (!objective) {\r\n // Création sans confirmation\r\n create(settings)(() => {\r\n if (onSaveSuccess) {\r\n onSaveSuccess();\r\n }\r\n\r\n //Fermeture de la popup de lancement du calcul (peut ne pas être ouverte)\r\n closePopupGenerate();\r\n\r\n // Fermeture du formulaire de saisie\r\n onClose();\r\n });\r\n } else {\r\n // Calcul + validation\r\n calculate(settings)((infos) => {\r\n calculateSuccessHandler(infos);\r\n });\r\n }\r\n };\r\n\r\n const handleGeneratePlanning = () => {\r\n if (skipPopupGenerate) {\r\n handleSubmit(); // Génération du retroplanning sans la popup\r\n } else {\r\n handleOpen(); // Ouverture de la popup \"Souhaitez-vous actualiser votre objectif... ?\"\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (error) setOpen(false);\r\n }, [error]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Période de travail\r\n \r\n {\r\n handleChangeDate(newValue);\r\n }}\r\n renderInput={(startProps, endProps) => (\r\n \r\n \r\n\r\n \r\n \r\n )}\r\n disabled={disableStartEndDates}\r\n />\r\n\r\n \r\n\r\n \r\n Jours travaillés\r\n \r\n \r\n {getWeekdaysDescriptions().map((day: any) => {\r\n return (\r\n \r\n }\r\n label={day.label}\r\n key={`day${day.value}`}\r\n />\r\n );\r\n })}\r\n \r\n \r\n\r\n \r\n Périodes de congés\r\n moment(evt).toDate())}\r\n onDayClick={handleDayClick}\r\n locale={'fr'}\r\n localeUtils={MomentLocaleUtils}\r\n className={styles.selectedDay}\r\n />\r\n \r\n\r\n \r\n {settings.periodesOff.map((w, i) => {\r\n return (\r\n handleDelete(w)}\r\n />\r\n );\r\n })}\r\n \r\n \r\n \r\n\r\n \r\n {objective\r\n ? `Vous êtes sur le point de modifier votre objectif. La planification de vos évaluations sera donc modifiée.`\r\n : `Vous êtes sur le point de créer votre objectif. Nous allons planifier vos évaluations.`}\r\n \r\n \r\n {error && {error}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Souhaitez-vous actualiser votre objectif et générer votre nouveau planning ?\r\n \r\n \r\n\r\n {}}>\r\n \r\n \r\n \r\n \r\n {objCalcInfos && (\r\n <>\r\n \r\n Pensez-vous pouvoir maintenir ce rythme ?\r\n \r\n \r\n Le planning généré indique qu’il faut maintenir un rythme de{' '}\r\n 1 évaluation tous les {objCalcInfos.objective.interval} jours{' '}\r\n pour terminer avant le {fDate(objCalcInfos.objective.end)}.\r\n
    \r\n
    \r\n Ce rythme vous convient-il ou souhaitez vous sélectionner une autre période ?\r\n
    \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n/***\r\n * {error && {error}}\r\n */\r\n","import { FileBaseInfo, SummaryRequest, SummaryResponse } from './common';\r\n\r\nexport type ArticleState = {\r\n isLoading: boolean;\r\n error: boolean;\r\n articles: Article[];\r\n article: Article | null;\r\n hasMore: boolean;\r\n index: number;\r\n step: number;\r\n categoryList: Array;\r\n};\r\n\r\nexport interface ArticlesResponse extends SummaryResponse {\r\n list: Article[];\r\n result: ArticlesResult;\r\n hash: string;\r\n totalCount: number;\r\n}\r\n\r\nexport interface ArticlesRequest extends SummaryRequest {\r\n type: MessageType;\r\n hash: string;\r\n}\r\n\r\nexport interface Article {\r\n id: number;\r\n title: string;\r\n publicationDate: string;\r\n reference: string;\r\n description: string;\r\n read: boolean;\r\n isFile: boolean;\r\n category: string;\r\n categoryUrl: string;\r\n coverUrl: string;\r\n files: FileBaseInfo[];\r\n isImportant: boolean;\r\n}\r\n\r\nexport interface ArticleResponse {\r\n items: Article[];\r\n result: ArticleResult;\r\n}\r\nexport enum ArticleResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport enum MessageType {\r\n All = 0,\r\n News = 1,\r\n Question = 2,\r\n Answer = 4,\r\n Message = 3\r\n}\r\n\r\nexport enum ArticlesResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Updated = 2\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport {\r\n Article,\r\n ArticleResponse,\r\n ArticleResult,\r\n ArticlesRequest,\r\n ArticlesResponse,\r\n ArticlesResult,\r\n ArticleState,\r\n MessageType\r\n} from '../../@types/article';\r\nimport { map } from 'lodash';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: ArticleState = {\r\n isLoading: true,\r\n error: false,\r\n articles: [],\r\n article: null,\r\n hasMore: true,\r\n index: 1,\r\n step: 10,\r\n categoryList: []\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'article',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n state.article = null;\r\n },\r\n\r\n // GET POSTS\r\n getArticlesSuccess(state, action) {\r\n state.isLoading = false;\r\n state.hasMore = false;\r\n state.articles = action.payload;\r\n\r\n state.categoryList = action.payload\r\n ? Array.from(new Set(action.payload?.map((a: Article) => a.category)))\r\n : [];\r\n },\r\n\r\n // GET POST INFINITE\r\n getArticlesInitial(state, action) {\r\n state.isLoading = false;\r\n const data = action.payload;\r\n\r\n state.articles = [...state.articles, ...data];\r\n },\r\n\r\n getMoreArticles(state) {\r\n const setIndex = state.index + 1;\r\n state.index = setIndex;\r\n },\r\n\r\n noHasMore(state) {\r\n state.hasMore = false;\r\n },\r\n\r\n getArticleSuccess(state, action) {\r\n state.isLoading = false;\r\n let myArticle = action.payload;\r\n const articles = map(state.articles, (_event) => {\r\n if (_event.id === myArticle.id) {\r\n myArticle.category = _event.category;\r\n myArticle.categoryUrl = _event.categoryUrl;\r\n return { ..._event, read: true };\r\n }\r\n return _event;\r\n });\r\n\r\n state.article = myArticle;\r\n state.articles = articles;\r\n },\r\n\r\n getRecentArticlesSuccess(state, action) {\r\n state.isLoading = false;\r\n state.articles = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { getMoreArticles } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getAllArticle(index: number, step: number) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post('/api/message/list', {\r\n type: MessageType.News,\r\n index: index,\r\n pageSize: step,\r\n sortName: 'publicationDate',\r\n direction: true\r\n });\r\n\r\n const { result, list } = response.data;\r\n switch (result) {\r\n case ArticlesResult.Success:\r\n dispatch(slice.actions.getArticlesSuccess(list));\r\n break;\r\n default:\r\n dispatch(slice.actions.getArticlesSuccess([]));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getArticlesInitial(index: number, step: number, count: number) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post('/api/message/list', {\r\n type: MessageType.News,\r\n index: index,\r\n pageSize: step,\r\n sortName: 'publicationDate',\r\n direction: true,\r\n hash: ''\r\n } as ArticlesRequest);\r\n\r\n const { result, list, totalCount } = response.data;\r\n switch (result) {\r\n case ArticlesResult.Success:\r\n dispatch(slice.actions.getArticlesInitial(list));\r\n\r\n if (count + step >= totalCount) {\r\n dispatch(slice.actions.noHasMore());\r\n }\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getArticle(id: string) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get(`/api/message/0/${id}/${MessageType.News}`);\r\n const { result, items } = response.data;\r\n switch (result) {\r\n case ArticleResult.Success:\r\n dispatch(slice.actions.getArticleSuccess(items[0]));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(true));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getRecentPosts(title: string) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/blog/posts/recent', {\r\n params: { title }\r\n });\r\n\r\n dispatch(slice.actions.getRecentArticlesSuccess(response.data.recentPosts));\r\n } catch (error) {\r\n console.error(error);\r\n dispatch(slice.actions.hasError(true));\r\n }\r\n };\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { dispatch } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport { Mail, MailLabel } from '../../@types/mail';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nfunction objFromArray(array: any[], key = 'id') {\r\n return array.reduce((accumulator, current) => {\r\n accumulator[current[key]] = current;\r\n return accumulator;\r\n }, {});\r\n}\r\n\r\ntype MailState = {\r\n isLoading: boolean;\r\n error: boolean;\r\n mails: {\r\n byId: Record;\r\n allIds: string[];\r\n };\r\n labels: MailLabel[];\r\n};\r\n\r\nconst initialState: MailState = {\r\n isLoading: false,\r\n error: false,\r\n mails: { byId: {}, allIds: [] },\r\n labels: []\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'mail',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET LABELS\r\n getLabelsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.labels = action.payload;\r\n },\r\n\r\n // GET MAILS\r\n getMailsSuccess(state, action) {\r\n const mails = action.payload;\r\n\r\n state.isLoading = false;\r\n state.mails.byId = objFromArray(mails);\r\n state.mails.allIds = Object.keys(state.mails.byId);\r\n },\r\n\r\n // GET MAIL\r\n getMailSuccess(state, action) {\r\n const mail = action.payload;\r\n\r\n state.mails.byId[mail.id] = mail;\r\n if (!state.mails.allIds.includes(mail.id)) {\r\n state.mails.allIds.push(mail.id);\r\n }\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getLabels(): MailLabel[] {\r\n return [\r\n { id: 'all', type: 'system', name: 'Mes messages', unreadCount: 3 },\r\n { id: 'inbox', type: 'system', name: 'Importants', unreadCount: 1 },\r\n { id: 'sent', type: 'system', name: 'Messages non lus', unreadCount: 0 },\r\n { id: 'drafts', type: 'system', name: 'Messages de l’école', unreadCount: 0 },\r\n { id: 'trash', type: 'system', name: 'Questions / réponses', unreadCount: 0 }\r\n ];\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getMails() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n\r\n try {\r\n const response = await axios.post('/api/message/list', { type: 2, index: 1, pageSize: 100 });\r\n const { result, list } = response.data;\r\n switch (result) {\r\n }\r\n //dispatch(slice.actions.getMailsSuccess(response.data.list));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getMail(mailId: string) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/mail/mail', {\r\n params: { mailId }\r\n });\r\n dispatch(slice.actions.getMailSuccess(response.data.mail));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n// @types\r\nimport {\r\n JobState,\r\n JobRequestDTO,\r\n JobsResponse,\r\n ResultResponse,\r\n JobsDetailResponse,\r\n ResultDetailResult\r\n} from '../../@types/job';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: JobState = {\r\n isLoading: false,\r\n isLoadingMore: true,\r\n error: false,\r\n jobs: [],\r\n job: null,\r\n hasMore: true,\r\n index: 1,\r\n step: 30,\r\n count: 0\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'job',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n startLoadingMore(state) {\r\n state.isLoadingMore = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.isLoadingMore = false;\r\n state.error = action.payload;\r\n },\r\n\r\n getJobsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.isLoadingMore = false;\r\n if (action.payload.reset) {\r\n state.index = 1;\r\n state.jobs = action.payload.datas;\r\n } else {\r\n state.index = action.payload.request?.pageIndex;\r\n state.jobs = [...state.jobs, ...action.payload.datas];\r\n }\r\n\r\n state.count = action.payload.count;\r\n state.hasMore = state.jobs.length < action.payload.count && action.payload.count > 0;\r\n },\r\n\r\n clearJobs(state) {\r\n state.index = 1;\r\n state.hasMore = false;\r\n state.isLoadingMore = false;\r\n },\r\n\r\n /*\r\n getJobsInitial(state, action) {\r\n state.isLoading = false;\r\n const data = action.payload;\r\n if ((state.index = 1)) state.jobs = [...state.jobs, ...data];\r\n },*/\r\n\r\n /*\r\n getMoreJobs(state) {\r\n const setIndex = state.index + 1;\r\n state.index = setIndex;\r\n },\r\n */\r\n\r\n getJob(state, action) {\r\n state.job = action.payload;\r\n },\r\n\r\n noHasMore(state) {\r\n state.hasMore = false;\r\n },\r\n\r\n getJobSuccess(state, action) {\r\n state.isLoading = false;\r\n state.isLoadingMore = false;\r\n state.job = action.payload;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\n//export const { getMoreJobs, clearJobs } = slice.actions;\r\nexport const { clearJobs } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n/**\r\n * Liste des annonces\r\n * @param index\r\n * @param step\r\n * @returns\r\n */\r\nexport function getJobs(request: JobRequestDTO, reset: boolean) {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n if (reset) {\r\n dispatch(slice.actions.startLoading());\r\n } else {\r\n dispatch(slice.actions.startLoadingMore());\r\n }\r\n\r\n const response = await axios.post('/api/job/list', request);\r\n\r\n const { result, data, totalCount, totalPages } = response.data;\r\n\r\n switch (result) {\r\n case ResultResponse.Success:\r\n dispatch(\r\n slice.actions.getJobsSuccess({\r\n datas: data,\r\n count: totalCount,\r\n reset: reset,\r\n request: request\r\n })\r\n );\r\n break;\r\n default:\r\n dispatch(\r\n slice.actions.getJobsSuccess({ datas: [], count: 0, reset: true, request: request })\r\n );\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n/**\r\n * détails de l'annonce\r\n * @param id\r\n * @returns\r\n */\r\nexport function getDetailJob(id: number) {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get(`/api/job/detail/${id}`);\r\n\r\n const { result, detail } = response.data;\r\n\r\n switch (result) {\r\n case ResultDetailResult.Success:\r\n dispatch(slice.actions.getJobSuccess(detail));\r\n break;\r\n default:\r\n dispatch(slice.actions.getJobSuccess(null));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n// ----------------------------------------------------------------------\r\n","// material\r\nimport { Typography } from '@mui/material';\r\n//type\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemType,\r\n StudyPlanItemHomework,\r\n StudyPlanItemLearning,\r\n StudyPlanItemStatus,\r\n ScoreType\r\n} from '../../../../@types/pedagogy';\r\nimport { ScoreView } from '../ScoreView';\r\n\r\nimport { ChapterItemHomeworkNote } from './ChapterItemCard';\r\n\r\n/**\r\n * Afficher la note suivante le type d'item\r\n * POur les homework, on prend le dernier\r\n * pour les produits elearning , il doit etre fait\r\n */\r\nexport default function StudyPlanItemScore({ item }: { item: StudyPlanItem }) {\r\n switch (item.type) {\r\n case StudyPlanItemType.Homework:\r\n return ;\r\n\r\n case StudyPlanItemType.Elearning:\r\n const score = (item as StudyPlanItemLearning).elearning.score;\r\n if (score > 0)\r\n return (\r\n \r\n );\r\n\r\n return <>;\r\n }\r\n return <>;\r\n}\r\n","// @types\r\nimport { FavoriteType, FavoriteKey } from '../@types/favorite';\r\nimport { useSnackbar } from 'notistack';\r\nimport { getFavorites, removeFavorite } from 'redux/slices/favorite';\r\n\r\n// redux\r\nimport { RootState, useDispatch, useSelector } from 'redux/store';\r\nimport { selectVirtualClassId } from 'redux/slices/virtualClass';\r\nimport { selectWorkshopById } from 'redux/slices/workshop';\r\nimport { useNavigate } from 'react-router';\r\n\r\n// components\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { useEffect } from 'react';\r\n\r\n//------------------------------------------------\r\n\r\nexport const useFavorite = () => {\r\n const dispatch = useDispatch();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { favorites, isLoading, notificationContent } = useSelector(\r\n (state: RootState) => state.favorite\r\n );\r\n const navigate = useNavigate();\r\n\r\n function load() {\r\n dispatch(getFavorites());\r\n }\r\n\r\n const select = (key: FavoriteKey, type: FavoriteType) => {\r\n switch (type) {\r\n case FavoriteType.VirtualClass:\r\n dispatch(selectVirtualClassId(key.id));\r\n\r\n break;\r\n case FavoriteType.Workshop:\r\n dispatch(selectWorkshopById(key.id));\r\n break;\r\n case FavoriteType.News:\r\n navigate(`${PATH_DASHBOARD.article.root}/${key.id}`);\r\n break;\r\n\r\n case FavoriteType.Evaluation:\r\n navigate(`${PATH_DASHBOARD.studyPlan.details}/${key.courseId}-${key.homeworkId}`);\r\n break;\r\n case FavoriteType.Courses:\r\n navigate(`${PATH_DASHBOARD.studyPlan.details}/${key.courseId}`);\r\n break;\r\n case FavoriteType.Job:\r\n navigate(`${PATH_DASHBOARD.job.root}/${key.id}`);\r\n break;\r\n }\r\n //dispatch(selectEventByKey({ id: id, type: type }));\r\n };\r\n\r\n const remove = (id: number) => {\r\n dispatch(removeFavorite(id));\r\n };\r\n\r\n return {\r\n favorites,\r\n load: load,\r\n remove: remove,\r\n select: select,\r\n isLoading: isLoading,\r\n notificationContent\r\n };\r\n};\r\n","import { ModuleType, OvertimeStatus } from '../@types/contract';\r\nimport { AlertBase } from '../@types/common';\r\nimport { useNavigate } from 'react-router';\r\n\r\nimport useModuleAuthorize from './useModuleAuthorize';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { fDate } from 'utils/formatTime';\r\nimport { useCallback } from 'react';\r\n\r\nexport interface OvertimeAlertType extends AlertBase {}\r\n\r\n/**\r\n * Gestion de la prolongation\r\n * @returns\r\n */\r\nexport default function useOvertime() {\r\n const navigate = useNavigate();\r\n const { authorizedModule, getContractCurrent } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.Overtime]\r\n });\r\n const contractCurrent = getContractCurrent();\r\n\r\n const getOvertimeAlert = useCallback(() => {\r\n const currentOvertime = contractCurrent.overtimes.filter(\r\n (o) => o.status === OvertimeStatus.Current\r\n )[0];\r\n switch (currentOvertime?.status) {\r\n case OvertimeStatus.Current:\r\n return {\r\n title: 'Prolongation contrat en attente de validation.',\r\n description: `Votre prolongation de ${currentOvertime.numberOfMonths} mois est attente de validation par l'école`,\r\n img: '/static/illustrations/messages/expired_contract.svg'\r\n } as OvertimeAlertType;\r\n case OvertimeStatus.Reject:\r\n return {\r\n title: 'Prolongation contrat refusée.',\r\n description: `Votre prolongation de ${currentOvertime.numberOfMonths} mois a été refusée par l'école`,\r\n img: '/static/illustrations/messages/expired_contract.svg'\r\n } as OvertimeAlertType;\r\n case OvertimeStatus.Validated:\r\n return {\r\n title: 'Prolongation contrat validée.',\r\n description: `Votre prolongation de ${currentOvertime.numberOfMonths} mois a été validée par l'école`,\r\n img: '/static/illustrations/messages/expired_contract.svg'\r\n } as OvertimeAlertType;\r\n default:\r\n return {\r\n title: `Votre contrat expire le ${\r\n contractCurrent?.closingDate && fDate(contractCurrent?.closingDate)\r\n }`,\r\n description: 'Souhaitez-vous prolonger votre formation ?',\r\n img: '/static/illustrations/messages/expired_contract.svg',\r\n action: () => {\r\n navigate(PATH_DASHBOARD.general.overtimes);\r\n }\r\n } as OvertimeAlertType;\r\n }\r\n }, []);\r\n\r\n return {\r\n authorized: authorizedModule && contractCurrent.closingDate,\r\n overtimes: contractCurrent.overtimes,\r\n getOvertimeAlert\r\n };\r\n}\r\n","import { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { AlertBase } from '../@types/common';\r\nimport { ModuleType } from '../@types/contract';\r\nimport useAuth from './useAuth';\r\nimport useModuleAuthorize from './useModuleAuthorize';\r\n\r\nexport interface PaymentAlertType extends AlertBase {}\r\n\r\nexport default function usePayment() {\r\n const navigate = useNavigate();\r\n const { authorizedModule, getContractCurrent } = useModuleAuthorize({\r\n accessibleModules: [ModuleType.PaymentView]\r\n });\r\n\r\n const contractCurrent = getContractCurrent();\r\n const { getFormatCurrency } = useAuth();\r\n\r\n // Paiement requis\r\n const getPaymentAlert = (): PaymentAlertType => {\r\n return {\r\n title: 'Relance paiement',\r\n description: `Votre compte présente un solde débiteur de ${getFormatCurrency(\r\n contractCurrent.debitAmount\r\n )}`,\r\n img: '/static/illustrations/messages/payment.svg',\r\n action: () => {\r\n navigate(PATH_DASHBOARD.student.payment);\r\n }\r\n };\r\n };\r\n\r\n return {\r\n authorizedPayment: authorizedModule && contractCurrent.debitAmount < 0,\r\n getPaymentAlert\r\n };\r\n}\r\n","import { StudyPlanChapter, StudyPlanItem, StudyPlanPhase } from '../@types/pedagogy';\r\nimport { StudyPlanContext } from 'contexts/StudyPlanContext';\r\nimport { useContext } from 'react';\r\nimport * as helperStudyPlan from 'utils/helperStudyPlan';\r\n\r\nconst useStudyPlanChapter = () => {\r\n const studyPlanManager = useContext(StudyPlanContext);\r\n\r\n /**\r\n * Selectionner le chapitre\r\n * Par defaut on selectionne le premier sous chapitre puis le 1er item\r\n * @param phaseId Numéro phase\r\n * @param unityId id du unite de formation\r\n * @param chapterId id du chapitre\r\n */\r\n function select(phaseId: string, unityId: string, chapterId: string) {\r\n /*Rechercher l'item à partir des informations */\r\n\r\n //mode par phase\r\n let ph = studyPlanManager?.phases?.filter((p) => p.id.toString() === phaseId)[0];\r\n\r\n //mode glbal\r\n if (!ph) {\r\n ph = studyPlanManager?.phases![0];\r\n }\r\n\r\n const unityChpt = ph?.chapters.filter((u) => u.id === unityId)[0];\r\n const chapter = unityChpt?.chapters?.filter((c) => c.id === chapterId)[0];\r\n // item du sous chapitre ou du chapitre ?\r\n const chapterSelected = chapter?.chapters\r\n ? helperStudyPlan.getFirstSubChapterWithItems(chapter?.chapters)\r\n : chapter;\r\n\r\n const item = chapterSelected?.items[0];\r\n const subChapter = chapter?.chapters ? chapterSelected : null;\r\n\r\n studyPlanManager?.selectItem(chapter!, item!, false, subChapter);\r\n }\r\n\r\n function getAllItems(chapter?: StudyPlanChapter): Array {\r\n let list: Array = [];\r\n\r\n studyPlanManager?.phases?.map((phase: StudyPlanPhase) => {\r\n list = list.concat(getItems(phase.chapters));\r\n });\r\n\r\n return list;\r\n }\r\n\r\n const extractItems = (chapter: StudyPlanChapter, list: Array): Array => {\r\n if (chapter.chapters != null) return chapter.chapters.map((x) => extractItems(x, list));\r\n else\r\n chapter.items.map((item: StudyPlanItem) => {\r\n list.push(item as StudyPlanItem);\r\n });\r\n return [];\r\n };\r\n\r\n /**\r\n * Retourne tous items vues\r\n * console.log(chapters);\r\n */\r\n function getItems(chapters: Array): Array {\r\n let list: Array = [];\r\n\r\n chapters.map((chapter) => extractItems(chapter, list));\r\n\r\n return list;\r\n }\r\n\r\n return {\r\n select,\r\n getItems,\r\n getAllItems\r\n };\r\n};\r\n\r\nexport default useStudyPlanChapter;\r\n","import { Card, Typography, Stack, Avatar, Button } from '@mui/material';\r\nimport { styled } from '@mui/styles';\r\nimport { Box } from '@mui/system';\r\nimport { useSurvey } from 'hooks/useSurvey';\r\nimport { useSnackbar } from 'notistack';\r\nimport { useEffect, useState } from 'react';\r\nimport { dispatch } from 'redux/store';\r\nimport { SurveyCategory, SurveyRequest, Survey, SurveyResponse } from '../../../@types/survey';\r\nimport { SurveyCategoryCard } from './SurveyCategoryCard';\r\nimport { SurveyInput } from './SurveyInput';\r\nimport { ContainerInput } from './SurveyStepperStandard';\r\n\r\nexport type SurveyProps = {\r\n response: SurveyResponse;\r\n onClose?: () => void;\r\n};\r\n\r\n/**\r\n * Gestion des questionnaires standard (hors questionnaire classe virtuelle (433) qui lui est sur un stepper)\r\n * L'affichage des questions obligatoire se fait ici\r\n * @param param0\r\n * @returns\r\n */\r\nexport const SurveyStandard = ({ response, onClose }: SurveyProps) => {\r\n const {\r\n categoryList,\r\n onChange,\r\n onChangeOption,\r\n onChangeOptionTextRep,\r\n onChangeChecked,\r\n save,\r\n isErrorSurvey,\r\n isErrorSurveyItem\r\n } = useSurvey({ request: response, onMove: () => {} });\r\n const { enqueueSnackbar } = useSnackbar();\r\n const [isValidItem, setIsValidItem] = useState(false);\r\n\r\n const handleSave = () => {\r\n dispatch(\r\n save()(() => {\r\n //enregistrement\r\n enqueueSnackbar(\"Merci d'avoir renseigner le questionnaire\", { variant: 'success' });\r\n if (onClose) onClose();\r\n })(() => {\r\n enqueueSnackbar(\r\n 'Nous rencontrons actuellement un problème, veuillez réessayer ultérieurement',\r\n { variant: 'error' }\r\n );\r\n if (onClose) onClose();\r\n })\r\n );\r\n };\r\n\r\n let index = 0;\r\n\r\n const isValidSurvey = isValidItem && !isErrorSurvey();\r\n return (\r\n
    \r\n {categoryList?.map((c: SurveyCategory, i: number) => (\r\n \r\n {(survey, isRegroupement, i) => {\r\n index += isRegroupement ? 0 : 1;\r\n\r\n return (\r\n \r\n onChange(c.id, survey.id, value)}\r\n onChangeOption={(value: string) => onChangeOption(c.id, survey.id, value)}\r\n onChangeOptionText={(id: string, value: string) =>\r\n onChangeOptionTextRep(c.id, survey.id, id, value)\r\n }\r\n onChangeChecked={(id: string, checked: boolean) =>\r\n onChangeChecked(c.id, survey.id, id.toString(), checked)\r\n }\r\n onValid={(is: boolean) => setIsValidItem(is)}\r\n />\r\n \r\n );\r\n }}\r\n \r\n ))}\r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n","import { Link as RouterLink, Outlet } from 'react-router-dom';\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\n// components\r\nimport Logo from '../components/Logo';\r\nimport { Box } from '@mui/system';\r\nimport { useEffect } from 'react';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst HeaderStyle = styled('header')(({ theme }) => ({\r\n top: 0,\r\n left: 0,\r\n lineHeight: 0,\r\n width: '100%',\r\n position: 'absolute',\r\n padding: theme.spacing(3, 3, 0),\r\n [theme.breakpoints.up('sm')]: {\r\n padding: theme.spacing(5, 5, 0)\r\n }\r\n}));\r\n\r\nconst RootStyle = styled(Box)(({ theme }) => ({\r\n backgroundColor: '#F9FAFB',\r\n height: '0vh'\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport default function LogoOnlyLayout() {\r\n useEffect(() => {\r\n let elt = document.getElementById('wrapperEEContent');\r\n\r\n if (elt) {\r\n elt.style.display = 'block';\r\n }\r\n }, []);\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","// material\r\nimport { Box, Stack, Card, Typography, Tooltip, LinkProps, Link } from '@mui/material';\r\nimport { styled } from '@mui/material/styles';\r\n\r\nimport { Lens, Lock, Sync } from '@mui/icons-material';\r\nimport { StudyPlanChapter } from '../../../../@types/pedagogy';\r\nimport { hChapterColorProgression } from 'utils/helperStudyPlan';\r\nimport useStudyPlan from 'hooks/useStudyPlan';\r\n\r\n//-------------------------------------------------\r\n\r\nexport type ChapterStatusProps = {\r\n chapter: StudyPlanChapter;\r\n};\r\n\r\n/**\r\n * Retourne le statut coloré du chpitre basé sur la progression.\r\n * @param chapter : chapitre\r\n * @returns\r\n */\r\nexport default function ChapterStatus({ chapter }: ChapterStatusProps) {\r\n const { locked, progression, itemsUpdated } = chapter;\r\n\r\n const color = hChapterColorProgression(progression, locked).color;\r\n\r\n // cadena\r\n if (locked) return ;\r\n // mise à jour média\r\n if (itemsUpdated > 0) return ;\r\n // statut réel\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n}\r\n","import { ReactNode } from 'react';\r\nimport { styled } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\nimport React from 'react';\r\n\r\n// styles\r\n\r\nconst RootStyle = styled(Box)(({ theme }) => ({\r\n display: 'flex',\r\n listStyle: 'none',\r\n justifyContent: 'center',\r\n '& li': {\r\n width: 24,\r\n height: 24,\r\n opacity: 0.32,\r\n cursor: 'pointer',\r\n '&.slick-active': {\r\n opacity: 1,\r\n '& .dotActive': {\r\n width: 12,\r\n borderRadius: 8\r\n }\r\n }\r\n }\r\n}));\r\n\r\nconst DotStyle = styled('span')(({ theme }) => ({\r\n width: 12,\r\n height: 12,\r\n borderRadius: '50%',\r\n transition: theme.transitions.create('all', {\r\n easing: theme.transitions.easing.easeInOut,\r\n duration: 360\r\n })\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface CarouselDotsControlsPagingProps extends BoxProps {\r\n color?: string;\r\n}\r\n\r\nexport default function CarouselDotsControlsPagingProps({\r\n color,\r\n ...other\r\n}: CarouselDotsControlsPagingProps) {\r\n return {\r\n appendDots: (dots: ReactNode) => (\r\n <>\r\n \r\n {dots}\r\n \r\n \r\n ),\r\n customPaging: () => (\r\n \r\n \r\n \r\n )\r\n };\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport useAuth from './useAuth';\r\nimport {\r\n Academie,\r\n defaultDepartement,\r\n defaultExamen,\r\n Departement,\r\n Examen,\r\n RegionAdministrative\r\n} from '../@types/examen';\r\n\r\nexport type useExamenFormProps = {\r\n id: string;\r\n sessionId: string;\r\n};\r\n\r\nexport default function useExamenForm({ id, sessionId }: useExamenFormProps) {\r\n const { student, getContractCurrent } = useAuth();\r\n const [examen, setExamen] = useState(new defaultExamen());\r\n const {\r\n examens,\r\n isLoadingForm,\r\n errorForm,\r\n objectifs,\r\n departements,\r\n academies,\r\n regions,\r\n statutsInscription,\r\n statutsResultat,\r\n statutsEpreuve\r\n } = useSelector((state: RootState) => state.examen);\r\n\r\n const contract = getContractCurrent();\r\n\r\n useEffect(() => {\r\n if (id === '') {\r\n let departement = student?.address?.department;\r\n if (!departement || departement === undefined || departement === '') {\r\n departement = student?.address?.postalCode?.substring(0, 2);\r\n }\r\n return create(departement);\r\n } else\r\n setExamen(\r\n examens.filter((exa: Examen) => exa.code === id && exa.session.code === sessionId)[0]\r\n );\r\n }, [examens]);\r\n\r\n function create(departmentCode: string) {\r\n const response = changeDepartment(departmentCode);\r\n let current = new defaultExamen();\r\n current.etatInscription = 'PRE';\r\n\r\n if (response) {\r\n current.departement = response.department;\r\n current.region = response.region;\r\n current.academie = response.academie;\r\n }\r\n current.statutInscription = { code: 'ENV', designation: '' };\r\n current.statutResultat = { code: 'INC', designation: '' };\r\n current.formePassage = 'GLO';\r\n setExamen(current);\r\n }\r\n\r\n function changeDepartment(code: string) {\r\n const department = departements.filter((d: Departement) => d.code === code)[0];\r\n const academie = academies.filter((a: Academie) => a.code === department?.academieCode)[0];\r\n const region = regions.filter(\r\n (r: RegionAdministrative) => r.code === department?.regionCode\r\n )[0];\r\n\r\n return {\r\n department,\r\n academie,\r\n region\r\n };\r\n }\r\n\r\n return {\r\n examen,\r\n examens,\r\n errorForm,\r\n isLoadingForm,\r\n objectifs,\r\n departements,\r\n academies,\r\n regions,\r\n statutsInscription,\r\n statutsResultat,\r\n statutsEpreuve,\r\n category: contract.training.categoryObjectif\r\n };\r\n}\r\n","export interface InternshipListResponse {\r\n list: Internship[];\r\n result: InternshipListResult;\r\n typeOfLocation: InternshipTypeOfLocation[];\r\n}\r\n\r\nexport interface InternshipState {\r\n isLoading: boolean;\r\n error: any;\r\n internships: Internship[];\r\n internship: Internship | null;\r\n internshipTypeOfLocation: InternshipTypeOfLocation[];\r\n}\r\n\r\nexport interface InternshipPeriod {\r\n start: Date;\r\n end: Date;\r\n id: string;\r\n color: string;\r\n title: string;\r\n}\r\n\r\nexport interface InternshipSiteGestion {\r\n id: number;\r\n label: string;\r\n address: InternshipAddress;\r\n phone1: string;\r\n phone2: string;\r\n url: string;\r\n referent: InternshipReferent;\r\n}\r\n\r\nexport interface InternshipSite extends InternshipSiteGestion {\r\n type: string;\r\n mail: string;\r\n url: string;\r\n siret: string;\r\n}\r\n\r\nexport interface InternshipAddress {\r\n complement: string;\r\n postalCode: string;\r\n city: string;\r\n country: string;\r\n countryCode: string;\r\n}\r\n\r\nexport interface InternshipReferent {\r\n id: number;\r\n civility: string;\r\n firstName: string;\r\n lastName: string;\r\n function: string;\r\n}\r\n\r\nexport interface Internship {\r\n id: number;\r\n amendmentId: number;\r\n site: InternshipSite;\r\n mission: string;\r\n gestion: InternshipSiteGestion;\r\n support: string;\r\n label: string;\r\n dateStart: string | null;\r\n dateEnd: string | null;\r\n dateSended: string | null;\r\n dateReception: string | null;\r\n dateValidation: string | null;\r\n dateCancel: string | null;\r\n motifCancelled: string;\r\n status: string;\r\n referentIsSignataire: boolean;\r\n isGestion: boolean;\r\n signataire: InternshipReferent;\r\n typeOfLocation: string;\r\n isPayment: boolean;\r\n isRQTH: boolean;\r\n numberOfDays: number;\r\n numberOfHours: number;\r\n numberHoursOfWeek: number;\r\n observationHoraire: string;\r\n score: string;\r\n evaluation: string;\r\n carriedOut: boolean;\r\n observationTeacher: string;\r\n eventsJson: string;\r\n}\r\n\r\nexport enum InternshipListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface InternshipAddResponse {\r\n result: InternshipAddResult;\r\n message: string;\r\n}\r\n\r\nexport enum InternshipAddResult {\r\n Error = 0,\r\n Success = 1,\r\n FieldsIsRequired = 2\r\n}\r\n\r\nexport interface InternshipTypeOfLocation {\r\n code: string;\r\n label: string;\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\nimport { store } from '../store';\r\n// utils\r\nimport axiosInstance from '../../utils/axios';\r\n// @types\r\nimport {\r\n Internship,\r\n InternshipAddResponse,\r\n InternshipAddResult,\r\n InternshipListResponse,\r\n InternshipListResult,\r\n InternshipSiteGestion,\r\n InternshipState\r\n} from '../../@types/internship';\r\nimport { computeInternshipEventsIds } from '../../utils/helperInternship';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: InternshipState = {\r\n isLoading: false,\r\n error: false,\r\n internships: [],\r\n internshipTypeOfLocation: [],\r\n internship: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'internship',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n // end LOADING\r\n endLoading(state) {\r\n state.isLoading = false;\r\n state.internship = null;\r\n state.error = false;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // Liste\r\n getIntershipListSuccess(state, action) {\r\n state.isLoading = false;\r\n state.internship = null;\r\n state.internships = action.payload.list;\r\n state.internshipTypeOfLocation = action.payload.typeOfLocation;\r\n },\r\n\r\n // ajouter\r\n addInternshipSuccess(state, action) {\r\n state.isLoading = false;\r\n state.internships = [...state.internships, action.payload];\r\n },\r\n selectInternship(state, action) {\r\n const { id, brand } = action.payload;\r\n\r\n const intership = state.internships.find((i) => i.id === id);\r\n\r\n if (intership) {\r\n intership.referentIsSignataire =\r\n intership.signataire?.id === intership.site.referent.id ? true : false;\r\n intership.isGestion = intership.gestion?.id > 0 ? true : false;\r\n if (intership.gestion === null) intership.gestion = initGestionaire(brand);\r\n if (intership.signataire === null || intership.referentIsSignataire)\r\n intership.signataire = {\r\n id: 0,\r\n civility: '',\r\n lastName: '',\r\n firstName: '',\r\n function: ''\r\n };\r\n // supprimer le nom dans l'adesse\r\n\r\n if (intership.site.address.complement !== null)\r\n intership.site.address.complement = intership.site.address.complement.replace(\r\n intership.site.label.toUpperCase(),\r\n ''\r\n );\r\n\r\n computeInternshipEventsIds(intership);\r\n\r\n state.internship = intership;\r\n }\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n// Actions\r\nexport const { selectInternship } = slice.actions;\r\n\r\nexport const initGestionaire = (brand: string): InternshipSiteGestion => {\r\n return {\r\n id: 0,\r\n label: '',\r\n phone1: '',\r\n phone2: '',\r\n url: '',\r\n address: {\r\n complement: '',\r\n city: '',\r\n postalCode: '',\r\n country: '',\r\n countryCode: brand === 'CHE' ? 'SUI' : 'FRA'\r\n },\r\n referent: {\r\n id: 0,\r\n civility: '',\r\n lastName: '',\r\n firstName: '',\r\n function: ''\r\n }\r\n };\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getInternshipList() {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axiosInstance.get('/api/internship/list');\r\n const { result, list, typeOfLocation } = response.data;\r\n\r\n switch (result) {\r\n case InternshipListResult.Success:\r\n dispatch(\r\n slice.actions.getIntershipListSuccess({ list: list, typeOfLocation: typeOfLocation })\r\n );\r\n break;\r\n case InternshipListResult.NotFound:\r\n dispatch(\r\n slice.actions.getIntershipListSuccess({ list: [], typeOfLocation: typeOfLocation })\r\n );\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(\r\n slice.actions.hasError('Nous rencontrons un problème,veuillez essayer ultérieurement')\r\n );\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n/**\r\n *\r\n * @param request\r\n * @returns\r\n */\r\nexport const addInternship = (request: Internship) => (onSuccess: () => void) => {\r\n return async () => {\r\n const { dispatch } = store;\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axiosInstance.post(\r\n '/api/internship/add',\r\n request,\r\n {\r\n headers: { writeOnly: true }\r\n }\r\n );\r\n const { result, message } = response.data;\r\n\r\n switch (result) {\r\n case InternshipAddResult.Success:\r\n dispatch(slice.actions.endLoading());\r\n onSuccess();\r\n break;\r\n default:\r\n dispatch(slice.actions.hasError(message));\r\n }\r\n } catch (error) {\r\n dispatch(\r\n slice.actions.hasError('Nous rencontrons un problème,veuillez essayer ultérieurement')\r\n );\r\n }\r\n };\r\n};\r\n","import { Internship } from '../@types/internship';\r\n\r\n// Recalcul des ids des événements pour éviter que deux événements possèdent le même id\r\nexport function computeInternshipEventsIds(internship: Internship) {\r\n if (internship && internship.eventsJson !== '') {\r\n const events = JSON.parse(internship.eventsJson);\r\n\r\n if (events && events.calendar && events.calendar.length > 0) {\r\n events.calendar.map((evt: any, idx: number) => (evt.id = `${idx + 1}`));\r\n\r\n internship.eventsJson = JSON.stringify(events);\r\n }\r\n }\r\n}\r\n","import { ReactNode } from 'react';\r\nimport { Container, Alert, AlertTitle, Card, Divider, Typography, CardHeader } from '@mui/material';\r\nimport { ModuleType } from '../@types/contract';\r\nimport { IllustrationInfo } from 'components/IllustrationMessage';\r\nimport { InformationsContract } from 'components/ModuleNotAuthorized';\r\nimport useModuleGuard from 'hooks/useModuleGuard';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ntype ModuleGuardProp = {\r\n accessibleModules: Array;\r\n children: ReactNode | string;\r\n};\r\n\r\n/**\r\n * Autorisation module\r\n * */\r\nexport default function ModuleGuard({ accessibleModules, children }: ModuleGuardProp) {\r\n const { moduleLocked } = useModuleGuard();\r\n\r\n if (moduleLocked(accessibleModules)) {\r\n return (\r\n \r\n \r\n \r\n Accès à l'Espace numérique de travail limité\r\n \r\n }\r\n />\r\n\r\n \r\n\r\n \r\n \r\n Accès limité\r\n Vous n’avez pas accès à toutes les fonctionnalités de l’Espace numérique de travail.\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return <>{children};\r\n}\r\n","import { map } from 'lodash';\r\nimport { LabelColor } from 'components/Label';\r\nimport {\r\n HomeworkBase,\r\n HomeworkStatus,\r\n StudyPlanChapter,\r\n StudyPlanItem,\r\n StudyPlanItemHomework,\r\n StudyPlanItemMedia,\r\n StudyPlanItemStatus,\r\n StudyPlanItemType,\r\n StudyPlanPhase,\r\n StudyPlanSearch,\r\n setLockParameter,\r\n StudyPlanMarker,\r\n StudyPlanItemUpdated,\r\n Progression,\r\n StudyPlanItemLearning,\r\n StudyPlanItemScoreType,\r\n StudyPlanItemTypeSearchString\r\n} from '../@types/pedagogy';\r\nimport { fDate } from './formatTime';\r\nimport { removeAccents } from './helper';\r\n\r\n/**\r\n * Retourne les items de type devoir\r\n */\r\nexport function getItemLearningByCourseId(\r\n phases: Array,\r\n courseId: string\r\n): StudyPlanItemLearning | null {\r\n let item: StudyPlanItemLearning | null = null;\r\n\r\n phases?.map((phase: StudyPlanPhase) => {\r\n phase.chapters.map((unityChapter: StudyPlanChapter) => {\r\n unityChapter.chapters.map((chapter: StudyPlanChapter) => {\r\n if (chapter.chapters !== null) {\r\n chapter.chapters.map((subChapter: StudyPlanChapter) =>\r\n subChapter.items\r\n .filter(\r\n (_item: StudyPlanItem) =>\r\n _item.type === StudyPlanItemType.Elearning && _item.id === courseId\r\n )\r\n .map((_item) => (item = _item as StudyPlanItemLearning))\r\n );\r\n } else\r\n return chapter.items\r\n .filter(\r\n (_item: StudyPlanItem) =>\r\n _item.type === StudyPlanItemType.Elearning && _item.id === courseId\r\n )\r\n .map((_item) => (item = _item as StudyPlanItemLearning));\r\n });\r\n });\r\n });\r\n\r\n return item;\r\n}\r\n\r\n/**\r\n * Retourne la liste des couleurs baséé sur la progression\r\n * @returns\r\n */\r\nexport function getColorsProgression() {\r\n return [{ assimilate: '#00C040', open: '#FFC107!important', toDo: '#C4C4C4!important' }];\r\n}\r\n\r\n/**\r\n * Retourne la liste des couleurs basé sur le statut\r\n * @returns\r\n */\r\nexport function getColorsStatus() {\r\n return [\r\n { status: 'assimilate', color: 'success' as LabelColor, hexa: '#229A16' },\r\n { status: 'read', color: 'warning' as LabelColor, hexa: '#B78103' },\r\n { status: 'none', color: 'default' as LabelColor, hexa: '#637381' },\r\n { status: 'disabled', color: 'default' as LabelColor, hexa: '#637381' },\r\n { status: 'locked', color: 'default' as LabelColor, hexa: '#637381' }\r\n ];\r\n}\r\n\r\n/**\r\n * Retourne la liste des couleurs basé sur le statut\r\n * @returns\r\n */\r\nexport function getColorsIconStatus() {\r\n return [\r\n { status: 'assimilate', color: 'success' as LabelColor, hexa: '#00C040' },\r\n { status: 'read', color: 'warning' as LabelColor, hexa: '#FFC107' },\r\n { status: 'none', color: 'default' as LabelColor, hexa: '#C4C4C4' },\r\n { status: 'disabled', color: 'default' as LabelColor, hexa: '#C4C4C4' },\r\n { status: 'locked', color: 'default' as LabelColor, hexa: '#C4C4C4' }\r\n ];\r\n}\r\n\r\n/**\r\n * Calcul des de la progression et verrouillae des chapitres, items\r\n * @param phases :Liste des phases du plan d'étude\r\n * Paramètres en byRef\r\n */\r\nexport function refreshPhases(\r\n phases: Array,\r\n currentSendingPhase: number,\r\n constrainedCourse: boolean,\r\n progression: Progression\r\n) {\r\n //Pour chaque phase\r\n return phases.map((phase) => {\r\n //Calcul de la progression\r\n phase.chapters.forEach((_chapter) => {\r\n setProgress(_chapter);\r\n progression.assimilate += _chapter.progression.assimilate;\r\n progression.count += _chapter.progression.count;\r\n });\r\n\r\n let unLockFirstLocked: boolean = true;\r\n //Objet par référence\r\n let parameters: setLockParameter = {\r\n unLockFirstLocked: true,\r\n isFinished: false,\r\n unlockLevelList: []\r\n };\r\n\r\n phase.chapters.forEach((chapter) => {\r\n //deblocage poru le premier item ou par N° niveau d'accès\r\n parameters.unLockFirstLocked =\r\n unLockFirstLocked || parameters.unlockLevelList.some((w) => w === chapter.unlockLevel);\r\n // gestion verrouillage\r\n setLock(chapter, parameters, currentSendingPhase, constrainedCourse);\r\n unLockFirstLocked = false;\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Verrouillage PE :\r\n * Par defaut le serveur envoi les zones verrouillées\r\n * Parcours contraint Regle : voir fichier dans le source code\r\n * @Chapter : uf de la phase\r\n */\r\nexport function setLock(\r\n chapter: StudyPlanChapter,\r\n parameter: setLockParameter,\r\n numEnvMax: number,\r\n constrainedCourse: boolean\r\n) {\r\n if (chapter.chapters != null) {\r\n chapter.chapters.map((x) => {\r\n //on force un deblocage si :\r\n parameter.unLockFirstLocked =\r\n parameter.unLockFirstLocked ||\r\n (!chapter.locked && chapter.level === 1) || // de tous les sous chapitres d'un chpitre déverrouilé\r\n (parameter.isFinished && chapter.level === 0); // Si le chapitre précédent est terminé\r\n\r\n setLock(x, parameter, numEnvMax, constrainedCourse);\r\n\r\n if (!x.locked) {\r\n chapter.locked = false;\r\n }\r\n\r\n parameter.isFinished =\r\n chapter.progression.count === chapter.progression.assimilate + chapter.progression.open;\r\n });\r\n\r\n //deverrouillage sur le NumDev des uF\r\n if (chapter.level === 0 && !chapter.locked && chapter.unlockLevel > 0) {\r\n parameter.unlockLevelList.push(chapter.unlockLevel);\r\n }\r\n } else {\r\n chapter.items.map((item: StudyPlanItem, index: number) => {\r\n if (\r\n item.status === StudyPlanItemStatus.Locked &&\r\n parameter.unLockFirstLocked &&\r\n item.sendingPhase <= numEnvMax\r\n ) {\r\n item.status = StudyPlanItemStatus.None;\r\n parameter.unLockFirstLocked = false;\r\n chapter.locked = false;\r\n }\r\n //contraint on bloque si on trouve un item non commencé\r\n if (\r\n constrainedCourse &&\r\n (item.status === StudyPlanItemStatus.None ||\r\n (item.type === StudyPlanItemType.Homework &&\r\n !isHomeworkDo(item as StudyPlanItemHomework)))\r\n )\r\n parameter.unLockFirstLocked = false;\r\n\r\n /* parcours libre*/\r\n if (\r\n !constrainedCourse &&\r\n [StudyPlanItemStatus.None, StudyPlanItemStatus.Locked].includes(item.status)\r\n ) {\r\n item.status = StudyPlanItemStatus.None;\r\n parameter.unLockFirstLocked = false;\r\n chapter.locked = false;\r\n }\r\n });\r\n\r\n parameter.isFinished =\r\n chapter.progression.count === chapter.progression.assimilate + chapter.progression.open;\r\n chapter.locked = !(\r\n !chapter.locked || chapter.progression.assimilate + chapter.progression.open > 0\r\n );\r\n }\r\n}\r\n\r\nexport function isHomeworkDo(item: StudyPlanItemHomework) {\r\n if (item.homeworkBase.homeworks.length === 0) return false;\r\n\r\n return item.homeworkBase.homeworks.some((h) =>\r\n [HomeworkStatus.Corrected, HomeworkStatus.Do, HomeworkStatus.Sended].includes(h.status)\r\n );\r\n}\r\n\r\n//Initialisation de l(objet progression\r\nfunction intChapterProgress(chapter: StudyPlanChapter) {\r\n chapter.progression = initProgression();\r\n}\r\n\r\nexport function initProgression() {\r\n return {\r\n count: 0,\r\n assimilate: 0,\r\n open: 0,\r\n coefficientSummary: 0,\r\n scoreSummary: 0,\r\n isScore: false,\r\n scoreCount: 0\r\n } as Progression;\r\n}\r\n\r\n/**\r\n * Gestion de la progression des chapitres sélectionné\r\n * @chapter : uf de la phase\r\n */\r\nexport function setProgress(chapter: StudyPlanChapter) {\r\n if (chapter.chapters != null) {\r\n intChapterProgress(chapter);\r\n chapter.chapters.forEach((x) => {\r\n setProgress(x);\r\n\r\n chapter.progression.count += x.progression.count;\r\n chapter.progression.assimilate += x.progression.assimilate;\r\n chapter.progression.open += x.progression.open;\r\n chapter.progression.coefficientSummary += x.progression.coefficientSummary;\r\n chapter.progression.scoreSummary += x.progression.scoreSummary;\r\n chapter.progression.scoreCount += x.progression.scoreCount;\r\n if (x.progression.isScore) {\r\n chapter.progression.isScore = true;\r\n if (chapter.progression.coefficientSummary > 0)\r\n chapter.progression.score =\r\n chapter.progression.scoreSummary / chapter.progression.coefficientSummary;\r\n }\r\n });\r\n } else {\r\n intChapterProgress(chapter);\r\n chapter.items.forEach((item: StudyPlanItem) => {\r\n /*\r\n if (chap.type === StudyPlanItemType.Elearning) {\r\n const item = chap as StudyPlanItemLearning;\r\n if (item.elearning.score > 0) {\r\n chapter.progression.coefficientSummary += 1;\r\n chapter.progression.scoreSummary += item.elearning.score;\r\n }\r\n }*/\r\n\r\n if (\r\n [StudyPlanItemScoreType.ExcludeDo, StudyPlanItemScoreType.IncludeDo].includes(\r\n item.averageType\r\n )\r\n ) {\r\n chapter.progression.isScore = true;\r\n }\r\n\r\n if (item.averageType === StudyPlanItemScoreType.IncludeDo) {\r\n if (item.type === StudyPlanItemType.Homework) {\r\n const chapHomework = item as StudyPlanItemHomework; //&& chapHomework.homeworkBase.mandatory\r\n\r\n if (chapHomework.homeworkBase.homeworks?.length > 0) {\r\n const homeworksCorrected = chapHomework.homeworkBase.homeworks.filter(\r\n (homework) => homework.status === HomeworkStatus.Corrected\r\n );\r\n if (homeworksCorrected && homeworksCorrected.length > 0) {\r\n homeworksCorrected.map((c) => {\r\n chapter.progression.coefficientSummary += chapHomework.homeworkBase.coefficient;\r\n chapter.progression.scoreSummary += c.score * chapHomework.homeworkBase.coefficient;\r\n });\r\n\r\n chapter.progression.scoreCount += 1;\r\n }\r\n }\r\n }\r\n }\r\n chapter.progression.count += 1;\r\n switch (item.status) {\r\n case StudyPlanItemStatus.None:\r\n break;\r\n case StudyPlanItemStatus.Locked:\r\n break;\r\n case StudyPlanItemStatus.Assimilate:\r\n chapter.progression.assimilate += 1;\r\n break;\r\n case StudyPlanItemStatus.Read:\r\n chapter.progression.open += 1;\r\n break;\r\n }\r\n });\r\n\r\n if (chapter.progression.coefficientSummary > 0)\r\n chapter.progression.score =\r\n chapter.progression.scoreSummary / chapter.progression.coefficientSummary;\r\n }\r\n}\r\n\r\n/*\r\n * Extraction récursive des devoirs du PE\r\n * @chapter : chapitre de la formation\r\n * @list: : Liste des devoirs\r\n */\r\nexport const extractHomework = (\r\n chapter: StudyPlanChapter,\r\n list: Array\r\n): Array => {\r\n if (chapter.chapters != null) return chapter.chapters.map((x) => extractHomework(x, list));\r\n else\r\n chapter.items.forEach((x: StudyPlanItem) => {\r\n if (x.type === StudyPlanItemType.Homework) {\r\n let current = x as StudyPlanItemHomework;\r\n\r\n list.push(current.homeworkBase);\r\n }\r\n });\r\n return [];\r\n};\r\n\r\n/**\r\n * Extraire les items par motclé\r\n * @chapter : chapitre de la formation\r\n * @searchString :mot clé\r\n * @list : Liste des items retournées\r\n * @chapterParent : Chapitre parent du chapitre de l'item sélectionné\r\n */\r\nexport const extractItem = (\r\n chapter: StudyPlanChapter,\r\n searchString: string,\r\n list: Array,\r\n chapterParent: StudyPlanChapter | null,\r\n itemType?: StudyPlanItemType[]\r\n): Array => {\r\n const cleanSearchString = removeAccents(searchString);\r\n\r\n if (chapter.chapters != null)\r\n return chapter.chapters.map((x) => extractItem(x, cleanSearchString, list, chapter, itemType));\r\n else\r\n chapter.items.forEach((x: StudyPlanItem) => {\r\n if (\r\n (removeAccents(x.label).includes(cleanSearchString) ||\r\n removeAccents(x.reference).includes(cleanSearchString) ||\r\n removeAccents(x.key).includes(cleanSearchString) ||\r\n removeAccents(StudyPlanItemType[x.type]).includes(cleanSearchString) ||\r\n StudyPlanItemTypeSearchString[x.type.valueOf()].some((s) =>\r\n s.includes(cleanSearchString)\r\n )) &&\r\n (!itemType ||\r\n itemType === undefined ||\r\n itemType?.length === 0 ||\r\n itemType?.includes(x.type))\r\n ) {\r\n list.push({ item: x, chapter: chapter, chapterParent: chapterParent! });\r\n }\r\n });\r\n return [];\r\n};\r\n\r\nexport const getItemsByReference = (\r\n chapter: StudyPlanChapter,\r\n reference: string,\r\n chapterParent: StudyPlanChapter | null,\r\n list: Array\r\n): Array => {\r\n if (chapter.chapters != null)\r\n return chapter.chapters.map((x) => getItemsByReference(x, reference, chapter, list));\r\n else\r\n chapter.items.forEach((x: StudyPlanItem) => {\r\n if (x.id === reference) {\r\n list.push(x);\r\n }\r\n });\r\n return [];\r\n};\r\n\r\n/**\r\n * Gestion du déblocage\r\n */\r\nfunction LoadViewGlobal(\r\n Chapters: Array,\r\n currentSendingPhase: number,\r\n constrainedCourse: boolean\r\n) {\r\n //Pour chaque phase\r\n Chapters.forEach((chapter) => {\r\n //Calcul de la progression\r\n setProgress(chapter);\r\n\r\n let unLockFirstLocked: boolean = true;\r\n //Objet par référence\r\n let parameters: setLockParameter = {\r\n unLockFirstLocked: true,\r\n isFinished: false,\r\n unlockLevelList: []\r\n };\r\n\r\n //deblocage poru le premier item ou par N° niveau d'accès\r\n parameters.unLockFirstLocked =\r\n unLockFirstLocked || parameters.unlockLevelList.some((w) => w == chapter.unlockLevel);\r\n // gestion verrouillage\r\n setLock(chapter, parameters, currentSendingPhase, constrainedCourse);\r\n unLockFirstLocked = false;\r\n });\r\n}\r\n\r\nexport function getItemsUpdated(phases: Array): Array {\r\n let list: Array = [];\r\n\r\n phases.forEach((p) => {\r\n p.chapters.map((uf: StudyPlanChapter) => updateChapterUpdated(uf));\r\n });\r\n\r\n phases.forEach((p) => {\r\n p.chapters.forEach((uf: StudyPlanChapter) => {\r\n uf.chapters.forEach((chapter: StudyPlanChapter) => {\r\n if (chapter.chapters != null) {\r\n chapter.chapters.forEach((subChapter: StudyPlanChapter) => {\r\n subChapter.items.forEach((item: StudyPlanItem) => {\r\n if (item.isUpdated)\r\n list.push({\r\n phase: p.id,\r\n unityCode: uf.id,\r\n chapterCode: chapter.id,\r\n subChapterCode: subChapter.id,\r\n item: item\r\n });\r\n });\r\n });\r\n } else\r\n chapter.items.forEach((item: StudyPlanItem) => {\r\n if (item.isUpdated)\r\n list.push({\r\n phase: p.id,\r\n unityCode: uf.id,\r\n chapterCode: chapter.id,\r\n subChapterCode: '',\r\n item: item\r\n });\r\n });\r\n });\r\n });\r\n });\r\n return list;\r\n}\r\n\r\n/**\r\n * Update de l'information des supports mis à jour\r\n * @param phases\r\n * @param payload\r\n * @returns\r\n */\r\nexport function updateChapterUpdated(chapter: StudyPlanChapter) {\r\n if (chapter.chapters != null) {\r\n chapter.chapters.map((c) => {\r\n return updateChapterUpdated(c);\r\n });\r\n chapter.itemsUpdated = chapter.chapters.reduce(\r\n (accumaleur, currentValue) => accumaleur + currentValue.itemsUpdated,\r\n 0\r\n );\r\n } else {\r\n chapter.itemsUpdated = chapter.items.filter((i) => i.isUpdated).length;\r\n }\r\n}\r\n\r\nexport function getFirstSubChapterWithItems(chapter: Array) {\r\n return chapter.filter((sub) => sub.items && sub.items.length > 0)[0];\r\n}\r\n\r\n/*\r\n Mise à jour du pe\r\n*/\r\nexport function setStudyPlan(phases: Array, payload: StudyPlanItem) {\r\n return map(phases, (k) => {\r\n if (k.id === payload.sendingPhase) {\r\n k.chapters.forEach((uf: StudyPlanChapter) => {\r\n uf.chapters.forEach((chapter: StudyPlanChapter) => {\r\n if (chapter.chapters != null) {\r\n chapter.chapters.forEach((subChapter: StudyPlanChapter) => {\r\n subChapter.items.map((_item: StudyPlanItem) => {\r\n if (_item.key === payload.key) {\r\n return {\r\n payload\r\n };\r\n } else return _item;\r\n });\r\n });\r\n } else {\r\n chapter.items.map((_item: StudyPlanItem) => {\r\n if (_item.key === payload.key) {\r\n return {\r\n payload\r\n };\r\n } else return _item;\r\n });\r\n }\r\n });\r\n });\r\n }\r\n return k;\r\n });\r\n}\r\n\r\nexport function extractDataType(item: StudyPlanItem) {\r\n switch (item.type) {\r\n case StudyPlanItemType.Homework:\r\n let itemHomework = item as StudyPlanItemHomework;\r\n return {\r\n courseId: itemHomework.homeworkBase.courseId,\r\n id: itemHomework.homeworkBase.id,\r\n key: item.id,\r\n mediaId: 0,\r\n barCode: itemHomework.homeworkBase.barCode\r\n };\r\n case StudyPlanItemType.Elearning:\r\n return {\r\n courseId: item.id,\r\n id: 0,\r\n key: item.id,\r\n mediaId: 0,\r\n barCode: ''\r\n };\r\n default:\r\n let itemMedia = item as StudyPlanItemMedia;\r\n return {\r\n courseId: itemMedia.id,\r\n id: 0,\r\n key: item.id,\r\n mediaId: itemMedia.media.id,\r\n barCode: ''\r\n };\r\n }\r\n}\r\n\r\nexport function getMarker(item: StudyPlanItem): StudyPlanMarker {\r\n switch (item.type) {\r\n case StudyPlanItemType.Homework:\r\n let itemHomework = item as StudyPlanItemHomework;\r\n return {\r\n courseId: itemHomework.homeworkBase.courseId,\r\n dateCreated: fDate(new Date(), 'yyyy-MM-dd HH:mm'),\r\n id: itemHomework.homeworkBase.id,\r\n key: item.key,\r\n mediaId: 0\r\n };\r\n case StudyPlanItemType.Elearning:\r\n return {\r\n courseId: item.id,\r\n dateCreated: fDate(new Date(), 'yyyy-MM-dd HH:mm'),\r\n id: 0,\r\n key: item.key,\r\n mediaId: 0\r\n };\r\n default:\r\n let itemMedia = item as StudyPlanItemMedia;\r\n return {\r\n courseId: itemMedia.id,\r\n dateCreated: fDate(new Date(), 'yyyy-MM-dd HH:mm'),\r\n id: 0,\r\n key: item.key,\r\n mediaId: itemMedia.media.id\r\n };\r\n }\r\n}\r\n\r\nexport function hChapterColorProgression(progression: Progression, locked: boolean) {\r\n const { assimilate, open, count } = progression;\r\n switch (true) {\r\n case count === assimilate && count > 0:\r\n return {\r\n color: getColorsProgression().filter((cp) => cp.assimilate)[0].assimilate,\r\n label: 'Assimilé'\r\n };\r\n case open > 0:\r\n case assimilate > 0:\r\n return { color: getColorsProgression().filter((cp) => cp.open)[0].open, label: 'En cours' };\r\n default:\r\n return {\r\n color: getColorsProgression().filter((cp) => cp.toDo)[0].toDo,\r\n label: locked ? 'Verrouillé' : 'A commencer'\r\n };\r\n }\r\n}\r\n","import { ModuleType, ModuleExtends } from './contract';\r\nimport { MediaFile } from './media';\r\n\r\nexport type ButtonType = 'button' | 'iconButton' | 'dropdownItem' | 'without' | 'chipButton';\r\n\r\nexport type MessagesAccessType = 'blocagePartiel' | 'blocagePaiement' | 'password' | 'limited';\r\n\r\nexport type SummaryRequest = {\r\n index: number;\r\n pageSize: number;\r\n sortName: string;\r\n direction: boolean;\r\n};\r\n\r\nexport interface SummaryResponse {\r\n index: number;\r\n pageSize: number;\r\n totalCount: number;\r\n}\r\nexport interface FileBase extends FileBaseInfo {\r\n extension: string;\r\n stream: string;\r\n contentType: string;\r\n}\r\n\r\nexport enum FileType {\r\n None = 0,\r\n Message = 2,\r\n News = 3,\r\n Media = 4,\r\n Homework = 5,\r\n Correction = 6,\r\n Question = 7,\r\n AccountingSchedule = 8,\r\n AccountStatement = 9,\r\n Avatar = 10,\r\n ImageCourse = 11,\r\n Examen = 12,\r\n CorrectionType = 13,\r\n MediaReferentiel = 14\r\n}\r\n\r\nexport enum FileFormat {\r\n None = 0,\r\n Pdf = 1,\r\n PdfSecurises = 2,\r\n PdfPersonnalise = 3,\r\n Html = 4,\r\n UrlText = 5,\r\n Images = 8,\r\n Autres = 9,\r\n Interne = 10,\r\n Audio = 23,\r\n Videos = 30,\r\n Merge = 31\r\n}\r\n\r\nexport interface FileBaseItemResponse {\r\n item: FileBase;\r\n result: FileBaseItemResult;\r\n}\r\n\r\nexport enum FileBaseItemResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport interface FileBaseInfo {\r\n id: number;\r\n fileName: string;\r\n size: string;\r\n fileType: FileType;\r\n metadatas: MediaFile;\r\n userType: UserType;\r\n url?: string;\r\n isS3: boolean;\r\n}\r\nexport interface FileBaseImageOfCourseResponse {\r\n result: FileBaseImageOfCourseResult;\r\n images: string[];\r\n}\r\n\r\nexport enum FileBaseImageOfCourseResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\nexport interface FileInfoToken {\r\n fileName: string;\r\n brandId: string;\r\n isS3: boolean;\r\n}\r\nexport enum UserType {\r\n None = 0,\r\n Corrected = 1,\r\n Student = 2\r\n}\r\n\r\nexport interface ListItemType extends ModuleExtends {\r\n id: string;\r\n label: string;\r\n enabled: boolean;\r\n color: string;\r\n}\r\n\r\nexport type AlertBase = {\r\n title: string;\r\n description?: string;\r\n img?: string;\r\n action?: () => void;\r\n};\r\n","import { ModeAccess } from './account';\r\nimport { AgendaEvent } from './agenda';\r\nimport { FileBaseInfo } from './common';\r\nimport { Favorite, FavoriteType } from './favorite';\r\nimport { FileInfoToken, MediaFileInfo } from './media';\r\n\r\nexport interface Training {\r\n id: string;\r\n label: string;\r\n version: number;\r\n options: Option[];\r\n unities: Option[];\r\n theme: Theme;\r\n internshipMandatory: boolean;\r\n categoryObjectif: string;\r\n typeObjectif: string;\r\n duration: number;\r\n internalRegistration: boolean;\r\n}\r\n\r\nexport interface Option {\r\n id: string;\r\n label: string;\r\n}\r\n\r\nexport interface Theme {\r\n id: string;\r\n label: string;\r\n}\r\nexport interface TeacherListResponse {\r\n list: Teacher[];\r\n result: TeacherListResult;\r\n}\r\n\r\nexport enum TeacherListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface Teacher {\r\n id: string;\r\n account: string;\r\n lastName: string;\r\n firstName: string;\r\n email: string;\r\n teachingSubject: string;\r\n coach: boolean;\r\n civility: string;\r\n}\r\n\r\nexport type StudyPlanState = {\r\n isLoading: boolean;\r\n error: any;\r\n marker: StudyPlanMarker | null;\r\n currentSendingPhase: number;\r\n constrainedCourse: boolean;\r\n chapterItemUpdatedList: Array | null;\r\n phases: Array | null;\r\n skills: Array | null;\r\n boundCourses: Array | null;\r\n internshipsOfSupport: Array | null;\r\n item: StudyPlanItem | null;\r\n subChapter: StudyPlanChapter | null;\r\n chapter: StudyPlanChapter | null;\r\n updated: boolean;\r\n progression: number;\r\n context: StudyPlanContext | null;\r\n};\r\n\r\nexport type StudyPlanContextType = {\r\n isLoading: boolean;\r\n error: any;\r\n marker: StudyPlanMarker | null;\r\n updated: boolean;\r\n chapterItemUpdatedList: Array | null;\r\n phases: Array | null;\r\n skills: Array | null;\r\n internshipsOfSupport: Array | null;\r\n item: StudyPlanItem | null;\r\n subChapter: StudyPlanChapter | null;\r\n chapter: StudyPlanChapter | null;\r\n currentSendingPhase: number;\r\n progression: number;\r\n context: StudyPlanContext | null;\r\n saveProgress: (\r\n request: StudyPlanItemProgressRequest\r\n ) => (onSuccess: (state: boolean) => void) => void;\r\n\r\n selectItem: (\r\n chapter: StudyPlanChapter,\r\n item: StudyPlanItem,\r\n updated: boolean,\r\n subChapter?: StudyPlanChapter | null\r\n ) => void;\r\n resetUpdated: () => void;\r\n resetState: () => void;\r\n getImageOfCourse: (\r\n fileInfo: FileInfoToken\r\n ) => (onSuccess: (images: Array) => void) => void;\r\n initialize: (_view: StudyPlanView, modeAccess: ModeAccess, constrainedCourse: boolean) => void;\r\n};\r\n\r\nexport interface StudyPlanSelected {\r\n item: StudyPlanItem;\r\n subChapter: StudyPlanChapter | null;\r\n chapter: StudyPlanChapter;\r\n}\r\n\r\nexport interface StudyPlanSearch {\r\n item: StudyPlanItem;\r\n chapter: StudyPlanChapter;\r\n chapterParent: StudyPlanChapter;\r\n}\r\n\r\nexport interface StudyPlanItemUpdated {\r\n phase: number;\r\n unityCode: string;\r\n chapterCode: string;\r\n subChapterCode: string;\r\n item: StudyPlanItem;\r\n}\r\n\r\nexport type StudyPlanInternshipOfSupport = {\r\n code: string;\r\n label: string;\r\n};\r\n\r\nexport enum StudyPlanItemScoreType {\r\n None = 0,\r\n Include = 1,\r\n Exclude = 2,\r\n IncludeDo = 3,\r\n ExcludeDo = 4\r\n}\r\n\r\nexport interface StudyPlanItem {\r\n id: string;\r\n label: string;\r\n reference: string;\r\n status: StudyPlanItemStatus;\r\n dateStatus: string | null;\r\n type: StudyPlanItemType;\r\n rowNumber: number;\r\n sendingPhase: number;\r\n marker: boolean;\r\n key: string;\r\n material: Material;\r\n isUpdated: boolean;\r\n schedule?: AgendaEvent;\r\n averageType: StudyPlanItemScoreType;\r\n quizAssimilate: IQuizAssimilate | null;\r\n boundCourse: string;\r\n}\r\n\r\nexport interface IQuizAssimilate {\r\n url: string;\r\n score: number;\r\n}\r\n\r\nexport interface StudyPlanItemHomework extends StudyPlanItem {\r\n homeworkBase: HomeworkBase;\r\n items: Array;\r\n}\r\n\r\nexport interface StudyPlanItemMedia extends StudyPlanItem {\r\n media: MediaFileInfo;\r\n}\r\n\r\nexport interface StudyPlanItemHtml extends StudyPlanItem {\r\n media: MediaFileInfo;\r\n url: string;\r\n endOfRead: boolean;\r\n}\r\n\r\nexport interface StudyPlanItemLearning extends StudyPlanItem {\r\n elearning: Elearning;\r\n}\r\n\r\nexport interface Elearning {\r\n id: string;\r\n label: string;\r\n url: string;\r\n score: number;\r\n lastAccess: string;\r\n properties: any;\r\n}\r\n\r\nexport interface StudyPlanItemProgressRequest {\r\n id: string;\r\n courseId: string;\r\n mediaId: string;\r\n score: number;\r\n status: StudyPlanItemStatus;\r\n type: StudyPlanItemType;\r\n marked: boolean;\r\n endOfRead: boolean;\r\n}\r\n\r\nexport enum StudyPlanItemStatus {\r\n None = 0,\r\n Read = 1,\r\n Assimilate = 2,\r\n Locked = 3,\r\n Disabled = 4\r\n}\r\n\r\nexport enum StudyPlanItemType {\r\n Homework = 0,\r\n Elearning = 2,\r\n Video = 3,\r\n Html = 4,\r\n Url = 5,\r\n Stage = 6,\r\n Audio = 7,\r\n Pdf = 8,\r\n Annexe = 9\r\n}\r\n\r\n// Tableau dont les index correspondent aux valeurs de StudyPlanItemType\r\n// NB : en minuscules, au pluriel, sans accents\r\nexport const StudyPlanItemTypeSearchString = [\r\n ['homeworks', 'devoirs', 'evaluations'],\r\n [],\r\n ['elearnings', 'e-learnings'],\r\n ['videos'],\r\n ['html', 'cours'],\r\n ['urls', 'liens'],\r\n ['stages'],\r\n ['audio'],\r\n ['pdf'],\r\n ['annexes']\r\n];\r\n\r\nexport type HomeworkInProgressState = {\r\n isLoadingFile: boolean;\r\n isLoadingSended: boolean;\r\n isLoading: boolean;\r\n error: any;\r\n errorFile: any;\r\n errorSended: any;\r\n homeworkInProgress: HomeworkInProgress | null;\r\n};\r\n\r\nexport enum ScoreType {\r\n sur20 = 0,\r\n evaluation = 1\r\n}\r\n\r\nexport interface HomeworkBase {\r\n courseId: string;\r\n id: number;\r\n label: string;\r\n barCode: string;\r\n scoreType: ScoreType;\r\n mandatory: boolean;\r\n isUpload: boolean;\r\n material: Material;\r\n skillIds: Array;\r\n elearning: Elearning;\r\n homeworks: Homework[];\r\n inProgress: Homework;\r\n files: Array;\r\n homeworkType: HomeworkType;\r\n attachmentType: AttachmentType;\r\n status: HomeworkStatus;\r\n duration: number;\r\n coefficient: number;\r\n studyPlanItem: StudyPlanItemHomework;\r\n parent: StudyPlanItem;\r\n isScore: boolean;\r\n}\r\n\r\nexport enum HomeworkType {\r\n Standard = 0,\r\n EvaluationStage = 1,\r\n ReportStage = 2,\r\n eLearning = 3,\r\n Voice = 4\r\n}\r\n\r\nexport interface Material {\r\n id: string;\r\n label: string;\r\n scheduleId: string;\r\n scheduleLabel: string;\r\n}\r\n\r\nexport interface Skill {\r\n id: string;\r\n label: string;\r\n status: SkillStatusType;\r\n homeworkKeys: Array<{ courseId: string; id: number }>;\r\n}\r\n\r\nexport interface SkillHomeworksBase {\r\n id: string;\r\n label: string;\r\n status: SkillStatusType;\r\n homeworks: Array;\r\n}\r\n\r\nexport enum SkillStatusType {\r\n None = 0,\r\n NotEvaluated = 1,\r\n BeingEvaluated = 2,\r\n NotAcquired = 3,\r\n PartialAcquired = 4,\r\n Acquired = 5\r\n}\r\nexport interface Homework {\r\n courseId: string;\r\n id: number;\r\n chrRecDvr: number;\r\n score: number;\r\n note: string; //fusion de la note(decimal) et evaluation\r\n evaluation: string;\r\n status: HomeworkStatus;\r\n appreciation: string;\r\n correctionDate: string | null;\r\n receptionDate: string | null;\r\n sendingDate: string | null;\r\n teacher: Teacher;\r\n files: Array;\r\n observation: string;\r\n}\r\n\r\nexport enum HomeworkStatus {\r\n ToDo = 0,\r\n Remade = 1,\r\n Do = 2,\r\n Corrected = 3,\r\n InProgress = 4,\r\n Sended = 5,\r\n Rejected = 6\r\n}\r\nexport interface StudyPlan {\r\n marker: StudyPlanMarker;\r\n currentSendingPhase: number;\r\n chapterItemUpdatedList: Array;\r\n phases: Array;\r\n skills: Array;\r\n context: StudyPlanContext;\r\n internshipsOfSupport: Array;\r\n boundCourses: Array;\r\n}\r\n\r\nexport interface StudyPlanPhase {\r\n id: number;\r\n name: string;\r\n chapters: StudyPlanChapter[];\r\n}\r\n\r\nexport interface StudyPlanMarker {\r\n courseId: string;\r\n id: number;\r\n mediaId: number;\r\n key: string;\r\n dateCreated: string;\r\n}\r\n\r\nexport interface StudyPlanMove {\r\n phase: number;\r\n unityChapter: string;\r\n chapter: string;\r\n}\r\n\r\nexport interface StudyPlanContext {\r\n code: string;\r\n label: string;\r\n type: StudyPlanContextTypeControl;\r\n}\r\n\r\nexport enum StudyPlanContextTypeControl {\r\n StudyPlan = 0,\r\n SkillBloc = 1\r\n}\r\n\r\nexport enum StudyPlanView {\r\n SendingPhase = 0,\r\n Global = 1,\r\n Complements = 2\r\n}\r\n\r\nexport interface setLockParameter {\r\n unLockFirstLocked: boolean;\r\n unlockLevelList: Array;\r\n isFinished: boolean;\r\n}\r\n\r\nexport interface Progression {\r\n count: number;\r\n open: number;\r\n assimilate: number;\r\n score: number;\r\n scoreCount: number;\r\n scoreSummary: number;\r\n coefficientSummary: number;\r\n isScore: boolean;\r\n}\r\n\r\nexport interface StudyPlanChapter {\r\n id: string;\r\n label: string;\r\n level: number;\r\n line: number;\r\n duration: number;\r\n sendingPhase: number;\r\n chapters: StudyPlanChapter[];\r\n items: StudyPlanItem[];\r\n progression: Progression;\r\n locked: boolean;\r\n unlockLevel: number;\r\n itemsUpdated: number;\r\n chapterValidate?: StudyPlanChapterValidate;\r\n}\r\n\r\nexport interface StudyPlanProgressionResponse {\r\n result: StudyPlanProgressionResult;\r\n progression: Progression;\r\n}\r\n\r\nexport enum StudyPlanProgressionResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface StudyPlanResponse {\r\n result: StudyPlanResult;\r\n studyPlan: StudyPlan;\r\n}\r\n\r\nexport enum StudyPlanResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Updated = 2\r\n}\r\n\r\nexport interface StudyPlanChapterValidate {\r\n numberOfHomeworksRequested: number;\r\n numberOfHomeworksTotal: number;\r\n numberOfHomeworksCompleted: number;\r\n validated: boolean;\r\n phaseValidated: boolean;\r\n}\r\n\r\nexport interface HomeworkInProgressResponse {\r\n result: HomeworkInProgressResult;\r\n item: HomeworkInProgress;\r\n}\r\n\r\nexport interface HomeworkInProgress {\r\n courseId: string;\r\n id: number;\r\n barCode: string;\r\n content: string;\r\n status: string;\r\n isSavedOnServer: boolean;\r\n files: FileBaseInfo[];\r\n}\r\n\r\nexport enum HomeworkInProgressResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface HomeworkAddFileResponse {\r\n result: HomeworkAddFileResult;\r\n files: FileBaseInfo[];\r\n}\r\n\r\nexport interface HomeworkFileRequest {\r\n courseId: string;\r\n id: number;\r\n barCode: string;\r\n conDvrFicId: number;\r\n files: Array;\r\n}\r\n\r\nexport enum HomeworkAddFileResult {\r\n NotFound = 0,\r\n Success = 1,\r\n ErrorHomeworkSended = 2,\r\n ErrorNumberFilesReached = 3,\r\n ErrorFilesSizeReached = 4,\r\n ErrorExtensions = 5,\r\n Error = 6\r\n}\r\n\r\nexport enum HomeworkSendResult {\r\n NotFound = 0,\r\n Success = 1,\r\n IsFileRequired = 2,\r\n IsTypeFileRequired = 3,\r\n IsOnlineError = 4,\r\n Error = 5\r\n}\r\n\r\nexport interface HomeworkSendResponse {\r\n result: HomeworkSendResult;\r\n sended: Homework;\r\n}\r\n\r\nexport interface HomeworkSaveContentResponse {\r\n result: HomeworkSaveContentResult;\r\n}\r\n\r\nexport enum HomeworkSaveContentResult {\r\n NotFound = 0,\r\n Success = 1,\r\n Error = 2\r\n}\r\n\r\nexport interface HomeworkContentRequest {\r\n courseId: string;\r\n id: number;\r\n barCode: string;\r\n content: string;\r\n attachmentType: AttachmentType | null;\r\n}\r\n\r\nexport interface AttachmentType {\r\n id: number;\r\n label: string;\r\n extensions: string[];\r\n}\r\n\r\nexport interface StudyPlanSaveProgressResponse {\r\n result: StudyPlanSaveProgressResult;\r\n studyPlanItem: StudyPlanItem;\r\n}\r\n\r\nexport enum StudyPlanSaveProgressResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n","export enum SurveyResult {\r\n Success = 1,\r\n CannotFindSurvey = 2,\r\n CannotInitializeConnexionEnvironnement = 3,\r\n BadRequest = 4,\r\n CannotFindProposalsCustomer = 5,\r\n CannotFindPartner = 6\r\n}\r\n\r\nexport enum QuestionType {\r\n Chk = 1,\r\n Mem = 2,\r\n Rad = 3,\r\n Txt = 4,\r\n Rat = 5\r\n}\r\n\r\nexport type ISurveyCategoryNext = {\r\n step: number;\r\n conditions: Array | null;\r\n};\r\n\r\nexport type IConditionSurvey = {\r\n idQuestion: number;\r\n index: number;\r\n value: any;\r\n};\r\n\r\nexport interface SurveyCategory {\r\n id: number;\r\n name: string;\r\n surveyList: Array;\r\n html: string;\r\n css: string;\r\n nextSteps: Array | null;\r\n}\r\n\r\nexport interface Survey {\r\n id: number;\r\n question: string;\r\n questionType: QuestionType;\r\n htmAdd: string;\r\n optionList: Array;\r\n value: string;\r\n categoryId: number;\r\n isRequired: boolean;\r\n regroupementId: string;\r\n regroupementTitre: string;\r\n}\r\n\r\nexport interface QuestOption {\r\n id: string;\r\n text: string;\r\n label: string;\r\n rate: number;\r\n checked: boolean;\r\n surveyId: number;\r\n textPre: string;\r\n textRep: string;\r\n}\r\n\r\nexport interface SurveyResponse {\r\n result: SurveyResult;\r\n id: number;\r\n categoryList: Array;\r\n titre: string;\r\n fait: boolean;\r\n observation: string;\r\n modeLecture: boolean;\r\n appTyp: string;\r\n appId: string;\r\n}\r\n\r\nexport interface SurveyRequest {\r\n lisQue: number;\r\n datCon?: number;\r\n ele?: number;\r\n conEns?: number;\r\n typApp: string;\r\n appId: string;\r\n}\r\n\r\nexport interface SurveySaveRequest extends SurveyRequest {\r\n reponses: Reponse[];\r\n}\r\n\r\nexport interface Reponse {\r\n questionId: number;\r\n value: string;\r\n valueText: string;\r\n}\r\n\r\nexport interface SurveySaveResponse {\r\n result: SurveySaveResult;\r\n}\r\n\r\nexport enum SurveySaveResult {\r\n Success = 1,\r\n Error = 2\r\n}\r\n","import { map, filter } from 'lodash';\r\nimport { createSlice } from '@reduxjs/toolkit';\r\nimport { EventInput } from '@fullcalendar/common';\r\nimport { dispatch } from '../store';\r\n// utils\r\nimport axios from '../../utils/axios';\r\n//\r\nimport { CalendarState } from '../../@types/calendar';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: CalendarState = {\r\n isLoading: false,\r\n error: false,\r\n events: [],\r\n isOpenModal: false,\r\n selectedEventId: null,\r\n selectedRange: null\r\n};\r\n\r\nconst slice = createSlice({\r\n name: 'calendar',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state, action) {\r\n state.isLoading = false;\r\n state.error = action.payload;\r\n },\r\n\r\n // GET EVENTS\r\n getEventsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.events = action.payload;\r\n },\r\n\r\n // CREATE EVENT\r\n createEventSuccess(state, action) {\r\n const newEvent = action.payload;\r\n state.isLoading = false;\r\n state.events = [...state.events, newEvent];\r\n },\r\n\r\n // UPDATE EVENT\r\n updateEventSuccess(state, action) {\r\n const event = action.payload;\r\n const updateEvent = map(state.events, (_event) => {\r\n if (_event.id === event.id) {\r\n return event;\r\n }\r\n return _event;\r\n });\r\n\r\n state.isLoading = false;\r\n state.events = updateEvent;\r\n },\r\n\r\n // DELETE EVENT\r\n deleteEventSuccess(state, action) {\r\n const { eventId } = action.payload;\r\n const deleteEvent = filter(state.events, (user) => user.id !== eventId);\r\n state.events = deleteEvent;\r\n },\r\n\r\n // SELECT EVENT\r\n selectEvent(state, action) {\r\n const eventId = action.payload;\r\n state.isOpenModal = true;\r\n state.selectedEventId = eventId;\r\n },\r\n\r\n // SELECT RANGE\r\n selectRange(state, action) {\r\n const { start, end } = action.payload;\r\n state.isOpenModal = true;\r\n state.selectedRange = { start, end };\r\n },\r\n\r\n // OPEN MODAL\r\n openModal(state) {\r\n state.isOpenModal = true;\r\n },\r\n\r\n // CLOSE MODAL\r\n closeModal(state) {\r\n state.isOpenModal = false;\r\n state.selectedEventId = null;\r\n state.selectedRange = null;\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// Actions\r\nexport const { openModal, closeModal, selectEvent } = slice.actions;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function getEvents() {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.get('/api/calendar/events');\r\n dispatch(slice.actions.getEventsSuccess(response.data.events));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function createEvent(newEvent: Omit) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post('/api/calendar/events/new', newEvent);\r\n dispatch(slice.actions.createEventSuccess(response.data.event));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function updateEvent(\r\n eventId: string,\r\n updateEvent: Partial<{\r\n allDay: boolean;\r\n start: Date | null;\r\n end: Date | null;\r\n }>\r\n) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n const response = await axios.post('/api/calendar/events/update', {\r\n eventId,\r\n updateEvent\r\n });\r\n dispatch(slice.actions.updateEventSuccess(response.data.event));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function deleteEvent(eventId: string) {\r\n return async () => {\r\n dispatch(slice.actions.startLoading());\r\n try {\r\n await axios.post('/api/calendar/events/delete', { eventId });\r\n dispatch(slice.actions.deleteEventSuccess({ eventId }));\r\n } catch (error) {\r\n dispatch(slice.actions.hasError(error));\r\n }\r\n };\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport function selectRange(start: Date, end: Date) {\r\n return async () => {\r\n dispatch(\r\n slice.actions.selectRange({\r\n start: start.getTime(),\r\n end: end.getTime()\r\n })\r\n );\r\n };\r\n}\r\n","import { store } from '../store';\r\nimport { createSlice } from '@reduxjs/toolkit';\r\nimport { DashboardJobState, JobsResponse, ResultResponse } from '../../@types/job';\r\nimport axios from '../../utils/axios';\r\nimport { DirectionType } from 'components/_dashboard/job/JobFilter';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst initialState: DashboardJobState = {\r\n isLoading: false,\r\n jobs: []\r\n};\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst slice = createSlice({\r\n name: 'dashboardJob',\r\n initialState,\r\n reducers: {\r\n // START LOADING\r\n startLoading(state) {\r\n state.isLoading = true;\r\n },\r\n\r\n getJobsSuccess(state, action) {\r\n state.isLoading = false;\r\n state.jobs = action.payload.datas;\r\n },\r\n\r\n // HAS ERROR\r\n hasError(state) {\r\n state.isLoading = false;\r\n state.jobs = [];\r\n }\r\n }\r\n});\r\n\r\n// Reducer\r\nexport default slice.reducer;\r\n\r\n// ----------------------------------------------------------------------\r\n\r\n/**\r\n * Liste des annonces\r\n * @param index\r\n * @param step\r\n * @returns\r\n */\r\nexport function getDashboardJobs() {\r\n return async () => {\r\n const { dispatch } = store;\r\n\r\n try {\r\n dispatch(slice.actions.startLoading());\r\n\r\n const response = await axios.post('/api/job/list', {\r\n direction: DirectionType[DirectionType.DSC].toString(),\r\n pageIndex: 1,\r\n pageSize: 9,\r\n sort: 'CreateDate',\r\n term: '',\r\n jobTypeId: 0 //tous\r\n });\r\n\r\n const { result, data, totalCount, totalPages } = response.data;\r\n\r\n switch (result) {\r\n case ResultResponse.Success:\r\n dispatch(\r\n slice.actions.getJobsSuccess({\r\n datas: data\r\n })\r\n );\r\n break;\r\n default:\r\n dispatch(slice.actions.getJobsSuccess({ datas: [] }));\r\n break;\r\n }\r\n } catch (error) {\r\n dispatch(slice.actions.hasError());\r\n }\r\n };\r\n}\r\n","import { Box, BoxProps } from '@mui/material';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface SvgIconStyleProps extends BoxProps {\r\n src: string;\r\n}\r\n\r\nexport default function SvgIconStyle({ src, color = 'inherit', sx }: SvgIconStyleProps) {\r\n return (\r\n \r\n );\r\n}\r\n","import { ReactNode } from 'react';\r\n\r\nexport type FavoriteState = {\r\n isLoading: boolean;\r\n error: boolean;\r\n favorites: Array;\r\n notificationContent?: ReactNode;\r\n};\r\n\r\nexport interface FavoriteListResponse {\r\n list: Favorite[];\r\n result: FavoriteListResult;\r\n}\r\n\r\nexport enum FavoriteListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface FavoriteAddResponse {\r\n item: Favorite;\r\n result: FavoriteAddResult;\r\n}\r\n\r\nexport enum FavoriteAddResult {\r\n NotFound = 0,\r\n Success = 1,\r\n LabelIsRequired = 2\r\n}\r\n\r\nexport enum FavoriteActionResult {\r\n None = 0,\r\n Add = 1,\r\n Delete = 2\r\n}\r\n\r\nexport interface Favorite {\r\n id: number;\r\n label: string;\r\n type: FavoriteType;\r\n key: FavoriteKey;\r\n dateCreated: string;\r\n}\r\n\r\nexport enum FavoriteType {\r\n None = 0,\r\n News = 1,\r\n Courses = 2,\r\n Evaluation = 3,\r\n ToolsPedagogy = 4,\r\n VirtualClass = 5,\r\n Workshop = 6,\r\n Task = 7,\r\n Job = 8\r\n}\r\n\r\nexport interface FavoriteKey {\r\n id: number | null;\r\n courseId: string;\r\n homeworkId: number | null;\r\n mediaId: number | null;\r\n}\r\n","import { Link as RouterLink } from 'react-router-dom';\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport { Card, Stack, CardProps } from '@mui/material';\r\n\r\nimport { Box } from '@mui/system';\r\nimport { ReactNode } from 'react';\r\nimport useScreenConfig from 'hooks/useScreenConfig';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled(Card)(({ theme }) => ({\r\n textAlign: 'center',\r\n [theme.breakpoints.up('md')]: {\r\n height: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n }\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\ninterface IllustrationMessageProps extends CardProps {\r\n img?: string;\r\n children?: ReactNode;\r\n}\r\n\r\nexport default function IllustrationMessage({ img, children }: IllustrationMessageProps) {\r\n return (\r\n \r\n \r\n\r\n \r\n {children}\r\n \r\n \r\n );\r\n}\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nexport interface IllustrationInfoProps extends CardProps {\r\n img: string;\r\n\r\n maxHeightImg?: number;\r\n isColumn?: boolean;\r\n}\r\nexport function IllustrationInfo({\r\n img,\r\n children,\r\n isColumn = false,\r\n maxHeightImg = 240\r\n}: IllustrationInfoProps) {\r\n const { isMediumOrMobile } = useScreenConfig();\r\n\r\n return (\r\n \r\n {!isMediumOrMobile && (\r\n \r\n )}\r\n {children && (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { ModuleType } from '../@types/contract';\r\nimport useAuth from './useAuth';\r\n\r\nexport default function useModuleGuard() {\r\n const { getContractCurrent } = useAuth();\r\n\r\n const moduleLocked = (accessibleModules: Array | undefined) => {\r\n if (accessibleModules) {\r\n const modulesCurrent = getContractCurrent()?.moduleList;\r\n\r\n return (\r\n accessibleModules.length > 0 && !accessibleModules.some((am) => modulesCurrent.includes(am))\r\n );\r\n }\r\n return false;\r\n };\r\n\r\n return { moduleLocked };\r\n}\r\n","import React from 'react';\r\n\r\nimport { MeetingStatus } from '../../../@types/meeting';\r\nimport Label from 'components/Label';\r\n\r\nexport type MeetingStatusDisplayProps = {\r\n status?: MeetingStatus;\r\n};\r\n\r\nexport const MeetingStatusDisplay = ({ status }: MeetingStatusDisplayProps) => {\r\n switch (status) {\r\n case MeetingStatus.Absent:\r\n return (\r\n \r\n );\r\n case MeetingStatus.Present:\r\n return (\r\n \r\n );\r\n case MeetingStatus.Registered:\r\n return (\r\n \r\n );\r\n }\r\n return <>;\r\n};\r\n","import { Close } from '@mui/icons-material';\r\nimport { Divider, Drawer, IconButton, Stack, Tooltip, Typography } from '@mui/material';\r\nimport { Skill, StudyPlanItemHomework } from '../../../../@types/pedagogy';\r\nimport SkillCardList from './SkillCardList';\r\n\r\n//--------------------------------------------------\r\n\r\n//type\r\ntype SkillCardDrawerProps = {\r\n skills?: Skill[];\r\n homeworks?: Array;\r\n isOpen: boolean;\r\n onClose: VoidFunction;\r\n};\r\n\r\n//--------------------------------------------------\r\n\r\nexport default function SkillDrawer({ skills, homeworks, isOpen, onClose }: SkillCardDrawerProps) {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Compétences\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { ModuleExtends, ModuleType } from '../@types/contract';\r\nimport { ICONS } from 'hooks/useSidebarConfig';\r\nexport type HelpCategoryTutorial = { title: string; url: string };\r\n\r\nexport interface HelpCategory extends ModuleExtends {\r\n id: string;\r\n row: number;\r\n label: string;\r\n icon: JSX.Element | null;\r\n image: Array;\r\n tutorials: Array;\r\n}\r\n\r\nexport const helpCategories: Array = [\r\n {\r\n id: 'Article',\r\n row: 16,\r\n label: 'Actualités',\r\n icon: ICONS.article,\r\n image: ['actualites.svg'],\r\n tutorials: [\r\n {\r\n title: 'Comment consulter une actualité ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=bf77d81e82c5a67a30b022fd76271e25'\r\n },\r\n {\r\n title: 'Comment ajouter une actualité aux favoris ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=60f5405481c45b41434cd9361c44cfe2'\r\n }\r\n ],\r\n module: ModuleType.News\r\n },\r\n {\r\n id: 'Agenda',\r\n row: 18,\r\n label: 'Agenda',\r\n image: ['agenda.svg'],\r\n icon: ICONS.calendar,\r\n tutorials: [\r\n {\r\n title: 'Comment prendre rendez-vous avec un formateur ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=4559bab77f2f30ab84cde7078f710cf4'\r\n },\r\n {\r\n title: 'Comment modifier mon rendez-vous ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=4f9d75b6b5a098bda0c0aaa32fb571a2'\r\n },\r\n {\r\n title: 'Comment annuler mon rendez-vous ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=4a050a214a63f374538dd2f0e319ca9b'\r\n },\r\n {\r\n title: 'Comment afficher uniquement mes rendez-vous ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=bb618c9c9e78c1457363184ecea8fb49'\r\n },\r\n {\r\n title: 'Comment changer la vue de mon agenda (mois, semaine, jour, liste) ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=743904f435cfd8ab9130a94252d963df'\r\n }\r\n ],\r\n module: ModuleType.Agenda\r\n },\r\n {\r\n id: 'Atelier',\r\n row: 12,\r\n label: 'Ateliers',\r\n image: ['ateliers.svg'],\r\n icon: ICONS.workshop,\r\n tutorials: [\r\n {\r\n title: 'Comment m’inscrire à un atelier ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=8ac038c17ebd0af568aa5401962c19bb'\r\n },\r\n {\r\n title: 'Comment régler mon atelier ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=f59bd14c689658f73178dd3711e86bc7'\r\n },\r\n {\r\n title: 'Comment annuler ma participation à un atelier ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=2b92e1883dbfd70851ec724910f7fc67'\r\n }\r\n ],\r\n module: ModuleType.WorkshopView\r\n },\r\n {\r\n id: 'ClasseVirtuelle',\r\n row: 13,\r\n label: 'Classes virtuelles',\r\n image: ['classesVirtuelles.svg'],\r\n icon: ICONS.virtualClass,\r\n tutorials: [\r\n {\r\n title: 'Comment m’inscrire à une classe virtuelle ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=2ce714c9548d3acdf0d67a5f780a5284'\r\n },\r\n {\r\n title: 'Comment participer à une classe virtuelle ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=4a1c6821fa630a83666cf5ba8763b874'\r\n },\r\n {\r\n title: 'Comment annuler ma participation à une classe virtuelle ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=fa9e3957cc736b4b8d219866a9c014e6'\r\n }\r\n ],\r\n module: ModuleType.VirtualClassView\r\n },\r\n {\r\n id: 'Contact',\r\n row: 21,\r\n label: 'Contact',\r\n image: [],\r\n icon: ICONS.contact,\r\n tutorials: [\r\n {\r\n title: 'Comment prendre rendez-vous ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=5e9172c883d8fe50feca4427c6cb74af'\r\n },\r\n {\r\n title: 'Comment contacter un service en particulier ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=ddc74d1578fcd6588e209de2301ea66e'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'Evaluation',\r\n row: 7,\r\n label: 'Évaluations',\r\n image: ['evaluations_enonce_1.svg', 'evaluations_enonce_1.svg'],\r\n icon: ICONS.homeworks,\r\n tutorials: [\r\n {\r\n title: 'Comment joindre des fichiers à mon évaluation ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=af0671d4288bc4be3d2d0f2fae537d0a'\r\n },\r\n {\r\n title: 'Comment consulter les fichiers liés ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=92d985e885b4108ac3f7b936848a05dc'\r\n },\r\n {\r\n title: 'Comment rédiger mon évaluation ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=4474efae6fdcaf56d0a151cab2a8c104'\r\n },\r\n {\r\n title: 'Comment envoyer mon évaluation ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=430544d0e1702951abb83eeaaf74b8a6'\r\n },\r\n {\r\n title: 'Comment revenir aux chapitres lorsque je suis en mode plein écran ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=c1603ac514b7e4d94eeb3ccebf9a1502'\r\n },\r\n {\r\n title: 'Comment changer de support pédagogique ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=552b1927c3cfb8c1109006c5a46e4485'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'Evalutions',\r\n row: 8,\r\n label: 'Évaluations (Rubrique)',\r\n image: ['evaluations_rubrique.svg'],\r\n icon: ICONS.homeworks,\r\n tutorials: [\r\n {\r\n title: 'Comment modifier l’affichage de mes évaluations ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=d41384b294f2c90269053a1b2c8ec74f'\r\n },\r\n {\r\n title: 'Comment programmer une évaluation dans mon agenda ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=87bd7942cb0d85e04cb1ea17dbff4730'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'Formation',\r\n row: 5,\r\n label: 'Formation',\r\n image: ['formation.svg'],\r\n icon: ICONS.training,\r\n tutorials: [\r\n {\r\n title: 'Comment changer l’affichage de mes chapitres ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=8db93fa0edb6fc250bdb560001adbf11'\r\n },\r\n {\r\n title: 'Comment prendre rendez-vous ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=03cf63926bc1105184b244172cae49cc'\r\n },\r\n {\r\n title: 'Comment faire évoluer le pourcentage de mon avancée dans le chapitre ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=1f66314eec7c03d58f96f623f1da664c'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'Historique',\r\n row: 15,\r\n label: 'Historique',\r\n image: ['historique_rendez-vous.svg', 'historique_supports_pedagogiques.svg'],\r\n icon: ICONS.suivi,\r\n tutorials: [\r\n {\r\n title: 'Comment consulter l’historique de mes rendez-vous ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=aacddc9721d3c576d736dca8429d3077'\r\n },\r\n {\r\n title: 'Comment consulter rapidement mes prochains rendez-vous ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=5530cd2f66258bdfa739c56cf9190879'\r\n },\r\n {\r\n title: 'Comment consulter l’historique de mes supports pédagogiques ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=eaf3e341e0fe1214dd0a254fd620c69a'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'Stages',\r\n row: 16,\r\n label: 'Mes stages',\r\n image: ['mes_stages.svg'],\r\n icon: ICONS.suivi,\r\n tutorials: [\r\n {\r\n title: 'Comment faire la demande pour obtenir la convention de stage ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=95116121f908e59965eea5f017ee6611'\r\n },\r\n {\r\n title: 'Comment modifier une demande de convention de stage ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=c802f771dfe9c5b6a42fdc2e852dca9f'\r\n },\r\n {\r\n title: 'Comment demander un avenant à une convention déjà éditée ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=abd01a56abcd4859736588fa038ff4fc'\r\n }\r\n ],\r\n module: ModuleType.InternalShipView\r\n },\r\n {\r\n id: 'Messages',\r\n row: 20,\r\n label: 'Messagerie',\r\n image: ['messagerie.svg'],\r\n icon: ICONS.mail,\r\n tutorials: [\r\n {\r\n title: 'Comment poser une question au bon service ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=6aeaa00b3b24e106cfe634310b90d831'\r\n },\r\n {\r\n title: 'Comment visualiser une réponse ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=0faec55f884df625824742a11bc317f6'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'Jobs',\r\n row: 17,\r\n label: 'Offres : stages - emplois',\r\n image: ['offres_stages_emplois.svg'],\r\n icon: ICONS.job,\r\n tutorials: [\r\n {\r\n title: 'Comment ajouter une offre aux favoris ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=e543f6faa55ca27a009b39610091b52b'\r\n }\r\n ],\r\n module: ModuleType.JobView\r\n },\r\n {\r\n id: 'Job',\r\n row: 17,\r\n label: 'Détails de l’offre',\r\n image: ['details_offre.svg'],\r\n icon: null,\r\n tutorials: [],\r\n module: ModuleType.JobView\r\n },\r\n {\r\n id: 'Payment',\r\n row: 4,\r\n label: 'Paiements',\r\n image: [],\r\n icon: ICONS.payment,\r\n tutorials: [\r\n {\r\n title: 'Comment modifier mes coordonnées bancaires ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=2fd6ffbd6faf17441325785eb0436ed5'\r\n },\r\n {\r\n title: 'Comment effectuer un paiement par carte bancaire ou Paypal ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=48802f7a1e593e18026eddf5229156b9'\r\n },\r\n {\r\n title: 'Comment télécharger mon échéancier ou mon relevé de compte ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=0b50cdbb232beffb2d6dde3bc1fa8ab5'\r\n }\r\n ],\r\n module: ModuleType.PaymentView\r\n },\r\n {\r\n id: 'Profil',\r\n row: 2,\r\n label: 'Profil',\r\n image: [],\r\n icon: ICONS.profil,\r\n tutorials: [\r\n {\r\n title: 'Comment changer ma photo de profil ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=df8a85220cb823976a3e8bf5aa35b6df'\r\n },\r\n {\r\n title: 'Comment modifier mes informations personnelles ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=b2f0acbba1567c27e606351f0583571a'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'Disponibilite',\r\n row: 3,\r\n label: 'Disponibilités',\r\n image: [],\r\n icon: ICONS.profil,\r\n tutorials: [\r\n {\r\n title: 'Comment supprimer un créneau de disponibilité ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=b49bfc09c9f5c21b1cbf17a328f441f2'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'SupportsPedagogiques',\r\n row: 6,\r\n label: 'Supports pédagogiques',\r\n image: ['SupportsPedagogiques.svg'],\r\n icon: ICONS.training,\r\n tutorials: [\r\n {\r\n title: 'Comment poser une question en lien avec le support pédagogique consulté ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=44e208ee22e249de32409964381480d8'\r\n },\r\n {\r\n title: 'Comment prendre rendez-vous avec un formateur lié au support consulté ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=85110affe5649db794e95c7fda6f639d'\r\n },\r\n {\r\n title: 'Comment ajouter mon support pédagogique aux favoris ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=73783b93fe7ca94a0ba16238bce2eed1'\r\n },\r\n {\r\n title: 'Comment programmer un support pédagogique dans mon agenda ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=7dfa8649455371db75ee1743eba53fe3'\r\n },\r\n {\r\n title: 'Comment afficher en plein écran mon support pédagogique ? ',\r\n url: 'https://video.espace-eleves.com/play.php?id=623b663643eb0329e066a0b520568331'\r\n },\r\n {\r\n title: 'Comment accéder aux autres supports pédagogiques du chapitre ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=49e59f9c352ce6790f09ca7b99a3632b'\r\n },\r\n {\r\n title: 'Comment fermer la liste des supports pédagogiques ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=bb757473c844490d2d5869f077b42015'\r\n },\r\n {\r\n title: 'Comment obtenir les informations du support pédagogique consulté ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=1016ca12747e134bfa57fc486386639d'\r\n },\r\n {\r\n title: 'Comment télécharger le cours consulté au format .PDF ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=f4ad761f702745fc0ac0b79057e0f57e'\r\n },\r\n {\r\n title: 'Comment revenir aux chapitres lorsque je suis en mode plein écran ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=c1603ac514b7e4d94eeb3ccebf9a1502'\r\n },\r\n {\r\n title: 'Comment changer de support pédagogique ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=552b1927c3cfb8c1109006c5a46e4485'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'TableauDebord',\r\n row: 1,\r\n label: 'Tableau de bord',\r\n image: ['tableau_bord.svg'],\r\n icon: ICONS.dashboard,\r\n tutorials: [\r\n {\r\n title: 'Comment masquer les rubriques ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=89f4ebc24276871238d5f3c99e09e992'\r\n },\r\n {\r\n title: 'Comment changer la configuration de ma page ?',\r\n url: 'https://video.espace-eleves.com/play.php?id=22f458fe57de402b39478c2a9cc067dd'\r\n }\r\n ],\r\n module: ModuleType.Dashboard\r\n },\r\n {\r\n id: 'ReleveNotes',\r\n row: 14,\r\n label: 'Relevés de notes',\r\n image: ['releve_notes.svg'],\r\n icon: ICONS.suivi,\r\n tutorials: [],\r\n module: ModuleType.Dashboard\r\n }\r\n];\r\n","import { SummaryResponse, SummaryRequest, FileBaseInfo } from './common';\r\nimport { ModuleType } from './contract';\r\n\r\nexport interface ServiceListResponse {\r\n result: ServiceListResult;\r\n list: Service[];\r\n}\r\n\r\nexport enum ServiceListResult {\r\n Success = 1,\r\n NotFound = 2\r\n}\r\n\r\nexport interface Service {\r\n key: string;\r\n label: string;\r\n description: string;\r\n observation: string;\r\n email: string;\r\n locked: boolean;\r\n subjects: SubjectModel[];\r\n modules: ModuleType[];\r\n}\r\n\r\nexport interface SubjectModel {\r\n key: string;\r\n keyService: string;\r\n label: string;\r\n affectable: string;\r\n observation: string;\r\n}\r\n\r\nexport type MessageState = {\r\n isLoading: boolean;\r\n error: any;\r\n messages: Array;\r\n question: Array | null;\r\n services: Array | null;\r\n};\r\n\r\nexport type MessageListRequest = {\r\n type: MessageType;\r\n};\r\n\r\nexport interface MessageListResponse extends SummaryResponse {\r\n list: Message[];\r\n result: MessageListResult;\r\n}\r\n\r\nexport type MessageLabelId = 'all' | 'unread' | 'question' | 'school';\r\n\r\nexport type MessageLabel = {\r\n id: MessageLabelId;\r\n type: string;\r\n name: string;\r\n unreadCount: number;\r\n color?: string;\r\n};\r\n\r\nexport interface MessageBase {\r\n id: number;\r\n title: string;\r\n publicationDate: string;\r\n type: MessageType;\r\n reference: string;\r\n category: string;\r\n categoryUrl: string;\r\n coverUrl: string;\r\n read: boolean;\r\n}\r\n\r\nexport interface Message extends MessageBase {\r\n idType: number;\r\n\r\n isFile: boolean;\r\n description: string;\r\n}\r\n\r\nexport interface MessageDetail extends MessageBase {\r\n description: string;\r\n files: FileBaseInfo[];\r\n from: string;\r\n fromDetails: MessageFromDetail;\r\n}\r\n\r\nexport type MessageFromDetail = {\r\n ser: string;\r\n suj: string;\r\n pro: string;\r\n coach: boolean;\r\n};\r\n\r\nexport interface MessageQuestion extends MessageDetail {\r\n observation: string;\r\n}\r\n\r\nexport interface MessageId {\r\n id: number;\r\n idType: number;\r\n type: number;\r\n}\r\n\r\nexport interface MessageItemResponse {\r\n items: MessageDetail[];\r\n result: MessageItemResult;\r\n}\r\n\r\nexport enum MessageItemResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport enum MessageType {\r\n All = 0,\r\n News = 1,\r\n Question = 2,\r\n Answer = 4,\r\n Message = 3,\r\n Mails = 5,\r\n CoachTeacher = 6\r\n}\r\n\r\nexport enum MessageListResult {\r\n NotFound = 0,\r\n Success = 1\r\n}\r\n\r\nexport interface Question {\r\n serviceId: string;\r\n subjectId: string;\r\n themeId?: string;\r\n title: string;\r\n reference: string;\r\n description: string;\r\n pro: string;\r\n files: Array;\r\n}\r\n\r\nexport interface MessageAddResponse {\r\n question: Question;\r\n result: MessageAddResult;\r\n}\r\n\r\nexport enum MessageAddResult {\r\n NotFound = 0,\r\n Success = 1,\r\n ServiceIsRequired = 2,\r\n SubjectIsRequed = 3,\r\n TitleIsRequired = 4,\r\n ObservationIsRequired = 5,\r\n files = 6\r\n}\r\n","// material\r\nimport {\r\n Box,\r\n Divider,\r\n Typography,\r\n ListItemText,\r\n ListItemButton,\r\n ListItem,\r\n IconButton\r\n} from '@mui/material';\r\nimport { AccessTime, Close } from '@mui/icons-material';\r\n// utils\r\nimport { fDate, fDateTime, fToNow } from '../../../utils/formatTime';\r\n\r\n//Type\r\nimport { FavoriteState, Favorite, FavoriteType, FavoriteKey } from '../../../@types/favorite';\r\n\r\n// components\r\nimport TagType from 'components/TagType';\r\n\r\n// ----------------------------------------------------------------------\r\nexport type FavoriteListItemProps = {\r\n favorite: Favorite;\r\n onSelect: (key: FavoriteKey, type: FavoriteType) => void;\r\n onRemove: (id: number) => void;\r\n};\r\n\r\n/**\r\n * Favori en detail\r\n * @param param0\r\n * @returns\r\n */\r\nexport default function FavoriteListItem({ favorite, onSelect, onRemove }: FavoriteListItemProps) {\r\n return (\r\n <>\r\n onRemove(favorite.id)}>\r\n \r\n \r\n }\r\n disablePadding\r\n >\r\n onSelect(favorite.key, favorite.type)}\r\n sx={{\r\n py: 1.5,\r\n px: 2.5,\r\n mt: '1px'\r\n }}\r\n >\r\n {favorite.label}}\r\n secondary={\r\n \r\n \r\n Ajouté le {fDate(favorite.dateCreated)}\r\n \r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","// material\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, BoxProps } from '@mui/material';\r\nimport useAuth from 'hooks/useAuth';\r\nimport { Contract } from '../@types/contract';\r\nimport { useCallback } from 'react';\r\nimport { useNavigate } from 'react-router';\r\nimport { PATH_DASHBOARD } from 'routes/paths';\r\nimport { Link } from 'react-router-dom';\r\n\r\n// ----------------------------------------------------------------------\r\nexport interface LogoProps extends BoxProps {\r\n isSmall?: boolean;\r\n}\r\n\r\nexport default function Logo({ sx, isSmall = false }: LogoProps) {\r\n const { getContractCurrent } = useAuth();\r\n\r\n const url = isSmall ? `` : `logo_`;\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Service } from '../@types/message';\r\nimport { useEffect, useState } from 'react';\r\nimport { RootState, useSelector } from 'redux/store';\r\nimport useAuth from './useAuth';\r\nimport useBrand from './useBrand';\r\n\r\nexport default function useServices() {\r\n const [servicesFiltered, setServicesFiltered] = useState>([]); //par defaut\r\n const { services } = useSelector((state: RootState) => state.message);\r\n const { getContractCurrent } = useAuth();\r\n const { brand } = useBrand();\r\n\r\n useEffect(() => {\r\n setServicesFiltered(getServicesFiltered() || []);\r\n }, [services]);\r\n\r\n const getServicesFiltered = () => {\r\n const modules = getContractCurrent().moduleList;\r\n\r\n return services\r\n ?.slice()\r\n .filter((s) => !s.modules || s.modules.some((am) => modules.includes(am)))\r\n .sort((a, b) => (b.label > a.label ? -1 : 1));\r\n };\r\n\r\n return {\r\n servicesFiltered\r\n };\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport { formatDistanceToNowStrict } from 'date-fns';\r\n// material\r\nimport { styled } from '@mui/material/styles';\r\nimport {\r\n Box,\r\n Avatar,\r\n ListItemButton,\r\n ListItemText,\r\n ListItemAvatar,\r\n Typography,\r\n Skeleton,\r\n Card\r\n} from '@mui/material';\r\n\r\n// utils\r\nimport { fDate } from '../../../utils/formatTime';\r\n\r\n//type\r\nimport { Message, MessageDetail, MessageType } from '../../../@types/message';\r\n\r\nimport Scrollbar from 'components/Scrollbar';\r\nimport IllustrationMessage from 'components/IllustrationMessage';\r\nimport Markdown from 'components/Markdown';\r\nimport FileDetailsAttachments from 'components/file/FileDetailsAttachments';\r\nimport EmptyContentLarge from 'components/EmptyContentLarge';\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst RootStyle = styled('div')(({ theme }) => ({\r\n display: 'flex',\r\n marginBottom: theme.spacing(3)\r\n}));\r\n\r\nconst ContentStyle = styled('div')(({ theme }) => ({\r\n maxWidth: 420,\r\n padding: theme.spacing(1.5),\r\n marginTop: theme.spacing(0.5),\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: theme.palette.background.neutral\r\n}));\r\n\r\nconst InfoStyle = styled(Typography)(({ theme }) => ({\r\n display: 'flex',\r\n marginBottom: theme.spacing(0.75),\r\n color: theme.palette.text.secondary\r\n}));\r\n\r\nconst NoResponseStyle = styled(Card)(({ theme }) => ({\r\n boxShadow: theme.customShadows.z16,\r\n maxWidth: '630px'\r\n}));\r\n\r\n// ----------------------------------------------------------------------\r\n\r\nconst SkeletonLoad = (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport type MessageQuestionCardDetailProps = {\r\n questionAnswer: Array;\r\n};\r\n\r\nexport default function MessageQuestionCardDetail({\r\n questionAnswer = []\r\n}: MessageQuestionCardDetailProps) {\r\n const question = questionAnswer[0];\r\n const answer = questionAnswer.length > 1 ? questionAnswer[1] : null;\r\n\r\n return (\r\n \r\n {question == null ? (\r\n SkeletonLoad\r\n ) : (\r\n <>\r\n \r\n {answer ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport type MessageContentItemProps = {\r\n message: MessageDetail;\r\n type: MessageType;\r\n};\r\n\r\nexport function MessageContentItem({ message, type }: MessageContentItemProps) {\r\n let avatarImg: string = 'COA'; //par defaut caoching\r\n\r\n // prof\r\n if (message.fromDetails.pro !== '' && !message?.fromDetails?.coach)\r\n avatarImg = message?.from.includes('M.') ? 'correcteur' : 'correctrice';\r\n\r\n // service\r\n if (message.fromDetails.pro === '') avatarImg = message.fromDetails.ser;\r\n\r\n return (\r\n \r\n \r\n {type === MessageType.Answer && (\r\n <>\r\n \r\n \r\n )}\r\n\r\n
    \r\n \r\n {message?.fromDetails?.pro !== '' && (\r\n \r\n {message?.from}\r\n \r\n )}\r\n \r\n {fDate(message?.publicationDate, \"eeee dd MMMM 'à' HH:mm \")}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n );\r\n}\r\n","import { useState } from 'react';\r\n\r\nimport { Drawer, Stack, Tooltip, Typography, Divider, Badge, IconButton } from '@mui/material';\r\nimport { Close, DateRangeRounded } from '@mui/icons-material';\r\n\r\n//redux\r\nimport { useSelector } from 'react-redux';\r\nimport { RootState } from 'redux/store';\r\n\r\n//utils\r\nimport { extractDataType } from 'utils/helperStudyPlan';\r\n\r\n//type\r\nimport { StudyPlanItem } from '../../../../@types/pedagogy';\r\nimport { AgendaEvent, AgendaEventType } from '../../../../@types/agenda';\r\nimport { TaskModel, TaskStatus } from '../../../../@types/task';\r\n\r\n// composant\r\nimport MIconButton from 'components/MIconButton';\r\nimport AgendaTaskDetail from 'components/_dashboard/agenda/AgendaTaskDetail';\r\nimport { formatAPI } from 'utils/formatTime';\r\n\r\n//------------------------------------------------------------------------\r\ntype StudyPlanDetailsEventPopoverProps = {\r\n studyPlanItem: StudyPlanItem;\r\n};\r\n\r\n/**\r\n * Prgrammation support pédagogique\r\n * Affichage dans l'agenda des taches\r\n * @returns\r\n */\r\nexport default function StudyPlanDetailsEventPopover({\r\n studyPlanItem\r\n}: StudyPlanDetailsEventPopoverProps) {\r\n const { events } = useSelector((state: RootState) => state.agenda);\r\n const keyOfCourse = extractDataType(studyPlanItem);\r\n\r\n //Plannification\r\n\r\n return (\r\n \r\n t.eventType === AgendaEventType.Task &&\r\n t.metadatas.courseId === keyOfCourse.courseId &&\r\n t.metadatas.homeworkId === keyOfCourse.id &&\r\n t.metadatas.mediaId === keyOfCourse.mediaId\r\n )[0]\r\n }}\r\n />\r\n );\r\n}\r\n\r\nexport interface StudyPlanItemEventPopoverProps {\r\n studyPlanItem: StudyPlanItem;\r\n}\r\n\r\n/**\r\n * Programmation support pédagogique\r\n * Affichage dans l'agenda des taches\r\n * @returns\r\n */\r\nexport function StudyPlanItemEventPopover({ studyPlanItem }: StudyPlanItemEventPopoverProps) {\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleOpen = (event: any) => {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const keyOfCourse = extractDataType(studyPlanItem);\r\n\r\n const taskOfCourse = studyPlanItem.schedule\r\n ? studyPlanItem.schedule.metadatas\r\n : ({\r\n id: 0,\r\n barCode: keyOfCourse.barCode,\r\n courseId: keyOfCourse.courseId,\r\n homeworkId: keyOfCourse.id,\r\n mediaId: keyOfCourse.mediaId,\r\n dateStart: `${formatAPI(new Date())}T09:00:00`,\r\n dateEnd: `${formatAPI(new Date())}T11:00:00`,\r\n isLocked: false,\r\n label: studyPlanItem.label,\r\n status: TaskStatus.Todo\r\n } as TaskModel);\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Programmer dans l'agenda\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n );\r\n}\r\n","import { FavoriteType } from '../../../../@types/favorite';\r\nimport {\r\n StudyPlanItem,\r\n StudyPlanItemType,\r\n StudyPlanItemHomework,\r\n StudyPlanItemMedia\r\n} from '../../../../@types/pedagogy';\r\n\r\nimport FavoriteToggleAction from 'components/_dashboard/favorite/FavoriteAction';\r\n\r\nexport type StudyPlanItemFavoriteActionProps = {\r\n item: StudyPlanItem;\r\n};\r\n\r\nexport function StudyPlanItemFavoriteAction({ item }: StudyPlanItemFavoriteActionProps) {\r\n const homeworkBase =\r\n item.type === StudyPlanItemType.Homework ? (item as StudyPlanItemHomework).homeworkBase : null;\r\n\r\n const isMedia = [\r\n StudyPlanItemType.Pdf,\r\n StudyPlanItemType.Html,\r\n StudyPlanItemType.Audio,\r\n StudyPlanItemType.Url,\r\n StudyPlanItemType.Video\r\n ].includes(item.type!);\r\n\r\n return (\r\n \r\n );\r\n}\r\n"],"sourceRoot":""}