mirror of
https://github.com/immich-app/immich
synced 2025-11-07 17:27:20 +00:00
refactor(mobile): device asset entity to use modified time (#17064)
* refactor: device asset entity to use modified time * chore: cleanup * refactor: remove album media dependency from hashservice * refactor: return updated copy of asset * add hash service tests * chore: rename hash batch constants * chore: log the number of assets processed during migration * chore: more logs * refactor: use lookup and more tests * use sort approach * refactor hash service to use for loop instead * refactor: rename to getByIds --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
This commit is contained in:
parent
e8b4ac0522
commit
97e52c5156
23 changed files with 1801 additions and 185 deletions
36
mobile/lib/infrastructure/entities/device_asset.entity.dart
Normal file
36
mobile/lib/infrastructure/entities/device_asset.entity.dart
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
import 'dart:typed_data';
|
||||
|
||||
import 'package:immich_mobile/domain/models/device_asset.model.dart';
|
||||
import 'package:immich_mobile/utils/hash.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
|
||||
part 'device_asset.entity.g.dart';
|
||||
|
||||
@Collection(inheritance: false)
|
||||
class DeviceAssetEntity {
|
||||
Id get id => fastHash(assetId);
|
||||
|
||||
@Index(replace: true, unique: true, type: IndexType.hash)
|
||||
final String assetId;
|
||||
@Index(unique: false, type: IndexType.hash)
|
||||
final List<byte> hash;
|
||||
final DateTime modifiedTime;
|
||||
|
||||
const DeviceAssetEntity({
|
||||
required this.assetId,
|
||||
required this.hash,
|
||||
required this.modifiedTime,
|
||||
});
|
||||
|
||||
DeviceAsset toModel() => DeviceAsset(
|
||||
assetId: assetId,
|
||||
hash: Uint8List.fromList(hash),
|
||||
modifiedTime: modifiedTime,
|
||||
);
|
||||
|
||||
static DeviceAssetEntity fromDto(DeviceAsset dto) => DeviceAssetEntity(
|
||||
assetId: dto.assetId,
|
||||
hash: dto.hash,
|
||||
modifiedTime: dto.modifiedTime,
|
||||
);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue