TF-524 Show list search filter in ThreadView
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/utc_date.dart';
|
||||
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||
|
||||
enum EmailReceiveTimeType {
|
||||
anyTime,
|
||||
last7Days,
|
||||
last30Days,
|
||||
last6Months,
|
||||
lastYears,
|
||||
}
|
||||
|
||||
extension EmailReceiveTimeTypeExtension on EmailReceiveTimeType {
|
||||
|
||||
String getTitle(BuildContext context) {
|
||||
switch(this) {
|
||||
case EmailReceiveTimeType.anyTime:
|
||||
return AppLocalizations.of(context).anyTime;
|
||||
case EmailReceiveTimeType.last7Days:
|
||||
return AppLocalizations.of(context).last7Days;
|
||||
case EmailReceiveTimeType.last30Days:
|
||||
return AppLocalizations.of(context).last30Days;
|
||||
case EmailReceiveTimeType.last6Months:
|
||||
return AppLocalizations.of(context).last6Months;
|
||||
case EmailReceiveTimeType.lastYears:
|
||||
return AppLocalizations.of(context).lastYears;
|
||||
}
|
||||
}
|
||||
|
||||
UTCDate? toUTCDate() {
|
||||
switch(this) {
|
||||
case EmailReceiveTimeType.anyTime:
|
||||
return null;
|
||||
case EmailReceiveTimeType.last7Days:
|
||||
return UTCDate(DateTime.now().subtract(const Duration(days: 7)));
|
||||
case EmailReceiveTimeType.last30Days:
|
||||
return UTCDate(DateTime.now().subtract(const Duration(days: 30)));
|
||||
case EmailReceiveTimeType.last6Months:
|
||||
return UTCDate(DateTime.now().subtract(const Duration(days: 180)));
|
||||
case EmailReceiveTimeType.lastYears:
|
||||
return UTCDate(DateTime.now().subtract(const Duration(days: 365)));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
|
||||
import 'package:core/core.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/email_receive_time_type.dart';
|
||||
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||
|
||||
enum QuickSearchFilter {
|
||||
@@ -11,11 +12,14 @@ enum QuickSearchFilter {
|
||||
|
||||
extension QuickSearchFilterExtension on QuickSearchFilter {
|
||||
|
||||
String getTitle(BuildContext context) {
|
||||
String getTitle(BuildContext context, {EmailReceiveTimeType? receiveTimeType}) {
|
||||
switch(this) {
|
||||
case QuickSearchFilter.hasAttachment:
|
||||
return AppLocalizations.of(context).hasAttachment;
|
||||
case QuickSearchFilter.last7Days:
|
||||
if (receiveTimeType != null) {
|
||||
return receiveTimeType.getTitle(context);
|
||||
}
|
||||
return AppLocalizations.of(context).last7Days;
|
||||
case QuickSearchFilter.fromMe:
|
||||
return AppLocalizations.of(context).fromMe;
|
||||
|
||||
Reference in New Issue
Block a user