{"version":3,"file":"static/js/main.chunk.js","sources":["D:/a/1/s/sites/MyBSWHealth3/ClientApp/index.js","webpack:///./src/OurModules/DataGrid/src/scss/DataGrid.scss?a30a","webpack:///./src/components/dashboard/discover/discover.scss?c540","webpack:///./src/components/ecosystem/core/accordion/accordion.scss?fd4f","webpack:///./src/components/ecosystem/core/backdrop/backdrop.scss?55c0","webpack:///./src/components/ecosystem/core/badge/badge.scss?186e","webpack:///./src/components/ecosystem/core/button/button_group.scss?f94b","webpack:///./src/components/ecosystem/core/card/card.scss?9464","webpack:///./src/components/ecosystem/core/checkbox/checkbox.scss?376a","webpack:///./src/components/ecosystem/core/circleButton/circle_button.scss?ff0d","webpack:///./src/components/ecosystem/core/contentSwitcher/content_switcher.scss?352a","webpack:///./src/components/ecosystem/core/datePicker/date_picker.scss?7206","webpack:///./src/components/ecosystem/core/drawer/drawer.scss?2637","webpack:///./src/components/ecosystem/core/dropDown/dropdown.scss?6134","webpack:///./src/components/ecosystem/core/fileUpload/file_attachment.scss?9b7f","webpack:///./src/components/ecosystem/core/fileUpload/file_upload.scss?19e5","webpack:///./src/components/ecosystem/core/input/password.scss?f865","webpack:///./src/components/ecosystem/core/input/text_area.scss?3a69","webpack:///./src/components/ecosystem/core/input/text_field.scss?c3ad","webpack:///./src/components/ecosystem/core/link/LinkCTA.scss?76fd","webpack:///./src/components/ecosystem/core/link/link.scss?6551","webpack:///./src/components/ecosystem/core/linkList/link_list.scss?064f","webpack:///./src/components/ecosystem/core/list/list.scss?d241","webpack:///./src/components/ecosystem/core/modal/modal.scss?4ed6","webpack:///./src/components/ecosystem/core/navigation/navigation.scss?ac77","webpack:///./src/components/ecosystem/core/notifier/notifier.scss?1b34","webpack:///./src/components/ecosystem/core/pill/pill.scss?bda6","webpack:///./src/components/ecosystem/core/radio/radio.scss?3324","webpack:///./src/components/ecosystem/core/thumbnail/thumbnail.scss?2df6","webpack:///./src/components/ecosystem/core/toolTip/tooltip.scss?feb5","webpack:///./src/components/ecosystem/foundation/grid/grid.scss?c972","webpack:///./src/components/ecosystem/mybswh/EmailForm/email_form.scss?85da","webpack:///./src/components/ecosystem/mybswh/button/qab_button.scss?8862","webpack:///./src/components/ecosystem/mybswh/card/banner_card.scss?e712","webpack:///./src/components/ecosystem/mybswh/card/card_link_list.scss?a074","webpack:///./src/components/ecosystem/mybswh/card/circle_button_card.scss?eb40","webpack:///./src/components/ecosystem/mybswh/card/landing_card.scss?3d9a","webpack:///./src/components/ecosystem/mybswh/card/linked_card.scss?e726","webpack:///./src/components/ecosystem/mybswh/link/address_link.scss?633d","webpack:///./src/components/ecosystem/mybswh/link/phone_link.scss?26f1","webpack:///./src/components/ecosystem/mybswh/linkList/proxy_list.scss?42ca","webpack:///./src/components/ecosystem/mybswh/spinner/message_spinner.scss?f4ab","webpack:///./src/components/ecosystem/mybswh/swipeablecontainer/swipeable_container.scss?3cc9","webpack:///./src/components/ecosystem/mybswh/typeahead/typeahead.scss?52c7","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/heading_button_cta.scss?5fcb","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/heading_lang_cta.scss?9480","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/mychart_heading.scss?3e54","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/page_heading.scss?9da6","webpack:///./src/components/ecosystem/test_component.scss?b73c","webpack:///./src/scss/include/index.scss?9a9c","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/OurModules/DataGrid/src/DataGrid.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/OurModules/DataGrid/src/DataGridModel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/OurModules/DataGrid/src/index.js","webpack:///./src/OurModules/DataGrid/src/scss/DataGrid.scss?4b48","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/accountApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/andyliticsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/careGapsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/directSchedulingApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/docsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/epicApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/gaLoging.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/googleApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/NotificationPreferencesApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/authorizationsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/benefitsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/claimsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/documentsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/estimatorApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/invoiceApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/memberApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/otherCoverageApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/processControlEventsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/ssoApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/supportApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServices/taxFormsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthPlanServicesApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/healthSourceApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/inHomeApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/locationApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/loggingApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/membershipsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/mybswBFFApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/mychartProxyAPI.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/openSchedulingApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/pharmacyApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/pharmacyProxyApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/portalApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/prayerFeatureApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/pricingApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/profileToolsApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/providerApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/proxyApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/ssoApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/thriveApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/api/typeaheadApi.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/App.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/AppRoutes.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/AppointmentInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/AppointmentType.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/Covid19AppointmentError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/Covid19ReviewNSubmit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/CustomDirectScheduling.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/DirectScheduleButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/LocationInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/OpenScheduleConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/OpenScheduleConfirmationSuccess.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/OpenSchedulingError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/PatientInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/PatientStatus .js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/Questionnaire.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/ReasonForVisit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/Schedule.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/ScheduleBannerMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/ScheduleNow.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/ScheduleVisitRedirect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/SchedulingFor.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/SelectDoctor.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/ServiceVerifyNSchedule.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/VerifyAndSchedule.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/VerifyDateTime.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/VerifyEditButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/VerifyProviderProfile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/VisitTypeInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/VisitTypeReason.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/services/fluSchedule/ScheduleFlu.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/services/fluSchedule/ScheduleFluVaccineRedirect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/appointments/services/mammogram/ScheduleMammogram.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/CommonSymptoms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/DrawerFindCare.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisitDependent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisitGetStarted.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisitInEligible.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisitNeedsAccount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisitTravel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisit_ProxySelector.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/EVisit_latest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FilterItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCare.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCareButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCareForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCareFormTerms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCareFormWrapper.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCareResults.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCareResultsHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/FindCareSearchForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/GetCareLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/InEligibilityModalInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/InPerson.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/Location.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/MyLocation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/OpenScheduleButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/OpenScheduleDateOnly.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/PortalFilterPill.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/PreVisitTest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/Provider.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/SelectedMapPinListing.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/UrgentCareZipCode.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/Video.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitAvailability.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitAvailiability_PreNew.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitOptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitOptionsCardHeader.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitOptions_PreNew.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitProviderCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/TwilioVideoApp.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/AllowPermissions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/AnimationPerformanceTest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/AudioTrack.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Avatar.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/BandwidthWarning.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/AudioInputList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/AudioOutputList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/AudioVisualizer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/Controls.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/EndCallButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/FlipCameraButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/Options.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/Settings.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/Swipeable.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/ToggleAudioButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/ToggleFullScreenButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/ToggleScreenShareButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/ToggleVideoButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Controls/VideoInputList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/DataTrack.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/MainParticipant.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/MainParticipantInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/MainParticipantOverlay.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/NetworkQualityLevel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Participant.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/ParticipantInfo/ParticipantInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/ParticipantInfo/ParticipantOverlay.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/ParticipantStrip.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/ParticipantTracks.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Popovers/HotSpotPopover.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Popovers/TipPopover.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Popovers/WelcomePopover.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Preflight.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Publication.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/Room.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/useHandleOnDisconnect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/useHandleRoomDisconnectionErrors.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/useHandleTrackPublicationFailed.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/useLocalTracks.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/useRoom.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/useScreenShareToggle.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoProvider/useSelectedParticipant.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/VideoTrack.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/WaitingRoom.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/WaitingRoomDeskTopBackground.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/WaitingRoomPortraitBackground.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/YesNoComponent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/components/enhanceMessage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/constants.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useDeviceSettingsToggle.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useDevices.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useDominantSpeaker.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useFullScreenToggle.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useIsLocalParticipantReconnecting.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useIsRemoteParticipantReconnecting.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useIsTrackContentPreferences.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useIsTrackEnabled.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useIsTrackSwitchedOff.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useLocalAudioToggle.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useLocalVideoToggle.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useLongPress.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useMainSpeaker.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useMediaStreamTrack.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useParticipantNetworkQualityLevel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useParticipants.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/usePublications.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useRoomState.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useScreenShareParticipant.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useShowControls.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useTrack.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/hooks/useVideoContext.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/state/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/state/settings/renderDimensions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/state/settings/settingsReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/state/useActiveSinkId.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/utils/RTCDiagnostics.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/utils/fscreen.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/utils/generateConnectionOptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/utils/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisitV2/utils/isPlainObject.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/VideoVisit_ProxySelector.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ZipnosisError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/AmbulatoryCareRoomStatus.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/AmbulatoryCareVideoVisit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/AmbulatorySurvey.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/BrowserErrorMessages.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/GuestVideoVisitStatus.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/NonLoggedInVideoVisit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/RatingScale.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/TermsForShareLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/VideoVisitComplete.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/VideoVisitSurvey.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/ambulatorycarevideovisit/VideoVisitToolTip.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/mapList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/AgreeToTerms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/ChooseATime.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/GetStarted.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/ReviewSubmit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/SelectCondition.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/VideoVisitConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/VideoVisitConfirmationStatus.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/scheduleVideoVisit/VideoVisitTerms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/care/services/ServiceLocationSlots.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/carecoach/CareCompanion.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/carecoach/CareCompanionTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/carecoach/inbox/AttachmentModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/carecoach/inbox/Message.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/chatbot/chatBot.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/AccessDOB.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ActivityDetectionFrame.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/AppointmentECheckinDashboardMessage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Backdrop.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/BackdropWrapper.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/COVIDScreeningModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/CircularProgressbar.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ConfirmationModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ConfirmationToast.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/CriticalUpdateModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/CustomLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/DataComponent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/DataLoadingSpinner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/DatePicker.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/DatePickerRange.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/DatePickerWithMaskedInput.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/DownloadAppBtn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/EmailLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/EnsureLoggedIn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ErrorLoadingTileMessage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ErrorPage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/FeatureDisabled.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/GenericCollapseWithChildren.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/HRReadOnlyBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/HeaderMessageBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/HistoryBinder.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/InfoModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/LaunchVideoMessage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MainErrorBoundary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MaskedText.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MessageModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MessageSpinner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MessageWithIcon.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MiniSpinner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MobileAppBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/MobileAppDownload.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ModuleCrash.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/NoProxy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/NotAuthorized.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Notices.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/OurMarker.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/OurRoute.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/OurStepManager.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/OurUncontrolledTooltip.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/PageNotFound.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/PageTemplate.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/PersistGateServer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/PhoneLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/DrawerProxyItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/DrawerProxySection.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/DrawerProxySelector.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/MyChartProxySelector.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/NoProxy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/ProxyPicker.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/ProxyPickerTesting.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/ProxySelection.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/ProxySelectorCarousel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/ProxySelectorSlick.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/SelectPatient.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/hooks/addSkipPicker.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/hooks/useCarouselWidth.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Proxy/hooks/usePickerFor.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/Rating.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RefreshOnNav.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ResetTest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RouteHP.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RouteHPLoggedIn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RoutePortal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RoutePortalLoggedIn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RoutePortalLoggedInByEXTID.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RouteRX.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RouteRXLoggedIn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RoutesPortalEstimates.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/RxNumber.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/SectionLoading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/SectionLoadingError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/SelectPatient.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/ServiceDownBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/StatusBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/StickyProgressBar.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/SwitchUserSpinner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/SystemCrash.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/SystemOutage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/TestComponentError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/TestPrerenderError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/TryAgainToolTip.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/VersionUpdateBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/YesNoComponent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/Menu.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/AppointmentMenuItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/BSWPharmacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/GetCare.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/InBox.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/InsuranceAndBilling.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/MyBSW.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/Profile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/SettingMenuItems.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/SignOutMenuItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/Utils.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/MenuItems/Wellness.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/accordionMenu/Nav.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/errorLoadingTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/footer/Footer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/footer/FooterCopyrightVersion.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/footer/FooterLoggedOut.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/footer/LogInFooterHelpDesk.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/googleMapMain.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/hooks/useElementHeight.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/hooks/useScreenWidth.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/hooks/useScrollPosition.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/iFrameResizerComponent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/AutocompleteInput.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/Email.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/FileUpload.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/GenericInput.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/LocationSearchInput.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/PhoneNumber.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/SSNInput.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/ToggleSwitch.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/ZipInput.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/multiLineSelect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/select.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/input/text.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/inputv2/AutocompleteInput.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/inputv2/select.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/navigateParent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/spinner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/staticHtmlContent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/common/tileLoader.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/connectedcare/AALinkForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/connectedcare/AAUserTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/connectedcare/PotentialAAUserTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19CareLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19Tile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19VaccineAppointmentInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19VaccineProvider.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19VaccineProviderDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19VaccineProviderLocations.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19VaccineProviderSlots.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19VaccineSchedule.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/Covid19VaccineScheduleError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/CovidVaccineConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/ScheduleVaccineLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/ScheduleVaccineRedirect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/VaccineEligibility.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/VaccineEligibilityPreBooster.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/VaccineEligibilitySurvey.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/VaccineEligibilitySurveyPreBooster.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/screener/Covid19Screener.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/covid19Vaccine/screener/Covid19ScreenerSurvey.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/CustomGraphicsBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/Dashboard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/DashboardPrivacyNotifier.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/DashboardSectionHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/DashboardTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/DashboardTileLoader.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/DownLoadMyRecordTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/GiveFeedback.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/HeroAnimation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/HeroBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/LettersTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/LyraTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/MembershipNotificationModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/MyChartDataTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/NoMedicalRecordTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/OnboardingCarouselModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/OnboardingDashboardModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/ResourceSubDescription.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/ResourceSubHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/ResourceSubTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/ResourceTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/AfterVisitSummaryTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/ECheckInCTA.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/NoAppointmentsTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/VideoVisitBrowserMsgs.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/VideoVisitLaunchBtn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/VideoVisitRoomClosed.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/VideoVisitRoomMsgs.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/VideoVisitTestLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/VideoVisitTips.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/appointmentDetailsTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/appointmentInPersonTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/appointmentPricing.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/appointmentTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/appointmentTileHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/appointmentVideoVisitTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/hooks/useIsTimeToStart.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/hooks/useIsVisitToday.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/appointment/hooks/useRoomTime.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/discover/Discover.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/discover/DiscoverNewTile.js","webpack:///./src/components/dashboard/discover/discover.scss?0cd7","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/discover/hooks/useTiles.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/getCare/GetCareBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/getCare/GetCareButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/getCare/GetCareTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/getCare/QuickActionBar.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/getCare/hooks/useBannerOffset.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/getCare/hooks/useCollapsedBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/voiceOfCustomer/QualtricsClickToLaunch.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/wellness/FluVaccineTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/dashboard/wellness/Thrive365Tile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/docs/CustomerService.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/docs/CustomerServiceInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/docs/disclosure.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/docs/faq.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/docs/privacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/docs/terms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/ComponentsDemo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/TestComponent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/accordion/Accordion.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/accordion/AccordionItem.js","webpack:///./src/components/ecosystem/core/accordion/accordion.scss?5937","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/accordion/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/backdrop/Backdrop.js","webpack:///./src/components/ecosystem/core/backdrop/backdrop.scss?24c1","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/backdrop/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/badge/Badge.js","webpack:///./src/components/ecosystem/core/badge/badge.scss?6842","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/badge/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/button/Button.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/button/ButtonGroupItem.js","webpack:///./src/components/ecosystem/core/button/button_group.scss?a203","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/button/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/card/Card.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/card/CardButton.js","webpack:///./src/components/ecosystem/core/card/card.scss?adbc","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/card/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/checkbox/Checkbox.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/checkbox/CheckboxItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/checkbox/CheckboxOnly.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/checkbox/CheckboxSelect.js","webpack:///./src/components/ecosystem/core/checkbox/checkbox.scss?7c19","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/checkbox/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/circleButton/CircleButton.js","webpack:///./src/components/ecosystem/core/circleButton/circle_button.scss?60f5","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/circleButton/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/contentSwitcher/ContentSwitcher.js","webpack:///./src/components/ecosystem/core/contentSwitcher/content_switcher.scss?6b64","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/contentSwitcher/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/datePicker/datePicker.js","webpack:///./src/components/ecosystem/core/datePicker/date_picker.scss?5626","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/datePicker/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/divider/Divider.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/divider/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/drawer/Drawer.js","webpack:///./src/components/ecosystem/core/drawer/drawer.scss?36da","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/drawer/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/CheckboxMenu.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/DropDown.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/DropDownDefault.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/DropDownField.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/DropDownHintMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/DropDownMenu.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/DropDownMultiSelect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/DropDownWithValidation.js","webpack:///./src/components/ecosystem/core/dropDown/dropdown.scss?406a","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/dropDown/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/fileUpload/FileAttachment.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/fileUpload/FileUpload.js","webpack:///./src/components/ecosystem/core/fileUpload/file_attachment.scss?53e8","webpack:///./src/components/ecosystem/core/fileUpload/file_upload.scss?6407","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/fileUpload/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/hooks/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/hooks/useFormValidation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/EmailAddress.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/EmailAddressWithValidation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/Password.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/PasswordWithValidation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/PhoneNumber.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/PhoneNumberWithValidation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/TextArea.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/TextAreaWithValidation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/TextField.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/TextFieldWithValidation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/ZipCode.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/ZipCodeWithValidation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/input/index.js","webpack:///./src/components/ecosystem/core/input/password.scss?f1d8","webpack:///./src/components/ecosystem/core/input/text_area.scss?76a9","webpack:///./src/components/ecosystem/core/input/text_field.scss?95eb","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/link/LinkCTA.js","webpack:///./src/components/ecosystem/core/link/LinkCTA.scss?3497","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/link/LinkText.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/link/NightingaleLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/link/index.js","webpack:///./src/components/ecosystem/core/link/link.scss?4274","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/linkList/LinkList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/linkList/LinkListItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/linkList/index.js","webpack:///./src/components/ecosystem/core/linkList/link_list.scss?1f3a","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/list/List.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/list/ListItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/list/index.js","webpack:///./src/components/ecosystem/core/list/list.scss?9a0c","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/modal/Modal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/modal/ModalBody.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/modal/ModalFooter.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/modal/ModalFooterButtons.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/modal/ModalHeader.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/modal/index.js","webpack:///./src/components/ecosystem/core/modal/modal.scss?c397","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/CollapsedNav.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/Navigation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/NavigationHead.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/NavigationHeadCollapsed.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/NavigationHeadIcon.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/NavigationItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/NavigationItemLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/NavigationSubItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/navigation/index.js","webpack:///./src/components/ecosystem/core/navigation/navigation.scss?8f74","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/notifier/Notifier.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/notifier/NotifierAccordion.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/notifier/index.js","webpack:///./src/components/ecosystem/core/notifier/notifier.scss?e1f8","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/pill/PillButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/pill/index.js","webpack:///./src/components/ecosystem/core/pill/pill.scss?65cd","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/radio/Radio.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/radio/SelectGroup.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/radio/index.js","webpack:///./src/components/ecosystem/core/radio/radio.scss?fe8b","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/thumbnail/Thumbnail.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/thumbnail/index.js","webpack:///./src/components/ecosystem/core/thumbnail/thumbnail.scss?5ffe","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/toolTip/Tooltip.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/toolTip/TooltipSpotlight.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/core/toolTip/index.js","webpack:///./src/components/ecosystem/core/toolTip/tooltip.scss?797e","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/foundation/grid/Grid.js","webpack:///./src/components/ecosystem/foundation/grid/grid.scss?f395","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/foundation/grid/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/foundation/icon/Icon.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/foundation/icon/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/foundation/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/foundation/typography/Typography.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/foundation/typography/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/EmailForm/EmailForm.js","webpack:///./src/components/ecosystem/mybswh/EmailForm/email_form.scss?b126","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/EmailForm/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/button/QABButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/button/index.js","webpack:///./src/components/ecosystem/mybswh/button/qab_button.scss?a2cb","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/card/BannerCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/card/CardLinkList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/card/CircleButtonCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/card/LandingCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/card/LinkedCard.js","webpack:///./src/components/ecosystem/mybswh/card/banner_card.scss?5442","webpack:///./src/components/ecosystem/mybswh/card/card_link_list.scss?b4b6","webpack:///./src/components/ecosystem/mybswh/card/circle_button_card.scss?a934","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/card/index.js","webpack:///./src/components/ecosystem/mybswh/card/landing_card.scss?0844","webpack:///./src/components/ecosystem/mybswh/card/linked_card.scss?9b2d","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/circleButton/CircleButtonTooltip.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/circleButton/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/icon/IconButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/icon/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/link/AddressLink.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/link/PhoneLink.js","webpack:///./src/components/ecosystem/mybswh/link/address_link.scss?495a","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/link/index.js","webpack:///./src/components/ecosystem/mybswh/link/phone_link.scss?e5cb","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/linkList/ProxyList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/linkList/ProxyListItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/linkList/index.js","webpack:///./src/components/ecosystem/mybswh/linkList/proxy_list.scss?aa8b","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/spinner/MessageSpinner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/spinner/index.js","webpack:///./src/components/ecosystem/mybswh/spinner/message_spinner.scss?8e9e","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/swipeablecontainer/SwipeableContainer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/swipeablecontainer/index.js","webpack:///./src/components/ecosystem/mybswh/swipeablecontainer/swipeable_container.scss?584f","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typeahead/Typeahead.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typeahead/index.js","webpack:///./src/components/ecosystem/mybswh/typeahead/typeahead.scss?d295","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typography/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typography/pageheading/HeadingButtonCTA.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typography/pageheading/HeadingLangCTA.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typography/pageheading/HeadingPrintCTA.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typography/pageheading/MyChartHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typography/pageheading/PageHeading.js","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/heading_button_cta.scss?702d","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/heading_lang_cta.scss?9644","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/ecosystem/mybswh/typography/pageheading/index.js","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/mychart_heading.scss?c724","webpack:///./src/components/ecosystem/mybswh/typography/pageheading/page_heading.scss?2077","webpack:///./src/components/ecosystem/test_component.scss?4d86","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/ErrorMessage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/appointment.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/appointments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsCostInsurance.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsCostMessaging.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsCostSelfPay.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsCostTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsDescriptionTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsEstimateBreakdown.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsEstimateBreakdownSelfPay.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/detailsInsuranceBreakdown.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/estimateDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/estimatesMessage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/estimatesWrapper.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/hooks/useGaurdEstimate.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/hooks/useSelfPayDiscount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/myEstimates.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/estimates/paymentOptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/DrNameSpecialty.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavDocTips.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoriteButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoriteDrButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoriteDrCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoriteDrHeadings.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoriteDrNotReferable.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoriteDrRating.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoriteDrSchedule.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/FavoritedLabel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/MyCareTeamProviders.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/MyDirectScheduleProviders.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/MyFavoriteProviders.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/MyProviders.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/favproviders/RecentDrCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/ActiveUser.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/Header.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/HeaderDivider.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/HeaderLoggedOut.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/HeaderProxySelectorMobile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/Logo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/MobileActiveUser.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/MyChartProxyButton.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/SingleUserSelector.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/UsersList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/UsersListDropdown.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/header/test.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/AuthorizationDetail.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Authorizations.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/AutoLinkErrorForHP.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/AutoLinkModalForHP.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/BenefitPlan/AA-Benefits.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/BenefitPlan/HR-Benefits.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Benefits.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/ClaimAppeal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/ClaimDetail.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Claims.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/CostEstimator.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/CostEstimator/CostSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Dental.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Dental/CurrentPlan.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Documents.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/HealthPlanNotifications.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/HealthPlanTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/HealthPlanTileUsage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/HealthplanWorkInProgress.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/IdCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/InvoiceDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/InvoicesAndPayments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/MemberSelector.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/OtherCoverage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/OtherCoverageDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/PaymentFailure.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/PaymentOptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/PreferenceSettings.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/RequestNewIdCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Support.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/SupportNewRequest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/TaxForms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/UpdateOtherCoverage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Usage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/VirtualCare.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/healthplan/Wellness.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/home/Home.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/home/SearchResults.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/AppointmentOverview.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/AppointmentOverviewItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeConfirmDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeConfirmationModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeCovidSurvey.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeEligibility.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeEligibilityCombine.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeFaq.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeInEligibility.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeInsurance.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeNudge.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeSchedulingButtons.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeWhatsNext.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeWhen.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeWhere.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeWhich.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeWho.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/InHomeWhoConfirm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/OverviewConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/Questionnaires.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/QuestionnairesCombine.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/RecipientSelect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/SchedulingQuestions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/inHomeTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/layout/InHomeMainPanel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/layout/InHomeOverviewPanel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/layout/InHomePatientInputSection.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/layout/InHomePatientNameHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/layout/InHomeQuestionsHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/layout/InHomeSplitLayout.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/inHome/layout/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/layouts/OnboardingHeader.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/layouts/OnboardingHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/layouts/OnboardingLayout.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/layouts/OnboardingLayoutRoute.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/layouts/OnboardingMainContent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/layouts/OnboardingSidebar.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/AccountLockedNotifier.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/ForgotPassword.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/ForgotUsername.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/LoginCarousel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/LoginForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/LoginFormError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/LoginNotice.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/LoginPageNotifier.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/LogoutMessageNotifier.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/OutdatedBrowserNotifer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/ResetPassword.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/ResetPasswordConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/TermsAgreement.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/login/login.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/AccountSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/AfterVisitSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Audit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Coverage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/DownloadMyRecord.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/EcheckIn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Estimates.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Growth.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/GuestCancelVisit.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/MessasgesAll.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/MessasgesSend.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/MyChartContainer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/MyChartWrapper.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/MyConditions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/OnMyWay.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/OpenScheduling.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Paperless.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/PayAsGuest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Procedure.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Scheduling.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/SchedulingNoProviders.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/ShareEverywhere.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/TestResults.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/ThriveForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/ToDos.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Todo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/TrackMyHealth.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/Trends.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/UpcomingAppointments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/UpcomingOrders.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/VaccineCredentials.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/VideoVisitBHConsentForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/VideoVisitConsentForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/VisitDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/WalletCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/hooks/useQualtrics.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/mychart/hooks/useShowQTXSurvey.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/CaptureInsurance.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/FamilyMemberProxyUser.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/FamilyMembers.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/FamilyWithNoMember.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/OnboardingEmailOptIn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/OnboardingModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/ProxySelect.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/ProxySuggestions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/ProxySuggestionsSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/CareGapsConfirmationModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/a1c/A1CConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/a1c/A1CFlow.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/a1c/A1CScreening.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/a1c/Screen1/A1CUpdateHistory.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/a1c/Screen1/A1CUploadDocuments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/a1c/Screen3/A1CNo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/a1c/summary/A1CSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/annualwellnessvisit/AnnualWellnessVisitConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/annualwellnessvisit/AnnualWellnessVisitFlow.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/annualwellnessvisit/AnnualWellnessVisitScreening.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/annualwellnessvisit/Screen1/AnnualWellnessVisitUpdateHistory.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/annualwellnessvisit/Screen1/AnnualWellnessVisitUploadDocuments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/annualwellnessvisit/Screen3/AnnualWellnessVisitNo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/annualwellnessvisit/summary/AnnualWellnessVisitSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/bloodpressure/BloodPressureConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/bloodpressure/BloodPressureFlow.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/bloodpressure/BloodPressureScreening.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/bloodpressure/Screen1/BloodPressureUpdateHistory.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/bloodpressure/Screen1/BloodPressureUploadDocuments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/bloodpressure/Screen3/BloodPressureNo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/bloodpressure/summary/BloodPressureSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/ColorectalCancerConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/ColorectalCancerFlow.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/ColorectalCancerScreening.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/Screen1/ColorectalCancerUpdateHistory.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/Screen1/ColorectalCancerUploadDocuments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/Screen2/ColorectalCancerSetOne.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/Screen3/ColorectalCancerNo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/colorectalcancer/summary/ColorectalCancerSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/CareGapsButtons.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/CareGapsError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/CareGapsHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/CareGapsQuestionHeading.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/summary/CareGapDontNeed.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/summary/CareGapYes.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/summary/SummaryItem.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/summary/SummaryItemFile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/components/summary/SummaryItemGroup.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/mammogram/MammographyConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/mammogram/MammographyFlow.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/mammogram/MammographyScreening.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/mammogram/Screen1/MammographyUpdateHistory.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/mammogram/Screen1/MammographyUploadDocuments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/mammogram/Screen3/MammographyNo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/onboarding/caregaps/mammogram/summary/MammographySummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/ActionTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/MedicationsBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/OperationHours.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/Pharmacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PharmacyAllTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PharmacyHeader.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PharmacyInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PharmacyTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PharmacyTileContact.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PickupDetails.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PickupLocation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/PrescriptionList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/ReadyForPickup.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/ReadyForRefill.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/RxError.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/UnLinkedTransfer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/findPharmacy/findPharmacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/orderRefill/ChoosePickupTime.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/orderRefill/ClosedPharmacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/orderRefill/OrderRefill.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/orderRefill/OrderRefillConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/orderRefill/OrderRefillFailure.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/orderRefill/OrderRefillReview.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/orderRefill/OrderRefillSuccess.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxDetail/Prescriber.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxDetail/PrescriptionDetail.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxDetail/PrescriptionInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxDetail/PrescriptionLastActivity.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxDetail/PrescriptionStatus.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/BSWTransfer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/NonBSWPharamacyInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/NonBSWTransfer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/PharamacyInfoModel.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/TransferConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/TransferFailure.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/TransferOptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/TransferPharmacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/TransferReview.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/rxTransfer/TransferSuccess.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/viewPrescriptions/ActivePrescriptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/viewPrescriptions/ArchivedPrescriptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/pharmacy/viewPrescriptions/ViewPrescriptions.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/prayerfeature/CommentCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/prayerfeature/CommentForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/prayerfeature/InputForm.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/prayerfeature/PrayerCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/prayerfeature/PrayerFeatureTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/prayerfeature/PrayerWallNotAuthorized.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/prayerfeature/prayerWall.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/AdminInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/AdvanceDirectives.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/Allergies.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/CurrentHealthIssues.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/CurrentMeds.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/Demographics.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/EmailInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/Estimations.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/FluConsent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/FluConsentConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/HealthSummary.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/HealthSummaryLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/HealthSummaryPrint.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/Immunizations.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/Insurance.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/Letters.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/MarketingEmailOptIn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/MedicalHistory.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/MedicalLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/MedicalTools.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/MobileNumberInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/PlanofCare.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/ProfileDashboard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/ProfileDashboardStep.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/ProfileLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/Questionnaires.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/RecordsMedicalFormsLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/TestProcedureLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/profile/UpcomingTests.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/providers/Details.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/providers/LocationDetailsMap.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/AcceptProxy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ActiveList.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ActiveListProxy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ConfirmationModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/DeclineProxy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/Error.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/FamilyManagement.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/FamilyManagementCard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/InvalidProxyAccess.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/MyChartNotFound.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/MyProxies.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/MySubjects.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/PharmacyNotFound.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ProxyConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ProxyConfirmationStatus.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ProxyDeclineConfirmation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ProxyHelper.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ProxyMgmtProcessing.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/ProxySetup.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/Terms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/WaitingOnOthers.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/WaitingOnYou.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/grantAccess/AccessType.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/grantAccess/AccessorInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/grantAccess/GrantAccessProxyRequest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/grantAccess/GrantDisclaimerModal.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/AcceptGrantMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/ErrorMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/LinkRecord.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/MedicalManagers.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/MedicalSubjects.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/NoManagersMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/NotManagingMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/ProxyStatus.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/ProxyXBtn.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/RXManagers.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/RXSubjects.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/RemoveMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/home/SuccessMsg.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/requestAccess/AcceptTerms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/requestAccess/AccessType.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/requestAccess/MajorUploadDocuments.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/requestAccess/ProxyAccess.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/requestAccess/ProxyInfo.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/requestAccess/ProxyRequest.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/requestAccess/RequestAccessDOB.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/ProxyTermsV2.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/grant/GrantAdultProxyTerms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/grant/GrantMedicalRecordsAdultProxyTerms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/grant/GrantPharmacyAdultProxyTerms.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/request/AdultProxyAttestation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/request/MinorProxyMedicalPharmacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/request/PharmacyAttestation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/proxyManagement/termsModalContent/request/ProxyDialogContent.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/schedulingComponents/schedulingComponents.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/scrubbingIn/ScrubbingInLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/CommunityManage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/DartOrWacoAccount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/FirstCareAccount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/GeneralNotifications.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/HealthPlanNotifications.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/HelpTutorials.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/HpFhirConsents.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/InsurancePlan.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LinkAAAccount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LinkEmployeeAccount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LinkHealthPlanAccount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LinkMyChartAccount.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LinkPharmacy.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LinkedAccounts.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LinkedDevices.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LoginSettings.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LoginSettingsPassword.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/LoginSettingsUserName.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/ManageAccessLanding.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/Notifications.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/Preferences.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/ProxyManagement.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/ProxyMgmtForPharamcyProxies.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/Settings.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/SuccessBanner.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/WhatsNew.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/settings/WhatsNewHeadings.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/Accordion.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/ActionPlanTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/AssessmentSuccessTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/CoachingTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/EarnPointsTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/MyChartActivation.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/PledgeTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/PreventiveCareExamTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/StartThrive.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/Thrive.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/VisitThrive.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellBeingDashboard.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellBeingJourney.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellBeingReport.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellBeingScoreTile.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellnessAssessment.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellnessAssessmentSuccess.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellnessGoals.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellnessInfowindow.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/components/thrive/WellnessReport.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/constants/MembershipFeatures.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/constants/PatientIDTypes.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/constants/actionTypes.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/constants/prayerFeatureActionTypes.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/constants/prayerFeatureConstants.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/constants/textConstants.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/helpers/Tools.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/helpers/configureFetch.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/helpers/data.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/helpers/dateTime.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/helpers/formatting.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/helpers/globalHandler.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/helpers/location.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/i18n.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/ArticleImg.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/DSN-mWeb.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/Get-Care-mWeb.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/Next-Appts-mWeb.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/Proxy-mWeb.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/Refresh-menu-mWeb.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/appointment-onboarding-carousel-web.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/discover-something-onboarding-carousel-web.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/get-care-onboarding-carousel-web.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/health-summary-menu-onboarding-carousel-web.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/images/proxy-selector-onboarding-carousel-web.png","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/careGapReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/commonReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/dashboardReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/directSchedulingReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/docsReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/domainReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/epicReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/errorReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/headerReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/healthPlanReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/healthPlanServicesReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/healthSourceReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/inHomeReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/inMemoryReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/localCacheReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/localStorageReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/mapEventsReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/marketingEmailOptInReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/membershipsReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/myChartDataTileReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/openSchedulingReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/pharmacyReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/portalReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/prayerFeatureReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/pricingReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/profileToolsReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/searchLocationsReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/searchProvidersReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/sessionReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/ssoReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/thriveReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/reducers/videovisitSchedulingReducer.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/PortalSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/ProfileToolsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/careGapsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/commonSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/dashboardSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/directSchedulingSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/docsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/epicSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/errorSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/headerSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/authorizationsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/benefitsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/claimsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/costEstimateSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/documentsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/invoiceSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/memberSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/notificationPreferencesSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/otherCoverageSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/processControlSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/ssoSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/supportSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServices/taxFormsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthPlanServicesSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/healthSourceSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/inHomeSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/index.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/locationSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/marketingEmailOptInSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/membershipsSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/myChartDataTileSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/mychartProxySaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/openSchedulingSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/pharmacyProxySaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/pharmacySaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/prayerFeatureSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/pricingSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/providerSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/proxySaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/ssoSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/thriveSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/todosSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/saga/videoVisitSchedulingSaga.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/scripts/iframeResizer.js","webpack:///./src/scss/include/index.scss?72d4","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/store/OurCookieStorage.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/store/configureStore.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/store/cookieStore.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/src/store/trueInitialState.js","D:/a/1/s/sites/MyBSWHealth3/ClientApp/ignored D:/a/1/s/sites/MyBSWHealth3/ClientApp/node_modules/sanitize-html-react/node_modules/htmlparser2/lib readable-stream","D:/a/1/s/sites/MyBSWHealth3/ClientApp/ignored D:/a/1/s/sites/MyBSWHealth3/ClientApp/node_modules/crypto-js crypto"],"sourcesContent":["/**\r\n * Entry point for mybswhealth.\r\n */\r\n\r\n// ---------------------------------------------------------\r\n// polyfills for IE: order matters; keep them in this order.\r\n//import \"@babel/polyfill\";\r\nwindow.sanitizeHtml = require(\"sanitize-html-react\");\r\nimport \"core-js/stable\";\r\nimport \"regenerator-runtime/runtime\";\r\nimport \"whatwg-fetch\";\r\nimport \"fs\";\r\n// ---------------------------------------------------------\r\n\r\nimport React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport './src/i18n';\r\nimport App from \"./src/components/App\";\r\n\r\n\r\nfunction MyBSW(){\r\n return ;\r\n}\r\n\r\nReactDOM.hydrate(\r\n\r\n \r\n , document.getElementById(\"ReactContainer\"));\r\n\r\n// only enable hmr if running on a local dev's machine...\r\nif (window.serverData.data.isLocalDev === true) {\r\n if (module && module.hot) {\r\n module.hot.accept();\r\n }\r\n}\r\n\r\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","import React, { Component } from \"react\";\r\nimport moment from 'moment';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\nimport jsPDF from 'jspdf';\r\nimport 'jspdf-autotable';\r\nimport DataGridModel from './DataGridModel';\r\nimport DayPickerInput from 'react-day-picker/DayPickerInput';\r\nimport MomentLocaleUtils, { formatDate, parseDate } from 'react-day-picker/moment';\r\n\r\n// import 'react-day-picker/lib/style.css';\r\n/**\r\n * This is a base grid component for display data in a grid.\r\n * \r\n * Just pass in data and follow model (to come) to change aspects of it\r\n * \r\n */\r\nclass GridSource extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.bHasWindow = typeof window !== \"undefined\";\r\n // this._isMounted = false;\r\n this.state = {\r\n showLoader: props.showLoader ? props.showLoader : false,\r\n dataLoaded: false,\r\n unfilteredDataSource: props.dataSource,\r\n dataView: [],\r\n dataRows: null,\r\n sortColumn: \"\",\r\n sortDirection: \"asc\",\r\n headerColumns: [],\r\n selectedRows: [],\r\n filterData: {},\r\n searchText: \"\",\r\n dateRange: { from: \"\", to: \"\" },\r\n currentFilterListElement: null,\r\n currentFilterApplied: { filter: null, selection: null },\r\n allRowsSelected: false,\r\n dateInputs: { from: React.createRef(), to: React.createRef() },\r\n gridOptions: new DataGridModel()\r\n };\r\n if (!this.state.unfilteredDataSource) {\r\n this.state.unfilteredDataSource = [];\r\n }\r\n if (props.gridOptions) {\r\n let newGridOptions = this.state.gridOptions;\r\n Object.keys(props.gridOptions).map((option) => {\r\n newGridOptions[option] = props.gridOptions[option];\r\n });\r\n this.state.gridOptions = newGridOptions;\r\n if (this.state.gridOptions.initialDate) this.state.dateRange = this.state.gridOptions.initialDate;\r\n }\r\n this.generateHeaderRow = this.generateHeaderRow.bind(this);\r\n this.generateDataRows = this.generateDataRows.bind(this);\r\n this.initializeData = this.initializeData.bind(this);\r\n this.exportXLS = this.exportXLS.bind(this);\r\n this.exportPDF = this.exportPDF.bind(this);\r\n this.SelectRow = this.SelectRow.bind(this);\r\n this.SortBy = this.SortBy.bind(this);\r\n this.sort_by = this.sort_by.bind(this);\r\n this.ToggleFilterMenu = this.ToggleFilterMenu.bind(this);\r\n this.rowClickFunction = this.rowClickFunction.bind(this);\r\n this.filterCallback = this.filterCallback.bind(this);\r\n this.applyFilter = this.applyFilter.bind(this);\r\n this.searchData = this.searchData.bind(this);\r\n this.filterData = this.filterData.bind(this);\r\n this.filterByDate = this.filterByDate.bind(this);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (this.props.showLoader !== prevProps.showLoader) {\r\n this.setState({ showLoader: this.props.showLoader });\r\n }\r\n\r\n if (this.props.dataSource !== prevProps.dataSource) {\r\n this.initializeData(this.props.dataSource, true);\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n if (!this.props.showLoader) this.initializeData(this.props.dataSource, true);\r\n }\r\n\r\n initializeData(dataSource, setUnfilteredDataSource) {\r\n let useThisData = dataSource ? dataSource : this.props.dataSource;\r\n if (!useThisData || useThisData.length === 0) useThisData = [];\r\n let filters = {}; //only used for generating filter options, not for filtering rows\r\n let processedData = useThisData.map((item, i) => {\r\n !item.gridId ? item.gridId = i : \"\";\r\n //instantiate filters\r\n this.state.gridOptions.filters.map(filter => {\r\n if (!filters[filter.dataKeyToUse]) filters[filter.dataKeyToUse] = []; //if array not intialized for filter, initialize filter []\r\n if (item[filter.dataKeyToUse] && !filters[filter.dataKeyToUse].find((option) => { return option === item[filter.dataKeyToUse] })) { //if item is not in filter array... if item is not null\r\n filters[filter.dataKeyToUse].push(item[filter.dataKeyToUse]) //push value to array else ignore\r\n }\r\n })\r\n return item;\r\n });\r\n // if (setUnfilteredDataSource) {\r\n // this.setState({unfilteredDataSource: processedData});\r\n // }\r\n //You want to set the sort direction to the opposite of what you want because when the sort function is ran it will flip the direction\r\n this.setState({\r\n dataView: processedData,\r\n sortColumn: this.state.gridOptions.columns[0].value,\r\n sortDirection: this.state.gridOptions.columns[0].type === \"string\" ? \"desc\" : \"asc\",\r\n filterData: filters,\r\n unfilteredDataSource: setUnfilteredDataSource ? processedData : this.state.unfilteredDataSource,\r\n }, () => {\r\n // this.generateDataRows();\r\n if (this.state.dataView.length > 0) this.SortBy(this.state.gridOptions.columns[0].value, this.state.gridOptions.columns[0].type);\r\n // this.forceUpdate();\r\n });\r\n }\r\n\r\n rowClickFunction(rowData) {\r\n if (typeof (this.props.gridOptions.rowClick) === \"function\") this.props.gridOptions.rowClick(rowData);\r\n }\r\n\r\n filterCallback(type) {\r\n let data = {\r\n searchText: this.state.searchText,\r\n dateRange: this.state.dateRange,\r\n currentFilterApplied: this.state.currentFilterApplied\r\n }\r\n if (typeof (this.props.gridOptions.filterCallback) === \"function\") this.props.gridOptions.filterCallback(type, data);\r\n }\r\n\r\n async exportXLS() {\r\n if (this.state.showLoader) return;\r\n try {\r\n const fileType = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n const fileExtension = '.xlsx';\r\n let useThisData = this.state.selectedRows.length > 0 ? this.state.selectedRows : this.state.dataView;\r\n\r\n //Data has to be initialized like this, do not use 'delete' on object property or it will break state\r\n let gridData = useThisData.map((row) => {\r\n let newRow = {};\r\n Object.keys(row).map((key) => {\r\n let column = this.state.headerColumns.find((header) => {\r\n return header.value === key;\r\n })\r\n if (!column || (column && column.excludeFromExport)) return;\r\n newRow[key] = this.DisplayData(row[key], column.type);\r\n });\r\n return newRow;\r\n });\r\n\r\n let columns = [];\r\n this.state.gridOptions.columns.forEach((column) => {\r\n if (!column.excludeFromExport) {\r\n columns.push({ title: column.title, dataKey: column.value });\r\n }\r\n });\r\n var ws = XLSX.utils.json_to_sheet(gridData, { header: columns.map((col) => { return col.dataKey }) });\r\n // var range = XLSX.utils.decode_range(ws['!ref']);\r\n for (var C = 0; C <= columns.length; ++C) {\r\n var address = XLSX.utils.encode_col(C) + \"1\"; // <-- first row, column number C\r\n if (!ws[address]) continue;\r\n ws[address].v = columns[C].title;\r\n }\r\n const wb = { Sheets: { 'data': ws }, SheetNames: ['data'] };\r\n const excelBuffer = XLSX.write(wb, { bookType: 'xlsx', type: 'array' });\r\n const data = new Blob([excelBuffer], { type: fileType });\r\n FileSaver.saveAs(data, this.state.gridOptions.exportName + fileExtension);\r\n\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n async exportPDF() {\r\n if (this.state.showLoader) return;\r\n try {\r\n const doc = new jsPDF();\r\n let gridData = this.state.selectedRows.length > 0 ? this.state.selectedRows : this.state.dataView;\r\n gridData = gridData.map((row) => {\r\n let newRow = {};\r\n Object.keys(row).map((key) => {\r\n let column = this.state.headerColumns.find((header) => {\r\n return header.value === key;\r\n })\r\n if (!column || (column && column.excludeFromExport)) return;\r\n newRow[key] = this.DisplayData(row[key], column.type);\r\n });\r\n\r\n return newRow;\r\n });\r\n let columns = [];\r\n this.state.gridOptions.columns.forEach((column) => {\r\n if (!column.excludeFromExport) {\r\n columns.push({ header: column.title, dataKey: column.value });\r\n }\r\n });\r\n doc.autoTable({\r\n body: gridData,\r\n columns: columns\r\n })\r\n doc.save(`${this.state.gridOptions.exportName}.pdf`);\r\n\r\n } catch (ex) {\r\n console.log(ex);\r\n }\r\n }\r\n\r\n generateHeaderRow() {\r\n if (this.state.dataView && this.state.dataView.length > 0) {\r\n if (this.state.gridOptions && this.state.gridOptions.columns) {\r\n // this.setState({headerColumns: this.state.gridOptions.columns});\r\n this.state.headerColumns = this.state.gridOptions.columns;\r\n } else {\r\n let headerView = [];\r\n Object.keys(this.state.dataView[0]).map((column) => {\r\n if (column === \"gridId\") return;\r\n let newColumn = {\r\n title: column,\r\n value: column,\r\n allowSorting: true\r\n }\r\n headerView.push(newColumn);\r\n });\r\n // this.setState({headerColumns: headerView});\r\n this.state.headerColumns = headerView;\r\n }\r\n return (\r\n
\r\n {this.state.gridOptions && this.state.gridOptions.selectable ?\r\n \r\n : \"\"}\r\n {this.state.headerColumns.map((col, key) => {\r\n if (col.title === \"gridId\") return;\r\n return (\r\n
{ if (col.allowSorting) this.SortBy(col.value, col.type) }}>\r\n {col.title}\r\n {col.allowSorting ?\r\n \r\n :\r\n \"\"\r\n }\r\n
\r\n );\r\n })}\r\n
\r\n );\r\n }\r\n }\r\n\r\n generateDataRows() {\r\n if (this.state.dataView && this.state.dataView.length > 0) {\r\n let dataRows = (this.state.dataView.map((rowData) => {\r\n return (\r\n
{ return r.gridId === rowData.gridId }) ? \"dataGrid-row-selected\" : \"\"} ${typeof (this.props.gridOptions.rowClick) === \"function\" ? \"dataGrid-clickable\" : \"\"}`} onClick={() => { this.rowClickFunction(rowData) }}>\r\n {this.state.gridOptions && this.state.gridOptions.selectable ?\r\n \r\n : \"\"}\r\n {this.state.headerColumns.map((colData, colKey) => {\r\n return (\r\n
\r\n {colData.title}:\r\n {\r\n colData.type === \"progress\" ? \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{rowData[colData.subtextValue]}%
\r\n
\r\n :\r\n 0 ? rowData[colData.customCSSMapToValue] : \"\"}`}\r\n onClick={(e) => { if (colData.clickCallback) { e.stopPropagation(); colData.clickCallback(rowData) } }}\r\n >\r\n {this.DisplayData(colData.staticContent || rowData[colData.value], colData.type, colData.showEmptyIfNull, colData.dateFormat, rowData[colData.isCurrency])}\r\n {colData.subtextValue && rowData[colData.subtextValue] ?
{this.DisplayData(rowData[colData.subtextValue], colData.subtextType)}
: \"\"}\r\n
\r\n }\r\n
\r\n )\r\n })}\r\n
\r\n
\r\n \r\n );\r\n }));\r\n this.setState({ dataRows: dataRows });\r\n return dataRows;\r\n }\r\n }\r\n\r\n DisplayData(data, type, showEmpty, dateFormat, isCurrency) {\r\n var dataType = typeof (data);\r\n if (type) {\r\n dataType = type;\r\n }\r\n if (dataType === \"string\") {\r\n //if same column has currency and unit values\r\n if (isCurrency) {\r\n var formatter = new Intl.NumberFormat('en-US', {\r\n style: 'currency',\r\n currency: 'USD',\r\n });\r\n return formatter.format(data);\r\n }\r\n return data;\r\n } else if (dataType === \"currency\") {//if entire column contain currency\r\n if (data === null && showEmpty) return \"\";\r\n var formatter = new Intl.NumberFormat('en-US', {\r\n style: 'currency',\r\n currency: 'USD',\r\n });\r\n return formatter.format(data);\r\n } else if (data instanceof Date || dataType === \"date\") {\r\n if (data) {\r\n return moment(data).format(dateFormat || \"MM/DD/YYYY\");\r\n }\r\n else\r\n return;\r\n }\r\n return data;\r\n }\r\n\r\n SortBy(columnName, columnType, applySortOnly) {\r\n var sortDirection = this.state.sortDirection;\r\n var sortColumn = this.state.sortColumn;\r\n if (!applySortOnly) {\r\n if (columnName == sortColumn) {\r\n if (sortDirection == \"desc\") {\r\n sortDirection = \"asc\";\r\n }\r\n // else if (sortDirection == \"asc\") {\r\n // sortColumn = \"\";\r\n // sortDirection = \"\";\r\n // }\r\n else {\r\n sortDirection = \"desc\";\r\n }\r\n }\r\n else {\r\n sortDirection = \"desc\";\r\n sortColumn = columnName;\r\n }\r\n }\r\n var primer = \"\";\r\n if (columnType == \"number\") {\r\n primer = parseInt;\r\n }\r\n else if (columnType == \"date\") {\r\n primer = this.parseDate;\r\n }\r\n else if (columnType == \"string\") {\r\n primer = (a) => a.toLowerCase();\r\n }\r\n else {\r\n primer = function (x, y) {\r\n return (x === y) ? 0 : x ? -1 : 1;\r\n };\r\n }\r\n\r\n var sortData = this.state.dataView;\r\n if (sortDirection !== \"\") {\r\n sortData = [].concat(this.state.dataView)\r\n .sort(this.sort_by(columnName, (sortDirection === \"asc\") ? true : false, !columnType ? function (a) { return a } : primer));\r\n }\r\n\r\n this.setState({\r\n dataView: sortData, sortDirection: sortDirection, sortColumn: sortColumn\r\n }, () => {\r\n this.generateDataRows();\r\n });\r\n\r\n }\r\n\r\n sort_by(field, reverse, primer) {\r\n var key = function (x) { return primer ? primer(x[field]) : x[field] };\r\n return function (a, b) {\r\n var A = key(a), B = key(b);\r\n return ((A < B) ? -1 : ((A > B) ? 1 : 0)) * [-1, 1][+!!reverse];\r\n };\r\n }\r\n\r\n SelectRow(rowData, selectAll) {\r\n if (selectAll) {\r\n if (this.state.allRowsSelected) {\r\n this.setState({ allRowsSelected: false, selectedRows: [] }, () => this.generateDataRows());\r\n } else {\r\n this.setState({ allRowsSelected: true, selectedRows: this.state.dataView }, () => this.generateDataRows());\r\n }\r\n\r\n return;\r\n }\r\n\r\n //Check if row selected\r\n let selectedRows = this.state.selectedRows.filter((row) => {\r\n if (row.gridId === rowData.gridId) {\r\n return false;\r\n }\r\n return true;\r\n })\r\n if (selectedRows.length === this.state.selectedRows.length) {\r\n selectedRows.push(rowData);\r\n }\r\n this.setState({ selectedRows: selectedRows, allRowsSelected: false }, () => this.generateDataRows());\r\n }\r\n\r\n ToggleFilterMenu(e) {\r\n if (!e && this.state.currentFilterListElement) {\r\n this.state.currentFilterListElement.classList.toggle(\"dataGrid-show-filters\");\r\n this.setState({ currentFilterListElement: null });\r\n document.removeEventListener(\"mousedown\", this.ToggleFilterMenu);\r\n return;\r\n }\r\n\r\n if (this.state.currentFilterListElement) { //checks if list is open\r\n if (this.state.currentFilterListElement.contains(e.target)) return; //if click contains element, return because it was clicked within \r\n this.state.currentFilterListElement.classList.toggle(\"dataGrid-show-filters\"); //else hide list \r\n this.setState({ currentFilterListElement: null }); //set to null\r\n // if (this.state.currentFilterApplied.filter) this.filterData();\r\n document.removeEventListener(\"mousedown\", this.ToggleFilterMenu);\r\n return;\r\n }\r\n\r\n let listElement = e.target.nextElementSibling;\r\n listElement.classList.toggle(\"dataGrid-show-filters\");\r\n\r\n if (this.state.currentFilterListElement === listElement) {\r\n this.setState({ currentFilterListElement: null });\r\n return;\r\n } else if (this.state.currentFilterListElement) {\r\n this.state.currentFilterListElement.classList.toggle(\"dataGrid-show-filters\");\r\n }\r\n document.addEventListener(\"mousedown\", this.ToggleFilterMenu);\r\n\r\n this.setState({ currentFilterListElement: listElement });\r\n }\r\n\r\n applyFilter(data, clear) {\r\n if (clear) {\r\n // this.setState({currentFilterApplied: {filter: null, selection: null}, dataView: this.state.unfilteredDataSource}, () => this.generateDataRows()); \r\n this.setState({ currentFilterApplied: { filter: null, selection: null } });\r\n return data;\r\n }\r\n if (!this.state.currentFilterApplied.filter) return;\r\n let filteredData = data.filter((item) => {\r\n return item[this.state.currentFilterApplied.filter.dataKeyToUse] === this.state.currentFilterApplied.selection;\r\n });\r\n // this.setState({dataView: filteredData}, () => {this.generateDataRows(); this.ToggleFilterMenu()});\r\n if (this.state.currentFilterListElement) this.ToggleFilterMenu();\r\n return filteredData;\r\n }\r\n\r\n searchData(data) {\r\n if (this.state.searchText === \"\") {\r\n // this.setState({dataView: this.state.unfilteredDataSource}, () => {this.generateDataRows();});\r\n return data;\r\n }\r\n let searchText = this.state.searchText.toLowerCase();\r\n let searchFields = this.state.gridOptions.searchFields.length > 0 ? this.state.gridOptions.searchFields : Object.keys(this.state.dataView);\r\n\r\n let searchResult = searchFields.map((field) => {\r\n return data.filter((row) => {\r\n if (!row[field])\r\n return;\r\n\r\n return row[field].toString().toLowerCase().includes(searchText);\r\n });\r\n });\r\n\r\n let jointArray = [];\r\n\r\n searchResult.forEach(array => {\r\n jointArray = [...jointArray, ...array]\r\n });\r\n const result = jointArray.filter((item, index) => jointArray.indexOf(item) === index);\r\n\r\n return result;\r\n // this.setState({dataView: result}, () => {this.generateDataRows();});\r\n }\r\n\r\n filterByDate(data) {\r\n let dateFilteredData = data.filter((item) => {\r\n return moment(item[this.state.gridOptions.dateField]).isBetween(moment(this.state.dateRange.from), moment(this.state.dateRange.to));\r\n });\r\n return dateFilteredData;\r\n }\r\n\r\n filterData(options) { //MAIN THING TO CALL WHICH FILTERS EVERYTHING\r\n // let preResult = this.state.unfilteredDataSource;\r\n let result = this.state.unfilteredDataSource;\r\n\r\n if (this.state.currentFilterApplied.filter) {\r\n result = this.applyFilter(result, options ? options.clearDropdownFilter : false);\r\n }\r\n\r\n if (this.state.searchText.length > 0) {\r\n result = this.searchData(result);\r\n }\r\n\r\n if (this.state.dateRange.from && this.state.dateRange.to && moment(this.state.dateRange.from).isValid() && moment(this.state.dateRange.to).isValid() && this.state.searchText.length === 0) {\r\n result = this.filterByDate(result);\r\n }\r\n this.setState({ dataView: result, selectedRows: [], allRowsSelected: false }, () => {\r\n if (this.state.dataView.length > 0) {\r\n let sortType = this.state.headerColumns.find((headerColumn) => { return headerColumn.value === this.state.sortColumn });\r\n this.SortBy(this.state.sortColumn, sortType.type || null, true)\r\n } else {\r\n this.generateDataRows();\r\n }\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n
\r\n {this.state.gridOptions.title}\r\n
\r\n
\r\n {this.state.gridOptions.subTitle}\r\n
\r\n
\r\n {(this.state.gridOptions.enableSearch || this.state.gridOptions.enableDateRange)\r\n ?\r\n
\r\n {this.state.gridOptions.enableSearch\r\n ?\r\n
\r\n this.setState({ searchText: e.target.value })} onKeyUp={() => { this.filterCallback(\"search\"); if (this.state.gridOptions.stopSearchFilterPropogation) return; this.filterData() }} className=\"dataGrid-search-box\">\r\n
\r\n
\r\n :\r\n \"\"\r\n }\r\n {this.state.gridOptions.enableDateRange\r\n ?\r\n
\r\n
\r\n
From
\r\n { if (e.key === \"Enter\") this.state.dateInputs.from.current.hideDayPicker(); }, className: `dataGrid-date-range-input ${!this.state.showLoader || 'dataGrid-hide-cursor-pointer'}`, readOnly: this.state.showLoader, disabled: this.state.showLoader }}\r\n placeholder=\"MM/DD/YYYY\"\r\n onDayChange={(value) => this.setState({ dateRange: { from: value, to: this.state.dateRange.to } })}\r\n onDayPickerHide={() => { this.state.dateInputs.from.current.hideDayPicker(); this.state.dateInputs.to.current.hideDayPicker(); this.filterCallback(\"date\"); if (this.state.gridOptions.stopDateFilterPropogation) return; this.filterData() }}>\r\n \r\n
\r\n
\r\n
\r\n
To
\r\n { if (e.key === \"Enter\") this.state.dateInputs.to.current.hideDayPicker(); }, className: `dataGrid-date-range-input ${!this.state.showLoader || 'dataGrid-hide-cursor-pointer'}`, readOnly: this.state.showLoader, disabled: this.state.showLoader }}\r\n placeholder=\"MM/DD/YYYY\"\r\n onDayChange={(value) => this.setState({ dateRange: { from: this.state.dateRange.from, to: value } })}\r\n onDayPickerHide={() => { this.state.dateInputs.from.current.hideDayPicker(); this.state.dateInputs.to.current.hideDayPicker(); this.filterCallback(\"date\"); if (this.state.gridOptions.stopDateFilterPropogation) return; this.filterData() }}>\r\n \r\n
\r\n
\r\n
\r\n :\r\n \"\"\r\n }\r\n
\r\n :\r\n \"\"\r\n }\r\n {(this.state.gridOptions.enableFilters || this.state.gridOptions.enableExport) ?\r\n
\r\n {this.state.gridOptions.enableFilters && this.state.filters !== {} && Object.keys(this.state.filterData).filter((item) => { return this.state.filterData[item].length > 0 }).length > 0 && !this.state.showLoader ?\r\n
\r\n
\r\n Filter by:\r\n
\r\n
\r\n {this.state.gridOptions.filters.map((filter, key) => {\r\n if (this.state.filterData[filter.dataKeyToUse] && this.state.filterData[filter.dataKeyToUse].length <= 0) return;\r\n return (\r\n
\r\n this.ToggleFilterMenu(e)}>\r\n
\r\n
\r\n {this.state.filterData[filter.dataKeyToUse] ? this.state.filterData[filter.dataKeyToUse].map((listItem, itemKey) => {\r\n return (\r\n
\r\n \r\n
\r\n )\r\n }) : \"\"}\r\n
\r\n
\r\n
\r\n { this.filterCallback(\"filter-clear\"); if (this.state.gridOptions.stopFilterButtonPropogation) return; this.filterData({ clearDropdownFilter: true }) }}>Clear\r\n { this.filterCallback(\"filter\"); if (this.state.gridOptions.stopFilterButtonPropogation) return; this.filterData() }}>Apply\r\n
\r\n
\r\n
\r\n
\r\n )\r\n })}\r\n
\r\n
\r\n :\r\n \"\"}\r\n {this.state.gridOptions.enableExport ?\r\n
{ return this.state.filterData[item].length > 0 }).length <= 0 ? \"dataGrid-push-right\" : \"\"} dataGrid-exports`}>\r\n
\r\n Export as:\r\n
\r\n
\r\n {this.props.gridOptions.exportFormats.find((e) => { return e === \"xls\" }) ?
this.exportXLS()}>
: \"\"}\r\n {this.props.gridOptions.exportFormats.find((e) => { return e === \"pdf\" }) ?
this.exportPDF()}>
: \"\"}\r\n
\r\n
\r\n :\r\n \"\"}\r\n
\r\n :\r\n \"\"}\r\n
\r\n
\r\n {this.state.showLoader\r\n ?\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n :\r\n this.state.dataView && this.state.dataView.length > 0\r\n ?\r\n
\r\n {this.generateHeaderRow()}\r\n {this.state.dataRows}\r\n
\r\n :\r\n
\r\n {this.state.gridOptions.noDataMessage}\r\n
\r\n }\r\n
\r\n );\r\n }\r\n\r\n //copied from DataComponent.js\r\n //componentDidMount() {\r\n // if (super.componentDidMount) { super.componentDidMount(); }\r\n\r\n // this._isMounted = true;\r\n // this.privateLoadData();\r\n //}\r\n\r\n //componentDidUpdate(prevProps, prevState, snapshot) {\r\n // if (super.componentDidUpdate) { super.componentDidUpdate(prevProps, prevState, snapshot); }\r\n\r\n // this.privateLoadData();\r\n //}\r\n\r\n componentWillUnmount() {\r\n document.removeEventListener(\"mousedown\", this.ToggleFilterMenu);\r\n }\r\n\r\n //privateLoadData() {\r\n // const { dataLoaded } = this.state;\r\n // if (!dataLoaded && this.shouldLoadData && this.shouldLoadData()) {\r\n // this.setState({ dataLoaded: true });\r\n // if (this.loadData) {\r\n // this.loadData();\r\n // }\r\n // }\r\n //}\r\n\r\n\r\n}\r\n\r\n\r\nexport default GridSource;","export default class DataGridModel {\r\n constructor(props) {\r\n this.title = \"\",\r\n this.sortingEnabled = true;\r\n this.pagination = false;\r\n this.selectable = false;\r\n this.enableFilters = false;\r\n this.filters = [];\r\n this.enableExport = false;\r\n this.enableSearch = false;\r\n this.enableDateRange = false;\r\n this.exportFormats = [];\r\n this.exportName = \"grid\"\r\n this.rowsPerPage = 10;\r\n this.rowClick = null;\r\n this.columns = null;\r\n this.searchFields = [];\r\n this.searchPlaceholder = \"Search\";\r\n this.noDataMessage = \"No data\";\r\n }\r\n}\r\n","import React from \"react\";\r\nimport GridSource from \"./DataGrid\";\r\nimport \"./scss/DataGrid.scss\";\r\nconst DataGrid = props => {\r\n const {dataSource, gridOptions, showLoader} = props;\r\n return (\r\n \r\n )\r\n};\r\n\r\nexport default DataGrid;","var api = require(\"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--5-oneOf-6-1!../../../../../node_modules/css-loader/dist/cjs.js??ref--5-oneOf-6-2!../../../../../node_modules/postcss-loader/src/index.js??postcss!../../../../../node_modules/resolve-url-loader/index.js??ref--5-oneOf-6-4!../../../../../node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-6-5!./DataGrid.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\nif (module.hot) {\n if (!content.locals || module.hot.invalidate) {\n var isEqualLocals = function isEqualLocals(a, b, isNamedExport) {\n if (!a && b || a && !b) {\n return false;\n }\n\n var p;\n\n for (p in a) {\n if (isNamedExport && p === 'default') {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (a[p] !== b[p]) {\n return false;\n }\n }\n\n for (p in b) {\n if (isNamedExport && p === 'default') {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (!a[p]) {\n return false;\n }\n }\n\n return true;\n};\n var oldLocals = content.locals;\n\n module.hot.accept(\n \"!!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--5-oneOf-6-1!../../../../../node_modules/css-loader/dist/cjs.js??ref--5-oneOf-6-2!../../../../../node_modules/postcss-loader/src/index.js??postcss!../../../../../node_modules/resolve-url-loader/index.js??ref--5-oneOf-6-4!../../../../../node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-6-5!./DataGrid.scss\",\n function () {\n content = require(\"!!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--5-oneOf-6-1!../../../../../node_modules/css-loader/dist/cjs.js??ref--5-oneOf-6-2!../../../../../node_modules/postcss-loader/src/index.js??postcss!../../../../../node_modules/resolve-url-loader/index.js??ref--5-oneOf-6-4!../../../../../node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-6-5!./DataGrid.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\n if (!isEqualLocals(oldLocals, content.locals)) {\n module.hot.invalidate();\n\n return;\n }\n\n oldLocals = content.locals;\n\n update(content);\n }\n )\n }\n\n module.hot.dispose(function() {\n update();\n });\n}\n\nmodule.exports = content.locals || {};","import { log, logAPI } from \"./andyliticsApi\";\r\nimport { UserInitiatedLogoutMessage } from \"../constants/textConstants\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nconst apiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : ''; // window is undefined during pre-render\r\nconst portalApiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.portalAPIURL : ''; // window is undefined during pre-render\r\n\r\n/**\r\n * changeUserName\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} OldUserName = HealthSource UserName\r\n * @param {string} NewUserName = new UserName\r\n * @returns {Promise} \"OK\" or not\r\n */\r\nexport const changeUserName = (token, OldUserName, NewUserName) => {\r\n const url = encodeURI( tools.buildUrl( apiBaseUrl, 'api/v2/account/ChangeUserName'));\r\n const start = new Date();\r\n const data = { NewUserName: NewUserName, OldUserName: OldUserName };\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.ChangeUserName\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.ChangeUserName.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n * changePassword\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} UserName = HealthSource UserName\r\n * @param {string} OldPassword = current user's current password\r\n * @param {string} NewPassword = current user's new password\r\n * @param {string} ConfirmPassword = current user's current password\r\n * @returns {Promise} \"OK\" or not\r\n */\r\nexport const changePassword = (token, UserName, OldPassword, NewPassword, ConfirmPassword) => {\r\n const url = encodeURI( tools.buildUrl( apiBaseUrl, 'api/v2/account/ChangePassword'));\r\n const start = new Date();\r\n const data = { Email: UserName, OldPassword: OldPassword, NewPassword: NewPassword, ConfirmPassword: ConfirmPassword };\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.ChangePassword\", start, url);\r\n //debugger;\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.ChangePassword.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\n/**\r\n * forgotPassword\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} UserName = HealthSource UserName\r\n * @param {string} DOB = current user's Date of birth\r\n * @param {string} ZipCode = current user's Zipcode\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const forgotPassword = (token, UserName, DOB, ZipCode) => {\r\n //const url = encodeURI(`${apiBaseUrl}api/v2/account/ForgotPassword`);\r\n const url = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/ForgotPassword`));\r\n const start = new Date();\r\n const data = { UserName: UserName, DOB: DOB, ZipCode: ZipCode };\r\n //debugger;\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.ForgotPassword\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.ForgotPassword.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const resetPassword = (token, userId, password) => {\r\n //const url = encodeURI(`${apiBaseUrl}api/v2/account/ResetPassword`);\r\n const url = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/ResetPassword`));\r\n const start = new Date();\r\n const data = { token, userId, password, confirmPassword: password };\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.ResetPassword\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.ResetPassword.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n * forgotUserName\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} Email = Email\r\n * @param {string} DOB = current user's Date of birth\r\n * @param {string} FirstName = current user's Zipcode\r\n * @param {string} LastName = current user's Zipcode\r\n * @param {string} ZipCode = current user's Zipcode\r\n * @param {boolean} SendEmail = strange parameter, we always wanna send the email\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const forgotUserName = (token, Email, DOB, FirstName, LastName, ZipCode, SendEmail) => {\r\n //const url = encodeURI(`${apiBaseUrl}api/v2/account/ForgotUserName`);\r\n const url = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/ForgotUserName`));\r\n const start = new Date();\r\n const data = { Email, DOB, ZipCode, FirstName, LastName, SendEmail };\r\n //debugger;\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.ForgotUsername\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.ForgotUsername.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n * changeEmail\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} Username = HealthSource UserName\r\n * @param {string} NewEmail = new Email\r\n * @param {string} ConfirmEmail = new Email\r\n * @returns {Promise} \"OK\" or not\r\n */\r\nexport const changeEmail = (token, Username, NewEmail, ConfirmEmail) => {\r\n const url = encodeURI(`${apiBaseUrl}api/v2/account/ChangeEmail`);\r\n const start = new Date();\r\n const data = { Username, NewEmail, ConfirmEmail };\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.ChangeEmail\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.ChangeEmail.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\n\r\n\r\n\r\n/**\r\n * linkEmployeeAccount\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} CorporateId = LAN ID\r\n * @param {string} CorporatePassword = LAN Password\r\n * @param {boolean} HasEmployeeLogin = Has Employee Login ... think this should always be true lol :)\r\n * @param {string} UserName = current user's UserName\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const linkEmployeeAccount = (token, CorporateId, CorporatePassword, HasEmployeeLogin, UserName) => {\r\n try {\r\n //debugger;\r\n const url = encodeURI(tools.buildUrl( portalApiBaseUrl, `/LinkEmployee`));\r\n //debugger;\r\n const start = new Date();\r\n const data = { CorporateId: CorporateId, CorporatePassword: CorporatePassword, HasEmployeeLogin: HasEmployeeLogin, UserName: UserName };\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Account.Employee.Link\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Account.Employee.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n }\r\n catch (E) {\r\n //debugger;\r\n throw E;\r\n }\r\n};\r\n\r\n/**\r\n * unlinkEmployeeAccount\r\n * \r\n * @param {string} token = current user token\r\n * @param {boolean} HasEmployeeLogin = Has Employee Login ... think this should always be true lol :)\r\n * @param {string} UserName = current user's UserName\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const unlinkEmployeeAccount = (token, HasEmployeeLogin, UserName) => {\r\n try {\r\n //debugger;\r\n const url = encodeURI(tools.buildUrl( portalApiBaseUrl, `/UnlinkEmployee`));\r\n const start = new Date();\r\n const data = { HasEmployeeLogin: HasEmployeeLogin, UserName: UserName };\r\n //debugger;\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Account.Employee.Unlink\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Account.Employee.Unlink.Failure\", start, url, err); return Promise.reject(err); });\r\n\r\n }\r\n catch (E) {\r\n //debugger;\r\n throw E;\r\n }\r\n\r\n};\r\n\r\n/**\r\n * linkMyChartAccount\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} MemberId = MyChart ID\r\n * @param {string} Password = MyChart Password\r\n * @param {boolean} HasMyChartLogin = Has MyChart Login ... think this should always be true lol :)\r\n * @param {string} UserName = current user's UserName\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const linkMyChartAccount = (token, MemberId, Password, HasMyChartLogin, UserName) => {\r\n try {\r\n //debugger;\r\n const url = encodeURI( tools.buildUrl( portalApiBaseUrl, `/LinkMyChart`));\r\n const data = {\r\n MemberId: MemberId,\r\n Password: Password,\r\n HasMyChartLogin: HasMyChartLogin ? HasMyChartLogin : true, //Default to true as per above comments.\r\n UserName: UserName\r\n };\r\n //debugger;\r\n const start = new Date();\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Account.MyChart.Link\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Account.MyChart.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n }\r\n catch (E) {\r\n //debugger;\r\n throw E;\r\n }\r\n};\r\n\r\n/**\r\n * unlinkMyChartAccount\r\n * \r\n * @param {string} token = current user token\r\n * @param {boolean} HasMyChartLogin = Has MyChart Login ... think this should always be true lol :)\r\n * @param {string} UserName = current user's UserName\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const unlinkMyChartAccount = (token, HasMyChartLogin, UserName) => {\r\n try {\r\n //debugger;\r\n const url = encodeURI( tools.buildUrl( portalApiBaseUrl, `/UnlinkMyChart`));\r\n const start = new Date();\r\n const data = { HasMyChartLogin: HasMyChartLogin, UserName: UserName };\r\n //debugger;\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Account.MyChart.Unlink\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Account.MyChart.Unlink.Failure\", start, url, err); return Promise.reject(err); });\r\n\r\n }\r\n catch (E) {\r\n //debugger;\r\n throw E;\r\n }\r\n\r\n};\r\n\r\n/**\r\n* getUserPhoneNumber\r\n* \r\n* @param {string} token = current user token\r\n* @param {string} UserName = UserName \r\n* @returns {Promise} ResultStructure\r\n */\r\nexport const getUserPhoneNumber = (token, UserName) => {\r\n const url = `${apiBaseUrl}v1/Profile/GetUserPhone?phoneType=mobile&userName=${encodeURIComponent(UserName)}`;\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.GetUserPhone\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.GetUserPhone.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n* addOrUpdateUserPhoneNumber\r\n* \r\n* @param {string} token = current user token\r\n* @param {string} UserName = UserName \r\n* @param {string} areaCode = area code\r\n* @param {string} phoneNumber = phone number\r\n* @param {string} userId = userId \r\n* @returns {Promise} unknown\r\n * */\r\nexport const addOrUpdateUserPhoneNumber = (token, UserName, areaCode, phoneNumber, userId, newUser) => {\r\n let url = \"\";\r\n let methodType = \"\";\r\n let methodName = \"\";\r\n var phone = { PhoneType: 'mobile', CountryCode: '1', AreaCode: areaCode, PhoneNumber: phoneNumber, UserId: userId }; //getUpdatedPhone(); \r\n if (!newUser) {\r\n url = `${apiBaseUrl}v1/Profile/UpdateUserPhone?userName=${encodeURIComponent(UserName)}`;\r\n methodType = \"put\";\r\n methodName = \"Settings.UpdateUserPhone\";\r\n }\r\n else {\r\n url = `${apiBaseUrl}v1/Profile/CreateUserPhone?userName=${encodeURIComponent(UserName)}`;\r\n methodType = \"post\";\r\n methodName = \"Settings.UpdateUserPhone\";\r\n }\r\n\r\n const params = {\r\n method: methodType,\r\n body: JSON.stringify(phone),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n }\r\n };\r\n\r\n const start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.\" + methodName, start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.\" + { methodName } + \".Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getNotificationPreference = (token, userName) => {\r\n const url = `${apiBaseUrl}v2/HealthSource/Preferences/GetUserNotificationPreferences?userName=${encodeURIComponent(userName)}`;\r\n const start = new Date();\r\n const activityCode = \"MBHWeb.Api.HealthSource.GetUserNotificationPreference\";\r\n \r\n return fetch2(url, token).then(response => {\r\n logAPI(activityCode, start, url); \r\n return response;\r\n }).catch(error => {\r\n logAPI(activityCode + \".Failure\", start, url, { error: \"We currently are unable to change your preference.\" });\r\n throw error;\r\n });\r\n};\r\n\r\nexport const saveNotificationPreference = (token, userName, useEmail, useSms, usePush, eventName) => {\r\n const url = encodeURI(`${apiBaseUrl}v2/HealthSource/Preferences/SaveUserNotificationPreference`);\r\n const start = new Date();\r\n const data = { eventName: eventName, userName, useEmail, useSms, usePush };\r\n let activityCode = \"\";\r\n if (eventName === \"PharmacyNotification\")\r\n activityCode = \"MBHWeb.Api.Rx.Notifications.UpdateCommunicationPreference\";\r\n else if (eventName === \"XealthNotification\")\r\n activityCode = \"MBHWeb.Api.CareCoach.Notifications.UpdateCommunicationPreference\";\r\n else if (eventName === \"GeneralNotification\")\r\n activityCode = \"MBHWeb.Api.General.Notifications.UpdateCommunicationPreference\";\r\n\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(activityCode, start, url, { eventName: eventName });\r\n return 'success';\r\n }).catch(error => {\r\n const errorMessage = eventName ? \"We're sorry, we currently are unable to save your\" + eventName + \"preference.\" : \"We're sorry, we currently are unable to save your preference.\";\r\n logAPI(activityCode + \".Failure\", start, url, { error: errorMessage });\r\n throw (error ? error : errorMessage);\r\n });\r\n};\r\n\r\n/**\r\n* getUserAddresses\r\n* \r\n* @param {string} token = current user token\r\n* @param {string} UserName = UserName \r\n* @returns {Promise} ResultStructure\r\n */\r\nexport const getUserAddresses = (token, UserName) => {\r\n if (typeof UserName === \"undefined\" || UserName === null || UserName === \"\") {\r\n //debugger;\r\n return []; // should be checking these elsewhere, but oh well.\r\n }\r\n const url = `${apiBaseUrl}v1/Profile/GetUserAddresses?userName=${encodeURIComponent(UserName)}`;\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Account.GetUserAddress\", start, url);\r\n return response;\r\n }).catch((err) => {\r\n //debugger;\r\n logAPI(\"MBHWeb.Api.Account.GetUserAddress.Failure\", start, url, err);\r\n return [];\r\n });\r\n};\r\n\r\n\r\n/**\r\n * getHideTutorial\r\n * \r\n * @param {string} token = current user token\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const getHideTutorial = (token) => {\r\n const fullUrl = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/GetHideTutorial`));\r\n const params = {\r\n headers: {\r\n \"accept\": \"application/json\",\r\n \"authorization\": \"bearer \" + token\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n return fetchWithCreds(fullUrl, params).then(response => {\r\n //logAPI(\"MBHWeb.NotSureWeShouldLogThis\", start, fullUrl);\r\n try {\r\n return response.json();\r\n }\r\n catch (E) {\r\n return [{ isSuccessful: false }];\r\n }\r\n }).catch(err => {\r\n return [{ isSuccessful: false }];\r\n });\r\n};\r\n\r\n\r\n\r\n/**\r\n* setHideTutorial\r\n* \r\n* @param {string} token = current user token\r\n* @returns {Promise} ResultStructure\r\n*/\r\nexport const setHideTutorial = (token) => {\r\n\r\n const fullUrl = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/SetHideTutorial`));\r\n const params = {\r\n headers: {\r\n \"accept\": \"application/json\",\r\n \"authorization\": \"bearer \" + token\r\n },\r\n method: \"POST\"\r\n };\r\n var start = new Date();\r\n return fetchWithCreds(fullUrl, params).then(response => {\r\n //logAPI(\"MBHWeb.NotSureWeShouldLogThis\", start, fullUrl);\r\n try {\r\n return response.json();\r\n }\r\n catch (E) {\r\n return [{ isSuccessful: false }];\r\n }\r\n }).catch(err => {\r\n return { isSuccessful: false };\r\n });\r\n};\r\n\r\n/**\r\n * getUserPreferences\r\n * \r\n * @param {string} token = current user token\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const getUserPreferences = (token, key) => {\r\n const fullUrl = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/GetUserPreferences/${key}`));\r\n const params = {\r\n headers: {\r\n \"authorization\": \"bearer \" + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n const activityCode = `MBHWeb.Api.Account.GetUserPreferences.${key}.Get`;\r\n return fetchWithCreds(fullUrl, params).then(response => { \r\n try {\r\n logAPI(activityCode, start, fullUrl);\r\n return response.json();\r\n }\r\n catch (E) {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, E);\r\n return [{ isSuccessful: false }];\r\n }\r\n }).catch(err => {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, err);\r\n return [{ isSuccessful: false }];\r\n });\r\n};\r\n\r\n\r\n/**\r\n * getUserPreferences2\r\n * \r\n * @param {string} token = current user token\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const getUserPreferences2 = (token, key) => {\r\n const fullUrl = encodeURI(tools.buildUrl(apiBaseUrl, `/v2/HealthSource/Preferences/${key}`));\r\n const params = {\r\n headers: {\r\n \"authorization\": \"bearer \" + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n const activityCode = `MBHWeb.Api.Account.GetUserPreferences2.${key}.Get`;\r\n return fetch(fullUrl, params).then(response => {\r\n try {\r\n logAPI(activityCode, start, fullUrl);\r\n return response.json();\r\n }\r\n catch (E) {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, E);\r\n return [{ isSuccessful: false }];\r\n }\r\n }).catch(err => {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, err);\r\n return [{ isSuccessful: false }];\r\n });\r\n};\r\n\r\n\r\n\r\n/**\r\n* resetUserPreferences\r\n* \r\n* @param {string} token = current user token\r\n* @returns {Promise} ResultStructure\r\n*/\r\nexport const resetUserPreferences = (token, key, value) => {\r\n\r\n const fullUrl = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/ResetUserPreferences/${key}/${value}`));\r\n const params = {\r\n headers: {\r\n \"accept\": \"application/json\",\r\n \"authorization\": \"bearer \" + token\r\n },\r\n method: \"POST\"\r\n };\r\n var start = new Date();\r\n const activityCode = `MBHWeb.Api.Account.ResetUserPreferences.${key}.Put`;\r\n return fetchWithCreds(fullUrl, params).then(response => { \r\n try {\r\n logAPI(activityCode, start, fullUrl);\r\n return response.json();\r\n }\r\n catch (E) {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, E);\r\n return { isSuccessful: false };\r\n }\r\n }).catch(err => {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, err);\r\n return { isSuccessful: false };\r\n });\r\n};\r\n\r\n\r\n\r\n/**\r\n* resetUserPreferences2\r\n* \r\n* @param {string} token = current user token\r\n* @returns {Promise} ResultStructure\r\n*/\r\nexport const resetUserPreferences2 = (token, key, value) => {\r\n\r\n const fullUrl = encodeURI(tools.buildUrl(apiBaseUrl, `/v2/HealthSource/Preferences/${key}?preferenceValue=${value}`));\r\n const params = {\r\n headers: {\r\n \"accept\": \"application/json\",\r\n \"authorization\": \"bearer \" + token\r\n },\r\n method: \"PUT\"\r\n };\r\n var start = new Date();\r\n const activityCode = `MBHWeb.Api.Account.ResetUserPreferences2.${key}.Put`;\r\n return fetch(fullUrl, params).then(response => {\r\n try {\r\n logAPI(activityCode, start, fullUrl);\r\n return response.json();\r\n }\r\n catch (E) {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, E);\r\n return { isSuccessful: false };\r\n }\r\n }).catch(err => {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, err);\r\n return { isSuccessful: false };\r\n });\r\n};\r\n\r\n\r\n\r\n/**\r\n * getAllUserPreferences\r\n * \r\n * @param {string} token = current user token\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const getAllUserPreferences = (token) => {\r\n const fullUrl = encodeURI( tools.buildUrl( portalApiBaseUrl, `/account/GetAllUserPreferences`));\r\n const params = {\r\n headers: {\r\n \"authorization\": \"bearer \" + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n const activityCode = `MBHWeb.Api.Account.GetAllUserPreferences.Get`;\r\n return fetchWithCreds(fullUrl, params).then(response => {\r\n try {\r\n logAPI(activityCode, start, fullUrl);\r\n return response.json();\r\n }\r\n catch (E) {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, E);\r\n return { isSuccessful: false };\r\n }\r\n }).catch(err => {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, err);\r\n return { isSuccessful: false };\r\n });\r\n};\r\n\r\n/**\r\n * getAllUserPreferences2\r\n * \r\n * @param {string} token = current user token\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const getAllUserPreferences2 = (token) => {\r\n //debugger;\r\n const fullUrl = encodeURI(tools.buildUrl(apiBaseUrl, `/v2/HealthSource/Preferences`));\r\n const params = {\r\n headers: {\r\n \"authorization\": \"bearer \" + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n const activityCode = `MBHWeb.Api.Account.GetAllUserPreferences2.Get`;\r\n return fetch(fullUrl, params).then(response => {\r\n try {\r\n logAPI(activityCode, start, fullUrl);\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }\r\n catch (E) {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, E);\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(activityCode + \".Failure\", start, fullUrl, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\n/**\r\n* getUserInsuranceInfo\r\n* \r\n* @param {string} token = current user token\r\n* @param {string} patientid = patientid\r\n* @param {string} patientidtype = patientidtype\r\n */\r\n\r\n\r\nexport const getUserInsuranceInfo = (token, patientid) => {\r\n \r\n const url = `${apiBaseUrl}v5/epic/GetCoverage?patientid=${patientid}&patientidtype=EPI`;\r\n const params = {\r\n headers: {\r\n \"authorization\": \"bearer \" + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n const activityCode = \"MBHWeb.Api.HealthSource.getUserInsuranceInfo\";\r\n return fetch(url, params).then(response => {\r\n try {\r\n logAPI(activityCode, start, url);\r\n return response.json();\r\n }\r\n catch (E) {\r\n logAPI(activityCode + \".Failure\", start, url, E);\r\n return E;\r\n }\r\n }).catch(err => {\r\n logAPI(activityCode + \".Failure\", start, url, err);\r\n return err;\r\n });\r\n};\r\n","import { handleError } from \"../helpers/globalHandler\";\r\nimport { v4 as uuidv4 } from 'uuid';\r\nimport Cookies from \"cookies-js\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nexport const logAndylitics = (ActivityType, ActivityCode, ActivityStart, ActivityEnd, ActivityJSON, ActivityParam1, ActivityParam2, Url, UserID) => {\r\n try {\r\n let correlationId = Cookies.get(\"bsw-CorrelationId\");\r\n let sessionId = Cookies.get(\"bsw-SessionId\");\r\n\r\n let bswGACookie = Cookies.get(\"bsw-GACookie\");\r\n\r\n let cookieGA = Cookies.get(\"_ga\");\r\n let cookieGID = Cookies.get(\"_gid\");\r\n let cookieSCID = Cookies.get(\"_scid\");\r\n\r\n let activityParam2IsJson = false;\r\n /**ExternalCorrelationId is being passed in from bswhealth.com \r\n * setting the externalCorrelationIdSource to bswhealth since it is the only place so far\r\n * may need to make externalCorrelationIdSource a real parameter or cookie at some point\r\n * */\r\n if (doesPathAllowColletionIdOverride()) {\r\n activityParam2IsJson = true;\r\n ActivityParam2 = { externalCorrelationId: true, externalCorrelationIdSource: \"bswhealth\" };\r\n }\r\n if (typeof window !== \"undefined\") {\r\n if (typeof Url === \"undefined\" || Url === null || Url === \"\") {\r\n Url = window.location.href;\r\n }\r\n //const oState = window.store.getState();\r\n //if (oState && oState.domain) {\r\n const domain = window.store.getState().domain; // sessionStorage['root'] ? JSON.parse(JSON.parse(sessionStorage['root']).domain) : window.store.getState().domain;\r\n if (domain) {\r\n // here we want to keep the correlation id if it was generated from the SSO\r\n if (typeof correlationId === \"undefined\" || correlationId === null || correlationId === \"\") {\r\n correlationId = domain.c; //oState.domain.c;\r\n }\r\n sessionId = domain.s; //oState.domain.s;\r\n // fill in userID if it wasn't passed in\r\n if (typeof UserID === \"undefined\" || UserID == null || UserID == \"\") {\r\n UserID = domain.un; //oState.domain.un;\r\n }\r\n }\r\n }\r\n const payload = {\r\n ActivityType,\r\n ActivityCode,\r\n ActivityStart,\r\n ActivityEnd,\r\n ActivityDetailsJson: ActivityJSON ? JSON.stringify(ActivityJSON) : null,\r\n ActivityParam1: ActivityParam1 ? ActivityParam1 : (typeof bswGACookie !== \"undefined\" && bswGACookie !== null && bswGACookie !== \"\") ? bswGACookie : ActivityParam1,\r\n ActivityParam2: activityParam2IsJson ? JSON.stringify(ActivityParam2) : ActivityParam2,\r\n Url,\r\n UserName: UserID || window.currentUserName || null,\r\n ApplicationName: window.serverData.data.andyliticsApplicationName,\r\n ApplicationVersion: window.serverData.data.applicationVersion,\r\n Platform: window.serverData.data.browser,\r\n PlatformVersion: window.serverData.data.browserVersion,\r\n InstallationIdentifier: window.serverData.data.ipAddress,\r\n SessionId: sessionId,\r\n CorrelationId: correlationId,\r\n IDs: { _ga: cookieGA, _gid: cookieGID, _scid: cookieSCID }\r\n };\r\n\r\n var fullUrl = window.serverData.data.andyliticsKey; // \"/api/Andylitics/Log\";\r\n fullUrl = fullUrl + \"&ac=\" + ActivityCode;\r\n //if (typeof correlationId === \"undefined\" || correlationId === null || correlationId === \"\") {\r\n // debugger;\r\n //}\r\n //if (typeof sessionId === \"undefined\" || sessionId === null || sessionId === \"\") {\r\n // debugger;\r\n //}\r\n const params = {\r\n method: \"POST\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"bsw-CorrelationId\": correlationId,\r\n \"bsw-SessionId\": sessionId\r\n },\r\n body: JSON.stringify(payload),\r\n //mode: \"no-cors\"\r\n };\r\n\r\n return fetch(fullUrl, params).then(response => {\r\n try {\r\n if (handleError(response)) {\r\n return Promise.reject(response);\r\n }\r\n return response;\r\n }\r\n catch (e) {\r\n console.error(e);\r\n Promise.reject(response);\r\n }\r\n }).then(ret => {\r\n return ret;\r\n });\r\n }\r\n catch (e) {\r\n console.error(e);\r\n }\r\n};\r\nconst doesPathAllowColletionIdOverride = () => {\r\n const isEnabled = window && window.serverData && window.serverData.data.enableDotComSchedulingCorrelationID;\r\n if (!isEnabled) return false;\r\n const routeUrl = window.location && window.location.href ? window.location.href.substr(window.location.origin.length) : \"\";\r\n const routeParms = routeUrl ? routeUrl.split('/') : [];\r\n const isEnabledSite = (routeParms.length > 0 && routeParms[1].toLowerCase() === \"schedule\") || (routeParms.length > 3 && routeParms[3].toLowerCase() === \"schedule\");\r\n if (!isEnabledSite) return false;\r\n const externalCorrelationId = Cookies.get(\"bsw-ExternalCorrelationId\");\r\n const hasExternalCorrelationId = externalCorrelationId ? externalCorrelationId === \"true\" : false;\r\n return hasExternalCorrelationId;\r\n}\r\n\r\nexport const log = (activityType, activityName, startTime, url, activityJsonData = null, activityParam1 = null, activityParam2 = null) => {\r\n logAndylitics(activityType, activityName, startTime, new Date(), activityJsonData, activityParam1, activityParam2, url, null);\r\n};\r\n\r\nexport const logAPI = (activityName, startTime, url, activityJsonData = null, activityParam1 = null, activityParam2 = null) => {\r\n return log(\"WEB_API\", activityName, startTime, url, activityJsonData, activityParam1, activityParam2);\r\n}\r\n\r\nexport const logUI = (activityName, startTime, url, activityJsonData = null, activityParam1 = null, activityParam2 = null) => {\r\n return log(\"WEB_UI\", activityName, startTime, url, activityJsonData, activityParam1, activityParam2);\r\n}\r\n\r\n\r\nexport const logToAndylitics = (activityName, startTime, url) => {\r\n logAndylitics(\"WEB_API\", activityName, startTime, new Date(), null, null, null, url, null);\r\n};\r\n","import { logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nconst engagementBffApiBaseUrl = !!window ? window.serverData.data.engagementBffApiBaseUrl : '';\r\nconst azureFunctionsKey = !!window ? window.serverData.data.engagementBffFunctionsKey : '';\r\n\r\nexport const getPatientSchedulingPermissions = (token, payload) => {\r\n const url = tools.buildUrl(engagementBffApiBaseUrl, '/v1/caregap/scheduling/parameters');\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(payload),\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": azureFunctionsKey,\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(\"MBHWeb.Api.EngagementBFF.CareGapsScheduling.Success\", start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.EngagementBFF.CareGapsScheduling.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nconst BASE_URL = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : '';\r\nconst CLIENT_ID = \"MyBSWHealth.Web\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nexport const getProvidersList = (searchModel, token) => {\r\n const start = new Date();\r\n const fullUrl = `${BASE_URL}v2/Epic/GetProvidersList?epicProvidersRequest.loginId=${encodeURIComponent(searchModel.loginId)}&epicProvidersRequest.proxyPatientId=${searchModel.proxyPatientId}&epicProvidersRequest.proxyPatientIdType=EXTERNAL`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Direct.ProvidersList.Get\", start, fullUrl);\r\n if (response && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Schedule.Direct.ProvidersList.Get.Failure\", start, fullUrl, JSON.stringify(error));\r\n return Promise.reject(error);\r\n });\r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nconst apiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : '';\r\nconst portalApiBaseURL = typeof window !== 'undefined' ? window.serverData.data.portalAPIURL : '';\r\n\r\nexport const getFAQ = () => {\r\n const url = window.serverData.data.faqApiUrl;\r\n var start = new Date();\r\n return fetch(url).then(response => {\r\n logAPI(\"MBHWeb.Api.FAQ.GetFAQ\", start, url);\r\n return Promise.resolve(response.text());\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.FAQ.GetFAQ.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getPrivacyHealthPlanData = (payload) => {\r\n return getPolicyText(payload.featureId, payload.token);\r\n};\r\n\r\nexport const getPrivacyMyBswhData = (payload) => {\r\n return getPolicyText(payload.featureId, payload.token);\r\n};\r\n\r\nexport const getPrivacyMyChartData = (payload) => {\r\n return getPolicyText(payload.featureId, payload.token);\r\n};\r\n\r\nexport const getPolicyText = (featureId, token) => {\r\n if (featureId === undefined || featureId == \"undefined\") {\r\n return \"\";\r\n }\r\n if (token === undefined || token == \"undefined\" || token == \"null\") {\r\n token = \"\";\r\n }\r\n var oBody = {};\r\n oBody[\"FeatureId\"] = featureId;\r\n oBody[\"UserToken\"] = token;\r\n var oHeaders = {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n };\r\n\r\n var url = `${portalApiBaseURL}/GetPrivacyPolicy`;\r\n var params = {\r\n method: \"POST\",\r\n body: JSON.stringify(oBody),\r\n headers: oHeaders,\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.GetPrivacyInformation\", start, url);\r\n if (response.ok) {\r\n return Promise.resolve(response.json());\r\n }\r\n else{\r\n return Promise.reject(response);\r\n }\r\n }).catch(e => {\r\n logAPI(\"MBHWeb.Api.GetPrivacyInformation\", start, url, e);\r\n return Promise.reject(e);\r\n }\r\n );\r\n};\r\n\r\nexport const getMyCharDocsData = (docid, localization) => {\r\n\r\n const url = tools.buildUrl(`/Api/Docs/GetMyCharDocsData/${docid}/${localization}`);\r\n return getData(url);\r\n};\r\n\r\nconst getData = (url) => {\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"text/html\"\r\n }\r\n };\r\n\r\n //const request = new Request(url, params);\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.MyChart.GetMyChartDocsData\", start, url); //i am not considering it as web_api, but still considering for logging.\r\n return Promise.resolve(response.text());\r\n }).catch(err => {\r\n //debugger;\r\n console.log(err);\r\n logAPI(\"MBHWeb.Api.MyChart.GetMyChartDocsData.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst apiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : ''; // window is undefined during pre-render\r\nconst myBswHealthBffBaseUrl = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbff : '';\r\nconst functionsKey = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbfffunctionskey : '';\r\nconst surveyUrl = typeof window !== 'undefined' ? window.serverData.data.surveyUrl : '';\r\n//const xealthApiUrl = typeof window !== 'undefined' ? window.serverData.data.xealthapiurl : '';\r\n//const xealthApiFunctionskey = typeof window !== 'undefined' ? window.serverData.data.xealthapifunctionskey : '';\r\n\r\nexport const getJourneyConversationId = (token, messageId) => {\r\n const url = `${myBswHealthBffBaseUrl}v1/xealthToTwistle?messageId=${messageId}`;\r\n\r\n const params = {\r\n headers: {\r\n \"x-functions-key\": functionsKey,\r\n \"content-type\": \"application/json\",\r\n \"accept\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Dashboard.GetXealthMessage\", start, url);\r\n return resp.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Dashboard.GetXealthMessage.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n\r\n}; \r\n\r\n\r\n\r\n/**\r\n * Returns dashboard data for the given login id.\r\n * \r\n * @param {any} loginId loginId of the logged-in user.\r\n * @param {any} token user's auth token.\r\n * @param {any} proxyId user's proxy ID.\r\n * @returns {any} epic dashboard data.\r\n */\r\nexport const getEpicDashboardData = (loginId, token, proxyId) => {\r\n //debugger;\r\n //throw \"this one failed!\";\r\n const proxyIdParam = proxyId ? '&proxyPatientId=' + proxyId + '&proxyPatientIdType=External' : \"\";\r\n const url = `${apiBaseUrl}v2/epic/GetEpicDashboardData?loginId=${encodeURIComponent(loginId)}${proxyIdParam}`;\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Dashboard.GetEpicData\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Dashboard.GetEpicData.Failure\", start, url, err); return Promise.reject(err);});\r\n};\r\n\r\nexport const proxyInfo = (userName, token) => {\r\n const url = `${apiBaseUrl}v4/Epic/GetProxyInformation?userName=${encodeURIComponent(userName)}&getEvisitInfo=true&excludeExpiredProxies=true`\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.MyChart.GetProxyInfo\", start, url, response);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.MyChart.GetProxyInfo.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getZipnosisEvisitUrl = (token, loginId, zipGroupId, proxyPatientId, proxyPatientIdType) => {\r\n const url = `${apiBaseUrl}v4/Epic/GetZipnosisEvisitUrl`;\r\n const start = new Date();\r\n let data = { loginId, zipGroupId };\r\n if (proxyPatientId && proxyPatientIdType) {\r\n data = { ...data, proxyPatientId, proxyPatientIdType };\r\n }\r\n return fetch2(url, token, JSON.stringify(data), 'POST').then(response => {\r\n logAPI(\"MBHWeb.Api.MyChart.GetZipnosisEvisitUrl\", start, url);\r\n return response;\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.MyChart.GetZipnosisEvisitUrl.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getTodos = (loginId, patientId, token) => {\r\n const queryStrings = `?loginId=${encodeURIComponent(loginId)}&patientId=${patientId}&patientIdType=External`;\r\n const url = `${apiBaseUrl}v2/epic/GetPatientHealthAdvisories${queryStrings}`;\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.MyChart.GetPatientHealthAdvisories\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.MyChart.GetPatientHealthAdvisories.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getEvisitEligibility = (userName, token) => {\r\n const uname = encodeURIComponent(userName);\r\n const url = `${apiBaseUrl}v2/epic/getEvisitEligibility?userName=${encodeURIComponent(userName)}`;\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.eVisits.GetEvisitEligibility.Get\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.eVisits.GetEvisitEligibility.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getLetters = (loginId, token, myChartId, proxyPatientId) => {\r\n const url = `${apiBaseUrl}v3/Epic/GetLetters`;\r\n const start = new Date();\r\n\r\n let data = { loginId, myChartId, proxyPatientId, proxyPatientIdType: proxyPatientId ? 'External' : null };\r\n \r\n return fetch2(url, token, JSON.stringify(data), 'POST').then(response => {\r\n logAPI(\"MBHWeb.Api.MyChart.GetLetters\", start, url);\r\n return response;\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.MyChart.GetLetters.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\n\r\nexport const getProxyRelationshipTypes = (token) => {\r\n const fullUrl = `${apiBaseUrl}v2/Epic/GetProxyRelationshipTypes`;\r\n\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.GetProxyRelationshipTypes\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.GetProxyRelationshipTypes.Failure\", start, fullUrl, error);\r\n return Promise.reject(error);\r\n });\r\n};\r\n\r\nexport const setProxyRelationship = (token, patientId, patientIdType, proxyId, proxyIdType, relation, fromDate, toDate, comments) => {\r\n const fullUrl = `${apiBaseUrl}v2/Epic/SetProxyRelationship`;\r\n \r\n let postBody = {\r\n \"PatientId\": patientId,\r\n \"PatientIdType\": patientIdType,\r\n \"ProxyId\": proxyId,\r\n \"ProxyIdType\": proxyIdType,\r\n \"Relation\": relation,\r\n \"FromDate\": fromDate,\r\n \"ToDate\": toDate,\r\n \"Comments\": comments\r\n };\r\n\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n body: JSON.stringify(postBody),\r\n method: \"POST\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.SetProxyRelationship\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.SetProxyRelationship.Failure\", start, fullUrl, error);\r\n return Promise.reject(error);\r\n });\r\n\r\n};\r\n\r\nexport const acceptProxyRelationship = (token, grantorId, grantorDob) => {\r\n const fullUrl = `${apiBaseUrl}v2/Epic/AcceptProxyRelationship`;\r\n\r\n let postBody = {\r\n \"GrantorId\": grantorId,\r\n \"GrantorDob\": grantorDob\r\n };\r\n\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n body: JSON.stringify(postBody),\r\n method: \"POST\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n return response.json().then((body) => {\r\n return { response, body };\r\n })\r\n .then((request) => {\r\n if (request.response.ok) {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.AcceptProxyRelationship\", start, fullUrl);\r\n return request.body;\r\n }\r\n else {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.AcceptProxyRelationship.Failure\", start, fullUrl, request.body);\r\n return Promise.reject(request.body);\r\n }\r\n });\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.AcceptProxyRelationship.Failure\", start, fullUrl, error);\r\n return Promise.reject(error);\r\n });\r\n}; \r\n\r\nexport const grantProxyRelationship = (token, accessorName, accessorEmail, type) => {\r\n const fullUrl = `${apiBaseUrl}v2/Epic/GrantProxyRelationship`;\r\n\r\n let epicGrantProxyRelationshipRequest = {\r\n \"AccessorName\": accessorName,\r\n \"AccessorEmail\": accessorEmail,\r\n \"RequestType\": type\r\n };\r\n\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n body: JSON.stringify(epicGrantProxyRelationshipRequest),\r\n method: \"POST\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.GrantProxyRelationship\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.GrantProxyRelationship.Failure\", start, fullUrl, error);\r\n return Promise.reject(error);\r\n });\r\n};\r\n\r\nexport const deleteProxyRelationship = (token, patientId, patientIdType) => {\r\n const fullUrl = `${apiBaseUrl}v2/Epic/DeleteProxyRelationship?proxyPatientId=${patientId}&proxyPatientIdType=${patientIdType}`;\r\n\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"DELETE\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.DeleteProxyRelationship\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Epic.Proxy.DeleteProxyRelationship.Failure\", start, fullUrl, error);\r\n return Promise.reject(error);\r\n });\r\n};\r\n\r\n/**\r\n * the mybswhealth bffdashboard contains video visit appointment details and xealthMessages for primary user and its proxies.\r\n * \r\n * @param {any} token user's auth token\r\n * @returns {any} dashboard data from the new bff.\r\n */\r\nexport const getBffDashboard = (token) => {\r\n const url = `${myBswHealthBffBaseUrl}v5/dashboard`;\r\n //debugger;\r\n //throw \"this one failed!\";\r\n\r\n //const url = `${myBswHealthBffBaseUrl}v4/web/dashboard`;\r\n\r\n const params = {\r\n headers: {\r\n \"x-functions-key\": functionsKey,\r\n \"content-type\": \"application/json\",\r\n \"accept\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n return resp.json();\r\n })\r\n .then(json => {\r\n logAPI(\"MBHWeb.Api.Dashboard.BffDashboard\", start, url, json);\r\n return json;\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Dashboard.BffDashboard.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n\r\n};\r\n\r\n/**\r\n * get a specific xealthMessage with messageId\r\n * @param {any} token user's auth token\r\n * @param {any} messageId message id\r\n * @returns {any} the specific xealthMessage\r\n */\r\nexport const getXealthMessage = (token, messageId) => {\r\n const url = `${myBswHealthBffBaseUrl}v1/xealthmessage?messageId=${messageId}`;\r\n\r\n const params = {\r\n headers: {\r\n \"x-functions-key\": functionsKey,\r\n \"content-type\": \"application/json\",\r\n \"accept\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Dashboard.GetXealthMessage\", start, url);\r\n return resp.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Dashboard.GetXealthMessage.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n\r\n}; \r\n\r\n\r\nexport const getConditions = (token) => {\r\n const url = `${myBswHealthBffBaseUrl}conditions`;\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\",\r\n \"x-functions-key\": functionsKey\r\n },\r\n method: \"GET\"\r\n };\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Dashboard.VideoVisit.GetConditions\", start, url);\r\n return resp.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Dashboard.VideoVisit.GetConditions.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getTimeSlots = (token, clientUTCOffset, date) => {\r\n const providerId = typeof window !== 'undefined' && window.serverData.data.providerId ? window.serverData.data.providerId : '153284';\r\n\r\n const url = `${myBswHealthBffBaseUrl}slots?resIdtype=EXTERNAL&resid=${providerId}&clientutcoffset=${clientUTCOffset}&clienttoday=${date}`;\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\",\r\n \"x-functions-key\": functionsKey\r\n },\r\n method: \"GET\"\r\n };\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Dashboard.VideoVisit.GetTimeSlots\", start, url);\r\n if (resp.status === 200) return resp.json();\r\n else return resp;\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Dashboard.VideoVisit.GetTimeSlots.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const scheduleVideoVisit = (token, scheduleRequestData) => {\r\n const url = `${myBswHealthBffBaseUrl}v3/schedule`;\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\",\r\n \"x-functions-key\": functionsKey\r\n },\r\n body: JSON.stringify(scheduleRequestData.data),\r\n method: \"PUT\"\r\n };\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Dashboard.VideoVisit.ScheduleVideoVisit\", start, url);\r\n if (resp.status === 200) return resp.json();\r\n else return resp;\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Dashboard.VideoVisit.ScheduleVideoVisit.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n}; \r\n\r\nexport const ambulatorySurveyRequest = (token, surveyRequest) => {\r\n const url = `${surveyUrl}api/SurveyQuestionResponse`;\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\",\r\n \"x-functions-key\": functionsKey\r\n },\r\n body: JSON.stringify(surveyRequest.data),\r\n method: \"POST\"\r\n };\r\n const start = new Date();\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.AmbulatorySurvey.Success\", start, url);\r\n if (resp && resp.status === 200) return resp.status;\r\n else {\r\n return Promise.reject(resp);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.AmbulatorySurvey.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\nexport const eCheckInStatus = (userName, csnId, token) => {\r\n const url = `${apiBaseUrl}v4/epic/GeteCheckinStatus?userName=${encodeURIComponent(userName)}&CSNId=${csnId}`;\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Epic.VideoVisit.ECheckInStatus\", start, url);\r\n return resp.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Epic.VideoVisit.ECheckInStatus.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n//export const dcjSelfOrderApi = (token, myChartId, programId) => {\r\n// const url = `${surveyUrl}v1/partner/orders`;\r\n// const body = {\r\n// \"myChartId\": myChartId, \"programId\": programId\r\n// };\r\n// const params = {\r\n// headers: {\r\n// \"content-type\": \"application/json\",\r\n// \"accept\": \"application/json\",\r\n// \"Authorization\": `bearer ${token}`,\r\n// \"x-functions-key\": xealthApiFunctionskey\r\n// },\r\n// body: JSON.stringify(body),\r\n// method: \"POST\"\r\n// };\r\n// const start = new Date();\r\n// return fetch(url, params)\r\n// .then(resp => {\r\n// logAPI(\"MBHWeb.Api.Epic.DcjSelfOrder.Success\", start, url);\r\n// if (resp && resp.status === 200) return resp.status;\r\n// else {\r\n// return Promise.reject(resp);\r\n// }\r\n// })\r\n// .catch(err => {\r\n// logAPI(\"MBHWeb.Api.Epic.DcjSelfOrder.Failure\", start, url, err);\r\n// return Promise.reject(err);\r\n// });\r\n//};\r\n\r\n//export const dcjSelfOrderOptOut = (token, myChartId, programId) => {\r\n// const url = `${surveyUrl}v1/partner/optout`;\r\n// const body = {\r\n// \"MyChartId\": myChartId, \"ProgramId\": programId\r\n// };\r\n// const params = {\r\n// headers: {\r\n// \"content-type\": \"application/json\",\r\n// \"accept\": \"application/json\",\r\n// \"Authorization\": `bearer ${token}`,\r\n// \"x-functions-key\": xealthApiFunctionskey\r\n// },\r\n// body: JSON.stringify(body),\r\n// method: \"POST\"\r\n// };\r\n// const start = new Date();\r\n// return fetch(url, params)\r\n// .then(resp => {\r\n// logAPI(\"MBHWeb.Api.Epic.DcjSelfOrderOptOut.Success\", start, url, body);\r\n// if (resp && resp.status === 204) return resp.status;\r\n// else {\r\n// return Promise.reject(resp);\r\n// }\r\n// })\r\n// .catch(err => {\r\n// logAPI(\"MBHWeb.Api.Epic.DcjSelfOrderOptOut.Failure\", start, url, err);\r\n// return Promise.reject(err);\r\n// });\r\n//};\r\n\r\nexport const encryptCSN = (csnId, token) => {\r\n const url = `${apiBaseUrl}v3/Epic/EncryptCsn?csn=${csnId}`;\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Epic.EncryptCSN.Success\", start, url);\r\n return resp.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Epic.EncryptCSN.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getMyChartStatus = (myChartId, myChartIdType, token) => {\r\n const url = `${apiBaseUrl}v4/Epic/LookupPatientAndMyChartAccount`;\r\n const body = {\r\n \"ID\": myChartId, \"IDType\": myChartIdType\r\n };\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"content-type\": \"application/json\",\r\n \"accept\": \"application/json\"\r\n },\r\n body: JSON.stringify(body),\r\n method: \"POST\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.Epic.MyChartStatus.Success\", start, url);\r\n if (resp && resp.status === 200) return resp.json();\r\n else {\r\n return Promise.reject(resp);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Epic.MyChartStatus.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getCareCompanionEnrollStatus = (token, patientId) => {\r\n const fullUrl = `${apiBaseUrl}v6/epic/CareCompanionEnrollStatus?patientId=${patientId}&patientIdType=External`;\r\n\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Epic.CareCompanionEnrollStatus.Success\", start, fullUrl, null, patientId);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Epic.CareCompanionEnrollStatus.Failure\", start, fullUrl, error);\r\n // story 125109: enable care companion in the event of api failure\r\n return { CareCompanionEnrolled: true };\r\n //return Promise.reject(error);\r\n });\r\n};","import * as tools from \"../helpers/Tools\";\r\nimport { v4 as uuidv4 } from 'uuid';\r\n\r\nexport const gaAddToCart = (eventType, productId, productName, position, list, category, patientStatus, brand) => {\r\n window.dataLayer.push({ ecommerce: null }); //Clear the previous ecommerce object.\r\n window.dataLayer.push({\r\n event: eventType,\r\n ecommerce: {\r\n currencyCode: \"USD\",\r\n add: {\r\n actionField: {\r\n list:list,\r\n },\r\n products: [\r\n {\r\n id: productId,\r\n name: productName,\r\n category: category,\r\n dimension3: patientStatus,\r\n brand: brand,\r\n position: position, //index location API response ID\r\n quantity: 1, //total Loc count\r\n price: 0,\r\n },\r\n ],\r\n },\r\n },\r\n });\r\n };\r\n \r\nexport const gaCheckout = (eventType, pID, pName, locId, position, list, category, brand, variant, step, patientStatus, aptDate) => {\r\n const product = {\r\n id: pID,\r\n name: pName,\r\n category: category,\r\n brand: brand,\r\n dimension11: locId,\r\n brand: brand,\r\n position: position,\r\n quantity: 1,\r\n price: 0,\r\n step: step,\r\n dimension3: patientStatus\r\n }\r\n\r\n if (aptDate) {\r\n product.variant = variant;\r\n product.dimension7 = tools.getDayOfWeek(aptDate);\r\n product.dimension10 = aptDate;\r\n product.metric1 = 45;\r\n product.dimension3 = patientStatus;\r\n product.metric2 = aptDate ? tools.differenceInDays(aptDate, \"MM/DD/YYYY\") : \"\";\r\n }\r\n\r\n window.dataLayer.push({ ecommerce: null });\r\n \r\n window.dataLayer.push({\r\n event: eventType,\r\n \r\n ecommerce: {\r\n checkout: {\r\n actionField: {\r\n list:list,\r\n step,\r\n },\r\n \r\n products: [\r\n product,\r\n ],\r\n },\r\n },\r\n });\r\n };\r\n \r\n export const gaPurchase = (eventType,pID, pName, locId, provID, aptDate,position,list,category,brand,variant, patientStatus) => {\r\n \r\n let correlationId = uuidv4();\r\n window.dataLayer.push({ ecommerce: null });\r\n window.dataLayer.push({\r\n event:eventType,\r\n \r\n ecommerce: {\r\n purchase: {\r\n actionField: {\r\n id: correlationId,\r\n revenue: 0,\r\n tax: 0,\r\n shipping: 0,\r\n list: list,\r\n },\r\n products: [\r\n {\r\n id: pID,\r\n name: pName,\r\n category: category,\r\n brand: brand,\r\n variant: variant,\r\n dimension11: locId,\r\n dimension12: provID,\r\n dimension7: tools.getDayOfWeek(aptDate),\r\n //dimension6: aptTime,\r\n dimension3: patientStatus,\r\n dimension10: aptDate,\r\n metric1: 0,\r\n metric2: aptDate ? tools.differenceInDays(aptDate, \"MM/DD/YYYY\") : \"\",\r\n position: position,\r\n quantity: 1,\r\n price: 0,\r\n },\r\n ],\r\n },\r\n },\r\n });\r\n };\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst sGoogleKey = window.serverData.data.googleMapKey;\r\n\r\n/**\r\n* getGeoLocation\r\n* \r\n* @returns {Promise} ResultStructure\r\n*/\r\nexport const getGeoLocation = () => {\r\n\r\n const fullUrl = \"https://www.googleapis.com/geolocation/v1/geolocate?key=\" + sGoogleKey;\r\n const params = {\r\n headers: {\r\n \"Content-Type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n \"considerIp\": true\r\n }),\r\n method: \"POST\"\r\n };\r\n var start = new Date();\r\n return rawFetch(fullUrl, params).then(response => {\r\n //logAPI(\"MBHWeb.NotSureWeShouldLogThis\", start, fullUrl);\r\n try {\r\n return response.json();\r\n }\r\n catch (E) {\r\n return [{ isSuccessful: false }];\r\n }\r\n }).catch(err => {\r\n return { isSuccessful: false };\r\n });\r\n};\r\n\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as Tools from \"../helpers/Tools\";\r\n\r\nconst healthPlanApiUrl = typeof window !== 'undefined' ? window.serverData.data.healthPlanApiUrl : ''; // window is undefined during pre-render\r\nconst apiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : \"\";\r\n\r\nexport const getHealthPlanData = (token) => { \r\n const url = encodeURI( Tools.buildUrl( healthPlanApiUrl, '/api/v1/HealthSource/HealthPlan/SummaryEx')); \r\n const params = {\r\n method: 'get',\r\n headers: {\r\n 'Authorization': 'bearer ' + token\r\n }\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => { \r\n logAPI(\"MBHWeb.Api.HealthPlan.GetPlanData\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) { \r\n return Promise.resolve(response.json());\r\n } else { \r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.HealthPlan.GetPlanData.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getHealthPlans = (token) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v1/healthsource/app/GetHealthPlans`));\r\n const start = new Date();\r\n const params = {\r\n method: \"POST\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n return fetch(url, params).then(response => {\r\n if (response.status === 200) {\r\n logAPI(\"MBHWeb.Api.GetHealthPlans\", start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.GetHealthPlans.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getHealthPlanTileData = (token, loginId, healthPlanName) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthPlan/GetHealthPlanDashboardData?loginid=${loginId}`));\r\n const params = {\r\n method: 'get',\r\n headers: {\r\n 'Authorization': 'bearer ' + token\r\n }\r\n };\r\n const start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(`MBHWeb.Api.${healthPlanName}.DataTile`, start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(`MBHWeb.Api.${healthPlanName}.DataTile.Failure`, start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const linkAutoHPAccount = (token, memberId, username, loginProvider, userRole) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v2/HealthSource/Registration/ValidateAutoLinkedAccount`));\r\n const start = new Date();\r\n const data = { username: username, providerKey: memberId, loginProvider: loginProvider };\r\n const userCurrentRole = userRole ? userRole : \"SWHP\";\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(`MBHWeb.Api.${userCurrentRole}.AutoLink`, start, url);\r\n return response;\r\n }).catch(err => { logAPI(`MBHWeb.Api.${userCurrentRole}.AutoLink.Failure`, start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const linkHPAccount = (token, memberId, username, dob, ssn) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthSource/Registration/LinkHealthPlanAccount`));\r\n const start = new Date(); \r\n const data = { username: username, memberId: memberId, dob: dob, ssn : ssn };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.SWHP.Link\", start, url);\r\n if (response && response.status && response.status === 200) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.SWHP.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const unLinkHPAccount = (token, memberId, username) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthSource/Registration/UnlinkHealthPlan`));\r\n const start = new Date();\r\n const data = { username: username, memberid: memberId };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.SWHP.UnLink\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.SWHP.UnLink.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const linkAAAccount = (token, memberId, username, dob, ssn) => {\r\n const url = encodeURI( Tools.buildUrl( apiBaseUrl, `/v3/HealthSource/Registration/LinkAAL`));\r\n const start = new Date(); \r\n const data = { username: username, memberId: memberId, dob: dob, ssn : ssn };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.AA.Link\", start, url);\r\n if (response && response.status && response.status === 200) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.AA.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const unLinkAAAccount = (token, memberId, username) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthSource/Registration/UnlinkAAL`));\r\n const start = new Date();\r\n const data = { username: username, memberid: memberId };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.AA.UnLink\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.AA.UnLink.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const linkFirstCareAccount = (token, username, dob, memberId) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthSource/Registration/LinkHealthRulesFC`));\r\n const start = new Date();\r\n const data = { username, memberId, dob };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.FirstCare.Link\", start, url);\r\n if (response && response.status && response.status === 200) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.FirstCare.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const unlinkFirstCareAccount = (token, username, memberId ) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthSource/Registration/UnlinkHealthRulesFC`));\r\n const start = new Date();\r\n const data = { username, memberId };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.FirstCare.UnLink\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.FirstCare.UnLink.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const linkDartAccount = (token, username, dob) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, '/v3/HealthSource/Registration/LinkDART'));\r\n const start = new Date();\r\n const data = { username, dob };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n mode: \"no-cors\"\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Dart.Link\", start, url);\r\n if (response && response.status && response.status === 200) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Dart.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const unlinkDartAccount = (token, username) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthSource/Registration/UnlinkDART`));\r\n const start = new Date();\r\n const data = { username };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Dart.UnLink\", start, url);\r\n if (response && response.status && response.status === 200) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Dart.UnLink.Failure\", start, url, err); return Promise.reject(err); });\r\n}\r\n\r\nexport const linkWACOAccount = (token, username, dob) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, '/v3/HealthSource/Registration/LinkWACO'));\r\n const start = new Date();\r\n const data = { username, dob };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n mode: \"no-cors\"\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Waco.Link\", start, url);\r\n if (response && response.status && response.status === 200) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.WACO.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const unlinkWacoAccount = (token, username) => {\r\n const url = encodeURI(Tools.buildUrl(apiBaseUrl, `/v3/HealthSource/Registration/UnlinkWACO`));\r\n const start = new Date();\r\n const data = { username };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Waco.UnLink\", start, url);\r\n if (response && response.status && response.status === 200) {\r\n return Promise.resolve(response.json());\r\n }\r\n else return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Waco.UnLink.Failure\", start, url, err); return Promise.reject(err); });\r\n}","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\n\r\nexport const getUserAccountSettings = (token) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), 'NotificationPreferences/UserNotificationPreferences/'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.NotificationPreferences.GetUserAccountSettings\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.NotificationPreferences.GetUserAccountSettings.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const updateUserAccountSettings = (token, requestBody) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/NotificationPreferences/UpdateUserNotificationPreferences/'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(requestBody)\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.NotificationPreferences.UpdateNotificationPreferences\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.NotificationPreferences.UpdateNotificationPreferences.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const triggerPaperDocumentPrint = (token, correspondenceTypeId, memberId, username, requestDate) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/NotificationPreferences/TriggerPaperDocumentPrint/'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n deliveryRequestId: 0,\r\n correspondenceTypeId: correspondenceTypeId,\r\n recipientEntityHccId: memberId,\r\n username: username,\r\n recipientEntityTypeName: \"Membership\",\r\n requestSourceCode: \"Portal\",\r\n requestDate: requestDate,\r\n deliveryMethodCode: \"Mail\"\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.NotificationPreferences.TriggerPaperDocumentPrint\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.NotificationPreferences.TriggerPaperDocumentPrint.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\n\r\nexport const getAuthorizationsList = (token, memId, startDate, endDate) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/Authorizations/member/'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId,\r\n serviceStartDate: startDate,\r\n serviceEndDate: endDate\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Authorizations.GetAuthorizationsList\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Authorizations.GetAuthorizationsList.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getAuthorizationDetail = (token, memId, authorizationHccId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/Authorizations/member/detail/'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId,\r\n authorizationId: authorizationHccId,\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Authorizations.GetAuthorizationDetail\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Authorizations.GetAuthorizationDetail.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\nexport const getPlanDetails = (token, memId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/members/benefits/detail'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetPlanDetail\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetPlanDetail.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getBenefitPlans = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl( tools.hpAPIBaseURL(), '/benefits/benefitPlans'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Usage.GetBenefitPlanData\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Usage.GetBenefitPlanData.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getAccumulators = (token, memId, asOfDate, includeAll) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/members/benefits/accumulators'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId,\r\n serviceDate: asOfDate,\r\n includeAll: includeAll\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Usage.GetUsageData\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Usage.GetUsageData.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getServiceCategories = (token, memId, asOfDate) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/benefits/accumulators'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId,\r\n serviceDate: asOfDate,\r\n includeAll: true,\r\n serviceCategoriesOnly: true\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetServiceCategories\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetServiceCategories.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getIsMemberDPCFlag = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/member/isMemberDPC'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.getIsMemberDPCFlag\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.getIsMemberDPCFlag.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\n\r\nexport const getClaimsList = (token, memId, startDate, endDate) => {\r\n //const url = encodeURI(`${webTpaApiUrl}/members/claims/list`); webTPA url\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/members/claims/list'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId,\r\n startdate: startDate,\r\n enddate: endDate\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Claims.GetClaimsList\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Claims.GetClaimsList.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getClaimDetail = (token, memId, claimId) => {\r\n //const url = encodeURI(`${webTpaApiUrl}/members/claims/detail`);\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/members/claims/detail'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId,\r\n claimid: claimId,\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Claims.GetClaimDetail\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Claims.GetClaimDetail.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const submitClaimAppeal = (token, relatedClaims, relatedMembers, relatedUserAccountName, description) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/issue/servicerequest'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n 'RequestType': 'MemberClaimAppeal',\r\n 'RequestSource': 'Member',\r\n 'RequestMedium': 'Portal',\r\n 'Description': description,\r\n 'RelatedUserAccountName': relatedUserAccountName,\r\n 'RelatedMembers': relatedMembers,\r\n 'RelatedClaims': relatedClaims\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Claims.SubmitClaimAppeal\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Claims.SubmitClaimAppeal.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\n\r\nexport const getAuthorizationApprovalLetterUrl = (token, authHccId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/document/AuthApprovalLetter/Member/'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n AuthorizationHccId: authHccId\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetAuthorizationApprovalLetter\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetAuthorizationApprovalLetter\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getBenefitDocuments = (token, planId, memId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/document/benefits/list'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n benefitId: planId,\r\n memberId: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetBenefitDocuments\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetBenefitDocuments.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getBenefitDocument = (token, documentName) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/document/benefits/benefitDocument'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n documentName: documentName,\r\n })\r\n };\r\n\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetBenefitDocument\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetBenefitDocument.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getDocumentsList = (token) => {\r\n //const url = encodeURI(`${webTpaApiUrl}/members/claims/list`); webTPA url\r\n let url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/document/importantdocs/'));\r\n //TODO-revisit after 9/1\r\n if (url.toLowerCase().includes(\"/ami/\")) {\r\n url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/document/amisysimportantdocs/'));\r\n url = url.toLowerCase().replace(\"/ami/\", \"/hr/\"); \r\n }\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GettDocumentsList\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetDocumentsList.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getDocumentDetails = (token, fileId) => {\r\n //const url = encodeURI(`${webTpaApiUrl}/members/claims/list`); webTPA url\r\n let url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/document/docfile/'));\r\n if (url.toLowerCase().includes(\"/ami/\")) {\r\n url = url.toLowerCase().replace(\"/ami/\", \"/hr/\");//TODO-revisit after 9/1\r\n }\r\n \r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n FileId: fileId,\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GettDocumentDetails\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n //return Promise.resolve(response.status === 204 ? { status: 204, message: \"No document was found\" } : response.blob());\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetDocumentDetails.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getInvoicePDF = (token, MemberID, InvoiceNumber) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/document/invoice'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n MemberID: MemberID,\r\n InvoiceNumber: InvoiceNumber\r\n })\r\n };\r\n\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetDocumentInvoicePDF\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetDocumentInvoicePDF.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getIdCardPdf = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/members/documents/idcard'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId,\r\n format: \"pdf\" // Media Type\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.IdCard.GetIdCard\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.IdCard.GetIdCard.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getIdCardImage = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/members/documents/idcard'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId,\r\n format: \"png\" // Media Type\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.IdCard.GetIdCardImage\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.IdCard.GetIdCardImage.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const requestIdCard = (token, memId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/correspondence/idcard'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId,\r\n reason: \"\"\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.IdCard.RequestNewIdCard\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response);\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.IdCard.RequestNewIdCard.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getEobDocument = (token, memId, claimId) => {\r\n //const url = encodeURI(`${webTpaApiUrl}/members/documents/eob`);\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/members/documents/eob'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n claimid: claimId,\r\n memid: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Claims.GetEobDocument\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.status === 204 ? { status: 204, message: \"No EOB was found\" } : response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Claims.GetEobDocument.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n}\r\n\r\nexport const getForm = (token, formName) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/document/forms'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n documentName: formName,\r\n })\r\n };\r\n\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetForm\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Documents.GetForm.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\nexport const getGroupedProcedures = (token, memId) => {\r\n let baseUrl = tools.ciReplace(window.serverData.data.hpGatewayUrl, \"WTPA\", \"HR\");\r\n const url = encodeURI(tools.buildUrl(baseUrl, 'members/benefits/getgroupedcostprocedures'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProcedures\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProcedures.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getGroupedProceduresByCPT = (token, memId) => {\r\n let baseUrl = tools.ciReplace(window.serverData.data.hpGatewayUrl, \"WTPA\", \"HR\");\r\n const url = encodeURI(tools.buildUrl(baseUrl, 'members/benefits/getgroupedcostproceduresbycpt'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProceduresByCPT\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProceduresByCPT.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getProcedureCostValues2 = (token, MemberNumber, GroupDescript) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/member/benefits/getproccostvals2'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n MEMBER_NBR: MemberNumber,\r\n BENEFIT_NAME: GroupDescript?.benefit_name\r\n\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProcedures\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProcedures.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getProceduresCost = (token, procedureId, groupDescript, cptCode, copay, coinsurance, has_deductible, deductible_remaining, oop_remaining) => {\r\n let baseUrl = tools.ciReplace(window.serverData.data.hpGatewayUrl, \"WTPA\", \"HR\");\r\n const url = encodeURI(tools.buildUrl(baseUrl, 'members/benefits/getproccosts'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n GROUP_DESCRIPT: groupDescript,\r\n CPT_CODE: cptCode,\r\n PROCEDURE_ID: procedureId,\r\n COPAY: copay,\r\n COINSURANCE: coinsurance,\r\n HAS_DEDUCTIBLE: has_deductible,\r\n DEDUCTIBLE_REMAINING: deductible_remaining,\r\n OOP_REMAINING: oop_remaining\r\n\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProcedures\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Benefits.GetGroupedCostProcedures.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\nexport const getInvoicesList = (token, subscriptionHccId, fromDate, toDate) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/invoices/getinvoicesbydate/'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n subscriptionHccId: subscriptionHccId,\r\n FromDate: fromDate,\r\n ToDate: toDate,\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Invoices.GettInvoicesList\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Invoices.GetInvoicesList.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getInvoiceDetails = (token, invoiceId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/invoices/details'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n InvoiceNumber: invoiceId,\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Invoices.GettInvoiceDetails\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Invoices.GettInvoiceDetails.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getInvoiceAdjustments = (token, invoiceId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/invoices/details/adjustments'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n InvoiceNumber: invoiceId,\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Invoices.GetInvoiceAdjustments\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Invoices.GetInvoiceAdjustments.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getDentalInvoiceDetails = (token, memberId) => {\r\n\r\n let oState = window.store.getState();\r\n let prefix = oState.domain.pre ? oState.domain.pre : \"AMI\"; //this will only be called for AMISYS users\r\n let baseURL = tools.ciReplace(window.serverData.data.hpGatewayUrl, \"WTPA\", prefix);\r\n const url = encodeURI(tools.buildUrl(baseURL, '/members/dental/invoicedetails'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memberId,\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Dental.GetDentalInvoiceDetails\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Dental.GetDentalInvoiceDetails\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\nexport const getSubscription = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/member/subscription'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n MemberHccId: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Members.GetSubscription\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlan.Members.GetSubscription.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getListOfMembers = (token, memId) => {\r\n const url = encodeURI( tools.buildUrl( tools.hpAPIBaseURL(), '/members/list'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Members.GetMembersList\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlan.Members.GetMembersList.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getMemberProfile = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/members/profile'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Members.GetMembersProfile\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Members.GetMembersProfile.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const updateMemberAddress = (token, memid, email, address1, address2, city, state, zip, phone) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/member/address'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n AppliesToAddressTypes: [\"Home\", \"Mailing\"],\r\n AppliesToMembers: [memid],\r\n AddressInfo: {\r\n Type: \"Mailing\",\r\n EmailAddress: email,\r\n AddressLine1: address1,\r\n AddressLine2: address2,\r\n City: city,\r\n State: state,\r\n ZipCode: zip,\r\n Telephones: phone ? [{\r\n PhoneType: \"Home\",\r\n AreaCode: phone.length > 3 ? phone.substring(0, 3) : null,\r\n Number: phone\r\n }] : []\r\n }\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Members.UpdateMemberAddress\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(params);\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Members.UpdateMemberAddress.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getCorrespondenceEmailAddress = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/member/getCorrespondenceEmailAddress'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n MemberId: memId\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Members.GetCorrespondenceEmailAddress\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Members.GetCorrespondenceEmailAddress.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\nexport const getOtherCoverage = (token, memId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), 'member/otherinsurance'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n MemberId: memId\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.OtherCoverage.GetOtherInsurance\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.OtherCoverage.GetOtherInsurance.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const updateOtherCoverage = (token, memId, subName, subBirthDate, subGender, rltpToSub, policyType, mbi, coverageType,\r\n planName, altPolicyNum, groupName, groupNumber, priority, isCourtOrdered, isRetiree, companyName, address, address2, city, state, zip, area, phoneNumber, extension, startDate, policyId) => {\r\n const url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), 'member/updateotherinsurance'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n MemberId: memId,\r\n SubscriberName: subName,\r\n SubscriberBirthDate: subBirthDate,\r\n SubscriberGenderCode: subGender,\r\n RelationToSubscriber: rltpToSub,\r\n PolicyType: policyType,\r\n MBI: mbi,\r\n CoverageType: coverageType,\r\n BenefitPlanName: planName,\r\n AlternatePolicyNumber: altPolicyNum,\r\n GroupName: groupName,\r\n GroupNumber: groupNumber,\r\n Priority: priority,\r\n IsCourtOrdered: isCourtOrdered,\r\n IsRetiree: isRetiree,\r\n CompanyName: companyName,\r\n CompanyAddress: address && city && state && zip ? {\r\n Type: \"Mailing\",\r\n AddressLine1: address,\r\n AddressLine2: address2,\r\n City: city,\r\n State: state,\r\n ZipCode: zip,\r\n Telephones: phoneNumber && area ? [{\r\n PhoneType: \"Home\",\r\n AreaCode: area,\r\n Number: phoneNumber,\r\n Extension: extension\r\n }] : []\r\n } : null,\r\n StartDate: startDate,\r\n PolicySystemId: policyId ? policyId : 0//for updates\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.OtherCoverage.UpdateOtherInsurance\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.OtherCoverage.UpdateOtherInsurance.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import * as tools from \"../../helpers/Tools\";\r\nimport { logAPI } from \"../andyliticsApi\";\r\n\r\nexport const getProcessControlEvents = (token, memId) => {\r\n\r\n const url = encodeURI(tools.buildUrl(tools.ciReplace(tools.hrAPIBaseURL(), \"/v1\", \"\"),\r\n '/ProcessControlEvents/Client/NonExpired/1?eventTypeNames=CombinedPortalMaintenance&eventTypeNames=PortalMaintenance'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId\r\n })\r\n };\r\n\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.ProcessControlEvents.GetEvents\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.ProcessControlEvents.GetEvents.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n}\r\n\r\nexport const getSupportNoticeEvents = (token, memId) => {\r\n\r\n const url = encodeURI(tools.buildUrl(tools.ciReplace(tools.hrAPIBaseURL(), \"/v1\", \"\"),\r\n '/ProcessControlEvents/Client/NonExpired/1?eventTypeNames=SupportNotice'));\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memberId: memId\r\n })\r\n };\r\n\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.ProcessControlEvents.GetEvents\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text().then(function (text) {\r\n return text ? JSON.parse(text) : []\r\n }));\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.ProcessControlEvents.GetEvents.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n}","import { logAPI } from \"../andyliticsApi\";\r\nimport { select, call } from \"redux-saga/effects\";\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\n//const hpServicesUrl = typeof window !== 'undefined' ? window.serverData.data.hpServicesUrl : ''; // window is undefined during pre-render\r\n\r\n//tells api where to go\r\nexport var SsoTargets = {\r\n alere: \"Alere\",\r\n vitals: \"Vitals\",\r\n navitus: \"Navitus\",\r\n bSwift: \"BSwift\",\r\n telemedicine: \"Telemedicine\",\r\n lifeBalance: \"LifeBalance\",\r\n optumRX: \"OptumRX\",\r\n invoicePayments: \"InvoicePayments\",\r\n naturallySlim: \"NaturallySlim\",\r\n optumWellness: \"OptumWellness\",\r\n mdLive: \"MDLive\",\r\n thrive: \"Thrive\",\r\n boa: \"BOA\",\r\n webMD: \"WebMD\"\r\n}\r\n\r\n//role required for authorized sso\r\nexport var PortalRoles = {\r\n optumRXSsoUsers: \"OptumRxSsoUsers\",\r\n alereSsoUsers: \"AlereSsoUsers\",\r\n bSwiftSsoUsers: \"BSwiftSsoUsers\",\r\n vitalsSsoUsers: \"VitalsSsoUsers\",\r\n navitusSsoUsers: \"NavitusSsoUsers\",\r\n telemedicineSsoUsers: \"TelemedicineSsoUsers\",\r\n lifeBalanceSsoUsers: \"LifeBalanceSsoUsers\",\r\n invoicePaymentSsoUsers: \"InvoicePaymentSsoUsers\",\r\n naturallySlimSsoUsers: \"NaturallySlimSsoUsers\",\r\n webMDSsoUsers: \"WebMDSsoUsers\"\r\n}\r\n\r\n//target to role mapping\r\nvar targetToRequiredRole = {};\r\ntargetToRequiredRole[SsoTargets.alere] = PortalRoles.alereSsoUsers;\r\ntargetToRequiredRole[SsoTargets.vitals] = PortalRoles.vitalsSsoUsers;\r\ntargetToRequiredRole[SsoTargets.navitus] = PortalRoles.navitusSsoUsers;\r\ntargetToRequiredRole[SsoTargets.bSwift] = PortalRoles.bSwiftSsoUsers;\r\ntargetToRequiredRole[SsoTargets.telemedicine] = PortalRoles.telemedicineSsoUsers;\r\ntargetToRequiredRole[SsoTargets.lifeBalance] = PortalRoles.lifeBalanceSsoUsers;\r\ntargetToRequiredRole[SsoTargets.optumRX] = PortalRoles.optumRXSsoUsers;\r\ntargetToRequiredRole[SsoTargets.invoicePayments] = PortalRoles.invoicePaymentSsoUsers;\r\ntargetToRequiredRole[SsoTargets.naturallySlim] = PortalRoles.naturallySlimSsoUsers;\r\ntargetToRequiredRole[SsoTargets.webMD] = PortalRoles.webMDSsoUsers;\r\n\r\nexport function* getUrl(ssoTarget) {\r\n const domainData = yield select((state) => state.domain);\r\n const sessionData = yield select((state) => state.session);\r\n var identity = sessionData.healthPlanUserProfile;\r\n\r\n var requiredRole = targetToRequiredRole[ssoTarget];\r\n if (!requiredRole) {\r\n console.log('sso fail - no target/role found');\r\n return \"\";\r\n }\r\n\r\n const ssoUrl = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/SsoResponse/'));\r\n //if in required role, build url\r\n return identity.roles.includes(requiredRole) ? `${ssoUrl}` : \"\";\r\n}\r\n\r\nexport function* startSso(ssoTarget, isAmysis, contractNo) {\r\n const start = new Date();\r\n const domainData = yield select((state) => state.domain);\r\n const sessionData = yield select((state) => state.session);\r\n\r\n let ssoWindow = window.open(\"\", \"_blank\");\r\n ssoWindow.document.write('you will be redirected shortly...' + '
');\r\n let url = \"\";\r\n if (isAmysis) {\r\n url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/SsoResponse/'));\r\n }\r\n else {\r\n url = yield call(getUrl, ssoTarget);\r\n }\r\n\r\n if (url === \"\") throw new Error(\"SSO for user not authorized\");\r\n\r\n var identity = sessionData.healthPlanUserProfile;\r\n var token = domainData.t;\r\n let par;\r\n var memid = domainData.hi || identity.memberUserClaims.memberHccId;\r\n if (isAmysis) {\r\n if (contractNo) {\r\n par = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n SsoTarget: ssoTarget,\r\n Id: memid,\r\n ContractNumber: contractNo\r\n })\r\n };\r\n }\r\n else {\r\n par = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n SsoTarget: ssoTarget,\r\n Id: memid\r\n })\r\n };\r\n }\r\n }\r\n else {\r\n par = {\r\n method: 'post',\r\n headers: {\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n SsoTarget: ssoTarget,\r\n Id: memid,\r\n Jwt: token\r\n })\r\n };\r\n }\r\n\r\n var response = yield fetch(url, par).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.SSO.SsoSaml\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.SSO.SsoSaml.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n\r\n ssoWindow.document.write(response.OpeningMessage + '
');\r\n if (!response.Success) {\r\n //Error handling\r\n ssoWindow.document.write(response.ErrorMessage ? esponse.ErrorMessage : 'Sorry, something went wrong.');\r\n throw new Error(\"Sorry, something went wrong.\");\r\n }\r\n\r\n if (response.UseRedirectToUrl) {\r\n console.log('redirecting to', url);\r\n ssoWindow.location.replace(response.Url);\r\n }\r\n\r\n const params = {\r\n RelayState: response.RelayState,\r\n SAMLResponse: response.SamlText,\r\n Jwt: response.Jwt,\r\n ClientId: response.ClientId\r\n };\r\n console.log('params 2', params);\r\n yield call(formPostSubmit, ssoWindow, response.Url, params, \"post\");\r\n}\r\n\r\nfunction* formPostSubmit(ssoWindow, url, params, method) {\r\n const form = ssoWindow.document.createElement('form');\r\n form.method = method || \"post\";\r\n form.action = url;\r\n\r\n for (const key in params) {\r\n if (params.hasOwnProperty(key)) {\r\n const hiddenField = document.createElement('input');\r\n hiddenField.type = 'hidden';\r\n hiddenField.name = key;\r\n hiddenField.value = params[key];\r\n\r\n form.appendChild(hiddenField);\r\n }\r\n }\r\n\r\n ssoWindow.document.body.appendChild(form);\r\n form.submit();\r\n console.log('form submitted');\r\n}","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\n// this needs to be loaded dynamically (since it will change after startup)\r\n//const hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\nexport const getCrmMemberMessages = (token, correlationId, sessionId, swhp, memId, startDate, endDate, hpSourceSystem) => {\r\n\r\n //to debug locally, be sure to set the HPGatewayURL value in the app.TST2.config to \"http://localhost:59812/api/v1/\"\r\n let url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/crm/getMemberMessages'));\r\n\r\n //Amisys and HR members will both use the same API route\r\n if (swhp) {\r\n var regEx = new RegExp(\"AMI\", \"ig\");\r\n url = url.replace(regEx, \"HR\");\r\n }\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n correlationId: correlationId,\r\n sessionId: sessionId,\r\n memberId: memId,\r\n dateFrom: startDate,\r\n dateTo: endDate,\r\n hpSourceSystem: hpSourceSystem\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Support.GetCrmMemberMessages\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Support.GetCrmMemberMessages.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const sendCrmMessage = (token, correlationId, sessionId, swhp, memId, msgType, msgDesc, fileName, attachment, caseid, title, mimetype, hpSourceSystem) => {\r\n\r\n //to debug locally, be sure to set the HPGatewayURL value in the app.TST2.config to \"http://localhost:59812/api/v1/\"\r\n let url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/crm/sendMessage'));\r\n\r\n //Amisys and HR members will both use the same API route\r\n if (swhp) {\r\n var regEx = new RegExp(\"AMI\", \"ig\");\r\n url = url.replace(regEx, \"HR\");\r\n }\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n correlationId: correlationId,\r\n sessionId: sessionId,\r\n memberId: memId,\r\n messageType: msgType,\r\n messageDescription: msgDesc,\r\n fileName: fileName,\r\n attachment: attachment,\r\n caseid: caseid,\r\n title: title,\r\n mimetype: mimetype,\r\n hpSourceSystem: hpSourceSystem\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Support.SendCrmMessage\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Support.SendCrmMessage.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const createCrmTicket = (token, correlationId, sessionId, swhp, memId, msgType, msgDesc, fileName, attachment, title, mimetype, hpSourceSystem) => {\r\n\r\n //to debug locally, be sure to set the HPGatewayURL value in the app.TST2.config to \"http://localhost:59812/api/v1/\"\r\n let url = encodeURI(tools.buildUrl(tools.hpAPIBaseURL(), '/crm/createTicket'));\r\n\r\n //Amisys and HR members will both use the same API route\r\n if (swhp) {\r\n var regEx = new RegExp(\"AMI\", \"ig\");\r\n url = url.replace(regEx, \"HR\");\r\n }\r\n\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n correlationId: correlationId,\r\n sessionId: sessionId,\r\n memberId: memId,\r\n messageType: msgType,\r\n messageDescription: msgDesc,\r\n fileName: fileName,\r\n attachment: attachment,\r\n title: title,\r\n mimetype: mimetype,\r\n hpSourceSystem: hpSourceSystem\r\n })\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Support.CreateCrmTicket\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.Support.CreateCrmTicket.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n","import { logAPI } from \"../andyliticsApi\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\nimport * as tools from \"../../helpers/Tools\";\r\n\r\nexport const getTaxFormsList = (token, MemberNumber) => {\r\n const url = encodeURI(tools.buildUrl(tools.hrAPIBaseURL(), 'members/documents/taxforms'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: MemberNumber\r\n })\r\n };\r\n var start = new Date();\r\n //debugger;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.TaxForms.getTaxFormsList\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.TaxForms.getTaxFormsList.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getTaxFormUrl = (token, DocumentInfo, MemberNumber) => {\r\n //let baseUrl = tools.ciReplace(window.serverData.data.hpGatewayUrl, \"WTPA\", \"HR\");\r\n const url = encodeURI(tools.buildUrl(tools.hrAPIBaseURL(), 'members/documents/gettaxformurl'));\r\n const params = {\r\n method: 'post',\r\n headers: {\r\n 'Authorization': 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n memid: MemberNumber,\r\n documentName: DocumentInfo\r\n })\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.TaxForms.getTaxFormUrl\", start, url);\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.blob());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.HealthPlanServices.TaxForms.getTaxFormUrl.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};","import * as types from \"../constants/actionTypes\";\r\nimport { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as AuthorizationsApi from './healthPlanServices/authorizationsApi';\r\nimport * as BenefitsApi from './healthPlanServices/benefitsApi';\r\nimport * as ClaimsApi from './healthPlanServices/claimsApi';\r\nimport * as DocumentsApi from './healthPlanServices/documentsApi';\r\nimport * as InvoiceApi from './healthPlanServices/invoiceApi';\r\nimport * as MemberApi from './healthPlanServices/memberApi';\r\nimport * as SupportApi from './healthPlanServices/supportApi';\r\nimport * as SsoApi from './healthPlanServices/ssoApi';\r\nimport * as OtherCoverageApi from './healthPlanServices/otherCoverageApi';\r\nimport * as ProcessControlEventsApi from './healthPlanServices/processControlEventsApi';\r\nimport * as NotificationPreferencesApi from './healthPlanServices/NotificationPreferencesApi';\r\nimport * as EstimatorApi from './healthPlanServices/estimatorApi';\r\nimport * as TaxFormsApi from './healthPlanServices/taxFormsApi';\r\nimport * as tools from \"../helpers/Tools\";\r\nconst webTpaApiUrl = typeof window !== 'undefined' ? window.serverData.data.webTPAUrl : ''; // window is undefined during pre-render\r\nconst hpServicesUrl = typeof window !== 'undefined' ? (window.serverData.data.hpServicesSpecificUrl ? window.serverData.data.hpServicesSpecificUrl : window.serverData.data.hpServicesUrl) : ''; // window is undefined during pre-render\r\n\r\nexport {\r\n AuthorizationsApi,\r\n BenefitsApi,\r\n ClaimsApi,\r\n DocumentsApi,\r\n InvoiceApi,\r\n MemberApi,\r\n SupportApi,\r\n SsoApi,\r\n TaxFormsApi,\r\n OtherCoverageApi,\r\n NotificationPreferencesApi,\r\n EstimatorApi,\r\n ProcessControlEventsApi\r\n}\r\n\r\nexport const getFCHPUserData = (token, sPrefix) => {\r\n let hpParams = {\r\n method: \"POST\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n \"loginOrganization\": \"FCHP\"\r\n })\r\n };\r\n\r\n //var url = \"http://localhost:60512/api/SecurityTokens/v1/Authenticate\"\r\n //var url = hpServicesUrl + \"/oauth/token\"; // \"https://apis-sand-scentral.bswhive.com/ApiGatewayApi/api/SecurityTokens/v1/Authenticate\";\r\n var url = tools.buildUrl(tools.hpAPIBaseURL(), '/oauth/token')\r\n if (sPrefix === \"HR\") {\r\n return webtpaFetch(url, hpParams).then(res => { //make hp call to our apis\r\n //debugger;\r\n if (res.status !== 200) return null;\r\n return res.json().then(identity => { //if call succeeded, get the token\r\n //window.store.dispatch({ type: types.HP_USERDATA_STORETOKEN, token: token });\r\n //url = hpServicesUrl + \"/SecurityTokens/ValidateJwt?token=\" + token;\r\n //return webtpaFetch(url).then(identityResponse => {\r\n // return identityResponse.json().then(identityObject => {\r\n // return identityObject;\r\n // });\r\n //});\r\n return identity;\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport const getUserPayerData = (token, hpPayerId) => {\r\n var url = tools.buildUrl(tools.hpAPIBaseURL(), '/member/ismemberpayer');\r\n\r\n let hpParams = {\r\n method: \"POST\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify({\r\n MemberId: hpPayerId\r\n })\r\n };\r\n\r\n return fetch(url, hpParams).then(response => {\r\n if (response && response.status && response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n });\r\n};\r\n\r\nexport const webtpaFetch = (url, params) => {\r\n if (typeof params === \"undefined\" || params === null) {\r\n params = { method: \"GET\" }\r\n }\r\n params.headers = params.headers || {};\r\n params.headers[\"Accept\"] = \"application/json\";\r\n params.headers[\"Content-type\"] = \"application/json\";\r\n params.headers[\"Cache-Control\"] = \"no-cache\";\r\n params.headers[\"Pragma\"] = \"no-cache\";\r\n\r\n return fetchWithCreds(url, params);\r\n}","import { logAndylitics, log, logAPI} from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst healthSourceApiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : ''; // window is undefined during pre-render\r\n\r\nexport const linkPharmacyAccount = (token, data) => {\r\n const url = encodeURI(tools.buildUrl( healthSourceApiBaseUrl, '/v3/HealthSource/Registration/LinkPharmacyAccount'));\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n let start = new Date();\r\n\r\n //201 Created we are getting from Post success.\r\n return fetch(url, params).then(response => {\r\n if (response && response.status && (response.status === 200 || response.status === 201)) {\r\n logAPI(\"MBHWeb.Api.Rx.PharmacyAccount.Link\", start, url);\r\n return response.json();\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.PharmacyAccount.Link.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getUserTilesByClientData = (token) => {\r\n const url = encodeURI( tools.buildUrl( healthSourceApiBaseUrl, '/v1/HealthSource/AppTiles/GetUserTilesByClient'));\r\n const params = {\r\n method: 'get',\r\n headers: {\r\n 'Authorization': 'bearer ' + token\r\n }\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Dashboard.GetUserTilesByClient\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Dashboard.GetUserTilesByClient.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const removeSlideTile = (tileId,token) => { \r\n const url = tools.buildUrl( healthSourceApiBaseUrl, '/v1/HealthSource/AppTiles/DismissTile?tileId=' +tileId);\r\n const params = {\r\n method: \"POST\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n \r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.DismissTile\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.DismissTile.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n/**\r\n * getProviderFavorites\r\n * \r\n * @param {string} userName = user's healthsource name\r\n * @param {string} token = current user token\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const getProviderFavorites = (userName, token) => {\r\n const url = tools.buildUrl( healthSourceApiBaseUrl, '/v2/HealthSource/UserProvider/GetFavorites?userName=' + encodeURIComponent(userName));\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n //throw new Error(\"Testing sideways explosion!'\");\r\n logAPI(\"MBHWeb.Api.Settings.Favorites.Full.Get\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(problems => {\r\n //debugger;\r\n logAPI(\"MBHWeb.Api.Settings.Favorites.Full.Get.Failure\", start, url, problems); //changed the activityName as previous success log name\r\n return Promise.resolve( null);\r\n\r\n });\r\n};\r\n\r\n\r\nexport const getRecentVisitedDoctors = (token) => {\r\n const url = tools.buildUrl(healthSourceApiBaseUrl, '/v6/Dashboard/Section/doctors');\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Recent.VisitedDoctors.Get\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(problems => {\r\n logAPI(\"MBHWeb.Api.Recent.VisitedDoctors.Get\", start, url, problems); //changed the activityName as previous success log name\r\n return Promise.resolve(problems);\r\n });\r\n};\r\n\r\n/**\r\n * removeProviderFromFavorites\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} userName = user's healthsource name\r\n * @param {string} npi = npi of provider to remove\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const removeProviderFromFavorites = (token, userName, npi) => {\r\n const url = tools.buildUrl( healthSourceApiBaseUrl, '/v2/HealthSource/UserProvider/DeleteUserProvider');\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ProviderNPI: npi, IsFavorited: false, IsHidden: true, UserName: userName }),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.Favorite.Delete\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.Favorite.Delete.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n * addProviderToFavorites\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} userName = user's healthsource name\r\n * @param {string} npi = npi of provider to add\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const addProviderToFavorites = (token, userName, npi) => {\r\n const url = tools.buildUrl( healthSourceApiBaseUrl, '/v2/HealthSource/UserProvider/SaveUserProvider');\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ ProviderNPI: npi, IsFavorited: true, IsHidden: false, UserName: userName }),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Settings.Favorites.Save\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Settings.Favorites.Save.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n/**\r\n * getCareTeam\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} userName = user's healthsource name\r\n * @param {string} EPID = our login structure calls this EPID, we pass to epic as EID\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const getCareTeam = (token, userName, EPID) => {\r\n const url = tools.buildUrl( healthSourceApiBaseUrl, '/v2/Epic/GetCareTeamInfo?loginId=' + encodeURIComponent(userName) + '&patientId=' + EPID + '&patientIdType=EID');\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n //throw new Error(\"Eat my shorts, man!\");\r\n logAPI(\"MBHWeb.Api.Setting.RecentProviders.Get\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(problems => {\r\n //debugger;\r\n // Log logAndylitics here\r\n logAPI(\"MBHWeb.Api.Setting.RecentProviders.Get.Failure\", start, url, problems);\r\n return Promise.resolve(null);\r\n\r\n //alert(\"Oh crap!!\");\r\n });\r\n};\r\n\r\n/**\r\n * autolinkMyChart\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} userName = user's healthsource name\r\n * @param {string} dob = user's date of Birth\r\n * @returns {Promise} ResultStructure\r\n */\r\nexport const autolinkMyChart = (token, userName, dob) => {\r\n const url = tools.buildUrl( healthSourceApiBaseUrl, 'v2/HealthSource/Registration/LinkMyChart');\r\n const activityCode = \"MBHWeb.Api.HealthSource.AutoLink.MyChart\";\r\n const start = new Date();\r\n const data = { username: userName, dob: dob };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n logAPI(activityCode, start, url);\r\n if (response && response.status && response.status === 200)\r\n return response.text().length ? response.json() : { status: 200 };\r\n else return response.json();\r\n }).catch(err => { logAPI(activityCode+\".Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const dismissDiscoveryTile = (token, tile) => {\r\n const url = tools.buildUrl(healthSourceApiBaseUrl, `v6/Dashboard/UserAppTile/${tile.tileId}`);\r\n const activityCode = \"MBHWeb.Api.HealthSource.DiscoverTile.Dismiss\";\r\n const start = new Date();\r\n const data = { tileId: tile.tileId };\r\n const params = {\r\n method: \"PUT\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n console.info(`healthSourceApi dismissDiscoveryTile tileId ${tile.tileId} url ${url}`, tile);\r\n return fetch(url, params).then(response => {\r\n logAPI(activityCode, start, url);\r\n if (response && response.status && response.status === 204)\r\n return { status: 200 };\r\n else return response.json();\r\n }).catch(err => { logAPI(activityCode + \".Failure\", start, url, err); return Promise.reject(err);});\r\n}\r\n\r\nexport const unDismissDiscoveryTiles = (token) => {\r\n const params = {\r\n method: \"PUT\",\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n const ids = [81, 82, 83, 84, 85,86];\r\n ids.forEach(id => {\r\n const url = tools.buildUrl(healthSourceApiBaseUrl, `v6/Dashboard/UserAppTile/${id}?isDismissed=false`);\r\n fetch(url, params).then(response => {\r\n if (response && response.status && response.status === 204)\r\n return { status: 200 };\r\n else return response.json();\r\n });\r\n });\r\n\r\n}\r\n","import { logAPI } from \"./andyliticsApi\";\r\nimport { inHomeVerifyErrors } from \"../constants/textConstants\"\r\n\r\nconst BASE_URL = window.serverData.data.inHomeBaseUrl;\r\nconst API_KEY = window.serverData.data.inHomeFunctionsKey;\r\nconst COVID_Q_BASE_URL = window.serverData.data.inHomeCovidQuestionnaireBaseUrl;\r\nimport { inHomeWhereErrors } from '../constants/textConstants';\r\nconst CLIENT_ID = \"MBHWeb.IHV\";\r\n\r\nexport const getPrefilledData = (mrn, token) => {\r\n const fullUrl = `${BASE_URL}axle/v2/prefill?mrn=${mrn}`;\r\n const start = new Date();\r\n const params = {\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.InHome.GetAddressPrefill\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.GetAddressPrefill.Failure\", start, fullUrl, err.message);\r\n return Promise.reject(err);\r\n });\r\n}\r\n\r\n\r\nexport const getAvailableVaccines = (body, token) => {\r\n const fullUrl = `${BASE_URL}axle/v3/vaccines`;\r\n const start = new Date();\r\n const params = {\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n method: \"POST\",\r\n body: JSON.stringify(body)\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.InHome.GetAvailableVaccines\", start, fullUrl);\r\n\r\n if (response.status == 204) {\r\n logAPI(\"MBHWeb.Api.InHome.GetAvailableVaccines.NoVaccinesAvailable\", start, fullUrl, inHomeWhereErrors.noVax);\r\n throw new Error(inHomeWhereErrors.noVax);\r\n } else if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n }\r\n else if (response.status == 400) {\r\n logAPI(\"MBHWeb.Api.InHome.GetAvailableVaccines.NotInServiceArea\", start, fullUrl, inHomeWhereErrors.notValidZip); \r\n return response.json().then(err => {\r\n if (typeof (err) === 'object' && err.error_code && err.error_code === \"invalid_zip_code\")\r\n throw new Error(inHomeWhereErrors.notValidZip);\r\n else if (typeof (err) === 'object' && err.error_code && err.error_code === \"vaccines_not_available\")\r\n throw new Error(err.message);\r\n else\r\n throw err.message\r\n });\r\n \r\n }\r\n else if (response.status > 400 && response.status < 500) {\r\n logAPI(\"MBHWeb.Api.InHome.GetAvailableVaccines.NotInServiceArea\", start, fullUrl, inHomeWhereErrors.notInServiceArea);\r\n throw new Error(inHomeWhereErrors.notInServiceArea);\r\n } else {\r\n throw new Error(inHomeWhereErrors.other);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.GetAvailableVaccines.Failure\", start, fullUrl, err.message); \r\n throw new Error(err.message);\r\n });\r\n}\r\n\r\n\r\nexport const validateZipCode = (body, token) => {\r\n const fullUrl = `${BASE_URL}axle/v1/verify/zip`;\r\n const start = new Date();\r\n const params = {\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n method: \"POST\",\r\n body: JSON.stringify(body)\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.InHome.ValidateZipCode\", start, fullUrl);\r\n\r\n if (response.status == 204) {\r\n logAPI(\"MBHWeb.Api.InHome.ValidateZipCode.NoVaccinesAvailable\", start, fullUrl, inHomeWhereErrors.noVax);\r\n throw new Error(inHomeWhereErrors.noVax);\r\n } else if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.text() || 'success');\r\n }\r\n else if (response.status == 400) {\r\n logAPI(\"MBHWeb.Api.InHome.ValidateZipCode.NotInServiceArea\", start, fullUrl, inHomeWhereErrors.notValidZip);\r\n return response.json().then(err => {\r\n if (typeof (err) === 'object' && err.error_code && err.error_code === \"invalid_zip_code\")\r\n throw new Error(inHomeWhereErrors.notValidZip);\r\n else if (typeof (err) === 'object' && err.error_code && err.error_code === \"vaccines_not_available\")\r\n throw new Error(err.message);\r\n else\r\n throw err.message\r\n });\r\n\r\n }\r\n else if (response.status > 400 && response.status < 500) {\r\n logAPI(\"MBHWeb.Api.InHome.ValidateZipCode.NotInServiceArea\", start, fullUrl, inHomeWhereErrors.notInServiceArea);\r\n throw new Error(inHomeWhereErrors.notInServiceArea);\r\n } else {\r\n throw new Error(inHomeWhereErrors.other);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.ValidateZipCode.Failure\", start, fullUrl, err.message);\r\n throw new Error(err.message);\r\n });\r\n}\r\n\r\nexport const getAvailableDateTimes = (body, token) => {\r\n const fullUrl = `${BASE_URL}axle/v1/availability`;\r\n const start = new Date();\r\n const params = {\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n method: \"POST\",\r\n body: JSON.stringify(body)\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.InHome.GetAvailableDateTimes\", start, fullUrl);\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.GetAvailableDateTimes.Failure\", start, fullUrl, err.message);\r\n return Promise.reject(err);\r\n });\r\n}\r\n\r\nexport const bookInhomeAppointment = (body, token) => {\r\n //const fullUrl = `${BASE_URL}axle/v1/visit`;\r\n const fullUrl = `${BASE_URL}axle/v2/visit`;\r\n const start = new Date();\r\n const params = {\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n method: \"POST\",\r\n body: JSON.stringify(body)\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(async response => {\r\n logAPI(\"MBHWeb.Api.InHome.BookInhomeAppointment\", start, fullUrl);\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else if (response.status == 409) {\r\n logAPI(\"MBHWeb.Api.InHome.BookInhomeAppointment.TimeAlreadyBooked\", start, fullUrl);\r\n throw new Error(inHomeVerifyErrors.TimeAlreadyBooked);\r\n } else if (response.status >= 400 && response.status < 500) {\r\n let error = await response.json()\r\n throw new Error(error.message);\r\n } else {\r\n throw new Error(\"Unknown error\");\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.BookInhomeAppointment.Failure\", start, fullUrl, err.message);\r\n throw new Error(err.message);\r\n });\r\n}\r\n\r\nexport const getCovidVaccineQuestionnaires = (body, token) => {\r\n const fullUrl = `${COVID_Q_BASE_URL}${body}`;\r\n const start = new Date();\r\n const params = {\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n method: \"GET\",\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.InHome.GetCovidVaccineQuestionnaires\", start, fullUrl);\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.GetCovidVaccineQuestionnaires.Failure\", start, fullUrl), err.message;\r\n return Promise.reject(err);\r\n });\r\n}\r\n\r\nexport const getVaccineQuestionnaires = (body, token) => {\r\n const fullUrl = `${BASE_URL}/v1/questionnaires/vaccine`;\r\n const start = new Date();\r\n const params = {\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n method: \"POST\",\r\n body: JSON.stringify(body)\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.InHome.GetVaccineQuestionnaires\", start, fullUrl);\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.GetVaccineQuestionnaires.Failure\", start, fullUrl), err.message;\r\n return Promise.reject(err);\r\n });\r\n}\r\n\r\nexport const putVaccineQuestionnaires = (token, body) => {\r\n const fullUrl = `${BASE_URL}/v1/questionnaires/vaccine`;\r\n const start = new Date();\r\n const params = {\r\n method: 'PUT',\r\n mode: 'cors',\r\n headers: {\r\n 'Access-Control-Allow-Origin': '',\r\n 'Content-Type': 'application/json',\r\n 'Authorization': `Bearer ${token}`,\r\n 'x-functions-key': API_KEY,\r\n \"x-bsw-clientid\": CLIENT_ID\r\n },\r\n body: JSON.stringify(body)\r\n }\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.InHome.SendVaccineQuestionnaires\", start, fullUrl);\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.InHome.SendVaccineQuestionnaires.Failure\", start, fullUrl, err.message);\r\n return Promise.reject(err);\r\n });\r\n};","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nconst BASE_URL = typeof window !== 'undefined' ? window.serverData.data.phyndApibaseUrl : '';\r\nconst CLIENT_ID = \"MyBSWHealth.Web\";\r\n\r\n\r\n/**\r\n * Phynd v2 GetLocations.\r\n * \r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} location search results.\r\n */\r\nexport const getLocations = (searchModel) => {\r\n const queryString = [];\r\n for (var property in searchModel) {\r\n queryString.push(`${property}=${encodeURIComponent(searchModel[property])}`);\r\n }\r\n\r\n // const fullUrl = `${BASE_URL}V2/Places/GetLocations?${queryString.length > 0 ? queryString.join(\"&\") : \"\"}`;\r\n const fullUrl = `${BASE_URL}V4/Places/GetLocations?${queryString.length > 0 ? queryString.join(\"&\") : \"\"}`;\r\n\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Search.Locations.Get\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Search.Locations.Get.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n/**\r\n * Phynd v2 GetLocationTypes.\r\n * \r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} location type results.\r\n */\r\nexport const getLocationTypes = (searchModel) => {\r\n const fullUrl = encodeURI(`${BASE_URL}v2/Location/GetLocationTypes?networkCode=${searchModel.networkCode}&AddAll=${searchModel.AddAll}&lob=${searchModel.lob}`);\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Search.Locations.GetTypes\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Search.Locations.GetTypes.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n/**\r\n * Phynd v2 GetMappedFacilityTypes.\r\n * \r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} facility type results.\r\n */\r\nexport const getMappedFacilityTypes = (searchModel) => {\r\n const fullUrl = encodeURI(`${BASE_URL}v2/Location/GetMappedFacilityTypes?AddAll=${searchModel.AddAll}&lob=${searchModel.lob}`);\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Search.Locations.GetMappedFacilityTypes\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Search.Locations.GetMappedFacilityTypes.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n","const BASE_URL = \"api/logging\";\r\n//import AppInsights from \"applicationinsights-js\";\r\nimport { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nexport const logReactError = (errorMsg, errorInfo) => {\r\n try {\r\n console.error(errorMsg);\r\n const fullUrl = `${BASE_URL}/LogError`;\r\n const payload = { Error: errorMsg.toString(), Info: JSON.stringify(errorInfo) };\r\n\r\n const params = {\r\n method: \"POST\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(payload), \r\n withCredentials: true\r\n };\r\n\r\n const start = new Date();\r\n\r\n fetch(fullUrl, params).then(resp => {\r\n logAPI(\"MBHWeb.Api.LogError.Post\", start, fullUrl);\r\n return resp;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.LogError.Post.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n }\r\n catch (ex) {\r\n logAPI(\"MBHWeb.Api.LogError.Post.Failure\", new Date(), `${BASE_URL}/LogError`, ex);\r\n }\r\n\r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nconst BASE_URL = window.serverData.data.membershipBffUrl;\r\n\r\n/**\r\n* setMembershipNotificationResponse\r\n* @param {string} token = token\r\n* @param {string} data = { \"response\":[string], \"id\":[string]}\r\n* @returns {Promise} success/failure\r\n */\r\nexport const setMembershipNotificationResponse = (token, data) => {\r\n const fullUrl = `${BASE_URL}api/v1/notification/response`;\r\n\r\n const params = {\r\n headers: {\r\n authorization: `bearer ${token}`\r\n },\r\n body: JSON.stringify(data),\r\n method: \"PUT\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Membership.SetMembershipNotiResponse.Post\", start, fullUrl);\r\n return response;\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Membership.SetMembershipNotiResponse.Post.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\n//https://fnmembershipbff-tst2-eastus2.azurewebsites.net/api/v2/profile/recompile\r\n/**\r\n* RecompileProfile\r\n* @param {string} token = token\r\n* @returns {Promise} success/failure\r\n */\r\nexport const RecompileProfile = (token) => { \r\n const fullUrl = `${BASE_URL}api/v2/profile/recompile`;\r\n\r\n const params = {\r\n headers: {\r\n authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return tools.superFetch(fullUrl, params, start, \"MBHWeb.Api.Membership.RecompileProfile\");\r\n\r\n //return fetch(fullUrl, params).then(response => {\r\n // logAPI(\"MBHWeb.Api.Membership.RecompileProfile.Get\", start, fullUrl);\r\n // return response;\r\n //}).catch(err => {\r\n // logAPI(\"MBHWeb.Api.Membership.RecompileProfile.Get.Failure\", start, fullUrl);\r\n // return Promise.reject(err);\r\n //});\r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\nimport { Exception } from \"@microsoft/applicationinsights-web\";\r\n\r\nconst myBswHealthBffBaseUrl = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbff : '';\r\nconst functionsKey = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbfffunctionskey : '';\r\n\r\n\r\nexport const getMembershipData = (token) => {\r\n const url = tools.buildUrl(myBswHealthBffBaseUrl, '/v1/profile');\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey,\r\n \"Authorization\": \"bearer \" + token\r\n },\r\n mode: 'no-cors'\r\n };\r\n\r\n const start = new Date();\r\n\r\n return tools.superFetch(url, params, start, \"MBHWeb.Api.MyBSWBFF.GetProfile\");\r\n //return fetch(url, params).then(response => {\r\n // logAPI(\"MBHWeb.Api.MyBSWBFF.GetProfile\", start, url);\r\n // //return Promise.reject({status: \"failed\", message:\"Massive failure!!\"});\r\n // var oRet = JSON.parse(\"\");\r\n // //throw \"Massive failure!!\";\r\n\r\n // if (response.status >= 200 && response.status < 300) {\r\n // return Promise.resolve(response.json());\r\n // } else {\r\n // return Promise.reject(response);\r\n // }\r\n //}).catch(err => {\r\n // debugger;\r\n // logAPI(\"MBHWeb.Api.MyBSWBFF.GetProfile.Failure\", start, url, err);\r\n // return Promise.reject(err);\r\n //});\r\n\r\n};\r\n\r\n\r\n\r\nexport const refreshProfile = (token) => {\r\n //v1/login\r\n const url = tools.buildUrl(myBswHealthBffBaseUrl, '/v1/login');\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey,\r\n \"Authorization\": \"bearer \" + token\r\n },\r\n mode: 'no-cors'\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.MyBSWBFF.RefreshProfile\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response); // no json return, no return at all\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.MyBSWBFF.RefreshProfile.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n\r\n}\r\n\r\n\r\nexport const setMarketingEmailOptIn = (token, optInData) => {\r\n const url = tools.buildUrl(myBswHealthBffBaseUrl, '/v1/emailoptin');\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(optInData),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey,\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.MyBSWBFF.MarketingEmailOptIn\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response);\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.MyBSWBFF.MarketingEmailOptIn.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const setScrubbingInEmailOptIn = (token, optInData) => {\r\n const url = tools.buildUrl(myBswHealthBffBaseUrl, '/v1/emailscrubbinginsubscribe');\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(optInData),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey,\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.MyBSWBFF.ScrubbingInEmailOptIn\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.MyBSWBFF.ScrubbingInEmailOptIn.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nexport const requestAccess = (token, firstName, middleName, lastName, dateOfBirth, address, city, state, zipCode, relationship) => {\r\n /*API is not ready\r\n *const url = \"\" \r\n const start = new Date();\r\n const data = { firstName, middleName, lastName, dateOfBirth, address, city, state, zipCode, relationship };\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.MyChart.Proxy.RequestProxyAccess\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.MyChart.Proxy.RequestProxyAccess.Failure\", start, url, err); return Promise.reject(err); });*/\r\n return;\r\n};","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst BASE_URL = typeof window !== 'undefined' ? window.serverData.data.phyndApibaseUrl : '';\r\nconst CLIENT_ID = \"MyBSWHealth.Web\";\r\n\r\n\r\n/**\r\n * Returns mapped visit types and locations. Does not return slots. \r\n * \r\n * SearchModel required properties:\r\n * - providerId\r\n * - providerIdType NPI or EpicID\r\n * - scheduleType OpenSchedule or DirectSchedule\r\n * - authorization bearer token valid ONLY for DirectSchedule\r\n * \r\n * Optional:\r\n * - friendlyUrl required if not using providerId\r\n * \r\n * @param {any} searchModel search parameters\r\n * @returns {any} visit types and locations.\r\n */\r\nexport const getVisitTypeAndLocationForProvider = (searchModel, enableNewProviderSchedulingWorkflow, enableNewVideoVisitFlow) => {\r\n const queryString = modelToQueryString(searchModel); \r\n const fullUrl = ( enableNewProviderSchedulingWorkflow || enableNewVideoVisitFlow ) ?\r\n `${BASE_URL}V3/Scheduling/GetVisitTypeAndLocationForProvider?${queryString}` : \r\n `${BASE_URL}V2/Scheduling/GetVisitTypeAndLocationForProvider?${queryString}` ;\r\n \r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n if (searchModel.scheduleType === \"DirectSchedule\" && searchModel.authorization) {\r\n params.headers.authorization = `bearer ${searchModel.authorization}`;\r\n }\r\n\r\n //const request = new Request(fullUrl, params);\r\n var start = new Date();\r\n \r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetProviderVisitTypeAndLocation\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { console.log(\"GetVisitTypeAndLocation api Error\", err); logAPI(\"MBHWeb.Api.Schedule.Open.GetProviderVisitTypeAndLocationMBHWeb.LogError.Post.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n/**\r\n * Returns schedule slots for the given provider.\r\n * \r\n * SearchModel required properties:\r\n * - start\r\n * - end\r\n * - providerId\r\n * - providerIdType NPI or EpicID\r\n * - scheduleType OpenSchedule or DirectSchedule\r\n * - visitTypeId\r\n * - authorization bearer token ONLY valid for DirectSchedule\r\n * \r\n * Optional:\r\n * - locationId\r\n * - departmentId\r\n * - patientId required for DirectSchedule\r\n * - loginId required for DirectSchedule\r\n * \r\n * @param {any} searchModel search parameters\r\n * @returns {any} open schedule slots\r\n */\r\nexport const getScheduleForProvider = (searchModel, isMammogramSchedule = false) => {\r\n\r\n if (searchModel.start.indexOf(\" \")) {\r\n searchModel.start = searchModel.start.split(\" \")[0];\r\n }\r\n if (searchModel.end.indexOf(\" \")) {\r\n searchModel.end = searchModel.end.split(\" \")[0];\r\n }\r\n\r\n const queryString = modelToQueryString(searchModel);\r\n const fullUrl = isMammogramSchedule ? `${BASE_URL}V3/Services/GetScheduleForProvider?${queryString}`:`${BASE_URL}V2/Scheduling/GetScheduleForProvider?${queryString}`;\r\n //const fullUrl = `${BASE_URL}V2/Scheduling/GetScheduleForProvider?${queryString}`;\r\n\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n if (searchModel.scheduleType === \"DirectSchedule\" && searchModel.authorization) {\r\n params.headers.authorization = `bearer ${searchModel.authorization}`;\r\n }\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n if (!response.ok) {\r\n //throw Error(response.statusText);\r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetProviderSchedule.FAILED\", start, fullUrl);\r\n }\r\n return response;\r\n }).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetProviderSchedule\", start, fullUrl);\r\n return response.json();\r\n });\r\n};\r\n\r\n\r\n/**\r\n * Returns the first day with available slots for the given provider.\r\n * \r\n * SearchModel required properties:\r\n * - providerId\r\n * - providerIdType NPI or EpicID\r\n * - scheduleType OpenSchedule or DirectSchedule\r\n * - visitTypeId\r\n * - departmentId\r\n * - authorization bearer token ONLY valid for DirectSchedule\r\n * \r\n * Optional:\r\n * - patientId required for DirectSchedule\r\n * - loginId required for DirectSchedule\r\n * \r\n * @param {any} searchModel search parameters\r\n * @returns {any} provider schedule\r\n */\r\nexport const getEarliestScheduleForProvider = (searchModel) => {\r\n\r\n const queryString = modelToQueryString(searchModel);\r\n const fullUrl = `${BASE_URL}V2/Scheduling/GetEarliestScheduleForProvider?${queryString}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n if (searchModel.scheduleType === \"DirectSchedule\" && searchModel.authorization) {\r\n params.headers.authorization = `bearer ${searchModel.authorization}`;\r\n }\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetEarliestProviderSchedule\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Schedule.Open.GetEarliestProviderSchedule.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\nexport const getArrivalTime = (searchModel) => {\r\n\r\n const queryString = modelToQueryString(searchModel);\r\n const fullUrl = `${BASE_URL}/V3/Services/GetArrivalTime?${queryString}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetArrivalTime\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Schedule.Open.GetArrivalTime.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\n/**\r\n * Returns a list of providers the user has visited before.\r\n * \r\n * SearchModel required properties:\r\n * - loginId\r\n * - patientId\r\n * - patientIdType\r\n * - authorization\r\n * \r\n * @param {any} searchModel search parameters\r\n * @returns {any} list of providers\r\n */\r\nexport const getProvidersList = (searchModel) => {\r\n const queryString = modelToQueryString(searchModel);\r\n const fullUrl = `${BASE_URL}V2/Scheduling/GetProvidersList?${queryString}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"authorization\": `bearer ${searchModel.authorization}`\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetProviderList\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Schedule.Open.GetProviderList.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n/// to load Questionnaire mammogram questions\r\nexport const loadQuestionByVisitType = (searchModel) => {\r\n const queryString = modelToQueryString(searchModel);\r\n const fullUrl = `${BASE_URL}V3/Services/LoadQuestionsByVisitType?${queryString}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"authorization\": `bearer ${searchModel.authorization}`\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.LoadQuestionByVisitType\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Schedule.Open.LoadQuestionByVisitType.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n//For Questionnaire mammogram questions respone validation\r\nexport const getResponseForMammoQuestions = (model, token) => {\r\n const url = encodeURI(`${BASE_URL}V3/Services/ValidateQuestionForVisitType`);\r\n let body = model;\r\n if (body.authorization) { delete body.authorization; }\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(body),\r\n method: \"POST\"\r\n };\r\n \r\n if (token) {\r\n params.headers.authorization = `bearer ${token}`;\r\n }\r\n const start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.GetResponseForMammoQuestions\", start, url, model);\r\n if (response && response.status && response.status === 200) {\r\n return response.json();\r\n }\r\n else return response;\r\n }).catch(err => { \r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetResponseForMammoQuestions.Get.Failure\", start, url, JSON.stringify(err));\r\n return Promise.reject(err); });\r\n};\r\n\r\n// to save Questionnaire mammogram questions respone to EPIC\r\n\r\nexport const saveQuestionsResponse = (model, token) => {\r\n const url = encodeURI(`${BASE_URL}/V3/Services/SaveQuestionsToEpic`);\r\n let body = model;\r\n if (body.authorization) { delete body.authorization; }\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(body),\r\n method: \"POST\"\r\n };\r\n \r\n if (token) {\r\n params.headers.authorization = `bearer ${token}`;\r\n }\r\n const start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.saveQuestionsResponse\", start, url, model);\r\n if (response && response.status && response.status === 200) {\r\n return response.json();\r\n }\r\n else return response;\r\n }).catch(err => { \r\n logAPI(\"MBHWeb.Api.Schedule.Open.saveQuestionsResponse.Get.Failure\", start, url, JSON.stringify(err));\r\n return Promise.reject(err); });\r\n};\r\n\r\nexport const getProvidersListv3 = (searchModel, token) => {\r\n const start = new Date();\r\n const fullUrl = `${BASE_URL}v3/Epic/GetProvidersList?epicProvidersRequest.loginId=${encodeURIComponent(searchModel.loginId)}&epicProvidersRequest.proxyPatientId=${searchModel.proxyPatientId}&epicProvidersRequest.proxyPatientIdType=EXTERNAL`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.ProvidersListv3.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.ProvidersListv3.Get.Failure\", start, fullUrl, JSON.stringify(error));\r\n return Promise.reject(error);\r\n });\r\n};\r\n/**\r\n * Returns the daily availability for a provider for a given month. If month is not specified, six months are returned.\r\n * \r\n * SearchModel required properties:\r\n * - providerId\r\n * - providerIdType NPI or EpicID\r\n * - scheduleType OpenSchedule or DirectSchedule\r\n * - visitTypeId\r\n * - authorization bearer token ONLY valid for DirectSchedule\r\n * \r\n * Optional:\r\n * - locationId\r\n * - departmentId\r\n * - month valid values are January, February, March, April, May, June, July, August, September, October, November, December\r\n * \r\n * @param {any} searchModel search parameters\r\n * @returns {any} provider availability\r\n */\r\nexport const getMonthlyAvailability = (searchModel) => {\r\n\r\n const queryString = modelToQueryString(searchModel);\r\n const fullUrl = `${BASE_URL}V2/Scheduling/GetMonthlyAvailability?${queryString}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n if (searchModel.scheduleType === \"DirectSchedule\" && searchModel.authorization) {\r\n params.headers.authorization = `bearer ${searchModel.authorization}`;\r\n }\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Open.GetMonthlyAvailability\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Schedule.Open.GetMonthlyAvailability.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\n/**\r\n * Schedules an appointment. If schedule type is direct, pass in the client's OAuth token.\r\n * \r\n * Schema for the posted model:\r\n {\r\n \"loginId\": \"string\",\r\n \"myChartId\": \"string\",\r\n \"proxyPatientId\": \"string\",\r\n \"proxyPatientIdType\": \"string\",\r\n \"visitTypeId\": \"string\",\r\n \"visitTypeIdType\": \"string\",\r\n \"providerId\": \"string\",\r\n \"providerIdType\": \"string\", // ie, ProviderNPI\r\n \"departmentId\": \"string\",\r\n \"departmentIdType\": \"string\",\r\n \"date\": \"string\", // format YYYY-MM-DD\r\n \"time\": \"string\", // format HH:MM:SS\r\n \"comments\": \"string\"\r\n }\r\n * \r\n * @param {any} model schedule model\r\n * @param {any} token oauth token required only for DirectSchedule\r\n * @returns {any} ??\r\n */\r\nexport const scheduleAppointment = (model, token, callLatest = false, isMammogramSchedule = false) => {\r\n const fullUrl = getScheduleUrl(callLatest, isMammogramSchedule, model.scheduleType);\r\n\r\n let body = model;\r\n if (body.authorization) { delete body.authorization; }\r\n if (body.scheduleType) { delete body.scheduleType; }\r\n\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(body),\r\n method: \"POST\"\r\n };\r\n \r\n if (token) {\r\n params.headers.authorization = `bearer ${token}`;\r\n }\r\n\r\n\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n \r\n return fetch(fullUrl, params).then(response => {\r\n // comments contains PHI: removing it before logging...\r\n model.comments = \"<>\";\r\n logAPI(\"MBHWeb.Api.Schedule.Appointment\", start, fullUrl, model);\r\n return response.json();\r\n }).catch(err => {\r\n model.comments = \"<>\";\r\n logAPI(\"MBHWeb.Api.Schedule.Appointment.Failure\", start, fullUrl, { error: err, model: model });\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\n/**\r\n * Creates a patient in Epic for open scheduling. If a patient already exists, it will be returned along with a loginId.\r\n * \r\n * Schema for the posted model:\r\n {\r\n \"email\": \"string\",\r\n \"firstName\": \"string\",\r\n \"lastName\": \"string\",\r\n \"title\": \"string\",\r\n \"suffix\": \"string\",\r\n \"nationalIdentifier\": \"string\",\r\n \"dateOfBirth\": \"2019-02-11T13:50:29.549Z\",\r\n \"gender\": \"string\",\r\n \"departmentId\": \"string\",\r\n \"departmentIdType\": \"string\",\r\n \"maritalStatus\": \"string\",\r\n \"race\": \"string\",\r\n \"religion\": \"string\",\r\n \"houseNumber\": \"string\",\r\n \"streetLine1\": \"string\",\r\n \"streetLine2\": \"string\",\r\n \"city\": \"string\",\r\n \"state\": \"string\",\r\n \"zipCode\": \"string\",\r\n \"county\": \"string\",\r\n \"country\": \"string\",\r\n \"phoneNumbers\": [\r\n {\r\n \"number\": \"string\",\r\n \"type\": \"string\"\r\n }\r\n ]\r\n }\r\n * \r\n * @param {any} model patient model.\r\n * @param {any} token user token.\r\n * @returns {any} patient info\r\n */\r\nexport const createPatient = (model, token) => {\r\n const fullUrl = encodeURI(`${BASE_URL}V2/Scheduling/CreatePatient`);\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(model),\r\n method: \"POST\"\r\n };\r\n\r\n if (token) {\r\n params.headers.authorization = `bearer ${token}`;\r\n }\r\n\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.CreatePatient\", start, fullUrl, model);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Schedule.CreatePatient.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n * Converts the contents of a model to querystring parameters.\r\n * \r\n * @param {any} model the model to convert\r\n * @returns {string} the resulting querystring.\r\n */\r\nconst modelToQueryString = (model) => {\r\n const queryString = [];\r\n for (var property in model) {\r\n if (typeof model[property] !== \"string\" || (model[property] !== \"\" && property.toLowerCase() !== \"authorization\")) {\r\n queryString.push(`${property}=${encodeURIComponent(model[property])}`);\r\n }\r\n }\r\n\r\n return queryString.length > 0 ? queryString.join(\"&\") : \"\";\r\n};\r\n\r\n/**\r\n * Converts the contents of a model to querystring parameters.\r\n * \r\n * @param {any} callLatest the model to convert\r\n * @returns {string} the resulting url.\r\n */\r\n const getScheduleUrl = (callLatest, isMammogramSchedule, scheduleType) => {\r\n const url = isMammogramSchedule ? \r\n `${BASE_URL}V3/Services/ScheduleAppointment` : callLatest ? \r\n `${BASE_URL}V3/Scheduling/ScheduleAppointment` : `${BASE_URL}V2/Scheduling/ScheduleAppointment`;\r\n const fullUrl = scheduleType !== \"DirectSchedule\" ? encodeURI(`${url}?scheduleType=OpenSchedule`) : encodeURI(`${url}?scheduleType=DirectSchedule`);\r\n return fullUrl; \r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nconst pharmacyApiUrl = typeof window !== 'undefined' ? window.serverData.data.pharmacyApiUrl : ''; // window is undefined during pre-render\r\n\r\nexport const getPharmacyDashBoardData = (proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/MyBswHealth/RefillAndPickupCount` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.RefillAndPickupCount\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.RefillAndPickupCount.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getDefaultPharmacyData = (storeNumber, proxyId, token) => {\r\n const storeNumberParam = storeNumber ? `?storeNumber=${storeNumber}` : '';\r\n const proxyIdParam = proxyId ? ((storeNumber ? '&' : '?') + `proxyId=${proxyId}`) : '';\r\n var url = encodeURI(`${pharmacyApiUrl}Api/MyBswHealth/GetPharmacy${storeNumberParam}${proxyIdParam}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.GetPharmacy.Get\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.GetPharmacy.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getReadyForPickup = (proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/MyBswHealth/ReadyForPickup` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n const list = [];\r\n response.forEach(item => {\r\n const pharmacyName = item.Pharmacy.Name;\r\n item.ReadyForPickups.forEach(rx => {\r\n list.push({\r\n pharmacyName, storeNumber: rx.StoreNumber, rxNumber: rx.RxNumber,\r\n rxDrugName: rx.RxDrugName, patientPay: rx.PatientPay\r\n });\r\n });\r\n });\r\n logAPI(\"MBHWeb.Api.Rx.ReadyForPickup.Get\", start, url);\r\n return list;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.ReadyForPickup.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getReadyForRefill = (proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/MyBswHealth/ReadyForRefill` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n const list = [];\r\n response.forEach(item => {\r\n const pharmacyName = item.Pharmacy.Name;\r\n item.ReadyForRefills.forEach(rx => {\r\n list.push({\r\n pharmacyName, storeNumber: rx.StoreNumber, rxNumber: rx.RxNumber,\r\n rxDrugName: rx.RxDrugName, refills: rx.Refills\r\n });\r\n });\r\n });\r\n logAPI(\"MBHWeb.Api.Rx.ReadyForRefill.Get\", start, url);\r\n return list;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.ReadyForRefill.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getClosestPharmacy = (latitude, longitude, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/MyBswHealth/GetClosestPharmacy?latitude=${latitude}&longitude=${longitude}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.GetClosestPharmacy\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.GetClosestPharmacy.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const submitExternalRxTransfer = (data, token, proxyId) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/TransferNonBaylorPrescription` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n var start = new Date();\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Transfer.NonBSWPrescription\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Transfer.NonBSWPrescription.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getPharmacyList = (data, proxyId, token) => {\r\n // const url = encodeURI(`${pharmacyApiUrl}Api/MyBswHealth/GetPharmacyList?city=${city}&zip=${zip}&latitude=${latitude}&longitude=${longitude}&radius=25`);\r\n const params = urlParams(\r\n 'city', data.city, 'zip', data.zip, 'latitude', data.latitude, 'longitude', data.longitude, 'proxyId', proxyId\r\n );\r\n const url = encodeURI(`${pharmacyApiUrl}Api/MyBswHealth/GetPharmacyList${params}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.GetPharmacyList.Get\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.GetPharmacyList.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getCities = (token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/Cities`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Pharmacy.Cities.Get\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Pharmacy.Cities.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getRecentlyUsedPharmacies = (token, proxyId) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/RecentlyUsedPharmacies` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.RecentlyUsedPharmacies\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.RecentlyUsedPharmacies.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getActivePrescriptionList = (proxyId, token) => {\r\n const param = proxyId ? '?proxyId=' + proxyId : ''; \r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/PrescriptionList${param}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.PrescriptionList.Get\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.PrescriptionList.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getRxDetail = (token, rxNumber, storeNumber, isExternalRx, proxyId) => {\r\n const params = `?rxNumber=${rxNumber}&storeNumber=${storeNumber}&isExternalRx=${isExternalRx}` + (proxyId ? `&proxyId=${proxyId}` : '');\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/PrescriptionDetails${params}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.PrescriptionDetail.Get\", start, url);\r\n return response;\r\n }).catch(error => {\r\n console.log('getRxDetail api error', error);\r\n throw error;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.PrescriptionDetail.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getRxHistory = (token, rxNumber, storeNumber, proxyId) => {\r\n const params = `?rxNumber=${rxNumber}&storeNumber=${storeNumber}` + (proxyId ? `&proxyId=${proxyId}` : '');\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/PrescriptionHistory${params}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.PrescriptionHistory.Get\", start, url);\r\n return response;\r\n }).catch(error => {\r\n console.log('getRxHistory api error', error);\r\n throw error;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.PrescriptionHistory.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const archivePrescription = (rxNumber, storeNumber, archive, proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/ArchivePrescription?rxNumber=${rxNumber}&storeNumber=${storeNumber}&isArchived=${archive}` + (proxyId ? `&proxyId=${proxyId}` : ''));\r\n var start = new Date();\r\n return fetch2(url, token, \"\", 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.ArchivePrescription.Post\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.ArchivePrescription.Post.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getArchivedPrescriptionList = (proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/ArchivedPrescriptionList` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.ArchivedPrescriptionList.Get\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.ArchivedPrescriptionList.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const unlinkedRxTransfers = (proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/UnlinkedRxTransfers` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n const start = new Date();\r\n return fetch3(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Transfer.GetUnlinked\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Transfer.GetUnlinked.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getOrderRefills = (storeNumber, proxyId, token) => {\r\n const storeNumberParam = storeNumber ? `?storeNumber=${storeNumber}` : '';\r\n const proxyIdParam = proxyId ? ((storeNumber ? '&' : '?') + `proxyId=${proxyId}`) : '';\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/OrderRefills${storeNumberParam}${proxyIdParam}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.OrderRefill.Get\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.OrderRefill.Get.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getPickupHours = (storeNumber, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/GetPickupHours?storeNumber=${storeNumber}`);\r\n const start = new Date();\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.PickupDetails\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.PickupDetails.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const submitIVROrder = (data, proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/SubmitIVROrder` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n var start = new Date();\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.SubmitIVROrder\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.SubmitIVROrder.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const submitRxTransfer = (data, token, proxyId) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/TransferBaylorPrescription` + (proxyId ? `?proxyId=${proxyId}` : ''));\r\n var start = new Date();\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Transfer.BSWPrescription\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Transfer.BSWPrescription.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const setFavouritePharmacy = (storeNumber, proxyId, token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/SetDefaultPharmacy?storeNumber=${storeNumber}` + (proxyId ? `&proxyId=${proxyId}` : ''));\r\n var start = new Date();\r\n return fetch2(url, token, \"\", 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.SetDefaultPharmacy\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.SetDefaultPharmacy.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const archiveUnlinkedRxTransfers = (token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/myBSWHealth/ArchiveUnlinkedRxTransfers`);\r\n var start = new Date();\r\n return fetch2(url, token, \"\", 'put').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Transfer.ArchiveUnlinked\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Transfer.ArchiveUnlinked.Failure\", start, url, err); return Promise.reject(err); });\r\n};","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst pharmacyApiUrl = typeof window !== 'undefined' ? window.serverData.data.pharmacyApiUrl : ''; // window is undefined during pre-render\r\n\r\n//Not using this all methods, since we moved centralized proxy system. Please refer proxyApi.js\r\nexport const getProxiesInfo = (token) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/ProxiesInfo`);\r\n const start = new Date();\r\n //debugger;\r\n return fetch2(url, token).then(response => {\r\n //debugger;\r\n logAPI(\"MBHWeb.Api.Rx.Proxy.GetProxyInfo\", start, url);\r\n return response;\r\n }).catch((err) => {\r\n //debugger;\r\n console.error(err);\r\n logAPI(\"MBHWeb.Api.Rx.Proxy.GetProxyInfo.Failure\", start, url, err);\r\n return { WhoCanManageYou: [], WhoYouCanManage: [] }; // give back something besides null, we cannot stop the site because pharmacy ever goes down, this particular call is huge\r\n });\r\n};\r\n\r\nexport const requestAccess = (token, firstName, lastName, dateOfBirth, zipCode, rxNumber, phone, relationship, email) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/RequestProxyAccess`);\r\n const start = new Date();\r\n const data = { firstName, lastName, dateOfBirth, zipCode, rxNumber, phone, relationship, email };\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Proxy.RequestProxyAccess\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.RequestProxyAccess.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const resendRequest = (token, id) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/ResendProxyAccessRequest?proxyRequestID=${id}`);\r\n const start = new Date();\r\n return fetch2(url, token, null, 'post').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Proxy.ResendProxyAccessRequest\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.ResendProxyAccessRequest.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const removeAccess = (token, id) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/CancelProxyRequest?proxyRequestID=${id}`);\r\n const start = new Date();\r\n return fetch2(url, token, null, 'put').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Proxy.CancelProxyRequest\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.CancelProxyRequest.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const approveRequest = (token, id) => {\r\n const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/ApproveProxyRequest?proxyRequestId=${id}`);\r\n const start = new Date();\r\n return fetch2(url, token, null, 'put').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Proxy.ApproveProxyRequest\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.ApproveProxyRequest.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const declineRequest = (token, requestId) => {\r\n const url = encodeURI(`${pharmacyApiUrl}api/PharmacyProxy/DeclineProxyRequest?proxyRequestId=${requestId}&isUnKnown=false`);\r\n const start = new Date();\r\n return fetch2(url, token, null, 'put').then(response => {\r\n logAPI(\"MBHWeb.Api.Rx.Proxy.DeclineProxyRequest\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.DeclineProxyRequest.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getAccessList = (token) => {\r\n return getProxiesInfo(token).then(response => {\r\n const list = response.WhoYouCanManage\r\n .filter(userAccess => userAccess.Status === 'Approved')\r\n .map((userAccess, index) => {\r\n return {\r\n firstName: userAccess.FirstName,\r\n lastName: userAccess.LastName,\r\n displayName: userAccess.FirstName + ' ' + userAccess.LastName,\r\n pharmacyPatientId: userAccess.PatientId,\r\n index: JSON.stringify(index + 1)\r\n };\r\n });\r\n return list;\r\n });\r\n};\r\n\r\n\r\nexport const grantAccess = (token, accessorName, email) => {\r\n //const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/GrantProxyAccess`);\r\n //const start = new Date();\r\n //const data = { accessorName, email };\r\n //return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n // logAPI(\"MBHWeb.Api.Rx.Proxy.GrantProxyAccess\", start, url);\r\n // return response;\r\n //}).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.GrantProxyAccess.Failure\", start, url, err); return Promise.reject(err); });\r\n\r\n // until the api call of GrantProxyAccess is available\r\n return {\r\n \"Status\": \"Pending\"\r\n };\r\n};\r\n\r\nexport const healthRecordGrantAccess = (token, accessorName, email) => {\r\n //const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/GrantProxyAccess`);\r\n //const start = new Date();\r\n //const data = { accessorName, email };\r\n //return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n // logAPI(\"MBHWeb.Api.Rx.Proxy.GrantProxyAccess\", start, url);\r\n // return response;\r\n //}).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.GrantProxyAccess.Failure\", start, url, err); return Promise.reject(err); });\r\n\r\n // until the api call of GrantProxyAccess is available\r\n return {\r\n \"Status\": \"Pending\"\r\n };\r\n};\r\n\r\n\r\nexport const requestHealthRecordAccess = (token, firstName, lastName, dateOfBirth, zipCode, rxNumber, phone, relationship, email) => {\r\n //const url = encodeURI(`${pharmacyApiUrl}Api/PharmacyProxy/RequestProxyAccess`);\r\n //const start = new Date();\r\n //const data = { firstName, lastName, dateOfBirth, zipCode, rxNumber, phone, relationship, email };\r\n //return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n // logAPI(\"MBHWeb.Api.Rx.Proxy.RequestProxyAccess\", start, url);\r\n // return response;\r\n //}).catch(err => { logAPI(\"MBHWeb.Api.Rx.Proxy.RequestProxyAccess.Failure\", start, url, err); return Promise.reject(err); });\r\n\r\n //error case\r\n //return Promise.reject({ error: {\"Status\" : 404} });\r\n\r\n //success case\r\n return {\r\n \"Status\": \"Pending\"\r\n };\r\n\r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\nimport * as textConstants from \"../constants/textConstants\";\r\n\r\n\r\nconst BASE_URL = window.serverData.data.portalAPIURL;\r\nconst API_URL = window.serverData.data.apiBaseUrl;\r\nconst TermsFeatureId = window.serverData.data.termsAndConditionsFeatureId;\r\n\r\nexport const recompileProfile = (token) => {\r\n const fullUrl = `${BASE_URL}/api/membership/getrecompileprofile`;\r\n\r\n const params = {\r\n headers: {\r\n authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.ProfileRecompile.Get\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.ProfileRecompile.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n\r\n};\r\n\r\n/**\r\n * Returns search results for the site.\r\n * \r\n * @param {any} searchphrase the words to search for\r\n * @param {any} token the user token\r\n * \r\n * @returns {any} consent model\r\n */\r\nexport const search = (searchphrase, token) => {\r\n const fullUrl = `${BASE_URL}/api/sitesearch/search?SearchPhrase=${searchphrase}`;\r\n\r\n let params = {\r\n headers: {\r\n authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.SiteSearch.Search.Success\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.SiteSearch.Search.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getPatientPhoto = (token, id, idType) => {\r\n const fullUrl = `${BASE_URL}/api/patient/getpatientphoto?id=${id}&idType=${idType}`;\r\n\r\n const params = {\r\n headers: {\r\n authorization: `bearer ${token}`,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.PatientPhoto.Get\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.PatientPhoto.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getThrive = (token) => {\r\n var start = new Date();\r\n const url = BASE_URL + '/Api/Thrive/GetThrive';\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.GetThrive.Get\", start, url);\r\n return response;\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.GetThrive.Get.Failure\", start, url, err); return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getEpicFluRecords = (token) => {\r\n const fullUrl = `${BASE_URL}/api/patient/flustatus`;\r\n\r\n let params = {\r\n headers: {\r\n authorization: `bearer ${token}`,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.FluStatus.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.FluStatus.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\nexport const getCompleteFluStatus = (token) => {\r\n const fullUrl = `${BASE_URL}/api/patient/completeFluStatus`;\r\n\r\n if (window.serverData.data.enableFluVaccine) {\r\n let params = {\r\n headers: {\r\n authorization: `bearer ${token}`,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.CompleteFluStatus.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.CompleteFluStatus.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n }\r\n else {\r\n return Promise.reject(null);\r\n }\r\n};\r\n\r\n\r\nexport const getPeopleSoftFluStatus = (token) => {\r\n const fullUrl = `${BASE_URL}/api/patient/PeopleSoftFluStatus`;\r\n\r\n if (window.serverData.data.enableFluVaccine) {\r\n let params = {\r\n headers: {\r\n authorization: `bearer ${token}`,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.PeopleSoftFluStatus.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.PeopleSoftFluStatus.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n }\r\n else {\r\n return Promise.reject(null);\r\n }\r\n};\r\n\r\n\r\nexport const getTermsAndConditions = (userName, token) => {\r\n\r\n //debugger;\r\n if (userName === undefined || userName == \"undefined\") {\r\n userName = \"\";\r\n }\r\n if (token === undefined || token == \"undefined\" || token == \"null\") {\r\n token = \"\";\r\n }\r\n\r\n var oHeaders = {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n };\r\n if (token != null && token != \"\") {\r\n oHeaders[\"Authorization\"] = \"bearer \" + token;\r\n }\r\n var oBody = {};\r\n //debugger;\r\n if (userName != null && userName != \"\") {\r\n oBody[\"UserName\"] = userName;\r\n }\r\n\r\n var url = null;\r\n var params = null;\r\n if (token != null && token != \"\") {\r\n oBody[\"featureId\"] = TermsFeatureId;\r\n url = `${API_URL}/v2/HealthSource/TermsAndConditions/feature/${TermsFeatureId}`;\r\n params = {\r\n method: \"GET\",\r\n //body: JSON.stringify(oBody),\r\n headers: oHeaders,\r\n };\r\n var start = new Date();\r\n\r\n //debugger; \r\n\r\n return fetch(url, params).then(response => {\r\n //debugger; \r\n logAPI(\"MBHWeb.Api.TermsConditions.ById.V2.Get\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n //debugger;\r\n return Promise.reject(response);\r\n }\r\n }).then((data) => {\r\n //debugger;\r\n data = {\r\n id: data[0].Id,\r\n versionId: data[0].versionId ? data[0].versionId : data[0].VersionId,\r\n textToDisplay: data[0].textToDisplay ? data[0].textToDisplay : data[0].TextToDisplay,\r\n featureId: data[0].featureId ? data[0].featureId : data[0].FeatureId,\r\n isAccepted: data[0].isAccepted ? data[0].isAccepted : data[0].IsAccepted,\r\n isSuccessful: true,\r\n actualError: null,\r\n displayError: null\r\n }\r\n //debugger;\r\n return data;\r\n }).catch(e => {\r\n debugger;\r\n logAPI(\"MBHWeb.Api.TermsConditions.ById.V2.Get.Failure\", start, url, e);\r\n return Promise.resolve({ id: 3, isAccepted: true, isSuccessful: false, statusCode: 0, versionId: 2 });\r\n }\r\n );\r\n\r\n }\r\n else {\r\n oBody[\"FeatureId\"] = TermsFeatureId;\r\n url = `${BASE_URL}/TCC/FetchCurrent`;\r\n params = {\r\n method: \"POST\",\r\n body: JSON.stringify(oBody),\r\n headers: oHeaders,\r\n };\r\n var start = new Date();\r\n\r\n //debugger; \r\n\r\n return fetch(url, params).then(response => {\r\n //debugger; \r\n logAPI(\"MBHWeb.Api.TermsConditions.ById.Get\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n //debugger; \r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(e => {\r\n //debugger;\r\n logAPI(\"MBHWeb.Api.TermsConditions.ById.Get.Failure\", start, url, e);\r\n return Promise.resolve({ id: 3, isAccepted: true, isSuccessful: false, statusCode: 0, versionId: 2 });\r\n }\r\n );\r\n }\r\n\r\n};\r\n\r\n\r\nexport const acceptTermsAndConditions = (token, userName, version) => {\r\n\r\n const url = `${BASE_URL}/TCC/AcceptCurrent`;\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ FeatureId: TermsFeatureId, UserName: userName, VersionId: version }),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n\r\n //debugger;\r\n\r\n return fetch(url, params).then(response => {\r\n //debugger;\r\n logAPI(\"MBHWeb.Api.TermsConditions.Accept.Post\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.TermsConditions.Accept.Post.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\nexport const getNotices = (userIsLoggedIn, hasMyChart, hasHealthPlan) => {\r\n const params = urlParams(\r\n 'userIsLoggedIn', userIsLoggedIn, 'hasMyChart', hasMyChart, 'hasHealthPlan', hasHealthPlan\r\n );\r\n var start = new Date();\r\n const url = `${BASE_URL}/Api/Notices/GetNotices${params}`;\r\n return fetch2(url).then(response => {\r\n logAPI(\"MBHWeb.Api.Notifications.GetNotices\", start, url);\r\n let notices = [];\r\n if (response && response.length > 0) {\r\n for (let i = 0; i < response.length; i++) {\r\n var noticeId = \"notice_\" + response[i].id;\r\n if (!localStorage.getItem(noticeId)) {\r\n notices.push(response[i]);\r\n }\r\n }\r\n }\r\n return notices;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Notifications.GetNotices.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\n/**\r\n* getLatLongFromAdress\r\n* @param {string} token = token\r\n* @param {string} address = Address of the User \r\n* @returns {Promise} Latitude/Longitude JSON\r\n */\r\nexport const getLatLongFromAddress = (token, address) => {\r\n const url = `${BASE_URL}/api/location/GetLatLongFromAddress?address=${address}`;\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Authorization\": 'bearer ' + token\r\n }\r\n };\r\n\r\n const request = new Request(url, params);\r\n var start = new Date();\r\n return fetch(request).then(response => {\r\n logAPI(\"MBHWeb.Api.Account.GetLatLongFromAdress\", start, url);\r\n return Promise.resolve(response.json());\r\n }).catch(err => {\r\n //debugger;\r\n console.log(err);\r\n logAPI(\"MBHWeb.Api.Account.GetLatLongFromAdress.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\nexport const getAddressFromLatLong = (token, lat, lng) => {\r\n const uParams = urlParams(\r\n 'lat', lat, 'lng', lng\r\n );\r\n const url = `${BASE_URL}/api/location/GetAddressFromLatLong${uParams}`;\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Authorization\": 'bearer ' + token\r\n }\r\n };\r\n\r\n const request = new Request(url, params);\r\n var start = new Date();\r\n return fetch(request).then(response => {\r\n logAPI(\"MBHWeb.Api.Account.getAddressFromLatLong\", start, url);\r\n return Promise.resolve(response.json());\r\n }).catch(err => {\r\n //debugger;\r\n console.log(err);\r\n logAPI(\"MBHWeb.Api.Account.getAddressFromLatLong.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getAppUpdate = (token) => {\r\n var start = new Date();\r\n const url = '/tm/appUpdate';\r\n let params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n return fetch2(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.GetAppUpdate\", start, url);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.GetAppUpdate.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n* getVideoVisitTermsAndConditions\r\n* @param {string} userName = current userName\r\n* @param {string} token = token\r\n* @param {string} featureId = featureId of Terms (SameDayCare) \r\n* @param {string} proxyId = ProxyId\r\n* @returns {Promise} Video Visit Terms\r\n*/\r\nexport const getVideoVisitTermsAndConditions = (userName, token, featureId, proxyId) => {\r\n //debugger;\r\n if (token === undefined || token == \"undefined\" || token == \"null\") {\r\n token = \"\";\r\n }\r\n\r\n var oHeaders = {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n };\r\n if (token != null && token != \"\") {\r\n oHeaders[\"Authorization\"] = \"bearer \" + token;\r\n }\r\n\r\n const url = `${BASE_URL}/TCC/FetchCurrent`;\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ UserName: userName, FeatureId: featureId, ProxyId: proxyId }),\r\n headers: oHeaders\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.TermsConditions.VideoVisit.Get\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch((e) => {\r\n logAPI(\"MBHWeb.Api.TermsConditions.VideoVisit.Get.Failure\", start, url, e);\r\n return Promise.resolve({ id: 3, isAccepted: true, isSuccessful: false, statusCode: 0, versionId: 2 });\r\n }\r\n );\r\n};\r\n\r\n/**\r\n* acceptVideoVisitTermsAndConditions\r\n* @param {string} token = token\r\n* @param {string} userName = current userName\r\n* @param {string} version = terms version \r\n* @param {string} proxyId = ProxyId\r\n* @returns {Promise} Video Visit Accept Terms\r\n*/\r\nexport const acceptVideoVisitTermsAndConditions = (token, userName, version, proxyId) => {\r\n const url = `${BASE_URL}/TCC/AcceptCurrent`;\r\n if (token === undefined || token == \"undefined\" || token == \"null\") {\r\n token = \"\";\r\n }\r\n\r\n var oHeaders = {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n };\r\n if (token != null && token != \"\") {\r\n oHeaders[\"Authorization\"] = \"bearer \" + token;\r\n }\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({\r\n UserName: userName, VersionId: version, ProxyId: proxyId, FeatureId: 'SameDayCare', IsAccepted: true\r\n }),\r\n headers: oHeaders\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.TermsConditions.VideoVisit.Accept.Post\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.TermsConditions.VideoVisit.Accept.Post.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getRoomStatuses = (token) => {\r\n const url = `${BASE_URL}/api/v1/video/GetRoomStatuses`;\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.GetRoomStatuses\", start, url);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.GetRoomStatuses.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getConsumerJWT = (token, participantExternalId, participantName, csnId, epicExternalProviderId) => {\r\n const url = `${BASE_URL}/api/v1/video/ConsumerToken`;\r\n const postData = {\r\n participantId: participantExternalId,\r\n participantIdType: \"External\",\r\n participantRole: \"Patient\",\r\n participantName: participantName,\r\n csnId: csnId,\r\n epicExternalProviderId: epicExternalProviderId\r\n };\r\n\r\n const params = {\r\n method: \"POST\",\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(postData)\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.GetConsumerJWT\", start, url);\r\n return resp.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.GetConsumerJWT.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n\r\n};\r\n\r\n\r\n\r\nexport const getTwilioConsumerJWT = (token, participantExternalId, participantName, csnId, epicExternalProviderId) => {\r\n const url = `${BASE_URL}/api/v2/video/ConsumerToken`;\r\n const postData = {\r\n participantId: participantExternalId,\r\n participantIdType: \"External\",\r\n participantRole: \"Patient\",\r\n participantName: participantName,\r\n csnId: csnId,\r\n epicExternalProviderId: epicExternalProviderId\r\n };\r\n\r\n const params = {\r\n method: \"POST\",\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n body: JSON.stringify(postData)\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(url, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.GetTwilioConsumerJWT\", start, url);\r\n return resp.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.GetTwilioConsumerJWT.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n\r\n};\r\n\r\n/**\r\n* getVideoVisitTermsAndConditionsForSharedLink\r\n* @param {string} featureId = featureId of Terms (SameDayCare) \r\n* @returns {Promise} Video Visit Terms\r\n*/\r\nexport const getVideoVisitTermsAndConditionsForShareLink = (token, featureId) => {\r\n const url = `${BASE_URL}/TCC/GetTermsListForShareLink`;\r\n\r\n if (token === undefined || token == \"undefined\" || token == \"null\") {\r\n token = \"\";\r\n }\r\n\r\n var oHeaders = {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n };\r\n if (token != null && token != \"\") {\r\n oHeaders[\"Authorization\"] = \"bearer \" + token;\r\n }\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ FeatureId: featureId }),\r\n headers: oHeaders\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.ShareLink.GetTermsAndConditionsList\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch((e) => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.ShareLink.GetTermsAndConditionsList.Failure\", start, url, e);\r\n return Promise.reject(e);\r\n }\r\n );\r\n};\r\n\r\nexport const getVideoVisitTCStatusForShareLink = (token, shareLinkCode) => {\r\n const url = `${BASE_URL}/TCC/GetShareLinkTermsStatus?sharedLinkCode=${shareLinkCode}`;\r\n\r\n if (token === undefined || token == \"undefined\" || token == \"null\") {\r\n token = \"\";\r\n }\r\n\r\n var oHeaders = {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n };\r\n if (token != null && token != \"\") {\r\n oHeaders[\"Authorization\"] = \"bearer \" + token;\r\n }\r\n\r\n const params = {\r\n method: \"GET\",\r\n headers: oHeaders\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.ShareLink.GetTermsAndConditionsStatus\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch((e) => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.ShareLink.GetTermsAndConditionsStatus.Failure\", start, url, e);\r\n return Promise.reject(e);\r\n }\r\n );\r\n};\r\n\r\nexport const acceptVideoVisitShareLinkTC = (token, termsAndConditions, shareLinkCode) => {\r\n\r\n const url = `${BASE_URL}/TCC/AcceptShareLinkTermsAndConditions?sharedLinkCode=${shareLinkCode}`;\r\n\r\n if (token === undefined || token == \"undefined\" || token == \"null\") {\r\n token = \"\";\r\n }\r\n\r\n var oHeaders = {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n };\r\n if (token != null && token != \"\") {\r\n oHeaders[\"Authorization\"] = \"bearer \" + token;\r\n }\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(termsAndConditions),\r\n headers: oHeaders,\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.VideoVisit.ShareLink.AcceptTermsAndConditions\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.VideoVisit.ShareLink.AcceptTermsAndConditions.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n * Get the list of consents for the user\r\n * \r\n * @param {any} token the user token\r\n *\r\n * @returns {any} consent model\r\n */\r\nexport const getConsents = (token) => {\r\n const fullUrl = `${BASE_URL}/api/v1/idserver/consents`;\r\n\r\n //debugger;\r\n\r\n let params = {\r\n headers: {\r\n authorization: `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n method: \"GET\",\r\n withCredentials: false,\r\n mode: 'no-cors'\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.IDServer.Consents.Success\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.IDServer.Consents.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n/**\r\n * Get revoke specific consent for the user\r\n * \r\n * @param {any} token the user token\r\n * @param {any} consent the consent to delete\r\n *\r\n * @returns {any} consent result\r\n */\r\nexport const deleteConsent = (token, consent) => {\r\n const fullUrl = `${BASE_URL}/api/v1/idserver/consents/delete?SubjectId=${consent.SubjectId}&Key=${consent.Key}`;\r\n\r\n //debugger;\r\n\r\n let params = {\r\n headers: {\r\n authorization: `bearer ${token}`,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n //body: JSON.stringify(consent),\r\n method: \"POST\",\r\n withCredentials: false,\r\n mode: 'no-cors'\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Portal.IDServer.Consents.Success\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Portal.IDServer.Consents.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getVideoVisitUrl = (token, userName, csn) => {\r\n const params = {\r\n headers: {\r\n authorization: `bearer ${token}`,\r\n },\r\n method: \"GET\",\r\n };\r\n var start = new Date();\r\n const url = `${API_URL}/v6/Epic/VideoVisitUrl/?userName=${userName}&csn=${csn}`;\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.VideoVistUrl.Success\", start, url);\r\n return response.json();\r\n }).catch(err => {\r\n logAPI(\"MBHWeb.Api.VideoVisitUrl.Failure\", start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const acceptDigitalPrivacyPolicy = (token, userName, version) => {\r\n\r\n const url = `${BASE_URL}/TCC/AcceptCurrent`;\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ FeatureId: textConstants.Privacy_MyBswh, UserName: userName, VersionId: version }),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"MBHWeb.Api.DigitalPrivacyPolicy.Accept.Post\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return Promise.resolve(response.json());\r\n } else {\r\n return Promise.reject(response);\r\n }\r\n }).catch(err => { logAPI(\"MBHWeb.Api.DigitalPrivacyPolicy.Accept.Post.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\n","import { logAPI } from \"./andyliticsApi\";\r\nimport ASCClient, { CommunityRepository, PostRepository, ApiEndpoint, ApiRegion, FeedType, CommentRepository } from '@amityco/js-sdk';\r\n\r\nconst apiKey = typeof window !== 'undefined' ? window.serverData.data.amityApiKey : '';\r\nconst apiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : '';\r\nconst apiTeamAmityBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiTeamAmityBaseUrl : '';\r\nconst communityId = typeof window !== 'undefined' ? window.serverData.data.amityCommunityId : '';\r\nconst prayerCommentsMaxLimit = typeof window !== 'undefined' ? window.serverData.data.prayerCommentsMaxLimit : 50;\r\n\r\n//const apiEndpoint = ApiEndpoint.US;\r\nconst apiRegion = ApiRegion.US;\r\n\r\n//export const client = new ASCClient({ apiKey, apiEndpoint });\r\nexport const client = new ASCClient({ apiKey, apiRegion });\r\n\r\nexport const getAmityToken = (userToken) => {\r\n const url = `${apiTeamAmityBaseUrl}/api/AmityAuthToken`;\r\n logAPI(\"Api.PrayerFeature.AmityToken.Get\", new Date(), url, userToken);\r\n return fetch2(url, userToken, '', 'GET', '', true).then(response => {\r\n const isSuccess = typeof response === 'string' && response.trim().length > 0;\r\n logAPI('Api.PrayerFeature.AmityToken.Get.' + (isSuccess ? 'Success' : 'Failure'), new Date(), url, response);\r\n return response;\r\n }).catch(err => {\r\n logAPI(\"Api.PrayerFeature.AmityToken.Get.Failure\", new Date(), url, err);\r\n return err;\r\n });\r\n};\r\n\r\nexport const linkAmityAccount = (userToken, userName) => {\r\n const url = `${apiBaseUrl}v3/HealthSource/Registration/LinkAmityAccount?userName=${userName}`;\r\n logAPI('Api.PrayerFeature.LinkAmityAccount.Post', new Date(), url, userToken);\r\n return fetch2(url, userToken, '', 'POST').then(response => {\r\n const isSuccess = response && response.features && response.features.filter(f => f.key === 'amity')[0].memberId;\r\n logAPI('Api.PrayerFeature.LinkAmityAccount.Post.' + (isSuccess ? 'Success' : 'Failure'), new Date(), url, response);\r\n return response;\r\n }).catch(err => {\r\n logAPI(\"Api.PrayerFeature.LinkAmityAccount.Post.Failure\", new Date(), url, err);\r\n return err;\r\n });\r\n};\r\n\r\nexport const registerSession = (userId, authToken) => {\r\n client.registerSession({ userId, authToken });\r\n return client;\r\n};\r\n\r\nexport const joinCommunity = () => {\r\n return CommunityRepository.joinCommunity(communityId);\r\n};\r\n\r\nexport const queryAllPosts = () => {\r\n return PostRepository.queryCommunityPosts({\r\n communityId: communityId,\r\n feedType: FeedType.Published,\r\n tags: ['']\r\n });\r\n};\r\n\r\nexport const queryPrayerOfTheWeek = () => {\r\n return PostRepository.queryCommunityPosts({\r\n communityId: communityId,\r\n feedType: FeedType.Published,\r\n tags: ['prayerOfTheWeek']\r\n });\r\n};\r\n\r\nexport const getPost = postId => {\r\n return PostRepository.postForId(postId);\r\n};\r\n\r\nexport const queryMyPosts = (memberId) => {\r\n return PostRepository.queryCommunityPosts({\r\n communityId: communityId,\r\n feedType: FeedType.Published,\r\n tags: [memberId]\r\n });\r\n};\r\n\r\nexport const postPrayer = (textInput, memberId) => {\r\n try {\r\n return new Promise((resolve, reject) => {\r\n const liveObject = PostRepository.createTextPost({\r\n targetId: communityId,\r\n targetType: 'community',\r\n text: JSON.stringify(textInput),\r\n tags: [memberId, 'regularPost']\r\n });\r\n liveObject.once('dataUpdated', data => {\r\n resolve(data);\r\n liveObject.dispose();\r\n });\r\n liveObject.once('dataError', error => {\r\n reject(error);\r\n liveObject.dispose();\r\n });\r\n });\r\n } catch (error) {\r\n console.log(error);\r\n return Promise.reject(error);\r\n }\r\n};\r\n\r\nexport const editPost = (postId, textInput, memberId) => {\r\n try {\r\n return new Promise((resolve, reject) => {\r\n const editPostLiveObject = PostRepository.updatePost({\r\n postId,\r\n data: { text: JSON.stringify(textInput) },\r\n tags: [memberId],\r\n metadata: { edited: 'true' }\r\n }).then(data => {\r\n resolve(data);\r\n }).catch(error => {\r\n reject(error);\r\n });\r\n //editPostLiveObject.on('dataUpdated', data => {\r\n // resolve(data);\r\n // editPostLiveObject.dispose();\r\n //});\r\n //editPostLiveObject.on('dataError', error => {\r\n // reject(error);\r\n // editPostLiveObject.dispose();\r\n //});\r\n });\r\n } catch (error) {\r\n console.log(error);\r\n return Promise.reject(error);\r\n }\r\n};\r\n\r\nexport const deletePrayer = (postId) => {\r\n try {\r\n const response = PostRepository.deletePost(postId, true);\r\n return response;\r\n } catch (error) {\r\n console.log(error);\r\n return Promise.reject(error);\r\n }\r\n};\r\n\r\nexport const addReaction = (postId) => {\r\n const response = PostRepository.addReaction({ postId, reactionName: 'love' });\r\n return response;\r\n};\r\n\r\nexport const removeReaction = (postId) => {\r\n const response = PostRepository.removeReaction({ postId, reactionName: 'love' });\r\n return response;\r\n};\r\n\r\nexport const queryAllComments = (postId) => {\r\n const liveCollection = CommentRepository.queryComments({\r\n referenceType: 'post',\r\n referenceId: postId,\r\n isDeleted: false,\r\n first: prayerCommentsMaxLimit\r\n });\r\n liveCollection.timestamp = new Date();\r\n return liveCollection;\r\n};\r\n\r\nexport const getComment = commentId => {\r\n const liveObject = CommentRepository.commentForId(commentId);\r\n return liveObject;\r\n};\r\n\r\nexport const addComment = (comment, postId, postUserIdForNotification) => {\r\n try {\r\n return new Promise((resolve, reject) => {\r\n const payload = { referenceType: 'post', referenceId: postId, text: comment };\r\n if (postUserIdForNotification) {\r\n payload.metadata = { postUserIdForNotification };\r\n }\r\n const liveObject = CommentRepository.createTextComment(payload);\r\n liveObject.once('dataUpdated', data => {\r\n resolve(data);\r\n liveObject.dispose();\r\n });\r\n liveObject.once('dataError', error => {\r\n reject(error);\r\n liveObject.dispose();\r\n });\r\n });\r\n } catch (error) {\r\n return Promise.reject(error);\r\n }\r\n};\r\n\r\nexport const editComment = (commentId, textInput) => {\r\n try {\r\n return new Promise((resolve, reject) => {\r\n const liveObject = CommentRepository.editTextComment({\r\n commentId: commentId,\r\n text: textInput,\r\n });\r\n liveObject.once('dataUpdated', data => {\r\n resolve(data);\r\n liveObject.dispose();\r\n });\r\n liveObject.once('dataError', error => {\r\n reject(error);\r\n liveObject.dispose();\r\n });\r\n });\r\n } catch (error) {\r\n return Promise.reject(error);\r\n }\r\n};\r\n\r\nexport const deleteComment = (commentId) => {\r\n const response = CommentRepository.deleteComment(commentId, true);\r\n return response;\r\n};\r\n\r\nexport const addCommentReaction = (commentId) => {\r\n try {\r\n return new Promise((resolve, reject) => {\r\n CommentRepository.addReaction({\r\n commentId, reactionName: 'love'\r\n }).then(data => {\r\n resolve(data);\r\n }).catch(error => {\r\n reject(error);\r\n });\r\n });\r\n } catch (error) {\r\n return Promise.reject(error);\r\n }\r\n};\r\n\r\nexport const removeCommentReaction = (commentId) => {\r\n try {\r\n return new Promise((resolve, reject) => {\r\n CommentRepository.removeReaction({\r\n commentId, reactionName: 'love'\r\n }).then(data => {\r\n resolve(data);\r\n }).catch(error => {\r\n reject(error);\r\n });\r\n });\r\n } catch (error) {\r\n return Promise.reject(error);\r\n }\r\n};\r\n\r\nexport const getNotificationBadge = (userToken) => {\r\n const url = `${apiTeamAmityBaseUrl}/api/GetNotificationBadge`;\r\n const params = {\r\n method: 'GET',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'authorization': `bearer ${userToken}`\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return '';\r\n }\r\n }).catch(err => {\r\n return err;\r\n });\r\n};\r\n\r\nexport const markNotificationBadgeAsRead = (userToken) => {\r\n const url = `${apiTeamAmityBaseUrl}/api/MarkNotificationBadgeAsRead?IsRead=true`;\r\n const params = {\r\n method: 'POST',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'authorization': `bearer ${userToken}`\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return '';\r\n }\r\n }).catch(err => {\r\n return err;\r\n });\r\n};\r\n\r\nexport const getDeletedPosts = (userToken) => {\r\n const url = `${apiTeamAmityBaseUrl}/api/GetDeletedPosts`;\r\n const params = {\r\n method: 'GET',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'authorization': `bearer ${userToken}`\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return '';\r\n }\r\n }).catch(err => {\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const markDeletedPostsAsRead = (userToken) => {\r\n const url = `${apiTeamAmityBaseUrl}/api/MarkDeletedPostsAsRead`;\r\n const params = {\r\n method: 'POST',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'authorization': `bearer ${userToken}`\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return '';\r\n }\r\n }).catch(err => {\r\n return err;\r\n });\r\n};","import {logAPI } from \"./andyliticsApi\";\r\nimport * as tools from '../helpers/Tools';\r\n\r\n\r\n\r\nconst functionsKey = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbfffunctionskey : '';\r\n\r\n\r\nexport const downLoadEstimate = (token, url) => {\r\n //const start = new Date();\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Authorization\": \"bearer \" + token\r\n },\r\n mode: 'no-cors'\r\n }\r\n\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.blob();\r\n } else {\r\n return new Blob();//response;\r\n }\r\n }).catch(err => {\r\n logAPI(\"Api.Pricing.Appointments.Get.Failure\", start, url, err);\r\n return err;\r\n });\r\n\r\n}\r\nexport const getAppointments = (token, patientId, includeProxy) => {\r\n const incProx = includeProxy ? `&includeProxy=${includeProxy}` : '';\r\n const url = tools.buildUrl(window.serverData.data.pricingAPIURL, `/UsersQuote/Appointments?patientIds=${patientId}${incProx}`);\r\n \r\n\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey,\r\n \"Authorization\": \"bearer \" + token\r\n },\r\n mode: 'no-cors'\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n logAPI(\"Api.Pricing.Appointments.Get\", start, url);\r\n if (response.status >= 200 && response.status < 300) {\r\n return response.json();\r\n } else {\r\n return [];\r\n }\r\n }).catch(err => {\r\n logAPI(\"Api.Pricing.Appointments.Get.Failure\", start, url, err);\r\n return err;\r\n });\r\n}\r\n\r\nexport const getBenefitDetails = (token, patientId, csnId) => {\r\n const cid = csnId ? `&csnId=${csnId}`:'';\r\n //debugger;\r\n const url = tools.buildUrl(window.serverData.data.pricingAPIURL, `/UsersQuote/BenefitDetails?patientId=${patientId}${cid}`);\r\n\r\n const params = {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey,\r\n \"Authorization\": \"bearer \" + token\r\n },\r\n mode: 'no-cors'\r\n };\r\n var start = new Date();\r\n\r\n return fetch(url, params).then(response => {\r\n logAPI(\"Api.Pricing.BenefitDetails.Get\", start, url,null,\"start\");\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(\"Api.Pricing.BenefitDetails.Get\", new Date(), url, null, \"complete\",`status '${response.status}'`);\r\n return response.json();\r\n } else {\r\n logAPI(\"Api.Pricing.BenefitDetails.Get\", new Date(), url, null, \"complete with error\", `status '${response.status}'`);\r\n return response;\r\n }\r\n }).catch(err => {\r\n logAPI(\"Api.Pricing.BenefitDetails.Get.Failure\", start, url, err);\r\n return err;\r\n });\r\n};","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst BASE_URL = window.serverData.data.portalAPIURL;\r\n\r\n/**\r\n * Returns consent recorded for the given user.\r\n * \r\n * @param {any} key the consent to search for (ie FLU = flu vaccine consent)\r\n * @param {any} token the user token\r\n * \r\n * @returns {any} consent model\r\n */\r\nexport const getConsent = (key, token) => {\r\n const fullUrl = `${BASE_URL}/api/consent/get?ConsentStringKey=${key}`;\r\n\r\n let params = {\r\n headers: {\r\n authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n \r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Profile.Consent.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Profile.Consent.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\n/**\r\n * Records a user's consent.\r\n * \r\n * @param {any} key the consent to record (ie FLU = flu vaccine consent)\r\n * @param {any} value the true/false consent value\r\n * @param {any} token the user token\r\n * \r\n * @returns {any} consent\r\n */\r\nexport const postConsent = (key, value, token) => {\r\n const fullUrl = `${BASE_URL}/api/consent/post`;\r\n let body = JSON.stringify({ \"Approved\": value, \"ConsentStringKey\": key });\r\n \r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\"\r\n },\r\n method: \"POST\",\r\n body: body\r\n };\r\n \r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Profile.Consent.Post\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Profile.Consent.Post.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getConsentList = (token) => {\r\n const fullUrl = `${BASE_URL}/api/consent/list`;\r\n\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Profile.ConsentList.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Profile.ConsentList.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getConsentTypeList = (token) => {\r\n const fullUrl = `${BASE_URL}/api/consentType/list`;\r\n\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Profile.ConsentTypeList.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Profile.ConsentTypeList.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getConsentType = (token, key) => {\r\n const fullUrl = `${BASE_URL}/api/consentType/get?ConsentStringKey=${key}`;\r\n\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Profile.ConsentType.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Profile.ConsentType.Get.Failure\", start, fullUrl);\r\n return Promise.reject(err);\r\n });\r\n\r\n};\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst BASE_URL = typeof window !== 'undefined' ? window.serverData.data.phyndApibaseUrl : ''; // window is undefined during pre-render\r\nconst CLIENT_ID = \"MyBSWHealth.Web\";\r\n\r\n\r\n/**\r\n * Phynd v2 SearchForAllProviders.\r\n * \r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} provider search results.\r\n */\r\nexport const searchForAllProviders = (searchModel, isLatestCall = false) => {\r\n const queryString = [];\r\n for (var property in searchModel) {\r\n if (searchModel[property] !== \"\") {\r\n queryString.push(`${property}=${encodeURIComponent(searchModel[property])}`);\r\n }\r\n }\r\n\r\n const fullUrl = isLatestCall ? \r\n `${BASE_URL}V3/Provider/SearchForAllProviders?${queryString.length > 0 ? queryString.join(\"&\") : \"\"}` : \r\n `${BASE_URL}V2/Provider/SearchForAllProviders?${queryString.length > 0 ? queryString.join(\"&\") : \"\"}`;\r\n \r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.Search\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Provider.Search.Failure\", start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getProvidersListByVisitType = (searchModel, token) => {\r\n const start = new Date();\r\n const fullUrl = `${BASE_URL}V2/Scheduling/GetProvidersListByVisitType?patientId=${(searchModel.proxyPatientId)}&loginId=${(searchModel.loginId)}&visitTypeId=${(searchModel.visitTypeId)}&patientIdType=${(searchModel.proxyPatientIdType)}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"Authorization\": `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Schedule.Direct.ProvidersListByVisitType.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Schedule.Direct.ProvidersListByVisitType.Get.Failure\", start, fullUrl, JSON.stringify(error));\r\n return Promise.reject(error);\r\n });\r\n};\r\n\r\n/**\r\n * Phynd v2 SearchForAllProvidersByName.\r\n * \r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} provider search results.\r\n */\r\nexport const searchForAllProvidersByName = (searchModel) => {\r\n\r\n const fullUrl = encodeURI(`${BASE_URL}V2/Provider/SearchForAllProvidersByName?name=${searchModel.name}&networkCode=${searchModel.networkCode}`);\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Search.Provider.ByName\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Search.Provider.ByName.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n/**\r\n * Phynd v2 GetProviderDetail.\r\n * \r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} provider detail model.\r\n */\r\nexport const getProviderDetail = (searchModel) => {\r\n const ids = typeof searchModel.ids === \"string\" ? searchModel.ids : searchModel.ids.join(\"|\");\r\n let fullUrl = encodeURI(`${BASE_URL}V2/Provider/GetProviderDetail?Ids=${ids}&IdType=${searchModel.idType ? searchModel.idType : 'NPI'}`);\r\n if (searchModel.networkCode) {\r\n fullUrl += `&networkCode=${searchModel.networkCode}`;\r\n }\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.Detail.Default\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Provider.Detail.Default.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n/**\r\n * Phynd v2 SearchForAllProvidersByLocationAndDistance.\r\n * \r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} provider search results.\r\n */\r\nexport const searchForAllProvidersByLocationAndDistance = (searchModel) => {\r\n\r\n const fullUrl = encodeURI(`${BASE_URL}V2/Provider/SearchForAllProvidersByLocationAndDistance?location=${searchModel.location}&distance=${searchModel.distance}&pageNumber=${searchModel.pageNumber}&perPage=${searchModel.perPage}`);\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n //const request = new Request(fullUrl, params);\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Search.Provider.ByLocationDistance\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Search.Provider.ByLocationDistance.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n\r\n\r\n/**\r\n * Phynd v1 GetProviderDetail.\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} NPIs = pipe delimited list of provider NPIs\r\n * @param {string} NetworkCode = current user's health plan network code (if applicable)\r\n * @param {boolean} LiteObject = return lite object or not\r\n * @returns {Promise} provider search results.\r\n */\r\nexport const getProviderDetailV1 = (token, NPIs, NetworkCode, LiteObject) => {\r\n\r\n const fullUrl = encodeURI(`${BASE_URL}V1/Provider/GetProviderDetail?Ids=${NPIs}&IdType=NPI&networkCode=${NetworkCode}&ReturnLiteObject=${LiteObject}`);\r\n const headers = {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n };\r\n const start = new Date();\r\n\r\n return fetch2(fullUrl, token, null, 'get', headers).then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.Detail.Default\", start, fullUrl);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Provider.Detail.Default.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n\r\n};\r\n\r\n\r\n/**\r\n * Phynd v2 GetProviderDetailLite.\r\n * \r\n * @param {string} token = current user token\r\n * @param {string} NPIs = pipe delimited list of provider NPIs\r\n * @param {string} NetworkCode = current user's health plan network code (if applicable)\r\n * @param {boolean} LiteObject = return lite object or not\r\n * @returns {Promise} provider search results.\r\n */\r\nexport const getProviderDetailLiteV2 = (token, NPIs, NetworkCode, LiteObject) => {\r\n\r\n const fullUrl = encodeURI(`${BASE_URL}V2/Provider/GetProviderDetailLite?Ids=${NPIs}&IdType=NPI&networkCode=${NetworkCode}&ReturnLiteObject=${LiteObject}`);\r\n const headers = {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n };\r\n const start = new Date();\r\n\r\n return fetch2(fullUrl, token, null, 'get', headers).then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.Detail.Default\", start, fullUrl);\r\n return response;\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Provider.Detail.Default.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n\r\n};\r\n\r\n\r\nexport const getNpiFromLoginId = (loginId) => {\r\n const fullUrl = `${BASE_URL}V2/Provider/GetProviderDetail?Ids=${encodeURIComponent(loginId)}&IdType=LoginId`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.Detail.Default\", start, fullUrl);\r\n return response.json();\r\n })\r\n .then(resp => {\r\n let npi = resp.length > 0 ? resp[0].npi : null;\r\n return Promise.resolve(npi);\r\n })\r\n .catch(err => { logAPI(\"MBHWeb.Api.Provider.Detail.Default.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\n/**\r\n * Phynd v3 MyDoctorDirectVideoVisitSchedules.\r\n *\r\n * @param {any} searchModel Search parameters; property names must match the phynd api.\r\n * @returns {Promise} provider search results.\r\n */\r\nexport const getMyDoctorDirectVideoVisitSchedules = (searchModel, token,enableNewVideoVisitFlow) => {\r\n const fullUrl = enableNewVideoVisitFlow \r\n ? `${BASE_URL}V4/Scheduling/GetMyDoctorDirectVideoVisitSchedules?patientId=${(searchModel.proxyPatientId)}&loginId=${(searchModel.loginId)}`\r\n : `${BASE_URL}V3/Scheduling/GetMyDoctorDirectVideoVisitSchedules?patientId=${(searchModel.proxyPatientId)}&loginId=${(searchModel.loginId)}`;\r\n var start = new Date();\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"authorization\": \"bearer \" + token,\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.GetMyDoctorDirectVideoVisitSchedules\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Provider.GetMyDoctorDirectVideoVisitSchedules.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getProviderWithEarliestSchedule = (searchModel) => {\r\n\r\n const queryString = [];\r\n for (var property in searchModel) {\r\n if (searchModel[property] !== \"\") {\r\n queryString.push(`${property}=${encodeURIComponent(searchModel[property])}`);\r\n }\r\n }\r\n\r\n const fullUrl = `${BASE_URL}V2/Scheduling/GetProviderWithEarliestSchedule?${queryString.length > 0 ? queryString.join(\"&\") : \"\"}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params).then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.GetEarliestSchedule\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Provider.GetEarliestSchedule.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const searchForGenericProvider = (token, location, radius, sortBy = 'NextAvailableAppointment', visitTypeId, page, perPage, startDate = null, endDate = null) => {\r\n let fullUrl = `${BASE_URL}V3/Scheduling/SearchForGenericProvider?location=${location}&radius=${radius}&sortBy=${sortBy}&visitTypeId=${visitTypeId}&page=${page}&perPage=${perPage}`;\r\n\r\n if (startDate && endDate) {\r\n fullUrl += `&startDate=${startDate}&endDate=${endDate}`;\r\n }\r\n\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\",\r\n \"authorization\": `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n const start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Provider.SearchForGenericProvider.Success\", start, fullUrl);\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Provider.SearchForGenericProvider.Failure\", start, fullUrl, err); return Promise.reject(err); });\r\n};","import { logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\nimport { PROXY_APPROVED, PROXY_DECLINED, PROXY_DELETE, PROXY_CANCELLED, PROXY_PENDING, A1cScreeningOptions } from \"../constants/textConstants\";\r\n\r\nconst proxyApiUrl = typeof window !== 'undefined' ? window.serverData.data.proxyApiUrl : ''; // window is undefined during pre-render\r\nconst apiBaseUrl = typeof window !== 'undefined' ? window.serverData.data.apiBaseUrl : '';\r\nconst BASE_URL = window.serverData.data.portalAPIURL;\r\nconst UseTermsV2Endpoint = window.serverData.data.useTermsV2Endpoint;\r\nconst myBswHealthBffBaseUrl = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbff : '';\r\nconst functionsKey = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbfffunctionskey : '';\r\n\r\nconst engagementBffApiBaseUrl = !!window ? window.serverData.data.engagementBffApiBaseUrl : '';\r\nconst engagementBffFunctionsKey = !!window ? window.serverData.data.engagementBffFunctionsKey : '';\r\n\r\n//Keeping Pharamcy proxy activity codes which we have already.\r\nexport const getProxiesInfo = (token, userId, proxySource) => {\r\n const url = tools.buildUrl(proxyApiUrl, 'Api/Proxy/ProxyInfo?userId=' + encodeURIComponent(userId) + '&proxySource=' + encodeURIComponent(proxySource));\r\n const start = new Date();\r\n let activityCode = \"MBHWeb.Api.Rx.Proxy.GetProxyInfo\";\r\n if (proxySource === \"Rx,Epic\") {\r\n activityCode = \"MBHWeb.Api.RxAndEpic.Proxy.GetProxyInfo\";\r\n }\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n return fetch(url, params).then(response => {\r\n //debugger;\r\n logAPI(activityCode, start, url);\r\n return response.json();\r\n }).catch((err) => {\r\n //debugger;\r\n console.error(err);\r\n logAPI(`${activityCode}.Failure`, start, url, err);\r\n return { WhoCanManageYou: [], WhoYouCanManage: [] };\r\n });\r\n};\r\n\r\n//Handle ExternalLoginId vs patientid depends on proxyInfo.\r\nexport const getAccessList = (token, userId, proxySource) => {\r\n return getProxiesInfo(token, userId, proxySource).then(response => {\r\n const list = response && response.WhoYouCanManage && response.WhoYouCanManage\r\n .filter(userAccess => userAccess.Status && userAccess.Status.toLowerCase() === 'approved')\r\n .map((userAccess, index) => {\r\n return {\r\n firstName: userAccess.FirstName,\r\n lastName: userAccess.LastName,\r\n displayName: userAccess.FirstName + ' ' + userAccess.LastName,\r\n pharmacyPatientId: userAccess.ExternalLoginId ? userAccess.ExternalLoginId : userAccess.PatientId ? userAccess.PatientId : null,\r\n proxySource: userAccess.ProxySource,\r\n index: JSON.stringify(index + 1)\r\n };\r\n });\r\n return list;\r\n });\r\n};\r\n\r\n//To fetch all family members of loggedIn User\r\nexport const getFamilyMembersList = (token, userId, proxySource) => {\r\n return getProxiesInfo(token, userId, proxySource).then(response => {\r\n const list = response && response.WhoYouCanManage && response.WhoYouCanManage\r\n .filter(userAccess => userAccess.Status && (userAccess.Status.toLowerCase() === 'approved' || userAccess.Status.toLowerCase() === 'pending'))\r\n .map((userAccess, index) => {\r\n return {\r\n firstName: userAccess.FirstName,\r\n lastName: userAccess.LastName,\r\n displayName: userAccess.FirstName + ' ' + userAccess.LastName,\r\n pharmacyPatientId: userAccess.ExternalLoginId ? userAccess.ExternalLoginId : userAccess.PatientId ? userAccess.PatientId : null,\r\n proxySource: userAccess.ProxySource,\r\n status:userAccess.Status,\r\n index: JSON.stringify(index + 1)\r\n };\r\n });\r\n return list;\r\n });\r\n};\r\n\r\n//Keeping Pharamcy proxy activity codes which we have already.\r\nexport const initiateProxy = (token, attachments, proxySource, receiver, requester, requestType) => {\r\n const url = encodeURI(`${proxyApiUrl}api/Proxy/InitiateProxy`);\r\n const start = new Date();\r\n const REQUEST = \"request\";\r\n const REQUESTV2 = \"request.v2\";\r\n const GRANT = \"grant\";\r\n const source = proxySource === 'rx' ? \"Rx\" : proxySource === 'rx,epic' ? \"RxAndEpic\" : \"Epic\";\r\n const data = { attachments, proxySource, receiver, requester, requestType };\r\n let activityCode = '';\r\n if (proxySource && proxySource.toLowerCase() === 'rx') {\r\n activityCode = \"MBHWeb.Api.Rx.Proxy.RequestProxyAccess\";\r\n } else {\r\n activityCode = `MBHWeb.Api.Proxy.${source}.${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}`;\r\n }\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n //if (response && response.status && response.status === 200) {\r\n // logAPI(activityCode, start, url);\r\n // return response.json();\r\n //} else {\r\n // return Promise.reject(response);\r\n //}\r\n if (response && response.status >= 200 && response.status < 300) {\r\n logAPI(activityCode, start, url);\r\n return response.json();\r\n } else if (response && response.status >= 400 && response.status < 500) {\r\n logAPI(`${activityCode}.Failure`, start, url);\r\n return response.text().then(error => { throw JSON.parse(error); });\r\n }\r\n else {\r\n return Promise.reject(response.statusText);\r\n }\r\n }).catch(err => { logAPI(`${activityCode}.Failure`, start, url, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getProxyRelationship = (token) => {\r\n const fullUrl = `${proxyApiUrl}api/Proxy/ProxyRelationship`;\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Proxy.GetProxyRelationshipTypes\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(\"MBHWeb.Api.Proxy.GetProxyRelationshipTypes.Failure\", start, fullUrl, error);\r\n return Promise.reject(error);\r\n });\r\n};\r\n\r\nexport const verifyRequestorDateOfBirth = (token, proxyRequestId, dateOfBirth) => {\r\n const url = encodeURI(`${proxyApiUrl}api/Proxy/VerifyRequesterDOB?proxyRequestId=${proxyRequestId}&dateOfBirth=${dateOfBirth}`);\r\n const start = new Date();\r\n let data = { proxyRequestId, dateOfBirth };\r\n const params = {\r\n method: \"PUT\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n let activityCode = `MBHWeb.Api.Epic.Proxy.VerifyRequestorDOB`;\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(activityCode, start, url);\r\n return Promise.resolve(response.json());\r\n } else if (response.status === 400) {\r\n logAPI(`${activityCode}.Failure`, start, url);\r\n return response.text().then(error => { throw JSON.parse(error); });\r\n }\r\n else {\r\n return Promise.reject(response.statusText);\r\n }\r\n }).catch(err => {\r\n logAPI(`${activityCode}.Failure`, start, url, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getProxyTermsAndConditions = (token, featureId) => {\r\n if (!UseTermsV2Endpoint) {\r\n if (featureId !== null) {\r\n const url = `${BASE_URL}/TCC/FetchCurrent`;\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ featureid: featureId }),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(\"MBHWeb.Api.GetTermsConditions.ByFeatureId.Success\", start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n logAPI(\"MBHWeb.Api.GetTermsConditions.ByFeatureId.Failure\", start, url);\r\n return Promise.reject(response);\r\n }\r\n }).catch((e) => {\r\n logAPI(\"MBHWeb.Api.GetTermsConditions.ByFeatureId.Failure\", start, url, e);\r\n return Promise.reject(err);\r\n });\r\n }\r\n }\r\n else {\r\n if (featureId !== null) {\r\n const url = `${apiBaseUrl}v2/HealthSource/TermsAndConditions/feature/${featureId}`;\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(\"MBHWeb.Api.GetTermsConditions.ByFeatureId.Success\", start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n logAPI(\"MBHWeb.Api.GetTermsConditions.ByFeatureId.Failure\", start, url);\r\n return Promise.reject(response);\r\n }\r\n }).catch((e) => {\r\n logAPI(\"MBHWeb.Api.GetTermsConditions.ByFeatureId.Failure\", start, url, e);\r\n return Promise.reject(err);\r\n });\r\n\r\n }\r\n\r\n\r\n }\r\n};\r\n\r\nexport const acceptProxyTermsAndConditions = (token, featureId, isAccepted, userName, email, loginId, proxyId, versionId) => {\r\n if (!UseTermsV2Endpoint) {\r\n if (featureId !== null) {\r\n const url = `${BASE_URL}/TCC/AcceptCurrent`;\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({ VersionId: versionId, Featureid: featureId, IsAccepted: isAccepted, UserName: userName, Email: email, LoginId: loginId, ProxyId: proxyId }),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(\"MBHWeb.Api.AcceptTermsConditions.ById.Get.Success\", start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n logAPI(\"MBHWeb.Api.AcceptTermsConditions.ByFeatureId.Failure\", start, url);\r\n return Promise.reject(response);\r\n }\r\n }).catch((e) => {\r\n logAPI(\"MBHWeb.Api.AcceptTermsConditions.ByFeatureId.Failure\", start, url, e);\r\n return Promise.reject(err);\r\n });\r\n }\r\n } else {\r\n if (featureId !== null) {\r\n const url = `${apiBaseUrl}v2/HealthSource/TermsAndConditions/feature/${featureId}`;\r\n const params = {\r\n method: \"PUT\",\r\n body: JSON.stringify([{ VersionId: versionId, Featureid: featureId, IsAccepted: isAccepted, UserName: userName, Email: email, LoginId: loginId, ProxyId: proxyId }]),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n },\r\n };\r\n var start = new Date();\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(\"MBHWeb.Api.AcceptTermsConditions.ById.Get.Success\", start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n logAPI(\"MBHWeb.Api.AcceptTermsConditions.ByFeatureId.Failure\", start, url);\r\n return Promise.reject(response);\r\n }\r\n }).catch((e) => {\r\n logAPI(\"MBHWeb.Api.AcceptTermsConditions.ByFeatureId.Failure\", start, url, e);\r\n return Promise.reject(err);\r\n });\r\n }\r\n }\r\n\r\n};\r\n\r\n//Keeping Pharmacy proxy activity codes which we have already. PROXY_PENDING only apply if user is doing anonymous request by email.\r\nexport const changeRequestStatus = (token, proxyRequestId, proxySource, requestType, status, reason, dateOfBirth = '', isUnknown = false) => {\r\n const url = encodeURI(`${proxyApiUrl}api/Proxy/ChangeRequestStatus`);\r\n const start = new Date();\r\n const REQUEST = \"request\";\r\n const REQUESTV2 = \"request.v2\";\r\n const GRANT = \"grant\";\r\n const source = proxySource === 'rx' ? \"Rx\" : proxySource === 'rx,epic' ? \"RxAndEpic\" : \"Epic\";\r\n let data = { proxyRequestId, proxySource, requestType, status, reason };\r\n if (dateOfBirth) {\r\n data[\"dateOfBirth\"] = dateOfBirth;\r\n }\r\n if (isUnknown) {\r\n data[\"isUnknown\"] = isUnknown;\r\n }\r\n let activityCode = '';\r\n if (status === PROXY_APPROVED)\r\n activityCode = `MBHWeb.Api.${source}.Proxy.ApproveProxy${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}`;\r\n else if (status === PROXY_DECLINED)\r\n activityCode = `MBHWeb.Api.${source}.Proxy.DeclineProxy${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}`;\r\n else if (status === PROXY_DELETE || status === PROXY_CANCELLED)\r\n activityCode = `MBHWeb.Api.${source}.Proxy.CancelProxy${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}`;\r\n else if (status === PROXY_PENDING)\r\n activityCode = `MBHWeb.Api.${source}.Proxy.LinkProxy${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}`;\r\n\r\n const params = {\r\n method: \"PUT\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\"\r\n }\r\n };\r\n return fetch(url, params).then(response => {\r\n if (response && response.status >= 200 && response.status < 300) {\r\n logAPI(activityCode, start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n if (response && ((response.status === 400 && response.statusText === \"Bad Request\")\r\n || (response.status === 401 && response.statusText === \"Unauthorized\")\r\n || (response.status === 409 && response.statusText === \"Conflict\"))) {\r\n logAPI(`${activityCode}.Failure`, start, url);\r\n return response.text().then(error => { throw JSON.parse(error); });\r\n } else {\r\n return Promise.reject(response.statusText);\r\n }\r\n }\r\n }).catch(err => {\r\n logAPI(`${activityCode}.Failure`, start, url, err);\r\n console.log(err);\r\n //if (status !== 'P') {\r\n return Promise.reject(err);\r\n //}\r\n });\r\n};\r\n\r\nexport const declineProxyInLogoutMode = (token, proxyRequestId, proxySource, requestType, status, reason, dateOfBirth = '', isUnknown = false) => {\r\n const url = `${BASE_URL}/api/proxy/DeclineProxy`;\r\n const start = new Date();\r\n const REQUEST = \"request\";\r\n const REQUESTV2 = \"request.v2\";\r\n const GRANT = \"grant\";\r\n const source = proxySource === 'rx' ? \"Rx\" : proxySource === 'rx,epic' ? \"RxAndEpic\" : \"Epic\";\r\n let data = { ProxyRequestId: proxyRequestId, ProxySource: proxySource, RequestType: requestType, Status: status, Reason: reason };\r\n if (isUnknown) {\r\n data[\"IsUnknown\"] = isUnknown;\r\n }\r\n return fetch2(url, token, JSON.stringify(data), 'post').then(response => {\r\n if (response && response.fetchSuccessful) {\r\n logAPI(`MBHWeb.Api.${source}.Proxy.DeclineProxy${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}`, start, url, { isLogoutMode: true });\r\n return response;\r\n }\r\n else {\r\n return Promise.reject(response.statusCode);\r\n }\r\n }).catch(err => {\r\n logAPI(`MBHWeb.Api.${source}.Proxy.DeclineProxy${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}.Failure`, start, url, { error: err, isLogoutMode: true }); return Promise.reject(err);\r\n });\r\n};\r\n\r\n//Keeping Pharamcy proxy activity codes which we have already.\r\nexport const resendProxyAccess = (token, proxyRequestId, proxySource, requestType) => {\r\n const url = encodeURI(`${proxyApiUrl}Api/Proxy/ResendProxyAccess?proxyRequestId=${proxyRequestId}&proxySource=${proxySource}`);\r\n const start = new Date();\r\n const REQUEST = \"request\";\r\n const REQUESTV2 = \"request.v2\";\r\n const GRANT = \"grant\";\r\n const source = proxySource === 'rx' ? \"Rx\" : proxySource === 'rx,epic' ? \"RxAndEpic\" : \"Epic\";\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"PUT\"\r\n };\r\n\r\n return fetch(url, params)\r\n .then(response => {\r\n logAPI(`MBHWeb.Api.${source}.Proxy.ResendProxyAccess${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}`, start, url);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(`MBHWeb.Api.${source}.Proxy.ResendProxyAccess${requestType === GRANT ? \"Grant\" : requestType === REQUEST ? \"Request\" : (requestType === REQUESTV2 ? \"Request.V2\" : \"\")}.Failure`, start, url, error);\r\n return Promise.reject(error);\r\n });\r\n};\r\n\r\nexport const getEpicWhoCanManageYou = (token, userName) => {\r\n const url = `${apiBaseUrl}v2/Epic/WhoCanManageYou?userName=${encodeURIComponent(userName)}`;\r\n const start = new Date();\r\n\r\n return fetch2(url, token).then(response => {\r\n logAPI(\"MBHWeb.Api.Proxy.GetEpicWhoCanManageYou\", start, url);\r\n return response;\r\n }).catch((err) => {\r\n logAPI(\"MBHWeb.Api.Proxy.GetEpicWhoCanManageYou.Failure\", start, url, err);\r\n return { Proxies: [] };\r\n });\r\n};\r\n\r\nexport const proxyStatusInLogoutMode = (token, proxyRequestId) => {\r\n const url = `${BASE_URL}/api/proxy/ProxyStatus?proxyRequestId=${encodeURIComponent(proxyRequestId)}`;\r\n const start = new Date();\r\n let activityCode = \"MBHWeb.Api.Proxy.ProxyStatus\";\r\n\r\n return fetch2(url, token, null, 'GET').then(response => {\r\n //debugger;\r\n logAPI(activityCode, start, url);\r\n return response;\r\n }).catch((err) => {\r\n //debugger;\r\n console.error(err);\r\n logAPI(`${activityCode}.Failure`, start, url, err);\r\n return null;\r\n });\r\n};\r\n\r\nexport const proxyDetails = (token, proxyRequestId) => {\r\n const fullUrl = encodeURI(`${proxyApiUrl}Api/Proxy/ProxyDetails?proxyRequestId=${proxyRequestId}`);\r\n let activityCode = \"MBHWeb.Api.Proxy.ProxyDetails\";\r\n let params = {\r\n headers: {\r\n Authorization: `bearer ${token}`\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(activityCode, start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(error => {\r\n logAPI(`${activityCode}.Failure`, start, fullUrl, error);\r\n return Promise.reject(error);\r\n });\r\n};\r\n\r\n//Fetching ProxySuggestions data from loggedIn User.\r\nexport const getProxySuggestion = (token) => {\r\n let activityCode = \"MBHWeb.Api.Proxy.ProxySuggestions\"; \r\n const url = tools.buildUrl(myBswHealthBffBaseUrl, '/v1/proxysuggestions');\r\n const start = new Date();\r\n let params = {\r\n headers: {\r\n \"authorization\": \"bearer \" + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\",\r\n \"x-functions-key\": functionsKey,\r\n },\r\n method: \"GET\"\r\n };\r\n return fetch(url, params).then(response => {\r\n if (response.status >= 200 && response.status < 300) {\r\n logAPI(`${activityCode}.Success`, start, url);\r\n return Promise.resolve(response.json());\r\n } else {\r\n logAPI(`${activityCode}.Failure`, start, url);\r\n return Promise.reject(response);\r\n }\r\n return response.json();\r\n }).catch((err) => {\r\n logAPI(`${activityCode}.Failure`, start, url, err);\r\n console.error(err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n//To post the data in mammography-flow\r\nexport const submitCareGapInfo = (token, mammographyFlowFormInputs, mammographyNoReason, mammographyOption, careGapAttachments) => {\r\n const url = encodeURI(`${myBswHealthBffBaseUrl}v1/caregap/inbasket/send`);\r\n const start = new Date();\r\n let today = new Date().toLocaleDateString()\r\n let mammographyOptions = ['I don’t need a mammogram', 'I don’t need an A1C screening']\r\n\r\n let Procedure = mammographyFlowFormInputs?.procedureType || mammographyNoReason?.procedureType\r\n ? mammographyNoReason?.procedureType || mammographyFlowFormInputs?.procedureType\r\n : \"Mammography\" \r\n let DateCompleted = `${mammographyFlowFormInputs?.pMonth}/01/${mammographyFlowFormInputs?.pYear}`; //today;\r\n let FacilityName = mammographyFlowFormInputs?.name;\r\n let FacilityAddress = mammographyFlowFormInputs?.FacilityAddress || '';\r\n let FacilityPhone = mammographyFlowFormInputs?.pNumber;\r\n let FacilityFax = '';\r\n let procedureNotNeeded = mammographyOptions.some((option) => mammographyOption === option)\r\n let notNeededReason = procedureNotNeeded === true ? `${mammographyNoReason?.selectedReason}${mammographyNoReason?.selectedReason===\"Other\"? `.${mammographyNoReason?.description}` : ''}` : \"\";\r\n let EpicAttachments = careGapAttachments\r\n\r\n if (procedureNotNeeded) {\r\n FacilityName = mammographyNoReason?.data?.facilityName;\r\n FacilityPhone = mammographyNoReason?.data?.phoneNumber;\r\n DateCompleted = mammographyNoReason?.data?.procedureMonth || mammographyNoReason?.data?.procedureYear ? `${mammographyNoReason?.data?.procedureMonth}/01/${mammographyNoReason?.data?.procedureYear}` : \"\";\r\n }\r\n \r\n const data = { Procedure, DateCompleted, FacilityName, FacilityAddress, FacilityPhone, FacilityFax, procedureNotNeeded, notNeededReason, ...(careGapAttachments != null && { EpicAttachments }) };\r\n let activityCode = 'MBHWeb.Api.Proxy.MammographyFlow';\r\n const payload = mammographyFlowFormInputs ? { mammographyOption, ...mammographyFlowFormInputs, careGapAttachments } : { mammographyOption, ...mammographyNoReason };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey\r\n }\r\n };\r\n let result = { data: null, success: false, errorMsg: null };\r\n return fetch(url, params).then(response => {\r\n if (response && response.status >= 200 && response.status < 300) {\r\n logAPI(activityCode, start, url, { payload : payload});\r\n result.success = true;\r\n return result;\r\n } else {\r\n result.success = false;\r\n logAPI(`${activityCode}.Fail`, start, url, { payload: payload });\r\n result.errorMsg = response.statusText;\r\n return result\r\n }\r\n }).catch(err => {\r\n result.errorMsg = err;\r\n result.success = false;\r\n logAPI(`${activityCode}.Failure`, start, url, { payload: payload, err });\r\n //return result;\r\n return Promise.reject(result);\r\n });\r\n};\r\n\r\nexport const submitCareGapData = (token, careGapFlowFormInputs, careGapNoReason, careGapSelectedOption, careGapProcedureType, careGapAttachments, careGapsSessionId) => {\r\n const url = encodeURI(`${myBswHealthBffBaseUrl}v1/caregap/inbasket/send`);\r\n const start = new Date();\r\n let today = new Date().toLocaleDateString()\r\n let careGapOptions = ['I don’t need a mammogram', A1cScreeningOptions.DontNeed, 'I don’t need an annual wellness visit', \"I don’t need a colorectal cancer screening\"]\r\n\r\n let Procedure = careGapProcedureType;\r\n let DateCompleted = careGapFlowFormInputs?.dateCompleted ? careGapFlowFormInputs?.dateCompleted : `${careGapFlowFormInputs?.pMonth}/01/${careGapFlowFormInputs?.pYear}`; //today;\r\n let FacilityName = careGapFlowFormInputs?.name;\r\n let FacilityAddress = careGapFlowFormInputs?.FacilityAddress || '';\r\n let FacilityPhone = careGapFlowFormInputs?.pNumber;\r\n let FacilityFax = '';\r\n let FacilityScreenMethod= careGapFlowFormInputs?.sMethod;\r\n let ProcedureNotNeeded = careGapOptions.some((option) => careGapSelectedOption === option)\r\n let NotNeededReason = ProcedureNotNeeded === true ? `${careGapNoReason?.selectedReason}${careGapNoReason?.selectedReason === \"Other\" ? `.${careGapNoReason?.description}` : ''}` : \"\";\r\n let EpicAttachments = careGapAttachments;\r\n let AdditionalDetails = [{ key: careGapProcedureType, value: careGapFlowFormInputs ? careGapFlowFormInputs?.reading : \"\", careGapsSessionId: careGapsSessionId }]\r\n\r\n if (ProcedureNotNeeded) {\r\n FacilityName = careGapNoReason?.data?.facilityName;\r\n FacilityPhone = careGapNoReason?.data?.phoneNumber;\r\n DateCompleted = careGapNoReason?.data?.procedureMonth || careGapNoReason?.data?.procedureYear ? `${careGapNoReason?.data?.procedureMonth}/01/${careGapNoReason?.data?.procedureYear}` : \"\";\r\n }\r\n\r\n const data = { Procedure, DateCompleted, FacilityName, FacilityAddress, FacilityPhone, FacilityFax, FacilityScreenMethod, ProcedureNotNeeded, NotNeededReason, ...(careGapAttachments != null && { EpicAttachments }), AdditionalDetails };\r\n let activityCode = `MBHWeb.Api.Proxy.${careGapProcedureType}Flow`;\r\n const payload = careGapFlowFormInputs ? { careGapSelectedOption, ...careGapFlowFormInputs, careGapAttachments } : { careGapSelectedOption, ...careGapNoReason };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": functionsKey\r\n }\r\n };\r\n let result = { data: null, success: false, errorMsg: null };\r\n return fetch(url, params).then(response => {\r\n if (response && response.status >= 200 && response.status < 300) {\r\n logAPI(activityCode, start, url, { payload: payload });\r\n result.success = true;\r\n return result;\r\n } else {\r\n result.success = false;\r\n logAPI(`${activityCode}.Fail`, start, url, { payload: payload });\r\n result.errorMsg = response.statusText;\r\n return result\r\n }\r\n }).catch(err => {\r\n result.errorMsg = err;\r\n result.success = false;\r\n logAPI(`${activityCode}.Failure`, start, url, { payload: payload, err });\r\n //return result;\r\n return Promise.reject(result);\r\n });\r\n};\r\nexport const submitCareGapSetupData = (token, careGapFlowFormInputs, careGapSelectedOption, careGapProcedureType, careGapsSessionId, currentUserInfo) => {\r\n const url = encodeURI(`${engagementBffApiBaseUrl}/v2/caregap/inbasket/send`);\r\n //const url = encodeURI('https://fnengagementbff-tst2-eastus2.azurewebsites.net/api/v2/careGap/inBasket/send');\r\n const start = new Date();\r\n let today = new Date().toLocaleDateString()\r\n let careGapOptions = ['I don’t need a mammogram', A1cScreeningOptions.DontNeed, 'I don’t need an annual wellness visit', \"I don’t need a colorectal cancer screening\"]\r\n let procedure = \"Colorectal Exam\" ;\r\n let facilityPhone = careGapFlowFormInputs?.pNumber;\r\n let patientId = currentUserInfo;\r\n let patientIdType = \"External\";\r\n let subjectCode = \"requestcalltoschedule\";\r\n let messageData = [{ key: \"phone\", value: careGapFlowFormInputs ? careGapFlowFormInputs?.pNumber : \"\" }, {key: \"careGapsSessionId\", value: careGapsSessionId }]\r\n\r\n \r\n\r\n const data = { procedure, patientId, patientIdType, subjectCode, messageData };\r\n let activityCode = `MBHWeb.Api.Proxy.${careGapProcedureType}Flow`;\r\n const payload = careGapFlowFormInputs ? { careGapSelectedOption, ...careGapFlowFormInputs } : { careGapSelectedOption, ...careGapNoReason };\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify(data),\r\n headers: {\r\n \"Authorization\": 'bearer ' + token,\r\n \"Accept\": \"application/json\",\r\n \"Content-type\": \"application/json\",\r\n \"x-functions-key\": engagementBffFunctionsKey //\"sZIjopxciFOpSJHb5utBy-l6WMiciCHTHxK9P_tTauIcAzFuK_9q5w==\"\r\n }\r\n };\r\n let result = { data: null, success: false, errorMsg: null };\r\n return fetch(url, params).then(response => {\r\n if (response && response.status >= 200 && response.status < 300) {\r\n logAPI(activityCode, start, url, { payload: payload });\r\n result.success = true;\r\n return result;\r\n } else {\r\n result.success = false;\r\n logAPI(`${activityCode}.Fail`, start, url, { payload: payload });\r\n result.errorMsg = response.statusText;\r\n return result\r\n }\r\n }).catch(err => {\r\n result.errorMsg = err;\r\n result.success = false;\r\n logAPI(`${activityCode}.Failure`, start, url, { payload: payload, err });\r\n //return result;\r\n return Promise.reject(result);\r\n });\r\n};","import { logAPI } from \"./andyliticsApi\";\r\nimport { debug } from \"util\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\n/**\r\n * Returns an auth token for the given user.\r\n * \r\n * @param {any} payload username & password\r\n * @returns {any} oauth token\r\n */\r\nexport const userAuthenticate = (payload) => {\r\n const fullUrl = `${window.serverData.data.ssoBaseURL}OAuth/Token`;\r\n const start = new Date();\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({\r\n \"username\": payload.userName,\r\n \"password\": payload.password, \r\n \"grant_type\": \"password\"\r\n })\r\n };\r\n\r\n return ssoFetch(fullUrl, params).then(\r\n function (response) {\r\n logAPI(\"MBHWeb.Api.SSO.UserAuthenticate\", start, fullUrl);\r\n \r\n return response.json();\r\n }\r\n ).then(\r\n function (ret) {\r\n ret.dateLoaded = new Date(); \r\n return ret;\r\n }\r\n ).catch(err => { logAPI(\"MBHWeb.Api.SSO.UserAuthenticate.Failure\", start, fullUrl); return Promise.reject(err); });\r\n};\r\n\r\n\r\nexport const userRefresh = (payload) => {\r\n const fullUrl = `${window.serverData.data.ssoBaseURL}OAuth/Token`;\r\n const start = new Date();\r\n\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({\r\n \"refresh_token\": payload.refresh_token,\r\n \"grant_type\": \"refresh_token\"\r\n })\r\n };\r\n\r\n return ssoFetch(fullUrl, params).then(\r\n function (response) {\r\n //debugger;\r\n logAPI(\"MBHWeb.Api.SSO.UserRefresh\", start, fullUrl);\r\n return response.json();\r\n }\r\n ).then(\r\n function (ret) {\r\n //debugger;\r\n ret.dateLoaded = new Date(); \r\n return ret;\r\n }\r\n ).catch(err => { logAPI(\"MBHWeb.Api.SSO.UserRefresh.Failure\", start, fullUrl); return Promise.reject(err); });\r\n\r\n};\r\n\r\nexport const userLogout = () => {\r\n const fullUrl = `${window.serverData.data.ssoBaseURL}Logon/LogoutCurrentUser2`;\r\n const start = new Date();\r\n\r\n const params = {\r\n method: \"POST\",\r\n };\r\n\r\n return ssoFetch(fullUrl, params).then(\r\n function (response) {\r\n //debugger;\r\n logAPI(\"MBHWeb.Api.SSO.UserLogout\", start, fullUrl);\r\n return response; // response.json(); // don't really care about the response\r\n }\r\n ).then(\r\n function (ret) {\r\n //debugger;\r\n //ret.dateLoaded = new Date();\r\n return ret;\r\n }\r\n ).catch(err => { logAPI(\"MBHWeb.Api.SSO.UserLogout.Failure\", start, fullUrl); return Promise.reject(err); });\r\n\r\n};\r\n\r\nexport const isLoggedInPost2 = (sToken) => {\r\n //debugger;\r\n var d = new Date();\r\n var fullUrl = `${window.serverData.data.ssoBaseURL}logon/IsLoggedInPost2?u=` + d.getTime();\r\n if (sToken) {\r\n fullUrl = fullUrl + '&T=' + sToken; \r\n }\r\n const start = new Date();\r\n //console.log(payload);\r\n const params = {\r\n method: \"POST\",\r\n body: JSON.stringify({\r\n \"token\": null\r\n }),\r\n };\r\n\r\n return ssoFetch(fullUrl, params)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.SSO.IsLoggedInPost2\", start, fullUrl);\r\n return resp.json();\r\n })\r\n .catch((error) => {\r\n logAPI(\"MBHWeb.Api.SSO.IsLoggedInPost2.Failure\", start, fullUrl);\r\n console.log(\"Failed fetching: \" + fullUrl);\r\n console.log(error);\r\n throw error;\r\n //return { IsLoggedIn: false }; // Mission critical... return something\r\n });\r\n\r\n};\r\n\r\nexport const isLoggedIn = () => {\r\n //debugger;\r\n const fullUrl = `${window.serverData.data.ssoBaseURL}logon/isLoggedIn2`;\r\n const start = new Date();\r\n\r\n return ssoFetch(fullUrl)\r\n .then(resp => {\r\n logAPI(\"MBHWeb.Api.SSO.IsLoggedIn\", start, fullUrl);\r\n return resp.json();\r\n })\r\n .catch((error) => {\r\n logAPI(\"MBHWeb.Api.SSO.IsLoggedIn.Failure\", start, fullUrl);\r\n return { IsLoggedIn: false }; // Mission critical... return something\r\n });\r\n\r\n};\r\n\r\nexport const ssoFetch = (url, params) => {\r\n if (typeof params === \"undefined\" || params === null) {\r\n params = {method: \"GET\"}\r\n }\r\n params.headers = params.headers || {};\r\n params.headers[\"Accept\"] = \"application/json\";\r\n params.headers[\"Content-type\"] = \"application/json\";\r\n params.headers[\"Cache-Control\"] = \"no-cache\";\r\n params.headers[\"Pragma\"] = \"no-cache\";\r\n\r\n return fetchWithCreds(url, params);\r\n}","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\n\r\nconst BASE_URL = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbff : '';\r\nconst API_KEY = typeof window !== 'undefined' ? window.serverData.data.mybswhealthbfffunctionskey : '';\r\nconst SURVEY_URL = typeof window !== 'undefined' ? window.serverData.data.surveyUrl : '';\r\n\r\nexport const getThriveCard = (token) => {\r\n const fullUrl = window.serverData.data.enableThrive365Tile ? `${BASE_URL}v2/thriveCard` : `${BASE_URL}thriveCard`;\r\n\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n \r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Thrive.Card.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n console.log(\"getThriveCard api Error\", err);\r\n logAPI(\"MBHWeb.Api.Thrive.Card.Get.Failure\", start, fullUrl, err);\r\n return Promise.reject(err);\r\n });\r\n \r\n};\r\n\r\n\r\nexport const getThriveReport = (token) => {\r\n\r\n return getThriveReportV2(token, new Date().getFullYear());\r\n\r\n const fullUrl = tools.buildUrl(SURVEY_URL, 'wellness/v2/wellbeingscore/getuserthrivereport?year=' + encodeURIComponent(reportYear));\r\n //const fullUrl = `${SURVEY_URL}wellness/v2/wellbeingscore/getuserthrivereport?year=2020`;\r\n\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n /*\r\n // TODO: for now, return a mock object. Replace with the fetch below when the api is fixed.\r\n const mock = {\r\n overallScore: 75,\r\n overallScoreColor: \"#FFC844\",\r\n overallScoreInterpretation: \"Looking good! Keep up the good work, Jennifer.\",\r\n results: [\r\n {\r\n name: \"Professional\",\r\n score: 75,\r\n scoreColor: \"#FFC844\",\r\n goals: [\"Eat better to lose weight\"],\r\n goalLink: \"www.google.com\"\r\n },\r\n {\r\n name: \"Physical\",\r\n score: 75,\r\n scoreColor: \"#FFC844\",\r\n goals: [\"Eat better to lose weight\"],\r\n goalLink: \"www.google.com\"\r\n },\r\n {\r\n name: \"Social\",\r\n score: 100,\r\n scoreColor: \"#00C4B3\",\r\n goals: [\"Eat better to lose weight\"],\r\n goalLink: \"www.google.com\"\r\n },\r\n {\r\n name: \"Emotional\",\r\n score: 98,\r\n scoreColor: \"#00C4B3\",\r\n goals: [],\r\n goalLink: \"\"\r\n },\r\n {\r\n name: \"Financial\",\r\n score: 75,\r\n scoreColor: \"#FFC844\",\r\n goals: [],\r\n goalLink: \"\"\r\n }],\r\n discussionPoints: [\r\n \"Anxiety screening\",\r\n \"Concerning back pain\"\r\n ],\r\n pledge: \"In 2019, I pledge to work hard towards my goals, stay consistent, and be my best!\"\r\n };\r\n \r\n return Promise.resolve(mock);\r\n */\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Thrive.Report.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n console.log(\"getThriveCard api Error\", err);\r\n logAPI(\"MBHWeb.Api.Thrive.Report.Get.Failure\", start, fullUrl, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\n\r\nexport const getThriveReportV2 = (token, reportYear) => {\r\n const fullUrl = tools.buildUrl(SURVEY_URL, 'wellness/v2/wellbeingscore/getuserthrivereport?year=' + encodeURIComponent(reportYear));\r\n //const fullUrl = `${SURVEY_URL}wellness/v2/wellbeingscore/getuserthrivereport?year=${reportYear}`;\r\n \r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n /*\r\n // TODO: for now, return a mock object. Replace with the fetch below when the api is fixed.\r\n const mock = {\r\n overallScore: 75,\r\n overallScoreColor: \"#FFC844\",\r\n overallScoreInterpretation: \"Looking good! Keep up the good work, Jennifer.\",\r\n results: [\r\n {\r\n name: \"Professional\",\r\n score: 75,\r\n scoreColor: \"#FFC844\",\r\n goals: [\"Eat better to lose weight\"],\r\n goalLink: \"www.google.com\"\r\n },\r\n {\r\n name: \"Physical\",\r\n score: 75,\r\n scoreColor: \"#FFC844\",\r\n goals: [\"Eat better to lose weight\"],\r\n goalLink: \"www.google.com\"\r\n },\r\n {\r\n name: \"Social\",\r\n score: 100,\r\n scoreColor: \"#00C4B3\",\r\n goals: [\"Eat better to lose weight\"],\r\n goalLink: \"www.google.com\"\r\n },\r\n {\r\n name: \"Emotional\",\r\n score: 98,\r\n scoreColor: \"#00C4B3\",\r\n goals: [],\r\n goalLink: \"\"\r\n },\r\n {\r\n name: \"Financial\",\r\n score: 75,\r\n scoreColor: \"#FFC844\",\r\n goals: [],\r\n goalLink: \"\"\r\n }],\r\n discussionPoints: [\r\n \"Anxiety screening\",\r\n \"Concerning back pain\"\r\n ],\r\n pledge: \"In 2019, I pledge to work hard towards my goals, stay consistent, and be my best!\"\r\n };\r\n \r\n return Promise.resolve(mock);\r\n */\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Thrive.Report.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n console.log(\"getThriveReportV2 api Error\", err);\r\n logAPI(\"MBHWeb.Api.Thrive.Report.Get.Failure\", start, fullUrl, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getWellBeingReport = (token, reportYear) => {\r\n const fullUrl = tools.buildUrl(SURVEY_URL, 'wellness/wellbeingscore/GetWellnessReport?year=' + encodeURIComponent(reportYear));\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n logAPI(\"MBHWeb.Api.Thrive.WellBeingReport.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n console.log(\"getWellBeingReport api Error\", err);\r\n logAPI(\"MBHWeb.Api.Thrive.WellBeingReport.Get.Failure\", start, fullUrl, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getReportPdf = (token, reportYear) => {\r\n const fullUrl = tools.buildUrl(SURVEY_URL, 'Wellness/WellBeingScore/GetWellnessReportPDF?year=' + encodeURIComponent(reportYear));\r\n const params = {\r\n headers: {\r\n \"Authorization\": `bearer ${token}`,\r\n \"x-functions-key\": API_KEY,\r\n \"Cache-Control\": \"no-cache\",\r\n \"Pragma\": \"no-cache\"\r\n },\r\n method: \"GET\"\r\n };\r\n\r\n var start = new Date();\r\n\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n const filename = \"WellbeingReport.pdf\";\r\n response.blob().then(blob => {\r\n let url = window.URL.createObjectURL(blob);\r\n let a = document.createElement('a');\r\n a.href = url;\r\n a.download = filename;\r\n a.click();\r\n });\r\n logAPI(\"MBHWeb.Api.Thrive.ReportPdf.Get\", start, fullUrl);\r\n return response.json();\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Thrive.ReportPdf.Get.Failure\", start, fullUrl, err);\r\n return Promise.reject(err);\r\n });\r\n}\r\n\r\n","import { logAndylitics, log, logAPI } from \"./andyliticsApi\";\r\nimport * as tools from \"../helpers/Tools\";\r\n\r\nconst BASE_URL = typeof window !== 'undefined' ? window.serverData.data.phyndApibaseUrl : '';\r\nconst CLIENT_ID = \"MyBSWHealth.Web\";\r\n\r\nexport const getCityOrZip = (searchModel, timestamp) => {\r\n const fullUrl = `${BASE_URL}V2/Typeahead/GetAllMatchingCitiesOrZipCodes?filter=${encodeURIComponent(searchModel.filter)}&maxresults=${searchModel.maxResults ? searchModel.maxResults : \"25\"}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n \r\n var start = new Date();\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n return response.json();\r\n })\r\n .then(json => {\r\n return { timestamp: timestamp, results: json };\r\n })\r\n .catch(err => { logAPI(\"MBHWeb.Api.Typeahead.CityOrZip.Failure\", new Date(), fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getMatchingTerms = (searchModel, timestamp) => {\r\n let fullUrl = `${BASE_URL}V2/Typeahead/GetAllMatchingTerms?term=${encodeURIComponent(searchModel.term)}`;\r\n \r\n fullUrl += searchModel.returnAll ? `&returnAll=${searchModel.returnAll}` : \"&returnAll=false\";\r\n fullUrl += searchModel.networkCode ? `&networkCode=${searchModel.networkCode}` : \"\";\r\n fullUrl += searchModel.acoAlliance ? `&acoAlliance=${searchModel.acoAlliance}` : \"\";\r\n fullUrl += searchModel.practiceGroup ? `&practiceGroup=${searchModel.practiceGroup}` : \"&practiceGroup=BSW\";\r\n fullUrl += searchModel.sortCategories ? `&sortCategories=${searchModel.sortCategories}` : \"&sortCategories=true\";\r\n\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n \r\n var start = new Date();\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n return response.json();\r\n })\r\n .then(json => {\r\n return { timestamp: timestamp, results: json };\r\n })\r\n .catch(err => {\r\n logAPI(\"MBHWeb.Api.Typeahead.MatchingTerms.Failure\", new Date(), fullUrl, err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n\r\nexport const getMatchingTermsByLocation = (searchModel) => {\r\n let fullUrl = `${BASE_URL}V2/Typeahead/GetAllMatchingByLocation?term=${encodeURIComponent(searchModel.term)}`;\r\n\r\n fullUrl += searchModel.location ? `&location=${searchModel.location}` : \"\";\r\n fullUrl += searchModel.distance ? `&distance=${searchModel.distance}` : \"\";\r\n fullUrl += searchModel.returnAll ? `&returnAll=${searchModel.returnAll}` : \"\";\r\n fullUrl += searchModel.returnSpecialties ? `&returnSpecialties=${ searchModel.returnSpecialties }` : \"\";\r\n \r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n \r\n var start = new Date();\r\n return fetch(fullUrl, params).then(response => {\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Typeahead.MatchingTermsByLocation.Failure\", new Date(), fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getMatchingSpecialties = (searchModel) => {\r\n const fullUrl = `${BASE_URL}V2/Typeahead/GetMatchingSpecialties?term=${encodeURIComponent(searchModel.term)}`;\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n \r\n var start = new Date();\r\n return fetch(fullUrl, params).then(response => {\r\n return response.json();\r\n }).catch(err => { logAPI(\"MBHWeb.Api.Typeahead.MatchingSpecialties.Failure\", new Date(), fullUrl, err); return Promise.reject(err); });\r\n};\r\n\r\nexport const getMatchingInsurance = (searchModel, timestamp) => {\r\n let fullUrl = `${BASE_URL}V2/Typeahead/GetAllMatchingInsurance?term=${encodeURIComponent(searchModel.term)}&groupByCarrier=true`;\r\n\r\n fullUrl += searchModel.returnAll ? `&returnAll=${searchModel.returnAll}` : \"\";\r\n fullUrl += searchModel.networkCode ? `&networkCode=${searchModel.networkCode}` : \"\";\r\n fullUrl += searchModel.acoAlliance ? `&acoAlliance=${searchModel.acoAlliance}` : \"\";\r\n fullUrl += searchModel.practiceGroup ? `&practiceGroup=${searchModel.practiceGroup}` : \"\";\r\n fullUrl += searchModel.groupByCarrier ? `&groupByCarrier=${ searchModel.groupByCarrier }` : \"\";\r\n\r\n const params = {\r\n headers: {\r\n \"x-bsw-clientid\": CLIENT_ID,\r\n \"accept\": \"application/json\"\r\n },\r\n method: \"GET\"\r\n };\r\n \r\n var start = new Date();\r\n return fetch(fullUrl, params)\r\n .then(response => {\r\n return response.json();\r\n })\r\n .then(json => {\r\n return { timestamp: timestamp, results: json };\r\n })\r\n .catch(err => { logAPI(\"MBHWeb.Api.Typeahead.MatchingInsurance.Failure\", new Date(), fullUrl, err); return Promise.reject(err); });\r\n};\r\n","import * as React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport configureStore from \"../store/configureStore\";\r\nimport { Provider } from \"react-redux\";\r\nimport { BrowserRouter, Route, Switch, withRouter } from \"react-router-dom\";\r\nimport rootReducer from \"../reducers\";\r\nimport { persistStore } from 'redux-persist';\r\nimport { PersistGate } from 'redux-persist/integration/react';\r\nimport * as Tools from \"../helpers/Tools\";\r\nimport * as types from \"../constants/actionTypes\";\r\nimport configureFetch from \"../helpers/configureFetch\";\r\n\r\n//import 'bootstrap/dist/css/bootstrap.min.css';\r\n// import scss to cause webpack to see it as a dependency...\r\nimport \"../scss/include/index.scss\";\r\nimport Popper from 'popper.js';\r\nimport 'bootstrap/dist/js/bootstrap.bundle.min';\r\n\r\nimport { logReactError } from \"../api/loggingApi\";\r\n\r\nimport Cookies from \"cookies-js\";\r\n\r\nimport RefreshOnNav from \"./common/RefreshOnNav\";\r\n\r\nimport { ApplicationInsights } from \"@microsoft/applicationinsights-web\";\r\n\r\n\r\nimport AppRoutes from \"./AppRoutes\";\r\nimport HistoryBinder from \"./common/HistoryBinder\";\r\nimport MessageSpinner from \"./common/MessageSpinner\"\r\n\r\nimport MainErrorBoundary from \"./common/MainErrorBoundary\";\r\nimport { logUI } from \"../api/andyliticsApi\";\r\n/* Planning for removing firebase/GA4 I think the only info we have been capturing was via GA3 aka UA (Univeral Analytics) \r\nimport { initializeApp } from \"firebase/app\";\r\nimport { getAnalytics } from \"firebase/analytics\";\r\nvar firebaseConfig = {\r\n apiKey: window.serverData.data.bswFirebaseapiKey,\r\n authDomain: window.serverData.data.bswFirebaseauthDomain,\r\n databaseURL: window.serverData.data.bswFirebasedatabaseURL,\r\n projectId: window.serverData.data.bswFirebaseprojectId,\r\n storageBucket: window.serverData.data.bswFirebasestorageBucket,\r\n messagingSenderId: window.serverData.data.bswFirebasemessagingSenderId,\r\n appId: window.serverData.data.bswFirebaseappId,\r\n measurementId: window.serverData.data.bswFirebasemeasurementId\r\n};\r\n// Initialize Firebase\r\nconst app = initializeApp(firebaseConfig);\r\nconst analytics = getAnalytics(app);//\r\n*/\r\nwindow.store = null;\r\n\r\n// Scrub logout message when leaving the page (for any reason, including page refresh)\r\ntry {\r\n window.document.body.onbeforeunload = function (e) {\r\n try {\r\n let sCookie = Cookies.get(window.serverData.data.environment + \"-root-Domain\");\r\n if (sCookie) {\r\n let oCookie = JSON.parse(sCookie);\r\n oCookie.domain.lom = null;\r\n let sDomain = Tools.getDomain();\r\n\r\n Cookies.set(window.serverData.data.environment + \"-root-Domain\", JSON.stringify(oCookie), { domain: sDomain, path: \"/\" });\r\n }\r\n }\r\n catch (E2) {\r\n\r\n }\r\n };\r\n}\r\ncatch (E) {\r\n\r\n}\r\n\r\nwindow.persistor = null;\r\nconfigureFetch();\r\n\r\n\r\n/**\r\n * Main app component.\r\n */\r\nexport class App extends React.Component {\r\n\r\n constructor(params) {\r\n super(params);\r\n this.serverData = window.serverData.data;\r\n this.menuItems = this.serverData.activeMenuItems;\r\n this.loginCompleted = this.loginCompleted.bind(this);\r\n this.handleAppRefresh = this.handleAppRefresh.bind(this);\r\n\r\n window.appInstanceID = window.serverData.data.appInstanceID;\r\n\r\n window.store = configureStore(this.serverData);\r\n window.persistor = persistStore(store);\r\n //debugger;\r\n window.appInsights = new ApplicationInsights({\r\n config: {\r\n instrumentationKey: window.serverData.data.instrumentationKey,\r\n enableDebug: false,\r\n disableFetchTracking: false,\r\n disableAjaxTracking: false,\r\n cookieDomain: Tools.getDomain(),\r\n enableCorsCorrelation: window.serverData.data.enableCorsCorrelation,\r\n correlationHeaderExcludedDomains: [\r\n 'rxapi-tst.bswhive.com',\r\n 'rx.bswapi.com'\r\n ],\r\n autoTrackPageVisitTime: true\r\n }\r\n });\r\n window.ai = appInsights.loadAppInsights();\r\n\r\n let telemetryInitializer = function () {\r\n appInsights.addTelemetryInitializer(function (envelope) {\r\n var telemetryItem = envelope.baseData;\r\n let oState = window.store.getState();\r\n let oDomain = oState ? oState.domain : null;\r\n if (oDomain) {\r\n let sCorrelationID = oDomain.c || Cookies.get(\"bsw-CorrelationId\");\r\n let sSessionID = oDomain.s || Cookies.get(\"bsw-SessionId\");\r\n let sUserName = oDomain.un || window.currentUserName;\r\n\r\n telemetryItem.properties = telemetryItem.properties || {};\r\n if (sCorrelationID) {\r\n telemetryItem.properties[\"AL_CorrelationID\"] = sCorrelationID;\r\n }\r\n if (sSessionID) {\r\n telemetryItem.properties[\"AL_SessionID\"] = sSessionID;\r\n }\r\n if (sUserName && sUserName !== \"\") {\r\n appInsights.setAuthenticatedUserContext(sUserName);\r\n }\r\n }\r\n });\r\n };\r\n\r\n if (appInsights.queue !== undefined) {\r\n appInsights.queue.push(telemetryInitializer);\r\n } else {\r\n telemetryInitializer();\r\n }\r\n\r\n if (window.serverData.data.startupDebug) {\r\n debugger; // <- do NOT comment out, read the code please\r\n }\r\n\r\n this.appUpdate = null;\r\n\r\n var thisDate = new Date();\r\n var bNeedsAuthenticate = false;\r\n if (typeof window !== 'undefined') {\r\n store.dispatch({ type: types.SET_SERVER_DATA, serverData: window.serverData.data });\r\n store.dispatch({ type: types.LOAD_TERMS_AND_CONDITIONS });\r\n let authToken = Cookies(\"AuthToken\" + this.serverData.environment);\r\n let oState = window.store.getState();\r\n if (oState && oState.localStorage && oState.localStorage.isLoggedIn) {\r\n //debugger;\r\n if (oState.localStorage.lastLoaded) {\r\n var iDiff = thisDate - Date.parse(oState.localStorage.lastLoaded);\r\n if ((iDiff / 1000) < 30) {\r\n // authToken = oState.localStorage.token;\r\n // store.dispatch({\r\n // type: types.ON_USER_AUTHENTICATE_SUCCESS,\r\n // access_token: oState.localStorage.token,\r\n // refresh_token: oState.localStorage.refreshToken,\r\n // Logins: \"\",\r\n // callback: this.loginCompleted\r\n // });\r\n // bNeedsAuthenticate = true;\r\n }\r\n }\r\n }\r\n if (!authToken && oState && oState.domain && oState.domain.t) {\r\n authToken = oState.domain.t;\r\n }\r\n // setup server data first\r\n\r\n if (authToken) {\r\n bNeedsAuthenticate = true;\r\n //debugger;\r\n store.dispatch({ type: types.VERIFY_LOGIN, token: authToken, DontClearRedirectURL: true, forceRefresh: true, callback: this.loginCompleted });\r\n }\r\n store.dispatch({ type: types.GET_APP_UPDATE });\r\n if (oState.domain && oState.domain.t) {\r\n store.dispatch({ type: types.MEMBERSHIP_GET_START });\r\n }\r\n }\r\n //debugger;\r\n this.state = { NeedsAuthenticate: bNeedsAuthenticate, Authenticated: false };\r\n\r\n try {\r\n window.addEventListener(\"storage\", (event) => {\r\n if (event && event.key && event.key == \"logoutFrom\" && event.newValue !== event.oldValue && event.newValue !== window.serverData.data.appInstanceID) {\r\n //debugger;\r\n window.store.dispatch({ type: types.LOGOUT, fromWindowListener: true });\r\n }\r\n if (event && event.key && event.key == \"root\" && event.newValue !== event.oldValue) {\r\n var oRoot = JSON.parse(event.newValue);\r\n var oLocalStorage = JSON.parse(oRoot.localStorage);\r\n if (oLocalStorage) {\r\n //debugger;\r\n if (oLocalStorage.appInstanceID != window.serverData.data.appInstanceID) {\r\n let oState = window.store.getState();\r\n var sCurrToken;\r\n var sCurrRefresh;\r\n if (oState && oState.domain && oState.domain.t) {\r\n sCurrToken = oState.domain.t;\r\n sCurrRefresh = oState.domain.rt;\r\n }\r\n if (oLocalStorage.token != sCurrToken || oLocalStorage.refreshToken != sCurrRefresh) {\r\n //debugger;\r\n window.store.dispatch({ ...oLocalStorage, type: types.UPDATE_TOKEN_AND_REFRESH_TOKEN });\r\n if (oLocalStorage.token) {\r\n window.store.dispatch({ type: types.VERIFY_LOGIN, token: oLocalStorage.token, DontClearRedirectURL: true, forceRefresh: false, callback: this.loginCompleted });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n });\r\n }\r\n catch (e) {\r\n\r\n }\r\n\r\n //debugger;\r\n }\r\n\r\n //Handle Refresh Scenarios\r\n componentDidMount() {\r\n if (typeof window !== 'undefined' && !this.appUpdate) {\r\n //debugger;\r\n this.appUpdate = window.setInterval(\r\n this.handleAppRefresh,\r\n window.serverData.data.appRefreshTimer ? window.serverData.data.appRefreshTimer * 60 * 1000 : 60 * 1000);\r\n }\r\n\r\n\r\n }\r\n\r\n componentWillUnmount() {\r\n if (typeof window !== 'undefined' && this.appUpdate) window.clearInterval(this.appUpdate);\r\n }\r\n\r\n /**\r\n * Global error trap; logs error info to the api.\r\n * \r\n * @param {any} errorMsg react error\r\n * @param {any} errorInfo react error info\r\n */\r\n componentDidCatch(errorMsg, errorInfo) {\r\n console.error(errorMsg, errorInfo);\r\n let json = { error: errorMsg, componentStack: errorInfo };\r\n logUI(\"MBHWeb.UI.MainErrorBoundary.ComponentDidCatch\", new Date(), Tools.getURLPath(), JSON.stringify(errorMsg), JSON.stringify(errorInfo));\r\n }\r\n\r\n loginCompleted() {\r\n //debugger;\r\n this.setState({ Authenticated: true });\r\n }\r\n\r\n //Hard Refresh with kill switch, Soft Refresh based on version number\r\n handleAppRefresh() {\r\n \r\n //debugger;\r\n if ((typeof window !== 'undefined')) { // && (window.location.href.toLowerCase().indexOf(\"/login\") < 0)) {\r\n //debugger;\r\n window.store.dispatch({ type: types.GET_APP_UPDATE });\r\n }\r\n else {\r\n //debugger;\r\n }\r\n\r\n }\r\n\r\n render() {\r\n const {\r\n isLoggedIn,\r\n hasMyChart,\r\n hasHealthPlan,\r\n hasPharmacy,\r\n isHome,\r\n isPharmacy\r\n } = this.props;\r\n var bIncludeLoginShim = isHome;\r\n const {\r\n NeedsAuthenticate, Authenticated\r\n } = this.state;\r\n var oBody;\r\n if (NeedsAuthenticate && !Authenticated) {\r\n //debugger;\r\n bIncludeLoginShim = false;\r\n oBody = (
); // we need to do this for auto-login scenarios to quickly bind the history object before the app is triggered\r\n } else {\r\n oBody = ;\r\n }\r\n\r\n //debugger;\r\n return (\r\n \r\n {\r\n bIncludeLoginShim && // LoginShim isn't needed by the pharmacy\r\n