mirror of
https://github.com/immich-app/immich
synced 2026-08-15 13:03:57 +00:00
35 lines
1.3 KiB
Dart
35 lines
1.3 KiB
Dart
import 'package:flutter/foundation.dart';
|
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
import 'package:immich_mobile/generated/translations.g.dart';
|
|
import 'package:immich_mobile/models/server_info/server_config.model.dart';
|
|
import 'package:immich_mobile/models/server_info/server_disk_info.model.dart';
|
|
import 'package:immich_mobile/models/server_info/server_features.model.dart';
|
|
import 'package:immich_mobile/models/server_info/server_version.model.dart';
|
|
|
|
part 'server_info.model.freezed.dart';
|
|
|
|
enum VersionStatus {
|
|
upToDate,
|
|
clientOutOfDate,
|
|
serverOutOfDate,
|
|
error;
|
|
|
|
String get message => switch (this) {
|
|
VersionStatus.upToDate => "",
|
|
VersionStatus.clientOutOfDate => StaticTranslations.instance.app_update_available,
|
|
VersionStatus.serverOutOfDate => StaticTranslations.instance.server_update_available,
|
|
VersionStatus.error => StaticTranslations.instance.unable_to_check_version,
|
|
};
|
|
}
|
|
|
|
@freezed
|
|
abstract class ServerInfo with _$ServerInfo {
|
|
const factory ServerInfo({
|
|
required ServerVersion serverVersion,
|
|
ServerVersion? latestVersion,
|
|
required ServerFeatures serverFeatures,
|
|
required ServerConfig serverConfig,
|
|
required ServerDiskInfo serverDiskInfo,
|
|
required VersionStatus versionStatus,
|
|
}) = _ServerInfo;
|
|
}
|