import 'package:hive/hive.dart'; part 'message.g.dart'; /// Modèle simple de message @HiveType(typeId: 51) class Message extends HiveObject { @HiveField(0) final String id; @HiveField(1) final String roomId; @HiveField(2) final String content; @HiveField(3) final int senderId; @HiveField(4) final String senderName; @HiveField(5) final DateTime sentAt; @HiveField(6) final bool isMe; @HiveField(7) final bool isRead; Message({ required this.id, required this.roomId, required this.content, required this.senderId, required this.senderName, required this.sentAt, this.isMe = false, this.isRead = false, }); // Simple factory depuis JSON factory Message.fromJson(Map json, int currentUserId) { return Message( id: json['id'], roomId: json['fk_room'], content: json['content'] ?? '', senderId: json['fk_user'] ?? 0, senderName: json['sender_name'] ?? 'Anonyme', sentAt: DateTime.parse(json['date_sent']), isMe: json['fk_user'] == currentUserId, isRead: json['statut'] == 'lu', ); } // Simple conversion en JSON pour envoi Map toJson() => { 'fk_room': roomId, 'content': content, 'fk_user': senderId, }; }