AIAssistantBaseEvent.fromMap constructor
Creates a new instance from a map
Implementation
factory AIAssistantBaseEvent.fromMap(Map<String, dynamic> map) {
if (map.isEmpty) {
throw ArgumentError('The AI Assistant base event map is empty');
}
// If the 'type' key is actually a map, unwrap it
if (map['type'] is Map) {
map = Map<String, dynamic>.from(map['type']);
}
return AIAssistantBaseEvent(
id: map['id'] is int ? map['id'] : int.tryParse(map['id']?.toString() ?? ''),
type: map['type'] is String ? map['type'] : map['type']?.toString(),
conversationId: map['conversationId'] is String ? map['conversationId'] : map['conversationId']?.toString(),
parentId: map['parentId'] is String ? map['parentId'] : map['parentId']?.toString(),
additionalProperties: map['additionalProperties'] is Map
? Map<String, dynamic>.from(map['additionalProperties'])
: {},
);
}