refactor name folder
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/model/composer_cache.dart';
|
||||
|
||||
abstract class ComposerCacheDataSource {
|
||||
void saveComposerCacheOnWeb(Email email);
|
||||
|
||||
ComposerCache? getComposerCacheOnWeb();
|
||||
|
||||
void removeComposerCacheOnWeb();
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/model/email_cache.dart';
|
||||
|
||||
abstract class EmailCacheDataSource {
|
||||
void saveEmailCacheOnWeb(Email email);
|
||||
|
||||
EmailCache? getEmailCacheOnWeb();
|
||||
|
||||
void removeEmailCacheOnWeb();
|
||||
}
|
||||
+7
-7
@@ -1,20 +1,20 @@
|
||||
import 'dart:convert';
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:model/model.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/model/email_cache.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/datasource/email_cache_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/model/composer_cache.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/datasource/composer_cache_datasource.dart';
|
||||
import 'package:universal_html/html.dart' as html;
|
||||
|
||||
class EmailCacheDataSourceImpl extends EmailCacheDataSource {
|
||||
class ComposerCacheDataSourceImpl extends ComposerCacheDataSource {
|
||||
|
||||
@override
|
||||
EmailCache? getEmailCacheOnWeb() {
|
||||
ComposerCache? getComposerCacheOnWeb() {
|
||||
final result = html.window.localStorage.entries
|
||||
.where((e) => e.key == EmailActionType.edit.name)
|
||||
.toList();
|
||||
if (result.isNotEmpty) {
|
||||
final jsonHandle = json.decode(result.first.value) as Map<String, dynamic>;
|
||||
final emailCache = EmailCache.fromJson(jsonHandle);
|
||||
final emailCache = ComposerCache.fromJson(jsonHandle);
|
||||
return emailCache;
|
||||
} else {
|
||||
return null;
|
||||
@@ -22,12 +22,12 @@ class EmailCacheDataSourceImpl extends EmailCacheDataSource {
|
||||
}
|
||||
|
||||
@override
|
||||
void removeEmailCacheOnWeb() {
|
||||
void removeComposerCacheOnWeb() {
|
||||
html.window.localStorage.removeWhere((key, value) => key == EmailActionType.edit.name);
|
||||
}
|
||||
|
||||
@override
|
||||
void saveEmailCacheOnWeb(Email email) {
|
||||
void saveComposerCacheOnWeb(Email email) {
|
||||
Map<String,String> entries = { EmailActionType.edit.name: json.encode(email.toJson()) };
|
||||
html.window.localStorage.addAll(entries);
|
||||
}
|
||||
+4
-4
@@ -10,7 +10,7 @@ import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||
import 'package:model/email/email_content.dart';
|
||||
import 'package:model/extensions/media_type_extension.dart';
|
||||
|
||||
class EmailCache with EquatableMixin {
|
||||
class ComposerCache with EquatableMixin {
|
||||
|
||||
final EmailId id;
|
||||
final Map<MailboxId, bool>? mailboxIds;
|
||||
@@ -24,7 +24,7 @@ class EmailCache with EquatableMixin {
|
||||
final Set<EmailBodyPart>? htmlBody;
|
||||
final Map<PartId, EmailBodyValue>? bodyValues;
|
||||
|
||||
EmailCache(
|
||||
ComposerCache(
|
||||
this.id,
|
||||
{
|
||||
this.mailboxIds,
|
||||
@@ -39,8 +39,8 @@ class EmailCache with EquatableMixin {
|
||||
this.bodyValues,
|
||||
});
|
||||
|
||||
factory EmailCache.fromJson(Map<String, dynamic> json) {
|
||||
return EmailCache(
|
||||
factory ComposerCache.fromJson(Map<String, dynamic> json) {
|
||||
return ComposerCache(
|
||||
EmailId(Id(json['id'])),
|
||||
mailboxIds: (json['mailboxIds'] as Map<String, dynamic>?)?.map((key, value) => EmailMailboxIdsConverter().parseEntry(key, value)),
|
||||
subject: json['subject'] as String?,
|
||||
@@ -0,0 +1,26 @@
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/datasource/composer_cache_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/model/composer_cache.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/repository/composer_cache_repository.dart';
|
||||
|
||||
class ComposerCacheRepositoryImpl extends ComposerCacheRepository {
|
||||
|
||||
final ComposerCacheDataSource composerCacheDataSource;
|
||||
|
||||
ComposerCacheRepositoryImpl(this.composerCacheDataSource);
|
||||
|
||||
@override
|
||||
ComposerCache? getComposerCacheOnWeb() {
|
||||
return composerCacheDataSource.getComposerCacheOnWeb();
|
||||
}
|
||||
|
||||
@override
|
||||
void removeComposerCacheOnWeb() {
|
||||
return composerCacheDataSource.removeComposerCacheOnWeb();
|
||||
}
|
||||
|
||||
@override
|
||||
void saveComposerCacheOnWeb(Email email) {
|
||||
return composerCacheDataSource.saveComposerCacheOnWeb(email);
|
||||
}
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/model/email_cache.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/data/datasource/email_cache_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/repository/email_cache_repository.dart';
|
||||
|
||||
class EmailCacheRepositoryImpl extends EmailCacheRepository {
|
||||
|
||||
final EmailCacheDataSource emailCacheDataSource;
|
||||
|
||||
EmailCacheRepositoryImpl(this.emailCacheDataSource);
|
||||
|
||||
@override
|
||||
EmailCache? getEmailCacheOnWeb() {
|
||||
return emailCacheDataSource.getEmailCacheOnWeb();
|
||||
}
|
||||
|
||||
@override
|
||||
void removeEmailCacheOnWeb() {
|
||||
return emailCacheDataSource.removeEmailCacheOnWeb();
|
||||
}
|
||||
|
||||
@override
|
||||
void saveEmailCacheOnWeb(Email email) {
|
||||
return emailCacheDataSource.saveEmailCacheOnWeb(email);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user