All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Allow multiple installations side by side for opensrp apps that use the select image function
- Starting Opensrp Client Native Form library Snapshot Version 1.0.5-SNAPSHOT and Release Version 1.0.3 from Any OpenSRP implementations utilizing the library should now specify the File Provider authority in the manifest as
android:authorities="${applicationId}.fileprovider"
- Starting Opensrp Client Native Form library Snapshot Version 1.0.5-SNAPSHOT and Release Version 1.0.3 from Any OpenSRP implementations utilizing the library should now specify the File Provider authority in the manifest as
- The checkbox UI XML to use Linear layouts with layout widths instead of Relative layouts
- New way to demo notable features in native form sample App - Multiple buttons with mnemonic feature name titles
- Checkbox widget all options select/deselect on moving to the next step and back caused by same view Id assignment
- Improved optimization during json form render for special views (constrained, calculated and relevance views)
-
The specify extra information popup. This enables you to define multiple widgets on the specify extra info popup. Examples of how to add it are in the sample json file
-
Add support for setting custom title in form exit alert dialog confirmation
-
Add support for setting custom message in form exit alert dialog confirmation
- By overriding the
JsonFormActivity
class in your installation you get access to these methods e.g.setConfirmCloseTitle(message)
andgetConfirmCloseTitle()
- By overriding the
-
Add checkbox multi select Skip Logic
- It is now possible to implement complex skip logic using the relevance attribute for a multi select checkbox. Check out the README document for more details on usage
-
Add checkbox multi select Skip Logic
-
Add checkbox multi select exclusive selector logic
-
Integrate rules engine for rule support using yaml configs
-
Support for skip logic using complex rules
-
Support for constraint logic using complex rules for number selector widget
-
Add helper class for use in rules engine - added method to get difference in days for 2 dates to be used in condition or action , example syntax
calculation = (1 + helper.getDifferenceDays('2018-12-18'))
-
Add skip logic based on date duration
- Added the support for saving the widget OpenMRS attributes and the value options for widgets with secondary values | popups e.g the native radio button, the anc radio button, the spinner and the check boxes.
- This will make a single secondary value option to look like below:-
"key": "respiratory_exam_abnormal", "type": "check_box", "values": [ "rapid_breathing:Rapid breathing:true", "rales:Rales:true", "other:Other (specify):true" ], "openmrs_attributes": { "openmrs_entity_parent": "", "openmrs_entity": "", "openmrs_entity_id": "" }, "value_openmrs_attributes": [ { "key": "respiratory_exam_abnormal", "openmrs_entity_parent": "", "openmrs_entity": "TACHYPNEA", "openmrs_entity_id": "125061" }, { "key": "respiratory_exam_abnormal", "openmrs_entity_parent": "", "openmrs_entity": "Respiratory Crackles", "openmrs_entity_id": "127640" }, { "key": "respiratory_exam_abnormal", "openmrs_entity_parent": "", "openmrs_entity": "", "openmrs_entity_id": "" } ] }
- This will make a single secondary value option to look like below:-
- Rules engine not returning negative values for calculation
- Layout for labels used by radio buttons and checkboxes
- Text appearance on templates to bold
- Added the French translations from Transifex
- Added a rules engine helper class to transform the GA from a string and give back the GA in numeric values
- Added an example of how to use the tree location widget
- Updated the
attachJson
function scope for theDatePickerFactory.class
&EdixTextFactory
to protected so as to enable extending
- Added a value set function to the hidden text factory. This is to enable the setting of this values from the previous ones incase calculations fail
- Updated the scope for the
moveToNextWizardStep
to protected to allow for extension
- Updated the native radio button to display the secondary values picked before step change
- Update the
JsonFormActivity
to allow implementation of thegetConfirmCloseMessage, setConfirmCloseMessage, getConfirmCloseTitle, setConfirmCloseTitle
- Moved validation for Edittext to OnTextChanged from OnFocusChange event
- Added RepeatingGroup widget
- Added a calculation logic to write values on the main form values from the popup
- This only works with the rules engine logic.
- You need to add the src json object on the calculation json object.
- Then set the
key
(this is the key of main widget launching the popup) - Then set the
option_key
(this is the option key where the popup is located ) - Then set the
stepName
(this is the form step name) -
{ "key": "toaster26_hidden", "openmrs_entity_parent": "", "openmrs_entity": "", "openmrs_entity_id": "", "type": "hidden", "calculation": { "rules-engine": { "ex-rules": { "rules-file": "sample-calculation-rules.yml" } }, "src": { "key": "cervical_exam", "option_key": "1", "stepName": "step1" } } }
- Changed implementation of popup used by number selector.
- Implemented using a Popup Menu provided by android instead of using custom popup dialog.
- Number selector cutting off in some devices with smaller resolutions
- Edit text hint cutting off
- Added RTL Support for date & time widgets
- Added Hidden attribute to EditText factory to toggle visibility of the edit text. Useful when performing calculations that do not default to 0 as in hidden widget.
- Added RDT capture widget