From 27bf35a513d2efe14df6439d579ac21d2387ace3 Mon Sep 17 00:00:00 2001 From: dab246 Date: Fri, 26 Jan 2024 10:28:05 +0700 Subject: [PATCH] TF-2510 Show PDF icon in composer` Signed-off-by: dab246 --- .../extensions/attachment_extension.dart | 9 +++++--- .../presentation/model/upload_file_state.dart | 22 ++----------------- 2 files changed, 8 insertions(+), 23 deletions(-) diff --git a/lib/features/email/presentation/extensions/attachment_extension.dart b/lib/features/email/presentation/extensions/attachment_extension.dart index 7982b3c1d..5da78344d 100644 --- a/lib/features/email/presentation/extensions/attachment_extension.dart +++ b/lib/features/email/presentation/extensions/attachment_extension.dart @@ -1,11 +1,14 @@ -import 'package:core/core.dart'; +import 'package:core/domain/extensions/media_type_extension.dart'; +import 'package:core/presentation/resources/image_paths.dart'; +import 'package:core/utils/app_logger.dart'; +import 'package:http_parser/http_parser.dart'; import 'package:model/email/attachment.dart'; extension AttachmentExtension on Attachment { - String getIcon(ImagePaths imagePaths) { - final mediaType = type; + String getIcon(ImagePaths imagePaths, {MediaType? fileMediaType}) { + final mediaType = type ?? fileMediaType; log('AttachmentExtension::getIcon(): mediaType: $mediaType'); if (isDisplayedPDFIcon) { return imagePaths.icFilePdf; diff --git a/lib/features/upload/presentation/model/upload_file_state.dart b/lib/features/upload/presentation/model/upload_file_state.dart index 8b4f67c3a..20876fbe4 100644 --- a/lib/features/upload/presentation/model/upload_file_state.dart +++ b/lib/features/upload/presentation/model/upload_file_state.dart @@ -1,12 +1,11 @@ -import 'package:core/domain/extensions/media_type_extension.dart'; import 'package:core/presentation/resources/image_paths.dart'; -import 'package:core/utils/app_logger.dart'; import 'package:dio/dio.dart'; import 'package:equatable/equatable.dart'; import 'package:http_parser/http_parser.dart'; import 'package:model/email/attachment.dart'; import 'package:model/upload/file_info.dart'; +import 'package:tmail_ui_user/features/email/presentation/extensions/attachment_extension.dart'; import 'package:tmail_ui_user/features/upload/domain/model/upload_task_id.dart'; import 'package:tmail_ui_user/features/upload/presentation/model/upload_file_status.dart'; @@ -77,24 +76,7 @@ class UploadFileState with EquatableMixin { if (mediaType == null && file != null) { mediaType = MediaType.parse(file!.mimeType); } - log('AttachmentExtension::getIcon(): mediaType: $mediaType'); - if (mediaType == null) { - return imagePaths.icFileEPup; - } - if (mediaType.isDocFile()) { - return imagePaths.icFileDocx; - } else if (mediaType.isExcelFile()) { - return imagePaths.icFileXlsx; - } else if (mediaType.isPowerPointFile()) { - return imagePaths.icFilePptx; - } else if (mediaType.isPdfFile()) { - return imagePaths.icFilePdf; - } else if (mediaType.isZipFile()) { - return imagePaths.icFileZip; - } else if (mediaType.isImageFile()) { - return imagePaths.icFilePng; - } - return imagePaths.icFileEPup; + return attachment?.getIcon(imagePaths, fileMediaType: mediaType) ?? imagePaths.icFileEPup; } @override