loadChatThreadGeneratedImageContent function

Future<ChatThreadGeneratedImageContent?> loadChatThreadGeneratedImageContent(
  1. RoomClient? room, {
  2. String? imageId,
  3. String? imageUri,
  4. String? fallbackMimeType,
})

Implementation

Future<ChatThreadGeneratedImageContent?> loadChatThreadGeneratedImageContent(
  RoomClient? room, {
  String? imageId,
  String? imageUri,
  String? fallbackMimeType,
}) async {
  _ThreadImageRecord? record;
  final normalizedUri = imageUri?.trim();
  if (normalizedUri != null && normalizedUri.isNotEmpty) {
    record = await _loadGeneratedThreadImageRecordFromUri(room, imageUri: normalizedUri, fallbackMimeType: fallbackMimeType);
  }

  final normalizedImageId = imageId?.trim();
  if (record == null && room != null && normalizedImageId != null && normalizedImageId.isNotEmpty) {
    record = await _loadGeneratedThreadImageRecord(room, imageId: normalizedImageId, fallbackMimeType: fallbackMimeType);
  }
  if (record == null) {
    return null;
  }

  return ChatThreadGeneratedImageContent(
    data: record.data,
    mimeType: record.mimeType,
    suggestedFileName: _ImageMime.suggestedFileName(record.mimeType),
  );
}