TF-586 Fix only show identities created by the user
This commit is contained in:
@@ -190,8 +190,10 @@ class ComposerController extends BaseController {
|
|||||||
_getEmailContentSuccess(success);
|
_getEmailContentSuccess(success);
|
||||||
} if (success is GetAllIdentitiesSuccess) {
|
} if (success is GetAllIdentitiesSuccess) {
|
||||||
if (success.identities?.isNotEmpty == true) {
|
if (success.identities?.isNotEmpty == true) {
|
||||||
listIdentities.value = success.identities ?? [];
|
listIdentities.value = success.identities!
|
||||||
setIdentityDefault();
|
.where((identity) => identity.mayDelete == true)
|
||||||
|
.toList();
|
||||||
|
selectIdentity(listIdentities.first);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -927,12 +929,6 @@ class ComposerController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void setIdentityDefault() {
|
void setIdentityDefault() {
|
||||||
try {
|
|
||||||
final identityDefault = listIdentities.firstWhere((identity) => identity.mayDelete == false);
|
|
||||||
selectIdentity(identityDefault);
|
|
||||||
} catch (exception) {
|
|
||||||
selectIdentity(listIdentities.first);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void selectIdentity(Identity? newIdentity) {
|
void selectIdentity(Identity? newIdentity) {
|
||||||
|
|||||||
+4
-13
@@ -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/core/id.dart';
|
||||||
import 'package:jmap_dart_client/jmap/identities/identity.dart';
|
import 'package:jmap_dart_client/jmap/identities/identity.dart';
|
||||||
import 'package:model/extensions/identity_extension.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/base/base_controller.dart';
|
||||||
import 'package:tmail_ui_user/features/identity_creator/presentation/model/identity_creator_arguments.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';
|
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 is GetAllIdentitiesSuccess) {
|
||||||
if (success.identities?.isNotEmpty == true) {
|
if (success.identities?.isNotEmpty == true) {
|
||||||
_addNewIdentityAsAll();
|
_addNewIdentityAsAll();
|
||||||
final newListIdentities = success.identities!;
|
final newListIdentities = success.identities!
|
||||||
newListIdentities.sortByMayDelete();
|
.where((identity) => identity.mayDelete == true)
|
||||||
|
.toList();
|
||||||
listAllIdentities.addAll(newListIdentities);
|
listAllIdentities.addAll(newListIdentities);
|
||||||
setIdentityDefault();
|
selectIdentity(listAllIdentities.first);
|
||||||
}
|
}
|
||||||
} else if (success is CreateNewIdentitySuccess) {
|
} else if (success is CreateNewIdentitySuccess) {
|
||||||
_createNewIdentitySuccess(success);
|
_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) {
|
void selectIdentity(Identity? newIdentity) {
|
||||||
identitySelected.value = newIdentity;
|
identitySelected.value = newIdentity;
|
||||||
if (newIdentity != null) {
|
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;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -53,7 +53,6 @@ export 'extensions/media_type_extension.dart';
|
|||||||
export 'extensions/list_attachment_extension.dart';
|
export 'extensions/list_attachment_extension.dart';
|
||||||
export 'extensions/list_presentation_email_extension.dart';
|
export 'extensions/list_presentation_email_extension.dart';
|
||||||
export 'extensions/list_email_content_extension.dart';
|
export 'extensions/list_email_content_extension.dart';
|
||||||
export 'extensions/list_identities_extension.dart';
|
|
||||||
export 'extensions/identity_extension.dart';
|
export 'extensions/identity_extension.dart';
|
||||||
|
|
||||||
// Download
|
// Download
|
||||||
|
|||||||
Reference in New Issue
Block a user