Skip to content

Commit 5cecdd2

Browse files
tddang-linagorahoangdat
authored andcommittedMar 19, 2025
TF-3450 Replace current pdf and html previewer
1 parent 14408c1 commit 5cecdd2

File tree

10 files changed

+198
-509
lines changed

10 files changed

+198
-509
lines changed
 

‎contact/pubspec.lock

+18-18
Original file line numberDiff line numberDiff line change
@@ -820,26 +820,26 @@ packages:
820820
dependency: transitive
821821
description:
822822
name: path_provider
823-
sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa
823+
sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd"
824824
url: "https://pub.dev"
825825
source: hosted
826-
version: "2.1.1"
826+
version: "2.1.5"
827827
path_provider_android:
828828
dependency: transitive
829829
description:
830830
name: path_provider_android
831-
sha256: e595b98692943b4881b219f0a9e3945118d3c16bd7e2813f98ec6e532d905f72
831+
sha256: "4adf4fd5423ec60a29506c76581bc05854c55e3a0b72d35bb28d661c9686edf2"
832832
url: "https://pub.dev"
833833
source: hosted
834-
version: "2.2.1"
834+
version: "2.2.15"
835835
path_provider_foundation:
836836
dependency: transitive
837837
description:
838838
name: path_provider_foundation
839-
sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d"
839+
sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942"
840840
url: "https://pub.dev"
841841
source: hosted
842-
version: "2.3.1"
842+
version: "2.4.1"
843843
path_provider_linux:
844844
dependency: transitive
845845
description:
@@ -900,10 +900,10 @@ packages:
900900
dependency: transitive
901901
description:
902902
name: plugin_platform_interface
903-
sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d
903+
sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02"
904904
url: "https://pub.dev"
905905
source: hosted
906-
version: "2.1.6"
906+
version: "2.1.8"
907907
pointer_interceptor:
908908
dependency: transitive
909909
description:
@@ -1138,26 +1138,26 @@ packages:
11381138
dependency: transitive
11391139
description:
11401140
name: url_launcher
1141-
sha256: "75f2846facd11168d007529d6cd8fcb2b750186bea046af9711f10b907e1587e"
1141+
sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603"
11421142
url: "https://pub.dev"
11431143
source: hosted
1144-
version: "6.1.10"
1144+
version: "6.3.1"
11451145
url_launcher_android:
11461146
dependency: transitive
11471147
description:
11481148
name: url_launcher_android
1149-
sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def"
1149+
sha256: "6fc2f56536ee873eeb867ad176ae15f304ccccc357848b351f6f0d8d4a40d193"
11501150
url: "https://pub.dev"
11511151
source: hosted
1152-
version: "6.2.0"
1152+
version: "6.3.14"
11531153
url_launcher_ios:
11541154
dependency: transitive
11551155
description:
11561156
name: url_launcher_ios
1157-
sha256: "4ac97281cf60e2e8c5cc703b2b28528f9b50c8f7cebc71df6bdf0845f647268a"
1157+
sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626"
11581158
url: "https://pub.dev"
11591159
source: hosted
1160-
version: "6.2.0"
1160+
version: "6.3.2"
11611161
url_launcher_linux:
11621162
dependency: transitive
11631163
description:
@@ -1178,10 +1178,10 @@ packages:
11781178
dependency: transitive
11791179
description:
11801180
name: url_launcher_platform_interface
1181-
sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50"
1181+
sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029"
11821182
url: "https://pub.dev"
11831183
source: hosted
1184-
version: "2.2.0"
1184+
version: "2.3.2"
11851185
url_launcher_web:
11861186
dependency: transitive
11871187
description:
@@ -1303,5 +1303,5 @@ packages:
13031303
source: hosted
13041304
version: "3.1.2"
13051305
sdks:
1306-
dart: ">=3.4.0 <4.0.0"
1307-
flutter: ">=3.20.0-7.0.pre.48"
1306+
dart: ">=3.5.0 <4.0.0"
1307+
flutter: ">=3.24.0"

‎core/pubspec.lock

