DiseaseInfoViewModel class
Manages the state and business logic for displaying disease information.
This view model handles:
- Loading disease data from the repository
- Filtering diseases by search query
- Managing disease-related UI state
- Error handling for data loading
It extends ChangeNotifier to provide reactive state updates to the UI.
- Inheritance
-
- Object
- ChangeNotifier
- DiseaseInfoViewModel
Constructors
- DiseaseInfoViewModel({required MosquitoRepository repository})
Properties
-
diseases
→ List<
Disease> -
List of all loaded diseases
no setter
- errorMessage → String?
-
Error message if loading diseases failed
no setter
-
filteredDiseases
→ List<
Disease> -
Gets the list of diseases filtered by the current search query
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasListeners → bool
-
Whether any listeners are currently registered.
no setterinherited
- isLoading → bool
-
Whether disease data is currently being loaded
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- searchQuery → String
-
Current search query for filtering diseases
no setter
- state → DiseaseInfoState
-
Current state of the view model
no setter
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be called when the object changes.
inherited
-
dispose(
) → void -
Discards any resources used by the object. After this is called, the
object is not in a usable state and should be discarded (calls to
addListener will throw after the object is disposed).
inherited
-
getDiseaseById(
String id, AppLocalizations localizations) → Future< Disease?> - Gets a disease by its ID
-
getDiseasesByVector(
String speciesName, AppLocalizations localizations) → Future< List< Disease> > - Gets all diseases associated with a specific mosquito vector
-
loadDiseases(
AppLocalizations localizations) → Future< void> - Loads all diseases from the repository
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notifyListeners(
) → void -
Call all the registered listeners.
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that are
notified when the object changes.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
updateSearchQuery(
String query) → void - Updates the current search query and notifies listeners
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited