You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
fluffychat/lib/utils/file_description.dart

28 lines
725 B
Dart

import 'package:matrix/matrix.dart';
extension FileDescriptionExtension on Event {
String? get fileDescription {
if (!{
MessageTypes.File,
MessageTypes.Image,
MessageTypes.Sticker,
MessageTypes.Video,
MessageTypes.Audio,
}.contains(messageType)) {
return null;
}
final formattedBody = content.tryGet<String>('formatted_body');
if (formattedBody != null && formattedBody.isNotEmpty) return formattedBody;
final filename = content.tryGet<String>('filename');
final body = content.tryGet<String>('body');
if (filename != body &&
body != null &&
filename != null &&
body.isNotEmpty) {
return body;
}
return null;
}
}