TF-1684 Add abstract TransformHtmlSignature method

(cherry picked from commit dfaa5187d1b6a6c1065c65699b6e3a287d1d0843)
This commit is contained in:
dab246
2023-04-03 16:30:12 +07:00
committed by Dat Vu
parent d605efd602
commit c716557200
6 changed files with 86 additions and 0 deletions
@@ -0,0 +1,24 @@
import 'dart:core';
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:dartz/dartz.dart';
import 'package:tmail_ui_user/features/manage_account/domain/repository/identity_repository.dart';
import 'package:tmail_ui_user/features/manage_account/domain/state/edit_identity_state.dart';
import 'package:tmail_ui_user/features/manage_account/domain/state/transform_html_signature_state.dart';
class TransformHtmlSignatureInteractor {
final IdentityRepository _identityRepository;
TransformHtmlSignatureInteractor(this._identityRepository);
Stream<Either<Failure, Success>> execute(String signature) async* {
try {
yield Right<Failure, Success>(TransformHtmlSignatureLoading());
final signatureUnescape = await _identityRepository.transformHtmlSignature(signature);
yield Right<Failure, Success>(TransformHtmlSignatureSuccess(signatureUnescape));
} catch (exception) {
yield Left<Failure, Success>(EditIdentityFailure(exception));
}
}
}