TF-3792 Fix cannot reply to email on Stalwart server
Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
@@ -6,6 +6,7 @@ import 'package:dio/dio.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email_body_part.dart';
|
||||
import 'package:model/email/attachment.dart';
|
||||
import 'package:model/extensions/set_email_body_part_extension.dart';
|
||||
import 'package:model/upload/file_info.dart';
|
||||
import 'package:tmail_ui_user/features/composer/data/datasource/composer_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/composer/domain/repository/composer_repository.dart';
|
||||
@@ -64,6 +65,10 @@ class ComposerRepositoryImpl extends ComposerRepository {
|
||||
emailContent = tupleContentInlineAttachments.value1;
|
||||
emailAttachments.addAll(tupleContentInlineAttachments.value2);
|
||||
|
||||
if (emailAttachments.isNotEmpty) {
|
||||
emailAttachments = emailAttachments.onlyUseBlobIdOrPartId();
|
||||
}
|
||||
|
||||
emailContent = await removeCollapsedExpandedSignatureEffect(emailContent: emailContent);
|
||||
|
||||
final userAgent = await _applicationManager.generateApplicationUserAgent();
|
||||
|
||||
@@ -11,4 +11,19 @@ extension EmailBodyPartExtension on EmailBodyPart {
|
||||
cid: cid,
|
||||
charset: charset,
|
||||
disposition: disposition.toContentDisposition());
|
||||
|
||||
EmailBodyPart onlyUseBlobIdOrPartId() => EmailBodyPart(
|
||||
partId: blobId == null ? partId : null,
|
||||
blobId: blobId,
|
||||
size: size,
|
||||
name: name,
|
||||
type: type,
|
||||
cid: cid,
|
||||
charset: charset,
|
||||
disposition: disposition,
|
||||
headers: headers,
|
||||
language: language,
|
||||
location: location,
|
||||
subParts: subParts,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email_body_part.dart';
|
||||
import 'package:model/extensions/email_body_part_extension.dart';
|
||||
|
||||
extension SetEmailBodyPartExtension on Set<EmailBodyPart> {
|
||||
Set<EmailBodyPart> onlyUseBlobIdOrPartId() =>
|
||||
map((emailBodyPart) => emailBodyPart.onlyUseBlobIdOrPartId()).toSet();
|
||||
}
|
||||
@@ -61,6 +61,7 @@ export 'extensions/session_extension.dart';
|
||||
export 'extensions/utc_date_extension.dart';
|
||||
export 'extensions/contact_support_capability_extension.dart';
|
||||
export 'extensions/list_id_extension.dart';
|
||||
export 'extensions/set_email_body_part_extension.dart';
|
||||
// Identity
|
||||
export 'identity/identity_request_dto.dart';
|
||||
export 'mailbox/expand_mode.dart';
|
||||
|
||||
Reference in New Issue
Block a user