TF-3450 Refactor image and text preview

This commit is contained in:
DatDang
2025-02-26 11:19:25 +07:00
committed by Dat H. Pham
parent ef1d37f7ac
commit aabfe6a3a5
14 changed files with 94 additions and 285 deletions
@@ -12,11 +12,12 @@ class StartDownloadAttachmentForWeb extends UIState {
final DownloadTaskId taskId;
final Attachment attachment;
final CancelToken? cancelToken;
final bool previewerSupported;
StartDownloadAttachmentForWeb(this.taskId, this.attachment, [this.cancelToken]);
StartDownloadAttachmentForWeb(this.taskId, this.attachment, [this.cancelToken, this.previewerSupported = false]);
@override
List<Object?> get props => [taskId, attachment, cancelToken];
List<Object?> get props => [taskId, attachment, cancelToken, previewerSupported];
}
class DownloadingAttachmentForWeb extends UIState {
@@ -50,11 +51,12 @@ class DownloadAttachmentForWebSuccess extends UIState {
final DownloadTaskId taskId;
final Attachment attachment;
final Uint8List bytes;
final bool previewerSupported;
DownloadAttachmentForWebSuccess(this.taskId, this.attachment, this.bytes);
DownloadAttachmentForWebSuccess(this.taskId, this.attachment, this.bytes, this.previewerSupported);
@override
List<Object> get props => [taskId, attachment, bytes];
List<Object> get props => [taskId, attachment, bytes, previewerSupported];
}
class DownloadAttachmentForWebFailure extends FeatureFailure {
@@ -1,31 +0,0 @@
import 'dart:typed_data';
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:model/email/attachment.dart';
class GettingImageDataFromAttachment extends LoadingState {
GettingImageDataFromAttachment({required this.attachment});
final Attachment attachment;
@override
List<Object> get props => [attachment];
}
class GetImageDataFromAttachmentSuccess extends UIState {
GetImageDataFromAttachmentSuccess({
required this.attachment,
required this.data,
});
final Attachment attachment;
final Uint8List data;
@override
List<Object> get props => [attachment, data];
}
class GetImageDataFromAttachmentFailure extends FeatureFailure {
GetImageDataFromAttachmentFailure({super.exception});
}
@@ -1,31 +0,0 @@
import 'dart:typed_data';
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:model/email/attachment.dart';
class GettingTextDataFromAttachment extends LoadingState {
GettingTextDataFromAttachment({required this.attachment});
final Attachment attachment;
@override
List<Object> get props => [attachment];
}
class GetTextDataFromAttachmentSuccess extends UIState {
GetTextDataFromAttachmentSuccess({
required this.attachment,
required this.data,
});
final Attachment attachment;
final Uint8List data;
@override
List<Object> get props => [attachment, data];
}
class GetTextDataFromAttachmentFailure extends FeatureFailure {
GetTextDataFromAttachmentFailure({super.exception});
}