- Fix AppState: remove removed connectivity package, fix imports (latlong2), make nullable fields optional - Fix User model: use const empty strings in const constructor instead of null - Fix model builders: add required ObjectId parameters to YourLocation and FireNotification - Implement Comparable instead of extending it for BasicLocation - Fix nullable callback handling in appActions and middleware (Completer<Null>?) - Add null checks for BuildContext in dialogs (fireAlert, homePage, etc.) - Fix nullable scaffold state access using ?. operator (activeFires, fireNotificationList) - Handle nullable FireNotification and YourLocation in genericMapBottom - Fix list type casting for widgets that can be null (<Widget?> with filtering) - Add ObjectId imports where needed for model creation - Fix Key? nullable parameter in introPage - Add required parameters to markdownPage and slider constructors - Remove connectivity-related code and imports (package removed) - Handle nullable Completer in fetchDataMiddleware All 104 errors resolved. 0 errors, 61 warnings/info remaining.
33 lines
873 B
Dart
33 lines
873 B
Dart
class BasicLocation implements Comparable<BasicLocation> {
|
|
final double lat;
|
|
final double lon;
|
|
final String? description;
|
|
|
|
// static BasicLocation noLocation = new BasicLocation(lat: 0.0, lon: 0.0);
|
|
|
|
BasicLocation({required this.lat, required this.lon, this.description}) {}
|
|
|
|
int compareTo(BasicLocation other) {
|
|
return lat == other.lat && lon == other.lon ? 1 : 0;
|
|
}
|
|
|
|
bool operator ==(o) => o is BasicLocation && o.lat == lat && o.lon == lon;
|
|
|
|
int get hashCode {
|
|
int hash = 1;
|
|
hash = hash * 17 + lat.hashCode;
|
|
hash = hash * 31 + lon.hashCode;
|
|
return hash;
|
|
}
|
|
|
|
BasicLocation.fromJson(Map<String, dynamic> json)
|
|
: lat = json['lat'],
|
|
lon = json['lon'],
|
|
description = json['description'];
|
|
|
|
Map<String, dynamic> toJson() => {
|
|
'lat': lat,
|
|
'lon': lon,
|
|
'description': description,
|
|
};
|
|
}
|