1b7ce6b37a
(cherry picked from commit 7804f19d27d65af855e145de1953df9a553f3ce0)
28 lines
780 B
Dart
28 lines
780 B
Dart
import 'package:jmap_dart_client/jmap/core/patch_object.dart';
|
|
import 'package:jmap_dart_client/jmap/core/reference_id.dart';
|
|
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
|
|
|
extension MailboxIdExtension on MailboxId {
|
|
String generatePath() {
|
|
if (id is ReferenceId) {
|
|
return '${PatchObject.mailboxIdsProperty}/${id.toString()}';
|
|
} else {
|
|
return '${PatchObject.mailboxIdsProperty}/${id.value}';
|
|
}
|
|
}
|
|
|
|
PatchObject generateMoveToMailboxActionPath(MailboxId destinationMailboxId) {
|
|
return PatchObject({
|
|
generatePath(): null,
|
|
destinationMailboxId.generatePath(): true
|
|
});
|
|
}
|
|
|
|
PatchObject generateActionPath() {
|
|
return PatchObject({
|
|
generatePath(): true,
|
|
});
|
|
}
|
|
|
|
String get asString => id.value;
|
|
} |