TF-3416 Handle open EML attachment in EML previewer

This commit is contained in:
dab246
2025-01-13 15:53:58 +07:00
committed by Dat H. Pham
parent 0ce99c745c
commit aa7fded1ff
28 changed files with 473 additions and 99 deletions
@@ -1,17 +1,18 @@
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:tmail_ui_user/features/email/presentation/model/eml_previewer.dart';
class GettingPreviewEmailEMLContentShared extends LoadingState {}
class GetPreviewEmailEMLContentSharedSuccess extends UIState {
final String keyStored;
final String previewEMLContent;
final EMLPreviewer emlPreviewer;
GetPreviewEmailEMLContentSharedSuccess(this.keyStored, this.previewEMLContent);
GetPreviewEmailEMLContentSharedSuccess(this.keyStored, this.emlPreviewer);
@override
List<Object?> get props => [keyStored, previewEMLContent];
List<Object?> get props => [keyStored, emlPreviewer];
}
class GetPreviewEmailEMLContentSharedFailure extends FeatureFailure {
@@ -1,18 +1,26 @@
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:tmail_ui_user/features/email/presentation/model/eml_previewer.dart';
class GettingPreviewEMLContentInMemory extends LoadingState {}
class GetPreviewEMLContentInMemorySuccess extends UIState {
final String previewEMLContent;
final EMLPreviewer emlPreviewer;
GetPreviewEMLContentInMemorySuccess(this.previewEMLContent);
GetPreviewEMLContentInMemorySuccess(this.emlPreviewer);
@override
List<Object?> get props => [previewEMLContent];
List<Object?> get props => [emlPreviewer];
}
class GetPreviewEMLContentInMemoryFailure extends FeatureFailure {
final String? keyStored;
GetPreviewEMLContentInMemoryFailure(dynamic exception) : super(exception: exception);
GetPreviewEMLContentInMemoryFailure({
this.keyStored,
dynamic exception,
}) : super(exception: exception);
@override
List<Object?> get props => [keyStored, exception];
}
@@ -1,16 +1,18 @@
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:tmail_ui_user/features/email/presentation/model/eml_previewer.dart';
class PreviewingEmailFromEmlFile extends LoadingState {}
class PreviewEmailFromEmlFileSuccess extends UIState {
final String storeKey;
final EMLPreviewer emlPreviewer;
PreviewEmailFromEmlFileSuccess(this.storeKey);
PreviewEmailFromEmlFileSuccess(this.storeKey, this.emlPreviewer);
@override
List<Object?> get props => [storeKey];
List<Object?> get props => [storeKey, emlPreviewer];
}
class PreviewEmailFromEmlFileFailure extends FeatureFailure {