Fix do not show session expires dialog when enter autocomplete

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-04-11 15:14:28 +07:00
committed by Dat H. Pham
parent 593806936f
commit c1c3e1b926
10 changed files with 105 additions and 88 deletions
@@ -0,0 +1,23 @@
import 'package:contact/contact/model/tmail_contact.dart';
import 'package:jmap_dart_client/jmap/mail/email/email_address.dart';
import 'package:model/autocomplete/auto_complete_pattern.dart';
import 'package:tmail_ui_user/features/contact/data/datasource/auto_complete_datasource.dart';
import 'package:tmail_ui_user/features/contact/data/network/contact_api.dart';
import 'package:tmail_ui_user/main/exceptions/exception_thrower.dart';
class TMailContactDataSourceImpl extends AutoCompleteDataSource {
final ContactAPI _contactAPI;
final ExceptionThrower _exceptionThrower;
TMailContactDataSourceImpl(this._contactAPI, this._exceptionThrower);
@override
Future<List<EmailAddress>> getAutoComplete(AutoCompletePattern autoCompletePattern) {
return Future.sync(() async {
final listContacts = await _contactAPI.getAutoComplete(autoCompletePattern);
return listContacts.map((contact) => contact.toEmailAddress()).toList();
}).catchError(_exceptionThrower.throwException);
}
}