TF-1427 Abstraction mailbox method action

This commit is contained in:
dab246
2023-02-09 15:06:16 +07:00
committed by Dat Vu
parent 4f8da9cb31
commit e2c0cb52a6
15 changed files with 465 additions and 332 deletions
@@ -44,12 +44,12 @@ class DestinationPickerBindings extends BaseBindings {
@override
void bindingsController() {
Get.lazyPut(() => DestinationPickerController(
Get.find<GetAllMailboxInteractor>(),
Get.find<SearchMailboxInteractor>(),
Get.find<CreateNewMailboxInteractor>(),
Get.find<RefreshAllMailboxInteractor>(),
Get.find<VerifyNameInteractor>(),
Get.find<TreeBuilder>(),
Get.find<GetAllMailboxInteractor>(),
Get.find<SearchMailboxInteractor>(),
Get.find<CreateNewMailboxInteractor>(),
Get.find<RefreshAllMailboxInteractor>(),
Get.find<TreeBuilder>(),
Get.find<VerifyNameInteractor>(),
));
}
@@ -34,6 +34,7 @@ import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_action
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_categories.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_categories_expand_mode.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_node.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_tree_builder.dart';
import 'package:tmail_ui_user/features/mailbox_creator/domain/model/verification/duplicate_name_validator.dart';
import 'package:tmail_ui_user/features/mailbox_creator/domain/model/verification/empty_name_validator.dart';
import 'package:tmail_ui_user/features/mailbox_creator/domain/state/verify_name_view_state.dart';
@@ -59,7 +60,6 @@ class DestinationPickerController extends BaseMailboxController {
final SearchMailboxInteractor _searchMailboxInteractor;
final CreateNewMailboxInteractor _createNewMailboxInteractor;
final RefreshAllMailboxInteractor _refreshAllMailboxInteractor;
final VerifyNameInteractor _verifyNameInteractor;
final mailboxAction = Rxn<MailboxActions>();
final listMailboxSearched = <PresentationMailbox>[].obs;
@@ -88,9 +88,9 @@ class DestinationPickerController extends BaseMailboxController {
this._searchMailboxInteractor,
this._createNewMailboxInteractor,
this._refreshAllMailboxInteractor,
this._verifyNameInteractor,
treeBuilder,
) : super(treeBuilder);
TreeBuilder treeBuilder,
VerifyNameInteractor verifyNameInteractor,
) : super(treeBuilder, verifyNameInteractor);
@override
void onInit() {
@@ -201,7 +201,7 @@ class DestinationPickerController extends BaseMailboxController {
return null;
}
return _verifyNameInteractor.execute(
return verifyNameInteractor.execute(
nameMailbox,
[
EmptyNameValidator(),
@@ -282,8 +282,8 @@ class DestinationPickerView extends GetWidget<DestinationPickerController>
mailboxActions: actions,
mailboxIdAlreadySelected: mailboxIdSelected,
mailboxDisplayed: MailboxDisplayed.destinationPicker)
..addOnOpenMailboxFolderClick((node) => _pickMailboxNode(context, node))
..addOnExpandFolderActionClick((mailboxNode) => controller.toggleMailboxFolder(mailboxNode))
..addOnClickOpenMailboxNodeAction((node) => _pickMailboxNode(context, node))
..addOnClickExpandMailboxNodeAction((mailboxNode) => controller.toggleMailboxFolder(mailboxNode))
).build(),
children: _buildListChildTileWidget(
context,
@@ -300,7 +300,7 @@ class DestinationPickerView extends GetWidget<DestinationPickerController>
mailboxDisplayed: MailboxDisplayed.destinationPicker,
mailboxIdAlreadySelected: mailboxIdSelected,
mailboxActions: actions)
..addOnOpenMailboxFolderClick((node) => _pickMailboxNode(context, node))
..addOnClickOpenMailboxNodeAction((node) => _pickMailboxNode(context, node))
).build();
}})
.toList() ?? <Widget>[];