From 3a286746600aa231fa2c3f9362a3a0cfa77bca1e Mon Sep 17 00:00:00 2001 From: dab246 Date: Mon, 14 Apr 2025 03:09:52 +0700 Subject: [PATCH] Fix do not re-login when add inline image in identity creator view Signed-off-by: dab246 --- .../presentation/public_asset_controller.dart | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/lib/features/public_asset/presentation/public_asset_controller.dart b/lib/features/public_asset/presentation/public_asset_controller.dart index 4b50d91b0..bff3c2f59 100644 --- a/lib/features/public_asset/presentation/public_asset_controller.dart +++ b/lib/features/public_asset/presentation/public_asset_controller.dart @@ -61,7 +61,15 @@ class PublicAssetController extends BaseController { void _handleUploadState(Either uploadState) { log('PublicAssetController::handleUploadState::${uploadState.runtimeType}'); uploadState.fold( - (failure) => consumeState(Stream.value(Left(CreatePublicAssetFailureState()))), + (failure) { + if (failure is ErrorAttachmentUploadState) { + consumeState(Stream.value(Left(CreatePublicAssetFailureState( + exception: failure.exception, + )))); + } else { + consumeState(Stream.value(Left(CreatePublicAssetFailureState()))); + } + }, (success) { log('PublicAssetController::handleUploadState::success::$success'); if (success is SuccessAttachmentUploadState) { @@ -112,32 +120,34 @@ class PublicAssetController extends BaseController { @override void handleSuccessViewState(Success success) { - super.handleSuccessViewState(success); if (success is UploadAttachmentSuccess) { _handleUploadAttachmentSuccess(success); } else if (success is CreatePublicAssetSuccessState) { _handleCreatePublicAssetSuccessState(success); + } else { + super.handleSuccessViewState(success); } } @override void handleFailureViewState(Failure failure) { - super.handleFailureViewState(failure); if (failure is CreatePublicAssetFailureState) { _handleCreatePublicAssetFailureState(); } else if (failure is PublicAssetOverQuotaFailureState) { _handlePublicAssetOverQuotaFailureState(failure); } else if (failure is UploadAttachmentFailure) { _handleUploadAttachmentFailure(failure); + } else { + super.handleFailureViewState(failure); } } @override void handleUrgentExceptionOnWeb({Failure? failure, Exception? exception}) { - super.handleUrgentExceptionOnWeb(failure: failure, exception: exception); if (failure is UploadAttachmentFailure) { isUploading.value = false; } + super.handleUrgentExceptionOnWeb(failure: failure, exception: exception); } void _handlePublicAssetOverQuotaFailureState(PublicAssetOverQuotaFailureState failure) {