Skip to content

Conversation

@boris-careev
Copy link
Contributor

@boris-careev boris-careev commented Sep 27, 2025

Overview

Early PR to test prototype feature nudging users towards creating a new connection with a more recent version of the provider they are currently connected to. For instance, to connect to the FHIR R4 version of the DSTU2 provider the user currently has a connection to. In the prototype I simply display a sentence with a link to initiate the new connection (see screenshots in the Testing section). This more recent version of the provider is referred to as "successor" below.

Improvements coming up:

  • Verbiage (open to suggestions)
  • Add missing languages
  • Conditional display of the connection nudge message based on already connected providers

Side note: another way to do this could be to just replace the functionality of the Reconnect button with the same logic as the link I'm using in the prototype, to initiate the new connection. The problem with this is that we are not really reconnecting to the provider but creating a new connection, which, if the new connection doesn't yield as much data, could confuse users. Also, it would be up to us to delete the data from the previous provider, potentially deleting data and only have partial data from the new provider. And if we are not deleting data, then the user would see the old provider + the new provider in their Linked Accounts, creating more confusion as they thought they were just reconnecting the one account they had.

FYI @wmmoye, @chrisnowak

Security

Consider potential security impacts and complete the following checklist.
REMINDER: All file contents are public.

  • I have ensured no secure credentials or sensitive information remain in code, metadata, comments, etc.
    • Please verify that you double checked that .storybook/preview.js does not contain your participant access key details.
    • There are no temporary testing changes committed such as API base URLs, access tokens, print/log statements, etc.
  • These changes do not introduce any security risks, or any such risks have been properly mitigated.

Testing

  • This change can be adequately tested using the MDH Storybook.

  • This change requires additional testing in the MDH iOS/Android/Web apps. (Create a pre-release tag/build and test in a ViewBuilder PR.)

  • Connect to a provider for which a successorID exist

  • Go to the list of ExternamAccounts

  • Make sure you see the provider you are connected to along with the following message + link to connect to the successor provider:

Example view 1:

image image

Example view 2:

image image
  • Click on the "here" link and make sure you see the provider login page for the successor provider is displayed.

  • Ideally connect to the new provider if you have production credentials

  • After logging in and going through consent on the provider side, the user should be redirected to the list of accounts

Documentation

Consider whether there are any documentation impacts and check one of the following boxes:

  • I have added relevant Storybook updates to this PR. (part of ExternalAccountList)
  • If this feature requires a developer doc update, I have tagged @CareEvolution/api-docs.
  • This change does not impact documentation or Storybook.

stashing prototype

prototype successor connection

bump MDH.js version

3.2.1-boris-provider-successor-mdhui.0

fix naming

bump MDH.js

3.2.1-boris-provider-successor-mdhui.1

update property name

3.2.1-boris-provider-successor-mdhui.2

simplification

Better verbiage + code cleanup

use language function for verbiage

verbiage improvement
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements a provider successor connection feature that nudges users to connect to newer versions of providers they're already connected to (e.g., upgrading from FHIR DSTU2 to R4). The feature displays a message with a link to connect to the successor provider when available.

  • Adds UI components to display successor provider connection prompts
  • Implements functionality to connect to successor providers via their successorID
  • Updates dependency to mydatahelps-js ^5.1.1 to support the new feature

Reviewed Changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
SingleExternalAccount.tsx Adds UI display for successor provider connection prompt with link
ExternalAccountList.tsx Implements connectToSuccessorProvider function and passes it to child components
ExternalAccountList.previewdata.tsx Adds successorID to preview data for testing
package.json Updates mydatahelps-js dependency version and package version
en.json Adds English language strings for the new feature
fr-CA.json Adds French Canadian language strings for the new feature

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@chrisnowak
Copy link
Contributor

@boris-careev I had some thoughts here: https://github.com/CareEvolution/Product/issues/710#issuecomment-2980669663 maybe we continue discussion there?

@chrisnowak
Copy link
Contributor

I do not think we should expose this to the end user or make any UI changes essentially...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants