mirror of
https://github.com/immich-app/immich.git
synced 2024-11-19 11:58:57 -07:00
897d49f734
* refactor serving file function asset service * Remove PhotoViewer for now since it creates a problem in 2.10 * Added error message for wrong decode file and logo for failed to load file * Fixed error when read stream cannot be created and crash server * Added method to get all assets as a raw array * Implemented cleaner way of grouping image * Implemented operation to delete assets in the database * Implemented delete on database operation * Implemented delete on device operation * Fixed issue display wrong information when the auto backup is enabled after deleting all assets
53 lines
1.1 KiB
Dart
53 lines
1.1 KiB
Dart
import 'dart:convert';
|
|
|
|
class DeleteAssetResponse {
|
|
final String id;
|
|
final String status;
|
|
|
|
DeleteAssetResponse({
|
|
required this.id,
|
|
required this.status,
|
|
});
|
|
|
|
DeleteAssetResponse copyWith({
|
|
String? id,
|
|
String? status,
|
|
}) {
|
|
return DeleteAssetResponse(
|
|
id: id ?? this.id,
|
|
status: status ?? this.status,
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toMap() {
|
|
return {
|
|
'id': id,
|
|
'status': status,
|
|
};
|
|
}
|
|
|
|
factory DeleteAssetResponse.fromMap(Map<String, dynamic> map) {
|
|
return DeleteAssetResponse(
|
|
id: map['id'] ?? '',
|
|
status: map['status'] ?? '',
|
|
);
|
|
}
|
|
|
|
String toJson() => json.encode(toMap());
|
|
|
|
factory DeleteAssetResponse.fromJson(String source) => DeleteAssetResponse.fromMap(json.decode(source));
|
|
|
|
@override
|
|
String toString() => 'DeleteAssetResponse(id: $id, status: $status)';
|
|
|
|
@override
|
|
bool operator ==(Object other) {
|
|
if (identical(this, other)) return true;
|
|
|
|
return other is DeleteAssetResponse && other.id == id && other.status == status;
|
|
}
|
|
|
|
@override
|
|
int get hashCode => id.hashCode ^ status.hashCode;
|
|
}
|