Files
workavia-mail-front/model/lib/extensions/keyword_identifier_extension.dart
T
dab246 4d8c7dc52e TF-1718 Add unsubscribeMail method to datasource/repository/interactor on jmap server
Signed-off-by: dab246 <tdvu@linagora.com>
(cherry picked from commit f9159b651866fbe8e2a1866231b5413cecc5b597)
2023-11-21 16:54:33 +07:00

42 lines
1.1 KiB
Dart

import 'package:jmap_dart_client/jmap/core/patch_object.dart';
import 'package:jmap_dart_client/jmap/mail/email/keyword_identifier.dart';
import 'package:model/email/mark_star_action.dart';
import 'package:model/email/read_actions.dart';
extension KeyWordIdentifierExtension on KeyWordIdentifier {
static final unsubscribeMail = KeyWordIdentifier('\$unsubscribe');
String generatePath() {
return '${PatchObject.keywordsProperty}/$value';
}
PatchObject generateReadActionPath(ReadActions readActions) {
return PatchObject({
generatePath(): readActions == ReadActions.markAsRead ? true : null
});
}
PatchObject generateMarkStarActionPath(MarkStarAction markStarAction) {
return PatchObject({
generatePath(): markStarAction == MarkStarAction.markStar ? true : null
});
}
PatchObject generateAnsweredActionPath() {
return PatchObject({
generatePath(): true
});
}
PatchObject generateForwardedActionPath() {
return PatchObject({
generatePath(): true
});
}
PatchObject generateUnsubscribeActionPath() {
return PatchObject({
generatePath(): true
});
}
}