TF-586 Fix only show identities created by the user

This commit is contained in:
dab246
2022-05-26 15:19:30 +07:00
committed by Dat H. Pham
parent 81eca6c59a
commit ba64136357
4 changed files with 8 additions and 39 deletions
@@ -190,8 +190,10 @@ class ComposerController extends BaseController {
_getEmailContentSuccess(success);
} if (success is GetAllIdentitiesSuccess) {
if (success.identities?.isNotEmpty == true) {
listIdentities.value = success.identities ?? [];
setIdentityDefault();
listIdentities.value = success.identities!
.where((identity) => identity.mayDelete == true)
.toList();
selectIdentity(listIdentities.first);
}
}
});
@@ -927,12 +929,6 @@ class ComposerController extends BaseController {
}
void setIdentityDefault() {
try {
final identityDefault = listIdentities.firstWhere((identity) => identity.mayDelete == false);
selectIdentity(identityDefault);
} catch (exception) {
selectIdentity(listIdentities.first);
}
}
void selectIdentity(Identity? newIdentity) {
@@ -7,7 +7,6 @@ import 'package:jmap_dart_client/jmap/account_id.dart';
import 'package:jmap_dart_client/jmap/core/id.dart';
import 'package:jmap_dart_client/jmap/identities/identity.dart';
import 'package:model/extensions/identity_extension.dart';
import 'package:model/extensions/list_identities_extension.dart';
import 'package:tmail_ui_user/features/base/base_controller.dart';
import 'package:tmail_ui_user/features/identity_creator/presentation/model/identity_creator_arguments.dart';
import 'package:tmail_ui_user/features/manage_account/domain/model/create_new_identity_request.dart';
@@ -80,10 +79,11 @@ class IdentitiesController extends BaseController {
if (success is GetAllIdentitiesSuccess) {
if (success.identities?.isNotEmpty == true) {
_addNewIdentityAsAll();
final newListIdentities = success.identities!;
newListIdentities.sortByMayDelete();
final newListIdentities = success.identities!
.where((identity) => identity.mayDelete == true)
.toList();
listAllIdentities.addAll(newListIdentities);
setIdentityDefault();
selectIdentity(listAllIdentities.first);
}
} else if (success is CreateNewIdentitySuccess) {
_createNewIdentitySuccess(success);
@@ -135,15 +135,6 @@ class IdentitiesController extends BaseController {
}
}
void setIdentityDefault() {
try {
final identityDefault = listAllIdentities.firstWhere((identity) => identity.mayDelete == false);
selectIdentity(identityDefault);
} catch (exception) {
selectIdentity(listAllIdentities.first);
}
}
void selectIdentity(Identity? newIdentity) {
identitySelected.value = newIdentity;
if (newIdentity != null) {
@@ -1,17 +0,0 @@
import 'package:jmap_dart_client/jmap/identities/identity.dart';
extension ListIdentitiesExtension on List<Identity> {
void sortByMayDelete() {
sort((identity1, identity2) {
if (identity1.mayDelete == false && identity2.mayDelete == true) {
return -1;
} if (identity1.mayDelete == true && identity2.mayDelete == false) {
return 1;
} else {
return 0;
}
});
}
}
-1
View File
@@ -53,7 +53,6 @@ export 'extensions/media_type_extension.dart';
export 'extensions/list_attachment_extension.dart';
export 'extensions/list_presentation_email_extension.dart';
export 'extensions/list_email_content_extension.dart';
export 'extensions/list_identities_extension.dart';
export 'extensions/identity_extension.dart';
// Download