TF-3416 Handle preview EML attachment on mobile

This commit is contained in:
dab246
2025-01-14 01:27:48 +07:00
committed by Dat H. Pham
parent aa7fded1ff
commit 33d0e91178
17 changed files with 120 additions and 71 deletions
@@ -452,7 +452,7 @@ class EmailDataSourceImpl extends EmailDataSource {
final iconBase64Data = await _fileUtils.convertImageAssetToBase64(
attachment.getIcon(_imagePaths));
final link = attachment.isEMLFile
final link = attachment.isEMLFile && PlatformInfo.isWeb
? RouteUtils.createUrlWebLocationBar(
AppRoutes.emailEMLPreviewer,
previewId: attachment.blobId?.value,
@@ -526,7 +526,7 @@ class EmailDataSourceImpl extends EmailDataSource {
}
@override
Future<void> sharePreviewEmailEMLContent(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> sharePreviewEmailEMLContent(EMLPreviewer emlPreviewer) {
throw UnimplementedError();
}
@@ -536,7 +536,7 @@ class EmailDataSourceImpl extends EmailDataSource {
}
@override
Future<void> storePreviewEMLContentToSessionStorage(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> storePreviewEMLContentToSessionStorage(EMLPreviewer emlPreviewer) {
throw UnimplementedError();
}
@@ -540,7 +540,7 @@ class EmailHiveCacheDataSourceImpl extends EmailDataSource {
}
@override
Future<void> sharePreviewEmailEMLContent(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> sharePreviewEmailEMLContent(EMLPreviewer emlPreviewer) {
throw UnimplementedError();
}
@@ -555,7 +555,7 @@ class EmailHiveCacheDataSourceImpl extends EmailDataSource {
}
@override
Future<void> storePreviewEMLContentToSessionStorage(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> storePreviewEMLContentToSessionStorage(EMLPreviewer emlPreviewer) {
throw UnimplementedError();
}
@@ -166,9 +166,12 @@ class EmailLocalStorageDataSourceImpl extends EmailDataSource {
}
@override
Future<void> sharePreviewEmailEMLContent(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> sharePreviewEmailEMLContent(EMLPreviewer emlPreviewer) {
return Future.sync(() async {
return _localStorageManager.save(keyStored, jsonEncode(emlPreviewer.toJson()));
return _localStorageManager.save(
emlPreviewer.id,
jsonEncode(emlPreviewer.toJson()),
);
}).catchError(_exceptionThrower.throwException);
}
@@ -226,7 +229,7 @@ class EmailLocalStorageDataSourceImpl extends EmailDataSource {
}
@override
Future<void> storePreviewEMLContentToSessionStorage(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> storePreviewEMLContentToSessionStorage(EMLPreviewer emlPreviewer) {
throw UnimplementedError();
}
@@ -166,7 +166,7 @@ class EmailSessionStorageDatasourceImpl extends EmailDataSource {
}
@override
Future<void> sharePreviewEmailEMLContent(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> sharePreviewEmailEMLContent(EMLPreviewer emlPreviewer) {
throw UnimplementedError();
}
@@ -221,9 +221,12 @@ class EmailSessionStorageDatasourceImpl extends EmailDataSource {
}
@override
Future<void> storePreviewEMLContentToSessionStorage(String keyStored, EMLPreviewer emlPreviewer) {
Future<void> storePreviewEMLContentToSessionStorage(EMLPreviewer emlPreviewer) {
return Future.sync(() async {
return _sessionStorageManager.save(keyStored, jsonEncode(emlPreviewer.toJson()));
return _sessionStorageManager.save(
emlPreviewer.id,
jsonEncode(emlPreviewer.toJson()),
);
}).catchError(_exceptionThrower.throwException);
}