dhis2_flutter_ui 1.0.4 dhis2_flutter_ui: ^1.0.4 copied to clipboard
DHIS2 Flutter UI is a library combine different UI experience used to in DHIS2 to deliver solution.It is consists of different form components ,common components and models that support dhis2 api data [...]
DHIS2 FLUTTER UI
This Library support common components in Dhis2 used in Flutter
Table of Contents #
About #
DHIS2 Flutter UI is a library combine different UI experience used to in DHIS2 to deliver solution.It is consists of different form components ,common components and models that support dhis2 api data structure with reference to their metadata.
Project Structure #
The implementation of this project was based on Flutter and Dart.
The structure of this project folders is as summarized bellow:
|-lib
| |-dhis2_flutter_ui.dart
| |-src
| |-main_directive.dart
| |-ui
| |-components
| |-core
| |-models
| |-utils
|
Supported Components #
The following are list of supported components and models in the packages.
i. Input Components #
list of input components
components | props |
---|---|
SearchInput | |
RadioInputFieldContainer | |
BooleanInputFieldContainer | |
CheckBoxInputField | |
CoordinateInputFieldContainer | |
DateInputFieldContainer | |
InputClearIcon | |
NumericalInputFieldContainer | |
SelectInputField | |
TextInputFieldContainer | |
TrueOnlyInputFieldContainer | |
InputFieldContainer | |
PercentageInputFieldContainer | |
TimeInputFieldContainer | |
FormFieldInputIcon |
ii. Generic Components #
list of generic components
components | props |
---|---|
CircularProcessLoader | |
MaterialCard | |
LineSeparator |
iii. Models Supported #
list of models
Models | props |
---|---|
Application | String id; String label ; String iconPath; List |
Dhis2Option | String? id;String? name;String? code; String? optionSet; int? sortOrder; |
DataElement | String? id; String? valueType; String? optionSet; List |
Dhis2EventDataValue | String? id; String? event; String? dataElement;String? value; |
InputField | String id;String name; String? translatedName;String? description; String? translatedDescription; String valueType; Color? labelColor; Color? inputColor; Color? background; bool? renderAsRadio; bool? isReadOnly; bool? isPasswordField; bool? shouldCapitalize;bool? allowFuturePeriod; bool? showCountryLevelTree; bool? disablePastPeriod; bool? hasError; int? minAgeInYear; int? maxAgeInYear; int? numberOfMonth; bool? shouldUserCustomAgeLimit; String? suffixLabel; String? hint; String? translatedHint; List |
InputFieldOption | String name; String? translatedName; dynamic code; |
Dhis2Event | String? id; String? event; String? eventDate; String? orgUnit; String? program; String? programStage; String? storedBy; String? completedDate; String? status; String? syncStatus;List |
MetadataSyncItem | String? id; String? name; String? progressPercentage; bool? isDefault; bool? isCompleted; List |
OrganisationUnit | String? id; String? name; String? parent; String? code; String? path; int? level;List |
ProgramIndicator | String? id; String? aggregationType; String? expression; String? filter; String? program; |
ProgramRuleAction | String? id; String? programRule; String? data; String? content; String? programRuleActionType; String? location; String? dataElement; String? trackedEntityAttribute;String? programStageSection; String? programStage; |
ProgramRule | String? id; String? condition; String? program; List |
ProgramRuleVariable | String? id; String? name; String? programRuleVariableSourceType; String? program; String? dataElement; String? trackedEntityAttribute; String? programStageSection;String? programStage; |
SystemInfo | String? contextPath; String? systemId; String? systemName; String? userAgent; String? calendar; String? dateFormat; String? lastAnalyticsTableSuccess; String? lastAnalyticsTableRuntime; String? revision; String? jasperReportsVersion; String? environmentVariable; String? fileStoreProvider; String? readOnlyMode; String? javaVersion; String? osName; String? osArchitecture; String? osVersion; String? memoryInfo; String? cpuCores; |
Getting Started #
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
git clone <github_repository_url>
How to Deploy #
The following are step by step instruction that will help you deploy this package.
Login into you local environment (terminal) #
dart pub login
This will create a link to redirect you into supported web browser ,then login through your supported email you have used in pubdev
Dry run to format package before deploy #
This will run and check best practice that recommended by pub dev , it will check formats , file structure , required content of pubspec.yalm file , package size and version of the package control. Use the following command for dry run of your package.
dart pub publish -n
or
dart pub publish --dry-run
Publish package #
Use the following command to publish package into pubdev
dart pub publish
🔧 Running the tests #
Explain how to run the automated tests for this system.
Break down into end to end tests #
Explain what these tests test and why
Give an example
And coding style tests #
Explain what these tests test and why
Give an example