From 57423db1e342b48c970b972a6f18e84e7a7b1a22 Mon Sep 17 00:00:00 2001 From: "Jannis M. Hoffmann" Date: Sun, 8 Dec 2024 16:15:37 +0100 Subject: update for mail-storage version 1.1.0 Now a keyset based pagination is used instead of an offset based one. This removes the dependency flask-paginate. URL arguments are taken from the request object in the displayheaders templates instead of passing them in manually. Not needed arguments for about render_template are removed. --- .../de.jmhoffmann.jwebmail.mail-storage.varlink | 35 ++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) (limited to 'src/jwebmail/model/de.jmhoffmann.jwebmail.mail-storage.varlink') diff --git a/src/jwebmail/model/de.jmhoffmann.jwebmail.mail-storage.varlink b/src/jwebmail/model/de.jmhoffmann.jwebmail.mail-storage.varlink index 3be999b..850ff19 100644 --- a/src/jwebmail/model/de.jmhoffmann.jwebmail.mail-storage.varlink +++ b/src/jwebmail/model/de.jmhoffmann.jwebmail.mail-storage.varlink @@ -58,23 +58,54 @@ type MIMEPart ( body: MailBody ) +# sorting by subject is deprecated type Sort ( direction: (asc, desc), - parameter: (date, size, sender) + parameter: (date, size, sender, subject) +) + +type Bound ( + param: string, + id: string ) method Init(unix_user: string, mailbox_path: string) -> () + +# deprecated: use ListSearch instead method List(folder: string, start: int, end: int, sort: Sort) -> (mail_heads: []ListMailHeader) + method Stats(folder: string) -> (mail_count: int, unread_count: int, byte_size: int) + method Show(folder: string, mid: string) -> (mail: Mail) -method Raw(folder: string, mid: string, path: ?string) -> (header: MIMEHeader, body: string) # body is base64 encoded + +# body is base64 encoded +method Raw(folder: string, mid: string, path: ?string) -> (header: MIMEHeader, body: string) + +# deprecated: use ListSearch instead method Search(folder: string, pattern: string) -> (found: []ListMailHeader) + method Folders() -> (folders: []string) + method Move(mid: string, from_folder: string, to_folder: string) -> () + method Remove(folder: string, mid: string) -> () + method AddFolder(name: string) -> (status: (created, skiped)) +method ListSearch( + folder: string, + bound: ?Bound, + direction: (after, before), + limit: int, + sort: Sort, + search: ?string +) -> ( + mail_heads: []ListMailHeader, + first: bool, + last: bool +) + error NotInitialized() error InvalidFolder(folder: string) -- cgit v1.2.3