{"version":3,"sources":["shared/constants/ActionTypes.js","shared/constants/AppEnums.js","@crema/utility/AppHooks.js","@crema/services/auth/jwt-auth/jwt-api.js","@crema/core/Scrollbar/index.js","@crema/utility/IntlMessages.js","serviceWorker.js","redux/reducers/Setting.js","redux/reducers/Common.js","redux/reducers/Dashboard.js","redux/reducers/userManagement.js","redux/reducers/Auth.js","redux/reducers/Patient.js","redux/reducers/myprofile.js","redux/reducers/CovidVitals.js","redux/reducers/UploadeRx.js","redux/reducers/MergePatient.js","redux/reducers/index.js","redux/store/index.js","App.js","@crema/services/MockConfig.js","@crema/services/auth/index.js","@crema/services/auth/aws-cognito/aws-exports.js","@crema/services/db/dashboard/healthCare.js","@crema/services/apis/dashboard/index.js","@crema/services/db/userManagementList.js","@crema/services/apis/userManagement/index.js","@crema/services/index.js","index.js","@crema/core/AppAnimate/index.js","@crema/utility/AppContext.js","shared/constants/AppConst.js","@crema/utility/CremaThemeProvider/index.js","@crema/utility/CremaStyleProvider/index.js","@crema/utility/LocaleProvider.js","@crema/utility/AuthRoutes.js","@crema/core/Navigation/HorizontalNav/HorizontalItem.style.js","@crema/core/Navigation/HorizontalNav/HorizontalItem.js","@crema/core/Navigation/HorizontalNav/HorizontalCollapse.js","@crema/core/Navigation/HorizontalNav/HorizontalGroup.style.js","@crema/core/Navigation/HorizontalNav/HorizontalGroup.js","@crema/core/Navigation/HorizontalNav/HorizontalSingle.style.js","@crema/core/Navigation/HorizontalNav/HorizontalSingle.js","modules/routesConfig.js","@crema/core/Navigation/HorizontalNav/index.js","@crema/core/AppLayout/HorDefault/AppHeader.style.js","@crema/core/AppLayout/ChangepasswordPopup.js","@crema/core/AppLayout/confirmationDialog.js","@crema/core/AppLayout/HorUserInfo.js","shared/components/AppLogo/index.js","@crema/core/AppLayout/HorDefault/AppHeader.js","@crema/core/AppLayout/HorDefault/index.style.js","@crema/core/AppLayout/HorDefault/AppFooter.js","@crema/core/AppLayout/HorDefault/AppFixedFooter.js","shared/components/UserInfo/index.js","@crema/core/Navigation/VerticleNav/VerticalItem.style.js","@crema/core/Navigation/VerticleNav/VerticalItem.js","@crema/core/Navigation/VerticleNav/VerticalCollapase.style.js","@crema/core/Navigation/VerticleNav/VerticalCollapse.js","@crema/core/Navigation/VerticleNav/VerticalNavGroup.style.js","@crema/core/Navigation/VerticleNav/VerticalNavGroup.js","@crema/core/Navigation/VerticleNav/index.js","@crema/core/AppLayout/HorDefault/AppSidebar.style.js","@crema/core/AppLayout/HorDefault/AppSidebar.js","@crema/core/AppLayout/HorDefault/index.js","@crema/core/AppLayout/Layouts.js","shared/jss/common/common.style.js","@crema/core/AppLayout/index.js","@crema/utility/ContextProvider/defaultConfig.js","@crema/utility/ContextProvider/ContextReducer.js","@crema/utility/ContextProvider/index.js","@crema/services/ApiConfig.js","modules/dashboard/index.js","modules/auth/index.js","modules/eRxDetails/index.js","modules/covidVitals/index.js","modules/reports/index.js","modules/eRxUpload/index.js","modules/patientERX/index.js","modules/generateHealthID/index.js","modules/appointments/index.js","modules/mergedPatient/index.js","modules/oneMG/index.js","modules/eRxUploadPrivateDoctors/index.js","modules/eRxUploadDemoPrescription/index.js","modules/index.js","shared/localization/entries/en-US.js","shared/localization/entries/zh-Hans-CN.js","shared/localization/entries/ar_SA.js","shared/localization/entries/it_IT.js","shared/localization/entries/es_ES.js","shared/localization/index.js","shared/localization/entries/fr_FR.js","@crema/services/auth/auth0/auth0Config.js","redux/actions/JWTAuth.js","redux/actions/Auth0.js","redux/actions/Dashboard.js","redux/actions/userManagement.js","redux/actions/FirebaseAuth.js","redux/actions/AWSCognito.js","redux/actions/Setting.js","redux/actions/Patient.js","redux/actions/myprofile.js","redux/actions/CovidVitals.js","redux/actions/UploadeRx.js","redux/actions/MergePatient.js","redux/actions/Common.js","@crema/core/AppLayout/ToasterMsg.js","@crema/core/InfoView/index.js","@crema/core/ComponentCard/highlightTheme.js","@crema/core/ComponentCard/index.js","@crema/core/Loader/index.js","@crema/core/AppSuspense/index.js","@crema/core/Badge/index.js","@crema/core/AppNavLink/index.js","@crema/core/ComponentHeader/index.js","@crema/core/ThemeSetting/PrimaryColorPicker.js","@crema/services/db/navigationStyle.js","@crema/core/ThemeSetting/index.style.js","@crema/core/ThemeSetting/CustomColorCell.style.js","@crema/core/MessageView/index.js","@crema/core/AppLayout/AppFooter.js","@crema/core/AppErrorBoundary/index.js","@crema/core/ContentView/index.js","@crema/utility/Utils.js","@crema/services/auth/firebase/firebase.js"],"names":["FETCH_START","FETCH_SUCCESS","FETCH_ERROR","SHOW_MESSAGE","HIDE_MESSAGE","TOGGLE_APP_DRAWER","UPDATING_CONTENT","TOGGLE_NAV_COLLAPSED","SET_INITIAL_PATH","UPDATE_AUTH_USER","SET_AUTH_TOKEN","SET_MOBILENO","SET_PASWD","SIGNOUT_AUTH_SUCCESS","GET_HC_DATA","GET_USERMANAGE_DATA","GET_GUDMEDSUCCESS_DATA","GET_GUDMED_USER","RESET_USER_PASWD","DELETE_USER_DATA","DASHBOARD_PENDING_DATA","DASHBOARD_PENDING_COUNT","DASHBOARD_PENDING_PATIENT_DATA","PATIENT_SUCCESS_MSG","ERX_SUCCESS_MSG","REJECT_ERX_SUCCESS_MSG","MEDICINE_SUCCESS_MSG","REJECT_ERX_MSG","DASHBOARD_ERX_DATA","DASHBOARD_RX_DETAILS","DASHBOARD_ERX_DOC_OBSV","DASHBOARD_ERX_LAB_OBSV","DASHBOARD_ERX_PATIENT_VITAL","DASHBOARD_ERX_DOCPROCEDURE","DASHBOARD_ERX_MEDICINE_DETAIL","DASHBOARD_INSERT_PRESCRIPTION","DASHBOARD_INPROGRESSS_DATA","DASHBOARD_REJECT_DATA","DASHBOARD_REJECT_COUNT","DASHBOARD_COMPLETED_DATA","DASHBOARD_COMPLETED_COUNT","DASHBOARD_INPROGRESSS_COUNT","DELETE_MEDCINE_SUCCESS_MSG","UNIT_DATA","GET_DOCTOR_EDITDATA","DOCTOR_SUCCESS_MSG","DOCTOR_UPDATE_MSG","SET_DOCTOR_ID_NAME","DOCTOR_SPECIALIZATION","DOCTOR_SUBSPECIALIZATION","DOCTOR_QUALIFICATION","DEPARTMENT_MASTER","STATE_MASTER","OPT_NOTES","EXIST_COUNT","DOCTOR_SEARCH_ARRAY","DOCTOR_SEARCH_DATA","PATIENT_COMPLETED_DATA","PATIENT_NAME_LIST","PATIENT_COMPLETED_COUNT","PATIENT_DASHBOARD_DATA","FORGOT_PASWD_SUCCESS","FORGOT_PASWD_ERROR","PATIENT_SIGNUP","OTP_SUCCESS","OTP_ERROR","OTP_SIGNUP_ERROR","SIGNIN_ERROR","PATIENT_PROFILE","SAVE_PROFILES","ERX_OPERATOR_NOTES","resulttitle","bloodsugarList","CHANGE_MOBILENO_RES","DASHBOARD_GRX_MEDICINE_DETAIL","ERX_IMG_ARR","ERX_IMG_OCR","PATIENT_VITAL_HISTORY_DATA","PATIENT_VITAL_HISTORY_DATA_COUNT","VITAL_DATA_NOT_FOUND","VITAL_PDF_DATA","PATIENT_VITAL_PATIENTS","ERX_DATA_HTML","ERX_DATA_HTML_NO_DATA","COVID_DATA_HTML","COVID_DATA_HTML_NO_DATA","REPORT_DETAILS","INVESTIGATION_CATEGORY_DATA","TAG_CATEGORY_DATA","PATIENT_LISTS","SEARCH_REPORTS_DATA","SEARCH_REPORTS_DATA_COUNT","ERX_HTML_DATA","ERX_HTML_NO_DATA","INSERT_OWN_ERX_SUCCESS","BUCKET_CAPTCHA","PATIENT_APPOINTMENT_COUNT","PATIENT_APPOINTMENT_LIST","APPOINTMENT","APPOINTMENT_PATIENTS","APPOINTMENT_UPCOMING_COUNT","INVESTIGATIONS_LIST","REPORT_PATIENT_LIST","REPORT_SUCCESS","REPORT_DELETE_SUCCESS","MAPPING_PATIENT_LIST","MAPPING_SUCCESS","DROP_PATIENT_LIST","DROP_PATIENT_RELATION","PATIENT_RELATION_SUCCESS","ONE_MG_DATA","OTP_TIME","ThemeStyle","MODERN","STANDARD","ThemeStyleRadius","ThemeMode","LIGHT","SEMI_DARK","DARK","LayoutType","FULL_WIDTH","BOXED","NavStyle","HOR_LIGHT_NAV","FooterType","FIXED","FLUID","HeaderType","RouteTransition","NONE","FADE","SLIDE_LEFT","SLIDE_RIGHT","SLIDE_UP","SLIDE_DOWN","Fonts","REGULAR","MEDIUM","BOLD","EXTRA_BOLD","FONT_BOLD","AuthType","FIREBASE","AWS_COGNITO","AUTH0","JWT_AUTH","useAuthToken","dispatch","useDispatch","useState","loading","setLoading","user","useSelector","auth","useEffect","validateAuth","a","fetchStart","token","localStorage","getItem","fetchSuccess","setJWTToken","body1","mobileNbr","paswd","jwtToken","getvialogin","getloginurl","otp","jwtAxios","post","then","res","response","data","body","setItem","type","payload","authType","displayName","patname","email","mobileNo","patientCode","roleId","role","catch","error","message","split","trim","Promise","all","resolve","firebaseAuth","onAuthStateChanged","authUser","uid","photoURL","refreshToken","awsAuth","currentAuthenticatedUser","username","attributes","name","defaultUser","signInUserSession","accessToken","Hub","listen","event","onGetLoggedInCognitoUser","useAuthUser","id","axios","create","baseURL","headers","validateStatus","status","interceptors","use","err","msg","console","log","reject","setAuthToken","defaults","common","removeItem","Scrollbar","React","forwardRef","props","ref","children","scrollToTop","history","match","location","className","staticContext","others","_scrollBarRef","pathname","useLocation","_container","scrollTop","withRouter","defaultProps","injectIntl","Boolean","window","hostname","initialSettings","navCollapsed","initialPath","settingsReducer","state","action","INIT_STATE","isAppDrawerOpen","updatingContent","commonReducer","initialState","healthCare","dashboardPendingList","pendingCount","dashboardPendingPatientData","patientsuccessmsg","erxsuccessmsg","rejecterxsuccessmsg","erxmedicinesuccessmsg","dashboarderxData","dashboarderxDetails","dashboarderxDocobsv","dashboarderxLabobsv","dashboarderxPatientVital","dashboarderxDocProcedure","dashboarderxmedicinedetail","doctorDetails","otptime","dashboardinsertprescriptions","inprogresCount","dashboardInprogressList","dashboardRejectList","dashboardRejectcountList","doctorsuccessmsg","doctorupdatemsg","rejectsuccessmsg","dashboardCompletedList","dashboardCompletedcountList","unitdata","deletemedicinesuccessmsg","doctoridname","specializations","subspecializations","qualifications","departmentMaster","stateMaster","optNotes","doctorSearchDatas","searchableDoctor","erxOperatorNotes","changemobilenores","erximgdatas","erximgocrdatas","dashboardgrxmedicinedetail","reportDetails","investigationCategoryData","patientListdata","tagCategoryData","searchReportsData","searchReportsDataCounts","erxhtmldata","erxhtmlnodata","bucketCaptcha","appointment","appointmentPatients","inves_list","patient_list","report_success","report_delete_success","oneMgData","dashboardReducer","users","deleteuserdata","editloaddata","resetpaswd","userManagementReducer","mobileno","signupstatus","otpsuccess","otperror","otpsignuperror","signinerror","authReducer","patientlist","patientcount","forgotpaswdsuccess","forgotpaswderror","patNameList","patientvitaldashboarddata","patientAppointmentCount","patientAppointments","patientReducer","profileData","saveProfile","profileReducer","patientvitallist","patientvitalcount","errordata","vitalsdata","vitalpatients","covid_datas","covid_no_datas","covidVitalReducer","owneRx_succes","uploadeRxReducer","mapping_patients","mapping_success","drop_patients","patient_relations","patient_relation_success","MappingPatientReducer","reducers","combineReducers","router","connectRouter","settings","Settings","Auth","dashboard","Dashboard","userManage","UserManageData","Common","patient","Patient","profile","covidvitals","CovidVitals","UploadeRx","Mapping_Patient","createBrowserHistory","require","routeMiddleware","routerMiddleware","middlewares","thunk","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","store","createStore","applyMiddleware","currentState","getState","subscribe","previousState","configureStore","App","ContextProvider","CremaThemeProvider","CremaStyleProvider","LocaleProvider","AuthRoutes","CssBaseline","AppLayout","delayResponse","Amplify","configure","aws_project_region","aws_cognito_identity_pool_id","aws_cognito_region","aws_user_pools_id","aws_user_pools_web_client_id","oauth","domain","scope","redirectSignIn","redirectSignOut","responseType","federationTarget","healthCareData","salesState","category","bgColor","time","icon","heathStatics","dataOne","month","number","dataTwo","dataThree","newPatients","cancelVisits","topDoctors","speciality","profile_pic","rating","scheduled","upcomingAppointment","appointmentTime","appointmentDate","notifications","title","color","hospitalStatics","value","recentPatients","gender","weight","assignedDr","date","hospitalActivity","Consultations","Patients","bloodCard","measurement","appointmentCards","chartValue","chartTime","chartData","heartCard","unit","graphData","rate","temperatureCard","doses","yourActivity","day","visits","mock","onGet","reply","userManagementList","image","skills","information","phone","website","charge","readTime","shares","retweets","topic","onAny","passThrough","ReactDOM","render","document","getElementById","navigator","serviceWorker","ready","registration","unregister","AppAnimate","cloneElement","style","visibility","animation","runOnMount","targetQuerySelector","interruptBehavior","duration","delay","easing","display","setRef","undefined","memo","createContext","authRole","admin","adminRoles","dashboardRoles","initialUrl","MobileRegExp","digitRegExp","allowDouble","nameRegExpdot","AvoidSpecialCharacterRegExp","AvoidSpecialsearchCharacterRegExp","AvoidSpecialCharacterAddressRegExp","AvoidSpecialCharacterMailRegExp","MailRegExp","passwordRegExp","genderMaster","genderCode","englishLanguage","heading","firstName","lastName","reminder","genericMedicine","needCall","callbackNo","uploadImage","uploadReport","yes","no","save","browse","errImagePdf","errPdfonly","errImageonly","errImages30","errPDF10","errMobileNo","errPatName","errMailId","errPre","camera","thankyou_msg","thankyou_msg_callback","hindiLanguage","version","clientID","gudmed","redcliffee","aiims","privatedoctors","mediaId","demoWebLink","useContext","AppContext","theme","isRTL","updateThemeMode","changeNavStyle","updateThemeStyle","setRTL","updateTheme","locale","muiLocale","AppLocale","useUrlSearchParams","params","theme_mode","is_rtl","setAttribute","nav_style","theme_style","isBreakPointDown","overrides","MuiCard","root","borderRadius","MuiToggleButton","MuiButton","MuiCardLg","responsiveFontSizes","createMuiTheme","utils","MomentUtils","jss","plugins","jssPreset","rtl","currentAppLocale","messages","search","useHistory","routes","currentRoute","matchRoutes","route","isPermitted","checkPermission","indexOf","setInitialPath","query","qs","parse","layout","mode","handleQueryParams","push","useStyles","makeStyles","minHeight","backgroundColor","palette","primary","main","pointerEvents","padding","textDecoration","HorizontalItem","classes","item","dense","active","isUrlInChildren","parent","url","i","length","includes","ListItem","component","NavLink","to","activeClassName","clsx","exact","Box","fontSize","xs","xl","mr","clone","Icon","ListItemText","IntlMessages","messageId","count","ml","button","text","secondary","contrastText","popper","zIndex","popperClose","fontsSize","marginRight","pl0","paddingLeft","HorizontalCollapse","opened","setOpened","nestedLevel","handleToggle","open","Manager","Reference","onMouseEnter","onMouseLeave","aria-owns","aria-haspopup","p","IconButton","disableRipple","direction","Popper","placement","eventsEnabled","positionFixed","arrowProps","boxShadow","data-placement","Grow","in","transformOrigin","Paper","map","Fragment","key","querySelector","height","background","fontBold","fontWeight","ml2","marginLeft","textLg","HorizontalGroup","HorizontalSingle","badgeStyle","marginTop","LoginUser","appointmentCount","Number","routesConfig","HorizontalNav","List","my","Divider","headerMain","position","paddingRight","paper","breakpoints","up","borderLeft","grey","headerMainFlex","alignItems","headerContainer","width","maxWidth","menuButton","spacing","grow","flexGrow","sectionDesktop","sectionMobile","headerNav","cursor","menuItemRoot","pointer","menuIconRoot","logoRoot","ChangePasswordPopup","onDeny","formControl","margin","minWidth","dialogStyle","fontStyle","FONTSTYLE","dialogHeader","borderBottom","dialogheadStyle","dialogTitle","marginBottom","TableHeader","textField","container","flexWrap","btnStyles","textAlign","closeBtn","closeBtnColor","btn","savebtn","contentText","userRoot","float","useStyle","resetpaswdsuccess","getsnackbaropen","setsnackbarOpen","msgdata","setmsgdata","variant","setvariant","erroroldpaswdtxt","setErroroldpaswdtxt","errorconfirmpaswdtxt","setErrorconfirmpaswdtxt","errornewpaswdtxt","setErrornewpaswdtxt","password","newpassword","confirmpassword","errorValues","setErrorValues","showPassword","showPassword1","showPassword2","values","setValues","vialogin","resetUserPassword","test","onresetPassword","oldpaswd","newpaswd","viasetpaswd","setTimeout","onCognitoUserSignOut","onSignOutFirebaseUser","onSignOutAuth0User","onJWTAuthSignout","handleMouseDownPassword","preventDefault","Dialog","disableBackdropClick","ToasterMsg","snackbaropen","variantdata","Grid","sm","md","onClick","TextField","required","pwd","onChange","target","label","onBlur","inputProps","minLength","maxLength","InputProps","endAdornment","InputAdornment","edge","aria-label","onMouseDown","helperText","pt","Button","rootdialog","closeButton","right","top","dialogwidth","btnblue","btnred","dialogactionsclass","ConfirmationDialog","opendialog","userid","DialogContent","withStyles","MuiDialogContent","DialogActions","MuiDialogActions","DialogTitle","disableTypography","Typography","onClose","aria-labelledby","gutterBottom","clear","pushdata","userId","userCode","onlineStatus","justifyContent","avatar","orange","autowidht","userInfo","userName","overflow","textOverflow","whiteSpace","textTransform","bgType","outerBox","HorUserInfo","changePassword","setChangePasswordPopup","themeMode","openpopup","setopenpopup","anchorEl","setAnchorEl","handleClose","py","pl","currentTarget","Avatar","src","Hidden","mdDown","Menu","keepMounted","MenuItem","AppLogo","flexDirection","logo","goToDashboard","smUp","alt","xsDown","AppHeader","AppBar","Toolbar","appMain","default","paddingBottom","borderTop","borderTopColor","mainContent","flex","mainContainer","boxedLayout","AppFooter","footer","footerType","btnRoot","AppFixedFooter","left","bottom","crUserInfo","paddingTop","profilePic","designation","UserInfo","px","mb","navItem","level","transition","white","sidebar","textColor","listIcon","listItemText","VerticalItem","useMemo","needsToBeOpened","VerticalCollapse","setOpen","Collapse","VerticalNavGroup","NavVerticalGroup","Navigation","drawerContainer","maxHeight","sidebarBg","drawerScrollAppSidebar","AppSidebar","lgUp","Drawer","anchor","ev","toggleNavCollapsed","HorDefault","layoutType","appMainFooter","appMainFixedFooter","Layouts","H_DEFAULT","transform","fade","black","appAuth","backgroundSize","backgroundImage","navStyle","createBreakpoints","cardRadius","defaultConfig","gray","50","100","200","300","400","500","600","700","800","900","A100","A200","A400","A700","disabled","hint","danger","divider","typography","fontFamily","join","MuiTypography","h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body2","down","themeStyle","headerType","rtAnim","languageId","rtlLocale","ThemeSetting","contextReducer","headerMode","sidebarColor","ContextState","useReducer","useCallback","Provider","updateLayoutStyle","updateSidebarColor","setFooter","setFooterType","updateHeaderMode","updatePrimaryColor","updateSecondaryColor","changeLocale","changeRTAnim","dashBoardConfigs","path","lazy","authRouteConfig","eRxDetailsConfigs","covidVitalsConfig","reportsConfig","eRxRouteConfig","patienteRxRouteConfig","generateHealthIDConfig","appointmentsConfig","mergedPatientConfig","oneMgConfig","eRxUploadPDConfig","eRxDemoPrescriptionRouteConfig","routeConfigs","createRoutes","EnLang","enMessages","enUS","ZhLan","zhMessages","zhCN","saLang","saMessages","itIT","esES","en","enLang","zh","zhLang","ar","arLang","it","itLang","es","esLang","fr","frFR","Auth0Config","createAuth0Client","client_id","redirect_uri","audience","streamname","filename","onGetOtpfunction","onWriteCloudWatchLog","fetchError","onGetLoginOtpfunction","onJwtSignIn","hasOwnProperty","call","setMobileNbr","setPaswd","loadJWTUser","uom","totalcount","onGetForgotpaswdOtpfunction","onJwtSignInWithOTP","loadJWTOTPUser","logout","crypto","onGetPendingPatInfn","patId","erxid","bodytoken","getdata","onUpdatePatientDetails","onDeleteMedicineDetails","onGetUnits","arraydata","e","onGeteRxInfn","erxReqId","erxImageOCR","imgurl","imgocr","erxUrl","ocrdata","ocrData","extension","urlExtension","rownumber","rxdtls","DocID","doctorId","DocName","docName","RegisterNo","registerno","EmailId","docobsv","labobsv","patientvital","docprocedure","medicinedtls","saltName","medName","mn","af","an","nt","uomId","unitcode","quantity","dosage","refferal","referral","advice","frequency","seqno","txnNo","genericmedicinedtls","arraydatageneric","durationValue","price","mCode","company","qty","strength1","strength2","strength","margqty","patientId","onGetDoctorInfo","erxId","onGetSpecialization","specialization","subspecialization","deptList","quaList","stateList","onGeteRxNotes","onChangeMobileNo","onGeteRxReports","reports","reportdata","reportTagId","reportCategory","reportTag","onGetInvestigationCategory","onGetPatientList","onGetSearchPatientReports","reportData","reportCount","GenerateeRxHTML","decryptpassword","decipher","createDecipher","dec","update","final","ongetEncryptbucketcaptcha","data1","accessKey","secretAccessKey","bucketName","region","filePath","captchaKey","onGetInvestigations","inves_lists","description","investigationid","hindi_title","hindi_category","patientNameLists","onInsertUploadReports","onUpdateAndDeleteUploadReports","onGetReportTypes","report_list","onGetOneMGURL","onGetTime","get","getuserdata","signOut","getUserObject","onForgetPassword","GenerateERXHTML","onGetAppointments","totalCount","onGetStatemaster","onGetPatientData","patientpersonal","personal","addressData","savePatientProfiles","onGetPatientVitalList","limit","offset","filterfromDate","filtertoDate","covidStatus","patName","vitalarr","resultData","patientlistdatas","GenerateVitalPDF","GenerateVitalHTML","insertUploadErx","s3UploadErrorEmail","onGetMappingPatient","pat_drop_List","relation","insertMergingPatients","updatePatientRelation","winston","WinstonCloudWatch","AWS","ACCESSKEY","streamName","functionname","usercode","getdate","Date","config","accessKeyId","add","logGroupName","logStreamName","awsRegion","awsAccessKeyId","awsSecretKeyId","SnackbarMsg","MySnackbarContentWrapper","useStyles1","other","variantIcon","aria-describedby","iconVariant","success","CheckCircleIcon","warning","WarningIcon","ErrorIcon","info","InfoIcon","green","dark","amber","opacity","reason","anchorOrigin","vertical","horizontal","autoHideDuration","InfoView","toString","highlightTheme","plain","styles","types","cardHeader","cardContent","preTag","ComponentCard","Component","source","viewSource","Card","CardContent","code","language","tokens","getLineProps","getTokenProps","line","Loader","CircularProgress","AppSuspense","Suspense","fallback","loadingProps","Badge","bgcolor","AppNavLink","innerRef","ComponentHeader","refUrl","containerHeader","linkIcon","textbase","pr","href","cpSwatch","cpColor","border","cpPopover","customizerOption","customizerButton","rightSidebar","rightSidebarHeader","rightSidebarMain","customizerItem","colorRow","navOption","navOptionItem","navOptionContent","navOptionRightIcon","selectBox","toggleBtn","borderColor","colorOptionList","listStyle","wFull","textWhite","mb5","colorOption","colorOptionTriangle","colorOptionBorder","colorOptionRightIcon","textBase","red","AppSnackbar","Snackbar","SnackbarContent","AppErrorBoundary","hasError","errorInfo","this","mt","TransitionWrapper","currentKey","TransitionGroup","appear","enter","exit","CSSTransition","timeout","classNames","ContentView","idleTimer","useRef","showModal","userLoggedIn","isTimedOut","idletime","setIdleTime","element","onActive","onIdle","current","reset","onAction","debounce","renderRoutes","innerWidth","allRoutes","forEach","setRoutes","IntlGlobalProvider","useIntl","routeAuth","userRole","Array","isArray","some","r","firebase","initializeApp","apiKey","authDomain","databaseURL","projectId","storageBucket","messagingSenderId","appId","measurementId","googleAuthProvider","GoogleAuthProvider","githubAuthProvider","GithubAuthProvider","facebookAuthProvider","FacebookAuthProvider","twitterAuthProvider","TwitterAuthProvider"],"mappings":"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","file":"static/js/main.9d43b855.chunk.js","sourcesContent":["//API\nexport const FETCH_START = 'fetch_start';\nexport const FETCH_SUCCESS = 'fetch_success';\nexport const FETCH_ERROR = 'fetch_error';\nexport const SHOW_MESSAGE = 'show_message';\nexport const HIDE_MESSAGE = 'hide_message';\nexport const TOGGLE_APP_DRAWER = 'toggle_app_drawer';\nexport const UPDATING_CONTENT = 'updating_content';\n\n//APP SETTING\nexport const TOGGLE_NAV_COLLAPSED = 'toggle_nav_collapsed';\nexport const SET_INITIAL_PATH = 'set_initial_path';\n\n//AUTH0\nexport const UPDATE_AUTH_USER = 'update_auth_user';\nexport const SET_AUTH_TOKEN = 'set_auth_token';\nexport const SET_MOBILENO = 'set_mobileno';\nexport const SET_PASWD = 'set_paswd';\nexport const SIGNOUT_AUTH_SUCCESS = 'signout_auth_success';\n\n//ANALYTICS-DASHBOARD\nexport const GET_ANALYTICS_DATA = 'get_analytics_data';\n\n//ECOMMERCE-DASHBOARD\nexport const GET_ECOMMERCE_DATA = 'get_ecommerce_data';\n\n//ACADEMY-DASHBOARD\nexport const GET_ACADEMY_DATA = 'get_academy_data';\n\n//CRM-DASHBOARD\nexport const GET_CRM_DATA = 'get_crm_data';\n\n//CRYPTO-DASHBOARD\nexport const GET_CRYPTO_DATA = 'get_crypto_data';\n\n//CRYPTO-DASHBOARD\nexport const GET_HC_DATA = 'get_hc_data';\n\n//USER MANAGEMENT\nexport const GET_USERMANAGE_DATA = 'get_usermanage_data';\nexport const GET_GUDMEDSUCCESS_DATA = 'get_gudmedsuccess_data';\nexport const GET_GUDMED_USER = 'get_gudmed_user';\nexport const RESET_USER_PASWD = 'reset_user_paswd';\n\n//METRICS-DASHBOARD\nexport const GET_METRICS_DATA = 'get_metrics_data';\n\n//WIDGETS_DASHBOARD\nexport const GET_WIDGETS_DATA = 'get_widgets_data';\n\n//MAIL-APP\nexport const GET_MAIL_LIST = 'get_mail_list';\nexport const GET_FOLDER_LIST = 'get_folder_list';\nexport const GET_LABEL_LIST = 'get_label_list';\nexport const TOGGLE_MAIL_DRAWER = 'toggle_mail_drawer';\nexport const COMPOSE_MAIL = 'compose_mail';\nexport const GET_MAIL_DETAIL = 'get_mail_detail';\nexport const UPDATE_MAIL_FOLDER = 'update_mail_folders';\nexport const UPDATE_MAIL_LABEL = 'update_mail_label';\nexport const UPDATE_STARRED_STATUS = 'update_starred_status';\nexport const UPDATED_MAIL_DETAIL = 'updated_mail_detail';\nexport const CHANGE_READ_STATUS = 'change_read_status';\nexport const GET_CONNECTION_LIST = 'get_connection_list';\nexport const NULLIFY_MAIL = 'nullify_mail';\n\n//TODO-APP\nexport const GET_TASK_LIST = 'get_task_list';\nexport const CREATE_NEW_TASK = 'create_new_task';\nexport const TOGGLE_TODO_DRAWER = 'toggle_todo_drawer';\nexport const GET_TODO_FOLDER_LIST = 'GET_TODO_FOLDER_LIST';\nexport const GET_TODO_LABEL_LIST = 'GET_TODO_LABEL_LIST';\nexport const GET_TODO_STATUS_LIST = 'GET_TODO_STATUS_LIST';\nexport const GET_TODO_PRIORITY_LIST = 'GET_TODO_PRIORITY_LIST';\nexport const UPDATE_TASK_FOLDER = 'UPDATE_TASK_FOLDER';\nexport const UPDATE_TASK_LABEL = 'UPDATE_TASK_LABEL';\nexport const UPDATE_TASK_STARRED_STATUS = 'UPDATE_TASK_STARRED_STATUS';\nexport const GET_TASK_DETAIL = 'GET_TASK_DETAIL';\nexport const UPDATE_TASK_DETAIL = 'UPDATE_TASK_DETAIL';\nexport const GET_TODO_STAFF_LIST = 'GET_TODO_STAFF_LIST';\n\n//CONTACT_APP\nexport const GET_CONTACT_LIST = 'GET_CONTACT_LIST';\nexport const GET_CONTACT_FOLDER_LIST = 'GET_CONTACT_FOLDER_LIST';\nexport const GET_CONTACT_LABEL_LIST = 'GET_CONTACT_LABEL_LIST';\nexport const DELETE_CONTACT = 'DELETE_CONTACT';\nexport const UPDATE_CONTACT_LABEL = 'UPDATE_CONTACT_LABEL';\nexport const UPDATE_CONTACT_STARRED_STATUS = 'UPDATE_CONTACT_STARRED_STATUS';\nexport const GET_CONTACT_DETAIL = 'GET_CONTACT_DETAIL';\nexport const TOGGLE_CONTACT_DRAWER = 'TOGGLE_CONTACT_DRAWER';\nexport const UPDATE_CONTACT_DETAIL = 'UPDATE_CONTACT_DETAIL';\nexport const CREATE_NEW_CONTACT = 'CREATE_NEW_CONTACT';\n\n//SCRUMBOARD_APP\nexport const GET_MEMBER_LIST = 'GET_MEMBER_LIST';\nexport const GET_SCRUM_LABEL_LIST = 'GET_SCRUM_LABEL_LIST';\nexport const GET_BOARDS = 'GET_BOARDS';\nexport const GET_BOARD_DETAIL = 'GET_BOARD_DETAIL';\nexport const ADD_BOARD_LIST = 'ADD_BOARD_LIST';\nexport const ADD_LIST_CARD = 'ADD_LIST_CARD';\nexport const EDIT_LIST_CARD = 'EDIT_LIST_CARD';\nexport const DELETE_LIST_CARD = 'DELETE_LIST_CARD';\nexport const DELETE_BOARD = 'DELETE_BOARD';\nexport const ADD_NEW_BOARD = 'ADD_NEW_BOARD';\nexport const DELETE_LIST = 'DELETE_LIST';\nexport const EDIT_BOARD_DETAIL = 'EDIT_BOARD_DETAIL';\nexport const EDIT_BOARD_LIST = 'EDIT_BOARD_LIST';\n\n//CHAT_APP\nexport const GET_CONNECTIONS_LIST = 'get_connections_list';\nexport const GET_USER_MESSAGES = 'get_user_messages';\nexport const ADD_NEW_MESSAGE = 'add_new_message';\nexport const EDIT_MESSAGE = 'edit_message';\nexport const DELETE_MESSAGE = 'delete_message';\nexport const DELETE_USER_MESSAGES = 'delete_user_messages';\nexport const TOGGLE_CHAT_DRAWER = 'toggle_chat_drawer';\nexport const SELECT_USER = 'select_user';\n\n//WALL_APP\nexport const GET_WALL_DATA = 'get_wall_data';\nexport const GET_FEED_POSTS = 'get_feed_posts';\nexport const CREATE_NEW_POST = 'create_new_post';\nexport const UPDATE_POST = 'update_post';\n\n//USER_LIST\nexport const GET_USER_LIST = 'GET_USER_LIST';\n\n//ECOMMERCE_LIST\nexport const GET_ECOMMERCE_LIST = 'get_ecommerce_list';\nexport const SET_PRODUCT_VIEW_TYPE = 'set_product_view_type';\nexport const SET_FILTER_DATA = 'set_filter_data';\nexport const SET_PRODUCT_DATA = 'set_product_data';\nexport const GET_RECENT_ORDER = 'get_recent_order';\nexport const GET_CUSTOMERS = 'get_customers';\nexport const ADD_CART_ITEM = 'add_cart_item';\nexport const REMOVE_CART_ITEM = 'remove_cart_item';\nexport const UPDATE_CART_ITEM = 'update_cart_item';\nexport const SET_CART_ITEMS = 'set_cart_items';\n\n//CK-EDITOR\nexport const GET_BALLOON_BLOCK_DATA = 'get_balloon_block_data';\nexport const UPDATE_BALLOON_BLOCK_DATA = 'update_balloon_block_data';\nexport const GET_BALLOON_DATA = 'get_balloon_data';\nexport const UPDATE_BALLOON_DATA = 'update_balloon_data';\nexport const GET_CLASSIC_DATA = 'get_classic_data';\nexport const UPDATE_CLASSIC_DATA = 'update_classic_data';\nexport const GET_INLINE_DATA = 'get_inline_data';\nexport const UPDATE_INLINE_DATA = 'update_inline_data';\nexport const GET_DOCUMENT_DATA = 'get_document_data';\nexport const UPDATE_DOCUMENT_DATA = 'update_document_data';\nexport const GET_CUSTOM_DATA = 'get_custom_data';\nexport const UPDATE_CUSTOM_DATA = 'update_custom_data';\n\n//GALLERY\nexport const GET_GALLERY_PHOTO = 'get_gallery_photo';\n\n//Delete USER\nexport const DELETE_USER_DATA = 'delete_user_data';\n\n//Dashboard Data\nexport const DASHBOARD_PENDING_DATA = 'dashboard_pending_data';\nexport const DASHBOARD_PENDING_COUNT = 'dashboard_pending_count';\nexport const DASHBOARD_PENDING_PATIENT_DATA = 'dashboard_pending_patient_data';\nexport const PATIENT_SUCCESS_MSG = 'patient_success_msg';\nexport const ERX_SUCCESS_MSG = 'erx_success_msg';\nexport const REJECT_ERX_SUCCESS_MSG = 'reject_erx_success_msg';\nexport const MEDICINE_SUCCESS_MSG = 'medicine_success_msg';\nexport const REJECT_ERX_MSG = 'rehject_erx_msg';\nexport const DASHBOARD_ERX_DATA = 'dashboard_erx_data';\n\nexport const DASHBOARD_RX_DETAILS = 'dashboard_rx_details';\nexport const DASHBOARD_ERX_DOC_OBSV = 'dashboard_erx_doc_obsv';\nexport const DASHBOARD_ERX_LAB_OBSV = 'dashboard_erx_lab_obsv';\nexport const DASHBOARD_ERX_PATIENT_VITAL = 'dashboard_erx_patient_vital';\nexport const DASHBOARD_ERX_DOCPROCEDURE = 'dashboard_erx_docprocedure';\nexport const DASHBOARD_ERX_MEDICINE_DETAIL = 'dashboard_erx_medicine_detail';\n\nexport const DASHBOARD_INSERT_PRESCRIPTION = 'dashboard_insert_prescription';\nexport const DASHBOARD_INPROGRESSS_DATA = 'dashboard_inprogress_data';\nexport const DASHBOARD_REJECT_DATA = 'dashboard_reject_data';\nexport const DASHBOARD_REJECT_COUNT = 'dashboard_reject_count';\nexport const DASHBOARD_COMPLETED_DATA = 'dashboard_completed_data';\nexport const DASHBOARD_COMPLETED_COUNT = 'dashboard_completed_count';\nexport const DASHBOARD_INPROGRESSS_COUNT = 'dashboard_inprogresss_count';\nexport const DELETE_MEDCINE_SUCCESS_MSG = 'delete_medicine_success_msg';\nexport const UNIT_DATA = 'unit_data';\n//doctor data\nexport const GET_DOCTOR_EDITDATA = 'get_doctor_editdata';\nexport const DOCTOR_SUCCESS_MSG = 'doctor_success_msg';\nexport const DOCTOR_UPDATE_MSG = 'doctor_update_msg';\nexport const SET_DOCTOR_ID_NAME = 'set_doctor_id_name';\nexport const DOCTOR_SPECIALIZATION = 'doctor_specialization';\nexport const DOCTOR_SUBSPECIALIZATION = 'doctor_subspecialization';\nexport const DOCTOR_QUALIFICATION = 'doctor_qualification';\n\nexport const DEPARTMENT_MASTER = 'department_master';\nexport const STATE_MASTER = 'state_master';\nexport const OPT_NOTES = 'opt_notes';\nexport const EXIST_COUNT = 'exist_count';\nexport const DOCTOR_SEARCH_ARRAY = 'doctor_search_array';\nexport const DOCTOR_SEARCH_DATA = 'doctor_search_data';\n\nexport const PATIENT_COMPLETED_DATA = 'patient_completed_data';\nexport const PATIENT_NAME_LIST = 'PATIENT_NAME_LIST';\nexport const PATIENT_COMPLETED_COUNT = 'patient_completed_count';\nexport const PATIENT_DASHBOARD_DATA = 'PATIENT_DASHBOARD_DATA';\nexport const FORGOT_PASWD_SUCCESS = 'forgot_paswd_success';\nexport const FORGOT_PASWD_ERROR = 'forgot_paswd_error';\n\nexport const PATIENT_SIGNUP = 'patient_signup';\nexport const OTP_SUCCESS = 'otp_success';\nexport const OTP_ERROR = 'otp_error';\nexport const OTP_SIGNUP_ERROR = 'otp_signup_error';\nexport const SIGNIN_ERROR = 'signin_error';\n\n//MY PROFILE\nexport const PATIENT_PROFILE = 'patient_profile';\nexport const SAVE_PROFILES = 'save_profiles';\nexport const ERX_OPERATOR_NOTES = 'erx_operator_notes';\nexport const resulttitle = 'resulttitle';\nexport const bloodsugarList = 'bloodsugarList';\nexport const CHANGE_MOBILENO_RES = 'change_mobileno_res';\nexport const DASHBOARD_GRX_MEDICINE_DETAIL = 'dashboard_grx_medicine_detail';\nexport const ERX_IMG_ARR = 'ERX_IMG_ARR';\nexport const ERX_IMG_OCR = 'ERX_IMG_OCR';\nexport const PATIENT_VITAL_HISTORY_DATA = 'PATIENT_VITAL_HISTORY_DATA';\nexport const PATIENT_VITAL_HISTORY_DATA_COUNT =\n 'PATIENT_VITAL_HISTORY_DATA_COUNT';\nexport const VITAL_DATA_NOT_FOUND = 'VITAL_DATA_NOT_FOUND';\nexport const VITAL_PDF_DATA = 'VITAL_PDF_DATA';\nexport const PATIENT_VITAL_PATIENTS = 'PATIENT_VITAL_PATIENTS';\n\nexport const ERX_DATA_HTML = 'ERX_DATA_HTML';\nexport const ERX_DATA_HTML_NO_DATA = 'ERX_DATA_HTML_NO_DATA';\nexport const COVID_DATA_HTML = 'COVID_DATA_HTML';\nexport const COVID_DATA_HTML_NO_DATA = 'COVID_DATA_HTML_NO_DATA';\n//report\nexport const REPORT_DETAILS = 'REPORT_DETAILS';\nexport const INVESTIGATION_CATEGORY_DATA = 'INVESTIGATION_CATEGORY_DATA';\nexport const TAG_CATEGORY_DATA = 'TAG_CATEGORY_DATA';\nexport const PATIENT_LISTS = 'PATIENT_LISTS';\nexport const SEARCH_REPORTS_DATA = 'SEARCH_REPORTS_DATA';\nexport const SEARCH_REPORTS_DATA_COUNT = 'SEARCH_REPORTS_DATA_COUNT';\n\nexport const ERX_HTML_DATA = 'ERX_HTML_DATA';\nexport const ERX_HTML_NO_DATA = 'ERX_HTML_NO_DATA';\n//UploadeRx\nexport const CAPTURE_IMAGE = 'CAPTURE_IMAGE';\nexport const INSERT_OWN_ERX_SUCCESS = 'INSERT_OWN_ERX_SUCCESS';\nexport const BUCKET_CAPTCHA = 'BUCKET_CAPTCHA';\n\n//appointment\nexport const PATIENT_APPOINTMENT_COUNT = 'PATIENT_APPOINTMENT_COUNT';\nexport const PATIENT_APPOINTMENT_LIST = 'PATIENT_APPOINTMENT_LIST';\nexport const APPOINTMENT = 'APPOINTMENT';\nexport const APPOINTMENT_PATIENTS = 'APPOINTMENT_PATIENTS';\nexport const APPOINTMENT_UPCOMING_COUNT = 'APPOINTMENT_UPCOMING_COUNT';\n//Upload Reports\nexport const INVESTIGATIONS_LIST = 'INVESTIGATIONS_LIST';\nexport const REPORT_PATIENT_LIST = 'REPORT_PATIENT_LIST';\nexport const REPORT_SUCCESS = 'REPORT_SUCCESS';\nexport const REPORT_DELETE_SUCCESS = 'REPORT_DELETE_SUCCESS';\n\n//Mapping Patients\nexport const MAPPING_PATIENT_LIST = 'MAPPING_PATIENT_LIST';\nexport const MAPPING_SUCCESS = 'MAPPING_SUCCESS';\nexport const DROP_PATIENT_LIST = 'DROP_PATIENT_LIST';\nexport const DROP_PATIENT_RELATION = 'DROP_PATIENT_RELATION';\nexport const APPOINTMENT_REASON = 'APPOINTMENT_REASON';\nexport const PATIENT_RELATION_SUCCESS = 'PATIENT_RELATION_SUCCESS';\n//1MG\nexport const ONE_MG_DATA = 'ONE_MG_DATA';\nexport const OTP_TIME = 'OTP_TIME';\n","export const ThemeStyle = {\n MODERN: 'modern',\n STANDARD: 'standard',\n};\nexport const ThemeStyleRadius = {\n MODERN: 30,\n STANDARD: 4,\n};\nexport const ThemeMode = {\n LIGHT: 'light',\n SEMI_DARK: 'semi-dark',\n DARK: 'dark',\n};\nexport const LayoutType = {\n FULL_WIDTH: 'full-width',\n BOXED: 'boxed',\n};\nexport const NavStyle = {\n // DEFAULT: 'default',\n // MINI: 'mini',\n // MINI_SIDEBAR_TOGGLE: 'mini-sidebar-toggle',\n // STANDARD: 'standard',\n // HEADER_USER: 'user-header',\n // HEADER_USER_MINI: 'user-mini-header',\n // DRAWER: 'drawer',\n // BIT_BUCKET: 'bit-bucket',\n // H_DEFAULT: 'h-default',\n HOR_LIGHT_NAV: 'hor-light-nav',\n // HOR_DARK_LAYOUT: 'hor-dark-layout',\n};\nexport const FooterType = {\n FIXED: 'fixed',\n FLUID: 'fluid',\n};\nexport const HeaderType = {\n DARK: 'dark',\n LIGHT: 'light',\n};\nexport const RouteTransition = {\n NONE: 'none',\n FADE: 'fade',\n SLIDE_LEFT: 'slideLeft',\n SLIDE_RIGHT: 'slideRight',\n SLIDE_UP: 'slideUp',\n SLIDE_DOWN: 'slideDown',\n};\nexport const Fonts = {\n LIGHT: '300',\n REGULAR: '400',\n MEDIUM: '500',\n BOLD: '600',\n EXTRA_BOLD: '600',\n FONT_BOLD: 'bold',\n};\n\nexport const AuthType = {\n FIREBASE: 'firebase',\n AWS_COGNITO: 'aws_cognito',\n AUTH0: 'auth0',\n JWT_AUTH: 'jwt_auth',\n};\n\nexport const FontStyle = {\n FONTSTYLE: 'Roboto',\n TableHeader: 16,\n TableBody: 14,\n};\n","import {useDispatch, useSelector} from 'react-redux';\nimport {useEffect, useState} from 'react';\nimport {Auth as awsAuth, Hub} from 'aws-amplify';\nimport {\n UPDATE_AUTH_USER,\n FETCH_ERROR,\n SET_AUTH_TOKEN,\n} from '../../shared/constants/ActionTypes';\nimport {auth as firebaseAuth} from '../services/auth/firebase/firebase';\nimport {\n fetchStart,\n fetchSuccess,\n onGetLoggedInCognitoUser,\n} from '../../redux/actions';\nimport {AuthType} from '../../shared/constants/AppEnums';\nimport {defaultUser} from '../../shared/constants/AppConst';\nimport jwtAxios from '../services/auth/jwt-auth/jwt-api';\n\nexport const useAuthToken = () => {\n const dispatch = useDispatch();\n const [loading, setLoading] = useState(true);\n const {user} = useSelector(({auth}) => auth);\n // const mobileNbr = useSelector(\n // ({auth}) => auth.mobileno,\n // );\n // const {paswd} = useSelector(({auth}) => paswd);\n // const {token} = useSelector(({auth}) => token);\n useEffect(() => {\n const awsAuthUser = () =>\n new Promise((resolve) => {\n awsAuth\n .currentAuthenticatedUser()\n .then((user) => {\n resolve();\n if (user) {\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: {\n authType: AuthType.AWS_COGNITO,\n uid: user.username,\n displayName: user.attributes.name,\n email: user.attributes.email,\n role: defaultUser.role,\n paswd: user.paswd,\n photoURL: user.photoURL,\n token: user.signInUserSession.accessToken.jwtToken,\n },\n });\n }\n })\n .catch(function (error) {\n resolve();\n });\n return Promise.resolve();\n });\n\n const firebaseCheck = () =>\n new Promise((resolve) => {\n firebaseAuth.onAuthStateChanged((authUser) => {\n if (authUser) {\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: {\n authType: AuthType.FIREBASE,\n uid: authUser.uid,\n displayName: authUser.displayName,\n email: authUser.email,\n paswd: user.paswd,\n roleId: 1,\n role: 'Patient',\n photoURL: authUser.photoURL,\n token: authUser.refreshToken,\n },\n });\n }\n resolve();\n });\n return Promise.resolve();\n });\n\n const validateAuth = async () => {\n dispatch(fetchStart());\n const token = localStorage.getItem('token');\n if (!token) {\n dispatch(fetchSuccess());\n return;\n }\n dispatch(setJWTToken(token));\n // console.log(user);\n // const mobileNbr = localStorage.getItem('mobileNbr');\n // const paswd = localStorage.getItem('paswd');\n // const token='';\n // const body = {\"mobileNbr\":mobileNbr, \"paswd\":paswd};\n // if(mobileNbr){\n // try {\n // await jwtAxios\n // .post('v1/patMgmt/loginjwt', body)\n // .then((res) => {\n // if (res.data.hasOwnProperty.call(res.data, 'message')) {\n // } else {\n // // localStorage.setItem('token', res.data.body.token);\n // // localStorage.setItem('mobileNbr', mobileNbr);\n // // localStorage.setItem('paswd', paswd);\n // // token = localStorage.getItem('token');\n // dispatch(setJWTToken(res.data.body.token));\n // var body ={\"mobileNbr\":mobileNbr, \"paswd\":paswd,\"jwtToken\":res.data.body.token}\n // try {\n // jwtAxios\n // .post('v1/patMgmt/login', body)\n // .then((res) => {\n // dispatch(fetchSuccess());\n // var response = res.data.body[0];\n // localStorage.setItem('roleId', '1');\n // dispatch({\n // type: UPDATE_AUTH_USER,\n // payload: {\n // authType: AuthType.JWT_AUTH,\n // displayName: response.patname,\n // email: response.email,\n // mobileNo: response.mobileNo,\n // patientCode: response.patientCode,\n // roleId:'1',\n // role: 'Patient',\n // token: token,\n // },\n // });\n // })\n // .catch((error) => {\n // // alert(error.response.data.message.split(':')[1].trim());\n // dispatch({type: FETCH_ERROR, payload: (error.response.data.message.split(':')[1].trim())});\n // });\n // }\n // catch (err) {\n // dispatch(fetchSuccess());\n // return;\n // }\n // }\n // })\n // .catch((error) => {\n // dispatch({\n // type: FETCH_ERROR,\n // payload: error.response.data.message.split(':')[1].trim(),\n // });\n // });\n // return;\n // } catch (err) {\n // console.log('error!!!!', err.response);\n // return;\n // }\n // }\n var body1 = {mobileNbr: '989 ', paswd: '44', jwtToken: token};\n let getvialogin = localStorage.getItem('vialogin');\n let getloginurl = '';\n if (getvialogin === 'otp') {\n body1 = {mobileNbr: '989 ', otp: '44', jwtToken: token};\n getloginurl = 'loginwithOtp';\n } else {\n body1 = {mobileNbr: '989 ', paswd: '44', jwtToken: token};\n getloginurl = 'login';\n }\n try {\n await jwtAxios\n .post('v1/patMgmt/' + getloginurl, body1)\n .then((res) => {\n dispatch(fetchSuccess());\n var response = res.data.body[0];\n localStorage.setItem('roleId', '1');\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: {\n authType: AuthType.JWT_AUTH,\n displayName: response.patname,\n email: response.email,\n mobileNo: response.mobileNo,\n patientCode: response.patientCode,\n paswd: response.paswd,\n roleId: 1,\n role: 'Patient',\n token: token,\n },\n });\n })\n .catch((error) => {\n // alert(error.response.data.message.split(':')[1].trim());\n dispatch({\n type: FETCH_ERROR,\n payload: error.response.data.message.split(':')[1].trim(),\n });\n });\n\n return;\n } catch (err) {\n dispatch(fetchSuccess());\n return;\n }\n };\n\n const setJWTToken = (token) => {\n return async (dispatch) => {\n dispatch({\n type: SET_AUTH_TOKEN,\n payload: token,\n });\n };\n };\n\n const checkAuth = () => {\n Promise.all([firebaseCheck(), awsAuthUser(), validateAuth()]).then(() => {\n setLoading(false);\n });\n Hub.listen('auth', ({payload: {event, data}}) => {\n switch (event) {\n case 'signIn':\n dispatch(onGetLoggedInCognitoUser());\n break;\n case 'signOut':\n dispatch({type: UPDATE_AUTH_USER, payload: null});\n break;\n default:\n return false;\n }\n });\n };\n checkAuth();\n }, [dispatch]);\n\n return [loading, user];\n};\n\nexport const useAuthUser = () => {\n const {user} = useSelector(({auth}) => auth);\n\n if (user) {\n return {id: 1, ...user};\n }\n return [null];\n};\n","import axios from 'axios';\n\nconst jwtAxios = axios.create({\n //local\n // baseURL: 'http://localhost:8080/api/',\n //test api\n // baseURL: 'https://apitest.gudmed.in/api/',\n //uat link\n baseURL: 'https://api.gudmed.in/api/',\n // headers: {\n // 'Content-Type': 'application/json',\n // },\n //live Api url link\n // baseURL: 'https://testapi.gudmed.in/api/',\n headers: {\n 'Content-Type': 'application/json',\n },\n validateStatus: function (status) {\n return status >= 200 && status < 400;\n },\n});\njwtAxios.interceptors.response.use(\n (res) => res,\n (err) => {\n if (err.response && err.response.data.msg === 'Token is not valid') {\n console.log('Need to logout user');\n // store.dispatch({type: LOGOUT});\n }\n return Promise.reject(err);\n },\n);\nexport const setAuthToken = (token) => {\n if (token) {\n jwtAxios.defaults.headers.common['x-auth-token'] = token;\n localStorage.setItem('token', token);\n } else {\n delete jwtAxios.defaults.headers.common['x-auth-token'];\n localStorage.removeItem('token');\n }\n};\n\nexport default jwtAxios;\n","import React, {useEffect} from 'react';\nimport PerfectScrollbar from 'react-perfect-scrollbar';\nimport PropTypes from 'prop-types';\nimport {useLocation, withRouter} from 'react-router-dom';\n\nconst Scrollbar = React.forwardRef((props, ref) => {\n const {\n children,\n history,\n match,\n location,\n scrollToTop,\n staticContext,\n className,\n ...others\n } = props;\n let _scrollBarRef = null;\n const {pathname} = useLocation();\n\n useEffect(() => {\n if (scrollToTop && _scrollBarRef) {\n _scrollBarRef._container.scrollTop = 0;\n }\n }, [_scrollBarRef, scrollToTop, pathname]);\n\n return (\n {\n _scrollBarRef = ref;\n }}\n {...others}\n className={className}>\n {children}\n \n );\n});\n\nexport default withRouter(Scrollbar);\n\nScrollbar.defaultProps = {\n className: '',\n scrollToTop: true,\n};\n\nScrollbar.propTypes = {\n children: PropTypes.node.isRequired,\n};\n","import React from 'react';\nimport {FormattedMessage, injectIntl} from 'react-intl';\n\nconst InjectMassage = (props) => ;\nexport default injectIntl(InjectMassage, {\n forwardRef: false,\n});\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/,\n ),\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA',\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.',\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch((error) => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: {'Service-Worker': 'script'},\n })\n .then((response) => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.',\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister();\n });\n }\n}\n","import {\n SET_INITIAL_PATH,\n TOGGLE_NAV_COLLAPSED,\n} from '../../shared/constants/ActionTypes';\n\nconst initialSettings = {\n navCollapsed: false,\n initialPath: '/',\n};\n\nconst settingsReducer = (state = initialSettings, action) => {\n switch (action.type) {\n case '@@router/LOCATION_CHANGE':\n return {\n ...state,\n navCollapsed: false,\n };\n\n case TOGGLE_NAV_COLLAPSED:\n return {\n ...state,\n navCollapsed: !state.navCollapsed,\n };\n\n case SET_INITIAL_PATH:\n return {\n ...state,\n initialPath: action.payload,\n };\n\n default:\n return state;\n }\n};\n\nexport default settingsReducer;\n","import {\n FETCH_ERROR,\n FETCH_START,\n FETCH_SUCCESS,\n HIDE_MESSAGE,\n SHOW_MESSAGE,\n TOGGLE_APP_DRAWER,\n UPDATING_CONTENT,\n} from '../../shared/constants/ActionTypes';\n\nconst INIT_STATE = {\n error: '',\n loading: false,\n isAppDrawerOpen: false,\n updatingContent: false,\n message: '',\n};\n\nconst commonReducer = (state = INIT_STATE, action) => {\n switch (action.type) {\n case FETCH_START: {\n return {...state, error: '', message: '', loading: true};\n }\n case UPDATING_CONTENT: {\n return {...state, error: '', message: '', updatingContent: true};\n }\n case FETCH_SUCCESS: {\n return {\n ...state,\n error: '',\n message: '',\n loading: false,\n updatingContent: false,\n };\n }\n case SHOW_MESSAGE: {\n return {\n ...state,\n error: '',\n message: action.payload,\n loading: false,\n updatingContent: false,\n };\n }\n case FETCH_ERROR: {\n return {\n ...state,\n loading: false,\n error: action.payload,\n message: '',\n updatingContent: false,\n };\n }\n case HIDE_MESSAGE: {\n return {\n ...state,\n loading: false,\n error: '',\n message: '',\n updatingContent: false,\n };\n }\n case TOGGLE_APP_DRAWER: {\n return {\n ...state,\n isAppDrawerOpen: !state.isAppDrawerOpen,\n };\n }\n default:\n return state;\n }\n};\nexport default commonReducer;\n","/************\n * Developed by : Shiva Software Solutions\n * File Name : Dashboard.js\n * Date : 23-06-2021\n * Descriptions : Call api response using reducers\n ************/\nimport {\n GET_HC_DATA,\n DASHBOARD_PENDING_DATA,\n DASHBOARD_PENDING_COUNT,\n DASHBOARD_PENDING_PATIENT_DATA,\n PATIENT_SUCCESS_MSG,\n ERX_SUCCESS_MSG,\n DASHBOARD_ERX_DATA,\n GET_DOCTOR_EDITDATA,\n DASHBOARD_INSERT_PRESCRIPTION,\n DASHBOARD_INPROGRESSS_DATA,\n DASHBOARD_INPROGRESSS_COUNT,\n DOCTOR_SUCCESS_MSG,\n REJECT_ERX_MSG,\n DOCTOR_UPDATE_MSG,\n MEDICINE_SUCCESS_MSG,\n DASHBOARD_RX_DETAILS,\n DASHBOARD_ERX_DOC_OBSV,\n DASHBOARD_ERX_LAB_OBSV,\n DASHBOARD_ERX_PATIENT_VITAL,\n DASHBOARD_ERX_DOCPROCEDURE,\n DASHBOARD_ERX_MEDICINE_DETAIL,\n DASHBOARD_REJECT_DATA,\n DASHBOARD_REJECT_COUNT,\n REJECT_ERX_SUCCESS_MSG,\n DASHBOARD_COMPLETED_COUNT,\n UNIT_DATA,\n DASHBOARD_COMPLETED_DATA,\n DELETE_MEDCINE_SUCCESS_MSG,\n SET_DOCTOR_ID_NAME,\n DOCTOR_SPECIALIZATION,\n DOCTOR_SUBSPECIALIZATION,\n DOCTOR_QUALIFICATION,\n DEPARTMENT_MASTER,\n STATE_MASTER,\n OPT_NOTES,\n DOCTOR_SEARCH_ARRAY,\n ERX_IMG_ARR,\n ERX_IMG_OCR,\n DOCTOR_SEARCH_DATA,\n ERX_OPERATOR_NOTES,\n resulttitle,\n CHANGE_MOBILENO_RES,\n bloodsugarList,\n DASHBOARD_GRX_MEDICINE_DETAIL,\n REPORT_DETAILS,\n INVESTIGATION_CATEGORY_DATA,\n PATIENT_LISTS,\n TAG_CATEGORY_DATA,\n SEARCH_REPORTS_DATA,\n SEARCH_REPORTS_DATA_COUNT,\n ERX_HTML_DATA,\n ERX_HTML_NO_DATA,\n BUCKET_CAPTCHA,\n APPOINTMENT,\n APPOINTMENT_PATIENTS,\n INVESTIGATIONS_LIST,\n REPORT_PATIENT_LIST,\n REPORT_SUCCESS,\n REPORT_DELETE_SUCCESS,\n ONE_MG_DATA,\n OTP_TIME,\n} from '../../shared/constants/ActionTypes';\n\nconst initialState = {\n healthCare: null,\n dashboardPendingList: {},\n pendingCount: 0,\n dashboardPendingPatientData: {},\n patientsuccessmsg: null,\n erxsuccessmsg: null,\n rejecterxsuccessmsg: null,\n erxmedicinesuccessmsg: null,\n dashboarderxData: {},\n dashboarderxDetails: {},\n dashboarderxDocobsv: {},\n dashboarderxLabobsv: {},\n dashboarderxPatientVital: {},\n dashboarderxDocProcedure: [],\n dashboarderxmedicinedetail: {},\n doctorDetails: {},\n otptime: '',\n dashboardinsertprescriptions: {},\n inprogresCount: 0,\n dashboardInprogressList: {},\n dashboardRejectList: {},\n dashboardRejectcountList: null,\n doctorsuccessmsg: null,\n doctorupdatemsg: null,\n rejectsuccessmsg: null,\n dashboardCompletedList: {},\n dashboardCompletedcountList: null,\n unitdata: [],\n deletemedicinesuccessmsg: null,\n doctoridname: {},\n specializations: [],\n subspecializations: [],\n qualifications: [],\n departmentMaster: [],\n stateMaster: [],\n optNotes: '',\n doctorSearchDatas: [],\n searchableDoctor: {},\n erxOperatorNotes: [],\n resulttitle: {},\n changemobilenores: '',\n bloodsugarList: {},\n erximgdatas: [],\n erximgocrdatas: [],\n dashboardgrxmedicinedetail: {},\n reportDetails: [],\n investigationCategoryData: [],\n patientListdata: [],\n tagCategoryData: [],\n searchReportsData: [],\n searchReportsDataCounts: 0,\n erxhtmldata: {},\n erxhtmlnodata: '',\n bucketCaptcha: {},\n appointment: '',\n appointmentPatients: [],\n inves_list: [],\n patient_list: [],\n report_success: false,\n report_delete_success: '',\n oneMgData: '',\n};\n\nconst dashboardReducer = (state = initialState, action) => {\n switch (action.type) {\n case GET_HC_DATA:\n return {\n ...state,\n healthCare: action.payload,\n };\n case OPT_NOTES:\n return {\n ...state,\n optNotes: action.payload,\n };\n\n //Assign dashboard pending data\n case DASHBOARD_PENDING_DATA:\n return {\n ...state,\n dashboardPendingList: action.payload,\n };\n //Assign dashboard pending count\n case DASHBOARD_PENDING_COUNT:\n return {\n ...state,\n pendingCount: action.payload,\n };\n //Assign dashboard pending data\n case DASHBOARD_REJECT_DATA:\n return {\n ...state,\n dashboardRejectList: action.payload,\n };\n //Assign dashboard pending count\n case DASHBOARD_REJECT_COUNT:\n return {\n ...state,\n dashboardRejectcountList: action.payload,\n };\n //Assign dashboard pending Patient data\n case DASHBOARD_PENDING_PATIENT_DATA:\n return {\n ...state,\n dashboardPendingPatientData: action.payload,\n };\n //Assign dashboard pending Patient success msg\n case PATIENT_SUCCESS_MSG:\n return {\n ...state,\n patientsuccessmsg: action.payload,\n };\n //Assign successmsg\n case ERX_SUCCESS_MSG:\n return {\n ...state,\n erxsuccessmsg: action.payload,\n };\n //Assign successmsg\n case REJECT_ERX_MSG:\n return {\n ...state,\n rejecterxsuccessmsg: action.payload,\n };\n //Get operator notes data\n case ERX_OPERATOR_NOTES:\n return {\n ...state,\n erxOperatorNotes: action.payload,\n };\n //get image data\n case ERX_IMG_ARR:\n return {\n ...state,\n erximgdatas: action.payload,\n };\n //get erx with img data\n case ERX_IMG_OCR:\n return {\n ...state,\n erximgocrdatas: action.payload,\n };\n //Assign successmsg\n case MEDICINE_SUCCESS_MSG:\n return {\n ...state,\n erxmedicinesuccessmsg: action.payload,\n };\n //Assign dashboard pending erx data\n case DASHBOARD_ERX_DATA:\n return {\n ...state,\n dashboarderxData: action.payload,\n };\n case DASHBOARD_RX_DETAILS:\n return {\n ...state,\n dashboarderxDetails: action.payload,\n };\n case DASHBOARD_ERX_DOC_OBSV:\n return {\n ...state,\n dashboarderxDocobsv: action.payload,\n };\n case DASHBOARD_ERX_LAB_OBSV:\n return {\n ...state,\n dashboarderxLabobsv: action.payload,\n };\n case DASHBOARD_ERX_PATIENT_VITAL:\n return {\n ...state,\n dashboarderxPatientVital: action.payload,\n };\n case DASHBOARD_ERX_DOCPROCEDURE:\n return {\n ...state,\n dashboarderxDocProcedure: action.payload,\n };\n\n case DASHBOARD_ERX_MEDICINE_DETAIL:\n return {\n ...state,\n dashboarderxmedicinedetail: action.payload,\n };\n //bind doctor edit load data\n case GET_DOCTOR_EDITDATA:\n return {\n ...state,\n doctorDetails: action.payload,\n };\n //Insert prescription\n case DASHBOARD_INSERT_PRESCRIPTION:\n return {\n ...state,\n dashboardinsertprescriptions: action.payload,\n };\n //Assign dashboard inprogress data\n case DASHBOARD_INPROGRESSS_DATA:\n return {\n ...state,\n dashboardInprogressList: action.payload,\n };\n //Assign inprogress count\n case DASHBOARD_INPROGRESSS_COUNT:\n return {\n ...state,\n inprogresCount: action.payload,\n };\n //doctor success msg\n case DOCTOR_SUCCESS_MSG:\n return {\n ...state,\n doctorsuccessmsg: action.payload,\n };\n\n //doctor update msg\n case DOCTOR_UPDATE_MSG:\n return {\n ...state,\n doctorupdatemsg: action.payload,\n };\n\n //REJECT_ERX_SUCCESS_MSG\n case REJECT_ERX_SUCCESS_MSG:\n return {\n ...state,\n rejectsuccessmsg: action.payload,\n };\n\n case DASHBOARD_COMPLETED_DATA:\n return {\n ...state,\n dashboardCompletedList: action.payload,\n };\n case DASHBOARD_COMPLETED_COUNT:\n return {\n ...state,\n dashboardCompletedcountList: action.payload,\n };\n case UNIT_DATA:\n return {\n ...state,\n unitdata: action.payload,\n };\n\n //Assign delete medicine details\n case DELETE_MEDCINE_SUCCESS_MSG:\n return {\n ...state,\n deletemedicinesuccessmsg: action.payload,\n };\n case SET_DOCTOR_ID_NAME:\n return {\n ...state,\n doctoridname: action.payload,\n };\n\n //for specialization master array\n case DOCTOR_SPECIALIZATION:\n return {\n ...state,\n specializations: action.payload,\n };\n case DOCTOR_SUBSPECIALIZATION:\n return {\n ...state,\n subspecializations: action.payload,\n };\n case DOCTOR_QUALIFICATION:\n return {\n ...state,\n qualifications: action.payload,\n };\n\n // master list\n case DEPARTMENT_MASTER:\n return {\n ...state,\n departmentMaster: action.payload,\n };\n case STATE_MASTER:\n return {\n ...state,\n stateMaster: action.payload,\n };\n case DOCTOR_SEARCH_ARRAY:\n return {\n ...state,\n doctorSearchDatas: action.payload,\n };\n\n case DOCTOR_SEARCH_DATA:\n return {\n ...state,\n searchableDoctor: action.payload,\n };\n //Get title list\n case resulttitle:\n return {\n ...state,\n resulttitle: action.payload,\n };\n //Get blood sugar list\n case bloodsugarList:\n return {\n ...state,\n bloodsugarList: action.payload,\n };\n case CHANGE_MOBILENO_RES:\n return {\n ...state,\n changemobilenores: action.payload,\n };\n //Get grx medicine details\n case DASHBOARD_GRX_MEDICINE_DETAIL:\n return {\n ...state,\n dashboardgrxmedicinedetail: action.payload,\n };\n case REPORT_DETAILS:\n return {\n ...state,\n reportDetails: action.payload,\n };\n case INVESTIGATION_CATEGORY_DATA:\n return {\n ...state,\n investigationCategoryData: action.payload,\n };\n case TAG_CATEGORY_DATA:\n return {\n ...state,\n tagCategoryData: action.payload,\n };\n case PATIENT_LISTS:\n return {\n ...state,\n patientListdata: action.payload,\n };\n case SEARCH_REPORTS_DATA:\n return {\n ...state,\n searchReportsData: action.payload,\n };\n\n case SEARCH_REPORTS_DATA_COUNT:\n return {\n ...state,\n searchReportsDataCounts: action.payload,\n };\n case ERX_HTML_NO_DATA:\n return {\n ...state,\n erxhtmlnodata: action.payload,\n };\n case ERX_HTML_DATA:\n return {\n ...state,\n erxhtmldata: action.payload,\n };\n case BUCKET_CAPTCHA:\n return {\n ...state,\n bucketCaptcha: action.payload,\n };\n\n case APPOINTMENT:\n return {\n ...state,\n appointment: action.payload,\n };\n\n case APPOINTMENT_PATIENTS:\n return {\n ...state,\n appointmentPatients: action.payload,\n };\n case INVESTIGATIONS_LIST:\n return {\n ...state,\n inves_list: action.payload,\n };\n case REPORT_PATIENT_LIST:\n return {\n ...state,\n patient_list: action.payload,\n };\n case REPORT_SUCCESS:\n return {\n ...state,\n report_success: action.payload,\n };\n case REPORT_DELETE_SUCCESS:\n return {\n ...state,\n report_delete_success: action.payload,\n };\n case ONE_MG_DATA:\n return {\n ...state,\n oneMgData: action.payload,\n };\n case OTP_TIME:\n return {\n ...state,\n otptime: action.payload,\n };\n default:\n return state;\n }\n};\nexport default dashboardReducer;\n","/************\n * Developed by : Shiva Software Solutions\n * File Name : userManagement.js\n * Date : 23-06-2021\n * Descriptions : Call api response using reducers\n ************/\nimport {\n GET_USERMANAGE_DATA,\n DELETE_USER_DATA,\n GET_GUDMEDSUCCESS_DATA,\n GET_GUDMED_USER,\n RESET_USER_PASWD,\n} from '../../shared/constants/ActionTypes';\n\nconst initialState = {\n users: [],\n deleteuserdata: null,\n message: '',\n editloaddata: {},\n resetpaswd: '',\n};\n\nconst userManagementReducer = (state = initialState, action) => {\n switch (action.type) {\n //Assign user data\n case GET_USERMANAGE_DATA:\n return {\n ...state,\n users: action.payload,\n };\n //Assign Get user success data\n case GET_GUDMEDSUCCESS_DATA:\n return {\n ...state,\n message: action.payload,\n };\n //Assign Get user data\n case GET_GUDMED_USER:\n return {\n ...state,\n editloaddata: action.payload,\n };\n //Assign user delete response\n case DELETE_USER_DATA:\n return {\n ...state,\n deleteuserdata: action.payload,\n };\n //Assign success reset paswd\n case RESET_USER_PASWD:\n return {\n ...state,\n resetpaswd: action.payload,\n };\n\n default:\n return state;\n }\n};\nexport default userManagementReducer;\n","import {\n SET_AUTH_TOKEN,\n SIGNOUT_AUTH_SUCCESS,PATIENT_SIGNUP,OTP_SUCCESS,OTP_ERROR,\n UPDATE_AUTH_USER,SET_MOBILENO,SET_PASWD,OTP_SIGNUP_ERROR,SIGNIN_ERROR,\n} from '../../shared/constants/ActionTypes';\n\nconst INIT_STATE = {\n user: null,\n token: null,\n mobileno: null,\n paswd: null,\n signupstatus: '',\n otpsuccess:false,\n otperror:'',\n otpsignuperror: '',\n signinerror:'',\n};\n\nconst authReducer = (state = INIT_STATE, action) => {\n switch (action.type) {\n case UPDATE_AUTH_USER: {\n return {\n ...state,\n user: action.payload,\n };\n }\n case SIGNOUT_AUTH_SUCCESS: {\n return {\n ...state,\n user: null,\n };\n }\n case SET_AUTH_TOKEN: {\n return {\n ...state,\n token: action.payload,\n };\n }\n case SET_MOBILENO: {\n return {\n ...state,\n mobileno: action.payload,\n };\n }\n case SET_PASWD: {\n return {\n ...state,\n paswd: action.payload,\n };\n }\n case PATIENT_SIGNUP: {\n return {\n ...state,\n signupstatus: action.payload,\n };\n }\n case OTP_SUCCESS: {\n return {\n ...state,\n otpsuccess: action.payload,\n };\n }\n case OTP_SIGNUP_ERROR: {\n return {\n ...state,\n otpsignuperror: action.payload,\n };\n }\n case SIGNIN_ERROR: \n { \n return { \n ...state, \n signinerror: action.payload, \n }; \n }\n case OTP_ERROR: \n { \n return { \n ...state, \n otperror: action.payload, \n }; \n }\n default:\n return state;\n }\n};\nexport default authReducer;\n","/************\n * Developed by : Shiva Software Solutions\n * File Name : Patient.js\n * Date : 23-06-2021\n * Descriptions : Call api response using reducers\n ************/\nimport {\n PATIENT_COMPLETED_DATA,\n PATIENT_COMPLETED_COUNT,\n PATIENT_DASHBOARD_DATA,\n FORGOT_PASWD_SUCCESS,\n FORGOT_PASWD_ERROR,\n PATIENT_NAME_LIST,\n ERX_IMG_ARR,\n ERX_IMG_OCR,\n ERX_DATA_HTML,\n ERX_DATA_HTML_NO_DATA, PATIENT_APPOINTMENT_LIST, PATIENT_APPOINTMENT_COUNT\n} from '../../shared/constants/ActionTypes';\n\nconst initialState = {\n patientlist: null,\n patientcount: null,\n forgotpaswdsuccess: '',\n forgotpaswderror: '',\n patNameList: [],\n erximgdatas: [],\n erximgocrdatas: [],\n patientvitaldashboarddata: null,\n erxhtmldata: [],\n erxhtmlnodata: '',\n patientAppointmentCount: 0,\n patientAppointments: []\n};\n\nconst patientReducer = (state = initialState, action) => {\n switch (action.type) {\n //Assign user data\n case PATIENT_COMPLETED_DATA:\n return {\n ...state,\n patientlist: action.payload,\n };\n case PATIENT_COMPLETED_COUNT:\n return {\n ...state,\n patientcount: action.payload,\n };\n case FORGOT_PASWD_SUCCESS:\n return {\n ...state,\n forgotpaswdsuccess: action.payload,\n };\n case FORGOT_PASWD_ERROR:\n return {\n ...state,\n forgotpaswderror: action.payload,\n };\n case PATIENT_NAME_LIST:\n return {\n ...state,\n patNameList: action.payload,\n };\n //get image data\n case ERX_IMG_ARR:\n return {\n ...state,\n erximgdatas: action.payload,\n };\n //get erx with img data\n case ERX_IMG_OCR:\n return {\n ...state,\n erximgocrdatas: action.payload,\n };\n case PATIENT_DASHBOARD_DATA:\n return {\n ...state,\n patientvitaldashboarddata: action.payload,\n };\n case ERX_DATA_HTML:\n return {\n ...state,\n erxhtmldata: action.payload,\n };\n case ERX_DATA_HTML_NO_DATA:\n return {\n ...state,\n erxhtmlnodata: action.payload,\n };\n\n case PATIENT_APPOINTMENT_LIST:\n return {\n ...state,\n patientAppointments: action.payload,\n };\n case PATIENT_APPOINTMENT_COUNT:\n return {\n ...state,\n patientAppointmentCount: action.payload,\n };\n\n default:\n return state;\n }\n};\nexport default patientReducer;\n","/************\n * Developed by : Shiva Software Solutions\n * File Name : myprofile.js\n * Date : 23-06-2021\n * Descriptions : Call api response using reducers\n ************/\nimport {\n STATE_MASTER,\n PATIENT_PROFILE,\n SAVE_PROFILES,\n} from '../../shared/constants/ActionTypes';\n\nconst initialState = {\n stateMaster: [],\n profileData: {},\n saveProfile: false,\n};\n\nconst profileReducer = (state = initialState, action) => {\n switch (action.type) {\n case STATE_MASTER:\n return {\n ...state,\n stateMaster: action.payload,\n };\n case PATIENT_PROFILE:\n return {\n ...state,\n profileData: action.payload,\n };\n case SAVE_PROFILES:\n return {\n ...state,\n saveProfile: action.payload,\n };\n default:\n return state;\n }\n};\nexport default profileReducer;\n","/************\n * Developed by : Shiva Software Solutions\n * File Name : Patient.js\n * Date : 23-06-2021\n * Descriptions : Call api response using reducers\n ************/\nimport {\n PATIENT_VITAL_HISTORY_DATA,\n PATIENT_VITAL_HISTORY_DATA_COUNT,\n VITAL_DATA_NOT_FOUND,\n VITAL_PDF_DATA,\n PATIENT_VITAL_PATIENTS,\n COVID_DATA_HTML,\n COVID_DATA_HTML_NO_DATA,\n} from '../../shared/constants/ActionTypes';\n\nconst initialState = {\n patientvitallist: [],\n patientvitalcount: 0,\n errordata: '',\n vitalsdata: '',\n vitalpatients: [],\n covid_datas: [],\n covid_no_datas: '',\n};\nconst covidVitalReducer = (state = initialState, action) => {\n switch (action.type) {\n //Assign user data\n case PATIENT_VITAL_HISTORY_DATA:\n return {\n ...state,\n patientvitallist: action.payload,\n };\n case PATIENT_VITAL_HISTORY_DATA_COUNT:\n return {\n ...state,\n patientvitalcount: action.payload,\n };\n //Get vital history\n case VITAL_PDF_DATA:\n return {\n ...state,\n vitalsdata: action.payload,\n };\n //Get vital error\n case VITAL_DATA_NOT_FOUND:\n return {\n ...state,\n errordata: action.payload,\n };\n case PATIENT_VITAL_PATIENTS:\n return {\n ...state,\n vitalpatients: action.payload,\n };\n //GEt covid data\n case COVID_DATA_HTML:\n return {\n ...state,\n covid_datas: action.payload,\n };\n //GEt covid error\n case COVID_DATA_HTML_NO_DATA:\n return {\n ...state,\n covid_no_datas: action.payload,\n };\n\n default:\n return state;\n }\n};\nexport default covidVitalReducer;\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 21-12-2021\n * Descriptions : Call api response using reducers for master data\n ************/\nimport {INSERT_OWN_ERX_SUCCESS} from '../../shared/constants/ActionTypes';\n//Inital state\nconst initialState = {\n owneRx_succes: '',\n};\n//Doctor List\nconst uploadeRxReducer = (state = initialState, action) => {\n switch (action.type) {\n //symptom master list\n case INSERT_OWN_ERX_SUCCESS:\n return {\n ...state,\n owneRx_succes: action.payload,\n };\n default:\n return state;\n }\n};\nexport default uploadeRxReducer;\n","import {\n MAPPING_PATIENT_LIST,\n MAPPING_SUCCESS,\n DROP_PATIENT_LIST,\n DROP_PATIENT_RELATION,\n PATIENT_RELATION_SUCCESS,\n} from '../../shared/constants/ActionTypes';\n\nconst INIT_STATE = {\n mapping_patients: [],\n mapping_success: '',\n drop_patients: [],\n patient_relations: [],\n patient_relation_success: '',\n};\n\nconst MappingPatientReducer = (state = INIT_STATE, action) => {\n switch (action.type) {\n case MAPPING_PATIENT_LIST:\n return {\n ...state,\n mapping_patients: action.payload,\n };\n case DROP_PATIENT_LIST:\n return {\n ...state,\n drop_patients: action.payload,\n };\n case MAPPING_SUCCESS:\n return {\n ...state,\n mapping_success: action.payload,\n };\n case DROP_PATIENT_RELATION:\n return {\n ...state,\n patient_relations: action.payload,\n };\n case PATIENT_RELATION_SUCCESS:\n return {\n ...state,\n patient_relation_success: action.payload,\n };\n\n default:\n return state;\n }\n};\nexport default MappingPatientReducer;\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 23-06-2021\n * Descriptions : Define reducers\n ************/\nimport {combineReducers} from 'redux';\nimport {connectRouter} from 'connected-react-router';\nimport Settings from './Setting';\nimport Common from './Common';\nimport Dashboard from './Dashboard';\nimport UserManageData from './userManagement';\nimport Auth from './Auth';\nimport Patient from './Patient';\nimport profileReducer from './myprofile';\nimport CovidVitals from './CovidVitals';\nimport UploadeRx from './UploadeRx';\nimport Mapping_Patient from './MergePatient';\n\nconst reducers = (history) =>\n combineReducers({\n router: connectRouter(history),\n settings: Settings,\n auth: Auth,\n dashboard: Dashboard,\n userManage: UserManageData,\n common: Common,\n patient: Patient,\n profile: profileReducer,\n covidvitals: CovidVitals,\n UploadeRx: UploadeRx,\n Mapping_Patient: Mapping_Patient,\n });\nexport default reducers;\n","import {applyMiddleware, compose, createStore} from 'redux';\nimport reducers from '../reducers';\nimport {routerMiddleware} from 'connected-react-router';\nimport thunk from 'redux-thunk';\nimport {setAuthToken} from '../../@crema/services/auth/jwt-auth/jwt-api';\n\nconst createBrowserHistory = require('history').createBrowserHistory;\nconst history = createBrowserHistory();\nconst routeMiddleware = routerMiddleware(history);\n\nconst middlewares = [thunk, routeMiddleware];\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n\nexport default function configureStore(initialState) {\n const store = createStore(\n reducers(history),\n initialState,\n composeEnhancers(applyMiddleware(...middlewares)),\n );\n\n if (module.hot) {\n // Enable Webpack hot module replacement for reducers\n module.hot.accept('../reducers/index', () => {\n const nextRootReducer = require('../reducers');\n store.replaceReducer(nextRootReducer);\n });\n }\n\n let currentState = store.getState();\n store.subscribe(() => {\n // keep track of the previous and current state to compare changesAppLayout/index.j\n let previousState = currentState;\n currentState = store.getState();\n // if the token changes set the value in localStorage and axios headers\n if (previousState.auth.token !== currentState.auth.token) {\n const token = currentState.auth.token;\n setAuthToken(token);\n }\n });\n return store;\n}\nexport {history};\n","/************\n * Developed by : Shiva Software Solutions\n * File Name : App.js\n * Date : 21-06-2021\n * Descriptions : Main page of application\n ************/\nimport React from 'react';\nimport {Provider} from 'react-redux';\nimport {ConnectedRouter} from 'connected-react-router';\nimport AppLayout from '@crema/core/AppLayout';\nimport AuthRoutes from '@crema/utility/AuthRoutes';\nimport LocaleProvider from '@crema/utility/LocaleProvider';\nimport CremaThemeProvider from '@crema/utility/CremaThemeProvider';\nimport CremaStyleProvider from '@crema/utility/CremaStyleProvider';\nimport ContextProvider from '@crema/utility/ContextProvider';\n\nimport configureStore, {history} from './redux/store';\nimport CssBaseline from '@material-ui/core/CssBaseline';\n\nconst store = configureStore();\n\n// //Prevent Right Click\n// const preventRightClick = () => {\n// document.addEventListener('contextmenu', (event) => event.preventDefault());\n// };\n\nconst App = () => (\n // \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nexport default App;\n","import axios from './ApiConfig';\n\nconst MockAdapter = require('axios-mock-adapter');\n\nexport default new MockAdapter(axios, {delayResponse: 200});\n","//initialize firebase\nimport './firebase/firebase';\nimport './jwt-auth/jwt-api';\n\nimport Amplify from 'aws-amplify';\nimport {awsConfig} from './aws-cognito/aws-exports';\n//initialize aws\nAmplify.configure(awsConfig);\n","// WARNING: DO NOT EDIT. This file is automatically generated by AWS Amplify. It will be overwritten.\n\nexport const awsConfig = {\n aws_project_region: 'us-east-1',\n aws_cognito_identity_pool_id:\n 'us-east-1:e7ff8039-eaba-4b54-acde-d2d17edb2dce',\n aws_cognito_region: 'us-east-1',\n aws_user_pools_id: 'us-east-1_p7i7U9Clu',\n aws_user_pools_web_client_id: '1v0vqjidrbik5r3104buph0s7g',\n oauth: {\n domain: 'crema-react.auth.us-east-1.amazoncognito.com',\n scope: [\n 'phone',\n 'email',\n 'openid',\n 'profile',\n 'aws.cognito.signin.user.admin',\n ],\n redirectSignIn: 'https://crema-react.firebaseapp.com/',\n redirectSignOut: 'https://crema-react.firebaseapp.com/',\n responseType: 'code',\n },\n federationTarget: 'COGNITO_USER_POOLS',\n};\n","const healthCareData = {\n salesState: [\n {\n id: 1,\n category: 'Dentist',\n name: 'Dr. Matthew K. Gentry',\n bgColor: '#0A8FDC',\n time: '9 AM',\n icon: '/assets/images/dashboard/dentist.png',\n },\n {\n id: 2,\n category: 'Heart Specialist',\n name: 'Dr. Edna J. Weeks',\n bgColor: '#00B59C',\n time: '10 AM',\n icon: '/assets/images/dashboard/heart.png',\n },\n {\n id: 3,\n category: 'Neurologist',\n name: 'Dr. Audrey Thompson',\n bgColor: '#B745FF',\n time: '9 AM',\n icon: '/assets/images/dashboard/neuro.png',\n },\n {\n id: 4,\n category: 'Pulmonologist',\n name: 'Dr. Laurie Hopson',\n bgColor: '#3A3849',\n time: '10 AM',\n icon: '/assets/images/dashboard/pulmo.png',\n },\n ],\n heathStatics: {\n dataOne: [\n {month: 'Jan', number: 150},\n {month: 'Feb', number: 280},\n {month: 'Mar', number: 180},\n {month: 'Apr', number: 290},\n {month: 'May', number: 190},\n {month: 'Jun', number: 320},\n {month: 'Jul', number: 240},\n {month: 'Aug', number: 300},\n {month: 'Sep', number: 270},\n {month: 'Oct', number: 350},\n {month: 'Nov', number: 280},\n {month: 'Dec', number: 380},\n ],\n dataTwo: [\n {month: 'Jan', number: 20},\n {month: 'Feb', number: 170},\n {month: 'Mar', number: 40},\n {month: 'Apr', number: 200},\n {month: 'May', number: 70},\n {month: 'Jun', number: 270},\n {month: 'Jul', number: 100},\n {month: 'Aug', number: 310},\n {month: 'Sep', number: 130},\n {month: 'Oct', number: 350},\n {month: 'Nov', number: 170},\n {month: 'Dec', number: 200},\n ],\n dataThree: [\n {month: 'Jan', number: 110},\n {month: 'Feb', number: 230},\n {month: 'Mar', number: 100},\n {month: 'Apr', number: 290},\n {month: 'May', number: 160},\n {month: 'Jun', number: 320},\n {month: 'Jul', number: 220},\n {month: 'Aug', number: 450},\n {month: 'Sep', number: 260},\n {month: 'Oct', number: 490},\n {month: 'Nov', number: 240},\n {month: 'Dec', number: 200},\n ],\n },\n newPatients: [\n {month: 'Aug', number: 350},\n {month: 'Sep', number: 260},\n {month: 'Oct', number: 350},\n {month: 'Nov', number: 240},\n {month: 'Dec', number: 340},\n {month: 'Jul', number: 220},\n ],\n\n cancelVisits: [\n {month: 'Jan', number: 110},\n {month: 'Feb', number: 230},\n {month: 'Mar', number: 180},\n {month: 'Apr', number: 250},\n {month: 'May', number: 160},\n {month: 'Jun', number: 260},\n ],\n\n topDoctors: [\n {\n id: 1,\n name: 'Dr Nail Wagner',\n speciality: 'Heart Specialist',\n profile_pic: 'https://via.placeholder.com/150',\n rating: '5',\n scheduled: false,\n },\n {\n id: 2,\n name: 'Dr. Kane Williamson',\n speciality: 'Psychiatrist',\n profile_pic: 'https://via.placeholder.com/150',\n rating: '5',\n scheduled: false,\n },\n {\n id: 3,\n name: 'Dr Tom Bundle',\n speciality: 'Neurologist',\n profile_pic: 'https://via.placeholder.com/150',\n rating: '5',\n scheduled: true,\n },\n {\n id: 4,\n name: 'Dr Tom Bundle',\n speciality: 'Neurologist',\n profile_pic: 'https://via.placeholder.com/150',\n rating: '5',\n scheduled: false,\n },\n {\n id: 5,\n name: 'Jone B. Rilea',\n speciality: 'Heart Specialist',\n profile_pic: 'https://via.placeholder.com/150',\n rating: '5',\n scheduled: false,\n },\n ],\n upcomingAppointment: [\n {\n id: 1,\n name: 'Dr Nail Wagner',\n speciality: 'Heart Specialist',\n profile_pic: 'https://via.placeholder.com/150',\n appointmentTime: '9:30',\n appointmentDate: ' 15 Aug',\n },\n {\n id: 2,\n name: 'Dr. Kane Williamson',\n speciality: 'Psychiatrist',\n profile_pic: 'https://via.placeholder.com/150',\n appointmentTime: '9:30',\n appointmentDate: ' 15 Aug',\n },\n {\n id: 3,\n name: 'Dr. Tom Bundle',\n speciality: 'Neurologist',\n profile_pic: 'https://via.placeholder.com/150',\n appointmentTime: '9:30',\n appointmentDate: ' 15 Aug',\n },\n {\n id: 4,\n name: 'Jone B. Rilea',\n speciality: 'Rheumatologist',\n profile_pic: 'https://via.placeholder.com/150',\n appointmentTime: '9:30',\n appointmentDate: ' 15 Aug',\n },\n {\n id: 5,\n name: 'Jone B. Rilea',\n speciality: 'Heart Specialist',\n profile_pic: 'https://via.placeholder.com/150',\n appointmentTime: '9:30',\n appointmentDate: ' 15 Aug',\n },\n ],\n notifications: [\n {\n id: 1,\n title: 'You confirmed to dermatologist',\n time: '1 days ago',\n color: '#0A8FDC',\n },\n {\n id: 2,\n title: 'Your results are available to download',\n time: '2 days ago',\n color: '#0A8FDC',\n },\n {\n id: 3,\n title: 'Dr. John Smith cancelled your visit',\n time: '2 days ago',\n color: '#F44D50',\n },\n {\n id: 4,\n title: 'Dr. Ann Doe changed date of your visit',\n time: '3 days ago',\n color: '#F44D50',\n },\n {\n id: 5,\n title: 'You confirmed to dermatologist',\n time: '3 days ago',\n color: '#F44D50',\n },\n {\n id: 6,\n title: 'Dr. Ann Doe changed date of your visit',\n time: '4 days ago',\n color: '#0A8FDC',\n },\n ],\n hospitalStatics: [\n {\n id: 1,\n value: '3,256',\n name: 'Total Patient',\n icon: '/assets/images/dashboard/icon-patient.png',\n },\n {\n id: 2,\n value: '694',\n name: 'Available Staff',\n icon: '/assets/images/dashboard/icon-available-staff.png',\n },\n {\n id: 3,\n value: '$4,435',\n name: 'Avg Treat Cost',\n icon: '/assets/images/dashboard/icon-avg-cost.png',\n },\n {\n id: 4,\n value: '1,150',\n name: 'Available Cars',\n icon: '/assets/images/dashboard/icon-available-car.png',\n },\n ],\n recentPatients: [\n {\n id: '#SK231',\n name: 'Ina Hughes',\n profile_pic: 'https://via.placeholder.com/150',\n gender: 'Male',\n weight: '76',\n assignedDr: 'Dr. Michael Clark',\n date: '08-12-2020',\n status: 'Typhoid',\n color: '#0A8FDC',\n },\n {\n id: '#SK232',\n name: 'Myrtie Ferguson',\n profile_pic: 'https://via.placeholder.com/150',\n gender: 'Female',\n assignedDr: 'Dr. Pauline',\n date: '07-30-2020',\n weight: '65',\n status: 'Dengue',\n color: '#49BD65',\n },\n {\n id: '#SK233',\n name: 'Johnny Herrera',\n profile_pic: 'https://via.placeholder.com/150',\n weight: '67',\n gender: 'Male',\n assignedDr: 'Dr. David',\n date: '07-30-2020',\n status: 'Cancer',\n color: '#F44D50',\n },\n {\n id: '#SK234',\n name: 'Jone B. Rilea',\n profile_pic: 'https://via.placeholder.com/150',\n weight: '80',\n gender: 'Male',\n assignedDr: 'Dr. Tom Bundle',\n date: '07-30-2020',\n status: 'Covid 19',\n color: '#F44D50',\n },\n ],\n hospitalActivity: [\n {name: 'Jan', Consultations: 150, Patients: 270},\n {name: 'Feb', Consultations: 250, Patients: 200},\n {name: 'Mar', Consultations: 180, Patients: 280},\n {name: 'Apr', Consultations: 278, Patients: 250},\n {name: 'May', Consultations: 250, Patients: 300},\n {name: 'Jun', Consultations: 350, Patients: 250},\n {name: 'Jul', Consultations: 280, Patients: 300},\n {name: 'Aug', Consultations: 340, Patients: 240},\n {name: 'Sep', Consultations: 280, Patients: 300},\n {name: 'Oct', Consultations: 400, Patients: 270},\n {name: 'Nov', Consultations: 250, Patients: 240},\n {name: 'Dec', Consultations: 400, Patients: 270},\n ],\n bloodCard: [\n {\n id: 1,\n name: 'Blood Pressure',\n icon: '/assets/images/dashboard/icon-blood.png',\n measurement: '1141/90 mmhg',\n color: '#F25766',\n },\n {\n id: 2,\n name: 'Blood Glucose',\n icon: '/assets/images/dashboard/icon-bloodgroup.png',\n measurement: '140 mg/dl',\n color: '#2A8853',\n },\n {\n id: 3,\n name: 'Respiration Rate',\n icon: '/assets/images/dashboard/icon-beat.png',\n measurement: '60 beats min',\n color: '#DA8E16',\n },\n {\n id: 4,\n name: 'Immunity Rate',\n icon: '/assets/images/dashboard/icon-immune.png',\n measurement: '4800 μL',\n color: '#2717A4',\n },\n ],\n appointmentCards: [\n {\n id: 1,\n name: 'All Appointment',\n value: '1878',\n icon: '/assets/images/dashboard/icon-appointment.png',\n chartValue: '2.68',\n chartTime: 'Since last month',\n chartData: [\n {month: 'Jan', users: 1000},\n {month: 'Feb', users: 600},\n {month: 'Mar', users: 1100},\n {month: 'Apr', users: 900},\n {month: 'May', users: 1000},\n {month: 'Jun', users: 500},\n ],\n color: '#F77568',\n },\n {\n id: 2,\n name: 'Surgery',\n value: '1878',\n icon: '/assets/images/dashboard/icon-surgery.png',\n chartValue: '2.68',\n chartTime: 'Since last month',\n chartData: [\n {month: 'Jan', users: 1000},\n {month: 'Feb', users: 600},\n {month: 'Mar', users: 1100},\n {month: 'Apr', users: 900},\n {month: 'May', users: 1000},\n {month: 'Jun', users: 500},\n ],\n color: '#265ED7',\n },\n ],\n heartCard: {\n id: 1,\n title: 'Heart Rate',\n measurement: '122',\n unit: 'bpm',\n graphData: [\n {name: '1', rate: 50},\n {name: '2', rate: 52},\n {name: '3', rate: 67},\n {name: '4', rate: 0},\n {name: '5', rate: 90},\n {name: '6', rate: 67},\n {name: '7', rate: 70},\n {name: '8', rate: 45},\n {name: '9', rate: 50},\n {name: '10', rate: 63},\n {name: '11', rate: 50},\n {name: '12', rate: 48},\n ],\n color: '#FD3A84',\n },\n temperatureCard: {\n id: 1,\n title: 'Heart Rate',\n measurement: '122',\n unit: 'bpm',\n graphData: [\n {name: '1', rate: 50},\n {name: '2', rate: 52},\n {name: '3', rate: 67},\n {name: '4', rate: 0},\n {name: '5', rate: 90},\n {name: '6', rate: 67},\n {name: '7', rate: 70},\n {name: '8', rate: 45},\n {name: '9', rate: 50},\n {name: '10', rate: 63},\n {name: '11', rate: 50},\n {name: '12', rate: 48},\n ],\n color: '#0A8FDC',\n },\n doses: [\n {\n id: 1,\n value: 'Vitamin D',\n name: '2 Times everyday',\n icon: '/assets/images/dashboard/icon-vitamin.png',\n },\n {\n id: 2,\n value: 'Immune Renew',\n name: '3 Times everyday',\n icon: '/assets/images/dashboard/icon-immune.png',\n },\n ],\n yourActivity: [\n {day: 'Sun', visits: 50},\n {day: 'Mon', visits: 52},\n {day: 'Tue', visits: 67},\n {day: 'Wed', visits: 30},\n {day: 'Thu', visits: 90},\n {day: 'Fri', visits: 67},\n {day: 'Sat', visits: 57},\n ],\n};\n\nexport default healthCareData;\n","import mock from '../../MockConfig';\nimport healthCare from '../../db/dashboard/healthCare';\n\n\n\nmock.onGet('/dashboard/health_care').reply(200, healthCare);\n","const userManagementList = [\n {\n id: 13223,\n name: 'Asantha Powel',\n image: 'https://via.placeholder.com/150',\n skills: ['React', 'Javascript', 'Native', 'Drupal'],\n information:\n \"There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text.\",\n email: 'asantha@example.com',\n phone: '+91324534563',\n website: 'www.asantha.com',\n charge: 20,\n readTime: '2 minutes',\n shares: '5k',\n retweets: '25k',\n topic: 'Job Interviews',\n },\n {\n id: 32433,\n name: 'Alastair Jordan',\n image: 'https://via.placeholder.com/150',\n skills: ['Java', 'Javascript', 'Flutter', 'Drupal'],\n information:\n \"There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text.\",\n email: 'alastair@example.com',\n phone: '+9145424363',\n website: 'www.alastair.com',\n charge: 18,\n readTime: '6 minutes',\n shares: '15k',\n retweets: '235k',\n topic: 'Health and Medicine',\n },\n {\n id: 54534,\n name: 'Johnson Bravo',\n image: 'https://via.placeholder.com/150',\n skills: ['PHP', 'HTML', 'Native', 'Drupal'],\n information:\n \"There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text.\",\n email: 'johnson@example.com',\n phone: '+9135432445',\n website: 'www.johnson.com',\n charge: 25,\n readTime: '8 minutes',\n shares: '59k',\n retweets: '225k',\n topic: 'World Economy',\n },\n {\n id: 43432,\n name: 'Johana Peterson',\n image: 'https://via.placeholder.com/150',\n skills: ['Wordpress', 'Laravel', 'Native', 'CMS'],\n information:\n \"There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text.\",\n email: 'johana@example.com',\n phone: '+9134352343',\n website: 'www.johana.com',\n charge: 20,\n readTime: '5 minutes',\n shares: '52k',\n retweets: '125k',\n topic: 'Study & Stress',\n },\n {\n id: 35623,\n name: 'Heath Streak',\n image: 'https://via.placeholder.com/150',\n skills: ['Angular', 'Javascript', 'Flutter', 'Android'],\n information:\n \"There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text.\",\n email: 'heath@example.com',\n phone: '+91345542435',\n website: 'www.heath.com',\n charge: 22,\n readTime: '4 minutes',\n shares: '59k',\n retweets: '525k',\n topic: 'Technology Advancement',\n },\n {\n id: 76312,\n name: 'Sunita Gough',\n image: 'https://via.placeholder.com/150',\n skills: ['Vue', 'Java', 'Native', 'Swift'],\n information:\n \"There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text.\",\n email: 'sunita@example.com',\n phone: '+1334534563',\n website: 'www.sunita.com',\n charge: 30,\n readTime: '11 minutes',\n shares: '125k',\n retweets: '255k',\n topic: 'Aeronautical Science',\n },\n ];\n export default userManagementList;\n ","import mock from '../../MockConfig';\nimport userManagementList from '../../db/userManagementList';\n\nmock.onGet('/api/userManagement/users').reply(200, userManagementList);\n","import mock from './MockConfig';\nimport './auth'; //include auth initial config\nimport './apis';\n\nmock.onAny().passThrough();\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport 'react-big-calendar/lib/css/react-big-calendar.css';\nimport 'react-notifications-component/dist/theme.css';\nimport 'react-perfect-scrollbar/dist/css/styles.css';\nimport 'slick-carousel/slick/slick.css';\nimport 'slick-carousel/slick/slick-theme.css';\nimport 'react-table/react-table.css';\n\nimport './shared/styles/index.css';\nimport * as serviceWorker from './serviceWorker';\nimport App from './App';\nimport '@crema/services';\n\nReactDOM.render(, document.getElementById('root'));\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n","import PropTypes from 'prop-types';\nimport React, {memo} from 'react';\nimport {VelocityComponent} from 'velocity-react';\nimport 'velocity-animate/velocity.ui';\n\nconst AppAnimate = (props) => {\n const children = React.cloneElement(props.children, {\n style: {\n ...props.children.style,\n visibility: 'hidden',\n },\n });\n return {children};\n};\n\nAppAnimate.propTypes = {\n children: PropTypes.element.isRequired,\n};\n\nAppAnimate.defaultProps = {\n animation: 'transition.fadeIn',\n runOnMount: true,\n targetQuerySelector: null,\n interruptBehavior: 'stop',\n visibility: 'visible',\n duration: 400,\n delay: 100,\n easing: [0.4, 0.0, 0.2, 1],\n display: null,\n setRef: undefined,\n};\n\nexport default memo(AppAnimate);\n","import React from 'react';\n\nexport default React.createContext({});\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 28-06-2021\n * Descriptions : To call Sigin for gudmed operators and admin design page\n ************/\nexport const authRole = {\n admin: ['admin'],\n user: ['Patient'],\n adminRoles: [1],\n dashboardRoles: [1],\n};\n\nexport const userRole = {\n user: [\n {\n roleId: 1,\n roleName: 'Patient',\n },\n ],\n};\n\nexport const defaultUser = {\n displayName: 'John Alex',\n email: 'demo@example.com',\n token: 'access-token',\n role: 'user',\n photoURL: 'https://via.placeholder.com/150',\n};\nexport const initialUrl = '/dashboard'; // this url will open after login\nexport const initUrlProfile = '/my-profile'; // this url will open after login\nexport const MobileRegExp = /^[0-9\\b]+$/;\nexport const digitRegExp = /^[0-9]*\\.?[0-9]*$/;\nexport const allowDouble = /^[0-9\\b.]+$/;\n// export const nameRegExpdot = /[^A-Za-z\\s.]/;\nexport const nameRegExpdot = /^\\p{Lu}\\p{Ll}+( \\p{Lu}\\p{Ll}+)*$/;\nexport const AvoidSpecialCharacterRegExp = /[`!@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?~¬£]/;\nexport const AvoidSpecialsearchCharacterRegExp = /[`!@#$%^&*()_+\\=\\[\\]{};':\"\\\\|,.<>\\/?~¬£]/;\nexport const AvoidSpecialCharacterAddressRegExp = /[`!@#$%^*+\\=\\[\\]{};:\"\\\\|<>\\?~¬£]/;\nexport const AvoidSpecialCharacterMailRegExp = /[`!#$%^&*()+\\-=\\[\\]{};':\"\\\\|,<>\\/?~¬£]/;\nexport const nameRegExp = /[^A-Za-z\\s]/;\nexport const addressRegExp = /^[A-Za-z\\s][0-9]*\\.?[0-9]*$/;\nexport const MailRegExp = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n// /^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\nexport const passwordRegExp = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d)(?=.*[@$!%*#?&])[A-Za-z\\d@$!%*#?&]{8,20}$/;\n\nexport const genderMaster = [\n {\n genderCode: 1,\n gender: 'Male',\n },\n {genderCode: 2, gender: 'Female'},\n {genderCode: 3, gender: 'Transgender'},\n];\n\nexport const tempceltofaren = [\n {cell: 35.1, faren: 95.2},\n {cell: 35.2, faren: 95.4},\n {cell: 35.3, faren: 95.6},\n {cell: 35.4, faren: 95.8},\n {cell: 35.6, faren: 96.0},\n {cell: 35.7, faren: 96.2},\n {cell: 35.8, faren: 96.4},\n {cell: 35.9, faren: 96.6},\n {cell: 36.0, faren: 96.8},\n {cell: 36.1, faren: 97.0},\n {cell: 36.2, faren: 97.2},\n {cell: 36.3, faren: 97.4},\n {cell: 36.4, faren: 97.6},\n {cell: 36.5, faren: 97.7},\n {cell: 36.6, faren: 97.8},\n {cell: 36.7, faren: 98.0},\n {cell: 36.8, faren: 98.2},\n {cell: 36.9, faren: 98.4},\n {cell: 37.0, faren: 98.6},\n {cell: 37.1, faren: 98.8},\n {cell: 37.3, faren: 99.2},\n {cell: 37.4, faren: 99.4},\n {cell: 37.6, faren: 99.6},\n {cell: 37.7, faren: 99.8},\n {cell: 37.8, faren: 100.0},\n {cell: 37.9, faren: 100.2},\n {cell: 38.0, faren: 100.4},\n {cell: 38.1, faren: 100.6},\n {cell: 38.2, faren: 100.8},\n {cell: 38.3, faren: 101.0},\n {cell: 38.4, faren: 101.2},\n {cell: 38.6, faren: 101.4},\n {cell: 38.7, faren: 101.6},\n {cell: 38.8, faren: 101.8},\n {cell: 38.9, faren: 102.0},\n {cell: 39.0, faren: 102.2},\n {cell: 39.1, faren: 102.4},\n {cell: 39.2, faren: 102.6},\n {cell: 39.3, faren: 102.8},\n {cell: 39.4, faren: 103.0},\n {cell: 39.7, faren: 103.4},\n {cell: 39.8, faren: 103.6},\n {cell: 39.9, faren: 103.8},\n {cell: 40.0, faren: 104.0},\n {cell: 40.1, faren: 104.2},\n {cell: 40.2, faren: 104.4},\n {cell: 40.3, faren: 104.6},\n {cell: 40.4, faren: 104.8},\n {cell: 40.6, faren: 105.0},\n {cell: 40.7, faren: 105.2},\n {cell: 40.8, faren: 105.4},\n {cell: 40.9, faren: 105.6},\n {cell: 41.0, faren: 105.8},\n {cell: 41.1, faren: 106.0},\n {cell: 41.2, faren: 106.2},\n {cell: 41.3, faren: 106.4},\n {cell: 41.4, faren: 106.6},\n {cell: 41.6, faren: 106.8},\n];\n\nexport const status = {\n pending: 0,\n inprogress: 1,\n rejected: 2,\n completed: 3,\n sendreview: 4,\n returnBack: 5,\n};\n\nexport const englishLanguage = {\n heading: 'Add Prescription',\n firstName: 'Patient Name',\n lastName: 'Last Name',\n mobileNo: 'Mobile No.',\n email: 'Email',\n reminder: 'Reminder',\n genericMedicine: 'Generic Medicine',\n needCall: 'Need Call',\n callbackNo: 'Callback Mobile No.',\n uploadImage: 'Upload Prescription',\n uploadReport: 'Upload Reports',\n yes: 'Yes',\n no: 'No',\n save: 'Save',\n browse: 'Browse',\n errImagePdf: 'Please upload prescription is in JPEG/PNG/PDF',\n errPdfonly: 'You can upload only one pdf',\n errImageonly: 'Please upload prescription is in JPEG/PNG',\n errImages30: 'You can upload upto 30 images only',\n errPDF10: 'You can upload upto 10MB per file',\n errMobileNo: 'Please enter valid mobile number',\n errPatName: 'Please enter patient name',\n errMailId: 'Please enter a valid email',\n errPre: 'please upload prescription',\n camera: 'Camera',\n thankyou_msg:\n 'Thank you for choosing GUDMED. We have received your prescription',\n thankyou_msg_callback:\n 'Thank you for providing your details. A GUDMED counsellor will contact you back once you received the transcribed prescription.(within 30 minutes)',\n};\n\nexport const hindiLanguage = {\n heading: 'दवा का पर्चा भेजें',\n firstName: 'मरीज का नाम',\n lastName: 'अंतिम नाम',\n mobileNo: 'मोबाइल नंबर.',\n email: 'ईमेल',\n reminder: 'रिमाइंडर',\n genericMedicine: 'जेनेरिक दवा',\n needCall: 'कॉल की आवश्यकता है',\n callbackNo: 'Callback Mobile No.',\n uploadImage: 'दवा के पर्चे की फोटो भेजें',\n uploadReport: 'रिपोर्ट की फोटो भेजें',\n yes: 'हाँ',\n no: 'नहीं',\n save: 'सेव करें',\n browse: 'ब्राउज',\n errImagePdf: 'कृपया अपने दवा का परचा निम्न प्रारूप में डालें JPEG/PNG/PDF',\n errPdfonly: 'आप सिर्फ एक PDF भेज सकते हैं',\n errImageonly: 'कृपया अपने दवा का परचा निम्न प्रारूप में डालें JPEG/PNG',\n errImages30: 'आप सिर्फ पर्चे की 30 फोटो भेज सकते हैं',\n errPDF10: 'अधिकतम अपलोड फ़ाइल का आकार 10MB है',\n errMobileNo: 'कृपया सही मोबाइल नंबर डालें',\n errPatName: 'कृपया मरीज का नाम दर्ज करें',\n errMailId: 'कृपया सही ईमेल डालें',\n errPre: 'कृपया प्रिस्क्रिप्शन अपलोड करें',\n camera: 'कैमरा',\n thankyou_msg:\n 'हमारी सेवा का लाभ उठाने के लिए धन्यवाद। हमें आपके दवा का पर्चा मिल गया है।',\n thankyou_msg_callback:\n 'दवा के पर्चे का डिजिटल रूपांतरण आपको मिलने के बाद, गुडमेड के प्रतिनिधि आपको 30 मिनट में कॉल करेंगे।',\n};\nexport const GoogleRecaptchaKey = '6LfpP1cfAAAAAMpzEcBXGC2CyFhlpfC90cBbD2RA';\n// export const GoogleRecaptchaKey = '6LfH1p4eAAAAAGbTKDroui1_WGKT_T4__PnuZgu7';\n\nexport const version = '1.0.5';\n\nexport const clientID = {\n gudmed: 1,\n redcliffee: 2,\n aiims: 3,\n privatedoctors: 4,\n};\nexport const mediaId = {\n demoWebLink: '10',\n};\n","import React, {useContext, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport MomentUtils from '@date-io/moment';\n// import moment from 'moment';\nimport {createMuiTheme, ThemeProvider} from '@material-ui/core/styles';\nimport {MuiPickersUtilsProvider} from '@material-ui/pickers';\n\nimport AppContext from '../AppContext';\nimport AppLocale from '../../../shared/localization';\nimport {responsiveFontSizes} from '@material-ui/core';\nimport {isBreakPointDown} from '../Utils';\nimport {ThemeStyle} from '../../../shared/constants/AppEnums';\nimport {useUrlSearchParams} from 'use-url-search-params';\n\nconst CremaThemeProvider = (props) => {\n const {\n theme,\n isRTL,\n updateThemeMode,\n changeNavStyle,\n updateThemeStyle,\n setRTL,\n updateTheme,\n locale,\n } = useContext(AppContext);\n const {muiLocale} = AppLocale[locale.locale];\n\n const [params] = useUrlSearchParams({});\n\n useEffect(() => {\n const updateQuerySetting = () => {\n if (params.theme_mode) {\n updateThemeMode(params.theme_mode);\n }\n };\n updateQuerySetting();\n }, [params.theme_mode, updateThemeMode]);\n\n useEffect(() => {\n const updateQuerySetting = () => {\n if (params.is_rtl) {\n setRTL(params.is_rtl);\n }\n if (params.is_rtl || isRTL) {\n document.body.setAttribute('dir', 'rtl');\n } else {\n document.body.setAttribute('dir', 'ltr');\n }\n };\n updateQuerySetting();\n }, [isRTL, params.is_rtl, setRTL]);\n\n useEffect(() => {\n const updateQuerySetting = () => {\n if (params.nav_style) {\n changeNavStyle(params.nav_style);\n }\n };\n updateQuerySetting();\n }, [changeNavStyle, params.nav_style]);\n\n useEffect(() => {\n const updateQuerySetting = () => {\n if (params.theme_style) {\n if (params.theme_style === ThemeStyle.MODERN) {\n if (isBreakPointDown('md')) {\n theme.overrides.MuiCard.root.borderRadius = 20;\n theme.overrides.MuiToggleButton.root.borderRadius = 20;\n } else {\n theme.overrides.MuiCard.root.borderRadius = 30;\n theme.overrides.MuiToggleButton.root.borderRadius = 30;\n }\n theme.overrides.MuiButton.root.borderRadius = 30;\n theme.overrides.MuiCardLg.root.borderRadius = 50;\n } else {\n theme.overrides.MuiCard.root.borderRadius = 4;\n theme.overrides.MuiToggleButton.root.borderRadius = 4;\n theme.overrides.MuiButton.root.borderRadius = 4;\n theme.overrides.MuiCardLg.root.borderRadius = 4;\n }\n updateTheme(theme);\n updateThemeStyle(params.theme_style);\n }\n };\n updateQuerySetting();\n }, [params.theme_style, theme, updateTheme, updateThemeStyle]);\n\n return (\n \n \n {props.children}\n \n \n );\n};\n\nexport default React.memo(CremaThemeProvider);\n\nCremaThemeProvider.propTypes = {\n children: PropTypes.node.isRequired,\n};\n","import React from 'react';\nimport {create} from 'jss';\nimport rtl from 'jss-rtl';\nimport {jssPreset, StylesProvider} from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\n\n// Configure JSS\nconst jss = create({plugins: [...jssPreset().plugins, rtl()]});\n\nconst CremaStyleProvider = (props) => {\n return {props.children};\n};\nexport default CremaStyleProvider;\n\nCremaStyleProvider.propTypes = {\n children: PropTypes.node.isRequired,\n};\n","import React, {useContext} from 'react';\nimport {IntlProvider} from 'react-intl';\n\nimport AppLocale from '../../shared/localization';\nimport AppContext from './AppContext';\nimport PropTypes from 'prop-types';\nimport {IntlGlobalProvider} from './Utils';\n\nconst LocaleProvider = (props) => {\n const {locale} = useContext(AppContext);\n const currentAppLocale = AppLocale[locale.locale];\n\n return (\n \n {props.children}\n \n );\n};\n\nexport default LocaleProvider;\n\nLocaleProvider.propTypes = {\n children: PropTypes.node.isRequired,\n};\n","import React, {useContext, useEffect} from 'react';\nimport {useHistory, useLocation} from 'react-router-dom';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {matchRoutes} from 'react-router-config';\nimport qs from 'qs';\nimport AppContext from './AppContext';\nimport {useAuthToken} from './AppHooks';\nimport {Loader} from '../index';\nimport PropTypes from 'prop-types';\nimport {checkPermission} from './Utils';\nimport {initialUrl} from '../../shared/constants/AppConst';\nimport {setInitialPath} from '../../redux/actions';\n\nconst AuthRoutes = ({children}) => {\n const {pathname, search} = useLocation();\n const dispatch = useDispatch();\n const history = useHistory();\n const {routes, changeNavStyle, updateThemeStyle, updateThemeMode, setRTL} =\n useContext(AppContext);\n\n const [loading, user] = useAuthToken();\n const initialPath = useSelector(({settings}) => settings.initialPath);\n const currentRoute = matchRoutes(routes, pathname)[0].route;\n\n let isPermitted = checkPermission(currentRoute.auth, user ? user.role : null);\n\n useEffect(() => {\n function setInitPath() {\n if (\n initialPath === '/' &&\n [\n '/signin',\n '/login',\n '/signup',\n '/confirm-signup',\n '/reset-password',\n '/error-pages/error-404',\n '/forget-password',\n ].indexOf(pathname) === -1\n ) {\n if (isPermitted) {\n dispatch(setInitialPath(pathname));\n } else {\n dispatch(setInitialPath(undefined));\n }\n }\n }\n\n setInitPath();\n }, [dispatch, isPermitted, initialPath, pathname]);\n\n useEffect(() => {\n function handleQueryParams() {\n const query = qs.parse(search.split('?')[1]);\n if (query.layout) {\n changeNavStyle(query.layout);\n }\n if (query.mode) {\n updateThemeMode(query.mode);\n }\n if (query.rtl) {\n setRTL(true);\n }\n if (query.style) {\n updateThemeStyle(query.style);\n }\n }\n\n if (search) {\n handleQueryParams();\n }\n }, [changeNavStyle, updateThemeStyle, updateThemeMode, setRTL, search]);\n\n useEffect(() => {\n if (!loading) {\n var getvialogin = localStorage.getItem('vialogin');\n \n if (!user && !isPermitted) {\n history.push('/signin'); // allowed route\n } else if (user && !isPermitted) {\n history.push('/error-pages/error-404'); // Not found\n } else if (user && isPermitted) {\n if (\n pathname === '/' ||\n pathname === '/signin' || pathname === '/login' ||\n pathname === '/signup'\n ) {\n if(getvialogin === 'otp'){\n history.push(initialUrl);\n }else{ \n history.push(initialUrl);\n }\n \n } else if (\n initialPath &&\n initialUrl !== initialPath &&\n (initialPath !== '/' ||\n initialPath !== '/signin' || initialPath !== '/login' ||\n initialPath !== '/signup')\n ) {\n if(getvialogin === 'otp'){\n history.push(initialUrl);\n }else{ \n history.push(initialPath);\n }\n }\n }\n }\n }, [user, loading, initialPath, isPermitted, pathname, history]);\n\n return loading ? : <>{children};\n};\n\nexport default AuthRoutes;\n\nAuthRoutes.propTypes = {\n children: PropTypes.node.isRequired,\n};\n","import {makeStyles} from '@material-ui/core/styles';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n minHeight: 48,\n // minWidth:\"15%\",\n // maxWidth: \"15%\",\n '&.active': {\n backgroundColor: theme.palette.primary.main,\n // backgroundColor: '#2e4167',\n // minWidth:\"15%\",\n // maxWidth: \"15%\",\n color: '#ffffff !important',\n // color: '#ffffff !important',\n pointerEvents: 'none',\n '& .list-item-text-primary': {\n color: 'inherit',\n },\n '& .list-item-icon': {\n color: 'inherit',\n },\n },\n \n '& .list-item-icon': {},\n '& .list-item-text': {\n padding: '0 0 0 16px',\n },\n color: '#9e9e9e !important',\n textDecoration: 'none!important',\n '&.dense': {\n // minWidth:\"15%\",\n // maxWidth: \"15%\",\n padding: '8px 12px 8px 12px',\n minHeight: 40,\n '& .list-item-text': {\n padding: '0 0 0 8px',\n },\n },\n },\n}));\nexport default useStyles;\n","import React from 'react';\nimport {Icon, ListItem, ListItemText} from '@material-ui/core';\nimport {Badge, NavLink} from '../../../../@crema';\nimport {withRouter} from 'react-router-dom';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport IntlMessages from '../../../utility/IntlMessages';\nimport useStyles from './HorizontalItem.style';\nimport Box from '@material-ui/core/Box';\n\nfunction HorizontalItem(props) {\n const classes = useStyles(props);\n const {item, dense} = props;\n const active = isUrlInChildren(item, props.location.pathname);\n\n function isUrlInChildren(parent, url) {\n if (!parent.children) {\n return false;\n }\n\n for (let i = 0; i < parent.children.length; i++) {\n if (parent.children[i].children) {\n if (isUrlInChildren(parent.children[i], url)) {\n return true;\n }\n }\n\n if (\n parent.children[i].url === url ||\n url.includes(parent.children[i].url)\n ) {\n return true;\n }\n }\n\n return false;\n }\n\n return (\n \n {item.icon && (\n \n {item.icon}\n \n )}\n }\n />\n {item.count && (\n \n \n \n )}\n \n );\n}\n\nHorizontalItem.propTypes = {\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.string,\n icon: PropTypes.string,\n url: PropTypes.string,\n }),\n};\n\nHorizontalItem.defaultProps = {};\n\nexport default withRouter(React.memo(HorizontalItem));\n","import React, {useContext, useState} from 'react';\nimport {\n Grow,\n Icon,\n IconButton,\n ListItem,\n ListItemText,\n Paper,\n} from '@material-ui/core';\nimport {makeStyles} from '@material-ui/core/styles';\nimport {withRouter} from 'react-router-dom';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport {Manager, Popper, Reference} from 'react-popper';\nimport * as ReactDOM from 'react-dom';\nimport HorizontalItem from './HorizontalItem';\nimport HorizontalGroup from './HorizontalGroup';\nimport Box from '@material-ui/core/Box';\nimport IntlMessages from '../../../utility/IntlMessages';\nimport AppContext from '../../../utility/AppContext';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n '& .list-item-text': {\n padding: '0 0 0 16px',\n },\n },\n button: {\n color: theme.palette.text.primary,\n minHeight: 48,\n '&.active, &.active:hover, &.active:focus': {\n backgroundColor: theme.palette.primary.main + '!important',\n color: theme.palette.secondary.contrastText + '!important',\n },\n '&.open': {\n backgroundColor: 'rgba(0,0,0,.08)',\n },\n '&.dense': {\n padding: '8px 12px 8px 12px',\n minHeight: 40,\n '& .list-item-text': {\n padding: '0 0 0 8px',\n },\n },\n },\n popper: {\n zIndex: 999,\n },\n popperClose: {\n pointerEvents: 'none',\n },\n icon: {\n fontsSize: 18,\n marginRight: 14,\n },\n pl0: {\n paddingLeft: 0,\n },\n}));\n\nfunction HorizontalCollapse(props) {\n const classes = useStyles(props);\n const [opened, setOpened] = useState(false);\n const {theme} = useContext(AppContext);\n const {item, nestedLevel, dense} = props;\n const active = isUrlInChildren(item, props.location.pathname);\n\n const handleToggle = (open) => {\n setOpened(open);\n };\n\n function isUrlInChildren(parent, url) {\n if (!parent.children) {\n return false;\n }\n\n for (let i = 0; i < parent.children.length; i++) {\n if (parent.children[i].children) {\n if (isUrlInChildren(parent.children[i], url)) {\n return true;\n }\n }\n\n if (\n parent.children[i].url === url ||\n url.includes(parent.children[i].url)\n ) {\n return true;\n }\n }\n\n return false;\n }\n\n return (\n
    \n \n \n {({ref}) => (\n handleToggle(true)}\n onMouseLeave={() => handleToggle(false)}\n aria-owns={opened ? 'menu-list-grow' : null}\n aria-haspopup='true'>\n {item.icon && (\n \n {item.icon}\n \n )}\n }\n />\n \n \n \n {theme.direction === 'ltr'\n ? 'chevron_right'\n : 'chevron_left'}\n \n \n \n \n )}\n \n {ReactDOM.createPortal(\n \n {({ref, style, placement, arrowProps}) =>\n opened && (\n \n \n handleToggle(true)}\n onMouseLeave={() => handleToggle(false)}>\n {item.children && (\n
      \n {item.children.map((item) => (\n \n {item.type === 'group' && (\n \n )}\n\n {item.type === 'collapse' && (\n \n )}\n\n {item.type === 'item' && (\n \n )}\n \n ))}\n
    \n )}\n \n \n \n )\n }\n
    ,\n document.querySelector('#root'),\n )}\n
    \n
\n );\n}\n\nHorizontalCollapse.propTypes = {\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.array,\n }),\n};\n\nHorizontalCollapse.defaultProps = {};\n\nexport default withRouter(React.memo(HorizontalCollapse));\n","import {makeStyles} from '@material-ui/core/styles';\nimport {Fonts} from '../../../../shared/constants/AppEnums';\n\nconst useStyles = makeStyles((theme) => {\n return {\n root: {\n // color: theme.palette.secondary.contrastText + '!important',\n color: '#9e9e9e',\n\n '&.active, &.active:hover, &.active:focus': {\n backgroundColor: theme.palette.primary.main + '!important',\n // backgroundColor: '#000',\n\n color: theme.palette.secondary.contrastText + '!important',\n // color: '#ffffff !important',\n },\n '& .list-item-text': {\n padding: '0 0 0 16px',\n },\n '&.level-0': {\n height: 48,\n borderRadius: 4,\n '&:hover': {\n background: 'transparent',\n },\n },\n '&.dense': {\n padding: '8px 12px 8px 12px',\n minHeight: 40,\n '&.level-0': {\n height: 44,\n },\n '& .list-item-text': {\n padding: '0 0 0 8px',\n },\n },\n },\n children: {},\n popper: {\n zIndex: 999,\n },\n popperClose: {\n pointerEvents: 'none',\n },\n pl0: {\n paddingLeft: 0,\n },\n fontBold: {\n fontWeight: Fonts.MEDIUM,\n },\n ml2: {\n marginLeft: 8,\n },\n textLg: {\n fontSize: 18,\n },\n };\n});\nexport default useStyles;\n","import React, {useState} from 'react';\nimport {\n Grow,\n Icon,\n IconButton,\n ListItem,\n ListItemText,\n Paper,\n} from '@material-ui/core';\nimport {withRouter} from 'react-router-dom';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport {Manager, Popper, Reference} from 'react-popper';\nimport * as ReactDOM from 'react-dom';\nimport HorizontalCollapse from './HorizontalCollapse';\nimport HorizontalItem from './HorizontalItem';\nimport Box from '@material-ui/core/Box';\nimport IntlMessages from '../../../utility/IntlMessages';\nimport useStyles from './HorizontalGroup.style';\n\nfunction HorizontalGroup(props) {\n const classes = useStyles(props);\n const [opened, setOpened] = useState(false);\n const {item, nestedLevel} = props;\n\n const handleToggle = (open) => {\n setOpened(open);\n };\n\n function isUrlInChildren(parent, url) {\n if (!parent.children) {\n return false;\n }\n\n for (let i = 0; i < parent.children.length; i++) {\n if (parent.children[i].children) {\n if (isUrlInChildren(parent.children[i], url)) {\n return true;\n }\n }\n\n if (\n parent.children[i].url === url ||\n url.includes(parent.children[i].url)\n ) {\n return true;\n }\n }\n\n return false;\n }\n\n return (\n \n \n {({ref}) => (\n handleToggle(true)}\n onMouseLeave={() => handleToggle(false)}\n aria-owns={opened ? 'menu-list-grow' : null}\n aria-haspopup='true'>\n {item.icon && (\n \n {item.icon}\n \n )}\n }\n classes={{primary: clsx(classes.fontBold, 'uppercase')}}\n />\n {nestedLevel > 0 && (\n \n \n keyboard_arrow_right\n \n \n )}\n \n )}\n \n {ReactDOM.createPortal(\n \n {({ref, style, placement}) =>\n opened && (\n \n \n handleToggle(true)}\n onMouseLeave={() => handleToggle(false)}>\n {item.children && (\n
    \n {item.children.map((item) => (\n \n {item.type === 'group' && (\n \n )}\n\n {item.type === 'collapse' && (\n \n )}\n\n {item.type === 'item' && (\n \n )}\n \n ))}\n
\n )}\n \n \n \n )\n }\n ,\n document.querySelector('#root'),\n )}\n
\n );\n}\n\nHorizontalGroup.propTypes = {\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.string,\n children: PropTypes.array,\n url: PropTypes.string,\n }),\n};\n\nHorizontalGroup.defaultProps = {};\n\nexport default withRouter(React.memo(HorizontalGroup));\n","import {makeStyles} from '@material-ui/core/styles';\nimport {Fonts} from '../../../../shared/constants/AppEnums';\n\nconst useStyles = makeStyles((theme) => {\n return {\n root: {\n color: theme.palette.secondary.contrastText + '!important',\n\n '&.active, &.active:hover, &.active:focus': {\n //backgroundColor: theme.palette.primary.main + '!important',\n //color: theme.palette.secondary.contrastText + '!important',\n color: '#ffffff',\n backgroundColor: theme.palette.primary.main + '!important',\n },\n '& .list-item-text': {\n padding: '0 0 0 16px',\n },\n '&.level-0': {\n height: 48,\n borderRadius: 4,\n '&:hover': {\n background: 'transparent',\n },\n },\n '&.dense': {\n padding: '8px 12px 8px 12px',\n minHeight: 40,\n '&.level-0': {\n height: 44,\n },\n '& .list-item-text': {\n padding: '0 0 0 8px',\n },\n },\n },\n children: {},\n popper: {\n zIndex: 999,\n },\n popperClose: {\n pointerEvents: 'none',\n },\n pl0: {\n paddingLeft: 0,\n },\n fontBold: {\n fontWeight: Fonts.MEDIUM,\n },\n ml2: {\n marginLeft: 8,\n },\n textLg: {\n fontSize: 18,\n },\n };\n});\nexport default useStyles;\n","import React, {useState} from 'react';\nimport {\n Grow,\n Icon,\n IconButton,\n ListItem,\n ListItemText,\n Paper,\n} from '@material-ui/core';\nimport {withRouter} from 'react-router-dom';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport {Manager, Popper, Reference} from 'react-popper';\nimport * as ReactDOM from 'react-dom';\nimport HorizontalCollapse from './HorizontalCollapse';\nimport HorizontalItem from './HorizontalItem';\nimport HorizontalGroup from './HorizontalGroup';\nimport Box from '@material-ui/core/Box';\nimport IntlMessages from '../../../utility/IntlMessages';\nimport useStyles from './HorizontalSingle.style';\nimport {NavLink, Badge} from '../../../../@crema';\nimport {useSelector, useDispatch} from 'react-redux';\nimport {makeStyles} from '@material-ui/core';\n\nfunction HorizontalSingle(props) {\n const useStyles = makeStyles((theme) => ({\n badgeStyle: {\n backgroundColor: 'rgb(211 211 15) !important',\n marginTop: '-8% !important'\n },\n \n }));\n \n const classes = useStyles(props);\n const [opened, setOpened] = useState(false);\n const {item, nestedLevel} = props;\n const LoginUser = useSelector(({auth}) => auth.user);\n\n const handleToggle = (open) => {\n setOpened(open);\n };\n\n function isUrlInChildren(parent, url) {\n if (!parent.children) {\n return false;\n }\n\n for (let i = 0; i < parent.children.length; i++) {\n if (parent.children[i].children) {\n if (isUrlInChildren(parent.children[i], url)) {\n return true;\n }\n }\n\n if (\n parent.children[i].url === url ||\n url.includes(parent.children[i].url)\n ) {\n return true;\n }\n }\n\n return false;\n }\n\n return (\n \n \n {({ref}) => (\n handleToggle(true)}\n onMouseLeave={() => handleToggle(false)}\n aria-owns={opened ? 'menu-list-grow' : null}\n aria-haspopup='true'>\n {item.icon && (\n \n {item.icon}\n \n )}\n }\n classes={{primary: clsx(classes.fontBold, 'uppercase')}}\n />\n {item.id === \"appointments\" && LoginUser?.appointmentCount && Number(LoginUser?.appointmentCount) > 0 && (\n \n )}\n \n {nestedLevel > 0 && (\n \n \n keyboard_arrow_right\n \n \n )}\n \n )}\n \n {ReactDOM.createPortal(\n \n {({ref, style, placement}) =>\n opened && (\n \n \n handleToggle(true)}\n onMouseLeave={() => handleToggle(false)}>\n {item.children && (\n
    \n {item.children.map((item) => (\n \n {(item.type === 'group' ||\n item.type === 'single') && (\n \n )}\n {item.type === 'single' && (\n \n )}\n\n {item.type === 'collapse' && (\n \n )}\n\n {item.type === 'item' && (\n \n )}\n \n ))}\n
\n )}\n \n \n \n )\n }\n ,\n document.querySelector('#root'),\n )}\n
\n );\n}\n\nHorizontalSingle.propTypes = {\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.string,\n children: PropTypes.array,\n url: PropTypes.string,\n }),\n};\n\nHorizontalSingle.defaultProps = {};\n\nexport default withRouter(React.memo(HorizontalSingle));\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 15-06-2021\n * Descriptions : Route navigation for inner modules\n ************/\n\nimport {authRole} from '../shared/constants/AppConst';\n// const localRoleId = localStorage.getItem('roleId');\n\nconst routesConfig = [\n {\n id: 'dashbaord',\n title: 'Dashboard',\n messageId: 'sidebar.dashboard',\n type: 'single',\n icon: 'dashboard',\n auth: authRole.dashboardRoles,\n url: '/dashboard',\n },\n {\n id: 'reports',\n title: 'Reports',\n messageId: 'sidebar.reports',\n type: 'single',\n icon: 'receipt_long',\n auth: authRole.adminRoles,\n url: '/reports',\n },\n {\n id: 'vitals',\n title: 'Vitals',\n messageId: 'sidebar.vitals',\n type: 'single',\n icon: 'masks',\n auth: authRole.adminRoles,\n url: '/covidVitals',\n },\n {\n id: 'appointments',\n title: 'appointments',\n messageId: 'sidebar.appointments',\n type: 'single',\n icon: 'event_note',\n auth: authRole.adminRoles,\n url: '/appointments',\n // color: '#f4bd00',\n },\n {\n id: 'mappingpatients',\n title: 'mappingpatients',\n messageId: 'sidebar.mappingpatients',\n type: 'single',\n icon: 'call_merge',\n auth: authRole.adminRoles,\n url: '/mergingPatient',\n },\n];\nexport default routesConfig;\n","import React from 'react';\nimport HorizontalGroup from './HorizontalGroup';\nimport HorizontalCollapse from './HorizontalCollapse';\nimport HorizontalItem from './HorizontalItem';\nimport HorizontalSingle from './HorizontalSingle';\nimport Divider from '@material-ui/core/Divider';\nimport List from '@material-ui/core/List';\nimport {useSelector} from 'react-redux';\n\nimport routesConfig from '../../../../modules/routesConfig';\nimport Box from '@material-ui/core/Box';\n\nconst HorizontalNav = () => {\n const LoginUser = useSelector(({auth}) => auth.user);\n // console.log(LoginUser, 'LoginUser', routesConfig);\n return (\n \n {routesConfig.map((item) => (\n \n {item.type === 'single' && item.auth.includes(LoginUser.roleId) && (\n \n )}\n\n {item.type === 'group' && item.auth.includes(LoginUser.roleId) && (\n \n )}\n\n {item.type === 'collapse' && (\n \n )}\n\n {item.type === 'item' && (\n \n )}\n\n {item.type === 'divider' && (\n \n \n \n )}\n \n ))}\n \n );\n};\n\nexport default HorizontalNav;\n","import {makeStyles} from '@material-ui/core/styles';\n\nconst useStyles = makeStyles((theme) => ({\n headerMain: {\n position: 'relative',\n minHeight: 56,\n paddingRight: 0,\n paddingLeft: 0,\n backgroundColor: theme.palette.background.paper,\n [theme.breakpoints.up('sm')]: {\n minHeight: 70,\n },\n '& .langBtn': {\n borderLeft: '0 none',\n '&:hover, &:focus': {\n backgroundColor: 'transparent',\n },\n },\n '& .notiBtn': {\n color: theme.palette.grey[800],\n borderLeft: '0 none',\n '&:hover, &:focus': {\n color: theme.palette.text.primary,\n backgroundColor: 'transparent',\n },\n [theme.breakpoints.up('md')]: {\n color: theme.palette.grey[400],\n '&:hover, &:focus': {\n color: theme.palette.text.primary,\n },\n },\n },\n },\n headerMainFlex: {\n display: 'flex',\n alignItems: 'center',\n },\n headerContainer: {\n width: '100%',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 20,\n paddingRight: 20,\n [theme.breakpoints.up('lg')]: {\n // maxWidth: 1140,\n //maxWidth: 1300,\n },\n [theme.breakpoints.up('xl')]: {\n maxWidth: 1720,\n },\n },\n menuButton: {\n marginRight: theme.spacing(2),\n },\n grow: {\n flexGrow: 1,\n },\n sectionDesktop: {\n display: 'none',\n [theme.breakpoints.up('md')]: {\n display: 'flex',\n },\n },\n sectionMobile: {\n display: 'flex',\n [theme.breakpoints.up('sm')]: {\n marginLeft: 'auto',\n },\n [theme.breakpoints.up('md')]: {\n display: 'none',\n },\n },\n headerNav: {\n // backgroundColor: theme.palette.primary.main,\n backgroundColor: '#2e4167',\n color: theme.palette.primary.contrastText,\n '& .navbarNav': {\n display: 'flex',\n padding: 0,\n marginLeft: -16,\n marginRight: -16,\n [theme.breakpoints.up('lg')]: {\n marginLeft: -20,\n marginRight: -20,\n },\n },\n '& .navItem': {\n width: 'auto',\n cursor: 'pointer',\n [theme.breakpoints.up('lg')]: {\n paddingLeft: 20,\n paddingRight: 20,\n },\n\n //inactive headers\n color: '#c5c0c0',\n '& .navLinkIcon': {\n color: '#c5c0c0',\n // color: theme.palette.secondary.main,\n },\n // active headers\n '&.active': {\n color: '#fff',\n '& .navLinkIcon': {\n color: '#fff',\n fontSize: 20,\n // color: theme.palette.secondary.main,\n },\n },\n },\n '& .navLinkIcon': {\n marginRight: 10,\n color: theme.palette.primary.contrastText,\n fontSize: 20,\n },\n '& .badgeIcon': {\n marginTop: '-8px',\n backgroundColor: '#f4bd00',\n marginLeft: '3px',\n padding: '8px',\n },\n },\n menuItemRoot: {\n padding: 0,\n },\n pointer: {\n cursor: 'pointer',\n },\n menuIconRoot: {\n width: '2.5rem',\n height: '2.5rem',\n },\n logoRoot: {\n height: 30,\n },\n}));\nexport default useStyles;\n","/************\n * Author : Mangaleswari P\n * Developed by : Shiva Software Solutions\n * Date : 15-06-2021\n * Descriptions : GudMed change password screen\n * Dependicies : To use @material-ui/core\n * Modified Date :28-06-2021\n * Modified Author Name :Mangaleswari P\n * Modified Fuction :Validation for Email and password\n ************/\n\nimport React from 'react';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport Button from '@material-ui/core/Button';\nimport IntlMessages from '../../utility/IntlMessages';\nimport Box from '@material-ui/core/Box';\nimport PropTypes from 'prop-types';\nimport {makeStyles} from '@material-ui/core/styles';\nimport {grey} from '@material-ui/core/colors';\nimport {Fonts} from '../../../shared/constants/AppEnums';\nimport TextField from '@material-ui/core/TextField';\n// for password textfield\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport Visibility from '@material-ui/icons/Visibility';\nimport VisibilityOff from '@material-ui/icons/VisibilityOff';\nimport {Icon} from '@material-ui/core';\nimport HighlightOffIcon from '@material-ui/icons/HighlightOff';\nimport Grid from '@material-ui/core/Grid';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {onresetPassword} from '../../../redux/actions';\n// import constant value\nimport {passwordRegExp} from '../../../shared/constants/AppConst';\nimport {\n RESET_USER_PASWD,\n UPDATE_AUTH_USER,\n} from '../../../shared/constants/ActionTypes';\nimport {\n onCognitoUserSignOut,\n onJWTAuthSignout,\n onSignOutAuth0User,\n onSignOutFirebaseUser,\n} from '../../../redux/actions';\nimport {useAuthUser} from '../../utility/AppHooks';\nimport {AuthType} from '../../../shared/constants/AppEnums';\nimport IconButton from '@material-ui/core/IconButton';\nimport ToasterMsg from './ToasterMsg';\nconst ChangePasswordPopup = ({open, onDeny, title}) => {\n const useStyle = makeStyles({\n formControl: {\n margin: 1,\n minWidth: 120,\n },\n dialogStyle: {\n fontStyle: Fonts.FONTSTYLE,\n position: 'relative',\n padding: 4,\n '& .MuiDialog-paperWidthSm': {\n maxWidth: 400,\n width: '100%',\n },\n '& .MuiDialog-paperWidthSm .MuiBox-root:first-child': {\n padding: 0,\n },\n },\n dialogHeader: {\n backgroundColor: '#2e4167',\n padding: 0,\n alignItems: 'center',\n borderBottom: ['1px solid #afa2a2a6'],\n },\n dialogheadStyle: {\n padding: 5,\n color: '#fff',\n },\n dialogTitle: {\n fontWeight: 'bold',\n marginBottom: 0,\n fontSize: Fonts.TableHeader,\n fontStyle: Fonts.FONTSTYLE,\n },\n\n textField: {\n fontStyle: Fonts.FONTSTYLE,\n fontSize: 10,\n width: '99%',\n '& .MuiFormLabel-root': {\n fontSize: 14,\n },\n '& .MuiInputLabel-asterisk': {\n color: 'red!important',\n },\n marginTop: 0,\n marginBottom: 0,\n padding: 2,\n marginLeft: 1,\n marginRight: 1,\n },\n container: {\n display: 'flex',\n flexWrap: 'wrap',\n },\n btnStyles: {\n textAlign: 'right',\n padding: 10,\n },\n closeBtn: {\n padding: 5,\n textAlign: 'right',\n },\n closeBtnColor: {\n color: '#fff',\n },\n btn: {\n marginLeft: 8,\n color: '#000',\n fontWeight: Fonts.MEDIUM,\n },\n savebtn: {\n backgroundColor: '#2e4167',\n color: '#fff',\n marginLeft: 8,\n fontWeight: Fonts.MEDIUM,\n '&:hover': {\n backgroundColor: '#2e4167',\n color: '#ffffff',\n },\n },\n contentText: {\n color: grey[600],\n padding: 15,\n '& .MuiGrid-item': {\n marginTop: 2,\n },\n },\n\n userRoot: {\n float: 'right',\n },\n });\n\n const classes = useStyle();\n const dispatch = useDispatch();\n const user = useAuthUser();\n // get user detail from redux\n const LoginUser = useSelector(({auth}) => auth);\n const resetpaswdsuccess = useSelector(\n ({userManage}) => userManage.resetpaswd,\n );\n const [getsnackbaropen, setsnackbarOpen] = React.useState(false);\n const [msgdata, setmsgdata] = React.useState('');\n const [variant, setvariant] = React.useState('error');\n const [erroroldpaswdtxt, setErroroldpaswdtxt] = React.useState(\n 'Please enter old password',\n );\n const [errorconfirmpaswdtxt, setErrorconfirmpaswdtxt] = React.useState(\n 'Please enter confirm password',\n );\n const [errornewpaswdtxt, setErrornewpaswdtxt] = React.useState(\n 'Please enter new password',\n );\n const [errorValues, setErrorValues] = React.useState({\n password: false,\n newpassword: false,\n confirmpassword: false,\n });\n const [values, setValues] = React.useState({\n password: '',\n newpassword: '',\n confirmpassword: '',\n showPassword: false,\n showPassword1: false,\n showPassword2: false,\n });\n let vialogin = '';\n //Reset password function\n const resetUserPassword = async () => {\n console.log(LoginUser, 'userdata');\n //Validate Input fields\n if (LoginUser && LoginUser.user.paswd) {\n if (values.password === '' || values.password === undefined) {\n setErroroldpaswdtxt('Please enter old password');\n setErrorValues({\n ...errorValues,\n password: true,\n newpassword: false,\n confirmpassword: false,\n });\n return;\n }\n if (!passwordRegExp.test(values.password)) {\n setErroroldpaswdtxt(\n 'Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and one special case Character',\n );\n setErrorValues({\n ...errorValues,\n password: true,\n newpassword: false,\n confirmpassword: false,\n });\n return;\n }\n }\n if (values.newpassword === '' || values.newpassword === undefined) {\n setErrornewpaswdtxt('Please enter new password');\n setErrorValues({\n ...errorValues,\n password: false,\n newpassword: true,\n confirmpassword: false,\n });\n return;\n }\n if (!passwordRegExp.test(values.newpassword)) {\n setErrornewpaswdtxt(\n 'Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and one special case Character',\n );\n setErrorValues({\n ...errorValues,\n password: false,\n newpassword: true,\n confirmpassword: false,\n });\n return;\n }\n if (values.confirmpassword === '' || values.confirmpassword === undefined) {\n setErrorconfirmpaswdtxt('Please enter confirm password');\n setErrorValues({\n ...errorValues,\n password: false,\n newpassword: false,\n confirmpassword: true,\n });\n return;\n }\n if (!passwordRegExp.test(values.confirmpassword)) {\n setErrorconfirmpaswdtxt(\n 'Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and one special case Character',\n );\n setErrorValues({\n ...errorValues,\n password: false,\n newpassword: false,\n confirmpassword: true,\n });\n return;\n }\n if (\n errorValues.password !== true &&\n errorValues.newpassword !== true &&\n errorValues.confirmpassword !== true\n ) {\n if (LoginUser && LoginUser.user.paswd) {\n vialogin = '';\n localStorage.setItem('loginvia', '');\n } else {\n localStorage.setItem('loginvia', 'otp');\n vialogin = 'otp';\n }\n if (values.newpassword === values.confirmpassword) {\n //Call reset user paswd api\n if (LoginUser && LoginUser.user !== null) {\n await dispatch(\n onresetPassword({\n mobileNbr: LoginUser.user.mobileNo,\n patientCode: LoginUser.user.patientCode,\n oldpaswd: values.password,\n newpaswd: values.confirmpassword,\n viasetpaswd: vialogin,\n }),\n );\n }\n } else {\n setErrorconfirmpaswdtxt('New password & Confirm Password Mismatch');\n setErrorValues({\n ...errorValues,\n password: false,\n newpassword: false,\n confirmpassword: true,\n });\n return;\n }\n }\n };\n\n if (resetpaswdsuccess === 'true') {\n dispatch({\n type: RESET_USER_PASWD,\n payload: 'false',\n });\n setValues({\n ...values,\n password: '',\n newpassword: '',\n confirmpassword: '',\n showPassword: false,\n showPassword1: false,\n showPassword2: false,\n });\n setErrorValues({\n ...errorValues,\n password: false,\n newpassword: false,\n confirmpassword: false,\n });\n\n if (localStorage.getItem('loginvia') === 'otp') {\n setvariant('success');\n setmsgdata('Password updated successfully');\n\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: {\n authType: LoginUser.user,\n displayName: LoginUser.user.patname,\n email: LoginUser.user.email,\n mobileNo: LoginUser.user.mobileNo,\n patientCode: LoginUser.user.patientCode,\n paswd: values.newpassword,\n roleId: '1',\n role: 'Patient',\n token: '',\n },\n });\n localStorage.setItem('loginvia', '');\n setsnackbarOpen(true);\n setTimeout(() => {\n // close popup\n onDeny(false);\n }, 2000);\n } else {\n // close popup\n onDeny(false);\n if (user && user.authType === AuthType.AWS_COGNITO) {\n dispatch(onCognitoUserSignOut());\n } else if (user && user.authType === AuthType.FIREBASE) {\n dispatch(onSignOutFirebaseUser());\n } else if (user && user.authType === AuthType.AUTH0) {\n dispatch(onSignOutAuth0User());\n } else if (user && user.authType === AuthType.JWT_AUTH) {\n dispatch(onJWTAuthSignout());\n }\n // history.push('/login');\n // window.location.reload();\n }\n } else if (resetpaswdsuccess === 'incorrect') {\n setvariant('error');\n setmsgdata('Old password is incorrect');\n dispatch({\n type: RESET_USER_PASWD,\n payload: 'false',\n });\n setsnackbarOpen(true);\n }\n // password show and hide functionality\n const handleClickShowPassword = () => {\n setValues({...values, showPassword: !values.showPassword});\n };\n\n // password show and hide functionality\n const handleClickShowPassword1 = () => {\n setValues({...values, showPassword1: !values.showPassword1});\n };\n // password show and hide functionality\n const handleClickShowPassword2 = () => {\n setValues({...values, showPassword2: !values.showPassword2});\n };\n\n const handleMouseDownPassword = (event) => {\n event.preventDefault();\n };\n const closePopup = () => {\n onDeny(false);\n setValues({\n ...values,\n password: '',\n newpassword: '',\n confirmpassword: '',\n showPassword: false,\n showPassword1: false,\n showPassword2: false,\n });\n setErrorValues({\n ...errorValues,\n password: false,\n newpassword: false,\n confirmpassword: false,\n });\n };\n return (\n \n \n \n \n \n {title}\n \n \n \n closePopup()}>\n \n \n \n \n\n \n {LoginUser &&\n LoginUser.user.paswd &&\n LoginUser.user.displayName !== '' ? (\n \n account_circle\n \n {LoginUser.user.displayName}\n \n \n ) : (\n ''\n )}\n {LoginUser && LoginUser.user.paswd ? (\n \n {\n setValues({...values, password: event.target.value});\n }}\n name='password'\n label='Old Password'\n onBlur={(event) => {\n // password validation\n if (event.target.value === '') {\n setErroroldpaswdtxt('Please enter old password');\n setErrorValues({...errorValues, password: true});\n } else if (!passwordRegExp.test(event.target.value)) {\n setErroroldpaswdtxt(\n 'Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and one special case Character',\n );\n setErrorValues({...errorValues, password: true});\n } else {\n setErrorValues({...errorValues, password: false});\n }\n }}\n type={values.showPassword ? 'text' : 'password'}\n inputProps={{minLength: 8, maxLength: 20}}\n InputProps={{\n minLength: 8,\n maxLength: 20,\n endAdornment: (\n \n \n {values.showPassword ? : }\n \n \n ),\n }}\n helperText={\n errorValues.password === true ? erroroldpaswdtxt : ' '\n }\n error={errorValues.password === true}\n />\n \n ) : (\n ''\n )}\n \n {\n setValues({...values, newpassword: event.target.value});\n }}\n name='newpassword'\n label='New Password'\n onBlur={(event) => {\n // password validation\n if (event.target.value === '') {\n setErrornewpaswdtxt('Please enter new password');\n setErrorValues({...errorValues, newpassword: true});\n } else if (!passwordRegExp.test(event.target.value)) {\n setErrornewpaswdtxt(\n 'Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and one special case Character',\n );\n setErrorValues({...errorValues, newpassword: true});\n } else {\n setErrorValues({...errorValues, newpassword: false});\n }\n }}\n type={values.showPassword1 ? 'text' : 'password'}\n inputProps={{minLength: 8, maxLength: 20}}\n InputProps={{\n minLength: 8,\n maxLength: 20,\n endAdornment: (\n \n \n {values.showPassword1 ? : }\n \n \n ),\n }}\n helperText={\n errorValues.newpassword === true ? errornewpaswdtxt : ' '\n }\n error={errorValues.newpassword === true}\n />\n \n\n \n {\n setValues({...values, confirmpassword: event.target.value});\n }}\n name='confirmpassword'\n label='Confirm Password'\n onBlur={(event) => {\n // password validation\n if (event.target.value === '') {\n setErrorconfirmpaswdtxt('Please enter confirm password');\n setErrorValues({...errorValues, confirmpassword: true});\n } else if (!passwordRegExp.test(event.target.value)) {\n setErrorconfirmpaswdtxt(\n 'Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and one special case Character',\n );\n setErrorValues({...errorValues, confirmpassword: true});\n } else {\n setErrorValues({...errorValues, confirmpassword: false});\n }\n }}\n type={values.showPassword2 ? 'text' : 'password'}\n inputProps={{minLength: 8, maxLength: 20}}\n InputProps={{\n minLength: 8,\n maxLength: 20,\n endAdornment: (\n \n \n {values.showPassword2 ? : }\n \n \n ),\n }}\n helperText={\n errorValues.confirmpassword === true ? errorconfirmpaswdtxt : ' '\n }\n error={errorValues.confirmpassword === true}\n />\n \n \n \n {/* closePopup()}>\n \n */}\n \n \n \n \n \n );\n};\n\nexport default ChangePasswordPopup;\n\nChangePasswordPopup.propTypes = {\n // dialogTitle: PropTypes.bool.isRequired,\n open: PropTypes.bool.isRequired,\n onDeny: PropTypes.func.isRequired,\n title: PropTypes.node.isRequired,\n};\n","/************\n * Author : Mangaleswari P\n * Developed by : Shiva Software Solutions\n * Date : 28-06-2021\n * Descriptions : Logout Confirmation\n * Dependicies : To use @material-ui/core\n * Modified Date :\n * Modified Author Name :\n * Modified Fuction :\n ************/\nimport React from 'react';\nimport {withStyles} from '@material-ui/core/styles';\nimport Button from '@material-ui/core/Button';\nimport Dialog from '@material-ui/core/Dialog';\nimport MuiDialogTitle from '@material-ui/core/DialogTitle';\nimport MuiDialogContent from '@material-ui/core/DialogContent';\nimport MuiDialogActions from '@material-ui/core/DialogActions';\nimport Typography from '@material-ui/core/Typography';\nimport {useDispatch} from 'react-redux';\nimport {makeStyles} from '@material-ui/core/styles';\nimport {useAuthUser} from '../../utility/AppHooks';\nimport {AuthType} from '../../../shared/constants/AppEnums';\nimport {\n onCognitoUserSignOut,\n onJWTAuthSignout,\n onSignOutAuth0User,\n onSignOutFirebaseUser,\n} from '../../../redux/actions';\nimport PropTypes from 'prop-types';\n// style applied to this page\nconst useStyles = makeStyles((theme) => ({\n rootdialog: {\n margin: 0,\n padding: theme.spacing(2),\n },\n closeButton: {\n position: 'absolute',\n right: theme.spacing(1),\n top: theme.spacing(1),\n color: theme.palette.grey[500],\n },\n dialogwidth: {\n '& .MuiDialog-paperWidthSm': {\n width: '40%',\n },\n },\n btnblue: {\n background: '#2e4167',\n color: '#ffffff',\n '&:hover': {\n background: '#2e4167',\n color: '#ffffff',\n },\n },\n btnred: {\n background: '#ff7252',\n color: '#ffffff',\n '&:hover': {\n background: '#ff7252',\n color: '#ffffff',\n },\n },\n\n dialogactionsclass: {\n marginBottom: '10px !important',\n marginTop: '10px !important',\n },\n}));\n\nconst ConfirmationDialog = ({opendialog, onDeny, email, userid}) => {\n const classes = useStyles();\n const user = useAuthUser();\n const dispatch = useDispatch();\n\n // logout yes click event\n const logoutUser = () => {\n onDeny(false);\n localStorage.clear();\n window.localStorage.clear();\n if (user && user.authType === AuthType.AWS_COGNITO) {\n dispatch(onCognitoUserSignOut());\n } else if (user && user.authType === AuthType.FIREBASE) {\n dispatch(onSignOutFirebaseUser());\n } else if (user && user.authType === AuthType.AUTH0) {\n dispatch(onSignOutAuth0User());\n } else if (user && user.authType === AuthType.JWT_AUTH) {\n let pushdata = {\n userId: user.userId,\n userCode: user.userCode,\n onlineStatus: 'Logout',\n };\n dispatch(onJWTAuthSignout(pushdata));\n }\n };\n\n const DialogContent = withStyles((theme) => ({\n root: {\n padding: theme.spacing(2),\n },\n }))(MuiDialogContent);\n\n const DialogActions = withStyles((theme) => ({\n root: {\n margin: 0,\n padding: theme.spacing(1),\n },\n }))(MuiDialogActions);\n\n //Delete dialog\n const DialogTitle = withStyles(useStyles)((props) => {\n const {children, classes} = props;\n return (\n \n {children}\n \n );\n });\n\n return (\n <>\n onDeny(false)}\n aria-labelledby='customized-dialog-title'>\n Confirmation\n \n \n Are you sure you want to Logout ?\n \n \n \n \n \n \n \n \n );\n};\nexport default ConfirmationDialog;\nConfirmationDialog.propTypes = {\n opendialog: PropTypes.bool.isRequired,\n onDeny: PropTypes.func.isRequired,\n};\n","import React, {useContext, useState} from 'react';\nimport Avatar from '@material-ui/core/Avatar';\nimport {useAuthUser} from '../../utility/AppHooks';\nimport AppContext from '../../utility/AppContext';\nimport {makeStyles} from '@material-ui/core';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Menu from '@material-ui/core/Menu';\nimport Box from '@material-ui/core/Box';\nimport {orange} from '@material-ui/core/colors';\nimport {Fonts} from '../../../shared/constants/AppEnums';\nimport Hidden from '@material-ui/core/Hidden';\nimport ChangePasswordPopup from './ChangepasswordPopup';\n// import confirmation dialog\nimport ConfirmationDialog from './confirmationDialog';\nimport {useHistory} from 'react-router-dom';\n// for style\nconst useStyles = makeStyles((theme) => {\n return {\n userRoot: {\n display: 'flex',\n alignItems: 'center',\n cursor: 'pointer',\n justifyContent: 'center',\n position: 'relative',\n },\n avatar: {\n fontSize: 24,\n backgroundColor: orange[500],\n },\n autowidht: {\n width: 'auto',\n height: 'auto',\n marginLeft: 6,\n },\n userInfo: {\n width: 'calc(100% - 75px)',\n },\n pointer: {\n cursor: 'pointer',\n },\n userName: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n cursor: 'pointer',\n whiteSpace: 'nowrap',\n fontSize: 15,\n textTransform: 'capitalize',\n fontWeight: Fonts.MEDIUM,\n color: (props) =>\n props.bgType === 'colored' ? 'white' : theme.palette.text.primary,\n },\n\n outerBox: {\n display: 'flex',\n alignItems: 'center',\n cursor: 'pointer',\n justifyContent: 'center',\n },\n };\n});\n\nconst HorUserInfo = ({bgType = 'colored'}) => {\n const [changePassword, setChangePasswordPopup] = useState(false);\n const {themeMode} = useContext(AppContext);\n const [openpopup, setopenpopup] = useState(false);\n\n const user = useAuthUser();\n const history = useHistory();\n\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n // changepassword open popup event\n const openChangepasswordPopup = () => {\n setAnchorEl(null);\n setChangePasswordPopup(true);\n };\n\n // logout open popup event\n const logoutClick = () => {\n setAnchorEl(null);\n setopenpopup(true);\n };\n const onGoToMyAccount = () => {\n setAnchorEl(null);\n history.push('/my-profile');\n };\n\n const classes = useStyles({themeMode, bgType});\n\n return (\n \n \n \n {/* {user.photoURL ? (\n \n ) : (\n {getUserAvatar()}\n )} */}\n\n \n\n \n \n {/* display name check */}\n {user.displayName ? user.displayName : user.email}\n {/* \n {user.role}\n */}\n \n \n \n \n \n \n {/* onGoToMyAccount()}>\n My Account\n */}\n onGoToMyAccount()}>\n My Profile\n \n openChangepasswordPopup()}>\n {user.paswd ? 'Change Password' : 'Set Password'}\n \n\n {\n logoutClick();\n }}>\n Logout\n \n \n \n \n \n \n );\n};\n\nexport default HorUserInfo;\n","import React, {useContext} from 'react';\nimport {Box} from '@material-ui/core';\nimport {makeStyles} from '@material-ui/core/styles';\nimport AppContext from '../../../@crema/utility/AppContext';\nimport {ThemeMode} from '../../constants/AppEnums';\nimport Hidden from '@material-ui/core/Hidden';\nimport {useHistory} from 'react-router-dom';\nimport Typography from '@material-ui/core/Typography';\nconst AppLogo = () => {\n const {themeMode} = useContext(AppContext);\n const useStyles = makeStyles(() => ({\n logoRoot: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n cursor: 'pointer',\n },\n logo: {\n //height: 36,\n height: 'auto',\n marginRight: 10,\n },\n heading: {\n color: '#2e4167',\n fontSize: '18px',\n fontWeight: 'bold',\n '@media (max-width: 767px)': {\n display: 'none',\n },\n },\n }));\n const classes = useStyles();\n const history = useHistory();\n //Go to dahboard\n const goToDashboard = async () => {\n history.push('/');\n };\n return (\n goToDashboard()}>\n \n \n \n\n \n \n \n \n Gudmed Patient Portal{' '}\n \n \n );\n};\n\nexport default AppLogo;\n","import React from 'react';\nimport AppBar from '@material-ui/core/AppBar';\nimport Toolbar from '@material-ui/core/Toolbar';\n// import IconButton from '@material-ui/core/IconButton';\n// import MenuIcon from '@material-ui/icons/Menu';\n// import {toggleNavCollapsed} from '../../../../redux/actions';\n// import {useDispatch} from 'react-redux';\n// import Hidden from '@material-ui/core/Hidden';\nimport HorizontalNav from '../../Navigation/HorizontalNav';\nimport Box from '@material-ui/core/Box';\nimport useStyles from './AppHeader.style';\n// import MoreIcon from '@material-ui/icons/MoreVert';\nimport HorUserInfo from '../HorUserInfo';\nimport AppLogo from '../../../../shared/components/AppLogo';\n// import HeaderMessages from '../../HeaderMessages';\n// import Notifications from '../../Notifications';\n// import MenuItem from '@material-ui/core/MenuItem';\n// import Menu from '@material-ui/core/Menu';\n// import LanguageSwitcher from '../../LanguageSwitcher';\nconst AppHeader = () => {\n const classes = useStyles();\n // const dispatch = useDispatch();\n // const [mobileMoreAnchorEl, setMobileMoreAnchorEl] = React.useState(null);\n\n // const isMobileMenuOpen = Boolean(mobileMoreAnchorEl);\n\n // function handleMobileMenuClose() {\n // setMobileMoreAnchorEl(null);\n // }\n\n // function handleMobileMenuOpen(event) {\n // setMobileMoreAnchorEl(event.currentTarget);\n // }\n\n // const mobileMenuId = 'primary-search-account-menu-mobile';\n\n // const renderMobileMenu = (\n // \n // \n // \n // \n // \n // \n // \n // \n // \n // );\n\n return (\n <>\n \n {/* */}\n \n \n \n {/* \n dispatch(toggleNavCollapsed())}>\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 {/* {renderMobileMenu} */}\n \n );\n};\nexport default AppHeader;\n","import {makeStyles} from '@material-ui/core';\n\nconst useStyles = makeStyles((theme) => {\n return {\n appMain: {\n minHeight: '100vh',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n backgroundColor: theme.palette.background.default,\n '&.appMainHor': {\n '& .customizerOption': {\n position: 'fixed',\n top: 205,\n [theme.breakpoints.up('md')]: {\n display: 'none',\n },\n right: '22px',\n },\n '&.appMainFixedFooter': {\n paddingBottom: 48,\n [theme.breakpoints.up('xl')]: {\n paddingBottom: 58,\n },\n '& .footer': {\n borderTop: 'solid 1px',\n borderTopColor: theme.palette.grey[200],\n },\n },\n },\n '& .footer': {\n marginLeft: 0,\n marginRight: 0,\n marginTop: 0,\n [theme.breakpoints.up('md')]: {\n marginLeft: 0,\n marginRight: 0,\n },\n },\n '& .footerContainer': {\n width: '100%',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 16,\n paddingRight: 16,\n [theme.breakpoints.up('lg')]: {\n // maxWidth: 1140,\n maxWidth: 1260,\n },\n [theme.breakpoints.up('xl')]: {\n maxWidth: 1720,\n },\n },\n },\n mainContent: {\n flex: 1,\n display: 'flex',\n },\n mainContainer: {\n width: '100%',\n marginLeft: 'auto',\n marginRight: 'auto',\n [theme.breakpoints.up('lg')]: {\n // maxWidth: 1140,\n //maxWidth: 1300,\n },\n [theme.breakpoints.up('xl')]: {\n maxWidth: 1720,\n },\n '& > .scrollbar-container': {\n padding: '20px',\n display: 'flex',\n //flexDirection: 'column',\n [theme.breakpoints.up('md')]: {\n padding: '30px 20px',\n },\n '& > div': {\n marginBottom: 0,\n },\n },\n },\n boxedLayout: {\n [theme.breakpoints.up('lg')]: {\n maxWidth: 1260,\n marginLeft: 'auto',\n marginRight: 'auto',\n boxShadow: '0px 0px 4px 2px rgba(0,0,0,0.12)',\n '& .app-sidebar': {\n position: 'absolute',\n },\n '& .fixed-footer': {\n maxWidth: 1260,\n marginLeft: 'auto',\n marginRight: 'auto',\n right: 0,\n },\n '& $mainContent': {\n width: '100%',\n flex: 'auto',\n },\n '& $mainContainer': {\n width: '100%',\n },\n '& .grid-btn': {\n fontSize: 11,\n },\n },\n [theme.breakpoints.up('xl')]: {\n maxWidth: 1680,\n '& $mainContent': {\n width: '100%',\n },\n '& .fixed-footer': {\n maxWidth: 1680,\n },\n },\n },\n };\n});\nexport default useStyles;\n","import React, {useContext} from 'react';\nimport AppContext from '../../../utility/AppContext';\nimport Box from '@material-ui/core/Box';\nimport {Button, makeStyles} from '@material-ui/core';\nimport clsx from 'clsx';\n\nconst AppFooter = (props) => {\n const {footer, footerType} = useContext(AppContext);\n\n const useStyles = makeStyles((theme) => ({\n footer: {\n margin: 'auto -20px 0',\n backgroundColor: theme.palette.background.paper,\n color: theme.palette.text.primary,\n [theme.breakpoints.up('md')]: {\n marginLeft: '-32px',\n marginRight: '-32px',\n },\n '& .footerContainer': {\n padding: '5px 20px',\n [theme.breakpoints.up('md')]: {\n paddingLeft: 32,\n paddingRight: 32,\n },\n [theme.breakpoints.up('xl')]: {\n padding: '10px 32px',\n },\n },\n },\n btnRoot: {\n paddingLeft: 20,\n paddingRight: 20,\n },\n }));\n\n const classes = useStyles(props);\n\n return (\n <>\n {footer && footerType === 'fluid' ? (\n \n \n Copy right @crema 2020\n \n \n \n \n \n ) : null}\n \n );\n};\n\nexport default AppFooter;\n","import React, {useContext} from 'react';\nimport AppContext from '../../../utility/AppContext';\nimport Box from '@material-ui/core/Box';\nimport {Button, makeStyles} from '@material-ui/core';\nimport clsx from 'clsx';\n\nconst AppFixedFooter = (props) => {\n const {footer, footerType} = useContext(AppContext);\n\n const useStyles = makeStyles((theme) => ({\n footer: {\n position: 'fixed',\n left: 0,\n bottom: 0,\n width: '100%',\n zIndex: 99,\n backgroundColor: theme.palette.background.paper,\n color: theme.palette.text.primary,\n margin: '0',\n '& .footerContainer': {\n padding: '5px 20px',\n [theme.breakpoints.up('xl')]: {\n padding: '10px 20px',\n },\n },\n },\n btnRoot: {\n paddingLeft: 20,\n paddingRight: 20,\n },\n }));\n\n const classes = useStyles(props);\n\n return (\n <>\n {footer && footerType === 'fixed' ? (\n \n \n Copy right @crema 2020\n \n \n \n \n \n ) : null}\n \n );\n};\n\nexport default AppFixedFooter;\n","import React, {useContext} from 'react';\nimport Avatar from '@material-ui/core/Avatar';\nimport {useDispatch} from 'react-redux';\nimport {\n onCognitoUserSignOut,\n onJWTAuthSignout,\n onSignOutAuth0User,\n onSignOutFirebaseUser,\n} from '../../../redux/actions';\nimport {useAuthUser} from '../../../@crema/utility/AppHooks';\nimport AppContext from '../../../@crema/utility/AppContext';\nimport clsx from 'clsx';\nimport {makeStyles} from '@material-ui/core';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Menu from '@material-ui/core/Menu';\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\nimport Box from '@material-ui/core/Box';\nimport {orange} from '@material-ui/core/colors';\nimport {AuthType, Fonts} from '../../constants/AppEnums';\n\nconst useStyles = makeStyles((theme) => {\n return {\n crUserInfo: {\n backgroundColor: 'rgba(0,0,0,.08)',\n paddingTop: 9,\n paddingBottom: 9,\n minHeight: 56,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n [theme.breakpoints.up('sm')]: {\n paddingTop: 10,\n paddingBottom: 10,\n minHeight: 70,\n },\n },\n profilePic: {\n fontSize: 24,\n backgroundColor: orange[500],\n },\n userInfo: {\n width: 'calc(100% - 75px)',\n },\n userName: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n fontSize: 16,\n fontWeight: Fonts.MEDIUM,\n color: (props) => (props.themeMode === 'light' ? '#313541' : 'white'),\n },\n designation: {\n marginTop: -2,\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n color: theme.palette.text.secondary,\n },\n pointer: {\n cursor: 'pointer',\n },\n };\n});\n\nconst UserInfo = (props) => {\n const {themeMode} = useContext(AppContext);\n const dispatch = useDispatch();\n const user = useAuthUser();\n\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n // const getUserAvatar = () => {\n // if (user.displayName) {\n // return user.displayName.charAt(0).toUpperCase();\n // }\n // if (user.email) {\n // return user.email.charAt(0).toUpperCase();\n // }\n // };\n\n const classes = useStyles({themeMode});\n\n return (\n \n \n \n \n \n \n {user.displayName ? user.displayName : 'Admin User '}\n \n \n \n \n My account\n {\n if (user && user.authType === AuthType.AWS_COGNITO) {\n dispatch(onCognitoUserSignOut());\n } else if (user && user.authType === AuthType.FIREBASE) {\n dispatch(onSignOutFirebaseUser());\n } else if (user && user.authType === AuthType.AUTH0) {\n dispatch(onSignOutAuth0User());\n } else if (user && user.authType === AuthType.JWT_AUTH) {\n dispatch(onJWTAuthSignout());\n }\n }}>\n Logout\n \n \n \n \n {/* System Manager1 */}\n \n \n \n );\n};\n\nexport default UserInfo;\n","import {makeStyles} from '@material-ui/core/styles';\nimport {Fonts, ThemeMode} from '../../../../shared/constants/AppEnums';\n\nconst useStyles = makeStyles((theme) => {\n return {\n navItem: {\n height: 40,\n marginTop: 2,\n marginBottom: 2,\n cursor: 'pointer',\n textDecoration: 'none !important',\n width: 'calc(100% - 16px)',\n borderRadius: '0 30px 30px 0',\n paddingLeft:\n theme.direction === 'ltr' ? (props) => 24 + 40 * props.level : 12,\n paddingRight:\n theme.direction === 'rtl' ? (props) => 24 + 40 * props.level : 12,\n '&.nav-item-header': {\n textTransform: 'uppercase',\n },\n '&.active': {\n backgroundColor: theme.palette.primary.main,\n pointerEvents: 'none',\n transition: 'border-radius .15s cubic-bezier(0.4,0.0,0.2,1)',\n '& .nav-item-text': {\n color: theme.palette.common.white + '!important',\n fontWeight: Fonts.MEDIUM,\n },\n '& .nav-item-icon': {\n color: theme.palette.common.white + '!important',\n },\n },\n\n '&:hover, &:focus': {\n '& .nav-item-text': {\n color: (props) =>\n props.themeMode === ThemeMode.LIGHT\n ? theme.palette.primary.main\n : '#fff',\n },\n\n '& .nav-item-icon': {\n color: (props) =>\n props.themeMode === ThemeMode.LIGHT\n ? theme.palette.primary.main\n : '#fff',\n },\n\n '& .nav-item-icon-arrow': {\n color: (props) =>\n props.themeMode === ThemeMode.LIGHT\n ? theme.palette.primary.main\n : '#fff',\n },\n },\n '& .nav-item-icon': {\n color: theme.palette.sidebar.textColor,\n },\n '& .nav-item-text': {\n color: theme.palette.sidebar.textColor,\n fontWeight: Fonts.MEDIUM,\n },\n },\n listIcon: {\n fontSize: 18,\n [theme.breakpoints.up('xl')]: {\n // fontSize: 20,\n },\n },\n listItemText: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n fontWeight: Fonts.REGULAR,\n },\n };\n});\nexport default useStyles;\n","import React, {useContext, useMemo} from 'react';\nimport {Icon, ListItem, ListItemText} from '@material-ui/core';\nimport {withRouter} from 'react-router-dom';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport {Badge, NavLink} from '../../../index';\nimport Box from '@material-ui/core/Box';\nimport IntlMessages from '../../../utility/IntlMessages';\nimport useStyles from './VerticalItem.style';\nimport AppContext from '../../../utility/AppContext';\nimport {checkPermission} from '../../../utility/Utils';\nimport {useSelector} from 'react-redux';\n\nconst VerticalItem = ({level, item}) => {\n const {themeMode} = useContext(AppContext);\n const classes = useStyles({level, themeMode});\n const {user} = useSelector(({auth}) => auth);\n const hasPermission = useMemo(() => checkPermission(item.auth, user.role), [\n item.auth,\n user.role,\n ]);\n if (!hasPermission) {\n return null;\n }\n return (\n \n {item.icon && (\n \n \n {item.icon}\n \n \n )}\n }\n classes={{primary: 'nav-item-text'}}\n />\n {item.count && (\n \n \n \n )}\n \n );\n};\n\nVerticalItem.propTypes = {\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.string,\n icon: PropTypes.string,\n url: PropTypes.string,\n }),\n};\n\nVerticalItem.defaultProps = {};\n\nexport default withRouter(React.memo(VerticalItem));\n","import {makeStyles} from '@material-ui/core/styles';\nimport {Fonts, ThemeMode} from '../../../../shared/constants/AppEnums';\n\nconst useStyles = makeStyles((theme) => {\n return {\n navItem: {\n height: 40,\n marginTop: 2,\n marginBottom: 2,\n width: 'calc(100% - 16px)',\n borderRadius: '0 30px 30px 0',\n paddingLeft:\n theme.direction === 'ltr' ? (props) => 24 + 40 * props.level : 24,\n paddingRight:\n theme.direction === 'rtl' ? (props) => 24 + 40 * props.level : 24,\n\n [theme.breakpoints.up('xl')]: {\n paddingLeft:\n theme.direction === 'ltr' ? (props) => 24 + 40 * props.level : 24,\n paddingRight:\n theme.direction === 'rtl' ? (props) => 24 + 40 * props.level : 24,\n },\n\n '& .nav-item-text': {\n fontWeight: Fonts.REGULAR,\n // fontSize: 16,\n color: theme.palette.sidebar.textColor,\n\n [theme.breakpoints.up('xl')]: {\n marginTop: 4,\n marginBottom: 4,\n // fontSize: 18,\n },\n },\n\n '& .nav-item-icon': {\n color: theme.palette.sidebar.textColor,\n },\n\n '& .nav-item-icon-arrow': {\n color: theme.palette.sidebar.textColor,\n },\n\n '& .MuiIconButton-root': {\n marginRight: -16,\n },\n\n '&.open, &:hover, &:focus': {\n '& .nav-item-text': {\n fontWeight: Fonts.MEDIUM,\n color: (props) =>\n props.themeMode === ThemeMode.LIGHT ? '#313541' : '#fff',\n },\n\n '& .nav-item-icon': {\n color: (props) =>\n props.themeMode === ThemeMode.LIGHT ? '#313541' : '#fff',\n },\n\n '& .nav-item-icon-arrow': {\n color: (props) =>\n props.themeMode === ThemeMode.LIGHT ? '#313541' : '#fff',\n },\n },\n },\n listItemText: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n },\n listIcon: {\n fontSize: 18,\n [theme.breakpoints.up('xl')]: {\n // fontSize: 20,\n },\n },\n };\n});\nexport default useStyles;\n","import React, {useContext, useEffect, useMemo, useState} from 'react';\nimport {\n Collapse,\n Icon,\n IconButton,\n ListItem,\n ListItemText,\n} from '@material-ui/core';\nimport {useLocation} from 'react-router-dom';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport VerticalItem from './VerticalItem';\nimport AppContext from '../../../utility/AppContext';\nimport Box from '@material-ui/core/Box';\nimport IntlMessages from '../../../utility/IntlMessages';\nimport useStyles from './VerticalCollapase.style';\nimport {useSelector} from 'react-redux';\nimport {checkPermission} from '../../../utility/Utils';\n\nconst needsToBeOpened = (pathname, item) => {\n return pathname && isUrlInChildren(item, pathname);\n};\n\nconst isUrlInChildren = (parent, url) => {\n if (!parent.children) {\n return false;\n }\n\n for (let i = 0; i < parent.children.length; i++) {\n if (parent.children[i].children) {\n if (isUrlInChildren(parent.children[i], url)) {\n return true;\n }\n }\n\n if (\n parent.children[i].url === url ||\n url.includes(parent.children[i].url)\n ) {\n return true;\n }\n }\n\n return false;\n};\n\nconst VerticalCollapse = ({item, level}) => {\n const {themeMode} = useContext(AppContext);\n const classes = useStyles({level, themeMode});\n const {theme} = useContext(AppContext);\n const {pathname} = useLocation();\n const [open, setOpen] = useState(() => needsToBeOpened(pathname, item));\n\n useEffect(() => {\n if (needsToBeOpened(pathname, item)) {\n setOpen(true);\n }\n }, [pathname, item]);\n\n const handleClick = () => {\n setOpen(!open);\n };\n\n const {user} = useSelector(({auth}) => auth);\n const hasPermission = useMemo(() => checkPermission(item.auth, user.role), [\n item.auth,\n user.role,\n ]);\n\n if (!hasPermission) {\n return null;\n }\n\n return (\n <>\n \n {item.icon && (\n \n \n {item.icon}\n \n \n )}\n }\n />\n \n \n \n {open\n ? 'expand_more'\n : theme.direction === 'ltr'\n ? 'chevron_right'\n : 'chevron_left'}\n \n \n \n \n\n {item.children && (\n \n {item.children.map((item) => (\n \n {item.type === 'collapse' && (\n \n )}\n\n {item.type === 'item' && (\n \n )}\n \n ))}\n \n )}\n \n );\n};\n\nVerticalCollapse.propTypes = {\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.array,\n }),\n};\nVerticalCollapse.defaultProps = {};\n\nexport default React.memo(VerticalCollapse);\n","import {makeStyles} from '@material-ui/core/styles';\nimport {ThemeMode} from '../../../../shared/constants/AppEnums';\n\nconst useStyles = makeStyles((theme) => {\n return {\n navItem: {\n height: 40,\n marginTop: 2,\n marginBottom: 2,\n paddingLeft:\n theme.direction === 'ltr' ? (props) => 24 + 40 * props.level : 12,\n paddingRight:\n theme.direction === 'rtl' ? (props) => 24 + 40 * props.level : 12,\n color: (props) =>\n props.themeMode === ThemeMode.LIGHT\n ? theme.palette.text.secondary\n : 'rgba(255,255,255,0.38)',\n fontWeight: 700,\n fontSize: 14,\n cursor: 'pointer',\n textDecoration: 'none!important',\n\n [theme.breakpoints.up('xl')]: {\n // fontSize: 16,\n marginTop: 4,\n marginBottom: 4,\n paddingLeft:\n theme.direction === 'ltr' ? (props) => 24 + 40 * props.level : 12,\n paddingRight:\n theme.direction === 'rtl' ? (props) => 24 + 40 * props.level : 12,\n },\n '&.nav-item-header': {\n textTransform: 'uppercase',\n },\n },\n };\n});\n\nexport default useStyles;\n","import React, {useContext, useMemo} from 'react';\nimport {ListItem} from '@material-ui/core';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport VerticalCollapse from './VerticalCollapse';\nimport VerticalItem from './VerticalItem';\nimport IntlMessages from '../../../utility/IntlMessages';\nimport useStyles from './VerticalNavGroup.style';\nimport AppContext from '../../../utility/AppContext';\nimport {useSelector} from 'react-redux';\nimport {checkPermission} from '../../../utility/Utils';\n\nconst VerticalNavGroup = ({item, level}) => {\n const {themeMode} = useContext(AppContext);\n const classes = useStyles({level, themeMode});\n const {user} = useSelector(({auth}) => auth);\n const hasPermission = useMemo(() => checkPermission(item.auth, user.role), [\n item.auth,\n user.role,\n ]);\n if (!hasPermission) {\n return null;\n }\n return (\n <>\n \n {}\n \n\n {item.children && (\n <>\n {item.children.map((item) => (\n \n {item.type === 'group' && (\n \n )}\n\n {item.type === 'collapse' && (\n \n )}\n\n {item.type === 'item' && (\n \n )}\n \n ))}\n \n )}\n \n );\n};\n\nVerticalNavGroup.propTypes = {\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.string,\n children: PropTypes.array,\n }),\n};\n\nVerticalNavGroup.defaultProps = {};\n\nconst NavVerticalGroup = VerticalNavGroup;\n\nexport default NavVerticalGroup;\n","import React from 'react';\nimport List from '@material-ui/core/List';\n\nimport routesConfig from '../../../../modules/routesConfig';\nimport VerticalCollapse from './VerticalCollapse';\nimport VerticalItem from './VerticalItem';\nimport VerticalNavGroup from './VerticalNavGroup';\n\nconst Navigation = () => {\n return (\n \n {routesConfig.map((item) => (\n \n {item.type === 'group' && }\n\n {item.type === 'collapse' && (\n \n )}\n\n {item.type === 'item' && }\n \n ))}\n \n );\n};\n\nexport default Navigation;\n","import {makeStyles} from '@material-ui/core';\nimport {ThemeMode} from '../../../../shared/constants/AppEnums';\n\nconst useStyles = makeStyles((theme) => {\n return {\n drawerContainer: {\n paddingLeft: 0,\n paddingTop: 0,\n paddingBottom: 0,\n maxHeight: '100vh',\n width: '19rem',\n [theme.breakpoints.up('xl')]: {\n width: '21.6rem',\n },\n },\n sidebarBg: {\n overflow: 'hidden',\n backgroundColor: (props) =>\n props.themeMode === ThemeMode.SEMI_DARK\n ? theme.palette.sidebar.bgColor\n : props.themeMode === ThemeMode.LIGHT\n ? 'white'\n : '#313541',\n },\n drawerScrollAppSidebar: {\n paddingTop: 8,\n paddingBottom: 32,\n height: 'calc(100vh - 58px) !important',\n },\n };\n});\nexport default useStyles;\n","import React, {useContext} from 'react';\nimport Drawer from '@material-ui/core/Drawer';\nimport Hidden from '@material-ui/core/Hidden';\nimport clsx from 'clsx';\nimport UserInfo from '../../../../shared/components/UserInfo';\nimport Navigation from '../../Navigation/VerticleNav';\nimport {toggleNavCollapsed} from '../../../../redux/actions';\nimport {useDispatch, useSelector} from 'react-redux';\nimport Box from '@material-ui/core/Box';\nimport PropTypes from 'prop-types';\nimport useStyles from './AppSidebar.style';\nimport Scrollbar from '../../Scrollbar';\nimport AppContext from '../../../utility/AppContext';\n\nconst AppSidebar = (props) => {\n const dispatch = useDispatch();\n const navCollapsed = useSelector(({settings}) => settings.navCollapsed);\n const {themeMode} = useContext(AppContext);\n\n const handleToggleDrawer = () => {\n dispatch(toggleNavCollapsed());\n };\n\n const classes = useStyles({themeMode});\n return (\n \n handleToggleDrawer()}\n classes={{\n root: clsx(props.variant),\n paper: clsx(props.variant),\n }}\n style={{position: 'absolute'}}>\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default AppSidebar;\n\nAppSidebar.defaultProps = {\n variant: '',\n position: 'left',\n};\n\nAppSidebar.propTypes = {\n position: PropTypes.string,\n variant: PropTypes.string,\n};\n","import React, {useContext} from 'react';\nimport AppHeader from './AppHeader';\nimport {ContentView} from '../../../index';\nimport Box from '@material-ui/core/Box';\nimport useStyles from './index.style';\nimport clsx from 'clsx';\nimport AppFooter from './AppFooter';\nimport AppFixedFooter from './AppFixedFooter';\nimport AppContext from '../../../utility/AppContext';\nimport AppSidebar from './AppSidebar';\nimport {LayoutType} from '../../../../shared/constants/AppEnums';\n\nconst HorDefault = (props) => {\n const {footer, layoutType, footerType} = useContext(AppContext);\n const classes = useStyles(props);\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default HorDefault;\n","import HorDefault from './HorDefault';\n// import MiniSidebar from './MiniSidebar';\n// import DrawerLayout from './DrawerLayout';\n// import Standard from './Standard';\n// import BitBucket from './BitBucket';\n//import HorLightNav from './HorLightNav';\n// import HorDarkLayout from './HorDarkLayout';\n//import DefaultLayout from './DefaultLayout';\n// import HeaderUserLayout from './UserHeader';\n// import HeaderUserMiniLayout from './UserHeaderMini';\n// import MiniSidebarToggle from './MiniSidebarToggle';\nimport {NavStyle} from '../../../shared/constants/AppEnums';\n\nconst Layouts = {\n // [NavStyle.STANDARD]: Standard,\n // [NavStyle.DEFAULT]: DefaultLayout,\n // [NavStyle.HEADER_USER]: HeaderUserLayout,\n // [NavStyle.HEADER_USER_MINI]: HeaderUserMiniLayout,\n // [NavStyle.MINI_SIDEBAR_TOGGLE]: MiniSidebarToggle,\n // [NavStyle.MINI]: MiniSidebar,\n // [NavStyle.DRAWER]: DrawerLayout,\n // [NavStyle.BIT_BUCKET]: BitBucket,\n [NavStyle.H_DEFAULT]: HorDefault,\n // [NavStyle.HOR_LIGHT_NAV]: HorLightNav,\n // [NavStyle.HOR_DARK_LAYOUT]: HorDarkLayout,\n};\nexport default Layouts;\n","import makeStyles from '@material-ui/core/styles/makeStyles';\nimport {Fonts} from '../../constants/AppEnums';\nimport {fade} from '@material-ui/core';\n\nconst useStyles = makeStyles((theme) => ({\n '@global': {\n // for global styles\n '.MuiLink-root': {\n fontWeight: Fonts.REGULAR,\n },\n '.pointer': {\n cursor: 'pointer',\n },\n '.MuiTableCell-stickyHeader': {\n backgroundColor: theme.palette.background.paper,\n },\n '.item-hover': {\n transition: 'all .2s ease',\n transform: 'scale(1)',\n '&:hover': {\n backgroundColor: fade(theme.palette.primary.main, 0.1),\n transform: 'translateY(-2px)',\n boxShadow: `0 3px 10px 0 ${fade(theme.palette.common.black, 0.2)}`,\n },\n },\n '.card-hover': {\n transition: 'all 0.3s ease',\n transform: 'scale(1)',\n '&:hover': {\n boxShadow: '0 4px 8px rgba(0,0,0,.45)',\n transform: 'scale(1.05)',\n },\n },\n },\n}));\n\nexport default useStyles;\n","import React, {useContext} from 'react';\nimport {useSelector} from 'react-redux';\nimport Box from '@material-ui/core/Box';\nimport {makeStyles} from '@material-ui/core/styles';\n\nimport AppContext from '../../utility/AppContext';\nimport Layouts from './Layouts';\nimport {ContentView} from '../../index';\nimport useStyles from '../../../shared/jss/common/common.style';\n\nconst useStyle = makeStyles(() => ({\n appAuth: {\n flex: 1,\n display: 'flex',\n position: 'relative',\n height: '100vh',\n backgroundSize: 'cover',\n backgroundImage: 'linear-gradient(#380036,#0CBABA)',\n // background: `url(/assets/images/patient-signin.jpg) no-repeat center center`,\n '& .scrollbar-container': {\n flex: 1,\n display: 'flex',\n flexDirection: 'column',\n },\n '& .main-content-view': {\n //padding: 20,\n },\n '& .footer': {\n marginRight: 0,\n marginLeft: 0,\n },\n },\n}));\n\nconst CremaLayout = () => {\n useStyles();\n const {navStyle} = useContext(AppContext);\n const {user} = useSelector(({auth}) => auth);\n const AppLayout = Layouts[navStyle];\n\n const classes = useStyle();\n\n return (\n <>\n {user ? (\n \n ) : (\n \n \n \n )}\n \n );\n};\n\nexport default React.memo(CremaLayout);\n","import createBreakpoints from '@material-ui/core/styles/createBreakpoints';\nimport {\n FooterType,\n HeaderType,\n LayoutType,\n NavStyle,\n RouteTransition,\n ThemeMode,\n ThemeStyle,\n ThemeStyleRadius,\n} from '../../../shared/constants/AppEnums';\n\nconst breakpoints = createBreakpoints({});\nconst cardRadius = ThemeStyleRadius.STANDARD;\nconst defaultConfig = {\n theme: {\n spacing: 4,\n direction: 'ltr', //ltr, rtl\n palette: {\n type: ThemeMode.LIGHT,\n background: {\n paper: '#FFFFFF',\n default: '#F4F7FE',\n },\n primary: {\n main: '#0A8FDC',\n contrastText: '#fff',\n },\n secondary: {\n main: '#F04F47',\n },\n sidebar: {\n bgColor: '#313541',\n textColor: '#808183',\n },\n gray: {\n 50: '#fafafa',\n 100: '#f7fafc',\n 200: '#edf2f7',\n 300: '#E0E0E0',\n 400: '#c5c6cb',\n 500: '#A8A8A8',\n 600: '#666666',\n 700: '#4a5568',\n 800: '#201e21',\n 900: '#1a202c',\n A100: '#d5d5d5',\n A200: '#aaaaaa',\n A400: '#303030',\n A700: '#616161',\n },\n text: {\n primary: '#2e4167',\n secondary: '#74788d',\n disabled: '#909098',\n hint: '#aeafb8',\n white: '#fff',\n },\n },\n status: {\n danger: 'orange',\n },\n divider: 'rgba(0, 0, 0, 0.12)',\n typography: {\n fontFamily: ['Poppins', 'sans-serif'].join(','),\n },\n overrides: {\n MuiTypography: {\n h1: {\n fontSize: 22,\n },\n h2: {\n fontSize: 20,\n },\n h3: {\n fontSize: 18,\n },\n h4: {\n fontSize: 16,\n },\n h5: {\n fontSize: 14,\n },\n h6: {\n fontSize: 14,\n },\n subtitle1: {\n fontSize: 14,\n },\n subtitle2: {\n fontSize: 16,\n },\n body1: {\n fontSize: 14,\n },\n body2: {\n fontSize: 12,\n },\n },\n MuiToggleButton: {\n root: {\n borderRadius: cardRadius,\n },\n },\n MuiCardLg: {\n root: {\n borderRadius:\n cardRadius === ThemeStyleRadius.STANDARD\n ? ThemeStyleRadius.STANDARD\n : ThemeStyleRadius.MODERN + 20,\n },\n },\n MuiCard: {\n root: {\n borderRadius: cardRadius,\n boxShadow: '0px 5px 6px rgba(0, 0, 0, 0.04)',\n '& .MuiCardContent-root:last-child': {\n paddingBottom: 16,\n },\n },\n },\n MuiButton: {\n root: {\n borderRadius: cardRadius,\n boxShadow: '0px 5px 6px rgba(0, 0, 0, 0.04)',\n [breakpoints.down('md')]: {\n paddingTop: '8px !important',\n paddingBottom: '8px !important',\n },\n },\n },\n },\n },\n themeStyle: ThemeStyle.STANDARD,\n themeMode: ThemeMode.SEMI_DARK,\n navStyle: NavStyle.STANDARD,\n layoutType: LayoutType.FULL_WIDTH,\n footerType: FooterType.FLUID,\n headerType: HeaderType.DARK,\n rtAnim: RouteTransition.NONE,\n footer: false,\n locale: {\n languageId: 'english',\n locale: 'en',\n name: 'English',\n icon: 'us',\n },\n rtlLocale: ['ar'],\n};\nexport default defaultConfig;\n","import {\n ThemeMode,\n ThemeStyle,\n ThemeStyleRadius,\n} from '../../../shared/constants/AppEnums';\nimport {isBreakPointDown} from '../Utils';\n\nexport const ThemeSetting = {\n UPDATE_THEME: 'UPDATE_THEME',\n SET_FOOTER: 'SET_FOOTER',\n SET_FOOTER_TYPE: 'SET_FOOTER_TYPE',\n UPDATE_THEME_MODE: 'UPDATE_THEME_MODE',\n UPDATE_HEADER_MODE: 'UPDATE_HEADER_MODE',\n UPDATE_THEME_STYLE: 'UPDATE_THEME_STYLE',\n UPDATE_LAYOUT_STYLE: 'UPDATE_LAYOUT_STYLE',\n SET_RTL: 'SET_RTL',\n CHANGE_LOCALE: 'CHANGE_LOCALE',\n CHANGE_NAV_STYLE: 'CHANGE_NAV_STYLE',\n CHANGE_RT_ANIM: 'CHANGE_RT_ANIM',\n UPDATE_PRIMARY_COLOR: 'UPDATE_PRIMARY_COLOR',\n UPDATE_SIDEBAR_COLOR: 'UPDATE_SIDEBAR_COLOR',\n UPDATE_SECONDARY_COLOR: 'UPDATE_SECONDARY_COLOR',\n};\n\nexport function contextReducer(state, action) {\n switch (action.type) {\n case ThemeSetting.UPDATE_THEME: {\n return {\n ...state,\n theme: action.payload,\n primary: action.payload.palette.primary.main,\n secondary: action.payload.palette.secondary.main,\n };\n }\n case ThemeSetting.SET_FOOTER: {\n return {\n ...state,\n footer: action.payload,\n };\n }\n case ThemeSetting.SET_FOOTER_TYPE: {\n return {\n ...state,\n footerType: action.payload,\n };\n }\n case ThemeSetting.UPDATE_THEME_MODE: {\n let theme = state.theme;\n if (action.payload === ThemeMode.DARK) {\n theme.palette.type = ThemeMode.DARK;\n theme.palette.background = {\n paper: '#313541',\n default: '#393D4B',\n };\n theme.palette.text = {\n primary: 'rgba(255, 255, 255, 0.87)',\n secondary: 'rgba(255, 255, 255, 0.67)',\n disabled: 'rgba(255, 255, 255, 0.38)',\n hint: 'rgba(255, 255, 255, 0.38)',\n };\n } else {\n theme.palette.type = ThemeMode.LIGHT;\n theme.palette.background = {\n paper: '#FFFFFF',\n default: '#f3f4f6',\n };\n theme.palette.text = {\n primary: 'rgba(0, 0, 0, 0.87)',\n secondary: 'rgba(0, 0, 0, 0.67)',\n disabled: 'rgba(0, 0, 0, 0.38)',\n hint: 'rgba(0, 0, 0, 0.38)',\n };\n }\n return {\n ...state,\n theme,\n themeMode: action.payload,\n };\n }\n case ThemeSetting.UPDATE_HEADER_MODE: {\n return {\n ...state,\n headerMode: action.payload,\n };\n }\n case ThemeSetting.UPDATE_THEME_STYLE: {\n const theme = state.theme;\n\n if (action.payload === ThemeStyle.MODERN) {\n if (isBreakPointDown('md')) {\n theme.overrides.MuiCard.root.borderRadius = 20;\n theme.overrides.MuiToggleButton.root.borderRadius = 20;\n } else {\n theme.overrides.MuiCard.root.borderRadius = ThemeStyleRadius.MODERN;\n theme.overrides.MuiToggleButton.root.borderRadius =\n ThemeStyleRadius.MODERN;\n }\n theme.overrides.MuiButton.root.borderRadius = ThemeStyleRadius.MODERN;\n theme.overrides.MuiCardLg.root.borderRadius =\n ThemeStyleRadius.MODERN + 20;\n } else {\n theme.overrides.MuiCard.root.borderRadius = ThemeStyleRadius.STANDARD;\n theme.overrides.MuiToggleButton.root.borderRadius =\n ThemeStyleRadius.STANDARD;\n theme.overrides.MuiButton.root.borderRadius = ThemeStyleRadius.STANDARD;\n theme.overrides.MuiCardLg.root.borderRadius = ThemeStyleRadius.STANDARD;\n }\n\n return {\n ...state,\n theme,\n themeStyle: action.payload,\n };\n }\n case ThemeSetting.UPDATE_LAYOUT_STYLE: {\n return {\n ...state,\n layoutType: action.payload,\n };\n }\n case ThemeSetting.SET_RTL: {\n const theme = state.theme;\n if (action.payload) {\n theme.direction = 'rtl';\n } else {\n theme.direction = 'ltr';\n }\n return {\n ...state,\n theme,\n isRTL: action.payload,\n };\n }\n case ThemeSetting.CHANGE_LOCALE: {\n return {\n ...state,\n locale: action.payload,\n };\n }\n case ThemeSetting.CHANGE_NAV_STYLE: {\n return {\n ...state,\n navStyle: action.payload,\n };\n }\n case ThemeSetting.CHANGE_RT_ANIM: {\n return {\n ...state,\n rtAnim: action.payload,\n };\n }\n case ThemeSetting.UPDATE_PRIMARY_COLOR: {\n return {\n ...state,\n primary: action.payload,\n };\n }\n case ThemeSetting.UPDATE_SIDEBAR_COLOR: {\n return {\n ...state,\n sidebarColor: action.payload,\n };\n }\n case ThemeSetting.UPDATE_SECONDARY_COLOR: {\n return {\n ...state,\n secondary: action.payload,\n };\n }\n default:\n return state;\n }\n}\n","import React, {useCallback, useReducer} from 'react';\nimport defaultConfig from './defaultConfig';\nimport AppContext from '../AppContext';\nimport routes from '../../../modules';\nimport PropTypes from 'prop-types';\nimport {contextReducer, ThemeSetting} from './ContextReducer';\n\nexport const ContextState = {\n theme: defaultConfig.theme,\n footer: defaultConfig.footer,\n footerType: defaultConfig.footerType,\n themeMode: defaultConfig.themeMode,\n headerMode: defaultConfig.headerMode,\n themeStyle: defaultConfig.themeStyle,\n layoutType: defaultConfig.layoutType,\n isRTL: defaultConfig.theme.direction === 'rtl',\n locale: defaultConfig.locale,\n navStyle: defaultConfig.navStyle,\n rtAnim: defaultConfig.rtAnim,\n primary: defaultConfig.theme.palette.primary.main,\n sidebarColor: defaultConfig.theme.palette.sidebar.bgColor,\n secondary: defaultConfig.theme.palette.secondary.main,\n};\nconst ContextProvider = ({children}) => {\n const [state, dispatch] = useReducer(\n contextReducer,\n ContextState,\n () => ContextState,\n );\n\n const setFooter = (footer) => {\n dispatch({type: ThemeSetting.SET_FOOTER, payload: footer});\n };\n\n const setFooterType = (footerType) => {\n dispatch({type: ThemeSetting.SET_FOOTER_TYPE, payload: footerType});\n };\n\n const updateHeaderMode = (headerMode) => {\n dispatch({type: ThemeSetting.UPDATE_HEADER_MODE, payload: headerMode});\n };\n\n const updateThemeStyle = useCallback((themeStyle) => {\n dispatch({type: ThemeSetting.UPDATE_THEME_STYLE, payload: themeStyle});\n }, []);\n\n const updateLayoutStyle = (layoutType) => {\n dispatch({type: ThemeSetting.UPDATE_LAYOUT_STYLE, payload: layoutType});\n };\n\n const changeLocale = (locale) => {\n dispatch({type: ThemeSetting.CHANGE_LOCALE, payload: locale});\n };\n\n const changeNavStyle = useCallback((navStyle) => {\n dispatch({type: ThemeSetting.CHANGE_NAV_STYLE, payload: navStyle});\n }, []);\n\n const changeRTAnim = (rtAnim) => {\n dispatch({type: ThemeSetting.CHANGE_RT_ANIM, payload: rtAnim});\n };\n const updatePrimaryColor = (primary) => {\n dispatch({type: ThemeSetting.UPDATE_PRIMARY_COLOR, payload: primary});\n };\n\n const updateSidebarColor = (sidebarColor) => {\n dispatch({type: ThemeSetting.UPDATE_SIDEBAR_COLOR, payload: sidebarColor});\n };\n\n const updateSecondaryColor = (secondary) => {\n dispatch({type: ThemeSetting.UPDATE_SECONDARY_COLOR, payload: secondary});\n };\n\n const updateThemeMode = useCallback((themeMode) => {\n dispatch({type: ThemeSetting.UPDATE_THEME_MODE, payload: themeMode});\n }, []);\n const updateTheme = (theme) => {\n dispatch({type: ThemeSetting.UPDATE_THEME, payload: theme});\n };\n\n const setRTL = useCallback((rtl) => {\n dispatch({type: ThemeSetting.SET_RTL, payload: rtl});\n }, []);\n\n return (\n \n {children}\n \n );\n};\n\nexport default ContextProvider;\n\nContextProvider.propTypes = {\n children: PropTypes.node.isRequired,\n};\n","import axios from 'axios';\n\nexport default axios.create({\n headers: {\n 'Content-Type': 'application/json',\n 'Access-Control-Allow-Origin': '*',\n },\n});\n","/************\n\n * Developed by : Shiva Software Solutions\n * Date : 14-06-2021\n * Descriptions : Route for dahboard page\n\n ************/\nimport React from 'react';\nimport {authRole} from '../../shared/constants/AppConst';\n\nexport const dashBoardConfigs = [\n {\n auth: authRole.user,\n routes: [\n {\n path: '/dashboard',\n component: React.lazy(() => import('./DashboardPage/Tabs/index')),\n },\n ],\n },\n {\n auth: authRole.user,\n routes: [\n {\n path: '/my-profile',\n component: React.lazy(() => import('../dashboard/MyAccount/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 14-06-2021\n * Descriptions : Route page for signup\n ************/\nimport React from 'react';\n\nexport const authRouteConfig = [\n {\n routes: [\n {\n path: '/login',\n component: React.lazy(() => import('./Signin/index')),\n },\n ],\n },\n {\n routes: [\n {\n path: '/signin',\n component: React.lazy(() => import('./SigninWithOTP/index')),\n },\n ],\n },\n {\n routes: [\n {\n path: '/login1',\n component: React.lazy(() => import('./Signin/SigninPatient')),\n },\n ],\n },\n {\n routes: [\n {\n path: '/signup',\n component: React.lazy(() => import('./Signup/index')),\n },\n ],\n },\n {\n routes: [\n {\n path: '/forget-password',\n component: React.lazy(() => import('./ForgetPassword')),\n },\n ],\n },\n {\n routes: [\n {\n path: '/terms-conditions',\n component: React.lazy(() => import('./Signup/Termsandconditions')),\n },\n ],\n },\n {\n routes: [\n {\n path: '/error-pages/error-404',\n component: React.lazy(() => import('../errorPages/Error404/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 18-06-2021\n * Descriptions : Route for eRx Details\n ************/\nimport React from 'react';\nimport {authRole} from '../../shared/constants/AppConst';\n//Route config for eRx details\nexport const eRxDetailsConfigs = [\n {\n auth: authRole.user,\n routes: [\n {\n path: '/eRxDetails',\n component: React.lazy(() => import('./eRxDetailsPage')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 10-01-2022\n * Descriptions : Route for dahboard page\n ************/\nimport React from 'react';\nimport {authRole} from '../../shared/constants/AppConst';\n\nexport const covidVitalsConfig = [\n //Redirect to dashboard page\n {\n auth: authRole.user,\n routes: [\n {\n path: '/covidVitals',\n component: React.lazy(() => import('./covidVitalsPage/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 30-03-2022\n * Descriptions : Route for report page\n ************/\nimport React from 'react';\nimport {authRole} from '../../shared/constants/AppConst';\n\nexport const reportsConfig = [\n //Redirect to dashboard page\n {\n auth: authRole.user,\n routes: [\n {\n path: '/reports',\n component: React.lazy(() => import('./reportPage/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 25-02-2022\n * Descriptions : Route page for erx upload page\n * Dependicies : To use @material-ui/core,react-router-dom,formik\n ************/\nimport React from 'react';\n\nexport const eRxRouteConfig = [\n {\n //Redirect to erx page\n routes: [\n {\n path: '/uploadprescription',\n component: React.lazy(() => import('./eRx/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 07-04-2022\n * Descriptions : Route page for view patient erx\n * Dependicies : To use @material-ui/core,react-router-dom,formik\n ************/\nimport React from 'react';\n\nexport const patienteRxRouteConfig = [\n {\n //Redirect to erx page\n routes: [\n {\n path: '/eRx/:erxid/:patientid',\n component: React.lazy(() => import('./eRx/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 25-02-2022\n * Descriptions : Route page for erx upload page\n * Dependicies : To use @material-ui/core,react-router-dom,formik\n ************/\nimport React from 'react';\n\nexport const generateHealthIDConfig = [\n {\n //Redirect to erx page\n routes: [\n {\n path: '/generateHealthID',\n component: React.lazy(() => import('./generateHealthID/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 18-06-2021\n * Descriptions : Route for eRx Details\n ************/\nimport React from 'react';\nimport {authRole} from '../../shared/constants/AppConst';\n//Route config for eRx details\nexport const appointmentsConfig = [\n {\n auth: authRole.user,\n routes: [\n {\n path: '/appointments',\n component: React.lazy(() => import('./appointments')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 31-10-2022\n * Descriptions : Route for dahboard page\n ************/\nimport React from 'react';\nimport {authRole} from '../../shared/constants/AppConst';\n\nexport const mergedPatientConfig = [\n //Redirect to dashboard page\n {\n auth: authRole.user,\n routes: [\n {\n path: '/mergingPatient',\n component: React.lazy(() => import('./mergedPatient')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 11-01-2023\n * Descriptions : Route page for erx upload page\n * Dependicies : To use @material-ui/core,react-router-dom,formik\n ************/\nimport React from 'react';\n\nexport const oneMgConfig = [\n {\n //Redirect to erx page\n routes: [\n {\n path: '/1mg',\n component: React.lazy(() => import('./oneMG/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 25-02-2022\n * Descriptions : Route page for erx upload page\n * Dependicies : To use @material-ui/core,react-router-dom,formik\n ************/\nimport React from 'react';\n\nexport const eRxUploadPDConfig = [\n {\n //Redirect to erx page\n routes: [\n {\n path: '/pdprescription',\n component: React.lazy(() => import('./eRx/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 25-02-2022\n * Descriptions : Route page for erx upload page\n * Dependicies : To use @material-ui/core,react-router-dom,formik\n ************/\nimport React from 'react';\n\nexport const eRxDemoPrescriptionRouteConfig = [\n {\n //Redirect to erx page\n routes: [\n {\n path: '/demouploadprescription',\n component: React.lazy(() => import('./eRx/index')),\n },\n ],\n },\n];\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 15-06-2021\n * Descriptions : Route configuration files\n ************/\n\nimport React from 'react';\nimport {Redirect} from 'react-router-dom';\n\nimport {createRoutes} from '../@crema/utility/Utils';\nimport {dashBoardConfigs} from './dashboard';\nimport {authRouteConfig} from './auth';\nimport {initialUrl} from '../shared/constants/AppConst';\nimport {eRxDetailsConfigs} from './eRxDetails';\nimport {covidVitalsConfig} from './covidVitals';\nimport {reportsConfig} from './reports';\nimport {eRxRouteConfig} from './eRxUpload';\nimport {patienteRxRouteConfig} from './patientERX';\nimport {generateHealthIDConfig} from './generateHealthID';\nimport {appointmentsConfig} from './appointments';\nimport {mergedPatientConfig} from './mergedPatient';\nimport {oneMgConfig} from './oneMG';\nimport {eRxUploadPDConfig} from './eRxUploadPrivateDoctors';\nimport {eRxDemoPrescriptionRouteConfig} from './eRxUploadDemoPrescription';\n\nconst routeConfigs = [\n ...authRouteConfig,\n ...dashBoardConfigs,\n ...eRxDetailsConfigs,\n ...reportsConfig,\n ...covidVitalsConfig,\n ...eRxRouteConfig,\n ...patienteRxRouteConfig,\n ...generateHealthIDConfig,\n ...appointmentsConfig,\n ...mergedPatientConfig,\n ...oneMgConfig,\n ...eRxUploadPDConfig,\n ...eRxDemoPrescriptionRouteConfig,\n];\n\nconst routes = [\n ...createRoutes(routeConfigs),\n\n {\n path: '/',\n exact: true,\n component: () => ,\n },\n {\n component: () => ,\n },\n];\n\nexport default routes;\n","import enMessages from '../locales/en_US.json';\nimport {enUS} from '@material-ui/core/locale';\n\nconst EnLang = {\n messages: {\n ...enMessages,\n },\n muiLocale: enUS,\n locale: 'en-US',\n};\nexport default EnLang;\n","import zhMessages from '../locales/zh-Hans.json';\nimport {zhCN} from '@material-ui/core/locale';\n\nconst ZhLan = {\n messages: {\n ...zhMessages,\n },\n muiLocale: zhCN,\n locale: 'zh-Hans-CN',\n};\nexport default ZhLan;\n","import saMessages from '../locales/ar_SA.json';\n\nconst saLang = {\n messages: {\n ...saMessages,\n },\n locale: 'ar-SA',\n};\nexport default saLang;\n","import saMessages from '../locales/it_IT.json';\nimport {itIT} from '@material-ui/core/locale';\n\nconst saLang = {\n messages: {\n ...saMessages,\n },\n muiLocale: itIT,\n locale: 'it-IT',\n};\nexport default saLang;\n","import saMessages from '../locales/es_ES.json';\nimport {esES} from '@material-ui/core/locale';\n\nconst saLang = {\n messages: {\n ...saMessages,\n },\n muiLocale: esES,\n locale: 'es',\n};\nexport default saLang;\n","import enLang from './entries/en-US';\nimport zhLang from './entries/zh-Hans-CN';\nimport arLang from './entries/ar_SA';\nimport itLang from './entries/it_IT';\nimport esLang from './entries/es_ES';\nimport frLang from './entries/fr_FR';\n\nconst AppLocale = {\n en: enLang,\n zh: zhLang,\n ar: arLang,\n it: itLang,\n es: esLang,\n fr: frLang,\n};\n\nexport default AppLocale;\n","import saMessages from '../locales/fr_FR.json';\nimport {frFR} from '@material-ui/core/locale';\n\nconst saLang = {\n messages: {\n ...saMessages,\n },\n muiLocale: frFR,\n locale: 'fr-FR',\n};\nexport default saLang;\n","import createAuth0Client from '@auth0/auth0-spa-js';\n\nconst Auth0Config = async () => {\n return await createAuth0Client({\n client_id: '617CCZ9ZFiNYIw9KLRy6qbkh1HK3KgOJ',\n domain: 'dev-obk84v4k.auth0.com',\n redirect_uri: 'https://crema-react.firebaseapp.com/dashboards/crm',\n audience: 'https://dev-obk84v4k.auth0.com/userinfo',\n });\n};\n\nexport default Auth0Config;\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 21-06-2021\n * Descriptions : Login AND Signup Functionality\n ************/\n\nimport {\n FETCH_START,\n FETCH_SUCCESS,\n FETCH_ERROR,\n SET_AUTH_TOKEN,\n SET_MOBILENO,\n SET_PASWD,\n SIGNOUT_AUTH_SUCCESS,\n UPDATE_AUTH_USER,\n OTP_SIGNUP_ERROR,\n SIGNIN_ERROR,\n OTP_SUCCESS,\n OTP_ERROR,\n PATIENT_NAME_LIST,\n APPOINTMENT_UPCOMING_COUNT,\n} from '../../shared/constants/ActionTypes';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {\n fetchError,\n fetchStart,\n fetchSuccess,\n onWriteCloudWatchLog,\n} from './Common';\nimport {AuthType} from '../../shared/constants/AppEnums';\n//AWS cloud watch name\nvar streamname = 'Redux_Actions';\nvar filename = 'JWTAuth.js';\n\nexport const onJwtUserSignUp = ({email, password, name}) => {\n return async (dispatch) => {\n dispatch(fetchStart());\n const body = {email, name, password};\n try {\n const res = await jwtAxios.post('users', body);\n localStorage.setItem('token', res.data.token);\n dispatch(setJWTToken(res.data.token));\n dispatch(loadJWTUser());\n } catch (err) {\n console.log('error!!!!', err.response.data.error);\n dispatch(fetchError(err.response.data.error));\n }\n };\n};\nexport const onGetOtpfunction = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/getOtpPatient', value)\n .then((res) => {\n if (res.data.message.includes('Error')) {\n // alert(res.data.message.split(':')[1])\n // dispatch(fetchError(res.data.message.split(':')[1]));\n dispatch({\n type: OTP_SIGNUP_ERROR,\n payload: res.data.message.split(':')[1],\n });\n }\n if (res.data.body === 'OTP SENT') {\n dispatch({\n type: OTP_SIGNUP_ERROR,\n payload: '',\n });\n dispatch({\n type: OTP_SUCCESS,\n payload: true,\n });\n }\n })\n .catch((error) => {\n dispatch({\n type: FETCH_ERROR,\n payload: 'Error',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetOtpfunction',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError('Error'));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetOtpfunction',\n '0',\n err,\n ),\n );\n }\n };\n};\n\nexport const onGetLoginOtpfunction = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/getLoginOtpPatient', value)\n .then((res) => {\n if (res.data.message.includes('Error')) {\n // alert(res.data.message.split(':')[1])\n // dispatch(fetchError(res.data.message.split(':')[1]));\n dispatch({\n type: OTP_SIGNUP_ERROR,\n payload: res.data.message.split(':')[1],\n });\n }\n if (res.data.body === 'OTP SENT') {\n dispatch({\n type: OTP_SIGNUP_ERROR,\n payload: '',\n });\n dispatch({\n type: OTP_SUCCESS,\n payload: true,\n });\n }\n })\n .catch((error) => {\n dispatch({\n type: FETCH_ERROR,\n payload: 'Error',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetLoginOtpfunction',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError('Error'));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetLoginOtpfunction',\n '0',\n err,\n ),\n );\n }\n };\n};\nexport const onJwtSignIn = ({mobileNbr, paswd}) => {\n return async (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {mobileNbr, paswd};\n try {\n await jwtAxios\n .post('v1/patMgmt/loginjwt', body)\n .then((res) => {\n if (res.data.hasOwnProperty.call(res.data, 'message')) {\n if (res.data.message.includes('Error')) {\n if (res.data.message.includes('2')) {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'Mobile No. or password is incorrect',\n });\n } else {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'This Mobile No. is not registered with us',\n });\n }\n }\n } else {\n localStorage.setItem('token', res.data.body.token);\n // localStorage.setItem('mobileNbr', mobileNbr);\n // localStorage.setItem('paswd', paswd);\n dispatch(setJWTToken(res.data.body.token));\n dispatch(setMobileNbr(mobileNbr));\n dispatch(setPaswd(paswd));\n var body = {mobileNbr, paswd, jwtToken: res.data.body.token};\n dispatch(loadJWTUser(body));\n }\n })\n .catch((error) => {\n dispatch({\n type: FETCH_ERROR,\n payload: error.response.data.message.split(':')[1].trim(),\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onJwtSignIn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response);\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onJwtSignIn', '0', err),\n );\n }\n };\n};\n\nexport const loadJWTUser = (body) => {\n return async (dispatch) => {\n dispatch(fetchStart());\n try {\n dispatch(fetchSuccess());\n await jwtAxios\n .post('v1/patMgmt/login', body)\n .then((res) => {\n if (res.status === 200) {\n var response = res?.data?.body?.uom && res.data.body.uom[0];\n var totalcount =\n res?.data?.body?.totalcount && res.data.body.totalcount;\n localStorage.setItem('roleId', '1');\n localStorage.setItem('vialogin', 'otp');\n console.log(res?.data?.body?.totalcount, totalcount, 'lohi');\n dispatch({\n type: APPOINTMENT_UPCOMING_COUNT,\n payload: totalcount,\n });\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: {\n authType: AuthType.JWT_AUTH,\n displayName: response.patname,\n email: response.email,\n paswd: response.paswd,\n mobileNo: response.mobileNo,\n patientCode: response.patientCode,\n roleId: 1,\n role: 'Patient',\n token: '',\n appointmentCount: totalcount,\n },\n });\n } else {\n if (res.data.message.includes('Error')) {\n if (res.data.message.includes('1')) {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'Mobile No. or password is incorrect',\n });\n }\n if (res.data.message.includes('2')) {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'This Mobile No. is not registered with us',\n });\n }\n }\n }\n })\n .catch((error) => {\n // alert(error.response.data.message.split(':')[1].trim());\n dispatch({type: UPDATE_AUTH_USER, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'loadJWTUser',\n '0',\n error,\n ),\n );\n return;\n });\n } catch (err) {\n console.log('error!!!!', err.response.error);\n dispatch(fetchError(err.response.error));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'loadJWTUser', '0', err),\n );\n return;\n }\n };\n};\n\nexport const onGetForgotpaswdOtpfunction = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/getForgotPasswordOtpPatient', value)\n .then((res) => {\n if (res.hasOwnProperty.call(res.data, 'body')) {\n if (res.data.body === 'OTP SENT') {\n dispatch({\n type: OTP_ERROR,\n payload: '',\n });\n dispatch({\n type: OTP_SUCCESS,\n payload: true,\n });\n } else {\n dispatch({\n type: OTP_ERROR,\n payload: 'This Mobile No. is not registered with us',\n });\n }\n } else {\n dispatch({\n type: OTP_ERROR,\n payload: 'This Mobile No. is not registered with us',\n });\n }\n })\n .catch((error) => {\n dispatch({\n type: FETCH_ERROR,\n payload: error,\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetForgotpaswdOtpfunction',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetForgotpaswdOtpfunction',\n '0',\n err,\n ),\n );\n }\n };\n};\nexport const setJWTToken = (token) => {\n return async (dispatch) => {\n dispatch({\n type: SET_AUTH_TOKEN,\n payload: token,\n });\n };\n};\n\nexport const setMobileNbr = (number) => {\n return async (dispatch) => {\n dispatch({\n type: SET_MOBILENO,\n payload: number,\n });\n };\n};\n\nexport const setPaswd = (paswd) => {\n return async (dispatch) => {\n dispatch({\n type: SET_PASWD,\n payload: paswd,\n });\n };\n};\n\nexport const onJWTAuthSignout = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n setTimeout(() => {\n dispatch({type: SIGNOUT_AUTH_SUCCESS});\n dispatch({type: FETCH_SUCCESS});\n localStorage.removeItem('token');\n localStorage.removeItem('searchpatid');\n localStorage.clear();\n dispatch({\n type: PATIENT_NAME_LIST,\n payload: [],\n });\n }, 500);\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\nexport const onJwtSignInWithOTP = ({mobileNbr, otp}) => {\n return async (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {mobileNbr, otp};\n try {\n await jwtAxios\n .post('v1/patMgmt/loginwithOtpjwt', body)\n .then((res) => {\n if (res.data.hasOwnProperty.call(res.data, 'message')) {\n if (res.data.message.includes('Error')) {\n if (res.data.message.includes('1')) {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'Invalid OTP',\n });\n }\n if (res.data.message.includes('2')) {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'Your OTP is expired , Please try again!',\n });\n }\n }\n } else {\n localStorage.setItem('token', res.data.body.token);\n // localStorage.setItem('mobileNbr', mobileNbr);\n // localStorage.setItem('paswd', paswd);\n dispatch(setJWTToken(res.data.body.token));\n dispatch(setMobileNbr(mobileNbr));\n dispatch(setPaswd(''));\n var body = {mobileNbr, otp, jwtToken: res.data.body.token};\n dispatch(loadJWTOTPUser(body));\n }\n })\n .catch((error) => {\n dispatch({\n type: FETCH_ERROR,\n payload: error.response.data.message.split(':')[1].trim(),\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onJwtSignIn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response);\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onJwtSignIn', '0', err),\n );\n }\n };\n};\n\nexport const loadJWTOTPUser = (body) => {\n return async (dispatch) => {\n dispatch(fetchStart());\n try {\n dispatch(fetchSuccess());\n await jwtAxios\n .post('v1/patMgmt/loginwithOtp', body)\n .then((res) => {\n if (res.status === 200) {\n var response = res.data.body[0];\n localStorage.setItem('roleId', '1');\n localStorage.setItem('vialogin', 'otp');\n dispatch({\n type: OTP_SUCCESS,\n payload: false,\n });\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: {\n authType: AuthType.JWT_AUTH,\n displayName: response.patname,\n email: response.email,\n mobileNo: response.mobileNo,\n patientCode: response.patientCode,\n paswd: response.paswd,\n roleId: 1,\n role: 'Patient',\n token: '',\n },\n });\n } else {\n if (res.data.message.includes('Error')) {\n if (res.data.message.includes('1')) {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'Mobile No. or password is incorrect',\n });\n }\n if (res.data.message.includes('2')) {\n dispatch({\n type: SIGNIN_ERROR,\n payload: 'This Mobile No. is not registered with us',\n });\n }\n }\n }\n })\n .catch((error) => {\n // alert(error.response.data.message.split(':')[1].trim());\n dispatch({type: UPDATE_AUTH_USER, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'loadJWTUser',\n '0',\n error,\n ),\n );\n return;\n });\n } catch (err) {\n console.log('error!!!!', err.response.error);\n dispatch(fetchError(err.response.error));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'loadJWTUser', '0', err),\n );\n return;\n }\n };\n};\n","import {\n FETCH_ERROR,\n FETCH_START,\n FETCH_SUCCESS,\n UPDATE_AUTH_USER,\n} from '../../shared/constants/ActionTypes';\nimport Auth0Config from '../../@crema/services/auth/auth0/auth0Config';\nimport {AuthType} from '../../shared/constants/AppEnums';\nimport {setJWTToken} from './JWTAuth';\nimport {defaultUser} from '../../shared/constants/AppConst';\n\nexport const onSignInAuth0User = () => {\n return async (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n const auth0 = await Auth0Config();\n await auth0.loginWithPopup({});\n auth0\n .getUser()\n .then((user) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch(setJWTToken(user.sub));\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: getUserObject(user),\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nconst getUserObject = (user) => {\n return {\n authType: AuthType.AUTH0,\n role: defaultUser.role,\n uid: user.sub,\n displayName: user.name,\n email: user.email,\n photoURL: user.picture,\n token: user.sub,\n };\n};\n\nexport const onSignOutAuth0User = () => {\n return async (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n const auth0 = await Auth0Config();\n auth0.logout();\n dispatch({type: UPDATE_AUTH_USER, payload: null});\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n","/************\n * Developed by : Shiva Software Solutions\n * File Name : Dashboard.js\n * Date : 23-06-2021\n * Descriptions : Dashboard api calling\n ************/\n\nimport React from 'react';\nimport Api from '../../@crema/services/ApiConfig';\nimport {\n FETCH_ERROR,\n SHOW_MESSAGE,\n FETCH_START,\n FETCH_SUCCESS,\n GET_HC_DATA,\n DASHBOARD_PENDING_PATIENT_DATA,\n PATIENT_SUCCESS_MSG,\n ERX_SUCCESS_MSG,\n MEDICINE_SUCCESS_MSG,\n DELETE_MEDCINE_SUCCESS_MSG,\n DASHBOARD_ERX_DATA,\n GET_DOCTOR_EDITDATA,\n DASHBOARD_INSERT_PRESCRIPTION,\n DOCTOR_SUCCESS_MSG,\n DOCTOR_UPDATE_MSG,\n // REJECT_ERX_MSG,\n DASHBOARD_RX_DETAILS,\n DASHBOARD_ERX_DOC_OBSV,\n DASHBOARD_ERX_LAB_OBSV,\n DASHBOARD_ERX_PATIENT_VITAL,\n DASHBOARD_ERX_DOCPROCEDURE,\n DASHBOARD_ERX_MEDICINE_DETAIL,\n REJECT_ERX_SUCCESS_MSG,\n UNIT_DATA,\n SET_DOCTOR_ID_NAME,\n DOCTOR_SPECIALIZATION,\n DOCTOR_SUBSPECIALIZATION,\n DOCTOR_QUALIFICATION,\n DEPARTMENT_MASTER,\n STATE_MASTER,\n EXIST_COUNT,\n DOCTOR_SEARCH_ARRAY,\n DOCTOR_SEARCH_DATA,\n DASHBOARD_GRX_MEDICINE_DETAIL,\n ERX_OPERATOR_NOTES,\n resulttitle,\n CHANGE_MOBILENO_RES,\n bloodsugarList,\n ERX_IMG_ARR,\n ERX_IMG_OCR,\n REPORT_DETAILS,\n INVESTIGATION_CATEGORY_DATA,\n PATIENT_LISTS,\n TAG_CATEGORY_DATA,\n SEARCH_REPORTS_DATA,\n SEARCH_REPORTS_DATA_COUNT,\n ERX_HTML_DATA,\n ERX_HTML_NO_DATA,\n BUCKET_CAPTCHA,\n APPOINTMENT,\n APPOINTMENT_PATIENTS,\n INVESTIGATIONS_LIST,\n REPORT_PATIENT_LIST,\n REPORT_SUCCESS,\n REPORT_DELETE_SUCCESS,\n ONE_MG_DATA,\n OTP_TIME,\n} from '../../shared/constants/ActionTypes';\nimport IntlMessages from '../../@crema/utility/IntlMessages';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {fetchError, onWriteCloudWatchLog} from './Common';\n//AWS cloud watch name\nvar streamname = 'Redux_Actions';\nvar filename = 'Dashboard.js';\nconst crypto = require('crypto');\nvar algorithm = 'aes-256-ctr';\nvar password = 'd6F3Efeq';\nexport const onGetHCData = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Api.get('/dashboard/health_care')\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: GET_HC_DATA, payload: data.data});\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onGetHCData', '0', error),\n );\n });\n };\n};\n\n//Get dashboard Pending patient information\nexport const onGetPendingPatInfn = ({userId, patId, userCode, erxid}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {userId, patId, userCode, erxid};\n // console.log(body, 'patient info');\n //Call Patient data Token - Get Token\n try {\n jwtAxios\n .post('v1/patientDtls/getpatientjwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call Patient data - Get patient data using token\n try {\n const jwtToken = data.data.body['token'];\n const bodytoken = {userId, patId, userCode, erxid, jwtToken};\n jwtAxios\n .post('v1/patientDtls/getpatient', bodytoken)\n .then((data) => {\n // console.log(data,\"patient datas\")\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body[0];\n dispatch({\n type: DASHBOARD_PENDING_PATIENT_DATA,\n payload: getdata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Update Patient details\nexport const onUpdatePatientDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call Update Token - Get Token\n try {\n jwtAxios\n .post('v1/patientDtls/updatejwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patientDtls/update', value)\n .then((data) => {\n // console.log(data.data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: PATIENT_SUCCESS_MSG,\n payload: data.data.message,\n });\n dispatch({\n type: SHOW_MESSAGE,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdatePatientDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdatePatientDetails',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdatePatientDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdatePatientDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Update eRx details\nexport const onUpdateeRxDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call Update Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/updateeRxDtlsjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/pateRxMgmt/updateeRxDtls', value)\n .then((data) => {\n // console.log(data.data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: ERX_SUCCESS_MSG,\n payload: data.data.message,\n });\n dispatch({\n type: SHOW_MESSAGE,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateeRxDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateeRxDetails',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateeRxDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateeRxDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// send to Review\nexport const sendToReviews = (value) => {\n return (dispatch) => {\n //dispatch({type: FETCH_START});\n //Call SendToReview Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/sendToReviewjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/pateRxMgmt/sendtoReview', value)\n .then((data) => {\n // console.log(data.data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: ERX_SUCCESS_MSG,\n payload: data.data.message,\n });\n dispatch({\n type: SHOW_MESSAGE,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'sendToReviews',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'sendToReviews',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'sendToReviews',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'sendToReviews', '0', err),\n );\n }\n };\n};\n\n// Add eRx Medicine details\nexport const onAddMedicineDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call Update Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/insertMedicineData', value)\n .then((data) => {\n // console.log(data.data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: MEDICINE_SUCCESS_MSG,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onAddMedicineDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onAddMedicineDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Add eRx procedure details\nexport const onAddProcedureDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call Update Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/insertProcedureData', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n // dispatch({\n // type: MEDICINE_SUCCESS_MSG,\n // payload: data.data.message,\n // });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onAddProcedureDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onAddProcedureDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Delete eRx Medicine details\nexport const onDeleteMedicineDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call Update Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/deleteMedicineData', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: DELETE_MEDCINE_SUCCESS_MSG,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onDeleteMedicineDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onDeleteMedicineDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Delete eRx Procedure details\nexport const onDeleteProcedureDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call Update Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/deleteProcedureData', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n // dispatch({\n // type: DELETE_MEDCINE_SUCCESS_MSG,\n // payload: data.data.message,\n // });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onDeleteProcedureDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onDeleteProcedureDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Add Reject eRx Medicine details\nexport const onRejecteRx = (value) => {\n // const history = useHistory();\n return (dispatch) => {\n console.log(value, 'onRejected');\n dispatch({type: FETCH_START});\n\n //Call Update Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/rejecteRxjwt', value)\n .then((data) => {\n try {\n console.log(data.data, 'Rejectedtoken');\n value['jwtToken'] = data.data.body['token'];\n // const bodytoken = [\n // {userId: value['userId'], jwtToken: value['jwtToken'],\n // userCode: value['userCode']},\n // ];\n jwtAxios\n .post('v1/pateRxMgmt/rejecteRx', value)\n .then((data) => {\n console.log(data.data, 'Rejected');\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: REJECT_ERX_SUCCESS_MSG,\n payload: data.data.message,\n });\n dispatch({\n type: SHOW_MESSAGE,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onRejecteRx',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onRejecteRx',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onRejecteRx',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onRejecteRx', '0', err),\n );\n }\n };\n};\n\n// Get Unit data\nexport const onGetUnits = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/pateRxMgmt/getMargUomjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/pateRxMgmt/getMargUom', value)\n .then((data) => {\n // console.log(data.data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n var arraydata = data.data.body.map((e, i) => {\n return {\n title: e.unit,\n };\n });\n dispatch({\n type: UNIT_DATA,\n payload: arraydata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetUnits',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetUnits',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetUnits',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onGetUnits', '0', err),\n );\n }\n };\n};\n\n//Get dashboard Pending erx information\nexport const onGeteRxInfn = ({userId, erxReqId, userCode}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n let body = {userId, erxReqId, userCode};\n\n //Call Patient data Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/geteRxDtlsJwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call Patient data - Get patient data using token\n try {\n const jwtToken = data.data.body['token'];\n let bodytoken = {userId, erxReqId, jwtToken, userCode};\n // alert(erxReqId)\n jwtAxios\n .post('v1/pateRxMgmt/geteRxDtls', bodytoken)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body;\n dispatch({\n type: DASHBOARD_ERX_DATA,\n payload: getdata,\n });\n if (getdata) {\n if (getdata.erxImageOCR.length > 0) {\n var imgurl = [];\n var imgocr = [];\n for (var i = 0; i < getdata.erxImageOCR.length; i++) {\n //Push only images\n imgurl.push({url: getdata.erxImageOCR[i].erxUrl});\n //Push Image with ocr data and extension\n imgocr.push({\n url: getdata.erxImageOCR[i].erxUrl,\n ocrdata: getdata.erxImageOCR[i].ocrData,\n extension: getdata.erxImageOCR[i].urlExtension,\n rownumber: getdata.erxImageOCR[i].rownumber,\n });\n }\n\n dispatch({\n type: ERX_IMG_ARR,\n payload: imgurl,\n });\n dispatch({\n type: ERX_IMG_OCR,\n payload: imgocr,\n });\n }\n }\n dispatch({\n type: GET_DOCTOR_EDITDATA,\n payload: {},\n });\n // console.log(getdata,\"patient erx masgnasdbh\")\n if (getdata.rxdtls.length > 0) {\n dispatch({\n type: DASHBOARD_RX_DETAILS,\n payload: getdata.rxdtls[0],\n });\n dispatch({\n type: SET_DOCTOR_ID_NAME,\n payload: {\n DocID: getdata.rxdtls[0].doctorId,\n DocName: getdata.rxdtls[0].docName,\n RegisterNo: getdata.rxdtls[0].registerno,\n EmailId: getdata.rxdtls[0].email,\n },\n });\n }\n\n if (getdata.docobsv.length > 0) {\n dispatch({\n type: DASHBOARD_ERX_DOC_OBSV,\n payload: getdata.docobsv[0],\n });\n }\n if (getdata.labobsv.length > 0) {\n dispatch({\n type: DASHBOARD_ERX_LAB_OBSV,\n payload: getdata.labobsv[0],\n });\n }\n\n if (getdata.patientvital.length > 0) {\n dispatch({\n type: DASHBOARD_ERX_PATIENT_VITAL,\n payload: getdata.patientvital[0],\n });\n }\n\n if (getdata.docprocedure.length > 0) {\n dispatch({\n type: DASHBOARD_ERX_DOCPROCEDURE,\n payload: getdata.docprocedure,\n });\n }\n\n if (getdata.medicinedtls.length > 0) {\n var arraydata = getdata.medicinedtls.map((e, i) => {\n return {\n saltName: e.saltName,\n medName: e.medName,\n mn: e.mn,\n af: e.an,\n en: e.en,\n nt: e.nt,\n unit: e.uomId,\n unitcode: e.uomId,\n quantity: e.dosage,\n refferal: e.referral,\n route: e.route,\n advice: e.advice,\n duration: e.duration,\n frequency: e.frequency,\n seqno: e.txnNo,\n };\n });\n dispatch({\n type: DASHBOARD_ERX_MEDICINE_DETAIL,\n payload: arraydata,\n });\n }\n\n if (getdata.genericmedicinedtls.length > 0) {\n var arraydatageneric = getdata.genericmedicinedtls.map(\n (e, i) => {\n return {\n saltName: e.saltName,\n medName: e.medName,\n mn: e.mn,\n af: e.an,\n en: e.en,\n nt: e.nt,\n unit: e.uomId,\n unitcode: e.uomId,\n quantity: e.dosage,\n refferal: e.referral,\n route: e.route,\n advice: e.advice,\n duration: e.duration,\n durationValue: e.durationValue,\n frequency: e.frequency,\n seqno: e.txnNo,\n price: e.price,\n status: e.status,\n mCode: e.mCode,\n company: e.company,\n category: e.category,\n dosage: e.dosage,\n qty: e.qty,\n strength1: e.strength1,\n strength2: e.strength2,\n type: e.type,\n strength: e.strength,\n margqty: e.margqty,\n };\n },\n );\n dispatch({\n type: DASHBOARD_GRX_MEDICINE_DETAIL,\n payload: arraydatageneric,\n });\n }\n if (getdata.rxdtls.length > 0) {\n var patientId = getdata.rxdtls[0].patientId;\n\n if (\n getdata.rxdtls[0].doctorId !== '' &&\n getdata.rxdtls[0].doctorId !== '0' &&\n getdata.rxdtls[0].doctorId !== null &&\n getdata.rxdtls[0].doctorId !== undefined\n ) {\n dispatch(\n onGetDoctorInfo({\n userId: body.userId,\n erxId: body.erxReqId,\n userCode: body.userCode,\n }),\n );\n }\n dispatch(\n onGetPendingPatInfn({\n userId: body.userId,\n patId: patientId,\n userCode: body.userCode,\n erxid: body.erxReqId,\n }),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxInfn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxInfn',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxInfn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onGeteRxInfn', '0', err),\n );\n }\n };\n};\n\n//specialization and doctor specialization event\nexport const onGetSpecialization = (body) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n var value = body;\n jwtAxios\n .post('v1/doctorDtls/specializationjwt', body)\n .then((data) => {\n try {\n body['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/doctorDtls/specialization', body)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: DOCTOR_SPECIALIZATION,\n payload: data.data.body.specialization,\n });\n dispatch({\n type: DOCTOR_SUBSPECIALIZATION,\n payload: data.data.body.subspecialization,\n });\n jwtAxios\n .post('v1/pateRxMgmt/mastersjwt', value)\n .then((data) => {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/pateRxMgmt/masters', value)\n .then((data) => {\n dispatch({\n type: DEPARTMENT_MASTER,\n payload: data.data.body.deptList,\n });\n // console.log(data, 'master datas');\n dispatch({\n type: DOCTOR_QUALIFICATION,\n payload: data.data.body.quaList,\n });\n dispatch({\n type: STATE_MASTER,\n payload: data.data.body.stateList,\n });\n dispatch({\n type: resulttitle,\n payload: data.data.body.resulttitle,\n });\n dispatch({\n type: bloodsugarList,\n payload: data.data.body.bloodsugarList,\n });\n dispatch({\n type: APPOINTMENT,\n payload: data.data.body.appointment,\n });\n dispatch({\n type: APPOINTMENT_PATIENTS,\n payload: data.data.body.appointmentPatients,\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSpecialization',\n '0',\n error,\n ),\n );\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSpecialization',\n '0',\n error,\n ),\n );\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSpecialization',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxInfn',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSpecialization',\n '0',\n error,\n ),\n );\n });\n\n //Call User list Token - Get Token\n try {\n // console.log(value, 'edit apidVSD');\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n// doctor tab seacrh doctor using mobile No/register\nexport const onGetSearchArray = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n // console.log(value, 'dcoitor input');\n // get jwt token based on input\n jwtAxios\n .post('v1/doctorDtls/searchDoctorRegisterJwt', value)\n .then((data) => {\n try {\n // console.log(data,\"doctor edit load data jwt\");\n value['jwtToken'] = data.data.body['token'];\n // get the data\n jwtAxios\n .post('v1/doctorDtls/searchDoctorRegister', value)\n .then((data) => {\n console.log(data.data.body, 'doctor search result');\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: DOCTOR_SEARCH_ARRAY,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchArray',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchArray',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchArray',\n '0',\n error,\n ),\n );\n });\n\n //Call User list Token - Get Token\n try {\n // console.log(value, 'edit apidVSD');\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n//search match doctor detail,s\n\n// doctor tab seacrh doctor using mobile No/register\nexport const onGetSearchDoctor = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n // console.log(value, 'dcoitor input');\n // get jwt token based on input\n jwtAxios\n .post('v1/doctorDtls/searchDoctorJwt', value)\n .then((data) => {\n try {\n console.log(data, 'doctor edit load data jwt');\n value['jwtToken'] = data.data.body['token'];\n // get the data\n jwtAxios\n .post('v1/doctorDtls/searchDoctor', value)\n .then((data) => {\n console.log(data.data, 'doctor search result');\n\n // if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: DOCTOR_SEARCH_DATA,\n payload: data.data.body,\n });\n\n // } else {\n // console.log(\"enter 4 adnsaf\")\n // dispatch({\n // type: FETCH_ERROR,\n // payload: ,\n // });\n // }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchDoctor',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchDoctor',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchDoctor',\n '0',\n error,\n ),\n );\n });\n\n //Call User list Token - Get Token\n try {\n // console.log(value, 'edit apidVSD');\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n// doctor tab edit load event\nexport const onGetDoctorInfo = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n // console.log(value, 'dcoitor input');\n // get jwt token based on input\n jwtAxios\n .post('v1/doctorDtls/getDoctorJwt', value)\n .then((data) => {\n try {\n // console.log(data,\"doctor edit load data jwt\");\n value['jwtToken'] = data.data.body['token'];\n // get the data\n jwtAxios\n .post('v1/doctorDtls/getDoctor', value)\n .then((data) => {\n // console.log(data, 'doctor result');\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: GET_DOCTOR_EDITDATA,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetDoctorInfo',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetDoctorInfo',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetDoctorInfo',\n '0',\n error,\n ),\n );\n });\n\n //Call User list Token - Get Token\n try {\n // console.log(value, 'edit apidVSD');\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n// save doctor api\nexport const saveDoctorDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n\n //Call User list Token - Get Token\n try {\n jwtAxios\n .post('v1/doctorDtls/createjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n\n jwtAxios\n .post('v1/doctorDtls/create', value)\n .then((data) => {\n dispatch({\n type: SET_DOCTOR_ID_NAME,\n payload: {\n DocID: data.data.body.doctorId,\n DocName: data.data.body.doctorName,\n RegisterNo: data.data.body.registerNo,\n EmailId: data.data.body.email,\n },\n });\n localStorage.setItem('DocID', data.data.body.ddoctorId);\n localStorage.setItem('DocName', data.data.body.doctorName);\n dispatch({\n type: GET_DOCTOR_EDITDATA,\n payload: {},\n });\n dispatch({\n type: DOCTOR_SUCCESS_MSG,\n payload: data.data.message,\n });\n dispatch({\n type: SHOW_MESSAGE,\n payload: 'Doctor saved successfully',\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'saveDoctorDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'saveDoctorDetails',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'saveDoctorDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'saveDoctorDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// update doctor api\nexport const updateDoctorDetails = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n\n //Call User list Token - Get Token\n try {\n jwtAxios\n .post('v1/doctorDtls/updatejwt', value)\n .then((data) => {\n // console.log(data);\n try {\n value['jwtToken'] = data.data.body['token'];\n // console.log(value);\n jwtAxios\n .post('v1/doctorDtls/update', value)\n .then((data) => {\n // console.log(data.data);\n dispatch({\n type: GET_DOCTOR_EDITDATA,\n payload: {},\n });\n dispatch({\n type: DOCTOR_UPDATE_MSG,\n payload: data.data.message,\n });\n dispatch({\n type: SHOW_MESSAGE,\n payload: data.data.message,\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'updateDoctorDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'updateDoctorDetails',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'updateDoctorDetails',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'updateDoctorDetails',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n//Insert and Update prescription detaails\nexport const onInsertPrescriptionDetails = ({userId, erxReqId, userCode}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {userId, erxReqId, userCode};\n //Call insert data\n try {\n jwtAxios\n .post('v1/pateRxMgmt/insertAssignData', body)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body;\n dispatch({\n type: DASHBOARD_INSERT_PRESCRIPTION,\n payload: getdata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onInsertPrescriptionDetails',\n userCode,\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onInsertPrescriptionDetails',\n userCode,\n err,\n ),\n );\n }\n };\n};\n\n//Check if already exists\nexport const onCheckAlreadyTakeneRx = ({userId, erxId, userCode}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {userId, erxId, userCode};\n //Call alreadytaken erx data\n try {\n jwtAxios\n .post('v1/pateRxMgmt/checkAlreadytakeneRx', body)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body;\n dispatch({\n type: EXIST_COUNT,\n payload: getdata,\n });\n dispatch({\n type: FETCH_ERROR,\n payload: 'This erx already taken',\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onCheckAlreadyTakeneRx',\n userCode,\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onCheckAlreadyTakeneRx',\n userCode,\n err,\n ),\n );\n }\n };\n};\n\n//get erxNotes\nexport const onGeteRxNotes = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/pateRxMgmt/getOperatorNotesjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/pateRxMgmt/getOperatorNotes', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body;\n dispatch({\n type: ERX_OPERATOR_NOTES,\n payload: getdata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxNotes',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxNotes',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxNotes',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onGeteRxNotes', '0', err),\n );\n }\n };\n};\n\n//Get dashboard Pending patient information\nexport const onChangeMobileNo = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call Patient data Token - Get Token\n try {\n jwtAxios\n .post('v1/patMgmt/changePatMobileNojwt', value)\n .then((data) => {\n if (data.status === 200) {\n //Call Patient data - Get patient data using token\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/changePatMobileNo', value)\n .then((data) => {\n // console.log(data,\"patient datas\")\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.message;\n dispatch({\n type: CHANGE_MOBILENO_RES,\n payload: getdata,\n });\n } else {\n dispatch({\n type: CHANGE_MOBILENO_RES,\n payload: data.data.message,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPendingPatInfn',\n '0',\n err,\n ),\n );\n }\n };\n};\n\nexport const onGeteRxReports = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/reportDtls/getReportDetailsjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/reportDtls/getReportDetails', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n var reports = data.data.body.map(function (e) {\n var reportdata =\n e.reportTagId !== null &&\n e.reportTagId !== undefined &&\n e.reportTagId !== 0\n ? {uid: e.reportTagId, category: e.reportCategory}\n : {};\n e.reportTagId =\n e.reportTagId !== null && e.reportTagId !== undefined\n ? e.reportTagId\n : 0;\n return {...e, reportTag: reportdata};\n });\n\n dispatch({\n type: REPORT_DETAILS,\n payload: reports,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxReports',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxReports',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGeteRxReports',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onGeteRxReports', '0', err),\n );\n }\n };\n};\n\n// Get InvestigationCategory data\nexport const onGetInvestigationCategory = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/reportDtls/searchInvestigationCaetgoryjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/reportDtls/searchInvestigationCaetgory', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n var alldata = [{uid: 0, category: 'All'}];\n var arraydata = [...alldata, ...data.data.body];\n dispatch({\n type: INVESTIGATION_CATEGORY_DATA,\n payload: data.data.body,\n });\n dispatch({\n type: TAG_CATEGORY_DATA,\n payload: arraydata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigationCategory',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigationCategory',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigationCategory',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigationCategory',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Get InvestigationCategory data\nexport const onGetPatientList = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/reportDtls/onGetPatientListjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/reportDtls/onGetPatientList', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: PATIENT_LISTS,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientList',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientList',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientList',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientList',\n '0',\n err,\n ),\n );\n }\n };\n};\n\nexport const onGetSearchPatientReports = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/reportDtls/getSearchPatientReportsjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/reportDtls/getSearchPatientReports', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: SEARCH_REPORTS_DATA,\n payload: data.data.body.reportData,\n });\n dispatch({\n type: SEARCH_REPORTS_DATA_COUNT,\n payload: data.data.body.reportCount,\n });\n // dispatch({\n // type: TAG_CATEGORY_DATA,\n // payload: data.data.body.report_list,\n // });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchPatientReports',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchPatientReports',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchPatientReports',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetSearchPatientReports',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n//Generate patient erx details\nexport const GenerateeRxHTML = (body) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call generate html for erx\n try {\n jwtAxios\n .post('v1/pateRxMgmt/generateHTML', body)\n .then((data) => {\n if (data && data.status && data.status === 200) {\n if (data.data.body) {\n dispatch({\n type: ERX_HTML_DATA,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: ERX_HTML_NO_DATA,\n payload: 'No record found',\n });\n }\n }\n })\n .catch((error) => {\n dispatch({\n type: ERX_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GenerateeRxHTML',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch({\n type: ERX_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'GenerateeRxHTML', '0', err),\n );\n }\n };\n};\n\n// Get ongetbucketandcaptcha data\nexport const ongetbucketandcaptcha = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n // console.log(\"reachsnfjsdn\")\n jwtAxios\n .post('v1/pateRxMgmt/ongetbucketandcaptcha')\n .then((data) => {\n if (data.data.status === 200) {\n // console.log(data.data.body)\n // dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: BUCKET_CAPTCHA,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'ongetbucketandcaptcha',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'ongetbucketandcaptcha',\n '0',\n err,\n ),\n );\n }\n };\n};\n//Decrypt password\nconst decryptpassword = function ({data}) {\n var decipher = crypto.createDecipher(algorithm, password);\n var dec = decipher.update(data, 'hex', 'utf8');\n dec += decipher.final('utf8');\n return dec;\n};\n\n// Get ongetbucketandcaptcha data\nexport const ongetEncryptbucketcaptcha = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/pateRxMgmt/getUploadPresCredentialsJwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/pateRxMgmt/getUploadPresCredentials', value)\n .then((data) => {\n if (data.data.status === 200) {\n let data1 = data.data.body;\n let res = {\n type: decryptpassword({data: data1?.type}),\n accessKey: decryptpassword({data: data1?.accessKey}),\n secretAccessKey: decryptpassword({\n data: data1?.secretAccessKey,\n }),\n bucketName: decryptpassword({data: data1?.bucketName}),\n region: decryptpassword({data: data1?.region}),\n filePath: decryptpassword({data: data1?.filePath}),\n captchaKey: decryptpassword({data: data1?.captchaKey}),\n };\n dispatch({\n type: BUCKET_CAPTCHA,\n payload: res,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'ongetbucketandcaptcha',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'ongetbucketandcaptcha',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Get Investigations\nexport const onGetInvestigations = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/searchInvestigationAndPatientjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/searchInvestigationAndPatient', value)\n .then((data) => {\n if (data.data.status === 200) {\n if (data.data.body?.inves_lists?.length > 0) {\n var arraydata = data.data.body.inves_lists?.map((e, i) => {\n return {\n title: e.description,\n id: e.investigationid,\n hindi_title: '',\n category: '',\n hindi_category: '',\n };\n });\n dispatch({\n type: INVESTIGATIONS_LIST,\n payload: arraydata,\n });\n } else {\n dispatch({\n type: INVESTIGATIONS_LIST,\n payload: [],\n });\n }\n if (data.data.body?.patientNameLists?.length > 0) {\n dispatch({\n type: REPORT_PATIENT_LIST,\n payload: data.data.body.patientNameLists,\n });\n } else {\n dispatch({\n type: REPORT_PATIENT_LIST,\n payload: [],\n });\n }\n } else {\n dispatch({\n type: INVESTIGATIONS_LIST,\n payload: [],\n });\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Insert and Upload Upload Reports\nexport const onInsertUploadReports = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/insertUploadReportsjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/insertUploadReports', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({\n type: REPORT_SUCCESS,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: REPORT_SUCCESS,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetInvestigations',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Insert and Upload Upload Reports\nexport const onUpdateAndDeleteUploadReports = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/updateandDeleteReportsJwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/updateandDeleteReports', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({\n type: REPORT_DELETE_SUCCESS,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: REPORT_DELETE_SUCCESS,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateAndDeleteUploadReports',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateAndDeleteUploadReports',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateAndDeleteUploadReports',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onUpdateAndDeleteUploadReports',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Get getReportTypes data\nexport const onGetReportTypes = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/reportDtls/getReportTypesJwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/reportDtls/getReportTypes', value)\n .then((data) => {\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n console.log(data.data.body.report_list);\n var alldata = [{uid: 0, category: 'All'}];\n var arraydata = [...alldata, ...data.data.body.report_list];\n dispatch({\n type: INVESTIGATION_CATEGORY_DATA,\n payload: data.data.body.report_list,\n });\n dispatch({\n type: TAG_CATEGORY_DATA,\n payload: arraydata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetReportTypes',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetReportTypes',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetReportTypes',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetReportTypes',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Get oneMG URL\nexport const onGetOneMGURL = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/pateRxMgmt/oneMgGenerateHashJwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/pateRxMgmt/oneMgGenerateHash', value)\n .then((data) => {\n console.log(data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: ONE_MG_DATA,\n payload: data.data,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetOneMGURL',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetOneMGURL',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetOneMGURL',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onGetOneMGURL', '0', err),\n );\n }\n };\n};\n\nexport const onGetTime = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios.get('v1/pateRxMgmt/getpatientotpvalidy').then((data) => {\n if (data.status == 200) {\n dispatch({\n type: OTP_TIME,\n payload: data.data.body.description,\n });\n }\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onGetTime', '0', err),\n );\n }\n };\n};\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 22-06-2021\n * Descriptions : User Mangament api calling\n ************/\nimport {\n FETCH_ERROR,\n SHOW_MESSAGE,\n FETCH_START,\n FETCH_SUCCESS,\n GET_USERMANAGE_DATA,\n DELETE_USER_DATA,\n GET_GUDMEDSUCCESS_DATA,\n GET_GUDMED_USER,\n RESET_USER_PASWD \n} from '../../shared/constants/ActionTypes';\nimport IntlMessages from '../../@crema/utility/IntlMessages';\nimport React from 'react';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {fetchError} from './Common';\n//Get User list data\nexport const onGetUserManagementData = ({userId, skip, limit}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {userId, skip, limit};\n //Call User list Token - Get Token\n try {\n jwtAxios\n .post('v1/userMgmt/getusersjwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call User list data - Get user list data using token\n try {\n const jwtToken = data.data.body['token'];\n const bodytoken = {userId, jwtToken};\n jwtAxios\n .post('v1/userMgmt/getusers', bodytoken)\n .then((data) => {\n // console.log(data.data);\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n var arraydata = data.data.body.data.map((e, i) => {\n return {\n fName: e.fName,\n lName: e.lName,\n userId: e.userId,\n email: e.email,\n roleName: e.roleName,\n mobileNbr: e.mobileNbr,\n status: e.status,\n statusName: e.statusName,\n };\n });\n dispatch({\n type: GET_USERMANAGE_DATA,\n payload: arraydata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n// Delete user data\nexport const onDeleteUser = ({email, userId, loginuserid, loginUserCode}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {email, userId, loginUserCode};\n\n //Call Delete user - get Token\n try {\n jwtAxios\n .post('v1/userMgmt/deleteUserjwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call Delete user data - Delete userdata using token\n try {\n const jwtToken = data.data.body['token'];\n const bodytoken = {userId, loginUserCode, jwtToken};\n jwtAxios\n .post('v1/userMgmt/deleteUser', bodytoken)\n .then((data) => {\n // console.log(data.data);\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getuserdata = data.data.message;\n dispatch({\n type: DELETE_USER_DATA,\n payload: getuserdata,\n });\n dispatch(\n onGetUserManagementData({\n userId: loginuserid,\n skip: '0',\n limit: '10',\n }),\n );\n dispatch({\n type: SHOW_MESSAGE,\n payload: getuserdata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n// Reset User Password\nexport const onresetPassword = ({\n oldpaswd,\n newpaswd,\n mobileNbr,\n patientCode,viasetpaswd,\n}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {oldpaswd, newpaswd, mobileNbr, patientCode,viasetpaswd};\n //Call Reset User Password - get Token\n try {\n jwtAxios\n .post('v1/patMgmt/changepaswdjwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call Reset User Password - Reset User Password using token\n try {\n if (data.data.hasOwnProperty.call(data.data, 'message')) {\n // dispatch({type: FETCH_ERROR, payload: data.data.message});\n dispatch({\n type: RESET_USER_PASWD,\n payload: 'incorrect',\n });\n return;\n } else {\n const jwtToken = data.data.body['token'];\n const bodytoken = {\n oldpaswd,\n newpaswd,\n mobileNbr,\n patientCode,\n jwtToken,\n viasetpaswd,\n };\n jwtAxios\n .post('v1/patMgmt/changepaswd', bodytoken)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getuserdata = data.data.message;\n dispatch({\n type: RESET_USER_PASWD,\n payload: 'true',\n });\n dispatch({\n type: SHOW_MESSAGE,\n payload: getuserdata,\n });\n\n // dispatch({\n // type: UPDATE_AUTH_USER,\n // payload: { \n // paswd:newpaswd, \n // },\n // });\n } else {\n dispatch({\n type: RESET_USER_PASWD,\n payload: 'incorrect',\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n }\n } catch (err) {\n dispatch(fetchError(err.message));\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n// save user api\nexport const onSaveGudMedUser = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n\n //Call User list Token - Get Token\n try {\n jwtAxios\n .post('v1/userMgmt/createjwt', value)\n .then((data) => {\n // console.log(data);\n try {\n // const jwtToken = data.data.body['token'];\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/userMgmt/create', value)\n .then((data) => {\n // console.log(data.data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: GET_GUDMEDSUCCESS_DATA,\n payload: data.data.message,\n });\n dispatch(\n onGetUserManagementData({\n userId: value.userId,\n skip: '0',\n limit: '10',\n }),\n );\n dispatch({\n type: SHOW_MESSAGE,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n// edit load event\nexport const onGeteditloadGudmed = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n\n jwtAxios\n .post('v1/userMgmt/getuserJwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/userMgmt/getuser', value)\n .then((data) => {\n // console.log(data.data, 'edit load data');\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: GET_GUDMED_USER,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n\n //Call User list Token - Get Token\n try {\n // console.log(value, 'edit apidVSD');\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n\n// update api\nexport const onUpdateGudMedUser = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n\n //Call User list Token - Get Token\n try {\n // console.log('call saving', value);\n jwtAxios\n .post('v1/userMgmt/updatejwt', value)\n .then((data) => {\n // console.log(data);\n try {\n // const jwtToken = data.data.body['token'];\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/userMgmt/update', value)\n .then((data) => {\n // console.log(data.data);\n if (data.data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n\n dispatch({\n type: GET_GUDMEDSUCCESS_DATA,\n payload: data.data.message,\n });\n dispatch({\n type: GET_GUDMED_USER,\n payload: {},\n });\n dispatch(\n onGetUserManagementData({\n userId: value.userId,\n skip: '0',\n limit: '10',\n }),\n );\n dispatch({\n type: SHOW_MESSAGE,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (err) {\n // console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n }\n };\n};\n","import {\n auth,\n facebookAuthProvider,\n githubAuthProvider,\n googleAuthProvider,\n twitterAuthProvider,\n} from '../../@crema/services/auth/firebase/firebase';\nimport {\n FETCH_ERROR,\n FETCH_START,\n FETCH_SUCCESS,\n UPDATE_AUTH_USER,\n} from '../../shared/constants/ActionTypes';\nimport {AuthType} from '../../shared/constants/AppEnums';\nimport {defaultUser} from '../../shared/constants/AppConst';\n\nexport const onSignUpFirebaseUser = ({email, password}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .createUserWithEmailAndPassword(email, password)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: UPDATE_AUTH_USER, payload: getUserObject(data)});\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nexport const onForgetPasswordFirebaseUser = (email) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .sendPasswordResetEmail(email)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n // dispatch({type: UPDATE_AUTH_USER, payload: data});\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nexport const onGetFirebaseSignInUser = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .onAuthStateChanged()\n .then((authUser) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: getUserObject(authUser),\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nconst getUserObject = (authUser) => {\n return {\n authType: AuthType.FIREBASE,\n role: defaultUser.role,\n uid: authUser.uid,\n displayName: authUser.displayName,\n email: authUser.email,\n photoURL: authUser.photoURL,\n token: authUser.refreshToken,\n };\n};\nexport const onSignInFirebaseUser = (email, password) => {\n return (dispatch) => {\n try {\n dispatch({type: FETCH_START});\n auth\n .signInWithEmailAndPassword(email, password)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: getUserObject(data),\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nexport const onSignOutFirebaseUser = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .signOut()\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: UPDATE_AUTH_USER, payload: null});\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nexport const signInUserWithGoogle = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .signInWithPopup(googleAuthProvider)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: UPDATE_AUTH_USER, payload: getUserObject(data.user)});\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\nexport const signInUserWithGithub = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .signInWithPopup(githubAuthProvider)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: UPDATE_AUTH_USER, payload: getUserObject(data.user)});\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nexport const signInUserWithFacebook = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .signInWithPopup(facebookAuthProvider)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: UPDATE_AUTH_USER, payload: getUserObject(data.user)});\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n\nexport const signInUserWithTwitter = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n auth\n .signInWithPopup(twitterAuthProvider)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: UPDATE_AUTH_USER, payload: getUserObject(data.user)});\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n } catch (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n }\n };\n};\n","import {\n FETCH_ERROR,\n FETCH_START,\n FETCH_SUCCESS,\n SHOW_MESSAGE,\n UPDATE_AUTH_USER,\n} from '../../shared/constants/ActionTypes';\nimport {Auth} from 'aws-amplify';\nimport {AuthType} from '../../shared/constants/AppEnums';\nimport {defaultUser} from '../../shared/constants/AppConst';\n\nexport const onConfirmCognitoUserSignup = (username, confirmCode, history) => {\n const code = confirmCode ? confirmCode : '000000';\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.confirmSignUp(username, code, {\n forceAliasCreation: false,\n })\n .then((data) => {\n if (data) {\n if (history) {\n history.replace('/signin');\n }\n dispatch({\n type: SHOW_MESSAGE,\n payload:\n 'Congratulations, Signup process is complete, You can now Sign in by entering correct credentials!',\n });\n } else {\n dispatch({type: FETCH_ERROR, payload: data.error});\n }\n })\n .catch(function (error) {\n switch (error.code) {\n case 'UserNotFoundException': {\n return dispatch({type: FETCH_ERROR});\n }\n case 'NotAuthorizedException': {\n return dispatch({\n type: FETCH_ERROR,\n payload: 'The entered Email address is already registered!',\n });\n }\n case 'AliasExistsException': {\n return dispatch({\n type: FETCH_ERROR,\n payload: 'The entered Email address is already registered!',\n });\n }\n case 'UsernameExistsException': {\n dispatch({\n type: FETCH_ERROR,\n payload:\n 'you have already started Signup Process, please enter security code to complete the process!',\n });\n return history.push('/confirm-signup', {email: username});\n }\n case 'CodeMismatchException': {\n if (code === '000000') {\n dispatch({\n type: FETCH_ERROR,\n payload:\n 'you have already started Signup Process, please enter security code to complete the process!',\n });\n return history.push('/confirm-signup', {email: username});\n }\n return dispatch({type: FETCH_ERROR, payload: error.message});\n }\n case 'ExpiredCodeException': {\n dispatch({\n type: FETCH_ERROR,\n payload: 'The Code you entered is expired, please signup again!',\n });\n return history.push('/signup');\n }\n default:\n return false;\n }\n });\n };\n};\n\nexport const onSignUpCognitoUser = ({email, password, name}, history) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.signUp({\n username: email,\n password,\n attributes: {\n name,\n },\n })\n .then((data) => {\n if (data) {\n if (history) {\n history.push('/confirm-signup', {email: email});\n dispatch({\n type: SHOW_MESSAGE,\n payload:\n 'A code has been sent to your registered email address, Enter the code to complete the signup process!',\n });\n }\n }\n })\n .catch(function (error) {\n if (error.code === 'UsernameExistsException') {\n dispatch({\n type: FETCH_ERROR,\n payload:\n 'you have already started Signup Process, please enter security code to complete the process!',\n });\n return history.push('/confirm-signup', {email: email});\n }\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n };\n};\n\nexport const onSignInCognitoUser = ({email, password}, history) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.signIn(email, password)\n .then((user) => {\n if (user.challengeName === 'NEW_PASSWORD_REQUIRED') {\n dispatch({type: UPDATE_AUTH_USER, payload: getUserObject(user)});\n history.push('/force-change-password', {email});\n dispatch({type: FETCH_SUCCESS});\n } else {\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: getUserObject(user),\n });\n dispatch({type: FETCH_SUCCESS});\n }\n })\n .catch(function (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n };\n};\n\nconst getUserObject = (user) => {\n return {\n authType: AuthType.AWS_COGNITO,\n role: defaultUser.role,\n uid: user.username,\n displayName: user.attributes.name,\n email: user.attributes.email,\n photoURL: user.photoURL,\n token: user.signInUserSession.accessToken.jwtToken,\n };\n};\n\nexport const onChangePasswordFirstTime = ({email, password}, user) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.completeNewPassword(user, password, {email: email})\n .then((user) => {\n localStorage.setItem(\n 'token',\n user.signInUserSession.accessToken.jwtToken,\n );\n localStorage.setItem('user', JSON.stringify(user));\n // dispatch({type: USER_TOKEN_SET, payload: user.signInUserSession.accessToken.jwtToken});\n dispatch({type: UPDATE_AUTH_USER, payload: getUserObject(user)});\n dispatch({type: FETCH_SUCCESS});\n })\n .catch(function (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n };\n};\n\nexport const onResetCognitoPassword = (email, history) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.forgotPassword(email)\n .then((data) => {\n if (data) {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: SHOW_MESSAGE,\n payload: `A code has been sent to registered email address ${data.CodeDeliveryDetails.Destination}`,\n });\n history.push('/reset-password', {email: email});\n } else {\n dispatch({type: FETCH_ERROR, payload: data.error});\n }\n })\n .catch(function (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n };\n};\n\nexport const onSetNewCognitoPassword = (email, code, new_password, history) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.forgotPasswordSubmit(email, code, new_password)\n .then((data) => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: SHOW_MESSAGE,\n payload: 'The new Password has been successfully set',\n });\n history.push('/signin');\n })\n .catch(function (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n };\n};\n\nexport const onCognitoUserSignOut = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.signOut().then(() => {\n dispatch({type: FETCH_SUCCESS});\n dispatch({type: UPDATE_AUTH_USER, payload: null});\n });\n };\n};\n\nexport const onGetLoggedInCognitoUser = () => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n Auth.currentAuthenticatedUser()\n .then((user) => {\n if (user) {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: UPDATE_AUTH_USER,\n payload: getUserObject(user),\n });\n } else {\n dispatch({type: FETCH_ERROR, payload: user.error});\n }\n })\n .catch(function (error) {\n dispatch({type: FETCH_ERROR, payload: error.message});\n });\n };\n};\n","import {\n SET_INITIAL_PATH,\n TOGGLE_NAV_COLLAPSED,\n} from '../../shared/constants/ActionTypes';\n\nexport const toggleNavCollapsed = () => {\n return (dispatch) => dispatch({type: TOGGLE_NAV_COLLAPSED});\n};\n\nexport const setInitialPath = (initialPath) => {\n return (dispatch) => dispatch({type: SET_INITIAL_PATH, payload: initialPath});\n};\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 23-06-2021\n * Descriptions : Dashboard api calling\n ************/\n\nimport React from 'react';\nimport {\n FETCH_ERROR,\n FETCH_START,\n PATIENT_COMPLETED_DATA,\n PATIENT_COMPLETED_COUNT,\n FORGOT_PASWD_SUCCESS,\n FORGOT_PASWD_ERROR,\n FETCH_SUCCESS,\n PATIENT_NAME_LIST,\n ERX_IMG_ARR,\n ERX_IMG_OCR,\n ERX_DATA_HTML,\n ERX_DATA_HTML_NO_DATA,\n PATIENT_APPOINTMENT_LIST,\n PATIENT_APPOINTMENT_COUNT,\n} from '../../shared/constants/ActionTypes';\nimport IntlMessages from '../../@crema/utility/IntlMessages';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {fetchError, onWriteCloudWatchLog} from './Common';\n//AWS cloud watch name\nvar streamname = 'Redux_Actions';\nvar filename = 'Patient.js';\n\n//Get Patient completed List data\nexport const onGetPatientCompletedList = ({\n mobileNbr,\n patId,\n limit,\n offset,\n}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {\n mobileNbr,\n patId,\n limit,\n offset,\n };\n try {\n jwtAxios\n .post('v1/patMgmt/patientCompletedListjwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call pending list data - Get pending list data using token\n try {\n const jwtToken = data.data.body['token'];\n const bodytoken = {\n mobileNbr,\n patId,\n limit,\n offset,\n jwtToken,\n };\n jwtAxios\n .post('v1/patMgmt/patientCompletedList', bodytoken)\n .then((data) => {\n if (data.status === 200) {\n console.log(data, 'CompletedList');\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body;\n dispatch({\n type: PATIENT_COMPLETED_COUNT,\n payload: data.data.body.totalcount,\n });\n dispatch({\n type: PATIENT_COMPLETED_DATA,\n payload: data.data.body.data,\n });\n dispatch({\n type: PATIENT_NAME_LIST,\n payload: data.data.body.patNameList,\n });\n if (getdata) {\n if (getdata.erxImageOCR.length > 0) {\n var imgurl = [];\n var imgocr = [];\n for (var i = 0; i < getdata.erxImageOCR.length; i++) {\n //Push only images\n imgurl.push({url: getdata.erxImageOCR[i].erxUrl});\n //Push Image with ocr data and extension\n imgocr.push({\n url: getdata.erxImageOCR[i].erxUrl,\n erxid: getdata.erxImageOCR[i].erxId,\n extension: getdata.erxImageOCR[i].urlExtension,\n rownumber: getdata.erxImageOCR[i].rownumber,\n });\n }\n\n dispatch({\n type: ERX_IMG_ARR,\n payload: imgurl,\n });\n dispatch({\n type: ERX_IMG_OCR,\n payload: imgocr,\n });\n }\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientCompletedList',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientCompletedList',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientCompletedList',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientCompletedList',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n//Sign up Patient\nexport const onSignupPatient = ({mobileNbr, pName, limit, offset}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {\n mobileNbr,\n pName,\n limit,\n offset,\n };\n try {\n jwtAxios\n .post('v1/patMgmt/patientCompletedListjwt', body)\n .then((data) => {\n // console.log(data)\n if (data.status === 200) {\n //Call pending list data - Get pending list data using token\n try {\n const jwtToken = data.data.body['token'];\n const bodytoken = {\n mobileNbr,\n pName,\n limit,\n offset,\n jwtToken,\n };\n jwtAxios\n .post('v1/patMgmt/patientCompletedList', bodytoken)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body.data;\n dispatch({\n type: PATIENT_COMPLETED_COUNT,\n payload: data.data.body.totalcount,\n });\n dispatch({\n type: PATIENT_COMPLETED_DATA,\n payload: getdata,\n });\n dispatch({\n type: PATIENT_NAME_LIST,\n payload: data.data.body.patNameList,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onSignupPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onSignupPatient',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onSignupPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'onSignupPatient', '0', err),\n );\n }\n };\n};\n\n//forget password\nexport const onForgetPassword = ({mobileNbr, newpaswd, otp}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {\n mobileNbr,\n newpaswd,\n otp,\n };\n try {\n jwtAxios\n .post('v1/patMgmt/forgetpaswdjwt', body)\n .then((data) => {\n // console.log(data)\n if (data.status === 200) {\n //Call pending list data - Get pending list data using token\n try {\n if (data.hasOwnProperty.call(data.data, 'body')) {\n const jwtToken = data.data.body['token'];\n const bodytoken = {\n mobileNbr,\n newpaswd,\n otp,\n jwtToken,\n };\n jwtAxios\n .post('v1/patMgmt/forgetpaswd', bodytoken)\n .then((data) => {\n if (data.status === 200) {\n // dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: FORGOT_PASWD_SUCCESS,\n payload: 'Your password has been changed successfully',\n });\n } else {\n if (data.data.message.includes('1')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: 'Invalid OTP',\n });\n }\n if (data.data.message.includes('2')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: 'Your OTP is expired , Please try again!',\n });\n }\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onForgetPassword',\n '0',\n error,\n ),\n );\n });\n } else {\n if (data.data.hasOwnProperty.call(data.data, 'message')) {\n if (data.data.message.includes('Error')) {\n if (data.data.message.includes('2')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: data.data.message.split('2')[1],\n });\n } else if (data.data.message.includes('1')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: data.data.message.split('1')[1],\n });\n } else if (data.data.message.includes('3')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: data.data.message.split('3')[1],\n });\n } else {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: 'Invalid OTP',\n });\n }\n }\n }\n }\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onForgetPassword',\n '0',\n err,\n ),\n );\n }\n } else {\n if (data.hasOwnProperty.call(data, 'message')) {\n if (data.message.includes('Error')) {\n if (data.message.includes('2')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: data.message.split('2')[1],\n });\n } else if (data.message.includes('1')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: data.message.split('1')[1],\n });\n } else if (data.data.message.includes('3')) {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: data.data.message.split('3')[1],\n });\n } else {\n dispatch({\n type: FORGOT_PASWD_ERROR,\n payload: 'Invalid OTP',\n });\n }\n }\n }\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onForgetPassword',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onForgetPassword',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n//get Generate erx html\nexport const GenerateERXHTML = (body) => {\n return (dispatch) => {\n dispatch({\n type: ERX_DATA_HTML,\n payload: [],\n });\n dispatch({type: FETCH_START});\n //Call symptom list Token - Get Token\n try {\n //Call symptom User list data - Get symptom list data using token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/generateHTML', body)\n .then((data) => {\n if (data && data.status && data.status === 200) {\n if (data.data.body) {\n dispatch({\n type: ERX_DATA_HTML_NO_DATA,\n payload: '',\n });\n dispatch({\n type: ERX_DATA_HTML,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: ERX_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n }\n }\n })\n .catch((error) => {\n dispatch({\n type: ERX_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch({\n type: ERX_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n err,\n ),\n );\n }\n } catch (err) {\n dispatch({\n type: ERX_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n//getAppointmentsJWt\nexport const onGetAppointments = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/pateRxMgmt/getAppointmentsJwt', value)\n .then((data) => {\n // console.log(data)\n if (data.status === 200) {\n //Call pending list data - Get pending list data using token\n try {\n const jwtToken = data.data.body['token'];\n const bodytoken = value;\n bodytoken['jwtToken'] = jwtToken;\n jwtAxios\n .post('v1/pateRxMgmt/getAppointments', bodytoken)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n const getdata = data.data.body.data;\n dispatch({\n type: PATIENT_APPOINTMENT_COUNT,\n payload: data.data.body.totalCount,\n });\n dispatch({\n type: PATIENT_APPOINTMENT_LIST,\n payload: getdata,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetAppointments',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetAppointments',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetAppointments',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetAppointments',\n '0',\n err,\n ),\n );\n }\n };\n};\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 23-06-2021\n * Descriptions : Dashboard api calling\n ************/\nimport {\n FETCH_ERROR,\n PATIENT_PROFILE,\n STATE_MASTER,\n SAVE_PROFILES,\n OTP_SIGNUP_ERROR,\n} from '../../shared/constants/ActionTypes';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {onWriteCloudWatchLog} from './Common';\n//AWS cloud watch name\nvar streamname = 'Redux_Actions';\nvar filename = 'myprofile.js';\n\nexport const onGetStatemaster = (body) => {\n return (dispatch) => {\n jwtAxios\n .post('v1/patMgmt/mastersjwt', body)\n .then((data) => {\n body['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/masters', body)\n .then((data) => {\n console.log(data.data.body.stateList, 'statedata');\n dispatch({\n type: STATE_MASTER,\n payload: data.data.body.stateList,\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetStatemaster',\n '0',\n error,\n ),\n );\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetStatemaster',\n '0',\n error,\n ),\n );\n });\n };\n};\n\n//get profile data\nexport const onGetPatientData = (body) => {\n return (dispatch) => {\n jwtAxios\n .post('v1/patMgmt/getPatientDataJwt', body)\n .then((data) => {\n body['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/getPatientData', body)\n .then((data) => {\n console.log(data.data.body, 'get patient datas');\n var patientpersonal = {\n ...data.data.body.personal,\n ...data.data.body.addressData,\n };\n dispatch({\n type: PATIENT_PROFILE,\n payload: patientpersonal,\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientData',\n '0',\n error,\n ),\n );\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientData',\n '0',\n error,\n ),\n );\n });\n };\n};\n\n//save profile data\nexport const savePatientProfiles = (body) => {\n return (dispatch) => {\n console.log(body);\n jwtAxios\n .post('v1/patMgmt/saveProfileJwt', body)\n .then((data) => {\n if (data.data.message && data.data.message.includes('Error')) {\n dispatch({\n type: OTP_SIGNUP_ERROR,\n payload: data.data.message.split(':')[2],\n });\n return;\n }\n if (data.data.body['token']) {\n body['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/saveProfile', body)\n .then((data) => {\n dispatch({\n type: SAVE_PROFILES,\n payload: true,\n });\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'savePatientProfiles',\n '0',\n error,\n ),\n );\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'savePatientProfiles',\n '0',\n error,\n ),\n );\n });\n };\n};\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 23-06-2021\n * Descriptions : Dashboard api calling\n ************/\n\nimport React from 'react';\nimport {\n FETCH_ERROR,\n FETCH_START,\n PATIENT_VITAL_HISTORY_DATA,\n PATIENT_VITAL_HISTORY_DATA_COUNT,\n FETCH_SUCCESS,\n VITAL_DATA_NOT_FOUND,\n VITAL_PDF_DATA,\n PATIENT_VITAL_PATIENTS,\n COVID_DATA_HTML,\n COVID_DATA_HTML_NO_DATA,\n} from '../../shared/constants/ActionTypes';\nimport IntlMessages from '../../@crema/utility/IntlMessages';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {fetchError, onWriteCloudWatchLog} from './Common';\n//AWS cloud watch name\nvar streamname = 'Redux_Actions';\nvar filename = 'Patient.js';\n//Get Patient covid List data\nexport const onGetPatientVitalList = ({\n userId,\n userCode,\n limit,\n offset,\n mobileNo,\n filterfromDate,\n filtertoDate,\n covidStatus,\n patName,\n vitalarr,\n}) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n const body = {\n userId,\n userCode,\n limit,\n offset,\n mobileNo,\n filterfromDate,\n filtertoDate,\n covidStatus,\n patName,\n };\n try {\n jwtAxios\n .post('v1/covid/getCovidPatientListjwt', body)\n .then((data) => {\n // console.log(data)\n if (data.status === 200) {\n //Call pending list data - Get pending list data using token\n try {\n const jwtToken = data.data.body['token'];\n const bodytoken = {\n userId,\n userCode,\n limit,\n offset,\n mobileNo,\n filterfromDate,\n filtertoDate,\n covidStatus,\n patName,\n jwtToken,\n };\n jwtAxios\n .post('v1/covid/getCovidPatientList', bodytoken)\n .then((data) => {\n if (data.status === 200) {\n // console.log(data, 'CompletedList');\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: PATIENT_VITAL_HISTORY_DATA_COUNT,\n payload: data.data.body.totalCount,\n });\n dispatch({\n type: PATIENT_VITAL_HISTORY_DATA,\n payload: [],\n });\n dispatch({\n type: PATIENT_VITAL_HISTORY_DATA,\n payload: [...vitalarr, ...data.data.body.resultData],\n });\n\n dispatch({\n type: PATIENT_VITAL_PATIENTS,\n payload: data.data.body.patientlistdatas,\n });\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientVitalList',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientVitalList',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientVitalList',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n console.log('error!!!!', err.response.message);\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetPatientVitalList',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n//getcovid vitals list using jwt token\nexport const GenerateVitalPDF = (body) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call symptom list Token - Get Token\n try {\n jwtAxios\n .post('v1/covid/generateVitalPdfjwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call symptom User list data - Get symptom list data using token\n try {\n body['jwtToken'] = data.data.body['token'];\n\n jwtAxios\n .post('v1/covid/generateVitalPdf', body)\n .then((data) => {\n if (data && data.status && data.status === 200) {\n if (data.data.body) {\n dispatch({\n type: VITAL_PDF_DATA,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: VITAL_DATA_NOT_FOUND,\n payload: 'No record found',\n });\n }\n }\n })\n .catch((error) => {\n dispatch({\n type: VITAL_DATA_NOT_FOUND,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch({\n type: VITAL_DATA_NOT_FOUND,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({\n type: VITAL_DATA_NOT_FOUND,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch({\n type: VITAL_DATA_NOT_FOUND,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n//get covid vitals list using jwt token\nexport const GenerateVitalHTML = (body) => {\n return (dispatch) => {\n dispatch({\n type: COVID_DATA_HTML,\n payload: [],\n });\n dispatch({type: FETCH_START});\n //Call symptom list Token - Get Token\n try {\n jwtAxios\n .post('v1/covid/generateVitalHTMLjwt', body)\n .then((data) => {\n if (data.status === 200) {\n //Call symptom User list data - Get symptom list data using token\n try {\n body['jwtToken'] = data.data.body['token'];\n\n jwtAxios\n .post('v1/covid/generateVitalHTML', body)\n .then((data) => {\n if (data && data.status && data.status === 200) {\n if (data.data.body) {\n dispatch({\n type: COVID_DATA_HTML_NO_DATA,\n payload: '',\n });\n dispatch({\n type: COVID_DATA_HTML,\n payload: data.data.body,\n });\n } else {\n dispatch({\n type: COVID_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n }\n }\n })\n .catch((error) => {\n dispatch({\n type: COVID_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch({\n type: COVID_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({\n type: COVID_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch({\n type: COVID_DATA_HTML_NO_DATA,\n payload: 'No record found',\n });\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'GetCovidVitalsListData',\n '0',\n err,\n ),\n );\n }\n };\n};\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 21-12-2021\n * Descriptions : Masters api calling\n ************/\nimport {\n FETCH_ERROR,\n FETCH_START,\n FETCH_SUCCESS,\n INSERT_OWN_ERX_SUCCESS,\n} from '../../shared/constants/ActionTypes';\nimport IntlMessages from '../../@crema/utility/IntlMessages';\nimport React from 'react';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {fetchError, onWriteCloudWatchLog} from './Common';\n//AWS cloud watch name\nvar streamname = 'Redux_Actions';\nvar filename = 'Master.js';\n\n//insertUploadErx\nexport const insertUploadErx = (body) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call procedure list Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/insertUploadErxjwt', body)\n .then((data) => {\n if (data.status === 200) {\n body['jwtToken'] = data.data.body['token'];\n try {\n jwtAxios\n .post('v1/pateRxMgmt/insertUploadErx', body)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: INSERT_OWN_ERX_SUCCESS,\n payload: 'success',\n });\n } else {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: INSERT_OWN_ERX_SUCCESS,\n payload: 'failure',\n });\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'insertUploadErx',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'insertUploadErx',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'insertUploadErx',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(streamname, filename, 'insertUploadErx', '0', err),\n );\n }\n };\n};\n\nexport const s3UploadErrorEmail = (body) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n //Call procedure list Token - Get Token\n try {\n jwtAxios\n .post('v1/pateRxMgmt/sendWeblinkEmailJwt', body)\n .then((data) => {\n if (data.status === 200) {\n body['jwtToken'] = data.data.body['token'];\n try {\n jwtAxios\n .post('v1/pateRxMgmt/sendWeblinkEmail', body)\n .then((data) => {\n if (data.status === 200) {\n dispatch({type: FETCH_SUCCESS});\n } else {\n dispatch({type: FETCH_SUCCESS});\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 's3UploadErrorEmail',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 's3UploadErrorEmail',\n '0',\n err,\n ),\n );\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 's3UploadErrorEmail',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 's3UploadErrorEmail',\n '0',\n err,\n ),\n );\n }\n };\n};\n","/************\n * Developed by : Shiva Software Solutions\n * Date : 31-10-2022\n * Descriptions : Login AND Signup Functionality\n ************/\nimport React from 'react';\nimport {\n FETCH_START,\n FETCH_ERROR,\n MAPPING_PATIENT_LIST,\n DROP_PATIENT_LIST,\n DROP_PATIENT_RELATION,\n MAPPING_SUCCESS,\n PATIENT_RELATION_SUCCESS,OTP_SIGNUP_ERROR\n} from '../../shared/constants/ActionTypes';\nimport jwtAxios from '../../@crema/services/auth/jwt-auth/jwt-api';\nimport {fetchError, onWriteCloudWatchLog} from './Common';\nimport IntlMessages from '../../@crema/utility/IntlMessages';\n//AWS cloud watch name\nvar streamname = 'Redux_Actions';\nvar filename = 'MappingPatient.js';\n\n// Get mapping patient\nexport const onGetMappingPatient = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/getmergingPatientListsjwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/getmergingPatientLists', value)\n .then((data) => {\n if (data.data.status === 200) {\n if (data.data.body?.patientNameLists?.length > 0) {\n dispatch({\n type: MAPPING_PATIENT_LIST,\n payload: data.data.body.patientNameLists,\n });\n dispatch({\n type: DROP_PATIENT_LIST,\n payload: data.data.body.pat_drop_List,\n });\n dispatch({\n type: DROP_PATIENT_RELATION,\n payload: data.data.body.relation,\n });\n } else {\n dispatch({\n type: MAPPING_PATIENT_LIST,\n payload: [],\n });\n dispatch({\n type: DROP_PATIENT_LIST,\n payload: [],\n });\n dispatch({\n type: DROP_PATIENT_RELATION,\n payload: [],\n });\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// Get Insert mapping Patients\nexport const insertMergingPatients = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/insertPatientMergingjwt', value)\n .then((data) => {\n try {\n console.log(data.data, 'OTP_SIGNUP_ERROR')\n if (data.data.message && data.data.message.includes('Error')) {\n dispatch({\n type: OTP_SIGNUP_ERROR,\n payload: data.data.message.split(':')[2],\n });\n return;\n }\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/insertPatientMerging', value)\n .then((data) => {\n if (data.data.status === 200) {\n if (data.data.message) {\n dispatch({\n type: MAPPING_SUCCESS,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: MAPPING_SUCCESS,\n payload: ,\n });\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n err,\n ),\n );\n }\n };\n};\n\n// updatePatientRelation\nexport const updatePatientRelation = (value) => {\n return (dispatch) => {\n dispatch({type: FETCH_START});\n try {\n jwtAxios\n .post('v1/patMgmt/updatePatientRelationJwt', value)\n .then((data) => {\n try {\n value['jwtToken'] = data.data.body['token'];\n jwtAxios\n .post('v1/patMgmt/updatePatientRelation', value)\n .then((data) => {\n if (data.data.status === 200) {\n if (data.data.message) {\n dispatch({\n type: PATIENT_RELATION_SUCCESS,\n payload: data.data.message,\n });\n } else {\n dispatch({\n type: PATIENT_RELATION_SUCCESS,\n payload: ,\n });\n }\n } else {\n dispatch({\n type: FETCH_ERROR,\n payload: ,\n });\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n err,\n ),\n );\n }\n })\n .catch((error) => {\n dispatch({type: FETCH_ERROR, payload: error.message});\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n error,\n ),\n );\n });\n } catch (err) {\n dispatch(fetchError(err.response.message));\n dispatch(\n onWriteCloudWatchLog(\n streamname,\n filename,\n 'onGetMappingPatient',\n '0',\n err,\n ),\n );\n }\n };\n};\n","import {\n FETCH_ERROR,\n FETCH_START,\n FETCH_SUCCESS,\n HIDE_MESSAGE,\n SHOW_MESSAGE,\n TOGGLE_APP_DRAWER,\n UPDATING_CONTENT,\n} from '../../shared/constants/ActionTypes';\n//Cloud watch logs require functionality\nvar winston = require('winston'),\n WinstonCloudWatch = require('winston-cloudwatch');\nvar AWS = require('aws-sdk');\nconst SECRETKEY = 'AKIAZH552SF5X5JDFU6J';\nconst ACCESSKEY = 'sxmQcF8Ba7q8mbBfPxhQS4vqX3x7OGy+nmt3bZPB';\nconst REGION = 'ap-south-1';\nconst GROUPNAME = 'gudmedweblog';\n\nexport const fetchStart = () => {\n return (dispatch) => dispatch({type: FETCH_START});\n};\n\nexport const fetchSuccess = () => {\n return (dispatch) => dispatch({type: FETCH_SUCCESS});\n};\nexport const updatingContent = () => {\n return (dispatch) => dispatch({type: UPDATING_CONTENT});\n};\n\nexport const fetchError = (error) => {\n return (dispatch) => dispatch({type: FETCH_ERROR, payload: error});\n};\n\nexport const showMessage = (message) => {\n return (dispatch) => dispatch({type: SHOW_MESSAGE, payload: message});\n};\nexport const onToggleAppDrawer = () => {\n return (dispatch) => dispatch({type: TOGGLE_APP_DRAWER});\n};\n\nexport const hideMessage = () => {\n return (dispatch) => dispatch({type: HIDE_MESSAGE});\n};\n\nexport const onWriteCloudWatchLog = (\n streamName,\n filename,\n functionname,\n usercode,\n error,\n) => {\n return async (dispatch) => {\n var getdate = new Date();\n //AWS config file declaration\n AWS.config.update({\n region: REGION,\n accessKeyId: SECRETKEY,\n secretAccessKey: ACCESSKEY,\n });\n //Winston configuration file\n winston.add(\n new WinstonCloudWatch({\n logGroupName: GROUPNAME,\n logStreamName: streamName + '_Web',\n awsRegion: REGION,\n awsAccessKeyId: SECRETKEY,\n awsSecretKeyId: ACCESSKEY,\n }),\n );\n //Write error in cloud watch\n winston.error(\n 'WEB - File Name : ' +\n filename +\n ' , Function : ' +\n functionname +\n ' , UserCode : ' +\n usercode +\n ' , Error :' +\n error +\n ' , DateTime : ' +\n getdate,\n );\n };\n};\n","/************\n * Author : Suriya V\n * Developed by : Shiva Software Solutions\n * Date : 29-07-2021\n * Descriptions : Toaster Message\n * Dependicies : To use @material-ui/core\n * Modified Date :\n * Modified Author Name :\n * Modified Fuction :\n ************/\n\nimport React from 'react';\nimport {makeStyles} from '@material-ui/core/styles';\nimport IconButton from '@material-ui/core/IconButton';\nimport Snackbar from '@material-ui/core/Snackbar';\nimport SnackbarContent from '@material-ui/core/SnackbarContent';\nimport WarningIcon from '@material-ui/icons/Warning';\nimport ErrorIcon from '@material-ui/icons/Error';\nimport InfoIcon from '@material-ui/icons/Info';\nimport CloseIcon from '@material-ui/icons/Close';\nimport CheckCircleIcon from '@material-ui/icons/CheckCircle';\nimport {amber, green} from '@material-ui/core/colors';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nconst SnackbarMsg = ({snackbaropen, variantdata, msgdata, onDeny}) => {\n function MySnackbarContentWrapper(props) {\n const classes = useStyles1();\n const {className, message, onClose, variant, ...other} = props;\n const Icon = variantIcon[variant];\n return (\n \n \n {message}\n \n }\n action={[\n \n \n ,\n ]}\n {...other}\n />\n );\n }\n const variantIcon = {\n success: CheckCircleIcon,\n warning: WarningIcon,\n error: ErrorIcon,\n info: InfoIcon,\n };\n const useStyles1 = makeStyles((theme) => ({\n success: {\n backgroundColor: green[600],\n },\n error: {\n backgroundColor: theme.palette.error.dark,\n },\n info: {\n backgroundColor: theme.palette.primary.main,\n },\n warning: {\n backgroundColor: amber[700],\n },\n icon: {\n fontSize: 20,\n },\n iconVariant: {\n opacity: 0.9,\n marginRight: theme.spacing(1),\n },\n message: {\n display: 'flex',\n alignItems: 'center',\n },\n }));\n function handleClose(event, reason) {\n if (reason === 'clickaway') {\n return;\n }\n onDeny(false);\n }\n return (\n <>\n \n \n \n \n );\n};\n\nexport default SnackbarMsg;\nSnackbarMsg.propTypes = {\n snackbaropen: PropTypes.bool.isRequired,\n variantdata: PropTypes.node.isRequired,\n msgdata: PropTypes.node.isRequired,\n onDeny: PropTypes.func.isRequired,\n};\n","import React from 'react';\nimport {Loader, MessageView} from '../../../@crema';\nimport {useSelector} from 'react-redux';\n\nconst InfoView = () => {\n const {error, loading, message} = useSelector(({common}) => common);\n\n const showMessage = () => {\n return ;\n };\n\n const showError = () => {\n return ;\n };\n\n return (\n <>\n {loading && }\n\n {message && showMessage()}\n {error && showError()}\n \n );\n};\n\nexport default InfoView;\n","import {Fonts} from '../../../shared/constants/AppEnums';\n\nexport const highlightTheme = {\n plain: {\n color: '#F8F8F2',\n fontFamily: 'Poppins',\n fontWeight: Fonts.REGULAR,\n backgroundColor: '#333333',\n },\n styles: [\n {\n types: ['prolog', 'constant', 'builtin'],\n style: {\n color: '#FFFFFF',\n },\n },\n {\n types: ['inserted', 'tag', 'function'],\n style: {\n color: '#E6DB74',\n },\n },\n {\n types: ['deleted'],\n style: {\n color: 'rgb(255, 85, 85)',\n },\n },\n {\n types: ['changed'],\n style: {\n color: 'rgb(255, 184, 108)',\n },\n },\n {\n types: ['punctuation', 'symbol'],\n style: {\n color: 'rgb(248, 248, 242)',\n },\n },\n {\n types: ['string', 'char', 'selector'],\n style: {\n color: '#98CD2F',\n },\n },\n {\n types: ['keyword', 'variable'],\n style: {\n color: '#65D4EA',\n // fontStyle: \"italic\"\n },\n },\n {\n types: ['comment'],\n style: {\n color: 'rgb(98, 114, 164)',\n },\n },\n {\n types: ['attr-name'],\n style: {\n color: '#98CD2F',\n },\n },\n ],\n};\n","import React, {useState} from 'react';\nimport {Card, makeStyles} from '@material-ui/core';\n//import CardHeader from '@material-ui/core/CardHeader';\nimport CardContent from '@material-ui/core/CardContent'; \nimport Highlight, {defaultProps} from 'prism-react-renderer';\nimport PropTypes from 'prop-types'; \nimport Collapse from '@material-ui/core/Collapse';\nimport Scrollbar from '../Scrollbar';\nimport clsx from 'clsx';\nimport {highlightTheme} from './highlightTheme';\nimport Box from '@material-ui/core/Box';\nimport {Fonts} from '../../../shared/constants/AppEnums';\nimport AppAnimate from '../AppAnimate';\n\nconst useStyles = makeStyles((theme) => {\n return {\n root: {\n borderRadius: 8,\n //padding: 16,\n backgroundColor: theme.palette.background.default,\n },\n cardHeader: {\n // paddingLeft: 32,\n // paddingRight: 32,\n '& .MuiTypography-h5': {\n fontSize: 16,\n fontWeight: Fonts.BOLD,\n marginBottom: 1,\n },\n },\n cardContent: {\n //paddingLeft: 32,\n //paddingRight: 32,\n // paddingTop: 0,\n padding:'unset',\n },\n preTag: {\n borderRadius: 8,\n // padding: 12,\n },\n };\n});\nconst ComponentCard = ({\n title,\n maxHeight,\n description,\n component: Component,\n source,\n}) => {\n const [viewSource] = useState(false);\n const [animation] = useState(false);\n\n const classes = useStyles();\n\n return (\n \n \n {/* \n {\n if (animation) {\n setAnimation(!animation);\n setTimeout(() => setToggleViewSource(!viewSource), 400);\n } else {\n setAnimation(!animation);\n setToggleViewSource(!viewSource);\n }\n }}>\n \n \n \n ) : null\n }\n /> */}\n\n \n \n {viewSource ? (\n \n \n {({\n className,\n style,\n tokens,\n getLineProps,\n getTokenProps,\n }) => (\n \n {tokens.map((line, i) => (\n \n {line.map((token, key) => (\n \n ))}\n \n ))}\n \n )}\n \n \n ) : null}\n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ComponentCard;\n\nComponentCard.defaultProps = {\n description: '',\n maxHeight: 1000,\n};\n\nComponentCard.propTypes = {\n component: PropTypes.any.isRequired,\n source: PropTypes.node,\n title: PropTypes.node.isRequired,\n description: PropTypes.node,\n};\n","import React from 'react';\nimport CircularProgress from '@material-ui/core/CircularProgress';\nimport Box from '@material-ui/core/Box';\n\nconst Loader = () => {\n return (\n \n \n \n );\n};\n\nexport default Loader;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Loader} from '../../index';\n\nconst AppSuspense = (props) => {\n return (\n }>\n {props.children}\n \n );\n};\n\nAppSuspense.propTypes = {\n loadingProps: PropTypes.object,\n};\n\nAppSuspense.defaultProps = {\n loadingProps: {\n delay: 300,\n },\n};\n\nexport default AppSuspense;\n\nAppSuspense.propTypes = {\n children: PropTypes.node.isRequired,\n};\n","import React from 'react';\nimport {makeStyles} from '@material-ui/core/styles';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport Box from '@material-ui/core/Box';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n padding: '0 7px',\n fontSize: 11,\n fontWeight: 600,\n height: 20,\n minWidth: 20,\n borderRadius: 20,\n display: 'flex',\n alignItems: 'center',\n color: theme.palette.secondary.contrastText,\n },\n}));\n\nfunction Badge({className, count, color}) {\n const classes = useStyles();\n if (color === 'primary') {\n color = 'primary.main';\n } else if (color === 'v') {\n color = 'secondary.main';\n }\n return (\n \n {count}\n \n );\n}\n\nBadge.propTypes = {\n count: PropTypes.any,\n color: PropTypes.string,\n};\nBadge.defaultProps = {\n color: 'secondary.main',\n};\n\nexport default React.memo(Badge);\n","import React from 'react';\nimport {NavLink} from 'react-router-dom';\n\nconst AppNavLink = React.forwardRef((props, ref) => (\n \n));\n\nexport default AppNavLink;\n","import React from 'react';\nimport Typography from '@material-ui/core/Typography';\nimport PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport LinkIcon from '@material-ui/icons/Link';\nimport Box from '@material-ui/core/Box';\nimport {makeStyles} from '@material-ui/core/styles';\nimport {Fonts} from '../../../shared/constants/AppEnums';\nimport AppAnimate from '../AppAnimate';\n\nconst ComponentHeader = ({title, description, refUrl}) => {\n const useStyles = makeStyles((theme) => ({\n containerHeader: {\n display: 'flex',\n flexDirection: 'column',\n [theme.breakpoints.up('sm')]: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n },\n paddingBottom: 16,\n [theme.breakpoints.up('xl')]: {\n paddingTop: 16,\n },\n },\n linkIcon: {\n paddingLeft: 4,\n },\n textbase: {\n fontSize: 15,\n fontWeight: Fonts.REGULAR,\n },\n }));\n\n const classes = useStyles();\n return (\n \n \n \n \n {title}\n \n {description ? (\n \n {description}\n \n ) : null}\n \n {refUrl ? (\n \n \n Reference \n \n \n ) : null}\n \n \n );\n};\n\nexport default ComponentHeader;\n\nComponentHeader.propTypes = {\n title: PropTypes.string.isRequired,\n description: PropTypes.string,\n refUrl: PropTypes.string,\n};\nComponentHeader.defaultProps = {};\n","import React, {useContext, useState} from 'react';\nimport AppContext from '../../utility/AppContext';\nimport {SketchPicker} from 'react-color';\nimport {makeStyles} from '@material-ui/core/index';\nimport Box from '@material-ui/core/Box';\n\nconst useStyles = makeStyles((theme) => {\n return {\n cpSwatch: {\n display: 'flex',\n alignItems: 'center',\n position: 'relative',\n cursor: 'pointer',\n marginBottom: 10,\n marginRight: 10,\n },\n cpColor: {\n width: 30,\n height: 16,\n backgroundColor: theme.palette.primary.main,\n border: `solid 1px ${theme.palette.gray[100]}`,\n marginRight: 10,\n [theme.breakpoints.up('xl')]: {\n width: 40,\n height: 26,\n },\n },\n cpPopover: {\n position: 'absolute',\n left: 0,\n top: 0,\n zIndex: 1,\n },\n };\n});\nconst PrimaryColorPicker = (props) => {\n const [visible, setVisibility] = useState(false);\n const {primary, theme, updateTheme} = useContext(AppContext);\n\n const classes = useStyles(props);\n\n return (\n <>\n setVisibility(!visible)}>\n \n \n Primary\n \n \n {visible ? (\n setVisibility(!visible)}>\n \n {\n theme.palette.primary.main = color.hex;\n updateTheme(theme);\n }}\n />\n \n ) : null}\n \n );\n};\n\nexport default PrimaryColorPicker;\n","import {LayoutType, NavStyle} from '../../../shared/constants/AppEnums';\n\nexport const navStyles = [\n // {\n // id: 1,\n // alias: NavStyle.STANDARD,\n // image: '/assets/images/navigationStyle/nav4.png',\n // },\n // {\n // id: 2,\n // alias: NavStyle.DEFAULT,\n // image: '/assets/images/navigationStyle/nav2.png',\n // },\n // {\n // id: 3,\n // alias: NavStyle.MINI_SIDEBAR_TOGGLE,\n // image: '/assets/images/navigationStyle/nav3.png',\n // },\n // {\n // id: 4,\n // alias: NavStyle.HEADER_USER,\n // image: '/assets/images/navigationStyle/nav9.png',\n // },\n // {\n // id: 5,\n // alias: NavStyle.HEADER_USER_MINI,\n // image: '/assets/images/navigationStyle/nav10.png',\n // },\n // {\n // id: 6,\n // alias: NavStyle.MINI,\n // image: '/assets/images/navigationStyle/nav3.png',\n // },\n // {\n // id: 7,\n // alias: NavStyle.DRAWER,\n // image: '/assets/images/navigationStyle/nav5.png',\n // },\n // {\n // id: 8,\n // alias: NavStyle.BIT_BUCKET,\n // image: '/assets/images/navigationStyle/nav1.png',\n // },\n {\n id: 9,\n alias: NavStyle.H_DEFAULT,\n image: '/assets/images/navigationStyle/nav8.png',\n },\n // {\n // id: 10,\n // alias: NavStyle.HOR_LIGHT_NAV,\n // image: '/assets/images/navigationStyle/nav6.png',\n // },\n // {\n // id: 11,\n // alias: NavStyle.HOR_DARK_LAYOUT,\n // image: '/assets/images/navigationStyle/nav7.png',\n // },\n];\n\nexport const layoutTypes = [\n {\n id: 1,\n alias: LayoutType.FULL_WIDTH,\n image: '/assets/images/layouts/full width.png',\n },\n {\n id: 2,\n alias: LayoutType.BOXED,\n image: '/assets/images/layouts/boxed.png',\n },\n];\n","import {makeStyles} from '@material-ui/core';\nimport {orange} from '@material-ui/core/colors';\n\nconst useStyles = makeStyles((theme) => ({\n customizerOption: {\n position: 'absolute',\n right: 0,\n top: 85,\n zIndex: 1110,\n [theme.breakpoints.up('xl')]: {\n top: 125,\n },\n },\n customizerButton: {\n borderRadius: '30px 0 0 30px',\n backgroundColor: orange[500],\n '&:hover': {\n backgroundColor: orange[700],\n },\n '& button': {\n borderRadius: '30px 0 0 30px',\n\n '&:focus': {\n borderRadius: '30px 0 0 30px',\n },\n },\n },\n rightSidebar: {\n width: 300,\n [theme.breakpoints.up('xl')]: {\n width: 400,\n },\n },\n rightSidebarHeader: {\n padding: '20px',\n borderBottom: '1px solid #e0e0e0',\n [theme.breakpoints.up('xl')]: {\n padding: '28px 22px',\n },\n },\n rightSidebarMain: {\n padding: '20px',\n [theme.breakpoints.up('xl')]: {\n padding: '28px 22px',\n },\n },\n customizerItem: {\n '&:not(:last-child)': {\n borderBottom: ['1px solid #e0e0e0'],\n paddingBottom: 20,\n marginBottom: 20,\n [theme.breakpoints.up('xl')]: {\n paddingBottom: 30,\n marginBottom: 30,\n },\n },\n },\n colorRow: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n position: 'relative',\n },\n navOption: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n marginLeft: '-10px',\n marginRight: '-10px',\n },\n navOptionItem: {\n paddingLeft: 10,\n paddingRight: 10,\n marginBottom: 20,\n },\n navOptionContent: {\n position: 'relative',\n cursor: 'pointer',\n },\n navOptionRightIcon: {\n position: 'absolute',\n left: '50%',\n top: '50%',\n transform: 'translate(-50%, -50%)',\n width: 20,\n height: 20,\n borderRadius: '50%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n backgroundColor: theme.palette.primary.main,\n color: '',\n },\n selectBox: {\n '& .MuiOutlinedInput-input': {\n padding: '12px 32px 12px 14px',\n },\n },\n toggleBtn: {\n height: 36,\n backgroundColor: theme.palette.background.paper,\n color: theme.palette.primary.main,\n borderColor: theme.palette.primary.main,\n '&:not(:first-child)': {\n borderColor: theme.palette.primary.main,\n },\n [theme.breakpoints.up('xl')]: {\n height: 48,\n minWidth: 96,\n },\n '&:hover,&:focus': {\n backgroundColor: theme.palette.background.paper,\n color: theme.palette.primary.main,\n },\n '&.active': {\n backgroundColor: theme.palette.primary.main,\n color: theme.palette.primary.contrastText,\n '&:hover,&:focus': {\n backgroundColor: theme.palette.primary.main,\n color: theme.palette.primary.contrastText,\n },\n },\n },\n colorOptionList: {\n display: 'flex',\n flexWrap: 'wrap',\n margin: '0 -5px',\n padding: 0,\n listStyle: 'none',\n '& > li': {\n padding: '0 5px',\n marginBottom: 10,\n },\n },\n wFull: {\n width: '100%',\n },\n textWhite: {\n color: 'white',\n },\n mb5: {\n marginBottom: 20,\n },\n}));\nexport default useStyles;\n","import {makeStyles} from '@material-ui/core';\n\nconst useStyles = makeStyles((theme) => ({\n colorOption: {\n position: 'relative',\n overflow: 'hidden',\n cursor: 'pointer',\n border: `1px solid ${theme.palette.text.primary}`,\n },\n colorOptionTriangle: {\n transform: 'rotate(45deg)',\n marginTop: 10,\n marginLeft: 22,\n },\n colorOptionBorder: {\n width: 10,\n height: '100%',\n position: 'absolute',\n left: 0,\n top: 0,\n zIndex: 2,\n },\n colorOptionRightIcon: {\n position: 'absolute',\n left: '50%',\n top: '50%',\n transform: 'translate(-50%, -50%)',\n width: 20,\n height: 20,\n borderRadius: '50%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n backgroundColor: '#fff',\n color: theme.palette.primary.main,\n },\n textBase: {\n fontSize: 16,\n },\n}));\nexport default useStyles;\n","/************\n * Author : Mangaleswari P\n * Developed by : Shiva Software Solutions\n * Date : 28-06-2021\n * Descriptions : Route Navigation\n * Dependicies : To use @material-ui/core\n * Modified Date :28-06-2021\n * Modified Author Name :Mangaleswari P\n * Modified Fuction :Toaster Message View color changes\n ************/\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport CheckCircleIcon from '@material-ui/icons/CheckCircle';\nimport ErrorIcon from '@material-ui/icons/Error';\nimport InfoIcon from '@material-ui/icons/Info';\nimport CloseIcon from '@material-ui/icons/Close';\nimport {amber, green, red} from '@material-ui/core/colors';\nimport IconButton from '@material-ui/core/IconButton';\nimport SnackbarContent from '@material-ui/core/SnackbarContent';\nimport WarningIcon from '@material-ui/icons/Warning';\nimport {makeStyles} from '@material-ui/core/styles';\nimport Snackbar from '@material-ui/core/Snackbar';\n\nconst variantIcon = {\n success: CheckCircleIcon,\n warning: WarningIcon,\n error: ErrorIcon,\n info: InfoIcon,\n};\nconst useStyles1 = makeStyles((theme) => ({\n success: {\n backgroundColor: green[600],\n },\n error: {\n // backgroundColor: theme.palette.error.dark,\n backgroundColor: red[600],\n },\n info: {\n backgroundColor: theme.palette.primary.main,\n },\n warning: {\n backgroundColor: amber[700],\n },\n icon: {\n fontSize: 20,\n },\n iconVariant: {\n opacity: 0.9,\n marginRight: theme.spacing(1),\n },\n message: {\n display: 'flex',\n alignItems: 'center',\n },\n}));\nconst AppSnackbar = (props) => {\n const classes = useStyles1();\n\n const [open, setOpen] = React.useState(true);\n const {className, message, variant, ...other} = props;\n const Icon = variantIcon[variant];\n\n const onClose = () => {\n setOpen(false);\n };\n\n return (\n \n \n \n {message}\n \n }\n action={[\n \n \n ,\n ]}\n {...other}\n />\n \n );\n};\nAppSnackbar.propTypes = {\n className: PropTypes.string,\n message: PropTypes.string,\n variant: PropTypes.oneOf(['error', 'info', 'success', 'warning']).isRequired,\n};\n\nexport default AppSnackbar;\n","import React, {useContext} from 'react';\nimport AppContext from '../../utility/AppContext';\nimport Box from '@material-ui/core/Box';\nimport {Button, makeStyles} from '@material-ui/core';\nimport clsx from 'clsx';\n\nconst AppFooter = (props) => {\n const {footer, footerType, navStyle} = useContext(AppContext);\n\n const useStyles = makeStyles((theme) => ({\n footer: {\n margin: '20px -20px 0',\n backgroundColor: theme.palette.background.paper,\n color: theme.palette.text.primary,\n [theme.breakpoints.up('md')]: {\n marginLeft: '-32px',\n marginRight: '-32px',\n marginTop: 30,\n },\n '& .footerContainer': {\n padding: '5px 20px',\n [theme.breakpoints.up('md')]: {\n paddingLeft: 32,\n paddingRight: 32,\n },\n [theme.breakpoints.up('xl')]: {\n padding: '10px 32px',\n },\n },\n },\n btnRoot: {\n paddingLeft: 20,\n paddingRight: 20,\n },\n }));\n\n const classes = useStyles(props);\n\n return (\n <>\n {footer &&\n footerType === 'fluid' &&\n navStyle !== 'h-default' &&\n navStyle !== 'hor-light-nav' &&\n navStyle !== 'hor-dark-layout' ? (\n \n \n Copy right @crema 2020\n \n \n \n \n \n ) : null}\n \n );\n};\n\nexport default AppFooter;\n","import React from 'react';\nimport Box from '@material-ui/core/Box';\n\nclass AppErrorBoundary extends React.Component {\n constructor(props) {\n super(props);\n this.state = {hasError: false};\n }\n\n static getDerivedStateFromError(error) {\n console.log('error: ', error);\n // Update state so the next render will show the fallback UI.\n return {hasError: true};\n }\n\n componentDidCatch(error, errorInfo) {\n // You can also log the error to an error reporting service\n console.log('errorInfo: ', errorInfo);\n // logErrorToMyService(error, errorInfo);\n }\n\n render() {\n if (this.state.hasError) {\n return (\n \n Error Info\n \n Ah! Something went wrong.\n \n \n Brace yourself till we get the error fixed.\n \n \n You may also refresh the page or try again latter\n \n \n );\n } else {\n return this.props.children;\n }\n }\n}\n\nexport default AppErrorBoundary;\n","/************\n * Author : Mangaleswari P\n * Developed by : Shiva Software Solutions\n * Date : 28-06-2021\n * Descriptions : Route Navigation\n * Dependicies : To use @material-ui/core\n * Modified Date :28-06-2021\n * Modified Author Name :Mangaleswari P\n * Modified Fuction :for session idle timeout(inprogress)\n ************/\nimport React, {useContext, useRef} from 'react';\nimport {renderRoutes} from 'react-router-config';\nimport {CSSTransition, TransitionGroup} from 'react-transition-group';\nimport {Switch, useLocation} from 'react-router-dom';\nimport {AppSuspense} from '../../index';\nimport routes from '../../../modules';\nimport Scrollbar from '../Scrollbar';\nimport AppContext from '../../utility/AppContext';\nimport PropTypes from 'prop-types';\nimport AppFooter from '../AppLayout/AppFooter';\nimport Box from '@material-ui/core/Box';\nimport {RouteTransition} from '../../../shared/constants/AppEnums';\nimport AppErrorBoundary from '../AppErrorBoundary';\nimport IdleTimer from 'react-idle-timer';\nimport {useDispatch} from 'react-redux';\nimport {useAuthUser} from '../../utility/AppHooks';\nimport {AuthType} from '../../../shared/constants/AppEnums';\nimport {onJWTAuthSignout} from '../../../redux/actions';\nconst TransitionWrapper = ({children}) => {\n const {rtAnim} = useContext(AppContext);\n const location = useLocation();\n // console.log(location.pathname);\n if (rtAnim === RouteTransition.NONE) {\n return <>{children};\n }\n const currentKey = location.pathname.split('/')[1] || '/';\n console.log(currentKey);\n return (\n \n \n {children}\n \n \n );\n};\n\nTransitionWrapper.propTypes = {\n children: PropTypes.node.isRequired,\n};\nconst ContentView = () => {\n const dispatch = useDispatch();\n const user = useAuthUser();\n const idleTimer = useRef();\n const [idletime, setIdleTime] = React.useState({\n timeout: 18000 * 10 * 1,\n showModal: false,\n userLoggedIn: false,\n isTimedOut: false,\n });\n\n const onAction = (e) => {\n // console.log('user did something', e);\n setIdleTime({...idletime, isTimedOut: false});\n };\n\n const onActive = (e) => {\n // console.log('user is active', e);\n // this.setState({isTimedOut: false})\n setIdleTime({...idletime, isTimedOut: false});\n };\n\n const onIdle = (e) => {\n console.log('user is idle', e);\n // const isTimedOut = idletime.isTimedOut\n if (idletime.isTimedOut) {\n // alert(\"timedd pout \")\n\n if (user && user.authType === AuthType.JWT_AUTH) {\n dispatch(onJWTAuthSignout());\n }\n } else {\n idleTimer.current.reset();\n setIdleTime({...idletime, isTimedOut: true});\n }\n };\n return (\n \n \n \n \n \n {renderRoutes(routes)}\n \n \n \n \n \n );\n};\n\nexport default ContentView;\n","import {createMuiTheme} from '@material-ui/core/styles';\nimport moment from 'moment';\nimport {useIntl} from 'react-intl';\nimport {useMediaQuery, useTheme} from '@material-ui/core';\n\nexport const isBreakPointDown = (key) => {\n const defaultTheme = createMuiTheme();\n return defaultTheme.breakpoints.width(key) > window.innerWidth;\n};\nexport const useDownBreakPointChecker = (key) => {\n return useMediaQuery((theme) => theme.breakpoints.down(key));\n};\n\nexport const useWidth = () => {\n const theme = useTheme();\n const keys = [...theme.breakpoints.keys].reverse();\n return (\n keys.reduce((output, key) => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const matches = useMediaQuery(theme.breakpoints.up(key));\n return !output && matches ? key : output;\n }, null) || 'xs'\n );\n};\nexport const createRoutes = (routeConfigs) => {\n let allRoutes = [];\n routeConfigs.forEach((config) => {\n allRoutes = [...allRoutes, ...setRoutes(config)];\n });\n return allRoutes;\n};\n\nexport const setRoutes = (config) => {\n let routes = [...config.routes];\n if (config.auth) {\n routes = routes.map((route) => {\n let auth = route.auth\n ? [...config.auth, ...route.auth]\n : [...config.auth];\n return {...route, auth};\n });\n }\n\n return [...routes];\n};\n\nexport const getBreakPointsValue = (valueSet, breakpoint) => {\n if (typeof valueSet === 'number') return valueSet;\n switch (breakpoint) {\n case 'xs':\n return valueSet.xs;\n case 'sm':\n return valueSet.sm || valueSet.xs;\n case 'md':\n return valueSet.md || valueSet.sm || valueSet.xs;\n case 'lg':\n return valueSet.lg || valueSet.md || valueSet.sm || valueSet.xs;\n default:\n return (\n valueSet.xl || valueSet.lg || valueSet.md || valueSet.sm || valueSet.xs\n );\n }\n};\n\nexport const getFileSize = (bytes) => {\n if (bytes === 0) return '0 Bytes';\n let k = 1024,\n dm = 2,\n sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'],\n i = Math.floor(Math.log(bytes) / Math.log(k));\n return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];\n};\n\nexport const multiPropsFilter = (products, filters, stringKey = 'title') => {\n const filterKeys = Object.keys(filters);\n return products.filter((product) => {\n return filterKeys.every((key) => {\n if (!filters[key].length) return true;\n // Loops again if product[key] is an array (for material attribute).\n if (Array.isArray(product[key])) {\n return product[key].some((keyEle) => filters[key].includes(keyEle));\n }\n console.log('key', key, filters[key], product[key]);\n if (key === stringKey) {\n return product[key].toLowerCase().includes(filters[key].toLowerCase());\n }\n return filters[key].includes(product[key]);\n });\n });\n};\n\nexport const getCustomDateTime = (\n value = 0,\n unit = 'days',\n format = 'YYYY-MM-DD',\n) => {\n if (value === 0) {\n return moment().format(format);\n } else {\n return moment().add(value, unit).format(format);\n }\n};\n\nexport const timeFromNow = (date) => {\n const timestamp = moment(date).format('X');\n const newDate = moment.unix(timestamp);\n return moment(newDate).fromNow();\n};\n\n// 'intl' service singleton reference\nlet intl;\n\nexport function IntlGlobalProvider({children}) {\n intl = useIntl();\n // Keep the 'intl' service reference\n return children;\n}\n\nexport const appIntl = () => {\n return intl;\n};\n\nexport const checkPermission = (routeAuth, userRole) => {\n if (routeAuth === null || routeAuth === undefined) {\n return true;\n }\n\n if (userRole && Array.isArray(userRole)) {\n return routeAuth.some((r) => userRole.indexOf(r) >= 0);\n }\n\n if (routeAuth.length === 0) {\n return !userRole || userRole.length === 0;\n }\n if (userRole && Array.isArray(userRole) && Array.isArray(routeAuth)) {\n return routeAuth.some((r) => userRole.indexOf(r) >= 0);\n }\n return routeAuth.indexOf(userRole) >= 0;\n};\n","import firebase from 'firebase/app';\nimport 'firebase/auth';\nimport 'firebase/firestore';\n// Initialize Firebase\nconst firebaseConfig = {\n apiKey: 'AIzaSyAzL_2jiVBhmiIUFGs2z6-cDR-Hgoedh3k',\n authDomain: 'crema-react.firebaseapp.com',\n databaseURL: 'https://crema-react.firebaseio.com',\n projectId: 'crema-react',\n storageBucket: 'crema-react.appspot.com',\n messagingSenderId: '369173776768',\n appId: '1:369173776768:web:895ded916749deebd31965',\n measurementId: 'G-976YVMRB4R',\n};\n\nfirebase.initializeApp(firebaseConfig);\n\nconst auth = firebase.auth();\n\nconst googleAuthProvider = new firebase.auth.GoogleAuthProvider();\nconst githubAuthProvider = new firebase.auth.GithubAuthProvider();\nconst facebookAuthProvider = new firebase.auth.FacebookAuthProvider();\nconst twitterAuthProvider = new firebase.auth.TwitterAuthProvider();\n\nexport {\n auth,\n googleAuthProvider,\n githubAuthProvider,\n facebookAuthProvider,\n twitterAuthProvider,\n};\n"],"sourceRoot":""}