TF-1718 Add unsubscribeMail method to datasource/repository/interactor on jmap server
Signed-off-by: dab246 <tdvu@linagora.com> (cherry picked from commit f9159b651866fbe8e2a1866231b5413cecc5b597)
This commit is contained in:
@@ -1,5 +1,14 @@
|
||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/patch_object.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:model/extensions/keyword_identifier_extension.dart';
|
||||
|
||||
extension EmailIdExtension on EmailId {
|
||||
String get asString => id.value;
|
||||
|
||||
Map<Id, PatchObject> generateMapUpdateObjectUnsubscribeMail() {
|
||||
return {
|
||||
id: KeyWordIdentifierExtension.unsubscribeMail.generateUnsubscribeActionPath()
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,8 @@ 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';
|
||||
}
|
||||
@@ -31,4 +33,10 @@ extension KeyWordIdentifierExtension on KeyWordIdentifier {
|
||||
generatePath(): true
|
||||
});
|
||||
}
|
||||
|
||||
PatchObject generateUnsubscribeActionPath() {
|
||||
return PatchObject({
|
||||
generatePath(): true
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user