Skip to content

[Dev] Support Team-Mailboxes in jmap_dart_client #1332

@dab246

Description

@dab246

DoD

  • Implement Team-mailboxes for GetMailbox method
  • Write unit test for GetMailbox method

Desc

  • Add new capability for team mailboxes urn:apache:james:params:jmap:mail:shares in CapabilityIdentifier class
static final jmapTeamMailboxes = CapabilityIdentifier(Uri.parse('urn:apache:james:params:jmap:mail:shares'));
  • Add some new properties for Mailbox object to support Team-Mailboxes

    • namespace: String
    • rights: Map<String, Set>
{
  "totalThreads": 0,
  "name": "Sent",
  "isSubscribed": false,
  "totalEmails": 0,
  "unreadThreads": 0,
  "unreadEmails": 0,
  "sortOrder": 1000,
  "rights": {
    "[email protected]": [
      "i",
      "l",
      "r",
      "s",
      "t",
      "w"
    ]
  },
  "parentId": "e3f63dd0-64b4-11ed-88c0-338bebbdf582",
  "namespace": "TeamMailbox[[email protected]]",
  "myRights": {
    "mayReadItems": true,
    "mayAddItems": true,
    "mayRemoveItems": true,
    "maySetSeen": true,
    "maySetKeywords": true,
    "mayCreateChild": false,
    "mayRename": false,
    "mayDelete": false,
    "maySubmit": false
  },
  "id": "e3fca670-64b4-11ed-88c0-338bebbdf582"
}
  • Create requiredCapabilitiesSupportTeamMailboxes list
  Set<CapabilityIdentifier> get requiredCapabilitiesSupportTeamMailboxes => {
    CapabilityIdentifier.jmapCore,
    CapabilityIdentifier.jmapMail,
    CapabilityIdentifier.jmapTeamMailboxes
  };

Docs

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions