summaryrefslogtreecommitdiffstats
path: root/browser/components/newtab/content-src/asrouter/templates/OnboardingMessage/Spotlight.schema.json
blob: 5d5b98f59432f03705c6b754a5c9a2f1cbbc7694 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
{
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "$id": "file:///Spotlight.schema.json",
  "title": "Spotlight",
  "description": "A template with an image, title, content and two buttons.",
  "allOf": [{ "$ref": "file:///FxMSCommon.schema.json#/$defs/Message" }],
  "type": "object",
  "properties": {
    "content": {
      "type": "object",
      "properties": {
        "template": {
          "type": "string",
          "description": "Specify the layout template for the Spotlight",
          "const": "multistage"
        },
        "backdrop": {
          "type": "string",
          "description": "Background css behind modal content"
        },
        "logo": {
          "type": "object",
          "properties": {
            "imageURL": {
              "type": "string",
              "description": "URL for image to use with the content"
            },
            "imageId": {
              "type": "string",
              "description": "The ID for a remotely hosted image"
            },
            "size": {
              "type": "string",
              "description": "The logo size."
            }
          },
          "additionalProperties": true
        },
        "screens": {
          "type": "array",
          "description": "Collection of individual screen content"
        },
        "transitions": {
          "type": "boolean",
          "description": "Show transitions within and between screens"
        },
        "disableHistoryUpdates": {
          "type": "boolean",
          "description": "Don't alter the browser session's history stack - used with messaging surfaces like Feature Callouts"
        },
        "startScreen": {
          "type": "integer",
          "description": "Index of first screen to show from message, defaulting to 0"
        }
      },
      "additionalProperties": true
    },
    "template": {
      "type": "string",
      "description": "Specify whether the surface is shown as a Spotlight modal or an in-surface Feature Callout dialog",
      "enum": ["spotlight", "feature_callout"]
    }
  },
  "additionalProperties": true,
  "required": ["targeting"]
}