{"version":3,"sources":["core/services/i18n.ts","authentication/state/authentication.state.ts","core/models/notification.enum.ts","study/state/study.state.ts","environments/environments.ts","core/services/authentication.api.service.ts","authentication/state/authentication.thunks.ts","core/models/notification.ts","authentication/state/authentication.slice.ts","core/services/axios.ts","common/state/common.state.ts","core/services/study.api.service.ts","study/state/study.thunk.ts","study/state/study.slice.ts","core/services/common.api.service.ts","config/state/config.state.ts","common/state/common.thunk.ts","common/state/common.slice.ts","core/services/config.api.service.ts","core/utils/validation.ts","config/state/config.thunk.ts","config/state/config.slice.ts","core/state/store.ts","core/theme/lightTheme.ts","core/components/LoadingComponent.tsx","core/utils/theming.ts","core/state/selectors.ts","core/components/NavBar.tsx","core/components/Footer.tsx","core/services/locale.service.ts","common/components/overview.tsx","study/state/study.selectors.ts","config/state/config.selectors.ts","study/components/Studies.tsx","config/components/Catalogue.tsx","core/components/NotificationHandler.tsx","config/components/CatalogueDetails.tsx","config/components/CatalogueEntry.tsx","authentication/state/authentication.selectors.ts","common/components/termsAndConditions.tsx","common/components/disclaimer.tsx","common/components/impressum.tsx","common/components/about.tsx","common/state/common.selectors.ts","core/models/Common.ts","study/components/SubmitStudy.tsx","common/components/contact.tsx","core/styles/authenticationComponentStyles.ts","authentication/components/Login.tsx","authentication/components/SignUp.tsx","authentication/components/VerifyEmail.tsx","authentication/components/ForgotPassword.tsx","authentication/components/ResetPassword.tsx","study/components/MyStudies.tsx","ScrollToTop.tsx","App.tsx","reportWebVitals.ts","index.tsx"],"names":["i18n","use","Backend","initReactI18next","init","fallbackLng","debug","backend","loadPath","interpolation","escapeValue","AccountType","AuthStateEnum","NotificationEnum","StudySliceName","Environments","ApiUrl","concat","location","protocol","hostname","port","title","version","config","buildVersion","PATH","AuthenticationApiService","data","AxiosInstance","post","AuthenticationSliceName","NotificationType","AuthenticationThunks","signUp","createAsyncThunk","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","payload","_ref","dispatch","rejectWithValue","res","_error$response","_error$response2","_error$response2$data","wrap","_context","prev","next","AuthenticationActions","setLoading","sent","abrupt","result","t0","axios","isAxiosError","response","status","notification","Message","ERROR_SIGN_UP_FAILED","finish","stop","_x","_x2","apply","arguments","authenticate","_ref4","_callee2","_ref3","_error$response3","_error$response4","_error$response4$data","_context2","showVerifyEmailComponent","ERROR_LOGIN_FAILED","_x3","_x4","verifyEmail","_ref6","_callee3","_ref5","_error$response5","_error$response6","_error$response6$data","_context3","ERROR_EMAIL_VERIFICATION_FAILED","_x5","_x6","refreshToken","_ref8","_callee4","_","_ref7","_context4","_x7","_x8","logout","_ref10","_callee5","_ref9","_context5","_x9","_x10","forgotPassword","_ref12","_callee6","_ref11","_error$response7","_error$response8","_error$response8$data","_context6","showResetPasswordComponent","ERROR_FORGOT_PASSWORD_FAILED","_x11","_x12","resetPassword","_ref14","_callee7","_ref13","_error$response9","_error$response10","_error$response10$dat","_context7","_x13","_x14","createErrorNotification","msg","message","type","ERROR","createSuccessNotification","SUCCESS","initialState","notifications","isLoading","authState","Checking","authenticationSlice","createSlice","name","reducers","setToken","state","_objectSpread","token","logoutSync","undefined","Unauthenticated","loggedInUser","dismissNotification","slice","clearNotifications","extraReducers","builder","addCase","fulfilled","rejected","action","_toConsumableArray","jwtToken","Authenticated","accountId","phone","accountType","created","isVerified","_payload$showVerifyEm","actions","AuthenticationReducer","reducer","axiosInstance","create","baseURL","interceptors","request","headers","Authorization","ApplicationStore","getState","authentication","error","originalRequest","_retry","url","Promise","reject","CommonType","StudyApiService","keywords","patch","studyId","study","get","StudyThunks","fetch","update","fetchMyStudies","_args4","length","getStudy","studyStateSlice","studies","myStudies","setKeyword","clearStudy","pending","ERROR_RESOURCE_GET","SUCCESS_RESOURCE_CREATE","ERROR_RESOURCE_CREATE","SUCCESS_RESOURCE_UPDATE","ERROR_RESOURCE_UPDATE","StudyActions","StudyReducer","CommonSliceName","CatalogueTypes","CommonApiService","conditionId","targetId","compoundId","CommonThunks","outcomes","proteinTargetings","species","condition","conditions","fetchConditions","target","targets","_callee8","_context8","fetchTargets","_callee9","_context9","compound","_callee10","_context10","compounds","_callee11","_context11","fetchCompounds","_callee12","_context12","contact","_callee13","_context13","commonStateSlice","outcome","proteinTargeting","pushErrorNotification","clearConditions","clearTargets","clearCompounds","_ref15","CommonActions","CommonReducer","ConfigSliceName","ValidationError","ConfigApiService","id","delete","ConfigThunks","getCatalogues","getCatalogue","updateCatalogue","catalogueId","getCatalogueEntries","getCatalogueEntry","createCatalogueEntry","updateCatalogueEntry","catalogueEntryId","deleteCatalogueEntry","_ref16","_x15","_x16","configStateSlice","catalogues","catalogueEntries","resetCatalogueEntry","catalogueEntry","catalogue","SUCCESS_RESOURCE_DELETE","ERROR_RESOURCE_DELETE","ConfigActions","ConfigReducer","ApplicationReducer","combineReducers","common","configureStore","devTools","useAppDispatch","useDispatch","lightTheme","createMuiTheme","palette","primary","main","secondary","background","default","shape","borderRadius","typography","fontFamily","LoadingComponent","_jsxs","Grid","container","direction","style","height","alignItems","spacing","children","_jsx","item","CircularProgress","color","size","Typography","variant","createStyleSheet","param","makeStyles","CoreSelectors","selectLoading","createSelector","useStyles","theme","display","flexDirection","logoToolbar","backgroundColor","minHeight","justifyContent","additionalLogo","logoSection","_defineProperty","textAlign","paddingRight","breakpoints","down","flex","navigationSection","hamburgerMenu","up","userInfo","navButton","rightPositionedNavButton","float","buttonIcon","marginRight","logo","padding","maxHeight","width","NavBar","useLocation","history","useHistory","styles","t","useTranslation","useSelector","_useState","useState","pathname","_useState2","_slicedToArray","currentLocation","setCurrentLocation","useEffect","_useState3","_useState4","isDrawerOpen","setIsDrawerOpen","toggleDrawer","open","event","key","_Fragment","AppBar","position","Toolbar","className","Button","startsWith","disableElevation","onClick","push","Admin","ExitToApp","Menu","src","alt","LinearProgress","marginTop","zIndex","React","Fragment","SwipeableDrawer","anchor","onClose","onOpen","List","ListItem","button","ListItemText","main_footer","bottom","gap","footer_item","cursor","Footer","LocaleService","_classCallCheck","_createClass","mainGrid","titleMain","marginBottom","borderBottomWidth","borderBottomStyle","borderBottomColor","svgIcons","fontSize","legend","image","maxWidth","objectFit","mobileAppBody","margin","Overview","Paper","square","Carousel","xs","sm","md","lg","itembox","Help","CheckCircle","Assignment","LocalHospital","Folder","Backup","Storage","Publish","ContactPhone","VpnKey","ImportContacts","Link","href","selectSelf","StudySelectors","selectKeywords","selectStudies","selectIsLoading","selectNotifications","selectMyStudies","selectStudy","ConfigSelectors","selectCatalogues","selectCatalogue","selectCatalogueEntries","selectCatalogueEntry","Studies","handleSubmit","useForm","onSubmitSearch","useCallback","getCatalogueLabel","_catalogues$find$labe","_catalogues$find","find","label","SearchBar","value","onChange","newValue","onRequestSearch","onCancelSearch","startIcon","Search","AgGridReact","rowData","AgGridColumn","headerName","field","filter","sortable","headerTooltip","resizable","tooltipField","valueFormatter","params","moment","format","Outcome","ProteinTargeting","Species","Catalogue","onRefreshCatalogues","Refresh","frameworkComponents","btnCellRenderer","props","cellRenderer","Validation","property","errors","_errors$property","errorText","_errors$property2","NotificationHandler","onDismiss","_ref$duration","duration","isOpen","setOpen","onCloseHandler","setTimeout","Snackbar","autoHideDuration","Alert","severity","elevation","actionButton","CatalogueDetails","useParams","catid","onRefreshCatalogueEntries","catalogueSchema","Joi","object","string","max","required","isRequired","boolean","_useForm","defaultValues","resolver","joiResolver","control","setValue","handleSave","newData","Object","entries","forEach","val","unwrap","handleDelete","window","confirm","then","onDismissNotification","e","console","log","Save","ArrowBack","Controller","defaultValue","render","onBlur","invalid","TextField","fullWidth","toErrorMessage","STRING_EMPTY","ns","STRING_MAX","len","FormControlLabel","Checkbox","checked","labelPlacement","AddCircle","CatalogueEntryPage","entryid","catalogueEntrySchema","number","custom","helpers","NUMBER_MIN","NUMBER_MAX","isDefault","isActive","assign","catEntry","NUMBER","min","AuthenticationSelectors","selectLoggedInUser","selectToken","selectAuthState","selectShowVerifyEmailComponent","selectShowResetPasswordComponent","TermsAndConditions","Disclaimer","root","media","Impressum","Card","CardActionArea","CardMedia","CardContent","gutterBottom","component","About","CommonSelectors","selectOutcomes","selectProteinTargetings","selectSpecies","selectCondition","selectConditions","selectTarget","selectTargets","selectCompound","selectCompounds","emptyCatalogue","studySubmitCriteria","warning","rootFormHelperText","marginLeft","SubmitStudy","_study$name2","searchTimeout","outcomeCatalogueData","useRef","proteinTargetingCatalogueData","speciesCatalogueData","userSchema","contactName","contactEmail","email","tlds","allow","completion","date","isPublished","link","when","is","current","not","isTissueAvailable","tissueType","outcomeMeasure","testGroupNumberOfAnimals","testGroupMeans","testGroupStandardDeviation","controlGroupNumberOfAnimals","controlGroupMeans","controlGroupStandardDeviation","watch","reset","entryId","_entries$find","getFirstDefaultCatalogueEntry","_entries$find2","handleInputValueChange","inputValue","commonType","clearTimeout","CONDITION","getConditionOptions","TARGET","getTargetOptions","COMPOUND","getCompoundOptions","getSelectOptionsByType","_study$name","_study$contactName","_study$contactEmail","_study$completion","_study$isPublished","_study$isTissueAvaila","_study$outcomeMeasure","_study$testGroupNumbe","_study$testGroupMeans","_study$testGroupStand","_study$controlGroupNu","_study$controlGroupMe","_study$controlGroupSt","outcomeId","proteinTargetingId","speciesId","_study$link","_study$tissueType","setFormElementValues","getCatalogueData","catalogueEntities","_catalogueEntities$fi","_currentCatalogue$cat","_currentCatalogue$lab","_currentCatalogue$isR","currentCatalogue","activeCatalogueEntries","catalogueEntity","_data$outcome","_data$proteinTargetin","_data$species","_data$condition$condi","_data$condition","_data$target$targetId","_data$target","_data$compound$compou","_data$compound","studyFormValue","renderRow","index","cloneElement","top","OuterElementContext","createContext","OuterElementType","forwardRef","ref","outerProps","useContext","ListboxComponent","other","_objectWithoutProperties","_excluded","itemData","Children","toArray","useTheme","smUp","useMediaQuery","noSsr","itemCount","itemSize","getChildSize","child","isValidElement","ListSubheader","gridRef","resetAfterIndex","useResetCache","Provider","VariableSizeList","map","reduce","a","b","outerElementType","innerElementType","overscanCount","overflowX","renderGroup","group","MuiPickersUtilsProvider","utils","DateFnsUtils","STRING_EMAIL","Date","DatePicker","inputVariant","openTo","views","Autocomplete","disableListWrap","getOptionLabel","option","_option$label","options","renderInput","renderOption","noWrap","OBJECT_BASE","INVALID_VALUE","_option$label2","_ref17","_ref18","_option$label3","_ref19","_ref20","_option$name","onInputChange","noOptionsText","_ref21","_ref22","_option$name2","_ref23","_ref24","_option$name3","_ref25","_ref26","_ref27","_ref28","_ref29","helperText","FormHelperTextProps","classes","_ref30","_ref31","_ref32","_ref33","_ref34","_ref35","_ref36","_ref37","_ref38","_ref39","_ref40","_ref41","disabled","ContactPage","captcha","setCaptcha","contactMessage","validateCaptcha","ERROR_CAPTCHA","loadCaptchaEnginge","multiline","rows","LoadCanvasTemplateNoReload","authenticationComponentStyles","_card","_cardTextInput","cardContainer","card","cardContent","cardHeader","cardBody","cardTextInput","Login","onSubmit","password","fontWeight","username","rules","SignUp","pattern","validate","VerifyEmail","verificationCode","code","align","ForgotPassword","ResetPassword","newPassword","MyStudies","ScrollToTop","scrollTo","ApplicationRouter","BrowserRouter","basename","process","Switch","Route","path","exact","Redirect","to","App","document","LuxonSettings","defaultLocale","locale","store","ThemeProvider","Suspense","fallback","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","StrictMode","getElementById"],"mappings":"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","file":"static/js/main.10e48773.chunk.js","sourcesContent":["import i18n from 'i18next';\r\nimport { initReactI18next } from 'react-i18next';\r\nimport Backend from 'i18next-http-backend';\r\n\r\ni18n\r\n .use(Backend)\r\n .use(initReactI18next)\r\n .init({\r\n fallbackLng: 'en',\r\n debug: false,\r\n backend: {\r\n loadPath: './locales/{{lng}}/{{ns}}.json'\r\n },\r\n interpolation: {\r\n escapeValue: false\r\n }\r\n });\r\n\r\n\r\nexport default i18n;\r\n","import { AuthUser } from '../../core/models/AuthUser';\r\nimport { AppNotification } from '../../core/models/notification';\r\n\r\nexport const AuthenticationSliceName = 'authentication';\r\n\r\nexport enum AccountType {\r\n User = 1,\r\n Admin = 2\r\n}\r\n\r\nexport enum AuthStateEnum {\r\n Checking,\r\n Authenticated,\r\n Unauthenticated\r\n}\r\n\r\nexport interface AuthenticationState {\r\n token?: string;\r\n loggedInUser?: AuthUser;\r\n isLoading: boolean;\r\n authState: AuthStateEnum;\r\n notifications: AppNotification[];\r\n stripeAccountStatus?: number;\r\n onboardingUrl?: string;\r\n showVerifyEmailComponent: boolean,\r\n showResetPasswordComponent: boolean\r\n}\r\n","export enum NotificationEnum {\r\n ERROR_RESOURCE_GET = 'error_resource_get',\r\n ERROR_RESOURCE_UPDATE = 'error_resource_update',\r\n ERROR_RESOURCE_CREATE = 'error_resource_create',\r\n ERROR_RESOURCE_DELETE = 'error_resource_delete',\r\n ERROR_SIGN_UP_FAILED = 'error_sign_up_failed',\r\n ERROR_LOGIN_FAILED = 'error_login_failed',\r\n ERROR_EMAIL_VERIFICATION_FAILED = 'error_email_verification_failed',\r\n ERROR_FORGOT_PASSWORD_FAILED = 'error_forgot_password_failed',\r\n ERROR_CAPTCHA = 'error_captcha',\r\n SUCCESS_RESOURCE_UPDATE = 'success_resource_update',\r\n SUCCESS_RESOURCE_DELETE = 'success_resource_delete',\r\n SUCCESS_RESOURCE_CREATE = 'success_resource_create'\r\n}\r\n","import {CreateStudy, Study} from '../../core/models/Study';\r\nimport { AppNotification } from '../../core/models/notification';\r\n\r\nexport const StudySliceName = 'studies';\r\n\r\nexport interface StudyState {\r\n keywords: string;\r\n isLoading: boolean;\r\n studies: Study[];\r\n myStudies: Study[];\r\n study?: null | CreateStudy;\r\n notifications: AppNotification[];\r\n}\r\n","import { version, config } from '../../package.json';\r\n\r\nexport const Environments = {\r\n // eslint-disable-next-line no-restricted-globals\r\n ApiUrl: `${location.protocol}//${location.hostname}${location.port ? ':' + location.port : ''}/api/api/`,\r\n // ApiUrl: `http://localhost:3333/api/`,\r\n title: `Pre-clinical Trials | v${version} (BUILD ${config.buildVersion})`\r\n}\r\n\r\n","import {\r\n AuthenticateWebRequestBody,\r\n AuthenticateWebResponseBody,\r\n ForgotPasswordWebRequestBody,\r\n ResetPasswordWebRequestBody,\r\n SignUpWebRequestBody,\r\n VerifyEmailWebRequestBody\r\n} from '../models/AuthenticationApi.model';\r\nimport { AxiosInstance } from './axios';\r\nimport {ApiResponse, ApiResponseBody} from '../models/ApiResponse';\r\n\r\nconst PATH = 'Auth'\r\n\r\nexport const AuthenticationApiService = {\r\n signUp: (data: SignUpWebRequestBody): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/SignUp`, data);\r\n },\r\n authenticate: (data: AuthenticateWebRequestBody): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/AuthenticateWeb`, data);\r\n },\r\n verifyEmail: (data: VerifyEmailWebRequestBody): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/VerifyEmail`, data);\r\n },\r\n forgotPassword: (data: ForgotPasswordWebRequestBody): ApiResponse> => {\r\n return AxiosInstance.post(`${PATH}/ForgotPassword`, data);\r\n },\r\n resetPassword: (data: ResetPasswordWebRequestBody): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/ResetPassword`, data);\r\n },\r\n refreshToken: (): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/RefreshToken`, {});\r\n },\r\n logout: (): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/LogOut`, {});\r\n }\r\n}\r\n","import { createAsyncThunk } from '@reduxjs/toolkit';\r\nimport {\r\n AuthenticateWebRequestBody,\r\n AuthenticateWebResponseBody,\r\n ForgotPasswordWebRequestBody,\r\n ResetPasswordWebRequestBody,\r\n SignUpWebRequestBody,\r\n VerifyEmailWebRequestBody\r\n} from '../../core/models/AuthenticationApi.model';\r\nimport { AuthenticationApiService } from '../../core/services/authentication.api.service';\r\nimport {AuthenticationSliceName} from './authentication.state';\r\nimport { AuthenticationActions } from './authentication.slice';\r\nimport axios from \"axios\";\r\nimport {NotificationEnum} from \"../../core/models/notification.enum\";\r\nimport {ApiResponseBody} from \"../../core/models/ApiResponse\";\r\n\r\nexport const AuthenticationThunks = {\r\n signUp: createAsyncThunk(`${AuthenticationSliceName}/signUp`,\r\n async (payload, {dispatch, rejectWithValue}) => {\r\n dispatch(AuthenticationActions.setLoading(true));\r\n try {\r\n const res = await AuthenticationApiService.signUp(payload);\r\n return res.data.result;\r\n } catch (error) {\r\n if (axios.isAxiosError(error) && error.response?.status === 403) {\r\n return rejectWithValue({notification: error.response?.data?.Message});\r\n }\r\n return rejectWithValue({notification: NotificationEnum.ERROR_SIGN_UP_FAILED});\r\n } finally {\r\n dispatch(AuthenticationActions.setLoading(false));\r\n }\r\n }),\r\n authenticate: createAsyncThunk(`${AuthenticationSliceName}/authenticate`,\r\n async (payload, {dispatch, rejectWithValue}) => {\r\n dispatch(AuthenticationActions.setLoading(true));\r\n try {\r\n const res = await AuthenticationApiService.authenticate(payload);\r\n return res.data.result;\r\n } catch (error) {\r\n if (axios.isAxiosError(error) && error.response?.status === 404) {\r\n dispatch(AuthenticationActions.showVerifyEmailComponent(true));\r\n\r\n return rejectWithValue({showVerifyEmailComponent: true, notification: error.response?.data?.Message});\r\n }\r\n\r\n return rejectWithValue({notification: NotificationEnum.ERROR_LOGIN_FAILED});\r\n } finally {\r\n dispatch(AuthenticationActions.setLoading(false));\r\n }\r\n }),\r\n verifyEmail: createAsyncThunk(`${AuthenticationSliceName}/verifyEmail`,\r\n async (payload, {dispatch, rejectWithValue}) => {\r\n dispatch(AuthenticationActions.setLoading(true));\r\n try {\r\n const res = await AuthenticationApiService.verifyEmail(payload);\r\n return res.data.result;\r\n } catch (error) {\r\n if (axios.isAxiosError(error) && error.response?.status === 404) {\r\n return rejectWithValue({notification: error.response?.data?.Message});\r\n }\r\n\r\n return rejectWithValue({notification: NotificationEnum.ERROR_EMAIL_VERIFICATION_FAILED});\r\n } finally {\r\n dispatch(AuthenticationActions.setLoading(false));\r\n }\r\n }),\r\n refreshToken: createAsyncThunk(`${AuthenticationSliceName}/refreshToken`,\r\n async (_, {dispatch, rejectWithValue}) => {\r\n dispatch(AuthenticationActions.setLoading(true));\r\n try {\r\n const res = await AuthenticationApiService.refreshToken();\r\n return res.data.result;\r\n } catch {\r\n return rejectWithValue({});\r\n } finally {\r\n dispatch(AuthenticationActions.setLoading(false));\r\n }\r\n }),\r\n logout: createAsyncThunk(`${AuthenticationSliceName}/logout`,\r\n async (_, {dispatch, rejectWithValue}) => {\r\n dispatch(AuthenticationActions.setLoading(true));\r\n try {\r\n await AuthenticationApiService.logout();\r\n } catch {\r\n return rejectWithValue({});\r\n } finally {\r\n dispatch(AuthenticationActions.setLoading(false));\r\n }\r\n }),\r\n forgotPassword: createAsyncThunk, ForgotPasswordWebRequestBody>(`${AuthenticationSliceName}/forgotPassword`,\r\n async (payload, {dispatch, rejectWithValue}) => {\r\n dispatch(AuthenticationActions.setLoading(true));\r\n try {\r\n const res = await AuthenticationApiService.forgotPassword(payload);\r\n dispatch(AuthenticationActions.showResetPasswordComponent(true));\r\n\r\n return res.data;\r\n } catch (error) {\r\n if (axios.isAxiosError(error) && error.response?.status === 404) {\r\n return rejectWithValue({notification: error.response?.data?.Message});\r\n }\r\n\r\n return rejectWithValue({notification: NotificationEnum.ERROR_FORGOT_PASSWORD_FAILED});\r\n } finally {\r\n dispatch(AuthenticationActions.setLoading(false));\r\n }\r\n }),\r\n resetPassword: createAsyncThunk(`${AuthenticationSliceName}/resetPassword`,\r\n async (payload, {dispatch, rejectWithValue}) => {\r\n dispatch(AuthenticationActions.setLoading(true));\r\n try {\r\n const res = await AuthenticationApiService.resetPassword(payload);\r\n return res.data.result;\r\n } catch (error) {\r\n if (axios.isAxiosError(error) && error.response?.status === 404) {\r\n return rejectWithValue({notification: error.response?.data?.Message});\r\n }\r\n\r\n return rejectWithValue({notification: NotificationEnum.ERROR_LOGIN_FAILED});\r\n } finally {\r\n dispatch(AuthenticationActions.setLoading(false));\r\n }\r\n }),\r\n}\r\n","export enum NotificationType {\r\n ERROR = 'error',\r\n WARNING ='warning',\r\n INFO = 'info',\r\n SUCCESS = 'success'\r\n}\r\n\r\nexport interface AppNotification {\r\n message: string;\r\n type: NotificationType;\r\n}\r\n\r\nexport const createErrorNotification: (msg: string) => AppNotification = (msg: string) => ({ message: msg, type: NotificationType.ERROR });\r\nexport const createWarningNotification: (msg: string) => AppNotification = (msg: string) => ({ message: msg, type: NotificationType.WARNING });\r\nexport const createInfoNotification: (msg: string) => AppNotification = (msg: string) => ({ message: msg, type: NotificationType.INFO });\r\nexport const createSuccessNotification: (msg: string) => AppNotification = (msg: string) => ({ message: msg, type: NotificationType.SUCCESS });\r\n","import { createSlice, PayloadAction } from '@reduxjs/toolkit';\r\nimport { AuthenticationThunks } from './authentication.thunks';\r\nimport { AuthenticationSliceName, AuthenticationState, AuthStateEnum } from './authentication.state';\r\nimport {createErrorNotification, createSuccessNotification} from '../../core/models/notification';\r\n\r\nconst initialState: AuthenticationState = {\r\n notifications: [],\r\n isLoading: false,\r\n authState: AuthStateEnum.Checking,\r\n showVerifyEmailComponent: false,\r\n showResetPasswordComponent: false,\r\n}\r\n\r\nconst authenticationSlice = createSlice({\r\n name: AuthenticationSliceName,\r\n initialState,\r\n reducers: {\r\n setToken: (state, {payload}: PayloadAction) => {\r\n return {...state, token: payload};\r\n },\r\n setLoading: (state, {payload}: PayloadAction) => {\r\n return {...state, isLoading: payload};\r\n },\r\n showVerifyEmailComponent: (state, {payload}: PayloadAction) => {\r\n return {...state, showVerifyEmailComponent: payload};\r\n },\r\n showResetPasswordComponent: (state, {payload}: PayloadAction) => {\r\n return {...state, showResetPasswordComponent: payload};\r\n },\r\n logoutSync: (state) => {\r\n return {\r\n ...state,\r\n token: undefined,\r\n authState: AuthStateEnum.Unauthenticated,\r\n loggedInUser: undefined\r\n }\r\n },\r\n dismissNotification: (state) => {\r\n return {\r\n ...state,\r\n notifications: state.notifications.slice(1)\r\n }\r\n },\r\n clearNotifications: (state) => {\r\n return {\r\n ...state,\r\n notifications: []\r\n }\r\n }\r\n },\r\n extraReducers: (builder => {\r\n builder\r\n .addCase(AuthenticationThunks.signUp.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n showVerifyEmailComponent: true,\r\n }\r\n })\r\n .addCase(AuthenticationThunks.signUp.rejected, (state, action) => {\r\n const payload: any = action?.payload;\r\n\r\n return {\r\n ...state,\r\n notifications: [...state.notifications, createErrorNotification(payload.notification)]\r\n }\r\n })\r\n .addCase(AuthenticationThunks.authenticate.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n token: payload.jwtToken,\r\n authState: AuthStateEnum.Authenticated,\r\n loggedInUser: {\r\n accountId: payload.accountId,\r\n name: payload.name,\r\n phone: payload.phone,\r\n accountType: payload.accountType,\r\n created: payload.created,\r\n isVerified: payload.isVerified\r\n }\r\n }\r\n })\r\n .addCase(AuthenticationThunks.authenticate.rejected, (state, action) => {\r\n const payload: any = action?.payload;\r\n\r\n return {\r\n ...state,\r\n showVerifyEmailComponent: payload.showVerifyEmailComponent ?? false,\r\n notifications: [...state.notifications, createErrorNotification(payload.notification)]\r\n }\r\n })\r\n .addCase(AuthenticationThunks.verifyEmail.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n token: payload.jwtToken,\r\n authState: AuthStateEnum.Authenticated,\r\n loggedInUser: {\r\n accountId: payload.accountId,\r\n name: payload.name,\r\n phone: payload.phone,\r\n accountType: payload.accountType,\r\n created: payload.created,\r\n isVerified: payload.isVerified\r\n }\r\n }\r\n })\r\n .addCase(AuthenticationThunks.verifyEmail.rejected, (state, action) => {\r\n const payload: any = action?.payload;\r\n\r\n return {\r\n ...state,\r\n notifications: [...state.notifications, createErrorNotification(payload.notification)]\r\n }\r\n })\r\n .addCase(AuthenticationThunks.refreshToken.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n token: payload.jwtToken,\r\n authState: AuthStateEnum.Authenticated,\r\n loggedInUser: {\r\n accountId: payload.accountId,\r\n name: payload.name,\r\n phone: payload.phone,\r\n accountType: payload.accountType,\r\n created: payload.created,\r\n isVerified: payload.isVerified\r\n }\r\n }\r\n })\r\n .addCase(AuthenticationThunks.refreshToken.rejected, (state, {payload}) => {\r\n return {\r\n ...state,\r\n token: undefined,\r\n authState: AuthStateEnum.Unauthenticated,\r\n loggedInUser: undefined\r\n }\r\n })\r\n .addCase(AuthenticationThunks.logout.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n authState: AuthStateEnum.Unauthenticated,\r\n token: undefined,\r\n loggedInUser: undefined\r\n }\r\n })\r\n .addCase(AuthenticationThunks.logout.rejected, (state, {payload}) => {\r\n return {\r\n ...state,\r\n authState: AuthStateEnum.Unauthenticated,\r\n token: undefined,\r\n loggedInUser: undefined\r\n }\r\n })\r\n .addCase(AuthenticationThunks.forgotPassword.fulfilled, (state, action) => {\r\n const payload: any = action?.payload;\r\n\r\n return {\r\n ...state,\r\n showResetPasswordComponent: true,\r\n notifications: [...state.notifications, createSuccessNotification(payload.message)]\r\n }\r\n })\r\n .addCase(AuthenticationThunks.forgotPassword.rejected, (state, action) => {\r\n const payload: any = action?.payload;\r\n\r\n return {\r\n ...state,\r\n notifications: [...state.notifications, createErrorNotification(payload.notification)]\r\n }\r\n })\r\n .addCase(AuthenticationThunks.resetPassword.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n token: payload.jwtToken,\r\n authState: AuthStateEnum.Authenticated,\r\n loggedInUser: {\r\n accountId: payload.accountId,\r\n name: payload.name,\r\n phone: payload.phone,\r\n accountType: payload.accountType,\r\n created: payload.created,\r\n isVerified: payload.isVerified\r\n }\r\n }\r\n })\r\n .addCase(AuthenticationThunks.resetPassword.rejected, (state, action) => {\r\n const payload: any = action?.payload;\r\n\r\n return {\r\n ...state,\r\n notifications: [...state.notifications, createErrorNotification(payload.notification)]\r\n }\r\n })\r\n })\r\n});\r\n\r\nexport const AuthenticationActions = {\r\n ...authenticationSlice.actions,\r\n ...AuthenticationThunks\r\n}\r\n\r\nexport const AuthenticationReducer = authenticationSlice.reducer;\r\n","import axios, { AxiosRequestConfig, AxiosResponse } from 'axios';\r\nimport { Environments } from '../../environments/environments';\r\nimport { ApplicationState, ApplicationStore } from '../state/store';\r\nimport { ApiResponseBody } from '../models/ApiResponse';\r\nimport { AuthenticateWebResponseBody } from '../models/AuthenticationApi.model';\r\nimport { AuthenticationActions } from '../../authentication/state/authentication.slice';\r\n\r\nconst axiosInstance = axios.create({\r\n baseURL: Environments.ApiUrl,\r\n});\r\n\r\naxiosInstance.interceptors.request.use((config: AxiosRequestConfig) => {\r\n config.headers.Authorization = 'Bearer ' + (ApplicationStore.getState() as ApplicationState).authentication.token;\r\n return config;\r\n});\r\n\r\naxiosInstance.interceptors.response.use((response: AxiosResponse) => response, async (error: any) => {\r\n\r\n const originalRequest = error.config;\r\n\r\n if (\r\n error.response.status === 401\r\n && !originalRequest._retry && originalRequest.url !== `Auth/RefreshToken`\r\n ) {\r\n const response: AxiosResponse> = await axiosInstance.post(`Auth/RefreshToken`, {});\r\n\r\n const data = response.data.result;\r\n\r\n ApplicationStore.dispatch(AuthenticationActions.setToken(data.jwtToken));\r\n\r\n originalRequest._retry = true;\r\n originalRequest.headers.Authorization = 'Bearer ' + data.jwtToken;\r\n\r\n return axios(originalRequest);\r\n\r\n } else if (error.response.status === 401 && originalRequest.url === `Auth/RefreshToken`) {\r\n ApplicationStore.dispatch(AuthenticationActions.logoutSync());\r\n }\r\n\r\n return Promise.reject(error);\r\n})\r\n\r\nexport const AxiosInstance = axiosInstance;\r\n","import { CatalogueEntry, Compound, Condition, Target } from '../../core/models/Common';\r\nimport { AppNotification } from '../../core/models/notification';\r\n\r\nexport const CommonSliceName = 'common';\r\n\r\nexport interface CommonState {\r\n isLoading: boolean;\r\n outcome: CatalogueEntry[];\r\n proteinTargeting: CatalogueEntry[];\r\n species: CatalogueEntry[];\r\n condition: Condition | null;\r\n conditions: Condition[];\r\n target: Target | null;\r\n targets: Target[];\r\n compound: Compound | null;\r\n compounds: Compound[];\r\n notifications: AppNotification[];\r\n}\r\n\r\nexport enum CommonType {\r\n CONDITION = 'condition',\r\n TARGET = 'target',\r\n COMPOUND = 'compound',\r\n}\r\n","import { ApiResponse } from '../models/ApiResponse';\r\nimport { AxiosInstance } from './axios';\r\nimport {CreateStudy, Study, UpdateStudyWebRequestBody} from '../models/Study';\r\n\r\nconst PATH = 'Study'\r\n\r\nexport const StudyApiService = {\r\n fetch: (keywords: string): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/Fetch`, {keywords});\r\n },\r\n\r\n createStudy: (data: Partial) => {\r\n return AxiosInstance.post(`${PATH}`, data);\r\n },\r\n\r\n updateStudy: (payload: UpdateStudyWebRequestBody) => {\r\n return AxiosInstance.patch(`${PATH}/${payload.studyId}`, payload.study);\r\n },\r\n\r\n fetchMyStudies: (keywords: string) => {\r\n return AxiosInstance.post(`${PATH}/MyStudies`, {keywords});\r\n },\r\n\r\n getStudy: (studyId: string) => {\r\n return AxiosInstance.get(`${PATH}/MyStudies/${studyId}`);\r\n },\r\n\r\n}\r\n","import { createAsyncThunk } from '@reduxjs/toolkit';\r\nimport { StudySliceName } from './study.state';\r\nimport {CreateStudy, Study, UpdateStudyWebRequestBody} from '../../core/models/Study';\r\nimport { StudyApiService } from '../../core/services/study.api.service';\r\n\r\nexport const StudyThunks = {\r\n\r\n fetch: createAsyncThunk(`${StudySliceName}/FetchStudies`,\r\n async (payload) => {\r\n const res = await StudyApiService.fetch(payload);\r\n return res.data.result;\r\n }),\r\n create: createAsyncThunk>(`${StudySliceName}/Create`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await StudyApiService.createStudy(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n update: createAsyncThunk(`${StudySliceName}/Update`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await StudyApiService.updateStudy(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n fetchMyStudies: createAsyncThunk(`${StudySliceName}/GetMyStudies`,\r\n async (payload = '', {rejectWithValue}) => {\r\n try{\r\n const res = await StudyApiService.fetchMyStudies(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n getStudy: createAsyncThunk(`${StudySliceName}/GetStudy`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await StudyApiService.getStudy(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n}\r\n","import { StudySliceName, StudyState } from './study.state';\r\nimport { createSlice, PayloadAction } from '@reduxjs/toolkit';\r\nimport { StudyThunks } from './study.thunk';\r\nimport { NotificationEnum } from '../../core/models/notification.enum';\r\nimport { createErrorNotification, createSuccessNotification } from '../../core/models/notification';\r\n\r\nconst initialState: StudyState = {\r\n isLoading: false,\r\n keywords: \"\",\r\n studies: [],\r\n myStudies: [],\r\n notifications: [],\r\n}\r\n\r\nconst studyStateSlice = createSlice({\r\n name: StudySliceName,\r\n initialState: initialState,\r\n reducers: {\r\n setLoading: (state, {payload}: PayloadAction) => {\r\n return {\r\n ...state,\r\n isLoading: payload\r\n };\r\n },\r\n setKeyword: (state, {payload}: PayloadAction) => {\r\n return {\r\n ...state,\r\n keywords: payload\r\n };\r\n },\r\n dismissNotification: (state) => {\r\n return {\r\n ...state,\r\n notifications: state.notifications.slice(1)\r\n }\r\n },\r\n clearNotifications: (state) => {\r\n return {\r\n ...state,\r\n notifications: []\r\n }\r\n },\r\n clearStudy: (state) => {\r\n return {\r\n ...state,\r\n study: null,\r\n }\r\n },\r\n },\r\n extraReducers: builder => {\r\n builder\r\n .addCase(StudyThunks.fetch.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n studies: []\r\n };\r\n })\r\n .addCase(StudyThunks.fetch.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n studies: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(StudyThunks.fetch.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_GET)]\r\n };\r\n })\r\n .addCase(StudyThunks.create.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createSuccessNotification(NotificationEnum.SUCCESS_RESOURCE_CREATE)]\r\n };\r\n })\r\n .addCase(StudyThunks.create.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_CREATE)]\r\n };\r\n })\r\n .addCase(StudyThunks.fetchMyStudies.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n myStudies: []\r\n };\r\n })\r\n .addCase(StudyThunks.fetchMyStudies.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n myStudies: payload,\r\n isLoading: false,\r\n };\r\n })\r\n .addCase(StudyThunks.fetchMyStudies.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n };\r\n })\r\n .addCase(StudyThunks.getStudy.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n study: payload,\r\n isLoading: false,\r\n };\r\n })\r\n .addCase(StudyThunks.getStudy.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_GET)]\r\n };\r\n })\r\n .addCase(StudyThunks.update.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createSuccessNotification(NotificationEnum.SUCCESS_RESOURCE_UPDATE)]\r\n };\r\n })\r\n .addCase(StudyThunks.update.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_UPDATE)]\r\n };\r\n })\r\n }\r\n});\r\n\r\nexport const StudyActions = {\r\n ...studyStateSlice.actions,\r\n ...StudyThunks\r\n}\r\n\r\nexport const StudyReducer = studyStateSlice.reducer;\r\n","import { ApiResponse } from '../models/ApiResponse';\r\nimport { AxiosInstance } from './axios';\r\nimport { CatalogueEntry, Compound, Condition, Contact, Target } from '../models/Common';\r\n\r\nconst PATH = 'Common'\r\n\r\nexport const CommonApiService = {\r\n getOutcomes: (): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Outcomes`);\r\n },\r\n\r\n getProteinTargetings: (): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/ProteinTargetings`);\r\n },\r\n\r\n getSpecies: (): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Species`);\r\n },\r\n\r\n getCondition: (conditionId: number): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Condition/${conditionId}`);\r\n },\r\n\r\n getConditions: (): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Conditions`);\r\n },\r\n\r\n fetchConditions: (keywords: string): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/FetchConditions`, {keywords});\r\n },\r\n\r\n getTarget: (targetId: number): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Target/${targetId}`);\r\n },\r\n\r\n getTargets: (): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Targets`);\r\n },\r\n\r\n fetchTargets: (keywords: string): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/FetchTargets`, {keywords});\r\n },\r\n\r\n getCompound: (compoundId: number): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Compound/${compoundId}`);\r\n },\r\n\r\n getCompounds: (): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Compounds`);\r\n },\r\n\r\n fetchCompounds: (keywords: string): ApiResponse => {\r\n return AxiosInstance.post(`${PATH}/FetchCompounds`, {keywords});\r\n },\r\n\r\n contact: (data: Partial) => {\r\n return AxiosInstance.post(`${PATH}/Contact`, data);\r\n },\r\n\r\n}\r\n","import { AppNotification } from '../../core/models/notification';\r\nimport { Catalogue, CatalogueEntry } from '../../core/models/Common';\r\n\r\nexport const ConfigSliceName = 'configuration';\r\n\r\nexport interface ConfigState {\r\n isLoading: boolean;\r\n catalogues: Catalogue[];\r\n catalogue?: Catalogue;\r\n catalogueEntries: CatalogueEntry[];\r\n catalogueEntry?: CatalogueEntry;\r\n notifications: AppNotification[];\r\n}\r\n\r\nexport enum CatalogueTypes {\r\n Outcome = 1,\r\n Species = 2,\r\n ProteinTargeting = 3,\r\n}\r\n","import { createAsyncThunk } from '@reduxjs/toolkit';\r\nimport { CommonSliceName } from './common.state';\r\nimport { CommonApiService } from '../../core/services/common.api.service';\r\nimport { CatalogueEntry, Compound, Condition, Contact, Target } from '../../core/models/Common';\r\n\r\nexport const CommonThunks = {\r\n\r\n outcomes: createAsyncThunk(`${CommonSliceName}/Outcomes`,\r\n async () => {\r\n const res = await CommonApiService.getOutcomes();\r\n return res.data.result;\r\n }),\r\n\r\n proteinTargetings: createAsyncThunk(`${CommonSliceName}/ProteinTargetings`,\r\n async () => {\r\n const res = await CommonApiService.getProteinTargetings();\r\n return res.data.result;\r\n }),\r\n\r\n species: createAsyncThunk(`${CommonSliceName}/Species`,\r\n async () => {\r\n const res = await CommonApiService.getSpecies();\r\n return res.data.result;\r\n }),\r\n\r\n condition: createAsyncThunk(`${CommonSliceName}/Condition`,\r\n async (conditionId: number) => {\r\n const res = await CommonApiService.getCondition(conditionId);\r\n return res.data.result;\r\n }),\r\n\r\n conditions: createAsyncThunk(`${CommonSliceName}/Conditions`,\r\n async () => {\r\n const res = await CommonApiService.getConditions();\r\n return res.data.result;\r\n }),\r\n\r\n fetchConditions: createAsyncThunk(`${CommonSliceName}/FetchConditions`,\r\n async (payload) => {\r\n const res = await CommonApiService.fetchConditions(payload);\r\n return res.data.result;\r\n }),\r\n\r\n target: createAsyncThunk(`${CommonSliceName}/Target`,\r\n async (targetId: number) => {\r\n const res = await CommonApiService.getTarget(targetId);\r\n return res.data.result;\r\n }),\r\n\r\n targets: createAsyncThunk(`${CommonSliceName}/Targets`,\r\n async () => {\r\n const res = await CommonApiService.getTargets();\r\n return res.data.result;\r\n }),\r\n\r\n fetchTargets: createAsyncThunk(`${CommonSliceName}/FetchTargets`,\r\n async (payload) => {\r\n const res = await CommonApiService.fetchTargets(payload);\r\n return res.data.result;\r\n }),\r\n\r\n compound: createAsyncThunk(`${CommonSliceName}/Compound`,\r\n async (compoundId: number) => {\r\n const res = await CommonApiService.getCompound(compoundId);\r\n return res.data.result;\r\n }),\r\n \r\n compounds: createAsyncThunk(`${CommonSliceName}/Compounds`,\r\n async () => {\r\n const res = await CommonApiService.getCompounds();\r\n return res.data.result;\r\n }),\r\n\r\n fetchCompounds: createAsyncThunk(`${CommonSliceName}/FetchCompounds`,\r\n async (payload) => {\r\n const res = await CommonApiService.fetchCompounds(payload);\r\n return res.data.result;\r\n }),\r\n\r\n contact: createAsyncThunk>(`${CommonSliceName}/Contact`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await CommonApiService.contact(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n })\r\n}\r\n","import { CommonSliceName, CommonState } from './common.state';\r\nimport { createSlice, PayloadAction } from '@reduxjs/toolkit';\r\nimport { CommonThunks } from './common.thunk';\r\nimport { NotificationEnum } from '../../core/models/notification.enum';\r\nimport { createErrorNotification, createSuccessNotification } from '../../core/models/notification';\r\n\r\nconst initialState: CommonState = {\r\n isLoading: false,\r\n outcome: [],\r\n proteinTargeting: [],\r\n species: [],\r\n condition: null,\r\n conditions: [],\r\n target: null,\r\n targets: [],\r\n compound: null,\r\n compounds: [],\r\n notifications: []\r\n}\r\n\r\nconst commonStateSlice = createSlice({\r\n name: CommonSliceName,\r\n initialState: initialState,\r\n reducers: {\r\n setLoading: (state, {payload}: PayloadAction) => {\r\n return {\r\n ...state,\r\n isLoading: payload\r\n };\r\n },\r\n pushErrorNotification: (state, {payload} : PayloadAction) => {\r\n return {\r\n ...state,\r\n notifications: [...state.notifications, createErrorNotification(payload)]\r\n }\r\n },\r\n dismissNotification: (state) => {\r\n return {\r\n ...state,\r\n notifications: state.notifications.slice(1)\r\n }\r\n },\r\n clearNotifications: (state) => {\r\n return {\r\n ...state,\r\n notifications: []\r\n }\r\n },\r\n clearConditions: (state) => {\r\n return {\r\n ...state,\r\n condition: null,\r\n conditions: [],\r\n }\r\n },\r\n clearTargets: (state) => {\r\n return {\r\n ...state,\r\n target: null,\r\n targets: [],\r\n }\r\n },\r\n clearCompounds: (state) => {\r\n return {\r\n ...state,\r\n compound: null,\r\n compounds: [],\r\n }\r\n }\r\n },\r\n extraReducers: builder => {\r\n builder\r\n .addCase(CommonThunks.outcomes.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n outcome: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.proteinTargetings.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n proteinTargeting: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.species.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n species: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.condition.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n condition: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.conditions.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n conditions: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.fetchConditions.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n conditions: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.target.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n target: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.targets.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n targets: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.fetchTargets.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n targets: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.compound.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n compound: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.compounds.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n compounds: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.fetchCompounds.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n compounds: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(CommonThunks.contact.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createSuccessNotification(NotificationEnum.SUCCESS_RESOURCE_CREATE)]\r\n };\r\n })\r\n .addCase(CommonThunks.contact.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_CREATE)]\r\n };\r\n })\r\n }\r\n});\r\n\r\nexport const CommonActions = {\r\n ...commonStateSlice.actions,\r\n ...CommonThunks\r\n}\r\n\r\nexport const CommonReducer = commonStateSlice.reducer;\r\n","import { ApiResponse } from '../models/ApiResponse';\r\nimport { AxiosInstance } from './axios';\r\nimport { Catalogue, CatalogueEntry } from '../models/Common';\r\n\r\nconst PATH = 'Configuration'\r\n\r\nexport const ConfigApiService = {\r\n getCatalogues: (): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Catalogues`);\r\n },\r\n getCatalogue: (id: string): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Catalogues/${id}`);\r\n },\r\n updateCatalogue: (id: number, data: Partial) => {\r\n return AxiosInstance.patch(`${PATH}/Catalogues/${id}`, data);\r\n },\r\n getCatalogueEntries: (id: string): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/Catalogues/${id}/Entries`);\r\n },\r\n getCatalogueEntry: (id: string): ApiResponse => {\r\n return AxiosInstance.get(`${PATH}/CatalogueEntries/${id}`);\r\n },\r\n createCatalogueEntry: (data: Partial) => {\r\n return AxiosInstance.post(`${PATH}/CatalogueEntries`, data);\r\n },\r\n updateCatalogueEntry: (id: number, data: Partial) => {\r\n return AxiosInstance.patch(`${PATH}/CatalogueEntries/${id}`, data);\r\n },\r\n deleteCatalogueEntry: (id: number) => {\r\n return AxiosInstance.delete(`${PATH}/CatalogueEntries/${id}`);\r\n },\r\n}\r\n","export interface SchemaErrors {\r\n [key: string]: {\r\n type: ValidationError,\r\n message: string\r\n }\r\n}\r\n\r\nexport class Validation {\r\n public static hasError(property: keyof T, error: ValidationError, errors: any): boolean {\r\n return errors[property]?.type === error;\r\n }\r\n\r\n public static toErrorMessage(property: keyof T, error: ValidationError, errors: any, errorText: string): string | null {\r\n return errors[property]?.type === error ? errorText : null;\r\n }\r\n}\r\n\r\nexport enum ValidationError {\r\n STRING_EMPTY = 'string.empty',\r\n STRING_EMAIL = 'string.email',\r\n STRING_MAX = 'string.max',\r\n STRING_PATTERN = 'string.pattern.base',\r\n NUMBER_MIN = 'number.min',\r\n NUMBER_MAX = 'number.max',\r\n NUMBER = 'number.base',\r\n OBJECT_BASE = 'object.base',\r\n INVALID_VALUE = 'any.invalid'\r\n}\r\n","import { createAsyncThunk } from '@reduxjs/toolkit';\r\nimport { ConfigSliceName } from './config.state';\r\nimport { ConfigApiService } from '../../core/services/config.api.service';\r\nimport { Catalogue, CatalogueEntry } from '../../core/models/Common';\r\n\r\nexport const ConfigThunks = {\r\n\r\n getCatalogues: createAsyncThunk(`${ConfigSliceName}/GetCatalogues`,\r\n async (_, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.getCatalogues();\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n getCatalogue: createAsyncThunk(`${ConfigSliceName}/GetCatalogue`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.getCatalogue(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n updateCatalogue: createAsyncThunk>(`${ConfigSliceName}/UpdateCatalogue`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.updateCatalogue(payload.catalogueId!, payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n getCatalogueEntries: createAsyncThunk(`${ConfigSliceName}/GetCatalogueEntries`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.getCatalogueEntries(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n getCatalogueEntry: createAsyncThunk(`${ConfigSliceName}/GetCatalogueEntry`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.getCatalogueEntry(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n createCatalogueEntry: createAsyncThunk>(`${ConfigSliceName}/CreateCatalogueEntry`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.createCatalogueEntry(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n\r\n \r\n }),\r\n updateCatalogueEntry: createAsyncThunk>(`${ConfigSliceName}/UpdateCatalogueEntry`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.updateCatalogueEntry(payload.catalogueEntryId!, payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n deleteCatalogueEntry: createAsyncThunk(`${ConfigSliceName}/DeleteCatalogueEntry`,\r\n async (payload, {rejectWithValue}) => {\r\n try{\r\n const res = await ConfigApiService.deleteCatalogueEntry(payload);\r\n return res.data.result;\r\n }\r\n catch {\r\n return rejectWithValue({});\r\n }\r\n }),\r\n}\r\n","import { ConfigSliceName, ConfigState } from './config.state';\r\nimport { createSlice, PayloadAction } from '@reduxjs/toolkit';\r\nimport { ConfigThunks } from './config.thunk';\r\nimport { NotificationEnum } from '../../core/models/notification.enum';\r\nimport { createErrorNotification, createSuccessNotification } from '../../core/models/notification';\r\n\r\nconst initialState: ConfigState = {\r\n isLoading: false,\r\n catalogues: [],\r\n catalogueEntries: [],\r\n notifications: []\r\n}\r\n\r\nconst configStateSlice = createSlice({\r\n name: ConfigSliceName,\r\n initialState: initialState,\r\n reducers: {\r\n setLoading: (state, {payload}: PayloadAction) => {\r\n return {\r\n ...state,\r\n isLoading: payload\r\n };\r\n },\r\n resetCatalogueEntry: (state) => {\r\n return {\r\n ...state,\r\n catalogueEntry: undefined\r\n }\r\n },\r\n\r\n dismissNotification: (state) => {\r\n return {\r\n ...state,\r\n notifications: state.notifications.slice(1)\r\n }\r\n },\r\n clearNotifications: (state) => {\r\n return {\r\n ...state,\r\n notifications: []\r\n }\r\n }\r\n },\r\n extraReducers: builder => {\r\n builder\r\n .addCase(ConfigThunks.getCatalogues.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n catalogues: []\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogues.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n catalogues: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogues.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_GET)]\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogue.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n catalogue: undefined\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogue.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n catalogue: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogue.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_GET)]\r\n };\r\n })\r\n .addCase(ConfigThunks.updateCatalogue.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true\r\n };\r\n })\r\n .addCase(ConfigThunks.updateCatalogue.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n catalogue: payload,\r\n isLoading: false,\r\n notifications: [...state.notifications, createSuccessNotification(NotificationEnum.SUCCESS_RESOURCE_UPDATE)]\r\n };\r\n })\r\n .addCase(ConfigThunks.updateCatalogue.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_UPDATE)]\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogueEntries.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n catalogueEntries: []\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogueEntries.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n catalogueEntries: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogueEntries.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_GET)]\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogueEntry.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n catalogueEntry: undefined\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogueEntry.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n catalogueEntry: payload,\r\n isLoading: false\r\n };\r\n })\r\n .addCase(ConfigThunks.getCatalogueEntry.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_GET)]\r\n };\r\n })\r\n .addCase(ConfigThunks.createCatalogueEntry.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true\r\n };\r\n })\r\n .addCase(ConfigThunks.createCatalogueEntry.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n catalogueEntry: payload,\r\n isLoading: false,\r\n notifications: [...state.notifications, createSuccessNotification(NotificationEnum.SUCCESS_RESOURCE_CREATE)]\r\n };\r\n })\r\n .addCase(ConfigThunks.createCatalogueEntry.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_CREATE)]\r\n };\r\n })\r\n .addCase(ConfigThunks.updateCatalogueEntry.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true\r\n };\r\n })\r\n .addCase(ConfigThunks.updateCatalogueEntry.fulfilled, (state, {payload}) => {\r\n return {\r\n ...state,\r\n catalogueEntry: payload,\r\n isLoading: false,\r\n notifications: [...state.notifications, createSuccessNotification(NotificationEnum.SUCCESS_RESOURCE_UPDATE)]\r\n };\r\n })\r\n .addCase(ConfigThunks.updateCatalogueEntry.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_UPDATE)]\r\n };\r\n })\r\n .addCase(ConfigThunks.deleteCatalogueEntry.pending, (state) => {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n catalogueEntry: undefined\r\n };\r\n })\r\n .addCase(ConfigThunks.deleteCatalogueEntry.fulfilled, (state) => {\r\n return {\r\n ...state,\r\n catalogueEntry: undefined,\r\n isLoading: false,\r\n notifications: [...state.notifications, createSuccessNotification(NotificationEnum.SUCCESS_RESOURCE_DELETE)]\r\n };\r\n })\r\n .addCase(ConfigThunks.deleteCatalogueEntry.rejected, (state) => {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n notifications: [...state.notifications, createErrorNotification(NotificationEnum.ERROR_RESOURCE_DELETE)]\r\n };\r\n })\r\n \r\n }\r\n});\r\n\r\nexport const ConfigActions = {\r\n ...configStateSlice.actions,\r\n ...ConfigThunks\r\n}\r\n\r\nexport const ConfigReducer = configStateSlice.reducer;\r\n","import { combineReducers } from 'redux';\r\nimport { configureStore } from '@reduxjs/toolkit';\r\nimport { StudyState } from '../../study/state/study.state';\r\nimport { StudyReducer } from '../../study/state/study.slice';\r\nimport { CommonState } from '../../common/state/common.state';\r\nimport { CommonReducer } from '../../common/state/common.slice';\r\nimport { useDispatch } from 'react-redux';\r\nimport { AuthenticationState } from '../../authentication/state/authentication.state';\r\nimport { AuthenticationReducer } from '../../authentication/state/authentication.slice';\r\nimport { ConfigState } from '../../config/state/config.state';\r\nimport { ConfigReducer } from '../../config/state/config.slice';\r\n\r\nexport interface ApplicationState {\r\n study: StudyState;\r\n common: CommonState;\r\n authentication: AuthenticationState;\r\n config: ConfigState;\r\n}\r\n\r\nconst ApplicationReducer = combineReducers({\r\n study: StudyReducer,\r\n common: CommonReducer,\r\n authentication: AuthenticationReducer,\r\n config: ConfigReducer,\r\n});\r\n\r\nexport const ApplicationStore = configureStore({\r\n reducer: ApplicationReducer,\r\n devTools: true\r\n});\r\n\r\nexport const useAppDispatch = () => useDispatch();\r\n\r\n","import { unstable_createMuiStrictModeTheme as createMuiTheme } from '@material-ui/core';\r\n\r\nexport const lightTheme = createMuiTheme({\r\n palette: {\r\n primary: {\r\n main: '#0C3C60'\r\n },\r\n secondary: {\r\n main: '#6EA4CA',\r\n },\r\n background: {\r\n default: '#F5F5F5'\r\n }\r\n },\r\n shape: {\r\n borderRadius: 4\r\n },\r\n typography: {\r\n fontFamily: 'Roboto'\r\n }\r\n});\r\n","import React from 'react';\r\nimport { CircularProgress, Grid, Typography } from '@material-ui/core';\r\n\r\nconst LoadingComponent = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Loading...\r\n \r\n \r\n )\r\n}\r\n\r\nexport default LoadingComponent;\r\n","import { Theme } from '@material-ui/core';\r\nimport { CSSProperties } from 'react';\r\nimport { makeStyles } from '@material-ui/styles';\r\n\r\n/**\r\n * Note: Use this instead of makeStyles to obtain proper CSS autocompletion\r\n */\r\n\r\nexport const createStyleSheet:\r\n (param: (theme: Theme) => CSSProperties | { [key: string]: CSSProperties })\r\n => any = (param: (theme: Theme) => CSSProperties | { [key: string]: CSSProperties }) => makeStyles(param as any);\r\n\r\n","import { ApplicationState } from './store';\r\nimport { createSelector } from '@reduxjs/toolkit';\r\n\r\nconst selectSelf = (state: ApplicationState) => state;\r\n\r\nexport const CoreSelectors = {\r\n selectLoading: createSelector(selectSelf, state =>\r\n state.study.isLoading\r\n ),\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { AppBar, Button, LinearProgress, List, ListItem, ListItemText, SwipeableDrawer, Toolbar, Typography } from '@material-ui/core';\r\nimport { useHistory, useLocation } from 'react-router-dom';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { createStyleSheet } from '../utils/theming';\r\nimport {useDispatch, useSelector} from 'react-redux';\r\nimport { CoreSelectors } from '../state/selectors';\r\nimport { Menu } from '@material-ui/icons';\r\nimport { ExitToApp } from '@material-ui/icons';\r\nimport {AuthenticationActions} from \"../../authentication/state/authentication.slice\";\r\nimport { AccountType } from '../../authentication/state/authentication.state';\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n container: {\r\n display: 'flex',\r\n flexDirection: 'row'\r\n },\r\n logoToolbar: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n backgroundColor: '#FBFAFD',\r\n height: 16,\r\n minHeight: 48,\r\n alignItems: 'center',\r\n justifyContent: 'space-evenly'\r\n },\r\n additionalLogo: {\r\n height: 24\r\n },\r\n logoSection: {\r\n textAlign: 'center',\r\n paddingRight: 20,\r\n [theme.breakpoints.down('sm')]: {\r\n flex: 1,\r\n },\r\n },\r\n navigationSection: {\r\n flex: 1,\r\n [theme.breakpoints.down('sm')]: {\r\n display: 'none',\r\n },\r\n },\r\n hamburgerMenu: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n userInfo: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center'\r\n },\r\n navButton: {\r\n height: 72\r\n },\r\n rightPositionedNavButton: {\r\n height: 72,\r\n float: \"right\",\r\n },\r\n buttonIcon: {\r\n marginRight: 5,\r\n },\r\n logo: {\r\n padding: 5,\r\n display: 'block',\r\n maxHeight: 45,\r\n width: 'auto',\r\n height: 'auto',\r\n }\r\n}));\r\n\r\ninterface NavBarProps {\r\n loggedInUser?: any;\r\n}\r\n\r\nconst NavBar = ({loggedInUser}: NavBarProps) => {\r\n const location = useLocation();\r\n const history = useHistory();\r\n const styles = useStyles();\r\n const dispatch = useDispatch();\r\n const {t} = useTranslation('navbar');\r\n const isLoading = useSelector(CoreSelectors.selectLoading);\r\n const [currentLocation, setCurrentLocation] = useState(location.pathname);\r\n\r\n useEffect(() => {\r\n setCurrentLocation(location.pathname);\r\n }, [location, setCurrentLocation]);\r\n\r\n const [isDrawerOpen, setIsDrawerOpen] = useState(false);\r\n\r\n const toggleDrawer = (open: boolean) => (\r\n event: React.KeyboardEvent | React.MouseEvent,\r\n ) => {\r\n if (\r\n event &&\r\n event.type === 'keydown' &&\r\n ((event as React.KeyboardEvent).key === 'Tab' ||\r\n (event as React.KeyboardEvent).key === 'Shift')\r\n ) {\r\n return;\r\n }\r\n \r\n setIsDrawerOpen(open);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n
\r\n

Pre-Clinicaltrials.Org

\r\n
\r\n
\r\n history.push('/main')}\r\n className={styles.navButton}\r\n >\r\n \r\n {t('label_main')}\r\n \r\n \r\n history.push('/studies')}\r\n className={styles.navButton}\r\n >\r\n \r\n {t('label_studies')}\r\n \r\n \r\n { loggedInUser && loggedInUser.name &&\r\n history.push('/my-studies')}\r\n className={styles.navButton}\r\n >\r\n \r\n {t('label_my_studies')}\r\n \r\n \r\n }\r\n history.push('/submit')}\r\n className={styles.navButton}\r\n >\r\n \r\n {t('label_submit')}\r\n \r\n \r\n history.push('/about')}\r\n className={styles.navButton}\r\n >\r\n \r\n {t('label_about')}\r\n \r\n \r\n history.push('/contact')}\r\n className={styles.navButton}\r\n >\r\n \r\n {t('label_contact')}\r\n \r\n \r\n {\r\n loggedInUser && loggedInUser.accountType === AccountType.Admin && <>\r\n history.push('/catalogue')}\r\n className={styles.navButton}\r\n >\r\n \r\n {t('label_configuration')}\r\n \r\n \r\n \r\n }\r\n \r\n {\r\n loggedInUser && loggedInUser.name ? <>\r\n dispatch(AuthenticationActions.logout())}\r\n className={styles.rightPositionedNavButton}\r\n >\r\n \r\n \r\n {t('label_logout')}\r\n \r\n \r\n :\r\n history.push('/login')}\r\n className={styles.rightPositionedNavButton}\r\n >\r\n \r\n {t('label_login')}\r\n \r\n \r\n }\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \"repotrial\"/\r\n
\r\n
\r\n \"repotrial\"/\r\n
\r\n
\r\n {\r\n (isLoading) &&\r\n \r\n }\r\n \r\n \r\n \r\n \r\n \r\n history.push('/main')}/>\r\n \r\n \r\n history.push('/studies')}/>\r\n \r\n { loggedInUser && loggedInUser.name &&\r\n \r\n history.push('/my-studies')}/>\r\n \r\n }\r\n \r\n history.push('/submit')}/>\r\n \r\n \r\n history.push('/about')}/>\r\n \r\n \r\n history.push('/contact')}/>\r\n \r\n { loggedInUser && loggedInUser.name &&\r\n \r\n history.push('/catalogue')}/>\r\n \r\n }\r\n \r\n {\r\n loggedInUser && loggedInUser.name ? <>\r\n dispatch(AuthenticationActions.logout())}/>\r\n :\r\n history.push('/login')}/>\r\n }\r\n \r\n \r\n \r\n \r\n
\r\n \r\n )\r\n}\r\n\r\nexport default NavBar;\r\n","import { useHistory } from 'react-router-dom';\r\nimport { createStyleSheet } from '../utils/theming';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nconst useStyles = createStyleSheet(() => ({\r\n main_footer: {\r\n backgroundColor: \"#0C3C60\",\r\n color: \"white\",\r\n position: 'relative',\r\n textAlign: \"center\",\r\n bottom: 0,\r\n width: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n gap: '30px',\r\n padding: '10px 0px'\r\n },\r\n footer_item: {\r\n cursor: 'pointer'\r\n }\r\n}));\r\n\r\nconst Footer = () => {\r\n\r\n\r\n const styles = useStyles();\r\n const history = useHistory();\r\n const { t } = useTranslation('navbar');\r\n\r\n return (\r\n\r\n\r\n
\r\n
history.push('/terms')}>{t('label_terms')}
\r\n
history.push('/disclaimer')}>{t('label_disclaimer')}
\r\n
history.push('/impressum')}>{t('label_impressum')}
\r\n
\r\n )\r\n}\r\n\r\n\r\n\r\nexport default Footer;","export class LocaleService {\r\n public static get locale() {\r\n return 'en';\r\n }\r\n}\r\n","import { createStyleSheet } from '../../core/utils/theming';\r\nimport {\r\n Assignment,\r\n Backup,\r\n CheckCircle,\r\n ContactPhone,\r\n Folder,\r\n Help,\r\n ImportContacts,\r\n LocalHospital,\r\n Publish,\r\n Storage,\r\n VpnKey\r\n} from '@material-ui/icons';\r\nimport { Grid, Link, Paper } from \"@material-ui/core\";\r\nimport Carousel from 'react-material-ui-carousel';\r\n\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mainGrid: {\r\n textAlign: 'center'\r\n },\r\n titleMain: {\r\n marginBottom: 20,\r\n borderBottomWidth: 4,\r\n borderBottomStyle: 'solid',\r\n borderBottomColor: '#0C3C60'\r\n },\r\n svgIcons: {\r\n fontSize: 50\r\n },\r\n legend: {\r\n textAlign: 'center'\r\n },\r\n image: {\r\n maxWidth: '100%',\r\n height: '46vh',\r\n objectFit: 'cover'\r\n },\r\n mobileAppBody: {\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n\r\n}));\r\n\r\nconst Overview = () => {\r\n const styles = useStyles();\r\n\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n \r\n \"\"\r\n

