From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- .../components/extensions/schemas/folders.json | 408 +++++++++++++++++++++ 1 file changed, 408 insertions(+) create mode 100644 comm/mail/components/extensions/schemas/folders.json (limited to 'comm/mail/components/extensions/schemas/folders.json') diff --git a/comm/mail/components/extensions/schemas/folders.json b/comm/mail/components/extensions/schemas/folders.json new file mode 100644 index 0000000000..307cbcf789 --- /dev/null +++ b/comm/mail/components/extensions/schemas/folders.json @@ -0,0 +1,408 @@ +[ + { + "namespace": "manifest", + "types": [ + { + "$extend": "OptionalPermission", + "choices": [ + { + "type": "string", + "enum": ["accountsFolders"] + } + ] + } + ] + }, + { + "namespace": "folders", + "permissions": ["accountsRead"], + "types": [ + { + "id": "MailFolder", + "type": "object", + "description": "An object describing a mail folder, as returned for example by the :ref:`folders.getParentFolders` or :ref:`folders.getSubFolders` methods, or part of a :ref:`accounts.MailAccount` object, which is returned for example by the :ref:`accounts.list` and :ref:`accounts.get` methods. The ``subFolders`` property is only included if requested.", + "properties": { + "accountId": { + "type": "string", + "description": "The account this folder belongs to." + }, + "name": { + "type": "string", + "optional": true, + "description": "The human-friendly name of this folder." + }, + "path": { + "type": "string", + "description": "Path to this folder in the account. Although paths look predictable, never guess a folder's path, as there are a number of reasons why it may not be what you think it is. Use :ref:`folders.getParentFolders` or :ref:`folders.getSubFolders` to obtain hierarchy information." + }, + "subFolders": { + "type": "array", + "description": "Subfolders are only included if requested. They will be returned in the same order as used in Thunderbird's folder pane.", + "items": { + "$ref": "MailFolder" + }, + "optional": true + }, + "type": { + "type": "string", + "optional": true, + "description": "The type of folder, for several common types.", + "enum": [ + "inbox", + "drafts", + "sent", + "trash", + "templates", + "archives", + "junk", + "outbox" + ] + } + } + }, + { + "id": "MailFolderInfo", + "type": "object", + "description": "An object containing additional information about a mail folder.", + "properties": { + "favorite": { + "type": "boolean", + "optional": true, + "description": "Whether this folder is a favorite folder." + }, + "totalMessageCount": { + "type": "integer", + "optional": true, + "description": "Number of messages in this folder." + }, + "unreadMessageCount": { + "type": "integer", + "optional": true, + "description": "Number of unread messages in this folder." + } + } + } + ], + "functions": [ + { + "name": "create", + "type": "function", + "permissions": ["accountsFolders"], + "description": "Creates a new subfolder in the specified folder or at the root of the specified account.", + "async": "callback", + "parameters": [ + { + "name": "parent", + "choices": [ + { + "$ref": "folders.MailFolder" + }, + { + "$ref": "accounts.MailAccount" + } + ] + }, + { + "name": "childName", + "type": "string" + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [ + { + "$ref": "folders.MailFolder" + } + ] + } + ] + }, + { + "name": "rename", + "type": "function", + "permissions": ["accountsFolders"], + "description": "Renames a folder.", + "async": "callback", + "parameters": [ + { + "name": "folder", + "$ref": "folders.MailFolder" + }, + { + "name": "newName", + "type": "string" + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [ + { + "$ref": "folders.MailFolder" + } + ] + } + ] + }, + { + "name": "move", + "type": "function", + "permissions": ["accountsFolders"], + "description": "Moves the given ``sourceFolder`` into the given ``destination``. Throws if the destination already contains a folder with the name of the source folder.", + "async": "callback", + "parameters": [ + { + "name": "sourceFolder", + "$ref": "folders.MailFolder" + }, + { + "name": "destination", + "choices": [ + { + "$ref": "folders.MailFolder" + }, + { + "$ref": "accounts.MailAccount" + } + ] + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [ + { + "$ref": "folders.MailFolder" + } + ] + } + ] + }, + { + "name": "copy", + "type": "function", + "permissions": ["accountsFolders"], + "description": "Copies the given ``sourceFolder`` into the given ``destination``. Throws if the destination already contains a folder with the name of the source folder.", + "async": "callback", + "parameters": [ + { + "name": "sourceFolder", + "$ref": "folders.MailFolder" + }, + { + "name": "destination", + "choices": [ + { + "$ref": "folders.MailFolder" + }, + { + "$ref": "accounts.MailAccount" + } + ] + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [ + { + "$ref": "folders.MailFolder" + } + ] + } + ] + }, + { + "name": "delete", + "permissions": ["accountsFolders", "messagesDelete"], + "type": "function", + "description": "Deletes a folder.", + "async": true, + "parameters": [ + { + "name": "folder", + "$ref": "folders.MailFolder" + } + ] + }, + { + "name": "getFolderInfo", + "type": "function", + "description": "Get additional information about a mail folder.", + "async": "callback", + "parameters": [ + { + "name": "folder", + "$ref": "folders.MailFolder" + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [ + { + "$ref": "folders.MailFolderInfo" + } + ] + } + ] + }, + { + "name": "getParentFolders", + "type": "function", + "description": "Get all parent folders as a flat ordered array. The first array entry is the direct parent.", + "async": "callback", + "parameters": [ + { + "name": "folder", + "$ref": "folders.MailFolder" + }, + { + "name": "includeSubFolders", + "description": "Specifies whether the returned :ref:`folders.MailFolder` object for each parent folder should include its nested subfolders . Defaults to false.", + "optional": true, + "default": false, + "type": "boolean" + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [ + { + "type": "array", + "items": { + "$ref": "folders.MailFolder" + } + } + ] + } + ] + }, + { + "name": "getSubFolders", + "type": "function", + "description": "Get the subfolders of the specified folder or account.", + "async": "callback", + "parameters": [ + { + "name": "folderOrAccount", + "choices": [ + { + "$ref": "folders.MailFolder" + }, + { + "$ref": "accounts.MailAccount" + } + ] + }, + { + "name": "includeSubFolders", + "description": "Specifies whether the returned :ref:`folders.MailFolder` object for each direct subfolder should also include all its nested subfolders . Defaults to true.", + "optional": true, + "default": true, + "type": "boolean" + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [ + { + "type": "array", + "items": { + "$ref": "folders.MailFolder" + } + } + ] + } + ] + } + ], + "events": [ + { + "name": "onCreated", + "type": "function", + "description": "Fired when a folder has been created.", + "parameters": [ + { + "name": "createdFolder", + "$ref": "folders.MailFolder" + } + ] + }, + { + "name": "onRenamed", + "type": "function", + "description": "Fired when a folder has been renamed.", + "parameters": [ + { + "name": "originalFolder", + "$ref": "folders.MailFolder" + }, + { + "name": "renamedFolder", + "$ref": "folders.MailFolder" + } + ] + }, + { + "name": "onMoved", + "type": "function", + "description": "Fired when a folder has been moved.", + "parameters": [ + { + "name": "originalFolder", + "$ref": "folders.MailFolder" + }, + { + "name": "movedFolder", + "$ref": "folders.MailFolder" + } + ] + }, + { + "name": "onCopied", + "type": "function", + "description": "Fired when a folder has been copied.", + "parameters": [ + { + "name": "originalFolder", + "$ref": "folders.MailFolder" + }, + { + "name": "copiedFolder", + "$ref": "folders.MailFolder" + } + ] + }, + { + "name": "onDeleted", + "type": "function", + "description": "Fired when a folder has been deleted.", + "parameters": [ + { + "name": "deletedFolder", + "$ref": "folders.MailFolder" + } + ] + }, + { + "name": "onFolderInfoChanged", + "type": "function", + "description": "Fired when certain information of a folder have changed. Bursts of message count changes are collapsed to a single event.", + "parameters": [ + { + "name": "folder", + "$ref": "folders.MailFolder" + }, + { + "name": "folderInfo", + "$ref": "folders.MailFolderInfo" + } + ] + } + ] + } +] -- cgit v1.2.3