57 lines
1.2 KiB
Dart
57 lines
1.2 KiB
Dart
class Landmark {
|
|
final String name;
|
|
final List location;
|
|
final LandmarkType type;
|
|
// final String description;
|
|
// final Duration duration;
|
|
// final bool visited;
|
|
|
|
const Landmark({
|
|
required this.name,
|
|
required this.location,
|
|
required this.type,
|
|
// required this.description,
|
|
// required this.duration,
|
|
// required this.visited,
|
|
});
|
|
|
|
factory Landmark.fromJson(Map<String, dynamic> json) {
|
|
return switch (json) {
|
|
{
|
|
'loc': List location,
|
|
'name': String name,
|
|
'type': String type,
|
|
// 'description': String description,
|
|
// 'duration': int duration,
|
|
// 'visited': bool visited
|
|
|
|
} =>
|
|
Landmark(
|
|
name: name,
|
|
location: location,
|
|
type: LandmarkType(name: type)
|
|
// description: description,
|
|
// duration: Duration(minutes: duration),
|
|
// visited: visited
|
|
),
|
|
_ => throw const FormatException('Failed to load destination.'),
|
|
};
|
|
}
|
|
|
|
}
|
|
|
|
|
|
class LandmarkType {
|
|
final String name;
|
|
// final String description;
|
|
// final Icon icon;
|
|
|
|
const LandmarkType({
|
|
required this.name,
|
|
// required this.description,
|
|
// required this.icon,
|
|
});
|
|
}
|
|
|
|
|