An initiative and service from and for pre-clinical\r\n scientists

\r\n
\r\n \r\n \"\"\r\n

Inspired by ClinicalTrials.gov

\r\n
\r\n \r\n \"\"\r\n

Inspired by ClinicalTrials.gov

\r\n
\r\n \r\n \"\"\r\n

Inspired by ClinicalTrials.gov

\r\n
\r\n \r\n \"\"\r\n

Inspired by ClinicalTrials.gov

\r\n
\r\n \r\n \"\"\r\n

Inspired by ClinicalTrials.gov

\r\n
\r\n
\r\n
\r\n \r\n

\r\n For the press patients and the general public\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Why this site?\r\n

\r\n
\r\n \r\n

\r\n About 60% of all biomedical literature, including animal experiments, is not\r\n reproducible, yet pre-clinical basic research represents a scientific basis to identify\r\n disease mechanisms, new drugs and diagnostics. Moreover, negative drug validation data\r\n are often not published, i.e. there is a bias to publish accidentally positive data.\r\n This fact together with irreproducibility and poor analysis impact later success to\r\n achieve patient benefit. Our way forward is to focus on animal experiments, enable\r\n sharing of also negative data and collaboration on pooled data, samples and reagents.\r\n For the moment, this site focuses only on those animal experiments aimed at identifying\r\n disease mechanisms, new disease diagnostics and new therapies.\r\n

