TF-4141 Add the AI needs-action option into the user settings.

This commit is contained in:
dab246
2025-12-23 01:13:17 +07:00
committed by Dat H. Pham
parent cb0471ecb7
commit 1661210e04
19 changed files with 171 additions and 35 deletions
@@ -0,0 +1,21 @@
import 'package:get/get.dart';
import 'package:server_settings/server_settings/tmail_server_settings.dart';
import 'package:server_settings/server_settings/tmail_server_settings_extension.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/action/mailbox_ui_action.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
extension SetupAiNeedsActionSettingExtension on MailboxDashBoardController {
void setupAINeedsActionSetting({TMailServerSettingOptions? options}) {
if (options != null) {
isAINeedsActionSettingEnabled.value = options.isAINeedsActionEnabled;
} else {
isAINeedsActionSettingEnabled.value = false;
}
if (isAINeedsActionSettingEnabled.isTrue) {
dispatchMailboxUIAction(AutoCreateActionRequiredFolderMailboxAction());
} else {
dispatchMailboxUIAction(AutoRemoveActionRequiredFolderMailboxAction());
}
}
}
@@ -16,4 +16,7 @@ extension HandleAiActionExtension on MailboxDashBoardController {
currentAccountId,
);
}
bool get isAINeedsActionEnabled =>
isAINeedsActionSettingEnabled.value && isAiCapabilitySupported;
}