exportConversation method

Future<String> exportConversation(
  1. String sessionId, {
  2. ExportFormat format = ExportFormat.markdown,
})

Export a conversation to a given format.

Implementation

Future<String> exportConversation(
  String sessionId, {
  ExportFormat format = ExportFormat.markdown,
}) async {
  final messages = await loadConversation(sessionId);
  if (messages == null) return 'Session not found.';

  switch (format) {
    case ExportFormat.markdown:
      return _exportAsMarkdown(messages, sessionId);
    case ExportFormat.json:
      return const JsonEncoder.withIndent('  ').convert(messages);
    case ExportFormat.html:
      return _exportAsHtml(messages, sessionId);
    case ExportFormat.plainText:
      return _exportAsPlainText(messages);
  }
}