1
0
mirror of https://github.com/immich-app/immich.git synced 2024-12-25 10:43:13 +02:00
immich/mobile/lib/shared/models/server_info/server_config.model.dart
shenlong 2aaf941dda
refactor(mobile): use startOAuth and server features flags (#6155)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-04 14:44:40 -06:00

48 lines
1.3 KiB
Dart

import 'package:openapi/api.dart';
class ServerConfig {
final int trashDays;
final String oauthButtonText;
final String externalDomain;
const ServerConfig({
required this.trashDays,
required this.oauthButtonText,
required this.externalDomain,
});
ServerConfig copyWith({
int? trashDays,
String? oauthButtonText,
String? externalDomain,
}) {
return ServerConfig(
trashDays: trashDays ?? this.trashDays,
oauthButtonText: oauthButtonText ?? this.oauthButtonText,
externalDomain: externalDomain ?? this.externalDomain,
);
}
@override
String toString() =>
'ServerConfig(trashDays: $trashDays, oauthButtonText: $oauthButtonText, externalDomain: $externalDomain)';
ServerConfig.fromDto(ServerConfigDto dto)
: trashDays = dto.trashDays,
oauthButtonText = dto.oauthButtonText,
externalDomain = dto.externalDomain;
@override
bool operator ==(covariant ServerConfig other) {
if (identical(this, other)) return true;
return other.trashDays == trashDays &&
other.oauthButtonText == oauthButtonText &&
other.externalDomain == externalDomain;
}
@override
int get hashCode =>
trashDays.hashCode ^ oauthButtonText.hashCode ^ externalDomain.hashCode;
}