{"version":3,"sources":["webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/app/app.component.html","webpack:///./src/app/confirm-dialog.component.html","webpack:///./src/app/dashboard/dashboard.component.html","webpack:///./src/app/layouts/admin/admin-layout.component.html","webpack:///./src/app/layouts/auth/auth-layout.component.html","webpack:///./src/app/pagenotfound.component.html","webpack:///./src/app/shared/fixedplugin/fixedplugin.component.html","webpack:///./src/app/shared/footer/footer.component.html","webpack:///./src/app/shared/navbar/navbar.component.html","webpack:///./src/app/sidebar/sidebar.component.html","webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.css","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/app.pipe.ts","webpack:///./src/app/app.routing.ts","webpack:///./src/app/configuration.ts","webpack:///./src/app/confirm-dialog.component.ts","webpack:///./src/app/confirm-dialog.module.ts","webpack:///./src/app/customDateParserFormatter.ts","webpack:///./src/app/dashboard/dashboard.component.ts","webpack:///./src/app/encoder.ts","webpack:///./src/app/layouts/admin/admin-layout.component.ts","webpack:///./src/app/layouts/auth/auth-layout.component.ts","webpack:///./src/app/main-pipe.module.ts","webpack:///./src/app/pagenotfound.component.ts","webpack:///./src/app/services/AppsettingService.ts","webpack:///./src/app/services/GetPHIDisclosure.service.ts","webpack:///./src/app/services/addAuthorizeNetTransctionLog.service.ts","webpack:///./src/app/services/api.ts","webpack:///./src/app/services/archivePatientPortalPatientMessage.service.ts","webpack:///./src/app/services/clinicalSummary.service.ts","webpack:///./src/app/services/clipboard.service.ts","webpack:///./src/app/services/cloudDocuments.service.ts","webpack:///./src/app/services/common.service.ts","webpack:///./src/app/services/confirm-dialog.service.ts","webpack:///./src/app/services/createPracticeRecord.service.ts","webpack:///./src/app/services/discardPatientPortalDraftMessage.service.ts","webpack:///./src/app/services/getCDSReferenceURL.service.ts","webpack:///./src/app/services/getEMRFinalizeProgressNotes.service.ts","webpack:///./src/app/services/getJotFormURL.service.ts","webpack:///./src/app/services/getLabReport.service.ts","webpack:///./src/app/services/getLabScanFile.service.ts","webpack:///./src/app/services/getLabScanResult.service.ts","webpack:///./src/app/services/getPatientAccessLog.service.ts","webpack:///./src/app/services/getPatientArchiveMessages.service.ts","webpack:///./src/app/services/getPatientDetailsbyGUID.service.ts","webpack:///./src/app/services/getPatientDraftMessages.service.ts","webpack:///./src/app/services/getPatientEducationalResource.service.ts","webpack:///./src/app/services/getPatientEducationalResources.service.ts","webpack:///./src/app/services/getPatientEmailCountByPatientId.service.ts","webpack:///./src/app/services/getPatientInboxMessages.service.ts","webpack:///./src/app/services/getPatientLocationIdByPatientId.service.ts","webpack:///./src/app/services/getPatientLoginDetails.service.ts","webpack:///./src/app/services/getPatientPaymentDetails.service.ts","webpack:///./src/app/services/getPatientPortalAllergyList.service.ts","webpack:///./src/app/services/getPatientPortalAppointments.service.ts","webpack:///./src/app/services/getPatientPortalClinicalDecisionReport.service.ts","webpack:///./src/app/services/getPatientPortalForms.service.ts","webpack:///./src/app/services/getPatientPortalImmunizationList.service.ts","webpack:///./src/app/services/getPatientPortalLabresults.service.ts","webpack:///./src/app/services/getPatientPortalMedicationList.service.ts","webpack:///./src/app/services/getPatientPortalMessageTypes.service.ts","webpack:///./src/app/services/getPatientPortalPracticeDetailsByPracticeId.service.ts","webpack:///./src/app/services/getPatientPortalProblemList.service.ts","webpack:///./src/app/services/getPatientPortalReceipts.service.ts","webpack:///./src/app/services/getPatientPortalStatementMenu.service.ts","webpack:///./src/app/services/getPatientPortalTeleHealthData.service.ts","webpack:///./src/app/services/getPatientPortalViewLog.service.ts","webpack:///./src/app/services/getPatientProfileById.service.ts","webpack:///./src/app/services/getPatientSentMessages.service.ts","webpack:///./src/app/services/getProviderDetailsForRegUser.service.ts","webpack:///./src/app/services/getReceiptReport.service.ts","webpack:///./src/app/services/getSecurityQuestionsLookup.service.ts","webpack:///./src/app/services/getStatement.service.ts","webpack:///./src/app/services/getStatementReport.service.ts","webpack:///./src/app/services/getUserMenu.service.ts","webpack:///./src/app/services/getUserProfileById.service.ts","webpack:///./src/app/services/getUsers.service.ts","webpack:///./src/app/services/getVisitSummary.service.ts","webpack:///./src/app/services/immunotherapyService.service.ts","webpack:///./src/app/services/lookupData.service.ts","webpack:///./src/app/services/newLoginMessage.service.ts","webpack:///./src/app/services/patientImageService.ts","webpack:///./src/app/services/patientPortalDashboard.service.ts","webpack:///./src/app/services/patientPortalDemographics.service.ts","webpack:///./src/app/services/patientPortalGeneratePDFReport.service.ts","webpack:///./src/app/services/patientPortalMarkMessageAsRead.service.ts","webpack:///./src/app/services/patientPortalMessageBoard.service.ts","webpack:///./src/app/services/patientPortalSendMessage.service.ts","webpack:///./src/app/services/practiceCloudStorageConfiguration.service.ts","webpack:///./src/app/services/practicemessages.service.ts","webpack:///./src/app/services/recordLogToTable.service.ts","webpack:///./src/app/services/requestappointments.service.ts","webpack:///./src/app/services/resetWebUserPassword.service.ts","webpack:///./src/app/services/savePictureDetails.service.ts","webpack:///./src/app/services/sendMessageFromPatientPortalToPractice.service.ts","webpack:///./src/app/services/updateAndSendMessageFromPatientPortalToPractice.service.ts","webpack:///./src/app/services/updateClinicalPreferences.service.ts","webpack:///./src/app/services/updatePatientLookupGUID.service.ts","webpack:///./src/app/services/updatePatientMedicationStatus.service.ts","webpack:///./src/app/services/updatePatientPassword.service.ts","webpack:///./src/app/services/updatePatientPortalPatientDetails.service.ts","webpack:///./src/app/services/updatePatientSecurityDetails.service.ts","webpack:///./src/app/services/updatePracticeDatabaseViews.service.ts","webpack:///./src/app/services/updateUserConsentFormAcceptance.service.ts","webpack:///./src/app/services/updateUserDisclaimerAcceptance.service.ts","webpack:///./src/app/services/updateUserFirstLoginStatus.service.ts","webpack:///./src/app/services/validateUser.service.ts","webpack:///./src/app/services/visitNotes.service.ts","webpack:///./src/app/shared/fixedplugin/fixedplugin.component.ts","webpack:///./src/app/shared/fixedplugin/fixedplugin.module.ts","webpack:///./src/app/shared/footer/footer.component.ts","webpack:///./src/app/shared/footer/footer.module.ts","webpack:///./src/app/shared/navbar/navbar.component.ts","webpack:///./src/app/shared/navbar/navbar.module.ts","webpack:///./src/app/sidebar/sidebar.component.ts","webpack:///./src/app/sidebar/sidebar.module.ts","webpack:///./src/app/unique.pipe.ts","webpack:///./src/app/variables.ts","webpack:///./src/assets/img/login-logo.png","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"main.js","sourcesContent":["var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-SG\": \"./node_modules/moment/locale/en-SG.js\",\n\t\"./en-SG.js\": \"./node_modules/moment/locale/en-SG.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","module.exports = \"\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{message.text}}

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

{{message.text}}

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

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

\\r\\n

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

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"\\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

To-Do List

\\r\\n

Clipboards

\\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

New

\\r\\n

Appointment

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Request New Appointment\\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

New Messages

\\r\\n

Inbox

\\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

Upcoming visits

\\r\\n

Appointments

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{nextApp}}No future appointments\\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

Current Prescriptions

\\r\\n

Medications

\\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

Account Balance

\\r\\n

Statements

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n 0\\\">\\r\\n ${{dashboardRecords.LastStatement}} \\r\\n \\r\\n No patient statements available\\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 View Details\\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 {{row.ClipboardName}}\\r\\n \\r\\n {{row.Status}}\\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
{{ dataHeader[2] }}{{ dataHeader[3] }}{{ dataHeader[4] }}
\\r\\n {{row.MessageType}}\\r\\n \\r\\n {{row.MessageSubject}}\\r\\n \\r\\n {{row.SendDatatime}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
{{ dataHeader1[0] }}{{ dataHeader1[1] }}{{ dataHeader1[2] }}{{ dataHeader1[3] }}{{ dataHeader1[4] }}{{ dataHeader1[5] }}
\\r\\n {{row.AppointmentDateTime| date: 'MM/dd/yyyy hh:mm a'}}\\r\\n \\r\\n {{row.ProviderName}}\\r\\n \\r\\n {{row.LocationName}}\\r\\n\\r\\n {{row.LocAddress}}\\r\\n\\r\\n Phone: {{row.LocPhone}}\\r\\n \\r\\n {{row.VisitTypeDescription}}\\r\\n \\r\\n {{row.VisitReason}}\\r\\n \\r\\n {{row.ApprovedStatus}}\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
{{ dataHeader2[0] }}{{ dataHeader2[1] }}{{ dataHeader2[2] }}{{ dataHeader2[3] }}{{ dataHeader2[4] }}{{ dataHeader2[5] }}{{ dataHeader2[6] }}{{ dataHeader2[7] }}{{ dataHeader2[8] }}
\\r\\n {{row.Name}}\\r\\n \\r\\n {{row.eRxdate| date: 'MM/dd/yyyy'}}\\r\\n \\r\\n {{row.Form}}\\r\\n \\r\\n {{row.Route}}\\r\\n \\r\\n {{row.Freq}}\\r\\n \\r\\n {{row.Strengthunit}}\\r\\n \\r\\n {{row.Instructions}}\\r\\n \\r\\n {{row.Quantity}}\\r\\n \\r\\n {{row.Refills}}\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n There is no Statements\\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
New Message
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{modalTitle}}
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n Please wait...\\r\\n\\r\\n \\r\\n\\r\\n\"","module.exports = \"\\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\"","module.exports = \"\\r\\n \\r\\n\"","module.exports = \"\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n

Page Not Found

\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\"","module.exports = \"\\r\\n\"","module.exports = \"\\r\\n\"","module.exports = \"\\r\\n \"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{Header}}\\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 {{userName}}\\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
Select Patient
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
PatientAgeGenderCityPractice
{{pat.PatientName}}{{pat.Age}}{{pat.Gender}}{{pat.City}}{{pat.PracticeName}}
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\"","var map = {\n\t\"./account/account.module\": [\n\t\t\"./src/app/account/account.module.ts\",\n\t\t\"default~account-account-module~account-login-login-module~clipboards-clipboards-module~documents-doc~363bf40c\",\n\t\t\"default~account-account-module~clipboards-clipboards-module~documents-documents-module~educationalre~5b94a73e\",\n\t\t\"account-account-module\"\n\t],\n\t\"./account/login/login.module\": [\n\t\t\"./src/app/account/login/login.module.ts\",\n\t\t\"default~account-account-module~account-login-login-module~clipboards-clipboards-module~documents-doc~363bf40c\",\n\t\t\"account-login-login-module\"\n\t],\n\t\"./appointments/requestappointments.module\": [\n\t\t\"./src/app/appointments/requestappointments.module.ts\",\n\t\t\"appointments-requestappointments-module\"\n\t],\n\t\"./clinical/clinical.module\": [\n\t\t\"./src/app/clinical/clinical.module.ts\",\n\t\t\"clinical-clinical-module\"\n\t],\n\t\"./clipboards/clipboards.module\": [\n\t\t\"./src/app/clipboards/clipboards.module.ts\",\n\t\t\"default~account-account-module~account-login-login-module~clipboards-clipboards-module~documents-doc~363bf40c\",\n\t\t\"default~account-account-module~clipboards-clipboards-module~documents-documents-module~educationalre~5b94a73e\",\n\t\t\"clipboards-clipboards-module\"\n\t],\n\t\"./documents/documents.module\": [\n\t\t\"./src/app/documents/documents.module.ts\",\n\t\t\"default~account-account-module~account-login-login-module~clipboards-clipboards-module~documents-doc~363bf40c\",\n\t\t\"default~account-account-module~clipboards-clipboards-module~documents-documents-module~educationalre~5b94a73e\",\n\t\t\"documents-documents-module\"\n\t],\n\t\"./educationalresources/educationalresources.module\": [\n\t\t\"./src/app/educationalresources/educationalresources.module.ts\",\n\t\t\"default~account-account-module~account-login-login-module~clipboards-clipboards-module~documents-doc~363bf40c\",\n\t\t\"default~account-account-module~clipboards-clipboards-module~documents-documents-module~educationalre~5b94a73e\",\n\t\t\"educationalresources-educationalresources-module\"\n\t],\n\t\"./financials/financials.module\": [\n\t\t\"./src/app/financials/financials.module.ts\",\n\t\t\"common\",\n\t\t\"financials-financials-module\"\n\t],\n\t\"./forms/patientforms.module\": [\n\t\t\"./src/app/forms/patientforms.module.ts\",\n\t\t\"default~account-account-module~account-login-login-module~clipboards-clipboards-module~documents-doc~363bf40c\",\n\t\t\"default~account-account-module~clipboards-clipboards-module~documents-documents-module~educationalre~5b94a73e\",\n\t\t\"forms-patientforms-module\"\n\t],\n\t\"./immunotherapy/immunotherapy.module\": [\n\t\t\"./src/app/immunotherapy/immunotherapy.module.ts\",\n\t\t\"default~account-account-module~account-login-login-module~clipboards-clipboards-module~documents-doc~363bf40c\",\n\t\t\"common\",\n\t\t\"immunotherapy-immunotherapy-module\"\n\t],\n\t\"./messageboard/messageboard.module\": [\n\t\t\"./src/app/messageboard/messageboard.module.ts\",\n\t\t\"messageboard-messageboard-module\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";\nmodule.exports = webpackAsyncContext;","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuY3NzIn0= */\"","import { Component, HostListener } from '@angular/core';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Appsetting } from './model/models';\r\nimport { AppSettingsService, CommonService } from './services/api';\r\nimport { environment } from '../environments/environment';\r\nimport { ToastrService } from 'ngx-toastr';\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n //host: { 'window:beforeunload': 'doSomething' }\r\n})\r\n\r\nexport class AppComponent {\r\n @HostListener('contextmenu', ['$event'])\r\n onRightClick(event) {\r\n event.preventDefault();\r\n }\r\n public baseUrl: string = '';\r\n constructor(private appSettingsService: AppSettingsService, private toastServ: ToastrService) {\r\n this.appSettingsService.getSettings();\r\n this.baseUrl = environment.appSetting.baseUrI;\r\n\r\n }\r\n ngOnInit() {\r\n //window.addEventListener(\"beforeunload\", function (e) {\r\n // var confirmationMessage = \"\\o/\";\r\n // e.returnValue = confirmationMessage; \r\n // return confirmationMessage; \r\n //});\r\n window.addEventListener(\"keyup\", disableF5);\r\n window.addEventListener(\"keydown\", disableF5);\r\n\r\n function disableF5(e) {\r\n if ((e.which || e.keyCode) == 116) e.preventDefault();\r\n };\r\n //var self = this;\r\n //window.onbeforeunload = function (event) {\r\n // self.toastServ.warning('Refresh not allowed.Please ');\r\n //}\r\n }\r\n}\r\n","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { RouterModule } from '@angular/router';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AppComponent } from './app.component';\r\nimport { SidebarModule } from './sidebar/sidebar.module';\r\nimport { FixedPluginModule } from './shared/fixedplugin/fixedplugin.module';\r\nimport { FooterModule } from './shared/footer/footer.module';\r\nimport { NavbarModule} from './shared/navbar/navbar.module';\r\nimport { AdminLayoutComponent } from './layouts/admin/admin-layout.component';\r\nimport { AuthLayoutComponent } from './layouts/auth/auth-layout.component';\r\nimport { AppRoutes } from './app.routing';\r\nimport { APIS } from './services/api';\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\nimport { DashboardComponent } from './dashboard/dashboard.component';\r\nimport { NgxSpinnerModule } from \"ngx-spinner\";\r\nimport { NgbAlertModule, NgbDateParserFormatter } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { ConfirmDialogModule } from \"./confirm-dialog.module\";\r\nimport { SignaturePadModule } from 'angular2-signaturepad'; \r\nimport { MainPipe } from './main-pipe.module';\r\nimport { MomentDateFormatter } from './customDateParserFormatter';\r\nimport { PageNotFoundComponent } from './pagenotfound.component';\r\nimport { APP_BASE_HREF } from '@angular/common';\r\nimport { environment } from '../environments/environment';\r\n\r\n@NgModule({\r\n imports: [\r\n BrowserAnimationsModule, NgbAlertModule, ToastrModule.forRoot({\r\n timeOut: 10000,\r\n positionClass: 'toast-top-right',\r\n preventDuplicates: true,\r\n }), \r\n FormsModule, NgxSpinnerModule, SignaturePadModule, MainPipe,\r\n RouterModule.forRoot(AppRoutes,{\r\n useHash: false\r\n }),\r\n SidebarModule,\r\n NavbarModule,\r\n FooterModule,\r\n FixedPluginModule,\r\n HttpClientModule, ConfirmDialogModule\r\n \r\n \r\n ],\r\n declarations: [\r\n AppComponent,\r\n AdminLayoutComponent,\r\n AuthLayoutComponent,\r\n DashboardComponent,\r\n PageNotFoundComponent\r\n ],\r\n //exports: [\r\n // PhoneMaskDirective\r\n //],\r\n bootstrap: [AppComponent],\r\n providers: [{ provide: NgbDateParserFormatter, useClass: MomentDateFormatter }, APIS],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\n\r\nexport class AppModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\n@Pipe({\r\n name: 'sanitizeHtml'\r\n})\r\n\r\n\r\nexport class SanitizeHtml implements PipeTransform {\r\n\r\n constructor(private _sanitizer: DomSanitizer) { }\r\n\r\n transform(v: string): SafeHtml {\r\n return this._sanitizer.bypassSecurityTrustHtml(v);\r\n }\r\n} ","import { Routes } from '@angular/router';\r\n\r\nimport { AdminLayoutComponent } from './layouts/admin/admin-layout.component';\r\nimport { AuthLayoutComponent } from './layouts/auth/auth-layout.component';\r\nimport { DashboardComponent } from './dashboard/dashboard.component';\r\nimport { PageNotFoundComponent } from './pagenotfound.component';\r\n//import { ViewlogComponent } from './account/viewlog/viewlog.component';\r\n\r\nexport const AppRoutes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: 'login',\r\n pathMatch: 'full',\r\n }\r\n , {\r\n path: '',\r\n component: AuthLayoutComponent,\r\n children: [{\r\n path: '',\r\n //loadChildren: './dashboard/dashboard.module#DashboardModule'\r\n loadChildren: './account/login/login.module#LoginModule'\r\n }]\r\n },\r\n {\r\n path: '',\r\n component: AuthLayoutComponent,\r\n children: [{\r\n path: 'createpassword',\r\n loadChildren: './account/login/login.module#LoginModule'\r\n }]\r\n },\r\n {\r\n path: '',\r\n component: AuthLayoutComponent,\r\n children: [{\r\n path: 'consentform',\r\n loadChildren: './account/login/login.module#LoginModule'\r\n }]\r\n },\r\n {\r\n path: '',\r\n component: AuthLayoutComponent,\r\n children: [{\r\n path: 'patientlist',\r\n loadChildren: './account/login/login.module#LoginModule'\r\n }]\r\n },\r\n {\r\n path: '',\r\n component: AuthLayoutComponent,\r\n children: [{\r\n path: 'forgotpassword',\r\n loadChildren: './account/login/login.module#LoginModule'\r\n }]\r\n },\r\n {\r\n path: '',\r\n component: AuthLayoutComponent,\r\n children: [{\r\n path: 'mandateform',\r\n loadChildren: './account/login/login.module#LoginModule'\r\n }]\r\n }\r\n , {\r\n path: 'dashboard',\r\n component: AdminLayoutComponent,\r\n children: [{\r\n path: '',\r\n //loadChildren: './dashboard/dashboard.module#DashboardModule'\r\n component: DashboardComponent\r\n }, {\r\n path: 'dashboard',\r\n //loadChildren: './dashboard/dashboard.module#DashboardModule'\r\n component: DashboardComponent\r\n },\r\n {\r\n path: 'messages',\r\n loadChildren: './messageboard/messageboard.module#MessageBoardModule'\r\n },\r\n {\r\n path: 'clinical',\r\n loadChildren: './clinical/clinical.module#ClinicalModule'\r\n }\r\n ,\r\n {\r\n path: 'financials',\r\n loadChildren: './financials/financials.module#FinancialsModule'\r\n }\r\n ,\r\n {\r\n path: 'account',\r\n loadChildren: './account/account.module#AccountModule'\r\n }\r\n ,\r\n {\r\n path: 'patientforms',\r\n loadChildren: './forms/patientforms.module#FormModule'\r\n },\r\n {\r\n path: 'educationalresources',\r\n loadChildren: './educationalresources/educationalresources.module#EducationalResourceModule'\r\n },\r\n {\r\n path: 'documents',\r\n loadChildren: './documents/documents.module#DocumentsModule'\r\n },\r\n {\r\n path: 'clipboards',\r\n loadChildren: './clipboards/clipboards.module#ClipBoardsModule'\r\n },\r\n {\r\n path: 'immunotherapy',\r\n loadChildren: './immunotherapy/immunotherapy.module#ImmunotherapyModule'\r\n },\r\n {\r\n path: 'appointments',\r\n loadChildren: './appointments/requestappointments.module#RequestAppointmentModule'\r\n }\r\n ]\r\n }, { path: '**', component: PageNotFoundComponent }\r\n];\r\n","export interface ConfigurationParameters {\r\n apiKeys?: {[ key: string ]: string};\r\n username?: string;\r\n password?: string;\r\n accessToken?: string | (() => string);\r\n basePath?: string;\r\n withCredentials?: boolean;\r\n}\r\n\r\nexport class Configuration {\r\n apiKeys?: {[ key: string ]: string};\r\n username?: string;\r\n password?: string;\r\n accessToken?: string | (() => string);\r\n basePath?: string;\r\n withCredentials?: boolean;\r\n\r\n constructor(configurationParameters: ConfigurationParameters = {}) {\r\n this.apiKeys = configurationParameters.apiKeys;\r\n this.username = configurationParameters.username;\r\n this.password = configurationParameters.password;\r\n this.accessToken = configurationParameters.accessToken;\r\n this.basePath = configurationParameters.basePath;\r\n this.withCredentials = configurationParameters.withCredentials;\r\n }\r\n\r\n /**\r\n * Select the correct content-type to use for a request.\r\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\r\n * If no content type is found return the first found type if the contentTypes is not empty\r\n * @param contentTypes - the array of content types that are available for selection\r\n * @returns the selected content-type or undefined if no selection could be made.\r\n */\r\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\r\n if (contentTypes.length == 0) {\r\n return undefined;\r\n }\r\n\r\n let type = contentTypes.find(x => this.isJsonMime(x));\r\n if (type === undefined) {\r\n return contentTypes[0];\r\n }\r\n return type;\r\n }\r\n\r\n /**\r\n * Select the correct accept content-type to use for a request.\r\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\r\n * If no content type is found return the first found type if the contentTypes is not empty\r\n * @param accepts - the array of content types that are available for selection.\r\n * @returns the selected content-type or undefined if no selection could be made.\r\n */\r\n public selectHeaderAccept(accepts: string[]): string | undefined {\r\n if (accepts.length == 0) {\r\n return undefined;\r\n }\r\n\r\n let type = accepts.find(x => this.isJsonMime(x));\r\n if (type === undefined) {\r\n return accepts[0];\r\n }\r\n return type;\r\n }\r\n\r\n /**\r\n * Check if the given MIME is a JSON MIME.\r\n * JSON MIME examples:\r\n * application/json\r\n * application/json; charset=UTF8\r\n * APPLICATION/JSON\r\n * application/vnd.company+json\r\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\r\n * @return True if the given MIME is JSON, false otherwise.\r\n */\r\n public isJsonMime(mime: string): boolean {\r\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\r\n return mime != null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core'; \r\nimport { ConfirmDialogService } from \"./services/confirm-dialog.service\"; \r\n \r\n@Component({ \r\n selector: 'app-confirm-dialog', \r\n templateUrl: 'confirm-dialog.component.html' \r\n //styleUrls: ['confirm-dialog.component.css'] \r\n}) \r\nexport class ConfirmDialogComponent { \r\n message: any; \r\n alert: boolean = false;\r\n logoff: boolean = false;\r\n constructor( \r\n private confirmDialogService: ConfirmDialogService \r\n ) { } \r\n \r\n ngOnInit() { \r\n //this function waits for a message from alert service, it gets \r\n //triggered when we call this from any other component \r\n this.confirmDialogService.getMessage().subscribe(message => { \r\n if (message != undefined) {\r\n if (message.text == 'logout') {\r\n message.text = 'Are you sure you want to Log Off?';\r\n this.alert = false;\r\n this.logoff = true;\r\n }\r\n else {\r\n this.alert = true;\r\n this.logoff = false;\r\n }\r\n }\r\n this.message = message; \r\n }); \r\n } \r\n} ","import { NgModule } from '@angular/core'; \r\nimport { CommonModule } from '@angular/common';\r\nimport {ConfirmDialogComponent} from './confirm-dialog.component'; \r\nimport {ConfirmDialogService} from './services/confirm-dialog.service'; \r\n \r\n@NgModule({ \r\n imports:[CommonModule],\r\n declarations: [ConfirmDialogComponent\r\n ], \r\n exports: [ \r\n ConfirmDialogComponent \r\n ],providers:[ \r\n ConfirmDialogService \r\n ] \r\n}) \r\nexport class ConfirmDialogModule \r\n{ \r\n} ","import { NgbDateParserFormatter, NgbDateStruct } from \"@ng-bootstrap/ng-bootstrap\";\r\nimport * as moment from 'moment';\r\n\r\nexport class MomentDateFormatter extends NgbDateParserFormatter {\r\n\r\n readonly DT_FORMAT = 'MM/DD/YYYY';\r\n\r\n parse(value: string): NgbDateStruct {\r\n if (value) {\r\n value = value.trim();\r\n let mdt = moment(value, this.DT_FORMAT)\r\n }\r\n return null;\r\n }\r\n format(date: NgbDateStruct): string {\r\n if (!date) return '';\r\n let mdt = moment([date.year, date.month - 1, date.day]);\r\n if (!mdt.isValid()) return '';\r\n return mdt.format(this.DT_FORMAT);\r\n }\r\n}","import { Component, OnInit, Injectable, ChangeDetectorRef } from '@angular/core';\r\nimport { PatientPortalDashboardService, PatientPortalMessageBoardService, GetPatientPortalAppointmentsService, GetPatientPortalMedicationListService, GetPatientPortalReceiptsService, GetPracticeMessagesService, GetPatientPortalStatementMenuService, GetPatientPortalMessageTypesService, PatientPortalSendMessageService, NewLoginMessageService, GetProviderDetailsForRegUserService, GetStatementReportService, GetPatientPaymentDetailsService, PracticeCloudStorageService, ClipBoardService } from '../services/api';\r\nimport { Router } from '@angular/router';\r\nimport { CommonService } from '../services/common.service';\r\nimport { PatientPortalDashBoard, PatientPortalMessageBoard, PatientPortalAppointments, MedicationData, PatientPortalReceipts, NewLoginMessage, PatientPortalMessage } from '../model/models';\r\nimport { environment } from '../../environments/environment';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport 'rxjs/add/operator/map';\r\nimport 'rxjs/add/operator/catch';\r\nimport PerfectScrollbar from 'perfect-scrollbar';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { DatePipe } from '@angular/common';\r\ndeclare var $: any;\r\ndeclare interface DataTable {\r\n headerRow: string[];\r\n footerRow: string[];\r\n dataRows: string[][];\r\n}\r\n\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html'\r\n})\r\n@Injectable()\r\nexport class DashboardComponent implements OnInit {\r\n //this.toastr.success('login...', 'Success!');\r\n public dashboardRecords: PatientPortalDashBoard = {};\r\n public dashboardMedication: string;\r\n // public inboxData: PatientPortalMessageBoard[];\r\n public inboxData: PatientPortalMessage[];\r\n public appointmentData: PatientPortalAppointments[];\r\n public medicationData: MedicationData[];\r\n public recieptData: PatientPortalReceipts[];\r\n public clipboardData: any[] = [];\r\n public flag: string = '';\r\n public patId: number;\r\n public userId: number;\r\n public statementId: number = 0;\r\n public statementUrl: string;\r\n public messageTypes: any[];\r\n public msgType: string;\r\n public messageModalData: NewLoginMessage = {};\r\n statementURL: any;\r\n isDetails: boolean = true;\r\n public dataTable: DataTable;\r\n public dataRow: any;\r\n public dataHeader: any;\r\n\r\n public dataTable1: DataTable;\r\n public dataRow1: any;\r\n public dataHeader1: any;\r\n\r\n public dataTable2: DataTable;\r\n public dataRow2: any;\r\n public dataHeader2: any;\r\n public dataTable3: DataTable;\r\n public dataRow3: any;\r\n public dataHeader3: any;\r\n nextApp: string = '';\r\n amount: any;\r\n activeStatus: boolean = false;\r\n IsPaymentButtonHide: boolean = false;\r\n modalTitle: string = '';\r\n timeZone: string = '';\r\n prodType: string = '';\r\n pendingCB: number = 0;\r\n completedCB: number = 0;\r\n // public msgModalData: PatientPortalMessageBoard = {};\r\n public msgModalData: PatientPortalMessage = {};\r\n public todaysDate: string = '';\r\n constructor(private dashboardService: PatientPortalDashboardService, private messageBoardService: PatientPortalMessageBoardService, private appointmentService: GetPatientPortalAppointmentsService, private medicationService: GetPatientPortalMedicationListService, private statementService: GetStatementReportService, private tokenService: CommonService, private router: Router, private alertService: GetPracticeMessagesService, private toastr: ToastrService, private stmenuService: GetPatientPortalStatementMenuService, private messageTypeService: GetPatientPortalMessageTypesService, private sendmsgService: NewLoginMessageService, private provService: GetProviderDetailsForRegUserService, private sanitizer: DomSanitizer, private spinner: NgxSpinnerService, private chRef: ChangeDetectorRef, private paymentService: GetPatientPaymentDetailsService, private msgService: PatientPortalSendMessageService, private configService: PracticeCloudStorageService, private clipboardService: ClipBoardService, public datepipe: DatePipe) {\r\n let userCred = localStorage.getItem('userVal');\r\n if (userCred == null) {\r\n this.router.navigate(['login']);\r\n }\r\n }\r\n ngOnInit() {\r\n this.spinner.show();\r\n this.prodType = environment.appSetting.prodType;\r\n this.flag = 'NewAppointments'\r\n this.todaysDate = this.datepipe.transform(new Date(), 'MM/dd/yyyy');\r\n let userCred = localStorage.getItem('userVal');\r\n this.timeZone = localStorage.getItem('timezone');\r\n var CryptoJS = require(\"crypto-js\");\r\n var SECRET_KEY = 'm@duLeMD#2k19';\r\n let decrVal = CryptoJS.AES.decrypt(userCred, SECRET_KEY);\r\n decrVal = decrVal.toString(CryptoJS.enc.Utf8);\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n this.tokenService.GetPortalKey(decrVal.split(',')[0], decrVal.split(',')[1]);\r\n this.patId = userData[0].PatientId;\r\n this.userId = userData[0].UserId;\r\n let headerContext: { [key: string]: string } = {};\r\n headerContext[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.dashboardService.configuration.apiKeys = headerContext;\r\n this.dashboardService.configuration.accessToken = environment.portalAccessKey;\r\n this.dashboardService.patientPortalDashboard(userData[0].PatientId).map(t => t).subscribe(data => {\r\n this.dashboardRecords = data;\r\n this.amount = data.LastStatement;\r\n //if (this.prodType == 'CVN') {\r\n // this.pendingCB = data.PendingClipboardsCount;\r\n // this.completedCB = data.CompletedClipboardsCount;\r\n //}\r\n let dateFormat = this.dashboardRecords.NextAppointment.split(' ');\r\n if (this.dashboardRecords.NextAppointment != '') {\r\n let date = dateFormat[0] + ' ' + dateFormat[1] + ', ' + dateFormat[2];//+ ' ' + dateFormat[3] == '' ? (dateFormat[4].replace('AM', ' AM').replace('PM', ' PM')):( dateFormat[3].replace('AM', ' AM').replace('PM', ' PM'));\r\n let time = dateFormat[3] == '' ? (dateFormat[4].replace('AM', ' AM').replace('PM', ' PM')) : (dateFormat[3].replace('AM', ' AM').replace('PM', ' PM'));\r\n this.nextApp = date + ' ' + time;\r\n }\r\n let medicationList = this.dashboardRecords.CurrentMedications.split(',');\r\n if (medicationList.length >= 3)\r\n this.dashboardMedication = medicationList[0] + ', ' + medicationList[1] + ', ' + medicationList[2];\r\n else\r\n if (medicationList.length == 2)\r\n this.dashboardMedication = medicationList[0] + ', ' + medicationList[1];\r\n else\r\n if (medicationList.length == 1)\r\n this.dashboardMedication = medicationList[0];\r\n });\r\n this.stmenuService.configuration.apiKeys = headerContext;\r\n this.stmenuService.configuration.accessToken = environment.portalAccessKey;\r\n this.stmenuService.getPatientPortalStatementMenu(userData[0].PatientId).map(st => st).subscribe(statements => {\r\n if (statements.length > 0)\r\n this.statementId = statements[0].StatementID;\r\n let headerContext1: { [key: string]: string } = {};\r\n headerContext1[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.paymentService.configuration.apiKeys = headerContext1;\r\n this.paymentService.configuration.accessToken = environment.portalAccessKey;\r\n this.paymentService.getPatient(userData[0].PatientId).subscribe(pt => {\r\n if (pt.length > 0) {\r\n if (pt[0].Status == 3) {\r\n this.activeStatus = false;\r\n }\r\n else{\r\n this.activeStatus = true;\r\n }\r\n\r\n if(pt[0].ShowPaymentButton == 'yes')\r\n {\r\n this.IsPaymentButtonHide = false;\r\n }else{\r\n this.IsPaymentButtonHide = true;\r\n } \r\n }\r\n });\r\n\r\n });\r\n let headerContext1: { [key: string]: string } = {};\r\n headerContext1[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.PracticeID + \"'}\";\r\n this.messageTypeService.configuration.apiKeys = headerContext1;\r\n this.messageTypeService.configuration.accessToken = environment.portalAccessKey;\r\n this.messageTypeService.getPatientPortalMessageTypes().map(t => t).subscribe(type => {\r\n this.messageTypes = type;\r\n });\r\n this.messageBoardService.configuration.apiKeys = headerContext;\r\n this.messageBoardService.configuration.accessToken = environment.portalAccessKey;\r\n //this.messageBoardService.patientPortalMessageBoard('4', environment.UserPracticeId, 'Inbox', this.patId).map(t => t).subscribe(items => {\r\n this.messageBoardService.patientPortalMessages('Dashboard', this.patId).map(t => t).subscribe(items => {\r\n this.inboxData = items;//.filter(m => m.ViewedStatus == false);\r\n let resultArray: any = [];\r\n this.inboxData.forEach(d => {\r\n if (d.MessageTypeId == 0) {\r\n d.MessageTypeId = 5;\r\n d.MessageType = 'Other';\r\n }\r\n if (this.timeZone == 'Eastern Standard Time')\r\n resultArray.push({ 'MessageId': d.MessageId, 'ViewedStatus': d.ViewedStatus, 'MessageType': d.MessageType, 'MessageSubject': d.MessageSubject, 'SendDatatime': this.datepipe.transform(d.SendDatatime, 'MM/dd/yyyy h:mm a') });\r\n else {\r\n var date = new Date(d.SendDatatime);\r\n var utcDate = new Date(date.toUTCString());\r\n\r\n if (this.timeZone == 'Central Standard Time')\r\n utcDate.setHours(utcDate.getHours() - 1);\r\n else\r\n if (this.timeZone == 'Mountain Standard Time')\r\n utcDate.setHours(utcDate.getHours() - 2);\r\n else\r\n if (this.timeZone == 'Pacific Standard Time')\r\n utcDate.setHours(utcDate.getHours() - 3);\r\n\r\n var usDate = new Date(utcDate);\r\n resultArray.push({ 'MessageId': d.MessageId, 'ViewedStatus': d.ViewedStatus, 'MessageType': d.MessageType, 'MessageSubject': d.MessageSubject, 'SendDatatime': this.datepipe.transform(usDate, 'MM/dd/yyyy h:mm a') });\r\n\r\n }\r\n });\r\n this.dataTable = {\r\n headerRow: ['Message Id', 'Viewed Status', 'Message Type', 'Subject', 'Date & Time'],\r\n footerRow: [],\r\n dataRows: resultArray\r\n };\r\n this.dataRow = this.dataTable.dataRows;\r\n this.dataHeader = this.dataTable.headerRow;\r\n });\r\n\r\n this.appointmentService.configuration.apiKeys = headerContext;\r\n this.appointmentService.configuration.accessToken = environment.portalAccessKey;\r\n this.appointmentService.getPatientPortalAppointments(this.patId).map(t => t).subscribe(items => {\r\n\r\n this.appointmentData = items.filter(m => m.Type == 1);\r\n let resultArray1: any = [];\r\n this.appointmentData.forEach(d => {\r\n resultArray1.push({ 'ScheduleID': d.ScheduleId, 'AppointmentDateTime': d.AppointmentDateTime, 'ProviderName': d.ProviderName, 'LocationName': d.LocationName, 'LocAddress': d.LocAddress, 'LocPhone': d.LocPhone, 'VisitTypeDescription': d.VisitTypeDescription, 'IsTeleConsult': d.IsTeleConsult, 'VisitReason': d.VisitReason, 'LocCity': d.LocCity, 'LocZip': d.LocZip, 'ApprovedStatus': d.ApprovedStatus, 'IsToday': (this.datepipe.transform(d.AppointmentDateTime, 'MM/dd/yyyy') == this.todaysDate ? true : false) });\r\n });\r\n this.dataTable1 = {\r\n headerRow: ['Date & Time', 'Provider', 'Location', 'Visit Type', 'Visit Reason', 'Status'],\r\n footerRow: [],\r\n dataRows: resultArray1\r\n };\r\n this.dataRow1 = this.dataTable1.dataRows;\r\n this.dataHeader1 = this.dataTable1.headerRow;\r\n });\r\n\r\n this.medicationService.configuration.apiKeys = headerContext;\r\n this.medicationService.configuration.accessToken = environment.portalAccessKey;\r\n this.medicationService.getPatientPortalMedicationList(this.patId).map(t => t).subscribe(items => {\r\n this.medicationData = items;\r\n let resultArray2: any = [];\r\n\r\n this.medicationData.forEach(d => {\r\n resultArray2.push({ 'Name': d.Name, 'eRxdate': d.eRxdate, 'Form': d.Form, 'Route': d.Route, 'Freq': d.Freq, 'Strengthunit': d.Strengthunit, 'Instructions': d.Instructions, 'Quantity': d.Quantity, 'Refills': d.Refills, 'MedicationId': d.medicationID });\r\n });\r\n this.dataTable2 = {\r\n headerRow: ['Medication', 'Start Date', 'Form', 'Route', 'Frequency', 'Strength', 'Instructions', 'Quantity', 'Refills'],\r\n footerRow: [],\r\n dataRows: resultArray2\r\n };\r\n this.dataRow2 = this.dataTable2.dataRows;\r\n this.dataHeader2 = this.dataTable2.headerRow;\r\n });\r\n let newLogin = localStorage.getItem('newlogin');\r\n if (newLogin == 'true') {\r\n $(\"#newLoginModal\").modal(\"show\");\r\n var str = '';\r\n str += 'Instructions: Please click the \"Send Message\" button below to confirm successful access to the patient portal. Once you have clicked \"Send Message,\" you will be able to review your information contained in the portal.

';\r\n str += 'Dear Reception,

';\r\n str += 'I have successfully accessed the patient portal.

';\r\n str += 'Thank you.';\r\n this.messageModalData.MessageSubject = 'Successful access to patient portal';\r\n this.messageModalData.MessageBody = str;\r\n this.messageModalData.MessageId = 0;\r\n let type = 'Other';\r\n $(\"#selectType option:contains(\" + type + \")\").attr('selected', 'selected');\r\n $('#mailbody').html(str);\r\n }\r\n }\r\n sendMessage(type) {\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n this.msgType = type;\r\n let headerContext: { [key: string]: string } = {};\r\n headerContext[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.provService.configuration.apiKeys = headerContext;\r\n this.provService.configuration.accessToken = environment.portalAccessKey;\r\n this.provService.getProviderDetailsForRegUser(userData[0].PatientId).map(t => t).subscribe(provData => {\r\n this.messageModalData.DestinationRoleId = 4;\r\n this.messageModalData.SendType = type;\r\n this.messageModalData.Priority = \"Urgent\";\r\n this.messageModalData.MessageType = '5';//$(\"#selectType\").val().toString();\r\n this.messageModalData.Sender = userData[0].UserName;\r\n this.messageModalData.MessageBody = $('#mailbody').html();\r\n this.messageModalData.MessageId = 0;\r\n this.messageModalData.PatientId = userData[0].PatientId;\r\n this.messageModalData.PMessageSubject = 'Thank You for using the Patient Portal';\r\n var str = '';\r\n str += \"Dear \" + userData[0].UserName + \",

\";\r\n str += \"Thank You for connecting with us through our Patient Portal.

\";\r\n str += \"Our Patient Portal is a convenient way to manage your healthcare and allows you to easily and securely communicate with our practice. It allows you to view your Appointments, Demographics, Medication List, Allergy List, Immunization List, Lab Results, Statements and fill out forms before coming into the office

\";\r\n str += \"Have your complete health records at your finger tips.

\";\r\n str += \"Regards,
\"\r\n str += \"\" + provData.ProviderName + \"
\";\r\n str += provData.PracticeName + \"
\";\r\n str += provData.LocName + \"
\";\r\n str += provData.LocPhone + \"
\";\r\n this.messageModalData.PMessageBody = str;\r\n let headerContext1: { [key: string]: string } = {};\r\n headerContext1[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.PracticeID + \"'}\";\r\n this.sendmsgService.configuration.apiKeys = headerContext1;\r\n this.sendmsgService.configuration.accessToken = environment.portalAccessKey;\r\n this.sendmsgService.NewLoginMessage(this.messageModalData, environment.UserPracticeId, userData[0].PatientId).map(t => t).subscribe(type => {\r\n $(\"#newLoginModal\").modal(\"hide\");\r\n localStorage.setItem('newlogin', 'false')\r\n });\r\n });\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.tokenService.setDashboardDatatable('dbinbox', 'new messages');\r\n this.tokenService.setDashboardDatatable('dbappointment', 'future appointments');\r\n this.tokenService.setDashboardDatatable('dbmedication', 'current medications');\r\n if (this.prodType == 'CVN')\r\n this.tokenService.setDashboardDatatable('dbclipboard', 'clipboards');\r\n console.clear();\r\n if (this.flag == 'Inbox') {\r\n\r\n $('#dbinbox_wrapper').show();\r\n $('#dbclipboard_wrapper').hide();\r\n }\r\n else {\r\n $('#dbclipboard_wrapper').show();\r\n $('#dbinbox_wrapper').hide();\r\n }\r\n $('#dbappointment_wrapper').hide();\r\n $('#dbmedication_wrapper').hide();\r\n $('.dataTables_scroll').css('height', '340px');\r\n setTimeout(() => {\r\n this.spinner.hide();\r\n }, 2000);\r\n }\r\n loadInbox() {\r\n this.isDetails = true;\r\n this.flag = 'Inbox';\r\n $('#dbinbox_wrapper').show();\r\n $('#dbappointment_wrapper').hide();\r\n $('#dbmedication_wrapper').hide();\r\n $('#dbclipboard_wrapper').hide();\r\n }\r\n loadAppointment() {\r\n this.isDetails = true;\r\n this.flag = 'Appointments';\r\n $('#dbinbox_wrapper').hide();\r\n $('#dbappointment_wrapper').show();\r\n $('#dbmedication_wrapper').hide();\r\n $('#dbclipboard_wrapper').hide();\r\n\r\n }\r\n loadMedication() {\r\n this.isDetails = true;\r\n this.flag = 'Medications';\r\n $('#dbinbox_wrapper').hide();\r\n $('#dbappointment_wrapper').hide();\r\n $('#dbmedication_wrapper').show();\r\n $('#dbclipboard_wrapper').hide();\r\n }\r\n loadClipboard() {\r\n this.isDetails = true;\r\n this.flag = 'Clipboard';\r\n $('#dbinbox_wrapper').hide();\r\n $('#dbappointment_wrapper').hide();\r\n $('#dbmedication_wrapper').hide();\r\n $('#dbclipboard_wrapper').show();\r\n }\r\n loadStatement() {\r\n $('#dbinbox_wrapper').hide();\r\n $('#dbappointment_wrapper').hide();\r\n $('#dbmedication_wrapper').hide();\r\n $('#dbclipboard_wrapper').hide();\r\n this.flag = 'Statement';\r\n if (this.statementId > 0) {\r\n this.isDetails = true;\r\n let headerContext: { [key: string]: string } = {};\r\n headerContext[\"Context\"] = \"{'userid': '\" + this.userId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.statementService.configuration.apiKeys = headerContext;\r\n this.statementService.configuration.accessToken = environment.portalAccessKey;\r\n this.statementService.GetStatementReport(this.statementId).map(t => t).subscribe(result => {\r\n let file = new Blob([result], { type: 'application/pdf' });\r\n this.statementURL = this.sanitizer.bypassSecurityTrustResourceUrl(\r\n URL.createObjectURL(file) + '#toolbar=0&navpanes=0&scrollbar=0'\r\n );\r\n });\r\n }\r\n else\r\n this.isDetails = false;\r\n }\r\n goToPayment() {\r\n localStorage.setItem('amount', this.amount);\r\n this.router.navigate(['dashboard', 'financials', 'patientpayments']);\r\n }\r\n redirectToForm() {\r\n if (this.flag == 'Inbox')\r\n this.router.navigate(['dashboard', 'messages', 'Inbox']);\r\n else\r\n if (this.flag == 'Appointments')\r\n this.router.navigate(['dashboard', 'clinical', 'appointments']);\r\n else\r\n if (this.flag == 'Medications')\r\n this.router.navigate(['dashboard', 'clinical', 'medicationlist']);\r\n else\r\n if (this.flag == 'Clipboard')\r\n this.router.navigate(['dashboard', 'clipboards', 'todolist']);\r\n else\r\n if (this.flag == 'Statement') {\r\n localStorage.setItem('reqParam', this.statementId.toString());\r\n this.router.navigate(['dashboard', 'financials', 'statement', this.statementId.toString()]);\r\n }\r\n }\r\n\r\n redirectToRequestAppointments(){\r\n this.isDetails = true;\r\n this.flag = 'NewAppointments';\r\n $('#dbinbox_wrapper').hide();\r\n $('#dbappointment_wrapper').hide();\r\n $('#dbmedication_wrapper').hide();\r\n $('#dbclipboard_wrapper').hide();\r\n this.router.navigate(['dashboard', 'appointments', 'requestappointment']);\r\n }\r\n\r\n viewData(event) {\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n let msId = event.currentTarget.cells[0].innerText.trim();\r\n let selectedRow: any = this.inboxData.filter(m => m.MessageId == msId);\r\n this.modalTitle = 'View Message';\r\n this.msgModalData.MessageType = selectedRow[0].MessageType;\r\n this.msgModalData.MessageSubject = selectedRow[0].MessageSubject;\r\n this.msgModalData.MessageBody = selectedRow[0].MessageBody.replace(/(?:\\r\\n|\\r|\\n)/g, '
').replace(/>>/g, '');\r\n this.msgModalData.MessageId = selectedRow[0].MessageId;\r\n $(\"#inbSelectType\").val(selectedRow[0].MessageTypeId);\r\n $(\"#inbSelectType\").prop('disabled', true);\r\n $(\"#msgSub\").prop('disabled', true);\r\n //let headerContext: { [key: string]: string } = {};\r\n // headerContext[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.PracticeID + \"'}\";\r\n // this.sendmsgService.configuration.apiKeys = headerContext;\r\n // this.sendmsgService.configuration.accessToken = environment.portalAccessKey;\r\n //this.msgModalData.ViewedStatus = true;\r\n //this.msgModalData.MessageType = '0';\r\n //this.msgService.patientPortalSendMessage(this.msgModalData, environment.UserPracticeId).subscribe(type => {\r\n\r\n //});\r\n $(\"#dbModal\").modal(\"show\");\r\n }\r\n openClipboard(childView) {\r\n this.router.navigate(['dashboard', 'clipboards', childView]);\r\n }\r\n mmdNotification(scheduleID) {\r\n this.router.navigate(['dashboard', 'clinical', 'mmdnotification'], { queryParams: { ScheduleID: scheduleID } });\r\n }\r\n}\r\n\r\n"," import { HttpUrlEncodingCodec } from '@angular/common/http';\r\n\r\n/**\r\n* CustomHttpUrlEncodingCodec\r\n* Fix plus sign (+) not encoding, so sent as blank space\r\n* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318\r\n*/\r\nexport class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {\r\n encodeKey(k: string): string {\r\n k = super.encodeKey(k);\r\n return k.replace(/\\+/gi, '%2B');\r\n }\r\n encodeValue(v: string): string {\r\n v = super.encodeValue(v);\r\n return v.replace(/\\+/gi, '%2B');\r\n }\r\n}\r\n\r\n","import { Component, OnInit, OnDestroy, ViewChild, HostListener, Injectable } from '@angular/core';\r\nimport { Subscription } from 'rxjs/Subscription';\r\nimport 'rxjs/add/operator/filter';\r\nimport { NavbarComponent } from '../../shared/navbar/navbar.component';\r\nimport { Location, LocationStrategy, PathLocationStrategy, PopStateEvent, PlatformLocation } from '@angular/common';\r\nimport { Router, NavigationEnd, NavigationStart } from '@angular/router';\r\nimport PerfectScrollbar from 'perfect-scrollbar';\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './admin-layout.component.html'\r\n})\r\n\r\n\r\n@Injectable()\r\nexport class AdminLayoutComponent implements OnInit {\r\n private _router: Subscription;\r\n // url: string;\r\n url: string;\r\n location: Location;\r\n private lastPoppedUrl: string;\r\n private yScrollStack: number[] = [];\r\n @ViewChild('sidebar', { static: false }) sidebar;\r\n @ViewChild(NavbarComponent, { static: false }) navbar: NavbarComponent;\r\n constructor(private router: Router, location: Location) {\r\n this.location = location;\r\n }\r\n\r\n ngOnInit() {\r\n const elemMainPanel = document.querySelector('.main-panel');\r\n const elemSidebar = document.querySelector('.sidebar .sidebar-wrapper');\r\n const elemtable = document.querySelector('.table-responsive');\r\n\r\n this.location.subscribe((ev: PopStateEvent) => {\r\n this.lastPoppedUrl = ev.url;\r\n });\r\n this.router.events.subscribe((event: any) => {\r\n if (event instanceof NavigationStart) {\r\n if (event.url != this.lastPoppedUrl)\r\n this.yScrollStack.push(window.scrollY);\r\n } else if (event instanceof NavigationEnd) {\r\n if (event.url == this.lastPoppedUrl) {\r\n this.lastPoppedUrl = undefined;\r\n window.scrollTo(0, this.yScrollStack.pop());\r\n }\r\n else\r\n window.scrollTo(0, 0);\r\n }\r\n });\r\n this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {\r\n elemMainPanel.scrollTop = 0;\r\n elemSidebar.scrollTop = 0;\r\n elemtable.scrollTop = 0;\r\n });\r\n const html = document.getElementsByTagName('html')[0];\r\n if (!this.isWindows()) {\r\n let ps = new PerfectScrollbar(elemMainPanel);\r\n }\r\n let psElem = new PerfectScrollbar(elemSidebar);\r\n // psElem = new PerfectScrollbar(elemtable);\r\n if (window.matchMedia(`(min-width: 960px)`).matches && !this.isMac()) {\r\n // //let ps = new PerfectScrollbar(elemMainPanel);\r\n // let ps = new PerfectScrollbar(elemSidebar);\r\n // ps = new PerfectScrollbar(elemtable);\r\n html.classList.add('perfect-scrollbar-on');\r\n }\r\n else {\r\n // let ps = new PerfectScrollbar(elemMainPanel);\r\n // ps = new PerfectScrollbar(elemSidebar);\r\n // ps = new PerfectScrollbar(elemtable);\r\n html.classList.add('perfect-scrollbar-off');\r\n }\r\n this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {\r\n this.navbar.sidebarClose();\r\n });\r\n }\r\n public isMap() {\r\n if (this.location.prepareExternalUrl(this.location.path()) == '#/maps/fullscreen') {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n isMac(): boolean {\r\n let bool = false;\r\n if (navigator.platform.toUpperCase().indexOf('MAC') >= 0 || navigator.platform.toUpperCase().indexOf('IPAD') >= 0) {\r\n bool = true;\r\n }\r\n return bool;\r\n }\r\n isWindows(): boolean {\r\n let bool = false;\r\n if (navigator.platform.toUpperCase().indexOf('WIN') >= 0) {\r\n bool = true;\r\n }\r\n return bool;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './auth-layout.component.html'\r\n})\r\n\r\nexport class AuthLayoutComponent {}\r\n","import { NgModule } from '@angular/core';\r\nimport {CommonModule} from \"@angular/common\";\r\n\r\nimport {SanitizeHtml} from \"./app.pipe\"; \r\nimport { UniquePipe } from './unique.pipe';\r\n\r\n@NgModule({\r\n declarations: [SanitizeHtml,UniquePipe], \r\n imports:[CommonModule],\r\n exports: [SanitizeHtml, UniquePipe]\r\n})\r\n\r\nexport class MainPipe{}","import { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'page-ntfound',\r\n templateUrl: './pagenotfound.component.html'\r\n})\r\nexport class PageNotFoundComponent {\r\n constructor(private router: Router) { }\r\n goToLogin() {\r\n localStorage.clear();\r\n localStorage.removeItem(\"newlogin\");\r\n localStorage.removeItem(\"usersession\");\r\n localStorage.removeItem(\"userVal\");\r\n this.router.navigate(['login']);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Response } from '@angular/http';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport 'rxjs/add/operator/map';\r\nimport 'rxjs/add/operator/catch';\r\nimport 'rxjs/add/observable/throw';\r\n//import { AppSettings } from \"./appsettings\";\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Appsetting } from '../../app/model/models';\r\nimport { environment } from '../../environments/environment';\r\n@Injectable()\r\nexport class AppSettingsService {\r\n constructor(private http: HttpClient) {\r\n }\r\n getSettings() {\r\n let appSettings = require('../../../../appsettings.json');\r\n environment.appSetting.azureidentityserver = appSettings.MMDWise.AzureTokenURI;\r\n environment.appSetting.azureapiUrl = appSettings.MMDWise.AzureAPIBasePath;\r\n environment.appSetting.azurePatientPortalUrl = appSettings.MMDWise.AzurePatientPortalUrl;\r\n environment.appSetting.identityserver = appSettings.MMDWise.TokenURI;\r\n environment.appSetting.clientid = appSettings.MMDWise.ClientId;\r\n environment.appSetting.secretkey = appSettings.MMDWise.ClientSecret;\r\n environment.appSetting.portalclientid = appSettings.MMDWise.PortalClientId;\r\n environment.appSetting.portalsecretkey = appSettings.MMDWise.PortalClientSecret;\r\n environment.appSetting.hashcode = appSettings.MMDWise.HashCode;\r\n environment.appSetting.apiUrl = appSettings.MMDWise.APIBasePath;\r\n environment.appSetting.patientPicturesFolderPath = appSettings.MMDWise.PicturePath;\r\n environment.appSetting.defaultImagePath = '';\r\n environment.appSetting.instaPractURL = appSettings.MMDWise.IntrospectURI;\r\n environment.appSetting.connectmmdURL = appSettings.MMDWise.ConnectmmdURL;\r\n environment.appSetting.requestFrom = appSettings.MMDWise.RequestFrom;\r\n environment.appSetting.baseUrI = appSettings.MMDWise.BaseURI;\r\n environment.appSetting.androidAppStore = appSettings.MMDWise.AndroidAppStore;\r\n environment.appSetting.iphoneAppStore = appSettings.MMDWise.IphoneAppStore;\r\n environment.appSetting.isProd = appSettings.MMDWise.IsProd;\r\n environment.appSetting.prodType = appSettings.MMDWise.ProdType;\r\n environment.appSetting.logoutURL = appSettings.MMDWise.LogoutURL;\r\n //return this.http.get(reqPath)\r\n // .map(this.extractData)\r\n // .catch(this.handleErrors);\r\n }\r\n //private extractData(res: Response) {\r\n // let body = res.json();\r\n // return body || {};\r\n //}\r\n //private handleErrors(error: any): Observable {\r\n // console.error('An error occurred', error);\r\n // return Observable.throw(error.message || error);\r\n //}\r\n} ","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { LabOrders, AddPatientPCIFormData } from '../model/models';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPHIDisclosureService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patient';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalMedicationList\r\n * This API get PatientPortalMedicationList\r\n */\r\n public GetPHIDisclosure(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetPHIDisclosure(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetPHIDisclosure(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetPHIDisclosure(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPHIDisclosureByPatientId/`+patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n public GetPHIDisclosureSignature(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetPHIDisclosureSignature(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetPHIDisclosureSignature(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetPHIDisclosureSignature(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientPHIDisclosureSignature/` + patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n //'responseType': 'arraybuffer' as 'json'\r\n }\r\n );\r\n }\r\n\r\n public GetAcknowledgementForNoticeofPrivacyPracticesByPatientId(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetAcknowledgementForNoticeofPrivacyPracticesByPatientId(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetAcknowledgementForNoticeofPrivacyPracticesByPatientId(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetAcknowledgementForNoticeofPrivacyPracticesByPatientId(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetAcknowledgementForNoticeofPrivacyPracticesByPatientId/` + patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public GetAcknowledgementForNoticeofPrivacyPracticesSignature(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetAcknowledgementForNoticeofPrivacyPracticesSignature(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetAcknowledgementForNoticeofPrivacyPracticesSignature(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetAcknowledgementForNoticeofPrivacyPracticesSignature(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetAcknowledgementForNoticeofPrivacyPracticesSignature/` + patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n public PostPHIDisclosure(data: any, observe?: 'body', reportProgress?: boolean): Observable;\r\n public PostPHIDisclosure(data: any, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public PostPHIDisclosure(data: any, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public PostPHIDisclosure(data: any, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n //let formParams: { append(param: string, value: any): HttpParams; };\r\n //let useForm = false;\r\n //let convertFormParamsToString = false;\r\n //if (useForm) {\r\n // // formParams = new FormData();\r\n //} else {\r\n // formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //}\r\n\r\n //if (data.patientId !== undefined) {\r\n // formParams = formParams.append('patientId', data.patientId) || formParams;\r\n //}\r\n //if (data.authorizeForAnsweringMachine !== undefined) {\r\n // formParams = formParams.append('authorizeForAnsweringMachine', data.authorizeForAnsweringMachine) || formParams;\r\n //}\r\n //if (data.specificInstructions !== undefined) {\r\n // formParams = formParams.append('specificInstructions', data.specificInstructions) || formParams;\r\n //}\r\n //if (data.dateOfVisit !== undefined) {\r\n // formParams = formParams.append('dateOfVisit', data.dateOfVisit) || formParams;\r\n //}\r\n //if (data.signature !== undefined) {\r\n // formParams = formParams.append('signature', data.signature) || formParams;\r\n //}\r\n //if (data.isPatientMinor !== undefined) {\r\n // formParams = formParams.append('isPatientMinor', data.isPatientMinor) || formParams;\r\n //}\r\n //if (data.minorAge !== undefined) {\r\n // formParams = formParams.append('minorAge', data.minorAge) || formParams;\r\n //}\r\n //if (data.reasonForUnableToSign !== undefined) {\r\n // formParams = formParams.append('reasonForUnableToSign', data.reasonForUnableToSign) || formParams;\r\n //}\r\n\r\n return this.httpClient.put(`${this.basePath}/AddOrUpdatePHIDisclosure`,\r\n data,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress,\r\n }\r\n );\r\n }\r\n\r\n\r\n public PosteAuthorizationToDisclosePHI(data: any, observe?: 'body', reportProgress?: boolean): Observable;\r\n public PosteAuthorizationToDisclosePHI(data: any, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public PosteAuthorizationToDisclosePHI(data: any, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public PosteAuthorizationToDisclosePHI(data: any, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n if (data.patientId !== undefined) {\r\n formParams = formParams.append('patientId', data.patientId) || formParams;\r\n }\r\n if (data.discloseToName !== undefined) {\r\n formParams = formParams.append('discloseToName', data.discloseToName) || formParams;\r\n }\r\n if (data.relationshipToPatient !== undefined) {\r\n formParams = formParams.append('relationshipToPatient', data.relationshipToPatient) || formParams;\r\n }\r\n if (data.address !== undefined) {\r\n formParams = formParams.append('address', data.address) || formParams;\r\n }\r\n if (data.phone !== undefined) {\r\n formParams = formParams.append('phone', data.phone) || formParams;\r\n }\r\n if (data.discloseAppointmentReminderMessages !== undefined) {\r\n formParams = formParams.append('discloseAppointmentReminderMessages', data.discloseAppointmentReminderMessages) || formParams;\r\n }\r\n if (data.discloseMedicationList !== undefined) {\r\n formParams = formParams.append('discloseMedicationList', data.discloseMedicationList) || formParams;\r\n }\r\n if (data.discloseListOfAllergies !== undefined) {\r\n formParams = formParams.append('discloseListOfAllergies', data.discloseListOfAllergies) || formParams;\r\n }\r\n\r\n\r\n if (data.discloseImmunizationList !== undefined) {\r\n formParams = formParams.append('discloseImmunizationList', data.discloseImmunizationList) || formParams;\r\n }\r\n if (data.discloseMostRecentHistory !== undefined) {\r\n formParams = formParams.append('discloseMostRecentHistory', data.discloseMostRecentHistory) || formParams;\r\n }\r\n if (data.discloseLaboratoryResults !== undefined) {\r\n formParams = formParams.append('discloseLaboratoryResults', data.discloseLaboratoryResults) || formParams;\r\n }\r\n if (data.discloseXRayAndImagingReports !== undefined) {\r\n formParams = formParams.append('discloseXRayAndImagingReports', data.discloseXRayAndImagingReports) || formParams;\r\n }\r\n return this.httpClient.put(`${this.basePath}/UpdateAuthorizationToDisclosePHI`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public PostAcknowledgementForNoticeofPrivacyPractices(data: any, observe?: 'body', reportProgress?: boolean): Observable;\r\n public PostAcknowledgementForNoticeofPrivacyPractices(data: any, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public PostAcknowledgementForNoticeofPrivacyPractices(data: any, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public PostAcknowledgementForNoticeofPrivacyPractices(data: any, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n if (data.patientId !== undefined) {\r\n formParams = formParams.append('patientId', data.patientId) || formParams;\r\n }\r\n\r\n if (data.signature !== undefined) {\r\n formParams = formParams.append('signature', data.signature) || formParams;\r\n }\r\n if (data.signedDate !== undefined) {\r\n formParams = formParams.append('signedDate', data.signedDate) || formParams;\r\n }\r\n if (data.relationshipToPatient !== undefined) {\r\n formParams = formParams.append('relationshipToPatient', data.relationshipToPatient) || formParams;\r\n }\r\n \r\n return this.httpClient.post(`${this.basePath}/AddOrUpdateAcknowledgementForNoticeofPrivacyPractices`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public GetPCIForms(formId: number, status: number, patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetPCIForms(formId: number, status: number, patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetPCIForms(formId: number, status: number, patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetPCIForms(formId: number,status:number,patientId:number,observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (formId !== undefined && formId !== null) {\r\n queryParameters = queryParameters.set('formId', formId);\r\n }\r\n if (status !== undefined && status !== null) {\r\n queryParameters = queryParameters.set('status', status);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n \r\n return this.httpClient.get>(`${this.basePath}/GetPCIForms`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n public GetPatientPCIFormInfo(formId: number, patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetPatientPCIFormInfo(formId: number, patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetPatientPCIFormInfo(formId: number, patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetPatientPCIFormInfo(formId: number, patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (formId !== undefined && formId !== null) {\r\n // queryParameters = queryParameters.set('formId', formId);\r\n //}\r\n \r\n //if (patientId !== undefined && patientId !== null) {\r\n // queryParameters = queryParameters.set('patientId', patientId);\r\n //}\r\n\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n \r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientPCIFormInfo/` + formId+'/'+patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n\r\n public AddPatientPCIFormInfo(patientpciformdata: AddPatientPCIFormData, observe?: 'body', reportProgress?: boolean): Observable;\r\n public AddPatientPCIFormInfo(patientpciformdata: AddPatientPCIFormData, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public AddPatientPCIFormInfo(patientpciformdata: AddPatientPCIFormData, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public AddPatientPCIFormInfo(patientpciformdata: AddPatientPCIFormData, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n \r\n\r\n return this.httpClient.post(`${this.basePath}/AddPatientPCIFormInfo`,\r\n patientpciformdata,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n public GetPatientPCIFormSignature(patientId: number, formId:number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientPCIFormSignature/` + formId +`/`+ patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n //'responseType': 'arraybuffer' as 'json'\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class AddAuthorizeNetTransctionLogService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.AddAuthorizeNetTransctionLog\r\n * This API Authorize Log\r\n * @param patientId Integer type ID for patientId\r\n * @param transactionID Integer type ID for transactionID\r\n * @param authCode Authentication code\r\n * @param errorMessage Error description\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public addAuthorizeNetTransctionLog(patientId: number, transactionID: number, authCode: string, errorMessage?: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public addAuthorizeNetTransctionLog(patientId: number, transactionID: number, authCode: string, errorMessage?: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public addAuthorizeNetTransctionLog(patientId: number, transactionID: number, authCode: string, errorMessage?: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public addAuthorizeNetTransctionLog(patientId: number, transactionID: number, authCode: string, errorMessage?: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling addAuthorizeNetTransctionLog.');\r\n }\r\n\r\n if (transactionID === null || transactionID === undefined) {\r\n throw new Error('Required parameter transactionID was null or undefined when calling addAuthorizeNetTransctionLog.');\r\n }\r\n\r\n if (authCode === null || authCode === undefined) {\r\n throw new Error('Required parameter authCode was null or undefined when calling addAuthorizeNetTransctionLog.');\r\n }\r\n\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (patientId !== undefined) {\r\n formParams = formParams.append('patientId', patientId) || formParams;\r\n }\r\n if (transactionID !== undefined) {\r\n formParams = formParams.append('transactionID', transactionID) || formParams;\r\n }\r\n if (authCode !== undefined) {\r\n formParams = formParams.append('authCode', authCode) || formParams;\r\n }\r\n if (errorMessage !== undefined) {\r\n formParams = formParams.append('errorMessage', errorMessage) || formParams;\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/AddAuthorizeNetTransctionLog`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","export * from './addAuthorizeNetTransctionLog.service';\r\nimport { AddAuthorizeNetTransctionLogService } from './addAuthorizeNetTransctionLog.service';\r\nexport * from './archivePatientPortalPatientMessage.service';\r\nimport { ArchivePatientPortalPatientMessageService } from './archivePatientPortalPatientMessage.service';\r\nexport * from './createPracticeRecord.service';\r\nimport { CreatePracticeRecordService } from './createPracticeRecord.service';\r\nexport * from './discardPatientPortalDraftMessage.service';\r\nimport { DiscardPatientPortalDraftMessageService } from './discardPatientPortalDraftMessage.service';\r\nexport * from './getCDSReferenceURL.service';\r\nimport { GetCDSReferenceURLService } from './getCDSReferenceURL.service';\r\nexport * from './getPatientAccessLog.service';\r\nimport { GetPatientAccessLogService } from './getPatientAccessLog.service';\r\nexport * from './getPatientArchiveMessages.service';\r\nimport { GetPatientArchiveMessagesService } from './getPatientArchiveMessages.service';\r\nexport * from './getPatientDetailsbyGUID.service';\r\nimport { GetPatientDetailsbyGUIDService } from './getPatientDetailsbyGUID.service';\r\nexport * from './getPatientDraftMessages.service';\r\nimport { GetPatientDraftMessagesService } from './getPatientDraftMessages.service';\r\nexport * from './getPatientEducationalResource.service';\r\nimport { GetPatientEducationalResourceService } from './getPatientEducationalResource.service';\r\nexport * from './getPatientEducationalResources.service';\r\nimport { GetPatientEducationalResourcesService } from './getPatientEducationalResources.service';\r\nexport * from './getPatientEmailCountByPatientId.service';\r\nimport { GetPatientEmailCountByPatientIdService } from './getPatientEmailCountByPatientId.service';\r\nexport * from './getPatientInboxMessages.service';\r\nimport { GetPatientInboxMessagesService } from './getPatientInboxMessages.service';\r\nexport * from './getPatientLocationIdByPatientId.service';\r\nimport { GetPatientLocationIdByPatientIdService } from './getPatientLocationIdByPatientId.service';\r\nexport * from './getPatientLoginDetails.service';\r\nimport { GetPatientLoginDetailsService } from './getPatientLoginDetails.service';\r\nexport * from './getPatientPortalAllergyList.service';\r\nimport { GetPatientPortalAllergyListService } from './getPatientPortalAllergyList.service';\r\nexport * from './getPatientPortalAppointments.service';\r\nimport { GetPatientPortalAppointmentsService } from './getPatientPortalAppointments.service';\r\nexport * from './getPatientPortalClinicalDecisionReport.service';\r\nimport { GetPatientPortalClinicalDecisionReportService } from './getPatientPortalClinicalDecisionReport.service';\r\nexport * from './getPatientPortalForms.service';\r\nimport { GetPatientPortalFormsService } from './getPatientPortalForms.service';\r\nexport * from './getPatientPortalImmunizationList.service';\r\nimport { GetPatientPortalImmunizationListService } from './getPatientPortalImmunizationList.service';\r\nexport * from './getPatientPortalMedicationList.service';\r\nimport { GetPatientPortalMedicationListService } from './getPatientPortalMedicationList.service';\r\nexport * from './getPatientPortalMessageTypes.service';\r\nimport { GetPatientPortalMessageTypesService } from './getPatientPortalMessageTypes.service';\r\nexport * from './getPatientPortalPracticeDetailsByPracticeId.service';\r\nimport { GetPatientPortalPracticeDetailsByPracticeIdService } from './getPatientPortalPracticeDetailsByPracticeId.service';\r\nexport * from './getPatientPortalProblemList.service';\r\nimport { GetPatientPortalProblemListService } from './getPatientPortalProblemList.service';\r\nexport * from './getPatientPortalReceipts.service';\r\nimport { GetPatientPortalReceiptsService } from './getPatientPortalReceipts.service';\r\nexport * from './getPatientPortalStatementMenu.service';\r\nimport { GetPatientPortalStatementMenuService } from './getPatientPortalStatementMenu.service';\r\nexport * from './getPatientPortalTeleHealthData.service';\r\nimport { GetPatientPortalTeleHealthDataService } from './getPatientPortalTeleHealthData.service';\r\nexport * from './getPatientPortalViewLog.service';\r\nimport { GetPatientPortalViewLogService } from './getPatientPortalViewLog.service';\r\nexport * from './getPatientProfileById.service';\r\nimport { GetPatientProfileByIdService } from './getPatientProfileById.service';\r\nexport * from './getPatientSentMessages.service';\r\nimport { GetPatientSentMessagesService } from './getPatientSentMessages.service';\r\nexport * from './getProviderDetailsForRegUser.service';\r\nimport { GetProviderDetailsForRegUserService } from './getProviderDetailsForRegUser.service';\r\nexport * from './getSecurityQuestionsLookup.service';\r\nimport { GetSecurityQuestionsLookupService } from './getSecurityQuestionsLookup.service';\r\nexport * from './getUserMenu.service';\r\nimport { GetUserMenuService } from './getUserMenu.service';\r\nexport * from './getUserProfileById.service';\r\nimport { GetUserProfileByIdService } from './getUserProfileById.service';\r\nexport * from './getUsers.service';\r\nimport { GetUsersService } from './getUsers.service';\r\nexport * from './patientPortalDashboard.service';\r\nimport { PatientPortalDashboardService } from './patientPortalDashboard.service';\r\nexport * from './patientPortalDemographics.service';\r\nimport { PatientPortalDemographicsService } from './patientPortalDemographics.service';\r\nexport * from './patientPortalGeneratePDFReport.service';\r\nimport { PatientPortalGeneratePDFReportService } from './patientPortalGeneratePDFReport.service';\r\nexport * from './patientPortalMarkMessageAsRead.service';\r\nimport { PatientPortalMarkMessageAsReadService } from './patientPortalMarkMessageAsRead.service';\r\nexport * from './patientPortalMessageBoard.service';\r\nimport { PatientPortalMessageBoardService } from './patientPortalMessageBoard.service';\r\nexport * from './patientPortalSendMessage.service';\r\nimport { PatientPortalSendMessageService } from './patientPortalSendMessage.service';\r\nexport * from './recordLogToTable.service';\r\nimport { RecordLogToTableService } from './recordLogToTable.service';\r\nexport * from './sendMessageFromPatientPortalToPractice.service';\r\nimport { SendMessageFromPatientPortalToPracticeService } from './sendMessageFromPatientPortalToPractice.service';\r\nexport * from './updateAndSendMessageFromPatientPortalToPractice.service';\r\nimport { UpdateAndSendMessageFromPatientPortalToPracticeService } from './updateAndSendMessageFromPatientPortalToPractice.service';\r\nexport * from './updatePatientLookupGUID.service';\r\nimport { UpdatePatientLookupGUIDService } from './updatePatientLookupGUID.service';\r\nexport * from './updatePatientMedicationStatus.service';\r\nimport { UpdatePatientMedicationStatusService } from './updatePatientMedicationStatus.service';\r\nexport * from './updatePatientPassword.service';\r\nimport { UpdatePatientPasswordService } from './updatePatientPassword.service';\r\nexport * from './updatePatientPortalPatientDetails.service';\r\nimport { UpdatePatientPortalPatientDetailsService } from './updatePatientPortalPatientDetails.service';\r\nexport * from './updatePatientSecurityDetails.service';\r\nimport { UpdatePatientSecurityDetailsService } from './updatePatientSecurityDetails.service';\r\nexport * from './updatePracticeDatabaseViews.service';\r\nimport { UpdatePracticeDatabaseViewsService } from './updatePracticeDatabaseViews.service';\r\nexport * from './updateUserConsentFormAcceptance.service';\r\nimport { UpdateUserConsentFormAcceptanceService } from './updateUserConsentFormAcceptance.service';\r\nexport * from './updateUserDisclaimerAcceptance.service';\r\nimport { UpdateUserDisclaimerAcceptanceService } from './updateUserDisclaimerAcceptance.service';\r\nexport * from './updateUserFirstLoginStatus.service';\r\nimport { UpdateUserFirstLoginStatusService } from './updateUserFirstLoginStatus.service';\r\nexport * from './validateUser.service';\r\nimport { ValidateUserService } from './validateUser.service';\r\nexport * from './common.service';\r\nimport { CommonService } from './common.service';\r\nexport * from './getPatientPortalLabresults.service';\r\nimport { GetPatientPortalLabResultService } from './getPatientPortalLabresults.service';\r\nexport * from './practicemessages.service';\r\nimport { GetPracticeMessagesService } from './practicemessages.service';\r\nexport * from './savePictureDetails.service';\r\nimport { SavePatientPortalPictureDetailsService } from './savePictureDetails.service';\r\nexport * from './getPatientPaymentDetails.service';\r\nimport { GetPatientPaymentDetailsService } from './getPatientPaymentDetails.service';\r\n\r\nexport * from './patientImageService';\r\nimport { DataSharingService } from './patientImageService';\r\n\r\nexport * from './confirm-dialog.service';\r\nimport { ConfirmDialogService } from './confirm-dialog.service';\r\n\r\nexport * from './getStatement.service';\r\nimport { GetStatementService } from './getStatement.service';\r\n\r\nexport * from './getLabReport.service';\r\nimport { GetLabReportService } from './getLabReport.service';\r\nexport * from './getLabScanResult.service';\r\nimport { GetLabScanResultService } from './getLabScanResult.service';\r\nexport * from './getLabScanFile.service';\r\nimport { GetLabScanFileService } from './getLabScanFile.service';\r\nexport * from './getReceiptReport.service';\r\nimport { GetReceiptReportService } from './getReceiptReport.service';\r\nexport * from './clinicalSummary.service';\r\nimport { ClinicalSummaryService } from './clinicalSummary.service';\r\n\r\nexport * from './requestappointments.service';\r\nimport { RequestAppointmentService } from './requestappointments.service';\r\n\r\nexport * from './updateClinicalPreferences.service';\r\nimport { UpdateClinicalPreferencesService } from './updateClinicalPreferences.service';\r\n\r\nexport * from './GetPHIDisclosure.service';\r\nimport { GetPHIDisclosureService } from './GetPHIDisclosure.service';\r\n\r\nexport * from './getJotFormURL.service';\r\nimport { getJotFormURLService } from './getJotFormURL.service';\r\n\r\nexport * from './visitNotes.service';\r\nimport { GetVisitNotesService } from './visitNotes.service';\r\nexport * from './getVisitSummary.service';\r\nimport { GetVisitSummaryService } from './getVisitSummary.service';\r\nexport * from './resetWebUserPassword.service';\r\nimport { ResetWebUserPasswordService } from './resetWebUserPassword.service';\r\nexport * from './newLoginMessage.service';\r\nimport { NewLoginMessageService } from './newLoginMessage.service';\r\nexport * from './getEMRFinalizeProgressNotes.service';\r\nimport { GetEMRFinalizeProgressNotesService } from './getEMRFinalizeProgressNotes.service';\r\nexport * from './getStatementReport.service';\r\nimport { GetStatementReportService } from './getStatementReport.service';\r\nexport * from './lookupData.service';\r\nimport { LookupDataService } from './lookupData.service';\r\nexport * from './AppsettingService';\r\nimport { AppSettingsService } from './AppsettingService';\r\nexport * from './practiceCloudStorageConfiguration.service';\r\nimport { ClipBoardService } from './clipboard.service';\r\nexport * from './clipboard.service';\r\nimport { PracticeCloudStorageService } from './practiceCloudStorageConfiguration.service';\r\nimport { CloudDocumentsService } from './cloudDocuments.service';\r\nexport * from './cloudDocuments.service';\r\nimport { ImmunotherapyService } from './immunotherapyService.service';\r\nexport * from './immunotherapyService.service';\r\nexport const APIS = [AddAuthorizeNetTransctionLogService, ArchivePatientPortalPatientMessageService, CreatePracticeRecordService, DiscardPatientPortalDraftMessageService, GetCDSReferenceURLService, GetPatientAccessLogService, GetPatientArchiveMessagesService, GetPatientDetailsbyGUIDService, GetPatientDraftMessagesService, GetPatientEducationalResourceService, GetPatientEducationalResourcesService, GetPatientEmailCountByPatientIdService, GetPatientInboxMessagesService, GetPatientLocationIdByPatientIdService, GetPatientLoginDetailsService, GetPatientPortalAllergyListService, GetPatientPortalAppointmentsService, GetPatientPortalClinicalDecisionReportService, GetPatientPortalFormsService, GetPatientPortalImmunizationListService, GetPatientPortalMedicationListService, GetPatientPortalMessageTypesService, GetPatientPortalPracticeDetailsByPracticeIdService, GetPatientPortalProblemListService, GetPatientPortalReceiptsService, GetPatientPortalStatementMenuService, GetPatientPortalTeleHealthDataService, GetPatientPortalViewLogService, GetPatientProfileByIdService, GetPatientSentMessagesService, GetProviderDetailsForRegUserService, GetSecurityQuestionsLookupService, GetUserMenuService, GetUserProfileByIdService, GetUsersService, PatientPortalDashboardService, PatientPortalDemographicsService, PatientPortalGeneratePDFReportService, PatientPortalMarkMessageAsReadService, PatientPortalMessageBoardService, PatientPortalSendMessageService, RecordLogToTableService, SendMessageFromPatientPortalToPracticeService, UpdateAndSendMessageFromPatientPortalToPracticeService, UpdatePatientLookupGUIDService, UpdatePatientMedicationStatusService, UpdatePatientPasswordService, UpdatePatientPortalPatientDetailsService, UpdatePatientSecurityDetailsService, UpdatePracticeDatabaseViewsService, UpdateUserConsentFormAcceptanceService, UpdateUserDisclaimerAcceptanceService, UpdateUserFirstLoginStatusService, ValidateUserService, CommonService, GetPatientPortalLabResultService, GetPracticeMessagesService, SavePatientPortalPictureDetailsService, GetPatientPaymentDetailsService, DataSharingService, ConfirmDialogService, GetStatementService, GetLabReportService, GetLabScanResultService, GetLabScanFileService, GetReceiptReportService, ClinicalSummaryService, RequestAppointmentService, UpdateClinicalPreferencesService, GetPHIDisclosureService, getJotFormURLService, GetVisitNotesService, GetVisitSummaryService, ResetWebUserPasswordService, NewLoginMessageService, GetEMRFinalizeProgressNotesService, GetStatementReportService, LookupDataService, AppSettingsService, PracticeCloudStorageService, ClipBoardService, CloudDocumentsService, ImmunotherapyService];\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class ArchivePatientPortalPatientMessageService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.ArchivePatientPortalPatientMessage\r\n * This API Archive patient portal messages\r\n * @param practiceId Set Practice value\r\n * @param messageId Set message value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public archivePatientPortalPatientMessage(practiceId: number, messageId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public archivePatientPortalPatientMessage(practiceId: number, messageId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public archivePatientPortalPatientMessage(practiceId: number, messageId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public archivePatientPortalPatientMessage(practiceId: number, messageId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling archivePatientPortalPatientMessage.');\r\n }\r\n\r\n if (messageId === null || messageId === undefined) {\r\n throw new Error('Required parameter messageId was null or undefined when calling archivePatientPortalPatientMessage.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (practiceId !== undefined) {\r\n formParams = formParams.append('practiceId', practiceId) || formParams;\r\n }\r\n if (messageId !== undefined) {\r\n formParams = formParams.append('messageId', messageId) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/ArchivePatientPortalPatientMessage`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { CCDAIP, LabOrders } from '../model/models';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class ClinicalSummaryService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientemr';\r\n protected basePathPT = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalMedicationList\r\n * This API get PatientPortalMedicationList\r\n */\r\n public ClinicalSummary(searchJson: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public ClinicalSummary(searchJson: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public ClinicalSummary(searchJson: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public ClinicalSummary(searchJson: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (searchJson !== undefined && searchJson !== null) {\r\n queryParameters = queryParameters.set('Search', searchJson);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetEMRClinicalSummary`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n public GenerateCCDAV2(ccdaData: CCDAIP, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n formParams = formParams.append('patientId', ccdaData.patientId) || formParams;\r\n\r\n formParams = formParams.append('startDate', ccdaData.startDate) || formParams;\r\n\r\n formParams = formParams.append('endDate', ccdaData.endDate) || formParams;\r\n\r\n formParams = formParams.append('userId', ccdaData.userId) || formParams;\r\n\r\n formParams = formParams.append('DocumentType', ccdaData.DocumentType) || formParams;\r\n\r\n formParams = formParams.append('practiceID', ccdaData.practiceID) || formParams;\r\n\r\n formParams = formParams.append('practiceHeader', ccdaData.practiceHeader) || formParams;\r\n\r\n formParams = formParams.append('patientPicturesFolderPath', ccdaData.patientPicturesFolderPath) || formParams;\r\n\r\n formParams = formParams.append('requestType', ccdaData.requestType) || formParams;\r\n formParams = formParams.append('sender', ccdaData.sender) || formParams;\r\n formParams = formParams.append('subject', ccdaData.subject) || formParams;\r\n formParams = formParams.append('message', ccdaData.message) || formParams;\r\n\r\n return this.httpClient.post(`${this.basePathPT}/GenerateCCDAV2`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n // params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class ClipBoardService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientcare';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n public getPatientAssignedClipboardsInfo(patientId: number,status:number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (status !== undefined && status !== null) {\r\n queryParameters = queryParameters.set('status', status);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientAssignedClipboardsInfo`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n \r\n public getPatientAssignedQuestionAnswersInfo(patientClipboardid: number, screeningMeasureId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (screeningMeasureId !== undefined && screeningMeasureId !== null) {\r\n queryParameters = queryParameters.set('ScreeningMeasureId', screeningMeasureId);\r\n }\r\n if (patientClipboardid !== undefined && patientClipboardid !== null) {\r\n queryParameters = queryParameters.set('PatientClipboardid', patientClipboardid);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientAssignedQuestionAnswersInfo`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public updatePatientAssignedQuestionAnswersInfo(patientClipboardid: number, screeningMeasureId: number, questionAnswersInfo: any, screeningMeasure: string, patientEmailId:string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (screeningMeasureId !== undefined && screeningMeasureId !== null) {\r\n queryParameters = queryParameters.set('ScreeningMeasureId', screeningMeasureId);\r\n }\r\n if (patientClipboardid !== undefined && patientClipboardid !== null) {\r\n queryParameters = queryParameters.set('PatientClipboardid', patientClipboardid);\r\n }\r\n if (screeningMeasure !== undefined && screeningMeasure !== null) {\r\n queryParameters = queryParameters.set('ScreeningMeasure', screeningMeasure);\r\n }\r\n if (patientEmailId !== undefined && patientEmailId !== null) {\r\n queryParameters = queryParameters.set('PatientEmailId', patientEmailId);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.post(`${this.basePath}/UpdatePatientAssignedQuestionAnswersInfo`,\r\n questionAnswersInfo,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n \r\n public getFormHTML(patientId: number, formId: number, fileName: string, patientClipboardId: number, formTitle:string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('PatientId', patientId);\r\n }\r\n if (formId !== undefined && formId !== null) {\r\n queryParameters = queryParameters.set('FormId', formId);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('FileName', fileName);\r\n }\r\n if (patientClipboardId !== undefined && patientClipboardId !== null) {\r\n queryParameters = queryParameters.set('PatientClipboardId', patientClipboardId);\r\n }\r\n //FormTitle\r\n if (formTitle !== undefined && formTitle !== null) {\r\n queryParameters = queryParameters.set('FormTitle', formTitle);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetScreeningFormHtmlContent`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n \r\n\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class CloudDocumentsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n protected docPath = environment.appSetting.apiUrl + 'documents';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n public getBlobList(mrnNo: string, folderName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (folderName !== undefined && folderName !== null) {\r\n queryParameters = queryParameters.set('folderName', folderName);\r\n }\r\n let searchFile = '';//'MRN_'+mrnNo\r\n if (mrnNo !== undefined && mrnNo !== null) {\r\n queryParameters = queryParameters.set('searchByFileName', searchFile);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.docPath}/GetBlobList`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public getBlobSasUri(fileName: string, folderName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (folderName !== undefined && folderName !== null) {\r\n queryParameters = queryParameters.set('folderName', folderName);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('fileName', fileName);\r\n }\r\n let headers = this.defaultHeaders;\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.docPath}/GetBlobSasUri`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","import { Injectable, OnInit } from '@angular/core';\r\nimport { environment } from '../../environments/environment';\r\nimport { sync } from 'glob';\r\nimport { empty } from 'rxjs';\r\n//import * as $ from \"jquery\";\r\ndeclare var $: any;\r\nexport class CommonService implements OnInit {\r\n\r\n ngOnInit() {\r\n\r\n }\r\n GetKey() {\r\n let data: any;\r\n let options: any;\r\n data = {\r\n 'grant_type': 'client_credentials',\r\n 'client_id': environment.appSetting.clientid,\r\n 'client_secret': environment.appSetting.secretkey,\r\n 'scope': 'user/*.write'\r\n }\r\n options = {\r\n url: environment.appSetting.identityserver,\r\n type: 'POST',\r\n data: data,\r\n async: false\r\n };\r\n\r\n $.ajax(options).done(function (res) {\r\n environment.accessKey = res.access_token;\r\n environment.PracticeID = res.PracticeId;\r\n });\r\n\r\n }\r\n GetLoginPortalKey(username, password, type) {\r\n let data: any;\r\n let options: any;\r\n data = {\r\n 'grant_type': 'password',\r\n 'client_id': environment.appSetting.portalclientid,\r\n 'client_secret': environment.appSetting.portalsecretkey,\r\n 'scope': 'user/*.write',\r\n 'UserName': username,\r\n 'Password': password\r\n }\r\n options = {\r\n url: environment.appSetting.identityserver,\r\n type: 'POST',\r\n data: data,\r\n async: false\r\n };\r\n\r\n $.ajax(options).done(function (res) {\r\n environment.portalAccessKey = res.access_token;\r\n environment.PracticeID = res.PracticeId;\r\n if (type == 'login')\r\n environment.UserPracticeId = res.UserPracticeId;\r\n });\r\n\r\n }\r\n GetPortalKey(username, password) {\r\n let data: any;\r\n let options: any;\r\n data = {\r\n 'grant_type': 'password',\r\n 'client_id': environment.appSetting.portalclientid,\r\n 'client_secret': environment.appSetting.portalsecretkey,\r\n 'scope': 'user/*.write',\r\n 'UserName': username,\r\n 'Password': password\r\n }\r\n options = {\r\n url: environment.appSetting.identityserver,\r\n type: 'POST',\r\n data: data,\r\n async: false\r\n };\r\n\r\n $.ajax(options).done(function (res) {\r\n environment.portalAccessKey = res.access_token;\r\n environment.PracticeID = res.PracticeId;\r\n if (environment.UserPracticeId == '')\r\n environment.UserPracticeId = localStorage.getItem('practcode');\r\n });\r\n\r\n }\r\n GetAzureKey() {\r\n let data: any;\r\n let options: any;\r\n data = {\r\n 'grant_type': 'client_credentials',\r\n 'client_id': environment.appSetting.clientid,\r\n 'client_secret': environment.appSetting.secretkey,\r\n 'scope': 'user/*.write'\r\n }\r\n options = {\r\n url: environment.appSetting.azureidentityserver,\r\n type: 'POST',\r\n data: data,\r\n async: false\r\n };\r\n\r\n $.ajax(options).done(function (res) {\r\n environment.azureaccessKey = res.access_token;\r\n environment.PracticeID = res.PracticeId;\r\n });\r\n\r\n }\r\n GetAzureLoginPortalKey(username, password, type) {\r\n let data: any;\r\n let options: any;\r\n data = {\r\n 'grant_type': 'password',\r\n 'client_id': environment.appSetting.portalclientid,\r\n 'client_secret': environment.appSetting.portalsecretkey,\r\n 'scope': 'user/*.write',\r\n 'UserName': username,\r\n 'Password': password\r\n }\r\n options = {\r\n url: environment.appSetting.azureidentityserver,\r\n type: 'POST',\r\n data: data,\r\n async: false\r\n };\r\n\r\n $.ajax(options).done(function (res) {\r\n environment.azureportalAccessKey = res.access_token;\r\n environment.PracticeID = res.PracticeId;\r\n if (type == 'login')\r\n environment.UserPracticeId = res.UserPracticeId;\r\n });\r\n\r\n }\r\n GetAzurePortalKey(username, password) {\r\n let data: any;\r\n let options: any;\r\n data = {\r\n 'grant_type': 'password',\r\n 'client_id': environment.appSetting.portalclientid,\r\n 'client_secret': environment.appSetting.portalsecretkey,\r\n 'scope': 'user/*.write',\r\n 'UserName': username,\r\n 'Password': password\r\n }\r\n options = {\r\n url: environment.appSetting.azureidentityserver,\r\n type: 'POST',\r\n data: data,\r\n async: false\r\n };\r\n\r\n $.ajax(options).done(function (res) {\r\n environment.azureportalAccessKey = res.access_token;\r\n environment.PracticeID = res.PracticeId;\r\n if (environment.UserPracticeId == '')\r\n environment.UserPracticeId = localStorage.getItem('practcode');\r\n });\r\n\r\n }\r\n setDashboardDatatable(id, input) {\r\n $('#' + id).DataTable({\r\n \"pagingType\": \"full_numbers\",\r\n \"lengthMenu\": [\r\n [10, 25, 50, -1],\r\n [10, 25, 50, \"All\"]\r\n ],\r\n responsive: true,\r\n ordering: false,\r\n fixedHeader: {\r\n header: true,\r\n headerOffset: 45,\r\n },\r\n\r\n scrollX: true,\r\n language: {\r\n search: \"_INPUT_\",\r\n searchPlaceholder: \"Search records\",\r\n emptyTable: \"No \" + input.replace('-', ' ')\r\n }\r\n\r\n });\r\n\r\n }\r\n setDatatable(id, input) {\r\n //var table = $('#' + id).DataTable();\r\n //table.destroy();\r\n $('#' + id).DataTable({\r\n \"pagingType\": \"full_numbers\",\r\n \"lengthMenu\": [\r\n [10, 25, 50, -1],\r\n [10, 25, 50, \"All\"]\r\n ],\r\n responsive: true,\r\n ordering: false,\r\n fixedHeader: {\r\n header: true,\r\n headerOffset: 45,\r\n },\r\n\r\n scrollX: true,\r\n language: {\r\n search: \"_INPUT_\",\r\n searchPlaceholder: \"Search records\",\r\n emptyTable: \"No \" + input.replace('-', ' ') + \" available\"\r\n }\r\n\r\n });\r\n\r\n }\r\n setDatatableTimeout(id) {\r\n setTimeout(function () {\r\n $('#' + id).DataTable({\r\n \"pagingType\": \"full_numbers\",\r\n \"lengthMenu\": [\r\n [10, 25, 50, -1],\r\n [10, 25, 50, \"All\"]\r\n ],\r\n responsive: true,\r\n ordering: false,\r\n fixedHeader: {\r\n header: true,\r\n headerOffset: 45,\r\n },\r\n\r\n scrollX: true,\r\n language: {\r\n search: \"_INPUT_\",\r\n searchPlaceholder: \"Search records\"\r\n }\r\n\r\n });\r\n }, 500);\r\n }\r\n appointmentDatatables(id, limit) {\r\n let emptyMessage = '';\r\n\r\n\r\n for (var i = 1; i <= limit; i++) {\r\n if (i == 1)\r\n emptyMessage = 'No appointment available';\r\n if (i == 2)\r\n emptyMessage = 'No past Appointments available';\r\n if (i == 3)\r\n emptyMessage = 'No Cancel Appointments available';\r\n if (i == 4)\r\n emptyMessage = 'No No Show Appointments available';\r\n var rowLength = $('#' + id + i + ' tbody tr').length;\r\n $('#' + id + i).DataTable({\r\n \"pagingType\": \"full_numbers\",\r\n \"lengthMenu\": [\r\n [10, 25, 50, -1],\r\n [10, 25, 50, \"All\"]\r\n ],\r\n responsive: true,\r\n ordering: false,\r\n fixedHeader: {\r\n header: true,\r\n headerOffset: 45,\r\n },\r\n scrollX: rowLength < 10 ? false : true,\r\n language: {\r\n search: \"_INPUT_\",\r\n searchPlaceholder: \"Search records\",\r\n emptyTable: emptyMessage\r\n }\r\n\r\n });\r\n }\r\n\r\n }\r\n HL7ContextAware(context, type, code, name) {\r\n\r\n var URL = '';\r\n var CodingSystem = '';\r\n var TaskContext = '';\r\n var OrganizationID = '1.3.6.1.4.1.9328';\r\n switch (type) {\r\n case 'problem':\r\n CodingSystem = \"2.16.840.1.113883.6.96\";\r\n TaskContext = \"PROBLISTREV\";\r\n break;\r\n case 'icd':\r\n CodingSystem = \"2.16.840.1.113883.6.103\"; //ICD\r\n TaskContext = \"PROBLISTREV\";\r\n break;\r\n case 'medication':\r\n //CodingSystem = \"2.16.840.1.113883.6.69\";\r\n CodingSystem = \"2.16.840.1.113883.6.88\";\r\n TaskContext = \"MEDOE\";\r\n break;\r\n case 'lab':\r\n CodingSystem = \"2.16.840.1.113883.6.1\";\r\n TaskContext = \"LABRREV\";\r\n break;\r\n case 'drug':\r\n CodingSystem = \"2.16.840.1.113883.6.1\";\r\n TaskContext = \"DRUG\";\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n switch (context) {\r\n case 'patient':\r\n URL = 'http://apps2.nlm.nih.gov/medlineplus/services/mpconnect.cfm?mainSearchCriteria.v.c=' + code + '&mainSearchCriteria.v.cs=' + CodingSystem + '&mainSearchCriteria.v.dn=&informationRecipient.languageCode.c=en';\r\n default:\r\n break;\r\n }\r\n if (code == '' || code == undefined) {\r\n URL = 'https://vsearch.nlm.nih.gov/vivisimo/cgi-bin/query-meta?v%3aproject=medlineplus&v%3asources=medlineplus-bundle&query=' + name;\r\n }\r\n window.open(URL, '', 'width=800,height=600,scrollbars=yes');\r\n\r\n\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Router, NavigationStart } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { Subject } from 'rxjs/Subject';\r\n@Injectable() export class ConfirmDialogService {\r\n private subject = new Subject();\r\n constructor() { }\r\n confirmThis(message: string, siFn: () => void, noFn: () => void) {\r\n this.setConfirmation(message, siFn, noFn);\r\n }\r\n setConfirmation(message: string, siFn: () => void, noFn: () => void) {\r\n let that = this;\r\n this.subject.next({\r\n type: \"confirm\",\r\n text: message,\r\n siFn:\r\n function () {\r\n that.subject.next(); //this will close the modal \r\n siFn();\r\n },\r\n noFn: function () {\r\n that.subject.next();\r\n noFn();\r\n }\r\n });\r\n\r\n }\r\n\r\n getMessage(): Observable {\r\n return this.subject.asObservable();\r\n }\r\n} ","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class CreatePracticeRecordService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.CreatePracticeRecord\r\n * This API creates Practice Record\r\n * @param practiceCode Set Practice value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public createPracticeRecord(practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public createPracticeRecord(practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public createPracticeRecord(practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public createPracticeRecord(practiceCode: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling createPracticeRecord.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (practiceCode !== undefined) {\r\n formParams = formParams.append('practiceCode', practiceCode) || formParams;\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/CreatePracticeRecord`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class DiscardPatientPortalDraftMessageService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.DiscardPatientPortalDraftMessage\r\n * This API delete PatientPortalDraftMessage\r\n * @param practiceId patient id\r\n * @param messageId medication status\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public discardPatientPortalDraftMessage(practiceId: number, messageId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public discardPatientPortalDraftMessage(practiceId: number, messageId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public discardPatientPortalDraftMessage(practiceId: number, messageId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public discardPatientPortalDraftMessage(practiceId: number, messageId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling discardPatientPortalDraftMessage.');\r\n }\r\n\r\n if (messageId === null || messageId === undefined) {\r\n throw new Error('Required parameter messageId was null or undefined when calling discardPatientPortalDraftMessage.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (practiceId !== undefined) {\r\n formParams = formParams.append('practiceId', practiceId) || formParams;\r\n }\r\n if (messageId !== undefined) {\r\n formParams = formParams.append('messageId', messageId) || formParams;\r\n }\r\n\r\n return this.httpClient.delete(`${this.basePath}/DiscardPatientPortalDraftMessage`,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { CDSRuleDetailsData } from '../model/cDSRuleDetailsData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetCDSReferenceURLService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetCDSReferenceURL\r\n * This API get CDSReferenceURL\r\n * @param ruleId RuleId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getCDSReferenceURL(ruleId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getCDSReferenceURL(ruleId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getCDSReferenceURL(ruleId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getCDSReferenceURL(ruleId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (ruleId === null || ruleId === undefined) {\r\n throw new Error('Required parameter ruleId was null or undefined when calling getCDSReferenceURL.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (ruleId !== undefined && ruleId !== null) {\r\n queryParameters = queryParameters.set('RuleId', ruleId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetCDSReferenceURL`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientEMR API\r\n * ModuleMD PatientEMR API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetEMRFinalizeProgressNotesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientemr';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetEMRFinalizeProgressNotes\r\n * This API returns NurseNoteData for given id\r\n * @param noteid \r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getEMRFinalizeProgressNotes(noteid: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getEMRFinalizeProgressNotes(noteid: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getEMRFinalizeProgressNotes(noteid: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getEMRFinalizeProgressNotes(noteid: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (noteid === null || noteid === undefined) {\r\n throw new Error('Required parameter noteid was null or undefined when calling getEMRFinalizeProgressNotes.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (noteid !== undefined && noteid !== null) {\r\n queryParameters = queryParameters.set('noteid', noteid);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys && this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetEMRFinalizeProgressNotes`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { LabOrders, AddPatientPCIFormData } from '../model/models';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class getJotFormURLService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'JotForm';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n\r\n public GetJotFormURL(FormID: number, JotFormID: number, PatientID: number, isPatientPortal: boolean, IsEditableByPatient: boolean, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetJotFormURL(FormID: number, JotFormID: number, PatientID: number, isPatientPortal: boolean, IsEditableByPatient: boolean, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetJotFormURL(FormID: number, JotFormID: number, PatientID: number, isPatientPortal: boolean, IsEditableByPatient: boolean, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetJotFormURL(FormID: number, JotFormID: number, PatientID: number, isPatientPortal: boolean, IsEditableByPatient: boolean, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (FormID !== undefined && FormID !== null) {\r\n queryParameters = queryParameters.set('FormID', FormID);\r\n }\r\n if (JotFormID !== undefined && JotFormID !== null) {\r\n queryParameters = queryParameters.set('JotFormID', JotFormID);\r\n }\r\n if (PatientID !== undefined && PatientID !== null) {\r\n queryParameters = queryParameters.set('PatientID', PatientID);\r\n }\r\n if (isPatientPortal !== undefined && isPatientPortal !== null) {\r\n queryParameters = queryParameters.set('isPatientPortal', isPatientPortal);\r\n }\r\n if (IsEditableByPatient !== undefined && IsEditableByPatient !== null) {\r\n queryParameters = queryParameters.set('IsEditableByPatient', IsEditableByPatient);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n \r\n return this.httpClient.get>(`${this.basePath}/GetJotFormURL`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n\r\n \r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { LabResultReport } from '../model/labResultReport';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetLabReportService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'reports';\r\n //protected basePath = 'http://localhost:44322/mmdapi/api/patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.LabResultReport\r\n * This API get LabResultReport\r\n * @param statementId statementId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetLabReport(pSetId: number,pFromNew:boolean, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetLabReport(pSetId: number,pFromNew:boolean, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetLabReport(pSetId: number,pFromNew:boolean, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetLabReport(pSetId: number,pFromNew:boolean, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (pSetId === null || pSetId === undefined) {\r\n throw new Error('Required parameter pSetId was null or undefined when calling LabResultReport.');\r\n }\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (pSetId !== undefined && pSetId !== null) {\r\n queryParameters = queryParameters.set('pSetId', pSetId);\r\n }\r\n if (pFromNew !== undefined && pFromNew !== null) {\r\n queryParameters = queryParameters.set('pFromNew', pFromNew);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}/GetLabResultReport`,\r\n //return this.httpClient.get(`${this.basePath}/LabReport`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { LabResultReport } from '../model/labResultReport';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetLabScanFileService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.LabResultReport\r\n * This API get LabResultReport\r\n * @param statementId statementId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetLabScanFile(pSetId: number,pFromNew:boolean,fileName:string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetLabScanFile(pSetId: number,pFromNew:boolean,fileName:string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetLabScanFile(pSetId: number,pFromNew:boolean,fileName:string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetLabScanFile(pSetId: number,pFromNew:boolean,fileName:string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (pSetId === null || pSetId === undefined) {\r\n throw new Error('Required parameter pSetId was null or undefined when calling LabResultReport.');\r\n }\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (pSetId !== undefined && pSetId !== null) {\r\n queryParameters = queryParameters.set('pSetId', pSetId);\r\n }\r\n if (pFromNew !== undefined && pFromNew !== null) {\r\n queryParameters = queryParameters.set('pFromNew', pFromNew);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('fileName', fileName);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'image/tiff'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}/LabReport`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress,\r\n responseType: 'arraybuffer' as 'json'\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { LabScanResult } from '../model/LabScanResult';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetLabScanResultService {\r\n\r\n //protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.LabResultReport\r\n * This API get LabResultReport\r\n * @param statementId statementId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetLabScanResult(orderId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetLabScanResult(orderId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetLabScanResult(orderId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetLabScanResult(orderId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (orderId === null || orderId === undefined) {\r\n throw new Error('Required parameter pSetId was null or undefined when calling LabResultReport.');\r\n }\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (orderId !== undefined && orderId !== null) {\r\n queryParameters = queryParameters.set('orderId', orderId);\r\n }\r\n \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get>(`${this.basePath}/LabScanResult`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalPatientAccessLogData } from '../model/patientPortalPatientAccessLogData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientAccessLogService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientAccessLog\r\n * This API get PatientAccessLog\r\n * @param patientId patient Id\r\n * @param practiceCode practice Code\r\n * @param startDate from date\r\n * @param endDate end date\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientAccessLog(patientId: number, practiceCode: string, startDate: Date, endDate: Date, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientAccessLog(patientId: number, practiceCode: string, startDate: Date, endDate: Date, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientAccessLog(patientId: number, practiceCode: string, startDate: Date, endDate: Date, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientAccessLog(patientId: number, practiceCode: string, startDate: Date, endDate: Date, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientAccessLog.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling getPatientAccessLog.');\r\n }\r\n\r\n if (startDate === null || startDate === undefined) {\r\n throw new Error('Required parameter startDate was null or undefined when calling getPatientAccessLog.');\r\n }\r\n\r\n if (endDate === null || endDate === undefined) {\r\n throw new Error('Required parameter endDate was null or undefined when calling getPatientAccessLog.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n if (startDate !== undefined && startDate !== null) {\r\n queryParameters = queryParameters.set('startDate', startDate.toISOString());\r\n }\r\n if (endDate !== undefined && endDate !== null) {\r\n queryParameters = queryParameters.set('endDate', endDate.toISOString());\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientAccessLog`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalArchiveMessagesData } from '../model/patientPortalArchiveMessagesData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientArchiveMessagesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientArchiveMessages\r\n * This API get PatientArchiveMessages\r\n * @param practiceId practice Id\r\n * @param patientId patientId Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientArchiveMessages(practiceId: number, patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientArchiveMessages(practiceId: number, patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientArchiveMessages(practiceId: number, patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientArchiveMessages(practiceId: number, patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling getPatientArchiveMessages.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientArchiveMessages.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (practiceId !== undefined && practiceId !== null) {\r\n queryParameters = queryParameters.set('practiceId', practiceId);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientArchiveMessages`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientLoginDetails } from '../model/patientLoginDetails';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientDetailsbyGUIDService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientDetailsbyGUID\r\n * This API get PatientDetailsbyGUID\r\n * @param GUID GUID\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientDetailsbyGUID(GUID: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPatientDetailsbyGUID(GUID: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPatientDetailsbyGUID(GUID: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPatientDetailsbyGUID(GUID: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (GUID === null || GUID === undefined) {\r\n throw new Error('Required parameter GUID was null or undefined when calling getPatientDetailsbyGUID.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (GUID !== undefined && GUID !== null) {\r\n queryParameters = queryParameters.set('GUID', GUID);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientDetailsbyGUID`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalDraftMessagesData } from '../model/patientPortalDraftMessagesData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientDraftMessagesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientDraftMessages\r\n * This API get PatientDraftMessages\r\n * @param practiceId practice Id\r\n * @param senderUserId sender user Id\r\n * @param senderRoleId sender role Id\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientDraftMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientDraftMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientDraftMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientDraftMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling getPatientDraftMessages.');\r\n }\r\n\r\n if (senderUserId === null || senderUserId === undefined) {\r\n throw new Error('Required parameter senderUserId was null or undefined when calling getPatientDraftMessages.');\r\n }\r\n\r\n if (senderRoleId === null || senderRoleId === undefined) {\r\n throw new Error('Required parameter senderRoleId was null or undefined when calling getPatientDraftMessages.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientDraftMessages.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (practiceId !== undefined && practiceId !== null) {\r\n queryParameters = queryParameters.set('practiceId', practiceId);\r\n }\r\n if (senderUserId !== undefined && senderUserId !== null) {\r\n queryParameters = queryParameters.set('senderUserId', senderUserId);\r\n }\r\n if (senderRoleId !== undefined && senderRoleId !== null) {\r\n queryParameters = queryParameters.set('senderRoleId', senderRoleId);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientDraftMessages`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientDocuments, PatientEducationalResourceData, SkinTestOrders } from '../model/patientEducationalResourceData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientEducationalResourceService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n protected baseEmrPath = environment.appSetting.apiUrl+'patientemr';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientEducationalResource\r\n * This API get PatientEducationalResource\r\n * @param resourceId resourceId\r\n * @param practiceCode resourceId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientEducationalResource(resourceId: number, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPatientEducationalResource(resourceId: number, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPatientEducationalResource(resourceId: number, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPatientEducationalResource(resourceId: number, practiceCode: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n if (resourceId === null || resourceId === undefined) {\r\n throw new Error('Required parameter resourceId was null or undefined when calling getPatientEducationalResource.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling getPatientEducationalResource.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (resourceId !== undefined && resourceId !== null) {\r\n queryParameters = queryParameters.set('resourceId', resourceId);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientEducationalResource`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n //responseType: 'arraybuffer' as 'json'\r\n }\r\n );\r\n }\r\n\r\n public getPatientDocuments(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n \r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientDocuments`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public getSkinTests(jsonString: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (jsonString !== undefined && jsonString !== null) {\r\n queryParameters = queryParameters.set('jsonString', jsonString);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetSkinTestOrders`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public getSkinTestReport(orderId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.baseEmrPath}/GetPatientAllergenSkinTestReport/`+orderId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientEducationalResourceListData } from '../model/patientEducationalResourceListData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientEducationalResourcesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientEducationalResources\r\n * This API get PatientEducationalResources\r\n * @param patientId patient Id\r\n * @param practiceCode practice Code\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientEducationalResources(patientId: number, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientEducationalResources(patientId: number, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientEducationalResources(patientId: number, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientEducationalResources(patientId: number, practiceCode: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientEducationalResources.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling getPatientEducationalResources.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientEducationalResources`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalEmailCountData } from '../model/patientPortalEmailCountData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientEmailCountByPatientIdService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientEmailCountByPatientId\r\n * This API get PatientEmailCountByPatientId\r\n * @param practiceId practice Id\r\n * @param patientId patient Id\r\n * @param roleId role Id\r\n * @param senderUserId send user Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientEmailCountByPatientId(practiceId: number, patientId: number, roleId: number, senderUserId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPatientEmailCountByPatientId(practiceId: number, patientId: number, roleId: number, senderUserId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPatientEmailCountByPatientId(practiceId: number, patientId: number, roleId: number, senderUserId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPatientEmailCountByPatientId(practiceId: number, patientId: number, roleId: number, senderUserId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling getPatientEmailCountByPatientId.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientEmailCountByPatientId.');\r\n }\r\n\r\n if (roleId === null || roleId === undefined) {\r\n throw new Error('Required parameter roleId was null or undefined when calling getPatientEmailCountByPatientId.');\r\n }\r\n\r\n if (senderUserId === null || senderUserId === undefined) {\r\n throw new Error('Required parameter senderUserId was null or undefined when calling getPatientEmailCountByPatientId.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (practiceId !== undefined && practiceId !== null) {\r\n queryParameters = queryParameters.set('practiceId', practiceId);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (roleId !== undefined && roleId !== null) {\r\n queryParameters = queryParameters.set('roleId', roleId);\r\n }\r\n if (senderUserId !== undefined && senderUserId !== null) {\r\n queryParameters = queryParameters.set('senderUserId', senderUserId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientEmailCountByPatientId`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalInboxMessagesData } from '../model/patientPortalInboxMessagesData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientInboxMessagesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientInboxMessages\r\n * This API get PatientInboxMessages\r\n * @param practiceId practice Id\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientInboxMessages(practiceId: number, patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientInboxMessages(practiceId: number, patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientInboxMessages(practiceId: number, patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientInboxMessages(practiceId: number, patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling getPatientInboxMessages.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientInboxMessages.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (practiceId !== undefined && practiceId !== null) {\r\n queryParameters = queryParameters.set('practiceId', practiceId);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientInboxMessages`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\n\r\nimport { environment } from '../../environments/environment';\r\n@Injectable()\r\nexport class GetPatientLocationIdByPatientIdService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientLocationIdByPatientId\r\n * This API get PatientLocationIdByPatientId\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientLocationIdByPatientId(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPatientLocationIdByPatientId(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPatientLocationIdByPatientId(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPatientLocationIdByPatientId(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientLocationIdByPatientId.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientLocationIdByPatientId`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientLoginDetails } from '../model/patientLoginDetails';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientLoginDetailsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientLoginDetails\r\n * This API get PatientLoginDetails\r\n * @param userName UserName\r\n * @param practiceCode resourceId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientLoginDetails(userName: string, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPatientLoginDetails(userName: string, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPatientLoginDetails(userName: string, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPatientLoginDetails(userName: string, practiceCode: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n \r\n if (userName === null || userName === undefined) {\r\n throw new Error('Required parameter userName was null or undefined when calling getPatientLoginDetails.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling getPatientLoginDetails.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (userName !== undefined && userName !== null) {\r\n queryParameters = queryParameters.set('userName', userName);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientLoginDetails`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientDataPortal, PatientPortalAccountSummary, PracticeAuthorizeNetData, StateData, PaymentData } from '../model/patientPayment';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPaymentDetailsService {\r\n\r\n protected basePathPatient = environment.appSetting.apiUrl + 'patient';\r\n protected basePathPractice = environment.appSetting.apiUrl + 'practice';\r\n protected basePath = environment.appSetting.apiUrl +'patientportal';\r\n protected basePathSec = environment.appSetting.apiUrl + 'security';\r\n protected basePathPay = environment.appSetting.apiUrl + 'PaymentGateway';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n //if (basePath) {\r\n // this.basePath = basePath;\r\n //}\r\n if (configuration) {\r\n this.configuration = configuration;\r\n // this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalAllergyList\r\n * This API get PatientPortalAllergyList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n //public getPatient(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n //public getPatient(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n //public getPatient(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatient(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalAllergyList.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (patientId !== undefined && patientId !== null) {\r\n // queryParameters = queryParameters.set('patientId', patientId);\r\n //}\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePathPatient}/GetPatient/` + patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public GetPatientAccountSummary(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalAllergyList.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (patientId !== undefined && patientId !== null) {\r\n // queryParameters = queryParameters.set('patientId', patientId);\r\n //}\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePathPatient}/GetPatientAccountSummary/` + patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public GetPatientPortalPracticeAuthorizeNetDetails(practiceCode: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalAllergyList.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePathPractice}/GetPatientPortalPracticeAuthorizeNetDetails`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public GetStates(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (patientId !== undefined && patientId !== null) {\r\n // queryParameters = queryParameters.set('patientId', patientId);\r\n //}\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePathPractice}/GetStates`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public AuthorizenetPayment(paymentData: PaymentData, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let headers = this.defaultHeaders;\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n\r\n\r\n\r\n return this.httpClient.post(`${this.basePath}/AuthorizeNetPayment`,\r\n paymentData,\r\n {\r\n //params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public TransafePayment(transafeInfo: any, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n if (transafeInfo !== undefined) {\r\n formParams = formParams.append('PaymentInfo', transafeInfo) || formParams;\r\n }\r\n\r\n\r\n\r\n\r\n return this.httpClient.post(`${this.basePathPay}/AddTransafeManualPayment`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n //params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public PartialOrRefundPayment(transafeInfo: any, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n //if (transafeInfo !== undefined) {\r\n // formParams = formParams.append('paymentData', transafeInfo) || formParams;\r\n //}\r\n\r\n return this.httpClient.post(`${this.basePathPay}/PartialOrRefundPayment`,\r\n transafeInfo,\r\n {\r\n //params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public GetContextSetting(settingKey: string, filterSetId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n queryParameters = queryParameters.set('filterSetId', filterSetId);\r\n queryParameters = queryParameters.set('settingKey', settingKey);\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n\r\n\r\n return this.httpClient.get(`${this.basePathSec}/GetContextSettings`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public GetPracticePaymentAccess(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPracticePaymentAccess`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalAllergyList } from '../model/patientPortalAllergyList';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\n\r\nimport { environment } from '../../environments/environment';\r\n@Injectable()\r\nexport class GetPatientPortalAllergyListService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalAllergyList\r\n * This API get PatientPortalAllergyList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalAllergyList(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalAllergyList(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalAllergyList(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalAllergyList(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n \r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalAllergyList.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalAllergyList`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalAppointments } from '../model/patientPortalAppointments';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalAppointmentsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalAppointments\r\n * This API get PatientPortalAppointments\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalAppointments(patientId:number,observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalAppointments(patientId:number,observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalAppointments(patientId:number,observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalAppointments(patientId:number,observe: any = 'body', reportProgress: boolean = false): Observable {\r\n \r\n let headers = this.defaultHeaders;\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n // to determine the Accept header\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalAppointments`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalClinicalDecisionReport } from '../model/patientPortalClinicalDecisionReport';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalClinicalDecisionReportService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalClinicalDecisionReport\r\n * This API get PatientPortalClinicalDecisionReport\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalClinicalDecisionReport(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalClinicalDecisionReport(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalClinicalDecisionReport(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalClinicalDecisionReport(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalClinicalDecisionReport.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalClinicalDecisionReport`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalFormData } from '../model/patientPortalFormData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalFormsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalForms\r\n * This API get PatientPortalForms\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalForms(patientId?: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalForms(patientId?: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalForms(patientId?: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalForms(patientId?: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n \r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalForms`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalImmunizationList } from '../model/patientPortalImmunizationList';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalImmunizationListService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalImmunizationList\r\n * This API get PatientPortalImmunizationList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalImmunizationList(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalImmunizationList(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalImmunizationList(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalImmunizationList(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalImmunizationList.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalImmunizationList`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { MedicationData } from '../model/medicationData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { PatientPortalLabresult } from '../model/PatientportalLabResult';\r\nimport { LabOrders } from '../model/models';\r\n\r\nimport { environment } from '../../environments/environment';\r\n@Injectable()\r\nexport class GetPatientPortalLabResultService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'orders';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalMedicationList\r\n * This API get PatientPortalMedicationList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetPatientPortalLabResult(searchJSON: string, match: string, start: number, limit: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetPatientPortalLabResult(searchJSON: string, match: string, start: number, limit: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetPatientPortalLabResult(searchJSON: string, match: string, start: number, limit: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetPatientPortalLabResult(searchJSON: string, match: string, start: number, limit: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (searchJSON !== undefined && searchJSON !== null) {\r\n queryParameters = queryParameters.set('searchJSON', searchJSON);\r\n }\r\n if (match !== undefined && match !== null) {\r\n queryParameters = queryParameters.set('match', match);\r\n }\r\n if (start !== undefined && start !== null) {\r\n queryParameters = queryParameters.set('start', start);\r\n }\r\n if (limit !== undefined && limit !== null) {\r\n queryParameters = queryParameters.set('limit', limit);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetOrders`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { MedicationData } from '../model/medicationData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalMedicationListService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalMedicationList\r\n * This API get PatientPortalMedicationList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalMedicationList(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalMedicationList(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalMedicationList(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalMedicationList(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalMedicationList.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalMedicationList/${encodeURIComponent(String(patientId))}`,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalMessageTypesData } from '../model/patientPortalMessageTypesData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalMessageTypesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalMessageTypes\r\n * This API get PatientPortalMessageTypes\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalMessageTypes(observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalMessageTypes(observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalMessageTypes(observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalMessageTypes(observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // to determine the Accept header\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalMessageTypes`,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalPracticeDetailsData } from '../model/patientPortalPracticeDetailsData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalPracticeDetailsByPracticeIdService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalPracticeDetailsByPracticeId\r\n * This API get PatientPortalPracticeDetailsByPracticeId\r\n * @param soaPracticeId Practice Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalPracticeDetailsByPracticeId(soaPracticeId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPatientPortalPracticeDetailsByPracticeId(soaPracticeId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPatientPortalPracticeDetailsByPracticeId(soaPracticeId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPatientPortalPracticeDetailsByPracticeId(soaPracticeId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (soaPracticeId === null || soaPracticeId === undefined) {\r\n throw new Error('Required parameter soaPracticeId was null or undefined when calling getPatientPortalPracticeDetailsByPracticeId.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (soaPracticeId !== undefined && soaPracticeId !== null) {\r\n queryParameters = queryParameters.set('soaPracticeId', soaPracticeId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientPortalPracticeDetailsByPracticeId`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalProblemList } from '../model/patientPortalProblemList';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalProblemListService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalProblemList\r\n * This API get PatientPortalProblemList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalProblemList(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalProblemList(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalProblemList(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalProblemList(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalProblemList.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalProblemList`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalReceipts } from '../model/patientPortalReceipts';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalReceiptsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalReceipts\r\n * This API get PatientPortalReceipts\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalReceipts(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalReceipts(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalReceipts(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalReceipts(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalReceipts.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalReceipts`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalStatementMenu } from '../model/patientPortalStatementMenu';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalStatementMenuService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalStatementMenu\r\n * This API get PatientPortalStatementMenu\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalStatementMenu(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalStatementMenu(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalStatementMenu(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalStatementMenu(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalStatementMenu.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalStatementMenu`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalTeleHealthData } from '../model/patientPortalTeleHealthData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalTeleHealthDataService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n protected basePRPath = environment.appSetting.apiUrl + 'practice';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalTeleHealthData\r\n * This API get PatientPortalTeleHealthData\r\n * @param patientId PatientId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalTeleHealthData(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPatientPortalTeleHealthData(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPatientPortalTeleHealthData(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPatientPortalTeleHealthData(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalTeleHealthData.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n //if (patientId !== undefined && patientId !== null) {\r\n // let isNewPortal = true;\r\n // queryParameters = queryParameters.set('isNewPortal', isNewPortal);\r\n //}\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n //return this.httpClient.get(`${this.basePath}/GetPatientPortalTeleHealthData`,\r\n return this.httpClient.get(`${this.basePath}/GetPatientTeleHealthJWTToken`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public getInstaPracticeAccessToken(userId: number, type:string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (userId !== undefined && userId !== null) {\r\n queryParameters = queryParameters.set('userId', userId);\r\n }\r\n if (type !== undefined && type !== null) {\r\n queryParameters = queryParameters.set('type', type);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePRPath}/GetInstaPracticeData`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalViewlog } from '../model/patientPortalViewlog';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientPortalViewLogService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalViewLog\r\n * This API get PatientPortalViewLog\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientPortalViewLog(patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientPortalViewLog(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalViewLog(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientPortalViewLog(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalViewLog.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPortalViewLog`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalPatientProfileData } from '../model/patientPortalPatientProfileData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientProfileByIdService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientProfileById\r\n * This API get PatientProfileById\r\n * @param patientId patient Id\r\n * @param practiceCode practice Code\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientProfileById(patientId: number, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientProfileById(patientId: number, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientProfileById(patientId: number, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientProfileById(patientId: number, practiceCode: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientProfileById.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling getPatientProfileById.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientProfileById`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalSentMessagesData } from '../model/patientPortalSentMessagesData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPatientSentMessagesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientSentMessages\r\n * This API get PatientSentMessages\r\n * @param practiceId practice Id\r\n * @param senderUserId sender user Id\r\n * @param senderRoleId sender role Id\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getPatientSentMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getPatientSentMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getPatientSentMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getPatientSentMessages(practiceId: number, senderUserId: number, senderRoleId: number, patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling getPatientSentMessages.');\r\n }\r\n\r\n if (senderUserId === null || senderUserId === undefined) {\r\n throw new Error('Required parameter senderUserId was null or undefined when calling getPatientSentMessages.');\r\n }\r\n\r\n if (senderRoleId === null || senderRoleId === undefined) {\r\n throw new Error('Required parameter senderRoleId was null or undefined when calling getPatientSentMessages.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientSentMessages.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (practiceId !== undefined && practiceId !== null) {\r\n queryParameters = queryParameters.set('practiceId', practiceId);\r\n }\r\n if (senderUserId !== undefined && senderUserId !== null) {\r\n queryParameters = queryParameters.set('senderUserId', senderUserId);\r\n }\r\n if (senderRoleId !== undefined && senderRoleId !== null) {\r\n queryParameters = queryParameters.set('senderRoleId', senderRoleId);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientSentMessages`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { ProviderDetails } from '../model/providerDetails';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetProviderDetailsForRegUserService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetProviderDetailsForRegUser\r\n * This API get ProviderDetailsForRegUser\r\n * @param patientID PatientID\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getProviderDetailsForRegUser(patientID: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getProviderDetailsForRegUser(patientID: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getProviderDetailsForRegUser(patientID: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getProviderDetailsForRegUser(patientID: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientID === null || patientID === undefined) {\r\n throw new Error('Required parameter patientID was null or undefined when calling getProviderDetailsForRegUser.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientID !== undefined && patientID !== null) {\r\n queryParameters = queryParameters.set('PatientID', patientID);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetProviderDetailsForRegUser`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { LabOrders } from '../model/models';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetReceiptReportService {\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalMedicationList\r\n * This API get PatientPortalMedicationList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetReceiptReport(receiptId: number,practiceHeader:string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetReceiptReport(receiptId: number,practiceHeader:string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetReceiptReport(receiptId: number,practiceHeader:string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetReceiptReport(receiptId: number,practiceHeader:string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let isMobile: any = false;\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (receiptId !== undefined && receiptId !== null) {\r\n queryParameters = queryParameters.set('receiptId', receiptId);\r\n }\r\n //if (practiceHeader !== undefined && practiceHeader !== null) {\r\n // queryParameters = queryParameters.set('practiceHeader', practiceHeader);\r\n //}\r\n queryParameters = queryParameters.set('isMobile', isMobile);\r\n let headers = this.defaultHeaders;\r\n \r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n \r\n return this.httpClient.get(`${this.basePath}/ReceiptReport`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress,\r\n responseType: 'blob' as 'json'\r\n }\r\n );\r\n }\r\n\r\n public GetReceiptReportCloud(receiptId: number, practiceHeader: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let isMobile: any = false;\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (receiptId !== undefined && receiptId !== null) {\r\n queryParameters = queryParameters.set('receiptId', receiptId);\r\n }\r\n //if (practiceHeader !== undefined && practiceHeader !== null) {\r\n // queryParameters = queryParameters.set('practiceHeader', practiceHeader);\r\n //}\r\n queryParameters = queryParameters.set('isMobile', isMobile);\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/ReceiptReport`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { SecurityQuestions } from '../model/securityQuestions';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetSecurityQuestionsLookupService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetSecurityQuestionsLookup\r\n * This API get SecurityQuestionsLookup\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getSecurityQuestionsLookup(observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getSecurityQuestionsLookup(observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getSecurityQuestionsLookup(observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getSecurityQuestionsLookup(observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetSecurityQuestionsLookup`,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientStatementModel } from '../model/statementData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetStatementService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'reports';\r\n //protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientStatementModel\r\n * This API get PatientStatementModel\r\n * @param statementId statementId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetStatement(statementId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetStatement(statementId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetStatement(statementId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetStatement(statementId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (statementId === null || statementId === undefined) {\r\n throw new Error('Required parameter statementId was null or undefined when calling PatientStatementModel.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (statementId !== undefined && statementId !== null) {\r\n // queryParameters = queryParameters.set('statementId', statementId);\r\n //}\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}/GetReportPatientStatement/`+statementId,\r\n //return this.httpClient.get(`${this.basePath}/Statement`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientStatementModel } from '../model/statementData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetStatementReportService {\r\n\r\n protected basePath =environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientStatementModel\r\n * This API get PatientStatementModel\r\n * @param statementId statementId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetStatementReport(statementId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetStatementReport(statementId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetStatementReport(statementId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetStatementReport(statementId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (statementId === null || statementId === undefined) {\r\n throw new Error('Required parameter statementId was null or undefined when calling PatientStatementModel.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (statementId !== undefined && statementId !== null) {\r\n queryParameters = queryParameters.set('statementId', statementId);\r\n }\r\n let reqWeb = true;\r\n queryParameters = queryParameters.set('isWeb', reqWeb );\r\n \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}/Statement`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress,\r\n responseType: 'arraybuffer' as 'json'\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { UserMenu } from '../model/userMenu';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetUserMenuService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetUserMenu\r\n * This API get UserMenu\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getUserMenu(observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getUserMenu(observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getUserMenu(observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getUserMenu(observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // to determine the Accept header\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/GetUserMenu`,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalUserProfileData } from '../model/patientPortalUserProfileData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetUserProfileByIdService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetUserProfileById\r\n * This API get userprofile by id\r\n * @param userId User Name\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getUserProfileById(userId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getUserProfileById(userId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getUserProfileById(userId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getUserProfileById(userId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (userId === null || userId === undefined) {\r\n throw new Error('Required parameter userId was null or undefined when calling getUserProfileById.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (userId !== undefined && userId !== null) {\r\n queryParameters = queryParameters.set('userId', userId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetUserProfileById`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalLoggedInUserList } from '../model/patientPortalLoggedInUserList';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { debounce } from 'rxjs/operators';\r\nimport { environment } from '../../environments/environment';\r\nimport { request } from 'http';\r\n\r\n@Injectable()\r\nexport class GetUsersService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetUsers\r\n * This API get Users\r\n * @param userName userName\r\n * @param password password\r\n * @param practiceCode practiceCode\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public getUsers(userName: string, password: string, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public getUsers(userName: string, password: string, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public getUsers(userName: string, password: string, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public getUsers(userName: string, password: string, practiceCode: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (userName === null || userName === undefined) {\r\n throw new Error('Required parameter userName was null or undefined when calling getUsers.');\r\n }\r\n\r\n if (password === null || password === undefined) {\r\n throw new Error('Required parameter password was null or undefined when calling getUsers.');\r\n }\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling getUsers.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (userName !== undefined && userName !== null) {\r\n queryParameters = queryParameters.set('userName', userName);\r\n }\r\n if (password !== undefined && password !== null) {\r\n queryParameters = queryParameters.set('password', password);\r\n }\r\n let headers = new HttpHeaders();\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/UserLoginDetailsV2`,\r\n\r\n // return this.httpClient.get>(`${this.basePath}/GetUsers`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public UpdateDisclaimerStatus(userId: number, showDisclaimer: boolean, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n if (userId !== undefined) {\r\n formParams = formParams.append('userId', userId) || formParams;\r\n }\r\n if (showDisclaimer !== undefined) {\r\n formParams = formParams.append('showDisclaimer', showDisclaimer) || formParams;\r\n }\r\n return this.httpClient.post(`${this.basePath}/UpdateDisclaimerStatus`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getUsersbyPatientId(userEmail: string, practiceCode: string, patientId:number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n \r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (userEmail !== undefined && userEmail !== null) {\r\n queryParameters = queryParameters.set('userEmail', userEmail);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n //////MMDRD\r\n // return this.httpClient.get>(`${this.basePath}/UserLoginDetails`,\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetUsersbyPatientId`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public getLoggedInPatientDetails(isAzure: boolean, loggedInpatients: any, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let apipath = environment.appSetting.apiUrl + 'patientportal';\r\n if (isAzure) {\r\n apipath = environment.appSetting.azureapiUrl + 'patientportal';\r\n }\r\n let headers = new HttpHeaders();\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n return this.httpClient.post>(`${apipath}/LoggedInPatientDetails`,\r\n loggedInpatients,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalStatementMenu } from '../model/patientPortalStatementMenu';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\nimport { VisitSummaryParams } from '../model/models';\r\n\r\n@Injectable()\r\nexport class GetVisitSummaryService {\r\n\r\n protected basePath = environment.appSetting.apiUrl +'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalStatementMenu\r\n * This API get PatientPortalStatementMenu\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetVisitSummary(vsParams: VisitSummaryParams, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetVisitSummary(vsParams: VisitSummaryParams, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetVisitSummary(vsParams: VisitSummaryParams, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetVisitSummary(vsParams: VisitSummaryParams, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n \r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n \r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n if (vsParams.visitSlip !== undefined) {\r\n formParams = formParams.append('visitSlip', vsParams.visitSlip) || formParams;\r\n }\r\n if (vsParams.serviceType !== undefined) {\r\n formParams = formParams.append('serviceType', vsParams.serviceType) || formParams;\r\n }\r\n if (vsParams.approval_id !== undefined) {\r\n formParams = formParams.append('approval_id', vsParams.approval_id) || formParams;\r\n }\r\n if (vsParams.patientId !== undefined) {\r\n formParams = formParams.append('patientId', vsParams.patientId) || formParams;\r\n }\r\n if (vsParams.locationId !== undefined) {\r\n formParams = formParams.append('locationId', vsParams.locationId) || formParams;\r\n }\r\n\r\n\r\n if (vsParams.userId !== undefined) {\r\n formParams = formParams.append('userId', vsParams.userId) || formParams;\r\n }\r\n \r\n if (vsParams.ApprovalName !== undefined) {\r\n\r\n formParams = formParams.append('ApprovalName', vsParams.ApprovalName) || formParams;\r\n }\r\n if (vsParams.approvalDate !== undefined) {\r\n formParams = formParams.append('approvalDate', vsParams.approvalDate) || formParams;\r\n }\r\n\r\n if (vsParams.PracticeHeader !== undefined) {\r\n formParams = formParams.append('PracticeHeader', vsParams.PracticeHeader) || formParams;\r\n }\r\n if (vsParams.PtName !== undefined) {\r\n formParams = formParams.append('PtName', vsParams.PtName) || formParams;\r\n }\r\n if (vsParams.PtDOB !== undefined) {\r\n formParams = formParams.append('PtDOB', vsParams.PtDOB) || formParams;\r\n }\r\n if (vsParams.visitDate !== undefined) {\r\n formParams = formParams.append('visitDate', vsParams.visitDate) || formParams;\r\n }\r\n\r\n \r\n \r\n\r\n return this.httpClient.post>(`${this.basePath}/VisitSummary`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n // params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class ImmunotherapyService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'oit';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n public GetPatientHomeDose(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n } \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPatientHomeDose`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n \r\n\r\n public UpdatePatientHomeDose(PatientHomeDoseData: any, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n //const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n //if (httpContentTypeSelected != undefined) {\r\n // headers = headers.set('Content-Type', httpContentTypeSelected);\r\n //}\r\n console.log(PatientHomeDoseData);\r\n return this.httpClient.post(`${this.basePath}/UpdatePatientHomeDose`,\r\n PatientHomeDoseData,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n \r\n\r\n\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { debounce } from 'rxjs/operators';\r\nimport { environment } from '../../environments/environment';\r\nimport { request } from 'http';\r\nimport { PatientDemogDataData } from '../model/models';\r\n\r\n@Injectable()\r\nexport class LookupDataService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patient';\r\n protected basePath1 = environment.appSetting.apiUrl + 'support';\r\n protected basePath2 = environment.appSetting.apiUrl + 'practice';\r\n protected basePath4 = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n \r\n \r\n public getEthnicity(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/GetEthnicities`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getRaces(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/GetRaces`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getPreferredLanguage(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/GetLanguages`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public getStates(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath1}/GetStates`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getRelations(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/GetRelationships`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getLocations(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath2}/GetLocations`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getProviders(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let refFlag: number = 0;\r\n let actStatus: number = 1;\r\n queryParameters = queryParameters.set('referalFlag', refFlag);\r\n queryParameters = queryParameters.set('activeStatus', actStatus);\r\n let headers = new HttpHeaders();\r\n //headers = headers.set('Access-Control-Allow-Origin', '*');\r\n //headers = headers.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n //headers = headers.set('Access-Control-Allow-Headers', 'Content-Type, Accept');\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath2}/GetProviders`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getMaritalStatus(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n \r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/GetMaritalStatus`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public getInsuranceInfo(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = new HttpHeaders();\r\n\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get>(`${this.basePath}/GetInsuranceInfo`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public patientPortalDemographics(patientDemographics: PatientDemogDataData, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n \r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n return this.httpClient.post(`${this.basePath4}/PatientPortalMandateForm`,\r\n patientDemographics,\r\n {\r\n //params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalMessageBoard } from '../model/patientPortalMessageBoard';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\nimport { NewLoginMessage } from '../model/models';\r\n\r\n@Injectable()\r\nexport class NewLoginMessageService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalSendMessage\r\n * This API Sends message\r\n * @param messageboard Message box\r\n * @param practiceCode Set Practice value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public NewLoginMessage(messageboard: NewLoginMessage, practiceCode: string,patientId:number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public NewLoginMessage(messageboard: NewLoginMessage, practiceCode: string,patientId:number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public NewLoginMessage(messageboard: NewLoginMessage, practiceCode: string,patientId:number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public NewLoginMessage(messageboard: NewLoginMessage, practiceCode: string,patientId:number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (messageboard === null || messageboard === undefined) {\r\n throw new Error('Required parameter messageboard was null or undefined when calling patientPortalSendMessage.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling patientPortalSendMessage.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/PatientPortalNewLogin`,\r\n messageboard,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","import { BehaviorSubject, Observable } from 'rxjs';\r\n\r\nexport class DataSharingService {\r\n private result: BehaviorSubject = new BehaviorSubject(null);\r\n public result$: Observable = this.result.asObservable();\r\n\r\n updateResultList(updatedVal) {\r\n this.result.next(updatedVal);\r\n }\r\n\r\n} ","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalDashBoard } from '../model/patientPortalDashBoard';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class PatientPortalDashboardService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'PatientPortal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalDashboard\r\n * This API get PatientPortalDashboard\r\n * @param patientId PatientId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public patientPortalDashboard(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public patientPortalDashboard(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public patientPortalDashboard(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public patientPortalDashboard(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling patientPortalDashboard.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('PatientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}/PatientPortalDashboard`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientDemographicsData, PatientPortalDemographics } from '../model/patientPortalDemographics';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class PatientPortalDemographicsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n protected patbasePath = environment.appSetting.apiUrl + 'patient';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalDemographics\r\n * This API get PatientPortalDemographics\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public patientPortalDemographics(patientId:number,observe?: 'body', reportProgress?: boolean): Observable;\r\n public patientPortalDemographics(patientId:number,observe?: 'response', reportProgress?: boolean): Observable>;\r\n public patientPortalDemographics(patientId:number,observe?: 'events', reportProgress?: boolean): Observable>;\r\n public patientPortalDemographics(patientId:number,observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n\r\n return this.httpClient.get(`${this.basePath}/PatientPortalDemographics`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public patientPortalDemographicsDataByPatientId(patientId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (patientId !== undefined && patientId !== null) {\r\n // queryParameters = queryParameters.set('patientId', patientId);\r\n //}\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n\r\n return this.httpClient.get(`${this.patbasePath}/GetPatientDemographicsDataByPatientId/`+patientId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n public updatePatientDemographicsData(patientDemogData:PatientDemographicsData ,observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n\r\n return this.httpClient.post(`${this.patbasePath}/AddOrUpdatePatientDemographicsData`,\r\n patientDemogData,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public saveInsFile(uploadedFile: File, patientId: number, fileName: string, insType: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (uploadedFile === null || uploadedFile === undefined) {\r\n throw new Error('Required parameter uploadedFile was null or undefined when calling savePatientPortalPictureDetails.');\r\n }\r\n \r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('fileName', fileName);\r\n }\r\n if (insType !== undefined && insType !== null) {\r\n queryParameters = queryParameters.set('insType', insType);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'multipart/form-data'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): any; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n // use FormData to transmit files using content-type \"multipart/form-data\"\r\n // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data\r\n useForm = canConsumeForm;\r\n if (useForm) {\r\n formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n if (uploadedFile !== undefined) {\r\n formParams = formParams.append('uploadedFile', uploadedFile) || formParams;\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/SavePatientInsuranceCard`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalGeneratePDFReport } from '../model/patientPortalGeneratePDFReport';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class PatientPortalGeneratePDFReportService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalGeneratePDFReport\r\n * This API get PatientPortalGeneratePDFReport\r\n * @param patientId PatientId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public patientPortalGeneratePDFReport(patientId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public patientPortalGeneratePDFReport(patientId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public patientPortalGeneratePDFReport(patientId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public patientPortalGeneratePDFReport(patientId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling patientPortalGeneratePDFReport.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('PatientId', patientId);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/PatientPortalGeneratePDFReport`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class PatientPortalMarkMessageAsReadService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalMarkMessageAsRead\r\n * This API set read satus portal messages\r\n * @param practiceId Set Practice value\r\n * @param messageId Set message value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public patientPortalMarkMessageAsRead(practiceId: number, messageId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public patientPortalMarkMessageAsRead(practiceId: number, messageId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public patientPortalMarkMessageAsRead(practiceId: number, messageId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public patientPortalMarkMessageAsRead(practiceId: number, messageId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling patientPortalMarkMessageAsRead.');\r\n }\r\n\r\n if (messageId === null || messageId === undefined) {\r\n throw new Error('Required parameter messageId was null or undefined when calling patientPortalMarkMessageAsRead.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (practiceId !== undefined) {\r\n formParams = formParams.append('practiceId', practiceId) || formParams;\r\n }\r\n if (messageId !== undefined) {\r\n formParams = formParams.append('messageId', messageId) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/PatientPortalMarkMessageAsRead`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalMessageBoard, PatientPortalMessage } from '../model/patientPortalMessageBoard';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class PatientPortalMessageBoardService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n protected baseComPath = environment.appSetting.apiUrl + 'communication';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalMessageBoard\r\n * This API get PatientPortalMessageBoard\r\n * @param roleId RoleId\r\n * @param practiceCode practice Code\r\n * @param messageType MessageType\r\n * @param patientID PatientID\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public patientPortalMessageBoard(roleId: string, practiceCode: string, messageType: string, patientID: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public patientPortalMessageBoard(roleId: string, practiceCode: string, messageType: string, patientID: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public patientPortalMessageBoard(roleId: string, practiceCode: string, messageType: string, patientID: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public patientPortalMessageBoard(roleId: string, practiceCode: string, messageType: string, patientID: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n if (roleId === null || roleId === undefined) {\r\n throw new Error('Required parameter roleId was null or undefined when calling patientPortalMessageBoard.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling patientPortalMessageBoard.');\r\n }\r\n\r\n if (messageType === null || messageType === undefined) {\r\n throw new Error('Required parameter messageType was null or undefined when calling patientPortalMessageBoard.');\r\n }\r\n\r\n if (patientID === null || patientID === undefined) {\r\n throw new Error('Required parameter patientID was null or undefined when calling patientPortalMessageBoard.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (roleId !== undefined && roleId !== null) {\r\n queryParameters = queryParameters.set('RoleId', roleId);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n if (messageType !== undefined && messageType !== null) {\r\n queryParameters = queryParameters.set('MessageType', messageType);\r\n }\r\n if (patientID !== undefined && patientID !== null) {\r\n queryParameters = queryParameters.set('PatientID', patientID);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/PatientPortalMessageBoard`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public patientPortalMessages(messageType: string, patientID: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n if (messageType === null || messageType === undefined) {\r\n throw new Error('Required parameter messageType was null or undefined when calling patientPortalMessageBoard.');\r\n }\r\n\r\n if (patientID === null || patientID === undefined) {\r\n throw new Error('Required parameter patientID was null or undefined when calling patientPortalMessageBoard.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n\r\n if (messageType !== undefined && messageType !== null) {\r\n queryParameters = queryParameters.set('messageType', messageType);\r\n }\r\n if (patientID !== undefined && patientID !== null) {\r\n queryParameters = queryParameters.set('patientID', patientID);\r\n }\r\n queryParameters = queryParameters.set('RoleId', '');\r\n queryParameters = queryParameters.set('practiceCode', '');\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/PatientPortalMessageBoard`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public GetHistory(parentMessageId: number, messageId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n queryParameters = queryParameters.set('ParentMessageId', parentMessageId);\r\n queryParameters = queryParameters.set('MessageID', messageId);\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.baseComPath}/GetHistory`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalMessageBoard } from '../model/patientPortalMessageBoard';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class PatientPortalSendMessageService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalSendMessage\r\n * This API Sends message\r\n * @param messageboard Message box\r\n * @param practiceCode Set Practice value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public patientPortalSendMessage(messageboard: PatientPortalMessageBoard, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public patientPortalSendMessage(messageboard: PatientPortalMessageBoard, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public patientPortalSendMessage(messageboard: PatientPortalMessageBoard, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public patientPortalSendMessage(messageboard: PatientPortalMessageBoard, practiceCode: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n \r\n if (messageboard === null || messageboard === undefined) {\r\n throw new Error('Required parameter messageboard was null or undefined when calling patientPortalSendMessage.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling patientPortalSendMessage.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/PatientPortalSendMessage`,\r\n messageboard,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class PracticeCloudStorageService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'support';\r\n protected basePathDC = environment.appSetting.apiUrl + 'documents';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n \r\n public getPracticeCloudStorageConfiguration(practiceID: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public getPracticeCloudStorageConfiguration(practiceID: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public getPracticeCloudStorageConfiguration(practiceID: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public getPracticeCloudStorageConfiguration(practiceID: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n \r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (practiceID !== undefined && practiceID !== null) {\r\n queryParameters = queryParameters.set('practiceID', practiceID);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/GetPracticeCloudStorageConfiguration`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n //responseType: 'arraybuffer' as 'json'\r\n }\r\n );\r\n }\r\n\r\n public checkIfFileExistsInCloudStorage(cloudStorageType: string, configuration: string, containerName: string, folderName: string, fileName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (cloudStorageType !== undefined && cloudStorageType !== null) {\r\n queryParameters = queryParameters.set('cloudStorageType', cloudStorageType);\r\n }\r\n if (configuration !== undefined && configuration !== null) {\r\n queryParameters = queryParameters.set('configuration', configuration);\r\n }\r\n if (containerName !== undefined && containerName !== null) {\r\n queryParameters = queryParameters.set('containerName', containerName);\r\n }\r\n if (folderName !== undefined && folderName !== null) {\r\n queryParameters = queryParameters.set('folderName', folderName);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('fileName', fileName);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePathDC}/CheckIfFileExistsInCloudStorage`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n \r\n public downloadFileFromCloudStorage(cloudStorageType: string, configuration: string, containerName: string, folderName: string, fileName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (cloudStorageType !== undefined && cloudStorageType !== null) {\r\n queryParameters = queryParameters.set('cloudStorageType', cloudStorageType);\r\n }\r\n if (configuration !== undefined && configuration !== null) {\r\n queryParameters = queryParameters.set('configuration', configuration);\r\n }\r\n if (containerName !== undefined && containerName !== null) {\r\n queryParameters = queryParameters.set('containerName', containerName);\r\n }\r\n if (folderName !== undefined && folderName !== null) {\r\n queryParameters = queryParameters.set('folderName', folderName);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('fileName', fileName);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePathDC}/DownloadFileFromCloudStorage`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n // responseType: 'arraybuffer' as 'json'\r\n }\r\n );\r\n }\r\n\r\n public GetXmlFile(cloudStorageType: string, configuration: string, containerName: string, folderName: string, fileName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (cloudStorageType !== undefined && cloudStorageType !== null) {\r\n queryParameters = queryParameters.set('cloudStorageType', cloudStorageType);\r\n }\r\n if (configuration !== undefined && configuration !== null) {\r\n queryParameters = queryParameters.set('configuration', configuration);\r\n }\r\n if (containerName !== undefined && containerName !== null) {\r\n queryParameters = queryParameters.set('containerName', containerName);\r\n }\r\n if (folderName !== undefined && folderName !== null) {\r\n queryParameters = queryParameters.set('folderName', folderName);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('fileName', fileName);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePathDC}/GetXMLFile`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n public uploadFileToCloudStorage(cloudStorageType: string, configuration: string, containerName: string, folderName: string, uploadedFile: any, fileName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml',\r\n 'application/text'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'multipart/form-data'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n\r\n let formParams: { append(param: string, value: any): any; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n // use FormData to transmit files using content-type \"multipart/form-data\"\r\n // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data\r\n //useForm = canConsumeForm;\r\n if (useForm) {\r\n formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n if (cloudStorageType !== undefined) {\r\n formParams = formParams.append('cloudStorageType', cloudStorageType) || formParams;\r\n }\r\n if (configuration !== undefined) {\r\n formParams = formParams.append('configuration', configuration) || formParams;\r\n }\r\n if (containerName !== undefined) {\r\n formParams = formParams.append('containerName', containerName) || formParams;\r\n }\r\n if (folderName !== undefined) {\r\n formParams = formParams.append('folderName', folderName) || formParams;\r\n }\r\n if (fileName !== undefined) {\r\n formParams = formParams.append('fileName', fileName) || formParams;\r\n }\r\n if (uploadedFile !== undefined) {\r\n formParams = formParams.append('fileData', uploadedFile) || formParams;\r\n }\r\n return this.httpClient.post(`${this.basePathDC}/UploadFileToCloudStorage`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n //params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalAllergyList } from '../model/patientPortalAllergyList';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { PracticeMessages } from '../model/models';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetPracticeMessagesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'practice';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalAllergyList\r\n * This API get PatientPortalAllergyList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetPracticeLoginMessages(observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetPracticeLoginMessages(observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetPracticeLoginMessages(observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetPracticeLoginMessages(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get>(`${this.basePath}/GetPatientPotalLoginMessages`,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class RecordLogToTableService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.RecordLogToTable\r\n * This API creates Log in Table\r\n * @param logMessage Log Message Description\r\n * @param userName User name for Log record\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public recordLogToTable(logMessage: string, userName: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public recordLogToTable(logMessage: string, userName: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public recordLogToTable(logMessage: string, userName: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public recordLogToTable(logMessage: string, userName: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (logMessage === null || logMessage === undefined) {\r\n throw new Error('Required parameter logMessage was null or undefined when calling recordLogToTable.');\r\n }\r\n\r\n if (userName === null || userName === undefined) {\r\n throw new Error('Required parameter userName was null or undefined when calling recordLogToTable.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (logMessage !== undefined) {\r\n formParams = formParams.append('logMessage', logMessage) || formParams;\r\n }\r\n if (userName !== undefined) {\r\n formParams = formParams.append('userName', userName) || formParams;\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/RecordLogToTable`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","import { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\nimport { ProviderDataModel, VisitTypesDataModel, LocationDataModel, DatesWithAvailableSlotsDataModel, AppointmentDataAPIModel, SendEmailDataModel } from '../model/requestAppointmentData';\r\n\r\n@Injectable()\r\nexport class RequestAppointmentService {\r\n\r\n protected basePath = environment.appSetting.apiUrl;\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * Referenced to SOA.GetProvidersByLocation\r\n * This API get GetProvidersByLocation\r\n * @param referalFlag referalFlag\r\n * @param locationId locationId\r\n * @param activeStatus activeStatus\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetProvider(referalFlag: number, activeStatus: number ,menuId: number, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetProvider(referalFlag: number, activeStatus: number ,menuId: number, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetProvider(referalFlag: number, activeStatus: number ,menuId: number, observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetProvider(referalFlag: number, activeStatus: number ,menuId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n // if (statementId === null || statementId === undefined) {\r\n // throw new Error('Required parameter statementId was null or undefined when calling PatientStatementModel.');\r\n // }\r\n \r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (statementId !== undefined && statementId !== null) {\r\n // queryParameters = queryParameters.set('statementId', statementId);\r\n //}\r\n \r\n let headers = this.defaultHeaders;\r\n \r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n \r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n \r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n \r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}practice/GetProviders?referalFlag=`+ referalFlag + '&activeStatus=' + activeStatus + '&menuId=' + menuId,\r\n //return this.httpClient.get(`${this.basePath}/Statement`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n /**\r\n * Referenced to SOA.GetVisitTypes\r\n * This API get GetVisitTypes\r\n * @param facilityVisitFlag referalFlag\r\n * @param activeStatus activeStatus\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetVisitTypes(facilityVisitFlag: number, activeStatus: number, bookOnline: boolean, observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetVisitTypes(facilityVisitFlag: number, activeStatus: number, bookOnline: boolean, observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetVisitTypes(facilityVisitFlag: number, activeStatus: number, bookOnline: boolean,observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetVisitTypes(facilityVisitFlag: number, activeStatus: number, bookOnline: boolean,observe: any = 'body', reportProgress: boolean = false): Observable {\r\n // if (statementId === null || statementId === undefined) {\r\n // throw new Error('Required parameter statementId was null or undefined when calling PatientStatementModel.');\r\n // }\r\n \r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (statementId !== undefined && statementId !== null) {\r\n // queryParameters = queryParameters.set('statementId', statementId);\r\n //}\r\n \r\n let headers = this.defaultHeaders;\r\n \r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n \r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n \r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n \r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}patientcare/GetVisitTypes?facilityVisitFlag=`+ facilityVisitFlag + '&activeStatus=' + activeStatus + '&bookOnline=' + bookOnline,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n /**\r\n * Referenced to SOA.GetLocations\r\n * This API get GetLocations\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetLocation(observe?: 'body', reportProgress?: boolean): Observable>;\r\n public GetLocation(observe?: 'response', reportProgress?: boolean): Observable>>;\r\n public GetLocation(observe?: 'events', reportProgress?: boolean): Observable>>;\r\n public GetLocation(observe: any = 'body', reportProgress: boolean = false): Observable {\r\n // if (statementId === null || statementId === undefined) {\r\n // throw new Error('Required parameter statementId was null or undefined when calling PatientStatementModel.');\r\n // }\r\n \r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (statementId !== undefined && statementId !== null) {\r\n // queryParameters = queryParameters.set('statementId', statementId);\r\n //}\r\n \r\n let headers = this.defaultHeaders;\r\n \r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n \r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n \r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n \r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}security/GetLocations`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n /**\r\n * Referenced to SOA.GetEarliestDatesWithAvailableSlotsCount\r\n * This API get GetEarliestDatesWithAvailableSlotsCount\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetAvailableSlots(startDate: string, locationId: number, providerId:number, visitTypeId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetAvailableSlots(startDate: string, locationId: number, providerId:number, visitTypeId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetAvailableSlots(startDate: string, locationId: number, providerId:number, visitTypeId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetAvailableSlots(startDate: string, locationId: number, providerId:number, visitTypeId: number, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n // if (statementId === null || statementId === undefined) {\r\n // throw new Error('Required parameter statementId was null or undefined when calling PatientStatementModel.');\r\n // }\r\n \r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (statementId !== undefined && statementId !== null) {\r\n // queryParameters = queryParameters.set('statementId', statementId);\r\n //}\r\n \r\n let headers = this.defaultHeaders;\r\n \r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n \r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n \r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n \r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n headers.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');\r\n return this.httpClient.get(`${this.basePath}patientcare/GetEarliestDatesWithAvailableSlotsCount?startDate=` + startDate + '&locationId=' + locationId + '&providerId=' + providerId + '&visitTypeId=' + visitTypeId,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalSendMessage\r\n * This API Sends message\r\n * @param messageboard Message box\r\n * @param practiceCode Set Practice value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public requestAppointment(appointmentData: AppointmentDataAPIModel, observe?: 'body', reportProgress?: boolean): Observable;\r\n public requestAppointment(appointmentData: AppointmentDataAPIModel, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public requestAppointment(appointmentData: AppointmentDataAPIModel, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public requestAppointment(appointmentData: AppointmentDataAPIModel, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n \r\n if (appointmentData === null || appointmentData === undefined) {\r\n throw new Error('Required parameter appointmentData was null or undefined when calling requestAppointment.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}patientcare/SaveOnlineScheduleAppointment`,\r\n appointmentData,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.sendEmail\r\n * This API Sends message\r\n * @param messageboard Message box\r\n */\r\n public sendEmail(sendEmailData: SendEmailDataModel, observe?: 'body', reportProgress?: boolean): Observable;\r\n public sendEmail(sendEmailData: SendEmailDataModel, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public sendEmail(sendEmailData: SendEmailDataModel, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public sendEmail(sendEmailData: SendEmailDataModel, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n \r\n if (sendEmailData === null || sendEmailData === undefined) {\r\n throw new Error('Required parameter sendEmailData was null or undefined when calling sendEmail.');\r\n }\r\n \r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n \r\n let headers = this.defaultHeaders;\r\n \r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n \r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n \r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n \r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n \r\n return this.httpClient.post(`${this.basePath}patientportal/PatientPortalSendEmail`,\r\n sendEmailData,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalAllergyList } from '../model/patientPortalAllergyList';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\n\r\nimport { environment } from '../../environments/environment';\r\n@Injectable()\r\nexport class ResetWebUserPasswordService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.GetPatientPortalAllergyList\r\n * This API get PatientPortalAllergyList\r\n * @param patientId patient Id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public ResetWebUserPassword(userName: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public ResetWebUserPassword(userName: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public ResetWebUserPassword(userName: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public ResetWebUserPassword(userName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n \r\n if (userName === null || userName === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling getPatientPortalAllergyList.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (userName !== undefined && userName !== null) {\r\n queryParameters = queryParameters.set('userName', userName);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`/ResetPassword`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalMessageBoard } from '../model/patientPortalMessageBoard';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class SavePatientPortalPictureDetailsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.SavePatientPortalPictureDetails\r\n * This API sends SavePatientPortalPictureDetails\r\n * @param uploadedFile file type for uploadFile\r\n * @param patientId Integer type ID for patientId\r\n * @param fileName uploaded file name\r\n * @param userId userId\r\n * @param userName userName\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public savePatientPortalPictureDetails(uploadedFile: File, patientId: number, fileName: string, userId: string, userName: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public savePatientPortalPictureDetails(uploadedFile: File, patientId: number, fileName: string, userId: string, userName: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public savePatientPortalPictureDetails(uploadedFile: File, patientId: number, fileName: string, userId: string, userName: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public savePatientPortalPictureDetails(uploadedFile: File, patientId: number, fileName: string, userId: string, userName: string, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (uploadedFile === null || uploadedFile === undefined) {\r\n throw new Error('Required parameter uploadedFile was null or undefined when calling savePatientPortalPictureDetails.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling savePatientPortalPictureDetails.');\r\n }\r\n\r\n if (fileName === null || fileName === undefined) {\r\n throw new Error('Required parameter fileName was null or undefined when calling savePatientPortalPictureDetails.');\r\n }\r\n\r\n if (userId === null || userId === undefined) {\r\n throw new Error('Required parameter userId was null or undefined when calling savePatientPortalPictureDetails.');\r\n }\r\n\r\n if (userName === null || userName === undefined) {\r\n throw new Error('Required parameter userName was null or undefined when calling savePatientPortalPictureDetails.');\r\n }\r\n\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (fileName !== undefined && fileName !== null) {\r\n queryParameters = queryParameters.set('fileName', fileName);\r\n }\r\n if (userId !== undefined && userId !== null) {\r\n queryParameters = queryParameters.set('userId', userId);\r\n }\r\n if (userName !== undefined && userName !== null) {\r\n queryParameters = queryParameters.set('userName', userName);\r\n }\r\n \r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'multipart/form-data'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): any; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n // use FormData to transmit files using content-type \"multipart/form-data\"\r\n // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data\r\n useForm = canConsumeForm;\r\n if (useForm) {\r\n formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n if (uploadedFile !== undefined) {\r\n formParams = formParams.append('uploadedFile', uploadedFile) || formParams;\r\n }\r\n return this.httpClient.post(`${this.basePath}/SavePatientPortalPictureDetails`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n\r\n@Injectable()\r\nexport class SendMessageFromPatientPortalToPracticeService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.SendMessageFromPatientPortalToPractice\r\n * This API sends MessageFromPatientPortalToPractice\r\n * @param practiceId Integer type ID for practiceId\r\n * @param patientId Integer type ID for patientId\r\n * @param messageTypeId Integer type ID for messageTypeId\r\n * @param messageSubject Subject for Mail\r\n * @param messageBody Message body for Mail\r\n * @param senderUserId Integer type ID for senderUserId\r\n * @param senderUserName Sender name for mail\r\n * @param senderRoleId Integer type ID for senderRoleId\r\n * @param sendMessage check the sent status\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public sendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe?: 'body', reportProgress?: boolean): Observable;\r\n public sendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public sendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public sendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (messageTypeId === null || messageTypeId === undefined) {\r\n throw new Error('Required parameter messageTypeId was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (messageSubject === null || messageSubject === undefined) {\r\n throw new Error('Required parameter messageSubject was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (messageBody === null || messageBody === undefined) {\r\n throw new Error('Required parameter messageBody was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (senderUserId === null || senderUserId === undefined) {\r\n throw new Error('Required parameter senderUserId was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (senderUserName === null || senderUserName === undefined) {\r\n throw new Error('Required parameter senderUserName was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (senderRoleId === null || senderRoleId === undefined) {\r\n throw new Error('Required parameter senderRoleId was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (sendMessage === null || sendMessage === undefined) {\r\n throw new Error('Required parameter sendMessage was null or undefined when calling sendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (practiceId !== undefined) {\r\n formParams = formParams.append('practiceId', practiceId) || formParams;\r\n }\r\n if (patientId !== undefined) {\r\n formParams = formParams.append('patientId', patientId) || formParams;\r\n }\r\n if (messageTypeId !== undefined) {\r\n formParams = formParams.append('messageTypeId', messageTypeId) || formParams;\r\n }\r\n if (messageSubject !== undefined) {\r\n formParams = formParams.append('messageSubject', messageSubject) || formParams;\r\n }\r\n if (messageBody !== undefined) {\r\n formParams = formParams.append('messageBody', messageBody) || formParams;\r\n }\r\n if (senderUserId !== undefined) {\r\n formParams = formParams.append('senderUserId', senderUserId) || formParams;\r\n }\r\n if (senderUserName !== undefined) {\r\n formParams = formParams.append('senderUserName', senderUserName) || formParams;\r\n }\r\n if (senderRoleId !== undefined) {\r\n formParams = formParams.append('senderRoleId', senderRoleId) || formParams;\r\n }\r\n if (sendMessage !== undefined) {\r\n formParams = formParams.append('sendMessage', sendMessage) || formParams;\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/SendMessageFromPatientPortalToPractice`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdateAndSendMessageFromPatientPortalToPracticeService {\r\n\r\n protected basePath = environment.appSetting.apiUrl + 'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdateAndSendMessageFromPatientPortalToPractice\r\n * This API updates MessageFromPatientPortalToPractice\r\n * @param practiceId Integer type ID for practiceId\r\n * @param patientId Integer type ID for patientId\r\n * @param messageId Integer type ID for patientId\r\n * @param messageTypeId Integer type ID for messageTypeId\r\n * @param messageSubject Subject for Mail\r\n * @param messageBody Message body for Mail\r\n * @param senderUserId Integer type ID for senderUserId\r\n * @param senderUserName Sender name for mail\r\n * @param senderRoleId Integer type ID for senderRoleId\r\n * @param sendMessage check the sent status\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updateAndSendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updateAndSendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updateAndSendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updateAndSendMessageFromPatientPortalToPractice(practiceId: number, patientId: number, messageId: number, messageTypeId: number, messageSubject: string, messageBody: string, senderUserId: number, senderUserName: string, senderRoleId: number, sendMessage: boolean, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (practiceId === null || practiceId === undefined) {\r\n throw new Error('Required parameter practiceId was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (messageId === null || messageId === undefined) {\r\n throw new Error('Required parameter messageId was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (messageTypeId === null || messageTypeId === undefined) {\r\n throw new Error('Required parameter messageTypeId was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (messageSubject === null || messageSubject === undefined) {\r\n throw new Error('Required parameter messageSubject was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (messageBody === null || messageBody === undefined) {\r\n throw new Error('Required parameter messageBody was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (senderUserId === null || senderUserId === undefined) {\r\n throw new Error('Required parameter senderUserId was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (senderUserName === null || senderUserName === undefined) {\r\n throw new Error('Required parameter senderUserName was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (senderRoleId === null || senderRoleId === undefined) {\r\n throw new Error('Required parameter senderRoleId was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n if (sendMessage === null || sendMessage === undefined) {\r\n throw new Error('Required parameter sendMessage was null or undefined when calling updateAndSendMessageFromPatientPortalToPractice.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (practiceId !== undefined) {\r\n formParams = formParams.append('practiceId', practiceId) || formParams;\r\n }\r\n if (patientId !== undefined) {\r\n formParams = formParams.append('patientId', patientId) || formParams;\r\n }\r\n if (messageId !== undefined) {\r\n formParams = formParams.append('messageId', messageId) || formParams;\r\n }\r\n if (messageTypeId !== undefined) {\r\n formParams = formParams.append('messageTypeId', messageTypeId) || formParams;\r\n }\r\n if (messageSubject !== undefined) {\r\n formParams = formParams.append('messageSubject', messageSubject) || formParams;\r\n }\r\n if (messageBody !== undefined) {\r\n formParams = formParams.append('messageBody', messageBody) || formParams;\r\n }\r\n if (senderUserId !== undefined) {\r\n formParams = formParams.append('senderUserId', senderUserId) || formParams;\r\n }\r\n if (senderUserName !== undefined) {\r\n formParams = formParams.append('senderUserName', senderUserName) || formParams;\r\n }\r\n if (senderRoleId !== undefined) {\r\n formParams = formParams.append('senderRoleId', senderRoleId) || formParams;\r\n }\r\n if (sendMessage !== undefined) {\r\n formParams = formParams.append('sendMessage', sendMessage) || formParams;\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/UpdateAndSendMessageFromPatientPortalToPractice`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdateClinicalPreferencesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientPortalSendMessage\r\n * This API Sends message\r\n * @param messageboard Message box\r\n * @param practiceCode Set Practice value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public UpdateClinicalPreferences(PreferenceId: string,PatientId:number,SequenceIds:string,PatientPref:string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public UpdateClinicalPreferences(PreferenceId: string,PatientId:number,SequenceIds:string,PatientPref:string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public UpdateClinicalPreferences(PreferenceId: string,PatientId:number,SequenceIds:string,PatientPref:string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public UpdateClinicalPreferences(PreferenceId: string,PatientId:number,SequenceIds:string,PatientPref:string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n let headers = this.defaultHeaders;\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n\r\n //const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n //if (httpContentTypeSelected != undefined) {\r\n // headers = headers.set('Content-Type', httpContentTypeSelected);\r\n //}\r\n\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n // formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n }\r\n\r\n if (PreferenceId !== undefined) {\r\n formParams = formParams.append('PreferenceId', PreferenceId) || formParams;\r\n }\r\n if (PatientId !== undefined) {\r\n formParams = formParams.append('PatientId', PatientId) || formParams;\r\n }\r\n if (SequenceIds !== undefined) {\r\n formParams = formParams.append('SequenceIds', SequenceIds) || formParams;\r\n }\r\n if (PatientPref !== undefined) {\r\n formParams = formParams.append('PatientPref', PatientPref) || formParams;\r\n }\r\n \r\n\r\n return this.httpClient.post(`${this.basePath}/UpdateClinicalPreferences`, \r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalLookupGUID } from '../model/patientPortalLookupGUID';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdatePatientLookupGUIDService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdatePatientLookupGUID\r\n * This API Updates patient lookupid\r\n * @param patient Update patient portal lookupid\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updatePatientLookupGUID(patient: PatientPortalLookupGUID, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updatePatientLookupGUID(patient: PatientPortalLookupGUID, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updatePatientLookupGUID(patient: PatientPortalLookupGUID, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updatePatientLookupGUID(patient: PatientPortalLookupGUID, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patient === null || patient === undefined) {\r\n throw new Error('Required parameter patient was null or undefined when calling updatePatientLookupGUID.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdatePatientLookupGUID`,\r\n patient,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdatePatientMedicationStatusService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdatePatientMedicationStatus\r\n * This API update PatientMedicationStatus\r\n * @param patientId patient id\r\n * @param status medication status\r\n * @param medicationId medication id\r\n * @param imported Imported status\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updatePatientMedicationStatus(patientId: number, status: string, medicationId: string, imported: boolean, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updatePatientMedicationStatus(patientId: number, status: string, medicationId: string, imported: boolean, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updatePatientMedicationStatus(patientId: number, status: string, medicationId: string, imported: boolean, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updatePatientMedicationStatus(patientId: number, status: string, medicationId: string, imported: boolean, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter patientId was null or undefined when calling updatePatientMedicationStatus.');\r\n }\r\n\r\n if (status === null || status === undefined) {\r\n throw new Error('Required parameter status was null or undefined when calling updatePatientMedicationStatus.');\r\n }\r\n\r\n if (medicationId === null || medicationId === undefined) {\r\n throw new Error('Required parameter medicationId was null or undefined when calling updatePatientMedicationStatus.');\r\n }\r\n\r\n if (imported === null || imported === undefined) {\r\n throw new Error('Required parameter imported was null or undefined when calling updatePatientMedicationStatus.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (patientId !== undefined) {\r\n formParams = formParams.append('PatientId', patientId) || formParams;\r\n }\r\n if (status !== undefined) {\r\n formParams = formParams.append('Status', status) || formParams;\r\n }\r\n if (medicationId !== undefined) {\r\n formParams = formParams.append('MedicationId', medicationId) || formParams;\r\n }\r\n if (imported !== undefined) {\r\n formParams = formParams.append('Imported', imported) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdatePatientMedicationStatus`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdatePatientPasswordService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdatePatientPassword\r\n * This API updates patient password\r\n * @param userId Integer type ID for userId\r\n * @param password User password\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updatePatientPassword(userId: number, password: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updatePatientPassword(userId: number, password: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updatePatientPassword(userId: number, password: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updatePatientPassword(userId: number, password: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (userId === null || userId === undefined) {\r\n throw new Error('Required parameter userId was null or undefined when calling updatePatientPassword.');\r\n }\r\n\r\n if (password === null || password === undefined) {\r\n throw new Error('Required parameter password was null or undefined when calling updatePatientPassword.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (userId !== undefined) {\r\n formParams = formParams.append('userId', userId) || formParams;\r\n }\r\n if (password !== undefined) {\r\n formParams = formParams.append('password', password) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdatePatientPassword`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalPatientData } from '../model/patientPortalPatientData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdatePatientPortalPatientDetailsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdatePatientPortalPatientDetails\r\n * This API Updates patient details\r\n * @param patientData Update patient portal data\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updatePatientPortalPatientDetails(patientData: PatientPortalPatientData, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updatePatientPortalPatientDetails(patientData: PatientPortalPatientData, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updatePatientPortalPatientDetails(patientData: PatientPortalPatientData, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updatePatientPortalPatientDetails(patientData: PatientPortalPatientData, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (patientData === null || patientData === undefined) {\r\n throw new Error('Required parameter patientData was null or undefined when calling updatePatientPortalPatientDetails.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdatePatientPortalPatientDetails`,\r\n patientData,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalCreatePassword } from '../model/patientPortalCreatePassword';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\nimport { PasswordDetails } from '../model/models';\r\n\r\n@Injectable()\r\nexport class UpdatePatientSecurityDetailsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl +'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdatePatientSecurityDetails\r\n * This API Updates patient security details\r\n * @param patient Update patient portal security data\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updatePatientSecurityDetails(patient: PasswordDetails, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updatePatientSecurityDetails(patient: PasswordDetails, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updatePatientSecurityDetails(patient: PasswordDetails, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updatePatientSecurityDetails(patient: PasswordDetails, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n \r\n if (patient === null || patient === undefined) {\r\n throw new Error('Required parameter patient was null or undefined when calling updatePatientSecurityDetails.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n //if (patient.UserName !== undefined && patient.UserName !== null) {\r\n // queryParameters = queryParameters.set('userName', patient.UserName);\r\n //}\r\n //if (patient.UserEmail !== undefined && patient.UserEmail !== null) {\r\n // queryParameters = queryParameters.set('userEmail', patient.UserEmail);\r\n //}\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\r\n if (httpContentTypeSelected != undefined) {\r\n headers = headers.set('Content-Type', httpContentTypeSelected);\r\n }\r\n\r\n return this.httpClient.post(`${this.basePath}/CreatePassword`,\r\n patient,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdatePracticeDatabaseViewsService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdatePracticeDatabaseViews\r\n * This API update database view\r\n * @param forceRecreate force recreate\r\n * @param practiceCode Set practice value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updatePracticeDatabaseViews(forceRecreate: boolean, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updatePracticeDatabaseViews(forceRecreate: boolean, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updatePracticeDatabaseViews(forceRecreate: boolean, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updatePracticeDatabaseViews(forceRecreate: boolean, practiceCode: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (forceRecreate === null || forceRecreate === undefined) {\r\n throw new Error('Required parameter forceRecreate was null or undefined when calling updatePracticeDatabaseViews.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling updatePracticeDatabaseViews.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (forceRecreate !== undefined) {\r\n formParams = formParams.append('forceRecreate', forceRecreate) || formParams;\r\n }\r\n if (practiceCode !== undefined) {\r\n formParams = formParams.append('practiceCode', practiceCode) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdatePracticeDatabaseViews`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdateUserConsentFormAcceptanceService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdateUserConsentFormAcceptance\r\n * This API update UserConsentFormAcceptance\r\n * @param userId user id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updateUserConsentFormAcceptance(userId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updateUserConsentFormAcceptance(userId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updateUserConsentFormAcceptance(userId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updateUserConsentFormAcceptance(userId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (userId === null || userId === undefined) {\r\n throw new Error('Required parameter userId was null or undefined when calling updateUserConsentFormAcceptance.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (userId !== undefined) {\r\n formParams = formParams.append('userId', userId) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdateUserConsentFormAcceptance`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdateUserDisclaimerAcceptanceService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdateUserDisclaimerAcceptance\r\n * This API update UserDisclaimerAcceptance\r\n * @param userId user id\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updateUserDisclaimerAcceptance(userId: number, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updateUserDisclaimerAcceptance(userId: number, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updateUserDisclaimerAcceptance(userId: number, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updateUserDisclaimerAcceptance(userId: number, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (userId === null || userId === undefined) {\r\n throw new Error('Required parameter userId was null or undefined when calling updateUserDisclaimerAcceptance.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (userId !== undefined) {\r\n formParams = formParams.append('userId', userId) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdateUserDisclaimerAcceptance`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class UpdateUserFirstLoginStatusService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.UpdateUserFirstLoginStatus\r\n * This API update UserFirstLoginStatus\r\n * @param userId user id\r\n * @param firstLoginStatus User Login status\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public updateUserFirstLoginStatus(userId: number, firstLoginStatus: boolean, observe?: 'body', reportProgress?: boolean): Observable;\r\n public updateUserFirstLoginStatus(userId: number, firstLoginStatus: boolean, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public updateUserFirstLoginStatus(userId: number, firstLoginStatus: boolean, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public updateUserFirstLoginStatus(userId: number, firstLoginStatus: boolean, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (userId === null || userId === undefined) {\r\n throw new Error('Required parameter userId was null or undefined when calling updateUserFirstLoginStatus.');\r\n }\r\n\r\n if (firstLoginStatus === null || firstLoginStatus === undefined) {\r\n throw new Error('Required parameter firstLoginStatus was null or undefined when calling updateUserFirstLoginStatus.');\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/x-www-form-urlencoded'\r\n ];\r\n\r\n const canConsumeForm = this.canConsumeForm(consumes);\r\n\r\n let formParams: { append(param: string, value: any): HttpParams; };\r\n let useForm = false;\r\n let convertFormParamsToString = false;\r\n if (useForm) {\r\n //formParams = new FormData();\r\n } else {\r\n formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n }\r\n\r\n if (userId !== undefined) {\r\n formParams = formParams.append('userId', userId) || formParams;\r\n }\r\n if (firstLoginStatus !== undefined) {\r\n formParams = formParams.append('firstLoginStatus', firstLoginStatus) || formParams;\r\n }\r\n\r\n return this.httpClient.put(`${this.basePath}/UpdateUserFirstLoginStatus`,\r\n convertFormParamsToString ? formParams.toString() : formParams,\r\n {\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent } from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\nimport { PatientPortalLoggedInUserData } from '../model/patientPortalLoggedInUserData';\r\n\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class ValidateUserService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientportal';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.ValidateUser\r\n * This API validate the user\r\n * @param userName User Name\r\n * @param password User Password\r\n * @param practiceCode Practice Value\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public validateUser(userName: string, password: string, practiceCode: string, observe?: 'body', reportProgress?: boolean): Observable;\r\n public validateUser(userName: string, password: string, practiceCode: string, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public validateUser(userName: string, password: string, practiceCode: string, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public validateUser(userName: string, password: string, practiceCode: string, observe: any = 'body', reportProgress: boolean = false ): Observable {\r\n\r\n if (userName === null || userName === undefined) {\r\n throw new Error('Required parameter userName was null or undefined when calling validateUser.');\r\n }\r\n\r\n if (password === null || password === undefined) {\r\n throw new Error('Required parameter password was null or undefined when calling validateUser.');\r\n }\r\n\r\n if (practiceCode === null || practiceCode === undefined) {\r\n throw new Error('Required parameter practiceCode was null or undefined when calling validateUser.');\r\n }\r\n\r\n let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});\r\n if (userName !== undefined && userName !== null) {\r\n queryParameters = queryParameters.set('userName', userName);\r\n }\r\n if (password !== undefined && password !== null) {\r\n queryParameters = queryParameters.set('password', password);\r\n }\r\n if (practiceCode !== undefined && practiceCode !== null) {\r\n queryParameters = queryParameters.set('practiceCode', practiceCode);\r\n }\r\n\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n\r\n return this.httpClient.get(`${this.basePath}/ValidateUser`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","/**\r\n * ModuleMD PatientPortal API\r\n * ModuleMD PatientPortal API service\r\n *\r\n * OpenAPI spec version: 1.0.0\r\n * Contact: emrsupport@modulemd.com\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\n/* tslint:disable:no-unused-variable member-ordering */\r\n\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport {\r\n HttpClient, HttpHeaders, HttpParams,\r\n HttpResponse, HttpEvent\r\n} from '@angular/common/http';\r\nimport { CustomHttpUrlEncodingCodec } from '../encoder';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { PatientPortalEMRViewNoteData } from '../model/visitsummary';\r\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\r\nimport { Configuration } from '../configuration';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class GetVisitNotesService {\r\n\r\n protected basePath = environment.appSetting.apiUrl+'patientemr';\r\n public defaultHeaders = new HttpHeaders();\r\n public configuration = new Configuration();\r\n\r\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {\r\n if (basePath) {\r\n this.basePath = basePath;\r\n }\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = basePath || configuration.basePath || this.basePath;\r\n }\r\n }\r\n\r\n /**\r\n * @param consumes string[] mime-types\r\n * @return true: consumes contains 'multipart/form-data', false: otherwise\r\n */\r\n private canConsumeForm(consumes: string[]): boolean {\r\n const form = 'multipart/form-data';\r\n for (const consume of consumes) {\r\n if (form === consume) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n\r\n /**\r\n * Referenced to SOA.PatientStatementModel\r\n * This API get PatientStatementModel\r\n * @param statementId statementId\r\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\r\n * @param reportProgress flag to report request and response progress.\r\n */\r\n public GetVisitNotes(patientId: number, onlyServiceNote: boolean, observe?: 'body', reportProgress?: boolean): Observable;\r\n public GetVisitNotes(patientId: number, onlyServiceNote: boolean, observe?: 'response', reportProgress?: boolean): Observable>;\r\n public GetVisitNotes(patientId: number, onlyServiceNote: boolean, observe?: 'events', reportProgress?: boolean): Observable>;\r\n public GetVisitNotes(patientId: number, onlyServiceNote: boolean, observe: any = 'body', reportProgress: boolean = false): Observable {\r\n if (patientId === null || patientId === undefined) {\r\n throw new Error('Required parameter statementId was null or undefined when calling PatientStatementModel.');\r\n }\r\n \r\n let queryParameters = new HttpParams({ encoder: new CustomHttpUrlEncodingCodec() });\r\n if (patientId !== undefined && patientId !== null) {\r\n queryParameters = queryParameters.set('patientId', patientId);\r\n }\r\n if (onlyServiceNote !== undefined && onlyServiceNote !== null) {\r\n queryParameters = queryParameters.set('onlyServiceNote', onlyServiceNote);\r\n }\r\n let headers = this.defaultHeaders;\r\n\r\n // authentication (api_key) required\r\n if (this.configuration.apiKeys[\"Context\"]) {\r\n headers = headers.set('Context', this.configuration.apiKeys[\"Context\"]);\r\n }\r\n\r\n // authentication (idp_auth) required\r\n if (this.configuration.accessToken) {\r\n const accessToken = typeof this.configuration.accessToken === 'function'\r\n ? this.configuration.accessToken()\r\n : this.configuration.accessToken;\r\n headers = headers.set('Authorization', 'Bearer ' + accessToken);\r\n }\r\n // to determine the Accept header\r\n let httpHeaderAccepts: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n const httpHeaderAcceptSelected: string | undefined = this.configuration.selectHeaderAccept(httpHeaderAccepts);\r\n if (httpHeaderAcceptSelected != undefined) {\r\n headers = headers.set('Accept', httpHeaderAcceptSelected);\r\n }\r\n\r\n // to determine the Content-Type header\r\n const consumes: string[] = [\r\n 'application/json',\r\n 'application/xml'\r\n ];\r\n return this.httpClient.get(`${this.basePath}/GetEMRNoteDates/`,\r\n {\r\n params: queryParameters,\r\n withCredentials: this.configuration.withCredentials,\r\n headers: headers,\r\n observe: observe,\r\n reportProgress: reportProgress\r\n }\r\n );\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\ndeclare var $:any;\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'fixedplugin-cmp',\r\n templateUrl: 'fixedplugin.component.html'\r\n})\r\n\r\nexport class FixedPluginComponent implements OnInit{\r\n ngOnInit(){\r\n var $sidebar = $('.sidebar');\r\n if ($sidebar.length != 0) {\r\n $sidebar.attr('data-color', 'white');\r\n }\r\n \r\n var $off_canvas_sidebar = $('.off-canvas-sidebar');\r\n if ($off_canvas_sidebar.length != 0) {\r\n $off_canvas_sidebar.attr('data-color', 'white');\r\n }\r\n var window_width = window.outerWidth;\r\n\r\n if(window_width > 767){\r\n if($('.fixed-plugin .dropdown').hasClass('show-dropdown')){\r\n $('.fixed-plugin .dropdown').addClass('open');\r\n }\r\n\r\n }\r\n\r\n $('.fixed-plugin a').click(function(event){\r\n // Alex if we click on switch, stop propagation of the event, so the dropdown will not be hide, otherwise we set the section active\r\n if($(this).hasClass('switch-trigger')){\r\n if(event.stopPropagation){\r\n event.stopPropagation();\r\n }\r\n else if(window.event){\r\n window.event.cancelBubble = true;\r\n }\r\n }\r\n });\r\n\r\n $('.fixed-plugin .background-color span').click(function(){\r\n $(this).siblings().removeClass('active');\r\n $(this).addClass('active');\r\n\r\n var new_color = $(this).data('color');\r\n if($sidebar.length != 0){\r\n $sidebar.attr('data-color',new_color);\r\n }\r\n\r\n if($off_canvas_sidebar.length != 0){\r\n $off_canvas_sidebar.attr('data-color',new_color);\r\n }\r\n });\r\n\r\n $('.fixed-plugin .active-color span').click(function(){\r\n $(this).siblings().removeClass('active');\r\n $(this).addClass('active');\r\n\r\n var new_color = $(this).data('color');\r\n\r\n if($sidebar.length != 0){\r\n $sidebar.attr('data-active-color',new_color);\r\n }\r\n\r\n if($off_canvas_sidebar.length != 0){\r\n $off_canvas_sidebar.attr('data-active-color',new_color);\r\n }\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { FixedPluginComponent } from './fixedplugin.component';\r\n\r\n@NgModule({\r\n imports: [ RouterModule, CommonModule ],\r\n declarations: [ FixedPluginComponent ],\r\n exports: [ FixedPluginComponent ]\r\n})\r\n\r\nexport class FixedPluginModule {}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'footer-cmp',\r\n templateUrl: 'footer.component.html'\r\n})\r\n\r\nexport class FooterComponent{\r\n test : Date = new Date();\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { FooterComponent } from './footer.component';\r\n\r\n@NgModule({\r\n imports: [ RouterModule, CommonModule ],\r\n declarations: [ FooterComponent ],\r\n exports: [ FooterComponent ]\r\n})\r\n\r\nexport class FooterModule {\r\n \r\n}\r\n","import { Component, OnInit, Renderer, ViewChild, ElementRef, Directive } from '@angular/core';\r\nimport { ROUTES } from '../.././sidebar/sidebar.component';\r\nimport { Router, ActivatedRoute, NavigationEnd, NavigationStart } from '@angular/router';\r\nimport { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { Subscription } from 'rxjs/Subscription';\r\nimport { environment } from '../../../environments/environment';\r\nimport { GetPracticeMessagesService } from '../../services/practicemessages.service';\r\nimport { PracticeMessages } from '../../model/models';\r\nimport { CommonService, PatientPortalDemographicsService, ConfirmDialogService, DataSharingService, GetPatientPortalTeleHealthDataService } from '../../services/api';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport PerfectScrollbar from 'perfect-scrollbar';\r\nvar misc: any = {\r\n navbar_menu_visible: 0,\r\n active_collapse: true,\r\n disabled_collapse_init: 0,\r\n}\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'navbar-cmp',\r\n templateUrl: 'navbar.component.html'\r\n})\r\n\r\nexport class NavbarComponent implements OnInit {\r\n private listTitles: any[];\r\n location: Location;\r\n private nativeElement: Node;\r\n private toggleButton;\r\n private sidebarVisible: boolean;\r\n private _router: Subscription;\r\n public open: boolean = false;\r\n public AlertData: PracticeMessages[] = [];\r\n public practiceName: string;\r\n public isTelemed: boolean = false;\r\n public isInstaPract: boolean = false;\r\n loggedin: string = '';\r\n oitReq: boolean= false;\r\n @ViewChild(\"navbar-cmp\", { static: false }) button;\r\n public isAlerts: boolean = false;\r\n constructor(location: Location, private renderer: Renderer, private element: ElementRef, private router: Router, private alertService: GetPracticeMessagesService, private tokenService: CommonService, private demService: PatientPortalDemographicsService, private toastr: ToastrService, private confirmBox: ConfirmDialogService, private teleHealthService: GetPatientPortalTeleHealthDataService) {\r\n this.location = location;\r\n this.nativeElement = element.nativeElement;\r\n this.sidebarVisible = false;\r\n //if (environment.appSetting.requestFrom == \"oitconnect\")\r\n // this.oitReq = true;\r\n //else\r\n // this.oitReq = false;\r\n }\r\n\r\n ngOnInit() {\r\n //const elemNavbar = document.querySelector('.dropdown-menu-center');\r\n //let ps = new PerfectScrollbar(elemNavbar);\r\n //const html = document.getElementsByTagName('html')[0];\r\n //html.classList.add('perfect-scrollbar-on');\r\n this.listTitles = ROUTES.filter(listTitle => listTitle);\r\n const navbar: HTMLElement = this.element.nativeElement;\r\n const body = document.getElementsByTagName('body')[0];\r\n this.toggleButton = navbar.getElementsByClassName('navbar-toggler')[0];\r\n if (body.classList.contains('sidebar-mini')) {\r\n misc.sidebar_mini_active = true;\r\n }\r\n this._router = this.router.events.filter(event => event instanceof NavigationEnd).subscribe((event: NavigationEnd) => {\r\n const $layer = document.getElementsByClassName('close-layer')[0];\r\n if ($layer) {\r\n $layer.remove();\r\n }\r\n });\r\n let userCred = localStorage.getItem('userVal');\r\n var CryptoJS = require(\"crypto-js\");\r\n var SECRET_KEY = 'm@duLeMD#2k19';\r\n let decrVal = CryptoJS.AES.decrypt(userCred, SECRET_KEY);\r\n decrVal = decrVal.toString(CryptoJS.enc.Utf8);\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n this.loggedin = userData[0].LastLoginTime;\r\n this.tokenService.GetPortalKey(decrVal.split(',')[0], decrVal.split(',')[1]);\r\n let headerContext: { [key: string]: string } = {};\r\n headerContext[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.alertService.configuration.apiKeys = headerContext;\r\n this.alertService.configuration.accessToken = environment.portalAccessKey;\r\n this.alertService.GetPracticeLoginMessages().map(t => t).subscribe(items => {\r\n\r\n this.AlertData = items;\r\n if (this.AlertData.length > 0) {\r\n this.isAlerts = true;\r\n this.toastr.info('You have ' + this.AlertData.length + ' Notifications', '', { timeOut: 3000, positionClass: 'toast-top-center' });\r\n }\r\n });\r\n this.demService.configuration.apiKeys = headerContext;\r\n this.demService.configuration.accessToken = environment.portalAccessKey;\r\n this.demService.patientPortalDemographics(userData[0].PatientId).subscribe(items => {\r\n if (items.PatientInfo.TelemedPatientId != '')\r\n this.isTelemed = true;\r\n else\r\n this.isTelemed = false;\r\n if (items.PatientInfo.InstaPractPatientId != '' && environment.appSetting.teleHealthAccess == 'InstaPract')\r\n this.isInstaPract = true;\r\n else\r\n this.isInstaPract = false;\r\n\r\n localStorage.setItem('patientinfo', JSON.stringify(items));\r\n this.practiceName = items.PatientInfo.PracticeName;\r\n localStorage.setItem('practicename', this.practiceName);\r\n });\r\n\r\n\r\n }\r\n\r\n minimizeSidebar() {\r\n const body = document.getElementsByTagName('body')[0];\r\n\r\n if (misc.sidebar_mini_active === true) {\r\n body.classList.remove('sidebar-mini');\r\n misc.sidebar_mini_active = false;\r\n\r\n } else {\r\n setTimeout(function () {\r\n body.classList.add('sidebar-mini');\r\n\r\n misc.sidebar_mini_active = true;\r\n }, 300);\r\n }\r\n\r\n // we simulate the window Resize so the charts will get updated in realtime.\r\n const simulateWindowResize = setInterval(function () {\r\n window.dispatchEvent(new Event('resize'));\r\n }, 180);\r\n\r\n // we stop the simulation of Window Resize after the animations are completed\r\n setTimeout(function () {\r\n clearInterval(simulateWindowResize);\r\n }, 1000);\r\n }\r\n\r\n isMobileMenu() {\r\n if (window.outerWidth < 991) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n sidebarOpen() {\r\n var toggleButton = this.toggleButton;\r\n var html = document.getElementsByTagName('html')[0];\r\n setTimeout(function () {\r\n toggleButton.classList.add('toggled');\r\n }, 500);\r\n const mainPanel = document.getElementsByClassName('main-panel')[0];\r\n if (window.innerWidth < 991) {\r\n mainPanel.style.position = 'fixed';\r\n }\r\n html.classList.add('nav-open');\r\n this.sidebarVisible = true;\r\n }\r\n sidebarClose() {\r\n var html = document.getElementsByTagName('html')[0];\r\n this.toggleButton.classList.remove('toggled');\r\n this.sidebarVisible = false;\r\n html.classList.remove('nav-open');\r\n const mainPanel = document.getElementsByClassName('main-panel')[0];\r\n\r\n if (window.innerWidth < 991) {\r\n setTimeout(function () {\r\n mainPanel.style.position = '';\r\n }, 500);\r\n }\r\n }\r\n sidebarToggle() {\r\n // var toggleButton = this.toggleButton;\r\n // var body = document.getElementsByTagName('body')[0];\r\n if (this.sidebarVisible == false) {\r\n this.sidebarOpen();\r\n } else {\r\n this.sidebarClose();\r\n }\r\n }\r\n\r\n getTitle() {\r\n var titlee = this.location.prepareExternalUrl(this.location.path());\r\n if (titlee.charAt(0) === '#') {\r\n titlee = titlee.slice(1);\r\n }\r\n for (var item = 0; item < this.listTitles.length; item++) {\r\n var parent = this.listTitles[item];\r\n if (parent.path === titlee) {\r\n return parent.title;\r\n } else if (parent.children) {\r\n var children_from_url = titlee.split(\"/\")[2];\r\n for (var current = 0; current < parent.children.length; current++) {\r\n if (parent.children[current].path === children_from_url) {\r\n return parent.children[current].title;\r\n }\r\n }\r\n }\r\n }\r\n return 'Dashboard';\r\n }\r\n\r\n getPath() {\r\n return this.location.prepareExternalUrl(this.location.path());\r\n }\r\n goToLogin(): any {\r\n this.router.navigate(['login']);\r\n }\r\n logout() {\r\n //if (confirm(\"Are you sure you want to Log Off?\")) {\r\n // this.router.navigate(['login']);\r\n //}\r\n this.confirmBox.confirmThis(\"logout\", () => {\r\n localStorage.clear();\r\n localStorage.removeItem(\"newlogin\");\r\n localStorage.removeItem(\"usersession\");\r\n localStorage.removeItem(\"userVal\");\r\n if (environment.usertype == 'b2cuser') { \r\n window.location.href = environment.appSetting.connectmmdURL;\r\n }\r\n else if (environment.appSetting.logoutURL!= \"\")\r\n {\r\n window.location.href = environment.appSetting.logoutURL;\r\n return;\r\n }\r\n else\r\n this.router.navigate(['login']);\r\n }, function () {\r\n return false;\r\n })\r\n }\r\n\r\n closeApp() {\r\n //localStorage.clear();\r\n //localStorage.removeItem(\"newlogin\");\r\n //localStorage.removeItem(\"usersession\");\r\n //localStorage.removeItem(\"userVal\");\r\n var win = window.open(\"about:blank\", \"_self\");\r\n win.close();\r\n\r\n }\r\n teleHealth(type) {\r\n let userCred = localStorage.getItem('userVal');\r\n var CryptoJS = require(\"crypto-js\");\r\n var SECRET_KEY = 'm@duLeMD#2k19';\r\n let decrVal = CryptoJS.AES.decrypt(userCred, SECRET_KEY);\r\n decrVal = decrVal.toString(CryptoJS.enc.Utf8);\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n this.tokenService.GetPortalKey(decrVal.split(',')[0], decrVal.split(',')[1]);\r\n let headerContext: { [key: string]: string } = {};\r\n headerContext[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.teleHealthService.configuration.apiKeys = headerContext;\r\n this.teleHealthService.configuration.accessToken = environment.portalAccessKey;\r\n if (type == 'snapMD')\r\n {\r\n this.teleHealthService.getPatientPortalTeleHealthData(userData[0].PatientId).subscribe(resultData => {\r\n var winWidth = window.screen.availWidth - 50;\r\n var winHeight = window.screen.availHeight - 50;\r\n //let resultData = JSON.parse(data);\r\n if (resultData.Success == true) {\r\n window.open(resultData.Url, '_blank', 'width=' + winWidth + ',height=' + winHeight + ',top=0,location=no,left=0,resizable=1,scrollbars=1');\r\n }\r\n else {\r\n this.toastr.error(resultData.Message);\r\n }\r\n });\r\n }\r\n else {\r\n this.teleHealthService.getInstaPracticeAccessToken(userData[0].PatientId, 'patient').subscribe(resultData => { \r\n // let resultData = JSON.parse(data);\r\n var winWidth = window.screen.availWidth - 50;\r\n var winHeight = window.screen.availHeight - 50;\r\n if (resultData.Result == true) {\r\n window.open(environment.appSetting.instaPractURL + '?token=' + resultData.Token, '_blank', 'width=' + winWidth + ',height=' + winHeight + ',top=0,location=no,left=0,resizable=1,scrollbars=1');\r\n }\r\n else {\r\n this.toastr.error(resultData.Message);\r\n }\r\n });\r\n\r\n }\r\n }\r\n showAlerts() {\r\n //this.router.navigate(['notification']);\r\n }\r\n}\r\n","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { NavbarComponent } from './navbar.component';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { ConfirmDialogModule } from \"../../confirm-dialog.module\"; \r\n\r\n@NgModule({\r\n imports: [RouterModule, CommonModule, ConfirmDialogModule, ToastrModule.forRoot({\r\n timeOut: 5000,\r\n positionClass: 'toast-top-left',\r\n preventDuplicates: true,\r\n })],\r\n declarations: [NavbarComponent],\r\n exports: [NavbarComponent],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\n\r\nexport class NavbarModule {\r\n \r\n}\r\n","import { Component, OnInit, AfterViewInit, AfterViewChecked, AfterContentInit } from '@angular/core';\r\nimport { GetUserMenuService, CommonService, PatientPortalDemographicsService, DataSharingService, ConfirmDialogService, GetPatientPortalStatementMenuService, GetPatientPortalFormsService, GetPatientEducationalResourcesService, GetVisitNotesService, GetPracticeMessagesService, PracticeCloudStorageService, ClipBoardService } from '../services/api';\r\nimport { environment } from '../../environments/environment';\r\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\r\nimport { PatientPortalStatementMenu, PatientPortalFormData, PatientEducationalResourceListData, PatientPortalEMRViewNoteData, PatientPortalLoggedInUserList, PracticeMessages } from '../model/models';\r\nimport { DatePipe } from '@angular/common';\r\nimport { transcode } from 'buffer';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport PerfectScrollbar from 'perfect-scrollbar';\r\n\r\n//Metadata\r\ndeclare var $: any;\r\nexport interface RouteInfo {\r\n path: string;\r\n title: string;\r\n type: string;\r\n collapse?: string;\r\n icontype: string;\r\n // icon: string;\r\n children?: ChildrenItems[];\r\n}\r\n\r\nexport interface ChildrenItems {\r\n path: string;\r\n title: string;\r\n ab: string;\r\n type?: string;\r\n}\r\n\r\n//Menu Items\r\nexport const ROUTES: RouteInfo[] = [{\r\n path: '/dashboard',\r\n title: 'Dashboard',\r\n type: 'link',\r\n icontype: 'nc-icon nc-bank',\r\n children: []\r\n}\r\n\r\n];\r\n\r\n@Component({\r\n moduleId: module.id,\r\n selector: 'sidebar-cmp',\r\n templateUrl: 'sidebar.component.html',\r\n})\r\n\r\nexport class SidebarComponent implements OnInit {\r\n\r\n\r\n public menuItems: any[] = [];\r\n public childItems: any[] = [];\r\n public chChildItems: any[] = [];\r\n public userName: string;\r\n public patientImage: any;\r\n public patientForms: PatientPortalFormData[] = [];\r\n public edList: PatientEducationalResourceListData[] = [];\r\n public visitDates: PatientPortalEMRViewNoteData[] = [];\r\n public subIcon: string;\r\n userList: any;\r\n isAuthUser: boolean = false;\r\n selectedPt: number = 0;\r\n selectedPractice: string = '';\r\n encVal: any;\r\n Header: string = '';\r\n Logo: string = '';\r\n todoCount: number = 0;\r\n public icons = [\r\n 'sidemenu-icon-dashboard', 'sidemenu-icon-messageboard', 'sidemenu-icon-clinical', 'sidemenu-icon-financial',\r\n 'sidemenu-icon-patientform', 'sidemenu-icon-edresource', 'sidemenu-icon-patientform', 'sidemenu-icon-clipboard', 'sidemenu-icon-oralimmuno'\r\n ]\r\n public childIcons = [\r\n 'message-icon-inbox', 'message-icon-sent', 'message-icon-draft', 'message-icon-archive', 'clinical-icon-clinicalsummary',\r\n 'clinical-icon-medical', 'clinical-icon-medications', 'clinical-icon-drugallergies', 'clinical-icon-labresults', 'clinical-icon-skintest', 'clinical-icon-immunization', 'clinical-icon-visit', 'clinical-icon-appointments',\r\n 'finance-icon-statement', 'finance-icon-payment', 'finance-icon-receipt'\r\n ]\r\n public statementMenu: PatientPortalStatementMenu[] = [];\r\n public AlertData: PracticeMessages[] = [];\r\n constructor(private menuService: GetUserMenuService, private tokenService: CommonService, private demService: PatientPortalDemographicsService, private router: Router, private imageUpdate: DataSharingService, private confirmBox: ConfirmDialogService, private stmenuService: GetPatientPortalStatementMenuService, public datepipe: DatePipe, private formService: GetPatientPortalFormsService, private edService: GetPatientEducationalResourcesService, private alertService: GetPracticeMessagesService, private visitService: GetVisitNotesService, private spinner: NgxSpinnerService, private cloudService: PracticeCloudStorageService, private clipboardService: ClipBoardService) {\r\n if (environment.appSetting.prodType == 'CVN') {\r\n this.Header = 'CVN Patient'\r\n this.Logo = './assets/icons/cvn-logo.png';\r\n }\r\n else\r\n if (environment.appSetting.prodType == 'OIT') {\r\n this.Header = 'OIT Patient'\r\n this.Logo = './assets/icons/oit-trans.png';\r\n }\r\n else {\r\n this.Header = 'Patient Portal'\r\n this.Logo = './assets/icons/logo-new.png';\r\n\r\n }\r\n }\r\n isNotMobileMenu() {\r\n if (window.outerWidth > 991) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n ngOnInit() {\r\n //this.patientImage = environment.PatientImage;\r\n let userCred = localStorage.getItem('userVal');\r\n var CryptoJS = require(\"crypto-js\");\r\n var SECRET_KEY = 'm@duLeMD#2k19';\r\n let decrVal = CryptoJS.AES.decrypt(userCred, SECRET_KEY);\r\n decrVal = decrVal.toString(CryptoJS.enc.Utf8);\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n this.tokenService.GetPortalKey(decrVal.split(',')[0], decrVal.split(',')[1]);\r\n //this.menuItems = ROUTES.filter(menuItem => menuItem);\r\n let context: { [key: string]: string } = {};\r\n this.selectedPt = userData[0].PatientId;\r\n this.selectedPractice = userData[0].PracticeName;\r\n context[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.stmenuService.configuration.apiKeys = context;\r\n this.stmenuService.configuration.accessToken = environment.portalAccessKey;\r\n this.stmenuService.getPatientPortalStatementMenu(userData[0].PatientId).subscribe(async statements => {\r\n this.statementMenu = await statements;\r\n\r\n this.tokenService.GetPortalKey(decrVal.split(',')[0], decrVal.split(',')[1]);\r\n let context1: { [key: string]: string } = {};\r\n context1[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.formService.configuration.apiKeys = context1;\r\n this.formService.configuration.accessToken = environment.portalAccessKey;\r\n this.formService.getPatientPortalForms(userData[0].PatientId).subscribe(async forms => {\r\n this.patientForms = await forms;\r\n\r\n this.alertService.configuration.apiKeys = context1;\r\n this.alertService.configuration.accessToken = environment.portalAccessKey;\r\n this.alertService.GetPracticeLoginMessages().subscribe(async items => {\r\n this.AlertData = await items;\r\n\r\n this.visitService.configuration.apiKeys = context1;\r\n this.visitService.configuration.accessToken = environment.portalAccessKey;\r\n this.visitService.GetVisitNotes(userData[0].PatientId, false).subscribe(async vs => {\r\n this.visitDates = await vs;\r\n\r\n this.clipboardService.configuration.apiKeys = context1;\r\n this.clipboardService.configuration.accessToken = environment.portalAccessKey;\r\n this.clipboardService.getPatientAssignedClipboardsInfo(userData[0].PatientId, 1).subscribe(async resultData => {\r\n this.todoCount = await resultData.length;\r\n\r\n let context2: { [key: string]: string } = {};\r\n context2[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.PracticeID + \"'}\";\r\n this.edService.configuration.apiKeys = context2;\r\n this.edService.configuration.accessToken = environment.portalAccessKey;\r\n let headerContext: { [key: string]: string } = {};\r\n headerContext[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.PracticeID + \"'}\";\r\n this.menuService.configuration.apiKeys = headerContext;\r\n this.menuService.configuration.accessToken = environment.portalAccessKey;\r\n this.menuService.getUserMenu().subscribe(async data => {\r\n await data.forEach(mf => {\r\n if (mf.ParentID == 0 && mf.MenuText != 'My Account') {\r\n if (mf.MenuText == 'Patient Forms')\r\n this.menuItems.push({ 'menuid': mf.MenuID, 'path': mf.MenuText.toLowerCase(), 'title': mf.MenuText, 'collapse': 'patientforms', 'type': 'sub', 'icontype': '', 'children': [] });\r\n else\r\n this.menuItems.push({ 'menuid': mf.MenuID, 'path': (mf.MenuText == 'Educational Resources') ? 'educationalresources' : (mf.MenuText == 'Oral Immunotherapy') ? 'immunotherapy' : mf.MenuText.toLowerCase(), 'title': mf.MenuText, 'collapse': mf.MenuText, 'type': (mf.MenuText == 'Dashboard' || mf.MenuText == 'Documents' || mf.MenuText == 'Educational Resources' || mf.MenuText == 'Oral Immunotherapy') ? 'link' : 'sub', 'icontype': '', 'children': [] });\r\n }\r\n });\r\n let incr: number = 0;\r\n this.menuItems.forEach((ch, i) => {\r\n ch.icontype = this.icons[i];\r\n if (ch.menuid == 1) {\r\n if (this.AlertData.length > 0)\r\n this.childItems.push({ 'path': 'notification', 'title': 'Notification', 'ab': 'message-icon-notification', nxtchild: [], 'hrefid': '' });\r\n }\r\n if (ch.path == 'patient forms') {\r\n this.patientForms.forEach((frmenu) => {\r\n ch.children.push({ 'path': frmenu.FormName, 'title': frmenu.FormName + '~' + frmenu.Id + '~' + frmenu.FormId, 'id': frmenu.Id, 'FormId': frmenu.FormId, 'ab': '', nxtchild: [], 'actpath': 'patientforms' });\r\n });\r\n }\r\n if (ch.path == 'clipboards') {\r\n if (this.todoCount > 0) {\r\n this.childItems.push({ 'path': 'todolist', 'title': 'My To-Do List', 'ab': 'fa fa-list-alt', nxtchild: [], 'hrefid': '' });\r\n this.childItems.push({ 'path': 'completed', 'title': 'Completed', 'ab': 'fa fa-th-list', nxtchild: [], 'hrefid': '' });\r\n }\r\n else\r\n this.menuItems.splice(i, 1);\r\n\r\n }\r\n data.forEach((mfch, j) => {\r\n if (ch.menuid == mfch.ParentID) {\r\n if (mfch.MenuText != 'Generate PDF Report') {\r\n\r\n if (mfch.MenuURL == 'PatientSatement') {\r\n this.chChildItems = [];\r\n this.statementMenu.forEach((stmenu) => {\r\n this.chChildItems.push({ 'id': stmenu.StatementID, 'path': 'statement', 'title': this.datepipe.transform(stmenu.StatementDate, 'MM/dd/yyyy'), 'ab': '' });\r\n });\r\n this.childItems.push({ 'path': '', 'title': mfch.MenuText, 'ab': this.childIcons[incr], nxtchild: this.chChildItems, 'hrefid': 'statements' });\r\n this.subIcon = 'finance-icon-statement';\r\n }\r\n else\r\n if (mfch.MenuURL == 'VisitSummary') {\r\n this.chChildItems = [];\r\n this.subIcon = 'clinical-icon-visit';\r\n this.visitDates.forEach((vs) => {\r\n if (vs.SendToPatientPortal == true || vs.DictationotesSendToPatientPortal == true) {\r\n let vsId = 0;\r\n if (vs.SendToPatientPortal == true)\r\n vsId = vs.VisitSlip;\r\n else\r\n if (vs.DictationotesSendToPatientPortal == true)\r\n vsId = vs.Note_Id;\r\n this.chChildItems.push({ 'id': vsId, 'path': 'visitsummary', 'title': vs.VisitSlip + \"-\" + vs.ServiceType + \"-\" + vs.VisitDate + \"-\" + vs.ApprovalId + \"-\" + vs.ApprovalName + \"-\" + vs.ApprovalDate + \"-\" + vs.SendToPatientPortal + \"-\" + vs.DictationotesSendToPatientPortal + \"-\" + vs.Note_Id, 'ab': '', 'vstitle': vs.VisitDate });\r\n }\r\n });\r\n this.childItems.push({ 'path': '', 'title': mfch.MenuText, 'ab': this.childIcons[incr], nxtchild: this.chChildItems, 'hrefid': 'visits' });\r\n }\r\n else\r\n if (mfch.MenuURL == 'MessageBoard')\r\n this.childItems.push({ 'path': mfch.MenuText, 'title': mfch.MenuText, 'ab': this.childIcons[incr], nxtchild: [], 'hrefid': '' });\r\n else\r\n this.childItems.push({ 'path': mfch.MenuURL.toLowerCase(), 'title': mfch.MenuText, 'ab': this.childIcons[incr], nxtchild: [], 'hrefid': '' });\r\n incr++;\r\n }\r\n }\r\n\r\n });\r\n if (ch.path != 'patient forms')//&& ch.path != 'educationalresources'\r\n ch.children = this.childItems;\r\n this.childItems = [];\r\n });\r\n });\r\n let headerContext1: { [key: string]: string } = {};\r\n headerContext1[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.demService.configuration.apiKeys = headerContext1;\r\n this.demService.configuration.accessToken = environment.portalAccessKey;\r\n this.imageUpdate.result$.subscribe(result => this.patientImage = result);\r\n if (this.patientImage) {\r\n let el: HTMLImageElement = document.getElementById('imgPatient') as HTMLImageElement;\r\n el.src = this.patientImage;\r\n }\r\n let storageType = localStorage.getItem('storagetype');\r\n let isCloudStorage: boolean = storageType.toUpperCase() == 'MODULEMD' ? false : true;\r\n\r\n this.demService.patientPortalDemographics(userData[0].PatientId).subscribe(items => {\r\n let pInf = items.PatientInfo;\r\n let ptName = pInf.PatientFirstName + ' ' + pInf.PatientMiddleName + ' ' + pInf.PatientLastName;\r\n localStorage.setItem('patientname', ptName);\r\n if (this.patientImage == null) {\r\n if (isCloudStorage == false) {\r\n let imageUrl: string = environment.appSetting.patientPicturesFolderPath + environment.UserPracticeId + \"/\" + items.PatientInfo.FileName;\r\n this.imageExists(imageUrl, function (exists) {\r\n let el: HTMLImageElement = document.getElementById('imgPatient') as HTMLImageElement;\r\n\r\n if (exists == false) {\r\n if (el != null)\r\n el.src = \"../../assets/img/faces/joe-gardner-1.jpg\";\r\n }\r\n else {\r\n\r\n el.src = environment.appSetting.patientPicturesFolderPath + environment.UserPracticeId + \"/\" + items.PatientInfo.FileName;\r\n }\r\n\r\n });\r\n this.patientImage = environment.appSetting.patientPicturesFolderPath + environment.UserPracticeId + \"/\" + items.PatientInfo.FileName;\r\n }\r\n else {\r\n let container = localStorage.getItem('container');\r\n let configuration = localStorage.getItem('configuration');\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n let headerContextSP: { [key: string]: string } = {};\r\n let supportPortal = 'MMD_COMMON';\r\n headerContextSP[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + supportPortal + \"'}\";\r\n this.cloudService.configuration.apiKeys = headerContextSP;\r\n this.cloudService.configuration.accessToken = environment.portalAccessKey;\r\n\r\n this.cloudService.checkIfFileExistsInCloudStorage(storageType, configuration, container, '', items.PatientInfo.FileName).subscribe(exist => {\r\n if (exist == true) {\r\n this.cloudService.downloadFileFromCloudStorage(storageType, configuration, container, '', items.PatientInfo.FileName).subscribe(fileUrl => {\r\n var byteCharacters = atob(fileUrl);\r\n var byteNumbers = new Array(byteCharacters.length);\r\n for (var i = 0; i < byteCharacters.length; i++) {\r\n byteNumbers[i] = byteCharacters.charCodeAt(i);\r\n }\r\n var byteArray = new Uint8Array(byteNumbers);\r\n var file = new Blob([byteArray], { type: 'application/jpg;base64' });\r\n var fileURL = URL.createObjectURL(file);\r\n let el: HTMLImageElement = document.getElementById('imgPatient') as HTMLImageElement;\r\n el.src = fileURL;\r\n console.clear();\r\n\r\n });\r\n }\r\n });\r\n }\r\n }\r\n });\r\n // this.isAuthUser = environment.isAuthorizeuser;\r\n let authUser = localStorage.getItem('authorizeUser');\r\n this.isAuthUser = authUser == 'true' ? true : false;\r\n if (this.isAuthUser == true) {\r\n this.userList = JSON.parse(localStorage.getItem('userlist'));\r\n }\r\n else {\r\n }\r\n this.userName = userData[0].PatientName\r\n const elemModal = document.querySelector('.patientSelectionModal');\r\n elemModal.scrollTop = 0;\r\n let ps = new PerfectScrollbar(elemModal);\r\n });\r\n });\r\n });\r\n });\r\n });\r\n }\r\n logout() {\r\n this.confirmBox.confirmThis(\"Are you sure you want to Log Off?\", () => {\r\n this.router.navigate(['login']);\r\n }, function () {\r\n return false;\r\n })\r\n }\r\n setImage() {\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n let storageType = localStorage.getItem('storagetype');\r\n let isCloudStorage: boolean = storageType.toUpperCase() == 'MODULEMD' ? false : true;\r\n let headerContext1: { [key: string]: string } = {};\r\n headerContext1[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + environment.UserPracticeId + \"'}\";\r\n this.demService.configuration.apiKeys = headerContext1;\r\n this.demService.configuration.accessToken = environment.portalAccessKey;\r\n this.demService.patientPortalDemographics(userData[0].PatientId).subscribe(items => {\r\n if (isCloudStorage == false) {\r\n let imageUrl: string = environment.appSetting.patientPicturesFolderPath + environment.UserPracticeId + \"/\" + items.PatientInfo.FileName;\r\n this.imageExists(imageUrl, function (exists) {\r\n let el: HTMLImageElement = document.getElementById('imgPatient') as HTMLImageElement;\r\n\r\n if (exists == false) {\r\n if (el != null)\r\n el.src = \"../../assets/img/faces/joe-gardner-1.jpg\";\r\n }\r\n else {\r\n\r\n el.src = environment.appSetting.patientPicturesFolderPath + environment.UserPracticeId + \"/\" + items.PatientInfo.FileName;\r\n }\r\n\r\n });\r\n this.patientImage = environment.appSetting.patientPicturesFolderPath + environment.UserPracticeId + \"/\" + items.PatientInfo.FileName;\r\n }\r\n else {\r\n let container = localStorage.getItem('container');\r\n let configuration = localStorage.getItem('configuration');\r\n let userData = JSON.parse(localStorage.getItem('usersession'));\r\n let headerContextSP: { [key: string]: string } = {};\r\n let supportPortal = 'MMD_COMMON';\r\n headerContextSP[\"Context\"] = \"{'userid': '\" + userData[0].UserId + \"','practiceid': '\" + supportPortal + \"'}\";\r\n this.cloudService.configuration.apiKeys = headerContextSP;\r\n this.cloudService.configuration.accessToken = environment.portalAccessKey;\r\n\r\n this.cloudService.checkIfFileExistsInCloudStorage(storageType, configuration, container, '', items.PatientInfo.FileName).subscribe(exist => {\r\n if (exist == true) {\r\n this.cloudService.downloadFileFromCloudStorage(storageType, configuration, container, '', items.PatientInfo.FileName).subscribe(fileUrl => {\r\n var byteCharacters = atob(fileUrl);\r\n var byteNumbers = new Array(byteCharacters.length);\r\n for (var i = 0; i < byteCharacters.length; i++) {\r\n byteNumbers[i] = byteCharacters.charCodeAt(i);\r\n }\r\n var byteArray = new Uint8Array(byteNumbers);\r\n var file = new Blob([byteArray], { type: 'application/jpg;base64' });\r\n var fileURL = URL.createObjectURL(file);\r\n let el: HTMLImageElement = document.getElementById('imgPatient') as HTMLImageElement;\r\n el.src = fileURL;\r\n console.clear();\r\n\r\n });\r\n }\r\n });\r\n }\r\n\r\n });\r\n\r\n }\r\n imageExists(url, callback) {\r\n var img = new Image();\r\n img.onload = function () { callback(true); };\r\n img.onerror = function () { callback(false); };\r\n img.src = url;\r\n }\r\n selectPatient() {\r\n //$('#patientSelectionModal').modal(\"show\");\r\n this.router.navigate(['patientlist']);\r\n\r\n }\r\n switchPatient(patId) {\r\n let userData = this.userList.filter(m => m.PatientId === patId);\r\n if (userData[0].IsAzure) {\r\n var CryptoJS = require(\"crypto-js\");\r\n var SECRET_KEY = 'm@duLeMD#2k19';\r\n var accesscode = CryptoJS.AES.encrypt(userData[0].UserLogName + ',' + userData[0].PracticeCode + ',' + userData[0].PatientId, SECRET_KEY).toString();\r\n window.location.href = environment.appSetting.azurePatientPortalUrl + '?azure=1&accessCode=' + encodeURIComponent(accesscode);\r\n return;\r\n\r\n }\r\n localStorage.removeItem('usersession');\r\n localStorage.setItem('usersession', JSON.stringify(userData));\r\n $('#patientSelectionModal').modal(\"hide\");\r\n this.router.routeReuseStrategy.shouldReuseRoute = function (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) {\r\n if (future.url.toString() === 'view' && curr.url.toString() === future.url.toString()) {\r\n return false;\r\n }\r\n return (future.routeConfig === curr.routeConfig);\r\n };\r\n //this.router.onSameUrlNavigation = 'reload';\r\n environment.UserPracticeId = userData[0].PracticeCode;\r\n this.userName = userData[0].PatientName;\r\n this.setImage();\r\n if (this.router.url == '/dashboard')\r\n this.router.navigate(['dashboard/dashboard']);\r\n else\r\n this.router.navigate(['dashboard']);\r\n\r\n }\r\n goToDashboard() {\r\n this.router.navigate(['dashboard']);\r\n\r\n }\r\n ngAfterViewInit() {\r\n }\r\n redirectToPage(title, fromReq) {\r\n if (fromReq == 'patientforms' || fromReq == 'visits' || fromReq == 'statement') {//|| fromReq == 'educationalresources'\r\n localStorage.setItem('reqParam', title);\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { SidebarComponent } from './sidebar.component';\r\n//import { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { APIS } from '../services/api';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\n\r\n@NgModule({\r\n imports: [RouterModule, CommonModule, NgxSpinnerModule ],\r\n declarations: [ SidebarComponent ],\r\n exports: [ SidebarComponent ],\r\n providers:[APIS,DatePipe]\r\n})\r\n\r\nexport class SidebarModule {\r\n \r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as _ from 'lodash'; \r\n\r\n@Pipe({\r\n name: 'unique',\r\n pure: false\r\n})\r\n\r\nexport class UniquePipe implements PipeTransform {\r\n transform(value: any): any{\r\n if(value!== undefined && value!== null){\r\n return _.uniqBy(value, 'ReactionCategoryId');\r\n }\r\n return value;\r\n }\r\n}","import { InjectionToken } from '@angular/core';\r\n\r\nexport const BASE_PATH = new InjectionToken('basePath');\r\nexport const COLLECTION_FORMATS = {\r\n 'csv': ',',\r\n 'tsv': ' ',\r\n 'ssv': ' ',\r\n 'pipes': '|'\r\n}\r\n","module.exports = __webpack_public_path__ + \"login-logo.png\";","// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `.angular-cli.json`.\r\nexport const environment = {\r\n production: false,\r\n accessKey: '',\r\n portalAccessKey: '',\r\n azureaccessKey: '',\r\n azureportalAccessKey: '',\r\n PracticeID: '',\r\n UserPracticeId: '',\r\n PatientImage: '',\r\n datTableFlag: false,\r\n isAuthorizeuser: false,\r\n usertype: 'patientportal',\r\n isAzure: false,\r\n appSetting: {\r\n 'azureidentityserver': '',\r\n 'azurePatientPortalUrl': '',\r\n 'azureapiUrl': '',\r\n 'identityserver': '',\r\n 'clientid': '',\r\n 'secretkey': '',\r\n 'portalclientid': '',\r\n 'portalsecretkey': '',\r\n 'hashcode': '',\r\n 'apiUrl': '',\r\n 'patientPicturesFolderPath': '',\r\n 'defaultImagePath': '',\r\n 'defaultPicturesFolderPath': require('../assets/img/login-logo.png'),\r\n 'PracticeHeader': '',\r\n 'PracticeShortName': '',\r\n 'teleHealthAccess': '',\r\n 'instaPractURL': '',\r\n 'connectmmdURL': '',\r\n 'requestFrom': '',\r\n 'formId': 0,\r\n 'baseUrI': '',\r\n 'androidAppStore': '',\r\n 'iphoneAppStore': '',\r\n 'isProd': true,\r\n 'prodType': '',\r\n 'logoutURL': ''\r\n\r\n }\r\n\r\n\r\n};\r\n","/*!\r\n\r\n =========================================================\r\n * Paper Dashboard Pro Angular - v1.2.0\r\n =========================================================\r\n\r\n * Product Page: https://www.creative-tim.com/product/paper-dashboard-pro-angular\r\n * Copyright 2018 Creative Tim (http://www.creative-tim.com)\r\n\r\n =========================================================\r\n\r\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\r\n\r\n */\r\nimport { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule);\r\n"],"sourceRoot":""}