TF-1923 Fix new email offline mode not working

(cherry picked from commit c1c48e93d50cb0ebbccaf11c3f4a975af640b63a)
This commit is contained in:
dab246
2023-06-20 22:20:23 +07:00
committed by Dat H. Pham
parent b1a0cab02b
commit 6d96a1109e
35 changed files with 333 additions and 261 deletions
+6 -6
View File
@@ -4,7 +4,7 @@ import 'package:core/utils/platform_info.dart';
import 'package:jmap_dart_client/jmap/account_id.dart';
import 'package:jmap_dart_client/jmap/core/session/session.dart';
import 'package:tmail_ui_user/features/caching/clients/account_cache_client.dart';
import 'package:tmail_ui_user/features/caching/clients/detailed_email_hive_cache_client.dart';
import 'package:tmail_ui_user/features/caching/clients/new_email_hive_cache_client.dart';
import 'package:tmail_ui_user/features/caching/clients/opened_email_hive_cache_client.dart';
import 'package:tmail_ui_user/features/caching/clients/session_hive_cache_client.dart';
import 'package:tmail_ui_user/features/caching/config/hive_cache_config.dart';
@@ -29,7 +29,7 @@ class CachingManager {
final FcmCacheClient _fcmCacheClient;
final FCMSubscriptionCacheClient _fcmSubscriptionCacheClient;
final HiveCacheVersionClient _hiveCacheVersionClient;
final DetailedEmailHiveCacheClient _detailedEmailHiveCacheClient;
final NewEmailHiveCacheClient _newEmailHiveCacheClient;
final OpenedEmailHiveCacheClient _openedEmailHiveCacheClient;
final FileUtils _fileUtils;
final SendingEmailCacheManager _sendingEmailCacheManager;
@@ -44,7 +44,7 @@ class CachingManager {
this._fcmCacheClient,
this._fcmSubscriptionCacheClient,
this._hiveCacheVersionClient,
this._detailedEmailHiveCacheClient,
this._newEmailHiveCacheClient,
this._openedEmailHiveCacheClient,
this._fileUtils,
this._sendingEmailCacheManager,
@@ -63,7 +63,7 @@ class CachingManager {
if (PlatformInfo.isMobile)
...[
_sessionHiveCacheClient.clearAllData(),
_detailedEmailHiveCacheClient.clearAllData(),
_newEmailHiveCacheClient.clearAllData(),
_openedEmailHiveCacheClient.clearAllData(),
_clearSendingEmailCache(),
]
@@ -80,7 +80,7 @@ class CachingManager {
_recentSearchCacheClient.clearAllData(),
if (PlatformInfo.isMobile)
...[
_detailedEmailHiveCacheClient.clearAllData(),
_newEmailHiveCacheClient.clearAllData(),
_openedEmailHiveCacheClient.clearAllData(),
_clearSendingEmailCache(),
]
@@ -123,7 +123,7 @@ class CachingManager {
void clearAllFileInStorage() {
if (PlatformInfo.isMobile) {
_fileUtils.removeFolder(CachingConstants.incomingEmailedContentFolderName);
_fileUtils.removeFolder(CachingConstants.newEmailsContentFolderName);
_fileUtils.removeFolder(CachingConstants.openedEmailContentFolderName);
}
}
@@ -3,8 +3,8 @@ import 'package:tmail_ui_user/features/caching/config/hive_cache_client.dart';
import 'package:tmail_ui_user/features/caching/utils/caching_constants.dart';
import 'package:tmail_ui_user/features/offline_mode/model/detailed_email_hive_cache.dart';
class DetailedEmailHiveCacheClient extends HiveCacheClient<DetailedEmailHiveCache> {
class NewEmailHiveCacheClient extends HiveCacheClient<DetailedEmailHiveCache> {
@override
String get tableName => CachingConstants.incomingEmailedCacheBoxName;
String get tableName => CachingConstants.newEmailCacheBoxName;
}
@@ -21,12 +21,12 @@ class CachingConstants {
static const int typeIdSessionHiveObj = 19;
static const String fcmCacheBoxName = 'fcm_cache_box';
static const String incomingEmailedCacheBoxName = 'incoming_emailed_cache_box';
static const String newEmailCacheBoxName = 'new_email_cache_box';
static const String openedEmailCacheBoxName = 'opened_email_cache_box';
static const String sendingEmailCacheBoxName = 'sending_email_cache_box';
static const String sessionCacheBoxName = 'session_cache_box';
static const String incomingEmailedContentFolderName = 'incoming_emailed';
static const String newEmailsContentFolderName = 'new_emails';
static const String openedEmailContentFolderName = 'opened_email';
static const int maxNumberNewEmailsForOffline = 10;