refactor(mobile): server info to use data classes instead of dtos (#4591)

* refactor: server info model to use data classes instead of dtos

* mobile: add return types and refactor private variables in map / stack

---------

Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
This commit is contained in:
shenlong 2023-10-22 20:15:34 +00:00 committed by GitHub
parent 9b418642a6
commit b05132a01a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 294 additions and 86 deletions

View file

@ -0,0 +1,44 @@
import 'package:openapi/api.dart';
class ServerConfig {
final int trashDays;
final String mapTileUrl;
const ServerConfig({
required this.trashDays,
required this.mapTileUrl,
});
ServerConfig copyWith({
int? trashDays,
String? mapTileUrl,
}) {
return ServerConfig(
trashDays: trashDays ?? this.trashDays,
mapTileUrl: mapTileUrl ?? this.mapTileUrl,
);
}
@override
String toString() {
return 'ServerConfig(trashDays: $trashDays, mapTileUrl: $mapTileUrl)';
}
ServerConfig.fromDto(ServerConfigDto dto)
: trashDays = dto.trashDays,
mapTileUrl = dto.mapTileUrl;
@override
bool operator ==(Object other) {
if (identical(this, other)) return true;
return other is ServerConfig &&
other.trashDays == trashDays &&
other.mapTileUrl == mapTileUrl;
}
@override
int get hashCode {
return trashDays.hashCode ^ mapTileUrl.hashCode;
}
}