Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update frontend libraries based on those from upstream repo #153

Open
wants to merge 533 commits into
base: develop
Choose a base branch
from

Conversation

achen2401
Copy link

@achen2401 achen2401 commented Feb 9, 2023

https://www.pivotaltracker.com/story/show/185911605

Changes brought in based on those from upstream repo, see latest release(v 0.7.0) from original AHRQ repo

library updates

  • Update CQL execution libraries to latest versions (cql-execution, fhirclient)
  • Update react-router-dom and fontawesome libraries
  • Switch development framework from Create React App (CRA) to Vite for faster build and performance
    • new config file for Vite, i.e. vite.config.mis replacing .rescriptsrc.js
    • rename React component JS files to have extension of jsxto be properly built by Vite

code updates based on upstream repo

  • Updated CQL to use latest FHIR 4.0.1 data model (see updated R4 and dstu2 cql files)
  • Added support for using VSAC-URL-based value set identifiers in CQL (see updated VSAL-URL-based valueset identifiers in Factors_to_Consider_in_Managing_Chronic_Pain_FHIRv401.cql and new VSACAwareCodeService function to extract OID from VSAC URL in executeELM.js
  • Update valueset db JSON (note, the Rxnorm codes for opioid meds that we have added previously in the latest valueset db are retained): see new ones added here
  • Add script to allow update of valueset db (see updated README for detail)
  • Add script to update test patients, update Brenda Jackon test json

code changes made as a result of CQL code updates:

  • fixed Dispensed date obtained via the extension in a Medication Request FHIR object to be of data type FHIR.date
  • fixed doseQuantity used in a MED calculation to be of data type SimpleQuantity
  • removed LastPositionOf and use Split

Other frontend changes (different from upstream repo):

  • Update Node version used to 20 (note the upstream repo uses Node 12)
  • Update React from version 16 to 18 (note the upstream repo remains at React 16)
  • remove node-sass lib in favor of sass lib (node-sass is deprecated)
  • Update react-table to version 7 to be compatible with React 18 with syntax changes (note the upstream original repo didn't upgrade react-table lib due to remaining at React 16)
  • Update react-tooltip to versions compatible with React 18 - with syntax changes (note the upstream original repo didn't update the react-tooltip library)
  • Update to using React testing library
    • update test codes to conform to syntax
  • address lint errors

Confirmed that app could be launched after changes (see screenshot):
Screenshot 2024-12-17 at 2 34 20 PM

Changes not brought in

  • CQL content changes
    • Updated CQL based on the 2023 artifact update for Factors to Consider in Managing Chronic Pain
    • Added sickle cell disease to exclusions banner
    • Updated inclusions banner to say nonopioid pain medication instead of adjuvant analgesic
    • Added opioid tapering to info for risk factors for opioid-related harms
    • Added adjuvant pain medications section
    • Changed non-opiod and non-pharmacologic to nonopioid and nonpharmacologic
    • Update Naloxone Medication labels/flags to be Naloxone and Nalmefene
  • Add developer support for translating CQL within the project source code (require higher version of JDK, knowledge of Java, a more involved change)

@achen2401 achen2401 mentioned this pull request Feb 9, 2023
@achen2401 achen2401 changed the title update frontend libs update frontend code from upstream and update frontend libs Aug 29, 2023
@achen2401 achen2401 changed the title update frontend code from upstream and update frontend libs update frontend code based on upstream repo and update frontend libs Aug 29, 2023
@achen2401 achen2401 changed the title update frontend library/code based on upstream repo update frontend libraries based on those from upstream repo Dec 17, 2024
@achen2401 achen2401 marked this pull request as ready for review December 17, 2024 22:59
@achen2401 achen2401 requested review from mcjustin and ivan-c December 17, 2024 23:00
@mcjustin
Copy link
Member

Thanks @achen2401 - wow, this is a big one. Reading your notes here, sounds like no change in behavior for end-users. I expect we'll want to test this branch on dev but I'll defer to @ivan-c on that.

@achen2401
Copy link
Author

@mcjustin right, there aren't any visible changes to end users. This is just upgrade of libraries.

@ivan-c
Copy link
Member

ivan-c commented Dec 23, 2024

@achen2401

thank you for merging the logging fix. when you get a chance, can you update this PR with the latest code from develop? thanks again!

Copy link
Member

@ivan-c ivan-c left a comment

Choose a reason for hiding this comment

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

Looks great! Thanks for the detailed description-excited to learn more about these newer frameworks.

Found a few minor issues in the code. I also tested on dev and saw it got stuck during Loading Medication Request data..., when it worked before (for the same patient)

README.md Outdated Show resolved Hide resolved
src/cql/r4/survey_resources/source/Common_LogicLibrary.cql Outdated Show resolved Hide resolved
@sierramatice
Copy link

No issues found in testing today!

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.

4 participants