Files
workavia-mail-front/lib/main/routes/navigation_router.dart
T

57 lines
1.4 KiB
Dart

import 'package:equatable/equatable.dart';
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
import 'package:jmap_dart_client/jmap/mail/email/email_address.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/model/account_menu_item.dart';
import 'package:tmail_ui_user/features/thread/domain/model/search_query.dart';
enum DashboardType {
normal,
search;
}
class NavigationRouter with EquatableMixin {
final EmailId? emailId;
final MailboxId? mailboxId;
final DashboardType dashboardType;
final SearchQuery? searchQuery;
final String? routeName;
final List<EmailAddress>? listEmailAddress;
final String? subject;
final String? body;
final AccountMenuItem accountMenuItem;
final List<EmailAddress>? cc;
final List<EmailAddress>? bcc;
NavigationRouter({
this.emailId,
this.mailboxId,
this.searchQuery,
this.dashboardType = DashboardType.normal,
this.routeName,
this.listEmailAddress,
this.subject,
this.body,
this.accountMenuItem = AccountMenuItem.none,
this.cc,
this.bcc,
});
factory NavigationRouter.initial() => NavigationRouter();
@override
List<Object?> get props => [
emailId,
mailboxId,
searchQuery,
dashboardType,
routeName,
listEmailAddress,
subject,
body,
accountMenuItem,
cc,
bcc,
];
}