Releases: openmrs/openmrs-esm-core
v5.8.1
What's changed
New improvements
- (feat) - add baby and mother icons by @chibongho in #1131
- (feat) O3-3708: Add a safer expression runner by @ibacher in #1108
- (feat) O3-3866:Allow customized message/dialog for warning when closing a workspace by @mogoodrich in #1129
Improvements to E2E test suite
- (test) Use local shell to assemble E2E environment and run all E2E tests from other repos by @jayasanka-sack in #1139
Fixes
- (fix) Update dummy StoreApi to work with Zustand 4.4+ by @ibacher in #1128
- (fix) Add better support for loading multiple namespaces at once by @ibacher in #1132
- (refactor) Load styleguide config asynchronously in PageHeader by @denniskigen in #1133
- (fix) remove fill attributes for baby and mother svg icons by @chibongho in #1135
- (fix) O3-3902 - make age() function (and its usage) handle null birth… by @chibongho in #1136
- (fix) - O3-3189 - fix server-side pagination hook to handle error con… by @chibongho in #1123
- (fix) Do not generate
undefined
as a value by @ibacher in #1137 - (docs) Update E2E instructions on the readme file by @jayasanka-sack in #1138
- (fix) Fix the URLs to load importmap and routes registry JSON by @vasharma05 in #1140
- (fix) Workspace title must translate in the workspace container by @vasharma05 in #1141
- Revert "(fix) Fix the URLs to load importmap and routes registry JSON" by @vasharma05 in #1143
v5.8.0
What's Changed
Features
- (feat) O3-2790: Create a reusable location picker component by @jayasanka-sack in #913
- (feat) O3-3178: Add a reusable dashboard header to the styleguide by @Twiineenock in #1084
- (feat) O3-3260: Add ability to register feature flags via routes.json by @ibacher in #1085
- (feat) O3-3244 & O3-3250: Allow data sharing between workspaces with the same sidebar family name by @vasharma05 in #1094
- (feat) O3-3509: The assemble command should support merging multiple configs by @ibacher in #1098
- (feat) O3-3505: Datepicker improvements by @ibacher in #1099
- (feat) Content switcher style overrides by @denniskigen in #1109
- (feat) O3-3684: Improve duration representation of
age
function by @chibongho in #1100 - (feat) O3-3189: Add a hook to handle server-side pagination by @chibongho in #1114
- (feat) O3-3857: Support extension overrides in per-slot extension config by @ibacher in #1119
Bug fixes
- (fix) Restore loading Webpack loaders via require by @ibacher in #1091
- (fix) Don't generate a warning from mini-css about order by @ibacher in #1095
- (fix) O3-3678: Implementer tools JSON editor crashes when typing by @denniskigen in #1097
- (fix) Config system and Implementer Tools both crash when 'null' is passed as an Array value by @brandones in #1101
- (fix) O3-3691: The workspace family store shouldn't reset if the workspace of the same family is launched by @vasharma05 in #1103
- (fix) Framework should register feature flags defined in routes.json by @ibacher in #1104
- (fix) O3-3760: Action Menu (Siderail) inside workspace hovering over the content by @vasharma05 in #1110
- (fix) Minor implementer tools fixes by @brandones in #1111
- (fix) Ensure the Confirm button in the login location picker takes full width by @jayasanka-sack in #1106
- (fix) O3-3760 v2: Add margin to the bottom of workspaces with internal action menu by @vasharma05 in #1112
- (fix) O3-3684: Improve performance of age() function by @chibongho in #1117
- (fix) O3-3858: Fix state update for registerContext by @kb019 in #1121
- (fix) Context: use namespace as a value rather than as string by @kb019 in #1122
Housekeeping
- (chore) Release v5.7.2 by @denniskigen in #1092
- (chore) Bump Playwright by @kdaud in #1093
- (chore) Version bumps for yarn and several packages by @denniskigen in #1118
- (release) Release v5.8.0 by @denniskigen in #1120
Testing
- (test) Add missing stubs to framework mock by @denniskigen in #1105
- (test) Update useExtensionStore stub function in framework mock by @denniskigen in #1107
Full Changelog: v5.7.1...v5.8.0
v5.7.2
Another small bugfix for v5.7.0
Full Changelog: v5.7.1...v5.7.2
v5.7.1
v5.7.0
What's Changed
Features
- (feat) O3-3579: Changing the styles for help menu and devtools by @Vijaykv5 in #1079
- (feat) Tweak some core translations by @denniskigen in #1074
- (feat) Add support for setting custom workspace title by @brandones in #1067
- (feat) Add more icons from CarbonMRS by @ibacher in #1066
- (feat) Enhancements to the OpenmrsDatePicker by @NethmiRodrigo in #1062
- (feat) Workspaces should support having their own sidebar within them by @brandones in #1058
- (feat) O3-1991: Enhancements and fixes for OMRS date picker by @ibacher in #1053
- (feat) Improvements to workspace system styling (supports O3-3246) by @brandones in #1046
- (feat) O3-3423: Allow user to change password by @ibacher in #1047
- (feat) Add support for local configuration in development environment by @chibongho in #1044
- (feat) O3-3416: Make useVisit() take in optional custom representation by @chibongho in #1042
- (feat) O3-1991: Implement an OpenMRS Date Picker by @ibacher in #1041
- (feat) O3-3370: In development mode, import maps should not use absolute URLs by @ibacher in #1032
- (feat) O3-3183: ID number labels should not be tags by @Twiineenock in #1031
- (feat) O3-3390: Implement the help menu by @Vijaykv5 in #1034
- (feat) Add CarbonMRS SVGs by @ibacher in #1024
- (feat) O3-3179: Change the styling of the patient banner for deceased patients by @jwnasambu in #1021
- (feat) Better script loading error by @denniskigen in #1020
- (feat) O3-3266: Add support for specifying optional backend dependencies by @ibacher in #1015
- (feat) O3-3322 Add support for translation overrides in core translations by @donaldkibet in #1016
- (feat) Add ability to navigate to patient chart on clicking related person name by @donaldkibet in #1013
- (feat) Add additional properties for OpenmrsDatePicker in Carbon by @kajambiya in #1007
- (feat) Improve app prompting logic and behaviour by @ibacher in #1006
- (feat) O3-3249: Introduce helper function to get well-formatted patient display name. by @xprl-gjf in #1003
- (feat) Add common typings for patient and person by @chibongho in #1001
- (feat) Add CarbonMRS icon infrastructure and React components by @ibacher in #969
- (feat) O3-2261: Add a back button to the location picker page by @usamaidrsk in #946
Refactor
- (refactor) Refactor modal files to match naming conventions by @denniskigen in #1049
Bug fixes
- (fix) O3-3595: Use correct per-locale calendar in OpenmrsDatepicker by @kajambiya in #1081
- (fix) subscribeToContext should send the current value of the context on subscribe by @ibacher in #1080
- (fix) O3-3563: OpenmrsDatepicker should use calendar to calculate date values by @kajambiya in #1078
- (fix) O3-3522: Replace module-local translations with core translations by @jwnasambu in #1075
- (fix) Tweak change password form validation by @denniskigen in #1069
- (fix) O3-3520: Clinical form loses information after opening another workspace (again) by @brandones in #1061
- (fix) Fix broken workspace tests by @brandones in #1059
- (fix) Fix invisible div bug in workspace system and add tablet animations by @brandones in #1057
- (fix) Workspaces not maximizing; add workspace animations by @brandones in #1056
- (fix) Ensure bottom nav border shows up by @brandones in #1055
- (fix) O3-3401: Use optional chaining to safely unsubscribe from getCurrentUser observable by @vasharma05 in #1051
- (fix) Replace deprecated substr() with slice() for string operations by @denniskigen in #1050
- (fix) Restore PasswordInput value prop by @denniskigen in #1040
- (fix) Properly set app shell public path by @ibacher in #1039
- (fix) Rename some patient name utility functions by @brandones in #1038
- (fix) Login page tweaks by @denniskigen in #1036
- (fix) CarbonMRS icons should inherit CSS color by @ibacher in #1033
- (fix) Apply geopattern styles to patient avatar conditionally by @denniskigen in #1030
- (fix) O3-3353 Workspaces shouldn't lose information when hidden by @brandones in #1027
- (fix) Fix config bug involving arrays of arrays. Supports O3-3336 by @brandones in #1022
- (fix) O3-3339 Workspace overlay contents have whitespace problems by @kb019 in #1018
- (fix) Minor improvements to workspaces and workspace tests, supporting O3-2724 by @brandones in #1017
- (fix) Allow immutable arguments to config validators by @brandones in #1019
- (fix) Remove double border from Patient Header details panel by @denniskigen in #1012
- (fix) Follow-up to #969: fix bug where workspaces don't close by @brandones in #1011
- (fix) O3-3249: Export esm-utils patient-helper functions as mocks. by @xprl-gjf in #1010
- (fix) O3-3249 Add missed dependency on @types/fhir for esm-utils. by @xprl-gjf in #1009
- (fix) O3-3265: Tweak Patient Header UI by @denniskigen in #1008
- (fix) Exclusions should be applied before new modules are added by @ibacher in #1005
- (fix) Ethiopia datepicker to resolve default, min and max values correctly by @kajambiya in #996
- (fix) O3-2768: Display error in case there are no locations by @trevor-james-nangosha in #906
Housekeeping
- (chore) Release v5.7.0 by @denniskigen in #1082
- (chore) Update translations from Transifex by @github-actions in #1077
- (chore) Add docstrings and remove dead code from workspace by @brandones in #1070
- (chore) Update translations from Transifex by @github-actions in #1068
- (chore) Add remote caching to E2E workflow using turborepo-gh-artifacts by @denniskigen in #1065
- (chore) Switch turborepo back to streaming UI by @brandones in #1060
- (chore) Update translations from Transifex by @github-actions in #1054
- (chore) Update translations from Transifex by @github-actions in #1043
- (chore) Bump turborepo by @denniskigen in #1037
- (chore) Fix styleguide config access by @denniskigen in #1029
- (chore) Export styleguide config type from Core by @denniskigen in #1026
- (chore) Type fix for getDefaultsFromConfigSchema by @brandones in #1023
- (chore) Export actual ConfigurableLink implementation from mock by @denniskigen in #1014
- (chore) Increase default test timeout in framework by @denniskigen in #1004
- (chore) Restore
OpenmrsDatePicker
mock by @denniskigen in #1002 - (chore) Update translations from Transifex by @github-actions in #980
Tests
- (test) Fix flaky Login E2E test by @jayasan...
v5.6.0
What's changed
New features
- (feat) Enable online and offline extensions through configuration by @icrc-jofrancisco in #857
- (feat) O3-2732: Added logic to allow dynamic adjustment of Logo in NavBar by @suubi-joshua in #907
- (feat) O3-2882: Create core translations library by @brandones in #933
- (feat) O3-3010: Disable triggering offline mode when offline disabled by @ibacher in #962
- (feat) O3-1426: Modals should not be extensions by @brandones in #961
- (feat) Create an application-wide context for shared state by @ibacher in #976
- (feat) O3-1422 / O3-2724: Move workspace system into the framework by @brandones in #979
- (feat) Add a hook to get callable extensions outside of a slot by @ibacher in #981
- (feat) Export OpenmrsDatePickerProps interface to facilitate testing of the OpenmrsDatePicker by @kajambiya in #993
- (feat) O3-3168: O3 should work without requiring a network connection by @ibacher in #997
- (feat) Disable i18next namespace separator by @samuelmale in #998
Bug fixes
- (fix) Make download config button in implementer tools fully clickable by @kb019 in #957
- (fix) O3-2994: The app switcher menu should be hidden after clicking a link by @nanfuka in #964
- (fix) O3-1169: Make implementer tools dark-themed by @kb019 in #960
- (fix) Minor improvements to app shell by @ibacher in #982
- (fix) Include common module type declarations in the framework by @brandones in #983
- (fix) O3-2724: Follow-up PR to add mocks and additional public type exports by @brandones in #984
- (fix) Suppress most version mismatch warnings by @ibacher in #985
- (fix) Minor fixup to have useRenderableExtensions not be a default ex… by @chibongho in #986
- (fix) O3-3139: Add a mock for useRenderableExtensions + fix its state ty… by @chibongho in #988
- (fix) O3-2724: Follow-up to add internal type declarations by @ibacher in #989
- (fix) O3-3188: Make modal body vertical-scroll properly by @chibongho in #991
- (fix) Styleguide should not depend on the framework by @ibacher in #992
- (fix) O3-2724: Fix workspace URL detection by @ibacher in #994
- (fix) O3-1422: Fix workspace loading state by @denniskigen in #995
Housekeeping
- (chore) Separate formatting and linting concerns by @denniskigen in #967
- (chore) Fix esm-translations link in README by @brandones in #966
- (chore) Update translations from Transifex by @github-actions in #970
- (chore) Upgrade to single-spa 6.0.1 by @ibacher in #973
- (chore) Bump playwright by @kdaud in #972
- (chore) Flag rules-of-hooks lint violations by @denniskigen in #971
- (chore) Bump @babel/traverse from 7.19.4 to 7.24.1 by @dependabot in #974
- (chore) Fix ModalDefinition typo by @brandones in #977
- (chore) More missing mocks by @brandones in #987
- (chore) Bump playwright by @kdaud in #990
- (chore) Bump yarn by @denniskigen in #999
Tests
- (test) Temporarily disable flaky time assertion by @denniskigen in #975
New contributors
Full changelog: v5.5.0...v5.6.0
v5.5.0
What's Changed
⭐️ New features
- (feat) O3-2808: Snackbars should be dismissed after 5 seconds by @usamaidrsk in #916
- (feat) Tweak location preference notifications by @denniskigen in #926
- (feat) Add a global SWR configuration by @denniskigen in #929
- (feat) Show a more useful script loading error by @denniskigen in #939
- (feat) O3-2883: Use toast notifications for system-generated error messages by @hadijahkyampeire in #937
- (feat) Add loud error messages if script loading fails by @ibacher in #942
- (feat) O3-2304: Hide primary side menu panel on item click by @usamaidrsk in #945
- (feat) Allow user to reset the importmap and reload if overridden script fails to load by @ibacher in #952
- (feat) O3-2831: Move patient banner into styleguide by @brandones in #919
🐛 Bug fixes
- (fix) O3-2865: Run forked processes in cwd by @ibacher in #928
- (fix) Partial revert b50ad49 for the build command by @ibacher in #930
- (fix) O3-2742: History API should properly handle the back button by @brandones in #925
- (fix) Require fewer requests to the session endpoint by @ibacher in #923
- (fix) Fix app shell build errors by @denniskigen in #953
- (fix) Mock fixes by @brandones in #956
- (fix) Fix spacing around address empty state in patient banner by @brandones in #955
🧹 Housekeeping
- (chore) Add ResponsiveWrapper stub to framework mock by @denniskigen in #922
- (chore) Add ResponsiveWrapper to esm-framework public API by @denniskigen in #924
- (chore) Commit orphaned API docs by @denniskigen in #934
- (chore) Remove trailing slash from restBaseUrl by @denniskigen in #935
- (chore) Use yarn instead of turbo for run:shell by @ibacher in #936
- (chore) Fix exports for the ResponsiveWrapper component by @denniskigen in #941
- (chore) Update translations from Transifex by @github-actions in #938
- (chore) Bump playwright by @kdaud in #950
- (chore) O3-2935: Trigger E2E tests when there is a change in package.json by @kdaud in #951
- (chore) Release v5.5.0 by @jayasanka-sack in #958
New Contributors
- @github-actions made their first contribution in #938
Thank you to all contributors for embodying the spirit of 'write code. save lives' in every line committed. Your commitment to OpenMRS is invaluable and truly makes a difference in healthcare worldwide. ❤️
Full Changelog: v5.4.0...v5.5.0
v5.4.0
What's Changed
⭐️ New Features
- Configure Password Field Placement on Login Screen by @jayasanka-sack in #820
- Add some colors to CLI output by @ibacher in #839
- Support for automatically overriding routes and Carbonize devtools by @ibacher in #816
- Allow app menu to expand based on the width of its content by @CynthiaKamau in #854
- Support multiple configurations when running assemble by @ibacher in #895
- Dynamically reload routes.json files for packages from sources by @ibacher in #824
- Provide function for obtaining default config tree in test code by @brandones in #863
- Add an application-writable config.json file in frontends by @jnsereko in #629
- Allow ConfigurableLink to have a callback before navigating by @brandones in #871
- Add support for specifying overrides using only a port by @ibacher in #852
- Click slot name to find it in the Implementer Tools by @brandones in #866
- Add the ability to use actions in the existing toast by @hadijahkyampeire in #822
- Create a global app history utility by @brandones in #877
- Add ResponsiveWrapper to style guide by @denniskigen in #909
- Added type passing in the
useOpenmrsSwr
by @vasharma05 in #891 - O3-512: Click slot name to find it in the Implementer Tools by @brandones in #866
🐛 Bug Fixes
- Add ability to resize nav header panel based on available content by @CynthiaKamau in #817
- Fix regression in implementer tools affecting MultiSelect components by @donaldkibet in #844
- Clicking close button should hide the importmap modal by @denniskigen in #848
- Fix core app routing to use getOpenmrsSpaBase() by @ibacher in #853
- Fix navbar not re-rendering excessively by @brandones in #874
- Ensure extension slots receive the correct list of extensions on first render by @brandones in #875
- Amend ContentSwitcher style overrides by @denniskigen in #872
- Fix full-width switcher items in user menu panel by @denniskigen in #876
- Fix RTL language display issue by @elimm in #873
- Config validation errors should only be shown once by @brandones in #890
- Error popup moves the login block downward by @Twiineenock in #896
- Fix RTL alignment issues by @elimm in #892
- Fix login card error message position by @denniskigen in #900
- Fix a regression in package version numbers by @ibacher in #901
- Automatically close header panels on panel selection by @jwnasambu in #912
- useOnClickOutside should not use the click event by @ibacher in #914
- Restore top nav margin to render offline banner by @icrc-jofrancisco in #856
🧹 Housekeeping
- Configure prettier by @denniskigen in #838
- Update dead docs links by @denniskigen in #845
- Bump yarn by @denniskigen in #842
- Fix start script by removing eslint-plugin-prettier by @denniskigen in #859
- Upgrade to single-spa@6 by @ibacher in #883
- Migrate to newer Transifex version by @jona42-ui in #878
- Add GitHub Actions flows to automate Transifex by @ibacher in #887
- Only auto-generate English translations by @ibacher in #911
- Enable
continue-on-error
for deploy job by @denniskigen in #894 - Update GitHub Actions by @denniskigen in #869
- Add chinese language files by @jona42-ui in #879
- Only trigger e2e tests when relevant code has changed by @ibacher in #888
- Release v5.4.0 by @jayasanka-sack in #918
New Contributors
- @chibongho made their first contribution in #849
- @suubi-joshua made their first contribution in #847
- @elimm made their first contribution in #873
- @usamaidrsk made their first contribution in #880
- @Twiineenock made their first contribution in #896
Thank you to all contributors for embodying the spirit of 'write code. save lives' in every line committed. Your commitment to OpenMRS is invaluable and truly makes a difference in healthcare worldwide.
Full Changelog: v5.3.2...v5.4.0
v5.3.2
What's Changed
v5.3.2 is a patch release of Core with backwards-compatible bug fixes. The main highlights are:
Fixed frontend build issues
The frontend build was failing due to a dependency issue with @carbon/icons-react
upstream. This release fixes that issue by pinning the version of @carbon/icons-react
to ^10.16.0
. Thanks, @ibacher, for the fix!
Error logging for failed builds
The Webpack build process now logs errors in a readable format, so that developers can easily see what went wrong during the build process. Thanks, @jayasanka-sack, for this fix!
Fixed snackbar container positioning on tablet
Thanks to @hadijahkyampeire for fixing the snackbar container positioning on tablet!
Fixes
- (fix) Try to temporarily pin @carbon/icons-react version by @ibacher in #834
- (fix) Fix Webpack compilation error logging on build by @jayasanka-sack in #829
- (fix) Pin Carbon versions by @denniskigen in #831
- (fix) App switcher UI tweaks by @denniskigen in #830
- (fix) Attempt to fix failing build on CI by @ibacher in #833
- (fix) O3-2625: Adjust snackbar container position by @hadijahkyampeire in #832
Thanks to everyone for the quick turnaround on this release! 🎉
Full Changelog: v5.3.1...v5.3.2
v5.3.1
What's Changed
Bug fixes
- (fix) Address some minor issues with regexes in development code by @ibacher in #821
- (fix) Restore offline patient banner by @icrc-jofrancisco in #818
- (fix) Login page flashing before redirecting to home page by @vasharma05 in #825
- (docs) Update release docs in README by @denniskigen in #828
Thank you to all our amazing contributors! 🎉
Full Changelog: v5.3.0...v5.3.1