| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // The type schemas for structured manifest items. Not actually a callable API. |
| |
| [ |
| { |
| "namespace": "extensionsManifestTypes", |
| "description": "Schemas for structured manifest entries", |
| "compiler_options": { |
| "generate_error_messages": true |
| }, |
| "types": [ |
| { |
| "id": "ExternallyConnectable", |
| "type": "object", |
| // Note: description commented out because externally_connectable.html |
| // already describes it, and the repetition looks odd. |
| // "description": "The <code>externally_connectable</code> manifest property declares which extensions, apps, and web pages can connect to your extension via $(ref:runtime.connect) and $(ref:runtime.sendMessage).", |
| "properties": { |
| "ids": { |
| "description": "<p>The IDs of extensions or apps that are allowed to connect. If left empty or unspecified, no extensions or apps can connect.</p><p>The wildcard <code>\"*\"</code> will allow all extensions and apps to connect.</p>", |
| "optional": true, |
| "type": "array", |
| "items": {"type": "string"} |
| }, |
| "matches": { |
| "description": "<p>The URL patterns for <em>web pages</em> that are allowed to connect. <em>This does not affect content scripts.</em> If left empty or unspecified, no web pages can connect.</p><p>Patterns cannot include wildcard domains nor subdomains of <a href=\"http://publicsuffix.org/list/\">(effective) top level domains</a>; <code>*://google.com/*</code> and <code>http://*.chromium.org/*</code> are valid, while <code><all_urls></code>, <code>http://*/*</code>, <code>*://*.com/*</code>, and even <code>http://*.appspot.com/*</code> are not.</p>", |
| "optional": true, |
| "type": "array", |
| "items": {"type": "string"} |
| }, |
| "accepts_tls_channel_id": { |
| "description": "If <code>true</code>, messages sent via $(ref:runtime.connect) or $(ref:runtime.sendMessage) will set $(ref:runtime.MessageSender.tlsChannelId) if those methods request it to be. If <code>false</code>, $(ref:runtime.MessageSender.tlsChannelId) will never be set under any circumstance.", |
| "optional": true, |
| "type": "boolean" |
| } |
| } |
| }, |
| { |
| "id": "SocketHostPatterns", |
| "description": "<p>A single string or a list of strings representing host:port patterns.</p>", |
| "choices": [ |
| { "type": "string" }, |
| { "type": "array", "items": { "type": "string" } } |
| ] |
| }, |
| { |
| "id": "sockets", |
| "type": "object", |
| "description": "The <code>sockets</code> manifest property declares which sockets operations an app can issue.", |
| "properties": { |
| "udp": { |
| "description": "The <code>udp</code> manifest property declares which sockets.udp operations an app can issue.", |
| "optional": true, |
| "type": "object", |
| "properties": { |
| "bind": { |
| "description": "<p>The host:port pattern for <code>bind</code> operations.</p>", |
| "optional": true, |
| "$ref": "SocketHostPatterns" |
| }, |
| "send": { |
| "description": "<p>The host:port pattern for <code>send</code> operations.</p>", |
| "optional": true, |
| "$ref": "SocketHostPatterns" |
| }, |
| "multicastMembership": { |
| "description": "<p>The host:port pattern for <code>joinGroup</code> operations.</p>", |
| "optional": true, |
| "$ref": "SocketHostPatterns" |
| } |
| } |
| }, |
| "tcp": { |
| "description": "The <code>tcp</code> manifest property declares which sockets.tcp operations an app can issue.", |
| "optional": true, |
| "type": "object", |
| "properties": { |
| "connect": { |
| "description": "<p>The host:port pattern for <code>connect</code> operations.</p>", |
| "optional": true, |
| "$ref": "SocketHostPatterns" |
| } |
| } |
| }, |
| "tcpServer": { |
| "description": "The <code>tcpServer</code> manifest property declares which sockets.tcpServer operations an app can issue.", |
| "optional": true, |
| "type": "object", |
| "properties": { |
| "listen": { |
| "description": "<p>The host:port pattern for <code>listen</code> operations.</p>", |
| "optional": true, |
| "$ref": "SocketHostPatterns" |
| } |
| } |
| } |
| } |
| } |
| ] |
| } |
| ] |