TF-3424 Fix TMail web should display text/plain with a fixed width font

This commit is contained in:
dab246
2025-01-16 19:10:41 +07:00
committed by Dat H. Pham
parent 597b8f1a29
commit 4ce729ff59
3 changed files with 16 additions and 1 deletions
+1
View File
@@ -33,6 +33,7 @@ export 'presentation/utils/style_utils.dart';
export 'presentation/utils/app_toast.dart';
export 'presentation/utils/html_transformer/html_transform.dart';
export 'presentation/utils/html_transformer/transform_configuration.dart';
export 'presentation/utils/html_transformer/text/persist_preformatted_text_transformer.dart';
export 'data/utils/device_manager.dart';
export 'utils/app_logger.dart';
export 'utils/benchmark.dart';
@@ -0,0 +1,12 @@
import 'dart:convert';
import 'package:core/presentation/utils/html_transformer/base/text_transformer.dart';
class PersistPreformattedTextTransformer extends TextTransformer {
const PersistPreformattedTextTransformer();
@override
String process(String text, HtmlEscape htmlEscape) {
return '<pre>$text</pre>';
}
}
@@ -1,6 +1,7 @@
import 'package:collection/collection.dart';
import 'package:core/data/constants/constant.dart';
import 'package:core/presentation/utils/html_transformer/html_transform.dart';
import 'package:core/presentation/utils/html_transformer/text/persist_preformatted_text_transformer.dart';
import 'package:core/presentation/utils/html_transformer/text/sanitize_autolink_html_transformers.dart';
import 'package:core/presentation/utils/html_transformer/transform_configuration.dart';
import 'package:core/utils/app_logger.dart';
@@ -37,7 +38,8 @@ class HtmlAnalyzer {
final message = _htmlTransform.transformToTextPlain(
content: emailContent.content,
transformConfiguration: TransformConfiguration.fromTextTransformers([
const SanitizeAutolinkHtmlTransformers()
const SanitizeAutolinkHtmlTransformers(),
const PersistPreformattedTextTransformer(),
]),
);
return EmailContent(emailContent.type, message);