+16-16
Original file line numberDiff line numberDiff line change
@@ -781,26 +781,26 @@ packages:
781781
dependency: "direct main"
782782
description:
783783
name: path_provider
784-
sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa
784+
sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd"
785785
url: "https://pub.dev"
786786
source: hosted
787-
version: "2.1.1"
787+
version: "2.1.5"
788788
path_provider_android:
789789
dependency: transitive
790790
description:
791791
name: path_provider_android
792-
sha256: e595b98692943b4881b219f0a9e3945118d3c16bd7e2813f98ec6e532d905f72
792+
sha256: "4adf4fd5423ec60a29506c76581bc05854c55e3a0b72d35bb28d661c9686edf2"
793793
url: "https://pub.dev"
794794
source: hosted
795-
version: "2.2.1"
795+
version: "2.2.15"
796796
path_provider_foundation:
797797
dependency: transitive
798798
description:
799799
name: path_provider_foundation
800-
sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d"
800+
sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942"
801801
url: "https://pub.dev"
802802
source: hosted
803-
version: "2.3.1"
803+
version: "2.4.1"
804804
path_provider_linux:
805805
dependency: transitive
806806
description:
@@ -1075,26 +1075,26 @@ packages:
10751075
dependency: "direct main"
10761076
description:
10771077
name: url_launcher
1078-
sha256: "75f2846facd11168d007529d6cd8fcb2b750186bea046af9711f10b907e1587e"
1078+
sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603"
10791079
url: "https://pub.dev"
10801080
source: hosted
1081-
version: "6.1.10"
1081+
version: "6.3.1"
10821082
url_launcher_android:
10831083
dependency: transitive
10841084
description:
10851085
name: url_launcher_android
1086-
sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def"
1086+
sha256: "6fc2f56536ee873eeb867ad176ae15f304ccccc357848b351f6f0d8d4a40d193"
10871087
url: "https://pub.dev"
10881088
source: hosted
1089-
version: "6.2.0"
1089+
version: "6.3.14"
10901090
url_launcher_ios:
10911091
dependency: transitive
10921092
description:
10931093
name: url_launcher_ios
1094-
sha256: "4ac97281cf60e2e8c5cc703b2b28528f9b50c8f7cebc71df6bdf0845f647268a"
1094+
sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626"
10951095
url: "https://pub.dev"
10961096
source: hosted
1097-
version: "6.2.0"
1097+
version: "6.3.2"
10981098
url_launcher_linux:
10991099
dependency: transitive
11001100
description:
@@ -1115,10 +1115,10 @@ packages:
11151115
dependency: transitive
11161116
description:
11171117
name: url_launcher_platform_interface
1118-
sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50"
1118+
sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029"
11191119
url: "https://pub.dev"
11201120
source: hosted
1121-
version: "2.2.0"
1121+
version: "2.3.2"
11221122
url_launcher_web:
11231123
dependency: transitive
11241124
description:
@@ -1240,5 +1240,5 @@ packages:
12401240
source: hosted
12411241
version: "3.1.2"
12421242
sdks:
1243-
dart: ">=3.4.0 <4.0.0"
1244-
flutter: ">=3.20.0-7.0.pre.48"
1243+
dart: ">=3.5.0 <4.0.0"
1244+
flutter: ">=3.24.0"

‎core/pubspec.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ dependencies:
5757

5858
flutter_inappwebview: 6.0.0
5959

60-
url_launcher: 6.1.10
60+
url_launcher: 6.3.1
6161

6262
universal_html: 2.2.4
6363

@@ -73,7 +73,7 @@ dependencies:
7373

7474
http_parser: 4.0.2
7575

76-
path_provider: 2.1.1
76+
path_provider: 2.1.5
7777

7878
collection: 1.18.0
7979

‎lib/features/email/presentation/widgets/html_attachment_previewer.dart

+22-10
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import 'dart:convert';
2+
13
import 'package:core/presentation/utils/responsive_utils.dart';
24
import 'package:core/presentation/views/html_viewer/html_content_viewer_on_web_widget.dart';
35
import 'package:core/presentation/views/html_viewer/html_content_viewer_widget.dart';
@@ -9,6 +11,10 @@ import 'package:tmail_ui_user/features/base/isolate/background_isolate_binary_me
911
import 'package:tmail_ui_user/features/email/presentation/widgets/pdf_viewer/top_bar_attachment_viewer.dart';
1012
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
1113
import 'package:tmail_ui_user/main/utils/app_utils.dart';
14+
import 'package:twake_previewer_flutter/core/previewer_options/options/previewer_state.dart';
15+
import 'package:twake_previewer_flutter/core/previewer_options/previewer_options.dart';
16+
import 'package:twake_previewer_flutter/twake_html_previewer/options/html_view_options.dart';
17+
import 'package:twake_previewer_flutter/twake_html_previewer/twake_html_previewer.dart';
1218

1319
class HtmlAttachmentPreviewer extends StatefulWidget {
1420
const HtmlAttachmentPreviewer({
@@ -115,16 +121,22 @@ class _HtmlAttachmentPreviewerState extends State<HtmlAttachmentPreviewer> {
115121
required double height,
116122
}) {
117123
return PlatformInfo.isWeb
118-
? HtmlContentViewerOnWeb(
119-
contentHtml: widget.htmlContent,
120-
widthContent: width,
121-
heightContent: height,
122-
direction: AppUtils.getCurrentDirection(context),
123-
mailtoDelegate: (uri) {
124-
popBack();
125-
widget.mailToClicked(uri);
126-
},
127-
keepWidthWhileLoading: true,
124+
? TwakeHtmlPreviewer(
125+
bytes: utf8.encode(widget.htmlContent),
126+
previewerOptions: PreviewerOptions(
127+
previewerState: PreviewerState.success,
128+
width: width,
129+
height: height,
130+
),
131+
htmlViewOptions: HtmlViewOptions(
132+
contentClassName: 'tmail-content',
133+
direction: AppUtils.getCurrentDirection(context),
134+
mailtoDelegate: (uri) {
135+
popBack();
136+
widget.mailToClicked(uri);
137+
},
138+
keepWidthWhileLoading: true,
139+
),
128140
)
129141
: HtmlContentViewer(
130142
contentHtml: widget.htmlContent,

0 commit comments

Comments
 (0)
Please sign in to comment.