mirror of
				https://github.com/immich-app/immich.git
				synced 2025-11-03 19:17:11 -05:00 
			
		
		
		
	send cloudId during upload
# Conflicts: # mobile/lib/services/upload.service.dart
This commit is contained in:
		
							parent
							
								
									816fb1746a
								
							
						
					
					
						commit
						36680e4279
					
				
							
								
								
									
										20
									
								
								mobile/lib/domain/models/asset/metadata.model.dart
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								mobile/lib/domain/models/asset/metadata.model.dart
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,20 @@
 | 
			
		||||
import 'dart:convert';
 | 
			
		||||
 | 
			
		||||
class AssetMetadata {
 | 
			
		||||
  final String? cloudId;
 | 
			
		||||
 | 
			
		||||
  const AssetMetadata({this.cloudId});
 | 
			
		||||
 | 
			
		||||
  Map<String, dynamic> toMap() {
 | 
			
		||||
    return {
 | 
			
		||||
      "metadata": [
 | 
			
		||||
        {
 | 
			
		||||
          "key": "mobile-app",
 | 
			
		||||
          "value": cloudId != null ? {"iCloudId": cloudId} : {},
 | 
			
		||||
        },
 | 
			
		||||
      ],
 | 
			
		||||
    };
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  String toJson() => json.encode(toMap());
 | 
			
		||||
}
 | 
			
		||||
@ -7,6 +7,7 @@ import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
 | 
			
		||||
import 'package:immich_mobile/constants/constants.dart';
 | 
			
		||||
import 'package:immich_mobile/domain/models/asset/base_asset.model.dart';
 | 
			
		||||
import 'package:immich_mobile/domain/models/asset/metadata.model.dart';
 | 
			
		||||
import 'package:immich_mobile/domain/models/store.model.dart';
 | 
			
		||||
import 'package:immich_mobile/entities/store.entity.dart';
 | 
			
		||||
import 'package:immich_mobile/infrastructure/repositories/backup.repository.dart';
 | 
			
		||||
@ -291,6 +292,7 @@ class UploadService {
 | 
			
		||||
      priority: priority,
 | 
			
		||||
      isFavorite: asset.isFavorite,
 | 
			
		||||
      requiresWiFi: requiresWiFi,
 | 
			
		||||
      cloudId: asset.cloudId,
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@ -320,6 +322,7 @@ class UploadService {
 | 
			
		||||
      priority: 0, // Highest priority to get upload immediately
 | 
			
		||||
      isFavorite: asset.isFavorite,
 | 
			
		||||
      requiresWiFi: requiresWiFi,
 | 
			
		||||
      cloudId: asset.cloudId,
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@ -346,6 +349,7 @@ class UploadService {
 | 
			
		||||
    String? metadata,
 | 
			
		||||
    int? priority,
 | 
			
		||||
    bool? isFavorite,
 | 
			
		||||
    String? cloudId,
 | 
			
		||||
    bool requiresWiFi = true,
 | 
			
		||||
  }) async {
 | 
			
		||||
    final serverEndpoint = Store.get(StoreKey.serverEndpoint);
 | 
			
		||||
@ -361,6 +365,7 @@ class UploadService {
 | 
			
		||||
      'fileModifiedAt': modifiedAt.toUtc().toIso8601String(),
 | 
			
		||||
      'isFavorite': isFavorite?.toString() ?? 'false',
 | 
			
		||||
      'duration': '0',
 | 
			
		||||
      'metadata': AssetMetadata(cloudId: cloudId).toJson(),
 | 
			
		||||
      if (fields != null) ...fields,
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user