TF-130 Checking maxSizeAttachmentsPerEmail when uploading attachments

This commit is contained in:
dab246
2022-03-29 13:01:38 +07:00
committed by Dat H. Pham
parent 92ffd1d726
commit 67639578a5
4 changed files with 63 additions and 2 deletions
@@ -4,7 +4,10 @@ import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:jmap_dart_client/jmap/account_id.dart';
import 'package:jmap_dart_client/jmap/core/capability/capability_identifier.dart';
import 'package:jmap_dart_client/jmap/core/capability/mail_capability.dart';
import 'package:jmap_dart_client/jmap/core/session/session.dart';
import 'package:jmap_dart_client/jmap/core/unsigned_int.dart';
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
import 'package:model/model.dart';
@@ -269,6 +272,20 @@ class MailboxDashBoardController extends ReloadableController {
accountId.value = sessionCurrent?.accounts.keys.first;
}
UnsignedInt? get maxSizeAttachmentsPerEmail {
if (sessionCurrent != null && accountId.value != null) {
final mailCapability = sessionCurrent
?.accounts[accountId.value]
?.accountCapabilities[CapabilityIdentifier.jmapMail];
if (mailCapability is MailCapability) {
final maxSizeAttachmentsPerEmail = mailCapability.maxSizeAttachmentsPerEmail;
log('MailboxDashBoardController::maxSizeAttachmentsPerEmail(): $maxSizeAttachmentsPerEmail');
return maxSizeAttachmentsPerEmail;
}
}
return null;
}
void composeEmailAction() {
if (kIsWeb) {
if (dashBoardAction != DashBoardAction.compose) {