diff --git a/core/lib/presentation/utils/html_transformer/base/dom_transformer.dart b/core/lib/presentation/utils/html_transformer/base/dom_transformer.dart index 20bcd42a5..b964675db 100644 --- a/core/lib/presentation/utils/html_transformer/base/dom_transformer.dart +++ b/core/lib/presentation/utils/html_transformer/base/dom_transformer.dart @@ -15,7 +15,6 @@ abstract class DomTransformer { Document document, String message, Map? mapUrlDownloadCID, - TransformConfiguration configuration, DioClient dioClient ); diff --git a/core/lib/presentation/utils/html_transformer/dom/blockquoted_transformers.dart b/core/lib/presentation/utils/html_transformer/dom/blockquoted_transformers.dart index 34f21f5ef..5dc494393 100644 --- a/core/lib/presentation/utils/html_transformer/dom/blockquoted_transformers.dart +++ b/core/lib/presentation/utils/html_transformer/dom/blockquoted_transformers.dart @@ -1,16 +1,21 @@ -import 'package:html/dom.dart'; +import 'package:core/data/network/dio_client.dart'; import 'package:core/presentation/utils/html_transformer/base/dom_transformer.dart'; -import 'package:core/presentation/utils/html_transformer/transform_configuration.dart'; +import 'package:html/dom.dart'; class BlockQuotedTransformer extends DomTransformer { const BlockQuotedTransformer(); @override - void process(Document document, String message, TransformConfiguration configuration) { + Future process( + Document document, + String message, + Map? mapUrlDownloadCID, + DioClient dioClient + ) async { final quotedElements = document.getElementsByTagName('blockquote'); - for (final quotedElement in quotedElements) { + await Future.wait(quotedElements.map((quotedElement) async { quotedElement.attributes['style'] = ''' margin-left: 4px; margin-right: 4px; @@ -18,6 +23,6 @@ class BlockQuotedTransformer extends DomTransformer { padding-right: 8px; border-left: 2px solid #eee; '''; - } + })); } } \ No newline at end of file diff --git a/core/lib/presentation/utils/html_transformer/dom/image_transformers.dart b/core/lib/presentation/utils/html_transformer/dom/image_transformers.dart index 2c6fe19e0..971f58c88 100644 --- a/core/lib/presentation/utils/html_transformer/dom/image_transformers.dart +++ b/core/lib/presentation/utils/html_transformer/dom/image_transformers.dart @@ -2,10 +2,9 @@ import 'dart:convert'; import 'package:core/core.dart'; +import 'package:core/presentation/utils/html_transformer/base/dom_transformer.dart'; import 'package:dio/dio.dart'; import 'package:html/dom.dart'; -import 'package:core/presentation/utils/html_transformer/base/dom_transformer.dart'; -import 'package:core/presentation/utils/html_transformer/transform_configuration.dart'; class ImageTransformer extends DomTransformer { @@ -16,7 +15,6 @@ class ImageTransformer extends DomTransformer { Document document, String message, Map? mapUrlDownloadCID, - TransformConfiguration configuration, DioClient dioClient ) async { final imageElements = document.getElementsByTagName('img'); diff --git a/core/lib/presentation/utils/html_transformer/dom/link_transformers.dart b/core/lib/presentation/utils/html_transformer/dom/link_transformers.dart index 164b53087..7d0296b05 100644 --- a/core/lib/presentation/utils/html_transformer/dom/link_transformers.dart +++ b/core/lib/presentation/utils/html_transformer/dom/link_transformers.dart @@ -13,7 +13,6 @@ class EnsureRelationNoReferrerTransformer extends DomTransformer { Document document, String message, Map? mapUrlDownloadCID, - TransformConfiguration configuration, DioClient dioClient ) async { final linkElements = document.getElementsByTagName('a'); diff --git a/core/lib/presentation/utils/html_transformer/dom/meta_transformers.dart b/core/lib/presentation/utils/html_transformer/dom/meta_transformers.dart index 36686cba6..c714865ad 100644 --- a/core/lib/presentation/utils/html_transformer/dom/meta_transformers.dart +++ b/core/lib/presentation/utils/html_transformer/dom/meta_transformers.dart @@ -18,7 +18,6 @@ class ViewPortTransformer extends DomTransformer { Document document, String message, Map? mapUrlDownloadCID, - TransformConfiguration configuration, DioClient dioClient ) async { final metaElements = document.getElementsByTagName('meta'); diff --git a/core/lib/presentation/utils/html_transformer/dom/script_transformers.dart b/core/lib/presentation/utils/html_transformer/dom/script_transformers.dart index f4121b25d..1850208e3 100644 --- a/core/lib/presentation/utils/html_transformer/dom/script_transformers.dart +++ b/core/lib/presentation/utils/html_transformer/dom/script_transformers.dart @@ -13,7 +13,6 @@ class RemoveScriptTransformer extends DomTransformer { Document document, String message, Map? mapUrlDownloadCID, - TransformConfiguration configuration, DioClient dioClient ) async { final scriptElements = document.getElementsByTagName('script'); diff --git a/core/lib/presentation/utils/html_transformer/message_content_transformer.dart b/core/lib/presentation/utils/html_transformer/message_content_transformer.dart index d7cf1f8df..5bd4892d6 100644 --- a/core/lib/presentation/utils/html_transformer/message_content_transformer.dart +++ b/core/lib/presentation/utils/html_transformer/message_content_transformer.dart @@ -17,7 +17,7 @@ class MessageContentTransformer { Map? mapUrlDownloadCID, ) async { await Future.wait(configuration.domTransformers.map((domTransformer) async { - await domTransformer.process(document, message, mapUrlDownloadCID, configuration, dioClient); + await domTransformer.process(document, message, mapUrlDownloadCID, dioClient); })); } diff --git a/core/lib/presentation/utils/html_transformer/transform_configuration.dart b/core/lib/presentation/utils/html_transformer/transform_configuration.dart index ea11f314e..45d588ba1 100644 --- a/core/lib/presentation/utils/html_transformer/transform_configuration.dart +++ b/core/lib/presentation/utils/html_transformer/transform_configuration.dart @@ -1,14 +1,14 @@ +import 'package:core/presentation/utils/html_transformer/base/dom_transformer.dart'; +import 'package:core/presentation/utils/html_transformer/base/text_transformer.dart'; import 'package:core/presentation/utils/html_transformer/dom/blockquoted_transformers.dart'; import 'package:core/presentation/utils/html_transformer/dom/image_transformers.dart'; import 'package:core/presentation/utils/html_transformer/dom/link_transformers.dart'; import 'package:core/presentation/utils/html_transformer/dom/meta_transformers.dart'; import 'package:core/presentation/utils/html_transformer/dom/script_transformers.dart'; -import 'package:core/presentation/utils/html_transformer/base/dom_transformer.dart'; import 'package:core/presentation/utils/html_transformer/text/convert_tags_text_transformer.dart'; import 'package:core/presentation/utils/html_transformer/text/linebreak_text_transformer.dart'; import 'package:core/presentation/utils/html_transformer/text/links_text_transformer.dart'; -import 'package:core/presentation/utils/html_transformer/base/text_transformer.dart'; /// Contains the configuration for all transformations. class TransformConfiguration {