chore(wip): upgrade dependencies, begin refactor
This commit is contained in:
30
frontend/lib/data/models/landmark_model.dart
Normal file
30
frontend/lib/data/models/landmark_model.dart
Normal file
@@ -0,0 +1,30 @@
|
||||
import 'package:anyway/domain/entities/landmark.dart';
|
||||
import 'package:anyway/domain/entities/landmark_description.dart';
|
||||
import 'package:anyway/domain/entities/landmark_type.dart';
|
||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||
part 'landmark_model.freezed.dart';
|
||||
part 'landmark_model.g.dart';
|
||||
|
||||
@freezed
|
||||
abstract class LandmarkModel with _$LandmarkModel {
|
||||
const factory LandmarkModel({
|
||||
required String uuid,
|
||||
required String name,
|
||||
required List<double> location,
|
||||
required String type,
|
||||
required bool isSecondary,
|
||||
required String description,
|
||||
}) = _LandmarkModel;
|
||||
|
||||
factory LandmarkModel.fromJson(Map<String, dynamic> json) => _$LandmarkModelFromJson(json);
|
||||
|
||||
Landmark toEntity() => Landmark(
|
||||
uuid: uuid,
|
||||
name: name,
|
||||
location: location,
|
||||
type: LandmarkType(type: LandmarkTypeEnum.values.firstWhere((e) => e.value == type)),
|
||||
isSecondary: isSecondary,
|
||||
// TODO - try to set tags
|
||||
description: LandmarkDescription(description: description, tags: [])
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user