{"version":3,"sources":["services/constantes.ts","services/headers.ts","services/actions/accountActions.ts","services/actions/listActions.ts","services/actions/editActions.ts","services/models.ts","services/actions/importExportActions.ts","services/selectors.ts","services/index.ts","components/Progress/index.tsx","components/SecureRoute/index.tsx","utils/intl.ts","services/reducers.ts","rootReducer.ts","utils/LireProvider.tsx","components/Layout/Flags.tsx","pages/Login/index.tsx","components/Layout/UserHeader.tsx","components/Layout/index.tsx","components/columns.tsx","pages/Import/ImportStatus.tsx","pages/Import/ImportHeader.tsx","pages/Import/ImportSummary.tsx","pages/Import/ImportTable.tsx","pages/Import/ImportFooter.tsx","pages/Import/ImportModal.tsx","pages/Global/Table.tsx","pages/Global/AdminTable.tsx","pages/Global/AdminForm.tsx","pages/Global/schoolTable.tsx","pages/Global/SchoolForm.tsx","pages/Global/index.tsx","pages/InSchool/Table.tsx","pages/InSchool/SchoolAdminTable.tsx","pages/InSchool/SchoolAdminForm.tsx","pages/InSchool/ClassroomTable.tsx","components/Layout/LevelSelect.tsx","pages/InSchool/ClassroomForm.tsx","pages/InSchool/TeacherTable.tsx","pages/InSchool/TeacherForm.tsx","pages/InSchool/StudentTable.tsx","pages/InSchool/StudentForm.tsx","pages/InSchool/index.tsx","pages/Statistics/Table.tsx","pages/Statistics/index.tsx","App.tsx","reportWebVitals.ts","index.tsx"],"names":["API_URL","window","location","toString","indexOf","localStorage","ApiUrl","IMPORT_OK","IMPORT_ACTIONS_FILTER","text","value","getHeader","headers","getSimpleHeader","token","Authorization","token_type","access_token","getSchoolHeader","school","fixRootHeader","root","header","fixedHeader","doGetToken","dispatch","values","a","route","data","login","pass","axios","post","resp","type","doSetCurrentSchool","role","id","currentSchool","undefined","get","then","catch","doLogin","userRessource","loaded","account","doList","body","doLoadAdmins","admins","doLoadSchools","schools","doLoadClasses","classes","doLoadTeachers","teachers","doMassDelete","ids","dels","Promise","all","map","path","substring","length","delete","doLoadAdmin","doDeleteAdmin","doSaveAdmin","admin","put","doLoadSchool","doDeleteSchool","doSaveSchool","doLoadClassroom","doDeleteClassroom","doSaveClassroom","classroom","doLoadTeacher","doDeleteTeacher","doSaveTeacher","teacher","doLoadStudent","doDeleteStudent","doSaveStudent","student","initialAdmin","isMain","schoolID","firstName","lastName","password","initialInfos","page","results","sortField","sortOrder","total","initialImport","new","update","insert","errors","warnings","messages","status","initialSchool","name","licenses","removed","initialClassroom","defaultLevel","initialTeacher","classRooms","initialStudent","doImportUpload","doImportedSummary","importedSummary","doImportedList","filters","action","msgCode","join","importedList","importedTotal","info","doImportedExported","doExecuteImport","doClearImport","doExportable","isAuthentified","createSelector","state","session","authentified","isLoaded","getToken","isRoot","getAccount","getCurrentSchool","getImportedSummary","getImportedList","getImportedTotal","getAdmins","importedExported","exported","getSchools","getClasses","getTeachers","useAccount","useSelector","Selectors","useDispatch","React","AccountActions","setCurrentSchool","logout","loadAdmins","ListActions","loadSchools","loadClasses","loadTeachers","useList","list","massDelete","loadExportable","infos","ImportExportActions","useImported","replace","importUpload","uid","setImportedSummary","setImportedList","loadImportedExported","executeImport","clearImport","useEdited","loadAdmin","EditActions","loadSchool","loadClassroom","loadTeacher","loadStudent","deleteAdmin","deleteSchool","deleteClassroom","deleteTeacher","deleteStudent","saveAdmin","saveSchool","saveClassroom","saveTeacher","saveStudent","MainProgress","styled","div","props","css","theme","color","primary","animation1","keyframes","animation2","SubProgress","animation","animationOpt","light","Progress","data-testid","SecureRoute","children","loginPath","rest","useLocation","to","pathname","from","key","defaultMessage","params","message","intl","d","getHTML","initialState","selected","rootReducer","current","sco","used","licensesUsed","lic","display","LireProvider","history","History","reducer","combineReducers","router","connectRouter","persistConfig","storage","whitelist","persistedReducer","persistReducer","middlewares","routerMiddleware","thunk","store","createStore","applyMiddleware","persistor","persistStore","loading","FlagRadio","Radio","Button","FlagImage","img","Flags","Group","optionType","buttonStyle","onChange","e","onSelect","target","defaultValue","getItem","src","LoginLogo","Login","locale","setLocale","tried","setTried","setCurrent","logging","setLogging","right","setRight","error","setError","rules","setRules","finally","required","justify","align","style","minHeight","backgroundColor","xs","span","onFinish","className","title","extra","setCurrentLocale","Item","width","Input","active","placeholder","prefix","UserOutlined","LockOutlined","block","htmlType","UserHeader","useEffect","padding","height","textAlign","bordered","allowClear","disabled","minWidth","optionLabelProp","Option","label","float","danger","icon","PoweroffOutlined","onClick","Content","Layout","Footer","Sider","SubMenu","Menu","Logo","MyContent","rootPathes","MainLayout","collapsible","collapsed","mode","inlineIndent","selectedKeys","defaultOpenKeys","SettingOutlined","hidden","BankOutlined","TeamOutlined","LineChartOutlined","margin","getExport","exportable","getHeaders","object","template","adminsHeaders","schoolsHeaders","classroomsHeaders","teachersHeaders","studentsHeaders","statisticsHeaders","getColumns","adminsColumns","schoolsColumns","classroomsColumns","teachersColumns","studentsColumns","statisticsColumns","importColumn","rec","column","columnError","getRenderedCell","getImportErrorsFilter","Object","entries","group","filter","k","dataIndex","sorter","render","adminsImportColumns","schoolsImportColumns","classroomsImportColumns","classLevel","c","teachersImportColumns","currentLevel","studentsImportColumns","level","days","monthReadCounter","progression","RiseOutlined","FallOutlined","shouldWait","displayStatus","Title","CloseCircleTwoTone","twoToneColor","fontSize","lineHeight","WarningTwoTone","size","CheckCircleTwoTone","QuestionCircleTwoTone","RightSpace","Space","ImportHeader","useHistory","csv","useRef","useState","fileList","setFileList","uploading","setUploading","uploadCSV","options","upload","form","FormData","append","file","result","fileUploaded","statut","CheckOutlined","accept","beforeUpload","showUploadList","customRequest","executing","executed","FileAddOutlined","FileDoneOutlined","link","click","handleNewImport","separator","ref","filename","ImportSummary","borderBottom","gutter","split","fontWeight","offset","wrap","ImportTable","setInfos","listed","setListed","aborted","Search","SearchOutlined","onSearch","searched","search","showSorterTooltip","pagination","pageSize","order","field","rowKey","record","position","showSizeChanger","dataSource","columns","filterMultiple","getImportColumns","ellipsis","ImportFooter","csvlink","ready","setReady","exporting","setExporting","setCSV","handleExport","console","warn","setTimeout","handleAbort","handleImport","Date","toLocaleString","ImportModal","setUID","refreshing","setRefreshing","recall","setRecall","setAborted","setExecuting","setExecuted","headerProps","footerProps","onAbort","closable","maskClosable","visible","centered","footer","AntButton","ButtonCol","Col","SearchCol","GlobalTable","setTotal","askDelete","setAskDelete","deleting","setDeleting","refresh","setRefresh","setSelected","doImport","setDoImport","setExportable","ac","AbortController","abort","orientation","PlusOutlined","push","EditOutlined","DeleteOutlined","find","s","ExclamationCircleTwoTone","cancelText","okText","onOk","onCancel","nb","obj","one","ImportOutlined","reload","ExportOutlined","pageSizeOptions","String","rowSelection","preserveSelectedRowKeys","keys","rows","AdminTable","Table","layout","labelCol","wrapperCol","AdminForm","useParams","setLoaded","saving","setSaving","success","setSuccess","getRules","rule","marginRight","response","initialValues","help","tooltip","InfoCircleOutlined","Password","autoComplete","readOnly","marginBottom","ArrowLeftOutlined","SaveOutlined","SchoolTable","SchoolForm","deleted","setDeleted","saved","setSaved","Number","email","adminID","suffixIcon","PlusCircleTwoTone","step","min","Global","exact","InSchoolTable","deleteMessage","deleteWarning","okButtonProps","hideOnSinglePage","selectedRowKeys","SchoolAdminTable","SchoolAdminForm","ClassroomTable","LevelSelect","onClear","Array","i","ClassroomForm","description","teacherId","TextArea","TeacherTable","TeacherForm","setModificationOk","StudentTable","StudentForm","classe","InSchool","StatisticsTable","setLevel","Statistics","component","locales","require","App","initDone","setInitDone","currentLocale","setItem","local","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","document","getElementById"],"mappings":"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","file":"static/js/main.20b93017.chunk.js","sourcesContent":["export const API_URL = (window.location.toString().indexOf('localhost') < 0) ? './api' : localStorage.ApiUrl || 'https://jeannine-dev.azurewebsites.net/api';\r\n\r\nexport const PRIMARY = '#3A3A3A';\r\nexport const LIGHT = '#B5ACAF';\r\nexport const ACCENT = '#DF1A30';\r\n\r\nexport const IMPORT_OK = \"OK\";\r\nexport const IMPORT_STANDBY = \"STAND_BY\";\r\nexport const IMPORT_LICENSES = \"NOT_ENOUGH_LICENSES\";\r\nexport const IMPORT_ERROR = \"ERROR\";\r\n\r\nexport const IMPORT_ACTIONS_FILTER = [{text: \"INSERT\", value: \"INSERT\"}, {text: \"UPDATE\", value: \"UPDATE\"}];\r\n","import { AxiosRequestConfig } from 'axios';\r\n\r\nimport { TokenModel } from './models';\r\n\r\nconst getHeader = (headers:object):AxiosRequestConfig => {\r\n return {headers};\r\n}\r\n\r\nexport const getTokenHeader = ():AxiosRequestConfig => {\r\n return getHeader({\r\n \"Content-Type\": \"application/x-www-form-urlencoded\",\r\n });\r\n}\r\n\r\nexport const getSimpleHeader = (token:TokenModel):AxiosRequestConfig => {\r\n return getHeader({\r\n Authorization: `${token.token_type} ${token.access_token}`,\r\n });\r\n}\r\n\r\nexport const getSchoolHeader = (token?:TokenModel, school:string|number = 0):AxiosRequestConfig => {\r\n return getHeader({\r\n Authorization: `${token?.token_type} ${token?.access_token}`,\r\n \"X-School-ID\": school,\r\n });\r\n}\r\n\r\nexport const fixRootHeader = (root:boolean, header:AxiosRequestConfig):AxiosRequestConfig => {\r\n let fixedHeader = header;\r\n if(root) {\r\n fixedHeader.headers['X-School-ID'] = 0;\r\n }\r\n return fixedHeader;\r\n}\r\n","import {Dispatch} from 'redux';\r\nimport axios from 'axios';\r\n\r\nimport {TokenModel, AccountModel, SchoolModel } from '../models';\r\n\r\nimport { API_URL } from '../constantes';\r\nimport { getTokenHeader, getSimpleHeader } from '../headers';\r\n\r\nexport const setLoggedOut = () => ({type:'LOGGED_OUT'});\r\n\r\nexport const doGetToken = async (dispatch:Dispatch, values:any) => {\r\n const route = `${API_URL}/account/token`;\r\n const data = `grant_type=client_credentials&username=${values.login}&password=${values.pass}`;\r\n const resp = await axios.post(route, data, getTokenHeader());\r\n dispatch({type:'ACCOUNT_AUTHENTIFIED', token: resp.data});\r\n doSetCurrentSchool(dispatch, resp.data);\r\n return resp.data.role === \"Admin\";\r\n}\r\n\r\nexport const doSetCurrentSchool = async (dispatch:Dispatch, token:TokenModel, id:number|string = token?.school) => {\r\n if(id === 0) {\r\n dispatch({type:'SCHOOL_CHANGED', currentSchool: undefined});\r\n } else {\r\n const route = `${API_URL}/school/${id}`;\r\n await axios.get(route, getSimpleHeader(token))\r\n .then(resp => dispatch({type:'SCHOOL_CHANGED', currentSchool: resp.data}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n }\r\n}\r\n\r\nexport const doLogin = async (dispatch:Dispatch, token:TokenModel) => {\r\n if(token) {\r\n const route = `${API_URL}${token.userRessource}`;\r\n await axios.get(route, getSimpleHeader(token))\r\n .then(resp => dispatch({type:'SET_ACCOUNT', loaded:true, account: resp.data}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n } else {\r\n dispatch(setLoggedOut());\r\n }\r\n}\r\n\r\nexport const doLogout = (dispatch:Dispatch) => {\r\n dispatch(setLoggedOut());\r\n}\r\n","import {Dispatch} from 'redux';\r\nimport axios, { AxiosRequestConfig } from 'axios';\r\n\r\nimport {TokenModel, ClassroomModel, SchoolModel, TeacherModel, ListModel, InfosModel, AccountModel } from '../models';\r\n\r\nimport { API_URL } from '../constantes';\r\n\r\nimport { setLoggedOut } from './accountActions';\r\nimport { getSchoolHeader, getSimpleHeader } from '../headers';\r\n\r\nexport const doList = async (dispatch:Dispatch, route:string, body:InfosModel, token:TokenModel, root:boolean, currentSchool:SchoolModel) => {\r\n let header = getSchoolHeader(token, root ? 0 : (token.school === 0 ? currentSchool?.id || 0 : token.school));\r\n const resp = await axios.post(API_URL + route, body, header);\r\n // .then(resp => dispatch({type: 'LIST_LOADED', list: resp.data.results, total: resp.data.info.total}))\r\n // .catch(() => dispatch(setLoggedOut()));\r\n return resp.data;\r\n}\r\n\r\nexport const doLoadAdmins = async (dispatch:Dispatch, token:TokenModel, school:string|number) => {\r\n if(token) {\r\n await axios.get>(`${API_URL}/account/admin/list`, getSchoolHeader(token, school))\r\n .then(resp => dispatch({type:'ADMINS_LOADED', admins: resp.data}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n } else {\r\n dispatch(setLoggedOut());\r\n }\r\n}\r\n\r\nexport const doLoadSchools = async (dispatch:Dispatch, token:TokenModel) => {\r\n if(token) {\r\n await axios.get>(`${API_URL}/school/list`, getSimpleHeader(token))\r\n .then(resp => dispatch({type:'SCHOOLS_LOADED', schools: resp.data}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n } else {\r\n dispatch(setLoggedOut());\r\n }\r\n}\r\n\r\nexport const doLoadClasses = async (dispatch:Dispatch, token:TokenModel, currentSchool:SchoolModel) => {\r\n if(token) {\r\n await axios.get>(`${API_URL}/classroom/list`, getSchoolHeader(token, currentSchool.id || 0))\r\n .then(resp => dispatch({type:'CLASSES_LOADED', classes: resp.data}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n } else {\r\n dispatch(setLoggedOut());\r\n }\r\n}\r\n\r\nexport const doLoadTeachers = async (dispatch:Dispatch, token:TokenModel, currentSchool:SchoolModel) => {\r\n if(token) {\r\n await axios.get>(`${API_URL}/account/teacher/list`, getSchoolHeader(token, currentSchool.id || 0))\r\n .then(resp => dispatch({type:'TEACHERS_LOADED', teachers: resp.data}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n } else {\r\n dispatch(setLoggedOut());\r\n }\r\n}\r\n\r\nexport const doMassDelete = async (dispatch:Dispatch, route:string, ids:any[], header:AxiosRequestConfig) => {\r\n const dels = Promise.all(ids.map(id => {\r\n let path = `${API_URL}${route.substring(0, route.length - 1)}/${id}`;\r\n return axios.delete(path, header);\r\n }));\r\n try {\r\n await dels;\r\n return true;\r\n } catch (ex) {\r\n return false;\r\n }\r\n}\r\n","import axios, { AxiosRequestConfig } from 'axios';\r\n\r\nimport { AccountModel, StudentModel, ClassroomModel, SchoolModel, TeacherModel } from '../models';\r\n\r\nimport { API_URL } from '../constantes';\r\nimport { fixRootHeader } from '../headers';\r\n\r\nexport const doLoadAdmin = async (id:any, header:AxiosRequestConfig) => {\r\n const resp = await axios.get(`${API_URL}/account/admin/${id}`, header);\r\n return resp.data;\r\n}\r\n\r\nexport const doDeleteAdmin = async (id:any, header:AxiosRequestConfig) => {\r\n await axios.delete(`${API_URL}/account/admin/${id}`, header);\r\n return true;\r\n}\r\n\r\nexport const doSaveAdmin = async (admin:AccountModel, root:boolean, header:AxiosRequestConfig) => {\r\n if(admin.id) {\r\n await axios.put(`${API_URL}/account/admin/${admin.id}`, admin, fixRootHeader(root, header));\r\n } else {\r\n await axios.post(`${API_URL}/account/admin`, admin, fixRootHeader(root, header));\r\n }\r\n return true;\r\n}\r\n\r\nexport const doLoadSchool = async (id:any, header:AxiosRequestConfig) => {\r\n const resp = await axios.get(`${API_URL}/school/${id}`, header);\r\n return resp.data;\r\n}\r\n\r\nexport const doDeleteSchool = async (id:any, header:AxiosRequestConfig) => {\r\n await axios.delete(`${API_URL}/school/${id}`, header);\r\n return true;\r\n}\r\n\r\nexport const doSaveSchool = async (school:SchoolModel, header:AxiosRequestConfig) => {\r\n if(school.id) {\r\n await axios.put(`${API_URL}/school/${school.id}`, school, header);\r\n } else {\r\n await axios.post(`${API_URL}/school`, school, header);\r\n }\r\n return true;\r\n}\r\n\r\nexport const doLoadClassroom = async (id:any, header:AxiosRequestConfig) => {\r\n const resp = await axios.get(`${API_URL}/classroom/${id}`, header);\r\n return resp.data;\r\n}\r\n\r\nexport const doDeleteClassroom = async (id:any, header:AxiosRequestConfig) => {\r\n await axios.delete(`${API_URL}/classroom/${id}`, header);\r\n return true;\r\n}\r\n\r\nexport const doSaveClassroom = async (classroom:ClassroomModel, header:AxiosRequestConfig) => {\r\n if(classroom.id) {\r\n await axios.put(`${API_URL}/classroom/${classroom.id}`, classroom, header);\r\n } else {\r\n await axios.post(`${API_URL}/classroom`, classroom, header);\r\n }\r\n return true;\r\n}\r\n\r\nexport const doLoadTeacher = async (id:any, header:AxiosRequestConfig) => {\r\n const resp = await axios.get(`${API_URL}/account/teacher/${id}`, header);\r\n return resp.data;\r\n}\r\n\r\nexport const doDeleteTeacher = async (id:any, header:AxiosRequestConfig) => {\r\n await axios.delete(`${API_URL}/account/teacher/${id}`, header);\r\n return true;\r\n}\r\n\r\nexport const doSaveTeacher = async (teacher:TeacherModel, header:AxiosRequestConfig) => {\r\n if(teacher.id) {\r\n await axios.put(`${API_URL}/account/teacher/${teacher.id}`, teacher, header);\r\n } else {\r\n await axios.post(`${API_URL}/account/teacher`, teacher, header);\r\n }\r\n return true;\r\n}\r\n\r\nexport const doLoadStudent = async (id:any, header:AxiosRequestConfig) => {\r\n const resp = await axios.get(`${API_URL}/account/student/${id}`, header);\r\n return resp.data;\r\n}\r\n\r\nexport const doDeleteStudent = async (id:any, header:AxiosRequestConfig) => {\r\n await axios.delete(`${API_URL}/account/student/${id}`, header);\r\n return true;\r\n}\r\n\r\nexport const doSaveStudent = async (student:StudentModel, header:AxiosRequestConfig) => {\r\n if(student.id) {\r\n await axios.put(`${API_URL}/account/student/${student.id}`, student, header);\r\n } else {\r\n await axios.post(`${API_URL}/account/student`, student, header);\r\n }\r\n return true;\r\n}\r\n","import { SortOrder } from \"antd/lib/table/interface\";\r\n\r\nexport interface TokenModel {\r\n access_token?:string;\r\n expires_in?:number;\r\n role?:string;\r\n school:number;\r\n schoolName?:string;\r\n token_type?:string;\r\n user?:number;\r\n userRessource?:string; \r\n}\r\n\r\nexport const initialToken : TokenModel = {\r\n school: 0\r\n}\r\n\r\nexport interface AccountModel {\r\n role?:string;\r\n id?:number;\r\n isMain:boolean;\r\n schoolID?:number;\r\n school?:string;\r\n firstName:string;\r\n lastName:string;\r\n login:string;\r\n password:string;\r\n dbLocalUpdate?:any;\r\n createdAt?:any;\r\n updatedAt?:any;\r\n tutorialStatuses?:any;\r\n booksProgress?:any;\r\n}\r\n\r\nexport const initialAdmin : AccountModel = {\r\n isMain: false,\r\n schoolID: 0,\r\n firstName: \"\",\r\n lastName: \"\",\r\n login: \"\",\r\n password: \"\",\r\n}\r\n\r\nexport interface InfosModel {\r\n page:number;\r\n results:number;\r\n sortField?:string;\r\n sortOrder:SortOrder;\r\n search?:string;\r\n action?:string;\r\n msgCode?:string;\r\n total:number,\r\n locale?:string;\r\n}\r\n\r\nexport const initialInfos : InfosModel = {\r\n page: 1, \r\n results: 10, \r\n sortField: undefined,\r\n sortOrder: 'ascend',\r\n total: 0,\r\n}\r\n\r\nexport interface ImportModel {\r\n new:boolean;\r\n total:number;\r\n update:number;\r\n insert:number;\r\n errors:number;\r\n warnings:number;\r\n messages:string[];\r\n status:string;\r\n}\r\n\r\nexport const initialImport : ImportModel = {\r\n new: true,\r\n total: 0,\r\n update: 0,\r\n insert: 0,\r\n errors: 0,\r\n warnings: 0,\r\n messages: [],\r\n status: \"STAND_BY\",\r\n}\r\n\r\nexport interface ListModel {\r\n results:Array;\r\n info:{total:number};\r\n}\r\n\r\nexport const initialList : ListModel = {\r\n results: [],\r\n info: {total:0},\r\n}\r\n\r\nexport interface SchoolModel {\r\n id?:number;\r\n name:string;\r\n licenses?:number;\r\n licensesUsed?:number;\r\n admin?:AccountModel;\r\n adminID?:number;\r\n display?:string;\r\n removed:boolean;\r\n}\r\n\r\nexport const initialSchool : SchoolModel = {\r\n name: \"\",\r\n licenses: 0,\r\n admin: undefined,\r\n removed: false,\r\n}\r\n\r\nexport interface ClassroomModel {\r\n id?:number;\r\n name:string;\r\n description?:string;\r\n defaultLevel:number;\r\n school?:string;\r\n teacherId?:number;\r\n teacher?:TeacherModel;\r\n studentsCount?:number;\r\n}\r\n\r\nexport const initialClassroom : ClassroomModel = {\r\n name: \"\",\r\n defaultLevel: 1,\r\n}\r\n\r\nexport interface TeacherModel {\r\n id?:number;\r\n classRooms:Array;\r\n firstName:string;\r\n lastName:string;\r\n login:string;\r\n password:string;\r\n}\r\n\r\nexport const initialTeacher : TeacherModel = {\r\n classRooms: [],\r\n firstName: \"\",\r\n lastName: \"\",\r\n login: \"\",\r\n password: \"\",\r\n}\r\n\r\nexport interface StudentModel {\r\n id?:number;\r\n currentXP?:number;\r\n currentLevel?:number;\r\n classroom?:number;\r\n classroomName?:string;\r\n schoolName?:string;\r\n bookSuggests?:Array;\r\n messagesCount?:number;\r\n key?:number;\r\n firstName:string;\r\n lastName:string;\r\n login:string;\r\n password:string;\r\n email?:string;\r\n}\r\n\r\nexport const initialStudent : StudentModel = {\r\n firstName: \"\",\r\n lastName: \"\",\r\n login: \"\",\r\n password: \"\",\r\n}\r\n\r\nexport interface StatisticsModel {\r\n id:number;\r\n rank:any;\r\n name:string;\r\n days:number;\r\n uniqueReadCounter:number;\r\n monthReadCounter:number;\r\n progression:number;\r\n}","import {Dispatch} from 'redux';\r\nimport axios, { AxiosRequestConfig } from 'axios';\r\n\r\nimport { ListModel, InfosModel, ImportModel, initialImport } from '../models';\r\n\r\nimport { API_URL } from '../constantes';\r\n\r\nimport { setLoggedOut } from './accountActions';\r\nimport { fixRootHeader } from '../headers';\r\n\r\nexport const doImportUpload = async (dispatch:Dispatch, route:string, body:FormData, header:AxiosRequestConfig, root:boolean) => {\r\n return await axios.post(API_URL + route, body, fixRootHeader(root, header))\r\n .then(() => {return true})\r\n .catch(() => {\r\n dispatch(setLoggedOut());\r\n return false;\r\n });\r\n}\r\n\r\nexport const doImportedSummary = async (dispatch:Dispatch, route:string, header:AxiosRequestConfig) => {\r\n await axios.get(API_URL + route, header)\r\n .then(resp => dispatch({type: 'IMPORT_SUMMARY_LOADED', importedSummary: {...resp.data, new: false}}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n}\r\n\r\nexport const doImportedList = async (dispatch:Dispatch, route:string, body:InfosModel, header:AxiosRequestConfig) => {\r\n let filters = [\r\n ...(body.action ? [`action=${body.action}`] : []),\r\n ...(body.msgCode ? [`msgCode=${body.msgCode}`] : []),\r\n ];\r\n await axios.post(`${API_URL}${route}${filters && `?${filters.join(\"&\")}`}`, body, header)\r\n .then(resp => dispatch({type: 'IMPORT_LIST_LOADED', importedList: resp.data.results, importedTotal: resp.data.info.total}))\r\n .catch(() => dispatch(setLoggedOut()));\r\n}\r\n\r\nexport const doImportedExported = async (route:string, body:InfosModel, header:AxiosRequestConfig) => {\r\n const resp = await axios.post(API_URL + route + \"?states=ERROR\", body, header);\r\n return resp.data.results;\r\n}\r\n\r\nexport const doExecuteImport = async (route:string, header:AxiosRequestConfig, root:boolean) => {\r\n await axios.post(API_URL + route, undefined, fixRootHeader(root, header));\r\n}\r\n\r\nexport const doClearImport = async (dispatch:Dispatch) => {\r\n dispatch({type: 'IMPORT_SUMMARY_LOADED', importedSummary: initialImport});\r\n}\r\n\r\nexport const doExportable = async (route:string, body:InfosModel, header:AxiosRequestConfig) => {\r\n const resp = await axios.post(API_URL + route, body, header);\r\n return resp.data.results;\r\n}\r\n","import { createSelector } from 'reselect';\r\n\r\nimport {State as RootState} from '../rootReducer';\r\nimport {State} from './reducers';\r\n\r\nexport const isAuthentified = createSelector(state => state.session, session => session.authentified);\r\n\r\nexport const isLoaded = createSelector(state => state.session, session => session.loaded);\r\n\r\nexport const getToken = createSelector(state => state.session, session => session.token);\r\nexport const isRoot = createSelector(state => state.session, session => session.root);\r\nexport const getHeader = createSelector(state => state.session, session => session.header);\r\n\r\nexport const getAccount = createSelector(state => state.session, session => session.account);\r\n\r\nexport const getCurrentSchool = createSelector(state => state.session, session => session.currentSchool);\r\n\r\nexport const getImportedSummary = createSelector(state => state.session, session => session.importedSummary);\r\nexport const getImportedList = createSelector(state => state.session, session => session.importedList);\r\nexport const getImportedTotal = createSelector(state => state.session, session => session.importedTotal);\r\nexport const getImportedExported = createSelector(state => state.session, session => session.importedExported);\r\n\r\nexport const getExported = createSelector(state => state.session, session => session.exported);\r\n\r\nexport const getAdmins = createSelector(state => state.session, session => session.admins);\r\nexport const getSchools = createSelector(state => state.session, session => session.schools);\r\nexport const getClasses = createSelector(state => state.session, session => session.classes);\r\nexport const getTeachers = createSelector(state => state.session, session => session.teachers);\r\n","import * as React from 'react';\r\n\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport {State} from '../rootReducer';\r\n\r\nimport * as AccountActions from './actions/accountActions';\r\nimport * as ListActions from './actions/listActions';\r\nimport * as EditActions from './actions/editActions';\r\nimport * as ImportExportActions from './actions/importExportActions';\r\n\r\nimport * as Selectors from \"./selectors\";\r\n\r\nimport {AccountModel, ClassroomModel, ImportModel, InfosModel, SchoolModel, StudentModel, TeacherModel, TokenModel} from './models';\r\nimport { AxiosRequestConfig } from 'axios';\r\n\r\nexport const useAccount = () => {\r\n const loaded:boolean = useSelector((state:State) => Selectors.isLoaded(state));\r\n const authentified:boolean = useSelector((state:State) => Selectors.isAuthentified(state));\r\n\r\n const token:TokenModel = useSelector((state:State) => Selectors.getToken(state));\r\n const root:boolean = useSelector((state:State) => Selectors.isRoot(state));\r\n\r\n const account:AccountModel = useSelector((state:State) => Selectors.getAccount(state));\r\n const currentSchool:SchoolModel = useSelector((state:State) => Selectors.getCurrentSchool(state));\r\n \r\n const admins:Array = useSelector((state:State) => Selectors.getAdmins(state));\r\n const schools:Array = useSelector((state:State) => Selectors.getSchools(state));\r\n const classes:Array = useSelector((state:State) => Selectors.getClasses(state));\r\n const teachers:Array = useSelector((state:State) => Selectors.getTeachers(state));\r\n\r\n const dispatch = useDispatch();\r\n\r\n const getToken = React.useCallback((values:any) => AccountActions.doGetToken(dispatch, values), [dispatch]);\r\n const setCurrentSchool = React.useCallback((school?:number|string) => AccountActions.doSetCurrentSchool(dispatch, token, school), [dispatch, token]);\r\n const login = React.useCallback(() => AccountActions.doLogin(dispatch, token), [dispatch, token]);\r\n const logout = React.useCallback(() => AccountActions.doLogout(dispatch), [dispatch]);\r\n\r\n const loadAdmins = React.useCallback((school:string|number) => ListActions.doLoadAdmins(dispatch, token, school), [dispatch, token]);\r\n const loadSchools = React.useCallback(() => ListActions.doLoadSchools(dispatch, token), [dispatch, token]);\r\n const loadClasses = React.useCallback(() => ListActions.doLoadClasses(dispatch, token, currentSchool), [dispatch, token, currentSchool]);\r\n const loadTeachers = React.useCallback(() => ListActions.doLoadTeachers(dispatch, token, currentSchool), [dispatch, token, currentSchool]);\r\n\r\n return {\r\n loaded, authentified, token, root, account, currentSchool, \r\n getToken, setCurrentSchool, login, logout,\r\n admins, schools, classes, teachers, \r\n loadAdmins, loadSchools, loadClasses, loadTeachers, \r\n };\r\n}\r\n\r\nexport const useList = (route:string, root:boolean = false) => {\r\n const token:TokenModel = useSelector((state:State) => Selectors.getToken(state));\r\n const currentSchool:SchoolModel = useSelector((state:State) => Selectors.getCurrentSchool(state));\r\n\r\n const header:AxiosRequestConfig = useSelector((state:State) => Selectors.getHeader(state));\r\n\r\n const dispatch = useDispatch();\r\n \r\n const list = React.useCallback((info:InfosModel) => ListActions.doList(dispatch, route, info, token, root, currentSchool), [dispatch, route, token, root, currentSchool]);\r\n \r\n const massDelete = React.useCallback((ids:any[]) => ListActions.doMassDelete(dispatch, route, ids, header), [dispatch, route, header]);\r\n const loadExportable = React.useCallback((infos:InfosModel) => ImportExportActions.doExportable(route, infos, header), [route, header]);\r\n\r\n return { list, massDelete, loadExportable };\r\n}\r\n\r\nexport const useImported = (path:string) => {\r\n let route:string = `${path.replace(\"/root\", \"\")}/import`;\r\n let root:boolean = path.indexOf(\"/root\") > -1;\r\n\r\n const header:AxiosRequestConfig = useSelector((state:State) => Selectors.getHeader(state));\r\n\r\n const importedSummary:ImportModel = useSelector((state:State) => Selectors.getImportedSummary(state));\r\n const importedList:Array = useSelector((state:State) => Selectors.getImportedList(state));\r\n const importedTotal:number = useSelector((state:State) => Selectors.getImportedTotal(state));\r\n \r\n const dispatch = useDispatch();\r\n \r\n const importUpload = React.useCallback((uid:string, data:FormData) => ImportExportActions.doImportUpload(dispatch, `${route}/${uid}`, data, header, root), [dispatch, route, header, root]);\r\n const setImportedSummary = React.useCallback((uid?:string) => ImportExportActions.doImportedSummary(dispatch, `${route}/${uid}/infos`, header), [dispatch, route, header]);\r\n const setImportedList = React.useCallback((uid:string, infos:InfosModel) => ImportExportActions.doImportedList(dispatch, `${route}/${uid}/list`, infos, header), [dispatch, route, header]);\r\n const loadImportedExported = React.useCallback((uid:string, infos:InfosModel) => ImportExportActions.doImportedExported(`${route}/${uid}/list`, infos, header), [route, header]);\r\n \r\n const executeImport = React.useCallback((uid?:string) => ImportExportActions.doExecuteImport(`${route}/${uid}/go`, header, root), [route, header, root]);\r\n const clearImport = React.useCallback(() => ImportExportActions.doClearImport(dispatch), [dispatch]);\r\n\r\n return {\r\n importedSummary, importedList, importedTotal, \r\n importUpload, setImportedList, setImportedSummary, loadImportedExported, executeImport, clearImport\r\n };\r\n}\r\n\r\nexport const useEdited = () => {\r\n const header:AxiosRequestConfig = useSelector((state:State) => Selectors.getHeader(state));\r\n\r\n const loadAdmin = React.useCallback((id:any) => EditActions.doLoadAdmin(id, header), [header]);\r\n const loadSchool = React.useCallback((id:any) => EditActions.doLoadSchool(id, header), [header]);\r\n const loadClassroom = React.useCallback((id:any) => EditActions.doLoadClassroom(id, header), [header]);\r\n const loadTeacher = React.useCallback((id:any) => EditActions.doLoadTeacher(id, header), [header]);\r\n const loadStudent = React.useCallback((id:any) => EditActions.doLoadStudent(id, header), [header]);\r\n\r\n const deleteAdmin = React.useCallback((id:any) => EditActions.doDeleteAdmin(id, header), [header]);\r\n const deleteSchool = React.useCallback((id:any) => EditActions.doDeleteSchool(id, header), [header]);\r\n const deleteClassroom = React.useCallback((id:any) => EditActions.doDeleteClassroom(id, header), [header]);\r\n const deleteTeacher = React.useCallback((id:any) => EditActions.doDeleteTeacher(id, header), [header]);\r\n const deleteStudent = React.useCallback((id:any) => EditActions.doDeleteStudent(id, header), [header]);\r\n\r\n const saveAdmin = React.useCallback((admin:AccountModel, root:boolean = false) => EditActions.doSaveAdmin(admin, root, header), [header]);\r\n const saveSchool = React.useCallback((school:SchoolModel) => EditActions.doSaveSchool(school, header), [header]);\r\n const saveClassroom = React.useCallback((classroom:ClassroomModel) => EditActions.doSaveClassroom(classroom, header), [header]);\r\n const saveTeacher = React.useCallback((teacher:TeacherModel) => EditActions.doSaveTeacher(teacher, header), [header]);\r\n const saveStudent = React.useCallback((student:StudentModel) => EditActions.doSaveStudent(student, header), [header]);\r\n \r\n return {\r\n loadAdmin, loadSchool, loadClassroom, loadTeacher, loadStudent, \r\n deleteAdmin, deleteSchool, deleteClassroom, deleteTeacher, deleteStudent, \r\n saveAdmin, saveSchool, saveClassroom, saveTeacher, saveStudent,\r\n };\r\n}\r\n","import * as React from \"react\";\r\nimport { keyframes, css } from \"@emotion/react\";\r\nimport styled from \"@emotion/styled\";\r\n\r\nconst MainProgress = styled.div(\r\n (props) => css`\r\n background-color: ${props.theme.color.primary};\r\n height: 4px;\r\n overflow: hidden;\r\n position: relative;\r\n `\r\n);\r\n\r\nconst animation1 = keyframes`\r\n from { left: -35%; right: 100%; }\r\n 60% { left: 100%; right: -90%;}\r\n to { left: 100%; right: -90%}\r\n `;\r\nconst animation2 = keyframes`\r\n from { left: -200%; right: 100%; }\r\n 60% { left: 107%; right: -8%;}\r\n to { left: 107%; right: -8%}\r\n `;\r\n\r\ntype SubType = {\r\n animation: any;\r\n animationOpt: string;\r\n};\r\n\r\nconst SubProgress = styled.div(\r\n (props) => css`\r\n animation: ${props.animation} ${props.animationOpt};\r\n background-color: ${props.theme.color.light};\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n bottom: 0;\r\n position: absolute;\r\n transition: transform 0.2s linear;\r\n transform-origin: left;\r\n `\r\n);\r\n\r\nconst Progress = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Progress;\r\n","import * as React from \"react\";\r\n\r\nimport { Route, RouteProps, Redirect, useLocation } from \"react-router\";\r\n\r\nimport { useAccount } from \"../../services\";\r\nimport Progress from \"../../components/Progress\";\r\n\r\nexport interface SecureRouteProps extends RouteProps {\r\n children: React.ReactNode;\r\n loginPath: string;\r\n}\r\n/**\r\n * Custom Route to force authentification, if the user is not loggued, the page is redirect to login page.\r\n * ```\r\n * \r\n * ```\r\n */\r\nconst SecureRoute = (props:SecureRouteProps) => {\r\n const { children, loginPath, ...rest } = props;\r\n\r\n const location = useLocation();\r\n\r\n const { loaded, authentified, login } = useAccount();\r\n\r\n React.useEffect(() => {\r\n login();\r\n },[login]);\r\n\r\n return (\r\n \r\n {authentified ? (\r\n !loaded ? (\r\n \r\n ) : \r\n children\r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default SecureRoute;\r\n","import * as intl from \"react-intl-universal\";\r\n\r\nexport const getGroup = (group:string) => {\r\n return intl.get(group);\r\n}\r\n\r\nexport const get = (key:string, defaultMessage?:string, params?:any) => {\r\n const message = intl.get(key, params);\r\n return defaultMessage ? message.d(defaultMessage) : message;\r\n}\r\n\r\nexport const getHTML = (key:string, defaultMessage?:string, params?:any) => {\r\n const message = intl.getHTML(key, params);\r\n return defaultMessage ? message.d(defaultMessage) : message;\r\n}\r\n","import * as intl from \"../utils/intl\";\r\n\r\nimport { AxiosRequestConfig } from 'axios';\r\nimport { getSchoolHeader } from './headers';\r\n\r\nimport { TokenModel, AccountModel, ClassroomModel, SchoolModel, TeacherModel, ImportModel, initialToken, initialImport, initialSchool } from './models';\r\n\r\nexport interface State {\r\n type?:string;\r\n authentified?:boolean;\r\n loaded?:boolean;\r\n root?:boolean;\r\n token?:TokenModel;\r\n header?:AxiosRequestConfig;\r\n account?:AccountModel;\r\n currentSchool?:SchoolModel;\r\n selected:Array;\r\n importedSummary:ImportModel;\r\n importedList?:Array;\r\n importedTotal?:number;\r\n importedExported?:Array;\r\n exported:Array;\r\n admins?:Array;\r\n schools?:Array;\r\n classes?:Array;\r\n teachers?:Array;\r\n}\r\n\r\nconst initialState : State = {\r\n authentified: false,\r\n loaded: false,\r\n root: false,\r\n token: initialToken,\r\n selected: [],\r\n importedSummary: initialImport,\r\n exported: [],\r\n}\r\n\r\nexport const reducer = (state:State = initialState, current:State) => {\r\n switch(current.type) {\r\n case 'ACCOUNT_AUTHENTIFIED': {\r\n return {...state, authentified: true, token: current.token, root: current.token?.school === 0, header: getSchoolHeader(current.token, current?.token?.school)}\r\n }\r\n case 'SET_ACCOUNT': {\r\n return {...state, loaded: true, authentified: true, account: current.account}\r\n }\r\n case 'SCHOOL_CHANGED': {\r\n let params = {sco: current.currentSchool?.name, used: current.currentSchool?.licensesUsed, lic: current.currentSchool?.licenses};\r\n let display = current.currentSchool && intl.get(\"layout.header_select_content\", undefined, params);\r\n let currentSchool = current.currentSchool ? {...current.currentSchool, removed: false, display} : {...initialSchool, removed: true};\r\n return {...state, currentSchool, header: getSchoolHeader(state.token, current.currentSchool?.id),\r\n }\r\n }\r\n case 'ADMINS_LOADED': {\r\n return {...state, admins: current.admins}\r\n }\r\n case 'SCHOOLS_LOADED': {\r\n return {...state, schools: current.schools}\r\n }\r\n case 'CLASSES_LOADED': {\r\n return {...state, classes: current.classes}\r\n }\r\n case 'TEACHERS_LOADED': {\r\n return {...state, teachers: current.teachers}\r\n }\r\n case 'IMPORT_SUMMARY_LOADED': {\r\n return {...state, importedSummary: current.importedSummary}\r\n }\r\n case 'IMPORT_LIST_LOADED': {\r\n return {...state, importedList: current.importedList, importedTotal: current.importedTotal}\r\n }\r\n case 'EXPORT_LOADED': {\r\n return {...state, exported: current.exported}\r\n }\r\n case 'LOGGED_OUT': {\r\n return initialState\r\n }\r\n }\r\n return state;\r\n}\r\n","import {reducer as session, State as SessionState} from './services/reducers';\r\n\r\nconst rootReducer = {\r\n session\r\n};\r\n\r\nexport interface State {\r\n session: SessionState;\r\n}\r\n\r\nexport default rootReducer;","import * as React from \"react\";\r\n\r\nimport {\r\n createStore,\r\n combineReducers,\r\n applyMiddleware,\r\n Middleware,\r\n} from \"redux\";\r\nimport { Provider } from \"react-redux\";\r\nimport {\r\n ConnectedRouter,\r\n connectRouter,\r\n routerMiddleware,\r\n} from \"connected-react-router\";\r\nimport * as History from \"history\";\r\nimport { createLogger } from \"redux-logger\";\r\nimport thunk from \"redux-thunk\";\r\n\r\nimport { persistStore, persistReducer } from \"redux-persist\";\r\nimport storage from \"redux-persist/lib/storage\";\r\nimport { PersistGate } from \"redux-persist/integration/react\";\r\n\r\nimport { ThemeProvider } from \"@emotion/react\";\r\n\r\nimport rootReducer from \"../rootReducer\";\r\nimport { ThemeType } from \"../types\";\r\n\r\ninterface LireProviderProps {\r\n children: React.ReactNode;\r\n}\r\n\r\nconst LireProvider = ({ children }: LireProviderProps) => {\r\n const history = History.createHashHistory();\r\n\r\n const reducer = combineReducers({\r\n router: connectRouter(history),\r\n ...rootReducer,\r\n });\r\n const persistConfig = {\r\n key: \"root\",\r\n storage,\r\n whitelist: [\"mylocal\"],\r\n };\r\n const persistedReducer = persistReducer(persistConfig, reducer);\r\n\r\n const middlewares: Middleware[] = [routerMiddleware(history), thunk];\r\n if (process.env.NODE_ENV === \"development\") {\r\n middlewares.push(createLogger());\r\n }\r\n\r\n const store = createStore(\r\n persistedReducer,\r\n {},\r\n applyMiddleware(...middlewares)\r\n );\r\n const persistor = persistStore(store as any);\r\n\r\n const theme: ThemeType = {\r\n color: {\r\n primary: \"#1976d2\",\r\n light: \"#bbdefb\",\r\n },\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {children}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default LireProvider;\r\n","import styled from \"@emotion/styled\";\r\nimport { Radio } from \"antd\";\r\n\r\nconst FlagRadio = styled(Radio.Button)`\r\n width: 36px;\r\n height: 24px;\r\n padding: 0;\r\n margin-right: 6px;\r\n`;\r\n\r\nconst FlagImage = styled.img`\r\n border: 1px solid white;\r\n height: 16px;\r\n width: 26px;\r\n position: relative;\r\n top: -6px;\r\n left: 4px;\r\n`;\r\n\r\nconst Flags = (props:any) => {\r\n return <>\r\n {props.onSelect(e.target.value)}} defaultValue={window.localStorage.getItem(\"locale\") || \"fr-FR\"}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ;\r\n }\r\n\r\n export default Flags;","import * as React from \"react\";\r\n\r\nimport * as intl from \"../../utils/intl\";\r\n\r\nimport { Row, Col, Form, Input, Button, Card, Skeleton } from \"antd\";\r\nimport { UserOutlined, LockOutlined } from \"@ant-design/icons\";\r\nimport { Redirect } from \"react-router\";\r\n\r\nimport { useAccount } from \"../../services\";\r\n\r\nimport Flags from \"../../components/Layout/Flags\"\r\n\r\nimport styled from \"@emotion/styled\";\r\n\r\nconst LoginLogo = styled.img`\r\n background-color: white;\r\n width: 100%;\r\n padding: 28px;\r\n`;\r\n\r\nconst Login = (props:any) => {\r\n \r\n const { authentified, root, getToken } = useAccount();\r\n\r\n const [locale, setLocale] = React.useState();\r\n\r\n const [tried, setTried] = React.useState(false);\r\n const [current, setCurrent] = React.useState();\r\n const [logging, setLogging] = React.useState(false);\r\n const [right, setRight] = React.useState(false);\r\n const [error, setError] = React.useState(false);\r\n\r\n const [rules, setRules] = React.useState({login: [{}], password: [{}]});\r\n\r\n const handleAuth = (values:any) => {\r\n setTried(true);\r\n setCurrent(values);\r\n setLogging(true);\r\n setError(undefined);\r\n }\r\n\r\n React.useEffect(() => {\r\n if(logging) {\r\n getToken(current)\r\n .then(setRight)\r\n .catch(setError)\r\n .finally(() => setLogging(false));\r\n }\r\n }, [current, logging, getToken]);\r\n\r\n React.useEffect(() => {\r\n setRules({\r\n login: [{required: true, message: intl.get(\"messages.login\")}],\r\n password: [{required: true, message: intl.get(\"messages.password\")}]\r\n });\r\n }, [locale]);\r\n\r\n return authentified && right ? : <>\r\n \r\n \r\n
\r\n \r\n {props.setCurrentLocale(locale);setLocale(locale);}}/>}>\r\n {tried && !logging ?\r\n

\r\n {(error && intl.get(\"messages.credentials\")) || (!right && intl.get(\"messages.rights\"))}\r\n

: <>\r\n }\r\n \r\n \r\n \r\n {logging ? : }/>}\r\n \r\n \r\n \r\n \r\n {logging ? : }/>}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n};\r\n\r\nexport default Login;\r\n","import React from \"react\";\r\n\r\nimport * as intl from \"../../utils/intl\";\r\n\r\nimport { Button, Select } from \"antd\";\r\nimport { PoweroffOutlined } from \"@ant-design/icons\";\r\n\r\nimport { Header } from \"antd/lib/layout/layout\";\r\nimport { SchoolModel } from \"../../services/models\";\r\nimport { useAccount } from \"../../services\";\r\n\r\nconst UserHeader = () => {\r\n\r\n const { account, root, schools, currentSchool, loadSchools, setCurrentSchool, logout } = useAccount();\r\n\r\n React.useEffect(() => {\r\n if(root) {\r\n loadSchools();\r\n }\r\n }, [root, loadSchools]);\r\n\r\n const handleSelectSchool = (value:string) => {\r\n setCurrentSchool(value || 0);\r\n }\r\n\r\n return root || currentSchool?.display ? <>\r\n
\r\n \r\n
\r\n {`${account.firstName} ${account.lastName}`}\r\n \r\n
\r\n
\r\n : <>;\r\n}\r\n\r\nexport default UserHeader;","import * as React from \"react\";\r\n\r\nimport * as intl from \"../../utils/intl\";\r\n\r\nimport styled from \"@emotion/styled\";\r\nimport { Link, useLocation } from \"react-router-dom\";\r\n\r\nimport { Layout, Menu } from \"antd\";\r\nimport { SettingOutlined, BankOutlined, TeamOutlined, LineChartOutlined } from \"@ant-design/icons\";\r\n\r\nimport { useAccount } from \"../../services\";\r\nimport UserHeader from \"../Layout/UserHeader\"\r\n\r\nconst { Content, Footer, Sider } = Layout;\r\nconst { SubMenu } = Menu;\r\n\r\nconst Logo = styled.img`\r\n height: 80px;\r\n padding: 12px;\r\n`;\r\n\r\nconst MyContent = styled.div`\r\n padding: 24px;\r\n min-height: 360px;\r\n background-color: #fff;\r\n`;\r\n\r\ninterface MainLayoutProps {\r\n children: React.ReactNode;\r\n}\r\n\r\nconst rootPathes:string[] = [\"/account/admins/root\", \"/schools\", \"/statistics/books\"];\r\n\r\nconst MainLayout = ({ children }: MainLayoutProps) => {\r\n \r\n const location = useLocation();\r\n \r\n const { root, currentSchool } = useAccount();\r\n \r\n return (\r\n \r\n \r\n \r\n -1 ? [] : [\"sub\"]} >\r\n } hidden={!root}>\r\n {intl.get(\"layout.admins_menu\")}\r\n \r\n } hidden={!root}>\r\n {intl.get(\"layout.schools_menu\")}\r\n \r\n } disabled={root && !currentSchool?.display}\r\n title={currentSchool ? `${intl.get(\"layout.school\", undefined, {name: currentSchool.name})}` : intl.get(\"layout.noschool\")}>\r\n \r\n {intl.get(\"layout.admins\")}\r\n \r\n \r\n {intl.get(\"layout.teachers\")}\r\n \r\n \r\n {intl.get(\"layout.classrooms\")}\r\n \r\n \r\n {intl.get(\"layout.students\")}\r\n \r\n \r\n }>\r\n {intl.get(\"layout.stats\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {children}\r\n \r\n
\r\n {intl.get(\"layout.footer\")}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default MainLayout;\r\n","import React from \"react\";\r\n\r\nimport * as intl from \"../utils/intl\";\r\n\r\nimport { RiseOutlined, FallOutlined } from \"@ant-design/icons\";\r\n\r\nexport const getExport = (exportable:any[] = [], object:string) => {\r\n return exportable.map(e => ({action: \"UPDATE\", ...e}));\r\n}\r\n\r\nexport const getHeaders = (object:string, template:boolean = false) => {\r\n switch(object) {\r\n case \"admins\":\r\n return adminsHeaders(template);\r\n case \"schools\":\r\n return schoolsHeaders(template);\r\n case \"classrooms\":\r\n return classroomsHeaders(template);\r\n case \"teachers\":\r\n return teachersHeaders(template);\r\n case \"students\":\r\n return studentsHeaders(template);\r\n case \"statistics\":\r\n return statisticsHeaders(template);\r\n }\r\n}\r\n\r\nexport const getColumns = (object:string) => {\r\n switch(object) {\r\n case \"admins\":\r\n return adminsColumns();\r\n case \"schools\":\r\n return schoolsColumns();\r\n case \"classrooms\":\r\n return classroomsColumns();\r\n case \"teachers\":\r\n return teachersColumns();\r\n case \"students\":\r\n return studentsColumns();\r\n case \"statistics\":\r\n return statisticsColumns();\r\n }\r\n}\r\n\r\nconst importColumn = (text:any, rec:any, column:string, display?:any) => {\r\n let value = display || text || \"?\";\r\n if(column.indexOf(rec.columnError) > -1) {\r\n return getRenderedCell(value, rec.state);\r\n } else {\r\n return value;\r\n }\r\n}\r\n\r\nexport const getImportErrorsFilter = (messages:any[]) => {\r\n return Object.entries(intl.getGroup(\"problems\")).filter((k:any[]) => messages.indexOf(k[0]) > -1).map((k:any[]) => {return {text: k[1], value: k[0]}});\r\n}\r\n\r\nexport const getRenderedCell = (value:string, state:string) => {\r\n return {value};\r\n}\r\n\r\nexport const getImportColumns = (object:string) => {\r\n switch(object) {\r\n case \"admins\":\r\n return adminsImportColumns();\r\n case \"schools\":\r\n return schoolsImportColumns();\r\n case \"classrooms\":\r\n return classroomsImportColumns();\r\n case \"teachers\":\r\n return teachersImportColumns();\r\n case \"students\":\r\n return studentsImportColumns();\r\n }\r\n return [];\r\n}\r\n\r\nconst adminsHeaders = (template:boolean) => {\r\n return [\r\n {label: \"Action\", key: \"action\"},\r\n {label: \"Login\", key: \"login\"},\r\n {label: \"FirstName\", key: \"firstName\"},\r\n {label: \"LastName\", key: \"lastName\"},\r\n {label: \"Email\", key: \"email\"},\r\n {label: \"Password\", key: \"password\"},\r\n ]\r\n};\r\n\r\nconst adminsColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.login\"), dataIndex: \"login\", key: \"login\", width: '30%', sorter: true,\r\n render: (text:any, rec:any) => `${text}${rec.isMain ? \" (principal)\" : \"\"}`,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.fullname\"), dataIndex: \"lastName, firstName\", key: \"lastName\", width: '35%', sorter: true,\r\n render: (text:any, rec:any) => `${rec.lastName} ${rec.firstName}`,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.email\"), dataIndex: \"email\", key: \"email\", width: '35%', sorter: true,\r\n },\r\n ];\r\n}\r\n\r\nconst adminsImportColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.login\"), dataIndex: \"login\", key: \"login\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"login\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.fullname\"), dataIndex: \"lastName, firstName\", key: \"lastName\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"lastName, firstName\", `${rec.lastName} ${rec.firstName}`),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.email\"), dataIndex: \"email\", key: \"email\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"email\"),\r\n },\r\n ];\r\n}\r\n\r\nconst schoolsHeaders = (template:boolean) => {\r\n return [\r\n {label: \"Action\", key: \"action\"},\r\n {label: \"Name\", key: \"name\"},\r\n {label: \"NbLicenses\", key: template ? \"nbLicenses\" : \"licenses\"},\r\n {label: \"Login\", key: \"admin.login\"},\r\n {label: \"FirstName\", key: \"admin.firstName\"},\r\n {label: \"LastName\", key: \"admin.lastName\"},\r\n {label: \"Email\", key: \"admin.email\"},\r\n {label: \"Password\", key: \"admin.password\"},\r\n ]\r\n};\r\n\r\nconst schoolsColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.name\"), dataIndex: \"name\", key: \"name\", width: '30%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.licenses\"), dataIndex: \"licenses\", key: \"licenses\", width: '20%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.licenses_used\"), dataIndex: \"licensesUsed\", key: \"licensesUsed\", width: '20%', sorter: false,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.admin\"), dataIndex: \"admin.lastName, admin.firstName\", key: \"admin\", width: '30%', sorter: true,\r\n\t render: (text:any, rec:any) => rec.admin ? `${rec.admin.lastName} ${rec.admin.firstName}` : ``,\r\n },\r\n ];\r\n}\r\n\r\nconst schoolsImportColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.name\"), dataIndex: \"name\", key: \"name\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"name\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.licenses\"), dataIndex: \"nbLicenses\", key: \"nbLicenses\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"licenses\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.login\"), dataIndex: \"login\", key: \"login\", sorter: true,\r\n \t render: (text:any, rec:any) => importColumn(text, rec, \"login\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.admin\"), dataIndex: \"lastName, firstName\", key: \"lastName\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"lastName, firstName\", `${rec.lastName || \"?\"} ${rec.firstName || \"?\"}`),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.email\"), dataIndex: \"email\", key: \"email\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"email\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.password\"), dataIndex: \"password\", key: \"password\",\r\n render: (text:any, rec:any) => importColumn(text, rec, \"password\", \"*****\"),\r\n },\r\n ];\r\n}\r\n\r\nconst classroomsHeaders = (template:boolean) => {\r\n return [\r\n {label: \"Action\", key: \"action\"},\r\n {label: \"Name\", key: \"name\"},\r\n {label: \"ClassLevel\", key: template ? \"classLevel\" : \"defaultLevel\"},\r\n {label: \"TeacherLogin\", key: \"teacher.login\"}\r\n ]\r\n};\r\n\r\nconst classroomsColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.class_name\"), dataIndex: \"name\", key: \"name\", width: '30%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.fullname\"), dataIndex: \"teacher.lastName, teacher.firstName\", key: \"lastName\", width: '30%', sorter: true,\r\n render: (text:any, rec:any) => rec.teacher ? `${rec.teacher.lastName} ${rec.teacher.firstName}` : \"-\",\r\n },\r\n {\r\n title: intl.get(\"labels.columns.students\"), dataIndex: \"studentsCount\", key: \"studentsCount\", width: '15%', sorter: false,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.level\"), dataIndex: \"defaultLevel\", key: \"defaultLevel\", width: '25%', sorter: true,\r\n render: (text:any, rec:any) => text && intl.get(`levels.LEVEL_${rec.defaultLevel}`, `Niveau ${rec.defaultLevel}`),\r\n },\r\n ];\r\n}\r\n\r\nconst classroomsImportColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.class_name\"), dataIndex: \"name\", key: \"name\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"name\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.teacher_login\"), dataIndex: \"teacherLogin\", key: \"teacherLogin\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"teacherLogin\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.class_level\"), dataIndex: \"classLevel\", key: \"classLevel\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"classLevel\", intl.get(`classes.LEVEL_${rec.classLevel}`, `Niveau ${rec.classLevel}`)),\r\n },\r\n ];\r\n}\r\n\r\nconst teachersHeaders = (template:boolean) => {\r\n return [\r\n {label: \"Action\", key: \"action\"},\r\n {label: \"Login\", key: \"login\"},\r\n {label: \"Email\", key: \"email\"},\r\n {label: \"FirstName\", key: \"firstName\"},\r\n {label: \"LastName\", key: \"lastName\"},\r\n {label: \"Password\", key: \"password\"}\r\n ]\r\n};\r\n \r\nconst teachersColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.login\"), dataIndex: \"login\", key: \"login\", width: '20%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.fullname\"), dataIndex: \"lastName, firstName\", key: \"lastName\", width: '30%', sorter: true,\r\n render: (text:any, rec:any) => `${rec.lastName} ${rec.firstName}`,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.classes\"), dataIndex: \"classes\", key: \"classes\", width: '50%', sorter: false,\r\n render: (text:any, rec:any) => rec.classRooms?.map((c:any) => c.name).join(\", \"),\r\n },\r\n ];\r\n}\r\n\r\nconst teachersImportColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.login\"), dataIndex: \"login\", key: \"login\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"login\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.password\"), dataIndex: \"password\", key: \"password\",\r\n render: (text:any, rec:any) => importColumn(text, rec, \"password\", \"*****\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.email\"), dataIndex: \"email\", key: \"email\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"email\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.fullname\"), dataIndex: \"lastName, firstName\", key: \"lastName\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"lastName, firstName\", `${rec.lastName || \"?\"} ${rec.firstName || \"?\"}`),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.classes\"), dataIndex: \"classes\", key: \"classes\", sorter: false,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"classes\", rec.classRooms?.map((c:any) => c.name).join(\", \")),\r\n },\r\n ];\r\n}\r\n\r\nconst studentsHeaders = (template:boolean) => {\r\n return [\r\n {label: \"Action\", key: \"action\"},\r\n {label: \"Login\", key: \"login\"},\r\n {label: \"FirstName\", key: \"firstName\"},\r\n {label: \"LastName\", key: \"lastName\"},\r\n {label: \"ClassName\", key: template ? \"className\" : \"classroomName\"},\r\n {label: \"Level\", key: template ? \"level\" : \"currentLevel\"},\r\n {label: \"Email\", key: \"email\"},\r\n {label: \"Password\", key: \"password\"},\r\n ]\r\n};\r\n\r\nconst studentsColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.login\"), dataIndex: \"login\", key: \"login\", width: '10%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.fullname\"), dataIndex: \"lastName, firstName\", key: \"lastName\", width: '30%', sorter: true,\r\n render: (text:any, rec:any) => `${rec.lastName} ${rec.firstName}`,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.classroom\"), dataIndex: \"classroomName\", key: \"classroomName\", width: '30%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.level\"), dataIndex: \"currentLevel\", key: \"currentLevel\", width: '30%', sorter: true,\r\n render: (text:any, rec:any) => text && intl.get(`levels.LEVEL_${rec.currentLevel}`, `Niveau ${rec.currentLevel}`),\r\n },\r\n ];\r\n}\r\n\r\nconst studentsImportColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.login\"), dataIndex: \"login\", key: \"login\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"login\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.fullname\"), dataIndex: \"lastName, firstName\", key: \"lastName\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"lastName, firstName\", `${rec.lastName || \"?\"} ${rec.firstName || \"?\"}`),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.classroom\"), dataIndex: \"className\", key: \"className\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"className\"),\r\n },\r\n {\r\n title: intl.get(\"labels.columns.level\"), dataIndex: \"level\", key: \"level\", sorter: true,\r\n render: (text:any, rec:any) => importColumn(text, rec, \"level\", intl.get(`levels.LEVEL_${rec.level}`)),\r\n }\r\n ];\r\n}\r\n\r\nconst statisticsHeaders = (template:boolean) => {\r\n return [\r\n {label: \"Rank\", key: \"rank\"},\r\n {label: \"BookName\", key: \"name\"},\r\n {label: \"Days\", key: \"days\"},\r\n {label: \"UniqueRead\", key: \"uniqueReadCounter\"},\r\n {label: \"MonthRead\", key: \"monthReadCounter\"},\r\n ]\r\n};\r\n\r\nconst statisticsColumns = () => {\r\n return [\r\n {\r\n title: intl.get(\"labels.columns.rank\"), dataIndex: \"rank\", key: \"rank\", width: '10%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.book_name\"), dataIndex: \"name\", key: \"name\", width: '33%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.since\"), dataIndex: \"days\", key: \"days\", width: '15%', sorter: true,\r\n render: (text:any, rec:any) => `${rec.days} jour${rec.days > 1 ? 's' : ''}`,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.read_count\"), dataIndex: \"uniqueReadCounter\", key: \"uniqueReadCounter\", width: '12%', sorter: true,\r\n },\r\n {\r\n title: intl.get(\"labels.columns.read_month\"), dataIndex: \"monthReadCounter\", key: \"monthReadCounter\", width: '15%', sorter: true,\r\n render: (text:any, rec:any) => {\r\n return <>{rec.monthReadCounter} {(rec.progression === 1 ? : (rec.progression === -1 ? : <>))}\r\n },\r\n },\r\n ];\r\n}\r\n","import React from \"react\";\r\n\r\nimport * as intl from \"../../utils/intl\";\r\n\r\nimport { CheckCircleTwoTone, CloseCircleTwoTone, WarningTwoTone, QuestionCircleTwoTone } from \"@ant-design/icons\";\r\nimport { Space, Spin, Typography } from \"antd\";\r\n\r\nexport const shouldWait = (status:string = \"STAND_BY\") => {\r\n return status === \"NOT_FOUND\" || status === \"ANALYSING\" || status === \"UPLOADING\";\r\n};\r\n\r\nexport const displayStatus = (status:string = \"STAND_BY\") => {\r\n switch (status) {\r\n case \"STAND_BY\": return {intl.get(\"import.status.STAND_BY\")}\r\n case \"EMPTY_CSV\": return \r\n {intl.get(\"import.status.EMPTY_CSV\")}\r\n ;\r\n case \"ERROR\": return \r\n {intl.get(\"import.status.ERROR\")}\r\n ;\r\n case \"NOT_FOUND\": return \r\n {intl.get(\"import.status.NOT_FOUND\")}\r\n ;\r\n case \"NOT_ENOUGH_LICENSES\": return \r\n {intl.get(\"import.status.NOT_ENOUGH_LICENSES\")}\r\n ;\r\n case \"ANALYSING\": return \r\n {intl.get(\"import.status.ANALYSING\")}\r\n ;\r\n case \"UPLOADING\": return \r\n {intl.get(\"import.status.UPLOADING\")}\r\n ;\r\n case \"OK\": return \r\n {intl.get(\"import.status.OK\")}\r\n ;\r\n default: return ;\r\n }\r\n};\r\n","import React from \"react\";\r\n\r\nimport * as intl from \"../../utils/intl\";\r\n\r\nimport { Button, Space, Upload } from \"antd\";\r\nimport { RcFile } from \"antd/lib/upload\";\r\nimport { UploadFile } from \"antd/lib/upload/interface\";\r\n\r\nimport { CheckOutlined, FileAddOutlined, FileDoneOutlined } from \"@ant-design/icons\";\r\nimport styled from \"@emotion/styled\";\r\n\r\nimport { useHistory } from \"react-router\";\r\nimport { CSVLink } from \"react-csv\";\r\nimport { useImported } from \"../../services\";\r\nimport { getHeaders } from \"../../components/columns\";\r\nimport { IMPORT_OK } from \"../../services/constantes\";\r\nimport { shouldWait } from \"./ImportStatus\";\r\n\r\nconst RightSpace = styled(Space)`\r\n float: right;\r\n position: relative;\r\n right: -8px;\r\n`;\r\n\r\nconst ImportHeader = (props:any) => {\r\n const history = useHistory();\r\n\r\n const csv = React.useRef(null);\r\n\r\n const { importUpload } = useImported(history.location.pathname);\r\n\r\n const [fileList, setFileList] = React.useState>>([]);\r\n const [uploading, setUploading] = React.useState(false);\r\n\r\n const handleBeforeUpload = (file:RcFile) => {\r\n setFileList([file]);\r\n props.fileUploaded(file.uid);\r\n return true;\r\n }\r\n\r\n const handleNewImport = () => {\r\n props.handleNewImport();\r\n }\r\n \r\n const uploadCSV = async (options:any) => {\r\n let upload = true;\r\n const form = new FormData();\r\n form.append(\"file\", options.file);\r\n await importUpload(options.file.uid, form)\r\n .then((result) => {\r\n if(upload) {\r\n props.fileUploaded(options.file.uid);\r\n setUploading(true);\r\n }\r\n });\r\n return () => (upload = false);\r\n };\r\n\r\n const headers = getHeaders(props.object, true);\r\n\r\n React.useEffect(() => {\r\n setUploading(false);\r\n }, [props]);\r\n \r\n return <>\r\n \r\n {intl.getHTML(\"import.title\", undefined, {object: intl.get(`objects.${props.object}`, props.object)})}\r\n {props.statut === IMPORT_OK && <> - \r\n {intl.get(`import.status.${props.statut}`, props.statut)}\r\n }\r\n \r\n \r\n {props.new ? <>\r\n \r\n \r\n \r\n \r\n : }\r\n \r\n