{"version":3,"sources":["Apollo.js","components/common/FloatingAlert.jsx","components/common/Loading.jsx","Context.jsx","Auth/gates.js","components/rel/home/Create.jsx","components/common/useLayout.js","components/common/TopBar.js","components/AdminPanel.jsx","components/common/utils.js","components/Answers.jsx","components/common/CreateComment.jsx","components/common/Comment.jsx","components/common/Drafter2.jsx","components/Quiz.jsx","components/Question.jsx","components/AssignmentSubmission.jsx","components/Assignment.jsx","components/Calendar.jsx","components/common/ConfirmationDialog.jsx","helpers/sparseUpdate.js","components/common/NotFound.jsx","helpers/capitalizeFirstLetter.js","forms/components/context.jsx","forms/components/FormField.jsx","forms/components/FormSection.jsx","forms/components/FormLayout.jsx","forms/components/FormListPagination.jsx","forms/components/FormList.jsx","forms/components/FormListActions.jsx","forms/components/FormPageLayout.jsx","forms/components/fields/TextField.jsx","forms/components/fields/SearchMember.jsx","forms/components/fields/TableField.jsx","forms/Form.jsx","helpers/camelCase.js","forms/components/fields/UserField.jsx","forms/components/fields/CheckBoxField.jsx","forms/BusinessPlan.jsx","forms/ComplaintAboutSuperior.jsx","forms/EmployeeAbsence.jsx","forms/EventPlan.jsx","forms/MeetingSchedule.jsx","forms/components/fields/TextListField.jsx","helpers/lineSparatedValues.js","forms/ProjectSheet.jsx","forms/Suggestion.jsx","forms/TrainingProgram.jsx","forms/TripFinancialEstimation.jsx","forms/TripOrMeetingReport.jsx","forms/WarningLetter.jsx","forms/components/fields/SelectField.jsx","forms/index.js","components/Files.jsx","components/rel/Landing/ActivityCard.js","components/rel/Landing/assets/img/ONTWNC1-11.png","components/rel/Landing/assets/img/image-slider.png","components/FrontEvent.jsx","components/rel/Landing/assets/img/bg1.png","components/rel/Landing/assets/img/default.png","components/FrontEvents.jsx","components/common/Due.jsx","components/common/ClassCard.js","components/common/TopSection.jsx","components/Home.jsx","components/rel/Landing/assets/img/user.default.jpg","components/rel/Landing/MemberCard.js","components/rel/Landing/ListMembers.js","components/rel/Landing/assets/img/center.default.jpg","components/Landing.jsx","components/QuizEditor.jsx","components/rel/class/components/TopicRow.jsx","components/rel/class/components/TopicSection.jsx","components/Review.jsx","components/UserPages/utils/cropImage.js","components/UserPages/utils/dataURLtoFile.js","components/UserPages/ImageCrop.jsx","components/UserPages/EditProfile.jsx","components/evaluations/EvaluationResult.jsx","components/evaluations/EvaluationStatistics.jsx","components/evaluations/TextField.jsx","components/evaluations/context/assignment.jsx","components/evaluations/subjects/student.jsx","components/evaluations/subjects/EvaluationSubject.js","components/evaluations/subjects/coach.jsx","components/evaluations/subjects/training.jsx","components/evaluations/useEvaluationSubject.js","components/evaluations/context/studentWork.jsx","components/evaluations/questionFormats.js","components/evaluations/context/studentWorks.jsx","components/evaluations/aggregate.js","components/evaluations/EvaluationList.jsx","components/evaluations/Evaluation.jsx","components/rel/AdminPanel/Banned.jsx","components/rel/AdminPanel/LandingComponents/Value.jsx","components/rel/AdminPanel/LandingComponents/Values.jsx","components/rel/AdminPanel/LandingComponents/PhoneNumber.jsx","components/rel/AdminPanel/LandingComponents/PhoneNumbers.jsx","components/rel/AdminPanel/EditLanding.jsx","components/rel/AdminPanel/EditEvent.jsx","components/rel/AdminPanel/Events.jsx","components/common/SearchMembers.jsx","components/common/EditableChoice.jsx","components/rel/AdminPanel/Staff.jsx","components/rel/AdminPanel/Teachers.jsx","components/rel/AdminPanel/Waiting.jsx","components/rel/RequestMembership/MembershipForm.jsx","components/rel/class/components/QuizSelector.jsx","components/rel/class/components/QuizCard.jsx","components/rel/class/components/Create.jsx","components/rel/class/Classwork.jsx","components/rel/class/Marks.jsx","components/common/Search.jsx","components/rel/class/People.jsx","components/rel/class/components/Announcement.jsx","components/common/Editor.jsx","components/rel/class/Stream.jsx","Router.jsx","RTL.jsx","App.js","index.js"],"names":["Apollo","_ref","children","errorLink","onError","_ref2","graphQLErrors","networkError","forEach","_ref3","message","locations","path","console","log","concat","cookies","Cookies","authLink","setContext","_","_ref4","headers","jwt","get","token","_objectSpread","authorization","httpLink","createUploadLink","uri","process","client","ApolloClient","link","ApolloLink","from","cache","InMemoryCache","addTypename","defaultOptions","watchQuery","fetchPolicy","errorPolicy","query","_jsx","ApolloProvider","FloatingAlertContext","createContext","FloatingAlert","props","open","onClose","_props$severity","severity","_props$autoHideDurati","autoHideDuration","_props$alertProps","alertProps","_props$snackbarProps","snackbarProps","Snackbar","anchorOrigin","vertical","horizontal","Alert","FloatingAlertProvider","_useFloatingAlert","_useReducer","useReducer","current","action","next","Object","entries","_slicedToArray","key","value","dispatch","_useReducer2","floatingAlertProps","floatingAlert","_objectWithoutProperties","_excluded","useFloatingAlert","_jsxs","_Fragment","Provider","useStyles","makeStyles","theme","container","height","width","background","top","left","right","bottom","position","zIndex","flexGrow","overflow","Loading","classes","Box","className","display","justifyContent","alignItems","flexDirection","style","CircularProgress","Navigation","LoadingState","Class","ClassAnchor","GetName","Auth","ClassWrapper","slug","useParams","classSlug","sub","window","location","host","split","QUERY_MEMBERSHIP","gql","_templateObject","_taggedTemplateLiteral","queryInfo","_templateObject2","GET_NAME","_templateObject3","Context","_useState","useState","_useState2","user","setUser","_useState3","_useState4","membership","setMembership","state","loadingState","reverseLoadingState","_useState5","_useState6","skip","setSkip","_useLazyQuery","useLazyQuery","onCompleted","data","_data$memberships","memberships","err","_useLazyQuery2","getUserMembership","_useLazyQuery2$","membershipLoading","loading","error","useEffect","_triggerEffect","_asyncToGenerator","_regeneratorRuntime","mark","_callee","userInfo","wrap","_context","prev","abrupt","t0","fetch","Authorization","then","res","json","catch","sent","variables","userId","id","centerSlug","stop","apply","arguments","triggerEffect","_useReducer3","s","_useReducer4","isLoading","reverseLoading","_useQuery","useQuery","onSuccess","subdomain","loadingQueryInfo","dataQueryInfo","_useQuery2","loadingName","centerName","_useReducer5","_useReducer6","createState","reverseCreateState","_useState7","name","section","subject","room","_useState8","classContent","setClassContent","_useState9","_useState10","classAnchor","setClassAnchor","_useState11","_useState12","tabState","setTabState","_dataQueryInfo$center","_membership$center","_membership$center$in","_membership$center2","_membership$center3","_dataQueryInfo$center2","_membership$center4","_membership$center4$c","_membership$center5","_membership$center5$c","centerId","centersLists","info","center","students","document","title","isCenterOwner","owner","isCenterAdmin","includes","role","membershipRole","membershipStatus","status","joinedClasses","filter","length","teachedClasses","teachers","handleTabsChange","newState","logout","callBack","remove","handleClassContent","accountsRedirect","target","undefined","nextURL","encodeURIComponent","pathname","origin","href","BaseGate","authorize","_ref$rejectBehaviour","rejectBehaviour","_ref$message","_ref$redirectTo","redirectTo","useHistory","React","Fragment","Redirect","to","RequireAuthentication","gateProps","useContext","confirmed","blocked","RequireCenterMembership","_ref3$status","_excluded2","_useContext2","RequireCenterAdmin","_ref4$only","only","_excluded3","_useContext3","allowedRoles","Array","isArray","RequireClassAccess","_ref5","_ref5$only","_ref5$slug","_excluded4","_useContext5","studentAccess","some","_ref6","teacherAccess","_ref7","RequireTeacherAccess","_ref8","_excluded5","_useContext6","Create","reverse","refetch","alert","failure","ADD_CLASS","setName","nameRef","useRef","setSection","sectionRef","setSubject","subjectRef","setSlug","slugRef","_useMutation","useMutation","l1","createsuccess","_useMutation2","createClass","Dialog","CreateClassContainer","DialogTitle","DialogContent","contentContainer","TextField","textField","fullWidth","label","required","inputRef","onChange","e","DialogActions","Button","color","variant","onClick","create","cancel","useLayout","desktop","useMediaQuery","mobile","root","iconHome","fontSize","spacing","marginLeft","menuButton","marginRight","palette","common","black","cursor","padding","appBar","toolbar","icon","grey","iconAdd","leftContainer","gap","marginBottom","list","DrawerIcon","listItem","borderTopRightRadius","borderBottomRightRadius","listItemClass","listItemText","fontWeight","classAvatar","margin","textDecoration","tabs","tabContainer","primary","main","borderTopLeftRadius","tabContainerCurrent","TopBar","type","tab","moreProps","_useParams","history","createClassState","reverseCreateClassState","drawerState","reverseDrawerState","_useContext","anchor","setAnchor","layout","types","flexWrap","Link","tabIndex","Typography","stream","indicator","classwork","people","marks","currentQuizMode","setQuizMode","edit","preview","autoFocus","thequestion","theAssignment","push","answers","material","editLanding","events","banned","waiting","staff","sticky","AppBar","IconButton","HiOutlineMenu","IoAddOutline","Avatar","avatar","event","currentTarget","src","Menu","Boolean","elevation","anchorEl","getContentAnchorEl","transformOrigin","MenuItem","menuItem","editProfile","Drawer","drawerRoot","paper","drawer","List","ListItem","button","ListItemIcon","RiAdminLine","administration","BiHome","BiCalendarAlt","calendar","BiFolder","files","Divider","BsCardText","toReview","map","isArchived","charAt","highOrder","headContainer","border","borderRadius","text","iconHead","nameText","nameName","paddingRight","nameTitle","idId","address","GET_STUDENTS","DELETE_STUDENT","BAN_STUDENT","_templateObject4","AdminPanel","notifyOnNetworkStatusChange","setUserInfoId","reverseSkipState","reverseState","deleteStudent","loadingDelete","_useMutation3","_useMutation4","BanStudent","loadingBan","getUserInfo","_data$centersList$mem","centersList","fullname","school","specialty","email","field","afterGraduate","homeTel","mobileTel","hobbies","birthDate","object","college","maxWidth","Paper","formTitle","InputProps","readOnly","fullName","InputLabelProps","specialities","tel","q1","rows","multiline","q2","q3","q4","Grid","item","xs","username","TableRow","anchorPost","setAnchorPost","confirmationState","reverseConfirmationState","_useReducer7","_useReducer8","confirmationBanState","reverseConfirmationBanState","nameContainer","BiDotsHorizontalRounded","ban","delete","confirmation","confirm","similarityScore","reference","source","keys","maxScore","reduce","JSON","stringify","staticUrl","REACT_APP_STRAPI_BACKEND_URL","answersHeader","borderBottom","sidebar","borderRight","noWorksFound","textAlign","mainContent","searchFilter","filterMenu","minWidth","studentWorkCard","studentWorkName","backgroundColor","studentWorkAvatar","studentWorkGradeContainer","studentWorkGrade","stats","marginTop","statsNumber","fontWeigh","statsText","submittedWorks","studentWorkSubmission","studentWorkSubmissionHeader","studentWorkSubmissionDetails","paddingLeft","clickable","QUERY_ASSIGNMENT","UPDATE_STUDENT_WORK","AnswersRoot","handlers","c","assignment","setAssignment","setError","response","studentWorks","groupStudentWorks","setReady","works","groups","all","assigned","work","submitted","graded","statistics","ready","aligntItems","AnswersSidebar","AnswersContent","anErrorHappened","refreshToRetry","_data$studentWorks","_data$studentWorks$st","x","forceUpdate","updateSidebar","statusFilter","setStatusFilter","filterWorksByStatus","Select","selectedWork","statusSelectorItem","index","_work$student","_work$student$avatar","_work$student2","_work$student2$avatar","updateContent","alt","student","url","g","StudentWorkGradeEditor","studentWork","maxGrade","grade","_data$studentWorks2","submission","component","dangerouslySetInnerHTML","__html","description","StudentWorkSubmission","assignmentType","statsContainer","count","gutterBottom","_work$student3","_work$student3$avatar","_work$student4","_work$student4$avatar","totalQuestions","slash","totalCorrect","correctAnswers","Answers","setGrade","editMode","setEditMode","_useState13","_useState14","errorUpdating","setErrorUpdating","updateStudentWork","updatingStudentWork","processGrade","newGrade","parseInt","fields","submittedAt","class","Input","defaultValue","endAdornment","InputAdornment","onKeyPress","charCode","onBlur","stopPropagation","whiteSpace","saving","_studentWork$student","_studentWork$student$","_studentWork$student2","_studentWork$student3","_studentWork$submissi","_studentWork$submissi2","_useState15","feedback","_useState17","_useState18","_useState19","file","downloadTheFile","botContainer","inputContainer","input","inputIcon","transform","options","announcement","editPostContainer","editPostTextField","editPostButtons","ADD_COMMENT","ADD_COMMENT_ASSIGNMENT","CreateComment","commentsuccess","setComment","createComment","loadingCreateComment","createCommentAssignment","loadingCreateCommentAssignment","comment","commentRef","divider","InputBase","AiOutlineSend","writer","content","post","topSection","date","midSection","statsIcon","midNameBox","EDIT_COMMENT","DELETE_COMMENT","Comment","createdAt","writerEmail","editsuccess","setEditCommentState","editComment","loadingEditComment","deletesuccess","deleteComment","loadingDeleteComment","editCommentState","anchorComment","setAnchorComment","commentContainer","moment","fromNow","commentContent","BiDotsVerticalRounded","UPLOAD","postBottomContainer","Drafter2","html","mutation","noUpload","raw","setContent","_ref$centerEvent","centerEvent","EditorState","createWithContent","stateFromHTML","editorEditState","setEditorEditState","convertedEditContent","setConvertedEditContent","convertEditContentToHTML","currentContentAsHTML","convertToHTML","getCurrentContent","createEmpty","editorState","setEditorState","convertedContent","setConvertedContent","convertContentToHTML","setFile","uploadFile","_useMutation2$","DOMPurify","sanitize","Editor","defaultEditorState","onEditorStateChange","wrapperClassName","editorClassName","toolbarClassName","textAlignment","_data$upload","attachments","upload","startIcon","CgAttachment","add","_data$upload2","_data$upload3","makeArrayOf","arr","i","arabicIndex","fontWieght","lineHeight","descriptionContainer","iconContainer","addQuestionMenu","questionContainer","boxShadow","QuestionText","sectionTitle","correctAnswer","incorrectAnswer","questionTypes","shortAnswer","IoText","number","numberInput","TiSortNumerically","radio","multipleChoice","BsCheck2Circle","checkboxes","BsCheck2Square","QuizModes","EDIT","PREVIEW","VIEW","RESULTS","EditQuiz","quiz","deleteQuestion","questions","splice","inputProps","quizTitle","placeholder","enterQuizTitle","helperText","quizTitleCannotBeEmpty","quizDescription","enterShortDescription","instructions","InstructionIterator","itemCollection","newItemText","newInstruction","theQuestions","AddQuestionMenu","question","Question","ViewQuiz","_ref2$preview","_ref2$readOnly","studentAnswers","_ref2$submitAction","submitAction","answerUpdateCallback","answer","isValid","parse","validity","showAnswers","join","instruction","totalCorrectAnswers","method","onSubmit","preventDefault","_quiz$correctAnswers","widget","initialValue","TextInputAnswer","NumberInputAnswer","RadioAnswer","CheckboxesAnswer","renderWidgetForType","widgetProps","questionText","helpText","questionHelpText","submit","updateAnswer","_ref3$placeholder","_ref3$initialValue","_ref3$readOnly","_ref3$correctAnswer","valid","setValid","gridGap","yourAnswer","shrink","emptyAnswersNotAccepted","disabled","FaCheck","answerCorrect","FaTimes","_ref4$min","min","_ref4$max","max","_ref4$initialValue","_ref4$readOnly","_ref4$correctAnswer","choices","_ref5$initialValue","_ref5$readOnly","_ref5$correctAnswer","_React$useState","_React$useState2","setValue","touched","answerIncorrect","RadioGroup","choice","FormControlLabel","control","Radio","handleChange","_ref6$min","_ref6$max","_ref6$initialValue","_ref6$correctAnswer","_ref6$readOnly","toggleIndex","newAnswer","Checkbox","_toConsumableArray","totalChecked","previous","checked","Quiz","mode","_ref7$submitAction","updateAnswers","_ref7$studentAnswers","_ref8$correctAnswers","updateQuestion","setCorrectAnswer","setWidgetProp","propName","answerProps","setText","flex","FaTrashAlt","enterQuestionText","questionTextCannotBeEmpty","enterAdditionalHelpText","enterCorrectAnswer","answerOptions","md","minValue","maxValue","RadioOptionIterator","newOption","CheckboxOptionIterator","requiredNumber","minNumber","maxNumber","_ref9","_React$useState3","_React$useState4","setOpen","anchorRef","handleClose","contains","prevOpen","focus","FaPlus","ref","addNewQuestion","Popper","transition","disablePortal","ClickAwayListener","onClickAway","MenuList","autoFocusItem","onKeyDown","_item","getUniqueQuestionId","total","existingIds","newId","option1","addQuestion","_ref10","_ref10$itemCollection","enterNewInstruction","updateItem","deleteItem","FaMinus","_ref11","_ref11$itemCollection","_React$useState5","_React$useState6","setChoice","enterListOfAnswers","toAddItems","toDeleteItems","specifyTheCorrectAnswer","_ref12","_ref12$itemCollection","_React$useState7","_React$useState8","specifyTheCorrectAnswers","defaultChecked","updateCorrectAnswer","UPDATE_STUDENTWORK","questionBox","questionHeader","questionInput","answerView","setAnswer","editStudentWorkMutation","rounded","handedIn","typeYourAnswer","handIn","answerConfirmation","Assignement","_data$","_data$2","_data$3","_data$4","uploadedFile","setUploadedFile","editLoading","accept","dark","teacherContainer","exDivider","points","studentGrade","quizContainer","EDIT_ASSIGNMENT","DELETE_ASSIGNMENT","QUERY_QUIZ","QUERY_QUIZ_WITH_ANSWERS","_templateObject5","SUBMIT_STUDENT_WORK","_templateObject6","QUERY_STUDENT_WORKS","_templateObject7","Assignment","_data$assignment","_data$assignment2","_data$assignment3","_data$assignment4","_data$assignment4$eva","_data$assignment5","_data$assignment5$stu","_data$assignment5$stu2","_data$assignment6","_data$assignment7","_data$assignment7$stu","_data$assignment7$stu2","_data$assignment8","_data$assignment9","_data$assignment$stud5","_data$assignment$stud6","_data$assignment$stud7","_worksData$studentWor","_worksData$studentWor2","_worksData$studentWor3","_worksData$studentWor4","_worksData$studentWor5","_worksData$studentWor6","_worksData$studentWor7","_worksData$studentWor8","_worksData$studentWor9","_worksData$studentWor10","_worksData$studentWor11","_data$assignment10","_data$assignment10$st","_data$assignment10$st2","_data$assignment10$st3","_data$assignment11","_data$assignment11$st","_data$assignment11$st2","_data$assignment11$st3","_data$assignment12","_data$assignment12$st","_data$assignment12$st2","_data$assignment12$st3","_data$assignment13","_data$assignment13$st","_data$assignment13$st2","_data$assignment14","_data$assignment14$st","_data$assignment14$st2","_data$assignment14$st3","_data$assignment15","_data$assignment15$st","_data$assignment15$st2","_data$assignment15$st3","_data$assignment16","_data$assignment16$st","_data$assignment16$st2","_data$assignment17","_data$assignment17$st","_data$assignment17$st2","_data$assignment17$st3","_data$assignment18","_data$assignment18$st","_data$assignment18$st2","_data$assignment18$st3","_data$assignment19","_data$assignment19$st","_data$assignment19$st2","_data$assignment$stud","_data$assignment$stud2","_data$assignment$stud3","_data$assignment$stud4","loadQuiz","loadQuizWithAnswers","updateStudentAnswers","loadStudentWorks","assignmentId","loadingStudentWorks","worksData","setAlertFailure","setAlertSuccess","reverseEditState","editAssignment","loadingEdit","deleteAssignment","_useMutation5","submitsuccess","submitStudentWork","setQuiz","_useLazyQuery3","_useLazyQuery4","loadingQuiz","_useLazyQuery5","_useLazyQuery6","loadingQuizWithAnswers","editState","alertSuccess","alertFailure","MdAssignment","evaluationsCoach","evaluationsInfo","coach","evaluationsDate","evaluationsLocation","points2","noPoints","studentCount","_work$submission","training","trainingEvaluations","_work$submission2","coachEvaluations","_work$submission3","studentEvaluations","myEvaluation","Chip","notReady","view","myCoachEvaluation","done","notYet","myTrainingEvaluation","MdPeople","comments","MuiAlert","muiAlert","GET_DAY_ONE","GET_DAY_TWO","GET_DAY_THREE","GET_DAY_FOUR","GET_DAY_FIVE","GET_DAY_SIX","GET_DAY_SEVEN","calendarContainer","minHeight","dayContainer","borderLeft","dayText","dayNumber","assignmentsContainer","toggleWeek","select","Calendar","locale","startOf","startDate","setStartDate","dates","setDates","tempDates","due","format","loadingDayOne","dataDayOne","loadingDayTwo","dataDayTwo","_useQuery3","loadingDayThree","dataDayThree","_useQuery4","loadingDayFour","dataDayFour","_useQuery5","loadingDayFive","dataDayFive","_useQuery6","loadingDaySix","dataDaySix","_useQuery7","loadingDaySeven","dataDaySeven","arType","dayOne","assignments","dayTwo","dayThree","dayFour","dayFive","daySix","daySeven","empty","arrowIcon","clone","subtract","FaAngleRight","monthText","FaAngleLeft","useConfirmationDialog","onConfirm","dialogProps","confirmationDialog","dialog","ConfirmationDialog","sparseUpdate","obj","_len","updates","_key","prop","hasOwnProperty","NotFound","capitalizeFirstLetter","str","toUpperCase","slice","FormDefinition","FormContext","FormDefinitionProvider","form","ViewFormContextProvider","_data$form$collection","context","QUERY_SINGLE","collectionName","getSingleQuerySelection","values","LinearProgress","initialValues","FormikProvider","contextProviderMap","MUTATION_CREATE","itemName","postMutation","created","createItem","creating","creationError","mutate","cleanedFormData","mutating","mutationError","FormWrapper","MUTATION_UPDATE","updated","_useMutation4$","updating","updateError","FormContextProvider","_ref5$mode","ModeContextProvider","_context$values","formikConfig","compiledValues","validationSchema","Yup","shape","views","validateOnMount","Formik","_useContext8","formik","useFormikContext","handleSubmit","_x","SubmitButton","my","isSubmitting","size","FormField","originalLabel","permissions","Component","_ref$singleField","singleField","valueFor","requiredFields","aggregate","calculate","otherProps","handleBlur","errors","fieldPermissions","read","write","calculatedValue","every","fieldName","show","getInputType","writeOnce","level1","level2","FormSection","level","FormLayout","_root","_ref$root","_ref$level","element","_element$singleField","_createElement","getNumberOfPages","rowsPerPage","Math","ceil","TablePaginationActions","page","onChangePage","LastPageIcon","KeyboardArrowRight","KeyboardArrowLeft","FirstPageIcon","FormListPagination","rowCount","onChangeRowsPerPage","currentPage","TablePagination","onPageChange","onRowsPerPageChange","Number","ActionsComponent","labelRowsPerPage","labelDisplayedRows","FormActionsContext","FormList","_form$views$list$requ","_data$form$collection2","itemsPerPage","setItemsPerPage","setPage","QUERY_LIST","DELETE_MUTATION","deleted","deleting","deleteError","_useConfirmationDialo","availableItems","availableActions","BiPlusCircle","routes","DataTable","columns","keyField","pagination","paginationPerPage","perPage","paginationComponent","striped","highlightOnHover","noDataComponent","align","customStyles","headCells","cells","FormListActions","find","enabledRoutes","generatePath","noPadding","paddingTop","noShadow","FormPageLayout","_form$views","_form$views2","formContext","printing","search","addEventListener","close","print","Container","mb","Breadcrumbs","BiPrinter","defaultProps","_ref$minRows","minRows","other","MuiTextField","GET_CENTER_MEMBERS","dialogContent","SearchMember","_result$filter","_ref$initialSelected","initialSelected","setSearch","result","setResult","selected","setSelected","_data$centersLists$","_data$centersLists$$m","_user$fullname","_data$centersLists$2","_data$centersLists$2$","_user$fullname2","p","noMember","TableCellFormField","tableName","rowIndex","columnIndex","definition","_useField3","useField","Form","_this","_classCallCheck","roles","updatedAt","pageSize","this","constructor","requiredProp","TypeError","word","toLowerCase","update","DefinitionProvider","bind","ContextProvider","Single","fromEntries","routeName","basePath","routeMap","cell","compileLayouts","compileValidationSchemas","_createClass","buildField","_this$constructor$fie","_this$constructor$fie2","_this$constructor$fie3","_this$constructor$fie4","fieldDefaults","save","fieldDefaultsByType","defaultFieldPermissions","fieldPermissionProfiles","Consumer","requestedFields","_this2","selection","getField","fieldProps","subSelection","otherOptions","details","_this3","getValidationSchema","_this4","validationRule","layoutProps","_this4$constructor$va","rule","validationRuleMap","otherOption","valuesRequiringDetails","String","when","is","otherwise","nullable","oneOf","_this5","compileLayout","_this5$views$mode","_root$i","_root$i2","_root$i2$children","fieldType","_this$constructor$inp","_this$constructor$inp2","inputTypeMap","_this6","cleanedData","_loop","_this6$getField","endsWith","replace","perm","_valueFor","_value","_this$getField","staticValue","autoWrite","string","integer","_value$fullname","startAdornment","timestamp","Date","toISOString","emptyLabel","table","_useField","_useField2","helpers","mt","Table","paddingBottom","TableHead","TableCell","col","TableBody","colSpan","py","px","verticalAlign","remainingRows","column","TableFooter","fillFirst","fillLater","fillOnce","static","autoFillFirst","autoFillOnce","autoWriteOnce","author","introduction","team","management","time","risks","expenses","_rows$rowIndex$slice$","_rows$rowIndex$slice$2","quantity","NaN","sum","row","_row$slice$map","_row$slice$map2","revenue","_rows$rowIndex$slice$3","_rows$rowIndex$slice$4","_row$slice$map3","_row$slice$map4","totalRevenue","_row$slice$map5","_row$slice$map6","totalExpenses","_row$slice$map7","_row$slice$map8","netProfit","_row$slice$map9","_row$slice$map10","_row$slice$map11","_row$slice$map12","selector","searchable","sortable","_ref13","_ref14","employee","job","unit","employedSince","superior","behavior","reasons","absences","guests","manager","whatTheyShouldKnow","revenueTarget","programme","funding","schedule","TextListField","_text$split","part","trim","lineSeparatedValues","shortDescription","budget","start","end","duration","goals","successCriteria","managerPrivileges","program","numberOfPeople","averageCostPerPerson","remainingExpenses","_row$slice$map13","_row$slice$map14","about","met","topic","outcomes","WarningLetter","infraction","selectedOption","FormControl","InputLabel","labelId","option","recidiveConsequence","forms","EmployeeAbsence","Suggestion","ComplaintAboutSuperior","BusinessPlan","TrainingProgram","EventPlan","TripFinancialEstimation","MeetingSchedule","TripOrMeetingReport","ProjectSheet","fileSections","Icon","BallotOutlined","MoneyOutlined","GroupOutlined","Map","QUERY_FORMS","Files","pt","FileSection","_ref$section","paddingY","_l1$file$type","_forms$file$key","_forms$file$key$file","_forms$file$key$file$","_forms$file$key2","_forms$file$key2$file","BiDownload","download","ActivityCard","_ref$title","_ref$cover","cover","_ref$description","_ref$url","backgroundImage","createTheme","secondary","typography","fontFamily","h1","buttonPrimary","buttonSecondary","login","eventTitle","eventsContainer","eventImage","backgroundPosition","backgroundSize","back","eventContent","GET_EVENT","GET_INTERFACE","FrontEvent","_center$logo","_centerEvent$image","eventData","centerLogo","logo","toLocaleDateString","weekday","year","month","day","ThemeProvider","CssBaseline","bg","image","endIcon","ArrowBackIcon","FrontEvents","setLoading","setEvents","limit","setLimit","getEvents","float","sm","excerpt","contentLink","contentTitle","QUERY_TOMORROW_DUE","Due","_data$classes$","dueTomorrow","backgroundContainer","optionContainer","optionIcon","titleContainer","cardTitle","white","dueContainer","EDIT_CLASS","CLONE_CLASS","ARCHIVE_CLASS","ClassCard","classData","editClass","loadingEditClass","clonesuccess","cloneClass","loadingCloneClass","archivesuccess","_useMutation6","archiveClass","loadingArchiveClass","editClassState","reverseEditClassState","cloneClassState","reverseCloneClassState","setAnchorEl","params","archive","MdTrendingUp","MdFolderOpen","topButtonIcon","topButtonTypography","light","TopSection","textTransform","BsCardChecklist","QUERY_CLASSES","Home","dataQueryClass","direction","grid","MemberCard","deleteMember","picture","twitter","instagram","facebook","HighlightOff","defaultAvatar","InstagramOutlined","viewBox","fill","xmlns","d","TwitterOutlined","ListMembers","setTeam","Memberscarousel","createRef","members","carouselIndex","setcarouselIndex","setRole","setFacebook","setInstagram","setTwitter","newTeam","teamMember","idx","_teamMember$picture","goTo","slideNext","fillRule","slidePrev","Carousel","breakPoints","itemsToShow","itemsToScroll","showArrows","renderArrow","addPicture","newTeamMemeber","pictureID","_teamMember$picture2","modalBox","DefaultImages","thumbnail","thumbnailWidth","thumbnailHeight","caption","Landing","_center$contact","_center$contact2","_center$contact3","_center$contact3$phon","_center$socialMediaLi","_center$socialMediaLi2","_center$socialMediaLi3","_center$socialMediaLi4","_center$socialMediaLi5","_center$socialMediaLi6","_center$socialMediaLi7","_center$socialMediaLi8","_center$socialMediaLi9","_center$socialMediaLi10","carouselActivities","IMAGES","gallery","openToRegistration","Row","Col","span","vision","defaultImg","youtubeEmbedUrl","video","frameBorder","allow","allowFullScreen","underline","SmsFailedIcon","alertSignup","courses","Gallery","images","enableLightbox","enableImageSelection","backdropClosesModal","showLightboxThumbnails","lg","xl","contact","phoneNumbers","socialMediaLinks","youtube","rel","YouTube","Twitter","linkedin","LinkedIn","Instagram","Facebook","match","parseYoutubeVideoID","GET_QUIZ","UPDATE_QUIZ","DELETE_QUIZ","QuizEditor","loadingError","setLoadingError","setSavedQuiz","savedQuiz","setClose","warn","updateQuiz","saveQuiz","savingQuiz","saveQuizIfModified","closeOnFinish","deleteConfirmationVisible","toggleDeleteConfirmationVisible","quizSuccessfullyDeleted","deleteQuiz","deletingQuiz","quizMode","saveAndClose","DELETE_COMPONENT","TopicRow","place","scope","currentState","accordionState","reverseAccordionState","anchorComponent","setAnchorComponent","closeComponentMenu","deleteComponent","topicTable","shadows","topicTableStream","accordionDetails","viewText","iconChanger","BiBookBookmark","RiQuestionnaireLine","MdAssignmentTurnedIn","useLocation","redirect","renderedRow","accordionSummary","evaluations","Accordion","expanded","square","AccordionSummary","reload","AccordionDetails","midContentContainer","workgraded","moredetails","DELETE_TOPIC","UPDATE_TOPIC_NAME","topicTextFieldContainer","TopicSection","trigger","setStudentMode","cid","teacher","anchorTopic","setAnchorTopic","closeTopicMenu","dialogTopicState","topicContent","setTopicContent","updateTopicName","reverseTopicDialogState","deleteTopic","MdAdd","editTopic","topicDialogContainer","topicTextField","topicButtons","QUERY_CLASSWORK","Review","onComplete","myClasses","mainContainer","SchoolIcon","topicTitleContainer","createImage","Promise","resolve","reject","Image","setAttribute","getRadianAngle","degreeValue","PI","rotateSize","rotation","rotRad","abs","cos","sin","getCroppedImg","_x2","_getCroppedImg","imageSrc","pixelCrop","flip","canvas","ctx","_rotateSize","bBoxWidth","bBoxHeight","_args","createElement","getContext","translate","rotate","scale","drawImage","getImageData","y","putImageData","toDataURL","dataURLtoFile","dataurl","filename","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","File","uploadLink","UPDATE_USER","UPDATE_CENTER_INFO","containerCropper","cropper","slider","containerButtons","sliderLabel","Transition","forwardRef","Slide","CropeImage","_ref2$destination","destination","_ref2$centerId","_ref2$setEventImage","setEventImage","_ref2$setEventImageId","setEventImageId","setTimeout","updateCenterInfo","setImage","croppedArea","setCroppedArea","crop","setCrop","zoom","setZoom","updateUser","uploadImage","croppedImage","finally","sendCroppedImageToUpload","useCallback","fullScreen","TransitionComponent","sx","Toolbar","edge","CloseIcon","ml","changePicture","Cropper","aspect","onCropChange","onZoomChange","onCropComplete","croppedAreaPercentage","croppedAreaPixels","Slider","step","choose","click","CloudUploadIcon","chooseFromComputer","reader","FileReader","readAsDataURL","formSectionPassword","formSectionAvatar","avatarLarge","EditProfile","setFullname","setEmail","password","setPassword","passwordConfirm","setPasswordConfirm","profilePicture","avatarURL","FaEdit","FaTrash","updateAvatar","changeEssentials","fn","em","FaSave","changePassword","newPassword","confirmNewPassword","EvaluationResult","_Object$entries$rever","labels","round","EvaluationStatistics","expected","EvaluationTextField","_props$value","_props$value2","_props$value3","_ref$mode","long","v","AssignmentContext","AssignmentProvider","DEFAULT_PERMISSIONS","EvaluationSubject","resultLabels","listStudents","EvaluationTable","Head","Footer","getPageTitle","useCheckPermissions","usePostSubmit","_step","teachingClasses","useStudentWork","isOwnWork","_iterator","_createForOfIteratorHelper","_this$permissions","_this$permissions$rol","f","aggregation","longText","CoachEvaluation","q5","q6","q7","q8","q9","q10","q11","q12","q13","q14","q15","q16","q17","q18","q19","q20","q21","q22","q23","q24","q25","q26","q27","q28","q29","q30","q31","q32","q33","q34","q35","q36","q37","q38","q39","q40","q41","q42","pros","cons","cur","_ref2$mode","_this$questions$id","meta","strengthsAndWeaknesses","singleQuestion","possibleValue","_props$value$possible","onFocus","MdOutlineCheckCircleOutline","TrainingEvaluation","MdCheckCircleOutline","subjects","StudentEvaluation","useEvaluationSubject","StudentworkContext","QUERY_STUDENTWORK","StudentWorkProvider","studentWorkId","postUpdateCallback","studentWorkUpdateError","DEFAULT_FORMAT","requireIf","schema","validations","inputNumber","_ref$min","_ref$max","Infinity","radioNumber","_ref2$min","getValidationRule","_question$validation","_question$format","validation","getInitalValue","_question$format2","_question$initialValu","StudentWorksContext","QUERY_STUDENTWORKS","StudentWorksProvider","useStudentWorks","aggregations","avg","aggregatedCount","listStrings","_current$trim","_result$current","_defineProperty","aggregationInitialValues","iconPrimary","stroke","iconSecondary","EvaluationList","subjectKey","marginBlock","IoArrowBackCircleOutline","Evaluation","_useEvaluationSubject","_useStudentWork","evaluation","studentworks","aggregatedData","submittedEvaluations","aggregatedValues","_evaluations$aggregat","_evaluations$aggregat2","questionId","_evaluation$questionI","enableReinitialize","_assignment$evaluatio","_assignment$evaluatio2","_assignment$evaluatio3","resultsBlock","_section$label","_questions$section$si","_section$label2","_questions$section$si2","_section$table","_questions$id","UN_BAN_STUDENT","Banned","unBanStudent","unBanButton","unBan","Value","isEditing","setEditing","newName","setNewName","newContent","setnewContent","editingTemplate","editValue","viewTemplate","deleteValue","Values","_props$values","remainingValues","setValues","editedValues","newValue","addValue","htmlFor","autoComplete","PhoneNumber","handleDelete","editNumber","numberState","setNumber","PhoneNumbers","setPhoneNumbers","setstate","remainingNumbers","newNumber","editedPhoneNumbers","phoneNumber","newPhoneNumber","UPDATE_INTERFACE","UPDATE_VALUES","UPDATE_PHONE_NUMBERS","UPDATE_TEAM","EditLanding","_center$contact4","_center$contact5","_center$contact6","saveLoading","setSaveLoading","_data$centersLists$$i","setGallery","setGalleryId","ids","setOpenToRegistration","isSelected","galleryId","postUploadToGallery","setUploadGalleryLoading","uploadToGallery","updateValuesMutation","updatePhoneNumbersMutation","_useMutation7","setPictureID","_useMutation8","loadingAddPicture","_useMutation9","_data$updateCentersLi","_data$updateCentersLi2","_data$updateCentersLi3","_data$updateCentersLi4","_data$updateCentersLi5","_data$updateCentersLi6","setDeleteGalleryLoading","updateCentersList","_useMutation11","updateInterface","_useMutation13","updateTeamMembers","uploadGalleryLoading","deleteGalleryLoading","_useState16","_useState20","setVision","_useState21","_useState22","setMessage","_useState23","_useState24","setDescription","_useState25","_useState26","setAlertSignup","_useState27","_useState28","_useState29","_useState30","_useState31","_useState32","_useState33","_useState34","_useState35","_useState36","setYoutube","_useState37","_useState38","setLinkedin","_useState39","_useState40","setVideo","_useState41","_useState42","_useState43","_useState44","setAddress","_useState45","_useState46","_useState47","_useState48","returnGallery","_useState49","_useState50","onSelectImage","updatedImages","imageIdx","toggleImageSelected","saveAllChanges","saveChanges","centerIsOpenToRegistration","newGallery","handleDeleteImages","DeleteIcon","deleteImages","BottomNavigation","showLabels","EditEvent","reverseCreate","eventExcerpt","setTitle","setExcerpt","eventDetails","createDialogContent","assignement","BottomNavigationAction","CREATE_EVENT","GET_EVENTS","UPDATE_EVENT","DELETE_EVENT","Events","setCreate","setEdit","eventId","setEventId","eventImageId","getEvent","getEventLoading","deleteEvent","createEvent","loadingCreate","updateEvent","loadingUpdate","_event$image","editEvent","ADD_ADMINS","SearchMembers","reverseReady","addAdmins","_data$centersLists$3","_data$centersLists$3$","j","EditableChoice","_choices$find$label","_choices$find","initialChoice","setSelectedOption","ArrowDropDownCircleSharp","keepMounted","handleMenuItemClick","GET_STAFF","UPDATE_CENTER_OWNER","UPDATE_ROLE","Staff","updateRole","loadingUpdateRole","go","updateCenterOwner","loadingUpdateOwner","reverseAdd","newRole","setAsOwner","ownerId","removeFromStaff","GET_TEACHERS","DELETE_TEACHER","Teachers","deleteTeacher","_data$centersList","centerClasses","GET_WAITING_LIST","REJECT","APPROVE","UserInfo","approve","Waiting","loadingReject","loadingApprove","apporve","SEND_TO_WAITING_LIST","validEmail","emailRequired","fieldRequired","MembershipForm","SendToWaitingList","validateOnChange","validateOnBlur","continue","quizSelector","quizSelectorItem","borderTop","QuizSelector","quizzes","selectedQuiz","onQuizSelected","newQuiz","chooseOrCreateQuiz","selectQuiz","createNewQuiz","createdBy","quizCard","quizIcon","quizCardInfo","quizCardInner","GET_CENTER_QUIZZES","NEW_QUIZ","QuizCard","setQuizzes","errorMessage","setErrorMessage","loadingQuizzes","setQuizSelectorReady","quizSelectorReady","editQuiz","protocol","createQuiz","creatingNewQuiz","quizInfo","creatingQuiz","loadingQuizList","menu","menuTopics","menuText","maxHeight","dialogTitle","closeContainer","dialogContentSubContainer","rightContainer","partTitle","selectFullWidth","boxDivider","dialogIcon","titleTextField","default","flexShrink","contentTextField","partContainer","optionsContainer","ADD_TOPIC","CREATE_ASSIGNMENT","currentClass","topics","classID","reverseDialogState","refetchQueries","createAssignment","loadingCreateAssignmentMutation","createTopic","setType","setTopic","topicContentRef","titleRef","setDue","dueRef","setEvaluationsInfo","dialogState","anchorPoints","setAnchorPoints","closePointsMenu","choosetopics","topicMenuLabel","setTopicMenuLabel","pointsMenuLabel","setPointsMenuLabel","IoAdd","BsListUl","GrClose","optionText","partSelectContainer","IoMdArrowDropdown","HiMenuAlt3","topicContainer","alignSelf","topicTitle","QUERY_NULL_TOPIC","Classwork","loadingNullTopic","nullTopicData","nullTopics","allTopics","trainingEvaluation","coachEvaluation","studentEvaluation","tablesContainer","headCell","borderColor","bodyCell","headCellRight","bodyCellRight","QUERY_MARKS","Marks","headRight","bodyRight","head","body","UPDATE_PEOPLE","Search","studentsMode","classId","updatePeople","_i$user","_i$user$classes$","_i$user2","_i$user2$teachingClas","alreadyAddedStudent","alreadyAddedTeacher","QUERY_PEOPLE","personContainer","People","studentMode","_data$classes$2","_data$classes$3","EDIT_POST","DELETE_POST","Announcement","reverseEditPostState","editPost","deletePost","editPostState","nameBox","styleMap","CODE","getBlockStyle","block","getType","StyleButton","_React$Component2","_inherits","_super2","_createSuper","call","onToggle","active","onMouseDown","BLOCK_TYPES","MdFormatQuote","BiListUl","BiListOl","BlockStyleControls","getSelection","blockType","getBlockForKey","getStartKey","INLINE_STYLES","MdFormatBold","MdFormatItalic","MdFormatUnderlined","InlineStyleControls","currentStyle","getCurrentInlineStyle","has","_head","_main","breakpoints","up","codeContainer","codePrefix","code","scanCodeIconContainer","scanCodeIcon","themeContainer","uploadContainer","mainSubContainer","announcementContainer","noAnnouncements","noAnnouncementsSpecialText","success","noAnnouncementsBlock","upComingContainer","upComing","upComingContainerBottom","announcementAvatar","announcementText","postUpperContainer","postMiddleContainer","QUERY_STREAM","ADD_POST","Stream","_queryData$classes$0$","_queryData$classes$","_queryData$classes$0$2","_queryData$classes$2","loadingQueryStream","queryData","postsuccess","createPost","loadingMutationCreatePost","postState","reversePostState","streamItems","posts","getTime","sort","a","b","_queryData$classes$3","sortedArray","communicateWithYourClassHere","FiMessageSquare","createYourAnnouncements","MdMessage","RespondToStudentPost","announceSomethingToClass","Router","BrowserRouter","Switch","Route","exact","jss","plugins","jssPreset","rtl","RTL","StylesProvider","App","ReactDOM","render","getElementById"],"mappings":"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","file":"static/js/main.d48c63f7.chunk.js","sourcesContent":["import React from 'react';\n\nimport {\n ApolloClient,\n ApolloLink,\n InMemoryCache,\n ApolloProvider,\n} from '@apollo/client';\nimport { onError } from 'apollo-link-error';\nimport { setContext } from '@apollo/client/link/context';\nimport Cookies from 'universal-cookie/es6';\nimport { createUploadLink } from 'apollo-upload-client';\n\nfunction Apollo({ children }) {\n const errorLink = onError(({ graphQLErrors, networkError }) => {\n if (graphQLErrors)\n graphQLErrors.forEach(({ message, locations, path }) =>\n console.log(`[GraphQL error]: Message: ${message}, Location: ${locations}, Path: ${path}`)\n );\n\n if (networkError) console.log(`[Network error]: ${networkError}`);\n });\n\n const cookies = new Cookies();\n const authLink = setContext((_, { headers }) => {\n const jwt = cookies.get('token');\n const token = jwt ? `Bearer ${jwt}` : '';\n return {\n headers: {\n ...headers,\n authorization: token,\n },\n };\n });\n const httpLink = createUploadLink({\n // uri: 'https://strapi.rwad.tk/graphql',\n uri: process.env.REACT_APP_GRAPHQL_END_POINT,\n });\n const defaultOptions = {\n watchQuery: {\n fetchPolicy: 'no-cache',\n errorPolicy: 'ignore',\n },\n query: {\n fetchPolicy: 'no-cache',\n errorPolicy: 'all',\n },\n };\n const client = new ApolloClient({\n link: ApolloLink.from([errorLink, authLink, httpLink]),\n cache: new InMemoryCache({\n addTypename: false,\n }),\n defaultOptions,\n });\n return {children};\n}\n\nexport default Apollo;\n","import React, { createContext, useReducer } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Snackbar } from \"@material-ui/core\";\nimport Alert from \"@material-ui/lab/Alert\";\n\nexport const FloatingAlertContext = createContext();\n\nexport function useFloatingAlert() {\n const [floatingAlertProps, dispatch] = useReducer(\n (current, action) => {\n let next = { ...current };\n Object.entries(action).forEach(([key, value]) => {\n next[key] = value;\n });\n return next;\n },\n {\n open: false,\n message: null,\n onClose: () => {\n dispatch({ open: false, message: null });\n },\n }\n );\n\n const floatingAlert = ({message, severity, ...props} ) => {\n dispatch({\n open: true,\n message,\n severity,\n ...props\n });\n };\n return { floatingAlertProps, floatingAlert };\n}\n\nexport default function FloatingAlert(props) {\n const { open, onClose, message, severity = 'info', autoHideDuration = 6000, alertProps = {}, snackbarProps = {} } = props;\n\n return (\n \n \n {message}\n \n \n );\n}\n\nFloatingAlert.propTypes = {\n open: PropTypes.bool.isRequired,\n message: PropTypes.node,\n severity: PropTypes.oneOf(['info', 'success', 'warning', 'error'])\n};\n\nexport function FloatingAlertProvider({children}){\n const { floatingAlertProps, floatingAlert } = useFloatingAlert();\n return <>\n \n {children}\n \n \n \n\n}\n","import { Box, CircularProgress, makeStyles } from '@material-ui/core';\nimport React from 'react';\n\nconst useStyles = makeStyles((theme) => ({\n container: {\n height: '100vh',\n width: '100vw',\n background: 'white',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n position: 'fixed',\n zIndex: 9999999,\n flexGrow: 1,\n overflow: 'auto',\n },\n}));\n\nfunction Loading() {\n const classes = useStyles();\n return (\n \n \n \n \n \n );\n}\n\nexport default Loading;\n","import { gql, useLazyQuery, useQuery } from \"@apollo/client\";\nimport { createContext, useEffect, useReducer, useState } from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport Cookies from \"universal-cookie\";\nimport Loading from \"./components/common/Loading\";\nexport const Navigation = createContext();\nexport const CreateClass = createContext();\nexport const LoadingState = createContext();\nexport const Class = createContext();\nexport const ClassAnchor = createContext();\nexport const GetName = createContext();\nexport const Auth = createContext();\n\nexport function ClassWrapper({ children }) {\n const { slug } = useParams();\n\n return (\n {children}\n );\n}\nvar currentUrl = \"aymen.rwadleadership.tk\";\nif (process.env.REACT_APP_DEBUG_URL == \"False\") {\n currentUrl = window.location.host;\n}\nvar parts = currentUrl.split(\".\");\nvar sub = parts[0];\nconst cookies = new Cookies();\nconst token = cookies.get(\"token\");\n\nconst QUERY_MEMBERSHIP = gql`\n query getUserMembership($userId: ID!, $centerSlug: String!) {\n memberships(where: { user: $userId, center: { subdomain: $centerSlug } }) {\n center {\n id\n info {\n name\n }\n classes {\n slug\n name\n section\n isArchived\n students(where: { id: $userId }) {\n id\n }\n teachers(where: { id: $userId }) {\n id\n }\n }\n }\n status\n role\n }\n }\n`;\nconst queryInfo = gql`\n query QueryInfo($subdomain: String!) {\n centersLists(where: { subdomain: $subdomain }) {\n owner {\n id\n }\n info {\n name\n }\n id\n classes(where: { isArchived: false }) {\n name\n section\n slug\n }\n }\n }\n`;\nconst GET_NAME = gql`\n query GetName($subdomain: String!) {\n centersLists(where: { subdomain: $subdomain }) {\n info {\n name\n }\n }\n }\n`;\n\nfunction Context({ children }) {\n // Auth\n const [user, setUser] = useState(null);\n const [membership, setMembership] = useState(null);\n const [loadingState, reverseLoadingState] = useReducer(\n (state) => !state,\n true\n );\n const logout = (callBack) => {\n callBack();\n cookies.remove(\"token\");\n setUser(null);\n // sessionStorage.clear();\n };\n const [skip, setSkip] = useState(true);\n\n const [\n getUserMembership,\n {\n loading: membershipLoading,\n error: membershipError,\n data: membershipData,\n },\n ] = useLazyQuery(QUERY_MEMBERSHIP, {\n onCompleted: (data) => {\n setMembership(data.memberships?.[0]);\n reverseLoadingState();\n },\n onError: (err) => {\n console.log(\"membership error : \", err);\n // TODO handle error\n },\n });\n\n useEffect(() => {\n async function triggerEffect() {\n if (!token) {\n reverseLoadingState();\n return;\n }\n const userInfo = !token\n ? null\n : await fetch(`${process.env.REACT_APP_STRAPI_URL}/users/me`, {\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n })\n .then((res) => res.json())\n .then((res) => {\n setUser(res);\n setSkip(false);\n return res;\n })\n .catch((err) => {\n console.log(\"me err\", err);\n });\n\n if (!userInfo) {\n reverseLoadingState();\n return;\n }\n getUserMembership({\n variables: {\n userId: userInfo.id,\n centerSlug: sub,\n },\n });\n }\n triggerEffect();\n }, []);\n const [isLoading, reverseLoading] = useReducer((s) => !s, true);\n //\n const { loading: loadingQueryInfo, data: dataQueryInfo } = useQuery(\n queryInfo,\n {\n onError: (error) => {\n console.log(\"errorQueryInfo: \", error);\n },\n onSuccess: (data) => {\n console.log(\"successQueryInfo: \", data);\n },\n variables: {\n subdomain: sub,\n },\n }\n );\n const { loading: loadingName, data: centerName } = useQuery(GET_NAME, {\n onError: (error) => {\n console.log(\"errorGetName: \", error);\n },\n variables: {\n subdomain: sub,\n },\n });\n // LOADING\n\n // CREATE CLASS\n const [createState, reverseCreateState] = useReducer(\n (state) => !state,\n false\n );\n const [classContent, setClassContent] = useState({\n name: \"\",\n section: \"\",\n subject: \"\",\n room: \"\",\n slug: \"\",\n });\n const handleClassContent = (newState) => {\n setClassContent(newState);\n };\n // ClassAnchor\n const [classAnchor, setClassAnchor] = useState(null);\n\n // TABS\n const [tabState, setTabState] = useState(\"Stream\");\n\n const handleTabsChange = (newState) => {\n setTabState(newState);\n };\n if (loadingQueryInfo) return ;\n if (!loadingQueryInfo) {\n if (loadingState || membershipLoading) return ;\n // const centerId = membership?.center?.id;\n const centerId = dataQueryInfo?.centersLists[0]?.id;\n let info = {\n centerName: membership?.center?.info?.name,\n classes: membership?.center?.classes,\n students: membership?.center?.students,\n };\n if (info?.centerName) {\n document.title = info.centerName;\n }\n // const isCenterOwner = user?.ownedCenters?.some(\n // center => center.subdomain === sub\n // );\n const isCenterOwner =\n dataQueryInfo?.centersLists[0]?.owner.id === user?.id ? true : false;\n const isCenterAdmin = [\"moderator\", \"assistant\", \"owner\"].includes(\n membership?.role\n );\n const membershipRole = membership?.role;\n const membershipStatus = membership?.status;\n const joinedClasses = membership?.center?.classes?.filter(\n ({ students }) => students?.length\n );\n const teachedClasses = membership?.center?.classes?.filter(\n ({ teachers }) => teachers?.length\n );\n return (\n \n \n \n \n \n \n {children}\n \n \n \n \n \n \n );\n }\n}\n\nexport default Context;\n","import React, { useContext } from \"react\";\nimport { useHistory } from 'react-router-dom';\nimport { Redirect } from \"react-router-dom\";\nimport Cookies from \"universal-cookie/es6\";\nimport Loading from \"../components/common/Loading\";\nimport { Class, Navigation } from \"../Context\";\n\nfunction logout() {\n let cookies = new Cookies();\n cookies.remove(\"token\");\n}\n\nconst accountsRedirect = (target = \"login\") => {\n let nextURL = encodeURIComponent(\n window.location.pathname === \"/\"\n ? window.location.origin + \"/home\"\n : window.location.href\n );\n return `${process.env.REACT_APP_ACCOUNTS_URL}/${\n target === \"register\" ? \"register\" : \"\"\n }?center&redirect_to=${nextURL}`;\n};\n\nexport function BaseGate({\n authorize,\n rejectBehaviour = \"hide\",\n children,\n message = null,\n redirectTo = \"login\",\n}) {\n const history = useHistory();\n if (authorize) {\n return {children};\n }\n // eslint-disable-next-line default-case\n switch (rejectBehaviour) {\n case \"hide\":\n return null;\n case \"message\":\n return message;\n case \"redirect\":\n if ([\"register\", \"login\"].includes(redirectTo)) {\n window.location.href = accountsRedirect(redirectTo);\n return ;\n }\n return ;\n\n case \"logout\":\n logout();\n return ;\n }\n}\n\nexport function RequireAuthentication({ children, ...gateProps }) {\n const { user } = useContext(Navigation);\n return (\n \n {children}\n \n );\n}\n\n// membership.status == \"ACTIVE\"\nexport function RequireCenterMembership({\n children,\n status = \"GUEST\",\n ...gateProps\n}) {\n const { membershipStatus, isCenterOwner } = useContext(Navigation);\n let authorize;\n switch (status) {\n case \"REQUESTED\":\n authorize = membershipStatus === \"REQUESTED\";\n break;\n case \"ACTIVE\":\n authorize = isCenterOwner || membershipStatus === \"ACTIVE\";\n break;\n case \"BANNED\":\n authorize = membershipStatus === \"BANNED\";\n break;\n case \"GUEST\":\n default:\n authorize = !membershipStatus;\n }\n // console.log('required = ', status, 'found = ', membershipStatus, \"authorize = ²\", authorize)\n\n return (\n \n {children}\n \n );\n}\n\nexport function RequireCenterAdmin({ children, only = ['moderator','assistant','owner'], ...gateProps }) {\n const { isCenterAdmin, membershipRole } = useContext(Navigation);\n const allowedRoles = Array.isArray(only) ? only : [only];\n return (\n \n {children}\n \n );\n}\n\nexport function RequireClassAccess({\n children,\n only = \"any\",\n slug = null,\n ...gateProps\n}) {\n let { classSlug } = useContext(Class);\n classSlug = classSlug || slug;\n const { isCenterOwner, isCenterAdmin, joinedClasses, teachedClasses } =\n useContext(Navigation);\n let authorize;\n const studentAccess = joinedClasses?.some(({ slug }) => slug === classSlug);\n const teacherAccess =\n isCenterOwner ||\n isCenterAdmin ||\n teachedClasses?.some(({ slug }) => slug === classSlug);\n switch (only) {\n case \"student\":\n authorize = studentAccess;\n break;\n case \"teacher\":\n authorize = teacherAccess;\n break;\n case \"any\":\n default:\n authorize = studentAccess || teacherAccess;\n }\n\n return (\n \n {children}\n \n );\n}\n\nexport function RequireTeacherAccess({ children, ...gateProps }) {\n const { isCenterOwner, isCenterAdmin, teachedClasses } =\n useContext(Navigation);\n return (\n \n {children}\n \n );\n}\n","import React, { useState, useRef, useContext } from 'react';\nimport { Dialog, DialogActions, DialogContent, DialogTitle, TextField, Button, makeStyles } from '@material-ui/core';\nimport { l1 } from '../../local.json';\nimport { useMutation, gql } from '@apollo/client';\nimport Loading from '../../common/Loading';\nimport { Navigation } from '../../../Context';\nconst useStyles = makeStyles((theme) => ({}));\n\nfunction Create({ state, reverse, refetch, alert, failure }) {\n const ADD_CLASS = gql`\n mutation CreateClass($name: String!, $section: String!, $subject: String!, $slug: String!, $id: ID!) {\n createClass(input: { data: { name: $name, section: $section, subject: $subject, slug: $slug, center: $id } }) {\n class {\n name\n id\n section\n }\n }\n }\n `;\n\n const classes = useStyles();\n const [name, setName] = useState('');\n const nameRef = useRef();\n const [section, setSection] = useState('');\n const sectionRef = useRef();\n const [subject, setSubject] = useState('');\n const subjectRef = useRef();\n\n const [slug, setSlug] = useState('');\n const slugRef = useRef();\n const { centerId } = useContext(Navigation);\n\n const [createClass, { loading }] = useMutation(ADD_CLASS, {\n onError: () => failure(l1.failure),\n onCompleted: () => {\n refetch();\n alert(l1.createsuccess);\n },\n });\n return (\n <>\n {loading ? (\n \n ) : (\n <>\n \n {l1.createClass}\n \n {\n setName(nameRef.current.value);\n }}\n />\n {\n setSlug(slugRef.current.value);\n }}\n />\n {\n setSection(sectionRef.current.value);\n }}\n />\n {\n setSubject(subjectRef.current.value);\n }}\n />\n \n \n {\n createClass({\n variables: {\n name,\n section,\n subject,\n slug,\n id: centerId,\n },\n });\n\n reverse();\n }}\n >\n {l1.create}\n \n \n \n \n \n )}\n \n );\n}\n\nexport default Create;\n","import { useMediaQuery } from '@material-ui/core';\n\nfunction useLayout() {\n const desktop = useMediaQuery('(min-width: 768px)');\n const mobile = useMediaQuery('(max-width: 767px)');\n if (desktop) {\n return true;\n } else if (mobile) {\n return false;\n }\n}\n\nexport default useLayout;\n","import React, { useContext, useReducer, useState } from \"react\";\nimport {\n AppBar,\n Avatar,\n Typography,\n makeStyles,\n Box,\n IconButton,\n Drawer,\n List,\n ListItem,\n Divider,\n ListItemIcon,\n MenuItem,\n Menu\n} from \"@material-ui/core\";\nimport { IoAddOutline } from \"react-icons/io5\";\nimport { HiOutlineMenu } from \"react-icons/hi\";\nimport { ClassAnchor, Navigation } from \"../../Context\";\nimport { BiHome, BiCalendarAlt, BiFolder } from \"react-icons/bi\";\nimport { BsCardText } from \"react-icons/bs\";\nimport Create from \"../rel/home/Create\";\n// @ts-ignore\nimport { l1 } from \"../local.json\";\nimport { Link, useParams, useHistory } from \"react-router-dom\";\nimport { RiAdminLine } from \"react-icons/ri\";\nimport Cookies from \"universal-cookie\";\nimport useLayout from \"./useLayout\";\nimport {\n RequireCenterAdmin,\n RequireClassAccess,\n RequireTeacherAccess\n} from \"../../Auth/gates\";\nconst useStyles = makeStyles(theme => ({\n root: {},\n iconHome: { fontSize: theme.spacing(3), marginLeft: theme.spacing(2) },\n\n menuButton: {\n marginRight: theme.spacing(1),\n color: theme.palette.common.black\n },\n title: {\n fontSize: \"1.38rem\",\n color: \"#5f6368\",\n marginLeft: \"5px\",\n cursor: \"pointer\",\n padding: theme.spacing(1)\n },\n appBar: {\n // height: theme.spacing(8.2),\n },\n toolbar: {},\n\n icon: {\n color: theme.palette.grey[700]\n },\n\n iconAdd: {\n color: theme.palette.grey[700]\n },\n leftContainer: {\n padding: theme.spacing(1),\n gap: theme.spacing(1)\n },\n contentContainer: {\n \"&>*\": {\n marginBottom: theme.spacing(2)\n }\n },\n // Drawer\n\n list: {\n width: theme.spacing(35)\n },\n\n DrawerIcon: {\n fontSize: theme.spacing(3),\n marginLeft: theme.spacing(2)\n },\n listItem: {\n borderTopRightRadius: theme.spacing(4),\n borderBottomRightRadius: theme.spacing(4),\n padding: theme.spacing(3, 0),\n width: theme.spacing(30)\n },\n listItemClass: {\n borderTopRightRadius: theme.spacing(4),\n borderBottomRightRadius: theme.spacing(4),\n padding: theme.spacing(2, 0),\n width: theme.spacing(30)\n },\n listItemText: {\n fontWeight: \"bold\",\n fontSize: theme.spacing(2),\n color: theme.palette.grey[700]\n },\n classAvatar: { margin: theme.spacing(0, 2) },\n link: {\n textDecoration: \"none\"\n },\n tabs: {\n flexGrow: 1\n },\n tabContainer: {\n width: theme.spacing(13),\n height: theme.spacing(8.2),\n cursor: \"pointer\",\n \"&:focus\": {\n \"&:hover\": {\n background: \"#e8f0fe\"\n },\n \"& span\": {\n width: theme.spacing(13),\n height: theme.spacing(0.5),\n background: theme.palette.primary.main,\n position: \"relative\",\n bottom: theme.spacing(-2.5),\n borderTopRightRadius: theme.spacing(3),\n borderTopLeftRadius: theme.spacing(3)\n }\n },\n \"&>*\": {\n fontSize: theme.spacing(1.8),\n fontWeight: 600,\n color: theme.palette.grey[700]\n }\n },\n tabContainerCurrent: {\n width: theme.spacing(13),\n height: theme.spacing(8.2),\n cursor: \"pointer\",\n \"&:hover\": {\n background: \"#e8f0fe\"\n },\n \"& span\": {\n width: theme.spacing(13),\n height: theme.spacing(0.5),\n background: theme.palette.primary.main,\n position: \"relative\",\n bottom: theme.spacing(-2.5),\n borderTopRightRadius: theme.spacing(3),\n borderTopLeftRadius: theme.spacing(3)\n },\n\n \"&>*\": {\n fontSize: theme.spacing(1.8),\n fontWeight: 600,\n color: theme.palette.grey[700]\n }\n }\n}));\n\nconst TopBar = ({ type, alert, refetch, failure, tab, ...moreProps }) => {\n const { slug, id } = useParams();\n const history = useHistory();\n const classes = useStyles();\n const [createClassState, reverseCreateClassState] = useReducer(\n state => !state,\n false\n );\n const [drawerState, reverseDrawerState] = useReducer(state => !state, false);\n const { handleTabsChange, info, logout } = useContext(Navigation);\n // Menu Logic\n const { classAnchor } = useContext(ClassAnchor);\n const [anchor, setAnchor] = useState(null);\n const openMenu = event => {\n setAnchor(event.currentTarget);\n };\n const closeMenu = () => {\n setAnchor(null);\n };\n const cookies = new Cookies();\n const { user } = useContext(Navigation);\n const layout = useLayout();\n const types = () => {\n if (type === \"stream\")\n return (\n \n \n \n {l1.stream}\n \n \n \n\n \n \n {l1.classwork}\n \n \n \n \n \n {l1.people}\n \n \n \n \n \n \n {l1.marks}\n \n \n \n \n \n );\n if (type === \"classwork\")\n return (\n \n \n \n {l1.stream}\n \n \n \n\n \n \n {l1.classwork}\n \n \n \n \n \n {l1.people}\n \n \n \n \n \n \n {l1.marks}\n \n \n \n \n \n );\n if (type === \"people\")\n return (\n \n \n \n {l1.stream}\n \n \n \n\n \n \n {l1.classwork}\n \n \n \n \n \n {l1.people}\n \n \n \n\n \n {\" \"}\n \n {\n handleTabsChange(\"Marks\");\n }}\n >\n {l1.marks}\n \n \n \n \n \n );\n if (type === \"marks\")\n return (\n \n \n \n {l1.stream}\n \n \n \n\n \n \n {l1.classwork}\n \n \n \n \n \n {l1.people}\n \n \n \n \n \n \n {l1.marks}\n \n \n \n \n \n );\n if (type === \"Quiz\")\n return (\n \n {\n moreProps.setQuizMode(\"EDIT\");\n }}\n >\n {l1.edit}\n \n \n\n {\n moreProps.setQuizMode(\"PREVIEW\");\n }}\n >\n {l1.preview}\n \n \n \n );\n if ([\"ViewAssignment\", \"ViewQuestion\"].includes(type))\n return (\n \n \n \n {type === \"ViewQuestion\" ? l1.thequestion : l1.theAssignment}\n \n \n \n\n \n \n history.push(`/class/${slug}/classwork/${id}/answers`)\n }\n >\n {l1.answers}\n \n \n \n \n );\n\n if ([\"QuestionAnswers\", \"AssignmentAnswers\"].includes(type))\n return (\n \n \n history.push(`/class/${slug}/classwork/${id}/details`)\n }\n >\n \n {type === \"QuestionAnswers\" ? l1.thequestion : l1.theAssignment}\n \n \n \n\n \n \n {l1.answers}\n \n \n \n \n );\n if (type === \"ViewMaterial\")\n return (\n \n \n {l1.material}\n \n \n \n );\n if (type === \"admin\")\n return (\n \n {tab === \"editLanding\" ? (\n history.push(\"/admin-panel/center-info\")}\n >\n {l1.editLanding}\n \n \n ) : (\n history.push(\"/admin-panel/center-info\")}\n >\n {l1.editLanding}\n \n \n )}\n {tab === \"events\" ? (\n history.push(\"/admin-panel/events\")}\n >\n {l1.events}\n \n \n ) : (\n history.push(\"/admin-panel/events\")}\n >\n {l1.events}\n \n \n )}\n {tab === \"students\" ? (\n history.push(\"/admin-panel\")}\n >\n {l1.students}\n \n \n ) : (\n history.push(\"/admin-panel\")}\n >\n {l1.students}\n \n \n )}\n {tab === \"banned\" ? (\n history.push(\"/admin-panel/banned\")}\n >\n {l1.banned}\n \n \n ) : (\n history.push(\"/admin-panel/banned\")}\n >\n {l1.banned}\n \n \n )}\n {tab === \"teachers\" ? (\n history.push(\"/admin-panel/teachers\")}\n >\n {l1.teachers}\n \n \n ) : (\n history.push(\"/admin-panel/teachers\")}\n >\n {l1.teachers}\n \n \n )}\n\n {tab === \"waiting\" ? (\n history.push(\"/admin-panel/waiting\")}\n >\n {l1.waiting}\n \n \n ) : (\n history.push(\"/admin-panel/waiting\")}\n >\n {l1.waiting}\n \n \n )}\n history.push(\"/admin-panel/staff\")}\n >\n {l1.staff}\n \n \n \n );\n return ;\n };\n return (\n \n \n \n \n \n \n \n \n \n {info.centerName}\n \n \n \n {layout ? types() : null}\n \n \n \n \n \n \n\n \n \n {\n history.push(\"/profile/edit\");\n }}\n >\n {l1.editProfile}\n \n {\n logout(() => {\n history.push(\"/\");\n });\n }}\n >\n {l1.logout}\n \n \n \n \n \n {/* Create Class */}\n \n \n \n {/* Drawer */}\n \n \n {layout ? null : types()}\n \n history.push(\"/admin-panel\")}\n >\n \n \n \n \n {l1.administration}\n \n \n \n history.push(\"/home\")}\n\n >\n \n \n \n\n \n {l1.classes}\n \n \n history.push(\"/calendar\")}\n >\n \n \n \n \n {l1.calendar}\n \n \n \n history.push(\"/files\")}\n >\n \n \n \n \n {l1.files}\n \n \n \n \n \n \n history.push(\"/review\")}\n >\n \n \n \n \n {l1.toReview}\n \n \n \n {info.classes.map(({ name, slug, isArchived }) => {\n if (isArchived) {\n return (\n \n \n \n \n {name.charAt(0)}\n \n \n {name}\n \n \n \n \n );\n } else {\n return (\n \n \n \n \n {name.charAt(0)}\n \n \n {name}\n \n \n \n \n );\n }\n })}\n \n \n \n );\n};\n\nexport default TopBar;\n","import React, { useContext, useReducer, useState } from \"react\";\nimport { l1 } from \"../components/local.json\";\nimport {\n Avatar,\n Box,\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n Grid,\n makeStyles,\n Menu,\n MenuItem,\n Typography,\n Paper,\n TextField\n} from \"@material-ui/core\";\nimport { BiDotsHorizontalRounded } from \"react-icons/bi\";\nimport TopBar from \"./common/TopBar\";\nimport { gql, useQuery, useMutation } from \"@apollo/client\";\nimport Loading from \"./common/Loading\";\nimport { Navigation } from \"../Context\";\nconst useStyles = makeStyles(theme => ({\n highOrder: {\n margin: theme.spacing(10, 30)\n },\n title: {\n fontSize: theme.spacing(3),\n fontWeight: 600,\n color: theme.palette.grey[700]\n },\n label: {\n marginLeft: theme.spacing(4)\n },\n paper: {\n padding: theme.spacing(3),\n margin: theme.spacing(4)\n },\n headContainer: {\n //margin: theme.spacing(0, 10),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n border: `1px solid ${theme.palette.grey[100]}`,\n background: `${theme.palette.grey[\"50\"]}30`,\n borderRadius: theme.spacing(2)\n },\n text: {\n color: theme.palette.primary.main,\n fontWeight: 600\n },\n iconHead: {\n color: \"#44566c\",\n margin: theme.spacing(0, 1)\n },\n container: {\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: \"white\",\n marginBottom: theme.spacing(1),\n cursor: \"pointer\"\n },\n avatar: {\n margin: theme.spacing(0, 1)\n },\n nameText: {},\n nameName: {\n color: \"#44566c\"\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n nameTitle: {\n color: \"#44566c\",\n fontSize: theme.spacing(1.4)\n },\n idId: {\n color: \"#8697a8\"\n },\n address: {\n color: \"#44566c\"\n },\n icon: {\n fontSize: theme.spacing(3),\n color: \"#8697a8\",\n marginLeft: theme.spacing(3)\n }\n}));\n\nconst GET_STUDENTS = gql`\n query GetStudent($id: ID!) {\n centersList(id: $id) {\n memberships(sort: \"createdAt:desc\", where: { status: \"ACTIVE\" }) {\n fullname\n user {\n id\n }\n email\n id\n fullname\n school\n specialty\n email\n field\n afterGraduate\n homeTel\n mobileTel\n hobbies\n birthDate\n object\n college\n address\n }\n }\n }\n`;\nconst GET_INFO = gql`\n query GetInfo($student: ID!, $id: ID!) {\n centersList(id: $id) {\n memberships(where: { student: $student }) {\n id\n fullname\n school\n specialty\n email\n field\n afterGraduate\n homeTel\n mobileTel\n hobbies\n birthDate\n object\n college\n address\n }\n }\n }\n`;\nconst DELETE_STUDENT = gql`\n mutation DeleteStudent($id: ID!) {\n deleteMembership(input: { where: { id: $id } }) {\n membership {\n id\n }\n }\n }\n`;\nconst BAN_STUDENT = gql`\n mutation BanStudent($id: ID!) {\n updateMembership(input: { where: { id: $id }, data: { status: BANNED } }) {\n membership {\n id\n }\n }\n }\n`;\n\nfunction AdminPanel() {\n const { centerId } = useContext(Navigation);\n\n //Apollo\n const { loading, data, refetch } = useQuery(GET_STUDENTS, {\n notifyOnNetworkStatusChange: true,\n variables: {\n id: centerId\n }\n });\n const [userInfoId, setUserInfoId] = useState(null);\n const [skipState, reverseSkipState] = useReducer(s => !s, true);\n const [state, reverseState] = useReducer(s => !s, false);\n // const { loading: loadingUserInfo, data: userInfo } = useQuery(GET_INFO, {\n // skip: skipState,\n // onCompleted: () => reverseState(),\n // variables: {\n // student: userInfoId,\n // id: centerId\n // }\n // });\n const [deleteStudent, { loading: loadingDelete }] = useMutation(\n DELETE_STUDENT,\n {\n onError: err => console.log(\"dase errris\", err),\n onCompleted: () => {\n console.log(\"student has been deleted\");\n refetch();\n }\n }\n );\n const [BanStudent, { loading: loadingBan }] = useMutation(BAN_STUDENT, {\n onError: err => console.log(\"dase errris\", err),\n onCompleted: () => {\n console.log(\"student has been banned\");\n refetch();\n }\n });\n const getUserInfo = () => {\n if (state) {\n const {\n fullname,\n school,\n specialty,\n email,\n field,\n afterGraduate,\n homeTel,\n mobileTel,\n hobbies,\n birthDate,\n object,\n college,\n address\n } = data.centersList.memberships;\n return (\n {\n reverseState();\n reverseSkipState();\n }}\n >\n \n \n {l1.formTitle}\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n }\n return \"\";\n };\n const classes = useStyles();\n if (loading || loadingDelete || loadingBan) return ;\n else {\n const students = data.centersList.memberships;\n return (\n \n \n \n \n \n \n {l1.username}\n \n \n \n \n {l1.id}\n \n \n \n \n {l1.email}\n \n \n\n \n \n {students.map(({ fullname, email, id, user }) => (\n <>\n {\n reverseSkipState();\n setUserInfoId(user);\n }}\n />\n {getUserInfo()}\n \n ))}\n \n \n );\n }\n\n function TableRow({ name, email, id, reverse }) {\n // Options Logic\n const [anchorPost, setAnchorPost] = useState(null);\n const openPostMenu = event => {\n setAnchorPost(event.currentTarget);\n };\n const closePostMenu = () => {\n setAnchorPost(null);\n };\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n const [confirmationBanState, reverseConfirmationBanState] = useReducer(\n state => !state,\n false\n );\n const classes = useStyles();\n return (\n \n \n reverse()}>\n \n \n \n {name}\n \n \n \n reverse()}>\n {id}\n \n reverse()}>\n {email}\n \n\n \n \n \n \n \n \n {l1.ban}\n \n \n {l1.delete}\n \n \n \n \n \n \n {l1.confirmation}\n \n \n \n {\n deleteStudent({\n variables: {\n id\n }\n });\n }}\n >\n {l1.confirm}\n \n \n \n \n \n \n \n \n {l1.confirmation}\n \n \n \n {\n BanStudent({\n variables: {\n id\n }\n });\n }}\n >\n {l1.confirm}\n \n \n \n \n \n );\n }\n}\nexport default AdminPanel;\n","export const similarityScore = (reference, source) => {\n /**\n * compares properties of two objects, and returns a score of similarity between 0 and 1.\n */\n const keys = Object.keys(reference)\n const maxScore = keys.length\n const score = keys.reduce((prev, key) => prev + (JSON.stringify(reference[key]) === JSON.stringify(source[key]) ? 1 : 0), 0)\n return score / maxScore\n}\n\nexport const staticUrl = path => process.env.REACT_APP_STRAPI_BACKEND_URL + path \n ","import React, { useReducer, useState } from \"react\";\nimport {\n Avatar,\n Box,\n Divider,\n makeStyles,\n MenuItem,\n Typography,\n Select,\n InputAdornment,\n Input,\n Link,\n Button\n} from \"@material-ui/core\";\nimport TopBar from \"./common/TopBar\";\nimport { l1 } from \"./local.json\";\n\nimport { gql, useMutation, useQuery } from \"@apollo/client\";\nimport { useParams } from \"react-router-dom\";\nimport Loading from \"./common/Loading\";\nimport { staticUrl } from \"./common/utils\";\n\nconst useStyles = makeStyles(theme => ({\n answersHeader: {\n height: theme.spacing(8),\n borderBottom: \"solid 1px lightgray\"\n },\n sidebar: {\n width: \"28rem\",\n borderRight: \"solid 1px lightgray\"\n },\n noWorksFound: {\n width: \"100%\",\n textAlign: \"center\",\n padding: theme.spacing(4, 2)\n },\n mainContent: {\n padding: theme.spacing(2),\n flexGrow: 1\n },\n searchFilter: {\n gap: theme.spacing(2),\n padding: theme.spacing(2),\n borderBottom: \"solid 1px lightgray\"\n },\n filterMenu: {\n minWidth: 100\n },\n studentWorkCard: {\n gap: theme.spacing(2),\n padding: theme.spacing(1, 0, 1, 2),\n borderBottom: \"solid 1px lightgray\",\n height: 64,\n \"&:hover\": {\n cursor: \"pointer\",\n studentWorkName: {\n color: \"green\",\n textDecoration: \"underline\"\n }\n },\n \"&:hover, &:focus-within, &.active\": {\n backgroundColor: \"#eee\"\n }\n },\n studentWorkAvatar: {\n width: 32,\n height: 32\n },\n studentWorkName: {\n fontWeight: \"bold\",\n flexGrow: 1\n },\n studentWorkGradeContainer: {\n fontSize: theme.spacing(2),\n fontWeight: 700,\n height: \"100%\",\n // borderLeft: \"solid 1px lightgray\",\n maxWidth: \"8.25rem\",\n minWidth: \"8.25rem\",\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n alignItems: \"flex-start\",\n padding: theme.spacing(2),\n \"&:hover\": {\n cursor: \"text\"\n }\n },\n studentWorkGrade: {\n color: \"green\",\n fontWeight: 700,\n fontSize: theme.spacing(2)\n },\n stats: {\n marginTop: theme.spacing(3),\n width: \"max-content\",\n borderRight: `1px ${theme.palette.grey[400]} solid`,\n padding: theme.spacing(0, 2),\n \"&:last-child\": {\n borderRight: 0\n }\n },\n statsNumber: {\n textAlign: \"left\",\n fontWeigh: 900,\n fontSize: theme.spacing(5)\n },\n statsText: {\n color: theme.palette.grey[600],\n textAlign: \"left\"\n },\n submittedWorks: {\n marginTop: theme.spacing(4)\n },\n studentWorkSubmission: {\n borderBottom: \"solid 1px lightgray\",\n padding: theme.spacing(2, 0, 1, 0.5)\n },\n studentWorkSubmissionHeader: {\n gap: theme.spacing(2)\n },\n studentWorkSubmissionDetails: {\n paddingLeft: theme.spacing(6)\n },\n clickable: {\n color: \"green\",\n cursor: \"pointer\"\n }\n}));\n\nconst QUERY_ASSIGNMENT = gql`\n query QueryAssignment($id: ID!) {\n assignment(id: $id) {\n title\n type\n description\n grade\n studentWorks {\n id\n student {\n id\n fullname\n #avatar {\n # url\n #}\n }\n file\n status\n submission\n submittedAt\n grade\n gradedBy {\n id\n }\n gradedAt\n }\n }\n }\n`;\n\nconst UPDATE_STUDENT_WORK = gql`\n mutation SubmitStudentWork($id: ID!, $fields: editStudentWorkInput!) {\n updateStudentWork(input: { where: { id: $id }, data: $fields }) {\n studentWork {\n id\n status\n grade\n }\n }\n }\n`;\n\nfunction AnswersRoot({ data, handlers }) {\n const c = useStyles();\n const { id } = useParams();\n const [assignment, setAssignment] = useState(null);\n\n const { loading } = useQuery(QUERY_ASSIGNMENT, {\n variables: { id },\n onError: error => {\n console.log(\"QueryAssignmentError: \", error);\n setError(true);\n },\n onCompleted: response => {\n console.log(\"QueryAssignmentSuccess: \", response);\n data.studentWorks = groupStudentWorks(response.assignment.studentWorks);\n data.assignment = response.assignment;\n setAssignment(data.assignment);\n setReady(true);\n },\n notifyOnNetworkStatusChange: true\n });\n\n const groupStudentWorks = works => {\n const groups = {\n all: works,\n assigned: works.filter(work => work.status === \"assigned\"),\n submitted: works.filter(work => work.status === \"submitted\"),\n graded: works.filter(work => work.status === \"graded\")\n };\n return {\n statistics: {\n all: works.length,\n assigned: groups.assigned.length,\n submitted: groups.submitted.length,\n graded: groups.graded.length\n },\n groups\n };\n };\n const [ready, setReady] = useState(false);\n const [error, setError] = useState(false);\n\n return loading ? (\n \n ) : ready ? (\n \n \n\n \n\n \n \n \n \n \n ) : error ? (\n l1.anErrorHappened + \". \" + l1.refreshToRetry\n ) : null;\n}\n\nfunction AnswersSidebar({ data, handlers }) {\n const c = useStyles();\n const [, forceUpdate] = useReducer(x => !x, false);\n handlers.updateSidebar = forceUpdate;\n const [statusFilter, setStatusFilter] = useState(\"all\");\n handlers.setStatusFilter = setStatusFilter;\n\n return !data.studentWorks?.statistics?.all ? (\n \n {l1.noWorksFound}\n \n ) : (\n \n \n {l1.filterWorksByStatus}\n {\n handlers.setStatusFilter(event.target.value);\n data.selectedWork = null;\n handlers.updateSidebar();\n }}\n >\n {[\"all\", \"assigned\", \"submitted\", \"graded\"].map(status =>\n !data.studentWorks.statistics[status] ? null : (\n \n \n {l1[`work${status}`]} ({data.studentWorks.statistics[status]})\n \n \n )\n )}\n \n \n {data.studentWorks.groups[statusFilter].map((work, index) => (\n {\n data.selectedWork = work.id;\n handlers.updateContent();\n handlers.updateSidebar();\n }}\n >\n \n \n {work.student.fullname}\n \n {\n \n }\n \n ))}\n \n );\n}\n\nfunction AnswersContent({ data, handlers }) {\n const c = useStyles();\n const [, forceUpdate] = useReducer(x => !x, false);\n handlers.updateContent = forceUpdate;\n const submittedWorks = data.studentWorks\n ? data.studentWorks.groups.all.filter(work => work.submission !== null)\n : [];\n return (\n \n \n {data.assignment.title}\n \n \n {data.selectedWork ? (\n data.studentWorks?.groups.all.map(work =>\n work.id !== data.selectedWork ? null : (\n \n )\n )\n ) : (\n \n \n {[\"all\", \"assigned\", \"submitted\", \"graded\"].map(status => {\n let count = data.studentWorks.statistics[status];\n return (\n {\n handlers.setStatusFilter(status);\n }\n : null\n }\n >\n {count}\n \n {l1[\"work\" + status]}\n \n \n );\n })}\n \n {submittedWorks.length > 0 ? (\n \n \n {l1.submittedWorks}\n \n {submittedWorks.map((work, index) => (\n \n \n \n \n {work.student.fullname}\n \n \n {[\"question\", \"assignment\"].includes(data.assignment.type) ? (\n \n ) : data.assignment.type === \"quiz\" ? (\n \n {work.submission.totalQuestions}\n {l1.slash}\n {work.submission.totalCorrect}\n {l1.correctAnswers}\n \n ) : null}\n \n ))}\n \n ) : null}\n \n )}\n \n );\n}\nexport default function Answers() {\n let handlers = {};\n let data = {\n assignment: null,\n studentWorks: {},\n selectedWork: null\n };\n return ;\n}\n\nexport function StudentWorkGradeEditor({ studentWork, maxGrade }) {\n const c = useStyles();\n const [grade, setGrade] = useState(studentWork.grade);\n const [editMode, setEditMode] = useState(false);\n const [errorUpdating, setErrorUpdating] = useState(false);\n\n const [updateStudentWork, { loading: updatingStudentWork }] = useMutation(\n UPDATE_STUDENT_WORK,\n {\n onError: error => {\n console.log(\"mutationUpdateStudentWork Error\", error);\n setErrorUpdating(true);\n },\n onCompleted: response => {\n console.log(\"mutationUpdateStudentWork Success\", response);\n studentWork.status = response.updateStudentWork.studentWork.status;\n studentWork.grade = response.updateStudentWork.studentWork.grade;\n }\n }\n );\n\n // const {}\n const processGrade = e => {\n const newGrade = grade === \"\" ? null : parseInt(grade);\n setGrade(newGrade);\n console.log(studentWork, newGrade);\n if (studentWork.grade !== newGrade) {\n updateStudentWork({\n variables: {\n id: studentWork.id,\n fields: {\n grade: newGrade,\n status:\n newGrade !== null\n ? \"graded\"\n : studentWork.submittedAt\n ? \"submitted\"\n : \"assigned\"\n // gradedBy: new !== null ? currentUser.id : null\n // gradedAt: calculate in strapi's lifecycle.beforeUpdate\n }\n }\n });\n } else {\n console.log(\"Same grade\");\n }\n setEditMode(false);\n };\n\n return editMode ? (\n \n {\n setGrade(e.target.value);\n }}\n endAdornment={\n \n {l1.slash}\n {maxGrade}\n \n }\n onKeyPress={e => {\n if (e.charCode === 13) {\n processGrade(e);\n }\n }}\n onBlur={processGrade}\n />\n \n ) : (\n {\n setEditMode(true);\n event.stopPropagation();\n }}\n tabIndex=\"1\"\n >\n \n {grade || (\n \n )}\n \n {l1.slash}\n {maxGrade}\n \n \n \n {updatingStudentWork\n ? l1.saving + \"...\"\n : errorUpdating\n ? l1.error\n : l1[\"work\" + studentWork.status]}\n \n \n );\n}\n\nfunction StudentWorkSubmission({ studentWork, maxGrade, assignmentType }) {\n const c = useStyles();\n const [feedback] = useState(studentWork.feedback);\n const [editMode, setEditMode] = useState(false);\n const [, setErrorUpdating] = useState(false);\n const [updateStudentWork /*{ loading: updatingStudentWork }*/] = useMutation(\n UPDATE_STUDENT_WORK,\n {\n onError: error => {\n console.log(\"mutationUpdateStudentWork Error\", error);\n setErrorUpdating(true);\n },\n onCompleted: response => {\n console\n .log(\"mutationUpdateStudentWork Success\", response)\n [(\"status\", \"feedback\", \"grade\", \"gradedAt\", \"gradedBy\")].forEach(\n field => {\n studentWork[field] =\n response.updateStudentWork.studentWork[field];\n }\n );\n }\n }\n );\n\n // const {}\n const processFeedback = () => {\n if (editMode) {\n const newFeedback = feedback === \"\" ? null : feedback;\n console.log(studentWork, feedback);\n if (studentWork.feedback !== newFeedback) {\n updateStudentWork({\n variables: {\n id: studentWork.id,\n fields: {\n feedback: newFeedback\n }\n }\n });\n } else {\n console.log(\"Same feedback, do nothing.\");\n }\n setEditMode(false);\n }\n };\n return (\n \n \n \n \n \n \n {studentWork.student.fullname}\n \n {assignmentType === \"assignment\" && studentWork.file ? (\n \n ) : null}\n\n {assignmentType === \"question\" ? (\n \n ) : null}\n {assignmentType === \"quiz\" ? (\n \n {studentWork.submission?.totalQuestions}\n {l1.slash}\n {studentWork.submission?.totalCorrect}\n {l1.correctAnswers}\n \n ) : null}\n \n \n \n\n \n\n {/* \n {l1.teacherFeedback}\n
\n
\n\n {\n editMode\n ? \n {setFeedback(e.target.value)}}\n onKeyPress={(e)=>{\n if(e.charCode === 13){\n processFeedback(e)\n }\n }}\n onBlur={processFeedback}/>\n \n : \n \n \n {feedback?.length ? : null}\n \n {\n feedback?.length\n ? \n : null\n }\n \n }\n
*/}\n \n );\n}\n","import React, { useContext, useRef, useState } from 'react';\n\nimport { Avatar, Box, Divider, InputBase, makeStyles } from '@material-ui/core';\nimport { AiOutlineSend } from 'react-icons/ai';\nimport { gql, useMutation } from '@apollo/client';\nimport { l1 } from '../local.json';\nimport Loading from './Loading';\nimport { Navigation } from '../../Context';\n\nconst useStyles = makeStyles((theme) => ({\n botContainer: {\n minWidth: '100%',\n },\n avatar: {\n margin: theme.spacing(2),\n },\n\n inputContainer: {\n border: `1px solid lightgrey`,\n borderRadius: theme.spacing(4),\n marginRight: theme.spacing(4),\n },\n input: {\n marginLeft: theme.spacing(2),\n },\n inputIcon: {\n transform: 'scaleX(-1)',\n margin: theme.spacing(0, 1),\n fontSize: theme.spacing(3),\n cursor: 'pointer',\n color: theme.palette.grey[500],\n },\n options: {\n marginRight: theme.spacing(2),\n },\n menuItem: {\n paddingRight: theme.spacing(10),\n },\n announcement: {\n fontSize: theme.spacing(3),\n // margin: theme.spacing(2),\n cursor: 'pointer',\n color: 'grey',\n },\n editPostContainer: {\n margin: theme.spacing(0, 5),\n },\n editPostTextField: {\n background: theme.palette.grey[100],\n marginBottom: theme.spacing(2),\n },\n editPostButtons: {\n gap: theme.spacing(2),\n },\n}));\nconst ADD_COMMENT = gql`\n mutation CreatComment($content: String!, $writer: ID!, $post: ID!) {\n createComment(input: { data: { content: $content, writer: $writer, post: $post } }) {\n comment {\n id\n content\n }\n }\n }\n`;\nconst ADD_COMMENT_ASSIGNMENT = gql`\n mutation CreatCommentAssignment($content: String!, $writer: ID!, $assignment: ID!) {\n createComment(input: { data: { content: $content, writer: $writer, assignment: $assignment } }) {\n comment {\n id\n content\n }\n }\n }\n`;\nfunction CreateComment({ query, id, assignment, refetch, alert, failure }) {\n const { user } = useContext(Navigation);\n // Apollo\n const [createComment, { loading: loadingCreateComment }] = useMutation(ADD_COMMENT, {\n onError: (error) => {\n console.log('mutationCreateComment error: ', error);\n failure(l1.failure);\n },\n onCompleted: (data) => {\n refetch();\n alert(l1.commentsuccess);\n setComment('');\n },\n // refetchQueries: [\n // {\n // query: query,\n // variables: {\n // slug,\n // },\n // },\n // ],\n });\n const [createCommentAssignment, { loading: loadingCreateCommentAssignment }] = useMutation(ADD_COMMENT_ASSIGNMENT, {\n onError: (error) => {\n console.log('mutationCreateCommentAssignment error: ', error);\n failure(l1.failure);\n },\n onCompleted: (data) => {\n refetch();\n alert(l1.commentsuccess);\n setComment('');\n },\n // refetchQueries: [\n // {\n // query: query,\n // variables: {\n // id,\n // },\n // },\n // ],\n });\n // Inputs Logic\n const [comment, setComment] = useState('');\n const commentRef = useRef();\n\n const classes = useStyles();\n return (\n <>\n {loadingCreateComment || loadingCreateCommentAssignment ? (\n \n ) : (\n <>\n \n \n \n \n {\n setComment(commentRef.current.value);\n }}\n />\n {\n assignment\n ? createCommentAssignment({\n variables: {\n writer: user.id,\n content: comment,\n assignment: id,\n },\n })\n : createComment({\n variables: {\n writer: user.id,\n content: comment,\n post: id,\n },\n });\n setComment('');\n }}\n />\n \n \n \n )}\n \n );\n}\n\nexport default CreateComment;\n","import React, { useRef, useState, useContext } from \"react\";\n\nimport {\n Avatar,\n Box,\n Button,\n makeStyles,\n Menu,\n MenuItem,\n TextField,\n Typography\n} from \"@material-ui/core\";\nimport { BiDotsVerticalRounded } from \"react-icons/bi\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport { l1 } from \"../local.json\";\nimport Loading from \"./Loading\";\nimport moment from \"moment\";\nimport { Navigation } from \"../../Context\";\n\nconst useStyles = makeStyles(theme => ({\n container: {\n borderRadius: theme.spacing(1),\n marginBottom: theme.spacing(2)\n },\n topSection: {\n margin: theme.spacing(1, 2, 2, 1)\n },\n avatar: {\n margin: theme.spacing(2)\n },\n name: {\n fontWeight: 600\n },\n date: {\n fontSize: theme.spacing(1.6),\n color: theme.palette.grey[600]\n },\n post: {\n marginLeft: theme.spacing(2),\n \"&>*\": {}\n },\n midSection: {\n // marginBottom: theme.spacing(2),\n },\n stats: {\n margin: theme.spacing(1, 0)\n },\n statsIcon: {\n color: theme.palette.grey[700],\n fontSize: theme.spacing(3),\n margin: theme.spacing(0, 1)\n },\n statsText: {\n fontWeight: 600,\n color: theme.palette.grey[700]\n },\n midNameBox: {\n gap: theme.spacing(1.4)\n },\n inputContainer: {\n border: `1px solid lightgrey`,\n borderRadius: theme.spacing(4),\n marginRight: theme.spacing(4)\n },\n input: {\n marginLeft: theme.spacing(2)\n },\n inputIcon: {\n transform: \"scaleX(-1)\",\n margin: theme.spacing(0, 1),\n fontSize: theme.spacing(3),\n cursor: \"pointer\",\n color: theme.palette.grey[500]\n },\n options: {\n marginRight: theme.spacing(2)\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n announcement: {\n fontSize: theme.spacing(3),\n // margin: theme.spacing(2),\n cursor: \"pointer\",\n color: \"grey\"\n },\n editPostContainer: {\n margin: theme.spacing(0, 5)\n },\n editPostTextField: {\n background: theme.palette.grey[100],\n marginBottom: theme.spacing(2)\n },\n editPostButtons: {\n gap: theme.spacing(2)\n }\n}));\n\nconst EDIT_COMMENT = gql`\n mutation EditComment($id: ID!, $content: String!) {\n updateComment(input: { where: { id: $id }, data: { content: $content } }) {\n comment {\n content\n }\n }\n }\n`;\nconst DELETE_COMMENT = gql`\n mutation DeleteComment($id: ID!) {\n deleteComment(input: { where: { id: $id } }) {\n comment {\n content\n }\n }\n }\n`;\n\nfunction Comment({\n id,\n content,\n fullname,\n alert,\n failure,\n refetch,\n createdAt,\n writerEmail\n}) {\n const [editComment, { loading: loadingEditComment }] = useMutation(\n EDIT_COMMENT,\n {\n onError: error => {\n console.log(\"mutationEditComment error: \", error);\n failure(l1.failure);\n },\n onCompleted: () => {\n refetch();\n alert(l1.editsuccess);\n setEditCommentState(false);\n }\n }\n );\n const [deleteComment, { loading: loadingDeleteComment }] = useMutation(\n DELETE_COMMENT,\n {\n onError: error => {\n console.log(\"mutationDeleteComment error: \", error);\n failure(l1.failure);\n },\n onCompleted: () => {\n refetch();\n alert(l1.deletesuccess);\n }\n }\n );\n // Edit State Indicator\n const [editCommentState, setEditCommentState] = useState(false);\n // Inputs Logic\n const [comment, setComment] = useState(content);\n const commentRef = useRef();\n\n // Options Logic\n\n const [anchorComment, setAnchorComment] = useState(null);\n const openCommentMenu = event => {\n setAnchorComment(event.currentTarget);\n };\n const closeCommentMenu = () => {\n setAnchorComment(null);\n };\n const { user } = useContext(Navigation);\n console.log(\"user\", user.email);\n console.log(\"userWriter\", writerEmail);\n const classes = useStyles();\n return (\n <>\n {loadingDeleteComment || loadingEditComment ? (\n \n ) : (\n <>\n \n \n \n \n {fullname}\n \n {moment(createdAt).fromNow()}\n \n \n \n {editCommentState ? (\n \n {\n setComment(commentRef.current.value);\n }}\n />\n \n {\n editComment({\n variables: {\n id,\n content: comment\n }\n });\n }}\n >\n {l1.edit}\n \n {\n setEditCommentState(false);\n }}\n >\n {l1.cancel}\n \n \n \n ) : (\n content\n )}\n \n \n \n {user.email === writerEmail ? (\n \n ) : null}\n\n \n {\n setEditCommentState(true);\n }}\n >\n {l1.edit}\n \n {\n deleteComment({\n variables: {\n id\n }\n });\n }}\n >\n {l1.delete}\n \n \n \n \n \n )}\n \n );\n}\n\nexport default Comment;\n","import React, { useState, useContext } from \"react\";\nimport { Editor } from \"react-draft-wysiwyg\";\nimport \"react-draft-wysiwyg/dist/react-draft-wysiwyg.css\";\nimport { Box, makeStyles, Button, CircularProgress } from \"@material-ui/core\";\nimport { EditorState } from \"draft-js\";\nimport \"./Drafter2.css\";\nimport { convertToHTML } from \"draft-convert\";\nimport DOMPurify from \"dompurify\";\nimport { l1 } from \"../local.json\";\nimport { CgAttachment } from \"react-icons/cg\";\nimport { stateFromHTML } from \"draft-js-import-html\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport { Navigation } from \"../../Context\";\n\nconst UPLOAD = gql`\n mutation($file: Upload!) {\n upload(file: $file) {\n name\n id\n }\n }\n`;\nconst useStyles = makeStyles(theme => ({\n container: {\n width: \"100%\"\n },\n postBottomContainer: {\n marginTop: theme.spacing(2)\n }\n}));\nfunction Drafter2({\n mutation,\n preview,\n noUpload,\n reverse,\n id,\n raw,\n edit,\n setContent,\n assignment,\n centerEvent = false\n}) {\n const { user } = useContext(Navigation);\n\n /// Edit Mode\n const [editorEditState, setEditorEditState] = useState(() =>\n EditorState.createWithContent(stateFromHTML(raw))\n );\n const handleEditorEditChange = state => {\n convertEditContentToHTML(state);\n setEditorEditState(state);\n };\n const [convertedEditContent, setConvertedEditContent] = useState();\n\n const convertEditContentToHTML = state => {\n let currentContentAsHTML = convertToHTML(state.getCurrentContent());\n if (centerEvent) {\n console.log('centerevent')\n setContent(currentContentAsHTML);\n }\n setConvertedEditContent(currentContentAsHTML);\n };\n ///////\n const [editorState, setEditorState] = useState(() =>\n EditorState.createEmpty()\n );\n // Assignment\n const [convertedContent, setConvertedContent] = useState();\n const handleEditorChange = state => {\n convertContentToHTML(state);\n setEditorState(state);\n };\n const convertContentToHTML = state => {\n let currentContentAsHTML = convertToHTML(state.getCurrentContent());\n if (assignment) {\n setContent(currentContentAsHTML);\n }\n if (centerEvent) {\n setContent(currentContentAsHTML);\n }\n setConvertedContent(currentContentAsHTML);\n };\n\n const createMarkup = html => {\n return {\n __html: DOMPurify.sanitize(html)\n };\n };\n const [file, setFile] = useState();\n const [uploadFile, { data, loading }] = useMutation(UPLOAD, {\n onError: error => {\n console.log(error);\n },\n onCompleted: data => {\n console.log(data);\n }\n });\n const classes = useStyles();\n if (preview)\n return (\n \n );\n return (\n \n \n {edit ? (\n \n ) : (\n \n )}\n \n {assignment && edit ? (\n \n {\n mutation({\n variables: {\n id,\n description: convertedEditContent,\n attachments: data?.upload?.id\n }\n });\n }}\n >\n {l1.edit}\n \n \n ) : (\n \"\"\n )}\n {assignment || noUpload ? (\n \"\"\n ) : (\n \n {\n if (file)\n uploadFile({\n variables: {\n file\n }\n });\n }}\n startIcon={loading ? : }\n type=\"upload\"\n >\n setFile(e.target.files[0])} />\n {l1.add}\n \n \n \n \n\n {edit ? (\n \n {\n mutation({\n variables: {\n id,\n content: convertedEditContent,\n attachments: data?.upload?.id\n }\n });\n }}\n >\n {l1.edit}\n \n \n ) : (\n {\n mutation({\n variables: {\n writer: user.id,\n content: convertedContent,\n class: id,\n attachments: data?.upload?.id\n }\n });\n }}\n >\n {l1.post}\n \n )}\n \n \n )}\n \n );\n}\n\nexport default Drafter2;\n","import React from 'react'\nimport {useState, useReducer, useEffect} from 'react'\nimport {\n makeStyles,\n Box,\n Paper,\n Popper,\n TextField,\n RadioGroup,\n Radio,\n Checkbox,\n FormControlLabel,\n Button,\n IconButton,\n ClickAwayListener,\n MenuList,\n MenuItem,\n Typography,\n Divider,\n Grid,\n} from '@material-ui/core'\nimport {similarityScore} from './common/utils'\n\nimport {FaPlus, FaMinus, FaTimes, FaTrashAlt, FaCheck} from 'react-icons/fa';\nimport {IoText} from 'react-icons/io5';\nimport {TiSortNumerically} from 'react-icons/ti';\nimport {BsCheck2Circle, BsCheck2Square} from 'react-icons/bs';\n\nimport { l1 } from './local.json';\nfunction makeArrayOf(value, length) {\n var arr = [],\n i = length;\n while (i--) {\n arr[i] = value;\n }\n return arr;\n}\nconst arabicIndex = 'أبجدهوزحطيكلمنسعفصقرشتثخذ';\n\nconst useStyles = makeStyles((theme) => ({\n container: {\n margin: theme.spacing(2, 0),\n padding: theme.spacing(2),\n },\n title: {\n fontSize: theme.spacing(5),\n fontWieght: 'bold',\n // color: theme.palette.primary.main,\n },\n description: {\n fontSize: theme.spacing(3),\n lineHeight: '1.5',\n color: '#3c3c3c',\n },\n descriptionContainer: {\n marginTop: theme.spacing(2),\n },\n divider: {\n flexGrow: 1,\n margin: theme.spacing(2, 0),\n },\n alert: {\n fontSize: theme.spacing(1.6),\n color: theme.palette.grey[600],\n },\n iconContainer: {\n backgroundColor: theme.palette.primary.main,\n marginTop: theme.spacing(1.4),\n marginLeft: theme.spacing(-7),\n },\n menuItem: {\n paddingRight: theme.spacing(10),\n },\n addQuestionMenu: {\n zIndex: '1',\n },\n questionContainer: {\n marginTop: theme.spacing(2),\n border: 0,\n padding: theme.spacing(2),\n boxShadow: '0 3px 3px gray',\n borderRadius: 4,\n \"& .MuiTextField-root\":{\n background: \"#fff\",\n borderRadius: 4,\n },\n '& .MuiFormControlLabel-root .MuiTextField-root': {\n marginTop: 0,\n },\n QuestionText: {\n margin: '0 0 16px 0',\n },\n },\n sectionTitle: {\n marginTop: theme.spacing(4),\n marginBottom: theme.spacing(2),\n },\n correctAnswer: {\n color:\"green\",\n display: \"flex\",\n alignItems: \"center\",\n gap: theme.spacing(1),\n },\n incorrectAnswer: {\n color:\"red\",\n display: \"flex\",\n alignItems: \"center\",\n gap: theme.spacing(1),\n }\n}));\n\nconst questionTypes = {\n text: {label:l1.shortAnswer, icon: },\n number: {label:l1.numberInput, icon: },\n radio: {label:l1.multipleChoice, icon: },\n checkboxes: {label: l1.checkboxes, icon: },\n}\n\nfunction renderWidgetForType(type, id, props, answerUpdateCallback, validity, readOnly, correctAnswer, initialValue ){\n switch (type){\n case 'text':\n return \n case 'number':\n return \n case 'radio':\n return \n case 'checkboxes':\n return \n default:\n return

No answer widget of type '{type}' exists

;\n }\n}\n\nexport const QuizModes = {\n EDIT: 0,\n PREVIEW: 1,\n VIEW: 2,\n RESULTS: 3,\n};\n\nfunction EditQuiz({quiz}) {\n // Force update when called\n\n const c = useStyles();\n const [, forceUpdate] = useReducer((x) => x + 1, 0);\n const deleteQuestion = (index) => {\n delete quiz.correctAnswers[quiz.questions[index].id]\n quiz.questions.splice(index, 1)\n }\n\n return(\n \n {quiz.title = event.target.value; forceUpdate()}} error={!Boolean(quiz.title)} helperText={Boolean(quiz.title) ? '' : l1.quizTitleCannotBeEmpty } />\n {quiz.description = event.target.value}} />\n\n {l1.instructions}\n \n \n \n\n {l1.theQuestions}\n \n
\n {quiz.questions.map(\n (question, index)=> )\n }\n
\n
\n )\n}\n\nfunction ViewQuiz({quiz, preview=false, readOnly=false, studentAnswers, submitAction=null }) {\n const c = useStyles()\n var answers = studentAnswers\n const answerUpdateCallback = (id, answer, isValid) => {\n answers[id] = JSON.parse(JSON.stringify(answer))\n validity[id] = isValid\n }\n const showAnswers = readOnly && quiz.correctAnswers\n const totalQuestions = Object.keys(quiz.questions).length\n const totalCorrect = showAnswers ? similarityScore(quiz.correctAnswers, studentAnswers): null\n\n var validity = {};\n console.log(\"view quiz answers\", answers)\n return (\n \n {quiz.title}\n\n {quiz.description}\n\n { readOnly || (quiz.instructions && !quiz.instructions.join('').length === 0)\n ? null\n :
\n {l1.instructions}\n
    \n {quiz.instructions.map((instruction, index) => (instruction.length > 0) ?
  • {instruction}
  • : null)}\n
\n
\n }\n\n \n {l1.theQuestions}\n {\n showAnswers ? {l1.totalCorrectAnswers}: {totalCorrect} {l1.slash} {totalQuestions} : null\n }\n\n
{\n console.log(submitAction)\n event.preventDefault()\n if(!preview && submitAction){\n submitAction(answers)\n }\n else{\n alert(JSON.stringify(answers))\n }\n }\n } >\n {quiz.questions.map((question, index)=>{\n let widget = renderWidgetForType(question.type, question.id, question.widgetProps, answerUpdateCallback, validity, readOnly, quiz?.correctAnswers?.[question.id], studentAnswers[question.id])\n return(\n \n {index+1}. {question.text} \n {question.helpText ?

{question.helpText}

: null}\n {widget}\n
\n )\n })}\n


\n { !readOnly ? : null}\n
\n \n
\n )\n}\n\nfunction TextInputAnswer({updateAnswer, id, placeholder=null, initialValue=null, answerUpdateCallback, readOnly=false, correctAnswer=null}){\n const c = useStyles()\n const [valid, setValid] = useState(true)\n\n const handleChange = (event) => {\n let answer = event.target.value;\n let validity = answer !== '';\n answerUpdateCallback(id, answer, validity);\n setValid(validity);\n };\n\n return (\n \n \n {\n correctAnswer\n ? (correctAnswer === initialValue\n ? \n {l1.answerCorrect}\n \n : \n {l1.correctAnswer}: {correctAnswer}\n )\n : null\n }\n \n )\n}\n\nfunction NumberInputAnswer({id, min=null, max=null, initialValue=null, answerUpdateCallback, readOnly=false, correctAnswer=null}){\n const c = useStyles()\n const [valid, setValid] = useState(true)\n\n const handleChange = (event) => {\n let answer = event.target.value\n let validity = (\n (answer !== '')\n && (min === null || parseInt(answer) >= min)\n && (max === null || parseInt(answer) <= max)\n )\n answerUpdateCallback(id, parseInt(answer), validity)\n setValid(validity)\n }\n return \n \n {\n correctAnswer\n ? (correctAnswer === initialValue\n ? \n {l1.answerCorrect}\n \n : \n {l1.correctAnswer}: {correctAnswer}\n )\n : null\n }\n \n}\n\nfunction RadioAnswer({id, choices, initialValue=null, answerUpdateCallback, readOnly=false, correctAnswer=null}){\n const c = useStyles()\n const [value, setValue] = React.useState(initialValue);\n const [valid, setValid] = useState(false);\n const [touched, setTouched] = useState(false);\n const handleChange = (index) => {\n let answer = index;\n let validity = answer !== '';\n answerUpdateCallback(id, parseInt(answer), validity);\n setValue(index);\n setValid(validity);\n };\n return (\n
\n {\n correctAnswer && value !== correctAnswer\n ? \n {l1.answerIncorrect}\n \n : null\n }\n \n {choices.map((choice, index)=>\n setTouched(true)}*/ onClick={readOnly ? null : ()=>{handleChange(index)}} color=\"primary\"/>\n } label={\n \n {arabicIndex[index] + '. ' + choice}\n {\n correctAnswer\n ? (\n correctAnswer === index\n ? \n {l1.correctAnswer}\n \n : null\n )\n : null\n }\n } />\n \n )} \n \n {/* touched && !valid ? {l1.pleaseChooseOneOption} : null */}\n
\n );\n}\n\nfunction CheckboxesAnswer({id, choices, min=null, max=null, initialValue=null, answerUpdateCallback, correctAnswer=null, readOnly=false}){\n\n const c = useStyles();\n // const answer = makeArrayOf(0, choices.length)\n const [answer, updateAnswer] = useReducer(\n (answer, toggleIndex) => {\n let newAnswer = Array.from(answer)\n newAnswer [toggleIndex] = 1 - answer[toggleIndex];\n return newAnswer\n },\n initialValue || makeArrayOf(0, choices.length)\n )\n \n const [valid, setValid] = useState(false);\n const [touched, setTouched] = useState(false);\n const handleChange = (index) => {\n let newAnswer = [...answer]\n newAnswer[index] = 1 - newAnswer[index]\n let totalChecked = newAnswer.reduce((previous, current) => previous + current);\n let validity = (min === null || totalChecked >= min) && (max === null || totalChecked <= max);\n \n answerUpdateCallback(id, newAnswer, validity);\n updateAnswer(index)\n setValid(validity);\n };\n useEffect(()=>{\n console.log('answer', answer)\n })\n\n return (\n
\n {\n correctAnswer && answer !== correctAnswer\n ? \n {l1.answerIncorrect}\n \n : null\n }\n \n {choices.map((choice, index)=>\n setTouched(true)}*/ onClick={()=>{ handleChange(index)}} color=\"primary\" checked={answer[index]}/>\n } label={\n \n {arabicIndex[index] + '. ' + choice}\n {\n correctAnswer ? (\n correctAnswer[index]\n ? \n {l1.answerCorrect}\n \n : null\n )\n : null\n }\n } />\n )}\n \n
\n );\n}\n\nexport default function Quiz({mode, quiz, submitAction=null, updateAnswers, studentAnswers={}}){\n // console.log(\"student Answers : \", studentAnswers)\n switch(mode){\n case QuizModes.EDIT: return ;\n case QuizModes.PREVIEW: return ;\n case QuizModes.VIEW: return ;\n case QuizModes.RESULTS: return ;\n default: return \"Unsupported quiz mode\";\n }\n}\n\nfunction Question({index, question, correctAnswers={}, forceUpdate, deleteQuestion}){\n const c = useStyles()\n const updateQuestion = (key, value) => {\n question[key] = value;\n };\n const setCorrectAnswer = (event) => {\n correctAnswers[question.id] = event.target.type === 'number' ? parseInt(event.target.value) : event.target.value;\n };\n const setWidgetProp = (propName, value) => {\n question.widgetProps = question.answerProps || {};\n question.widgetProps[propName] = value;\n };\n\n const [text, setText] = useState(question.text);\n\n return (\n \n \n {questionTypes[question.type].icon}\n {questionTypes[question.type].label}\n \n \n {\n deleteQuestion(index);\n forceUpdate();\n }}\n >\n \n \n \n \n\n
\n {\n updateQuestion('text', event.target.value);\n setText(event.target.value);\n }}\n error={!Boolean(text)}\n helperText={Boolean(text) ? '' : l1.questionTextCannotBeEmpty}\n fullWidth\n />\n
\n {\n updateQuestion('helpText', event.target.value);\n }}\n fullWidth\n />\n\n \n\n {question.type === 'text' ? (\n \n ) : question.type === 'number' ? (\n
\n \n
\n\n {l1.answerOptions}\n \n \n {\n setWidgetProp('min', parseInt(event.target.value));\n }}\n />\n \n \n {\n setWidgetProp('max', parseInt(event.target.value));\n }}\n />\n \n \n
\n ) : question.type === 'radio' ? (\n \n ) : question.type === 'checkboxes' ? (\n
\n \n
\n {l1.requiredNumber}\n\n \n \n {\n setWidgetProp('min', parseInt(event.target.value));\n }}\n fullWidth\n />\n \n \n {\n setWidgetProp('max', parseInt(event.target.value));\n }}\n fullWidth\n />\n \n \n
\n
\n ) : null}\n
\n );\n}\n\nfunction AddQuestionMenu({ quiz, forceUpdate }) {\n const c = useStyles();\n const addQuestion = (type) => {\n function getUniqueQuestionId() {\n let total = quiz.questions.length;\n let existingIds = quiz.questions.map((question) => question.id);\n let i = 1;\n while (true) if (!existingIds.includes('q' + (total + i))) return 'q' + (total + i);\n }\n let newId = getUniqueQuestionId();\n quiz.questions.push({\n id: getUniqueQuestionId(),\n type: type,\n text: l1.thequestion + ' ' + (quiz.questions.length + 1),\n helpText: '',\n widgetProps: ['radio', 'checkboxes'].includes(type) ? { choices: [l1.option1] } : {},\n });\n\n quiz.correctAnswers = quiz.correctAnswers || {};\n if (type === 'checkbox') {\n quiz.correctAnswers[newId] = [];\n }\n forceUpdate();\n };\n\n const [open, setOpen] = React.useState(false);\n const anchorRef = React.useRef(null);\n\n const handleToggle = () => {\n setOpen((prevOpen) => !prevOpen);\n };\n\n const handleClose = (event) => {\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\n return;\n }\n setOpen(false);\n };\n\n function handleListKeyDown(event) {\n if (event.key === 'Tab') {\n event.preventDefault();\n setOpen(false);\n }\n }\n\n // return focus to the button when we tr ansitioned from !open -> open\n const prevOpen = React.useRef(open);\n React.useEffect(() => {\n if (prevOpen.current === true && open === false) {\n anchorRef.current.focus();\n }\n\n prevOpen.current = open;\n }, [open]);\n\n return (\n
\n }\n color=\"primary\"\n variant=\"contained\"\n ref={anchorRef}\n aria-controls={open ? 'menu-list-grow' : undefined}\n aria-haspopup=\"true\"\n onClick={handleToggle}\n >\n {l1.addNewQuestion}\n \n \n {\n \n \n \n {Object.entries(questionTypes).map((item) => {\n const [key, type] = item;\n return (\n {\n addQuestion(key);\n handleClose(event);\n }}\n >\n {type.icon}  {type.label}\n \n );\n })}\n \n \n \n }\n \n
\n );\n}\n\nfunction InstructionIterator({ itemCollection = [], newItemText, forceUpdate }) {\n // const c = useStyles();\n const updateItem = (index, value) => {\n itemCollection[index] = value;\n };\n const addItem = () => {\n itemCollection.push(newItemText);\n forceUpdate();\n };\n const deleteItem = (index) => {\n itemCollection.splice(index, 1);\n forceUpdate();\n };\n return (\n
\n {itemCollection.map((item, index) => (\n
\n {\n updateItem(index, event.target.value);\n }}\n />\n deleteItem(index)}>\n \n \n
\n ))}\n
\n \n \n \n \n
\n
\n );\n}\n\nfunction RadioOptionIterator({ id, itemCollection = [], newItemText, forceUpdate, correctAnswers }) {\n // const c = useStyles();\n const [choice, setChoice] = React.useState(correctAnswers[id] || 0);\n const setCorrectAnswer = (index) => {\n correctAnswers[id] = index;\n };\n const updateItem = (index, value) => {\n itemCollection[index] = value;\n };\n const addItem = () => {\n itemCollection.push(newItemText);\n forceUpdate();\n };\n const deleteItem = (index) => {\n itemCollection.splice(index, 1);\n forceUpdate();\n };\n\n return (\n \n {l1.answerOptions}\n

\n {l1.enterListOfAnswers}
\n {l1.toAddItems}
\n {l1.toDeleteItems}
\n {l1.specifyTheCorrectAnswer}
\n

\n\n {itemCollection.map((item, index) => (\n
\n {\n setCorrectAnswer(index);\n setChoice(index);\n }}\n color=\"primary\"\n />\n }\n label={\n {\n updateItem(index, event.target.value);\n }}\n />\n }\n />\n deleteItem(index)}>\n \n \n
\n ))}\n
\n } label={} />\n \n \n \n
\n
\n );\n}\n\nfunction CheckboxOptionIterator({ id, itemCollection = [], newItemText, forceUpdate, correctAnswers }) {\n const [choice, setChoice] = React.useState(correctAnswers[id]);\n\n const updateCorrectAnswer = (index) => {\n correctAnswers[id][index] = 1 - correctAnswers[id][index];\n };\n const updateItem = (index, value) => {\n itemCollection[index] = value;\n };\n const addItem = () => {\n itemCollection.push(newItemText);\n correctAnswers[id].push(0);\n forceUpdate();\n };\n const deleteItem = (index) => {\n itemCollection.splice(index, 1);\n correctAnswers[id].splice(index, 1);\n forceUpdate();\n };\n\n correctAnswers[id] = correctAnswers[id] || makeArrayOf(0, itemCollection.length);\n\n return (\n
\n \n {l1.answerOptions}\n

\n {l1.enterListOfAnswers}
\n {l1.toAddItems}
\n {l1.toDeleteItems}
\n {l1.specifyTheCorrectAnswers}
\n

\n {itemCollection.map((item, index) => (\n
\n {\n updateCorrectAnswer(index);\n setChoice(index);\n }}\n color=\"primary\"\n />\n }\n label={\n {\n updateItem(index, event.target.value);\n }}\n />\n }\n />\n deleteItem(index)}>\n \n \n
\n ))}\n
\n } label={} />\n \n \n \n
\n
\n
\n );\n}\n\n","import React, { useState, useReducer } from \"react\";\nimport {\n Box,\n Button,\n makeStyles,\n Typography,\n TextField,\n Paper,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n CircularProgress\n} from \"@material-ui/core\";\nimport { l1 } from \"./local.json\";\nimport { gql, useMutation } from \"@apollo/client\";\n\nconst UPDATE_STUDENTWORK = gql`\n mutation updateStudentWork($id: ID!, $data: editStudentWorkInput!) {\n updateStudentWork(input: { where: { id: $id }, data: $data }) {\n studentWork {\n id\n }\n }\n }\n`;\nconst useStyles = makeStyles(theme => ({\n container: {\n padding: \"20px\",\n margin: \"20px 0\"\n },\n questionBox: {\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n alignItems: \"baseline\"\n },\n questionHeader: {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n width: \"100%\"\n },\n questionInput: {\n margin: \"20px 0\",\n width: \"100%\"\n },\n answerView: {\n background: \"#eee\",\n padding: \"10px\",\n margin: \"20px 0\",\n width: \"100%\"\n }\n}));\nexport default function Question({ data, refetch }) {\n const [answer, setAnswer] = useState(null);\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n const classes = useStyles();\n const [editStudentWorkMutation, { loading }] = useMutation(\n UPDATE_STUDENTWORK,\n {\n onError: error => {\n console.log(\"error in editing student work\", error);\n },\n onCompleted: response => {\n refetch();\n }\n }\n );\n const edtiStudentWork = () => {\n editStudentWorkMutation({\n variables: {\n id: data[0].id,\n data: {\n submission: answer,\n status: \"submitted\"\n }\n }\n });\n };\n return (\n <>\n \n \n \n {l1.yourAnswer}\n \n {data[0].status !== \"assigned\" ? l1.handedIn : l1.assigned}\n \n \n {data[0].status !== \"assigned\" ? (\n \n {data[0].submission}\n \n ) : (\n
\n {\n setAnswer(e.target.value);\n }}\n />\n \n {l1.handIn}\n \n
\n )}\n
\n \n \n \n \n \n {l1.answerConfirmation}\n \n \n \n : null}\n >\n {l1.confirm}\n \n \n {l1.cancel}\n \n \n \n \n );\n}\n","import React, { useState, useReducer } from \"react\";\nimport {\n Box,\n Button,\n makeStyles,\n Typography,\n Paper,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n CircularProgress,\n Link\n} from \"@material-ui/core\";\nimport { CgAttachment } from \"react-icons/cg\";\nimport { l1 } from \"./local.json\";\nimport { gql, useMutation } from \"@apollo/client\";\n\nconst UPDATE_STUDENTWORK = gql`\n mutation updateStudentWork($id: ID!, $data: editStudentWorkInput!) {\n updateStudentWork(input: { where: { id: $id }, data: $data }) {\n studentWork {\n id\n }\n }\n }\n`;\nconst UPLOAD = gql`\n mutation($file: Upload!) {\n upload(file: $file) {\n name\n id\n url\n }\n }\n`;\nconst useStyles = makeStyles(theme => ({\n container: {\n padding: \"20px\",\n margin: \"20px 0\"\n },\n questionBox: {\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n alignItems: \"baseline\"\n },\n questionHeader: {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n width: \"100%\"\n },\n questionInput: {\n margin: \"20px 0\",\n width: \"100%\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\"\n },\n answerView: {\n background: \"#eee\",\n padding: \"10px\",\n margin: \"20px 0\",\n width: \"100%\"\n }\n}));\nexport default function Assignement({ data, refetch }) {\n const [file, setFile] = useState();\n const [uploadedFile, setUploadedFile] = useState();\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n const [uploadFile, { loading }] = useMutation(UPLOAD, {\n onError: error => {\n console.log(\"error in uploading\", error);\n },\n onCompleted: res => {\n setUploadedFile(res);\n }\n });\n const classes = useStyles();\n const [editStudentWorkMutation, { loading: editLoading }] = useMutation(\n UPDATE_STUDENTWORK,\n {\n onError: error => {\n console.log(\"error in edit student work\", error);\n },\n onCompleted: response => {\n console.log(\"Mutation update student work\", response);\n refetch();\n }\n }\n );\n const edtiStudentWork = () => {\n editStudentWorkMutation({\n variables: {\n id: data[0].id,\n data: {\n status: \"submitted\",\n file: uploadedFile?.upload.url\n }\n }\n });\n };\n return (\n <>\n \n \n \n {l1.yourAnswer}\n \n {data[0]?.status !== \"assigned\" ? l1.handedIn : l1.assigned}\n \n \n {data[0]?.status !== \"assigned\" ? (\n \n {data?.[0]?.submission}\n \n {l1.downloadTheFile}\n \n \n ) : (\n
\n {\n if (file)\n uploadFile({\n variables: {\n file\n }\n });\n }}\n startIcon={loading ? : }\n type=\"upload\"\n className={classes.questionInput}\n >\n setFile(e.target.files[0])}\n />\n {l1.add}\n \n \n {l1.handIn}\n \n
\n )}\n
\n \n \n \n \n \n {l1.answerConfirmation}\n \n \n \n : null}\n disabled={editLoading}\n >\n {l1.confirm}\n \n \n {l1.cancel}\n \n \n \n \n );\n}\n","import React, { useReducer, useState, useContext, useEffect } from \"react\";\n\nimport {\n Avatar,\n Box,\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n Divider,\n Grid,\n IconButton,\n makeStyles,\n Menu,\n MenuItem,\n Typography,\n Snackbar,\n Container,\n TextField,\n Paper,\n Chip\n} from \"@material-ui/core\";\nimport TopBar from \"./common/TopBar\";\nimport { BiDotsVerticalRounded } from \"react-icons/bi\";\nimport { MdAssignment, MdPeople } from \"react-icons/md\";\nimport { l1 } from \"./local.json\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\n\nimport { gql, useMutation, useQuery, useLazyQuery } from \"@apollo/client\";\nimport { useHistory, useParams, Link } from \"react-router-dom\";\nimport Loading from \"./common/Loading\";\nimport CreateComment from \"./common/CreateComment\";\nimport Comment from \"./common/Comment\";\nimport Drafter2 from \"./common/Drafter2\";\nimport Quiz, { QuizModes } from \"./Quiz\";\nimport moment from \"moment\";\nimport { Navigation } from \"../Context\";\nimport { RequireClassAccess, RequireForTheMemberOnly } from \"../Auth/gates\";\nimport Question from \"./Question\";\nimport Assignement from \"./AssignmentSubmission\";\nconst useStyles = makeStyles(theme => ({\n container: {\n margin: theme.spacing(2, 0)\n // padding: theme.spacing(2),\n },\n title: {\n fontSize: theme.spacing(5),\n color: theme.palette.primary.main,\n paddingLeft: theme.spacing(2)\n },\n options: {\n color: theme.palette.primary.dark,\n fontSize: theme.spacing(3)\n },\n divider: {\n background: theme.palette.primary.main,\n flexGrow: 1,\n margin: theme.spacing(2, 0)\n },\n alert: {\n fontSize: theme.spacing(1.6),\n color: theme.palette.grey[600]\n },\n\n iconContainer: {\n backgroundColor: theme.palette.primary.main,\n marginTop: theme.spacing(1.4),\n marginLeft: theme.spacing(-7)\n },\n teacherContainer: {\n \"&>*\": {\n color: theme.palette.grey[600],\n marginRight: theme.spacing(0.3)\n }\n },\n exDivider: {\n flexGrow: 1,\n height: \"2px\",\n background: theme.palette.grey[200],\n marginTop: theme.spacing(2)\n },\n\n midSection: {\n marginBottom: theme.spacing(2)\n },\n stats: {\n width: \"max-content\",\n padding: theme.spacing(2), \n display: 'inline-block',\n },\n statsNumber: {\n textAlign: \"center\",\n fontWeigh: 900,\n fontSize: theme.spacing(5),\n },\n statsIcon: {\n color: theme.palette.grey[700],\n fontSize: theme.spacing(3),\n margin: theme.spacing(0, 1)\n },\n statsText: {\n fontWeight: 600,\n color: theme.palette.grey[700],\n marginTop: theme.spacing(2),\n },\n midNameBox: {\n gap: theme.spacing(1.4)\n },\n avatar: {\n margin: theme.spacing(2)\n },\n name: {\n fontWeight: 600\n },\n date: {\n fontSize: theme.spacing(1.6),\n color: theme.palette.grey[600]\n },\n post: {\n marginLeft: theme.spacing(2),\n \"&>*\": {}\n },\n inputContainer: {\n border: `1px solid lightgrey`,\n borderRadius: theme.spacing(4),\n marginRight: theme.spacing(4)\n },\n input: {\n marginLeft: theme.spacing(2)\n },\n inputIcon: {\n transform: \"scaleX(-1)\",\n margin: theme.spacing(0, 1),\n fontSize: theme.spacing(3),\n cursor: \"pointer\",\n color: theme.palette.grey[500]\n },\n points: {\n fontWeight: 600,\n marginTop: theme.spacing(1)\n },\n studentGrade: {\n fontSize: theme.spacing(2.5)\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n quizContainer: {\n border: \"solid 1px lightgray\",\n borderRadius: theme.spacing(2)\n }\n}));\nconst QUERY_ASSIGNMENT = gql`\n query QueryAssignment($id: ID!, $userId: ID!) {\n assignment(id: $id) {\n title\n class {\n id\n }\n writer {\n id\n fullname\n }\n createdAt\n type\n description\n grade\n comments {\n writer {\n id\n fullname\n email\n }\n id\n content\n createdAt\n }\n quiz {\n id\n }\n evaluationsInfo{\n coach\n date\n location\n }\n studentWorks(where: { student: { id: $userId } }) {\n id\n student {\n id\n }\n file\n status\n submission\n submittedAt\n grade\n gradedBy {\n id\n }\n gradedAt\n }\n }\n }\n`;\nconst EDIT_ASSIGNMENT = gql`\n mutation EditAssignment($id: ID!, $description: String!) {\n updateAssignment(\n input: { where: { id: $id }, data: { description: $description } }\n ) {\n assignment {\n description\n }\n }\n }\n`;\nconst DELETE_ASSIGNMENT = gql`\n mutation DeleteAssignment($id: ID!) {\n deleteAssignment(input: { where: { id: $id } }) {\n assignment {\n description\n }\n }\n }\n`;\n\nconst QUERY_QUIZ = gql`\n query QueryQuiz($id: ID!) {\n quiz(id: $id) {\n id\n title\n description\n instructions\n questions\n }\n }\n`;\n\nconst QUERY_QUIZ_WITH_ANSWERS = gql`\n query QueryQuizWithAnswers($id: ID!) {\n quiz(id: $id) {\n id\n title\n description\n questions\n correctAnswers\n }\n }\n`;\nconst SUBMIT_STUDENT_WORK = gql`\n mutation SubmitStudentWork($id: ID!, $fields: editStudentWorkInput!) {\n updateStudentWork(input: { where: { id: $id }, data: $fields }) {\n studentWork {\n id\n status\n }\n }\n }\n`;\nconst QUERY_STUDENT_WORKS = gql`\n query StudentWorks($assignmentId: ID!){\n studentWorks(where: { assignment: { id: $assignmentId } }) {\n id\n student {\n id\n }\n file\n status\n submission\n submittedAt\n grade\n gradedBy {\n id\n }\n gradedAt\n }\n }\n`;\n\nfunction Assignment({ state, reverse }) {\n const { id, slug } = useParams();\n const history = useHistory();\n const { user } = useContext(Navigation);\n // Apollo\n const { loading, data, refetch } = useQuery(QUERY_ASSIGNMENT, {\n variables: { id, userId: user.id },\n onError: error => console.log(\"QueryAssignmentError: \", error),\n onCompleted: data => {\n console.log(\"QueryAssignmentSuccess: \", data);\n if (data.assignment.type === \"quiz\") {\n if (data.assignment.studentWorks?.[0]?.status === \"assigned\") {\n loadQuiz({ variables: { id: data.assignment.quiz.id } });\n } else {\n loadQuizWithAnswers({ variables: { id: data.assignment.quiz.id } });\n }\n updateStudentAnswers(\n data.assignment.studentWorks?.[0]?.submission || {}\n );\n } else if(data.assignment.type = 'evaluations'){\n loadStudentWorks({variables:{\n assignmentId: id\n }})\n }\n },\n notifyOnNetworkStatusChange: true\n });\n const [loadStudentWorks, { loading: loadingStudentWorks, data: worksData }] = useLazyQuery(QUERY_STUDENT_WORKS, {\n onError: error => {\n console.log(\"QueryQuizError: \", error);\n return [];\n },\n });\n\n\n const [editAssignment, { loading: loadingEdit }] = useMutation(\n EDIT_ASSIGNMENT,\n {\n onError: () => setAlertFailure(l1.failure),\n onCompleted: () => {\n setAlertSuccess(l1.editsuccess);\n reverseEditState();\n refetch();\n }\n }\n );\n\n const [deleteAssignment, { loading: loadingDelete }] = useMutation(\n DELETE_ASSIGNMENT,\n {\n onError: () => setAlertFailure(l1.failure),\n onCompleted: () => history.push(`/class/${slug}/classwork`)\n }\n );\n\n const [\n submitStudentWork /*{ loading: loadingSubmitStudentWork }*/\n ] = useMutation(SUBMIT_STUDENT_WORK, {\n onError: () => {\n setAlertFailure(l1.failure);\n },\n onCompleted: response => {\n let studentWork = data.assignment.studentWorks[0];\n studentWork.status = response.updateStudentWork.studentWork.status;\n studentWork.submission =\n response.updateStudentWork.studentWork.submission;\n setAlertSuccess(l1.submitsuccess);\n updateStudentAnswers(studentWork.submission);\n console.log(\"existing quiz\", quiz);\n loadQuizWithAnswers({ variables: { id: quiz.id } });\n }\n });\n\n const [quiz, setQuiz] = useState(null);\n const [studentAnswers, updateStudentAnswers] = useReducer((prev, answers) => {\n console.log(\n \"prev: \",\n JSON.stringify(prev),\n \"next:\",\n JSON.stringify(answers)\n );\n return { ...prev, ...answers };\n }, {});\n const [loadQuiz, { loading: loadingQuiz }] = useLazyQuery(QUERY_QUIZ, {\n onError: error => {\n console.log(\"QueryQuizError: \", error);\n },\n onCompleted: response => {\n console.log(\"QueryQuizSuccess: \", response);\n setQuiz(response.quiz);\n }\n });\n\n const [\n loadQuizWithAnswers,\n { loading: loadingQuizWithAnswers }\n ] = useLazyQuery(QUERY_QUIZ_WITH_ANSWERS, {\n onError: error => {\n console.log(\"QueryQuizWithAnswersError: \", error);\n },\n onCompleted: response => {\n console.log(\"QueryQuizWithAnswersSuccess: \", response);\n setQuiz(response.quiz);\n }\n });\n\n // Edit State Indicator\n const [editState, reverseEditState] = useReducer(s => !s, false);\n\n // Options Logic\n const [anchor, setAnchor] = useState(null);\n const openMenu = event => {\n setAnchor(event.currentTarget);\n };\n const closeMenu = () => {\n setAnchor(null);\n };\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n\n // Alert Logic\n const [alertSuccess, setAlertSuccess] = useState(false);\n const [alertFailure, setAlertFailure] = useState(false);\n\n const classes = useStyles();\n // useEffect(() => {\n // console.log(\"student answers = \", studentAnswers);\n // });\n if (\n loadingEdit ||\n loading ||\n loadingDelete ||\n loadingQuiz ||\n loadingQuizWithAnswers ||\n loadingStudentWorks\n ) {\n return ;\n } else {\n return (\n <>\n {\" \"}\n \n \n \n \n \n \n \n \n \n \n \n {data.assignment.title}\n \n \n \n \n \n \n \n \n {\n reverseEditState();\n }}\n >\n {l1.edit}\n \n \n {l1.delete}\n \n \n \n {/* \n {data.assignment.writer.fullname}\n \n {moment(data.assignment.sub).fromNow()}\n */}\n {data?.assignment?.type === 'material' ? null\n : data?.assignment?.type === 'evaluations' ?(\n <>\n \n \n {l1.evaluationsCoach}: {data.assignment?.evaluationsInfo.coach}\n \n \n {l1.evaluationsDate}: {data.assignment?.evaluationsInfo?.date}\n \n \n {l1.evaluationsLocation}: {data.assignment.evaluationsInfo.location}\n \n \n \n ) : (\n <>\n \n {data?.assignment?.studentWorks?.[0]?.grade &&\n data?.assignment?.grade !== null &&\n data?.assignment?.studentWorks?.[0]?.grade !== null ? (\n <>\n \n {data.assignment.studentWorks[0].grade *\n data.assignment.grade}\n {\" \"}\n {l1.slash}{\" \"}\n \n ) : null}\n {data.assignment.grade\n ? data.assignment.grade + \" \" + l1.points2\n : l1.noPoints}{\" \"}\n \n \n )}\n \n\n {editState ? (\n \n \n \n ) : (\n \n )}\n {data.assignment.type !== \"question\" ? (\n \"\"\n ) : (\n \n )}\n {data.assignment.type !== \"assignment\" ? (\n \"\"\n ) : (\n \n )}\n\n \n {\n data.assignment.type === 'quiz'\n ? (\n quiz ? (\n \n {data.assignment.studentWorks?.[0]?.status &&\n data.assignment.studentWorks?.[0].status === \"assigned\" ? (\n {\n submitStudentWork({\n variables: {\n id: data.assignment.studentWorks[0].id,\n fields: {\n submission: answers,\n status: \"submitted\"\n }\n }\n });\n refetch();\n }}\n />\n ) : (\n \n )}\n \n ) : (\n \"Quiz not loaded correctly\"\n )\n )\n : data.assignment.type === 'evaluations'\n ? (<>\n \n \n \n \n \n {worksData?.studentWorks?.length ?? 0}\n \n \n {l1.studentCount}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {l1.myEvaluation} \n {data?.assignment?.studentWorks?.[0]?.submission?.student ? l1.ready : l1.notReady}}\n color='secondary'\n /> \n { data?.assignment?.studentWorks?.[0]?.submission?.student && } \n \n \n {l1.myCoachEvaluation} \n {data?.assignment?.studentWorks?.[0]?.submission?.coach ? l1.done : l1.notYet}}\n color='secondary'\n /> \n \n \n \n \n \n {l1.myTrainingEvaluation} \n {data?.assignment?.studentWorks?.[0]?.submission?.training ? l1.done : l1.notYet}}\n color='secondary'\n /> \n \n \n \n \n \n \n )\n : (<>\n \n \n \n {data.assignment.comments.length} {l1.comment}\n \n \n {data.assignment.comments.map(item => (\n setAlertSuccess(c)}\n failure={c => setAlertFailure(c)}\n createdAt={item.createdAt}\n writerEmail={item.writer.email}\n />\n ))}\n setAlertSuccess(c)}\n failure={c => setAlertFailure(c)}\n query={QUERY_ASSIGNMENT}\n id={id}\n />\n )\n }\n \n \n \n \n \n \n \n {l1.confirmation}\n \n \n \n {\n deleteAssignment({\n variables: {\n id\n }\n });\n }}\n >\n {l1.confirm}\n \n \n \n \n \\\n {\n setAlertSuccess(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n {\n setAlertFailure(false);\n }}\n >\n \n {alertFailure}\n \n \n \n );\n }\n}\n\nexport default Assignment;\n","import React, { useContext, useEffect, useState } from 'react';\nimport { Box, IconButton, makeStyles, Typography } from '@material-ui/core';\nimport TopBar from './common/TopBar';\nimport moment from 'moment';\nimport 'moment/locale/ar-dz';\nimport { FaAngleRight, FaAngleLeft } from 'react-icons/fa';\nimport Loading from './common/Loading';\nimport { useQuery, gql } from '@apollo/client';\nimport { l1 } from './local.json';\nimport { IoMdArrowDropdown } from 'react-icons/io';\nimport { useHistory } from 'react-router-dom';\nimport { Navigation } from '../Context';\n\nconst GET_DAY_ONE = gql`\n query GetDayOne($due: Date!, $centerId: ID!) {\n assignments(where: { center: $centerId, due: $due }) {\n title\n id\n type\n class {\n slug\n }\n }\n }\n`;\n\nconst GET_DAY_TWO = gql`\n query GetDayTwo($due: Date!, $centerId: ID!) {\n assignments(where: { center: $centerId, due: $due }) {\n title\n id\n type\n class {\n slug\n }\n }\n }\n`;\nconst GET_DAY_THREE = gql`\n query GetDayThree($due: Date!, $centerId: ID!) {\n assignments(where: { center: $centerId, due: $due }) {\n title\n id\n type\n class {\n slug\n }\n }\n }\n`;\nconst GET_DAY_FOUR = gql`\n query GetDayFour($due: Date!, $centerId: ID!) {\n assignments(where: { center: $centerId, due: $due }) {\n title\n id\n type\n class {\n slug\n }\n }\n }\n`;\nconst GET_DAY_FIVE = gql`\n query GetDayFive($due: Date!, $centerId: ID!) {\n assignments(where: { center: $centerId, due: $due }) {\n title\n id\n type\n class {\n slug\n }\n }\n }\n`;\nconst GET_DAY_SIX = gql`\n query GetDaySix($due: Date!, $centerId: ID!) {\n assignments(where: { center: $centerId, due: $due }) {\n title\n id\n type\n class {\n slug\n }\n }\n }\n`;\nconst GET_DAY_SEVEN = gql`\n query GetDaySeven($due: Date!, $centerId: ID!) {\n assignments(where: { center: $centerId, due: $due }) {\n title\n id\n type\n class {\n slug\n }\n }\n }\n`;\n\nconst useStyles = makeStyles((theme) => ({\n container: {\n alignItems: 'center',\n },\n calendarContainer: {\n width: 'min-content',\n minHeight: '80vh',\n border: `1px solid lightgrey`,\n borderRadius: theme.spacing(2),\n overflow: 'auto',\n justifyContent: 'center',\n },\n dayContainer: {\n '&>*': {},\n borderLeft: `1px solid lightgrey`,\n width: '12vw',\n padding: theme.spacing(1),\n },\n dayText: {\n color: theme.palette.grey[500],\n fontSize: theme.spacing(1.4),\n },\n dayNumber: {\n color: theme.palette.grey[600],\n fontSize: theme.spacing(3.5),\n },\n assignmentsContainer: {\n marginTop: theme.spacing(3),\n width: '10vw',\n },\n toggleWeek: {\n //marginRight: theme.spacing(30),\n },\n assignment: {\n marginBottom: theme.spacing(1),\n background: '#1967d2',\n padding: theme.spacing(1),\n width: 'inherit',\n cursor: 'pointer',\n borderRadius: '3px',\n '&>*': {\n color: 'white',\n fontWeight: '600',\n fontSize: theme.spacing(1.6),\n },\n },\n select: {\n width: '20%',\n padding: theme.spacing(1.5, 2),\n margin: theme.spacing(1, 0),\n borderRadius: theme.spacing(1),\n border: '1px solid lightgrey',\n cursor: 'pointer',\n '&:hover': {\n background: theme.palette.grey[50],\n },\n color: theme.palette.grey[700],\n },\n}));\n\nfunction Calendar() {\n const { centerId } = useContext(Navigation);\n const history = useHistory();\n moment.locale('ar-dz');\n const [startDate, setStartDate] = useState(moment().startOf('week'));\n const [dates, setDates] = useState([]);\n const [state, reverseState] = useState(true);\n useEffect(() => {\n const tempDates = [];\n for (let i = 0; i < 7; i++) {\n tempDates.push(moment(startDate).add(i, 'days'));\n }\n setDates(tempDates);\n reverseState(false);\n }, [startDate]);\n const preWeek = () => setStartDate(startDate.clone().subtract(7, 'days'));\n const postWeek = () => setStartDate(startDate.clone().add(7, 'days'));\n // console.log('dates', dates[0].format('YYYY-DD-MM'));\n const { loading: loadingDayOne, data: dataDayOne } = useQuery(GET_DAY_ONE, {\n skip: state,\n variables: {\n due: state ? null : dates[0].format('YYYY-MM-DD'),\n centerId,\n },\n });\n const { loading: loadingDayTwo, data: dataDayTwo } = useQuery(GET_DAY_TWO, {\n skip: state,\n variables: {\n due: state ? null : dates[1].format('YYYY-MM-DD'),\n centerId,\n },\n });\n const { loading: loadingDayThree, data: dataDayThree } = useQuery(GET_DAY_THREE, {\n skip: state,\n variables: {\n due: state ? null : dates[2].format('YYYY-MM-DD'),\n centerId,\n },\n });\n const { loading: loadingDayFour, data: dataDayFour } = useQuery(GET_DAY_FOUR, {\n skip: state,\n variables: {\n due: state ? null : dates[3].format('YYYY-MM-DD'),\n centerId,\n },\n });\n const { loading: loadingDayFive, data: dataDayFive } = useQuery(GET_DAY_FIVE, {\n skip: state,\n variables: {\n due: state ? null : dates[4].format('YYYY-MM-DD'),\n centerId,\n },\n });\n const { loading: loadingDaySix, data: dataDaySix } = useQuery(GET_DAY_SIX, {\n skip: state,\n variables: {\n due: state ? null : dates[5].format('YYYY-MM-DD'),\n centerId,\n },\n });\n const { loading: loadingDaySeven, data: dataDaySeven } = useQuery(GET_DAY_SEVEN, {\n skip: state,\n variables: {\n due: state ? null : dates[6].format('YYYY-MM-DD'),\n centerId,\n },\n });\n const arType = (type) => {\n switch (type) {\n case 'question':\n return l1.question;\n case 'material':\n return l1.material;\n default:\n return l1.assignment;\n }\n };\n const classes = useStyles();\n if (\n state ||\n loadingDayOne ||\n loadingDayTwo ||\n loadingDayThree ||\n loadingDayFour ||\n loadingDayFive ||\n loadingDaySix ||\n loadingDaySeven\n )\n return ;\n if (!state) {\n const dayOne = dataDayOne.assignments;\n const dayTwo = dataDayTwo.assignments;\n const dayThree = dataDayThree.assignments;\n const dayFour = dataDayFour.assignments;\n const dayFive = dataDayFive.assignments;\n const daySix = dataDaySix.assignments;\n const daySeven = dataDaySeven.assignments;\n\n return (\n <>\n \n\n \n \n {/* \n {l1.allClasses}\n \n */}\n \n \n \n \n {startDate.format('MMMM YYYY')}\n \n \n \n \n \n \n {/* DAY ONE */}\n \n \n {Boolean(dates[0].format('ddd')) ? dates[0].format('ddd') : 0}\n \n \n {Boolean(dates[0].format('D')) ? dates[0].format('D') : 0}\n \n \n {dayOne.length === 0\n ? ''\n : dayOne.map((i) => (\n history.push(`/class/${i.class.slug}/classwork/${i.id}/details`)}\n key={i.id}\n >\n \n {arType(i.type)} : {i.title}\n \n \n ))}\n \n \n {/* DAY TWO */}\n \n \n {Boolean(dates[1].format('ddd')) ? dates[1].format('ddd') : 1}\n \n \n {Boolean(dates[1].format('D')) ? dates[1].format('D') : 1}\n \n \n {dayTwo.length === 0\n ? ''\n : dayTwo.map((i) => (\n history.push(`/class/${i.class.slug}/classwork/${i.id}/details`)}\n key={i.id}\n >\n \n {arType(i.type)} : {i.title}\n \n \n ))}\n \n \n {/* DAY THREE */}\n \n \n {Boolean(dates[2].format('ddd')) ? dates[2].format('ddd') : 2}\n \n \n {Boolean(dates[2].format('D')) ? dates[2].format('D') : 2}\n \n \n {dayThree.length === 0\n ? ''\n : dayThree.map((i) => (\n history.push(`/class/${i.class.slug}/classwork/${i.id}/details`)}\n key={i.id}\n >\n \n {arType(i.type)} : {i.title}\n \n \n ))}\n \n \n {/* DAY FOUR */}\n \n \n {Boolean(dates[3].format('ddd')) ? dates[3].format('ddd') : 3}\n \n \n {Boolean(dates[3].format('D')) ? dates[3].format('D') : 3}\n \n \n {dayFour.length === 0\n ? ''\n : dayFour.map((i) => (\n history.push(`/class/${i.class.slug}/classwork/${i.id}/details`)}\n key={i.id}\n >\n \n {arType(i.type)} : {i.title}\n \n \n ))}\n \n \n {/* DAY FIVE */}\n \n \n {Boolean(dates[4].format('ddd')) ? dates[4].format('ddd') : 4}\n \n \n {Boolean(dates[4].format('D')) ? dates[4].format('D') : 4}\n \n \n {dayFive.length === 0\n ? ''\n : dayFive.map((i) => (\n history.push(`/class/${i.class.slug}/classwork/${i.id}/details`)}\n key={i.id}\n >\n \n {arType(i.type)} : {i.title}\n \n \n ))}\n \n \n {/* DAY SIX */}\n \n \n {Boolean(dates[5].format('ddd')) ? dates[5].format('ddd') : 5}\n \n \n {Boolean(dates[5].format('D')) ? dates[5].format('D') : 5}\n \n \n {daySix.length === 0\n ? ''\n : daySix.map((i) => (\n history.push(`/class/${i.class.slug}/classwork/${i.id}/details`)}\n key={i.id}\n >\n \n {arType(i.type)} : {i.title}\n \n \n ))}\n \n \n {/* DAY SEVEN */}\n \n \n {Boolean(dates[6].format('ddd')) ? dates[6].format('ddd') : 6}\n \n \n {Boolean(dates[6].format('D')) ? dates[6].format('D') : 6}\n \n \n {daySeven.length === 0\n ? ''\n : daySeven.map((i) => (\n history.push(`/class/${i.class.slug}/classwork/${i.id}/details`)}\n key={i.id}\n >\n \n {arType(i.type)} : {i.title}\n \n \n ))}\n \n \n \n \n \n );\n }\n}\n\nexport default Calendar;\n","import React, { useReducer } from \"react\";\nimport PropTypes from \"prop-types\";\nimport Button from \"@material-ui/core/Button\";\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\nimport DialogContent from \"@material-ui/core/DialogContent\";\nimport DialogActions from \"@material-ui/core/DialogActions\";\nimport Dialog from \"@material-ui/core/Dialog\";\nimport { l1 } from \"../local.json\";\nimport { makeStyles } from \"@material-ui/styles\";\n\nexport function useConfirmationDialog() {\n const [dialogProps, dispatch] = useReducer(\n (current, action) => {\n let next = { ...current };\n Object.entries(action).forEach(([key, value]) => {\n next[key] = value;\n });\n return next;\n },\n {\n open: false,\n title: null,\n content: null,\n onConfirm: () => {},\n onClose: () => {\n dispatch({ open: false, title: null, content: null });\n },\n }\n );\n\n const confirmationDialog = ({ title, content, onConfirm }) => {\n dispatch({\n open: true,\n title,\n content,\n onConfirm,\n });\n };\n return { dialogProps, confirmationDialog };\n}\n\nconst useStyles = makeStyles({\n dialog: {\n \"MuiBackdrop-root\": {\n backgroundColor: \"transparent\",\n },\n },\n});\nexport default function ConfirmationDialog(props) {\n const classes = useStyles();\n const { onClose, onConfirm, open, title, content, ...dialogProps } = props;\n\n const handleCancel = () => {\n onClose();\n };\n\n const handleOk = () => {\n onConfirm();\n onClose();\n };\n\n return (\n \n {title}\n {content}\n \n \n \n \n \n );\n}\n\nConfirmationDialog.propTypes = {\n open: PropTypes.bool.isRequired,\n title: PropTypes.string,\n content: PropTypes.node,\n onConfirm: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n};\n","export default function sparseUpdate(obj, ...updates) {\n updates.forEach((props) => {\n for (let prop in props) {\n if (typeof props[prop] === \"object\" && !Array.isArray(props[prop]) && props[prop] !== null) {\n if (!obj.hasOwnProperty(prop)) {\n obj[prop] = {};\n }\n sparseUpdate(obj[prop], props[prop]);\n } else {\n obj[prop] = props[prop];\n }\n }\n })\n return obj;\n}\n","import { Box, Typography, makeStyles } from \"@material-ui/core\";\nimport React from \"react\";\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n height: \"80vh\",\n },\n}));\n\nfunction NotFound() {\n const classes = useStyles();\n return (\n \n Wrong Place, Wrong Time! 404\n \n );\n}\n\nexport default NotFound;\n","export default function capitalizeFirstLetter(str) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\n\n","import { gql, useMutation, useQuery } from \"@apollo/client\";\nimport {\n Box,\n Button,\n CircularProgress,\n LinearProgress,\n Typography,\n} from \"@material-ui/core\";\nimport { Formik, useFormikContext } from \"formik\";\nimport { createContext, useContext } from \"react\";\nimport { useHistory, useParams } from \"react-router-dom\";\nimport * as Yup from \"yup\";\nimport { Navigation } from \"../../Context\";\nimport { FloatingAlertContext } from \"../../components/common/FloatingAlert\";\nimport NotFound from \"../../components/common/NotFound\";\nimport { l1 } from \"../../components/local.json\";\nimport capitalizeFirstLetter from \"../../helpers/capitalizeFirstLetter\";\n\nexport const FormDefinition = createContext();\nexport const FormContext = createContext();\n\nexport function FormDefinitionProvider({ form, children }) {\n return (\n {children}\n );\n}\n\nexport function CreateFormContextProvider({ options, children }) {\n const form = useContext(FormDefinition);\n const { centerId } = useContext(Navigation);\n const context = useContext(FormContext) ?? {};\n const history = useHistory();\n const floatingAlert = useContext(FloatingAlertContext);\n const MUTATION_CREATE = gql`\n mutation createItem($data: ${capitalizeFirstLetter(form.itemName)}Input) {\n create${capitalizeFirstLetter(form.itemName)}(input: { data: $data } ) {\n ${form.itemName} {\n ${form.getSingleQuerySelection()}\n }\n }\n }\n `;\n const [createItem, { loading: creating, error: creationError }] = useMutation(\n MUTATION_CREATE,\n\n {\n onCompleted: (data) => {\n floatingAlert({\n message: \"تم إنشاء الاستمارة بنجاح!\",\n severity: \"success\",\n });\n form.postMutation.created({ data, history });\n },\n onError: (error) => {\n floatingAlert({\n message:\n \"حصل خطأ أثناء محاولة إنشاء الاستمارة. رجاءً أعد المحاولة لاحقًا\",\n severity: \"error\",\n });\n },\n ...options,\n }\n );\n const create = (data) => {\n return createItem({\n variables: { data: { ...form.cleanedFormData(data, 'add'), center: centerId } },\n });\n }\n\n return (\n \n \n {children}\n \n \n );\n}\n\nexport function UpdateFormContextProvider({ options, children }) {\n const form = useContext(FormDefinition);\n const { id } = useParams();\n const context = useContext(FormContext) ?? {};\n const history = useHistory();\n const floatingAlert = useContext(FloatingAlertContext);\n\n // Mutation to update an existing form item\n const MUTATION_UPDATE = gql`\n mutation updateItem($data: edit${capitalizeFirstLetter(\n form.itemName\n )}Input) {\n update${capitalizeFirstLetter(\n form.itemName\n )}(input: { where: { id: \"${id}\" }, data: $data }) {\n ${form.itemName} {\n ${form.getSingleQuerySelection()}\n }\n }\n }\n `;\n const [updateItem, { loading: updating, error: updateError }] = useMutation(\n MUTATION_UPDATE,\n {\n onCompleted: (data) => {\n floatingAlert({\n message: \"تم حفظ الاستمارة بنجاح!\",\n severity: \"success\",\n });\n form.postMutation.updated({ data, history });\n },\n onError: (error) => {\n floatingAlert({\n message:\n \"حصل خطأ أثناء محاولة حفظ الاستمارة. رجاءً أعد المحاولة لاحقًا\",\n severity: \"error\",\n });\n },\n ...options,\n }\n );\n const update = (data) => {\n updateItem({ variables: { data: form.cleanedFormData(data, 'edit') } });\n };\n return (\n \n \n \n {children}\n \n \n \n );\n}\n\nexport function ViewFormContextProvider({ options, children }) {\n const form = useContext(FormDefinition);\n const { centerId } = useContext(Navigation);\n const { id } = useParams();\n const context = useContext(FormContext) ?? {};\n\n // Query to a single form item\n const QUERY_SINGLE = gql`\n query {\n ${\n form.collectionName\n }(where: { center: \"${centerId}\", id: \"${id}\" }, sort: \"createdAt:desc\") {\n id createdAt ${form.getSingleQuerySelection()}\n }\n }\n `;\n const { loading, error, data, refetch } = useQuery(QUERY_SINGLE, options);\n let values = data?.[form.collectionName]?.[0];\n\n if (loading) return ;\n if (error) return Error loading ;\n if (!values) return ;\n return (\n \n \n {children}\n \n \n );\n}\n\nconst contextProviderMap = {\n add: CreateFormContextProvider,\n edit: UpdateFormContextProvider,\n view: ViewFormContextProvider,\n};\n\nexport function FormContextProvider({ children, mode = \"view\" }) {\n const ModeContextProvider = contextProviderMap[mode];\n return (\n \n {children}\n \n );\n}\nexport function FormikProvider({children}){\n const form = useContext(FormDefinition);\n const context = useContext(FormContext) ?? {};\n const { user } = useContext(Navigation);\n const initialValues = form.compiledValues(context?.values ?? {}, context.mode, { user });\n const formikConfig = {\n initialValues,\n validationSchema: Yup.object().shape(\n form.views[context.mode].validationSchema\n ),\n validateOnMount: true,\n onSubmit: (data) => {\n context.mutate(data);\n },\n };\n return {children};\n}\nexport function FormWrapper({ children }) {\n const context = useContext(FormContext) ?? {};\n const formik = useFormikContext();\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n formik.handleSubmit();\n };\n const SubmitButton = () => {\n return (\n }\n >\n {l1[context.mode === \"edit\" ? \"saveChanges\" : \"create\"]}\n \n )\n };\n return (\n \n
\n {children}\n
\n
\n );\n}\n","import { useContext } from \"react\";\nimport { FormContext, FormDefinition } from \"./context\";\nimport { Navigation } from \"../../Context\";\n\nexport default function FormField({\n // common properties\n name,\n type,\n label: originalLabel,\n permissions,\n Component,\n // Whether it's a single field\n singleField = false,\n helperText,\n valueFor,\n aggregate,\n // calculated field props\n requiredFields,\n calculate,\n ...otherProps\n}) {\n const form = useContext(FormDefinition);\n const {user} = useContext(Navigation)\n const {\n mode,\n handleChange,\n handleBlur,\n errors,\n touched,\n values,\n initialValues,\n\n } = useContext(FormContext);\n\n let fieldPermissions = permissions[mode]\n let label = `${singleField ? (fieldPermissions.read && !fieldPermissions.write ? helperText ?? '' : '') : originalLabel}${fieldPermissions.write && fieldPermissions.required ? \" (مطلوب)\" : \"\"}`;\n let calculatedValue = (type !== 'calculated')\n ? null \n : ((requiredFields ?? []).every((fieldName) => values[fieldName] !== null)\n ? valueFor.view(calculate(values), {values, user})\n : null);\n\n // do not render if it's a field that should be filled later (in edit)\n if(!fieldPermissions.show){\n return null;\n }\n return (\n \n );\n}\n","import { Box, makeStyles, Typography } from \"@material-ui/core\";\n\nconst useStyles = makeStyles({\n level1: {\n backgroundColor: \"lightgrey\",\n },\n level2: {\n textDecoration: \"underline\",\n },\n});\nexport default function FormSection({ title, level, children }) {\n const classes = useStyles();\n return (\n \n \n {title}\n \n {children}\n \n );\n}\n","import { Divider } from \"antd\";\nimport { useContext } from \"react\";\nimport { FormContext, FormDefinition } from \"./context\";\nimport FormField from \"./FormField\";\nimport FormSection from \"./FormSection\";\n\nexport default function FormLayout({ root = null, level = 0 }) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const form = useContext(FormDefinition);\n const { mode } = useContext(FormContext);\n root = root ?? form.views[mode].layout;\n return root.map((element, index) => {\n if (element.type === \"separator\") {\n return ;\n } else if (element.type === \"section\") {\n return (\n \n {element.singleField ? (\n \n ) : (\n <>\n \n \n )}\n \n );\n } else {\n return ;\n }\n });\n}\n","import IconButton from \"@material-ui/core/IconButton\";\nimport TablePagination from \"@material-ui/core/TablePagination\";\nimport FirstPageIcon from \"@material-ui/icons/FirstPage\";\nimport KeyboardArrowLeft from \"@material-ui/icons/KeyboardArrowLeft\";\nimport KeyboardArrowRight from \"@material-ui/icons/KeyboardArrowRight\";\nimport LastPageIcon from \"@material-ui/icons/LastPage\";\n\nfunction getNumberOfPages(count, rowsPerPage) {\n return Math.ceil(count / rowsPerPage);\n}\n\nfunction TablePaginationActions({ count, page, rowsPerPage, onChangePage }) {\n const handleFirstPageButtonClick = () => {\n onChangePage(1);\n };\n\n // RDT uses page index starting at 1, MUI starts at 0\n // i.e. page prop will be off by one here\n const handleBackButtonClick = () => {\n onChangePage(page);\n };\n\n const handleNextButtonClick = () => {\n onChangePage(page + 2);\n };\n\n const handleLastPageButtonClick = () => {\n onChangePage(getNumberOfPages(count, rowsPerPage));\n };\n\n return (\n <>\n \n \n \n \n \n \n = getNumberOfPages(count, rowsPerPage) - 1}\n aria-label=\"الصفحة التالية\"\n >\n \n \n = getNumberOfPages(count, rowsPerPage) - 1}\n aria-label=\"الصفحة الاخيرة\"\n >\n \n \n \n );\n}\n\nconst FormListPagination = ({\n rowsPerPage,\n rowCount,\n onChangePage,\n onChangeRowsPerPage,\n currentPage,\n}) => (\n \n onChangeRowsPerPage(Number(target.value))\n }\n ActionsComponent={TablePaginationActions}\n labelRowsPerPage={\"عدد النتائج في الصفحة\"}\n labelDisplayedRows={({ from, to, count, page }) =>\n `${from}${\n from !== to ? ` - ${to}` : \"\"\n } من ${count} نتيجة \\u00A0\\u00A0\\u00A0\\u00A0\\u00A0 الصفحة ${page + 1}`\n }\n />\n);\n\nexport default FormListPagination;\n","import { gql, useMutation, useQuery } from \"@apollo/client\";\nimport { Box, Button, Typography } from \"@material-ui/core\";\nimport { createContext, useContext, useState } from \"react\";\nimport DataTable from \"react-data-table-component\";\nimport { BiPlusCircle } from \"react-icons/bi\";\nimport { useHistory } from \"react-router-dom\";\nimport { Navigation } from \"../../Context\";\nimport ConfirmationDialog, {\n useConfirmationDialog,\n} from \"../../components/common/ConfirmationDialog\";\nimport { FloatingAlertContext } from \"../../components/common/FloatingAlert\";\nimport Loading from \"../../components/common/Loading\";\nimport { l1 } from \"../../components/local.json\";\nimport capitalizeFirstLetter from \"../../helpers/capitalizeFirstLetter\";\nimport FormListPagination from \"./FormListPagination\";\nimport { FormDefinition } from \"./context\";\nexport const FormActionsContext = createContext();\n\nfunction FormList() {\n // get form and center id from context\n const form = useContext(FormDefinition);\n const { centerId, user, membershipRole } = useContext(Navigation);\n const [itemsPerPage, setItemsPerPage] = useState(10);\n const [page, setPage] = useState(0);\n // listing query\n const QUERY_LIST = gql`\n query {\n ${\n form.collectionName\n }(where: { center: \"${centerId}\"}, sort: \"createdAt:desc\") {\n id createdAt ${form.getSingleQuerySelection(form.views.list.requiredFields ?? [])}\n }\n }\n `;\n\n const { data, loading, error, refetch } = useQuery(QUERY_LIST);\n\n // delete form mutation\n const DELETE_MUTATION = gql`\n mutation deleteItem($id: ID!) {\n delete${capitalizeFirstLetter(\n form.itemName\n )}(input: { where: { id: $id } }) {\n ${form.itemName} {\n id\n }\n }\n }\n `;\n const [deleteItem, { loading: deleting, error: deleteError }] = useMutation(\n DELETE_MUTATION,\n {\n onCompleted(data) {\n form.postMutation.deleted(data);\n floatingAlert({\n message: \"تم حذف الاستمارة بنجاح!\",\n severity: \"success\",\n });\n refetch();\n },\n onError: (error) => {\n floatingAlert({\n message:\n \"حصل خطأ أثناء محاولة حذف الاستمارة. رجاءً أعد المحاولة لاحقًا\",\n severity: \"error\",\n });\n },\n }\n );\n const { dialogProps, confirmationDialog } = useConfirmationDialog();\n const floatingAlert = useContext(FloatingAlertContext);\n const history = useHistory();\n const availableItems = data?.[form.collectionName]?.filter((item)=> form.availableActions.view(item, {user, membershipRole})) ?? []\n return loading ? (\n \n ) : (\n \n }\n style={{ fontWeight: 700, marginBottom: 20 }}\n onClick={() => {\n history.push(form.routes.add.path);\n }}\n >\n {l1.add}\n \n \n {\n await setItemsPerPage(perPage);\n }}\n paginationComponent={FormListPagination}\n onChangePage={(page) => {\n setPage(page);\n }}\n striped\n highlightOnHover\n noDataComponent={\n لا توجد أي نتائج\n }\n customStyles={{\n rows: {\n style: {\n minHeight: 64, // override the row height\n },\n },\n headCells: {\n style: {\n fontWeight: 700,\n fontSize: 18,\n paddingLeft: 8, // override the cell padding for head cells\n paddingRight: 8,\n },\n },\n cells: {\n style: {\n fontSize: 18,\n paddingLeft: 8, // override the cell padding for data cells\n paddingRight: 8,\n },\n },\n }}\n />\n \n \n \n );\n}\n\nFormList.propTypes = {};\n\nexport default FormList;\n","import { Box, Button, CircularProgress } from \"@material-ui/core\";\nimport { useContext } from \"react\";\nimport { generatePath, useHistory } from \"react-router-dom\";\nimport { l1 } from \"../../components/local.json\";\nimport { FormActionsContext } from \"./FormList\";\nimport { Navigation } from \"../../Context\";\n\nfunction FormListActions({ id }) {\n const { form, confirmationDialog, deleteItem, deleting, data } =\n useContext(FormActionsContext);\n const { membershipRole, user } = useContext(Navigation);\n const item = data.find(item => item.id === id)\n const history = useHistory();\n return (\n \n {form.enabledRoutes.includes(\"view\") && form.availableActions.view(item, {user, membershipRole}) && ( \n {\n history.push(generatePath(form.routes.view.path, { id }));\n }}\n disabled={deleting}\n >\n {l1.view}\n \n )}\n {form.enabledRoutes.includes(\"edit\") && form.availableActions.edit(item, {user, membershipRole}) && (\n {\n history.push(generatePath(form.routes.edit.path, { id }));\n }}\n disabled={deleting}\n >\n {l1.edit}\n \n )}\n {\n form.availableActions.delete(item, {user, membershipRole}) && (\n }\n color=\"secondary\"\n variant=\"outlined\"\n style={{ fontWeight: 700 }}\n onClick={() => {\n confirmationDialog({\n title: l1.deleteItem,\n content: l1.confirmation,\n onConfirm: () => {\n deleteItem({\n variables: {\n id,\n },\n });\n },\n });\n }}\n disabled={deleting}\n >\n {l1.delete}\n \n )}\n \n );\n}\n\nFormListActions.propTypes = {};\n\nexport default FormListActions;\n","import {\n Box,\n Breadcrumbs,\n Button,\n Container,\n makeStyles,\n Paper,\n Typography,\n} from \"@material-ui/core\";\nimport PropTypes from \"prop-types\";\nimport { useContext, useEffect } from \"react\";\nimport { BiPrinter } from \"react-icons/bi\";\nimport { Link } from \"react-router-dom\";\nimport TopBar from \"../../components/common/TopBar\";\nimport { Navigation } from \"../../Context\";\nimport { FormContext, FormDefinition } from \"./context\";\n\nconst useStyles = makeStyles({\n paper: {\n border: \"solid 1px black\",\n boxShadow: \"2px 3px 4px rgba(20,20,20,0.4);\",\n borderRadius: 8,\n padding: 24,\n marginTop: 24,\n },\n noPadding: {\n paddingTop: 0,\n },\n noShadow: {\n boxShadow: \"unset !important\",\n },\n});\nfunction FormPageLayout({ view, children }) {\n const classes = useStyles();\n const form = useContext(FormDefinition);\n const formContext = useContext(FormContext);\n const { info } = useContext(Navigation);\n const printing = window.location.search.includes(\"print\");\n useEffect(() => {\n if (printing) {\n window.addEventListener(\"afterprint\", (e) => {\n window.close();\n });\n window.print();\n }\n }, []);\n return (\n <>\n {!printing && }\n \n \n {!printing && (\n \n \n {form.name}\n \n \n )}\n \n {!printing && (\n \n \n {info.centerName}\n الملفات\n {view === \"list\" ? (\n {form.name}\n ) : (\n \n {form.name}\n \n )}\n \n {\n form.views[view === \"list\" ? \"list\" : formContext.mode]\n ?.title\n }\n \n \n {formContext?.mode === \"view\" && (\n }\n onClick={() => {\n window.open(`${window.location.href}?print`);\n }}\n variant=\"contained\"\n color=\"primary\"\n >\n طباعة\n \n )}\n \n )}\n \n {form.views[view === \"list\" ? \"list\" : formContext.mode]?.title}\n \n {children}\n \n \n \n \n );\n}\n\nFormPageLayout.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n form: PropTypes.object,\n};\nFormPageLayout.defaultProps = {};\n\nexport default FormPageLayout;\n","import { Box, TextField as MuiTextField, Typography } from \"@material-ui/core\";\n\nexport default function TextField({\n // field properties\n name,\n type,\n label,\n edit,\n readOnly,\n required,\n // data properties\n touched,\n error,\n value,\n handleChange,\n handleBlur,\n inputProps,\n minRows = 3,\n ...other\n}) {\n if (!edit) {\n return (\n \n {label && {label}:}\n {value ?? \"(غير محدد)\"}\n \n );\n } else {\n return (\n \n );\n }\n}\n","import React, { useState, useEffect } from \"react\";\nimport {\n Avatar,\n Typography,\n Box,\n Dialog,\n DialogContent,\n LinearProgress,\n makeStyles,\n TextField,\n DialogActions,\n Button,\n} from \"@material-ui/core\";\nimport { gql, useQuery } from \"@apollo/client\";\nimport { l1 } from \"../../../components/local.json\";\n\nconst GET_CENTER_MEMBERS = gql`\n query QueryCenterMembers($id: ID!) {\n centersLists(where: { id: $id }) {\n memberships(where: { status: \"ACTIVE\" }) {\n id\n user {\n id\n fullname\n avatar\n }\n role\n }\n }\n }\n`;\n\nconst useStyles = makeStyles((theme) => ({\n dialogContent: {\n margin: theme.spacing(2),\n },\n search: {\n margin: theme.spacing(2, 30),\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n },\n nameContainer: {\n marginBottom: theme.spacing(1),\n border: \"1px solid lightgrey\",\n padding: theme.spacing(1),\n borderRadius: theme.spacing(1),\n \"&:not(.selected):hover\": {\n backgroundColor: \"#ddd\",\n cursor: \"pointer\",\n },\n \"&.selected\": {\n backgroundColor: \"#eee\",\n border: \"solid 1px\" + theme.palette.primary.main,\n },\n },\n avatar: {\n marginRight: theme.spacing(2),\n },\n}));\n\nfunction SearchMember({\n name,\n ready,\n setReady,\n centerId,\n handleChange,\n initialSelected = null,\n}) {\n const [search, setSearch] = useState(\"\");\n const [result, setResult] = useState([]);\n const [selected, setSelected] = useState(initialSelected);\n\n const { loading, data } = useQuery(GET_CENTER_MEMBERS, {\n onError: (error) => console.error(\"QueryMembershipError: \", error),\n variables: {\n id: centerId,\n },\n onCompleted: () => {\n setResult(\n data?.centersLists[0]?.memberships?.filter(({ user }) =>\n user.fullname?.includes(search)\n )\n );\n },\n });\n\n useEffect(() => {\n setResult(\n data?.centersLists[0]?.memberships?.filter(({ user }) =>\n user.fullname?.includes(search)\n )\n );\n }, [search]);\n\n const choices =\n result?.filter(({ user }) => !selected || selected.id !== user.id) ?? [];\n const classes = useStyles();\n return (\n {\n setReady(false);\n }}\n maxWidth=\"lg\"\n fullWidth\n >\n \n \n {loading ? (\n \n ) : (\n {\n setSearch(e.target.value);\n }}\n />\n )}\n \n\n {selected && (\n \n \n \n \n {selected.fullname}\n \n \n setSelected(null)}\n >\n {l1.delete}\n \n \n )}\n \n {!choices?.length ? (\n \n {l1.noMember}\n \n ) : (\n choices?.map((membership) => (\n {\n setSelected(membership.user);\n }}\n >\n \n \n {membership.user.fullname}\n \n \n ))\n )}\n {selected ? (\n \n ) : null}\n \n \n {\n handleChange(selected);\n setReady(false);\n }}\n >\n {l1.confirm}\n \n {\n setSelected(initialSelected ?? null);\n setReady(false);\n }}\n >\n {l1.cancel}\n \n \n \n );\n}\nexport default SearchMember;\n","import { Box, Button, IconButton, Table, TableBody, TableCell, TableFooter, TableHead, TableRow, Typography } from \"@material-ui/core\";\nimport React from \"react\";\nimport { FaMinus, FaPlus } from 'react-icons/fa';\nimport FormField from \"../FormField\";\nimport { useField } from \"formik\";\nimport sparseUpdate from \"../../../helpers/sparseUpdate\";\nexport default function TableField({\n // field properties\n name,\n type,\n label,\n // data properties\n edit,\n columns,\n value: rows,\n emptyLabel,\n singleField,\n ...other\n}) {\n const aggregate = columns?.some(({aggregate}) => typeof aggregate === 'function');\n const [props, meta, helpers] = useField(name);\n return ( \n { label && !singleField && \n \n {label}\n \n }\n \n \n \n {edit && }\n { columns.map((col, index) => (\n \n {col.label}\n \n ))}\n \n \n \n {rows.length === 0\n ? \n \n \n {emptyLabel}\n \n \n \n : rows.map((_, rowIndex) => (\n \n {edit && (\n \n { \n const remainingRows = rows;\n remainingRows.splice(rowIndex, 1);\n helpers.setValue(remainingRows);\n } }>\n \n \n \n )}\n {columns.map((column, columnIndex) => (\n \n {column.type === 'calculated'\n ? {column.calculate({ rowIndex, rows })}\n : }\n \n ))}\n \n ))}\n\n \n \n\n {aggregate && (\n \n {edit && }\n {columns.map((column, columnIndex) => {\n return (\n \n \n {typeof column.aggregate === 'function' ? column.aggregate({ rows, rowIndex: column.rowIndex }) : null}\n \n \n );\n })}\n \n )}\n {edit && \n \n }\n variant=\"contained\"\n color=\"primary\"\n style={{ width: \"100%\", textAlign: 'center' }}\n onClick={() => { helpers.setValue(rows.concat([Array.from(columns, () => null)])); } }\n >\n إضافة سطر\n \n \n }\n \n
\n
)\n}\n\nfunction TableCellFormField({tableName, rowIndex, columnIndex, definition}){\n const fieldName = `${tableName}[${rowIndex}][${columnIndex}]`;\n const [props] = useField(fieldName);\n\n \n return ;\n}","\nimport * as Yup from \"yup\";\nimport camelCase from \"../helpers/camelCase\";\nimport sparseUpdate from \"../helpers/sparseUpdate\";\nimport FormLayout from \"./components/FormLayout\";\nimport FormList from \"./components/FormList\";\nimport FormListActions from \"./components/FormListActions\";\nimport FormPageLayout from \"./components/FormPageLayout\";\nimport { FormContext, FormContextProvider, FormDefinitionProvider } from \"./components/context\";\nimport CheckBoxField from \"./components/fields/CheckBoxField\";\nimport TextField from \"./components/fields/TextField\";\nimport UserField from \"./components/fields/UserField\";\nimport TableField from \"./components/fields/TableField\";\n\nclass Form {\n type = \"form\";\n static required = [\"slug\", \"name\"];\n static basePath = \"/forms\";\n static inputTypeMap = {\n string: \"text\",\n number: \"number\",\n date: \"date\",\n };\n static routeMap = {\n list: \"\",\n add: \"add\",\n edit: \":id/edit\",\n view: \":id/view\",\n };\n static validationRuleMap = {\n string: Yup.string(),\n select: Yup.string(),\n number: Yup.number().integer().min(0),\n date: Yup.date(),\n user: Yup.object().nullable(),\n };\n static fieldDefaultsByType = {\n number: {\n valueFor: {\n save: (value) => Number(value ?? 0)\n },\n inputProps: {\n min: 0,\n }\n },\n user: {\n valueFor: {\n save: (user) => user ? user.id : null,\n },\n Component: UserField,\n },\n timestamp: {\n valueFor:{\n edit: Boolean,\n save: (value) => value ? new Date() : null,\n view: (value) => value ? `تم بتاريخ ${new Date(value).toISOString()}` : null\n },\n emptyLabel: 'لم يتم بعد',\n Component: CheckBoxField,\n },\n table: {\n Component: TableField,\n emptyLabel: 'لم تدخل أي شيء بعد',\n }\n //Component: CheckBoxField,\n\n };\n static defaultFieldPermissions = {\n add: {\n show: true,\n write: true,\n autoWrite: false,\n required: false,\n },\n edit: {\n show: true,\n write: true,\n autoWrite: false,\n required: false,\n },\n view: {\n show: true,\n write: false,\n },\n }\n\n static fieldPermissionProfiles = {\n readOnly: {\n add: { write: false },\n edit: { write: false }\n },\n fillFirst: {\n add: { required: true },\n edit: { write: false },\n },\n fillLater: {\n add: { show: false, write: false},\n edit: { write: true},\n },\n fillOnce: {\n add: { write: false, writeOnce: true},\n edit: { write: true}\n },\n static: {\n add: {write: false},\n edit: {write: false}\n },\n autoFillFirst: {\n add: { required: true, write: false, autoWrite: true },\n edit: { write: false}\n },\n autoFillOnce: {\n add: { required: true, write: false, autoWriteOnce: true },\n edit: { write: false}\n }\n }\n\n slug = null;\n name = null;\n roles = [\"owner\", \"assistant\", \"moderator\"];\n enabledRoutes = [\"list\", \"add\", \"edit\", \"view\"];\n availableActions = {\n // callback format (item: ItemType, context: {user, ...}) => Boolean,\n add: () => true,\n edit: () => true,\n view: () => true, // includes showing the item in the listing view.\n delete: () => true,\n }\n postMutation = {\n created: ({ history }) => {\n console.log(\"item created!\");\n history.push(this.routes.list.path);\n },\n updated: ({ history }) => {\n console.log(\"item updated!\");\n history.push(this.routes.list.path);\n },\n deleted: () => {\n console.log(\"item deleted!\");\n },\n };\n /** populate this with custom model fields, no default strapi fields, such as id, createdAt, updatedAt\n * follow a similar schema\n *\n * fields = {\n * name: {\n * type: 'string',\n * label: 'الاسم',\n * permissions: 'readonly',\n * nullable: false;\n * },\n * start:{\n * label: 'تاريخ البداية',\n * type: 'date',\n * },\n * end: {\n * label: 'تاريخ النهاية',\n * },\n * budget: {\n * label: 'الميزانية ($)',\n * type: 'number',\n * }\n * }\n *\n * `permissions` can be one of\n * - static: data comes from a `data` attribute, and follows the exact type of the field\n * - read-write [default]: can be filled anytime.\n * - read-only: cannot be filled\n * - fillLater: fillable during creation, then readonly in modification.\n * - fillLater: fillLater: not visible during creation, then fillable in modification.\n *\n * if `nullable` is true:\n * - the field's default value is initially null-like (renders empty string or 0)\n * - when a field's value is null-like it's set to null on save\n *\n */\n\n fields = {\n id: {\n type: \"text\",\n label: \"الرقم\",\n permissions: 'readOnly',\n },\n createdAt: {\n type: \"date\",\n label: \"تاريخ الإنشاء\",\n permissions: 'readOnly',\n },\n updatedAt: {\n type: \"date\",\n label: \"تاريخ أخر تحديث\",\n permissions: 'readOnly',\n },\n };\n layout = [];\n views = {\n list: {\n title: \"قائمة الاستمارات\",\n /**\n * list of fields to fetch in order to display the rows\n * no need to add 'id' and 'createdAt',\n */\n fields: [],\n /**\n *\n */\n columns: [\"id\", \"actions\"],\n pageSize: 20,\n },\n add: {\n title: \"إضافة عنصر جديد\",\n },\n edit: {\n title: \"استمارة التعديل\",\n },\n view: {\n title: \"مشاهدة الاستمارة\",\n },\n };\n /** Constructor */\n constructor(props = {}) {\n this.constructor.required.forEach((requiredProp) => {\n if (!(requiredProp in props)) {\n throw new TypeError(\n `'${requiredProp}' is a required property to instantiate a Form class`\n );\n }\n });\n // Initialize item and collection names for GraphQL queries and mutations\n this.itemName = camelCase(props.slug);\n this.collectionName = this.itemName + \"s\";\n // populate object\n this.update(props);\n // Bind instance to component methods\n this.DefinitionProvider = this.DefinitionProvider.bind(this);\n this.ContextProvider = this.ContextProvider.bind(this);\n this.List = this.List.bind(this);\n this.Single = this.Single.bind(this);\n\n // Add enabled routes\n this.routes = Object.fromEntries(\n this.enabledRoutes.map((routeName) => [\n routeName,\n {\n path: [\n this.constructor.basePath,\n this.slug,\n this.constructor.routeMap[routeName],\n ].join(\"/\"),\n Component:\n routeName === \"list\"\n ? this.List\n : () => this.Single({ mode: routeName }),\n },\n ])\n );\n\n // add actions column to data table\n this.views.list.columns = this.views.list.columns.concat([\n { name: \"خيارات\", cell: FormListActions },\n ]);\n\n // compile defined layouts to remove string field name references\n this.compileLayouts();\n this.compileValidationSchemas();\n }\n\n /** Sparse update of the object's attributes */\n update(props) {\n for (let prop in props) {\n if (\n typeof props[prop] === \"object\" &&\n !Array.isArray(props[prop]) &&\n props[prop] !== null\n ) {\n if (!this.hasOwnProperty(prop)) {\n this[prop] = {};\n }\n sparseUpdate(this[prop], props[prop]);\n } else {\n this[prop] = props[prop];\n }\n }\n }\n\n getField(name) {\n const definition = this.fields[name];\n if (!definition) {\n throw new TypeError(`No definition found for field '${name}'`);\n }\n \n if(definition.type === 'table'){\n for(let index in definition.columns){\n definition.columns[index] = sparseUpdate(\n this.buildField(`${name}[${index}]`,definition.columns[index]),\n { singleField: true } \n );\n }\n }\n\n return this.buildField(name, definition);\n }\n\n buildField(name, definition){\n const fieldDefaults = {\n valueFor: {\n view: (value) => value,\n edit: (value) => value,\n save: (value) => value,\n },\n Component: TextField,\n };\n let field = sparseUpdate(\n { name, ...fieldDefaults },\n definition,\n this.constructor.fieldDefaultsByType?.[ definition.type] ?? {}\n );\n let permissions = JSON.parse(JSON.stringify(this.constructor.defaultFieldPermissions));\n field.permissions = sparseUpdate(permissions, this.constructor.fieldPermissionProfiles?.[definition.permissions] ?? {}); \n return field\n }\n\n DefinitionProvider({ children }) {\n return (\n {children}\n );\n }\n\n ContextProvider({ mode, children }) {\n return {children};\n }\n\n List() {\n const { DefinitionProvider } = this;\n return (\n \n \n \n \n \n );\n }\n\n /** @type Single React.Component */\n Single({ mode }) {\n const { DefinitionProvider, ContextProvider} = this;\n return (\n \n \n \n \n \n {({ SubmitButton }) => {\n return SubmitButton && ;\n }}\n \n \n \n \n );\n }\n\n getSingleQuerySelection(requestedFields) {\n const fields = Array.isArray(requestedFields) ? requestedFields : Object.keys(this.fields);\n let selection = [];\n fields.forEach((fieldName) => {\n const field = this.getField(fieldName);\n const { type, permissions, requiredFields, ...fieldProps } = field;\n\n // exclude the field if it's static content used in form but not fetched from db\n let subSelection = \"\";\n if (type === \"user\") {\n subSelection = \"{ id fullname avatar }\";\n } else if (type === 'select'){\n const {options, otherOptions} = fieldProps;\n if(otherOptions || options.some(({details})=> details)){\n subSelection = `${fieldName}__details`;\n }\n } else if (type === \"calculated\") {\n selection.push(this.getSingleQuerySelection(requiredFields ?? []));\n // prevent adding calculated field to selection\n return;\n }\n selection.push(fieldName)\n if(subSelection){\n selection.push(subSelection);\n };\n });\n return selection.join(\" \");\n }\n\n /** Compile Yup validation schemas for add and edit forms */\n compileValidationSchemas() {\n [\"add\", \"edit\"].forEach((mode) => {\n //const schemaOverrides = this.views[mode]?.validationSchema ?? {};\n this.views[mode].validationSchema = this.getValidationSchema(mode);\n //sparseUpdate(this.views[mode].validationSchema, schemaOverrides);\n });\n }\n\n /** Get the default Yup form validation schema for a specific mode */\n getValidationSchema(mode, root = null) {\n let validationSchema = {};\n const layout = root ?? this.views[mode].layout;\n layout.forEach(\n ({\n name,\n type,\n permissions,\n children,\n singleField,\n validationRule,\n ...layoutProps\n }) => {\n // Ensure this field or section should be accessed\n if (!permissions?.[mode] || permissions[mode].write) {\n // recurse validation rule resolving with children for section\n if (type === \"section\") {\n validationSchema = {\n ...validationSchema,\n ...this.getValidationSchema(\n mode,\n singleField ? [singleField] : children ?? []\n ),\n };\n } else {\n let rule = validationRule ?? this.constructor.validationRuleMap?.[type];\n if (rule) {\n if(type === 'select' ){\n const {options, otherOption} = layoutProps;\n const valuesRequiringDetails = (otherOption ? ['other'] : []).concat(\n options.map(({details}, index) => details ? String(index+1) : null).filter(Boolean)\n )\n if(valuesRequiringDetails.length > 0){\n validationSchema[`${name}__details`] = this.constructor.validationRuleMap['string'].when(name, {\n is: (value) => valuesRequiringDetails.includes(value),\n then: (rule) => rule.required(),\n otherwise: (rule) => rule.nullable(),\n });\n rule.oneOf((otherOption ? ['other'] : []).concat(\n options.map((_, index) => String(index+1))\n ))\n }\n }\n validationSchema[name] = permissions[mode].required ? rule.required() : rule.nullable();\n }\n }\n }\n }\n );\n return validationSchema;\n }\n\n /** Compile all layouts */\n compileLayouts() {\n this.compileLayout();\n [\"add\", \"edit\", \"view\"].forEach((mode) => {\n if (this.views[mode]?.layout) {\n this.compileLayout(this.views[mode].layout);\n } else {\n this.views[mode].layout = this.layout;\n }\n });\n }\n\n /** Compile layout specified in root.\n * otherwise compiles default layout\n */\n compileLayout(root = null) {\n root = root ?? this.layout;\n for (let i in root) {\n if (typeof root[i] === \"string\") {\n root[i] = this.getField(root[i]);\n } else if (typeof root[i]?.singleField === \"string\") {\n root[i].singleField = this.getField(root[i].singleField);\n } else if (root[i]?.children?.length) {\n this.compileLayout(root[i].children);\n }\n }\n }\n\n getInputType(fieldType) {\n return this.constructor.inputTypeMap?.[fieldType] ?? \"text\";\n }\n\n cleanedFormData(data, mode) {\n const cleanedData = {};\n for (let fieldName in data) {\n if(fieldName.endsWith('__details') && this.getField(fieldName.replace('__details', ''))?.type === 'select'){\n cleanedData[fieldName] = data[fieldName];\n } else {\n const field = this.getField(fieldName);\n if (['write', 'writeOnce', 'autoWrite', 'autoWriteOnce'].some((perm) => field.permissions[mode][perm])) {\n cleanedData[fieldName] = field.valueFor.save(data[fieldName]);\n }\n }\n }\n return cleanedData;\n }\n\n compiledValues(values, mode, context) {\n const compiledValues = {};\n for (let fieldName in this.fields) {\n const {\n name,\n type,\n permissions,\n value: staticValue,\n valueFor,\n requiredFields,\n calculate,\n ...fieldProps\n } = this.getField(fieldName);\n const fieldPermissions = permissions[mode];\n let value = staticValue;\n if(type !== 'calculated') {\n value = valueFor?.[\n (fieldPermissions.show && fieldPermissions.write)\n || fieldPermissions.autoWrite ? \"edit\" : \"view\"\n ](values[name], {values, ...context}) ?? value;\n if (type === \"table\" && !value){\n value = value ?? [ Array.from(fieldProps.columns, () => null ) ]\n } \n }\n compiledValues[fieldName] = value;\n if(type === 'select'){\n const {options, otherOptions} = fieldProps;\n if(otherOptions || options.some(({details})=> details)){\n compiledValues[`${fieldName}__details`] = null;\n }\n\n }\n }\n return compiledValues;\n }\n} \nexport default Form;\n","export default function camelCase(str) {\n const words = str.split(/[-_]/);\n const camelCaseWords = words.map((word, index) => {\n if(index) return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();\n return word.toLowerCase();\n });\n return camelCaseWords.join(\"\");\n}\n","import {\n Avatar,\n Box,\n Button,\n InputAdornment,\n Typography,\n} from \"@material-ui/core\";\nimport { useContext, useEffect, useState } from \"react\";\nimport { Navigation } from \"../../../Context\";\nimport SearchMember from \"./SearchMember\";\nimport TextField from \"./TextField\";\n\nexport default function UserField(props) {\n const { name, label, edit, value, handleChange } = props;\n const { centerId, user } = useContext(Navigation);\n const [ready, setReady] = useState(false);\n\n if (!edit) {\n return (\n \n {label && {label}:}\n {value?.fullname ?? value?.username ?? \"(غير محدد)\"}\n \n );\n }\n \n return (\n <>\n \n \n \n ),\n endAdornment: (\n \n {\n setReady(true);\n }}\n >\n اختيار\n \n \n ),\n }}\n />\n {\n handleChange({\n target: {\n name,\n value,\n },\n });\n }}\n />\n \n );\n}\n","import { Box, Checkbox, FormControlLabel, Typography } from \"@material-ui/core\";\n\nexport default function CheckBoxField({\n // field properties\n name,\n type,\n label,\n // data properties\n edit,\n touched,\n error,\n value,\n handleChange,\n handleBlur,\n inputProps,\n emptyLabel,\n ...other\n}) {\n if (!edit) {\n return (\n \n {label && {label}:}\n {value && value?.length ? value : emptyLabel}\n \n );\n } else {\n return (\n \n }\n label={label}\n />\n );\n }\n}\n","import Form from \"./Form\";\n\nconst BusinessPlan = {\n slug: \"business-plan\",\n name: \"نموذج كتابة تقرير لمشروع إعداد قيادي\",\n availableActions:{\n view: (item, {membershipRole, user}) => item.submittedAt && membershipRole === 'owner' || item.author.id === user.id,\n edit: (item, {user}) => item.author.id === user.id && !item.submittedAt,\n delete: (item, {membershipRole, user}) => item.submittedAt ? membershipRole === 'owner' : item.author.id === user.id,\n },\n fields:{\n name:{\n label: 'اسم المشروع',\n type: 'string',\n },\n introduction:{\n label: 'تعريف',\n helperText: 'ابدأ بتعريف بسسيط عن التقرير',\n type: 'string',\n multiline: true,\n },\n team:{\n label: 'فريق المشروع',\n helperText: 'يتألف الفريق من عدة تخصصات\\nاكتب عن هيكلة الفريق',\n type: 'string',\n multiline: true,\n },\n management:{\n label: 'إدارة المشروع المشروع',\n helperText: 'اكتب عن عملية إدارة المشروع، و دور كل أعضاء الفريق في العملية الإدارية',\n type: 'string',\n multiline: true,\n },\n time:{\n label: 'المدة و الأطر الزمنية',\n helperText: 'اكتب عن مدة تميد المشروع مع الإشارة لأي تأجيل في التنفيذ، او على العكس أي أعمال أنجزت في وقت قصير',\n type: 'string',\n multiline: true,\n },\n risks:{\n label: 'مخاطر المشروع',\n helperText: 'اكتب عن أي مخاطر واجهتكم أثناء تنفيذ المشروع',\n type: 'string',\n multiline: true,\n },\n expenses:{\n label: \"المصاريف\",\n type:'table',\n columns: [\n {\n label: 'البيان',\n type: 'string',\n multiline: true,\n minRows: 1,\n aggregate: ()=> \"الإجمالي\",\n },\n {\n label: 'تكلفة الفرد',\n type: 'number',\n },\n {\n label: 'العدد',\n type: 'number',\n },\n {\n label: '$',\n type: 'calculated',\n calculate: ({rows, rowIndex}) => {\n const [value,quantity] = rows[rowIndex].slice(1,3).map(Number);\n return ([value, quantity].includes(NaN) ? 0 : value * quantity)\n },\n aggregate: ({rows}) => rows.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n },\n {\n label: 'ملاحظات',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n ],\n // aggregate: false if none of the columns has an aggregate function\n },\n revenue:{\n label: \"الإيرادات\",\n type:'table',\n columns: [\n {\n label: 'البيان',\n type: 'string',\n multiline: true,\n minRows: 1,\n aggregate: ()=> \"الإجمالي\",\n },\n {\n label: 'تكلفة الفرد',\n type: 'number',\n },\n {\n label: 'العدد',\n type: 'number',\n },\n {\n label: '$',\n type: 'calculated',\n calculate: ({rows, rowIndex}) => {\n const [value,quantity] = rows[rowIndex].slice(1,3).map(Number);\n return ([value, quantity].includes(NaN) ? 0 : value * quantity)\n },\n aggregate: ({rows}) => rows.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n },\n {\n label: 'ملاحظات',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n ],\n // aggregate: false if none of the columns has an aggregate function\n },\n totalRevenue:{\n label: 'إجمالي الإيرادات',\n type: 'calculated',\n requiredFields: ['revenue'],\n calculate: ({revenue}) => revenue.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n permissions: 'readOnly',\n },\n totalExpenses: {\n label: 'إجمالي المصاريف',\n type: 'calculated',\n requiredFields: ['expenses'],\n calculate: ({expenses}) => expenses.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n permissions: 'readOnly',\n },\n netProfit: {\n label: 'صافي الربح',\n type: 'calculated',\n requiredFields: ['revenue', 'expenses'],\n calculate: ({expenses, revenue}) => (\n revenue.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0)\n - expenses.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0)\n ),\n permissions: 'readOnly',\n },\n author: {\n label: \"قام بإعداد التقرير\",\n type: \"user\",\n permissions: 'autoFillFirst',\n valueFor: {\n view: (value, context) => value ?? context.user,\n edit: (value, context) => value ?? context.user,\n },\n },\n submittedAt: {\n label: \"رفع التقرير للمسؤول\",\n type: \"timestamp\",\n permissions: 'fillOnce',\n }\n },\n layout:[\n {\n type: 'section',\n singleField: 'name'\n },\n {\n type: 'section',\n singleField: 'introduction'\n },\n {\n type: 'section',\n singleField: 'team'\n },\n {\n type: 'section',\n singleField: 'management'\n },\n {\n type: 'section',\n singleField: 'time'\n },\n {\n type: 'section',\n singleField: 'risks'\n },\n {\n type: 'section',\n label: 'المالية',\n children: [\n 'revenue',\n 'expenses',\n 'totalRevenue',\n 'totalExpenses',\n 'netProfit'\n ],\n },\n {\n type: \"section\",\n label: \"معلومات عن التقرير\",\n children:[\n 'author',\n 'submittedAt',\n ]\n },\n ],\n views:{\n list: {\n title: 'قائمة التقارير',\n requiredFields: ['name', 'createdAt', 'submittedAt', 'author'],\n columns: [\n {\n name: \"العنوان\",\n selector: ({ name }) => name ?? '(غير محدد)',\n searchable: true,\n sortable: true,\n },\n {\n name: \"انشئ بتاريخ\",\n selector: ({ createdAt }) => createdAt,\n searchable: true,\n sortable: true,\n },\n {\n name: \"كاتب التقرير\",\n selector: ({ author }) => author ? author?.fullname : '(غير محدد)' ,\n searchable: true,\n sortable: true,\n },\n {\n name: \"تم رفعه بتاريخ\",\n selector: ({ submittedAt }) => submittedAt ?? 'ليس بعد',\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: 'تقرير جديد',\n },\n edit: {\n title: 'تعديل التقرير',\n },\n view: {\n title: 'تقرير المشروع'\n }\n }\n};\n\nexport default new Form(BusinessPlan);\n","import Form from \"./Form\";\n\nconst ComplaintAboutSuperior = {\n slug: \"complaint-about-superior\",\n name: \"نموذج تقديم الموظف شكوى عن مديره\",\n availableActions:{\n edit: () => false,\n view: (item, {user, membershipRole}) => membershipRole === 'owner' || item.employee.id === user.id,\n delete: (_, {membershipRole}) => membershipRole === 'owner',\n },\n fields:{\n employee:{\n label: 'الموظف',\n type: 'user',\n permissions: 'autoFillFirst',\n valueFor: {\n view: (value, context) => value ?? context.user,\n edit: (value, context) => value ?? context.user,\n },\n },\n job:{\n type: 'string',\n label: 'الوظيفة',\n permissions: 'fillFirst',\n },\n unit: {\n type: 'string',\n label: 'الوحدة التنظيمية',\n permissions: 'fillFirst',\n },\n employedSince: {\n type: 'date',\n label: 'تم التوظيف بتاريخ',\n permissions: 'fillFirst',\n },\n superior:{\n label: 'المدير المشتكى منه',\n type: 'string',\n permissions: 'fillFirst',\n },\n behavior:{\n label: 'تصرف المدير',\n type: 'string',\n multiline: true,\n minRows: 5,\n permissions: 'fillFirst',\n },\n reasons:{\n label: 'أسباب الشكوى',\n type: 'string',\n permissions: 'fillFirst',\n multiline: true,\n minRows: 5,\n }\n },\n layout:[\n {\n type: 'section',\n label: 'معلومات المشتكي',\n children: [\n 'employee',\n 'job',\n 'unit',\n 'employedSince'\n ]\n },\n {\n type: 'section',\n label: 'تفاصيل الشكوى',\n children: [\n 'superior',\n 'behavior',\n 'reasons',\n ]\n },\n ],\n views:{\n list: {\n title: 'قائمة الشكاوى',\n requiredFields: ['employee', 'createdAt', 'superior'],\n columns: [\n {\n name: \"الموظف\",\n selector: ({ employee }) => employee ? employee?.fullname : '(غير محدد)',\n searchable: true,\n sortable: true,\n },\n {\n name: \"تاريخ الشكوى\",\n selector: ({ createdAt }) => createdAt,\n searchable: true,\n sortable: true,\n },\n {\n name: \"المشتكى منه\",\n selector: ({ superior }) => superior,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: 'شكوى جديدة',\n },\n view: {\n title: 'تفاصيل الشكوى'\n }\n }\n};\nexport default new Form(ComplaintAboutSuperior);\n","import Form from \"./Form\";\n\nconst EmployeeAbsence = {\n slug: \"employee-absence\",\n name: \"سجل غياب الموظفين\",\n fields:{\n employee:{\n label: 'الموظف',\n type: 'user',\n permissions: 'fillFirst',\n },\n job:{\n type: 'string',\n label: 'الوظيفة',\n permissions: 'fillFirst',\n\n },\n unit: {\n type: 'string',\n label: 'الوحدة التنظيمية',\n permissions: 'fillFirst',\n },\n absences:{\n label: \"الجدول\",\n type:'table',\n columns: [\n {\n label: '#',\n type: 'calculated',\n calculate: ({rowIndex}) => rowIndex + 1,\n },\n {\n label: 'عدد أيام الغياب',\n type: 'number',\n min: 1,\n },\n {\n label: 'تاريخ الغياب',\n type: 'date',\n },\n {\n label: 'الأسباب',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n {\n label: 'الإجراء الإداري',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n ],\n \n // aggregate: false if none of the columns has an aggregate function\n },\n },\n layout:[\n {\n type: 'section',\n label: 'معلومات السجل',\n children: [\n 'employee',\n 'job',\n 'unit'\n ]\n },\n {\n type: 'section',\n singleField:'absences',\n }\n ],\n views:{\n list: {\n title: 'قائمة السجلات',\n requiredFields: ['employee'],\n columns: [\n\n {\n name: \"الموظف\",\n selector: ({ employee }) => employee ? employee?.fullname : '(غير محدد)',\n searchable: true,\n sortable: true,\n },\n {\n name: \"الوظيفة\",\n selector: ({ employee }) => employee ? employee?.fullname : '(غير محدد)',\n searchable: true,\n sortable: true,\n },\n {\n name: \"آخر تحديث\",\n selector: ({ updatedAt, createdAt }) => updatedAt ?? createdAt,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: 'إنشاء سجل غياب جديد',\n },\n edit: {\n title: 'تعديل سجل الغياب',\n },\n view: {\n title: 'سجل غيابات الموظف'\n }\n }\n};\n\nexport default new Form(EmployeeAbsence);\n","import Form from \"./Form\";\n\nconst EventPlan = {\n slug: \"event-plan\",\n name: \"نموذج تخطيط فعالية / نشاط\",\n fields: {\n name: {\n label: \"اسم النشاط\",\n type: \"string\",\n },\n guests: {\n label: \"الضيوف\",\n type: \"string\",\n multiline: true,\n },\n date: {\n label: \"التاريخ\",\n type: \"string\",\n },\n time: {\n label: \"الوقت\",\n type: \"string\",\n },\n location: {\n label: \"تفاصيل المكان\",\n type: \"string\",\n multiline: true,\n },\n manager: {\n label: \"مدير المشروع\",\n type: \"string\",\n },\n whatTheyShouldKnow: {\n label: \"ماذا تريد لهم أن يعرفوا\",\n type: \"string\",\n multiline: true,\n },\n revenueTarget: {\n label: \"العائد من المشروع لصالح من؟\",\n type: \"string\",\n multiline: true,\n },\n programme: {\n label: \"شرح عام لما سيحدث\",\n type: \"string\",\n multiline: true,\n },\n funding : {\n label: \"التمويل\",\n helperText: \"اكتب بالتفصيل ما هي تكاليف النشاط و كيف تقترح تعطيتها (اشتراكات، ميزانية مخصصة، من الرعاه، النشاط سيغطي نفسه بنفسه) \",\n type: \"string\",\n multiline: true,\n },\n },\n layout: [\n {\n type: \"section\",\n singleField: \"name\",\n },\n {\n type: \"section\",\n singleField: \"guests\",\n },\n {\n label: \"الإطار الزماني و المكاني\",\n type: \"section\",\n children: ['date', 'time', 'location']\n },\n {\n type: \"section\",\n singleField: \"manager\",\n },\n {\n type: \"section\",\n singleField: \"whatTheyShouldKnow\",\n },\n {\n type: \"section\",\n singleField: \"programme\",\n },\n {\n type: \"section\",\n singleField: \"revenueTarget\",\n },\n {\n type: \"section\",\n singleField: \"funding\",\n },\n\n\n\n\n ],\n\n views: {\n list: {\n title: \"قائمة الأنشطة\",\n requiredFields: [\"name\", \"date\"],\n columns: [\n {\n name: \"اسم النشاط\",\n selector: ({ name }) => {name},\n searchable: true,\n sortable: true,\n },\n {\n name: \"تاريخ النشاط\",\n selector: ({ date }) => date,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: \"نشاط جديد\",\n },\n edit: {\n title: \"تعديل ورقة تخطيط النشاط\",\n },\n view: {\n title: \"ورقة تخطيط نشاط\",\n },\n },\n};\n\n\nexport default new Form(EventPlan);\n","import Form from \"./Form\";\n\nconst MeetingSchedule = {\n slug: \"meeting-schedule\",\n name: \"نموذج جدول الزيارات و اللقاءات\",\n fields:{\n name:{\n label: 'عنوان الجدول',\n type: 'string',\n },\n schedule:{\n label: \"الجدول\",\n type:'table',\n columns: [\n {\n label: 'اليوم',\n type: 'date',\n },\n {\n label: 'الزيارات',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n {\n label: 'اللقاءات',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n ],\n // aggregate: false if none of the columns has an aggregate function\n },\n },\n layout:[\n 'name',\n 'schedule',\n ],\n views: {\n list: {\n title: \"قائمة الجداول\",\n requiredFields: [\"name\", 'createdAt'],\n columns: [\n {\n name: \"العنوان\",\n selector: ({ name }) => {name},\n searchable: true,\n sortable: true,\n },\n {\n name: \"بتاريخ\",\n selector: ({ createdAt }) => createdAt ,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: \"جدول جديد\",\n },\n edit: {\n title: \"تعديل الجدول\",\n },\n view: {\n title: \"جدول الزيارات و اللقاءات\",\n },\n },\n};\n\nexport default new Form(MeetingSchedule);\n","import { Box, Typography } from \"@material-ui/core\";\nimport lineSeparatedValues from \"../../../helpers/lineSparatedValues\";\nimport TextField from \"./TextField\";\n\nexport default function TextListField(props) {\n const { edit, label, value } = props;\n\n if (!edit) {\n const list = lineSeparatedValues(value);\n return (\n \n {label && {label}:}\n {list.length > 0 ? (\n
    \n {list.map((item, index) => (\n
  • {item}
  • \n ))}\n
\n ) : (\n (غير محدد)\n )}\n
\n );\n }\n return (\n \n );\n}\n","/** Turns a multiline text into an array */\nexport default function lineSeparatedValues(text = \"\") {\n return Array.isArray(text)\n ? text\n : (text?.split(\"\\n\") ?? [])\n .map((part) => part.trim())\n .filter((part) => part?.length > 0);\n}\n","import sparseUpdate from \"../helpers/sparseUpdate\";\nimport TextListField from \"./components/fields/TextListField\";\nimport Form from \"./Form\";\n\nconst staticFieldPermissions = sparseUpdate(\n JSON.parse(JSON.stringify(Form.defaultFieldPermissions)),\n Form.fieldPermissionProfiles.static,\n)\nconst ProjectSheet = {\n slug: \"project-sheet\",\n name: \"نموذج استمارة مشروع\",\n fields: {\n manager: {\n label: \"مدير المشروع\",\n type: \"user\",\n },\n name: {\n label: \"اسم المشروع\",\n type: \"string\",\n },\n shortDescription: {\n label: \"وصف مختصر\",\n type: \"string\",\n },\n budget: {\n label: \"الميزانية التقديرية للمشروع ($)\",\n type: \"number\",\n },\n start: {\n label: \"تاريخ البداية\",\n type: \"date\",\n },\n end: {\n label: \"تاريخ النهاية\",\n type: \"date\",\n },\n duration: {\n label: \"المدة التقديرية (أيام)\",\n type: \"calculated\",\n requiredFields: [\"start\", \"end\"],\n // calculate date difference in days\n calculate: ({ start, end }) =>\n (new Date(end) - new Date(start)) / 86400000,\n permissions: 'readOnly',\n },\n goals: {\n label: \"الاهداف\",\n type: \"string\",\n Component: TextListField,\n },\n successCriteria: {\n label: \"معايير النجاح الخاصة بالمشروع\",\n type: \"string\",\n Component: TextListField,\n },\n managerPrivileges: {\n label: \"صلاحيات مدير المشروع\",\n type: \"string\",\n Component: TextListField,\n },\n },\n layout: [\n {\n label: \"معلومات عامة\",\n type: \"section\",\n children: [\n \"manager\",\n \"name\",\n \"shortDescription\",\n \"budget\",\n \"start\",\n \"end\",\n \"duration\",\n ],\n },\n {\n type: \"section\",\n singleField: \"goals\",\n },\n {\n label: \"معايير نجاح المشروع\",\n type: \"section\",\n children: [\n {\n type: \"section\",\n singleField: {\n name: \"commonSuccessCriteria\",\n label: \"معايير النجاح العامة لكل المشاريع\",\n type: \"string\",\n permissions: staticFieldPermissions,\n value: [\n \"تحقيق أهداف المشروع كاملة\",\n \"إنهاء المشروع في الوقت المحدد\",\n ],\n Component: TextListField,\n },\n },\n {\n type: \"section\",\n singleField: \"successCriteria\",\n },\n ],\n },\n {\n type: \"section\",\n singleField: \"managerPrivileges\",\n },\n ],\n\n views: {\n list: {\n title: \"قائمة المشاريع\",\n requiredFields: [\"name\", \"start\", \"end\", \"budget\"],\n columns: [\n {\n name: \"اسم المشروع\",\n selector: ({ name }) => {name},\n searchable: true,\n sortable: true,\n },\n {\n name: \"تاريخ البداية\",\n selector: ({ start }) => start,\n searchable: true,\n sortable: true,\n },\n {\n name: \"تاريخ النهاية\",\n selector: ({ end }) => end,\n searchable: true,\n sortable: true,\n },\n {\n name: \"الميزانية\",\n selector: ({ budget }) => budget,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: \"استمارة مشروع جديد\",\n },\n edit: {\n title: \"تعديل استمارة مشروع\",\n },\n view: {\n title: \"استمارة مشروع\",\n },\n },\n};\n\nexport default new Form(ProjectSheet);\n","import Form from \"./Form\";\n\nconst Suggestion = {\n slug: \"suggestion\",\n name: \"نموذج اقتراح / ملاحظة / شكوى\",\n availableActions:{\n edit: () => false,\n view: (item, {user, membershipRole}) => membershipRole === 'owner' || item.author.id === user.id,\n delete: (_, {membershipRole}) => membershipRole === 'owner',\n },\n fields:{\n author:{\n label: 'صاحب الاقتراح / الملاحظة / الشكوى',\n type: 'user',\n permissions: 'autoFillFirst',\n valueFor: {\n edit: (_, context) => context.user,\n view: (value) => value,\n },\n },\n subject:{\n label: \"الموضوع\",\n type: \"string\",\n permissions: 'fillFirst'\n },\n to: {\n label: 'الجهة المعنية', \n type: 'string',\n permissions: 'fillFirst'\n },\n details: {\n label: 'التفاصيل',\n type: \"string\",\n multiline: true,\n minRows: 5,\n }\n },\n layout:[\n {\n type: 'section',\n label: 'معلومات سريعة',\n children:[\n 'author',\n 'to',\n 'subject',\n ]\n },\n {\n type: 'section',\n singleField: 'details'\n }\n ],\n views: {\n list: {\n title: \"قائمة الرسائل\",\n requiredFields: [\"subject\", \"author\", 'createdAt'],\n columns: [\n {\n name: \"الموضوع\",\n selector: ({ subject }) => {subject},\n searchable: true,\n sortable: true,\n },\n {\n name: \"من طرف\",\n selector: ({ author }) => author ? author?.fullname : '(غير محدد)',\n searchable: true,\n sortable: true,\n },\n {\n name: \"بتاريخ\",\n selector: ({ createdAt }) => createdAt ,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: \"رسالة جديدة\",\n },\n view: {\n title: \"اقتراح / ملاحظة / شكوى\",\n },\n },\n\n};\n\nexport default new Form(Suggestion);\n","import Form from \"./Form\";\n\nconst TrainingProgram = {\n slug: \"training-program\",\n name: \"نموذج توزيع المواد التدريبية والأنشطة\",\n fields:{\n name:{\n label: 'اسم الدورة',\n type: 'string',\n },\n program:{\n label: \"الجدول\",\n type:'table',\n columns: [\n {\n label: 'اليوم',\n type: 'calculated',\n calculate: ({rowIndex}) => rowIndex + 1,\n },\n {\n label: 'التاريخ',\n type: 'date',\n },\n {\n label: 'صباحا',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n {\n label: 'عصرا',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n {\n label: 'ملاحظة',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n ],\n // aggregate: false if none of the columns has an aggregate function\n },\n },\n layout:[\n 'name',\n 'program',\n ],\n views: {\n list: {\n title: \"قائمة الجداول\",\n requiredFields: [\"name\", 'createdAt'],\n columns: [\n {\n name: \"العنوان\",\n selector: ({ name }) => {name},\n searchable: true,\n sortable: true,\n },\n {\n name: \"أنشئ بتاريخ\",\n selector: ({ createdAt }) => createdAt ,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: \"جدول توزيع جديد\",\n },\n edit: {\n title: \"تعديل جدول التوزيع\",\n },\n view: {\n title: \"توزيع المواد التدريبية والأنشطة\",\n },\n },\n};\n\nexport default new Form(TrainingProgram);","import Form from \"./Form\";\n\nconst TripFinancialEstimation = {\n slug: \"trip-financial-estimation\",\n name: \"نموذج تقدير مصاريف وإيرادات الرحلات\",\n fields:{\n name:{\n label: 'الرحلة',\n type: 'string',\n },\n numberOfPeople:{\n label: \"عدد الأشخاص\",\n type: 'number',\n },\n expenses:{\n label: \"المصاريف\",\n type:'table',\n columns: [\n {\n label: 'البيان',\n type: 'string',\n multiline: true,\n minRows: 1,\n aggregate: ()=> \"الإجمالي\",\n },\n {\n label: 'تكلفة الفرد',\n type: 'number',\n },\n {\n label: 'العدد',\n type: 'number',\n },\n {\n label: '$',\n type: 'calculated',\n calculate: ({rows, rowIndex}) => {\n const [value,quantity] = rows[rowIndex].slice(1,3).map(Number);\n return ([value, quantity].includes(NaN) ? 0 : value * quantity)\n },\n aggregate: ({rows}) => rows.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n },\n {\n label: 'ملاحظات',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n ],\n // aggregate: false if none of the columns has an aggregate function\n },\n revenue:{\n label: \"الإيرادات\",\n type:'table',\n columns: [\n {\n label: 'البيان',\n type: 'string',\n multiline: true,\n minRows: 1,\n aggregate: ()=> \"الإجمالي\",\n },\n {\n label: 'تكلفة الفرد',\n type: 'number',\n },\n {\n label: 'العدد',\n type: 'number',\n },\n {\n label: '$',\n type: 'calculated',\n calculate: ({rows, rowIndex}) => {\n const [value,quantity] = rows[rowIndex].slice(1,3).map(Number);\n return ([value, quantity].includes(NaN) ? 0 : value * quantity)\n },\n aggregate: ({rows}) => rows.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n },\n {\n label: 'ملاحظات',\n type: 'string',\n multiline: true,\n minRows: 1,\n },\n ],\n // aggregate: false if none of the columns has an aggregate function\n },\n averageCostPerPerson: {\n label: 'متوسط التكلفة للشخص',\n type: 'calculated',\n requiredFields: ['expenses', 'numberOfPeople'],\n calculate: ({expenses, numberOfPeople}) => numberOfPeople > 0\n ? expenses.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0) / numberOfPeople\n : 0,\n permissions: 'readOnly',\n },\n totalRevenue:{\n label: 'إجمالي الإيرادات',\n type: 'calculated',\n requiredFields: ['revenue'],\n calculate: ({revenue}) => revenue.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n permissions: 'readOnly',\n },\n totalExpenses: {\n label: 'إجمالي المصاريف',\n type: 'calculated',\n requiredFields: ['expenses'],\n calculate: ({expenses}) => expenses.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0),\n permissions: 'readOnly',\n },\n remainingExpenses: {\n label: 'المصاريف المتبقية بعد خصم الإيرادات',\n type: 'calculated',\n requiredFields: ['revenue', 'expenses'],\n calculate: ({expenses, revenue}) => (\n expenses.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0)\n - revenue.reduce((sum, row) => {\n const [value,quantity] = row.slice(1,3).map(Number);\n return sum + ([value, quantity].includes(NaN) ? 0 : value * quantity)\n }, 0)\n ),\n permissions: 'readOnly',\n },\n },\n layout:[\n 'name',\n {\n type: 'section',\n label: 'المصاريف',\n children: [\n 'expenses',\n 'numberOfPeople',\n 'averageCostPerPerson'\n ],\n },\n {\n type: 'section',\n singleField: 'revenue',\n },\n {\n type: 'section',\n label: 'النتيجة',\n children: [\n 'totalRevenue',\n 'totalExpenses',\n 'remainingExpenses',\n ]\n }\n ],\n views: {\n list: {\n title: \"قائمة الرحلات\",\n requiredFields: [\"name\", 'createdAt'],\n columns: [\n {\n name: \"الرحلة\",\n selector: ({ name }) => {name},\n searchable: true,\n sortable: true,\n },\n {\n name: \"أنشئ بتاريخ\",\n selector: ({ createdAt }) => createdAt ,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: \"نموذج جديد\",\n },\n edit: {\n title: \"تعديل النموذج\",\n },\n view: {\n title: \"تقدير مصاريف و إيرادات الرحلة\",\n },\n },\n};\n\nexport default new Form(TripFinancialEstimation);\n","import Form from \"./Form\";\n\nconst TripOrMeetingReport = {\n slug: \"trip-or-meeting-report\",\n name: \"نموذج كتابة تقرير الرحلات و اللقاءات\",\n availableActions:{\n view: (item, {membershipRole, user}) => item.submittedAt && membershipRole === 'owner' || item.author.id === user.id,\n edit: (item, {user}) => item.author.id === user.id && !item.submittedAt,\n delete: (item, {membershipRole, user}) => item.submittedAt ? membershipRole === 'owner' : item.author.id === user.id,\n },\n fields: {\n name: {\n label: \"العنوان\",\n type: \"string\",\n },\n about: {\n label: \"تعريف عن الرحلة أو اللقاء\",\n type: \"string\",\n multiline: true,\n },\n team: {\n label: \"فريق الرحلات و اللقاءت\",\n type: \"string\",\n multiline: true,\n },\n met: {\n label: \"بمن التقوا\",\n type: \"string\",\n multiline: true,\n },\n topic: {\n label: \"ماذا كان محور اللقاء؟\",\n type: \"string\",\n multiline: true,\n },\n duration: {\n label: \"كم استغرق من الوقت؟\",\n type: \"string\",\n multiline: true,\n },\n outcomes: {\n label: \"ماذا كانت مخرجات اللقاء؟\",\n type: \"string\",\n multiline: true,\n },\n author: {\n label: \"قام بإعداد التقرير\",\n type: \"user\",\n permissions: 'autoFillFirst',\n valueFor: {\n view: (value, context) => value ?? context.user,\n edit: (value, context) => value ?? context.user,\n },\n },\n submittedAt: {\n label: \"رفع التقرير للمسؤول\",\n type: \"timestamp\",\n permissions: 'fillOnce',\n }\n },\n layout: [\n {\n type: \"section\",\n singleField: \"name\",\n },\n {\n type: \"section\",\n singleField: \"about\",\n },\n {\n type: \"section\",\n singleField: \"team\",\n },\n {\n type: \"section\",\n singleField: \"met\",\n },\n {\n type: \"section\",\n singleField: \"topic\",\n },\n {\n type: \"section\",\n singleField: \"duration\",\n },\n {\n type: \"section\",\n singleField: \"outcomes\",\n },\n {\n type: \"section\",\n label: \"معلومات عن التقرير\",\n children:[\n 'author',\n 'submittedAt',\n ]\n },\n ],\n\n views: {\n list: {\n title: \"قائمة التقارير\",\n requiredFields: [\"name\", \"author\", 'submittedAt'],\n columns: [\n {\n name: \"عنوان التقرير\",\n selector: ({ name }) => {name},\n searchable: true,\n sortable: true,\n },\n {\n name: \"انشئ بتاريخ\",\n selector: ({ createdAt }) => createdAt,\n searchable: true,\n sortable: true,\n },\n {\n name: \"كاتب التقرير\",\n selector: ({ author }) => author ? author?.fullname : '(غير محدد)' ,\n searchable: true,\n sortable: true,\n },\n {\n name: \"تم رفعه بتاريخ\",\n selector: ({ submittedAt }) => submittedAt ?? 'ليس بعد',\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: \"تقرير جديد\",\n },\n edit: {\n title: \"تعديل تقرير\",\n },\n view: {\n title: \"تقرير رحلة أو لقاء\",\n },\n },\n};\n\n\nexport default new Form(TripOrMeetingReport);\n","\nimport Form from \"./Form\";\nimport SelectField from \"./components/fields/SelectField\";\n\nconst WarningLetter = {\n slug: \"warning-letter\",\n name: \"خطاب إنذار\",\n availableActions:{\n edit: () => false,\n view: (item, {user, membershipRole}) => membershipRole === 'owner' || item.employee.id === user.id,\n delete: (_, {membershipRole}) => membershipRole === 'owner',\n },\n fields:{\n employee:{\n label: 'الموظف',\n type: 'user',\n permissions: 'fillFirst',\n },\n job:{\n type: 'string',\n label: 'الوظيفة',\n permissions: 'fillFirst',\n },\n unit: {\n type: 'string',\n label: 'الوحدة التنظيمية',\n permissions: 'fillFirst',\n },\n date:{\n type: 'date',\n label: 'تاريخ المخالفة',\n permissions: 'fillFirst',\n },\n infraction:{\n type: 'select',\n label: 'المخالفة التي ارتكبها',\n permissions: 'fillFirst',\n Component: SelectField,\n options: [\n {\n label: 'التأخر في الحضور للعمل حسب الأوقات الرسمية المقررة لمدة',\n details: {\n label: 'حدد المدة',\n }\n },\n {\n label: 'الخروج من مكان العمل بدون إذن لمدة',\n details: {\n label: 'حدد المدة',\n }\n },\n {\n label: 'مغادرة مكان العمل قبل نهاية الدوام الرسمي بمدة',\n details: {\n label: 'حدد المدة',\n }\n },\n { label: 'الغياب عن العمل بدون موافقة المسؤول' },\n { label: 'ادعاء المرض بقصد الغياب عن العمل' },\n { label: 'العودة إلى مكان العمل بعد انتهاء الدوام بدون الحصول على موافقة' },\n { label: 'التسكع في المكاتب بقصد إضاعة الوقت' },\n { label: 'استقبال الزوار خلال ساعات العمل الرسمية مخالفاً أنظمة وتعليمات الشركة' },\n { label: 'الأكل في مكان العمل خلال الدوام' },\n { label: 'مطالعة الجرائد والمجلات أثناء الدوام الرسمي' },\n { label: 'التدخين في الأماكن المحظورة' },\n { label: 'استخدام هاتف الشركة للأغراض الشخصية' },\n { label: 'التوقيع نيابة عن الآخرين في سجل الدوام' },\n { label: 'التزوير في سجل الدوام لإثبات مواعيد حضورك' },\n { label: 'الإهمال المتعمد في استعمال المواد بغرض إيقاع الضرر' },\n { label: 'تعريض مكان العمل وممتلكات الشركة للخطر نتيجة للإهمال المتعمد في العمل' },\n { label: 'استخدامك ممتلكات الشركة لأغراض خاصة' },\n { label: 'عدم إطاعة تعليمات وتوجيهات المدير المسؤول' },\n { label: 'الامتناع عن العمل بدون مبرر' },\n { label: 'اختلاق المشاجرات والنزاعات مع الموظفين خلال أوقات العمل' },\n { label: 'تجاوزك للصلاحيات الممنوحة لك' },\n { label: 'إخفاء معلومات خاصة بالشركة بقصد الإضرار بمصلحة العمل' },\n ],\n otherOption:{\n label: \"سبب أخر\"\n }\n },\n recidiveConsequence:{\n type: 'string',\n label: 'الإجراء المتخذ في حال تكرار المخالفة',\n permissions: 'fillFirst',\n },\n },\n layout:[\n {\n type: 'section',\n label: 'معلومات الموظف',\n children: [\n 'employee',\n 'job',\n 'unit'\n ]\n },\n {\n type: 'section',\n label: 'معلومات المخالفة',\n children:[\n 'date',\n 'infraction',\n 'recidiveConsequence',\n ]\n },\n ],\n views:{\n list: {\n title: 'قائمة الإنذارات',\n requiredFields: ['employee', 'date', 'createdAt'],\n columns: [\n\n {\n name: \"الموظف\",\n selector: ({ employee }) => employee ? employee?.fullname : '(غير محدد)',\n searchable: true,\n sortable: true,\n },\n {\n name: \"تاريخ المخالفة\",\n selector: ({ date }) => date,\n searchable: true,\n sortable: true,\n },\n {\n name: \"تاريخ الإرسال\",\n selector: ({ createdAt }) => createdAt,\n searchable: true,\n sortable: true,\n },\n ],\n },\n add: {\n title: 'خطاب إنذار جديد',\n }, \n view: {\n title: 'خطاب إنذار'\n }\n }\n};\n\nexport default new Form(WarningLetter);\n","import { Box, FormControl, InputLabel, MenuItem, Select, Typography } from \"@material-ui/core\";\nimport { useField } from \"formik\";\nimport TextField from \"./TextField\";\n\nexport default function SelectField({\n // field properties\n name,\n label,\n edit,\n required,\n options,\n otherOption,\n // data properties\n touched,\n error,\n value,\n handleChange,\n}) {\n const selectedOption = value === 'other' ? otherOption : options.find((_, index) => value === String(index+1));\n const [props] = useField(`${name}__details`);\n if (!edit) {\n return (\n \n {label && {label}:}\n \n {selectedOption ? selectedOption.label : '(غير محدد)'}\n {props.value}\n \n \n );\n } else {\n return (\n\n \n\n \n {label}\n \n { options.map((option, index) => {option.label}) }\n { otherOption && {otherOption.label} }\n \n \n { selectedOption && selectedOption.details && }\n \n );\n }\n}\n","import BusinessPlan from \"./BusinessPlan\";\nimport ComplaintAboutSuperior from \"./ComplaintAboutSuperior\";\nimport EmployeeAbsence from \"./EmployeeAbsence\";\nimport EventPlan from \"./EventPlan\";\nimport MeetingSchedule from \"./MeetingSchedule\";\nimport ProjectSheet from \"./ProjectSheet\";\nimport Suggestion from \"./Suggestion\";\nimport TrainingProgram from \"./TrainingProgram\";\nimport TripFinancialEstimation from \"./TripFinancialEstimation\";\nimport TripOrMeetingReport from \"./TripOrMeetingReport\";\nimport WarningLetter from \"./WarningLetter\";\n\nexport {\n EmployeeAbsence,\n WarningLetter,\n Suggestion,\n ComplaintAboutSuperior,\n BusinessPlan,\n TrainingProgram,\n EventPlan,\n TripFinancialEstimation,\n MeetingSchedule,\n TripOrMeetingReport,\n ProjectSheet,\n};\n\nconst forms = {\n EmployeeAbsence,\n WarningLetter,\n Suggestion,\n ComplaintAboutSuperior,\n BusinessPlan,\n TrainingProgram,\n EventPlan,\n TripFinancialEstimation,\n MeetingSchedule,\n TripOrMeetingReport,\n ProjectSheet,\n};\n\nexport default forms;\n","import React, { useContext, useReducer } from \"react\";\nimport { l1 } from \"./local.json\";\nimport {\n Box,\n Button,\n Container,\n makeStyles,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableRow,\n Typography,\n} from \"@material-ui/core\";\nimport TopBar from \"./common/TopBar\";\nimport { Navigation } from \"../Context\";\nimport { useHistory } from \"react-router-dom\";\nimport ConfirmationDialog, {\n useConfirmationDialog,\n} from \"./common/ConfirmationDialog\";\nimport { BallotOutlined, Group, GroupOutlined, Map, MoneyOutlined } from \"@material-ui/icons\";\nimport { BiDownload } from \"react-icons/bi\";\nimport { BusinessPlan, ComplaintAboutSuperior, EmployeeAbsence, EventPlan, MeetingSchedule, ProjectSheet, Suggestion, TrainingProgram, TripFinancialEstimation, TripOrMeetingReport, WarningLetter } from \"../forms\";\nimport { gql, useQuery } from \"@apollo/client\";\nimport Loading from \"./common/Loading\";\nconst useStyles = makeStyles((theme) => ({\n highOrder: {\n margin: theme.spacing(10, 30),\n },\n headContainer: {\n //margin: theme.spacing(0, 10),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n border: `1px solid ${theme.palette.grey[100]}`,\n background: `${theme.palette.grey[\"50\"]}30`,\n borderRadius: theme.spacing(2),\n },\n text: {\n color: theme.palette.primary.main,\n fontWeight: 600,\n },\n iconHead: {\n color: \"#44566c\",\n margin: theme.spacing(0, 1),\n },\n container: {\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: \"white\",\n marginBottom: theme.spacing(1),\n },\n avatar: {\n margin: theme.spacing(0, 1),\n },\n nameText: {},\n nameName: {\n color: \"#44566c\",\n },\n menuItem: {\n paddingRight: theme.spacing(10),\n },\n nameTitle: {\n color: \"#44566c\",\n fontSize: theme.spacing(1.4),\n },\n idId: {\n color: \"#8697a8\",\n },\n address: {\n color: \"#44566c\",\n },\n icon: {\n fontSize: theme.spacing(3),\n color: \"#8697a8\",\n marginLeft: theme.spacing(3),\n },\n title: {\n fontSize: theme.spacing(3),\n fontWeight: 600,\n color: theme.palette.grey[700],\n },\n label: {\n marginLeft: theme.spacing(4),\n },\n paper: {\n padding: theme.spacing(3),\n margin: theme.spacing(4),\n },\n}));\n\nconst fileSections = [\n {\n name: \"استمارات الترشح\",\n roles: [\"owner\", \"assistant\"],\n Icon: BallotOutlined,\n files: [\n {\n name: \"استمارة نموذج ترشيح العضوية مركز\",\n type: \"pdf\",\n key: \"memberNomination\"\n },\n {\n name: \"نموذج أسئلة و معايير الترشيح أثناء المقابلة\",\n type: \"pdf\",\n key: \"interviewQuestionsAndCriteria\"\n },\n ],\n },\n {\n name: \"المالية و التسويق\",\n roles: [\"owner\", \"assistant\"],\n Icon: MoneyOutlined,\n files: [\n {\n name: \"تقدير التكاليف المالية\",\n type: \"pdf\",\n key: \"costEstimation\"\n },\n {\n name: \"نموذج خطوات كتابة الخطة التسويقية\",\n type: \"pdf\",\n key: \"sampleMarketingPlan\"\n },\n ],\n },\n {\n name: \"ملفات الموظفين\",\n Icon: GroupOutlined,\n files: [\n {\n name: \"نموذج محضر اجتماع\",\n type: \"pdf\",\n key: \"meetingMinutes\"\n },\n {\n name: \"نموذج عقد عمل\",\n type: \"pdf\",\n key: \"employmentContract\",\n roles: ['admin', 'assistant']\n },\n {\n name: \"نموذج تقييم الاداء الوظيفي\",\n type: \"pdf\",\n key: \"jobPerformanceEvaluation\"\n },\n {\n name: \"ترشيح الموظف للدورة التدريبية\",\n type: \"pdf\",\n key: \"employeeNominationForTraining\",\n roles: ['admin', 'assistant']\n },\n EmployeeAbsence,\n WarningLetter,\n Suggestion,\n ComplaintAboutSuperior,\n ],\n },\n {\n name: \"الخطط\",\n Icon: Map,\n files: [\n BusinessPlan,\n TrainingProgram,\n EventPlan,\n TripFinancialEstimation,\n MeetingSchedule,\n TripOrMeetingReport,\n ProjectSheet,\n ],\n },\n];\n\nconst QUERY_FORMS = gql`\nquery{\n form{\n memberNomination {file {url}}\n interviewQuestionsAndCriteria{file {url}}\n costEstimation{file {url}}\n sampleMarketingPlan{file {url}}\n meetingMinutes{file {url}}\n employmentContract{file {url}}\n jobPerformanceEvaluation{file {url}}\n employeeNominationForTraining{file {url}}\n }\n}\n`\nexport default function Files() {\n const {loading, data, error} = useQuery(QUERY_FORMS,{});\n //Apollo\n return (\n error ? 'ERROR'\n : loading ? \n : <>\n \n\n \n \n \n الملفات\n \n {fileSections.map((section, index) => (\n \n ))}\n \n \n \n );\n}\n\nfunction FileSection({ section: { name, Icon, files}, data }) {\n const forms = data.form;\n const history = useHistory();\n return (\n \n \n \n  \n {name}\n \n \n \n \n اسم الملف\n النوع\n خيارات\n \n \n \n {files.map((file, index) => (\n \n {file?.name}\n {l1[file.type] ?? file.type}\n \n {file.type !== \"form\" ? (\n forms?.[file.key]?.file?.url\n ? \n  {l1.download}\n \n : غير متوفر\n ) : (\n history.push(file.routes.list.path)}\n >\n تفاصيل\n \n )}\n \n \n ))}\n \n
\n
\n );\n}\n","import React from \"react\";\n// import { Row } from \"antd\";\nimport \"./Styling.scss\";\n// import bg1 from './assets/img/bg1.png';\nimport { useHistory } from 'react-router-dom';\nexport default function ActivityCard({\n title = \"\",\n cover = \"\",\n description = \"\",\n url = \"\"\n}) {\n const history = useHistory();\n return (\n
\n \n
\n {\n history.push(url);\n }}\n style={{ textDecoration: \"none\", cursor: \"pointer\" }}\n >\n

{title}

\n \n

{description}

\n
\n {\n history.push(url);\n }}\n className=\"card-course-footer act\"\n >\n المزيد ...\n \n
\n );\n}\n","export default __webpack_public_path__ + \"static/media/ONTWNC1-11.c72f5217.png\";","export default __webpack_public_path__ + \"static/media/image-slider.974cd61e.png\";","import React, { useState, useContext, useEffect } from \"react\";\nimport {\n Facebook,\n Instagram,\n YouTube,\n LinkedIn,\n Twitter\n} from \"@material-ui/icons/\";\nimport ArrowBackIcon from \"@material-ui/icons/ArrowBack\";\nimport ActivityCard from \"./rel/Landing/ActivityCard\";\nimport {gql, useQuery } from \"@apollo/client\";\nimport Loading from \"./common/Loading\";\nimport { useHistory } from 'react-router-dom';\nimport { useParams } from \"react-router-dom\";\nimport { Navigation } from \"../Context\";\nimport logo from \"./rel/Landing/assets/img/ONTWNC1-11.png\";\nimport bg from \"./rel/Landing/assets/img/image-slider.png\";\nimport { Typography, Container, Button, Grid } from \"@material-ui/core\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport { ThemeProvider, createTheme } from \"@material-ui/core/styles\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nconst theme = createTheme({\n palette: {\n primary: {\n main: \"#002366\"\n },\n secondary: {\n main: \"#b23434\"\n }\n },\n typography: {\n fontFamily: ['\"Open Sans\"', \"Cairo\", \"Roboto\"].join(\",\"),\n h1: {\n fontSize: \"40px\"\n }\n }\n});\nconst useStyles = makeStyles(theme => ({\n title: {\n fontSize: \"50px\",\n padding: theme.spacing(4, 0, 6)\n // fontFamily: \"Helvetica\"\n },\n buttonPrimary: {\n color: theme.primary\n },\n buttonSecondary: {\n color: theme.secondary\n },\n login: {\n padding: theme.spacing(2, 4, 2),\n fontSize: \"18px;\",\n color: theme.primary\n },\n item: {\n marginBottom: theme.spacing(3)\n },\n eventTitle: {\n margin: theme.spacing(4, 0),\n textAlign: \"left\"\n },\n eventsContainer: {\n marginBottom: theme.spacing(20)\n },\n date: {\n textAlign: \"left\"\n },\n eventImage: {\n width: \"100%\",\n height: \"400px\",\n backgroundPosition: \"center\",\n backgroundSize: \"cover\",\n margin: theme.spacing(5, 0)\n },\n back: {\n marginTop: theme.spacing(5)\n },\n eventContent: {\n textAlign: \"left\"\n }\n}));\n\nconst GET_EVENT = gql`\n query getEvent($id: ID!) {\n centerEvent(id: $id) {\n id\n title\n content\n excerpt\n createdAt\n image {\n url\n }\n }\n }\n`;\nconst GET_INTERFACE = gql`\n query GetInterface($subdomain: String!) {\n centersLists(where: { subdomain: $subdomain }) {\n info {\n logo {\n url\n }\n name\n }\n }\n }\n`;\nexport default function FrontEvent() {\n const { sub } = useContext(Navigation);\n const classes = useStyles(theme);\n const { slug } = useParams();\n const history = useHistory();\n const { loading: getEventLoading, data: eventData } = useQuery(GET_EVENT, {\n variables: { id: slug },\n onError: err => {\n console.log(\"error when getting the event\", err);\n },\n onCompleted: data => {\n }\n });\n const { data } = useQuery(GET_INTERFACE, {\n variables: { subdomain: sub },\n onError: err => console.log(\"error getting the centers info\"),\n onCompleted: () => console.log(\"done getting center info\")\n });\n const center = data?.centersLists[0]?.info;\n const centerLogo = center?.logo\n ? `url(${process.env.REACT_APP_STRAPI_URL}${center?.logo?.url})`\n : `url(${logo})`;\n const centerEvent = eventData?.centerEvent;\n console.log('event', centerEvent)\n let newDate = new Date(centerEvent?.createdAt)\n let date = newDate.toLocaleDateString('ar-EG-u-nu-latn', { weekday: 'long', year: 'numeric', month: 'short', day: 'numeric' });\n\n return (\n <>\n \n \n
\n \n
\n \n
\n \n {center?.name}\n \n\n
\n \n {centerEvent?.title}\n \n \n نشر بتاريخ {date}\n \n
\n
\n \n {\n history.push('/events')\n }}\n endIcon={}\n >\n العودة الى النشاطات\n \n \n \n
\n
\n \n );\n}\n","export default __webpack_public_path__ + \"static/media/bg1.8a118507.png\";","export default __webpack_public_path__ + \"static/media/default.27ee7586.png\";","import React, { useState, useContext, useEffect } from \"react\";\nimport {\n Facebook,\n Instagram,\n YouTube,\n LinkedIn,\n Twitter\n} from \"@material-ui/icons/\";\nimport ArrowBackIcon from \"@material-ui/icons/ArrowBack\"\nimport ActivityCard from \"./rel/Landing/ActivityCard\";\nimport { gql, useLazyQuery } from \"@apollo/client\";\nimport Loading from \"./common/Loading\";\nimport { useHistory } from 'react-router-dom';\nimport { Navigation } from \"../Context\";\nimport logo from \"./rel/Landing/assets/img/ONTWNC1-11.png\";\nimport bg from \"./rel/Landing/assets/img/image-slider.png\";\nimport bg1 from \"./rel/Landing/assets/img/bg1.png\";\nimport defasult from \"./rel/Landing/assets/img/default.png\";\nimport { Typography, Container, Button, Grid } from \"@material-ui/core\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport { ThemeProvider, createTheme } from \"@material-ui/core/styles\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nimport { RequireAuthentication } from \"../Auth/gates\";\n\nconst theme = createTheme({\n palette: {\n primary: {\n main: \"#002366\"\n },\n secondary: {\n main: \"#b23434\"\n }\n },\n typography: {\n fontFamily: ['\"Open Sans\"', \"Cairo\", \"Roboto\"].join(\",\"),\n h1: {\n fontSize: \"40px\"\n }\n },\n});\nconst useStyles = makeStyles(theme => ({\n title: {\n fontSize: \"50px\",\n padding: theme.spacing(4, 0, 6)\n // fontFamily: \"Helvetica\"\n },\n buttonPrimary: {\n color: theme.primary\n },\n buttonSecondary: {\n color: theme.secondary\n },\n login: {\n padding: theme.spacing(2, 4, 2),\n fontSize: \"18px;\",\n color: theme.primary\n },\n item: {\n marginBottom: theme.spacing(3)\n },\n eventTitle: {\n margin: theme.spacing(4, 0),\n textAlign: \"left\"\n },\n eventsContainer: {\n marginBottom: theme.spacing(20)\n }\n}));\n\nconst GET_INTERFACE = gql`\n query GetInterface($subdomain: String!, $limit: Int!) {\n centersLists(where: { subdomain: $subdomain }) {\n events(sort: \"createdAt:desc\", limit: $limit) {\n id\n title\n excerpt\n image {\n url\n }\n }\n info {\n logo {\n url\n }\n name\n }\n }\n }\n`;\nexport default function FrontEvents() {\n const { sub } = useContext(Navigation);\n const classes = useStyles(theme);\n const [loading, setLoading] = useState(false);\n const [events, setEvents] = useState(() => []);\n const [limit, setLimit] = useState(4);\n const history = useHistory();\n\n const [getEvents, { loading: loadingEvents, data }] = useLazyQuery(\n GET_INTERFACE,\n {\n onError: err => console.log(\"err get interface\", err),\n onCompleted: data => {\n console.log(\"get Events completed\");\n setEvents(data.centersLists[0]?.events);\n setLoading(false);\n }\n }\n );\n\n const center = data?.centersLists[0]?.info;\n const centerLogo = center?.logo\n ? `url(${process.env.REACT_APP_STRAPI_URL}${center?.logo?.url})`\n : `url(${logo})`;\n const loadMore = () => {\n setLoading(true);\n getEvents({ variables: { subdomain: sub, limit: limit } });\n };\n\n useEffect(() => {\n loadMore();\n }, [limit]);\n // if (firstLoading) return ;\n return (\n <>\n \n \n
\n \n
\n \n
\n \n {center?.name}\n \n\n
\n {\n history.push('/')\n }}\n endIcon={}\n style={{ float: \"left\" }}\n >\n العودة الى الرئيسية\n \n \n {\" \"}\n نشاطات المركز\n \n \n {console.log(\"events\", events)}\n {events &&\n events.map((centerEvent, index) => {\n return (\n \n \n \n );\n })}\n \n {\n setLimit(limit + 4);\n }}\n >\n {loading ? \"تحميل...\" : \"حمل المزيد\"}\n \n \n \n
\n
\n \n );\n}\n","import React from 'react';\n\n// Material-UI\nimport { makeStyles, Typography, Box, Link } from '@material-ui/core';\nimport { l1 } from '../local.json';\nimport { gql, useQuery } from '@apollo/client';\nimport moment from 'moment';\n// Styles\nconst useStyles = makeStyles((theme) => ({\n contentContainer: {\n margin: theme.spacing(2),\n },\n contentLink: {\n fontSize: theme.spacing(1.4),\n cursor: 'pointer',\n color: theme.palette.common.black,\n '&:hover': {\n color: theme.palette.primary.main,\n },\n },\n contentTitle: {\n color: theme.palette.grey[600],\n },\n}));\nconst QUERY_TOMORROW_DUE = gql`\n query TomorrowDue($id: ID!, $due: Date!) {\n classes(where: { id: $id }) {\n assignments(where: { due: $due }) {\n id\n due\n title\n }\n }\n }\n`;\n\nfunction Due({ id, slug }) {\n const { data } = useQuery(QUERY_TOMORROW_DUE, {\n variables: { id, due: moment().add(1, 'days').format('YYYY-MM-DD') },\n });\n const classes = useStyles();\n const due = data?.classes[0]?.assignments;\n return due?.length ? (\n \n \n {l1.dueTomorrow}\n \n {due.map(({ id, title }) => (\n \n {title}\n \n ))}\n \n ) : null;\n}\n\nexport default Due;\n","import React, { useContext, useReducer, useRef, useState } from \"react\";\nimport {\n Box,\n Typography,\n makeStyles,\n Divider,\n Menu,\n MenuItem,\n Dialog,\n DialogTitle,\n DialogActions,\n DialogContent,\n TextField,\n Button\n} from \"@material-ui/core\";\n\n// Icons\nimport { MdTrendingUp, MdFolderOpen } from \"react-icons/md\";\nimport { BiDotsVerticalRounded } from \"react-icons/bi\";\nimport Due from \"./Due\";\nimport { l1 } from \"../local.json\";\nimport { Link } from \"react-router-dom\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport { ClassAnchor, Navigation } from \"../../Context\";\nimport Loading from \"./Loading\";\nimport { RequireClassAccess } from \"../../../src/Auth/gates\";\nconst useStyles = makeStyles(theme => ({\n root: {\n height: theme.spacing(40),\n backgroundColor: \"#fff\",\n border: \"1px solid #dadce0\",\n borderRadius: theme.spacing(1.5),\n margin: theme.spacing(0, 3, 6, 3)\n },\n backgroundContainer: {\n height: theme.spacing(13),\n borderTopLeftRadius: theme.spacing(1.5),\n borderTopRightRadius: theme.spacing(1.5),\n backgroundImage: 'url(\"https://gstatic.com/classroom/themes/Physics.jpg\")',\n backgroundSize: \"cover\"\n },\n background: {\n height: \"inherit\"\n },\n optionContainer: {},\n optionIcon: {\n color: \"white\",\n fontSize: theme.spacing(3),\n margin: theme.spacing(2, 2, 1, 0.5),\n cursor: \"pointer\"\n },\n titleContainer: {\n width: \"min-content\",\n margin: theme.spacing(2),\n flex: 1\n },\n cardTitle: {\n textDecoration: \"none\",\n color: theme.palette.common.white\n },\n dueContainer: { flexGrow: 1, padding: 0 },\n bottom: {\n height: \"min-content\",\n fontSize: theme.spacing(3),\n margin: theme.spacing(1),\n \"& > *\": {\n margin: theme.spacing(0, 1.5),\n color: theme.palette.grey[700]\n }\n },\n options: {\n fontSize: theme.spacing(3.3),\n margin: theme.spacing(2),\n cursor: \"pointer\",\n color: \"white\"\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n muiAlert: {\n width: \"max-content\"\n }\n}));\n\nconst EDIT_CLASS = gql`\n mutation EditClass(\n $name: String!\n $section: String\n $slug: String!\n $subject: String\n $room: String\n $id: ID!\n ) {\n updateClass(\n input: {\n where: { id: $id }\n data: {\n name: $name\n section: $section\n slug: $slug\n subject: $subject\n room: $room\n }\n }\n ) {\n class {\n name\n section\n slug\n }\n }\n }\n`;\n\nconst CLONE_CLASS = gql`\n mutation CreateClass(\n $name: String!\n $section: String!\n $subject: String!\n $slug: String!\n $center: ID!\n ) {\n createClass(\n input: {\n data: {\n name: $name\n section: $section\n subject: $subject\n slug: $slug\n center: $center\n }\n }\n ) {\n class {\n name\n id\n section\n slug\n isArchived\n center {\n id\n }\n }\n }\n }\n`;\n\nconst ARCHIVE_CLASS = gql`\n mutation ArchiveClass($id: ID!) {\n updateClass(input: { where: { id: $id }, data: { isArchived: true } }) {\n class {\n isArchived\n }\n }\n }\n`;\n\nconst ClassCard = ({ classData, refetch, alert, failure }) => {\n const { centerId } = useContext(Navigation);\n\n // Apollo\n const [editClass, { loading: loadingEditClass }] = useMutation(EDIT_CLASS, {\n onError: () => failure(l1.failure),\n onCompleted: () => {\n refetch();\n alert(l1.editsuccess);\n }\n });\n const [cloneClass, { loading: loadingCloneClass }] = useMutation(\n CLONE_CLASS,\n {\n onError: () => failure(l1.failure),\n onCompleted: data => {\n console.log(\"class clone\", data);\n refetch();\n alert(l1.clonesuccess);\n }\n }\n );\n const [archiveClass, { loading: loadingArchiveClass }] = useMutation(\n ARCHIVE_CLASS,\n {\n onError: () => failure(l1.failure),\n onCompleted: () => {\n refetch();\n alert(l1.archivesuccess);\n }\n }\n );\n // Edit Class Dialog Logic\n const [editClassState, reverseEditClassState] = useReducer(\n state => !state,\n false\n );\n // Clone Class Dialog Logic\n const [cloneClassState, reverseCloneClassState] = useReducer(\n state => !state,\n false\n );\n // Edit & clone Class Mutation Logic\n const [name, setName] = useState(classData.name);\n const nameRef = useRef();\n const [section, setSection] = useState(classData.section);\n const sectionRef = useRef();\n const [subject, setSubject] = useState(classData.subject);\n const subjectRef = useRef();\n\n const [slug, setSlug] = useState(classData.slug);\n const slugRef = useRef();\n\n // Options Menu Logic\n const [anchorEl, setAnchorEl] = useState(null);\n const openMenu = event => {\n setAnchorEl(event.currentTarget);\n };\n const closeMenu = () => {\n setAnchorEl(null);\n };\n\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n\n const { setClassAnchor } = useContext(ClassAnchor);\n const classes = useStyles();\n return loadingEditClass || loadingCloneClass || loadingArchiveClass ? (\n \n ) : (\n setClassAnchor(classData.id)}\n >\n \n \n \n \n {classData.name}\n \n \n\n \n {classData.section}\n \n \n \n \n \n \n \n \n {l1.edit}\n \n \n {l1.clone}\n \n \n {l1.archive}\n \n \n \n \n \n \n \n \n \n \n \n \n {/* //Edit Class //////////////////////////////////////////////////////// */}\n \n {`${l1.edit} ${name}`}\n \n {\n setName(nameRef.current.value);\n }}\n />\n {\n setSlug(slugRef.current.value);\n console.log(\"slug\", slugRef.current.value);\n }}\n />\n {\n setSection(sectionRef.current.value);\n }}\n />\n {\n setSubject(subjectRef.current.value);\n }}\n />\n \n \n {\n editClass({\n variables: {\n id: classData.id,\n name,\n section,\n subject,\n slug\n }\n });\n\n reverseEditClassState();\n }}\n >\n {l1.edit}\n \n \n \n \n\n {/* //Clone Class //////////////////////////////////////////////////////// */}\n \n {`${l1.clone} ${name}`}\n \n {\n setName(nameRef.current.value);\n }}\n />\n {\n setSlug(slugRef.current.value);\n }}\n />\n {\n setSection(sectionRef.current.value);\n }}\n />\n {\n setSubject(subjectRef.current.value);\n }}\n />\n \n \n {\n cloneClass({\n variables: {\n center: centerId,\n name,\n section,\n subject,\n slug\n }\n });\n\n reverseCloneClassState();\n }}\n >\n {l1.clone}\n \n \n \n \n\n \n \n \n \n {l1.confirmation}\n \n \n \n {\n archiveClass({\n variables: {\n id: classData.id\n }\n });\n }}\n >\n {l1.confirm}\n \n \n \n \n \n );\n};\n\nexport default ClassCard;\n","import React from \"react\";\nimport { makeStyles, Button, Typography, Container } from \"@material-ui/core\";\nimport { l1 } from \"../local.json\";\nimport { BiCalendarAlt } from \"react-icons/bi\";\nimport { BsCardChecklist } from \"react-icons/bs\";\nimport { useHistory } from 'react-router-dom';\nimport { RequireTeacherAccess } from \"../../../src/Auth/gates\";\nconst useStyles = makeStyles(theme => ({\n root: {\n margin: theme.spacing(2, 0)\n },\n topButtonIcon: {\n color: theme.palette.grey[700]\n },\n topButtonTypography: {\n color: theme.palette.primary.light,\n fontWeight: 600\n }\n}));\nfunction TopSection() {\n const history = useHistory();\n const classes = useStyles();\n return (\n \n }\n style={{ textTransform: \"none\" }}\n onClick={() => history.push(\"/calendar\")}\n >\n \n {l1.calendar}\n \n \n \n }\n style={{ textTransform: \"none\" }}\n onClick={() => history.push(\"/review\")}\n >\n \n {l1.toReview}\n \n \n \n \n );\n}\n\nexport default TopSection;\n","import React, { useState, useContext } from \"react\";\nimport ClassCard from \"./common/ClassCard\";\nimport TopSection from \"./common/TopSection\";\nimport { Grid, makeStyles, Snackbar } from \"@material-ui/core\";\nimport TopBar from \"./common/TopBar\";\nimport { gql, useQuery } from \"@apollo/client\";\nimport Loading from \"./common/Loading\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\nimport { Navigation } from \"../Context\";\nimport { RequireClassAccess } from \"../../src/Auth/gates\";\nconst useStyles = makeStyles(theme => ({}));\nconst QUERY_CLASSES = gql`\n query QueryClasses($centerId: ID!) {\n centersList(id: $centerId) {\n classes {\n id\n name\n section\n slug\n subject\n room\n isArchived\n }\n }\n }\n`;\n\nfunction Home() {\n const { centerId } = useContext(Navigation);\n\n //QUERY CLASS\n const { loading, data: dataQueryClass, refetch } = useQuery(QUERY_CLASSES, {\n onError: error => console.log(\"QueryClassError: \", error),\n notifyOnNetworkStatusChange: true,\n variables: {\n centerId\n }\n });\n const classes = useStyles();\n // Alert Logic\n const [alertSuccess, setAlertSuccess] = useState(false);\n const [alertFailure, setAlertFailure] = useState(false);\n\n return (\n <>\n {loading ? (\n \n ) : (\n <>\n setAlertSuccess(content)}\n failure={content => setAlertFailure(content)}\n />\n \n \n {dataQueryClass.centersList.classes.map(item => {\n if (item.isArchived === true) return null;\n return (\n \n \n setAlertSuccess(c)}\n failure={c => setAlertFailure(c)}\n />\n \n \n );\n })}\n \n {\n setAlertSuccess(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n {\n setAlertFailure(false);\n }}\n >\n \n {alertFailure}\n \n \n \n )}\n \n );\n}\n\nexport default Home;\n","export default __webpack_public_path__ + \"static/media/user.default.0e48206d.jpg\";","import React from \"react\";\nimport { TwitterOutlined, InstagramOutlined } from \"@ant-design/icons\";\nimport { Avatar, Box, Paper } from \"@material-ui/core\";\nimport \"./Styling.scss\";\nimport HighlightOff from \"@material-ui/icons/HighlightOff\";\nimport { useHistory } from \"react-router\";\nimport defaultAvatar from \"./assets/img/user.default.jpg\";\n\nexport default function MemberCard({\n index,\n deleteMember,\n picture,\n name,\n role,\n twitter,\n instagram,\n facebook,\n}) {\n const history = useHistory();\n\n // console.log(picture);\n return (\n \n {history.location.pathname === \"/\" ? null : (\n deleteMember(index)}\n />\n )}\n \n {picture ? (\n \n ) : (\n \n )}\n {name}\n

{role}

\n
\n {Boolean(instagram) &&\n \n \n \n }\n { Boolean(facebook) &&\n \n \n \n \n \n }\n { Boolean(twitter) &&\n \n \n \n }\n
\n \n \n );\n}\n","import React, { useState, createRef, useReducer } from \"react\";\nimport MemberCard from \"./MemberCard\";\nimport Carousel from \"react-elastic-carousel\";\nimport { useHistory } from 'react-router-dom';\n\nimport {\n Box,\n Button,\n Dialog,\n DialogActions,\n TextField,\n} from \"@material-ui/core\";\nimport \"./Styling.scss\";\nexport default function ListMembers({ team, setTeam, ...props }) {\n const Memberscarousel = createRef();\n const [carouselIndex, setcarouselIndex] = useState({\n members: 1,\n });\n const history = useHistory();\n const [state, reverse] = useReducer((s) => !s, false);\n const [name, setName] = useState(\"\");\n const [role, setRole] = useState(\"\");\n const [facebook, setFacebook] = useState(\"\");\n const [instagram, setInstagram] = useState(\"\");\n const [twitter, setTwitter] = useState(\"\");\n const breakPoints = [\n { width: 1, itemsToShow: 1 },\n { width: 550, itemsToShow: 2, itemsToScroll: 2 },\n { width: 768, itemsToShow: 3 },\n { width: 1200, itemsToShow: 4 },\n ];\n const deleteMember = (index) => {\n const remainingTeamMembers = team.filter(\n (teamMember, idx) => index !== idx\n );\n let newTeam = remainingTeamMembers.map((teamMember) => {\n return {\n fullName: teamMember.fullName,\n role: teamMember.role,\n picture: teamMember.picture?.id,\n facebook: teamMember.facebook,\n instagram: teamMember.instagram,\n twitter: teamMember.twitter,\n };\n });\n console.log(newTeam);\n setTeam(newTeam);\n };\n return (\n <>\n
\n {\n //inactive\n if (carouselIndex.members + 1 > 4) {\n Memberscarousel.current.goTo(0);\n setcarouselIndex({ ...carouselIndex, members: 1 });\n } else {\n Memberscarousel.current.slideNext();\n setcarouselIndex({\n ...carouselIndex,\n members: carouselIndex.members + 1,\n });\n }\n }}\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 16 16\"\n className=\"bi bi-chevron-right arrow\"\n fill=\"currentColor\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n \n \n Memberscarousel.current.slidePrev()}\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 16 16\"\n className=\"bi bi-chevron-left arrow\"\n fill=\"currentColor\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n \n \n
\n\n \n {team?.map(\n (\n { fullName, role, twitter, instagram, facebook, picture },\n index\n ) => (\n \n )\n )}\n \n {history.location.pathname === \"/\" ? null : (\n
\n \n إضافة عضو جديد\n \n {/* \n إضافة عضو جديد\n */}\n
\n )}\n\n \n \n setName(e.target.value)}\n style={{ marginBottom: 10 }}\n variant=\"outlined\"\n />\n setRole(e.target.value)}\n style={{ marginBottom: 10 }}\n variant=\"outlined\"\n />\n setInstagram(e.target.value)}\n style={{ marginBottom: 10 }}\n variant=\"outlined\"\n />\n setFacebook(e.target.value)}\n style={{ marginBottom: 10 }}\n variant=\"outlined\"\n />\n setTwitter(e.target.value)}\n style={{ marginBottom: 10 }}\n variant=\"outlined\"\n />\n {\n props.addPicture({\n variables: {\n file: e.target.files[0],\n },\n });\n }}\n variant=\"outlined\"\n />\n \n \n {\n const newTeamMemeber = {\n fullName: name,\n role: role,\n picture: props.pictureID,\n instagram: instagram,\n facebook: facebook,\n twitter: twitter,\n };\n let newTeam = team.map((teamMember) => {\n return {\n fullName: teamMember.fullName,\n role: teamMember.role,\n picture: teamMember.picture?.id,\n facebook: teamMember.facebook,\n instagram: teamMember.instagram,\n twitter: teamMember.twitter,\n };\n });\n setTeam([...newTeam, newTeamMemeber]);\n // props.add(newTeam);\n setName(\"\");\n setRole(\"\");\n setInstagram(\"\");\n setFacebook(\"\");\n setTwitter(\"\");\n reverse();\n }}\n >\n أضف\n \n \n \n \n \n );\n}\n","export default __webpack_public_path__ + \"static/media/center.default.a97a5edb.jpg\";","import React, { useState, createRef, useContext } from \"react\";\nimport { Row, Col } from \"antd\";\nimport Carousel from \"react-elastic-carousel\";\nimport SmsFailedIcon from \"@material-ui/icons/SmsFailed\";\nimport {\n Facebook,\n Instagram,\n YouTube,\n LinkedIn,\n Twitter\n} from \"@material-ui/icons/\";\nimport ActivityCard from \"./rel/Landing/ActivityCard\";\nimport Gallery from \"react-grid-gallery\";\nimport ListMembers from \"./rel/Landing/ListMembers\";\nimport { gql, useQuery } from \"@apollo/client\";\nimport Loading from \"./common/Loading\";\nimport { useHistory } from 'react-router-dom';\nimport { Navigation } from \"../Context\";\nimport logo from \"./rel/Landing/assets/img/center.default.jpg\";\nimport bg from \"./rel/Landing/assets/img/image-slider.png\";\nimport defaultImg from \"./rel/Landing/assets/img/default.png\";\nimport {\n Typography,\n Container,\n Button,\n Modal,\n Box,\n Link,\n Chip\n} from \"@material-ui/core\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport { ThemeProvider, createTheme } from \"@material-ui/core/styles\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nimport { RequireAuthentication, RequireCenterAdmin, RequireCenterMembership } from \"../Auth/gates\";\n\nconst theme = createTheme({\n palette: {\n primary: {\n main: \"#002366\"\n },\n secondary: {\n main: \"#b23434\"\n }\n },\n typography: {\n fontFamily: ['\"Open Sans\"', \"Cairo\", \"Roboto\"].join(\",\"),\n h1: {\n fontSize: \"40px\"\n }\n }\n});\nconst useStyles = makeStyles(theme => ({\n title: {\n fontSize: \"50px\",\n padding: theme.spacing(8, 0, 6)\n },\n buttonPrimary: {\n color: theme.primary\n },\n buttonSecondary: {\n color: theme.secondary\n },\n login: {\n padding: theme.spacing(2, 4, 2),\n fontSize: \"18px;\",\n color: theme.primary\n },\n modalBox: {\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n width: 400,\n backgroundColor: \"white\",\n border: \"2px solid #000\",\n boxShadow: 24,\n p: 4\n }\n}));\nconst DefaultImages = [\n {\n src: \"https://c2.staticflickr.com/9/8817/28973449265_07e3aa5d2e_b.jpg\",\n thumbnail:\n \"https://c2.staticflickr.com/9/8817/28973449265_07e3aa5d2e_n.jpg\",\n thumbnailWidth: 320,\n thumbnailHeight: 174,\n caption: \"عنوان الصورة\"\n },\n {\n src: \"https://c6.staticflickr.com/9/8890/28897154101_a8f55be225_b.jpg\",\n thumbnail:\n \"https://c6.staticflickr.com/9/8890/28897154101_a8f55be225_n.jpg\",\n thumbnailWidth: 320,\n thumbnailHeight: 183,\n caption: \"عنوان الصورة\"\n },\n {\n src: \"https://c7.staticflickr.com/9/8106/28941228886_86d1450016_b.jpg\",\n thumbnail:\n \"https://c7.staticflickr.com/9/8106/28941228886_86d1450016_n.jpg\",\n thumbnailWidth: 271,\n thumbnailHeight: 320,\n caption: \"عنوان الصورة\"\n },\n {\n src: \"https://c6.staticflickr.com/9/8342/28897193381_800db6419e_b.jpg\",\n thumbnail:\n \"https://c6.staticflickr.com/9/8342/28897193381_800db6419e_n.jpg\",\n thumbnailWidth: 320,\n thumbnailHeight: 213,\n caption: \"عنوان الصورة\"\n },\n {\n src: \"https://c8.staticflickr.com/9/8104/28973555735_ae7c208970_b.jpg\",\n thumbnail:\n \"https://c8.staticflickr.com/9/8104/28973555735_ae7c208970_n.jpg\",\n thumbnailWidth: 320,\n thumbnailHeight: 213,\n caption: \"عنوان الصورة\"\n },\n {\n src: \"https://c1.staticflickr.com/9/8707/28868704912_cba5c6600e_b.jpg\",\n thumbnail:\n \"https://c1.staticflickr.com/9/8707/28868704912_cba5c6600e_n.jpg\",\n thumbnailWidth: 320,\n thumbnailHeight: 213,\n caption: \"عنوان الصورة\"\n },\n {\n src: \"https://c4.staticflickr.com/9/8578/28357117603_97a8233cf5_b.jpg\",\n thumbnail:\n \"https://c4.staticflickr.com/9/8578/28357117603_97a8233cf5_n.jpg\",\n thumbnailWidth: 320,\n thumbnailHeight: 213,\n caption: \"عنوان الصورة\"\n },\n {\n src: \"https://c1.staticflickr.com/9/8056/28354485944_148d6a5fc1_b.jpg\",\n thumbnail:\n \"https://c1.staticflickr.com/9/8056/28354485944_148d6a5fc1_n.jpg\",\n thumbnailWidth: 257,\n thumbnailHeight: 320,\n caption: \"عنوان الصورة\"\n }\n];\n\nconst GET_INTERFACE = gql`\n query GetInterface($subdomain: String!) {\n centersLists(where: { subdomain: $subdomain }) {\n events {\n id\n title\n excerpt\n image {\n url\n }\n }\n info {\n openToRegistration\n logo {\n url\n }\n name\n vision\n message\n values {\n name\n content\n }\n gallery {\n name\n caption\n width\n height\n url\n }\n video\n description\n alertSignup\n contact {\n address\n email\n phoneNumbers {\n id\n number\n }\n }\n socialMediaLinks {\n facebook\n twitter\n linkedin\n instagram\n youtube\n }\n teamMember {\n picture {\n url\n }\n fullName\n role\n picture {\n id\n }\n facebook\n instagram\n twitter\n }\n }\n }\n }\n`; export default function Landing() {\n const [open, setOpen] = React.useState(false);\n const handleOpen = () => setOpen(true);\n const handleClose = () => setOpen(false);\n const classes = useStyles(theme);\n const { sub } = useContext(Navigation);\n const history = useHistory();\n const { loading, data } = useQuery(GET_INTERFACE, {\n onError: err => console.log(\"err get interface\", err),\n variables: {\n subdomain: sub\n },\n onCompleted: () => {\n console.log(\"loading completed\");\n }\n });\n const breakPoints = [\n { width: 1, itemsToShow: 1 },\n { width: 550, itemsToShow: 2, itemsToScroll: 2 },\n { width: 768, itemsToShow: 3 },\n { width: 1200, itemsToShow: 4 }\n ];\n\n\n const carouselActivities = createRef();\n const [carouselIndex, setcarouselIndex] = useState(0);\n const center = data?.centersLists[0]?.info;\n const events = data?.centersLists[0]?.events;\n const centerLogo = center?.logo\n ? `url(${process.env.REACT_APP_STRAPI_URL}${center?.logo?.url})`\n : `url(${logo})`;\n const IMAGES = (center?.gallery || DefaultImages).map(image => {\n if (image.url)\n return {\n src: `${process.env.REACT_APP_STRAPI_URL}${image.url}`,\n thumbnail: `${process.env.REACT_APP_STRAPI_URL}${image.url}`,\n width: 'auto',\n };\n\n return {\n src: image.src,\n thumbnail: image.thumbnail,\n width: 'auto',\n }\n });\n if (!loading)\n return (\n
\n \n \n
\n
\n
\n \n
\n \n {center?.name}\n \n\n
\n\n
\n \n {\" \"}\n \n (window.location.href = `${process.env.REACT_APP_ACCOUNTS_URL}/?center&redirect_to=${window.location.href}`)\n }\n // style={{ color: \"white\", cursor: \"pointer\" }}\n >\n دخول\n \n \n (window.location.href = `${process.env.REACT_APP_ACCOUNTS_URL}/register/?center&redirect_to=${window.location.href}`)\n }\n // style={{ color: \"white\", cursor: \"pointer\" }}\n >\n انضم إلينا\n {\" \"}\n \n }\n >\n \n history.push(\"/home\")}\n className={classes.login}\n >\n الالتحاق بالصفوف\n \n \n \n \n \n \n \n \n \n {\n center.openToRegistration\n ? {\n history.push('/request-membership')\n }}\n >\n الالتحاق بالصفوف\n \n : \n }\n \n \n
\n \n \n \n \n الرؤية\n \n \n {center?.vision}\n \n {/*

{center.vision}

*/}\n \n \n \n الرسالة\n \n \n {center?.message}\n \n \n\n \n \n القيم\n \n {center?.values.map(({ name, content }, index) => (\n

\n {name} :\n {content}\n

\n ))}\n \n
\n \n
\n
\n
\n
\n \n {center?.description}\n \n \n
\n\n \n {\n !open\n ? \n \n \n \n \n : \n }\n \n\n {\n center.openToRegistration &&\n
\n
\n تم فتح باب التسجيل{\" \"}\n
\n
{center?.alertSignup}
\n
\n \n
\n
\n }\n\n
\n \n أحدث النشاطات\n \n
\n
\n\n
\n {\n if (carouselIndex.courses + 1 > 4) {\n carouselActivities.current.goTo(0);\n setcarouselIndex({ ...carouselIndex, courses: 1 });\n } else {\n carouselActivities.current.slideNext();\n setcarouselIndex({\n ...carouselIndex,\n courses: carouselIndex.courses + 1\n });\n }\n }}\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 16 16\"\n className=\"bi bi-chevron-right arrow\"\n fill=\"currentColor\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n \n \n {\n if (carouselIndex.courses - 1 < 1) {\n carouselActivities.current.goTo(4);\n setcarouselIndex({ ...carouselIndex, courses: 4 });\n } else {\n carouselActivities.current.slidePrev();\n setcarouselIndex({\n ...carouselIndex,\n courses: carouselIndex.courses - 1\n });\n }\n }}\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 16 16\"\n className=\"bi bi-chevron-left arrow\"\n fill=\"currentColor\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n \n \n
\n \n {events &&\n events.map((centerEvent, index) => (\n \n ))}\n \n {\n history.push(\"/events\");\n }}\n className=\"btn-more no-border no-deplacing\"\n style={{ cursor: \"pointer\" }}\n >\n المزيد من النشاطات\n \n\n
\n
\n

معرض الصور

\n
\n
\n
\n \n
\n
\n
\n
\n

الفريق

\n
\n
\n \n
\n\n
\n
\n

معلومات الإتصال

\n
\n
\n\n \n \n

العنوان

\n

{center?.contact?.address}

\n

الايميل

\n

{center?.contact?.email}

\n\n

أرقام الهواتف

\n {center?.contact?.phoneNumbers?.map(({ id, number }) => {\n return (\n

\n {number}\n

\n );\n })}\n \n {\n Object.values(center?.socialMediaLinks).some(Boolean) &&\n \n

مواقع التواصل

\n
\n {center?.socialMediaLinks?.youtube &&\n \n \n \n }\n {center?.socialMediaLinks?.twitter &&\n \n \n \n }\n {center?.socialMediaLinks?.linkedin &&\n \n \n \n }\n {center?.socialMediaLinks?.instagram &&\n \n \n \n }\n {center?.socialMediaLinks?.facebook &&\n \n \n \n }\n
\n \n }\n
\n
\n \n \n \n \n );\n return ;\n}\n\nfunction youtubeEmbedUrl(input) {\n function parseYoutubeVideoID(input) {\n var regExp = /^.*((youtu.be\\/)|(v\\/)|(\\/u\\/\\w\\/)|(embed\\/)|(watch\\?))\\??v?=?([^#&?]*).*/;\n var match = input.match(regExp);\n return (match && match[7].length == 11) ? match[7] : input;\n }\n return `https://www.youtube.com/embed/${parseYoutubeVideoID(input)}`\n}","import React, {useState, useReducer} from 'react'\nimport Quiz, {QuizModes} from './Quiz';\nimport {\n Grid, Box, Button, Typography,\n Dialog, DialogTitle, DialogContent, DialogActions,\n Divider,\n} from '@material-ui/core';\nimport TopBar from './common/TopBar';\nimport {useParams} from 'react-router-dom';\nimport { gql, useQuery, useMutation } from '@apollo/client';\nimport {l1} from './local.json';\nimport Loading from './common/Loading';\n\nconst GET_QUIZ = gql`\n query Quiz($id: ID!) {\n quiz(id: $id) {\n title\n description\n instructions\n questions\n correctAnswers\n }\n }\n`;\n\nconst UPDATE_QUIZ = gql`\n mutation UpdateQuiz($id: ID!, $title: String!, $description: String, $instructions: JSON, $questions: JSON, $correctAnswers: JSON) {\n updateQuiz(\n input: {\n where: { id: $id }\n data: {\n title: $title\n description: $description\n instructions: $instructions\n questions: $questions\n correctAnswers: $correctAnswers\n }\n }) \n {\n quiz {\n title,\n description,\n instructions\n questions\n correctAnswers\n }\n }\n }\n`;\n\nconst DELETE_QUIZ = gql`\n mutation DeleteQuiz($id: ID!) {\n deleteQuiz(input: { where: { id: $id } }) {\n quiz {\n id\n title\n }\n }\n }\n`;\n\n\n\nexport default function QuizEditor() {\n const {id} = useParams()\n const [ready, setReady] = useState(false)\n const [quiz, setQuiz] = useState({})\n const [loadingError, setLoadingError] = useState(null)\n const { loading: loadingQuiz} = useQuery(\n GET_QUIZ, \n {\n variables:{\n id\n },\n onError: (error) => console.log('GetQuizError: ', error),\n onCompleted: (data) => {\n console.log('QuizData: ', data)\n setQuiz(data.quiz)\n setSavedQuiz(JSON.parse(JSON.stringify(data.quiz)))\n setReady(true)\n },\n fetchPolicy: 'no-cache',\n }\n );\n \n const [savedQuiz, setSavedQuiz] = useState(JSON.parse(JSON.stringify(quiz)));\n const [close, setClose] = useState(false)\n\n\n const [saveQuiz, { loading: savingQuiz }] = useMutation(\n UPDATE_QUIZ,\n {\n onError: (error) => {\n console.warn('MutationSaveQuiz error: ', error);\n setLoadingError(error)\n },\n onCompleted: (data) => {\n console.log('MutationSaveQuiz data: ', data);\n setSavedQuiz(data.updateQuiz.quiz)\n if(close){\n window.close();\n }\n },\n }\n );\n\n const saveQuizIfModified = ({closeOnFinish}) => {\n console.log(quiz, savedQuiz)\n if (JSON.stringify(quiz) !== JSON.stringify(savedQuiz)){\n saveQuiz(\n {\n variables:{\n id,\n ...quiz\n },\n\n })\n }\n else if (closeOnFinish){\n window.close()\n }\n }\n\n const [deleteConfirmationVisible, toggleDeleteConfirmationVisible] = useReducer((state) => !state, false);\n const [deleteQuiz, { loading: deletingQuiz }] = useMutation(\n DELETE_QUIZ,\n {\n onError: (error) => {\n console.warn('MutationDeleteQuiz error: ', error);\n },\n onCompleted: (data) => {\n console.log('MutationDeleteQuiz data: ', data);\n alert(l1.quizSuccessfullyDeleted)\n window.close()\n },\n }\n );\n\n // TODO: do api calls needed to load the quiz.\n let [quizMode, setQuizMode] = useState(\"EDIT\")\n return (\n ready\n ?
\n \n \n \n \n \n \n \n \n {savingQuiz ? l1.saving + \"...\" : null}\n \n \n \n \n \n \n \n \n \n {\n true ?\n \n \n \n {l1.confirmation}\n \n \n {\n toggleDeleteConfirmationVisible();\n deleteQuiz({\n variables: {\n id\n }\n })\n }}\n >\n {l1.confirm}\n \n \n \n \n \n : null\n }\n
\n : loadingQuiz\n ? \n : loadingError\n ? {l1.anErrorHappened}.{l1.refreshToRetry}\n : null\n )\n}\n","import React, { useReducer, useState } from \"react\";\nimport {\n Accordion,\n AccordionSummary,\n AccordionDetails,\n Avatar,\n Box,\n Typography,\n Divider,\n makeStyles,\n Paper,\n Menu,\n MenuItem,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n Button\n} from \"@material-ui/core\";\nimport { gql, useMutation } from \"@apollo/client\";\n\nimport { MdAssignment, MdAssignmentTurnedIn } from \"react-icons/md\";\nimport { BiBookBookmark } from \"react-icons/bi\";\nimport { RiQuestionnaireLine } from \"react-icons/ri\";\nimport { l1 } from \"../../../local.json\";\nimport { Link, useHistory, useLocation } from \"react-router-dom\";\nimport Drafter2 from \"../../../common/Drafter2\";\nimport { BiDotsVerticalRounded } from \"react-icons/bi\";\n\nimport moment from \"moment\";\nimport { RequireClassAccess } from \"../../../../Auth/gates\";\nconst DELETE_COMPONENT = gql`\n mutation DeleteComponent($id: ID!) {\n deleteAssignment(input: { where: { id: $id } }) {\n assignment {\n id\n }\n }\n }\n`;\nfunction TopicRow({\n id,\n title,\n description,\n type,\n place,\n createdAt,\n statistics,\n link,\n slug,\n refetch,\n scope, evaluationsInfo\n}) {\n console.log(statistics);\n const [accordionState, reverseAccordionState] = useReducer(\n currentState => !currentState,\n false\n );\n\n // Options Logic\n const [anchorEl, setAnchorEl] = useState(null);\n const openMenu = event => {\n setAnchorEl(event.currentTarget);\n };\n const closeMenu = () => {\n setAnchorEl(null);\n };\n const [anchorComponent, setAnchorComponent] = useState(null);\n\n const openComponentMenu = event => {\n console.log(\"open menu\", event);\n reverseAccordionState();\n setAnchorComponent(event.currentTarget);\n };\n const closeComponentMenu = () => {\n setAnchorComponent(null);\n reverseAccordionState();\n };\n const [deleteComponent, { loading: loadingDeleteComponent }] = useMutation(\n DELETE_COMPONENT,\n {\n onError: error => {\n console.log(\"mutationDeleteComponent error: \", error);\n // failure(l1.failure);\n },\n onCompleted: () => {\n refetch();\n alert(l1.deletesuccess);\n }\n }\n );\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n\n const useStyles = makeStyles(theme => ({\n midSection: {\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(2)\n },\n\n topicTable: {\n borderBottom: `1px ${theme.palette.grey[200]} solid`,\n flexGrow: 1,\n cursor: \"pointer\",\n borderRadius: accordionState ? theme.spacing(1) : \"\",\n boxShadow: accordionState ? \"0px 0px 5px -1px rgba(0,0,0,0.5)\" : \"\",\n \"&:hover\": {\n borderRadius: theme.spacing(1),\n boxShadow: theme.shadows[1],\n background: \"#e8f0fe\"\n }\n },\n\n topicTableStream: {\n padding: theme.spacing(2),\n borderRadius: theme.spacing(2),\n flexGrow: 1,\n cursor: \"pointer\",\n \"&:hover\": {\n background: \"#e8f0fe\"\n }\n },\n iconContainer: {\n backgroundColor: theme.palette.primary.main,\n marginRight: theme.spacing(2)\n },\n row: {\n fontWeight: 600,\n color: theme.palette.grey[600]\n },\n accordionDetails: {},\n divider: {\n margin: theme.spacing(2, 0)\n },\n date: {\n color: theme.palette.grey[500],\n fontSize: theme.spacing(1.4)\n },\n instructions: {\n color: theme.palette.grey[800]\n },\n stats: {\n width: \"max-content\",\n borderLeft: `1px ${theme.palette.grey[400]} solid`,\n padding: theme.spacing(0, 2)\n },\n statsNumber: {\n textAlign: \"center\",\n fontWeigh: 900,\n fontSize: theme.spacing(5)\n },\n statsText: {\n color: theme.palette.grey[600]\n },\n viewText: {\n margin: theme.spacing(2.5, 0, 1, 2),\n color: theme.palette.primary.main,\n fontWeight: 600\n },\n options: {\n color: theme.palette.primary.dark,\n fontSize: theme.spacing(3)\n // paddingRight: theme.spacing(4)\n }\n }));\n const classes = useStyles();\n const iconChanger = () => {\n if (type === \"material\") {\n return (\n \n \n \n );\n }\n if (['assignment', 'quiz'].includes(type)) {\n return (\n \n \n \n );\n }\n if (type === \"question\") {\n return (\n \n \n \n );\n }\n if (type === \"evaluations\") {\n return (\n \n \n \n );\n }\n };\n const { pathname } = useLocation();\n const history = useHistory();\n let redirect = link\n ? link\n : pathname +\n (pathname[pathname.length - 1] === \"/\" ? \"\" : \"/\") +\n id +\n \"/details\";\n if (place === \"stream\"){\n const renderedRow = (\n \n \n \n \n {iconChanger()}\n \n {type === 'evaluations' && (l1.evaluations + ': ')}{title}\n \n \n \n \n \n );\n return (\n ['assignment', 'question','quiz', 'material', 'evaluations'].includes(type) ? {renderedRow} : renderedRow \n );\n }\n return (\n \n \n \n \n
\n {iconChanger()}\n \n {type === 'evaluations' && (l1.evaluations + ': ')}{title}\n \n
\n {scope === \"review\"? \"\" : \n \n \n \n }\n \n \n {\n // setEditCommentState(true);\n // console.log(\"edit\");\n // closeComponentMenu();\n history.push(redirect);\n }}\n >\n {l1.edit}\n \n {\n reverseConfirmationState();\n closeComponentMenu();\n // reverseAccordionState();\n }}\n >\n {l1.delete}\n \n \n {\n reverseConfirmationState();\n reverseAccordionState();\n }}\n >\n \n \n \n {l1.confirmation}\n \n \n \n {\n deleteComponent({\n variables: {\n id\n }\n });\n reverseAccordionState();\n window.location.reload(false);\n }}\n >\n {l1.confirm}\n \n {\n reverseConfirmationState();\n reverseAccordionState();\n }}\n >\n {l1.cancel}\n \n \n \n \n
\n \n \n \n { type === 'evaluations' && <>\n \n {l1.evaluationsCoach}: {evaluationsInfo.coach}\n \n \n {l1.evaluationsDate}: {evaluationsInfo.date}\n \n \n {l1.evaluationsLocation}: {evaluationsInfo.location}\n \n \n }\n \n {moment(createdAt).fromNow()}\n \n \n \n \n \n {type === \"material\" ? (\n \"\"\n ) : (\n \n \n { type === 'evaluations'\n ? <>\n \n \n {statistics ? statistics.all || '' : 0}\n \n \n {l1.studentCount}\n \n \n \n \n {statistics ? statistics.trainingEvaluations : 0}\n \n \n {l1.trainingEvaluations}\n \n \n \n \n {statistics ? statistics.coachEvaluations : 0}\n \n \n {l1.coachEvaluations}\n \n \n \n \n {statistics ? statistics.studentEvaluations : 0}\n \n \n {l1.studentEvaluations}\n \n \n \n : <>\n \n \n {statistics ? statistics.assigned : 0}\n \n \n {l1.assigned}\n \n \n \n \n {statistics ? statistics.submitted : 0}\n \n \n {l1.handedIn}\n \n \n \n \n {statistics ? statistics.graded : 0}\n \n \n {l1.workgraded}\n \n \n \n }\n \n \n )}\n \n \n {\n history.push(redirect);\n }}\n >\n {l1.moredetails}\n \n \n \n \n \n );\n}\n\nexport default TopicRow;\n","import React, { useState, useReducer, useRef } from \"react\";\nimport {\n Box,\n Divider,\n IconButton,\n makeStyles,\n Typography,\n Menu,\n MenuItem,\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n TextField\n} from \"@material-ui/core\";\nimport { MdAdd } from \"react-icons/md\";\nimport { BiDotsVerticalRounded } from \"react-icons/bi\";\nimport { RequireClassAccess, RequireTeacherAccess } from \"../../../../Auth/gates\";\nimport { l1 } from \"../../../local.json\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport Loading from \"../../../common/Loading\";\n\nconst DELETE_TOPIC = gql`\n mutation DeleteTopic($id: ID!) {\n deleteTopic(input: { where: { id: $id } }) {\n topic {\n id\n }\n }\n }\n`;\nconst UPDATE_TOPIC_NAME = gql`\n mutation updateTopicName($id: ID!, $name: String!) {\n updateTopic(input: { where: { id: $id }, data: { name: $name } }) {\n topic {\n id\n name\n }\n }\n }\n`;\nconst useStyles = makeStyles(theme => ({\n container: {\n margin: theme.spacing(4, 0),\n padding: theme.spacing(2),\n \"&:hover\": {\n borderRadius: theme.spacing(1),\n boxShadow: theme.shadows[1]\n },\n cursor: \"pointer\"\n },\n title: {\n fontSize: theme.spacing(5),\n color: theme.palette.primary.dark,\n paddingLeft: theme.spacing(4)\n },\n options: {\n color: theme.palette.primary.dark,\n fontSize: theme.spacing(3)\n // paddingRight: theme.spacing(4)\n },\n divider: {\n background: theme.palette.primary.main,\n flexGrow: 1,\n margin: theme.spacing(2, 0)\n },\n alert: {\n fontSize: theme.spacing(1.6),\n color: theme.palette.grey[600]\n },\n topicTextFieldContainer: {\n minWidth: \"400px\",\n height: \"150px\"\n }\n}));\n\nfunction TopicSection({\n text,\n children,\n people,\n trigger,\n cid,\n setStudentMode,\n student,\n teacher,\n id,\n scope,\n refetch\n}) {\n const classes = useStyles();\n const [anchorTopic, setAnchorTopic] = useState(null);\n const openDialogTopic = () => {\n console.log(\"open dialog topic\");\n reverseTopicDialogState();\n closeTopicMenu();\n };\n const openTopicMenu = event => {\n console.log(\"open topic menu\", dialogTopicState);\n setAnchorTopic(event.currentTarget);\n };\n const closeTopicMenu = () => {\n console.log(\"close topic menu\", dialogTopicState);\n setAnchorTopic(false);\n };\n const [topicContent, setTopicContent] = useState(null);\n // const topicContentRef = useRef();\n const [updateTopicName, { loading: loadingUpdateTopic }] = useMutation(\n UPDATE_TOPIC_NAME,\n {\n onError: error => {\n console.log(\"update topic error\", error);\n },\n onCompleted: () => {\n console.log(\"Topic updated successfuly\");\n refetch();\n }\n }\n );\n const [dialogTopicState, reverseTopicDialogState] = useReducer(\n state => !state,\n false\n );\n\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n const [deleteTopic, { loading: loadingDeleteTopic }] = useMutation(\n DELETE_TOPIC,\n {\n onError: error => {\n console.log(\"mutationDeleteComponent error: \", error);\n // failure(l1.failure);\n },\n onCompleted: () => {\n refetch();\n console.log(\"deleted with success\");\n }\n }\n );\n if (!children)\n return (\n \n \n {text}\n \n \n \n \n \n Empty\n \n );\n if (people)\n return (\n \n \n {text}\n \n {\n if (teacher) setStudentMode(false);\n if (student) setStudentMode(true);\n trigger();\n }}\n >\n \n \n \n \n \n {children}\n \n );\n return (\n \n \n {text}\n {scope === \"review\" ? (\n \"\"\n ) : (\n \n \n \n )}\n\n \n \n {l1.editTopic}\n \n\n {\n reverseConfirmationState();\n closeTopicMenu();\n }}\n >\n {l1.deleteTopic}\n \n \n {\n reverseConfirmationState();\n }}\n >\n \n \n \n {l1.confirmation}\n \n \n \n {\n deleteTopic({\n variables: {\n id\n }\n });\n window.location.reload(false);\n reverseConfirmationState();\n }}\n >\n {l1.confirm}\n \n {\n reverseConfirmationState();\n }}\n >\n {l1.cancel}\n \n \n \n \n \n \n {\n setTopicContent(e.target.value);\n }}\n defaultValue={text}\n />\n \n {\n updateTopicName({\n variables: {\n id: id,\n name: topicContent\n }\n });\n }}\n >\n {l1.edit}\n \n \n \n \n \n \n {children}\n \n );\n}\n\nexport default TopicSection;\n","import React, { useContext, useEffect, useState } from \"react\";\nimport {\n Box,\n Button,\n Grid,\n makeStyles,\n Typography,\n Container\n} from \"@material-ui/core\";\n\nimport TopBar from \"./common/TopBar\";\nimport \"moment/locale/ar-dz\";\nimport Loading from \"./common/Loading\";\nimport { useQuery, gql } from \"@apollo/client\";\nimport { l1 } from \"./local.json\";\nimport { useHistory } from 'react-router-dom';\nimport { Navigation } from \"../Context\";\nimport { BiCalendarAlt } from \"react-icons/bi\";\nimport SchoolIcon from \"@material-ui/icons/School\";\nimport TopicRow from \"./rel/class/components/TopicRow\";\nimport TopicSection from \"./rel/class/components/TopicSection\";\nconst QUERY_CLASSWORK = gql`\n query teacherClassworks($id: ID!) {\n classes(where: { teachers: $id , isArchived:false}) {\n id\n slug\n assignments(where: { type_ne: \"material\" }) {\n id\n title\n description\n type\n studentWorks {\n status\n }\n }\n }\n }\n`;\n\nconst useStyles = makeStyles(theme => ({\n Typography: {\n fontFamily: \"Cairo\"\n }\n}));\nfunction Review() {\n const classes = useStyles();\n const history = useHistory();\n const { user } = useContext(Navigation);\n const { loading, data } = useQuery(QUERY_CLASSWORK, {\n variables: { id: user.id },\n onComplete: response => {\n console.log(\"response\", response);\n },\n onError: error => console.log(\"QueryClassworkError: \", error),\n notifyOnNetworkStatusChange: true\n });\n const groupStudentWorks = works => {\n const groups = {\n all: works,\n assigned: works.filter(work => work.status === \"assigned\"),\n submitted: works.filter(work => work.status === \"submitted\"),\n graded: works.filter(work => work.status === \"graded\")\n };\n return {\n statistics: {\n all: works.length,\n assigned: groups.assigned.length,\n submitted: groups.submitted.length,\n graded: groups.graded.length\n },\n groups\n };\n };\n\n console.log(\"data\", data);\n if (loading) return ;\n else {\n const myClasses = data.classes\n // const { assignments, slug } = data.classes;\n return (\n <>\n \n \n \n \n \n \n }\n onClick={() => history.push(\"/calendar\")}\n >\n {l1.calendar}\n \n }\n onClick={() => history.push(\"/home\")}\n >\n الأقسام\n \n \n {!myClasses.length ? (\n \n \n {l1.empty}\n \n \n ) : (\n \n \n امتحانات واسئلة للتصحيح\n \n {\n myClasses.map(\n ({assignments,slug})=>(\n assignments.map(\n ({\n title,\n description,\n type,\n id,\n createdAt,\n studentWorks\n }) => {\n let statistics = groupStudentWorks(studentWorks)\n .statistics;\n let link =\n \"/class/\" + slug + \"/classwork/\" + id + \"/answers\";\n \n return (\n \n );\n }\n ))\n )}\n\n \n )}\n \n \n \n \n \n \n );\n }\n}\n\nexport default Review;\n","export const createImage = url =>\n new Promise((resolve, reject) => {\n const image = new Image();\n image.addEventListener(\"load\", () => resolve(image));\n image.addEventListener(\"error\", error => reject(error));\n image.setAttribute(\"crossOrigin\", \"anonymous\"); // needed to avoid cross-origin issues on CodeSandbox\n image.src = url;\n });\n\nexport function getRadianAngle(degreeValue) {\n return (degreeValue * Math.PI) / 180;\n}\n\n/**\n * Returns the new bounding area of a rotated rectangle.\n */\nexport function rotateSize(width, height, rotation) {\n const rotRad = getRadianAngle(rotation);\n\n return {\n width:\n Math.abs(Math.cos(rotRad) * width) + Math.abs(Math.sin(rotRad) * height),\n height:\n Math.abs(Math.sin(rotRad) * width) + Math.abs(Math.cos(rotRad) * height)\n };\n}\n\n/**\n * This function was adapted from the one in the ReadMe of https://github.com/DominicTobias/react-image-crop\n */\nexport async function getCroppedImg(\n imageSrc,\n pixelCrop,\n rotation = 0,\n flip = { horizontal: false, vertical: false }\n) {\n const image = await createImage(imageSrc);\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n\n if (!ctx) {\n return null;\n }\n\n const rotRad = getRadianAngle(rotation);\n\n // calculate bounding box of the rotated image\n const { width: bBoxWidth, height: bBoxHeight } = rotateSize(\n image.width,\n image.height,\n rotation\n );\n\n // set canvas size to match the bounding box\n canvas.width = bBoxWidth;\n canvas.height = bBoxHeight;\n\n // translate canvas context to a central location to allow rotating and flipping around the center\n ctx.translate(bBoxWidth / 2, bBoxHeight / 2);\n ctx.rotate(rotRad);\n ctx.scale(flip.horizontal ? -1 : 1, flip.vertical ? -1 : 1);\n ctx.translate(-image.width / 2, -image.height / 2);\n\n // draw rotated image\n ctx.drawImage(image, 0, 0);\n\n // croppedAreaPixels values are bounding box relative\n // extract the cropped image using these values\n const data = ctx.getImageData(\n pixelCrop.x,\n pixelCrop.y,\n pixelCrop.width,\n pixelCrop.height\n );\n\n // set canvas width to final desired crop size - this will clear existing context\n canvas.width = pixelCrop.width;\n canvas.height = pixelCrop.height;\n\n // paste generated rotate image at the top left corner\n ctx.putImageData(data, 0, 0);\n\n // As Base64 string\n // return canvas.toDataURL('image/jpeg');\n\n // As a blob\n // return new Promise((resolve, reject) => {\n // canvas.toBlob((file) => {\n // resolve(URL.createObjectURL(file));\n // }, \"image/jpeg\");\n // });\n return new Promise((resolve, reject) => {\n resolve(canvas.toDataURL(\"image/jpeg\", 0.7));\n });\n}\n\nexport async function getRotatedImage(imageSrc, rotation = 0) {\n const image = await createImage(imageSrc);\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n\n const orientationChanged =\n rotation === 90 ||\n rotation === -90 ||\n rotation === 270 ||\n rotation === -270;\n if (orientationChanged) {\n canvas.width = image.height;\n canvas.height = image.width;\n } else {\n canvas.width = image.width;\n canvas.height = image.height;\n }\n\n ctx.translate(canvas.width / 2, canvas.height / 2);\n ctx.rotate((rotation * Math.PI) / 180);\n ctx.drawImage(image, -image.width / 2, -image.height / 2);\n\n return new Promise(resolve => {\n canvas.toBlob(file => {\n resolve(URL.createObjectURL(file));\n }, \"image/png\");\n });\n}\n","// To convert dataUrl (which we get from our blob) to a a file object\nexport const dataURLtoFile = (dataurl, filename) => {\n const arr = dataurl.split(\",\");\n const mime = arr[0].match(/:(.*?);/)[1];\n const bstr = atob(arr[1]);\n let n = bstr.length;\n const u8arr = new Uint8Array(n);\n\n while (n--) u8arr[n] = bstr.charCodeAt(n);\n\n return new File([u8arr], filename, { type: mime });\n};\n","import React, { useContext, useRef, useState, useCallback } from \"react\";\nimport {\n Button,\n Slider,\n makeStyles,\n Typography,\n Dialog,\n AppBar,\n Toolbar,\n IconButton,\n Slide,\n Snackbar,\n CircularProgress\n} from \"@material-ui/core\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\nimport Cropper from \"react-easy-crop\";\nimport { getCroppedImg } from \"./utils/cropImage\";\nimport Cookies from \"universal-cookie\";\nimport { ApolloClient, InMemoryCache } from \"@apollo/client\";\nimport { createUploadLink } from \"apollo-upload-client\";\nimport { setContext } from \"@apollo/client/link/context\";\nimport { Navigation } from \"../../Context\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport { dataURLtoFile } from \"./utils/dataURLtoFile\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport CloudUploadIcon from \"@material-ui/icons/CloudUpload\";\nimport { l1 } from \"../../components/local.json\";\n\nconst cache = new InMemoryCache();\nconst cookies = new Cookies();\nconst token = cookies.get(\"token\");\nconst uploadLink = createUploadLink({\n uri: process.env.REACT_APP_GRAPHQL_END_POINT\n});\n\nconst authLink = setContext((_, { headers }) => {\n // get the authentication token from local storage if it exists\n // return the headers to the context so httpLink can read them\n return {\n headers: {\n ...headers,\n authorization: token ? `Bearer ${token}` : \"\"\n }\n };\n }),\n client = new ApolloClient({\n cache,\n link: authLink.concat(uploadLink)\n });\nconst UPLOAD = gql`\n mutation($file: Upload!) {\n upload(file: $file) {\n name\n id\n url\n }\n }\n`;\nconst UPDATE_USER = gql`\n mutation UpdateUser($data: editUserInput!, $id: ID!) {\n updateUser(input: { data: $data, where: { id: $id } }) {\n user {\n id\n avatar\n }\n }\n }\n`;\nconst UPDATE_CENTER_INFO = gql`\n mutation updateCenterInfo($id: ID!, $data: editCenterInput!) {\n updateCenter(input: { where: { id: $id }, data: $data }) {\n center {\n id\n }\n }\n }\n`;\n\nconst useStyles = makeStyles(theme => ({\n container: {\n height: \"100vh\",\n width: \"100vw\"\n },\n containerCropper: {\n height: \"90%\",\n padding: \"10px\"\n },\n cropper: {\n position: \"relative\",\n height: \"90%\",\n background: \"#333\"\n },\n slider: {\n height: \"10%\",\n display: \"flex\",\n alignItems: \"center\",\n width: \"60%\",\n margin: \"auto\"\n },\n containerButtons: {\n height: \"10%\",\n border: \"1px solid #f5f5f5\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\"\n },\n sliderLabel: {\n marginRight: \"20px\"\n }\n}));\nconst Transition = React.forwardRef(function Transition(props, ref) {\n return ;\n});\n\nexport default function CropeImage({\n destination = \"userProfile\",\n centerId = null,\n setEventImage = null,\n setEventImageId = null\n}) {\n const { user } = useContext(Navigation);\n const classes = useStyles();\n const [updateCenterInfo] = useMutation(UPDATE_CENTER_INFO, {\n onError: err => {\n setAlertFailure(l1.failure);\n console.log(\"Error upload to logo\", err);\n },\n onCompleted: () => {\n console.log(\"done\");\n setAlertSuccess(l1.editsuccess);\n setTimeout(() => {\n window.location.reload(false);\n }, 2000);\n // setSaveLoading(false);\n // refetch();\n }\n });\n const handleClose = () => {\n setImage(null);\n inputRef.current.value = null;\n };\n\n const inputRef = useRef();\n const triggerFileSelect = () => {\n inputRef.current.click();\n };\n\n const [loading, setLoading] = useState(null);\n const [image, setImage] = useState(null);\n const [croppedArea, setCroppedArea] = useState(null);\n const [crop, setCrop] = useState({ x: 0, y: 0 });\n const [zoom, setZoom] = useState(1);\n const onCropComplete = (croppedAreaPercentage, croppedAreaPixels) => {\n setCroppedArea(croppedAreaPixels);\n // console.log(croppedAreaPercentage, croppedAreaPixels)\n };\n const onSelectFile = event => {\n if (event.target.files && event.target.files.length > 0) {\n const reader = new FileReader();\n reader.readAsDataURL(event.target.files[0]);\n reader.addEventListener(\"load\", () => {\n setImage(reader.result);\n });\n }\n };\n const [alertSuccess, setAlertSuccess] = useState(false);\n const [alertFailure, setAlertFailure] = useState(false);\n const [updateUser, { data, status }] = useMutation(UPDATE_USER, {\n onCompleted: e => {\n console.log(\"updateUser completed\", e);\n setAlertSuccess(l1.editsuccess);\n setTimeout(() => {\n window.location.reload(false);\n }, 2000);\n },\n onError: err => {\n setAlertFailure(l1.failure);\n console.log(\"updateUser error\", err);\n }\n });\n const uploadImage = croppedImage => {\n const file = dataURLtoFile(croppedImage, \"image.jpeg\");\n client\n .mutate({\n mutation: UPLOAD,\n variables: {\n file: file\n }\n })\n .then(res => {\n console.log(\"response appollo\", res);\n if (destination === \"userProfile\") {\n updateUser({\n variables: { data: { avatar: res.data.upload.url }, id: user.id }\n });\n }\n if (destination === \"centerLogo\") {\n updateCenterInfo({\n variables: {\n id: centerId,\n data: { logo: res.data.upload.id }\n }\n });\n }\n if (destination === \"eventImage\") {\n console.log(\"the id of the uploaded image\", res.data.upload.id);\n setAlertSuccess(l1.editsuccess);\n setEventImage(res.data.upload.url);\n setEventImageId(res.data.upload.id);\n handleClose();\n }\n })\n .catch(err => {\n console.error(err);\n })\n .finally(() => {\n setLoading(null);\n });\n };\n const sendCroppedImageToUpload = useCallback(async () => {\n try {\n const croppedImage = await getCroppedImg(image, croppedArea);\n // console.log(\"done\", { croppedImage });\n uploadImage(croppedImage);\n // setCroppedImage(croppedImage)\n } catch (e) {\n console.error(e);\n }\n }, [image, croppedArea]);\n\n const onSubmit = () => {\n setLoading(true);\n sendCroppedImageToUpload(image, croppedArea);\n };\n return (\n <>\n {image ? (\n \n \n \n \n \n \n \n \n {l1.changePicture}\n \n \n \n \n {loading && }\n {!loading && l1.submit}\n \n \n \n \n
\n
\n
\n \n
\n
\n \n {l1.zoom}\n \n setZoom(zoom)}\n aria-labelledby=\"Zoom\"\n />\n {console.log(\"status\", updateUser.status)}\n {updateUser.isLoading ? (\n hello\n ) : null}\n
\n
\n
\n \n {loading && }\n {!loading && l1.submit}\n \n \n {l1.close}\n \n
\n
\n \n ) : null}\n
\n }\n >\n {l1.chooseFromComputer}\n \n \n
\n {\n setAlertSuccess(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n {\n setAlertFailure(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertFailure}\n \n \n \n );\n}\n","import React, { useContext, useState } from \"react\";\nimport TopBar from \"../common/TopBar\";\nimport {\n Avatar,\n Box,\n makeStyles,\n TextField,\n Button,\n Typography,\n Snackbar\n} from \"@material-ui/core\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\n\nimport { FaEdit, FaTrash, FaSave } from \"react-icons/fa\";\nimport { Navigation } from \"../../Context\";\nimport { l1 } from \"../../components/local.json\";\nimport { gql, useMutation } from \"@apollo/client\";\n// import { InMemoryCache } from \"@apollo/client\";\n// import { createUploadLink } from \"apollo-upload-client\";\n// import { setContext } from \"@apollo/client/link/context\";\n// import Cookies from \"universal-cookie\";\nimport useLayout from \"../common/useLayout\";\nimport CropeImage from \"./ImageCrop\";\n// const cache = new InMemoryCache();\n// const cookies = new Cookies();\n// const token = cookies.get(\"token\");\n// const uploadLink = createUploadLink({\n// uri: process.env.REACT_APP_GRAPHQL_END_POINT\n// });\n\n// const authLink = setContext((_, { headers }) => {\n// // get the authentication token from local storage if it exists\n// // return the headers to the context so httpLink can read them\n// return {\n// headers: {\n// ...headers,\n// authorization: token ? `Bearer ${token}` : \"\"\n// }\n// };\n// }),\n// client = new ApolloClient({\n// cache,\n// link: authLink.concat(uploadLink)\n// });\n\nconst useStyles = makeStyles(theme => ({\n container: {\n margin: theme.spacing(10),\n maxWidth: \"100vw\",\n gap: theme.spacing(5)\n },\n icon: {\n color: theme.palette.primary.main,\n fontSize: theme.spacing(4),\n marginRight: theme.spacing(1)\n },\n\n formSectionPassword: {\n padding: theme.spacing(4),\n marginBottom: 20,\n border: \"solid 1px lightgray\",\n borderRadius: 18,\n boxShadow: \"-5px 5px 5px lightgray\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: theme.spacing(2),\n flexGrow: 1\n },\n formSectionAvatar: {\n padding: theme.spacing(4),\n marginBottom: 20,\n border: \"solid 1px lightgray\",\n borderRadius: 18,\n boxShadow: \"-5px 5px 5px lightgray\",\n width: \"min-content\"\n },\n avatarLarge: {\n width: 150,\n height: 150\n }\n}));\n// const UPLOAD = gql`\n// mutation($file: Upload!) {\n// upload(file: $file) {\n// name\n// id\n// url\n// }\n// }\n// `;\n\nconst UPDATE_USER = gql`\n mutation UpdateUser($data: editUserInput!, $id: ID!) {\n updateUser(input: { data: $data, where: { id: $id } }) {\n user {\n id\n avatar\n }\n }\n }\n`;\n\nexport default function EditProfile() {\n const { user } = useContext(Navigation);\n // console.log(`${process.env.REACT_APP_STRAPI_URL}${user?.avatar}`);\n const [alertSuccess, setAlertSuccess] = useState(false);\n const [alertFailure, setAlertFailure] = useState(false);\n const [updateUser, { data }] = useMutation(UPDATE_USER, {\n onCompleted: e => {\n console.log(\"updateUser completed\", e);\n setAlertSuccess(l1.editsuccess);\n setTimeout(() => {\n window.location.reload(false);\n }, 2000);\n },\n onError: err => {\n setAlertFailure(l1.failure);\n console.log(\"updateUser error\", err);\n }\n });\n const layout = useLayout();\n const classes = useStyles();\n // const [uploadAvatar, { loading: loadingAvatar }] = useMutation(UPLOAD, {\n // onError: err => {\n // console.log(\"upload err\", err);\n // },\n // onCompleted: data => console.log(\"data upload\", data)\n // });\n\n const [fullname, setFullname] = useState(user.fullname);\n const [email, setEmail] = useState(user.email);\n const [password, setPassword] = useState(\"\");\n const [passwordConfirm, setPasswordConfirm] = useState(\"\");\n const [error, setError] = useState(\"\");\n const handleEssentials = () => {\n const fn = fullname === user.fullname;\n const em = email === user.email;\n if (fn && em) return null;\n else updateUser({ variables: { data: { fullname, email }, id: user.id } });\n };\n const handlePassword = () => {\n const pw = password === passwordConfirm;\n if (pw) {\n updateUser({ variables: { data: { password }, id: user.id } });\n } else setError(\"كلمة السر غير متطابقة\");\n };\n // const [avatar, setAvatar] = useState(null);\n // useEffect(() => {\n // uploadAvatar({ variables: { file: avatar } });\n // console.log(avatar);\n // }, [avatar]);\n // const onSubmit = e => {\n // e.preventDefault();\n // console.log(avatar);\n // client\n // .mutate({\n // mutation: UPLOAD,\n // variables: {\n // file: avatar\n // }\n // })\n // .then(res => {\n // updateUser({\n // variables: { data: { avatar: res.data.upload.url }, id: user.id }\n // });\n // })\n // .catch(err => {\n // console.error(err);\n // });\n // };\n return (\n <>\n \n \n \n

{l1.profilePicture}

\n \n \n

\n {user.avatarURL ? (\n
\n }\n style={{ height: \"auto\" }}\n >\n {l1.edit}\n \n\n }\n style={{ height: \"auto\" }}\n onClick={e => {}}\n >\n {l1.delete}\n \n
\n ) : (\n
\n {l1.updateAvatar}\n {/* \n
\n {\n setAvatar(e.target.files[0]);\n }}\n label=\"hello\"\n type=\"file\"\n accept=\"image/png, image/gif, image/jpeg\"\n />\n {\" \"}\n {\" \"}\n
*/}\n \n
\n )}\n
\n
\n \n

{l1.changeEssentials}

\n setFullname(e.target.value)}\n required\n variant=\"outlined\"\n />\n\n setEmail(e.target.value)}\n required\n variant=\"outlined\"\n />\n\n }\n style={{ width: \"fit-content\" }}\n >\n {l1.save}\n \n \n\n \n

{l1.changePassword}

\n setPassword(e.target.value)}\n />\n\n setPasswordConfirm(e.target.value)}\n />\n\n }\n style={{ width: \"fit-content\" }}\n >\n {l1.save}\n \n \n {\n setAlertSuccess(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n {\n setAlertFailure(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n \n \n );\n}\n","import { Box } from \"@material-ui/core\";\nimport { Typography } from \"@material-ui/core\";\n\nexport default function EvaluationResult({total, max, labels}){\n return (\n \n \n المجموع النهائي:\n \n \n {Math.round(total)}{' '}\n \n \n \\ {max}\n \n \n \n \n التقييم العام:\n {Object.entries(labels).reverse().find(([min]) => total >= min)?.[1]}\n \n \n )\n}","import { Box } from \"@material-ui/core\";\nimport { Typography } from \"@material-ui/core\";\n\nexport default function EvaluationStatistics({submitted, expected}){\n return \n \n عدد التقييمات:\n \n \n {submitted}{' '}\n \n { Boolean (expected) && (\n \n ({Math.round(submitted / expected * 100)}‏%)\n \n )}\n \n \n \n عدد الطلبة:\n \n \n {expected}\n \n \n \n \n}","import { Typography } from \"@material-ui/core\";\nimport { useField } from \"formik\";\nimport {TextField as MuiTextField} from '@material-ui/core';\n\nexport default function EvaluationTextField({id, label, mode = 'fill', long}) {\n console.log(long);\n const [props] = useField(id);\n return (\n mode === 'fill'\n ? \n : <>\n {label}\n { mode === 'summary'\n ? (\n !props.value?.length\n ? '(لا توجد)'\n :
    \n { props.value?.map(\n (v) => {v}\n )}\n
\n )\n : {props?.value?.trim().length ? props.value : '(لا توجد)'}\n }\n \n )\n }","import { createContext, useContext } from \"react\";\nimport Loading from \"../../common/Loading\";\nimport { useParams } from \"react-router-dom/cjs/react-router-dom.min\";\nimport { gql, useQuery } from \"@apollo/client\";\n\nexport const AssignmentContext = createContext();\n\nconst QUERY_ASSIGNMENT = gql`\n query QueryAssignment($id: ID!) {\n assignment(id: $id) {\n title\n type\n description\n evaluationsInfo{\n coach\n date\n location\n }\n }\n }\n`;\n\nexport function AssignmentProvider({children}){\n const {id} = useParams();\n const {data, loading, error} = useQuery(QUERY_ASSIGNMENT, {variables: {id}});\n return (\n loading\n ? \n : error || !data?.assignment\n ? 'ERROR'\n : \n {children}\n \n )\n}\n\nexport function useAssignment(){\n console.log('context', useContext(AssignmentContext));\n return useContext(AssignmentContext);\n}","import { Radio, TableCell, TableHead, TableRow, Typography } from \"@material-ui/core\";\nimport { useField, } from \"formik\";\nimport { useHistory, useParams } from \"react-router-dom\";\nimport EvaluationSubject from \"./EvaluationSubject\";\nimport { MdOutlineCheckCircleOutline } from \"react-icons/md\";\n\nconst radio = (props) => ({\n type: 'number',\n format: 'radioNumber',\n min: 1,\n max: 5,\n aggregation: 'count',\n ...props,\n})\n\nconst longText= (props) => ({\n type: 'text',\n long: true,\n aggregation: 'listStrings',\n ...props,\n})\n\nconst TrainingEvaluation = {\n key: 'student',\n listStudents: true,\n permissions:{\n student: {\n view: ['own'],\n },\n teacher: {\n fill: ['own','others'],\n view: ['own','others','summary'],\n },\n },\n questions:{\n q1: radio({ label: \"المواظبة على الحضور والمواعيد المحاضرات\" }),\n q2: radio({ label: \"السلوك العام للمتدرب\" }),\n q3: radio({ label: \"المشاركة داخل قاعة التدريب\" }),\n q4: radio({ label: \"يلتزم بسياسات و إجراءات المركز\" }),\n q5: radio({ label: \"التحفيز الذاتي\" }),\n q6: radio({ label: \"المتدرب لطيف و إيجابي في عمله\" }),\n q7: radio({ label: \"المبادرة في تعلم الجديد\" }),\n q8: radio({ label: \"يقدم ملاحظات واقتراحات\" }),\n q9: radio({ label: \"يعمل بروح الفريق\" }),\n q10: radio({ label: \"مهارات الاتصال مع الآخرين\" }),\n q11: radio({ label: \"سرعة الفهم\" }),\n q12: radio({ label: \"استخدام للوقت\" }),\n q13: radio({ label: \"المبادرة\" }),\n q14: radio({ label: \"التكييف مع اسلوب التدريب\" }),\n q15: radio({ label: \"المظهر الخارجي اللائق\" }),\n q16: radio({ label: \"جودة العمل بشكل عام\" }),\n q17: radio({ label: \"يلتزم بتعليمات المدرب بإيجابية\" }),\n strengthsAndWeaknesses:longText({ label:\"مواطن القوة و الضعف لدى المتدرب من حيث ارتباطها بموضوع التدريب\" }),\n },\n\n layout: [\n {\n label: 'المسؤوليات العامة للمتدرب',\n questions: ['q1', 'q2', 'q3', 'q4', 'q5', 'q6', 'q7', 'q8', 'q9'],\n },\n {\n label: 'تقييم المدرب',\n questions: ['q10', 'q11', 'q12', 'q13', 'q14', 'q15', 'q16', 'q17'],\n },\n {\n singleQuestion: 'strengthsAndWeaknesses',\n table: false,\n },\n ],\n \n usePostSubmit(){\n const {id, slug} = useParams();\n const history = useHistory();\n return function postSubmitAction(){\n history.push(`/class/${slug}/classwork/${id}/details`);\n }\n },\n\n EvaluationTable: {\n Head(){\n return (\n \n \n م\n عنصر التقييم\n {['ممتاز','جيد جدا', 'جيد', 'مقبول', 'ضعيف'].map(label => \n {label}\n )}\n \n \n )\n },\n Row({id, index, mode = 'fill'}){\n const {label} = this.questions[id];\n const [props, _meta, helpers] = useField(id);\n return \n {index}\n {label}\n {[5,4,3,2,1].map(possibleValue => (\n \n { mode === 'summary'\n ? \n {props.value?.[possibleValue] ?? 0}\n \n \n : mode === 'fill'\n ? {helpers.setValue(possibleValue)}} onFocus={()=>{helpers.setValue(possibleValue)}} />\n : props.value === possibleValue && \n }\n \n ))}\n \n }\n }\n}\n\nexport default new EvaluationSubject(TrainingEvaluation);","/* eslint-disable react-hooks/rules-of-hooks */\nimport { useHistory, useParams } from \"react-router-dom/cjs/react-router-dom.min\";\nimport { Navigation } from \"../../../Context\";\nimport sparseUpdate from \"../../../helpers/sparseUpdate\";\nimport { useStudentWork } from \"../context/studentWork\";\nimport { useContext } from \"react\";\n\n// possible permissions :\n// - actors: student, teacher\n// - actions: fill, view\n// targets for each action\n// - fill: own, others\n// - view: own, others, summary\n\nconst DEFAULT_PERMISSIONS = {\n student: {\n fill: ['own'],\n view: ['own'],\n },\n teacher: {\n fill: [],\n view: ['summary'],\n },\n}\n\nclass EvaluationSubject{\n constructor(props = {}) {\n // Initialize item and collection names for GraphQL queries and mutations\n this.update(props);\n // Bind instance to component methods\n this.getPageTitle = this.getPageTitle.bind(this);\n this.useCheckPermissions = this.useCheckPermissions.bind(this);\n this.usePostSubmit = this.usePostSubmit.bind(this);\n this.EvaluationTable.Head = this.EvaluationTable.Head.bind(this);\n this.EvaluationTable.Footer = this.EvaluationTable.Footer.bind(this);\n this.EvaluationTable.Row = this.EvaluationTable.Row.bind(this);\n }\n \n key;\n questions ={};\n layout = [];\n resultLabels = null;\n permissions = DEFAULT_PERMISSIONS;\n listStudents = false;\n\n usePostSubmit(){\n console.log('default post submit');\n return () => { console.log('no action')}\n };\n\n EvaluationTable = {\n Head(){\n return null;\n },\n Footer(){\n return null;\n },\n Row(){\n return null;\n }\n }\n /** Sparse update of the object's attributes */\n update(props) {\n for (let prop in props) {\n if ([null, undefined].includes(this?.[prop])){\n this[prop] = props[prop];\n } else\n if (\n typeof props[prop] === \"object\" &&\n !Array.isArray(props[prop]) &&\n props[prop] !== null\n ) {\n if (!this.hasOwnProperty(prop)) {\n this[prop] = {};\n }\n sparseUpdate(this[prop], props[prop]);\n } else {\n this[prop] = props[prop];\n }\n }\n }\n\n getPageTitle(mode){\n return `${\n mode === 'summary'\n ? \"ملخص تقييمات\"\n :mode === 'view'\n ? 'مشاهدة تقييم'\n : 'تقييم'\n } ${\n this.key === 'student'\n ? (mode === 'summary' ? 'الطلاب' : 'الطالب')\n : this.key === 'coach' ? 'المدرب'\n : 'الدورة التدريبية'\n }`\n }\n\n useCheckPermissions(mode){\n const {id, slug} = useParams();\n const history = useHistory();\n const {user, isCenterAdmin} = useContext(Navigation);\n const isStudent = user.classes.some(c => c.slug === slug);\n const isTeacher = isCenterAdmin || user.teachingClasses.some(c => c.slug === slug);\n const roles = [isStudent && 'student', isTeacher && 'teacher'].filter(Boolean);\n const {studentWork} = useStudentWork();\n const action = mode === 'summary' || studentWork?.submission?.[this.key] ? 'view' : 'fill';\n const isOwnWork = studentWork?.student?.id === user?.id;\n const target = mode === 'summary' ? 'summary' : (isOwnWork ? 'own' : 'others');\n \n for(let role of roles){\n if(this.permissions?.[role]?.[action].includes(target)){\n return;\n }\n }\n history.push(`/class/${slug}/classwork/${id}/details`);\n }\n\n\n \n}\n \nexport default EvaluationSubject","import { TableCell, TableFooter, TableHead, TableRow, TextField, Typography } from \"@material-ui/core\";\nimport { useField, useFormikContext } from \"formik\";\nimport { useHistory, useParams } from \"react-router-dom\";\nimport EvaluationSubject from \"./EvaluationSubject\";\n\nconst number = (props) => ({\n type: 'number',\n format: 'inputNumber',\n aggregation: 'avg',\n ...props\n})\n\nconst longText= (props) => ({\n type: 'text',\n long: true,\n aggregation: 'listStrings',\n ...props,\n})\n\nconst CoachEvaluation = {\n key: 'coach',\n questions:{\n q1: number({\n label: \"هل بدت عليه الثقة و البشاشة؟\",\n max: 20,\n }),\n q2: number({\n label: \"هل كانت البداية مشوقة و مثيرة؟\",\n max: 20,\n }),\n q3: number({\n label: \"هل شرح الأهداف و قسم الموضوع في البداية؟\",\n max: 20,\n }),\n q4: number({\n label: \"هل كانت مدة البداية مناسبة؟\",\n max: 20,\n }),\n q5: number({\n label: \"هل كان المظهر العام مناسبا للموضوع و الحضور؟\",\n max: 20,\n }),\n q6: number({\n label: 'هل كان ارتفاع الصوت مناسبا؟',\n max: 20,\n }),\n q7: number({\n label: 'هل كان تغيير نبرات الصوت مناسبا؟',\n max: 20,\n }),\n q8: number({\n label: 'هل كانت الوقفات مناسبة؟',\n max: 20,\n }),\n q9: number({\n label: 'هل كانت سرعة الحديث مناسبة؟',\n max: 20,\n }),\n q10: number({\n label: 'هل خلا الحديث من اللزمات المكررة Tic؟',\n max: 20,\n }),\n q11: number({\n label: 'هل كانت تعابير وجهه مريحة ودودة دون اصطناع؟',\n max: 10,\n }),\n q12: number({\n label: 'هل كانت تعابير جسده تشجع الانتباه و المشاركة؟',\n max: 20,\n }),\n q13: number({\n label: 'هل كانت حركات يديه مناسبة للموضوع ؟',\n max: 20,\n }),\n q14: number({\n label: 'هل كانت حركات جسده ومشيه ووقفته مناسبة؟',\n max: 15,\n }),\n q15: number({\n label: 'هل خلت حركاته من Tic ( حركة مكررة غير مناسبة )؟',\n max: 10,\n }),\n q16: number({\n label: 'هل كانت نظرات عينيه مناسبة وموزعة بشكل سليم؟',\n max: 15,\n }),\n q17: number({\n label: 'هل خلت تعابيره من الخوف أو التوتر أو الانفعال؟',\n max: 10,\n }),\n q18: number({\n label: 'هل كان المدرب متمكناً من مادته؟',\n max: 50,\n }),\n q19: number({\n label: 'هل كان واضحاً في تقسيم الموضوع إلى نقاط أساسية وفرعية؟',\n max: 15,\n }),\n q20: number({\n label: 'هل كان يربط الجانب النظري بأمثله واقعية',\n max: 15,\n }),\n q21: number({\n label: 'هل كان هناك تذكير مستمر أين وصلنا؟',\n max: 20,\n }),\n q22: number({\n label: 'هل كان يغير الشرائح بسرعة مناسبة؟',\n max: 20,\n }),\n q23: number({\n label: '2.هل التزم بقانون 5 × 5 ( 5 سطور، 5 كلمات )؟',\n max: 20,\n }),\n q24: number({\n label: '3.هل كانت الخطوط وألوانها مناسبة؟',\n max: 20,\n }),\n q25: number({\n label: '4.هل كانت الصور جميلة ومناسبة؟',\n max: 20,\n }),\n q26: number({\n label: '5.هل كانت الشرائح بشكل عام مناسبة وجميلة؟',\n max: 20,\n }),\n q27: number({\n label: '.هل كانت التمارين مناسبة وفعالة لموضوع الدورة؟',\n max: 20,\n }),\n q28: number({\n label: '.هل كانت التمارين مبدعة وجميلة وغير مألوفة؟',\n max: 20,\n }),\n q29: number({\n label: 'هل بذل المدرب جهداً واضحاً في إعدادها؟',\n max: 20,\n }),\n q30: number({\n label: 'هل كانت الإرشادات لاستعمال التمارين جيدة؟',\n max: 20,\n }),\n q31: number({\n label: 'هل كانت الدروس المستفادة جيدة واضحة و فعالة؟',\n max: 20,\n }),\n q32: number({\n label: 'هل كان هناك حوار مع المتدربين؟',\n max: 20,\n }),\n q33: number({\n label: 'هل كان هناك أنشطة جماعية؟',\n max: 20,\n }),\n q34: number({\n label: 'هل كان الجو العام وديا؟',\n max: 20,\n }),\n q35: number({\n label: '.هل أجاب المدرب على الأسئلة بفاعلية؟',\n max: 20,\n }),\n q36: number({\n label: 'هل كان الختام فعالا ومؤثرا؟',\n max: 20,\n }),\n q37: number({\n label: 'هل كانت المادة واضحة التقسيم؟',\n max: 20,\n }),\n q38: number({\n label: 'هل هي مادة جديدة ومبدعة؟',\n max: 20,\n }),\n q39: number({\n label: 'هل يوجد مراجع واستشهادات حديثة؟',\n max: 20,\n }),\n q40: number({\n label: 'هل المادة حسنة الإخراج؟',\n max: 20,\n }),\n q41: number({\n label: 'هل تحوي المادة معاني وعبر ورسائل واضحة؟',\n max: 20,\n }),\n q42: number({\n label: 'التقييم العام لتناسق الأداء',\n max: 100,\n }),\n pros:longText({ label: \"أبرز الإيجابيات\" }),\n cons:longText({ label: \"أبرز السلبيات\" }),\n comment:longText({ label:\"ملاحظات\" }),\n },\n\n layout: [\n {\n label: 'تقييم البداية',\n questions: ['q1', 'q2', 'q3', 'q4', 'q5'],\n },\n {\n label: 'تقييم لغة الحديث',\n questions: ['q6', 'q7', 'q8', 'q9', 'q10'],\n },\n {\n label: 'لغة الجسد',\n questions: ['q11', 'q12', 'q13', 'q14', 'q15', 'q16', 'q17'],\n },\n {\n label: 'الثقة و التمكن',\n questions: ['q18', 'q19', 'q20', 'q21'],\n },\n {\n label: 'شرائح العرض PowerPoint',\n questions: ['q22', 'q23', 'q24', 'q25', 'q26'],\n },\n {\n label: 'التمارين و الوسائل المساعدة',\n questions: ['q27', 'q28', 'q29', 'q30', 'q31'],\n },\n {\n label: 'الجو العام و الختام',\n questions: ['q32', 'q33', 'q34', 'q35', 'q36'],\n },\n {\n label: 'المادة العلمية',\n questions: ['q37', 'q38', 'q39', 'q40', 'q41'],\n },\n {\n label: 'التقييم العام لتناسق الأداء',\n questions: ['q42'],\n },\n /* ... other sections */\n {\n label: 'في الختام',\n questions: ['pros', 'cons', 'comment'],\n table: false,\n },\n ],\n\n resultLabels:{\n 0: 'سيء',\n 600: 'مقبول', \n 700: 'جيد',\n 800: 'ممتاز',\n },\n\n usePostSubmit(){\n const {id, slug} = useParams();\n const history = useHistory();\n return function postSubmitAction(){\n history.push(`/class/${slug}/classwork/${id}/details`);\n }\n },\n\n EvaluationTable: {\n Head(){\n return (\n \n \n م\n عنصر التقييم\n الدرجة\n التقييم\n \n \n )\n },\n Footer({section}){\n const {values} = useFormikContext();\n return (\n \n \n \n مجموع {section.label}\n {section.questions.reduce((prev, cur) => prev + this.questions[cur].max, 0)}\n {Math.round(section.questions.reduce((prev, cur) => prev + values[cur], 0))}\n \n \n );\n },\n Row({id, index, mode = 'fill'}){\n const {label, max} = this.questions[id];\n const [props, meta] = useField(id);\n return \n {index}\n {label}\n {max}\n \n {mode === 'fill' \n ? \n : {Math.round(props.value)}\n }\n \n \n }\n }\n}\n\nexport default new EvaluationSubject(CoachEvaluation);","import { Radio, TableCell, TableHead, TableRow, Typography } from \"@material-ui/core\";\nimport { useField, } from \"formik\";\nimport { useHistory, useParams } from \"react-router-dom\";\nimport EvaluationSubject from \"./EvaluationSubject\";\nimport {MdCheckCircle, MdCheckCircleOutline} from 'react-icons/md';\n\nconst radio = (props) => ({\n type: 'number',\n format: 'radioNumber',\n min: 1,\n max: 5,\n aggregation: 'count',\n ...props,\n})\n\nconst longText= (props) => ({\n type: 'text',\n long: true,\n aggregation: 'listStrings',\n ...props,\n})\n\nconst TrainingEvaluation = {\n key: 'training',\n questions:{\n q1: radio({ label: \"ساعدني البرنامج على اكتساب معلومات ومهارات جديدة أستطيع تطبيقها في حياتي العملية\" }),\n q2: radio({ label: \"توافق البرنامج مع توقعاتي الشخصية\" }),\n q3: radio({ label: \"الأساليب التدريبية المستخدمة تميزت بالفعالية (تمارين،ورش..) خاصة لكل دورة\" }),\n q4: radio({ label: \"عمق وحداثة المادة العلمية للبرنامج\" }),\n q5: radio({ label: \"التقييم العام للبرنامج\" }),\n q6: radio({ label: \"قدرته على إدارة الحوار مع المشاركين\" }),\n q7: radio({ label: \"تمكنه من المادة العلمية\" }),\n q8: radio({ label: \"تمكنه من تغطية أهداف الدورة\" }),\n q9: radio({ label: \"تمكنه من تغطية محتوى الدورة بشكل كامل\" }),\n q10: radio({ label: \"تميز المدرب بمهارات العرض والتقديم\" }),\n q11: radio({ label: \"حافظ المدرب على حيوية البرنامج\" }),\n q12: radio({ label: \"كان المدرب موفقا في استخدام الأساليب التدريبية لتحقيق أهداف البرنامج (ورش-تمارين..)\" }),\n q13: radio({ label: \"إعطاؤه وقتا كافيا للأنشطة المساعدة (تمارين..)\" }),\n q14: radio({ label: \"تكيفه مع مستويات المشاركين\" }),\n q15: radio({ label: \"وُفِّق المدرب في إدارة وقت البرنامج\" }),\n q16: radio({ label: \"مدة البرنامج كانت كافية\" }),\n q17: radio({ label: \"مكان انعقاد البرنامج\" }),\n q18: radio({ label: \"القاعة التدريبية\" }),\n q19: radio({ label: \"تعاون منسق البرنامج والهيئة الادارية\" }),\n q20: radio({ label: \"توافر المستلزمات والقرطاسية والمطبوعات\" }),\n q21: radio({ label: \"خدمات الضيافة\" }),\n pros:longText({ label: \"أبرز الإيجابيات\" }),\n cons:longText({ label: \"أبرز السلبيات\" }),\n comment:longText({ label:\"ملاحظات عامة و اقتراحات للدورات القادمة\" }),\n },\n\n layout: [\n {\n label: 'تقييم الجانب الفني في الدورة',\n questions: ['q1', 'q2', 'q3', 'q4', 'q5'],\n },\n {\n label: 'تقييم المدرب',\n questions: ['q6', 'q7', 'q8', 'q9', 'q10', 'q11', 'q12', 'q13', 'q14', 'q15'],\n },\n {\n label: 'تقييم الجانب الإداري',\n questions: ['q16', 'q17', 'q18', 'q19', 'q20', 'q21'],\n },\n {\n questions: ['pros', 'cons', 'comment'],\n table: false,},\n ],\n \n usePostSubmit(){\n const {id, slug} = useParams();\n const history = useHistory();\n return function postSubmitAction(){\n history.push(`/class/${slug}/classwork/${id}/details`);\n }\n },\n\n EvaluationTable: {\n Head(){\n return (\n \n \n م\n عنصر التقييم\n {['ممتاز','جيد جدا', 'جيد', 'مقبول', 'ضعيف'].map(label => \n {label}\n )}\n \n \n )\n },\n Row({id, index, mode = 'fill'}){\n const {label} = this.questions[id];\n const [props, _meta, helpers] = useField(id);\n return \n {index}\n {label}\n {[5,4,3,2,1].map(possibleValue => (\n \n { mode === 'summary'\n ? \n {props.value?.[possibleValue] ?? 0}\n \n \n : mode === 'fill'\n ? {helpers.setValue(possibleValue)}} onFocus={()=>{helpers.setValue(possibleValue)}} />\n : props.value === possibleValue && \n }\n \n ))}\n \n }\n }\n}\n\nexport default new EvaluationSubject(TrainingEvaluation);","import CoachEvaluation from \"./subjects/coach\";\nimport StudentEvaluation from \"./subjects/student\";\nimport TrainingEvaluation from \"./subjects/training\";\n\nconst subjects = {\n coach: CoachEvaluation,\n student: StudentEvaluation,\n training: TrainingEvaluation,\n}\n\nexport default function useEvaluationSubject(name){\n return subjects[name];\n}","import { gql, useMutation, useQuery } from \"@apollo/client\";\nimport { createContext, useContext } from \"react\";\nimport { useParams } from \"react-router-dom/cjs/react-router-dom.min\";\nimport Loading from \"../../common/Loading\";\nimport useEvaluationSubject from \"../useEvaluationSubject\";\n\nexport const StudentworkContext = createContext();\n\nconst QUERY_STUDENTWORK = gql`\n query QueryStudentWork($studentWorkId: ID!) {\n studentWork(id: $studentWorkId) {\n student {\n id\n fullname\n avatar\n }\n submission\n }\n }\n`;\n\nconst UPDATE_STUDENT_WORK = gql`\nmutation UpdateStudentWork(\n $studentWorkId: ID!\n $submission: JSON!\n) {\n updateStudentWork(\n input: { where: { id: $studentWorkId }, data: { submission: $submission } }\n ) {\n studentWork {\n id\n }\n }\n}\n`;\n\n\nexport function StudentWorkProvider({subject, children}){\n const {studentWorkId} = useParams();\n const {data, loading, error} = useQuery(QUERY_STUDENTWORK, {variables: {studentWorkId}});\n const {usePostSubmit} = useEvaluationSubject(subject);\n const postUpdateCallback = usePostSubmit();\n const [updateStudentWork, { loading: updatingStudentWork, error: studentWorkUpdateError }] = useMutation(\n UPDATE_STUDENT_WORK,\n {\n onCompleted(){\n postUpdateCallback();\n },\n onError(error){console.log(\"mutationUpdateStudentWork Error\", error);},\n }\n );\n return (\n loading || updatingStudentWork\n ? \n : error || !data?.studentWork || studentWorkUpdateError\n ? 'ERROR'\n : \n {children}\n \n )\n}\n\nexport function useStudentWork(){\n return useContext(StudentworkContext) ?? {};\n}","import { number, string } from \"yup\";\n\nconst DEFAULT_FORMAT = 'string';\nfunction requireIf(required = false, schema){\n return required ? schema.required() : schema;\n}\n\nconst validations = {\n inputNumber: ({min=0, max=Infinity, required}) => requireIf(required, number().integer().min(min).max(max)),\n radioNumber: ({min=0, max, required}) => requireIf(required, number().integer().min(min).max(max)),\n string: ({required}) => requireIf(required, string()),\n}\n\nexport function getValidationRule(question){\n return question?.validation ?? validations[question?.format ?? DEFAULT_FORMAT](question);\n}\n\nexport const initialValues = {\n inputNumber: 0,\n radioNumber: ({min, max})=> Math.round((min+max)/2),\n string: '',\n}\n\nexport function getInitalValue(question){\n let value = initialValues[question?.format ?? DEFAULT_FORMAT];\n return question?.initialValue ?? (typeof value === 'function' ? value(question) : value);\n}\n\n","import { createContext, useContext } from \"react\";\nimport Loading from \"../../common/Loading\";\nimport { useParams } from \"react-router-dom/cjs/react-router-dom.min\";\nimport { gql, useQuery } from \"@apollo/client\";\n\nexport const StudentWorksContext = createContext();\n\nconst QUERY_STUDENTWORKS = gql`\n query QueryStudentWorks($id: ID!) {\n studentWorks( where: { assignment: {id: $id}}) {\n id\n student {\n id\n fullname\n avatar\n }\n submission\n }\n }\n`;\n\nexport function StudentWorksProvider({type, children}){\n const {id} = useParams();\n const {data, loading, error} = useQuery(QUERY_STUDENTWORKS, {variables: {id}});\n return (\n loading\n ? \n : error || !data?.studentWorks\n ? 'ERROR'\n : \n {children}\n \n )\n}\n\nexport function useStudentWorks(){\n return useContext(StudentWorksContext) ?? [];\n}","const aggregations = {\n avg:(result, current, aggregatedCount) => (result*aggregatedCount + current) / (aggregatedCount + 1),\n list: (result, current) => ([ ...result, current]),\n listStrings: (result, current) => ([ ...result, ...(current?.trim()?.length ? [current] : [])]),\n count: (result, current) => ({\n ...result,\n [current]: (result?.[current] ?? 0) + 1\n }),\n}\n\nexport const aggregationInitialValues = {\n avg: 0,\n list: [],\n listStrings: [],\n}\n\nexport default function aggregate(evaluations = [], questions){\n const submittedEvaluations = evaluations.filter(Boolean);\n const aggregatedValues = Object.fromEntries(Object.entries(questions).map(([key, {aggregation}]) => ([key, aggregationInitialValues[aggregation] ])))\n console.log(evaluations, submittedEvaluations, aggregatedValues);\n for(let aggregatedCount = 0; aggregatedCount < submittedEvaluations.length; aggregatedCount++){\n Object.entries(questions).forEach(([key, {aggregation}]) => {\n aggregatedValues[key] = aggregations[aggregation](aggregatedValues[key], evaluations[aggregatedCount]?.[key] ?? (key.type === 'number' ? 0 : ''), aggregatedCount);\n })\n }\n aggregatedValues.expected = evaluations.length;\n aggregatedValues.submitted = submittedEvaluations.length;\n console.log(aggregatedValues)\n return aggregatedValues;\n}\n ","import { Avatar, Box, Button, Divider, Grid, Icon, Typography, makeStyles } from \"@material-ui/core\";\nimport { IoArrowBackCircleOutline } from \"react-icons/io5\";\nimport { MdOutlineCheckCircleOutline } from \"react-icons/md\";\nimport { useHistory, useParams } from \"react-router-dom/cjs/react-router-dom.min\";\nimport { useStudentWorks } from \"./context/studentWorks\";\n\nconst useStyles = makeStyles((theme)=>({\n container: {\n width: '100%',\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: 'white',\n marginBottom: theme.spacing(1),\n cursor: 'pointer',\n },\n avatar: {\n margin: theme.spacing(0, 1),\n },\n nameText: {},\n nameName: {\n textTransform:'none'\n },\n menuItem: {\n paddingRight: theme.spacing(10),\n },\n iconPrimary:{\n stroke: theme.palette.primary.main\n },\n iconSecondary:{\n stroke: theme.palette.secondary.main\n }\n}))\n\nexport default function EvaluationList({subjectKey}){\n const classes = useStyles();\n const {id, slug} = useParams();\n const studentWorks = useStudentWorks();\n const history = useHistory();\n console.log({studentWorks});\n if(!studentWorks.length) {\n return null;\n }\n return (<>\n \n \n قائمة الطلاب\n \n \n \n { studentWorks.map( ({id: studentWorkId, student, submission}) => (\n \n \n \n ))}\n \n \n )\n}","import { Box, Button, Divider, Grid, Table, TableBody, Typography } from \"@material-ui/core\";\nimport { Formik } from \"formik\";\nimport { useParams } from \"react-router-dom\";\nimport { object } from \"yup\";\nimport Loading from \"../common/Loading\";\nimport TopBar from \"../common/TopBar\";\nimport EvaluationResult from \"./EvaluationResult\";\nimport EvaluationStatistics from \"./EvaluationStatistics\";\nimport EvaluationTextField from \"./TextField\";\nimport { useAssignment } from \"./context/assignment\";\nimport { useStudentWork } from \"./context/studentWork\";\nimport { getInitalValue, getValidationRule } from \"./questionFormats\";\nimport useEvaluationSubject from \"./useEvaluationSubject\";\nimport { l1 } from \"../local.json\";\nimport { useStudentWorks } from \"./context/studentWorks\";\nimport aggregate from \"./aggregate\";\nimport EvaluationList from \"./EvaluationList\";\nexport default function Evaluation({subject}){\n const { studentWorkId } = useParams();\n const assignment = useAssignment();\n const {key: subjectKey, EvaluationTable, layout, questions, resultLabels, getPageTitle, useCheckPermissions, listStudents} = useEvaluationSubject(subject);\n const {studentWork, updateStudentWork} = useStudentWork();\n const evaluation = studentWork?.submission?.[subjectKey];\n\n const studentworks = useStudentWorks();\n const aggregatedData = aggregate(studentworks?.map((work) => work.submission?.[subjectKey]), questions);\n const mode = aggregatedData?.expected ? 'summary' : (evaluation ? 'view' : 'fill');\n useCheckPermissions(mode);\n \n const formikConfig = {\n initialValues: {\n ...Object.fromEntries(Object.keys(questions).map(questionId => ([questionId, mode === \"summary\" ? aggregatedData?.[questionId] : evaluation?.[questionId] ?? getInitalValue(questions[questionId])]))),\n },\n validationSchema: object().shape({\n ...Object.fromEntries(Object.entries(questions).map(([questionId, question]) => ([questionId, getValidationRule(question)]))),\n }),\n onSubmit(evaluation){\n updateStudentWork({\n variables: {\n studentWorkId,\n submission: {\n ...studentWork.submission,\n [subjectKey]: evaluation,\n }\n }\n })\n },\n enableReinitialize: true,\n }\n return <>\n \n \n {({isSubmitting, handleSubmit, values, isValid, errors}) =>{\n const resultsBlock = resultLabels && prev + (questions[cur].type === 'number' ? values[cur] : 0), 0)}\n max={Object.keys(questions).reduce((prev, cur) => prev + (questions[cur].type === 'number' ? questions[cur].max : 0), 0)}\n labels={resultLabels}\n />\n return (\n isSubmitting\n ? \n : \n \n \n \n {assignment.title}\n \n \n \n \n {l1.evaluationsCoach}: {assignment?.evaluationsInfo?.coach}\n \n \n {l1.evaluationsDate}: {assignment?.evaluationsInfo?.date}\n \n \n {l1.evaluationsLocation}: {assignment?.evaluationsInfo?.location}\n \n \n\n\n {mode === 'summary' && listStudents && }\n\n \n \n \n {getPageTitle(mode)}\n \n {mode !== 'fill' && <>\n {mode === \"summary\" && }\n {resultsBlock}\n \n }\n
{e.preventDefault()}}>\n {console.log(layout)}\n {layout.map((section, index) => \n \n { (section?.label ?? questions?.[section?.singleQuestion]?.label)?.length && {index + 1}. {section?.label ?? questions?.[section?.singleQuestion]?.label} }\n {\n section?.table ?? true\n ? \n \n \n \n {section.questions.map((id, index) => )}\n \n
\n : (section?.singleQuestion ? [section.singleQuestion] : section.questions).map((id) => (\n \n \n \n \n ))\n }\n
\n )}\n\n {mode === 'fill' && <>\n {isValid && resultsBlock}\n \n {!isValid && رجاءً راجع تقييمك أعلاه و قم بتصحيح الاخطاء التي فيه قبل المواصلة}\n \n \n \n \n }\n
\n \n
\n \n
\n )\n }}\n
\n \n}","import React, { useContext, useReducer, useState } from \"react\";\nimport { l1 } from \"../../local.json\";\nimport {\n Avatar,\n Box,\n Button,\n Grid,\n makeStyles,\n Typography\n} from \"@material-ui/core\";\nimport TopBar from \"../../common/TopBar\";\nimport { gql, useQuery, useMutation } from \"@apollo/client\";\nimport Loading from \"../../common/Loading\";\nimport { Navigation } from \"../../../Context\";\nimport { onError } from \"apollo-link-error\";\n\nconst useStyles = makeStyles(theme => ({\n highOrder: {\n margin: theme.spacing(10, 30)\n },\n headContainer: {\n //margin: theme.spacing(0, 10),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n border: `1px solid ${theme.palette.grey[100]}`,\n background: `${theme.palette.grey[\"50\"]}30`,\n borderRadius: theme.spacing(2)\n },\n text: {\n color: theme.palette.primary.main,\n fontWeight: 600\n },\n iconHead: {\n color: \"#44566c\",\n margin: theme.spacing(0, 1)\n },\n container: {\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: \"white\",\n marginBottom: theme.spacing(1),\n cursor: \"pointer\"\n },\n avatar: {\n margin: theme.spacing(0, 1)\n },\n nameText: {},\n nameName: {\n color: \"#44566c\"\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n nameTitle: {\n color: \"#44566c\",\n fontSize: theme.spacing(1.4)\n },\n idId: {\n color: \"#8697a8\"\n },\n address: {\n color: \"#44566c\"\n },\n icon: {\n fontSize: theme.spacing(3),\n color: \"#8697a8\",\n marginLeft: theme.spacing(3)\n }\n}));\n\nconst GET_STUDENTS = gql`\n query GetBannedList($id: ID!) {\n memberships(\n sort: \"createdAt:desc\"\n where: { status: \"BANNED\", center: $id }\n ) {\n id\n fullname\n email\n }\n }\n`;\n\nconst UN_BAN_STUDENT = gql`\n mutation UnBanStudent($id: ID!) {\n updateMembership(input: { where: { id: $id }, data: { status: ACTIVE } }) {\n membership {\n id\n status\n }\n }\n }\n`;\n\nfunction Banned() {\n const { centerId } = useContext(Navigation);\n\n //Apollo\n const { loading, data, refetch } = useQuery(GET_STUDENTS, {\n notifyOnNetworkStatusChange: true,\n variables: {\n id: centerId\n }\n });\n\n const [unBanStudent, { loading: loadingBan }] = useMutation(UN_BAN_STUDENT, {\n onCompleted: () => {\n console.log(\"user has been unbanned\");\n refetch();\n },\n onError: err => {\n console.log(err);\n }\n });\n const classes = useStyles();\n if (loading || loadingBan) return ;\n else {\n const students = data?.memberships;\n return (\n \n \n \n \n \n \n {l1.fullName}\n \n \n \n \n {l1.id}\n \n \n \n \n {l1.email}\n \n \n\n \n \n {students.map(({ fullname, email, id }) => (\n \n ))}\n \n \n );\n }\n\n function TableRow({ name, email, id }) {\n // Options Logic\n const [anchorPost, setAnchorPost] = useState(null);\n const openPostMenu = event => {\n setAnchorPost(event.currentTarget);\n };\n const closePostMenu = () => {\n setAnchorPost(null);\n };\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n const [confirmationBanState, reverseConfirmationBanState] = useReducer(\n state => !state,\n false\n );\n const classes = useStyles();\n return (\n \n \n \n \n \n \n {name}\n \n \n \n \n {id}\n \n \n {email}\n \n\n \n {\n unBanStudent({\n variables: {\n id\n }\n });\n }}\n >\n {l1.unBan}\n \n \n \n \n );\n }\n}\nexport default Banned;\n","import React, { useState } from 'react'\nimport {TextField, Button,Typography} from '@material-ui/core'\nimport { l1 } from \"../../../../components/local.json\";\n\n\nexport default function Value(props){\n const [isEditing, setEditing] = useState(false);\n const [newName, setNewName] = useState(props.name);\n const [newContent, setnewContent] = useState(props.content);\n const handleNewNameChange = (e)=>{\n setNewName(e.target.value)\n }\n const handleNewContentChange = (e)=>{\n setnewContent(e.target.value)\n }\n const handleSubmit =(e)=>{\n e.preventDefault();\n props.editValue(props.index, {newName,newContent});\n setNewName(\"\");\n setnewContent(\"\");\n setEditing(false);\n }\n const editingTemplate = (\n
\n

\n \n \n

\n
\n \n \n
\n
\n )\n const viewTemplate = (\n
\n
\n {/* setValues({value: e.target.value})} />\n setValues({value: e.target.value})} /> */}\n {props.name}\n {props.content}\n
\n
\n \n \n
\n
\n )\n return (\n isEditing ? editingTemplate : viewTemplate\n \n )\n}","import React , {useState} from 'react';\nimport Value from './Value'\nimport { Typography, TextField, Button } from \"@material-ui/core\";\nimport { l1 } from \"../../../../components/local.json\";\n\n\n\nexport default function Values(props){\n// const [values, setValues] = useState(props.values);\n const [name, setName] = useState(null);\n const [content, setContent] = useState(null);\n\n const addValue = ({name,content})=>{\n const newValue = { name: name, content: content };\n props.setValues([...props.values, newValue]);\n }\n // const deleteValue = (id)=>{\n // const remainingValues = props.values.filter(value => id !== value.id);\n // props.setValues(remainingValues);\n // }\n const deleteValue = (index)=>{\n const remainingValues = props.values.filter((value,idx) => index !== idx);\n props.setValues(remainingValues);\n }\n const editValue = (index, {newName, newContent})=>{\n const editedValues = props.values.map((value,idx) => {\n // if this task has the same ID as the edited task\n if (index === idx) {\n //\n return {...value, name: newName , content: newContent}\n }\n return value;\n });\n props.setValues(editedValues);\n }\n const handleSubmit= (e) =>{\n e.preventDefault();\n addValue({name,content});\n setName(\"\")\n setContent(\"\")\n }\n const handleNameChange= (e)=>{\n setName(e.target.value);\n }\n const handleContentChange= (e)=>{\n setContent(e.target.value);\n }\n return(\n <>\n
\n \n هل تريد اضافة قيمة جديد؟\n \n
\n \n \n
\n \n
\n {props?.values?.map((value,index) => (\n \n ))}\n \n \n )\n}","import React, {useState} from 'react'\nimport { TextField, Button, Typography } from '@material-ui/core';\nimport { l1 } from \"../../../../components/local.json\";\n\nexport default function PhoneNumber({id,number,handleDelete,editNumber,index}){\n const [isEditing, setEditing] = useState();\n const [numberState,setNumber] = useState();\n const viewTemplate = (number)=>(\n
\n {number}\n
\n \n \n \n
\n
\n )\n const editingTemplate = (number)=>(\n
\n setNumber(e.target.value)}\n />\n
\n \n \n \n
\n
\n )\n return (\n isEditing ? editingTemplate(number) : viewTemplate(number)\n )\n}","import { Button, TextField } from \"@material-ui/core\";\nimport React, { useState } from \"react\";\nimport PhoneNumber from \"./PhoneNumber\";\nexport default function PhoneNumbers({ phoneNumbers, setPhoneNumbers }) {\n const [state, setstate] = useState();\n const handleAdd = () => {\n const newPhoneNumber = { number: state };\n if (phoneNumbers && phoneNumbers.length > 0) {\n setPhoneNumbers([...phoneNumbers, newPhoneNumber]);\n } else setPhoneNumbers([newPhoneNumber]);\n setstate(\"\");\n };\n const handleDelete = index => {\n const remainingNumbers = phoneNumbers?.filter(\n (number, idx) => index !== idx\n );\n setPhoneNumbers(remainingNumbers);\n };\n const editNumber = (index, newNumber) => {\n const editedPhoneNumbers = phoneNumbers?.map((phoneNumber, idx) => {\n // if this task has the same ID as the edited task\n if (index === idx) {\n //\n return { number: newNumber };\n }\n return phoneNumber;\n });\n setPhoneNumbers(editedPhoneNumbers);\n };\n return (\n \n
\n setstate(e.target.value)}\n style={{ width: \"300px\", marginLeft: \"10px\" }}\n />\n \n {\" \"}\n اضافة رقم هاتف\n \n
\n {phoneNumbers &&\n phoneNumbers?.map(({ id, number }, index) => (\n \n ))}\n \n );\n}\n","import React, {\n useState,\n createRef,\n useRef,\n useContext,\n useEffect,\n useReducer\n} from \"react\";\nimport CloudUploadIcon from \"@material-ui/icons/CloudUpload\";\nimport DeleteIcon from \"@material-ui/icons/Delete\";\nimport { Row, Col } from \"antd\";\nimport SmsFailedIcon from \"@material-ui/icons/SmsFailed\";\nimport {\n Facebook,\n Instagram,\n YouTube,\n LinkedIn,\n Twitter\n} from \"@material-ui/icons/\";\nimport Gallery from \"react-grid-gallery\";\nimport ListMembers from \"../../rel/Landing/ListMembers\";\nimport \"../../rel/Landing/Styling.scss\";\nimport { gql, useMutation, useQuery } from \"@apollo/client\";\nimport Loading from \"../../common/Loading\";\nimport { Navigation } from \"../../../Context\";\nimport logo from \"../../rel/Landing/assets/img/center.default.jpg\";\nimport bg from \"../../rel/Landing/assets/img/image-slider.png\";\nimport defaultImg from \"../../rel/Landing/assets/img/default.png\";\nimport {\n Box,\n BottomNavigation,\n BottomNavigationAction,\n Paper,\n InputAdornment,\n TextField,\n Typography,\n CircularProgress,\n Button,\n Snackbar,\n Checkbox,\n FormControlLabel,\n FormGroup\n} from \"@material-ui/core\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\nimport TopBar from \"../../common/TopBar\";\nimport { l1 } from \"../../../components/local.json\";\nimport CropeImage from \"../../UserPages/ImageCrop\";\nimport Values from \"./LandingComponents/Values\";\nimport PhoneNumbers from \"./LandingComponents/PhoneNumbers\";\n\nconst UPLOAD = gql`\n mutation($file: Upload!) {\n upload(file: $file) {\n name\n id\n url\n }\n }\n`;\n\nconst GET_INTERFACE = gql`\n query GetInterface($subdomain: String!) {\n centersLists(where: { subdomain: $subdomain }) {\n info {\n openToRegistration\n logo {\n url\n }\n id\n name\n vision\n message\n values {\n id\n name\n content\n }\n gallery {\n id\n name\n caption\n width\n height\n url\n }\n video\n description\n alertSignup\n contact {\n address\n email\n phoneNumbers {\n id\n number\n }\n }\n socialMediaLinks {\n facebook\n twitter\n linkedin\n instagram\n youtube\n }\n teamMember {\n id\n picture {\n id\n url\n }\n fullName\n role\n facebook\n instagram\n twitter\n }\n }\n }\n }\n`;\nconst UPDATE_INTERFACE = gql`\n mutation updateCenterInfo($id: ID!, $data: editCenterInput!) {\n updateCenter(input: { where: { id: $id }, data: $data }) {\n center {\n id\n }\n }\n }\n`;\nconst UPDATE_VALUES = gql`\n mutation updateCenterInfo(\n $id: ID!\n $data: [editComponentCenterValueInput!]!\n ) {\n updateCenter(input: { where: { id: $id }, data: { values: $data } }) {\n center {\n values {\n name\n content\n }\n }\n }\n }\n`;\nconst UPDATE_PHONE_NUMBERS = gql`\n mutation updateCenterInfo(\n $id: ID!\n $data: [editComponentPhonePhoneNumberInput!]!\n ) {\n updateCenter(\n input: { where: { id: $id }, data: { contact: { phoneNumbers: $data } } }\n ) {\n center {\n id\n }\n }\n }\n`;\nconst UPDATE_TEAM = gql`\n mutation updateCenterInfo($data: [editComponentCenterTeamInput]!, $id: ID!) {\n updateCenter(input: { data: { teamMember: $data }, where: { id: $id } }) {\n center {\n id\n }\n }\n }\n`;\n\nexport default function EditLanding() {\n const [alertSuccess, setAlertSuccess] = useState(false);\n const [alertFailure, setAlertFailure] = useState(false);\n const { centerId, sub } = useContext(Navigation);\n const [saveLoading, setSaveLoading] = useState(null);\n\n const { loading, data, refetch } = useQuery(GET_INTERFACE, {\n onError: err => console.log(\"err get interface\", err),\n onCompleted: data => {\n setGallery(IMAGES);\n setGalleryId(ids);\n setOpenToRegistration(Boolean(data?.centersLists[0]?.info?.openToRegistration))\n },\n variables: {\n subdomain: sub\n },\n notifyOnNetworkStatusChange: true\n });\n const center = data?.centersLists[0]?.info;\n const centerLogo = center?.logo\n ? `url(${process.env.REACT_APP_STRAPI_URL}${center?.logo?.url})`\n : `url(${logo})`;\n // const centerLogo = `url(${process.env.REACT_APP_STRAPI_URL}${center?.logo?.url})`\n // const arr = [];\n const ids = (center?.gallery || []).map(image => {\n return { id: image.id };\n });\n const toggleImageSelected = index => {\n const updatedImages = gallery.map((image, imageIdx) => {\n if (index === imageIdx) {\n return { ...image, isSelected: !image.isSelected };\n }\n return image;\n });\n setGallery(updatedImages);\n };\n const IMAGES = (center?.gallery || []).map(image => {\n if (image.url)\n return {\n id: image.id,\n src: `${process.env.REACT_APP_STRAPI_URL}${image.url}`,\n thumbnail: `${process.env.REACT_APP_STRAPI_URL}${image.url}`,\n isSelected: false\n };\n });\n const [uploadToGallery] = useMutation(UPLOAD, {\n onError: err => console.log(\"error upload to gallery\", err),\n onCompleted: data => {\n const ids = [...galleryId, { id: data.upload.id }];\n postUploadToGallery({\n variables: {\n data: {\n gallery: [...ids].map(id => id.id)\n },\n id: center.id\n }\n });\n const arr = [\n ...gallery,\n {\n src: `${process.env.REACT_APP_STRAPI_URL}${data.upload.url}`,\n thumbnail: `${process.env.REACT_APP_STRAPI_URL}${data.upload.url}`\n }\n ];\n setGallery(arr);\n setUploadGalleryLoading(null);\n }\n });\n const [updateValuesMutation] = useMutation(UPDATE_VALUES, {\n onError: err => {\n console.log(\"update values error\", err);\n },\n onCompleted: () => {\n console.log(\"update values completed\");\n refetch();\n }\n });\n const [updatePhoneNumbersMutation] = useMutation(UPDATE_PHONE_NUMBERS, {\n onError: err => {\n console.log(\"error update phone numbers\", err);\n },\n onCompleted: () => {\n console.log(\"updated phone numbers\");\n refetch();\n }\n });\n const [addPicture, { loading: loadingAddPicture }] = useMutation(UPLOAD, {\n onError: err => console.log(\"error add picture to team member\", err),\n onCompleted: data => {\n setPictureID(data.upload.id);\n }\n });\n const [postUploadToGallery] = useMutation(UPDATE_INTERFACE, {\n onError: err => {\n console.log(\"update gallery\", err);\n setAlertFailure(l1.failure);\n },\n onCompleted: data => {\n setAlertSuccess(l1.editsuccess);\n setDeleteGalleryLoading(false);\n const arr = gallery;\n arr.push({\n src: `${process.env.REACT_APP_STRAPI_URL}${data?.updateCentersList?.centersList?.gallery?.url}`,\n thumbnail: `${process.env.REACT_APP_STRAPI_URL}${data?.updateCentersList?.centersList?.gallery?.url}`\n });\n }\n });\n const [updateInterface] = useMutation(UPDATE_INTERFACE, {\n onError: err => console.log(\"error update center info\", err),\n onCompleted: data => {\n setSaveLoading(false);\n refetch();\n }\n });\n const [updateTeamMembers] = useMutation(UPDATE_TEAM, {\n onError: err => console.log(\"error update team members\", err),\n onCompleted: data => {\n console.log(\"update team members completed\", data);\n refetch();\n }\n });\n const [team, setTeam] = useState(center?.teamMember);\n\n const handleDeleteImages = () => {\n setDeleteGalleryLoading(true);\n let newGallery = gallery.filter(image => image.isSelected !== true);\n postUploadToGallery({\n variables: {\n data: {\n gallery: [...newGallery].map(id => id.id)\n },\n id: center.id\n }\n });\n setGallery(newGallery);\n };\n // const carouselActivities = createRef();\n // const [carouselIndex, setcarouselIndex] = useState(0);\n const [uploadGalleryLoading, setUploadGalleryLoading] = useState();\n const [deleteGalleryLoading, setDeleteGalleryLoading] = useState(false);\n const [gallery, setGallery] = useState();\n const [galleryId, setGalleryId] = useState([]);\n const [name, setName] = useState(center?.name);\n const [vision, setVision] = useState(center?.vision);\n const [message, setMessage] = useState(center?.message);\n const [description, setDescription] = useState(center?.description);\n const [alertSignup, setAlertSignup] = useState(center?.alertSignup);\n const [values, setValues] = useState(null);\n\n const [facebook, setFacebook] = useState(center?.socialMediaLinks?.facebook);\n const [twitter, setTwitter] = useState(center?.socialMediaLinks?.twitter);\n const [instagram, setInstagram] = useState(\n center?.socialMediaLinks?.instagram\n );\n const [youtube, setYoutube] = useState(center?.socialMediaLinks?.youtube);\n const [linkedin, setLinkedin] = useState(center?.socialMediaLinks?.linkedin);\n\n const [video, setVideo] = useState(center?.video);\n\n const [phoneNumbers, setPhoneNumbers] = useState(\n center?.contact?.phoneNumbers\n );\n const [address, setAddress] = useState(center?.contact?.address);\n const [email, setEmail] = useState(center?.contact?.email);\n const [pictureID, setPictureID] = useState(null);\n useEffect(() => { returnGallery() }, [gallery]);\n const [openToRegistration, setOpenToRegistration] = useState(false)\n const returnGallery = () => (\n {\n toggleImageSelected(index);\n }}\n />\n );\n const inputRef = useRef();\n const saveAllChanges = () => {\n if (\n !name &&\n !vision &&\n !message &&\n !description &&\n !video &&\n !address &&\n !email &&\n !alertSignup &&\n !values &&\n !phoneNumbers &&\n !team &&\n !facebook &&\n !youtube &&\n !twitter &&\n !instagram &&\n !linkedin\n && Boolean(openToRegistration) === Boolean(center?.openToRegistration)\n ) {\n console.log(\"nothing to be saved\");\n setSaveLoading(false);\n return;\n }\n setSaveLoading(true);\n if (!phoneNumbers && !values && !team) {\n updateInterface({\n variables: {\n data: {\n name,\n openToRegistration,\n vision,\n message,\n description,\n video,\n contact: { address, email },\n alertSignup,\n socialMediaLinks: {\n facebook,\n instagram,\n linkedin,\n twitter,\n youtube\n }\n },\n id: center.id\n }\n });\n }\n if (values) {\n updateValuesMutation({\n variables: {\n id: center.id,\n data: [...values]\n }\n });\n }\n\n if (phoneNumbers) {\n console.log(\"phonenumbers\", phoneNumbers);\n updatePhoneNumbersMutation({\n variables: {\n id: center.id,\n data: [...phoneNumbers]\n }\n });\n }\n if (team) {\n updateTeamMembers({\n variables: {\n id: center.id,\n data: [...team]\n }\n });\n }\n };\n if (!loading)\n return (\n
\n \n
\n
\n
\n
\n \n setName(e.target.value)}\n />\n\n
\n\n
\n \n {saveLoading && }\n {!saveLoading && l1.saveChanges}\n \n
\n \n \n

التسجيل في المركز

\n setOpenToRegistration(e.target.checked)}\n />} label={l1.centerIsOpenToRegistration} />\n \n\n \n

الرؤية

\n setVision(e.target.value)}\n />\n \n \n

الرسالة

\n setMessage(e.target.value)}\n />\n \n\n \n

القيم

\n \n \n
\n\n
\n
\n
\n
\n setDescription(e.target.value)}\n />\n \n \n رابط الفيديو\n \n setVideo(e.target.value)}\n />\n \n \n \n \n \n
\n
\n تم فتح باب التسجيل\n
\n setAlertSignup(e.target.value)}\n />\n
\n \n إشترك\n \n
\n
\n {/* \n
\n

أحدث النشاطات

\n
\n
*/}\n {/* \n
\n {\n if (carouselIndex.courses + 1 > 4) {\n carouselActivities.current.goTo(0);\n setcarouselIndex({ ...carouselIndex, courses: 1 });\n } else {\n carouselActivities.current.slideNext();\n setcarouselIndex({\n ...carouselIndex,\n courses: carouselIndex.courses + 1,\n });\n }\n }}\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 16 16\"\n className=\"bi bi-chevron-right arrow\"\n fill=\"currentColor\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n \n \n {\n if (carouselIndex.courses - 1 < 1) {\n carouselActivities.current.goTo(4);\n setcarouselIndex({ ...carouselIndex, courses: 4 });\n } else {\n carouselActivities.current.slidePrev();\n setcarouselIndex({\n ...carouselIndex,\n courses: carouselIndex.courses - 1,\n });\n }\n }}\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 16 16\"\n className=\"bi bi-chevron-left arrow\"\n fill=\"currentColor\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n \n \n
*/}\n {/* \n \n \n \n \n \n */}\n {/* \n المزيد من النشاطات\n */}\n\n
\n
\n

معرض الصور

\n
\n
\n
\n {gallery ? returnGallery() : null}\n
\n {\n inputRef.current.click();\n }}\n startIcon={}\n disabled={uploadGalleryLoading}\n style={{ marginLeft: \"10px\" }}\n >\n {uploadGalleryLoading && }\n {!uploadGalleryLoading && l1.chooseFromComputer}\n \n {\n handleDeleteImages();\n }}\n startIcon={}\n disabled={\n deleteGalleryLoading ||\n gallery?.filter(image => image.isSelected === true).length ===\n 0\n }\n >\n {deleteGalleryLoading && }\n {!deleteGalleryLoading && l1.deleteImages}\n \n {\n setUploadGalleryLoading(true);\n uploadToGallery({\n variables: {\n file: e.target.files[0]\n }\n });\n }}\n />\n
\n
\n
\n

الفريق

\n
\n
\n \n
\n\n
\n
\n

معلومات الإتصال

\n
\n
\n\n \n \n

العنوان

\n setAddress(e.target.value)}\n />\n\n

الايميل

\n setEmail(e.target.value)}\n />\n

أرقام الهواتف

\n \n
\n \n

مواقع التواصل

\n \n setYoutube(e.target.value)}\n InputProps={{\n startAdornment: (\n \n \n \n )\n }}\n />\n setTwitter(e.target.value)}\n InputProps={{\n startAdornment: (\n \n \n \n )\n }}\n />\n setLinkedin(e.target.value)}\n InputProps={{\n startAdornment: (\n \n \n \n )\n }}\n />\n setInstagram(e.target.value)}\n InputProps={{\n startAdornment: (\n \n \n \n )\n }}\n />\n setFacebook(e.target.value)}\n InputProps={{\n startAdornment: (\n \n \n \n )\n }}\n />\n \n \n
\n
\n \n {\n setAlertSuccess(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n {\n setAlertFailure(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertFailure}\n \n \n \n \n {\n // setValue(newValue);\n // }}\n >\n {/* */}\n \n {saveLoading ? : l1.saveChanges}\n \n \n \n \n );\n return ;\n}\n","import React, { useContext, useReducer, useState } from \"react\";\nimport { l1 } from \"../../local.json\";\nimport {\n Button,\n Dialog,\n Typography,\n AppBar,\n Toolbar,\n IconButton,\n Container,\n TextField,\n BottomNavigation,\n BottomNavigationAction,\n Paper,\n CircularProgress\n} from \"@material-ui/core\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport Drafter2 from \"../../common/Drafter2\";\nimport CropeImage from \"../../UserPages/ImageCrop\";\nfunction EditEvent({\n classes,\n create,\n reverseCreate,\n saveAllChanges,\n setEventImageId,\n eventImage,\n setEventImage,\n eventTitle,\n eventContent,\n eventExcerpt,\n setTitle,\n setContent,\n setExcerpt,\n saveLoading,\n edit\n}) {\n console.log(\"eventContent\", eventContent);\n return (\n <>\n {/* dialog for create event */}\n \n \n \n \n \n \n \n {l1.eventDetails}\n \n \n \n \n {\n setTitle(e.target.value);\n }}\n />\n \n
\n \n {eventImage ? (\n \n ) : (\n \"\"\n )}\n
\n {\n setExcerpt(e.target.value);\n }}\n />\n \n {\n // setValue(newValue);\n // }}\n >\n {/* */}\n \n {saveLoading && }\n {!saveLoading && l1.saveChanges}\n \n }\n />\n {/* {l1.cancel}} /> */}\n \n \n
\n
\n {/* dialog for create event */}\n \n );\n}\n\nexport default EditEvent;\n","import React, { useContext, useReducer, useState } from \"react\";\nimport { l1 } from \"../../local.json\";\nimport {\n Avatar,\n Box,\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n Grid,\n makeStyles,\n Typography,\n AppBar,\n Toolbar,\n List,\n ListItem,\n ListItemText,\n Devider,\n IconButton,\n Divider,\n Container,\n TextField,\n BottomNavigation,\n BottomNavigationAction,\n Paper,\n CircularProgress,\n Snackbar\n} from \"@material-ui/core\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\n\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport TopBar from \"../../common/TopBar\";\nimport { gql, useQuery, useMutation, useLazyQuery } from \"@apollo/client\";\n\nimport Loading from \"../../common/Loading\";\nimport { Navigation } from \"../../../Context\";\nimport TopicSection from \"../class/components/TopicSection\";\nimport EditEvent from \"./EditEvent\";\n\nconst useStyles = makeStyles(theme => ({\n highOrder: {\n margin: theme.spacing(5, 30)\n },\n headContainer: {\n //margin: theme.spacing(0, 10),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n border: `1px solid ${theme.palette.grey[100]}`,\n background: `${theme.palette.grey[\"50\"]}30`,\n borderRadius: theme.spacing(2)\n },\n text: {\n color: theme.palette.primary.main,\n fontWeight: 600\n },\n iconHead: {\n color: \"#44566c\",\n margin: theme.spacing(0, 1)\n },\n container: {\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: \"white\",\n marginBottom: theme.spacing(1),\n cursor: \"pointer\"\n },\n avatar: {\n margin: theme.spacing(0, 1)\n },\n nameText: {},\n nameName: {\n color: \"#44566c\"\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n nameTitle: {\n color: \"#44566c\",\n fontSize: theme.spacing(1.4)\n },\n idId: {\n color: \"#8697a8\"\n },\n address: {\n color: \"#44566c\"\n },\n icon: {\n fontSize: theme.spacing(3),\n color: \"#8697a8\",\n marginLeft: theme.spacing(3)\n },\n create: {\n marginLeft: \"240px\",\n marginTop: \"30px\",\n width: \"150px\"\n },\n createDialogContent: {\n marginTop: \"100px\",\n display: \"flex\",\n flexDirection: \"column\"\n },\n eventImage: {\n width: \"100px\",\n marginTop: \"20px\"\n }\n}));\n\nconst CREATE_EVENT = gql`\n mutation createEvent($data: CenterEventInput!) {\n createCenterEvent(input: { data: $data }) {\n centerEvent {\n id\n }\n }\n }\n`;\nconst GET_EVENTS = gql`\n query getEvents($subdomain: String!) {\n centersLists(where: { subdomain: $subdomain }) {\n events {\n id\n title\n content\n image {\n url\n }\n excerpt\n createdAt\n updatedAt\n }\n }\n }\n`;\nconst GET_EVENT = gql`\n query getEvent($id: ID!) {\n centerEvent(id: $id) {\n id\n title\n content\n excerpt\n image {\n id\n url\n }\n }\n }\n`;\nconst UPDATE_EVENT = gql`\n mutation updateEvent($id: ID!, $data: editCenterEventInput!) {\n updateCenterEvent(input: { where: { id: $id }, data: $data }) {\n centerEvent {\n id\n }\n }\n }\n`;\nconst DELETE_EVENT = gql`\n mutation DeleteEvent($id: ID!) {\n deleteCenterEvent(input: { where: { id: $id } }) {\n centerEvent {\n id\n }\n }\n }\n`;\nfunction Events() {\n const [create, setCreate] = useState(null);\n const [edit, setEdit] = useState(false);\n const [eventId, setEventId] = useState(null);\n const [eventTitle, setTitle] = useState(null);\n const [eventContent, setContent] = useState(null);\n const [eventExcerpt, setExcerpt] = useState(null);\n const [saveLoading, setSaveLoading] = useState(null);\n const [eventImageId, setEventImageId] = useState(null);\n const [eventImage, setEventImage] = useState(null);\n const [alertSuccess, setAlertSuccess] = useState(false);\n const [alertFailure, setAlertFailure] = useState(false);\n\n const reverseCreate = () => {\n setCreate(!create);\n };\n const { centerId, sub } = useContext(Navigation);\n //Apollo\n const { loading, data, refetch } = useQuery(GET_EVENTS, {\n notifyOnNetworkStatusChange: true,\n variables: {\n id: centerId,\n subdomain: sub\n }\n });\n const [getEvent, { loading: getEventLoading }] = useLazyQuery(GET_EVENT, {\n onError: err => {\n console.log(\"error when getting one event\", err);\n },\n onCompleted: data => {\n console.log(\"data\", data);\n setTitle(data.centerEvent.title);\n setContent(data.centerEvent.content);\n setExcerpt(data.centerEvent.excerpt);\n setEventImage(data.centerEvent.image.url);\n setEventId(data.centerEvent.id);\n setEventImageId(data.centerEvent.image.id);\n setEdit(true);\n reverseCreate();\n }\n });\n const [deleteEvent, { loading: loadingDelete }] = useMutation(DELETE_EVENT, {\n onError: err => {\n console.log(\"error when deleting event\", err);\n setAlertFailure(l1.failure);\n },\n onCompleted: () => {\n setAlertSuccess(l1.editsuccess);\n refetch();\n }\n });\n const [createEvent, { loading: loadingCreate }] = useMutation(CREATE_EVENT, {\n onError: err => {\n console.log(\"error on creating event\", err);\n setAlertFailure(l1.failure);\n },\n onCompleted: data => {\n console.log(\"created with success\", data);\n setAlertSuccess(l1.editsuccess);\n reverseCreate();\n refetch();\n }\n });\n const [updateEvent, { loading: loadingUpdate }] = useMutation(UPDATE_EVENT, {\n onError: err => {\n console.log(\"error when updating event\", err);\n setAlertFailure(l1.failure);\n },\n onCompleted: data => {\n console.log(\"updated with sucess\", data);\n setAlertSuccess(l1.editsuccess);\n reverseCreate();\n refetch();\n }\n });\n const saveAllChanges = () => {\n console.log(\"save changes\");\n if (edit) {\n updateEvent({\n variables: {\n id: eventId,\n data: {\n title: eventTitle,\n content: eventContent,\n excerpt: eventExcerpt,\n image: eventImageId\n }\n }\n });\n } else {\n createEvent({\n variables: {\n data: {\n title: eventTitle,\n content: eventContent,\n excerpt: eventExcerpt,\n image: eventImageId,\n center: centerId\n }\n }\n });\n }\n };\n const editEvent = id => {\n getEvent({\n variables: { id: id }\n });\n };\n const classes = useStyles();\n if (loading || loadingDelete || getEventLoading || loadingUpdate)\n return ;\n else {\n const events = data?.centersLists[0]?.events;\n return (\n \n \n \n {l1.add}\n \n \n \n \n \n {l1.image}\n \n \n \n \n {l1.title}\n \n \n \n \n {l1.excerpt}\n \n \n\n \n \n {events &&\n events?.map(event => (\n \n ))}\n \n \n {\n setAlertSuccess(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n {\n setAlertFailure(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertFailure}\n \n \n \n );\n }\n\n function TableRow({ id, title, image, excerpt }) {\n // Options Logic\n\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n const [confirmationBanState, reverseConfirmationBanState] = useReducer(\n state => !state,\n false\n );\n const classes = useStyles();\n return (\n \n \n \n \n \n {/* {id} */}\n \n \n \n \n \n {title}\n \n \n {excerpt}\n \n\n \n {\n editEvent(id);\n }}\n >\n {l1.edit}\n \n \n {l1.delete}\n \n \n \n\n \n \n \n \n {l1.confirmation}\n \n \n \n {\n deleteEvent({\n variables: {\n id: id\n }\n });\n }}\n >\n {l1.confirm}\n \n \n \n \n \n );\n }\n}\nexport default Events;\n","import React, { useState, useEffect } from \"react\";\nimport {\n Avatar,\n Typography,\n Box,\n Dialog,\n DialogContent,\n LinearProgress,\n makeStyles,\n TextField,\n Checkbox,\n DialogActions,\n Button,\n} from \"@material-ui/core\";\nimport { gql, useMutation, useQuery } from \"@apollo/client\";\nimport { l1 } from \"../local.json\";\n\n// const GET_CENTER_STUDENTS = gql`\n// query QueryCenterPeople($id: ID!) {\n// centersList(id: $id) {\n// students {\n// id\n// fullname\n// avatar\n// }\n// }\n// }\n// `;\nconst GET_CENTER_MEMBERS = gql`\n query QueryCenterMembers($id: ID!) {\n centersLists(where: { id: $id }) {\n memberships(where: { status: \"ACTIVE\", role: \"member\" }) {\n id\n user {\n id\n fullname\n avatar\n }\n role\n }\n }\n }\n`;\n\nconst ADD_ADMINS = gql`\n mutation AddAdmins($ids: [ID!]!) {\n updateMemberships(ids: $ids, data: { role: moderator })\n }\n`;\n\nconst useStyles = makeStyles((theme) => ({\n dialogContent: {\n margin: theme.spacing(2),\n },\n search: {\n margin: theme.spacing(2, 30),\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n },\n nameContainer: {\n marginBottom: theme.spacing(1),\n border: \"1px solid lightgrey\",\n padding: theme.spacing(1),\n borderRadius: theme.spacing(1),\n },\n avatar: {\n marginRight: theme.spacing(2),\n },\n}));\n\nfunction SearchMembers({ refetch, ready, reverseReady, centerId }) {\n const [search, setSearch] = useState(\"\");\n const [result, setResult] = useState([]);\n const [selected, setSelected] = useState([]);\n\n const { loading, data } = useQuery(GET_CENTER_MEMBERS, {\n onError: (error) => console.error(\"QueryMembershipError: \", error),\n variables: {\n id: centerId,\n },\n onCompleted: () => {\n setResult(\n data?.centersLists[0]?.memberships?.filter(({ user, role }) =>\n user.fullname?.includes(search)\n )\n );\n },\n });\n\n const [addAdmins] = useMutation(ADD_ADMINS, {\n onCompleted: (data) => {\n reverseReady();\n setSelected([]);\n refetch();\n },\n });\n console.log({ selected });\n useEffect(() => {\n console.log(\"data\", data?.centersLists[0]?.memberships);\n // data?.centersLists[0].memberships?.forEach((user) => {\n // const foundIt = user?.memberships?.search(search) !== -1;\n // if (search && foundIt) arr.push(user);\n // return arr;\n // });\n // setResult(arr);\n setResult(\n data?.centersLists[0]?.memberships?.filter(({ user }) =>\n user.fullname?.includes(search)\n )\n );\n }, [search]);\n\n const classes = useStyles();\n return (\n \n \n \n {loading ? (\n \n ) : (\n {\n setSearch(e.target.value);\n }}\n />\n )}\n \n \n {!result?.length ? (\n \n {l1.noMember}\n \n ) : (\n result?.map((i) => (\n \n {\n if (e.target.checked) {\n setSelected([...selected, i]);\n } else {\n setSelected(selected.filter((j) => j.id !== i.id));\n }\n }}\n />\n
\n \n {i.user.fullname}\n \n \n ))\n )}\n {selected ? (\n \n ) : null}\n {selected.map((i) => (\n \n \n \n {i.fullname}\n \n setSelected(selected.filter((j) => j.id !== i.id))}\n >\n {l1.delete}\n \n \n ))}\n \n \n {\n addAdmins({\n variables: {\n ids: selected.map(({ id }) => id),\n },\n });\n }}\n >\n {l1.add}\n \n \n \n \n );\n}\nexport default SearchMembers;\n","import React from \"react\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport List from \"@material-ui/core/List\";\nimport ListItem from \"@material-ui/core/ListItem\";\nimport ListItemText from \"@material-ui/core/ListItemText\";\nimport MenuItem from \"@material-ui/core/MenuItem\";\nimport Menu from \"@material-ui/core/Menu\";\nimport { l1 } from \"../local.json\";\nimport { Box } from \"@material-ui/core\";\nimport {\n ArrowDropDownCircleSharp,\n ArrowDropUpSharp,\n Edit,\n} from \"@material-ui/icons\";\nimport { BiChevronDown } from \"react-icons/bi\";\n\nexport default function EditableChoice({ choices, initialChoice, onChange }) {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [selectedOption, setSelectedOption] = React.useState(initialChoice);\n\n const handleClickListItem = (event) => {\n setSelectedOption(selectedOption);\n setAnchorEl(event.currentTarget);\n };\n\n const handleMenuItemClick = (value) => {\n setAnchorEl(null);\n onChange(value);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n return (\n \n \n \n {choices.find(({ value }) => selectedOption === value)?.label ?? '؟؟؟'}\n   \n \n \n \n \n {choices.map(({ value, label }, index) => (\n {\n if (value !== selectedOption) {\n handleMenuItemClick(value);\n } else {\n setAnchorEl(null);\n }\n }}\n >\n {label}\n \n ))}\n \n \n );\n}\n","import React, { useContext, useReducer } from \"react\";\nimport { l1 } from \"../../local.json\";\nimport {\n Avatar,\n Box,\n Button,\n Grid,\n makeStyles,\n Typography,\n} from \"@material-ui/core\";\nimport TopBar from \"../../common/TopBar\";\nimport { gql, useQuery, useMutation } from \"@apollo/client\";\nimport Loading from \"../../common/Loading\";\nimport { Navigation } from \"../../../Context\";\nimport { RequireCenterAdmin } from \"../../../Auth/gates\";\nimport SearchMembers from \"../../common/SearchMembers\";\nimport EditableChoice from \"../../common/EditableChoice\";\nimport { useHistory } from \"react-router-dom\";\nimport ConfirmationDialog, {\n useConfirmationDialog,\n} from \"../../common/ConfirmationDialog\";\n\nconst useStyles = makeStyles((theme) => ({\n highOrder: {\n margin: theme.spacing(10, 30),\n },\n headContainer: {\n //margin: theme.spacing(0, 10),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n border: `1px solid ${theme.palette.grey[100]}`,\n background: `${theme.palette.grey[\"50\"]}30`,\n borderRadius: theme.spacing(2),\n },\n text: {\n color: theme.palette.primary.main,\n fontWeight: 600,\n },\n iconHead: {\n color: \"#44566c\",\n margin: theme.spacing(0, 1),\n },\n container: {\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: \"white\",\n marginBottom: theme.spacing(1),\n },\n avatar: {\n margin: theme.spacing(0, 1),\n },\n nameText: {},\n nameName: {\n color: \"#44566c\",\n },\n menuItem: {\n paddingRight: theme.spacing(10),\n },\n nameTitle: {\n color: \"#44566c\",\n fontSize: theme.spacing(1.4),\n },\n idId: {\n color: \"#8697a8\",\n },\n address: {\n color: \"#44566c\",\n },\n icon: {\n fontSize: theme.spacing(3),\n color: \"#8697a8\",\n marginLeft: theme.spacing(3),\n },\n title: {\n fontSize: theme.spacing(3),\n fontWeight: 600,\n color: theme.palette.grey[700],\n },\n label: {\n marginLeft: theme.spacing(4),\n },\n paper: {\n padding: theme.spacing(3),\n margin: theme.spacing(4),\n },\n}));\n\nconst GET_STAFF = gql`\n query GetStaff($id: ID!) {\n centersList(id: $id) {\n memberships(\n sort: \"role:desc\"\n where: { status: \"ACTIVE\", role_ne: \"member\" }\n ) {\n id\n fullname\n school\n specialty\n email\n field\n afterGraduate\n homeTel\n mobileTel\n hobbies\n birthDate\n object\n college\n address\n user {\n id\n username\n }\n status\n role\n }\n }\n }\n`;\n\nconst UPDATE_CENTER_OWNER = gql`\n mutation updateCenterOwner($centerId: ID!, $ownerId: ID!) {\n updateCentersList(\n input: { where: { id: $centerId }, data: { owner: $ownerId } }\n ) {\n centersList {\n id\n }\n }\n }\n`;\n\nconst UPDATE_ROLE = gql`\n mutation updateRole($id: ID!, $role: ENUM_MEMBERSHIP_ROLE!) {\n updateMembership(input: { where: { id: $id }, data: { role: $role } }) {\n membership {\n id\n role\n }\n }\n }\n`;\n\nfunction Staff() {\n //Apollo\n const { centerId } = useContext(Navigation);\n\n const { loading, data, refetch } = useQuery(GET_STAFF, {\n notifyOnNetworkStatusChange: true,\n variables: {\n id: centerId,\n },\n });\n\n const history = useHistory();\n const [updateRole, { loading: loadingUpdateRole }] = useMutation(\n UPDATE_ROLE,\n {\n onCompleted: () => {\n refetch();\n },\n onError: (err) => {\n console.log(err);\n },\n }\n );\n const [updateCenterOwner, { loading: loadingUpdateOwner }] = useMutation(\n UPDATE_CENTER_OWNER,\n {\n onCompleted: () => {\n history.go(0);\n },\n onError: (err) => {\n console.log(err);\n },\n }\n );\n const { dialogProps, confirmationDialog } = useConfirmationDialog();\n const [add, reverseAdd] = useReducer((current) => !current, false);\n const classes = useStyles();\n if (loading || loadingUpdateRole || loadingUpdateOwner) return ;\n else {\n const membership = data.centersList.memberships;\n return (\n \n \n \n \n \n \n \n {l1.add}\n \n \n \n \n \n\n \n \n \n {l1.username}\n \n \n \n \n {l1.id}\n \n \n \n \n {l1.email}\n \n \n \n \n {l1.role}\n \n \n\n \n \n {membership.map(({ id, fullname, email, user, role }) => (\n \n \n \n \n \n ))}\n \n \n \n );\n }\n\n function TableRow({ name, email, id, user, role }) {\n const classes = useStyles();\n return (\n \n \n \n \n \n \n {name}\n \n \n \n \n \n {id}\n \n \n \n \n {email}\n \n \n \n \n \n {role === \"owner\" ? (\n l1[role]\n ) : (\n ({\n value,\n label: l1[value],\n }))}\n initialChoice={role ?? 'moderator'}\n onChange={(newRole) =>\n updateRole({\n variables: {\n id,\n role: newRole,\n },\n })\n }\n />\n )}\n \n \n \n \n \n \n {role !== \"owner\" && (\n <>\n {\n confirmationDialog({\n title: l1.setAsOwner,\n content: l1.confirmation,\n onConfirm: () => {\n updateCenterOwner({\n variables: {\n centerId: centerId,\n ownerId: user.id,\n },\n });\n },\n });\n }}\n >\n {l1.setAsOwner}\n \n\n {\n confirmationDialog({\n title: l1.removeFromStaff,\n content: l1.confirmation,\n onConfirm: () => {\n updateRole({\n variables: {\n id,\n role: \"member\",\n },\n });\n },\n });\n }}\n >\n {l1.removeFromStaff}\n \n \n )}\n \n \n \n \n \n );\n }\n}\n\nexport default Staff;\n","import React, { useContext, useReducer, useState } from 'react';\nimport { l1 } from '../../local.json';\nimport {\n Avatar,\n Box,\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n Grid,\n makeStyles,\n Typography,\n} from '@material-ui/core';\nimport TopBar from '../../common/TopBar';\nimport { gql, useQuery, useMutation } from '@apollo/client';\nimport Loading from '../../common/Loading';\nimport { Navigation } from '../../../Context';\nimport TopicSection from '../class/components/TopicSection';\n\nconst useStyles = makeStyles((theme) => ({\n highOrder: {\n margin: theme.spacing(10, 30),\n },\n headContainer: {\n //margin: theme.spacing(0, 10),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n border: `1px solid ${theme.palette.grey[100]}`,\n background: `${theme.palette.grey['50']}30`,\n borderRadius: theme.spacing(2),\n },\n text: {\n color: theme.palette.primary.main,\n fontWeight: 600,\n },\n iconHead: {\n color: '#44566c',\n margin: theme.spacing(0, 1),\n },\n container: {\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: 'white',\n marginBottom: theme.spacing(1),\n cursor: 'pointer',\n },\n avatar: {\n margin: theme.spacing(0, 1),\n },\n nameText: {},\n nameName: {\n color: '#44566c',\n },\n menuItem: {\n paddingRight: theme.spacing(10),\n },\n nameTitle: {\n color: '#44566c',\n fontSize: theme.spacing(1.4),\n },\n idId: {\n color: '#8697a8',\n },\n address: {\n color: '#44566c',\n },\n icon: {\n fontSize: theme.spacing(3),\n color: '#8697a8',\n marginLeft: theme.spacing(3),\n },\n}));\n\nconst GET_TEACHERS = gql`\n query GetTeachers($id: ID!) {\n centersList(id: $id) {\n classes(where: { isArchived: false }) {\n id\n name\n slug\n teachers {\n id\n fullname\n email\n }\n }\n }\n }\n`;\nconst DELETE_TEACHER = gql`\n mutation DeleteTeacher($id: ID!, $data: editClassInput!) {\n updateClass(input: { data: $data, where: { id: $id } }) {\n class {\n id\n }\n }\n }\n`;\n\nfunction Teachers() {\n const { centerId } = useContext(Navigation);\n\n //Apollo\n const { loading, data, refetch } = useQuery(GET_TEACHERS, {\n notifyOnNetworkStatusChange: true,\n variables: {\n id: centerId,\n },\n });\n const [deleteTeacher, { loading: loadingDelete }] = useMutation(DELETE_TEACHER, {\n onCompleted: () => refetch(),\n });\n const classes = useStyles();\n if (loading || loadingDelete) return ;\n else {\n const centerClasses = data?.centersList?.classes;\n return (\n \n \n \n {centerClasses.map((i) => (\n \n \n \n \n {l1.username}\n \n \n \n \n {l1.id}\n \n \n \n \n {l1.email}\n \n \n\n \n \n {i.teachers.map(({ fullname, email, id }) => (\n \n ))}\n \n ))}\n \n \n );\n }\n\n function TableRow({ name, email, id, data }) {\n // Options Logic\n\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer((state) => !state, false);\n const [confirmationBanState, reverseConfirmationBanState] = useReducer((state) => !state, false);\n const classes = useStyles();\n return (\n \n \n \n \n \n \n {name}\n \n \n \n \n {id}\n \n \n {email}\n \n\n \n \n \n \n\n \n \n \n {l1.confirmation}\n \n \n {\n const remove = data.teachers.filter((i) => i.id !== id);\n const arr = [];\n remove.forEach((i) => arr.push(i.id));\n\n deleteTeacher({\n variables: {\n id: data.id,\n data: { teachers: arr },\n },\n });\n }}\n >\n {l1.confirm}\n \n \n \n \n \n );\n }\n}\nexport default Teachers;\n","import React, { useContext, useReducer } from \"react\";\nimport { l1 } from \"../../local.json\";\nimport {\n Avatar,\n Box,\n Button,\n Dialog,\n Grid,\n makeStyles,\n Paper,\n TextField,\n Typography\n} from \"@material-ui/core\";\nimport TopBar from \"../../common/TopBar\";\nimport { gql, useQuery, useMutation } from \"@apollo/client\";\nimport Loading from \"../../common/Loading\";\nimport { Navigation } from \"../../../Context\";\nimport { onError } from \"apollo-link-error\";\n\nconst useStyles = makeStyles(theme => ({\n highOrder: {\n margin: theme.spacing(10, 30)\n },\n headContainer: {\n //margin: theme.spacing(0, 10),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n border: `1px solid ${theme.palette.grey[100]}`,\n background: `${theme.palette.grey[\"50\"]}30`,\n borderRadius: theme.spacing(2)\n },\n text: {\n color: theme.palette.primary.main,\n fontWeight: 600\n },\n iconHead: {\n color: \"#44566c\",\n margin: theme.spacing(0, 1)\n },\n container: {\n border: `1px solid ${theme.palette.grey[300]}`,\n borderRadius: theme.spacing(1),\n padding: theme.spacing(1),\n background: \"white\",\n marginBottom: theme.spacing(1),\n cursor: \"pointer\"\n },\n avatar: {\n margin: theme.spacing(0, 1)\n },\n nameText: {},\n nameName: {\n color: \"#44566c\"\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n nameTitle: {\n color: \"#44566c\",\n fontSize: theme.spacing(1.4)\n },\n idId: {\n color: \"#8697a8\"\n },\n address: {\n color: \"#44566c\"\n },\n icon: {\n fontSize: theme.spacing(3),\n color: \"#8697a8\",\n marginLeft: theme.spacing(3)\n },\n title: {\n fontSize: theme.spacing(3),\n fontWeight: 600,\n color: theme.palette.grey[700]\n },\n label: {\n marginLeft: theme.spacing(4)\n },\n paper: {\n padding: theme.spacing(3),\n margin: theme.spacing(4)\n }\n}));\n\nconst GET_WAITING_LIST = gql`\n query GetWaitingList($id: ID!) {\n centersList(id: $id) {\n memberships(sort: \"createdAt:desc\", where: { status: \"REQUESTED\" }) {\n id\n fullname\n school\n specialty\n email\n field\n afterGraduate\n homeTel\n mobileTel\n hobbies\n birthDate\n object\n college\n address\n user {\n id\n username\n }\n status\n }\n }\n }\n`;\n\nconst REJECT = gql`\n mutation Reject($id: ID!) {\n deleteMembership(input: { where: { id: $id } }) {\n membership {\n id\n }\n }\n }\n`;\nconst APPROVE = gql`\n mutation Approve($id: ID!) {\n updateMembership(input: { where: { id: $id }, data: { status: ACTIVE } }) {\n membership {\n id\n status\n }\n }\n }\n`;\n\nfunction Waiting() {\n //Apollo\n const { centerId, info } = useContext(Navigation);\n\n const { loading, data, refetch } = useQuery(GET_WAITING_LIST, {\n notifyOnNetworkStatusChange: true,\n variables: {\n id: centerId\n }\n });\n\n const [reject, { loading: loadingReject }] = useMutation(REJECT, {\n onCompleted: () => refetch()\n });\n const [approve, { loading: loadingApprove }] = useMutation(APPROVE, {\n onCompleted: () => {\n // reject({\n // variables: {\n // id: selected\n // }\n // });\n console.log(\"it has been approved\");\n refetch();\n },\n onError: err => {\n console.log(err);\n }\n });\n const [state, reverseState] = useReducer(s => !s, false);\n const [selected, setSelected] = React.useState(null);\n const classes = useStyles();\n if (loading || loadingReject || loadingApprove) return ;\n else {\n const membership = data.centersList.memberships;\n return (\n \n \n \n \n \n \n {l1.username}\n \n \n \n \n {l1.id}\n \n \n \n \n {l1.email}\n \n \n\n \n \n {membership.map(\n ({\n id,\n fullname,\n school,\n specialty,\n email,\n field,\n afterGraduate,\n homeTel,\n mobileTel,\n hobbies,\n birthDate,\n object,\n college,\n address,\n user,\n status\n }) => (\n <>\n \n \n \n \n \n )\n )}\n \n \n );\n }\n\n function TableRow({ name, email, id, reverse, user }) {\n const classes = useStyles();\n return (\n \n \n \n \n \n \n {name}\n \n \n \n \n {id}\n \n \n {email}\n \n\n \n \n {\n setSelected(id);\n // const ids = [];\n // const raw = info.students;\n\n // raw.map(({ id }) => ids.push(id));\n // console.log(\"raw is \", raw);\n // const target = user.id;\n // ids.push(target);\n console.log(\"id is \", id);\n approve({\n variables: {\n id: id\n }\n });\n }}\n >\n {l1.apporve}\n \n {\n reject({\n variables: {\n id\n }\n });\n }}\n >\n {l1.reject}\n \n \n \n \n \n );\n }\n}\nexport const UserInfo = ({\n state,\n reverseState,\n fullname,\n birthDate,\n school,\n college,\n specialty,\n address,\n homeTel,\n mobileTel,\n email,\n object,\n field,\n hobbies,\n afterGraduate,\n approve,\n id\n}) => {\n const classes = useStyles();\n return (\n \n \n \n {l1.formTitle}\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n approve({\n variables: {\n id\n }\n })\n }\n >\n {l1.approve}\n \n \n \n \n );\n};\nexport default Waiting;\n","import React, { useContext, useReducer } from \"react\";\nimport { l1 } from \"../../local.json\";\n\nimport {\n Box,\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n Grid,\n makeStyles,\n Paper,\n TextField,\n Typography\n} from \"@material-ui/core\";\nimport { Formik } from \"formik\";\nimport * as Yup from \"yup\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport Loading from \"../../common/Loading\";\nimport { useHistory } from 'react-router-dom';\nimport { Navigation } from \"../../../Context\";\n\nconst useStyles = makeStyles(theme => ({\n container: {},\n paper: {\n padding: theme.spacing(3),\n margin: theme.spacing(4)\n },\n title: {\n fontSize: theme.spacing(3),\n fontWeight: 600,\n color: theme.palette.grey[700]\n },\n label: {\n marginLeft: theme.spacing(4)\n },\n button: {\n margin: theme.spacing(2, 30)\n },\n text: {\n fontSize: theme.spacing(3),\n fontWeight: 600,\n color: theme.palette.primary.main\n }\n}));\n\nconst SEND_TO_WAITING_LIST = gql`\n mutation SendToWaitingList(\n $fullname: String!\n $birthDate: Date!\n $school: String!\n $college: String!\n $specialty: String!\n $address: String!\n $homeTel: String!\n $mobileTel: String!\n $object: String!\n $field: String!\n $hobbies: String!\n $afterGraduate: String!\n $email: String!\n $center: ID!\n $user: ID!\n ) {\n createMembership(\n input: {\n data: {\n fullname: $fullname\n birthDate: $birthDate\n school: $school\n college: $college\n specialty: $specialty\n address: $address\n homeTel: $homeTel\n mobileTel: $mobileTel\n object: $object\n field: $field\n hobbies: $hobbies\n email: $email\n afterGraduate: $afterGraduate\n center: $center\n user: $user\n role: \"member\",\n status: REQUESTED\n }\n }\n ) {\n membership {\n id\n }\n }\n }\n`;\n\nconst validationSchema = Yup.object().shape({\n email: Yup.string()\n .email(l1.validEmail)\n .required(l1.emailRequired),\n fullname: Yup.string().required(l1.fieldRequired),\n birthDate: Yup.string().required(l1.fieldRequired),\n school: Yup.string().required(l1.fieldRequired),\n college: Yup.string().required(l1.fieldRequired),\n specialty: Yup.string().required(l1.fieldRequired),\n address: Yup.string().required(l1.fieldRequired),\n homeTel: Yup.string().required(l1.fieldRequired),\n mobileTel: Yup.string().required(l1.fieldRequired),\n object: Yup.string().required(l1.fieldRequired),\n field: Yup.string().required(l1.fieldRequired),\n hobbies: Yup.string().required(l1.fieldRequired),\n afterGraduate: Yup.string().required(l1.fieldRequired)\n});\nfunction MembershipForm() {\n const { centerId, user } = useContext(Navigation);\n\n const history = useHistory();\n const [state, reverseState] = useReducer(s => !s, false);\n\n // Apollo\n const [SendToWaitingList, { loading }] = useMutation(SEND_TO_WAITING_LIST, {\n onError: err => console.log(\"SEND_TO_WAITING_LIST\", err),\n onCompleted: reverseState\n });\n\n const classes = useStyles();\n if (loading) return ;\n return (\n \n \n \n {\n console.log(\"val\", values);\n SendToWaitingList({\n variables: {\n fullname: values.fullname,\n birthDate: values.birthDate,\n school: values.school,\n college: values.college,\n specialty: values.specialty,\n address: values.address,\n homeTel: values.homeTel,\n mobileTel: values.mobileTel,\n object: values.object,\n field: values.field,\n hobbies: values.hobbies,\n email: values.email,\n afterGraduate: values.afterGraduate,\n center: centerId,\n user: user.id\n }\n });\n }}\n validationSchema={validationSchema}\n validateOnChange={false}\n validateOnBlur={false}\n >\n {({ handleBlur, values, handleChange, errors, handleSubmit }) => (\n \n \n \n {l1.formTitle}\n \n \n {\n e.preventDefault();\n handleSubmit();\n }}\n >\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {l1.confirm}\n \n \n \n \n )}\n \n \n \n \n \n {l1.submitted}\n \n \n {\n window.location.reload()\n }}\n >\n {l1.continue}\n \n \n \n \n );\n}\n\nexport default MembershipForm;\n","import React from 'react';\nimport {\n Box, IconButton,\n FormControl, InputLabel, Select, MenuItem,\n Typography,\n makeStyles\n} from '@material-ui/core';\n\nimport {FaPlus, FaTimes, FaPen} from 'react-icons/fa';\nimport {l1} from '../../../local.json';\n\nimport moment from 'moment'\nimport 'moment/locale/ar-dz';\nmoment.locale('ar-dz');\n\nconst useStyles = makeStyles(theme => ({\n quizSelector:{\n padding: theme.spacing(2)\n },\n quizSelectorItem:{\n borderTop: \"solid 1px lightgray\",\n display:\"flex\",\n flexDirection: \"column\",\n justifyContent: \"flex-start\",\n textAlign: \"left\",\n '& > *':{\n width: \"100%\",\n },\n '& > p':{\n fontSize: 14,\n },\n \"&.add\":{\n display:\"flex\",\n justifyContent: \"center\",\n flexDirection:\"row\",\n gap: theme.spacing(1),\n padding: theme.spacing(2),\n fontWeight: \"bold\",\n '& > *':{\n width: \"auto\",\n }, \n }\n }\n}))\n\n\n\n\nexport default function QuizSelector({quizzes, selectedQuiz, onQuizSelected, newQuiz}) {\n const c = useStyles()\n return (\n \n {l1.chooseOrCreateQuiz}\n \n {l1.selectQuiz}\n \n {\n \n \n {l1.createNewQuiz}\n \n }\n {\n quizzes.map((quiz, index) =>\n \n {quiz.title}\n {l1.createdBy} @{\"moatezz\"/*quiz.createdBy.username*/}\n {moment(quiz.createdAt).fromNow()}\n \n )\n }\n \n \n \n )\n}","import React, { useContext, useState } from 'react';\nimport { makeStyles, Box, Typography, IconButton, CircularProgress } from '@material-ui/core';\nimport { FaTimes } from 'react-icons/fa';\nimport { MdAssignment } from 'react-icons/md';\nimport { l1 } from '../../../local.json';\n\nimport QuizSelector from './QuizSelector';\nimport { gql, useQuery, useMutation } from '@apollo/client';\n\nimport moment from 'moment';\nimport 'moment/locale/ar-dz';\nimport { Navigation } from '../../../../Context';\nmoment.locale('ar-dz');\n\nconst useStyles = makeStyles((theme) => ({\n quizCard: {\n border: 'solid 1px lightgray',\n borderRadius: theme.spacing(1),\n height: 100,\n gap: 8,\n overflow: 'hidden',\n '&:hover': {\n cursor: 'pointer',\n },\n '&:hover h5': {\n color: theme.palette.primary,\n },\n '& > p': {\n fontSize: 14,\n },\n },\n quizIcon: {\n backgroundColor: 'gray',\n color: 'white',\n padding: theme.spacing(2),\n height: '100%',\n },\n quizCardInfo: {\n padding: theme.spacing(1),\n },\n quizCardInner: {\n padding: theme.spacing(1),\n gap: theme.spacing(1),\n },\n}));\n\nconst GET_CENTER_QUIZZES = gql`\n query CenterQuizzes($centerId: ID!) {\n centersList(id: $centerId) {\n quizzes(sort: \"createdAt:desc\") {\n id\n title\n createdAt\n createdBy {\n username\n }\n }\n }\n }\n`;\n// TODO add createdBy user field\nconst NEW_QUIZ = gql`\n mutation NewQuiz($centerId: ID!) {\n createQuiz(\n input: {\n data: {\n title: \"اختبار جديد\"\n description: \"\"\n instructions: []\n questions: []\n correctAnswers: {}\n assignments: []\n center: $centerId\n }\n }\n ) {\n quiz {\n id\n title\n createdAt\n createdBy {\n username\n }\n }\n }\n }\n`;\n\nexport default function QuizCard({ mode, ...props }) {\n const { centerId } = useContext(Navigation);\n const c = useStyles();\n const [quizzes, setQuizzes] = useState([]);\n const [selectedQuiz, selectQuiz] = useState('');\n\n const [errorMessage, setErrorMessage] = useState(null);\n const { loading: loadingQuizzes } = useQuery(GET_CENTER_QUIZZES, {\n onError: (error) => {\n setErrorMessage(error);\n console.log('QueryQuizzesError: ', error);\n },\n onCompleted: (data) => {\n console.log('QueryCenterQuizzesData: ', data);\n setQuizzes(data.centersList.quizzes);\n setQuizSelectorReady(true);\n },\n fetchPolicy: 'cache',\n variables: {\n centerId,\n },\n });\n\n const [quizSelectorReady, setQuizSelectorReady] = useState(false);\n\n const editQuiz = (id) => {\n let path = window.location.protocol + '//' + window.location.host + '/quiz/' + id;\n window.open(path, 'edit-quiz');\n };\n\n const [createNewQuiz, { loading: creatingNewQuiz }] = useMutation(NEW_QUIZ, {\n variables: {\n centerId,\n },\n onError: (error) => {\n console.warn('MutationNewQuiz error: ', error);\n setErrorMessage(error);\n },\n onCompleted: (data) => {\n console.log('MutationNewQuiz data: ', data);\n setQuizzes([data.createQuiz.quiz].concat(...quizzes));\n selectQuiz(data.createQuiz.quiz.id);\n props.setQuiz(data.createQuiz.quiz.id);\n setErrorMessage(null);\n\n editQuiz(data.createQuiz.quiz.id);\n },\n });\n\n const selectOrCreateQuiz = (event) => {\n if (event.target.value === '+') {\n createNewQuiz();\n } else {\n selectQuiz(event.target.value);\n props.setQuiz(event.target.value);\n }\n };\n const quizInfo = selectedQuiz.length > 0 ? quizzes.filter((quiz) => selectedQuiz === quiz.id)[0] : {};\n console.log(selectedQuiz, quizInfo);\n return mode === 'edit' ? (\n selectedQuiz.length > 1 ? (\n {\n editQuiz(selectedQuiz);\n }}\n >\n \n \n \n \n {quizInfo.title}\n \n {l1.createdBy} @{'moatezz' /*quiz.createdBy.username*/}\n \n {moment(quizInfo.createdAt).fromNow()}\n \n \n {\n event.stopPropagation();\n selectQuiz('');\n props.setQuiz('');\n }}\n >\n \n \n \n \n ) : (\n \n {creatingNewQuiz ? (\n \n \n {l1.creatingQuiz}\n \n ) : quizSelectorReady ? (\n \n \n \n ) : loadingQuizzes ? (\n \n \n {l1.loadingQuizList}\n \n ) : errorMessage ? (\n l1.anErrorHappened + '. ' + l1.refreshToRetry\n ) : null}\n \n )\n ) : (\n 'Mode not implemented yet'\n );\n}\n","import React, { useContext, useEffect, useReducer, useRef, useState } from \"react\";\nimport {\n Box,\n Button,\n Dialog,\n DialogContent,\n DialogTitle,\n Divider,\n Grid,\n IconButton,\n makeStyles,\n Menu,\n MenuItem,\n TextField,\n Typography\n} from \"@material-ui/core\";\nimport { FaRegQuestionCircle } from \"react-icons/fa\";\nimport { IoAdd } from \"react-icons/io5\";\nimport { MdAssignment, MdAssignmentTurnedIn } from \"react-icons/md\";\nimport { RiQuestionnaireLine } from \"react-icons/ri\";\nimport { IoMdArrowDropdown } from \"react-icons/io\";\nimport { GrClose } from \"react-icons/gr\";\nimport { BiBookBookmark } from \"react-icons/bi\";\nimport { BsListUl } from \"react-icons/bs\";\nimport { HiMenuAlt3 } from \"react-icons/hi\";\nimport { l1 } from \"../../../local.json\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport { LoadingState, Navigation } from \"../../../../Context\";\nimport { useParams } from \"react-router-dom\";\nimport Drafter2 from \"../../../common/Drafter2\";\nimport QuizCard from \"./QuizCard\";\n\nconst useStyles = makeStyles(theme => ({\n create: {\n padding: theme.spacing(1.4, 3.8),\n borderRadius: theme.spacing(4)\n },\n menu: {\n marginTop: theme.spacing(7.5)\n },\n menuTopics: {\n marginTop: theme.spacing(1),\n height: \"auto\",\n \"&>*\": {\n width: \"inherit\"\n }\n },\n icon: {\n color: theme.palette.primary.main,\n fontSize: theme.spacing(4),\n marginRight: theme.spacing(1)\n },\n menuText: {\n paddingRight: theme.spacing(4)\n },\n // Dialog\n titleContainer: {\n maxHeight: theme.spacing(3)\n },\n title: {\n fontSize: theme.spacing(2.4),\n fontWeight: 600,\n marginLeft: theme.spacing(0.4)\n },\n dialogTitle: {\n borderBottom: `1px ${theme.palette.grey[300]} solid`\n },\n closeContainer: {\n marginTop: theme.spacing(0.7),\n \"&>*\": {\n fontSize: theme.spacing(2)\n }\n },\n dialogContent: {\n padding: 0,\n marginRight: theme.spacing(4)\n },\n dialogContentSubContainer: {\n margin: theme.spacing(2, 0)\n },\n rightContainer: {\n height: \"92vh\",\n borderLeft: `1px ${theme.palette.grey[300]} solid`\n },\n partTitle: {\n textAlign: \"left\",\n // marginLeft: theme.spacing(8),\n color: theme.palette.grey[700],\n fontSize: theme.spacing(2),\n fontWeight: 600,\n marginBottom: theme.spacing(1),\n marginTop: theme.spacing(1)\n },\n select: {\n width: \"100%\",\n padding: theme.spacing(2, 2),\n background: theme.palette.grey[100],\n\n borderRadius: theme.spacing(1),\n cursor: \"pointer\",\n \"&:hover\": {\n background: theme.palette.grey[200]\n },\n color: theme.palette.grey[700]\n },\n marginRight: {\n marginLeft: theme.spacing(8)\n },\n selectFullWidth: {\n margin: theme.spacing(0, 8)\n },\n boxDivider: {\n width: theme.spacing(2)\n },\n\n dialogIcon: {\n fontSize: theme.spacing(4),\n color: theme.palette.grey[700],\n padding: theme.spacing(2)\n },\n\n titleTextField: {\n // padding: theme.spacing(2, 0),\n background: theme.palette.background.default,\n minWidth: 288,\n flexShrink: 0,\n borderTopLeftRadius: theme.spacing(1),\n borderTopRightRadius: theme.spacing(1),\n \"&>*\": {\n padding: theme.spacing(0, 2, 2, 2)\n }\n },\n textField: {\n // padding: theme.spacing(2, 0),\n background: theme.palette.background.default,\n borderRadius: theme.spacing(2),\n \"&>*\": {\n padding: theme.spacing(0, 2, 2, 2)\n }\n },\n contentTextField: {\n background: theme.palette.background.default,\n borderTopLeftRadius: theme.spacing(1),\n borderTopRightRadius: theme.spacing(1),\n \"&>*\": {\n padding: theme.spacing(0, 2, 2, 2)\n },\n margin: theme.spacing(2, 0)\n },\n partContainer: {\n padding: theme.spacing(1, 2)\n },\n optionsContainer: {\n marginTop: theme.spacing(2),\n \"&>*\": {\n fontSize: theme.spacing(3),\n fontWeight: 600,\n color: theme.palette.grey[700]\n }\n },\n topicButtons: {\n margin: theme.spacing(1),\n gap: theme.spacing(2)\n },\n topicTextFieldContainer: {\n minWidth: \"400px\",\n height: \"150px\"\n }\n}));\nconst ADD_TOPIC = gql`\n mutation CreateTopic($name: String!, $class: ID!) {\n createTopic(input: { data: { name: $name, class: $class } }) {\n topic {\n name\n }\n }\n }\n`;\n\nconst CREATE_ASSIGNMENT = gql`\n mutation CreateAssignment(\n $title: String!\n $description: String!\n $topic: ID\n $type: ENUM_ASSIGNMENT_TYPE!\n $class: ID!\n $grade: Float\n $due: Date\n $center: ID!\n $quiz: ID\n $writer: ID!\n $evaluationsInfo: ComponentClassworkEvaluationsInfoInput\n ) {\n createAssignment(\n input: {\n data: {\n center: $center\n title: $title\n description: $description\n type: $type\n topic: $topic\n class: $class\n grade: $grade\n due: $due\n quiz: $quiz\n writer: $writer\n evaluationsInfo: $evaluationsInfo\n }\n }\n ) {\n assignment {\n id\n title\n type\n description\n }\n }\n }\n`;\nfunction Create({ currentClass, topics, query, classID, refetch }) {\n const { reverseLoadingState } = useContext(LoadingState);\n const { slug } = useParams();\n const { user, centerId } = useContext(Navigation);\n const [\n createAssignment,\n { loading: loadingCreateAssignmentMutation }\n ] = useMutation(CREATE_ASSIGNMENT, {\n onError: error => console.log(\"mutationCreateMutation error: \", error),\n onCompleted: data => {\n console.log(\"mutationCreateMutation success: \", data);\n reverseLoadingState();\n reverseDialogState();\n },\n refetchQueries: [\n {\n query: query,\n variables: {\n slug\n }\n }\n ]\n });\n const [createTopic] = useMutation(ADD_TOPIC, {\n onError: error => console.log(\"mutationCreateTopic error: \", error),\n onCompleted: data => {\n console.log(\"mutationCreateTopic success: \", data);\n reverseTopicDialogState();\n refetch();\n }\n });\n const [type, setType] = useState(null);\n const [topic, setTopic] = useState(null);\n const [topicContent, setTopicContent] = useState(null);\n const topicContentRef = useRef();\n const [title, setTitle] = useState(null);\n const titleRef = useRef();\n const [due, setDue] = useState(null);\n const dueRef = useRef();\n const [description, setDescription] = useState(\"\");\n const [evaluationsInfo, setEvaluationsInfo] = useReducer(\n (prev, update) => ({...prev, ...update}),\n {coach: '', date: '', location:''}\n )\n useEffect(()=>{\n console.log(evaluationsInfo);\n }\n ,[evaluationsInfo])\n //////\n const [dialogState, reverseDialogState] = useReducer(state => !state, false);\n const [dialogTopicState, reverseTopicDialogState] = useReducer(\n state => !state,\n false\n );\n\n const [anchor, setAnchor] = useState(null);\n const openMenu = event => {\n setAnchor(event.currentTarget);\n };\n const closeMenu = () => {\n setAnchor(null);\n };\n const [anchorTopic, setAnchorTopic] = useState(null);\n const openTopicMenu = event => {\n setAnchorTopic(event.currentTarget);\n };\n const closeTopicMenu = () => {\n setAnchorTopic(null);\n };\n const [anchorPoints, setAnchorPoints] = useState(null);\n const openPointsMenu = event => {\n setAnchorPoints(event.currentTarget);\n };\n const closePointsMenu = () => {\n setAnchorPoints(null);\n };\n const [topicMenuLabel, setTopicMenuLabel] = useState(l1.choosetopics);\n const [pointsMenuLabel, setPointsMenuLabel] = useState(l1.noPoints);\n ///////\n const [grade, setGrade] = useState(null);\n if (loadingCreateAssignmentMutation) {\n reverseLoadingState();\n }\n\n const [quiz, setQuiz] = useState(\"\");\n const classes = useStyles();\n return (\n <>\n }\n onClick={openMenu}\n >\n {l1.create}\n \n\n {/* Create Menu */}\n \n {\n reverseDialogState();\n setType(\"assignment\");\n }}\n >\n \n \n \n {l1.assignment}\n \n \n \n {\n reverseDialogState();\n setType(\"quiz\");\n }}\n >\n \n \n {l1.quiz}\n \n \n {\n reverseDialogState();\n setType(\"question\");\n }}\n >\n \n \n {l1.question}\n \n \n {\n reverseDialogState();\n setType(\"material\");\n }}\n >\n \n \n {l1.material}\n \n \n {\n reverseDialogState();\n setType(\"evaluations\");\n }}\n >\n \n \n \n {l1.evaluations}\n \n \n \n\n \n \n \n \n {l1.topic}\n \n \n \n {/* ///////////// */}\n \n \n \n \n \n \n \n \n \n {l1[type]}\n \n {\n createAssignment({\n variables: {\n title,\n description,\n type,\n topic,\n due,\n class: classID,\n grade,\n center: centerId,\n quiz: quiz.length > 0 ? quiz : null,\n writer: user.id,\n evaluationsInfo,\n }\n });\n }}\n >\n {l1.create}\n \n \n \n \n \n \n \n \n {l1.options}\n \n \n {/* \n \n \n {l1.for}\n \n \n \n \n {currentClass}\n \n \n \n \n {l1.allstudents}\n \n \n \n */}\n {/* Part 2 */}\n {type === \"material\" ? (\n \"\"\n ) : (\n \n \n \n {l1.points}\n \n \n {\n closePointsMenu();\n setGrade(100);\n setPointsMenuLabel(100 + \" نقطة\");\n }}\n >\n \n 100\n \n \n {\n closePointsMenu();\n setGrade(null);\n setPointsMenuLabel(l1.noPoints);\n }}\n >\n \n {l1.noPoints}\n \n \n \n \n \n \n {pointsMenuLabel}\n \n \n \n \n )}\n {/* Part 4 */}\n \n \n \n {l1.due}\n \n \n \n \n {\n setDue(dueRef.current.value);\n }}\n />\n \n \n \n \n {/* Part 5 */}\n \n \n \n {l1.topic}\n \n {/* Topic Menu */}\n \n {topics.map(({ name, id }) => (\n {\n setTopicMenuLabel(name);\n closeTopicMenu();\n setTopic(id);\n }}\n >\n \n {name}\n \n \n ))}\n \n \n \n \n {topicMenuLabel}\n \n \n \n \n \n \n \n \n {\n setTitle(titleRef.current.value);\n }}\n />\n \n \n \n \n \n {type === \"quiz\" && (\n \n \n \n \n )}\n {type === \"evaluations\" ? (\n \n \n \n {\n setEvaluationsInfo({coach: e.target.value});\n }}\n style={{flexGrow:1}}\n />\n {\n setEvaluationsInfo({date: e.target.value});\n }}\n style={{flexGrow:1}}\n\n />\n {\n setEvaluationsInfo({location: e.target.value});\n }}\n style={{flexGrow:1}}\n\n />\n\n \n ) : null}\n\n \n \n \n \n \n \n {\n setTopicContent(topicContentRef.current.value);\n }}\n />\n \n {\n createTopic({\n variables: {\n class: classID,\n name: topicContent\n }\n });\n }}\n >\n {l1.create}\n \n \n \n \n \n \n );\n}\n\nexport default Create;\n","import React from \"react\";\nimport { Box, Button, Grid, makeStyles, Typography } from \"@material-ui/core\";\nimport { BiCalendarAlt } from \"react-icons/bi\";\nimport TopicRow from \"./components/TopicRow\";\nimport TopicSection from \"./components/TopicSection\";\nimport Create from \"./components/Create\";\nimport { l1 } from \"../../local.json\";\nimport { gql, useQuery } from \"@apollo/client\";\nimport Loading from \"../../common/Loading\";\nimport { useParams, useHistory } from \"react-router-dom\";\nimport TopBar from \"../../common/TopBar\";\nimport { RequireClassAccess, RequireTeacherAccess } from \"../../../Auth/gates\";\nimport { BiDotsVerticalRounded } from \"react-icons/bi\";\nimport SchoolIcon from \"@material-ui/icons/School\";\n\nconst useStyles = makeStyles(theme => ({\n rightContainer: {\n marginTop: theme.spacing(15)\n },\n topicContainer: {\n alignSelf: \"center\",\n width: theme.spacing(15),\n textAlign: \"center\",\n padding: theme.spacing(1.5, 2),\n \"&:hover\": {\n backgroundColor: \"#E8F0FE\",\n cursor: \"pointer\",\n borderRadius: theme.spacing(1)\n },\n \"&>*\": {\n fontSize: theme.spacing(1.6),\n color: theme.palette.grey[500]\n }\n },\n topicTitle: {\n fontWeight: 600,\n color: \"#6785F4\"\n },\n topicTitleContainer: {\n marginBottom: theme.spacing(1)\n },\n\n mainContainer: {\n marginTop: theme.spacing(3)\n },\n\n calendar: {\n color: theme.palette.grey[600],\n padding: theme.spacing(1, 2),\n \"&:hover\": {\n color: \"#6785F4\"\n }\n }\n}));\nconst QUERY_CLASSWORK = gql`\n query QueryClasswork($slug: String!) {\n classes(where: { slug: $slug }) {\n id\n name\n section\n topics(sort: \"createdAt:desc\") {\n name\n id\n assignments(sort: \"createdAt:desc\") {\n id\n title\n description\n type\n createdAt\n evaluationsInfo {\n coach\n date\n location\n }\n studentWorks {\n status\n submission\n }\n }\n }\n }\n }\n`;\nconst QUERY_NULL_TOPIC = gql`\n query QueryClasswork($slug: String!) {\n classes(where: { slug: $slug }) {\n assignments(where: { topic_null: true }, sort: \"createdAt:desc\") {\n id\n type\n title\n description\n createdAt\n evaluationsInfo {\n coach\n date\n location\n }\n studentWorks {\n status\n submission\n }\n }\n }\n }\n`;\nfunction Classwork() {\n const history = useHistory();\n const { slug } = useParams();\n // Apollo\n const { loading, data, refetch } = useQuery(QUERY_CLASSWORK, {\n variables: { slug },\n onError: error => console.log(\"QueryClassworkError: \", error),\n notifyOnNetworkStatusChange: true\n });\n const { loading: loadingNullTopic, data: nullTopicData } = useQuery(\n QUERY_NULL_TOPIC,\n {\n variables: { slug },\n onError: error => console.log(\"QueryNullError: \", error),\n onCompleted: data => console.log(\"QueryNullSuccess: \", data)\n }\n );\n const classes = useStyles();\n const evaluationStatistics = works => ({\n all: works.length,\n trainingEvaluations: works.filter(work => Boolean(work?.submission?.trainingEvaluation)).length,\n coachEvaluations: works.filter(work => Boolean(work?.submission?.coachEvaluation)).length,\n studentEvaluations: works.filter(work => Boolean(work?.submission?.studentEvaluation)).length,\n });\n const groupStudentWorks = works => {\n const groups = {\n all: works,\n assigned: works.filter(work => work.status === \"assigned\"),\n submitted: works.filter(work => work.status === \"submitted\"),\n graded: works.filter(work => work.status === \"graded\")\n };\n return {\n statistics: {\n all: works.length,\n assigned: groups.assigned.length,\n submitted: groups.submitted.length,\n graded: groups.graded.length\n },\n groups\n };\n };\n if (loading || loadingNullTopic) return ;\n else {\n const { name, topics, id } = data.classes[0];\n const nullTopics = nullTopicData.classes[0].assignments;\n\n return (\n <>\n \n \n \n \n \n \n {l1.allTopics}\n \n \n\n {!topics.length ? (\n \n {l1.empty}\n \n ) : (\n topics.map(({ id, name }) => (\n \n {name}\n \n ))\n )}\n \n \n \n \n \n \n \n \n
\n }\n onClick={() => history.push(\"/calendar\")}\n >\n {l1.calendar}\n \n \n }\n onClick={() => history.push(\"/home\")}\n >\n {l1.classes}\n \n \n
\n
\n {console.log('nullTopics',nullTopics)}\n {nullTopics.length\n ? nullTopics.map(\n ({ title, description, type, id, createdAt, studentWorks, evaluationsInfo }) => {\n console.log('works', studentWorks.filter(work => work));\n let statistics = type === 'evaluations' ? evaluationStatistics(studentWorks) : groupStudentWorks(studentWorks)\n .statistics;\n return (\n \n )}\n )\n : \"\"}\n {console.log(\"topics\", topics)}\n {!topics.length ? (\n \n \n {l1.empty}\n \n \n ) : (\n topics.map(({ id, name, assignments }) => (\n \n {assignments.map(\n ({\n title,\n description,\n type,\n id,\n createdAt,\n studentWorks,\n evaluationsInfo\n }) => {\n let statistics = groupStudentWorks(studentWorks)\n .statistics;\n return (\n \n );\n }\n )}\n \n ))\n )}\n \n
\n \n
\n \n );\n }\n return ;\n}\n\nexport default Classwork;\n","import React, { useRef, useState } from \"react\";\n\nimport {\n Avatar,\n Box,\n CircularProgress,\n makeStyles,\n TextField,\n Typography\n} from \"@material-ui/core\";\nimport TopBar from \"../../common/TopBar\";\nimport { gql, useMutation, useQuery } from \"@apollo/client\";\nimport { useParams } from \"react-router-dom\";\nimport Loading from \"../../common/Loading\";\nimport l1 from \"../../local.json\";\nimport { StudentWorkGradeEditor } from '../../Answers'\nconst useStyles = makeStyles(theme => ({\n container: {},\n tablesContainer: {\n width: \"100vw\"\n },\n headCell: {\n width: theme.spacing(18),\n height: theme.spacing(12),\n borderColor: theme.palette.grey[300],\n padding: theme.spacing(2)\n },\n bodyCell: {\n width: theme.spacing(18),\n height: theme.spacing(8),\n borderColor: theme.palette.grey[300]\n },\n headCellRight: {\n width: theme.spacing(24),\n height: theme.spacing(12),\n borderColor: theme.palette.grey[300]\n },\n bodyCellRight: {\n width: theme.spacing(24),\n height: theme.spacing(8),\n borderColor: theme.palette.grey[300]\n },\n avatar: {\n margin: theme.spacing(0, 2),\n height: theme.spacing(4),\n width: theme.spacing(4)\n },\n fullname: {\n fontWeight: 600\n },\n TextField: {\n margin: theme.spacing(0, 5)\n },\n input: {\n fontWeight: 600\n },\n title: {\n fontWeight: 600,\n color: theme.palette.primary.main\n }\n}));\n\nconst QUERY_MARKS = gql`\n query QueryClasswork($slug: String!) {\n classes(where: { slug: $slug }) {\n students(sort: \"fullname:asc\") {\n fullname\n id\n }\n assignments(sort: \"createdAt:desc\") {\n id\n title\n description\n type\n grade\n studentWorks (sort:\"student:asc\"){\n id\n status\n student {\n id\n }\n grade\n }\n }\n }\n }\n`;\n// const RETURN_MARK = gql`\n// mutation updateAssignment($id: ID!, $points: Int, $student: ID!) {\n// updateAssignment(\n// input: {\n// where: { id: $id }\n// data: { marks: [{ points: $points, student: $student }] }\n// }\n// ) {\n// assignment {\n// marks {\n// points\n// student {\n// id\n// fullname\n// }\n// }\n// title\n// description\n// }\n// }\n// }\n// `;\n\nfunction Marks() {\n const { slug } = useParams();\n // Apollo\n const { loading, data } = useQuery(QUERY_MARKS, {\n variables: { slug },\n onError: error => console.log(\"QueryMarksError: \", error),\n onCompleted: data => console.log(\"QueryMarksSuccess: \", data)\n });\n // const [returnMark, { loading: loadingReturnMark }] = useMutation(\n // RETURN_MARK,\n // {\n // onError: error => console.log(\"MutationMarkError: \", error),\n // onCompleted: data => console.log(\"MutationMarkSuccess: \", data),\n // refetchQueries: [\n // {\n // query: QUERY_MARKS,\n // variables: {\n // slug\n // }\n // }\n // ]\n // }\n // );\n const [targetField, setTargetField] = useState(null);\n const targetRef = useRef();\n const classes = useStyles();\n if (!loading) {\n const assignments = data.classes[0].assignments;\n const students = data.classes[0].students;\n\n return (\n \n \n {assignments.length === 0 ? (\n \n \n فارغ\n \n \n ) : (\n \n \n \n \n \n \n {students.map(({ fullname, id }) => (\n \n \n \n {fullname}\n \n \n ))}\n \n \n {assignments.map(({ id, title, grade, type, studentWorks }) => {\n if (type != \"material\") {\n return (\n \n {/* {console.log(type)} */}\n \n \n \n {title}\n \n \n \n \n {grade\n ? studentWorks.map((work) => {\n return (\n\n \n \n \n );\n })\n : studentWorks.map(() => {\n return (\n \n );\n })}\n \n \n );\n }\n })}\n \n \n \n \n \n \n \n \n \n )}\n \n );\n }\n return ;\n}\n\nexport default Marks;\n// \n// \n// \n// T\n// \n// \n// \n// \n// B\n// \n// \n// ;\n","import React, { useState, useEffect } from \"react\";\nimport {\n Avatar,\n Typography,\n Box,\n Dialog,\n DialogContent,\n LinearProgress,\n makeStyles,\n TextField,\n Checkbox,\n DialogActions,\n Button\n} from \"@material-ui/core\";\nimport { gql, useMutation, useQuery } from \"@apollo/client\";\nimport { l1 } from \"../local.json\";\n\n// const GET_CENTER_STUDENTS = gql`\n// query QueryCenterPeople($id: ID!) {\n// centersList(id: $id) {\n// students {\n// id\n// fullname\n// avatar\n// }\n// }\n// }\n// `;\nconst GET_CENTER_MEMBERS = gql`\n query QueryClassMembers($id: ID!, $classId: ID!) {\n centersLists(where: { id: $id }) {\n memberships(where: { status: \"ACTIVE\" }) {\n user {\n classes(where: { id: $classId }) {\n id\n }\n teachingClasses(where: { id: $classId }) {\n id\n }\n id\n fullname\n avatar\n }\n }\n }\n }\n`;\n\nconst UPDATE_PEOPLE = gql`\n mutation UpdateInterface($data: editClassInput!, $id: ID!) {\n updateClass(input: { data: $data, where: { id: $id } }) {\n class {\n teachers {\n fullname\n id\n }\n students {\n fullname\n id\n }\n }\n }\n }\n`;\nconst useStyles = makeStyles(theme => ({\n dialogContent: {\n margin: theme.spacing(2)\n },\n search: {\n margin: theme.spacing(2, 30),\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\"\n },\n nameContainer: {\n marginBottom: theme.spacing(1),\n border: \"1px solid lightgrey\",\n padding: theme.spacing(1),\n borderRadius: theme.spacing(1)\n },\n avatar: {\n marginRight: theme.spacing(2)\n }\n}));\n\nfunction Search({\n refetch,\n ready,\n reverseReady,\n centerId,\n classID,\n teachers,\n students,\n studentsMode\n}) {\n const [search, setSearch] = useState(\"\");\n const [result, setResult] = useState([]);\n const [selected, setSelected] = useState([]);\n\n const { loading, data } = useQuery(GET_CENTER_MEMBERS, {\n onError: error => console.log(\"QueryStreamError: \", error),\n variables: {\n id: centerId,\n classId: classID\n },\n onCompleted: () => {\n setResult(\n data?.centersLists[0]?.memberships?.filter(({ user }) =>\n user.fullname?.includes(search)\n )\n );\n }\n });\n const [updatePeople] = useMutation(UPDATE_PEOPLE, {\n onCompleted: data => {\n reverseReady();\n setSelected([]);\n refetch();\n }\n });\n\n useEffect(() => {\n const arr = [];\n console.log(\"data\", data?.centersLists[0]?.memberships);\n // data?.centersLists[0].memberships?.forEach((user) => {\n // const foundIt = user?.memberships?.search(search) !== -1;\n // if (search && foundIt) arr.push(user);\n // return arr;\n // });\n // setResult(arr);\n setResult(\n data?.centersLists[0]?.memberships?.filter(({ user }) =>\n user.fullname?.includes(search)\n )\n );\n }, [search]);\n\n const classes = useStyles();\n return (\n \n \n \n {loading ? (\n \n ) : (\n {\n setSearch(e.target.value);\n }}\n />\n )}\n \n \n {result?.map(i => (\n \n {\n if (e.target.checked) {\n setSelected([...selected, i.user]);\n } else {\n setSelected(selected.filter(j => j.id !== i.user.id));\n }\n }}\n />\n \n {i.user.fullname}\n {console.log(\"studentsMode\", studentsMode)}\n \n {studentsMode\n ? i.user?.classes[0]?.id === classID\n ? l1.alreadyAddedStudent\n : null\n : i.user?.teachingClasses[0]?.id === classID\n ? l1.alreadyAddedTeacher\n : null}\n \n \n ))}\n {selected ? (\n \n ) : null}\n {selected.map(i => (\n \n \n \n {i.fullname}\n \n setSelected(selected.filter(j => j.id !== i.id))}\n >\n {l1.delete}\n \n \n ))}\n \n \n {\n const arr = [];\n if (!studentsMode) {\n teachers.forEach(i => arr.push(i.id));\n selected.forEach(i => {\n arr.push(i.id);\n });\n updatePeople({\n variables: {\n data: {\n teachers: arr\n },\n id: classID\n }\n });\n }\n if (studentsMode) {\n students.forEach(i => arr.push(i.id));\n selected.forEach(i => {\n arr.push(i.id);\n });\n updatePeople({\n variables: {\n data: {\n students: arr\n },\n id: classID\n }\n });\n }\n }}\n >\n {l1.add}\n \n \n \n \n );\n}\nexport default Search;\n","import React, { useContext, useReducer, useState } from 'react';\nimport { Button, Avatar, Box, Grid, makeStyles, Typography } from '@material-ui/core';\nimport TopicSection from './components/TopicSection';\nimport { l1 } from '../../local.json';\nimport { useParams } from 'react-router-dom';\nimport { gql, useMutation, useQuery } from '@apollo/client';\nimport Loading from '../../common/Loading';\nimport TopBar from '../../common/TopBar';\nimport Search from '../../../components/common/Search';\nimport { Navigation } from '../../../Context';\nimport { RequireClassAccess } from '../../../Auth/gates';\n\nconst QUERY_PEOPLE = gql`\n query QueryClasswork($slug: String!) {\n classes(where: { slug: $slug }) {\n id\n name\n section\n teachers {\n fullname\n id\n avatar\n }\n students {\n fullname\n id\n avatar\n }\n }\n }\n`;\n\nconst UPDATE_PEOPLE = gql`\n mutation UpdateInterface($data: editClassInput!, $id: ID!) {\n updateClass(input: { data: $data, where: { id: $id } }) {\n class {\n teachers {\n fullname\n id\n avatar\n }\n students {\n fullname\n id\n avatar\n }\n }\n }\n }\n`;\n\nconst useStyles = makeStyles((theme) => ({\n personContainer: {\n margin: theme.spacing(1),\n },\n nameContainer: {\n gap: theme.spacing(2),\n '$>*': {},\n },\n avatar: {\n height: theme.spacing(5),\n width: theme.spacing(5),\n },\n name: {\n fontWeight: 600,\n },\n optionContainer: {\n marginRight: theme.spacing(4),\n },\n}));\nfunction People() {\n const { centerId } = useContext(Navigation);\n const [updatePeople] = useMutation(UPDATE_PEOPLE, {\n onCompleted: (data) => {\n refetch();\n },\n });\n const { slug } = useParams();\n // Apollo\n const [ready, reverseReady] = useReducer((s) => !s, false);\n const { loading, data, refetch } = useQuery(QUERY_PEOPLE, {\n variables: { slug },\n notifyOnNetworkStatusChange: true,\n });\n\n const [studentMode, setStudentMode] = useState(false);\n\n const classes = useStyles();\n if (!loading) {\n const { teachers, students, id } = data.classes[0];\n return (\n <>\n \n <>\n \n \n \n \n {teachers.map((i) => (\n \n \n {console.log('avatar', i?.avatar)}\n \n {i.fullname}\n \n \n \n {\n const filter = teachers.filter((item) => item.id !== i.id);\n const arr = [];\n filter.forEach((item) => arr.push(item.id));\n updatePeople({\n variables: {\n data: {\n teachers: arr,\n },\n id: data?.classes[0]?.id,\n },\n });\n }}\n >\n {l1.delete}\n \n \n \n \n ))}\n \n \n {students.map((i) => (\n \n \n \n {i.fullname}\n \n \n \n {\n const filter = students.filter((item) => item.id !== i.id);\n const arr = [];\n filter.forEach((item) => arr.push(item.id));\n updatePeople({\n variables: {\n data: {\n students: arr,\n },\n id: data?.classes[0]?.id,\n },\n });\n }}\n >\n {l1.delete}\n \n \n \n \n ))}\n \n \n \n \n {ready ? (\n \n ) : (\n ''\n )}\n \n \n );\n }\n\n if (loading) return ;\n}\n\nexport default People;\n","import {\n Avatar,\n Box,\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogTitle,\n Divider,\n Link,\n makeStyles,\n Menu,\n MenuItem,\n Paper,\n Snackbar,\n TextField,\n Typography\n} from \"@material-ui/core\";\nimport React, {\n useEffect,\n useReducer,\n useRef,\n useState,\n useContext\n} from \"react\";\nimport { MdPeople } from \"react-icons/md\";\nimport { l1 } from \"../../../local.json\";\nimport { gql, useMutation } from \"@apollo/client\";\nimport { BiDotsVerticalRounded } from \"react-icons/bi\";\nimport { useParams } from \"react-router-dom\";\nimport Comment from \"../../../common/Comment\";\nimport CreateComment from \"../../../common/CreateComment\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\nimport Loading from \"../../../common/Loading\";\nimport Drafter2 from \"../../../common/Drafter2\";\nimport moment from \"moment\";\nimport { RequireClassAccess } from \"../../../../../src/Auth/gates\";\nimport { Navigation } from \"../../../../Context\";\n\nconst useStyles = makeStyles(theme => ({\n container: {\n borderRadius: theme.spacing(1),\n marginBottom: theme.spacing(2)\n },\n topSection: {\n margin: theme.spacing(1, 2, 2, 1)\n },\n avatar: {\n margin: theme.spacing(2)\n },\n name: {\n fontWeight: 600\n },\n date: {\n fontSize: theme.spacing(1.6),\n color: theme.palette.grey[600]\n },\n post: {\n marginLeft: theme.spacing(2),\n \"&>*\": {}\n },\n midSection: {\n // marginBottom: theme.spacing(2),\n },\n stats: {\n margin: theme.spacing(1, 0)\n },\n statsIcon: {\n color: theme.palette.grey[700],\n fontSize: theme.spacing(3),\n margin: theme.spacing(0, 1)\n },\n statsText: {\n fontWeight: 600,\n color: theme.palette.grey[700]\n },\n midNameBox: {\n gap: theme.spacing(1.4)\n },\n inputContainer: {\n border: `1px solid lightgrey`,\n borderRadius: theme.spacing(4),\n marginRight: theme.spacing(4)\n },\n input: {\n marginLeft: theme.spacing(2)\n },\n inputIcon: {\n transform: \"scaleX(-1)\",\n margin: theme.spacing(0, 1),\n fontSize: theme.spacing(3),\n cursor: \"pointer\",\n color: theme.palette.grey[500]\n },\n options: {\n marginRight: theme.spacing(2)\n },\n menuItem: {\n paddingRight: theme.spacing(10)\n },\n announcement: {\n fontSize: theme.spacing(3),\n // margin: theme.spacing(2),\n cursor: \"pointer\",\n color: \"grey\"\n },\n editPostContainer: {\n margin: theme.spacing(0, 5)\n },\n editPostTextField: {\n background: theme.palette.grey[100],\n marginBottom: theme.spacing(2)\n },\n editPostButtons: {\n gap: theme.spacing(2)\n },\n muiAlert: {\n width: \"max-content\"\n }\n}));\n\nconst EDIT_POST = gql`\n mutation EditPost($id: ID!, $content: String!) {\n updatePost(input: { where: { id: $id }, data: { content: $content } }) {\n post {\n content\n }\n }\n }\n`;\nconst DELETE_POST = gql`\n mutation DeletePost($id: ID!) {\n deletePost(input: { where: { id: $id } }) {\n post {\n content\n }\n }\n }\n`;\n\nfunction Announcement({\n content,\n fullname,\n id,\n comments,\n failure,\n refetch,\n alert,\n createdAt,\n attachments,\n writerEmail\n}) {\n //Apollo\n const [editPost, { loading: loadingEdit }] = useMutation(EDIT_POST, {\n onError: () => failure(l1.failure),\n onCompleted: () => {\n alert(l1.editsuccess);\n reverseEditPostState();\n refetch();\n }\n });\n const [deletePost, { loading: loadingDelete }] = useMutation(DELETE_POST, {\n onError: () => failure(l1.failure),\n onCompleted: () => {\n alert(l1.deletesuccess);\n refetch();\n }\n });\n\n // Edit State Indicator\n const [editPostState, reverseEditPostState] = useReducer(s => !s, false);\n // Upload Tracker\n const [uploadTracker, setUploadTracker] = useState();\n // Options Logic\n const [anchorPost, setAnchorPost] = useState(null);\n const openPostMenu = event => {\n setAnchorPost(event.currentTarget);\n };\n const closePostMenu = () => {\n setAnchorPost(null);\n };\n const [anchorComment, setAnchorComment] = useState(null);\n const openCommentMenu = event => {\n setAnchorComment(event.currentTarget);\n };\n const closeCommentMenu = () => {\n setAnchorComment(null);\n };\n const { user } = useContext(Navigation);\n\n // Confirmation Dialog Logic\n const [confirmationState, reverseConfirmationState] = useReducer(\n state => !state,\n false\n );\n const classes = useStyles();\n\n if (loadingEdit || loadingDelete) return ;\n return (\n \n \n \n \n \n \n {fullname}\n \n {moment(createdAt).fromNow()}\n \n \n \n {user.email === writerEmail ? (\n \n ) : null}\n\n \n \n {l1.edit}\n \n \n {l1.delete}\n \n \n \n \n {editPostState ? (\n \n ) : (\n \n )}\n {attachments ? (\n \n {\" \"}\n تحميل المرفق{\" \"}\n \n ) : null}\n \n \n \n \n \n \n\n \n {comments.length} {l1.comment}\n \n \n {comments.map(item => (\n \n ))}\n \n \n\n \n \n \n \n {l1.confirmation}\n \n \n \n {\n deletePost({\n variables: {\n id\n }\n });\n }}\n >\n {l1.confirm}\n \n \n \n \n \n );\n}\n\nexport default Announcement;\n","import React from 'react';\nimport { EditorState, RichUtils, getDefaultKeyBinding, Editor } from 'draft-js';\nimport './Drafter.css';\nimport { l1 } from '../local.json';\nimport {\n MdFormatBold,\n MdFormatItalic,\n MdFormatQuote,\n MdFormatUnderlined,\n} from 'react-icons/md';\nimport { Typography } from '@material-ui/core';\nimport { BiListOl, BiListUl } from 'react-icons/bi';\nclass Drafter extends React.Component {\n constructor(props) {\n super(props);\n this.state = { editorState: EditorState.createEmpty() };\n\n this.focus = () => this.refs.editor.focus();\n this.onChange = (editorState) => this.setState({ editorState });\n\n this.handleKeyCommand = this._handleKeyCommand.bind(this);\n this.mapKeyToEditorCommand = this._mapKeyToEditorCommand.bind(this);\n this.toggleBlockType = this._toggleBlockType.bind(this);\n this.toggleInlineStyle = this._toggleInlineStyle.bind(this);\n }\n\n _handleKeyCommand(command, editorState) {\n const newState = RichUtils.handleKeyCommand(editorState, command);\n if (newState) {\n this.onChange(newState);\n return true;\n }\n return false;\n }\n\n _mapKeyToEditorCommand(e) {\n if (e.keyCode === 9 /* TAB */) {\n const newEditorState = RichUtils.onTab(\n e,\n this.state.editorState,\n 4 /* maxDepth */\n );\n if (newEditorState !== this.state.editorState) {\n this.onChange(newEditorState);\n }\n return;\n }\n return getDefaultKeyBinding(e);\n }\n\n _toggleBlockType(blockType) {\n this.onChange(RichUtils.toggleBlockType(this.state.editorState, blockType));\n }\n\n _toggleInlineStyle(inlineStyle) {\n this.onChange(\n RichUtils.toggleInlineStyle(this.state.editorState, inlineStyle)\n );\n }\n\n render() {\n const { editorState } = this.state;\n\n // If the user changes block type before entering any text, we can\n // either style the placeholder or hide it. Let's just hide it now.\n let className = 'RichEditor-editor';\n var contentState = editorState.getCurrentContent();\n if (!contentState.hasText()) {\n if (contentState.getBlockMap().first().getType() !== 'unstyled') {\n className += ' RichEditor-hidePlaceholder';\n }\n }\n console.log('contentState', contentState);\n return (\n
\n \n \n
\n \n
\n
\n );\n }\n}\n\n// Custom overrides for \"code\" style.\nconst styleMap = {\n CODE: {\n backgroundColor: 'rgba(0, 0, 0, 0.05)',\n fontFamily: '\"Inconsolata\", \"Menlo\", \"Consolas\", monospace',\n fontSize: 16,\n padding: 2,\n },\n};\n\nfunction getBlockStyle(block) {\n switch (block.getType()) {\n case 'blockquote':\n return 'RichEditor-blockquote';\n default:\n return null;\n }\n}\n\nclass StyleButton extends React.Component {\n constructor() {\n super();\n this.onToggle = (e) => {\n e.preventDefault();\n this.props.onToggle(this.props.style);\n };\n }\n\n render() {\n let className = 'RichEditor-styleButton';\n if (this.props.active) {\n className += ' RichEditor-activeButton';\n }\n return (\n \n {this.props.label}\n \n );\n }\n}\n\nconst BLOCK_TYPES = [\n {\n label: (\n \n H1\n \n ),\n style: 'header-one',\n },\n {\n label: (\n \n H2\n \n ),\n style: 'header-two',\n },\n {\n label: (\n \n H3\n \n ),\n style: 'header-three',\n },\n {\n label: (\n \n H4\n \n ),\n style: 'header-four',\n },\n\n {\n label: ,\n style: 'blockquote',\n },\n {\n label: ,\n style: 'unordered-list-item',\n },\n {\n label: ,\n style: 'ordered-list-item',\n },\n];\n\nconst BlockStyleControls = (props) => {\n const { editorState } = props;\n const selection = editorState.getSelection();\n const blockType = editorState\n .getCurrentContent()\n .getBlockForKey(selection.getStartKey())\n .getType();\n\n return (\n
\n {BLOCK_TYPES.map((type, index) => (\n \n ))}\n
\n );\n};\n\nvar INLINE_STYLES = [\n {\n label: ,\n style: 'BOLD',\n },\n {\n label: ,\n style: 'ITALIC',\n },\n {\n label: ,\n style: 'UNDERLINE',\n },\n];\n\nconst InlineStyleControls = (props) => {\n const currentStyle = props.editorState.getCurrentInlineStyle();\n\n return (\n
\n {INLINE_STYLES.map((type) => (\n \n ))}\n
\n );\n};\n\nexport default Drafter;\n","import React, { useReducer, useRef, useState } from \"react\";\n\nimport {\n Avatar,\n Box,\n makeStyles,\n Paper,\n Typography,\n IconButton,\n Button,\n TextField,\n Snackbar\n} from \"@material-ui/core\";\n// Icons\nimport { FiMessageSquare } from \"react-icons/fi\";\nimport { MdCropFree, MdMessage } from \"react-icons/md\";\nimport { CgAttachment } from \"react-icons/cg\";\nimport { l1 } from \"../../local.json\";\nimport Due from \"../../common/Due\";\nimport TopicRow from \"./components/TopicRow\";\nimport Announcement from \"./components/Announcement\";\nimport { gql, useMutation, useQuery } from \"@apollo/client\";\nimport { useParams } from \"react-router-dom\";\nimport Loading from \"../../common/Loading\";\nimport TopBar from \"../../common/TopBar\";\nimport MuiAlert from \"@material-ui/lab/Alert\";\nimport Drafter from \"../../common/Editor\";\nimport Drafter2 from \"../../common/Drafter2\";\nimport moment from \"moment\";\nimport useLayout from \"../../common/useLayout\";\nimport { RequireClassAccess } from \"../../../Auth/gates\";\n\n// Styles\nconst useStyles = makeStyles(theme => ({\n head: {\n height: theme.spacing(30),\n width: \"90vw\",\n [theme.breakpoints.up(\"lg\")]: {\n width: \"62vw\"\n },\n backgroundImage:\n \"url(https://gstatic.com/classroom/themes/img_backtoschool.jpg)\",\n backgroundColor: \"black\",\n margin: theme.spacing(2),\n padding: theme.spacing(2),\n borderRadius: theme.spacing(1)\n },\n name: {\n color: theme.palette.common.white,\n fontWeight: 600,\n fontSize: theme.spacing(3.4)\n },\n section: {\n color: theme.palette.common.white,\n fontSize: theme.spacing(3)\n },\n codeContainer: {\n \"& > *\": {\n color: theme.palette.common.white,\n marginRight: theme.spacing(1)\n }\n },\n codePrefix: {\n fontWeight: 600,\n fontSize: theme.spacing(1.7)\n },\n code: {\n fontSize: theme.spacing(1.7)\n },\n scanCodeIconContainer: {\n marginLeft: theme.spacing(-1)\n },\n scanCodeIcon: {\n color: theme.palette.common.white,\n fontSize: theme.spacing(2.5),\n fontWeight: 700\n },\n themeContainer: {\n gap: theme.spacing(0.5)\n },\n uploadContainer: {\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"flex-end\",\n alignItems: \"flex-end\",\n height: \"50%\",\n \"& > *\": {\n color: theme.palette.common.white,\n fontSize: theme.spacing(1.5),\n cursor: \"pointer\"\n }\n },\n main: {\n [theme.breakpoints.up(\"lg\")]: {\n width: \"62vw\"\n },\n width: \"90vw\"\n },\n mainSubContainer: {\n flexGrow: 1\n },\n\n announcementContainer: {\n margin: theme.spacing(2, 0),\n padding: theme.spacing(2),\n borderRadius: theme.spacing(1.5),\n height: \"min-content\"\n // width: \"60%\",\n },\n noAnnouncements: {\n margin: theme.spacing(2, 0, 2, 2),\n padding: theme.spacing(1),\n borderRadius: theme.spacing(1.5),\n height: \"min-content\",\n \"& > *\": {\n margin: theme.spacing(1, 0, 0, 2)\n }\n },\n noAnnouncementsSpecialText: {\n fontSize: theme.spacing(3),\n color: theme.palette.success.dark\n },\n noAnnouncementsBlock: {\n alignItems: \"center\",\n \"& :first-child\": {\n fontSize: theme.spacing(3),\n margin: theme.spacing(1)\n },\n \"& > *\": {\n fontWeight: 600,\n color: theme.palette.grey[700]\n }\n },\n upComingContainer: {\n margin: theme.spacing(2, 2, 2, 0),\n padding: theme.spacing(2),\n borderRadius: theme.spacing(1.5),\n height: \"max-content\",\n minWidth: \"max-content\"\n },\n upComing: {\n fontWeight: 600\n },\n due: {\n margin: theme.spacing(0, 1),\n width: \"max-content\"\n },\n upComingContainerBottom: {\n margin: theme.spacing(1, 1, 0, 1)\n },\n announcementAvatar: {\n margin: theme.spacing(0, 2)\n },\n announcementText: {\n flexGrow: 1,\n cursor: \"pointer\",\n \"&:hover\": {\n color: theme.palette.primary.main\n }\n },\n select: {\n minWidth: theme.spacing(15),\n marginRight: theme.spacing(2)\n },\n postUpperContainer: {\n marginBottom: theme.spacing(3)\n },\n postMiddleContainer: {\n marginBottom: theme.spacing(3)\n },\n postBottomContainer: {\n marginTop: theme.spacing(2)\n }\n}));\nconst UPLOAD = gql`\n mutation($file: Upload!) {\n upload(file: $file) {\n name\n }\n }\n`;\nconst QUERY_STREAM = gql`\n query QueryStream($slug: String!) {\n classes(where: { slug: $slug }) {\n id\n name\n section\n slug\n\n assignments(sort: \"createdAt:desc\") {\n id\n title\n description\n type\n createdAt\n }\n\n posts(sort: \"createdAt:desc\") {\n id\n writer {\n id\n fullname\n email\n }\n content\n createdAt\n attachments {\n url\n }\n comments {\n writer {\n id\n fullname\n email\n }\n id\n content\n createdAt\n }\n }\n }\n }\n`;\n\nconst ADD_POST = gql`\n mutation CreatePost(\n $content: String!\n $class: ID!\n $writer: ID!\n $attachments: ID\n ) {\n createPost(\n input: {\n data: {\n content: $content\n class: $class\n writer: $writer\n attachments: $attachments\n }\n }\n ) {\n post {\n id\n content\n class {\n id\n name\n }\n attachments {\n url\n }\n comments {\n id\n writer {\n id\n fullname\n email\n }\n content\n createdAt\n }\n }\n }\n }\n`;\n\nconst Stream = () => {\n const { slug } = useParams();\n // Apollo\n const { loading: loadingQueryStream, data: queryData, refetch } = useQuery(\n QUERY_STREAM,\n {\n variables: { slug },\n notifyOnNetworkStatusChange: true,\n onError: error => console.log(\"QueryStreamError: \", error)\n }\n );\n const [createPost, { loading: loadingMutationCreatePost }] = useMutation(\n ADD_POST,\n {\n onError: error => console.log(\"mutationCreatePost error: \", error),\n onCompleted: () => {\n setAlertSuccess(l1.postsuccess);\n refetch();\n }\n }\n );\n\n const [postState, reversePostState] = useReducer(\n currentState => !currentState,\n false\n );\n // Alert Logic\n const [alertSuccess, setAlertSuccess] = useState(false);\n const [alertFailure, setAlertFailure] = useState(false);\n\n const classes = useStyles();\n const layout = useLayout();\n const streamItems = (queryData?.classes[0]?.posts ?? []).map(\n ({\n writer,\n content,\n comments,\n createdAt,\n id,\n attachments\n }) => ([\n new Date(createdAt).getTime(), \n setAlertSuccess(content)}\n failure={content => setAlertFailure(content)}\n attachments={attachments}\n writerEmail={writer.email}\n />])\n ).concat(\n (queryData?.classes[0]?.assignments ?? []).map(\n ({ title, description, type, id, createdAt }) => ([\n new Date(createdAt).getTime(),\n \n ])\n )\n ).sort((a, b) => b[0] - a[0]).map(([_,item])=>item)\n return (\n <>\n {loadingQueryStream || loadingMutationCreatePost ? (\n \n ) : (\n <>\n {layout\n ? console.log(\"layout desktop\")\n : console.log(\"layout mobile\")}\n \n \n {\n const sortedArray = queryData?.classes[0]?.sort(\n (a, b) => -moment(b.posts.createdAt).format(\"YYYYMMDD\")\n );\n console.log(sortedArray);\n }}\n >\n \n {queryData.classes[0].name}\n \n \n {queryData.classes[0].section}\n \n\n \n\n \n \n \n {l1.upComing}\n \n \n \n \n {/* */}\n \n \n {l1.communicateWithYourClassHere}\n \n \n \n {l1.createYourAnnouncements}\n \n \n \n {l1.RespondToStudentPost}\n \n \n {/* */}\n \n {postState ? (\n <>\n \n \n ) : (\n // \n \n \n \n {l1.announceSomethingToClass}\n \n {/* \n \n */}\n \n // \n )}\n \n {streamItems}\n \n \n \n {\n setAlertSuccess(false);\n }}\n autoHideDuration={3000}\n >\n \n {alertSuccess}\n \n \n {\n setAlertFailure(false);\n }}\n >\n \n {alertFailure}\n \n \n \n )}\n \n );\n};\n\nexport default Stream;\n","import { BrowserRouter, Redirect, Route, Switch } from \"react-router-dom\";\nimport {\n RequireAuthentication,\n RequireCenterAdmin,\n RequireCenterMembership,\n RequireClassAccess,\n RequireTeacherAccess,\n} from \"./Auth/gates\";\nimport { ClassWrapper } from \"./Context\";\nimport AdminPanel from \"./components/AdminPanel\";\nimport Answers from \"./components/Answers\";\nimport Assignment from \"./components/Assignment\";\nimport Calendar from \"./components/Calendar\";\nimport Files from \"./components/Files\";\nimport FrontEvent from \"./components/FrontEvent\";\nimport FrontEvents from \"./components/FrontEvents\";\nimport Home from \"./components/Home\";\nimport Landing from \"./components/Landing\";\nimport QuizEditor from \"./components/QuizEditor\";\nimport Review from \"./components/Review\";\nimport EditProfile from \"./components/UserPages/EditProfile\";\nimport CropeImage from \"./components/UserPages/ImageCrop\";\nimport Evaluation from \"./components/evaluations/Evaluation\";\nimport { AssignmentProvider } from \"./components/evaluations/context/assignment\";\nimport { StudentWorkProvider } from \"./components/evaluations/context/studentWork\";\nimport { StudentWorksProvider } from \"./components/evaluations/context/studentWorks\";\nimport Banned from \"./components/rel/AdminPanel/Banned\";\nimport EditLanding from \"./components/rel/AdminPanel/EditLanding\";\nimport Events from \"./components/rel/AdminPanel/Events\";\nimport Staff from \"./components/rel/AdminPanel/Staff\";\nimport Teachers from \"./components/rel/AdminPanel/Teachers\";\nimport Waiting from \"./components/rel/AdminPanel/Waiting\";\nimport MembershipForm from \"./components/rel/RequestMembership/MembershipForm\";\nimport Classwork from \"./components/rel/class/Classwork\";\nimport Marks from \"./components/rel/class/Marks\";\nimport People from \"./components/rel/class/People\";\nimport Stream from \"./components/rel/class/Stream\";\nimport forms from \"./forms\";\n\nfunction Router() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {/* Only users not registered in center can request membership, others are redirected */}\n \n \n \n \n \n\n {/* Users not registered in center are redirected to request membership form */}\n \n {/* /home also handles banned & requested memberships */}\n \n \n طلب انضمامك للمركز قيد المراجعة، يرجى العودة لاحقًا.\n \n \n لقد تم تجميد عضويتك في هذا المركز بسبب مخالفتك لشروط\n الخدمة.\n \n \n \n \n \n\n {/* Only active members of center can access these routes */}\n \n \n \n \n \n \n \n \n \n \n لا يمكنك الدخول إلى هذا القسم}\n >\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {/* Load form routes from form list */}\n {Object.values(forms).map(({ routes, roles }) =>\n Object.values(routes).map(({ path, Component }) => (\n \n \n \n \n \n ))\n )}\n \n \n \n \n \n }\n >\n \n \n \n \n \n \n );\n}\n\nexport default Router;\n","import React from 'react';\n// Theme\nimport { ThemeProvider, createTheme } from '@material-ui/core';\nimport { create } from 'jss';\nimport rtl from 'jss-rtl';\nimport { StylesProvider, jssPreset } from '@material-ui/core/styles';\n\n// Configure JSS\nconst jss = create({ plugins: [...jssPreset().plugins, rtl()] });\n\n//Theme Provider\nconst theme = createTheme({\n direction: 'rtl',\n palette: {\n primary: {\n main: '#6785F4',\n },\n },\n typography: {\n fontFamily: [\n '-apple-system',\n 'BlinkMacSystemFont',\n '\"Segoe UI\"',\n 'Roboto',\n '\"Helvetica Neue\"',\n 'Arial',\n 'sans-serif',\n '\"Apple Color Emoji\"',\n '\"Segoe UI Emoji\"',\n '\"Segoe UI Symbol\"',\n ].join(','),\n },\n});\nfunction RTL({ children }) {\n return (\n
\n \n {children}\n \n
\n );\n}\nexport default RTL;\n","import Apollo from \"./Apollo\";\nimport { FloatingAlertProvider } from \"./components/common/FloatingAlert\";\nimport Context from \"./Context\";\nimport Router from \"./Router\";\nimport RTL from \"./RTL\";\n\nfunction App() {\n return (\n // \n \n \n \n \n \n \n \n \n \n // \n );\n}\n\nexport default App;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport \"./index.css\";\nimport App from \"./App\";\n\nReactDOM.render(, document.getElementById(\"root\"));\n"],"sourceRoot":""}