62 lines
1.2 KiB
Dart
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,
|
|
);
|
|
}
|
|
} |