2023-03-18 15:55:11 +01:00
|
|
|
import 'package:immich_mobile/utils/hash.dart';
|
|
|
|
|
import 'package:isar/isar.dart';
|
|
|
|
|
|
2024-04-30 21:36:40 -05:00
|
|
|
part 'backup_album.entity.g.dart';
|
2023-03-18 15:55:11 +01:00
|
|
|
|
|
|
|
|
@Collection(inheritance: false)
|
|
|
|
|
class BackupAlbum {
|
|
|
|
|
String id;
|
|
|
|
|
DateTime lastBackup;
|
|
|
|
|
@Enumerated(EnumType.ordinal)
|
|
|
|
|
BackupSelection selection;
|
|
|
|
|
|
|
|
|
|
BackupAlbum(this.id, this.lastBackup, this.selection);
|
|
|
|
|
|
|
|
|
|
Id get isarId => fastHash(id);
|
2025-07-21 23:26:49 +05:30
|
|
|
|
2025-07-29 00:34:03 +05:30
|
|
|
BackupAlbum copyWith({String? id, DateTime? lastBackup, BackupSelection? selection}) {
|
|
|
|
|
return BackupAlbum(id ?? this.id, lastBackup ?? this.lastBackup, selection ?? this.selection);
|
2025-07-21 23:26:49 +05:30
|
|
|
}
|
2023-03-18 15:55:11 +01:00
|
|
|
}
|
|
|
|
|
|
2025-07-29 00:34:03 +05:30
|
|
|
enum BackupSelection { none, select, exclude }
|