{"version":3,"sources":["components/_dashboard/examen/ExamenFormEpreuveItem.tsx","@types/examen.ts","utils/helper.ts","components/Markdown.tsx","components/MenuPopover.tsx","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","hooks/useScreenConfig.ts","utils/helperExamen.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","components/_dashboard/survey/SurveyCardInformation.tsx","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","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","hooks/useHubConnection.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","@types/message.ts"],"names":["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","code","listeCategoryObjectif","includes","categorie","listeProgression","formePassage","isWriteNote","epr","saisiNote","isViewNote","affichageNote","_jsx","_Fragment","children","ViewResultat","statusList","etatInscription","etaIns","ViewInscription","_ref","isWriteNoteOverride","_jsxs","Box","sx","mt","Typography","variant","gutterBottom","concat","codeReferentiel","designation","Stack","gap","flexDirection","alignItems","justifyItems","Selector","fullWidth","label","size","options","map","query","onFilter","disabled","TextFieldNote","_ref2","_ref3","yearMax","Date","getFullYear","yearMin","direction","TextField","type","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","ExamenListResult","ExamenSaveResult","defaultExamen","_createClass","arguments","length","undefined","session","defaultSession","epreuves","region","defaultMetadata","statutInscription","statutResultat","dispensee","avis","domaineTravaille","defaultDomaine","departement","defaultDepartement","academie","positionnement","defaultPositionnement","observation","periode","defaultPeriode","gestionInscriptionInterne","_classCallCheck","dateEpreuvesAdmissibilite","dateEpreuvesAdmission","dateDebutInscription","dateFinInscription","dateEpreuvesPreAdmissibilite","dateEpreuvesSportives","filtreDepartemental","fichiers","filesMandatory","isSended","pourcentageDevoirsRealises","nombreJoursStage","noteDossierProMin","centreExamen","nombrePlacesMin","nombrePlacesMax","nombreInscrits","dateDebut","dateFin","academieCode","regionCode","favorable","enCours","actif","adresseEntreprise","TypeCategoryObjectif","TypePeriodeInscription","ExamenUpdateDateEnvResult","Mois","Trimestre","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","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","useScreenConfig","useTheme","isMobile","useMediaQuery","down","isMediumOrMobile","isDesktop","isLargeScreen","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","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","description","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","n","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","f","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","console","log","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","next","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","_regeneratorRuntime","t","prototype","hasOwnProperty","o","defineProperty","Symbol","iterator","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","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","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","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","_asyncToGenerator","_callee","response","_context","fileNameS3","referentiel","MediaReferentiel","apply","_callee2","_context2","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","_useHubConnection","useHubConnection","onError","getUrlSigned","disConnect","_x4","_x5","urlApi","axiosInstance","get","headers","writeOnly","sendFile","_x6","_x7","_callee3","_context3","axios","put","t0","uploadDataToS3","_x","_x2","_x3","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","_callee4","_context4","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","useContext","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","process","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","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","getTime","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","idConnection","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","onAttendanceTracking","relance","attendanceTracking","setAttendanceTracking","dayOfWeek","getHours","getMinutes","dateOff","setTime","TypeLog","AttendanceTrackingLoaded","onHere","AttendanceTrackingValidated","useAttendanceTracking","hour","HubMessageState","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","page","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","interceptors","Survey","tracker","_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","_x8","_x9","_x10","_x11","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","SurveyCardInformation","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","TableContainer","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","_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","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","HubContext","_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","_methodeHttp","proxy","methodeHttp","localTime","onTrackerPage","Tracker","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.260f2a0a.chunk.js","sourcesContent":["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 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 { 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 { 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 { 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 { 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 { 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\nimport useHubConnection from './useHubConnection';\r\n\r\nexport type Fichier = {\r\n url: string;\r\n id: string;\r\n};\r\n\r\nconst useMediatheque = () => {\r\n const { onError, disConnect } = useHubConnection();\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: any) {\r\n console.error('Error uploading object:', error);\r\n onError('Erreur upload fichier', error.message);\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\nimport useHubConnection from './useHubConnection';\r\n\r\nconst useHomeworkFile = () => {\r\n const { uploadDataToS3, getUrlSigned, sendFile } = useMediatheque();\r\n const { getContractCurrent } = useAuth();\r\n const { onError, disConnect } = useHubConnection();\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: any) {\r\n console.log(ex);\r\n console.log(ex.message);\r\n onError('Erreur upload fichier', ex.message);\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","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","// ----------------------------------------------------------------------\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 TableContainer,\r\n Paper\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 \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 ) : (\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 \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 { 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\nimport { ConstructionOutlined } from '@mui/icons-material';\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\r\n state.categoryList.map((c) => {\r\n if (c.nextSteps !== null && c.nextSteps.length > 0) {\r\n is = true;\r\n }\r\n });\r\n\r\n return is;\r\n }, [request, state.categoryList]);\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 {\r\n Card,\r\n Typography,\r\n Button,\r\n Avatar,\r\n CardActions,\r\n Alert,\r\n TableCell,\r\n Snackbar\r\n} 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 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 \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 isStepper: boolean;\r\n}\r\nexport const ContainerInput = ({\r\n survey,\r\n isRegroupement,\r\n index,\r\n children,\r\n isStepper\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, Snackbar } 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\nimport SurveyCardInformation from './SurveyCardInformation';\r\nimport { Alert } from '@mui/material';\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 [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 isErrorSurvey,\r\n isErrorSurveyItem,\r\n\r\n title,\r\n fill,\r\n modeLecture\r\n } = useSurvey({ request: response, onMove: () => {} });\r\n const { enqueueSnackbar } = useSnackbar();\r\n const [isValidItem, setIsValidItem] = useState(false);\r\n\r\n const handleStart = () => {\r\n setStart(true);\r\n };\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 setSaved(true);\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\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 return (\r\n
    \r\n \r\n\r\n {categoryList?.map((c: SurveyCategory, i: number) => (\r\n \r\n {(survey, isRegroupement, i) => {\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 { 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","// 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","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"],"sourceRoot":""}