loadConversation method

Future<List<Map<String, dynamic>>?> loadConversation(
  1. String sessionId
)

Load a conversation by session ID.

Implementation

Future<List<Map<String, dynamic>>?> loadConversation(String sessionId) async {
  final messagesFile = File(
    p.join(_sessionsDir, sessionId, 'messages.jsonl'),
  );
  if (!await messagesFile.exists()) return null;

  final messages = <Map<String, dynamic>>[];
  final lines = await messagesFile.readAsLines();
  for (final line in lines) {
    if (line.trim().isNotEmpty) {
      messages.add(jsonDecode(line) as Map<String, dynamic>);
    }
  }
  return messages;
}