\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n Success stories\r\n

\r\n
\r\n \r\n

\r\n Several landmark studies have shown the utility of re-analysing pre-existing studies and\r\n small pilot data to identify positive publication bias and to validate a previous claim\r\n on disease mechanisms, diagnostics or therapeutics. The methods are quite similar to\r\n what is done in re-analysing clinical patient data, but so far is the exception in\r\n pre-clinical research.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n Learn about pre-clinical research\r\n

\r\n
\r\n \r\n

\r\n Pre-clinical research, in particular in animal models of disease, has two functions,\r\n i.e., to first generate new diagnostic or therapeutic hypotheses (exploratory trials)\r\n and to then confirm these hypotheses and convert them into reproducible knowledge\r\n (confirmatory trials). Such pre-clinical evidence can then be the basis for clinical\r\n studies and drug development.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n The 3Rs\r\n

\r\n
\r\n \r\n

\r\n The Three Rs (3Rs) in animal research are ethical guidelines to ensure maximal respect\r\n while performing animal experimentation. Specifically, the goal of the 3R Principle is\r\n to avoid animal experiments when other options are possible (Replacement), to limit the\r\n number of animals (Reduction) and their suffering (Refinement) in tests to an absolute\r\n minimum using methods that minimize any potential pain, suffering or distress.\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n

