{ "$schema": "https://json-schema.org/draft/2019-09/schema", "$id": "file:///InfoBar.schema.json", "title": "InfoBar", "description": "A template with an image, test and buttons.", "allOf": [{ "$ref": "file:///FxMSCommon.schema.json#/$defs/Message" }], "type": "object", "properties": { "content": { "type": "object", "properties": { "type": { "type": "string", "description": "Should the message be global (persisted across tabs) or local (disappear when switching to a different tab).", "enum": ["global", "tab"] }, "text": { "$ref": "file:///FxMSCommon.schema.json#/$defs/localizableText", "description": "The text show in the notification box." }, "priority": { "description": "Infobar priority level https://searchfox.org/mozilla-central/rev/3aef835f6cb12e607154d56d68726767172571e4/toolkit/content/widgets/notificationbox.js#387", "type": "number", "minumum": 0, "exclusiveMaximum": 10 }, "buttons": { "type": "array", "items": { "type": "object", "properties": { "label": { "$ref": "file:///FxMSCommon.schema.json#/$defs/localizableText", "description": "The text label of the button." }, "primary": { "type": "boolean", "description": "Is this the primary button?" }, "accessKey": { "type": "string", "description": "Keyboard shortcut letter." }, "action": { "type": "object", "properties": { "type": { "type": "string", "description": "Action dispatched by the button." }, "data": { "type": "object" } }, "required": ["type"], "additionalProperties": true }, "supportPage": { "type": "string", "description": "A page title on SUMO to link to" } }, "required": ["label", "action"], "additionalProperties": true } } }, "additionalProperties": true, "required": ["text", "buttons"] }, "template": { "type": "string", "const": "infobar" } }, "additionalProperties": true, "required": ["targeting", "trigger"], "$defs": { "plainText": { "description": "Plain text (no HTML allowed)", "type": "string" }, "linkUrl": { "description": "Target for links or buttons", "type": "string", "format": "uri" } } }