mirror of
				https://github.com/immich-app/immich.git
				synced 2025-10-31 10:49:11 -04:00 
			
		
		
		
	* Renamed multipart filed name 'files' to 'assetData'. * Added an additional field name of 'thumbnailData' to multipart form. * Implemented upload mechanism for thumbnail directly from the mobile client. * Removed dead code * Implemented a version checking mechanism.
		
			
				
	
	
		
			79 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
| import 'dart:convert';
 | |
| 
 | |
| import 'package:immich_mobile/shared/models/mapbox_info.model.dart';
 | |
| import 'package:immich_mobile/shared/models/server_version.model.dart';
 | |
| 
 | |
| class ServerInfoState {
 | |
|   final MapboxInfo mapboxInfo;
 | |
|   final ServerVersion serverVersion;
 | |
|   final bool isVersionMismatch;
 | |
|   final String versionMismatchErrorMessage;
 | |
| 
 | |
|   ServerInfoState({
 | |
|     required this.mapboxInfo,
 | |
|     required this.serverVersion,
 | |
|     required this.isVersionMismatch,
 | |
|     required this.versionMismatchErrorMessage,
 | |
|   });
 | |
| 
 | |
|   ServerInfoState copyWith({
 | |
|     MapboxInfo? mapboxInfo,
 | |
|     ServerVersion? serverVersion,
 | |
|     bool? isVersionMismatch,
 | |
|     String? versionMismatchErrorMessage,
 | |
|   }) {
 | |
|     return ServerInfoState(
 | |
|       mapboxInfo: mapboxInfo ?? this.mapboxInfo,
 | |
|       serverVersion: serverVersion ?? this.serverVersion,
 | |
|       isVersionMismatch: isVersionMismatch ?? this.isVersionMismatch,
 | |
|       versionMismatchErrorMessage: versionMismatchErrorMessage ?? this.versionMismatchErrorMessage,
 | |
|     );
 | |
|   }
 | |
| 
 | |
|   Map<String, dynamic> toMap() {
 | |
|     return {
 | |
|       'mapboxInfo': mapboxInfo.toMap(),
 | |
|       'serverVersion': serverVersion.toMap(),
 | |
|       'isVersionMismatch': isVersionMismatch,
 | |
|       'versionMismatchErrorMessage': versionMismatchErrorMessage,
 | |
|     };
 | |
|   }
 | |
| 
 | |
|   factory ServerInfoState.fromMap(Map<String, dynamic> map) {
 | |
|     return ServerInfoState(
 | |
|       mapboxInfo: MapboxInfo.fromMap(map['mapboxInfo']),
 | |
|       serverVersion: ServerVersion.fromMap(map['serverVersion']),
 | |
|       isVersionMismatch: map['isVersionMismatch'] ?? false,
 | |
|       versionMismatchErrorMessage: map['versionMismatchErrorMessage'] ?? '',
 | |
|     );
 | |
|   }
 | |
| 
 | |
|   String toJson() => json.encode(toMap());
 | |
| 
 | |
|   factory ServerInfoState.fromJson(String source) => ServerInfoState.fromMap(json.decode(source));
 | |
| 
 | |
|   @override
 | |
|   String toString() {
 | |
|     return 'ServerInfoState(mapboxInfo: $mapboxInfo, serverVersion: $serverVersion, isVersionMismatch: $isVersionMismatch, versionMismatchErrorMessage: $versionMismatchErrorMessage)';
 | |
|   }
 | |
| 
 | |
|   @override
 | |
|   bool operator ==(Object other) {
 | |
|     if (identical(this, other)) return true;
 | |
| 
 | |
|     return other is ServerInfoState &&
 | |
|         other.mapboxInfo == mapboxInfo &&
 | |
|         other.serverVersion == serverVersion &&
 | |
|         other.isVersionMismatch == isVersionMismatch &&
 | |
|         other.versionMismatchErrorMessage == versionMismatchErrorMessage;
 | |
|   }
 | |
| 
 | |
|   @override
 | |
|   int get hashCode {
 | |
|     return mapboxInfo.hashCode ^
 | |
|         serverVersion.hashCode ^
 | |
|         isVersionMismatch.hashCode ^
 | |
|         versionMismatchErrorMessage.hashCode;
 | |
|   }
 | |
| }
 |