\r\n For Preclinical Researchers\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n What data is relevant?\r\n

\r\n
\r\n \r\n

\r\n In-vivo animal data in all animals used for animal experimentation on disease targets,\r\n drugs or new mechanism-based diagnostics in validated animal models of human diseases.\r\n In addition to published data, in particular negative pilot data are of interest, which\r\n would otherwise not have been published.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n How to submit data?\r\n

\r\n
\r\n \r\n

\r\n Data are submitted as a study, irrespective of how few animals were tested. Key elements\r\n include species, modelling which human disease (use ICD), target gene/protein (e.g. for\r\n knock-outs or knock-ins) or drug class (based on protein target). All data will receive\r\n a submission ID for use with journals and funding agencies to document timely data\r\n storage.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n How to submit biobank sample?\r\n

\r\n
\r\n \r\n

\r\n When submitting data, you can also indicate whether biobanked samples are available.\r\n This allows other researchers to collaborate with you, e.g., to rapidly test a biomarker\r\n in a disease model without the lengthy process of establishing this disease model\r\n themselves and wasting animals.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n Procedures\r\n

\r\n
\r\n \r\n

\r\n An unlimited hold may be put on deposited data if IP is to be secured.\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n

\r\n For Publishers and Funders\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Why publish and fund only registered studies?\r\n

\r\n
\r\n \r\n

\r\n Publishers and funders have the greatest responsibility in preventing publication bias.\r\n By requiring that any study that is to be published in a journal or funded by a research\r\n grant had been registered before in pre-clinicaltrials.org they can indirectly ensure\r\n that also negative data will later be added and accessible.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n How to engage\r\n

\r\n
\r\n \r\n

\r\n Editors can engage with us on their preferred procedures on trial registration and\r\n documentation. Currently, we provide one unique study identifier for each deposited\r\n independent dataset.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n About the results database?\r\n

\r\n
\r\n \r\n

\r\n The results database serves as a central place to store and match pre-clinical\r\n experiments as well as biobank repositories.\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n Open access\r\n

\r\n
\r\n \r\n

\r\n We consider that providing free online access to research data is the most effective way\r\n of ensuring that the results of sacrificing animals and public funding can be accessed,\r\n read and used as the basis for further research and clinical translation. In that\r\n respect we fully support the guidelines of the European Research Council:\r\n

\r\n \r\n {'Click here'}\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 Overview;\r\n","import { ApplicationState } from '../../core/state/store';\r\nimport { createSelector } from '@reduxjs/toolkit';\r\n\r\nconst selectSelf = (state: ApplicationState) => state.study;\r\n\r\nexport const StudySelectors = {\r\n selectKeywords: createSelector(selectSelf, state => state.keywords),\r\n selectStudies: createSelector(selectSelf, state => state.studies),\r\n selectIsLoading: createSelector(selectSelf, state => state.isLoading),\r\n selectNotifications: createSelector(selectSelf, state => state.notifications),\r\n selectMyStudies: createSelector(selectSelf, state => state.myStudies),\r\n selectStudy: createSelector(selectSelf, state => state.study),\r\n}\r\n","import { ApplicationState } from '../../core/state/store';\r\nimport { createSelector } from '@reduxjs/toolkit';\r\n\r\nconst selectSelf = (state: ApplicationState) => state.config;\r\n\r\nexport const ConfigSelectors = {\r\n selectCatalogues: createSelector(selectSelf, state => state.catalogues),\r\n selectCatalogue: createSelector(selectSelf, state => state.catalogue),\r\n selectCatalogueEntries: createSelector(selectSelf, state => state.catalogueEntries),\r\n selectCatalogueEntry: createSelector(selectSelf, state => state.catalogueEntry),\r\n selectIsLoading: createSelector(selectSelf, state => state.isLoading),\r\n selectNotifications: createSelector(selectSelf, state => state.notifications)\r\n}\r\n","import {AgGridColumn, AgGridReact} from 'ag-grid-react';\r\nimport {useTranslation} from 'react-i18next';\r\nimport 'ag-grid-community/dist/styles/ag-grid.css';\r\nimport 'ag-grid-community/dist/styles/ag-theme-alpine.css';\r\nimport {Button, Grid, Paper, Typography} from '@material-ui/core';\r\nimport SearchBar from \"material-ui-search-bar\";\r\nimport {Search} from '@material-ui/icons';\r\nimport {useForm} from 'react-hook-form';\r\nimport {useSelector} from 'react-redux';\r\nimport {StudySelectors} from '../state/study.selectors';\r\nimport {useCallback, useEffect} from 'react';\r\nimport {useAppDispatch} from '../../core/state/store';\r\nimport {StudyActions} from '../state/study.slice';\r\nimport moment from 'moment'\r\nimport {createStyleSheet} from \"../../core/utils/theming\";\r\nimport {ConfigSelectors} from \"../../config/state/config.selectors\";\r\nimport {CatalogueTypes} from \"../../config/state/config.state\";\r\nimport {ConfigActions} from \"../../config/state/config.slice\";\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst Studies = () => {\r\n const dispatch = useAppDispatch();\r\n const { t } = useTranslation('studies');\r\n const { handleSubmit } = useForm();\r\n const keywords = useSelector(StudySelectors.selectKeywords);\r\n const studies = useSelector(StudySelectors.selectStudies);\r\n const styles = useStyles();\r\n const catalogues = useSelector(ConfigSelectors.selectCatalogues);\r\n\r\n useEffect(() => {\r\n dispatch(ConfigActions.getCatalogues());\r\n }, [dispatch]);\r\n\r\n const onSubmitSearch = useCallback(() => {\r\n dispatch(StudyActions.fetch(keywords));\r\n }, [dispatch, keywords])\r\n\r\n const dateFormatter = (params: any) => {\r\n return moment(params.value).format('MMMM YYYY');\r\n };\r\n\r\n function getCatalogueLabel(catalogueId: CatalogueTypes): string {\r\n if (catalogues.length === 0) return '';\r\n\r\n return catalogues.find(catalogue => catalogue.catalogueId === catalogueId)?.label ?? '';\r\n }\r\n\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n {t('studies_title')}\r\n \r\n \r\n \r\n \r\n dispatch(StudyActions.setKeyword(newValue))}\r\n onRequestSearch={() => dispatch(StudyActions.setKeyword(keywords))}\r\n onCancelSearch={() => dispatch(StudyActions.setKeyword(''))}\r\n />\r\n \r\n \r\n }\r\n >{t('button_search')}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\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 Studies;\r\n","import 'ag-grid-community/dist/styles/ag-grid.css';\r\nimport 'ag-grid-community/dist/styles/ag-theme-alpine.css';\r\nimport { Button, Grid, Paper, Typography } from '@material-ui/core';\r\nimport { createStyleSheet } from \"../../core/utils/theming\";\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useForm } from 'react-hook-form';\r\nimport {useCallback, useEffect} from 'react';\r\nimport {useAppDispatch} from '../../core/state/store';\r\nimport {Refresh} from '@material-ui/icons';\r\nimport {AgGridColumn, AgGridReact} from 'ag-grid-react';\r\nimport {useSelector} from 'react-redux';\r\nimport {ConfigSelectors} from '../state/config.selectors';\r\nimport {ConfigActions} from '../state/config.slice';\r\nimport {useHistory} from 'react-router-dom';\r\n\r\nconst useStyles = createStyleSheet(() => ({}));\r\n\r\nconst Catalogue = () => {\r\n const styles = useStyles();\r\n const {t} = useTranslation('config');\r\n const {handleSubmit} = useForm();\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n const catalogues = useSelector(ConfigSelectors.selectCatalogues);\r\n\r\n useEffect(() => {\r\n dispatch(ConfigActions.getCatalogues());\r\n }, [dispatch]);\r\n\r\n const onRefreshCatalogues = useCallback(() => {\r\n dispatch(ConfigActions.getCatalogues());\r\n }, [dispatch])\r\n\r\n const gridActionCellRenderer = (props: any) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n };\r\n\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n {t('catalogue_title')}\r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n >{t('button_refresh')}\r\n \r\n \r\n \r\n \r\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 Catalogue;","import React, { useCallback, useEffect, useState } from 'react';\r\nimport { Alert } from '@material-ui/lab';\r\nimport { AppNotification } from '../models/notification';\r\nimport { Snackbar } from '@material-ui/core';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\ninterface NotificationHandlerProps {\r\n notification?: AppNotification;\r\n onDismiss: () => void;\r\n duration?: number\r\n}\r\n\r\nconst NotificationHandler = ({notification, onDismiss, duration = 3000}: NotificationHandlerProps) => {\r\n\r\n const [isOpen, setOpen] = useState(false);\r\n const {t} = useTranslation('notifications');\r\n\r\n const onCloseHandler = useCallback(() => {\r\n setOpen(false);\r\n setTimeout(() => {\r\n onDismiss();\r\n }, 100);\r\n }, [onDismiss]);\r\n\r\n useEffect(() => {\r\n setOpen(!!notification);\r\n }, [notification, setOpen])\r\n\r\n return (\r\n \r\n \r\n {t(notification?.message || '')}\r\n \r\n \r\n )\r\n}\r\n\r\nexport default NotificationHandler;\r\n","import 'ag-grid-community/dist/styles/ag-grid.css';\r\nimport 'ag-grid-community/dist/styles/ag-theme-alpine.css';\r\nimport { Button, Checkbox, FormControlLabel, Grid, Paper, TextField, Typography} from '@material-ui/core';\r\nimport { createStyleSheet } from \"../../core/utils/theming\";\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Controller, useForm } from 'react-hook-form';\r\nimport { useCallback, useEffect } from 'react';\r\nimport { useAppDispatch } from '../../core/state/store';\r\nimport {AddCircle, ArrowBack, Refresh, Save} from '@material-ui/icons';\r\nimport { AgGridColumn, AgGridReact } from 'ag-grid-react';\r\nimport { useSelector } from 'react-redux';\r\nimport { ConfigSelectors } from '../state/config.selectors';\r\nimport { ConfigActions } from '../state/config.slice';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport { Validation, ValidationError } from '../../core/utils/validation';\r\nimport Joi from 'joi';\r\nimport { Catalogue } from '../../core/models/Common';\r\nimport { joiResolver } from '@hookform/resolvers/joi';\r\nimport NotificationHandler from '../../core/components/NotificationHandler';\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody: {\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n },\r\n actionButton: {\r\n marginRight: 5\r\n }\r\n}));\r\n\r\nconst CatalogueDetails = () => {\r\n const styles = useStyles();\r\n const params = useParams<{ catid: string }>();\r\n const { t } = useTranslation(['config', 'validation']);\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n const catalogue = useSelector(ConfigSelectors.selectCatalogue);\r\n const catalogueEntries = useSelector(ConfigSelectors.selectCatalogueEntries);\r\n const notifications = useSelector(ConfigSelectors.selectNotifications);\r\n\r\n useEffect(() => {\r\n dispatch(ConfigActions.getCatalogue(params.catid));\r\n }, [dispatch, params]);\r\n\r\n const onRefreshCatalogueEntries = useCallback(() => {\r\n dispatch(ConfigActions.getCatalogueEntries(params.catid));\r\n }, [dispatch, params])\r\n\r\n const catalogueSchema = Joi.object({\r\n label: Joi.string().max(80).required(),\r\n isRequired: Joi.boolean()\r\n })\r\n\r\n const { control, handleSubmit, errors } = useForm({\r\n defaultValues: {},\r\n resolver: joiResolver(catalogueSchema)\r\n });\r\n\r\n useEffect(() => {\r\n if (catalogue) {\r\n control.setValue('label', catalogue?.label);\r\n control.setValue('isRequired', catalogue?.isRequired);\r\n }\r\n dispatch(ConfigActions.getCatalogueEntries(params.catid));\r\n }, [dispatch, catalogue, control, params]);\r\n\r\n const handleSave = useCallback((data: Catalogue) => {\r\n let newData: { [key: string]: any } = {\"catalogueId\" : catalogue?.catalogueId};\r\n Object.entries(data).forEach(([key, val]) => (newData[key] = val !== '' ? val : null));\r\n\r\n dispatch(ConfigActions.updateCatalogue(newData)).unwrap();\r\n }, [dispatch, catalogue]);\r\n\r\n const handleDelete = useCallback((id: number) => {\r\n if (window.confirm(t('confirm_catalogue_entry_deletion'))) {\r\n dispatch(ConfigActions.deleteCatalogueEntry(id)).unwrap()\r\n .then(() => {\r\n dispatch(ConfigActions.getCatalogueEntries(params.catid));\r\n });\r\n }\r\n }, [dispatch, params, t]);\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(ConfigActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(ConfigActions.clearNotifications());\r\n }\r\n }, [dispatch]);\r\n\r\n const gridActionCellRenderer = (props: any) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n };\r\n\r\n return (\r\n\r\n \r\n \r\n \r\n \r\n {t('catalogue_details_title')}\r\n \r\n \r\n \r\n \r\n

1. {t('catalogue_fields')}

\r\n
\r\n \r\n console.log(e))}\r\n startIcon={}\r\n >{t('button_save')}\r\n \r\n \r\n { history.push('/catalogue'); }}\r\n startIcon={}\r\n >{t('button_back')}\r\n \r\n
\r\n \r\n\r\n {/* #### label INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {Validation\r\n .toErrorMessage('label', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('label', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 80\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n\r\n {/* #### IsRequired INPUT #### */}\r\n \r\n \r\n \r\n { onChange(event.target.checked) }} />}\r\n label={t('isRequired')}\r\n labelPlacement=\"end\"\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n

2. {t('catalogue_entries')}

\r\n
\r\n \r\n { history.push(`/catalogue/${params.catid}/newentry`); }}\r\n startIcon={}\r\n >{t('button_create')}\r\n \r\n \r\n }\r\n >{t('button_refresh')}\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\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 CatalogueDetails;","import 'ag-grid-community/dist/styles/ag-grid.css';\r\nimport 'ag-grid-community/dist/styles/ag-theme-alpine.css';\r\nimport {Button, Checkbox, FormControlLabel, Grid, Paper, TextField, Typography} from '@material-ui/core';\r\nimport { createStyleSheet } from \"../../core/utils/theming\";\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Controller, useForm } from 'react-hook-form';\r\nimport { useCallback, useEffect } from 'react';\r\nimport { useAppDispatch } from '../../core/state/store';\r\nimport { ArrowBack, Save } from '@material-ui/icons';\r\nimport { useSelector } from 'react-redux';\r\nimport { ConfigSelectors } from '../state/config.selectors';\r\nimport { ConfigActions } from '../state/config.slice';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport { Validation, ValidationError } from '../../core/utils/validation';\r\nimport Joi from 'joi';\r\nimport { CatalogueEntry } from '../../core/models/Common';\r\nimport { joiResolver } from '@hookform/resolvers/joi';\r\nimport NotificationHandler from '../../core/components/NotificationHandler';\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody: {\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst CatalogueEntryPage = () => {\r\n const styles = useStyles();\r\n const params = useParams<{ catid?: string, entryid?: string}>();\r\n const { t } = useTranslation(['config', 'validation']);\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n const notifications = useSelector(ConfigSelectors.selectNotifications);\r\n const catalogueEntry = useSelector(ConfigSelectors.selectCatalogueEntry);\r\n\r\n useEffect(() => {\r\n if (params.entryid) {\r\n dispatch(ConfigActions.getCatalogueEntry(params.entryid));\r\n }\r\n }, [dispatch, params]);\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(ConfigActions.clearNotifications());\r\n }\r\n }, [dispatch]);\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(ConfigActions.resetCatalogueEntry());\r\n } \r\n }, [dispatch]);\r\n\r\n const catalogueEntrySchema = Joi.object({\r\n label: Joi.string().max(80).required(),\r\n position: Joi.number().required()\r\n .custom((val, helpers) => {\r\n if (!val && +val !== 0) {\r\n return val;\r\n } else if (+val <= 0) {\r\n return helpers.error(ValidationError.NUMBER_MIN);\r\n } else if (+val >= 100) {\r\n return helpers.error(ValidationError.NUMBER_MAX);\r\n }\r\n\r\n return val;\r\n }),\r\n isDefault: Joi.boolean(),\r\n isActive: Joi.boolean()\r\n })\r\n\r\n const { control, handleSubmit, errors } = useForm({\r\n defaultValues: {},\r\n resolver: joiResolver(catalogueEntrySchema)\r\n });\r\n\r\n useEffect(() => {\r\n if (catalogueEntry) {\r\n control.setValue('label', catalogueEntry?.label);\r\n control.setValue('position', catalogueEntry?.position);\r\n control.setValue('isDefault', catalogueEntry?.isDefault);\r\n control.setValue('isActive', catalogueEntry?.isActive);\r\n }\r\n\r\n }, [catalogueEntry, control]);\r\n\r\n const handleSave = useCallback((data: CatalogueEntry) => {\r\n let newData: { [key: string]: any } = { \r\n \"catalogueId\": +params?.catid!\r\n };\r\n if (params?.entryid)\r\n {\r\n Object.assign(newData, {\"catalogueEntryId\": +params?.entryid!});\r\n }\r\n\r\n Object.entries(data).forEach(([key, val]) => (newData[key] = val !== '' ? val : null));\r\n console.log(newData)\r\n \r\n if (params?.entryid) {\r\n dispatch(ConfigActions.updateCatalogueEntry(newData)).unwrap();\r\n }\r\n else {\r\n dispatch(ConfigActions.createCatalogueEntry(newData)).unwrap()\r\n .then(\r\n (catEntry) => {\r\n history.push(`/catalogue/${params?.catid}/entry/${catEntry?.catalogueEntryId}`)}\r\n )\r\n }\r\n }, [dispatch, params, history]);\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(ConfigActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n\r\n return (\r\n\r\n \r\n \r\n \r\n \r\n {t('catalogue_entry_title')}\r\n \r\n \r\n \r\n \r\n

1. {t('catalogue_fields')}

\r\n
\r\n \r\n console.log(e))}\r\n startIcon={}\r\n >{t('button_save')}\r\n \r\n \r\n history.push(`/catalogue/${params?.catid}`)}\r\n startIcon={}\r\n >{t('button_back')}\r\n \r\n
\r\n \r\n\r\n {/* #### label INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('label', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('label', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 80\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n\r\n {/* #### position INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('position', ValidationError.NUMBER, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('position', ValidationError.NUMBER_MIN, errors, t('largerThan', {\r\n ns: 'validation',\r\n min: 0\r\n })) ||\r\n Validation\r\n .toErrorMessage('position', ValidationError.NUMBER_MAX, errors, t('lowerThan', {\r\n ns: 'validation',\r\n max: 100\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### isDefault INPUT #### */}\r\n \r\n \r\n \r\n { onChange(event.target.checked) }} />}\r\n label={t('isDefault')}\r\n labelPlacement=\"end\"\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {/* #### isActive INPUT #### */}\r\n \r\n \r\n \r\n { onChange(event.target.checked) }} />}\r\n label={t('isActive')}\r\n labelPlacement=\"end\"\r\n />\r\n }\r\n />\r\n \r\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 CatalogueEntryPage;","import { ApplicationState } from '../../core/state/store';\r\nimport { createSelector } from '@reduxjs/toolkit';\r\n\r\nconst selectSelf = (state: ApplicationState) => state.authentication;\r\n\r\nexport const AuthenticationSelectors = {\r\n selectLoggedInUser: createSelector(selectSelf, state => state.loggedInUser),\r\n selectLoading: createSelector(selectSelf, state => state.isLoading),\r\n selectToken: createSelector(selectSelf, state => state.token),\r\n selectAuthState: createSelector(selectSelf, state => state.authState),\r\n selectNotifications: createSelector(selectSelf, state => state.notifications),\r\n selectShowVerifyEmailComponent: createSelector(selectSelf, state => state.showVerifyEmailComponent),\r\n selectShowResetPasswordComponent: createSelector(selectSelf, state => state.showResetPasswordComponent),\r\n}\r\n","import { Grid, Paper, Typography } from \"@material-ui/core\";\r\nimport { useTranslation } from 'react-i18next';\r\nimport { createStyleSheet } from \"../../core/utils/theming\";\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst TermsAndConditions = () => {\r\n const { t } = useTranslation('navbar');\r\n const styles = useStyles();\r\n\r\n\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n {t('label_terms')}\r\n \r\n\r\n

Introduction

\r\n\r\n

\r\n The following Terms and Conditions apply for use of Pre-ClinicalTrials.org data. Downloading Pre-ClinicalTrials.org data indicates your acceptance of the following Terms and Conditions. These Terms and Conditions apply to all data obtained from Pre-ClinicalTrials.org, independent of format and method of acquisition.\r\n

\r\n\r\n

Purpose of Pre-ClinicalTrials.org Database

\r\n\r\n

\r\n The Pre-ClinicalTrials.org Consortium has developed Pre-ClinicalTrials.org based on the clinical pendant, ClinicalTrials.gov, to provide researchers and members of the public current information about pre-clinical research studies. Pre-ClinicalTrials.org contains summary information about pre-clinical studies being conducted throughout Europe and in many countries throughout the world. These data are provided to the Pre-ClinicalTrials.org Consortium by registered researchers to support excellence and transparancy in biomedical science. You should check Pre-ClinicalTrials.org frequently for updated information.\r\n

\r\n\r\n

Availability of Data

\r\n\r\n

\r\n Pre-ClinicalTrials.org data are available to all registered requesters, both within and outside Europe, at no charge.\r\n

\r\n\r\n

Use of Pre-ClinicalTrials.org Data

\r\n\r\n

\r\n Pre-ClinicalTrials.org Consortium makes nowarranties, expressed or implied, with respect to data contained in the database, and, furthermore, assumes no liability for any party's use, or the results of such use, of any part of the database.\r\n

\r\n\r\n
    \r\n
  • Attribute the source of the data as Pre-ClinicalTrials.org
  • \r\n
  • Update the data such that they are current at all times
  • \r\n
  • Clearly display the date on which the data were processed by Pre-ClinicalTrials.org
  • \r\n
  • State any modifications made to the content of the data, along with a complete description of the modifications
  • \r\n
\r\n\r\n

\r\n You shall not assert any proprietary rights to any portion of the database, or represent the database or any part thereof to anyone as other than a Pre-ClinicalTrials.org database.\r\n

\r\n

\r\n You shall not use any email addresses extracted from our database for marketing, promotional or any other purposes.\r\n

\r\n

\r\n The Pre-ClinicalTrials.org data carry an international copyright outside Europe. Some Pre-ClinicalTrials.org data may be subject to the copyright of third parties; you should consult these entities for any additional terms of use.\r\n

\r\n

\r\n These terms and conditions are in effect as long as the user retains any of the data obtained from Pre-ClinicalTrials.org.\r\n

\r\n\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\n\r\n\r\nexport default TermsAndConditions;","import { Grid, Paper, Typography } from \"@material-ui/core\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { createStyleSheet } from \"../../core/utils/theming\";\r\n\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst Disclaimer = () => {\r\n const {t} = useTranslation('navbar');\r\n const styles = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {t('label_disclaimer')}\r\n \r\n\r\n

Endorsement Disclaimer — Links to Other Sites

\r\n\r\n

\r\n Our Web site has links to other resources and organisations. You are subject to that site's privacy policy when you leave our site. We aim to comply with accessibility regulations, but we cannot be responsible for compliance (accessibility) on other Web sites. Reference in this Web site to any specific commercial products, process, service, manufacturer, or company does not constitute its endorsement or recommendation by the Pre-ClinicalTrials.org Consortium. We are not responsible for the contents of any \"off-site\" Web page referenced from this server.\r\n

\r\n\r\n

Endorsement Disclaimer — Pop-Up Advertisements

\r\n\r\n

\r\n When visiting our Web site, your Web browser may produce pop-up advertisements. These advertisements were most likely produced by other Web sites you visited or by third party software installed on your computer. The Pre-ClinicalTrials.org Consortium does not endorse or recommend products or services for which you may view a pop-up advertisement on your computer screen while visiting our site.\r\n

