Add model for mailbox & mail

This commit is contained in:
dab246
2021-07-29 12:41:20 +07:00
committed by Dat H. Pham
parent 0c921e5192
commit b84270870a
3 changed files with 26 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
import 'package:equatable/equatable.dart';
class PresentationMail with EquatableMixin {
final String id;
final String? message;
PresentationMail(this.id, {this.message});
factory PresentationMail.createMailEmpty() {
return PresentationMail('empty');
}
@override
List<Object?> get props => [id, message];
}
@@ -1,4 +1,5 @@
import 'package:equatable/equatable.dart';
import 'package:jmap_dart_client/jmap/core/id.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox_rights.dart';
import 'package:model/mailbox/select_mode.dart';
@@ -35,6 +36,10 @@ class PresentationMailbox with EquatableMixin {
}
);
factory PresentationMailbox.createMailboxEmpty() {
return PresentationMailbox(MailboxId(Id("empty")));
}
bool hasParentId() => parentId != null && parentId!.id.value.isNotEmpty;
bool hasRole() => role != null && role!.value.isNotEmpty;
+4
View File
@@ -7,7 +7,11 @@ export 'account/password.dart';
// User
export 'user/user_id.dart';
export 'user/user.dart';
// Mailbox
export 'mailbox/presentation_mailbox.dart';
export 'mailbox/select_mode.dart';
export 'mailbox/expand_mode.dart';
// Mail
export 'mail/presentation_mail.dart';