{"version":3,"sources":["_actions/alert.actions.js","_services/user.service.js","_services/mytraining.service.js","_services/mydocument.service.js","_services/adddocument.service.js","_services/dashboard.service.js","_actions/user.actions.js","_actions/mytraining.action.js","_actions/mydocument.actions.js","_actions/adddocument.actions.js","_actions/dashboard.action.js","_helpers/history.js","_helpers/store.js","_helpers/auth-header.js","_components/Employee/Dashboard/MyTraining.js","_components/Common/Loader.js","_constants/alert.constants.js","_constants/configConstants.js","_constants/user.constants.js","_constants/mytraining.constant.js","_constants/mydocument.constants.js","_constants/adddocument.constant.js","_constants/dashboard.constant.js","_routes/PrivateRoute.js","_components/Common/Header.js","_components/Common/Footer.js","_components/Layout/LayoutDashbaord.js","_components/Auth/Login.js","_components/Auth/ChangePassword.js","_components/Auth/ForgotPassword.js","_components/Employee/Dashboard/EmpDashboard.js","_components/Common/WindowDimensions.js","_components/Employee/CredentiallingProfile/EmployeeCredentialForm.js","_components/Employee/MyDocuments/AlertDocSearch.js","_components/Employee/MyDocuments/AlertDocument.js","_components/Employee/MyDocuments/ReviewDocSerach.js","_components/Employee/MyDocuments/ReviewDocument.js","_components/Employee/MyDocuments/AddDocModal.js","_components/Employee/MyDocuments/HRSAGapReport.js","App.js","serviceWorker.js","index.js","_reducers/authentication.reducer.js","_reducers/index.js","_reducers/changepassword.reducer.js","_reducers/forgoatpassword.reducer.js","_reducers/alert.reducer.js","_reducers/users.reducer.js","_reducers/mytraining.reducer.js","_reducers/mydocument.reducer.js","_reducers/adddocument.reducer.js","_reducers/dashboard.reducer.js","_helpers/store.prod.js","_components/Common/Pagination.js","_helpers/index.js"],"names":["alertActions","success","message","type","alertConstants","SUCCESS","error","ERROR","clear","CLEAR","userService","login","username","password","requestOptions","method","headers","body","JSON","stringify","Username","Password","fetch","configConstants","API_BASE_PATH","then","handleResponse","user","localStorage","setItem","logout","register","changepassword","inputs","authHeader","forgotpassword","getEmpProfileById","HRMRId","getById","id","update","delete","removeItem","response","text","data","parse","ok","status","document","location","reload","statusCode","Promise","reject","statusText","mytrainingtService","getAllTrainngs","HRMRUserId","UserId","Year","SearchedText","mydocumentService","getAll","updateReviewApporveStatus","PPRepositoryShareId","Activity","IsDownload","adddocumentService","getCredActList","DeptId","getCredDocTypeList","ActId","addCredentialing","fdata","getAllHRSADoc","getHRSAGapReport","downloadHRSADoc","docName","responseType","resp1","blob","hideCredentialDoc","credentialingDocId","dashboardService","getOrgDetail","userActions","dispatch","userConstants","LOGIN_REQUEST","LOGIN_SUCCESS","hrmrUser","firstLogin","history","push","LOGIN_FAILURE","failure","toString","LOGOUT","CHANGEPASSWORD_REQUEST","request","CHANGEPASSWORD_SUCCESS","CHANGEPASSWORD_FAILURE","FORGOTPASSWORD_REQUEST","FORGOTPASSWORD_SUCCESS","FORGOTPASSWORD_FAILURE","empProfile","GETEMPPROFILE_REQUEST","GETEMPPROFILE_SUCCESS","GETEMPPROFILE_FAILURE","REGISTER_REQUEST","REGISTER_SUCCESS","REGISTER_FAILURE","GETALL_REQUEST","users","GETALL_SUCCESS","GETALL_FAILURE","DELETE_REQUEST","DELETE_SUCCESS","DELETE_FAILURE","mytrainingActions","mytrainingConstants","mytraining","mydocumentActions","mydocumentConstants","mydocument","PPREPODOCSTATUS_REQUEST","PPREPODOCSTATUS_SUCCESS","PPREPODOCSTATUS_FAILURE","adddocumentActions","adddocumentConstants","adddocument","GETDOCTYPEALL_REQUEST","docTypeList","GETDOCTYPEALL_SUCCESS","GETDOCTYPEALL_FAILURE","DOWNLOAD_REQUEST","DOWNLOAD_SUCCESS","DOWNLOAD_FAILURE","activityId","isHide","dashboardActions","dashboardConstants","GET_REQUEST","orgDetail","GET_SUCCESS","GET_FAILURE","createBrowserHistory","forceRefresh","module","exports","require","getItem","token","MyTraining","props","alert","useSelector","state","dashboard","orgProfile","items","authentication","useDispatch","useState","Loading","setLoading","Date","getFullYear","serachParam","setSearchParam","useEffect","loding","userId","hrmrUserId","Item","undefined","filter","training","isScormTraining","optionsYear","columns","Header","maxWidth","sortable","filterable","Cell","row","index","accessor","length","loading","Buffer","from","organizationId","code","email","e","String","s","surveyId","isResultPass","anualYear","blsTraining","style","color","cursor","title","target","onClick","handleDownloadTrainingCertificate","surveyName","TrainingId","TrainingName","url","window","URL","createObjectURL","a","createElement","href","download","click","catch","err","console","log","handleDownloadBLSCertificate","HIPAAURLOLD","year","years","Array","val","map","value","label","Fragment","className","background","alt","src","class","form-inline","name","onSubmit","preventDefault","placeholder","onChange","options","onChangeData","result","find","item","handleChangeSelect","defaultValue","marginTop","backgroundColor","PaginationComponent","Pagination","defaultPageSize","showPagination","pageSizeOptions","minRows","NoDataComponent","Loader","process","WP_BASE_PATH","SUCCESS_CODE","ERROR_CODE","EXCEPTION_CODE","UNAUTHENTICATE_CODE","FORBIDDEN_CODE","INACTIVE_USER_CODE","RESOURCE_TYPE","LOGIN_TOKEN","USER_INFO","START_YEAR","END_YEAR","START_MONTH","END_MONTH","USER_ROLE_ADMIN","USER_ROLE_TPA","USER_ROLE_OWNER","USER_ROLE_MGMT","USER_ROLE_MANAGER","USER_ROLE_EMPLOYEE","UNAUTHENTICATE","HIPAAURL","MEDIA_BASE_PATH","PROFILE_BASE_PATH","DEFAULT_IMAGE_PATH","PROFILE_LOAING","CONFIRM_ALERT_YES","CONFIRM_ALERT_NO","W4_FORM_ID","I9_FORM_ID","WOTC_FORM_ID","DD_FORM_ID","A4_FORM_ID","HIPAAORIGINURL","origin","PrivateRoute","Component","component","rest","render","to","pathname","rel","role","data-toggle","data-target","Footer","currentYear","Moment","margin","textAlign","width","required","ListItemLink","path","children","match","LayoutDashbaord","HRMRUserName","firstName","lastName","organizationName","fontWeight","aria-hidden","data-widget","transform","Login","setInputs","submitted","setSubmitted","loggingIn","handleChange","display","ChangePassword","cpass","setCpass","passStrenth","setPassStrenth","isDisabled","setIsDisabled","userName","oldPassword","newPassword","confirmPassword","handleChangePwdVal","setTimeout","paddingTop","test","autoComplete","disabled","event","ForgotPassword","listen","action","EmpDashboard","mydocs","date","format","convertDate","str","mnth","getMonth","slice","day","getDate","join","employeeName","trainingItem","trainingData","hrsaItem","hrsaData","hrsacred","lstHRSACredDoc","child","dateofExpiry","position","cellpadding","cellspacing","border","verticalAlign","height","data-page","right","left","top","overflow","attr","train","key","lastEdited","float","hrsa","hrsaCredentialingId","docType","getWindowDimensions","innerWidth","innerHeight","CryptoJS","EmployeeCredentialForm","windowDimensions","setWindowDimensions","handleResize","addEventListener","removeEventListener","useWindowDimensions","_h","parseInt","formHeight","getElementById","onload","userEmail","enc","Utf8","iv","encryptedUserId","AES","encrypt","keySize","mode","CBC","padding","pad","Pkcs7","replace","encryptKey","encUrl","encodeURI","_panelStyle","frameBorder","DropDownComponent","setState","searchInput","globalSearch","filteredData","activity","toLowerCase","includes","dateVerified","handleSetData","size","this","React","AlertDocument","serachResult","setSerachResult","custom_date","hrsaDOCList","outputDoc","Math","random","actualFileName","handleDownloadDocument","filePath","exp_dateList","output","expDate","utc","alertDocument","ReviewDocument","templateList","settemplateList","onBoarddata","ppRepodata","onBoardDocuSign","pPOnBoardDetail","pRepositoryShare","isApproved","lstDSTemplateFinal","columnsOnDocuSign","defaultTemplateId","checked","filt","handleCheckboxChange","columnsOnBoard","handleDownloadDoc","documentName","documentPath","docuSignPath","fileName","handleDownloadOnboardSignDoc","columnsPPRepo","lstPPRepoShareActivityModel","isApprove","IsApproveDate","uploadDate","isReview","handleUpdateReviewApporveStatus","ppRepositoryShareId","isType","FileName","FilePath","aria-multiselectable","data-parent","aria-expanded","aria-controls","aria-labelledby","AddDocModal","showAddDocPopup","closeAddDocPopup","onGapRptModalCloseAfterLoad","credDefaultChecklist","credActivityNumber","DocTypeId","DocType","CustomShowHide","CustomText","ActualFileName","OriginalDocType","DateofExpiry","isExpiration","isDocRequired","inputList","setInputList","credActivity","verifiedDate","docTypeAry","note","activityTextShowHide","activityNumberText","allInputs","SetallInputs","setdocButtonHide","optionsDocType","ItemDocType","todo","credDocType","docTypeId","handleAddClick","credActivityId","open","onClose","aria-label","isEmpty","doDocTypeId","some","doActualFileName","doDateofExpiry","doCustomShowHide","doCustomText","checCustmeText","r","confirm","postData","ClinicalStaffOptions","DateVerified","Description","ActivityNumber","axios","post","Authorization","resp","selected","dropdownMode","showMonthDropdown","showYearDropdown","adjustDateOnChange","x","i","closeMenuOnSelect","list","handleInputChangeDocType","isClearable","isMulti","handleChangeCustomText","file_reader","FileReader","file","files","filename","filetype","readAsDataURL","handleFileChangeDocFile","accept","handleInputChangeExpiryDate","splice","handleRemoveClick","HRSAGapReport","gapReport","setShowAddDocPopup","setdocTypeList","setCredActivityId","credActivityDefault","setcredActivityDefault","setcredActivityNumber","handleHideCredentialDoc","showDocument","docDetial","textDecoration","openAddDocPopup","DefaultChecklist","getDocTypeList","IsUsdinReport","get","deleteError","deleting","HRSAgapRpt","gapReportDoclst","doclist","Count","ExpiredCount","DocumentCount","forEach","element","fontSize","countDocument","isDefaultChecklist","activityNumber","HRSAdoc","department","App","basename","exact","Boolean","hostname","ReactDOM","store","navigator","serviceWorker","ready","registration","unregister","initialState","loggedIn","rootReducer","combineReducers","userCopy","item1","item2","updating","updatedRowsState","newdoclist","rw","ppRepoShareId","mydocumentCopy","adddocumentCopy","loggerMiddleware","createLogger","createStore","applyMiddleware","thunkMiddleware","defaultButton","filterPages","visiblePages","totalPages","page","getVisiblePages","total","changePage","bind","pages","nextProps","onPageChange","PageButtonComponent","activePage","showPageSizeOptions","onPageSizeChange","Number","pageSize","previousText","array","nextText"],"mappings":"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","file":"static/js/main.98cadaa5.chunk.js","sourcesContent":["import {alertConstants} from '../_constants';\r\n\r\nexport const alertActions = {\r\n success,\r\n error,\r\n clear\r\n};\r\n\r\nfunction success(message) {\r\n return { type: alertConstants.SUCCESS, message };\r\n}\r\n\r\nfunction error(message) {\r\n return { type: alertConstants.ERROR, message };\r\n}\r\n\r\nfunction clear() {\r\n return { type: alertConstants.CLEAR };\r\n}","//import {config} from '../config';\r\nimport {configConstants} from '../_constants';\r\nimport { authHeader } from '../_helpers';\r\nimport { location } from 'react-router-dom';\r\n\r\nexport const userService = {\r\n login,\r\n logout,\r\n register,\r\n changepassword,\r\n forgotpassword,\r\n getEmpProfileById,\r\n getById,\r\n update,\r\n delete: _delete\r\n};\r\n\r\nfunction login(username, password) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n //body: JSON.stringify({ username, password })\r\n body: JSON.stringify({ Username: username,\r\n Password: password })\r\n };\r\n return fetch(`${configConstants.API_BASE_PATH}Account/LogOn`, requestOptions)\r\n .then(handleResponse)\r\n .then(user => {\r\n // store user details and jwt token in local storage to keep user logged in between page refreshes\r\n localStorage.setItem('userToken', JSON.stringify(user));\r\n return user;\r\n });\r\n}\r\n\r\nfunction logout() {\r\n // remove user from local storage to log user out\r\n localStorage.removeItem('userToken');\r\n}\r\nfunction changepassword(inputs) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: {...authHeader(), 'Content-Type': 'application/json' },\r\n body: JSON.stringify(inputs)\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}Account/ChangePassword`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction forgotpassword(username) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n };\r\n return fetch(`${configConstants.API_BASE_PATH}Account/ForgotPassword?Username=${username}`, requestOptions).then(handleResponse);\r\n}\r\nfunction getEmpProfileById(HRMRId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n return fetch(`${configConstants.API_BASE_PATH}Employee/GetEmpProfile?HRMRUserId=${HRMRId}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getById(id) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${id}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction register(user) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(user)\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/register`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction update(user) {\r\n const requestOptions = {\r\n method: 'PUT',\r\n headers: { ...authHeader(), 'Content-Type': 'application/json' },\r\n body: JSON.stringify(user)\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${user.id}`, requestOptions).then(handleResponse);;\r\n}\r\n\r\n// prefixed function name with underscore because delete is a reserved word in javascript\r\nfunction _delete(id) {\r\n const requestOptions = {\r\n method: 'DELETE',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${id}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction handleResponse(response) {\r\n return response.text().then(text => {\r\n const data = text && JSON.parse(text);\r\n if (!response.ok) {\r\n if (response.status === 401) {\r\n // auto logout if 401 response returned from api\r\n logout();\r\n document.location.reload(true);\r\n }\r\n else if (data.statusCode === 400) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n else if (data.statusCode === 404) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n\r\n return data;\r\n });\r\n}","import {configConstants} from '../_constants';\r\nimport { authHeader } from '../_helpers';\r\n\r\nexport const mytrainingtService = {\r\n getAllTrainngs,\r\n logout\r\n};\r\nfunction getAllTrainngs(HRMRUserId,UserId,Year,SearchedText) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n // return fetch(`${configConstants.API_BASE_PATH}HRTraining/MyTraining?HRMRUserId=${HRMRUserId}&UserId=${UserId}&Year=${Year}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/MyTraining?HRMRUserId=${HRMRUserId}&UserId=${UserId}&Year=${Year}&SearchedText=${SearchedText}`, requestOptions).then(handleResponse);\r\n}\r\nfunction logout() {\r\n // remove user from local storage to log user out\r\n localStorage.removeItem('userToken');\r\n}\r\nfunction handleResponse(response) {\r\n return response.text().then(text => {\r\n const data = text && JSON.parse(text);\r\n if (!response.ok) {\r\n if (response.status === 401) {\r\n // auto logout if 401 response returned from api\r\n logout();\r\n document.location.reload(true);\r\n }\r\n else if (data.statusCode === 400) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n else if (data.statusCode === 404) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n\r\n return data;\r\n });\r\n}","import {configConstants} from '../_constants';\r\nimport { authHeader } from '../_helpers';\r\n// import { location } from 'react-router-dom';\r\n\r\nexport const mydocumentService = {\r\n getAll,\r\n updateReviewApporveStatus,\r\n getById,\r\n update,\r\n delete: _delete,\r\n logout\r\n};\r\n\r\nfunction getAll(HRMRUserId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n //return fetch(`${configConstants.API_BASE_PATH}HRTraining/MyOnBoardDoc?HRMRUserId=${HRMRUserId}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/MyOnBoardDoc?HRMRUserId=${HRMRUserId}`, requestOptions).then(handleResponse);\r\n}\r\nfunction updateReviewApporveStatus(PPRepositoryShareId,Activity,IsDownload) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/UpdateReviewApporveStatus?PPRepositoryShareId=${PPRepositoryShareId}&Activity=${Activity}&IsDownload=${IsDownload}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getById(id) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${id}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction update(user) {\r\n const requestOptions = {\r\n method: 'PUT',\r\n headers: { ...authHeader(), 'Content-Type': 'application/json' },\r\n body: JSON.stringify(user)\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${user.id}`, requestOptions).then(handleResponse);;\r\n}\r\n\r\n// prefixed function name with underscore because delete is a reserved word in javascript\r\nfunction _delete(id) {\r\n const requestOptions = {\r\n method: 'DELETE',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${id}`, requestOptions).then(handleResponse);\r\n}\r\nfunction logout() {\r\n // remove user from local storage to log user out\r\n localStorage.removeItem('userToken');\r\n}\r\nfunction handleResponse(response) {\r\n return response.text().then(text => {\r\n const data = text && JSON.parse(text);\r\n\r\n // console.log(data);\r\n if (!response.ok) {\r\n if (response.status === 401) {\r\n // auto logout if 401 response returned from api\r\n logout();\r\n document.location.reload(true);\r\n }\r\n else if (data.statusCode === 400) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n else if (data.statusCode === 404) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n\r\n return data;\r\n });\r\n}","import {configConstants} from '../_constants';\r\nimport { authHeader } from '../_helpers';\r\n// import { location } from 'react-router-dom';\r\n\r\nexport const adddocumentService = {\r\n getCredActList,\r\n getCredDocTypeList,\r\n addCredentialing,\r\n getAllHRSADoc,\r\n getHRSAGapReport,\r\n downloadHRSADoc,\r\n getAll,\r\n getById,\r\n update,\r\n hideCredentialDoc,\r\n delete: _delete,\r\n logout\r\n};\r\nfunction getCredActList(UserId,DeptId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n //return fetch(`${configConstants.API_BASE_PATH}Master/CredentialingActivityGetAll?Id=${UserId}&DepartmentId=${DeptId}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}Master/CredentialingActivityGetAll?Id=${UserId}&DepartmentId=${DeptId}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getCredDocTypeList(UserId,ActId) {\r\n let IsUsdinReport = false;\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n //return fetch(`${configConstants.API_BASE_PATH}Master/CredentialingDocTypeGetAll?Id=${UserId}&ActivityId=${ActId}&IsUsedinCredReport=${IsUsdinReport}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}Master/CredentialingDocTypeGetAll?Id=${UserId}&ActivityId=${ActId}&IsUsedinCredReport=${IsUsdinReport}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction addCredentialing(fdata) {\r\n const requestOptions = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: fdata\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/AddCredentialing`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getAllHRSADoc(HRMRUserId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n //return fetch(`${configConstants.API_BASE_PATH}HRTraining/MyCredentialinglist?HRMRUserId=${HRMRUserId}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/MyCredentialinglist?HRMRUserId=${HRMRUserId}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getHRSAGapReport(HRMRUserId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n // return fetch(`${configConstants.API_BASE_PATH}HRTraining/HRSAGapReportsByHRMRId?HRMRUserId=${HRMRUserId}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/HRSAGapReportsByHRMRId?HRMRUserId=${HRMRUserId}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction downloadHRSADoc(docName) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader(),\r\n responseType: 'blob', // important\r\n };\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/DownloadCredentialingDoc?DocumentName=${docName}`, requestOptions).then(resp1 => resp1.blob());\r\n}\r\nfunction hideCredentialDoc(credentialingDocId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}HRTraining/HideCredentialDoc?credentialingDocId=${credentialingDocId}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getAll(UserId,DeptId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n //return fetch(`${configConstants.API_BASE_PATH}Master/CredentialingActivityGetAll?Id=${UserId}&DepartmentId=${DeptId}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}Master/CredentialingActivityGetAll?Id=${UserId}&DepartmentId=${DeptId}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction getById(id) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${id}`, requestOptions).then(handleResponse);\r\n}\r\n\r\nfunction update(user) {\r\n const requestOptions = {\r\n method: 'PUT',\r\n headers: { ...authHeader(), 'Content-Type': 'application/json' },\r\n body: JSON.stringify(user)\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${user.id}`, requestOptions).then(handleResponse);;\r\n}\r\n\r\n// prefixed function name with underscore because delete is a reserved word in javascript\r\nfunction _delete(id) {\r\n const requestOptions = {\r\n method: 'DELETE',\r\n headers: authHeader()\r\n };\r\n\r\n return fetch(`${configConstants.API_BASE_PATH}/users/${id}`, requestOptions).then(handleResponse);\r\n}\r\nfunction logout() {\r\n // remove user from local storage to log user out\r\n localStorage.removeItem('userToken');\r\n}\r\nfunction handleResponse(response) {\r\n return response.text().then(text => {\r\n const data = text && JSON.parse(text);\r\n if (!response.ok) {\r\n if (response.status === 401) {\r\n // auto logout if 401 response returned from api\r\n logout();\r\n document.location.reload(true);\r\n }\r\n else if (data.statusCode === 400) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n else if (data.statusCode === 404) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n\r\n return data;\r\n });\r\n}","import {configConstants} from '../_constants';\r\nimport { authHeader } from '../_helpers';\r\n\r\nexport const dashboardService = {\r\n getOrgDetail,\r\n logout\r\n};\r\n\r\nfunction getOrgDetail(HRMRId) {\r\n const requestOptions = {\r\n method: 'GET',\r\n headers: authHeader()\r\n };\r\n //return fetch(`${configConstants.API_BASE_PATH}Account/GetOrgProfile?HRMRUserId=${HRMRId}`, requestOptions).then(resp1 => resp1.json());\r\n return fetch(`${configConstants.API_BASE_PATH}Account/GetOrgProfile?HRMRUserId=${HRMRId}`, requestOptions).then(handleResponse);\r\n}\r\nfunction logout() {\r\n // remove user from local storage to log user out\r\n localStorage.removeItem('userToken');\r\n}\r\nfunction handleResponse(response) {\r\n return response.text().then(text => {\r\n const data = text && JSON.parse(text);\r\n if (!response.ok) {\r\n if (response.status === 401) {\r\n // auto logout if 401 response returned from api\r\n logout();\r\n document.location.reload(true);\r\n }\r\n else if (data.statusCode === 400) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n else if (data.statusCode === 404) {\r\n const error = data.response;\r\n return Promise.reject(error);\r\n }\r\n\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n\r\n return data;\r\n });\r\n}","import {userConstants} from '../_constants';\r\nimport {userService} from '../_services';\r\nimport {alertActions} from './';\r\nimport {history} from '../_helpers';\r\n\r\nexport const userActions = {\r\n login,\r\n logout,\r\n changepassword,\r\n forgotpassword,\r\n getEmpProfileById,\r\n register,\r\n getAll,\r\n delete: _delete\r\n};\r\n\r\nfunction login(username, password) {\r\n return dispatch => {\r\n dispatch(request({ username }));\r\n\r\n userService.login(username, password)\r\n .then(\r\n user => { \r\n dispatch(success(user));\r\n if(user.hrmrUser.firstLogin){\r\n history.push('/changepassword');\r\n }\r\n else{\r\n history.push('/hrsagaprpt');\r\n // history.push('/empdashboard');\r\n }\r\n // window.location = \"/empdashboard\";\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(user) { return { type: userConstants.LOGIN_REQUEST, user } }\r\n function success(user) { return { type: userConstants.LOGIN_SUCCESS, user } }\r\n function failure(error) { return { type: userConstants.LOGIN_FAILURE, error } }\r\n}\r\n\r\nfunction changepassword(inputs) {\r\n return dispatch => {\r\n dispatch(request({inputs}));\r\n userService.changepassword(inputs)\r\n .then(\r\n inputs => { \r\n dispatch(success());\r\n dispatch(alertActions.success('Password has been changed successfully'));\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(inputs) { return { type: userConstants.CHANGEPASSWORD_REQUEST, inputs } }\r\n function success(inputs) { return { type: userConstants.CHANGEPASSWORD_SUCCESS, inputs } }\r\n function failure(error) { return { type: userConstants.CHANGEPASSWORD_FAILURE, inputs } }\r\n}\r\n\r\nfunction forgotpassword(username) {\r\n return dispatch => {\r\n dispatch(request({ username }));\r\n userService.forgotpassword(username)\r\n .then(\r\n user => { \r\n dispatch(success(user));\r\n dispatch(alertActions.success('Password has been sent to your registered email address.'));\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(user) { return { type: userConstants.FORGOTPASSWORD_REQUEST, user } }\r\n function success(user) { return { type: userConstants.FORGOTPASSWORD_SUCCESS, user } }\r\n function failure(error) { return { type: userConstants.FORGOTPASSWORD_FAILURE, error } }\r\n}\r\nfunction getEmpProfileById(HRMRId) {\r\n return dispatch => {\r\n dispatch(request({ HRMRId })); \r\n userService.getEmpProfileById(HRMRId)\r\n .then(\r\n empProfile => { \r\n dispatch(success(empProfile));\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(empProfile) { return { type: userConstants.GETEMPPROFILE_REQUEST, empProfile } }\r\n function success(empProfile) { return { type: userConstants.GETEMPPROFILE_SUCCESS, empProfile } }\r\n function failure(error) { return { type: userConstants.GETEMPPROFILE_FAILURE, error } }\r\n}\r\nfunction logout() {\r\n userService.logout();\r\n return { type: userConstants.LOGOUT };\r\n}\r\n\r\nfunction register(user) {\r\n return dispatch => {\r\n dispatch(request(user));\r\n\r\n userService.register(user)\r\n .then(\r\n user => { \r\n dispatch(success());\r\n history.push('/login');\r\n dispatch(alertActions.success('Registration successful'));\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(user) { return { type: userConstants.REGISTER_REQUEST, user } }\r\n function success(user) { return { type: userConstants.REGISTER_SUCCESS, user } }\r\n function failure(error) { return { type: userConstants.REGISTER_FAILURE, error } }\r\n}\r\n\r\nfunction getAll() {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n userService.getAll()\r\n .then(\r\n users => dispatch(success(users.response)),\r\n error => dispatch(failure(error.toString()))\r\n );\r\n };\r\n\r\n function request() { return { type: userConstants.GETALL_REQUEST } }\r\n function success(users) { return { type: userConstants.GETALL_SUCCESS, users } }\r\n function failure(error) { return { type: userConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\n// prefixed function name with underscore because delete is a reserved word in javascript\r\nfunction _delete(id) {\r\n return dispatch => {\r\n dispatch(request(id));\r\n\r\n userService.delete(id)\r\n .then(\r\n user => dispatch(success(id)),\r\n error => dispatch(failure(id, error.toString()))\r\n );\r\n };\r\n\r\n function request(id) { return { type: userConstants.DELETE_REQUEST, id } }\r\n function success(id) { return { type: userConstants.DELETE_SUCCESS, id } }\r\n function failure(id, error) { return { type: userConstants.DELETE_FAILURE, id, error } }\r\n}","import { mytrainingConstants } from '../_constants';\r\nimport { mytrainingtService } from '../_services';\r\nimport { alertActions } from './';\r\nimport { history } from '../_helpers';\r\n\r\nexport const mytrainingActions = {\r\n getAllTrainngs\r\n};\r\n\r\nfunction getAllTrainngs(HRMRUserId,UserId,Year,SearchedText) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n mytrainingtService.getAllTrainngs(HRMRUserId,UserId,Year,SearchedText)\r\n .then(\r\n mytraining => dispatch(success(mytraining.response)),\r\n error =>{ dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: mytrainingConstants.GETALL_REQUEST } }\r\n function success(mytraining) { return { type: mytrainingConstants.GETALL_SUCCESS, mytraining } }\r\n function failure(error) { return { type: mytrainingConstants.GETALL_FAILURE, error } }\r\n}","import { mydocumentConstants } from '../_constants';\r\nimport { mydocumentService } from '../_services';\r\nimport { alertActions } from './';\r\nimport { history } from '../_helpers';\r\n\r\nexport const mydocumentActions = {\r\n getAll,\r\n updateReviewApporveStatus,\r\n delete: _delete,\r\n};\r\n\r\nfunction getAll(HRMRUserId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n mydocumentService.getAll(HRMRUserId)\r\n .then(\r\n mydocument => dispatch(success(mydocument.response)),\r\n error =>{ dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: mydocumentConstants.GETALL_REQUEST } }\r\n function success(mydocument) { return { type: mydocumentConstants.GETALL_SUCCESS, mydocument } }\r\n function failure(error) { return { type: mydocumentConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction updateReviewApporveStatus(PPRepositoryShareId,Activity,IsDownload) {\r\n return dispatch => {\r\n dispatch(request(PPRepositoryShareId,Activity,IsDownload));\r\n\r\n mydocumentService.updateReviewApporveStatus(PPRepositoryShareId,Activity,IsDownload)\r\n .then(\r\n mydocument => dispatch(success(PPRepositoryShareId,Activity,IsDownload)),\r\n error => dispatch(failure(PPRepositoryShareId, error.toString()))\r\n );\r\n };\r\n\r\n function request(PPRepositoryShareId,Activity,IsDownload) { return { type: mydocumentConstants.PPREPODOCSTATUS_REQUEST,PPRepositoryShareId,Activity,IsDownload } }\r\n function success(PPRepositoryShareId,Activity,IsDownload) { return { type: mydocumentConstants.PPREPODOCSTATUS_SUCCESS, PPRepositoryShareId,Activity,IsDownload } }\r\n function failure(PPRepositoryShareId, error) { return { type: mydocumentConstants.PPREPODOCSTATUS_FAILURE, PPRepositoryShareId, error } }\r\n}\r\n\r\n// prefixed function name with underscore because delete is a reserved word in javascript\r\nfunction _delete(id) {\r\n return dispatch => {\r\n dispatch(request(id));\r\n\r\n mydocumentService.delete(id)\r\n .then(\r\n user => dispatch(success(id)),\r\n error => dispatch(failure(id, error.toString()))\r\n );\r\n };\r\n\r\n function request(id) { return { type: mydocumentConstants.DELETE_REQUEST, id } }\r\n function success(id) { return { type: mydocumentConstants.DELETE_SUCCESS, id } }\r\n function failure(id, error) { return { type: mydocumentConstants.DELETE_FAILURE, id, error } }\r\n}","import { adddocumentConstants } from '../_constants';\r\nimport { adddocumentService } from '../_services';\r\nimport { alertActions } from './';\r\nimport { history } from '../_helpers';\r\n\r\nexport const adddocumentActions = {\r\n getCredActList,\r\n getCredDocTypeList,\r\n addCredentialing,\r\n getAllHRSADoc,\r\n getHRSAGapReport,\r\n downloadHRSADoc,\r\n getAll,\r\n hideCredentialDoc,\r\n delete: _delete\r\n};\r\n\r\nfunction getCredActList(UserId,DeptId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n adddocumentService.getCredActList(UserId,DeptId)\r\n .then(\r\n adddocument => dispatch(success(adddocument.response)),\r\n error => dispatch(failure(error.toString()))\r\n );\r\n };\r\n\r\n function request() { return { type: adddocumentConstants.GETALL_REQUEST } }\r\n function success(adddocument) { return { type: adddocumentConstants.GETALL_SUCCESS, adddocument } }\r\n function failure(error) { return { type: adddocumentConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction getCredDocTypeList(UserId,ActId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n adddocumentService.getCredDocTypeList(UserId,ActId)\r\n .then(\r\n docTypeList => dispatch(success(docTypeList.response)),\r\n error => dispatch(failure(error.toString()))\r\n );\r\n };\r\n\r\n function request() { return { type: adddocumentConstants.GETDOCTYPEALL_REQUEST } }\r\n function success(docTypeList) { return { type: adddocumentConstants.GETDOCTYPEALL_SUCCESS, docTypeList } }\r\n function failure(error) { return { type: adddocumentConstants.GETDOCTYPEALL_FAILURE, error } }\r\n}\r\n\r\nfunction addCredentialing(fdata) {\r\n return dispatch => {\r\n dispatch(request());\r\n adddocumentService.addCredentialing(fdata)\r\n .then(\r\n user => { \r\n dispatch(success(user));\r\n // console.log('checking history');\r\n // console.log(history);\r\n // history.push('/');\r\n dispatch(alertActions.success('add successful'));\r\n //window.location = \"/alertdocument\";\r\n },\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request(user) { return { type: adddocumentConstants.LOGIN_REQUEST, user } }\r\n function success(user) { return { type: adddocumentConstants.LOGIN_SUCCESS, user } }\r\n function failure(error) { return { type: adddocumentConstants.LOGIN_FAILURE, error } }\r\n}\r\n\r\nfunction getAllHRSADoc(HRMRUserId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n adddocumentService.getAllHRSADoc(HRMRUserId)\r\n .then(\r\n adddocument => dispatch(success(adddocument.response)),\r\n error =>{ dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: adddocumentConstants.GETALL_REQUEST } }\r\n function success(adddocument) { return { type: adddocumentConstants.GETALL_SUCCESS, adddocument } }\r\n function failure(error) { return { type: adddocumentConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction getHRSAGapReport(HRMRUserId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n adddocumentService.getHRSAGapReport(HRMRUserId)\r\n .then(\r\n adddocument => dispatch(success(adddocument.response)),\r\n error => {\r\n dispatch(failure(error.toString()));\r\n dispatch(alertActions.error(error.toString()));\r\n }\r\n );\r\n };\r\n\r\n function request() { return { type: adddocumentConstants.GETALL_REQUEST } }\r\n function success(adddocument) { return { type: adddocumentConstants.GETALL_SUCCESS, adddocument } }\r\n function failure(error) { return { type: adddocumentConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction getAll(UserId,DeptId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n adddocumentService.getAll(UserId,DeptId)\r\n .then(\r\n adddocument => dispatch(success(adddocument.response)),\r\n error => dispatch(failure(error.toString()))\r\n );\r\n };\r\n\r\n function request() { return { type: adddocumentConstants.GETALL_REQUEST } }\r\n function success(adddocument) { return { type: adddocumentConstants.GETALL_SUCCESS, adddocument } }\r\n function failure(error) { return { type: adddocumentConstants.GETALL_FAILURE, error } }\r\n}\r\n\r\nfunction downloadHRSADoc(docName) {\r\n return dispatch => {\r\n dispatch(request(docName));\r\n\r\n adddocumentService.downloadHRSADoc(docName)\r\n .then(\r\n user => dispatch(success({docName})),\r\n error => dispatch(failure(docName, error.toString()))\r\n );\r\n };\r\n\r\n function request(docName) { return { type: adddocumentConstants.DOWNLOAD_REQUEST, docName } }\r\n function success(docName) { return { type: adddocumentConstants.DOWNLOAD_SUCCESS, docName } }\r\n function failure(docName, error) { return { type: adddocumentConstants.DOWNLOAD_FAILURE, docName, error } }\r\n}\r\nfunction hideCredentialDoc(activityId,credentialingDocId,isHide) {\r\n return dispatch => {\r\n dispatch(request(activityId,credentialingDocId,isHide));\r\n\r\n adddocumentService.hideCredentialDoc(credentialingDocId)\r\n .then(\r\n adddocument => dispatch(success(activityId,credentialingDocId,isHide)),\r\n error => dispatch(failure(credentialingDocId, error.toString()))\r\n );\r\n };\r\n\r\n function request(activityId,credentialingDocId,isHide) { return { type: adddocumentConstants.DELETE_REQUEST,activityId, credentialingDocId,isHide } }\r\n function success(activityId,credentialingDocId,isHide) { return { type: adddocumentConstants.DELETE_SUCCESS, activityId,credentialingDocId,isHide } }\r\n function failure(credentialingDocId, error) { return { type: adddocumentConstants.DELETE_FAILURE, credentialingDocId, error } }\r\n}\r\n// prefixed function name with underscore because delete is a reserved word in javascript\r\nfunction _delete(id) {\r\n return dispatch => {\r\n dispatch(request(id));\r\n\r\n adddocumentService.delete(id)\r\n .then(\r\n user => dispatch(success(id)),\r\n error => dispatch(failure(id, error.toString()))\r\n );\r\n };\r\n\r\n function request(id) { return { type: adddocumentConstants.DELETE_REQUEST, id } }\r\n function success(id) { return { type: adddocumentConstants.DELETE_SUCCESS, id } }\r\n function failure(id, error) { return { type: adddocumentConstants.DELETE_FAILURE, id, error } }\r\n}","import {dashboardConstants} from '../_constants';\r\nimport {dashboardService} from '../_services';\r\nimport {alertActions} from './';\r\nimport {history} from '../_helpers';\r\n\r\nexport const dashboardActions = {\r\n getOrgDetail\r\n};\r\n\r\nfunction getOrgDetail(HRMRId) {\r\n return dispatch => {\r\n dispatch(request());\r\n\r\n dashboardService.getOrgDetail(HRMRId)\r\n .then(\r\n orgDetail => dispatch(success(orgDetail.response)),\r\n error => dispatch(failure(error.toString()))\r\n );\r\n };\r\n\r\n function request() { return { type: dashboardConstants.GET_REQUEST } }\r\n function success(orgDetail) { return { type: dashboardConstants.GET_SUCCESS, orgDetail } }\r\n function failure(error) { return { type: dashboardConstants.GET_FAILURE, error } }\r\n}","import { createBrowserHistory } from 'history';\r\n\r\nexport const history = createBrowserHistory({forceRefresh:true});","// import {createStore,applyMiddleware} from 'redux';\r\n// import thunkMiddleware from 'redux-thunk';\r\n// import {createLogger}from 'redux-logger';\r\n// import rootReducer from '../_reducers';\r\n\r\n// const loggerMiddleware= createLogger();\r\n\r\n// export const store=createStore(\r\n// rootReducer,\r\n// applyMiddleware(thunkMiddleware,loggerMiddleware)\r\n// );\r\n\r\nif (process.env.NODE_ENV === 'production') {\r\n module.exports = require('./store.prod');\r\n } else {\r\n module.exports = require('./store.dev');\r\n }","export function authHeader() {\r\n // return authorization header with jwt token\r\n let user = JSON.parse(localStorage.getItem('userToken'));\r\n if (user && user.token) {\r\n return { 'Authorization': 'Bearer ' + user.token };\r\n } else {\r\n return {};\r\n }\r\n}","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport ReactTable from 'react-table-v6';\r\nimport 'react-table-v6/react-table.css';\r\n\r\nimport Select from \"react-select\";\r\n\r\nimport { configConstants } from '../../../_constants';\r\n\r\nimport { alertActions, mytrainingActions } from '../../../_actions';\r\n\r\nimport { Loader } from '../../Common/Loader'\r\n\r\nimport Pagination from \"../../Common/Pagination\";\r\n\r\nfunction MyTraining(props) {\r\n const alert = useSelector(state => state.alert);\r\n const orgDetail = useSelector(state => state.dashboard);\r\n let orgProfile = orgDetail.items;\r\n let user = useSelector(state => state.authentication.user);\r\n const mytraining = useSelector(state => state.mytraining);\r\n const dispatch = useDispatch();\r\n\r\n let [Loading, setLoading] = useState(false);\r\n // let [yearVal, setYearVal] = useState((new Date()).getFullYear())\r\n let [serachParam, setSearchParam] = useState([{ SearchedText: \"\", Year: (new Date()).getFullYear() }]);\r\n\r\n useEffect(() => {\r\n dispatch(alertActions.clear());\r\n setSearchParam(serachParam => ({ [\"SearchedText\"]: \"\", [\"Year\"]: (new Date()).getFullYear() }));\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n let UserId = user.hrmrUser.userId;\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n dispatch(mytrainingActions.getAllTrainngs(HRMRUserId, UserId, (new Date()).getFullYear(), \"\"));\r\n }\r\n }, []);\r\n\r\n const Item = mytraining.items;\r\n let data = [];\r\n if (Item != undefined && Item != null && Item != []) {\r\n data = Item.filter(training => training.isScormTraining !== true)\r\n }\r\n const columns = [\r\n {\r\n Header: \"#\",\r\n id: \"row\",\r\n maxWidth: 50,\r\n sortable: false,\r\n filterable: false,\r\n Cell: (row) => {\r\n return
{row.index + 1}
;\r\n }\r\n }, {\r\n Header: 'Training Name',\r\n accessor: 'surveyName',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Training Type',\r\n accessor: 'attempType',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Action',\r\n id: \"action\",\r\n sortable: false,\r\n filterable: false,\r\n accessor: row => {\r\n // let id=\"NDFlNDFhMWUtNTNmNy00MTJjLWE5MzYtOTU0MDg1MTA0YzRm\";\r\n // let code=\"c2hhaWxlbmRyYS5rdW1yYXdhdEBiZXlvbmRrZXkuY29t\";\r\n // let e=\"OTQyMg%3D%3D\";\r\n // let s=\"MzY4\";\r\n let id = \"\";\r\n if ((orgDetail != undefined || orgDetail.length != 0) && !orgDetail.loading) {\r\n id = new Buffer.from(orgProfile && orgProfile.organizationId).toString('base64');\r\n }\r\n let code = new Buffer.from(user && user.hrmrUser.email).toString('base64');\r\n let e = new Buffer.from(user && String(user.hrmrUser.hrmrUserId)).toString('base64');\r\n let s = new Buffer.from(row.surveyId).toString('base64');\r\n return (\r\n !row.isResultPass && row.anualYear == (new Date()).getFullYear() ? Launch Training : row.isResultPass && row.anualYear == (new Date()).getFullYear() && row.blsTraining ? <> handleDownloadTrainingCertificate(row.surveyId, row.surveyName)}>Download Certificate | handleDownloadBLSCertificate(row.surveyId, row.surveyName)}>Download BLS Certificate > : row.isResultPass && row.anualYear == (new Date()).getFullYear() ? handleDownloadTrainingCertificate(row.surveyId, row.surveyName)}>Download Certificate : \"\"\r\n );\r\n }\r\n }\r\n , {\r\n Header: \"Date of Completion\",\r\n accessor: 'lastEdited',\r\n sortable: false,\r\n filterable: false,\r\n }]\r\n\r\n const year = (new Date()).getFullYear();\r\n const years = Array.from(new Array(6), (val, index) => year - index);\r\n let optionsYear;\r\n if (years != null) {\r\n optionsYear = years.map(function (year, index) {\r\n return { value: year, label: year };\r\n })\r\n }\r\n const handleChangeSelect = (e, options) => {\r\n const onChangeData = {\r\n value: e.value,\r\n name: e.label,\r\n result: options.find(item => item.value === e.value)\r\n }\r\n //setYearVal(onChangeData.value);\r\n setSearchParam(serachParam => ({ ...serachParam, [\"Year\"]: onChangeData.value }));\r\n };\r\n function handleChange(e) {\r\n const { name, value } = e.target;\r\n setSearchParam(serachParam => ({ ...serachParam, [name]: value }));\r\n }\r\n // useEffect(() => {\r\n // if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n // let UserId = user.hrmrUser.userId;\r\n // let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n // dispatch(mytrainingActions.getAllTrainngs(HRMRUserId, UserId, serachParam.yearVal,serachParam.SearchedText));\r\n // }\r\n // }, [yearVal]);\r\n\r\n let { SearchedText, Year } = serachParam;\r\n function handleSubmit(e) {\r\n e.preventDefault();\r\n console.log(JSON.stringify())\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n let UserId = user.hrmrUser.userId;\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n dispatch(mytrainingActions.getAllTrainngs(HRMRUserId, UserId, Year, SearchedText));\r\n }\r\n }\r\n\r\n function handleDownloadTrainingCertificate(TrainingId, TrainingName) {\r\n setLoading(true);\r\n let HRMRId = user && String(user.hrmrUser.hrmrUserId);\r\n fetch(`${configConstants.API_BASE_PATH}HRTraining/DownloadTrainingCertificate?TrainingId=${TrainingId}&HRMRUserId=${HRMRId}`, {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token\r\n }\r\n })\r\n .then(response => {\r\n response.blob().then(blob => {\r\n let url = window.URL.createObjectURL(blob);\r\n let a = document.createElement('a');\r\n a.href = url;\r\n a.download = TrainingName;\r\n a.click();\r\n });\r\n setLoading(false);\r\n //window.location.href = response.url;\r\n })\r\n .catch(err => {\r\n console.log(\"ERROR: \", err);\r\n setLoading(false);\r\n });\r\n }\r\n\r\n function handleDownloadBLSCertificate(TrainingId, TrainingName) {\r\n setLoading(true);\r\n setLoading('loder true');\r\n let HRMRId = user && String(user.hrmrUser.hrmrUserId);\r\n fetch(`${configConstants.API_BASE_PATH}HRTraining/DownloadBLSCertificate?TrainingId=${TrainingId}&HRMRUserId=${HRMRId}`, {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token\r\n }\r\n })\r\n .then(response => {\r\n response.blob().then(blob => {\r\n let url = window.URL.createObjectURL(blob);\r\n let a = document.createElement('a');\r\n a.href = url;\r\n a.download = \"BLSCard\";\r\n a.click();\r\n });\r\n setLoading(false);\r\n //window.location.href = response.url;\r\n })\r\n .catch(err => {\r\n console.log(\"ERROR: \", err);\r\n setLoading(false);\r\n });\r\n }\r\n return (\r\n \r\n {mytraining.loading && }\r\n {Loading && }\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Instructions :
\r\n
\r\n \r\n Please complete your training and download your Training certificate\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n alert.message &&\r\n
{alert.message}
\r\n }\r\n
\r\n
{\r\n return (\r\n !mytraining.loading && (data === undefined || data.length == 0) ? Sorry, No data to display
: null\r\n )\r\n }}\r\n filterable={false}\r\n />\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nexport { MyTraining };","import React from 'react';\r\nimport \"./loader.css\";\r\n\r\nexport const Loader = () => Loading…
;","export const alertConstants = {\r\n SUCCESS: 'ALERT_SUCCESS',\r\n ERROR: 'ALERT_ERROR',\r\n CLEAR: 'ALERT_CLEAR'\r\n};\r\n","/**\r\n * configConstants\r\n *\r\n * @package onboard\r\n * @subpackage configConstants\r\n * @category Constants\r\n * @DateOfCreation 11 May 2019\r\n * @ShortDescription This is responsible for all config related constants\r\n */\r\n\r\nexport const configConstants = {\r\n API_BASE_PATH : process.env.REACT_APP_API_BASE_PATH,\r\n WP_BASE_PATH : process.env.WP_BASE_PATH,\r\n SUCCESS_CODE : 200,\r\n ERROR_CODE : 400,\r\n EXCEPTION_CODE : 404,\r\n UNAUTHENTICATE_CODE : 401,\r\n FORBIDDEN_CODE : 403,\r\n INACTIVE_USER_CODE : 421,\r\n RESOURCE_TYPE : 1,\r\n LOGIN_TOKEN : '_lgbds',\r\n USER_INFO : '_ugdhs',\r\n START_YEAR : '1970',\r\n END_YEAR : '2019',\r\n START_MONTH : '1',\r\n END_MONTH : '12',\r\n USER_ROLE_ADMIN : 'Admin',\r\n USER_ROLE_TPA : 'TPA',\r\n USER_ROLE_OWNER : 'Owner',\r\n USER_ROLE_MGMT : 'MGMT',\r\n USER_ROLE_MANAGER : 'STRMGR',\r\n USER_ROLE_EMPLOYEE : 'EMPLOYEE',\r\n UNAUTHENTICATE : 'UNAUTHENTICATE',\r\n HIPAAURL : process.env.REACT_APP_HIPAA_BASE_PATH,\r\n HIPAAURLOLD : process.env.REACT_APP_HIPAAOLD_BASE_PATH,\r\n MEDIA_BASE_PATH : process.env.REACT_APP_API_BASE_PATH+'media/',\r\n PROFILE_BASE_PATH : process.env.REACT_APP_API_BASE_PATH+'profile-image/',\r\n DEFAULT_IMAGE_PATH : process.env.PUBLIC_URL+'assets/images/inner-logo.png',\r\n PROFILE_LOAING : process.env.REACT_APP_STATIC_IMAGE_BASE_PATH+'profile-loading.gif',\r\n CONFIRM_ALERT_YES : 'Yes',\r\n CONFIRM_ALERT_NO : 'No',\r\n W4_FORM_ID : 1,\r\n I9_FORM_ID : 2,\r\n WOTC_FORM_ID : 3,\r\n DD_FORM_ID : 4,\r\n A4_FORM_ID : 6,\r\n HIPAAORIGINURL : window.location.origin,\r\n};\r\n","export const userConstants = {\r\n REGISTER_REQUEST: 'USERS_REGISTER_REQUEST',\r\n REGISTER_SUCCESS: 'USERS_REGISTER_SUCCESS',\r\n REGISTER_FAILURE: 'USERS_REGISTER_FAILURE',\r\n\r\n LOGIN_REQUEST: 'USERS_LOGIN_REQUEST',\r\n LOGIN_SUCCESS: 'USERS_LOGIN_SUCCESS',\r\n LOGIN_FAILURE: 'USERS_LOGIN_FAILURE',\r\n \r\n LOGOUT: 'USERS_LOGOUT',\r\n\r\n GETALL_REQUEST: 'USERS_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'USERS_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'USERS_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'USERS_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'USERS_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'USERS_DELETE_FAILURE',\r\n\r\n CHANGEPASSWORD_REQUEST: 'USERS_CHANGEPASSWORD_REQUEST',\r\n CHANGEPASSWORD_SUCCESS: 'USERS_CHANGEPASSWORD_SUCCESS',\r\n CHANGEPASSWORD_FAILURE: 'USERS_CHANGEPASSWORD_FAILURE' ,\r\n \r\n FORGOTPASSWORD_REQUEST: 'USERS_FORGOTPASSWORD_REQUEST',\r\n FORGOTPASSWORD_SUCCESS: 'USERS_FORGOTPASSWORD_SUCCESS',\r\n FORGOTPASSWORD_FAILURE: 'USERS_FORGOTPASSWORD_FAILURE',\r\n\r\n GETEMPPROFILE_REQUEST: 'USERS_GETEMPPROFILE_REQUEST',\r\n GETEMPPROFILE_SUCCESS: 'USERS_GETEMPPROFILE_SUCCESS',\r\n GETEMPPROFILE_FAILURE: 'USERS_GETEMPPROFILE_FAILURE' \r\n};\r\n","export const mytrainingConstants = {\r\n GETALL_REQUEST: 'MYTRAINING_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'MYTRAINING_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'MYTRAINING_GETALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'MYTRAINING_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'MYTRAINING_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'MYTRAINING_DELETE_FAILURE',\r\n};\r\n","export const mydocumentConstants = {\r\n GETALL_REQUEST: 'MYDOCUMENT_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'MYDOCUMENT_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'MYDOCUMENT_GETALL_FAILURE',\r\n\r\n PPREPODOCSTATUS_REQUEST: 'PPREPODOCSTATUS_UPDATE_REQUEST',\r\n PPREPODOCSTATUS_SUCCESS: 'PPREPODOCSTATUS_UPDATE_SUCCESS',\r\n PPREPODOCSTATUS_FAILURE: 'PPREPODOCSTATUS_UPDATE_FAILURE',\r\n\r\n DELETE_REQUEST: 'MYDOCUMENT_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'MYDOCUMENT_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'MYDOCUMENT_DELETE_FAILURE' \r\n};\r\n","export const adddocumentConstants = {\r\n GETALL_REQUEST: 'ADDDOCUMENT_GETALL_REQUEST',\r\n GETALL_SUCCESS: 'ADDDOCUMENT_GETALL_SUCCESS',\r\n GETALL_FAILURE: 'ADDDOCUMENT_GETALL_FAILURE',\r\n\r\n GETDOCTYPEALL_REQUEST: 'ADDDOCUMENT_GETDOCTYPEALL_REQUEST',\r\n GETDOCTYPEALL_SUCCESS: 'ADDDOCUMENT_GETDOCTYPEALL_SUCCESS',\r\n GETDOCTYPEALL_FAILURE: 'ADDDOCUMENT_GETDOCTYPEALL_FAILURE',\r\n\r\n DELETE_REQUEST: 'ADDDOCUMENT_DELETE_REQUEST',\r\n DELETE_SUCCESS: 'ADDDOCUMENT_DELETE_SUCCESS',\r\n DELETE_FAILURE: 'ADDDOCUMENT_DELETE_FAILURE',\r\n \r\n \r\n DOWNLOAD_REQUEST: 'ADDDOCUMENT_DOWNLOAD_REQUEST',\r\n DOWNLOAD_SUCCESS: 'ADDDOCUMENT_DOWNLOAD_SUCCESS',\r\n DOWNLOAD_FAILURE: 'ADDDOCUMENT_DOWNLOAD_FAILURE',\r\n};\r\n","export const dashboardConstants = {\r\n GET_REQUEST: 'ORGDETAIL_GET_REQUEST',\r\n GET_SUCCESS: 'ORGDETAIL_GET_SUCCESS',\r\n GET_FAILURE: 'ORGDETAIL_GET_FAILURE',\r\n};\r\n","import React from 'react';\r\nimport { Route, Redirect } from 'react-router-dom';\r\n\r\nexport const PrivateRoute = ({ component: Component, ...rest }) => (\r\n (\r\n localStorage.getItem('userToken')\r\n ? \r\n : \r\n )} />\r\n)","import React from 'react';\r\nimport { Link } from 'react-router-dom'\r\nimport { configConstants } from '../../_constants';\r\n\r\nfunction Header(props) {\r\n return (\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Home \r\n About Us \r\n Pricing \r\n Testimonials \r\n {/* Sign In */}\r\n\r\n {/* Home \r\n About Us \r\n Pricing \r\n Testimonials */}\r\n \r\n \r\n
Sign In \r\n
\r\n {/*
Admin Portal */}\r\n
Provider / Staff Portal\r\n
\r\n
\r\n \r\n {/* Sign In */}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nexport { Header };","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport {configConstants} from '../../_constants';\r\nimport Moment from 'moment';\r\n\r\nfunction Footer(props) {\r\n const currentYear = Moment().year();\r\n return (\r\n\r\n \r\n {/* */}\r\n \r\n \r\n {/* */}\r\n {\r\n localStorage.getItem('userToken') ?\r\n
\r\n \r\n
\r\n
© {currentYear} - e2o Health. All rights reserved
\r\n
\r\n
\r\n \r\n :\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n About Us\r\n \r\n
\r\n HIPAA Watchdog is comprehensive and affordable HIPAA Compliance software delivered as a service that provides a secure and confidential approach for healthcare organizations to maintain and track their organization’s privacy and security efforts. The goal of HIPAA Watchdog is to help demystify HIPAA to create a culture of HIPAA compliance within the healthcare community.\r\n
\r\n
\r\n
\r\n
\r\n Contacts\r\n \r\n
\r\n \r\n \r\n 21151 S. Western Avenue, Suite 144\r\n Torrance, CA 90501\r\n \r\n
\r\n
\r\n \r\n \r\n (800) 409-0096\r\n \r\n
\r\n
\r\n \r\n \r\n support@e2ohealth.com\r\n \r\n
\r\n
\r\n
\r\n
\r\n Follow Us\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n Newsletter\r\n \r\n
\r\n Subscribe to our newsletter.\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
© {currentYear} - e2o Health. All rights reserved
\r\n\r\n
\r\n
\r\n \r\n }\r\n {/* */}\r\n\r\n
\r\n\r\n \r\n );\r\n}\r\n\r\nexport {Footer};","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { NavLink, Link, Route } from 'react-router-dom';\r\n\r\nimport { alertActions, dashboardActions } from '../../_actions';\r\n\r\nfunction ListItemLink({ to, ...rest }) {\r\n return (\r\n (\r\n \r\n \r\n \r\n )}\r\n />\r\n );\r\n}\r\n\r\n\r\nfunction LayoutDashbaord(props) {\r\n const orgDetail = useSelector(state => state.dashboard);\r\n const user = useSelector(state => state.authentication.user);\r\n const dispatch = useDispatch();\r\n let HRMRId = \"\"; let HRMRUserName = \"\";\r\n if (user != \"undefined\" && user != null && user != [] && !user.loding) {\r\n HRMRId = user.hrmrUser.hrmrUserId;\r\n HRMRUserName = user.hrmrUser.firstName + \" \" + user.hrmrUser.lastName;\r\n }\r\n\r\n useEffect(() => {\r\n dispatch(alertActions.clear());\r\n dispatch(dashboardActions.getOrgDetail(HRMRId));\r\n }, []);\r\n\r\n let orgProfile = orgDetail.items;\r\n\r\n\r\n function openCredentiallingForm() {\r\n window.location.href = \"/EmployeeCredentialForm\";\r\n }\r\n\r\n\r\n\r\n\r\n function getDataFromIFrame() {\r\n let test = document.getElementsById('hidHRMRId');\r\n }\r\n\r\n return (\r\n\r\n\r\n // \r\n
\r\n {/* */}\r\n \r\n {/* \r\n */}\r\n \r\n {/* */}\r\n \r\n Toggle navigation \r\n \r\n {orgProfile && orgProfile.organizationName} \r\n\r\n {/* */}\r\n \r\n \r\n \r\n {/* \r\n */}\r\n \r\n {/* */}\r\n \r\n {/* */}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {/* */}\r\n {/* @{Html.RenderAction(\"Index\", \"Navigation\");} */}\r\n \r\n \r\n {/* */}\r\n \r\n {/* */}\r\n \r\n //
\r\n\r\n );\r\n}\r\n\r\nexport { LayoutDashbaord };","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { userActions } from '../../_actions';\r\nimport { alertActions } from '../../_actions';\r\n\r\nimport { history } from '../../_helpers';\r\nimport { Link } from 'react-router-dom';\r\n\r\nimport { configConstants } from '../../_constants'\r\n\r\nfunction Login() {\r\n const alert = useSelector(state => state.alert);\r\n\r\n const [inputs, setInputs] = useState({ username: '', password: '' });\r\n const [submitted, setSubmitted] = useState(false);\r\n const { username, password } = inputs;\r\n const loggingIn = useSelector(state => state.authentication.loggingIn);\r\n const dispatch = useDispatch();\r\n\r\n // reset login status\r\n useEffect(() => {\r\n // history.listen((location, action) => {\r\n // // clear alert on location change\r\n // dispatch(alertActions.clear());\r\n // });\r\n dispatch(alertActions.clear());\r\n dispatch(userActions.logout());\r\n }, []);\r\n\r\n function handleChange(e) {\r\n const { name, value } = e.target;\r\n setInputs(inputs => ({ ...inputs, [name]: value }));\r\n }\r\n\r\n function handleSubmit(e) {\r\n e.preventDefault();\r\n\r\n setSubmitted(true);\r\n if (username && password) {\r\n dispatch(userActions.login(username, password));\r\n }\r\n }\r\n\r\n return (\r\n\r\n // \r\n //
Login \r\n //
\r\n //
\r\n\r\n\r\n \r\n
\r\n {/*
*/}\r\n
\r\n
Sign In Provider / Staff Portal \r\n \r\n
\r\n
\r\n
Please enter your username and password to log in.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n );\r\n}\r\n\r\nexport { Login };","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { userActions } from '../../_actions';\r\nimport { alertActions } from '../../_actions';\r\n\r\nimport { history } from '../../_helpers';\r\n\r\nimport { Loader } from '../Common/Loader';\r\n\r\nfunction ChangePassword(props) {\r\n const user = useSelector(state => state.authentication.user);\r\n const changepassword = useSelector(state => state.changepassword.changepassword);\r\n const dispatch = useDispatch();\r\n\r\n const [cpass, setCpass] = useState(false);\r\n const [passStrenth, setPassStrenth] = useState(false);\r\n const [submitted, setSubmitted] = useState(false);\r\n const [isDisabled, setIsDisabled] = useState(false);\r\n const [inputs, setInputs] = useState({\r\n username: user.hrmrUser.userName,\r\n oldPassword: '',\r\n newPassword: '',\r\n confirmPassword: ''\r\n });\r\n const alert = useSelector(state => state.alert);\r\n const { username, oldPassword, newPassword, confirmPassword } = inputs;\r\n // reset login status\r\n useEffect(() => {\r\n dispatch(alertActions.clear());\r\n // history.listen((location, action) => {\r\n // // clear alert on location change\r\n // dispatch(alertActions.clear());\r\n // });\r\n }, []);\r\n\r\n function handleChange(e) {\r\n const { name, value } = e.target;\r\n setInputs(inputs => ({ ...inputs, [name]: value }));\r\n }\r\n\r\n function handleChangePwdVal(e) {\r\n const { name, value } = e.target;\r\n setInputs(inputs => ({ ...inputs, [name]: value }));\r\n }\r\n\r\n function handleSubmit(e) {\r\n e.preventDefault();\r\n setSubmitted(true);\r\n\r\n if (oldPassword && newPassword && confirmPassword) {\r\n var reg = /^(?=.*[0-9])(?=.*[!@#$%^&*])[a-zA-Z0-9!@#$%^&*]{6,16}$/;\r\n var test = reg.test(newPassword);\r\n if (test) {\r\n setPassStrenth(false);\r\n if (newPassword !== confirmPassword) {\r\n setCpass(true);\r\n } else {\r\n dispatch(userActions.changepassword(inputs));\r\n //setInputs(inputs => ({ username: user.hrmrUser.userName, oldPassword: '', newPassword: '', confirmPassword: '' }))\r\n }\r\n } else {\r\n setPassStrenth(true);\r\n }\r\n }\r\n else {\r\n setCpass(false);\r\n }\r\n }\r\n useEffect(() => {\r\n if (changepassword === null) {\r\n setIsDisabled(true);\r\n setTimeout(() => {\r\n history.push('/EmpDashboard')\r\n }, 4000)\r\n }\r\n }, [changepassword]);\r\n\r\n function resetCntrl(event) {\r\n setInputs({\r\n oldPassword: '',\r\n newPassword: '',\r\n confirmPassword: ''\r\n });\r\n }\r\n return (\r\n \r\n {changepassword &&
}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Instructions:
\r\n
\r\n \r\n To change your password, provide the folowing information, and then click the Change Password button.\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {alert.message &&\r\n
{alert.message}
\r\n }\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nexport { ChangePassword };","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { userActions } from '../../_actions';\r\nimport { alertActions } from '../../_actions';\r\n\r\nimport { history } from '../../_helpers';\r\nimport { Link } from 'react-router-dom';\r\n\r\nimport { Loader } from '../Common/Loader';\r\n\r\nfunction ForgotPassword(props) {\r\n\r\n const alert = useSelector(state => state.alert);\r\n const forgotpassword = useSelector(state => state.forgotpassword.forgotpassword);\r\n\r\n const [inputs, setInputs] = useState({\r\n username: '',\r\n });\r\n const [submitted, setSubmitted] = useState(false);\r\n const { username } = inputs;\r\n // const loggingIn = useSelector(state => state.authentication.loggingIn);\r\n const dispatch = useDispatch();\r\n\r\n // reset login status\r\n useEffect(() => {\r\n history.listen((location, action) => {\r\n // clear alert on location change\r\n dispatch(alertActions.clear());\r\n });\r\n\r\n dispatch(userActions.logout());\r\n }, []);\r\n\r\n function handleChange(e) {\r\n const { name, value } = e.target;\r\n setInputs(inputs => ({ ...inputs, [name]: value }));\r\n }\r\n\r\n function handleSubmit(e) {\r\n e.preventDefault();\r\n \r\n setSubmitted(true);\r\n if (username) {\r\n dispatch(userActions.forgotpassword(username));\r\n }\r\n }\r\n\r\n return (\r\n \r\n {forgotpassword &&
}\r\n
\r\n
\r\n
Forgot Password \r\n
To reset your password, begin by entering your user ID
\r\n
\r\n
\r\n {alert.message &&\r\n
{alert.message}
\r\n }\r\n
\r\n
\r\n\r\n );\r\n\r\n}\r\n\r\nexport { ForgotPassword };","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport Moment from 'moment';\r\n\r\nimport { configConstants } from '../../../_constants'\r\n\r\nimport { alertActions, userActions, mytrainingActions, adddocumentActions } from '../../../_actions';\r\n\r\nconst EmpDashboard = (props) => {\r\n const dispatch = useDispatch();\r\n const user = useSelector(state => state.authentication.user);\r\n const orgDetail = useSelector(state => state.dashboard);\r\n const mytraining = useSelector(state => state.mytraining);\r\n const mydocs = useSelector(state => state.adddocument);\r\n let orgProfile = orgDetail.items;\r\n let date = Moment(new Date()).format('MM-DD-YYYY')\r\n\r\n useEffect(() => {\r\n dispatch(alertActions.clear());\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n let UserId = user.hrmrUser.userId;\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n let SearchedText = \"\";\r\n dispatch(mytrainingActions.getAllTrainngs(HRMRUserId, UserId, (new Date()).getFullYear(), SearchedText));\r\n dispatch(adddocumentActions.getAllHRSADoc(HRMRUserId));\r\n }\r\n }, []);\r\n\r\n function convertDate(str) {\r\n var date = new Date(str),\r\n mnth = (\"0\" + (date.getMonth() + 1)).slice(-2),\r\n day = (\"0\" + date.getDate()).slice(-2);\r\n return [date.getFullYear(), mnth, day].join(\"-\");\r\n }\r\n\r\n let employeeName = \"\";\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n employeeName = user.hrmrUser.firstName + \" \" + user.hrmrUser.lastName;\r\n }\r\n const trainingItem = mytraining.items;\r\n let trainingData = [];\r\n if (trainingItem != undefined && trainingItem != null && trainingItem != []) {\r\n trainingData = trainingItem.filter(training => training.isScormTraining !== true)\r\n }\r\n let hrsaItem = mydocs.items;\r\n let hrsaData = []; let hrsaDate = [];\r\n if (hrsaItem != undefined && hrsaItem != null && hrsaItem != []) {\r\n // hrsaDate = hrsaItem.filter(hrsacred=>hrsacred.lstHRSACredDoc.some(hrsadoc=>hrsadoc.dateofExpiry!=null))\r\n //hrsaData = hrsaItem.filter(hrsacred=>hrsacred.lstHRSACredDoc!=null)\r\n hrsaData = hrsaItem.filter(hrsacred => hrsacred.lstHRSACredDoc != null)\r\n .map(item => ({\r\n ...item,\r\n lstHRSACredDoc: item.lstHRSACredDoc\r\n .filter(child => convertDate(child.dateofExpiry) <= convertDate(new Date()))\r\n }))\r\n .filter(item => item.lstHRSACredDoc.length > 0)\r\n }\r\n return (\r\n \r\n {/*
\r\n \r\n
\r\n
DashBoard \r\n \r\n
\r\n */}\r\n
\r\n {/* */}\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
{orgProfile && orgProfile.organizationName} \r\n
Account Status: Active Renewal Date: {date} \r\n\r\n
\r\n
\r\n
\r\n
\r\n {/* */}\r\n
\r\n {/* */}\r\n
\r\n {/* // */}\r\n {/* */}\r\n \r\n
\r\n
\r\n
\r\n Please click on custmized dashboard on the top right hand side of the screen to select the widgets you would like to view.\r\n
\r\n
\r\n
\r\n {/* */}\r\n
\r\n
\r\n
\r\n
\r\n
Training \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {/* */}\r\n
\r\n
\r\n {mytraining.loading &&
}\r\n
\r\n
\r\n
\r\n {/* */}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Documents \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {/* */}\r\n
\r\n
\r\n {mydocs.loading &&
}\r\n
\r\n
\r\n
\r\n {/* */}\r\n
\r\n
\r\n
\r\n {/* */}\r\n \r\n
\r\n );\r\n}\r\n\r\nexport { EmpDashboard };","import { useState, useEffect } from 'react';\r\n\r\nfunction getWindowDimensions() {\r\n const { innerWidth: width, innerHeight: height } = window;\r\n return {\r\n width,\r\n height\r\n };\r\n}\r\n\r\nexport default function useWindowDimensions() {\r\n const [windowDimensions, setWindowDimensions] = useState(getWindowDimensions());\r\n\r\n useEffect(() => {\r\n function handleResize() {\r\n setWindowDimensions(getWindowDimensions());\r\n }\r\n\r\n window.addEventListener('resize', handleResize);\r\n return () => window.removeEventListener('resize', handleResize);\r\n }, []);\r\n\r\n return windowDimensions;\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport Moment from 'moment';\r\nimport { alertActions, userActions, mytrainingActions, adddocumentActions } from '../../../_actions';\r\nimport { configConstants } from '../../../_constants';\r\nimport { Loader } from '../../Common/Loader'\r\nimport useWindowDimensions from '../../Common/WindowDimensions';\r\nvar CryptoJS = require(\"crypto-js\");\r\n\r\n\r\nconst EmployeeCredentialForm = (props) => {\r\n const user = useSelector(state => state.authentication.user);\r\n var url = '';\r\n const { height, width } = useWindowDimensions();\r\n var _h = parseInt(height) - 180;\r\n var formHeight = `${_h}px`;\r\n let [Loading, setLoading] = useState(true);\r\n const mydocs = useSelector(state => state.mydocument);\r\n\r\n useEffect(() => {\r\n document.getElementById('credentiallingProfie').onload = function () {\r\n setLoading(false);\r\n };\r\n }, []);\r\n\r\n\r\n function encryptKey(userId) {\r\n var key = CryptoJS.enc.Utf8.parse('8080808080808080');\r\n var iv = CryptoJS.enc.Utf8.parse('8080808080808080');\r\n var encryptedUserId = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(userId), key,\r\n {\r\n keySize: 128 / 8,\r\n iv: iv,\r\n mode: CryptoJS.mode.CBC,\r\n padding: CryptoJS.pad.Pkcs7\r\n });\r\n encryptedUserId = encryptedUserId.toString().replace(/\\+/g, 'xMl3Jk');\r\n return encryptedUserId;\r\n }\r\n\r\n if (user != undefined) {\r\n let userId = user.hrmrUser.userId;\r\n let hrmrUserId = user.hrmrUser.hrmrUserId;\r\n let userEmail=user.hrmrUser.userEmail;\r\n let encryptedUserId = encryptKey(userId);\r\n // url = `${configConstants.HIPAAURL}EMRUser/CredentialingProfile/${userId}?HRMRID=${hrmrUserId}&strView=CredentialingStuff&key=${encryptedUserId}`;\r\n url = `${configConstants.HIPAAURL}authenticate?hrmrUserId=${hrmrUserId}&email=${userEmail}&route=employee-credentialing-profile`;\r\n var encUrl = encodeURI(url);\r\n }\r\n\r\n\r\n var _panelStyle = {\r\n height: `${formHeight}`\r\n }\r\n return (\r\n\r\n \r\n {mydocs.loading &&
}\r\n {Loading &&
}\r\n
\r\n {/* */}\r\n \r\n\r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n );\r\n}\r\n\r\nexport { EmployeeCredentialForm };","import React from \"react\";\r\n\r\nexport default class DropDownComponent extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n searchInput: \"\"\r\n };\r\n }\r\n\r\n handleChange = event => {\r\n this.setState({ searchInput: event.target.value }, () =>\r\n this.globalSearch()\r\n );\r\n };\r\n\r\n globalSearch = () => {\r\n let { searchInput } = this.state;\r\n let filteredData = this.props.data.filter(value => {\r\n return (\r\n value.activity.toLowerCase().includes(searchInput.toLowerCase()) ||\r\n value.dateVerified.toLowerCase().includes(searchInput.toLowerCase()) \r\n //||\r\n // value.visits.toString().toLowerCase().includes(searchInput.toLowerCase())\r\n );\r\n });\r\n this.props.handleSetData(filteredData);\r\n };\r\n\r\n render() {\r\n return (\r\n <>\r\n \r\n >\r\n );\r\n }\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport Moment from 'moment';\r\n\r\nimport ReactTable from 'react-table-v6';\r\nimport 'react-table-v6/react-table.css';\r\n\r\nimport { configConstants } from '../../../_constants';\r\n\r\nimport { alertActions, adddocumentActions } from '../../../_actions';\r\n\r\nimport { Loader } from '../../Common/Loader'\r\n\r\nimport Pagination from \"../../Common/Pagination\";\r\nimport AlertDocSearch from \"./AlertDocSearch\";\r\n\r\nfunction AlertDocument(props) {\r\n const alert = useSelector(state => state.alert);\r\n let [Loading, setLoading] = useState(false);\r\n const mydocs = useSelector(state => state.adddocument);\r\n const user = useSelector(state => state.authentication.user);\r\n const dispatch = useDispatch();\r\n let [serachResult, setSerachResult] = useState([{ data: [], filteredData: [], searchInput: \"\" }]);\r\n\r\n useEffect(() => {\r\n dispatch(alertActions.clear());\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n dispatch(adddocumentActions.getAllHRSADoc(HRMRUserId));\r\n // dispatch(adddocumentActions.getHRSAGapReport());\r\n }\r\n }, []);\r\n\r\n function handleDeleteUser(id) {\r\n dispatch(adddocumentActions.delete(id));\r\n }\r\n\r\n function handleDownloadDocument(actualFileName, docName) {\r\n //dispatch(adddocumentActions.downloadHRSADoc(docName));\r\n setLoading(true);\r\n let user = JSON.parse(localStorage.getItem('userToken'));\r\n fetch(`${configConstants.API_BASE_PATH}HRTraining/DownloadCredentialingDoc?DocumentName=${docName}`, {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token\r\n }\r\n })\r\n .then(response => {\r\n if (response.ok) {\r\n response.blob().then(blob => {\r\n let url = window.URL.createObjectURL(blob);\r\n let a = document.createElement('a');\r\n a.href = url;\r\n a.download = actualFileName;\r\n a.click();\r\n });\r\n } else (window.alert('File not found!'))\r\n setLoading(false);\r\n })\r\n .catch(err => {\r\n console.log(\"ERROR: \", err);\r\n setLoading(false);\r\n });;\r\n }\r\n\r\n const showExpiryDate = (expDate) => {\r\n if (expDate == (\"1900-01-01T00:00:00\") || expDate == (\"0001-01-01T00:00:00\")) {\r\n return <>-NA- >\r\n }\r\n else {\r\n return <>{Moment(expDate).format('MM-DD-YYYY')} >\r\n }\r\n }\r\n const alertDocument = (expDate) => {\r\n if (Moment.utc(expDate) >= Moment.utc(new Date())) {\r\n return <>>\r\n }\r\n else if (expDate == (\"1900-01-01T00:00:00\") || expDate == (\"0001-01-01T00:00:00\")) {\r\n return <>>\r\n }\r\n else {\r\n return // \r\n }\r\n }\r\n\r\n const Item = mydocs.items;\r\n const data = Item\r\n const columns = [{\r\n Header: \"#\",\r\n id: \"row\",\r\n maxWidth: 50,\r\n sortable: false,\r\n filterable: false,\r\n Cell: (row) => {\r\n return {row.index + 1}
;\r\n }\r\n }, {\r\n Header: 'CREDENTIALING ACTIVITY',\r\n accessor: 'activity',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Verified Date',\r\n accessor: 'dateVerified',\r\n sortable: false,\r\n filterable: false,\r\n Cell: (props) => {\r\n let custom_date = Moment(props.value).format('MM-DD-YYYY')\r\n return {custom_date} \r\n }\r\n }, {\r\n Header: 'Document Type',\r\n accessor: 'lstHRSACredDoc',\r\n sortable: false,\r\n filterable: false,\r\n Cell: (props) => {\r\n let hrsaDOCList = props.value\r\n let outputDoc = [];\r\n hrsaDOCList && hrsaDOCList.map((val) => {\r\n outputDoc.push()//{val.actualFileName} \r\n })\r\n return outputDoc;\r\n }\r\n }, {\r\n Header: 'Expiry Date',\r\n accessor: 'lstHRSACredDoc',\r\n sortable: false,\r\n filterable: false,\r\n Cell: (props) => {\r\n let exp_dateList = props.value\r\n let output = [];\r\n exp_dateList && exp_dateList.map((val) => {\r\n output.push({showExpiryDate(val.dateofExpiry)} \r\n {alertDocument(val.dateofExpiry)}
)\r\n })\r\n return output;\r\n }\r\n }]\r\n\r\n useEffect(() => {\r\n setSerachResult(serachResult => ({ [\"data\"]: data, [\"filteredData\"]: data }));\r\n }, [Item])\r\n\r\n const handleSetData = data => {\r\n setSerachResult(serachResult => ({ [\"filteredData\"]: data }));\r\n };\r\n let { filteredData } = serachResult;\r\n return (\r\n \r\n {mydocs.loading &&
}\r\n {Loading &&
}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Instructions:
\r\n
\r\n \r\n Coming soon\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n alert.message &&\r\n
{alert.message}
\r\n }\r\n
\r\n
{\r\n return (\r\n !mydocs.loading && (filteredData === undefined || filteredData.length == 0) ? Sorry, No data to display
: null\r\n )\r\n }}\r\n />\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n );\r\n}\r\n\r\nexport { AlertDocument };","import React from \"react\";\r\n\r\nexport default class DropDownComponent extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n searchInput: \"\"\r\n };\r\n }\r\n\r\n handleChange = event => {\r\n this.setState({ searchInput: event.target.value }, () =>\r\n this.globalSearch()\r\n );\r\n };\r\n\r\n globalSearch = () => {\r\n let { searchInput } = this.state;\r\n let filteredData = this.props.data.filter(value => {\r\n return (\r\n value.categoryName.toLowerCase().includes(searchInput.toLowerCase()) ||\r\n value.documentName.toLowerCase().includes(searchInput.toLowerCase()) \r\n //||\r\n // value.visits.toString().toLowerCase().includes(searchInput.toLowerCase())\r\n );\r\n });\r\n this.props.handleSetData(filteredData);\r\n };\r\n\r\n render() {\r\n return (\r\n <>\r\n \r\n >\r\n );\r\n }\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport Moment from 'moment';\r\n\r\nimport ReactTable from 'react-table-v6';\r\nimport 'react-table-v6/react-table.css';\r\n\r\nimport axios from 'axios';\r\nimport { configConstants } from '../../../_constants';\r\n\r\nimport { alertActions, mydocumentActions } from '../../../_actions';\r\n\r\nimport { Loader } from '../../Common/Loader'\r\n\r\nimport Pagination from \"../../Common/Pagination\";\r\nimport ReviewDocSerach from \"./ReviewDocSerach\";\r\n\r\nfunction ReviewDocument(props) {\r\n const alert = useSelector(state => state.alert);\r\n const mydocs = useSelector(state => state.mydocument);\r\n const user = useSelector(state => state.authentication.user);\r\n const dispatch = useDispatch();\r\n\r\n let [Loading, setLoading] = useState(false);\r\n // let [templateList,settemplateList]=useState([{templateId: \"\"}])\r\n let [templateList, settemplateList] = useState([]);\r\n\r\n let UserId = \"\";\r\n if (user != \"undefined\" && user != null && user != []) {\r\n UserId = user.hrmrUser.userId;\r\n }\r\n\r\n let onBoarddata = [];// Item\r\n let ppRepodata = [];\r\n let onBoardDocuSign = [];\r\n let Item = mydocs.items;\r\n if (Item != \"undefined\" && Item != null) {\r\n onBoarddata = Item.pPOnBoardDetail;\r\n if (Item.pRepositoryShare != \"undefined\" && Item.pRepositoryShare != null) {\r\n ppRepodata = Item.pRepositoryShare.filter(({ isApproved }) => isApproved);\r\n }\r\n onBoardDocuSign = Item.lstDSTemplateFinal;\r\n }\r\n\r\n\r\n let columnsOnDocuSign = [\r\n {\r\n Header: 'Select',\r\n id: 'Select',\r\n sortable: false,\r\n filterable: false,\r\n accessor: row => {\r\n return (\r\n handleCheckboxChange(e)} />
\r\n )\r\n }\r\n },\r\n {\r\n Header: 'Template Name',\r\n accessor: 'documentName',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Category',\r\n accessor: 'isType',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Documents',\r\n accessor: 'documentPath',\r\n sortable: false,\r\n filterable: false\r\n }\r\n ]\r\n\r\n let columnsOnBoard = [\r\n {\r\n Header: 'Document Name',\r\n accessor: 'documentName',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Category',\r\n accessor: 'categoryName',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Sent Date',\r\n accessor: 'docUploadDate',\r\n sortable: false,\r\n filterable: false,\r\n Cell: (props) => {\r\n let custom_date = Moment(props.value).format('MM-DD-YYYY')\r\n return {custom_date} \r\n }\r\n }\r\n , {\r\n Header: 'Download',\r\n id: 'documentPath',\r\n sortable: false,\r\n filterable: false,\r\n accessor: row => {\r\n return (\r\n // \r\n )\r\n }\r\n }\r\n ]\r\n\r\n let columnsPPRepo = [\r\n {\r\n Header: 'Date',\r\n id: \"Date\",\r\n sortable: false,\r\n filterable: false,\r\n accessor: row => {\r\n return (\r\n row.lstPPRepoShareActivityModel && row.lstPPRepoShareActivityModel.isApprove ? Moment(row.lstPPRepoShareActivityModel.IsApproveDate).format('MM-DD-YYYY') : Moment(row.uploadDate).format('MM-DD-YYYY')\r\n )\r\n }\r\n },\r\n {\r\n Header: 'Document Name',\r\n id: 'documentName',\r\n sortable: false,\r\n filterable: false,\r\n accessor: row => {\r\n return \r\n }\r\n }, {\r\n Header: 'Status',\r\n id: 'Status',\r\n sortable: false,\r\n filterable: false,\r\n accessor: row => {\r\n return (\r\n (row.lstPPRepoShareActivityModel != \"undefined\" && row.lstPPRepoShareActivityModel != null && row.lstPPRepoShareActivityModel != \"[]\") ? (row.lstPPRepoShareActivityModel[0].isApprove && row.lstPPRepoShareActivityModel[0].isReview) ? Reviewed and Approved : row.lstPPRepoShareActivityModel[0].isReview ? Reviewed : row.lstPPRepoShareActivityModel[0].isApprove ? Approved : None : None \r\n )\r\n }\r\n }\r\n , {\r\n Header: 'comments',\r\n accessor: 'comments',\r\n sortable: false,\r\n filterable: false,\r\n }, {\r\n Header: 'Action',\r\n id: 'Action',\r\n sortable: false,\r\n filterable: false,\r\n accessor: row => {\r\n return (\r\n //(row.lstPPRepoShareActivityModel != \"undefined\" && row.lstPPRepoShareActivityModel != null && row.lstPPRepoShareActivityModel != \"[]\") ? (row.lstPPRepoShareActivityModel[0].isApprove && row.lstPPRepoShareActivityModel[0].isReview) ? <>Reviewed Approved > : row.lstPPRepoShareActivityModel[0].isReview ? <>Reviewed Approved > : row.lstPPRepoShareActivityModel[0].isApprove ? <>Reviewed Approved > : <>Reviewed Approved > : <>Reviewed Approved >\r\n (row.lstPPRepoShareActivityModel != \"undefined\" && row.lstPPRepoShareActivityModel != null && row.lstPPRepoShareActivityModel != \"[]\") ? <> handleUpdateReviewApporveStatus(row.ppRepositoryShareId, row.isType, 1, row.documentName, row.documentPath)}> Review handleUpdateReviewApporveStatus(row.ppRepositoryShareId, row.isType, 0, row.documentName, row.documentPath)}> Approve > : <> handleUpdateReviewApporveStatus(row.ppRepositoryShareId, row.isType, 1, row.documentName, row.documentPath)}> Review handleUpdateReviewApporveStatus(row.ppRepositoryShareId, row.isType, 0, row.documentName, row.documentPath)}> Approve >\r\n )\r\n }\r\n }\r\n ]\r\n let [serachResult, setSerachResult] = useState([{ data: [], filteredData: [], searchInput: \"\" }]);\r\n\r\n useEffect(() => {\r\n dispatch(alertActions.clear());\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n dispatch(mydocumentActions.getAll(HRMRUserId));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n setSerachResult(serachResult => ({ [\"data\"]: onBoarddata, [\"filteredData\"]: onBoarddata }));\r\n }, [Item])\r\n\r\n useEffect(() => {\r\n console.log(templateList);\r\n }, [templateList]);\r\n\r\n function handleDownloadDoc(FileName, FilePath) {\r\n setLoading(true);\r\n let user = JSON.parse(localStorage.getItem('userToken'));\r\n fetch(`${configConstants.API_BASE_PATH}HRTraining/DownloadPPRepositoryDoc?DocumentName=${FilePath}`, {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token\r\n }\r\n })\r\n .then(response => {\r\n if (response.ok) {\r\n response.blob().then(blob => {\r\n let url = window.URL.createObjectURL(blob);\r\n let a = document.createElement('a');\r\n a.href = url;\r\n a.download = FileName;\r\n a.click();\r\n });\r\n } else (window.alert('File not found!'))\r\n setLoading(false);\r\n })\r\n .catch(err => {\r\n console.log(\"ERROR: \", err);\r\n setLoading(false);\r\n });;\r\n }\r\n function handleDownloadOnboardSignDoc(UserId, fileName) {\r\n setLoading(true);\r\n let user = JSON.parse(localStorage.getItem('userToken'));\r\n fetch(`${configConstants.API_BASE_PATH}HRTraining/DownloadOnBoardDoc?UserId=${UserId}&fileName=${fileName}`, {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token\r\n }\r\n })\r\n .then(response => {\r\n if (response.ok) {\r\n response.blob().then(blob => {\r\n let url = window.URL.createObjectURL(blob);\r\n let a = document.createElement('a');\r\n a.href = url;\r\n a.download = fileName;\r\n a.click();\r\n });\r\n } else (window.alert('File not found!'))\r\n setLoading(false);\r\n })\r\n .catch(err => {\r\n console.log(\"ERROR: \", err);\r\n setLoading(false);\r\n });\r\n }\r\n function handleUpdateReviewApporveStatus(PPRepositoryShareId, Activity, IsDownload, FileName, FilePath) {\r\n setLoading(true);\r\n dispatch(mydocumentActions.updateReviewApporveStatus(PPRepositoryShareId, Activity, IsDownload));\r\n if (IsDownload == 1) {\r\n handleDownloadDoc(FileName, FilePath)\r\n }\r\n setLoading(false);\r\n }\r\n function handleEmailDocuSignDefaultTemplate(UserId) {\r\n const isEmpty = (value) => value === undefined || value === null || value === '';\r\n const selectTemplate = templateList.some((item) => isEmpty(item.value));\r\n if (templateList.length) {\r\n console.log('handle event done');\r\n console.log(selectTemplate);\r\n setLoading(true);\r\n let user = JSON.parse(localStorage.getItem('userToken'));\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n var postData = {\r\n UserId: UserId,\r\n HRMRId: HRMRUserId,\r\n TemplateList: templateList\r\n };\r\n // fetch(`${configConstants.API_BASE_PATH}HRTraining/EmailDocuSignDefaultTemplate?UserId=${UserId}&HRMRId=${HRMRUserId}&TemplateList=${templateList}`, {\r\n // headers: {\r\n // 'Authorization': 'Bearer ' + user.token\r\n // }\r\n // })\r\n console.log(postData);\r\n axios.post(`${configConstants.API_BASE_PATH}HRTraining/EmailDocuSignDefaultTemplate`, JSON.stringify(postData), {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token,\r\n 'Content-Type': 'application/json'\r\n }\r\n }).then(response => {\r\n if (response.ok) {\r\n } else (window.alert('Server Issue!'))\r\n setLoading(false);\r\n })\r\n .catch(err => {\r\n console.log(\"ERROR: \", err);\r\n setLoading(false);\r\n });\r\n\r\n } else {\r\n window.alert('Please select templates to send e-mail');\r\n }\r\n }\r\n function handleCheckboxChange(e) {\r\n const { name, value } = e.target;\r\n //const list = [...templateList];\r\n //list[index][\"templateId\"] = value;\r\n //settemplateList(templateList => ({ [\"templateId\"]: value}));\r\n if (e.target.checked) {\r\n settemplateList([\r\n ...templateList,\r\n {\r\n value\r\n },\r\n ]);\r\n } else {\r\n settemplateList(\r\n templateList.filter((filt) => filt.value !== value),\r\n );\r\n }\r\n console.log('hi event');\r\n console.log(value);\r\n }\r\n const handleSetData = data => {\r\n setSerachResult(serachResult => ({ [\"filteredData\"]: data }));\r\n };\r\n let { filteredData } = serachResult;\r\n return (\r\n \r\n {mydocs.loading &&
}\r\n {Loading &&
}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Instructions:
\r\n
\r\n \r\n Please review the document carefully and then approve (sign) it\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {/*
\r\n
\r\n
\r\n
\r\n Search Here: \r\n \r\n
\r\n
\r\n
\r\n
*/}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n alert.message &&\r\n
{alert.message}
\r\n }\r\n
\r\n
\r\n {/* handleEmailDocuSignDefaultTemplate(UserId)}>\r\n Send Document\r\n */}\r\n
\r\n
\r\n
\r\n
Default Templates: \r\n \r\n
\r\n
{\r\n return (\r\n !mydocs.loading && (onBoardDocuSign === undefined || onBoardDocuSign.length == 0) ? Sorry, No data to display
: null\r\n )\r\n }}\r\n />\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n alert.message &&\r\n
{alert.message}
\r\n }\r\n
\r\n
Onboarding documents : \r\n \r\n
\r\n
{\r\n return (\r\n !mydocs.loading && (filteredData === undefined || filteredData.length == 0) ? Sorry, No data to display
: null\r\n )\r\n }}\r\n />\r\n \r\n
\r\n
\r\n
\r\n
Review and Approval Status : \r\n \r\n
\r\n
{\r\n return (\r\n !mydocs.loading && (ppRepodata === undefined || ppRepodata.length == 0) ? Sorry, No data to display
: null\r\n )\r\n }}\r\n />\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nexport { ReviewDocument };","import React, { useState, useEffect } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport axios from \"axios\";\r\nimport { configConstants } from \"../../../_constants\";\r\nimport { Loader } from \"../../Common/Loader\";\r\nimport Popup from \"reactjs-popup\";\r\nimport \"./modal.css\";\r\nimport Select from \"react-select\";\r\nimport DatePicker from \"react-datepicker\";\r\nimport \"react-datepicker/dist/react-datepicker.css\";\r\n\r\nconst AddDocModal = (props) => {\r\n let user = useSelector((state) => state.authentication.user);\r\n let {\r\n showAddDocPopup,\r\n closeAddDocPopup,\r\n docTypeList,\r\n onGapRptModalCloseAfterLoad,\r\n credDefaultChecklist,\r\n credActivityNumber,\r\n } = props;\r\n\r\n let [Loading, setLoading] = useState(false);\r\n const [submitted, setSubmitted] = useState(false);\r\n //let [inputList, setInputList] = useState([{ DocTypeId: \"\", DocType: \"\", CustomShowHide: \"hide\", CustomText: \"test\", FilePath: \"\", ActualFileName: \"\", OriginalDocType: \"\", DateofExpiry: new Date() }]);\r\n let [inputList, setInputList] = useState([\r\n {\r\n DocTypeId: \"\",\r\n DocType: \"\",\r\n CustomShowHide: \"hide\",\r\n CustomText: \"test\",\r\n FilePath: \"\",\r\n ActualFileName: \"\",\r\n OriginalDocType: \"\",\r\n DateofExpiry: null,\r\n isExpiration: false,\r\n isDocRequired: false,\r\n },\r\n ]);\r\n let [allInputs, SetallInputs] = useState({\r\n credActivity: \"\",\r\n verifiedDate: new Date(),\r\n docTypeAry: inputList,\r\n note: \"\",\r\n activityTextShowHide: \"hide\",\r\n activityNumberText: \"\",\r\n });\r\n let [docButtonHide, setdocButtonHide] = useState(false);\r\n\r\n const handleChangeDate = (date) => {\r\n SetallInputs((allInputs) => ({ ...allInputs, [\"verifiedDate\"]: date }));\r\n };\r\n\r\n function handleChange(e) {\r\n const { name, value } = e.target;\r\n SetallInputs((allInputs) => ({ ...allInputs, [name]: value }));\r\n }\r\n\r\n ////////// * Start * Repeat dom value funtionality//////////////\r\n\r\n const handleInputChangeDocType = (e, options, index) => {\r\n const onChangeData = {\r\n value: e.value,\r\n name: e.label,\r\n result: options.find((item) => item.docTypeId === e.value),\r\n };\r\n // console.log(index+' here doc type '+onChangeData.value);\r\n // return onChangeData;\r\n const list = [...inputList];\r\n list[index][\"DocTypeId\"] = onChangeData.value;\r\n list[index][\"DocType\"] = onChangeData.name;\r\n list[index][\"isExpiration\"] = onChangeData.result.isExpiration;\r\n list[index][\"isDocRequired\"] = onChangeData.result.isDocRequired;\r\n if (onChangeData.name == \"Custom\") {\r\n list[index][\"CustomShowHide\"] = \"show\";\r\n list[index][\"CustomText\"] = \"\";\r\n } else {\r\n list[index][\"CustomShowHide\"] = \"hide\";\r\n }\r\n setInputList(list);\r\n };\r\n\r\n // if(credDefaultChecklist){\r\n // SetallInputs(allInputs => ({ ...allInputs, [\"activityTextShowHide\"]: \"show\" }));\r\n // };\r\n\r\n let ItemDocType = docTypeList;\r\n if (credDefaultChecklist) {\r\n ItemDocType = docTypeList.filter((todo) => todo.docType != \"Custom\");\r\n }\r\n let optionsDocType;\r\n if (ItemDocType != null) {\r\n optionsDocType = ItemDocType.map(function (credDocType) {\r\n return { value: credDocType.docTypeId, label: credDocType.docType };\r\n });\r\n }\r\n\r\n const handleFileChangeDocFile = (e, index) => {\r\n const { name, value } = e.target;\r\n const list = [...inputList];\r\n //setFile(file=e.target.files[0])\r\n e.preventDefault();\r\n // Get the file Id\r\n let id = e.target.id;\r\n // Create an instance of FileReader API\r\n let file_reader = new FileReader();\r\n // Get the actual file itself\r\n let file = e.target.files[0];\r\n if (file != \"undefined\" && file != undefined) {\r\n if (file.size <= 0) {\r\n window.alert(\"Please upload a file greater than 0 kb\");\r\n e.target.value = null;\r\n list[index][\"FilePath\"] = \"\";\r\n list[index][\"ActualFileName\"] = \"\";\r\n list[index][\"OriginalDocType\"] = \"\";\r\n setInputList(list);\r\n return false;\r\n } else {\r\n let filename = e.target.files[0].name;\r\n let filetype = e.target.files[0].type;\r\n filename = filename.replace(/'/g, \"\");\r\n file_reader.onload = () => {\r\n // After uploading the file\r\n // appending the file to our state array\r\n // set the object keys and values accordingly\r\n //setFiles([...files, { file_id: id, file_name: filename, uploaded_file: file_reader.result }]);\r\n list[index][\"FilePath\"] = file_reader.result;\r\n list[index][\"ActualFileName\"] = filename;\r\n list[index][\"OriginalDocType\"] = filetype;\r\n setInputList(list);\r\n };\r\n // reading the actual uploaded file\r\n file_reader.readAsDataURL(file);\r\n }\r\n } else {\r\n e.target.value = null;\r\n list[index][\"FilePath\"] = \"\";\r\n list[index][\"ActualFileName\"] = \"\";\r\n list[index][\"OriginalDocType\"] = \"\";\r\n setInputList(list);\r\n return false;\r\n }\r\n };\r\n\r\n const handleInputChangeExpiryDate = (e, index) => {\r\n // const { name, value } = e.target;\r\n const list = [...inputList];\r\n list[index][\"DateofExpiry\"] = e;\r\n setInputList(list);\r\n };\r\n\r\n function handleChangeCustomText(e, index) {\r\n const { name, value } = e.target;\r\n const list = [...inputList];\r\n let fileName = value;\r\n fileName = fileName.replace(/'/g, \"\");\r\n list[index][\"DocType\"] = fileName;\r\n list[index][\"CustomText\"] = fileName;\r\n setInputList(list);\r\n }\r\n\r\n // handle click event of the Add button\r\n const handleAddClick = () => {\r\n const list = [...inputList];\r\n //setInputList([...inputList, { DocTypeId: \"\", DocType: \"\", CustomShowHide: \"hide\", CustomText: \"test\", FilePath: \"\", ActualFileName: \"\", OriginalDocType: \"\", DateofExpiry: new Date() }]);\r\n setInputList([\r\n ...inputList,\r\n {\r\n DocTypeId: \"\",\r\n DocType: \"\",\r\n CustomShowHide: \"hide\",\r\n CustomText: \"test\",\r\n FilePath: \"\",\r\n ActualFileName: \"\",\r\n OriginalDocType: \"\",\r\n DateofExpiry: null,\r\n },\r\n ]);\r\n };\r\n\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n\r\n ////////// * End * Repeat dom value funtionality//////////////\r\n function handleSubmit(e) {\r\n e.preventDefault();\r\n setSubmitted(true);\r\n const isEmpty = (value) =>\r\n value === undefined || value === null || value === \"\";\r\n const doDocTypeId = inputList.some((item) => isEmpty(item.DocTypeId));\r\n const doActualFileName = inputList.some((item) =>\r\n isEmpty(item.ActualFileName)\r\n );\r\n const doDateofExpiry = inputList.some(\r\n (item) => item.isExpiration && isEmpty(item.DateofExpiry)\r\n );\r\n const isDocRequired = inputList.some(\r\n (item) => item.isDocRequired && isEmpty(item.FilePath)\r\n );\r\n const doCustomShowHide = inputList.some(\r\n (item) => item.CustomShowHide === \"show\"\r\n );\r\n const doCustomText = inputList.some((item) => isEmpty(item.CustomText));\r\n let checCustmeText = true;\r\n if (doCustomShowHide && doCustomText) {\r\n checCustmeText = false;\r\n }\r\n // if (allInputs.verifiedDate && !doDocTypeId && !doActualFileName && !doDateofExpiry && checCustmeText) {\r\n if (\r\n allInputs.verifiedDate &&\r\n !doDocTypeId &&\r\n checCustmeText &&\r\n !doDateofExpiry &&\r\n !isDocRequired\r\n ) {\r\n // if (!doActualFileName && window.confirm(\"Are you saving this page without uploading a document(s)?\")) {\r\n var r = true;\r\n if (doActualFileName) {\r\n var r = window.confirm(\r\n \"Are you saving this page without uploading a document(s)?\"\r\n );\r\n }\r\n if (r) {\r\n setLoading(true);\r\n\r\n let UserId = \"\";\r\n let HRMRUserId;\r\n if (user != \"undefined\" && user != null && user != [] && !user.loding) {\r\n UserId = user.hrmrUser.userId;\r\n HRMRUserId = user.hrmrUser.hrmrUserId;\r\n }\r\n // const fdata = new FormData()\r\n // fdata.append('credActivity', allInputs.credActivity)\r\n // fdata.append('verifiedDate', convertDate(allInputs.verifiedDate))\r\n // fdata.append('inputList', JSON.stringify(inputList))\r\n // fdata.append('note', allInputs.note)\r\n // fdata.append('UserId', UserId)\r\n // fdata.append('HRMRUserId', HRMRUserId)\r\n\r\n var postData = {\r\n UserId: UserId,\r\n HRMRId: HRMRUserId,\r\n ClinicalStaffOptions: allInputs.credActivity,\r\n DateVerified: convertDate(allInputs.verifiedDate),\r\n Description: allInputs.note,\r\n ActivityNumber: allInputs.activityNumberText,\r\n lstHRSACredDoc: inputList,\r\n };\r\n //dispatch(adddocumentActions.addCredentialing(fdata));\r\n axios\r\n .post(\r\n `${configConstants.API_BASE_PATH}HRTraining/AddCredentialing`,\r\n JSON.stringify(postData),\r\n {\r\n headers: {\r\n Authorization: \"Bearer \" + user.token,\r\n \"Content-Type\": \"application/json\",\r\n },\r\n }\r\n )\r\n .then((resp) => {\r\n // then print response status\r\n if (resp.status === 200) {\r\n closeAddDocPopup();\r\n onGapRptModalCloseAfterLoad();\r\n setLoading(false);\r\n setSubmitted(false);\r\n //window.location = \"/alertdocument\";\r\n } else {\r\n setLoading(false);\r\n console.log(\"else\");\r\n window.alert(resp.status);\r\n }\r\n })\r\n .catch(function (error) {\r\n setLoading(false);\r\n console.log(\"error on catch \" + error);\r\n window.alert(error);\r\n })\r\n .then(function () {\r\n //setLoading(false);\r\n });\r\n }\r\n }\r\n }\r\n function convertDate(str) {\r\n var date = new Date(str),\r\n mnth = (\"0\" + (date.getMonth() + 1)).slice(-2),\r\n day = (\"0\" + date.getDate()).slice(-2);\r\n return [date.getFullYear(), mnth, day].join(\"-\");\r\n }\r\n useEffect(() => {\r\n if (props.showAddDocPopup) {\r\n setSubmitted(false);\r\n SetallInputs((allInputs) => ({\r\n [\"credActivity\"]: props.credActivityId,\r\n [\"verifiedDate\"]: new Date(),\r\n [\"activityTextShowHide\"]: \"hide\",\r\n [\"activityNumberText\"]: credActivityNumber,\r\n }));\r\n //setInputList([{ docType: \"\", docTypeName: \"\", docFile: \"\", docFileName: \"\", docContentType: \"\", expiryDate: new Date() }]);\r\n // setInputList([{ DocTypeId: \"\", DocType: \"\", CustomShowHide: \"hide\", CustomText: \"test\", FilePath: \"\", ActualFileName: \"\", OriginalDocType: \"\", DateofExpiry: new Date() }]);\r\n setInputList([\r\n {\r\n DocTypeId: \"\",\r\n DocType: \"\",\r\n CustomShowHide: \"hide\",\r\n CustomText: \"test\",\r\n FilePath: \"\",\r\n ActualFileName: \"\",\r\n OriginalDocType: \"\",\r\n DateofExpiry: null,\r\n isExpiration: false,\r\n isDocRequired: false,\r\n },\r\n ]);\r\n if (credDefaultChecklist) {\r\n SetallInputs((allInputs) => ({\r\n ...allInputs,\r\n [\"activityTextShowHide\"]: \"show\",\r\n }));\r\n setdocButtonHide((docButtonHide = true));\r\n } else {\r\n setdocButtonHide((docButtonHide = false));\r\n }\r\n } else {\r\n }\r\n }, [showAddDocPopup]);\r\n\r\n return (\r\n \r\n \r\n {Loading && }\r\n \r\n
\r\n
\r\n Add Document \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddDocModal;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport Moment from 'moment';\r\n\r\nimport axios from 'axios';\r\nimport { configConstants } from '../../../_constants';\r\n\r\nimport { alertActions, userActions, adddocumentActions } from '../../../_actions';\r\n\r\nimport { Loader } from '../../Common/Loader'\r\n\r\nimport Popup from 'reactjs-popup';\r\n\r\nimport AddDocModal from \"./AddDocModal\";\r\n\r\nfunction HRSAGapReport(props) {\r\n const alert = useSelector(state => state.alert);\r\n const gapReport = useSelector(state => state.adddocument);\r\n const user = useSelector(state => state.authentication.user);\r\n const empProfile = useSelector(state => state.users.empProfile);\r\n const dispatch = useDispatch();\r\n\r\n\r\n let [Loading, setLoading] = useState(false);\r\n let [showAddDocPopup, setShowAddDocPopup] = useState(false);\r\n let [docTypeList, setdocTypeList] = useState([]);\r\n //let [reportActList, setReportActList] = useState([]);\r\n let [credActivityId, setCredActivityId] = useState(0);\r\n let [credActivityDefault, setcredActivityDefault] = useState(0);\r\n let [credActivityNumber, setcredActivityNumber] = useState(0);\r\n\r\n useEffect(() => {\r\n dispatch(alertActions.clear());\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n dispatch(adddocumentActions.getHRSAGapReport(HRMRUserId));\r\n dispatch(userActions.getEmpProfileById(HRMRUserId));\r\n }\r\n }, []);\r\n\r\n const onGapRptModalCloseAfterLoad = () => {\r\n setLoading(true);\r\n if (user != \"undefined\" && user != null && user != \"[]\" && !user.loding) {\r\n let HRMRUserId = JSON.stringify(user.hrmrUser.hrmrUserId);\r\n dispatch(adddocumentActions.getHRSAGapReport(HRMRUserId));\r\n }\r\n setLoading(false);\r\n }\r\n function handleHideCredentialDoc(activityId, credentialingDocId, isHide) {\r\n dispatch(adddocumentActions.hideCredentialDoc(activityId, credentialingDocId, isHide));\r\n }\r\n function handleDownloadDocument(actualFileName, docName) {\r\n //dispatch(adddocumentActions.downloadHRSADoc(docName));\r\n setLoading(true);\r\n let user = JSON.parse(localStorage.getItem('userToken'));\r\n fetch(`${configConstants.API_BASE_PATH}HRTraining/DownloadCredentialingDoc?DocumentName=${docName}`, {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token\r\n }\r\n })\r\n .then(response => {\r\n if (response.ok) {\r\n response.blob().then(blob => {\r\n let url = window.URL.createObjectURL(blob);\r\n let a = document.createElement('a');\r\n a.href = url;\r\n a.download = actualFileName;\r\n a.click();\r\n });\r\n } else (window.alert('File not found!'))\r\n setLoading(false);\r\n })\r\n .catch(err => {\r\n console.log(\"ERROR: \", err);\r\n setLoading(false);\r\n });;\r\n }\r\n function convertDate(str) {\r\n var date = new Date(str),\r\n mnth = (\"0\" + (date.getMonth() + 1)).slice(-2),\r\n day = (\"0\" + date.getDate()).slice(-2);\r\n return [date.getFullYear(), mnth, day].join(\"-\");\r\n }\r\n function countDocument(doclist) {\r\n let Count = 0;\r\n let ExpiredCount = 0;\r\n let DocumentCount = 0;\r\n let textReturn = \"\";\r\n if (doclist != null) {\r\n doclist.forEach(element => {\r\n // if (convertDate(Moment.utc(element.dateofExpiry)) !== convertDate(Moment.utc(\"0001-01-01\"))) {\r\n if (element.credentialingDocId > 0) {\r\n Count = Count + 1;\r\n if (convertDate(Moment.utc(element.dateofExpiry)) === convertDate(Moment.utc(\"0001-01-01\")) || convertDate(Moment.utc(element.dateofExpiry)) === convertDate(Moment.utc(\"1900-01-01\"))) {\r\n DocumentCount = DocumentCount + 1;\r\n }\r\n else if (Moment.utc(element.dateofExpiry) >= Moment.utc(new Date())) {\r\n DocumentCount = DocumentCount + 1;\r\n }\r\n else if (Moment.utc(element.DateofExpiry) == Moment.utc('1900-01-01T00:00:00Z')) {\r\n DocumentCount = DocumentCount + 1;\r\n }\r\n else {\r\n ExpiredCount = ExpiredCount + 1;\r\n }\r\n }\r\n });\r\n }\r\n if (Count == 0) {\r\n return (
Missing Document(s) );\r\n }\r\n else {\r\n if (DocumentCount > 0 && ExpiredCount > 0) {\r\n //return
{Count} Document(s) \r\n return <>
{Count} Document(s) {DocumentCount > 0 && \", \"}{ExpiredCount} Expired Document(s) >\r\n }\r\n else if (ExpiredCount > 0) {\r\n return
{ExpiredCount} Expired Document(s) \r\n }\r\n else {\r\n return
{Count} Document(s) \r\n }\r\n // if (ExpiredCount > 0) {\r\n // console.log('exp count '+ExpiredCount)\r\n // return
{DocumentCount > 0 && \", \"}{ExpiredCount} Expired Document(s) \r\n // }\r\n }\r\n //return textReturn;// (
Missing Document(s) );\r\n }\r\n function showDocument(activityId, docDetial) {\r\n //if (convertDate(Moment.utc(docDetial.dateofExpiry)) !== convertDate(Moment.utc(\"0001-01-01\"))) {\r\n if (docDetial.credentialingDocId > 0) {\r\n return (\r\n
\r\n )\r\n }\r\n }\r\n function showExpirtyMsg(expDate) {\r\n if (convertDate(Moment.utc(expDate)) === convertDate(Moment.utc(\"0001-01-01\")) || convertDate(Moment.utc(expDate)) === convertDate(Moment.utc(\"1900-01-01\"))) {\r\n return
\r\n }\r\n else if (Moment.utc(expDate) >= Moment.utc(new Date())) {\r\n return <>Expires to ({Moment(expDate).format('MM-DD-YYYY')})>\r\n }\r\n else if (Moment.utc(expDate) == Moment.utc((\"1/1/1900 12:00:00 AM\"))) {\r\n return
Available \r\n }\r\n else {\r\n return
Expired on ({Moment(expDate).format('MM-DD-YYYY')}) \r\n }\r\n }\r\n const Item = gapReport.items;\r\n const openAddDocPopup = (activityId, DefaultChecklist, ActivityNumber) => {\r\n setCredActivityId(credActivityId = activityId)\r\n setcredActivityDefault(credActivityDefault = DefaultChecklist)\r\n setcredActivityNumber(credActivityNumber = ActivityNumber)\r\n let IsUsedinReport = false;\r\n let UserId = \"\";\r\n if (user != \"undefined\" && user != null && user != [] && !user.loding) {\r\n UserId = user.hrmrUser.userId;\r\n }\r\n getDocTypeList(UserId, activityId, IsUsedinReport);\r\n setShowAddDocPopup(showAddDocPopup = true);\r\n };\r\n\r\n const closeAddDocPopup = () => {\r\n setShowAddDocPopup(showAddDocPopup = false);\r\n };\r\n\r\n async function getDocTypeList(UserId, ActId, IsUsdinReport) {\r\n let user = JSON.parse(localStorage.getItem('userToken'));\r\n axios.get(`${configConstants.API_BASE_PATH}Master/CredentialingDocTypeGetAll?Id=${UserId}&ActivityId=${ActId}&IsUsedinCredReport=${IsUsdinReport}`, {\r\n headers: {\r\n 'Authorization': 'Bearer ' + user.token\r\n }\r\n })\r\n .then(function (resp) {\r\n if (resp.status === 200) {\r\n setdocTypeList(docTypeList = resp.data.response)\r\n }\r\n else {\r\n console.log(resp.status)\r\n }\r\n })\r\n .catch(function (error) {\r\n console.log('error')\r\n })\r\n .then(function () {\r\n //setLoading(false);\r\n });\r\n };\r\n return (\r\n
\r\n {gapReport.error && ERROR: {gapReport.error} }\r\n {gapReport.loading && }\r\n {gapReport.deleteError && ERROR: {gapReport.deleteError} }\r\n {gapReport.deleting && }\r\n {Loading && }\r\n \r\n
\r\n {\r\n alert.message &&\r\n {alert.message}
\r\n }\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Instructions:
\r\n
\r\n \r\n Please upload the required documents below\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {/*
*/}\r\n
\r\n
\r\n
\r\n
\r\n {Item && Item.length ?\r\n Item.map((HRSAgapRpt, index) =>\r\n HRSAgapRpt.activityId ?\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n HRSAgapRpt.gapReportDoclst && HRSAgapRpt.gapReportDoclst.length ? HRSAgapRpt.gapReportDoclst.map((HRSAdoc, index) =>\r\n HRSAdoc.docTypeId > 0 && showDocument(HRSAgapRpt.activityId, HRSAdoc)\r\n //
\r\n ) : \"\"\r\n }\r\n
\r\n
\r\n
\r\n
\r\n
\r\n : \"\"\r\n ) : !gapReport.loading &&
Employee has been assigned to {(empProfile && !empProfile.loading) && empProfile.response.department} department. This department has no checklist assigned. Please contact your organizational administrator.
\r\n }\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n );\r\n}\r\n\r\nexport { HRSAGapReport };","import React,{useEffect} from 'react';\r\nimport { BrowserRouter as Router, Route, Switch, Redirect } from 'react-router-dom';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { history } from './_helpers';\r\nimport { alertActions } from './_actions';\r\nimport { PrivateRoute } from './_routes';\r\n\r\nimport { Header } from './_components/Common/Header';\r\nimport { Footer } from './_components/Common/Footer';\r\nimport { LayoutDashbaord } from './_components/Layout/LayoutDashbaord';\r\n\r\nimport { Login, ForgotPassword, ChangePassword } from './_components/Auth';\r\nimport { EmpDashboard, MyTraining } from './_components/Employee/Dashboard';\r\nimport { EmployeeCredentialForm } from './_components/Employee/CredentiallingProfile/EmployeeCredentialForm';\r\nimport {AddDocument,AlertDocument, ReviewDocument,HRSAGapReport } from './_components/Employee/MyDocuments';\r\n\r\nfunction App() {\r\n\r\n // const users = useSelector(state => state.users);\r\n const user = useSelector(state => state.authentication.user);\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n history.listen((location, action) => {\r\n // clear alert on location change\r\n dispatch(alertActions.clear());\r\n });\r\n}, []);\r\n\r\n return (\r\n
\r\n
\r\n {localStorage.getItem('userToken') ? : }\r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nexport default App;\r\n","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.0/8 are considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport function register(config) {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' },\r\n })\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.indexOf('javascript') === -1)\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready\r\n .then(registration => {\r\n registration.unregister();\r\n })\r\n .catch(error => {\r\n console.error(error.message);\r\n });\r\n }\r\n}\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { Provider } from 'react-redux';\r\nimport './index.css';\r\nimport App from './App';\r\nimport * as serviceWorker from './serviceWorker';\r\n\r\nimport { store } from './_helpers';\r\n\r\nReactDOM.render(\r\n
\r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n","import { userConstants } from '../_constants'\r\n\r\nlet user = JSON.parse(localStorage.getItem('userToken'));\r\nconst initialState = user ? { loggedIn: true, user } : {};\r\n\r\nexport function authentication(state = initialState, action) {\r\n switch (action.type) {\r\n case userConstants.LOGIN_REQUEST:\r\n return {\r\n loggingIn: true,\r\n user: action.user\r\n };\r\n case userConstants.LOGIN_SUCCESS:\r\n return {\r\n loggedIn: true,\r\n user: action.user\r\n };\r\n case userConstants.LOGIN_FAILURE:\r\n return {};\r\n case userConstants.LOGOUT:\r\n return {};\r\n default:\r\n return state\r\n }\r\n}","import { combineReducers } from 'redux';\r\n\r\nimport { authentication } from './authentication.reducer';\r\nimport {changepassword} from './changepassword.reducer';\r\nimport {forgotpassword} from './forgoatpassword.reducer';\r\nimport { alert } from './alert.reducer';\r\n\r\nimport { users } from './users.reducer';\r\nimport { mytraining } from './mytraining.reducer';\r\nimport { mydocument } from './mydocument.reducer';\r\nimport { adddocument } from './adddocument.reducer';\r\nimport { dashboard } from './dashboard.reducer';\r\n\r\nconst rootReducer = combineReducers({\r\n authentication,\r\n changepassword,\r\n forgotpassword,\r\n alert,\r\n users,\r\n mytraining,\r\n mydocument,\r\n adddocument,\r\n dashboard\r\n});\r\n\r\nexport default rootReducer;","import { userConstants } from '../_constants';\r\n\r\nexport function changepassword(state = {}, action) {\r\n switch (action.type) {\r\n case userConstants.CHANGEPASSWORD_REQUEST:\r\n return { changepassword: true };\r\n case userConstants.CHANGEPASSWORD_SUCCESS:\r\n return {changepassword: null};\r\n case userConstants.CHANGEPASSWORD_FAILURE:\r\n return {};\r\n default:\r\n return state\r\n }\r\n}","import { userConstants } from '../_constants';\r\n\r\nexport function forgotpassword(state = {}, action) {\r\n switch (action.type) {\r\n case userConstants.FORGOTPASSWORD_REQUEST:\r\n return { forgotpassword: true };\r\n case userConstants.FORGOTPASSWORD_SUCCESS:\r\n return {};\r\n case userConstants.FORGOTPASSWORD_FAILURE:\r\n return {};\r\n default:\r\n return state\r\n }\r\n}","import { alertConstants } from '../_constants';\r\n\r\nexport function alert(state = {}, action) {\r\n switch (action.type) {\r\n case alertConstants.SUCCESS:\r\n return {\r\n type: 'alert-success',\r\n message: action.message\r\n };\r\n case alertConstants.ERROR:\r\n return {\r\n type: 'alert-danger',\r\n message: action.message\r\n };\r\n case alertConstants.CLEAR:\r\n return {};\r\n default:\r\n return state\r\n }\r\n}","import { userConstants } from '../_constants';\r\n\r\nexport function users(state = {}, action) {\r\n switch (action.type) {\r\n case userConstants.GETALL_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case userConstants.GETALL_SUCCESS:\r\n return {\r\n items: action.users\r\n };\r\n case userConstants.GETALL_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n case userConstants.GETEMPPROFILE_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case userConstants.GETEMPPROFILE_SUCCESS:\r\n return {\r\n empProfile: action.empProfile\r\n };\r\n case userConstants.GETEMPPROFILE_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n case userConstants.DELETE_REQUEST:\r\n // add 'deleting:true' property to user being deleted\r\n return {\r\n ...state,\r\n items: state.items.map(user =>\r\n user.id === action.id\r\n ? { ...user, deleting: true }\r\n : user\r\n )\r\n };\r\n case userConstants.DELETE_SUCCESS:\r\n // remove deleted user from state\r\n return {\r\n items: state.items.filter(user => user.id !== action.id)\r\n };\r\n case userConstants.DELETE_FAILURE:\r\n // remove 'deleting:true' property and add 'deleteError:[error]' property to user \r\n return {\r\n ...state,\r\n items: state.items.map(user => {\r\n if (user.id === action.id) {\r\n // make copy of user without 'deleting:true' property\r\n const { deleting, ...userCopy } = user;\r\n // return copy of user with 'deleteError:[error]' property\r\n return { ...userCopy, deleteError: action.error };\r\n }\r\n\r\n return user;\r\n })\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { mytrainingConstants } from '../_constants';\r\n\r\nexport function mytraining(state = {}, action) {\r\n switch (action.type) {\r\n case mytrainingConstants.GETALL_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case mytrainingConstants.GETALL_SUCCESS:\r\n return {\r\n items: action.mytraining\r\n };\r\n case mytrainingConstants.GETALL_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { mydocumentConstants } from '../_constants';\r\n\r\nexport function mydocument(state = {}, action) {\r\n switch (action.type) {\r\n case mydocumentConstants.GETALL_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case mydocumentConstants.GETALL_SUCCESS:\r\n return {\r\n items: action.mydocument\r\n };\r\n case mydocumentConstants.GETALL_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n case mydocumentConstants.PPREPODOCSTATUS_REQUEST:\r\n // add 'deleting:true' property to user being deleted\r\n return {\r\n ...state,\r\n item1:state.items.pPOnBoardDetail,\r\n item2: state.items.pRepositoryShare.map(mydocument =>\r\n mydocument.PPRepositoryShareId === action.PPRepositoryShareId\r\n ? { ...mydocument, updating: true }\r\n : mydocument\r\n )\r\n \r\n };\r\n case mydocumentConstants.PPREPODOCSTATUS_SUCCESS:\r\n // remove deleted user from state\r\n const updatedRowsState = state.item2.map(row => {\r\n if (row.ppRepositoryShareId !== action.PPRepositoryShareId) {\r\n return row;\r\n }\r\n //const filteredSeries = row.gapReportDoclst.filter(s => s.credentialingDocId !== action.credentialingDocId);\r\n const newdoclist =row.lstPPRepoShareActivityModel && row.lstPPRepoShareActivityModel.map(rw => {\r\n if (rw.ppRepoShareId === action.PPRepositoryShareId) {\r\n if(action.IsDownload===1){\r\n return {\r\n ...rw,\r\n isReview: true\r\n };\r\n }\r\n else{\r\n return {\r\n ...rw,\r\n isApprove: true\r\n };\r\n }\r\n }\r\n else return rw\r\n })\r\n return {\r\n // spread properties (id, node, series)\r\n ...row,\r\n // overwrite series with item filtered out\r\n lstPPRepoShareActivityModel: newdoclist,\r\n };\r\n });\r\n return {\r\n //items: state.items.filter(adddocument => adddocument.activityId !== action.activityId)\r\n items: {pPOnBoardDetail:state.item1,pRepositoryShare:updatedRowsState}\r\n };\r\n case mydocumentConstants.PPREPODOCSTATUS_FAILURE:\r\n // remove 'deleting:true' property and add 'deleteError:[error]' property to user \r\n return {\r\n ...state,\r\n items: state.items.map(mydocument => {\r\n if (mydocument.PPRepositoryShareId === action.PPRepositoryShareId) {\r\n // make copy of user without 'deleting:true' property\r\n const { deleting, ...mydocumentCopy } = mydocument;\r\n // return copy of user with 'deleteError:[error]' property\r\n return { ...mydocumentCopy, deleteError: action.error };\r\n }\r\n\r\n return mydocument;\r\n })\r\n };\r\n\r\n case mydocumentConstants.DELETE_REQUEST:\r\n // add 'deleting:true' property to user being deleted\r\n return {\r\n ...state,\r\n items: state.items.map(user =>\r\n user.id === action.id\r\n ? { ...user, deleting: true }\r\n : user\r\n )\r\n };\r\n case mydocumentConstants.DELETE_SUCCESS:\r\n // remove deleted user from state\r\n return {\r\n items: state.items.filter(user => user.id !== action.id)\r\n };\r\n case mydocumentConstants.DELETE_FAILURE:\r\n // remove 'deleting:true' property and add 'deleteError:[error]' property to user \r\n return {\r\n ...state,\r\n items: state.items.map(user => {\r\n if (user.id === action.id) {\r\n // make copy of user without 'deleting:true' property\r\n const { deleting, ...userCopy } = user;\r\n // return copy of user with 'deleteError:[error]' property\r\n return { ...userCopy, deleteError: action.error };\r\n }\r\n\r\n return user;\r\n })\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { adddocumentConstants } from '../_constants';\r\n\r\nexport function adddocument(state = {}, action) {\r\n switch (action.type) {\r\n case adddocumentConstants.GETALL_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case adddocumentConstants.GETALL_SUCCESS:\r\n return {\r\n items: action.adddocument\r\n };\r\n case adddocumentConstants.GETALL_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n case adddocumentConstants.GETDOCTYPEALL_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case adddocumentConstants.GETDOCTYPEALL_SUCCESS:\r\n return {\r\n items: action.docTypeList\r\n };\r\n case adddocumentConstants.GETDOCTYPEALL_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n case adddocumentConstants.DELETE_REQUEST:\r\n // add 'deleting:true' property to user being deleted\r\n return {\r\n ...state,\r\n items: state.items.map(adddocument =>\r\n adddocument.activityId === action.activityId\r\n ? { ...adddocument, deleting: true }\r\n : adddocument\r\n )\r\n };\r\n case adddocumentConstants.DELETE_SUCCESS:\r\n // remove deleted user from state\r\n const updatedRowsState = state.items.map(row => {\r\n if (row.activityId !== action.activityId) {\r\n return row;\r\n }\r\n //const filteredSeries = row.gapReportDoclst.filter(s => s.credentialingDocId !== action.credentialingDocId);\r\n const newdoclist = row.gapReportDoclst && row.gapReportDoclst.map(rw => {\r\n if (rw.credentialingDocId === action.credentialingDocId) {\r\n return {\r\n ...rw,\r\n isHide: !action.isHide\r\n };\r\n }\r\n else return rw\r\n })\r\n return {\r\n // spread properties (id, node, series)\r\n ...row,\r\n // overwrite series with item filtered out\r\n gapReportDoclst: newdoclist,\r\n };\r\n });\r\n return {\r\n //items: state.items.filter(adddocument => adddocument.activityId !== action.activityId)\r\n items: updatedRowsState\r\n };\r\n case adddocumentConstants.DELETE_FAILURE:\r\n // remove 'deleting:true' property and add 'deleteError:[error]' property to user \r\n return {\r\n ...state,\r\n items: state.items.map(adddocument => {\r\n if (adddocument.activityId === action.activityId) {\r\n // make copy of user without 'deleting:true' property\r\n const { deleting, ...adddocumentCopy } = adddocument;\r\n // return copy of user with 'deleteError:[error]' property\r\n return { ...adddocumentCopy, deleteError: action.error };\r\n }\r\n\r\n return adddocument;\r\n })\r\n };\r\n\r\n case adddocumentConstants.DOWNLOAD_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case adddocumentConstants.DOWNLOAD_SUCCESS:\r\n return {\r\n items: action.docName\r\n };\r\n case adddocumentConstants.DOWNLOAD_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import { dashboardConstants } from '../_constants';\r\n\r\nexport function dashboard(state = {}, action) {\r\n switch (action.type) {\r\n case dashboardConstants.GET_REQUEST:\r\n return {\r\n loading: true\r\n };\r\n case dashboardConstants.GET_SUCCESS:\r\n return {\r\n items: action.orgDetail\r\n };\r\n case dashboardConstants.GET_FAILURE:\r\n return {\r\n error: action.error\r\n };\r\n default:\r\n return state\r\n }\r\n}","import {createStore,applyMiddleware} from 'redux';\r\nimport thunkMiddleware from 'redux-thunk';\r\nimport {createLogger}from 'redux-logger';\r\nimport rootReducer from '../_reducers';\r\n\r\nconst loggerMiddleware= createLogger();\r\n\r\n export const store=createStore(\r\n rootReducer,\r\n applyMiddleware(thunkMiddleware,loggerMiddleware)\r\n);","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nconst defaultButton = props =>
{props.children} ;\r\n\r\nexport default class Pagination extends React.Component {\r\n constructor(props) {\r\n super();\r\n\r\n this.changePage = this.changePage.bind(this);\r\n\r\n this.state = {\r\n visiblePages: this.getVisiblePages(null, props.pages)\r\n };\r\n }\r\n\r\n static propTypes = {\r\n pages: PropTypes.number,\r\n page: PropTypes.number,\r\n PageButtonComponent: PropTypes.any,\r\n onPageChange: PropTypes.func,\r\n previousText: PropTypes.string,\r\n nextText: PropTypes.string,\r\n onPageSizeChange: PropTypes.any,\r\n pageSizeOptions: PropTypes.any,\r\n data: PropTypes.any,\r\n showPageSizeOptions:PropTypes.any,\r\n rowsText:PropTypes.string,\r\n pageSize:PropTypes.number\r\n };\r\n\r\n componentWillReceiveProps(nextProps) {\r\n if (this.props.pages !== nextProps.pages) {\r\n this.setState({\r\n visiblePages: this.getVisiblePages(null, nextProps.pages)\r\n });\r\n }\r\n\r\n this.changePage(nextProps.page + 1);\r\n }\r\n\r\n filterPages = (visiblePages, totalPages) => {\r\n return visiblePages.filter(page => page <= totalPages);\r\n };\r\n\r\n getVisiblePages = (page, total) => {\r\n if (total < 7) {\r\n return this.filterPages([1, 2, 3, 4, 5, 6], total);\r\n } else {\r\n if (page % 5 >= 0 && page > 4 && page + 2 < total) {\r\n return [1, page - 1, page, page + 1, total];\r\n } else if (page % 5 >= 0 && page > 4 && page + 2 >= total) {\r\n return [1, total - 3, total - 2, total - 1, total];\r\n } else {\r\n return [1, 2, 3, 4, 5, total];\r\n }\r\n }\r\n };\r\n\r\n changePage(page) {\r\n const activePage = this.props.page + 1;\r\n\r\n if (page === activePage) {\r\n return;\r\n }\r\n\r\n const visiblePages = this.getVisiblePages(page, this.props.pages);\r\n\r\n this.setState({\r\n visiblePages: this.filterPages(visiblePages, this.props.pages)\r\n });\r\n\r\n this.props.onPageChange(page - 1);\r\n }\r\n\r\n render() {\r\n const { PageButtonComponent = defaultButton } = this.props;\r\n const { visiblePages } = this.state;\r\n const activePage = this.props.page + 1;\r\n\r\n return (\r\n
\r\n
\r\n Page Size : \r\n {this.props.showPageSizeOptions &&\r\n \r\n this.props.onPageSizeChange(Number(e.target.value))}\r\n value={this.props.pageSize}\r\n >\r\n {this.props.pageSizeOptions.map((pageSize) => (\r\n \r\n {pageSize}\r\n \r\n ))}\r\n \r\n }\r\n
\r\n
\r\n
\r\n
{\r\n if (activePage === 1) return;\r\n this.changePage(activePage - 1);\r\n }}\r\n disabled={activePage === 1}\r\n >\r\n {this.props.previousText}\r\n \r\n
\r\n
\r\n {visiblePages.map((page, index, array) => {\r\n return (\r\n
\r\n {array[index - 1] + 2 < page ? `...${page}` : page}\r\n \r\n );\r\n })}\r\n
\r\n
\r\n
{\r\n if (activePage === this.props.pages) return;\r\n this.changePage(activePage + 1);\r\n }}\r\n disabled={activePage === this.props.pages}\r\n >\r\n {this.props.nextText}\r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n","//export * from './fake-backend';\r\nexport * from './history';\r\nexport * from './store';\r\nexport * from './auth-header';"],"sourceRoot":""}