\r\n\r\n

Information Disclaimer

\r\n\r\n

\r\n The information provided using this Web site is only intended to be general summary information to the public, and upon registration and approval as a member, for research purposes. It is not intended to take the place of peer-reviewed research.\r\n

\r\n\r\n

\r\n It is not the Pre-ClinicalTrials.org Consortium’s intention to provide specific advice to users, instead we provide users with information to help them better interpret their research data. We urge users to consult with a qualified statistician or epidemiologist to conduct meta-analyses. Press releases and other materials meant for public use will not be posted to the Pre-ClinicalTrials.org Web site unless they were developed by or for the Pre-ClinicalTrials.org Website and this initiative itself.\r\n

\r\n\r\n

Intrusion Detection

\r\n\r\n

\r\n This site is maintained by the Pre-ClinicalTrials.org Consortium. It is protected by various provisions. Violations are subject to criminal prosecution.\r\n

\r\n\r\n

\r\n For site security purposes and to ensure that this service remains available to all users, we employ software programs to monitor traffic to identify unauthorized attempts to upload or change information, or otherwise cause damage. In the event of authorized law enforcement investigations, and pursuant to any required legal process, information from these sources may be used to help identify an individual.\r\n

\r\n \r\n\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Disclaimer;","import { createStyleSheet } from '../../core/utils/theming';\r\n\r\nimport { Card, CardActionArea, CardContent, CardMedia, Grid, Paper, Typography } from \"@material-ui/core\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n root: {\r\n width: 300,\r\n height: '100%'\r\n },\r\n media: {\r\n height: 500,\r\n },\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst Impressum = () => {\r\n\r\n const { t } = useTranslation('navbar');\r\n const styles = useStyles();\r\n\r\n return (\r\n \r\n \r\n {t('label_impressum')}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Harald H.H.W. Schmidt\r\n \r\n \r\n Maastricht University / CARIM & MIAS\r\n \r\n \r\n Dept. of Pharmacology, Prof of Pharmacology and Drug Discovery\r\n \r\n \r\n P.O. Box 616, 6200 MD Maastricht\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n Contact\r\n \r\n \r\n Tel.: +31 43 388 1421\r\n \r\n \r\n Tel.: (mobile): +31 6 46705510\r\n \r\n \r\n Fax: +31 43 388 4149\r\n \r\n \r\n E-Mail: h​.​schmidt​@​​maastricht​university​.​nl\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Jan Baumbach\r\n \r\n \r\n Chair of Experimental Bioinformatics\r\n \r\n \r\n TUM School of Life Sciences Weihenstephan\r\n \r\n \r\n Technical University of Munich\r\n \r\n \r\n Maximus-von-Imhof-Forum 3\r\n \r\n \r\n 85354 Freising-Weihenstephan\r\n \r\n \r\n Germany\r\n \r\n
\r\n
\r\n \r\n Contact\r\n \r\n \r\n Tel.: +49-8161-71-2136\r\n \r\n \r\n E-Mail: jan.baumbach@wzw.tum.de\r\n \r\n \r\n Website: www.baumbachlab.net\r\n \r\n
\r\n\r\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 Impressum;","import { Grid, Paper, Typography } from \"@material-ui/core\";\r\nimport { useTranslation } from 'react-i18next';\r\nimport { createStyleSheet } from \"../../core/utils/theming\";\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst About = () => {\r\n const { t } = useTranslation('navbar');\r\n const styles = useStyles();\r\n\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n {t('label_about')}\r\n \r\n\r\n

Pre-clinical studies

\r\n\r\n

\r\n Exploratory pre-clinical studies generate new hypotheses, typically in animal models of disease; confirmatory pre-clinical studies confirm (or reject) these hypothesis and convert them into reproducible knowledge that can then be the basis for further clinical research and development.\r\n

\r\n\r\n

Our vision and mission

\r\n\r\n

\r\n Pre-clinicalTrials.org provides unprecedented tools to enhance the validity of pre-clinical research, its reproducibility and later success rate with respect to clinical translation.\r\n

\r\n

\r\n We do so by enabling meta-analyses through providing access to hitherto unpublished and inaccessible data and combining them, if desired, with Big Data of different evidence levels.\r\n

\r\n\r\n

History

\r\n\r\n

\r\n 2016: Pre-ClinicalTrials.org Consortium formed, website initiated\r\n

\r\n\r\n

Literature

\r\n\r\n
    \r\n
  • Kleinschnitz et al. NOS knockout or inhibition but not disrupting PSD-95-NOS interaction protect against ischemic brain damage. Journal of Cerebral Blood Flow & Metabolism. SAGE Publications; 2016 Jun 28;:0271678X16657094.
  • \r\n
  • Kleikers et al. A combined pre-clinical meta-analysis and randomized confirmatory trial approach to improve data validity for therapeutic target validation. Sci Rep. 2014 Dec 31;5:13428–8.
  • \r\n
  • Llovera & Liesz. The next step in translational research: lessons learned from the first preclinical randomized controlled trial. J Neurochem. 2016 Mar 10
  • \r\n
  • Llovera et al. Results of a preclinical randomized controlled multicentre trial (pRCT): Anti-CD49d treatment for acute brain ischemia. Sci Transl Med. American Association for the Advancement of Science; 2015 Aug 5;7(299):299ra121–1.
  • \r\n
\r\n\r\n

Policies

\r\n\r\n

\r\n Membership is regulated in a Memorandum of Understanding (latest version from October 2016). Further regulations are detailed in the Terms & Conditions section.\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 About;","import { ApplicationState } from '../../core/state/store';\r\nimport { createSelector } from '@reduxjs/toolkit';\r\n\r\nconst selectSelf = (state: ApplicationState) => state.common;\r\n\r\nexport const CommonSelectors = {\r\n selectOutcomes: createSelector(selectSelf, state => state.outcome),\r\n selectProteinTargetings: createSelector(selectSelf, state => state.proteinTargeting),\r\n selectSpecies: createSelector(selectSelf, state => state.species),\r\n selectCondition: createSelector(selectSelf, state => state.condition),\r\n selectConditions: createSelector(selectSelf, state => state.conditions),\r\n selectTarget: createSelector(selectSelf, state => state.target),\r\n selectTargets: createSelector(selectSelf, state => state.targets),\r\n selectCompound: createSelector(selectSelf, state => state.compound),\r\n selectCompounds: createSelector(selectSelf, state => state.compounds),\r\n selectIsLoading: createSelector(selectSelf, state => state.isLoading),\r\n selectNotifications: createSelector(selectSelf, state => state.notifications)\r\n}\r\n","export interface Catalogue {\r\n catalogueId: number | null;\r\n label: string | null;\r\n isRequired: boolean | null;\r\n catalogueEntries: CatalogueEntry[] | [];\r\n}\r\n\r\nexport const emptyCatalogue: Catalogue = {\r\n catalogueId: null,\r\n label: null,\r\n isRequired: null,\r\n catalogueEntries: [],\r\n}\r\n\r\nexport interface CatalogueEntry {\r\n catalogueEntryId: number;\r\n catalogueId: number;\r\n label: string;\r\n position: string;\r\n isDefault: boolean;\r\n isActive: boolean;\r\n}\r\n\r\nexport interface Condition {\r\n conditionId: number;\r\n name: string;\r\n description: string;\r\n externalId: string;\r\n}\r\n\r\nexport interface Compound {\r\n compoundId: number;\r\n name: string;\r\n description: string;\r\n externalId: string;\r\n}\r\n\r\nexport interface Target {\r\n targetId: number;\r\n name: string;\r\n description: string;\r\n externalId: string;\r\n}\r\n\r\nexport interface Contact {\r\n contactName: string;\r\n contactEmail: string;\r\n contactMessage: string;\r\n}","import {\r\n Button,\r\n Checkbox,\r\n FormControlLabel,\r\n Grid,\r\n ListSubheader,\r\n Paper,\r\n TextField,\r\n Typography,\r\n useMediaQuery,\r\n useTheme,\r\n} from \"@material-ui/core\";\r\nimport {DatePicker, MuiPickersUtilsProvider} from \"@material-ui/pickers\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport DateFnsUtils from '@date-io/date-fns';\r\nimport React, {useCallback, useEffect, useRef} from \"react\";\r\nimport {CommonActions} from \"../../common/state/common.slice\";\r\nimport {CommonSelectors} from '../../common/state/common.selectors';\r\nimport {useAppDispatch} from \"../../core/state/store\";\r\nimport {useSelector} from \"react-redux\";\r\nimport {Controller, useForm} from \"react-hook-form\";\r\nimport {CreateStudy} from \"../../core/models/Study\";\r\nimport {joiResolver} from '@hookform/resolvers/joi';\r\nimport Joi from 'joi';\r\nimport {Validation, ValidationError} from '../../core/utils/validation';\r\nimport {StudyActions} from \"../state/study.slice\";\r\nimport NotificationHandler from '../../core/components/NotificationHandler';\r\nimport {StudySelectors} from \"../state/study.selectors\";\r\nimport Autocomplete, {AutocompleteRenderGroupParams} from '@material-ui/lab/Autocomplete';\r\nimport {ListChildComponentProps, VariableSizeList} from 'react-window';\r\nimport {Catalogue, CatalogueEntry, Compound, Condition, emptyCatalogue, Target} from \"../../core/models/Common\";\r\nimport {AuthenticationSelectors} from \"../../authentication/state/authentication.selectors\";\r\nimport {useParams} from \"react-router-dom\";\r\nimport {ConfigSelectors} from \"../../config/state/config.selectors\";\r\nimport {ConfigActions} from \"../../config/state/config.slice\";\r\nimport {createStyleSheet} from \"../../core/utils/theming\";\r\nimport {CommonType} from \"../../common/state/common.state\";\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n },\r\n studySubmitCriteria: {\r\n color: theme.palette.warning.main,\r\n marginTop: 15\r\n },\r\n rootFormHelperText: {\r\n marginLeft: 0,\r\n marginTop: 4,\r\n marginRight: 0,\r\n },\r\n}));\r\n\r\nconst SubmitStudy = () => {\r\n const { t } = useTranslation(['studies', 'validation']);\r\n const dispatch = useAppDispatch();\r\n const outcomes = useSelector(CommonSelectors.selectOutcomes)\r\n const proteinTargetings = useSelector(CommonSelectors.selectProteinTargetings)\r\n const species = useSelector(CommonSelectors.selectSpecies)\r\n const condition = useSelector(CommonSelectors.selectCondition)\r\n const conditions = useSelector(CommonSelectors.selectConditions)\r\n const target = useSelector(CommonSelectors.selectTarget)\r\n const targets = useSelector(CommonSelectors.selectTargets)\r\n const compounds = useSelector(CommonSelectors.selectCompounds)\r\n const compound = useSelector(CommonSelectors.selectCompound)\r\n const notifications = useSelector(StudySelectors.selectNotifications);\r\n const loggedInUser = useSelector(AuthenticationSelectors.selectLoggedInUser);\r\n const study = useSelector(StudySelectors.selectStudy);\r\n const styles = useStyles();\r\n const params = useParams<{ studyId?: string }>();\r\n const catalogues = useSelector(ConfigSelectors.selectCatalogues);\r\n const outcomeCatalogueData = useRef(emptyCatalogue);\r\n const proteinTargetingCatalogueData = useRef(emptyCatalogue);\r\n const speciesCatalogueData = useRef(emptyCatalogue);\r\n var searchTimeout: NodeJS.Timeout;\r\n\r\n const userSchema = Joi.object({\r\n name: Joi.string().max(80).required(),\r\n contactName: Joi.string().max(80).required(),\r\n contactEmail: Joi.string().email({ tlds: { allow: false } }).required(),\r\n completion: Joi.date(),\r\n isPublished: Joi.boolean(),\r\n link: Joi.when('isPublished', { is: true, then: Joi.string().max(2000).required() }),\r\n outcome: outcomeCatalogueData.current.isRequired ? Joi.object().required().not({}) : Joi.object().allow({}, null),\r\n proteinTargeting: proteinTargetingCatalogueData.current.isRequired ? Joi.object().required().not({}) : Joi.object().allow({}, null),\r\n species: speciesCatalogueData.current.isRequired ? Joi.object().required().not({}) : Joi.object().allow({}, null),\r\n condition: Joi.object().allow('', null, {}),\r\n target: Joi.object().allow('', null, {}),\r\n compound: Joi.object().allow('', null, {}),\r\n isTissueAvailable: Joi.boolean(),\r\n tissueType: Joi.when('isTissueAvailable', { is: true, then: Joi.string().max(2000).required() }),\r\n outcomeMeasure: Joi.string().max(80),\r\n testGroupNumberOfAnimals: Joi.number().allow('', null)\r\n .custom((val, helpers) => {\r\n if (!val && +val !== 0) {\r\n return val;\r\n } else if (+val <= 0) {\r\n return helpers.error(ValidationError.NUMBER_MIN);\r\n } else if (+val >= 100000) {\r\n return helpers.error(ValidationError.NUMBER_MAX);\r\n }\r\n\r\n return val;\r\n }),\r\n testGroupMeans: Joi.number().allow('', null)\r\n .custom((val, helpers) => {\r\n if (!val && +val !== 0) {\r\n return val;\r\n } else if (+val <= 0) {\r\n return helpers.error(ValidationError.NUMBER_MIN);\r\n } else if (+val >= 100000) {\r\n return helpers.error(ValidationError.NUMBER_MAX);\r\n }\r\n\r\n return val;\r\n }),\r\n testGroupStandardDeviation: Joi.number().allow('', null)\r\n .custom((val, helpers) => {\r\n if (!val && +val !== 0) {\r\n return val;\r\n } else if (+val <= 0) {\r\n return helpers.error(ValidationError.NUMBER_MIN);\r\n } else if (+val >= 100000) {\r\n return helpers.error(ValidationError.NUMBER_MAX);\r\n }\r\n\r\n return val;\r\n }),\r\n controlGroupNumberOfAnimals: Joi.number().allow( '', null)\r\n .custom((val, helpers) => {\r\n if (!val && +val !== 0) {\r\n return val;\r\n } else if (+val <= 0) {\r\n return helpers.error(ValidationError.NUMBER_MIN);\r\n } else if (+val >= 100000) {\r\n return helpers.error(ValidationError.NUMBER_MAX);\r\n }\r\n\r\n return val;\r\n }),\r\n controlGroupMeans: Joi.number().allow('', null)\r\n .custom((val, helpers) => {\r\n if (!val && +val !== 0) {\r\n return val;\r\n } else if (+val <= 0) {\r\n return helpers.error(ValidationError.NUMBER_MIN);\r\n } else if (+val >= 100000) {\r\n return helpers.error(ValidationError.NUMBER_MAX);\r\n }\r\n\r\n return val;\r\n }),\r\n controlGroupStandardDeviation: Joi.number().allow( '', null)\r\n .custom((val, helpers) => {\r\n if (!val && +val !== 0) {\r\n return val;\r\n } else if (+val <= 0) {\r\n return helpers.error(ValidationError.NUMBER_MIN);\r\n } else if (+val >= 100000) {\r\n return helpers.error(ValidationError.NUMBER_MAX);\r\n }\r\n\r\n return val;\r\n }),\r\n })\r\n\r\n const { control, watch, handleSubmit, errors, reset } = useForm({\r\n defaultValues: {},\r\n resolver: joiResolver(userSchema)\r\n });\r\n\r\n useEffect(() => {\r\n dispatch(ConfigActions.getCatalogues());\r\n dispatch(CommonActions.outcomes());\r\n dispatch(CommonActions.proteinTargetings());\r\n dispatch(CommonActions.species());\r\n\r\n if (!study && params.studyId) {\r\n dispatch(StudyActions.getStudy(params.studyId));\r\n }\r\n }, [dispatch, params, study]);\r\n\r\n useEffect(() => {\r\n function setFormElementValues() {\r\n if (!study) return;\r\n\r\n if (study.conditionId) {\r\n dispatch(CommonActions.condition(study.conditionId));\r\n }\r\n\r\n if (study.targetId) {\r\n dispatch(CommonActions.target(study.targetId));\r\n }\r\n\r\n if (study.compoundId) {\r\n dispatch(CommonActions.compound(study.compoundId));\r\n }\r\n\r\n control.setValue('name', study.name ?? '');\r\n control.setValue('contactName', study.contactName ?? '');\r\n control.setValue('contactEmail', study.contactEmail ?? '');\r\n control.setValue('completion', study.completion ?? '');\r\n control.setValue('isPublished', study.isPublished ?? false);\r\n\r\n control.setValue('outcome', getCatalogueEntry(outcomes, study.outcomeId));\r\n control.setValue('proteinTargeting', getCatalogueEntry(proteinTargetings, study.proteinTargetingId));\r\n control.setValue('species', getCatalogueEntry(species, study.speciesId));\r\n control.setValue('isTissueAvailable', study.isTissueAvailable ?? false);\r\n control.setValue('outcomeMeasure', study.outcomeMeasure ?? '');\r\n\r\n control.setValue('testGroupNumberOfAnimals', study.testGroupNumberOfAnimals ?? '');\r\n control.setValue('testGroupMeans', study.testGroupMeans ?? '');\r\n control.setValue('testGroupStandardDeviation', study.testGroupStandardDeviation ?? '');\r\n\r\n control.setValue('controlGroupNumberOfAnimals', study.controlGroupNumberOfAnimals ?? '');\r\n control.setValue('controlGroupMeans', study.controlGroupMeans ?? '');\r\n control.setValue('controlGroupStandardDeviation', study.controlGroupStandardDeviation ?? '');\r\n\r\n setTimeout(() => {\r\n control.setValue('link', study.link ?? '');\r\n control.setValue('tissueType', study.tissueType ?? '');\r\n }, 500);\r\n }\r\n\r\n setFormElementValues();\r\n }, [dispatch, study, outcomes, proteinTargetings, species, control]);\r\n\r\n useEffect(() => {\r\n if (!study) return;\r\n\r\n if (study.conditionId && condition) {\r\n control.setValue('condition', condition);\r\n }\r\n\r\n if (study.targetId && target) {\r\n control.setValue('target', target);\r\n }\r\n\r\n if (study.compoundId && compound) {\r\n control.setValue('compound', compound);\r\n }\r\n }, [study, condition, target, compound, control]);\r\n\r\n function getCatalogueEntry(entries: CatalogueEntry[], entryId: number) {\r\n return entries.find((catalogueEntry) => catalogueEntry.catalogueEntryId === entryId) ?? {};\r\n }\r\n\r\n useEffect(() => {\r\n function getCatalogueData(catalogueEntities: CatalogueEntry[]): Catalogue {\r\n if (catalogues.length === 0 || (!catalogueEntities || catalogueEntities.length === 0)) return emptyCatalogue;\r\n\r\n const catalogueId = catalogueEntities[0].catalogueId;\r\n const currentCatalogue = catalogues.find((catalogue) => catalogue.catalogueId === catalogueId);\r\n const activeCatalogueEntries: CatalogueEntry[] | [] = catalogueEntities.filter(catalogueEntity => catalogueEntity.isActive) ?? [];\r\n\r\n return {\r\n catalogueId: currentCatalogue?.catalogueId ?? null,\r\n label: currentCatalogue?.label ?? null,\r\n isRequired: currentCatalogue?.isRequired ?? null,\r\n catalogueEntries: activeCatalogueEntries,\r\n };\r\n }\r\n\r\n outcomeCatalogueData.current = getCatalogueData(outcomes);\r\n proteinTargetingCatalogueData.current = getCatalogueData(proteinTargetings);\r\n speciesCatalogueData.current = getCatalogueData(species);\r\n\r\n if (!study) {\r\n control.setValue('outcome', getFirstDefaultCatalogueEntry(outcomeCatalogueData.current.catalogueEntries));\r\n control.setValue('proteinTargeting', getFirstDefaultCatalogueEntry(proteinTargetingCatalogueData.current.catalogueEntries));\r\n control.setValue('species', getFirstDefaultCatalogueEntry(speciesCatalogueData.current.catalogueEntries));\r\n }\r\n }, [study, outcomes, catalogues, outcomeCatalogueData, proteinTargetingCatalogueData, proteinTargetings, species, speciesCatalogueData, control]);\r\n\r\n function getFirstDefaultCatalogueEntry(entries: CatalogueEntry[]) {\r\n return entries.find((catalogueEntry) => catalogueEntry.isDefault) ?? {};\r\n }\r\n\r\n function handleInputValueChange(inputValue: string, commonType: CommonType) {\r\n if (searchTimeout !== undefined) clearTimeout(searchTimeout);\r\n\r\n searchTimeout = setTimeout(() => getSelectOptionsByType(inputValue, commonType), 350);\r\n }\r\n\r\n function getSelectOptionsByType(inputValue: string, commonType: CommonType) {\r\n switch (commonType) {\r\n case CommonType.CONDITION: {\r\n getConditionOptions(inputValue)\r\n break;\r\n }\r\n case CommonType.TARGET: {\r\n getTargetOptions(inputValue);\r\n break;\r\n }\r\n case CommonType.COMPOUND: {\r\n getCompoundOptions(inputValue);\r\n break;\r\n }\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n function getConditionOptions(inputValue: string) {\r\n if (inputValue.length < 3) {\r\n dispatch(CommonActions.clearConditions());\r\n\r\n return;\r\n }\r\n\r\n dispatch(CommonActions.fetchConditions(inputValue));\r\n }\r\n\r\n function getTargetOptions(inputValue: string) {\r\n if (inputValue.length < 3) {\r\n dispatch(CommonActions.clearTargets());\r\n\r\n return;\r\n }\r\n\r\n dispatch(CommonActions.fetchTargets(inputValue));\r\n }\r\n\r\n function getCompoundOptions(inputValue: string) {\r\n if (inputValue.length < 3) {\r\n dispatch(CommonActions.clearCompounds());\r\n\r\n return;\r\n }\r\n\r\n dispatch(CommonActions.fetchCompounds(inputValue));\r\n }\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(StudyActions.clearStudy());\r\n dispatch(CommonActions.clearConditions());\r\n dispatch(CommonActions.clearTargets());\r\n dispatch(CommonActions.clearCompounds());\r\n }\r\n }, [dispatch])\r\n\r\n const handleSave = useCallback((data: CreateStudy) => {\r\n data.outcomeId = data.outcome?.catalogueEntryId;\r\n data.proteinTargetingId = data.proteinTargeting?.catalogueEntryId;\r\n data.speciesId = data.species?.catalogueEntryId;\r\n data.conditionId = data.condition?.conditionId ?? null;\r\n data.targetId = data.target?.targetId ?? null;\r\n data.compoundId = data.compound?.compoundId ?? null;\r\n\r\n let newData: {[key: string]: any} = {};\r\n Object.entries(data).forEach(([key, val]) => (newData[key] = val !== '' && val !== {} ? val : null));\r\n\r\n if (study && study.studyId) {\r\n newData.studyId = study.studyId;\r\n dispatch(StudyActions.update({studyId: study.studyId, study: newData}));\r\n\r\n return;\r\n }\r\n\r\n dispatch(StudyActions.create(newData)).unwrap()\r\n .then(() => {\r\n reset();\r\n })\r\n }, [dispatch, reset, study]);\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(StudyActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(StudyActions.clearNotifications());\r\n }\r\n }, [dispatch]);\r\n\r\n const studyFormValue = watch();\r\n\r\n const LISTBOX_PADDING = 8; // px\r\n\r\n function renderRow(props: ListChildComponentProps) {\r\n const { data, index, style } = props;\r\n return React.cloneElement(data[index], {\r\n style: {\r\n ...style,\r\n top: (style.top as number) + LISTBOX_PADDING,\r\n },\r\n });\r\n }\r\n\r\n const OuterElementContext = React.createContext({});\r\n\r\n const OuterElementType = React.forwardRef((props, ref) => {\r\n const outerProps = React.useContext(OuterElementContext);\r\n return
;\r\n });\r\n\r\n function useResetCache(data: any) {\r\n const ref = React.useRef(null);\r\n React.useEffect(() => {\r\n if (ref.current != null) {\r\n ref.current.resetAfterIndex(0, true);\r\n }\r\n }, [data]);\r\n return ref;\r\n }\r\n\r\n // Adapter for react-window\r\n const ListboxComponent = React.forwardRef(function ListboxComponent(props, ref) {\r\n const { children, ...other } = props;\r\n const itemData = React.Children.toArray(children);\r\n const theme = useTheme();\r\n const smUp = useMediaQuery(theme.breakpoints.up('sm'), { noSsr: true });\r\n const itemCount = itemData.length;\r\n const itemSize = smUp ? 36 : 48;\r\n\r\n const getChildSize = (child: React.ReactNode) => {\r\n if (React.isValidElement(child) && child.type === ListSubheader) {\r\n return 48;\r\n }\r\n\r\n return itemSize;\r\n };\r\n\r\n const getHeight = () => {\r\n if (itemCount > 8) {\r\n return 8 * itemSize;\r\n }\r\n return itemData.map(getChildSize).reduce((a, b) => a + b, 0);\r\n };\r\n\r\n const gridRef = useResetCache(itemCount);\r\n\r\n return (\r\n
\r\n \r\n getChildSize(itemData[index])}\r\n overscanCount={5}\r\n itemCount={itemCount}\r\n style={{\r\n overflowX: 'hidden',\r\n }}\r\n >\r\n {renderRow}\r\n \r\n \r\n
\r\n );\r\n });\r\n\r\n const renderGroup = (params: AutocompleteRenderGroupParams) => [\r\n \r\n {params.group}\r\n ,\r\n params.children,\r\n ];\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {t('submit_title')}\r\n \r\n\r\n { loggedInUser == null &&\r\n \r\n {t('submit_title_criteria')}\r\n \r\n }\r\n\r\n

