snap_wish/lib/data/models/hive_image_folder.dart
2025-09-17 09:49:37 +08:00

62 lines
1.2 KiB
Dart

import 'package:hive/hive.dart';
import '../../domain/entities/image_folder.dart';
part 'hive_image_folder.g.dart';
@HiveType(typeId: 1)
class HiveImageFolder {
@HiveField(0)
final String id;
@HiveField(1)
final String name;
@HiveField(2)
final String? coverImageId;
@HiveField(3)
final String icon;
@HiveField(4)
final DateTime createdAt;
@HiveField(5)
final DateTime updatedAt;
@HiveField(6)
final DateTime lastUsedAt;
HiveImageFolder({
required this.id,
required this.name,
this.coverImageId,
required this.icon,
required this.createdAt,
required this.updatedAt,
required this.lastUsedAt,
});
factory HiveImageFolder.fromEntity(ImageFolder entity) {
return HiveImageFolder(
id: entity.id,
name: entity.name,
coverImageId: entity.coverImageId,
icon: entity.icon,
createdAt: entity.createdAt,
updatedAt: entity.updatedAt,
lastUsedAt: entity.lastUsedAt,
);
}
ImageFolder toEntity() {
return ImageFolder(
id: id,
name: name,
coverImageId: coverImageId,
icon: icon,
createdAt: createdAt,
updatedAt: updatedAt,
lastUsedAt: lastUsedAt,
);
}
}