TF-971 Add method injectAutoCompleteBindings in baseController
This commit is contained in:
@@ -1,9 +1,15 @@
|
|||||||
import 'package:connectivity_plus/connectivity_plus.dart';
|
import 'package:connectivity_plus/connectivity_plus.dart';
|
||||||
|
import 'package:contact/contact/model/capability_contact.dart';
|
||||||
import 'package:core/core.dart';
|
import 'package:core/core.dart';
|
||||||
import 'package:dartz/dartz.dart';
|
import 'package:dartz/dartz.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/core/session/session.dart';
|
||||||
import 'package:tmail_ui_user/features/base/mixin/message_dialog_action_mixin.dart';
|
import 'package:tmail_ui_user/features/base/mixin/message_dialog_action_mixin.dart';
|
||||||
import 'package:tmail_ui_user/features/base/mixin/popup_context_menu_action_mixin.dart';
|
import 'package:tmail_ui_user/features/base/mixin/popup_context_menu_action_mixin.dart';
|
||||||
|
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/bindings/contact_autocomplete_bindings.dart';
|
||||||
|
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/bindings/tmail_autocomplete_bindings.dart';
|
||||||
|
import 'package:tmail_ui_user/main/error/capability_validator.dart';
|
||||||
|
|
||||||
abstract class BaseController extends GetxController with MessageDialogActionMixin, PopupContextMenuActionMixin {
|
abstract class BaseController extends GetxController with MessageDialogActionMixin, PopupContextMenuActionMixin {
|
||||||
final viewState = Rx<Either<Failure, Success>>(Right(UIState.idle));
|
final viewState = Rx<Either<Failure, Success>>(Right(UIState.idle));
|
||||||
@@ -66,4 +72,17 @@ abstract class BaseController extends GetxController with MessageDialogActionMix
|
|||||||
FpsManager().removeFpsCallback(fpsCallback!);
|
FpsManager().removeFpsCallback(fpsCallback!);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void injectAutoCompleteBindings(Session? session, AccountId? accountId) {
|
||||||
|
if (session == null || accountId == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
ContactAutoCompleteBindings().dependencies();
|
||||||
|
requireCapability(session, accountId, [tmailContactCapabilityIdentifier]);
|
||||||
|
TMailAutoCompleteBindings().dependencies();
|
||||||
|
} catch (e) {
|
||||||
|
logError('BaseController::injectAutoCompleteBindings(): exception: $e');
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user