1. {t('group_study_info')}

\r\n\r\n {/* #### NAME INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {Validation\r\n .toErrorMessage('name', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('name', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 80\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n\r\n {/* #### Contact NAME INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('contactName', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('contactName', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 80\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n\r\n {/* #### Contact Email INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('contactEmail', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('contactEmail', ValidationError.STRING_EMAIL, errors, t('email', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('contactEmail', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 80\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### Completion INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {/* #### IsPublished INPUT #### */}\r\n \r\n \r\n \r\n { onChange(event.target.checked) }} />}\r\n label={t('isPublished')}\r\n labelPlacement=\"end\"\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n {\r\n (studyFormValue.isPublished) &&\r\n <>\r\n {/* #### Link INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('link', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('link', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 2000\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n \r\n }\r\n\r\n

2. {t('group_study_base')}

\r\n\r\n {/* #### Outcome INPUT #### */}\r\n \r\n \r\n \r\n >}\r\n renderGroup={renderGroup}\r\n value={value}\r\n onChange={(event, value) => onChange(value)}\r\n onBlur={onBlur}\r\n getOptionLabel={(option) => option.label ?? \"\"}\r\n options={outcomeCatalogueData.current.catalogueEntries}\r\n renderInput={(params) => }\r\n renderOption={(option) => {option.label}}\r\n />\r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('outcome', ValidationError.OBJECT_BASE, errors, t('required', { ns: 'validation' }))\r\n ||\r\n Validation\r\n .toErrorMessage('outcome', ValidationError.INVALID_VALUE, errors, t('required', { ns: 'validation' }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### ProteinTargeting INPUT #### */}\r\n \r\n \r\n \r\n >}\r\n renderGroup={renderGroup}\r\n value={value}\r\n onChange={(event, value) => onChange(value)}\r\n onBlur={onBlur}\r\n getOptionLabel={(option) => option.label ?? \"\"}\r\n options={proteinTargetingCatalogueData.current.catalogueEntries}\r\n renderInput={(params) => }\r\n renderOption={(option) => {option.label}}\r\n />\r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('proteinTargeting', ValidationError.OBJECT_BASE, errors, t('required', { ns: 'validation' }))\r\n ||\r\n Validation\r\n .toErrorMessage('proteinTargeting', ValidationError.INVALID_VALUE, errors, t('required', { ns: 'validation' }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### species INPUT #### */}\r\n \r\n \r\n \r\n >}\r\n renderGroup={renderGroup}\r\n value={value}\r\n onChange={(event, value) => onChange(value)}\r\n onBlur={onBlur}\r\n getOptionLabel={(option) => option.label ?? \"\"}\r\n options={speciesCatalogueData.current.catalogueEntries}\r\n renderInput={(params) => }\r\n renderOption={(option) => {option.label}}\r\n />\r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('species', ValidationError.OBJECT_BASE, errors, t('required', { ns: 'validation' }))\r\n ||\r\n Validation\r\n .toErrorMessage('species', ValidationError.INVALID_VALUE, errors, t('required', { ns: 'validation' }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### condition INPUT #### */}\r\n \r\n \r\n \r\n >}\r\n renderGroup={renderGroup}\r\n value={value}\r\n onBlur={onBlur}\r\n getOptionLabel={(option) => option.name ?? \"\"}\r\n options={conditions}\r\n renderInput={(params) => }\r\n renderOption={(option) => {option.name}}\r\n onChange={(event, value) => onChange(value)}\r\n onInputChange={(event, value) => handleInputValueChange(value, CommonType.CONDITION)}\r\n noOptionsText={t('no_options_text', { ns: 'validation' })}\r\n />\r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('condition', ValidationError.OBJECT_BASE, errors, t('required', { ns: 'validation' }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### target INPUT #### */}\r\n \r\n \r\n \r\n >}\r\n renderGroup={renderGroup}\r\n value={value}\r\n onChange={(event, value) => onChange(value)}\r\n onBlur={onBlur}\r\n getOptionLabel={(option) => option.name ?? \"\"}\r\n options={targets}\r\n renderInput={(params) => }\r\n renderOption={(option) => {option.name}}\r\n onInputChange={(event, value) => handleInputValueChange(value, CommonType.TARGET)}\r\n noOptionsText={t('no_options_text', { ns: 'validation' })}\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {/* #### compound INPUT #### */}\r\n \r\n \r\n \r\n\r\n >}\r\n renderGroup={renderGroup}\r\n value={value}\r\n onChange={(event, value) => onChange(value)}\r\n onBlur={onBlur}\r\n getOptionLabel={(option) => option.name ?? \"\"}\r\n options={compounds}\r\n renderInput={(params) => }\r\n renderOption={(option) => {option.name}}\r\n onInputChange={(event, value) => handleInputValueChange(value, CommonType.COMPOUND)}\r\n noOptionsText={t('no_options_text', { ns: 'validation' })}\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {/* #### isTissueAvailable INPUT #### */}\r\n \r\n \r\n \r\n { onChange(event.target.checked) }} />}\r\n label={t('isTissueAvailable')}\r\n labelPlacement=\"end\"\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n {\r\n (studyFormValue.isTissueAvailable) &&\r\n <>\r\n {/* #### Link INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('tissueType', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('tissueType', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 2000\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n \r\n }\r\n\r\n {/* #### Outcome Measure INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('outcomeMeasure', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 80\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n\r\n

3. {t('group_study_intervention')}

\r\n\r\n {/* #### testGroupNumberOfAnimals INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('testGroupNumberOfAnimals', ValidationError.NUMBER_MIN, errors, t('largerThan', {\r\n ns: 'validation',\r\n min: 0\r\n })) ||\r\n Validation\r\n .toErrorMessage('testGroupNumberOfAnimals', ValidationError.NUMBER_MAX, errors, t('lowerThan', {\r\n ns: 'validation',\r\n max: 100000\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### testGroupMeans INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('testGroupMeans', ValidationError.NUMBER_MIN, errors, t('largerThan', {\r\n ns: 'validation',\r\n min: 0\r\n })) ||\r\n Validation\r\n .toErrorMessage('testGroupMeans', ValidationError.NUMBER_MAX, errors, t('lowerThan', {\r\n ns: 'validation',\r\n max: 100000\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### testGroupStandardDeviation INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('testGroupStandardDeviation', ValidationError.NUMBER_MIN, errors, t('largerThan', {\r\n ns: 'validation',\r\n min: 0\r\n })) ||\r\n Validation\r\n .toErrorMessage('testGroupStandardDeviation', ValidationError.NUMBER_MAX, errors, t('lowerThan', {\r\n ns: 'validation',\r\n max: 100000\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n

4. {t('group_study_control')}

\r\n\r\n {/* #### controlGroupNumberOfAnimals INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('controlGroupNumberOfAnimals', ValidationError.NUMBER_MIN, errors, t('largerThan', {\r\n ns: 'validation',\r\n min: 0\r\n })) ||\r\n Validation\r\n .toErrorMessage('controlGroupNumberOfAnimals', ValidationError.NUMBER_MAX, errors, t('lowerThan', {\r\n ns: 'validation',\r\n max: 100000\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### controlGroupMeans INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('controlGroupMeans', ValidationError.NUMBER_MIN, errors, t('largerThan', {\r\n ns: 'validation',\r\n min: 0\r\n })) ||\r\n Validation\r\n .toErrorMessage('controlGroupMeans', ValidationError.NUMBER_MAX, errors, t('lowerThan', {\r\n ns: 'validation',\r\n max: 100000\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### controlGroupStandardDeviation INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('controlGroupStandardDeviation', ValidationError.NUMBER_MIN, errors, t('largerThan', {\r\n ns: 'validation',\r\n min: 0\r\n })) ||\r\n Validation\r\n .toErrorMessage('controlGroupStandardDeviation', ValidationError.NUMBER_MAX, errors, t('lowerThan', {\r\n ns: 'validation',\r\n max: 100000\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n {/* #### Submit Button #### */}\r\n \r\n \r\n console.log(e))}\r\n >\r\n {study && study.studyId ? t('button_update') : t('button_submit')}\r\n \r\n \r\n \r\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 SubmitStudy;","import { useTranslation } from \"react-i18next\";\r\nimport { useCallback, useEffect, useState } from \"react\";\r\nimport { CommonActions } from \"../../common/state/common.slice\";\r\nimport { CommonSelectors } from '../../common/state/common.selectors';\r\nimport { useAppDispatch } from \"../../core/state/store\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { Contact } from \"../../core/models/Common\";\r\nimport { joiResolver } from '@hookform/resolvers/joi';\r\nimport Joi from 'joi';\r\nimport { Validation, ValidationError } from '../../core/utils/validation';\r\nimport NotificationHandler from '../../core/components/NotificationHandler';\r\nimport { Button, Grid, Paper, TextField, Typography } from \"@material-ui/core\";\r\n// @ts-ignore\r\nimport { loadCaptchaEnginge, LoadCanvasTemplateNoReload, validateCaptcha } from 'react-simple-captcha';\r\nimport { NotificationEnum } from \"../../core/models/notification.enum\";\r\nimport { createStyleSheet } from \"../../core/utils/theming\";\r\n\r\n\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst ContactPage = () => {\r\n const { t } = useTranslation(['common', 'validation', 'navbar']);\r\n const dispatch = useAppDispatch();\r\n const notifications = useSelector(CommonSelectors.selectNotifications);\r\n const [captcha, setCaptcha] = useState('');\r\n const styles = useStyles();\r\n\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(CommonActions.clearNotifications());\r\n }\r\n }, [dispatch]);\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(CommonActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n const userSchema = Joi.object({\r\n contactName: Joi.string().max(160).required(),\r\n contactEmail: Joi.string().max(160).required(),\r\n contactMessage: Joi.string().max(400).required(),\r\n })\r\n const { control, handleSubmit, errors, reset } = useForm({\r\n defaultValues: {},\r\n resolver: joiResolver(userSchema)\r\n });\r\n\r\n const handleSave = useCallback((data: Contact) => {\r\n if (validateCaptcha(captcha)===true)\r\n {\r\n dispatch(CommonActions.contact(data)).unwrap()\r\n .then(() => {\r\n setCaptcha('');\r\n reset();\r\n })\r\n }\r\n else {\r\n dispatch(CommonActions.pushErrorNotification(NotificationEnum.ERROR_CAPTCHA));\r\n }\r\n }, [dispatch, reset, captcha]);\r\n\r\n useEffect(() => {\r\n loadCaptchaEnginge(6);\r\n }, [dispatch]);\r\n\r\n return (\r\n \r\n \r\n {t('label_contact', { ns: 'navbar' })}\r\n \r\n\r\n \r\n\r\n {/* #### contactName INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {Validation\r\n .toErrorMessage('contactName', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('contactName', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 160\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n\r\n {/* #### ContactEMail INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {\r\n Validation\r\n .toErrorMessage('contactEmail', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('contactEmail', ValidationError.STRING_EMAIL, errors, t('email', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('contactEmail', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 160\r\n }))\r\n }\r\n

\r\n\r\n
\r\n
\r\n\r\n\r\n {/* #### contactMessage INPUT #### */}\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n

\r\n {Validation\r\n .toErrorMessage('contactMessage', ValidationError.STRING_EMPTY, errors, t('required', { ns: 'validation' })) ||\r\n Validation\r\n .toErrorMessage('contactMessage', ValidationError.STRING_MAX, errors, t('maxLength', {\r\n ns: 'validation',\r\n len: 400\r\n }))\r\n }\r\n

\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n {/* #### Captcha #### */}\r\n \r\n \r\n setCaptcha(event.target.value)}\r\n type={'text'}\r\n label={t('captcha')}\r\n variant={'outlined'}\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {/* #### Submit Button #### */}\r\n \r\n \r\n console.log(e))}\r\n >\r\n {t('button_submit')}\r\n \r\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 ContactPage;","import {createStyleSheet} from \"../utils/theming\";\r\nimport {Theme} from \"@material-ui/core\";\r\n\r\nexport const authenticationComponentStyles = createStyleSheet(({breakpoints, palette}: Theme) => ({\r\n root: {\r\n flex: 1,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n background: palette.background.default,\r\n flexDirection: 'column'\r\n },\r\n cardContainer: {\r\n flex: 1,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n },\r\n card: {\r\n [breakpoints.up('sm')]: {\r\n width: 400,\r\n },\r\n [breakpoints.up('md')]: {\r\n width: 450,\r\n },\r\n maxWidth: 500,\r\n height: 750,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n background: `linear-gradient(0deg, ${palette.primary.main} 0%, ${palette.primary.main} 60%, rgba(255,255,255,1) 60%, rgba(255,255,255,1) 100%)`\r\n },\r\n cardContent: {\r\n flex: 1,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n marginTop: 12,\r\n marginBottom: 8,\r\n width: '90%'\r\n },\r\n cardHeader: {\r\n flex: 1,\r\n background: 'white',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center'\r\n },\r\n cardBody: {\r\n flex: 3,\r\n background: 'white',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center'\r\n },\r\n cardTextInput: {\r\n [breakpoints.up('sm')]: {\r\n width: 300,\r\n },\r\n [breakpoints.up('md')]: {\r\n width: 350,\r\n },\r\n },\r\n}));","import {Button, Card, CardContent, Grid, TextField, Typography} from '@material-ui/core';\r\nimport {ExitToApp} from '@material-ui/icons';\r\nimport {Controller, useForm} from 'react-hook-form';\r\nimport {useTranslation} from 'react-i18next';\r\nimport {useDispatch, useSelector} from 'react-redux';\r\nimport {AuthenticationActions} from '../state/authentication.slice';\r\nimport {AuthenticationSelectors} from '../state/authentication.selectors';\r\nimport {useHistory} from 'react-router-dom';\r\nimport NotificationHandler from \"../../core/components/NotificationHandler\";\r\nimport {useCallback, useEffect} from \"react\";\r\nimport {authenticationComponentStyles} from \"../../core/styles/authenticationComponentStyles\";\r\n\r\ninterface LoginFormProps {\r\n email: string;\r\n password: string;\r\n}\r\n\r\nconst Login = ()=> {\r\n const styles = authenticationComponentStyles();\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n const {control, handleSubmit, errors} = useForm();\r\n const {t} = useTranslation(['authentication', 'validation']);\r\n const isLoading = useSelector(AuthenticationSelectors.selectLoading);\r\n const notifications = useSelector(AuthenticationSelectors.selectNotifications);\r\n const showVerifyEmailComponent = useSelector(AuthenticationSelectors.selectShowVerifyEmailComponent);\r\n\r\n useEffect(() => {\r\n if (showVerifyEmailComponent) {\r\n history.push('/verify-email');\r\n }\r\n }, [showVerifyEmailComponent, history]);\r\n\r\n const onSubmit = ({email, password}: LoginFormProps) => {\r\n dispatch(AuthenticationActions.authenticate({\r\n email: email,\r\n password: password\r\n }));\r\n }\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(AuthenticationActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n RepoTrial\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {t('label_login')}\r\n \r\n\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n disabled={isLoading}\r\n onSubmit={handleSubmit(onSubmit)}\r\n >\r\n {t('button_login')}\r\n \r\n \r\n \r\n history.push('/sign-up')}\r\n >\r\n {t('button_sign_up')}\r\n \r\n \r\n \r\n history.push('/forgot-password')}\r\n >\r\n {t('button_forgot_password')}\r\n \r\n \r\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 { Button, Card, CardContent, Grid, TextField, Typography } from '@material-ui/core';\r\nimport { ExitToApp } from '@material-ui/icons';\r\nimport { Controller, useForm } from 'react-hook-form';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { AuthenticationActions } from '../state/authentication.slice';\r\nimport { AuthenticationSelectors } from '../state/authentication.selectors';\r\nimport {useHistory} from \"react-router-dom\";\r\nimport {useCallback, useEffect} from \"react\";\r\nimport NotificationHandler from '../../core/components/NotificationHandler';\r\nimport {authenticationComponentStyles} from \"../../core/styles/authenticationComponentStyles\";\r\n\r\ninterface RegisterFormProps {\r\n name: string;\r\n email: string;\r\n password: string;\r\n}\r\n\r\nconst SignUp = () => {\r\n const styles = authenticationComponentStyles();\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n const {control, handleSubmit, errors, watch} = useForm();\r\n const {t} = useTranslation(['authentication', 'validation']);\r\n const isLoading = useSelector(AuthenticationSelectors.selectLoading);\r\n const notifications = useSelector(AuthenticationSelectors.selectNotifications);\r\n const showVerifyEmailComponent = useSelector(AuthenticationSelectors.selectShowVerifyEmailComponent);\r\n\r\n let password = watch(\"password\", \"\");\r\n\r\n useEffect(() => {\r\n if (showVerifyEmailComponent) {\r\n history.push('/verify-email');\r\n }\r\n }, [showVerifyEmailComponent, history]);\r\n\r\n const onSubmit = ({name, email, password}: RegisterFormProps) => {\r\n dispatch(AuthenticationActions.signUp({\r\n name: name,\r\n email: email,\r\n password: password\r\n }));\r\n }\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(AuthenticationActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n RepoTrial\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {t('label_sign_up')}\r\n \r\n\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n value === password || \"The passwords do not match\"\r\n }}\r\n render={\r\n ({onBlur, onChange, value}, {invalid}) => \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n disabled={isLoading}\r\n onSubmit={handleSubmit(onSubmit)}\r\n >\r\n {t('button_sign_up')}\r\n \r\n \r\n \r\n history.push('/login')}\r\n >\r\n {t('button_login')}\r\n \r\n \r\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 SignUp;\r\n","import {useCallback, useEffect} from \"react\";\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\nimport {AuthenticationActions} from \"../state/authentication.slice\";\r\nimport NotificationHandler from \"../../core/components/NotificationHandler\";\r\nimport {AuthenticationSelectors} from \"../state/authentication.selectors\";\r\nimport {Button, Card, CardContent, Grid, TextField, Typography} from \"@material-ui/core\";\r\nimport {Controller, useForm} from \"react-hook-form\";\r\nimport {ExitToApp} from \"@material-ui/icons\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {authenticationComponentStyles} from \"../../core/styles/authenticationComponentStyles\";\r\n\r\ninterface VerifyEmailFormProps {\r\n email: string;\r\n verificationCode: string;\r\n}\r\n\r\nconst VerifyEmail = () => {\r\n const styles = authenticationComponentStyles();\r\n const dispatch = useDispatch();\r\n const notifications = useSelector(AuthenticationSelectors.selectNotifications);\r\n const {t} = useTranslation(['authentication', 'validation']);\r\n const {control, handleSubmit, errors} = useForm();\r\n const isLoading = useSelector(AuthenticationSelectors.selectLoading);\r\n\r\n useEffect(() => {\r\n dispatch(AuthenticationActions.showVerifyEmailComponent(false));\r\n }, [dispatch]);\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(AuthenticationActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n const onSubmit = ({email, verificationCode}: VerifyEmailFormProps) => {\r\n dispatch(AuthenticationActions.verifyEmail({\r\n email: email,\r\n code: verificationCode\r\n }));\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n RepoTrial\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {t('label_verify_email')}\r\n \r\n\r\n \r\n \r\n {t('message_verify_email')}\r\n \r\n \r\n\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n disabled={isLoading}\r\n onSubmit={handleSubmit(onSubmit)}\r\n >\r\n {t('button_verify_email')}\r\n \r\n \r\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 VerifyEmail;","import {useCallback, useEffect} from \"react\";\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\nimport {AuthenticationActions} from \"../state/authentication.slice\";\r\nimport NotificationHandler from \"../../core/components/NotificationHandler\";\r\nimport {AuthenticationSelectors} from \"../state/authentication.selectors\";\r\nimport {Button, Card, CardContent, Grid, TextField, Typography} from \"@material-ui/core\";\r\nimport {Controller, useForm} from \"react-hook-form\";\r\nimport {ExitToApp} from \"@material-ui/icons\";\r\nimport {useHistory} from \"react-router-dom\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {authenticationComponentStyles} from \"../../core/styles/authenticationComponentStyles\";\r\n\r\ninterface ForgotPasswordFormProps {\r\n email: string;\r\n}\r\n\r\nconst ForgotPassword = () => {\r\n const styles = authenticationComponentStyles();\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n const {t} = useTranslation(['authentication', 'validation']);\r\n const {control, handleSubmit, errors} = useForm();\r\n const isLoading = useSelector(AuthenticationSelectors.selectLoading);\r\n const notifications = useSelector(AuthenticationSelectors.selectNotifications);\r\n const showResetPasswordComponent = useSelector(AuthenticationSelectors.selectShowResetPasswordComponent);\r\n\r\n useEffect(() => {\r\n if (showResetPasswordComponent) {\r\n history.push('/reset-password');\r\n }\r\n }, [showResetPasswordComponent, history]);\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(AuthenticationActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n const onSubmit = ({email}: ForgotPasswordFormProps) => {\r\n dispatch(AuthenticationActions.forgotPassword({\r\n email: email\r\n }));\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n RepoTrial\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {t('label_forgot_password')}\r\n \r\n\r\n \r\n \r\n {t('message_forgot_password')}\r\n \r\n \r\n\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n disabled={isLoading}\r\n onSubmit={handleSubmit(onSubmit)}\r\n >\r\n {t('button_change_password')}\r\n \r\n \r\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 ForgotPassword;","import {useCallback, useEffect} from \"react\";\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\nimport {AuthenticationActions} from \"../state/authentication.slice\";\r\nimport NotificationHandler from \"../../core/components/NotificationHandler\";\r\nimport {AuthenticationSelectors} from \"../state/authentication.selectors\";\r\nimport {Button, Card, CardContent, Grid, TextField, Typography} from \"@material-ui/core\";\r\nimport {Controller, useForm} from \"react-hook-form\";\r\nimport {ExitToApp} from \"@material-ui/icons\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {authenticationComponentStyles} from \"../../core/styles/authenticationComponentStyles\";\r\n\r\ninterface ResetPasswordFormProps {\r\n email: string;\r\n verificationCode: string;\r\n newPassword: string;\r\n}\r\n\r\nconst ResetPassword = () => {\r\n const styles = authenticationComponentStyles();\r\n const dispatch = useDispatch();\r\n const notifications = useSelector(AuthenticationSelectors.selectNotifications);\r\n const {t} = useTranslation(['authentication', 'validation']);\r\n const {control, handleSubmit, errors, watch} = useForm();\r\n const isLoading = useSelector(AuthenticationSelectors.selectLoading);\r\n\r\n let newPassword = watch(\"newPassword\", \"\");\r\n\r\n useEffect(() => {\r\n dispatch(AuthenticationActions.showResetPasswordComponent(false));\r\n }, [dispatch]);\r\n\r\n const onDismissNotification = useCallback(() => {\r\n dispatch(AuthenticationActions.dismissNotification());\r\n }, [dispatch]);\r\n\r\n const onSubmit = ({email, verificationCode, newPassword}: ResetPasswordFormProps) => {\r\n dispatch(AuthenticationActions.resetPassword({\r\n email: email,\r\n code: verificationCode,\r\n newPassword: newPassword,\r\n }));\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n RepoTrial\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {t('label_reset_password')}\r\n \r\n\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n value === newPassword || \"The passwords do not match\"\r\n }}\r\n render={\r\n ({onBlur, onChange, value}, {invalid}) => \r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n disabled={isLoading}\r\n onSubmit={handleSubmit(onSubmit)}\r\n >\r\n {t('button_reset_password')}\r\n \r\n \r\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 ResetPassword;","import {Button, Grid, Paper, Typography} from \"@material-ui/core\";\r\nimport SearchBar from \"material-ui-search-bar\";\r\nimport {StudyActions} from \"../state/study.slice\";\r\nimport {Search} from \"@material-ui/icons\";\r\nimport {AgGridColumn, AgGridReact} from \"ag-grid-react\";\r\nimport {createStyleSheet} from \"../../core/utils/theming\";\r\nimport {useAppDispatch} from \"../../core/state/store\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {useForm} from \"react-hook-form\";\r\nimport {useSelector} from \"react-redux\";\r\nimport {StudySelectors} from \"../state/study.selectors\";\r\nimport {useCallback, useEffect} from \"react\";\r\nimport moment from \"moment\";\r\nimport {useHistory} from \"react-router-dom\";\r\nimport {ConfigSelectors} from \"../../config/state/config.selectors\";\r\nimport {ConfigActions} from \"../../config/state/config.slice\";\r\nimport {CatalogueTypes} from \"../../config/state/config.state\";\r\n\r\nconst useStyles = createStyleSheet((theme) => ({\r\n mobileAppBody:{\r\n [theme.breakpoints.down('sm')]: {\r\n margin: 0\r\n },\r\n }\r\n}));\r\n\r\nconst MyStudies = () => {\r\n const dispatch = useAppDispatch();\r\n const { t } = useTranslation('studies');\r\n const { handleSubmit } = useForm();\r\n const keywords = useSelector(StudySelectors.selectKeywords);\r\n const myStudies = useSelector(StudySelectors.selectMyStudies);\r\n const styles = useStyles();\r\n const history = useHistory();\r\n const catalogues = useSelector(ConfigSelectors.selectCatalogues);\r\n\r\n useEffect(() => {\r\n dispatch(ConfigActions.getCatalogues());\r\n dispatch(StudyActions.fetchMyStudies());\r\n }, [dispatch]);\r\n\r\n const onSubmitSearch = useCallback(() => {\r\n dispatch(StudyActions.fetchMyStudies(keywords));\r\n }, [dispatch, keywords])\r\n\r\n const dateFormatter = (params: any) => {\r\n return moment(params.value).format('MMMM YYYY');\r\n };\r\n\r\n const gridActionCellRenderer = (props: any) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n };\r\n\r\n function getCatalogueLabel(catalogueId: CatalogueTypes): string {\r\n if (catalogues.length === 0) return '';\r\n\r\n return catalogues.find(catalogue => catalogue.catalogueId === catalogueId)?.label ?? '';\r\n }\r\n\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n {t('my_studies_title')}\r\n \r\n \r\n \r\n \r\n dispatch(StudyActions.setKeyword(newValue))}\r\n onRequestSearch={() => dispatch(StudyActions.setKeyword(keywords))}\r\n onCancelSearch={() => dispatch(StudyActions.setKeyword(''))}\r\n />\r\n \r\n \r\n }\r\n >{t('button_search')}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\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 MyStudies;\r\n","import { useEffect } from \"react\"\r\nimport { useLocation } from \"react-router\"\r\n\r\nexport function ScrollToTop() {\r\n const { pathname } = useLocation()\r\n useEffect(() => {\r\n window.scrollTo(0, 0)\r\n }, [pathname])\r\n return null\r\n}","import React, { Suspense, useEffect } from 'react';\n//import logo from './logo.svg';\nimport { Provider, useDispatch, useSelector } from 'react-redux';\nimport { ApplicationStore } from './core/state/store';\nimport { ThemeProvider } from '@material-ui/styles';\nimport { lightTheme } from './core/theme/lightTheme';\nimport LoadingComponent from './core/components/LoadingComponent';\nimport {BrowserRouter} from 'react-router-dom';\nimport NavBar from './core/components/NavBar';\nimport Footer from './core/components/Footer';\nimport { Settings as LuxonSettings } from 'luxon'\nimport { LocaleService } from './core/services/locale.service';\nimport { Environments } from './environments/environments';\nimport Overview from './common/components/overview';\nimport Studies from './study/components/Studies'\nimport Catalogue from './config/components/Catalogue'\nimport CatalogueDetails from './config/components/CatalogueDetails'\nimport CatalogueEntryPage from './config/components/CatalogueEntry'\nimport './App.css';\nimport { Redirect, Route, Switch } from 'react-router';\nimport { AuthenticationSelectors } from './authentication/state/authentication.selectors';\nimport '@fontsource/roboto';\n\nimport TermsAndConditions from './common/components/termsAndConditions'\nimport Disclaimer from './common/components/disclaimer'\nimport Impressum from './common/components/impressum'\nimport About from './common/components/about'\nimport SubmitStudy from './study/components/SubmitStudy'\nimport ContactPage from './common/components/contact';\nimport Login from \"./authentication/components/Login\";\nimport SignUp from \"./authentication/components/SignUp\";\nimport VerifyEmail from \"./authentication/components/VerifyEmail\";\nimport { AuthenticationActions } from \"./authentication/state/authentication.slice\";\nimport ForgotPassword from \"./authentication/components/ForgotPassword\";\nimport ResetPassword from \"./authentication/components/ResetPassword\";\nimport { AccountType, AuthStateEnum } from \"./authentication/state/authentication.state\";\nimport MyStudies from \"./study/components/MyStudies\";\nimport {ScrollToTop} from \"./ScrollToTop\";\n\nfunction App() {\n useEffect(() => {\n document.title = Environments.title;\n LuxonSettings.defaultLocale = LocaleService.locale;\n }, [])\n\n return (\n
\n \n \n }>\n \n \n \n \n
\n );\n}\n\nconst ApplicationRouter = () => {\n const dispatch = useDispatch();\n const authState = useSelector(AuthenticationSelectors.selectAuthState);\n const loggedInUser = useSelector(AuthenticationSelectors.selectLoggedInUser);\n\n useEffect(() => {\n dispatch(AuthenticationActions.refreshToken());\n }, [dispatch]);\n\n useEffect(() => {\n window.scrollTo(0, 0)\n }, [])\n\n return (\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 authState !== AuthStateEnum.Checking && <>\n {\n authState === AuthStateEnum.Authenticated ? <>\n \n \n \n \n \n \n \n {loggedInUser?.accountType === AccountType.Admin &&\n \n \n \n }\n {loggedInUser?.accountType === AccountType.Admin &&\n \n \n }\n {loggedInUser?.accountType === AccountType.Admin &&\n \n \n \n }\n {loggedInUser?.accountType === AccountType.Admin &&\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\nexport default App;\n","import { ReportHandler } from 'web-vitals';\n\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport './core/services/i18n';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}