summaryrefslogtreecommitdiffstats
path: root/browser/components/extensions/schemas/top_sites.json
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/extensions/schemas/top_sites.json')
-rw-r--r--browser/components/extensions/schemas/top_sites.json137
1 files changed, 137 insertions, 0 deletions
diff --git a/browser/components/extensions/schemas/top_sites.json b/browser/components/extensions/schemas/top_sites.json
new file mode 100644
index 0000000000..bf745f1201
--- /dev/null
+++ b/browser/components/extensions/schemas/top_sites.json
@@ -0,0 +1,137 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+[
+ {
+ "namespace": "manifest",
+ "types": [
+ {
+ "$extend": "OptionalPermission",
+ "choices": [
+ {
+ "type": "string",
+ "enum": ["topSites"]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "namespace": "topSites",
+ "description": "Use the chrome.topSites API to access the top sites that are displayed on the new tab page. ",
+ "permissions": ["topSites"],
+ "types": [
+ {
+ "id": "MostVisitedURL",
+ "type": "object",
+ "description": "An object encapsulating a most visited URL, such as the URLs on the new tab page.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "description": "The most visited URL."
+ },
+ "title": {
+ "type": "string",
+ "optional": true,
+ "description": "The title of the page."
+ },
+ "favicon": {
+ "type": "string",
+ "optional": true,
+ "description": "Data URL for the favicon, if available."
+ },
+ "type": {
+ "type": "string",
+ "enum": ["url", "search"],
+ "optional": true,
+ "default": "url",
+ "description": "The entry type, either <code>url</code> for a normal page link, or <code>search</code> for a search shortcut."
+ }
+ }
+ }
+ ],
+ "functions": [
+ {
+ "name": "get",
+ "type": "function",
+ "description": "Gets a list of top sites.",
+ "async": "callback",
+ "parameters": [
+ {
+ "type": "object",
+ "name": "options",
+ "properties": {
+ "providers": {
+ "type": "array",
+ "items": { "type": "string" },
+ "deprecated": "Please use the other options to tune the results received from topSites.",
+ "default": [],
+ "optional": true
+ },
+ "limit": {
+ "type": "integer",
+ "default": 12,
+ "maximum": 100,
+ "minimum": 1,
+ "optional": true,
+ "description": "The number of top sites to return, defaults to the value used by Firefox"
+ },
+ "onePerDomain": {
+ "type": "boolean",
+ "default": true,
+ "optional": true,
+ "description": "Limit the result to a single top site link per domain"
+ },
+ "includeBlocked": {
+ "type": "boolean",
+ "default": false,
+ "optional": true,
+ "description": "Include sites that the user has blocked from appearing on the Firefox new tab."
+ },
+ "includeFavicon": {
+ "type": "boolean",
+ "default": false,
+ "optional": true,
+ "description": "Include sites favicon if available."
+ },
+ "includePinned": {
+ "type": "boolean",
+ "default": false,
+ "optional": true,
+ "description": "Include sites that the user has pinned on the Firefox new tab."
+ },
+ "includeSearchShortcuts": {
+ "type": "boolean",
+ "default": false,
+ "optional": true,
+ "description": "Include search shortcuts appearing on the Firefox new tab."
+ },
+ "newtab": {
+ "type": "boolean",
+ "default": false,
+ "optional": true,
+ "description": "Return the sites that exactly appear on the user's new-tab page. When true, all other options are ignored except limit and includeFavicon. If the user disabled newtab Top Sites, the newtab parameter will be ignored."
+ }
+ },
+ "default": {},
+ "optional": true
+ },
+ {
+ "name": "callback",
+ "type": "function",
+ "parameters": [
+ {
+ "name": "results",
+ "type": "array",
+ "items": {
+ "$ref": "MostVisitedURL"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+]