diff --git a/README.md b/README.md index 7e2e08c..5fd85a4 100644 --- a/README.md +++ b/README.md @@ -762,6 +762,38 @@ interface CustomCodeComponent extends Node { - The basic interface in Spark to make reference to this system above (eg. the git repo URL or a public S3 bucket), and provide some data for it if necessary. This will be the Custom Component storyblock. - The data Spark receives from entering a specific ID will be used to render dynamic fields (the `attributes`). +### Info + +```ts +interface Info extends Parent { + type: "info" + children: [Heading, ImageSet, Paragraph] +} +``` +An **Info** is an atomic information that can be optionally associated with other information + +### InfoBox + +```ts +type InfoBoxLayoutWidth = Extract +interface InfoBox extends Parent { + type: "info-box" + layoutWidth: InfoBoxLayoutWidth + children: Info +} +``` +An **InfoBox** positions a single **Info** inside the content whilst setting an appropriate presentation + +### Comparison + +```ts +interface Comparison extends Parent { + type: "comparison" + children: [Heading, Info, Info] +} +``` + +A **Comparison** compares two information ## License diff --git a/content-tree.d.ts b/content-tree.d.ts index bbe0cff..6a188cb 100644 --- a/content-tree.d.ts +++ b/content-tree.d.ts @@ -278,6 +278,20 @@ export declare namespace ContentTree { /** Configuration data to be passed to the component. */ attributes: CustomCodeComponentAttributes; } + interface Info extends Parent { + type: "info"; + children: [Heading, ImageSet, Paragraph]; + } + type InfoBoxLayoutWidth = Extract; + interface InfoBox extends Parent { + type: "info-box"; + layoutWidth: InfoBoxLayoutWidth; + children: Info; + } + interface Comparison extends Parent { + type: "comparison"; + children: [Heading, Info, Info]; + } namespace full { type BodyBlock = Paragraph | Heading | ImageSet | Flourish | BigNumber | CustomCodeComponent | Layout | List | Blockquote | Pullquote | ScrollyBlock | ThematicBreak | Table | Recommended | Tweet | Video | YoutubeVideo | Text; type LayoutWidth = "auto" | "in-line" | "inset-left" | "inset-right" | "full-bleed" | "full-grid" | "mid-grid" | "full-width"; @@ -558,6 +572,20 @@ export declare namespace ContentTree { /** Configuration data to be passed to the component. */ attributes: CustomCodeComponentAttributes; } + interface Info extends Parent { + type: "info"; + children: [Heading, ImageSet, Paragraph]; + } + type InfoBoxLayoutWidth = Extract; + interface InfoBox extends Parent { + type: "info-box"; + layoutWidth: InfoBoxLayoutWidth; + children: Info; + } + interface Comparison extends Parent { + type: "comparison"; + children: [Heading, Info, Info]; + } } namespace transit { type BodyBlock = Paragraph | Heading | ImageSet | Flourish | BigNumber | CustomCodeComponent | Layout | List | Blockquote | Pullquote | ScrollyBlock | ThematicBreak | Table | Recommended | Tweet | Video | YoutubeVideo | Text; @@ -824,6 +852,20 @@ export declare namespace ContentTree { /** How the component should be presented in the article page according to the column layout system */ layoutWidth: LayoutWidth; } + interface Info extends Parent { + type: "info"; + children: [Heading, ImageSet, Paragraph]; + } + type InfoBoxLayoutWidth = Extract; + interface InfoBox extends Parent { + type: "info-box"; + layoutWidth: InfoBoxLayoutWidth; + children: Info; + } + interface Comparison extends Parent { + type: "comparison"; + children: [Heading, Info, Info]; + } } namespace loose { type BodyBlock = Paragraph | Heading | ImageSet | Flourish | BigNumber | CustomCodeComponent | Layout | List | Blockquote | Pullquote | ScrollyBlock | ThematicBreak | Table | Recommended | Tweet | Video | YoutubeVideo | Text; @@ -1105,5 +1147,19 @@ export declare namespace ContentTree { /** Configuration data to be passed to the component. */ attributes?: CustomCodeComponentAttributes; } + interface Info extends Parent { + type: "info"; + children: [Heading, ImageSet, Paragraph]; + } + type InfoBoxLayoutWidth = Extract; + interface InfoBox extends Parent { + type: "info-box"; + layoutWidth: InfoBoxLayoutWidth; + children: Info; + } + interface Comparison extends Parent { + type: "comparison"; + children: [Heading, Info, Info]; + } } } diff --git a/schemas/body-tree.schema.json b/schemas/body-tree.schema.json index 1c331ad..e69de29 100644 --- a/schemas/body-tree.schema.json +++ b/schemas/body-tree.schema.json @@ -1,1170 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "definitions": { - "ContentTree.transit.BigNumber": { - "additionalProperties": false, - "properties": { - "data": {}, - "description": { - "type": "string" - }, - "number": { - "type": "string" - }, - "type": { - "const": "big-number", - "type": "string" - } - }, - "required": [ - "description", - "number", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Blockquote": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - { - "$ref": "#/definitions/ContentTree.transit.Break" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strong" - }, - { - "$ref": "#/definitions/ContentTree.transit.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.transit.Link" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "blockquote", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.BodyBlock": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Heading" - }, - { - "$ref": "#/definitions/ContentTree.transit.ImageSet" - }, - { - "$ref": "#/definitions/ContentTree.transit.Flourish" - }, - { - "$ref": "#/definitions/ContentTree.transit.BigNumber" - }, - { - "$ref": "#/definitions/ContentTree.transit.CustomCodeComponent" - }, - { - "$ref": "#/definitions/ContentTree.transit.Layout" - }, - { - "$ref": "#/definitions/ContentTree.transit.List" - }, - { - "$ref": "#/definitions/ContentTree.transit.Blockquote" - }, - { - "$ref": "#/definitions/ContentTree.transit.Pullquote" - }, - { - "$ref": "#/definitions/ContentTree.transit.ScrollyBlock" - }, - { - "$ref": "#/definitions/ContentTree.transit.ThematicBreak" - }, - { - "$ref": "#/definitions/ContentTree.transit.Table" - }, - { - "$ref": "#/definitions/ContentTree.transit.Recommended" - }, - { - "$ref": "#/definitions/ContentTree.transit.Tweet" - }, - { - "$ref": "#/definitions/ContentTree.transit.Video" - }, - { - "$ref": "#/definitions/ContentTree.transit.YoutubeVideo" - }, - { - "$ref": "#/definitions/ContentTree.transit.Text" - } - ] - }, - "ContentTree.transit.Break": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "break", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "ContentTree.transit.CustomCodeComponent": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "description": "Id taken from the CAPI url", - "type": "string" - }, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.transit.LayoutWidth", - "description": "How the component should be presented in the article page according to the column layout system" - }, - "type": { - "const": "custom-code-component", - "description": "Component type", - "type": "string" - } - }, - "required": [ - "id", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Emphasis": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "emphasis", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Flourish": { - "additionalProperties": false, - "properties": { - "data": {}, - "description": { - "type": "string" - }, - "flourishType": { - "type": "string" - }, - "fragmentIdentifier": { - "type": "string" - }, - "id": { - "type": "string" - }, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.transit.FlourishLayoutWidth" - }, - "timestamp": { - "type": "string" - }, - "type": { - "const": "flourish", - "type": "string" - } - }, - "required": [ - "flourishType", - "id", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.transit.FlourishLayoutWidth": { - "enum": [ - "full-grid", - "in-line" - ], - "type": "string" - }, - "ContentTree.transit.Heading": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - "type": "array" - }, - "data": {}, - "fragmentIdentifier": { - "type": "string" - }, - "level": { - "enum": [ - "chapter", - "label", - "subheading" - ], - "type": "string" - }, - "type": { - "const": "heading", - "type": "string" - } - }, - "required": [ - "children", - "level", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ImageSet": { - "additionalProperties": false, - "properties": { - "data": {}, - "fragmentIdentifier": { - "type": "string" - }, - "id": { - "type": "string" - }, - "type": { - "const": "image-set", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Layout": { - "additionalProperties": false, - "properties": { - "children": { - "anyOf": [ - { - "additionalItems": { - "$ref": "#/definitions/ContentTree.transit.LayoutSlot" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.Heading" - }, - { - "$ref": "#/definitions/ContentTree.transit.LayoutImage" - } - ], - "minItems": 2, - "type": "array" - }, - { - "additionalItems": { - "$ref": "#/definitions/ContentTree.transit.LayoutSlot" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.Heading" - } - ], - "minItems": 1, - "type": "array" - }, - { - "items": { - "$ref": "#/definitions/ContentTree.transit.LayoutSlot" - }, - "type": "array" - } - ] - }, - "data": {}, - "layoutName": { - "enum": [ - "auto", - "card", - "timeline" - ], - "type": "string" - }, - "layoutWidth": { - "type": "string" - }, - "type": { - "const": "layout", - "type": "string" - } - }, - "required": [ - "children", - "layoutName", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.transit.LayoutImage": { - "additionalProperties": false, - "properties": { - "alt": { - "type": "string" - }, - "caption": { - "type": "string" - }, - "credit": { - "type": "string" - }, - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "layout-image", - "type": "string" - } - }, - "required": [ - "alt", - "caption", - "credit", - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.LayoutSlot": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Heading" - }, - { - "$ref": "#/definitions/ContentTree.transit.LayoutImage" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "layout-slot", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.LayoutWidth": { - "enum": [ - "auto", - "full-bleed", - "full-grid", - "full-width", - "in-line", - "inset-left", - "inset-right", - "mid-grid" - ], - "type": "string" - }, - "ContentTree.transit.Link": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "title": { - "type": "string" - }, - "type": { - "const": "link", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "children", - "title", - "type", - "url" - ], - "type": "object" - }, - "ContentTree.transit.List": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.ListItem" - }, - "type": "array" - }, - "data": {}, - "ordered": { - "type": "boolean" - }, - "type": { - "const": "list", - "type": "string" - } - }, - "required": [ - "children", - "ordered", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ListItem": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - { - "$ref": "#/definitions/ContentTree.transit.Break" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strong" - }, - { - "$ref": "#/definitions/ContentTree.transit.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.transit.Link" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "list-item", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Paragraph": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "paragraph", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Phrasing": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - { - "$ref": "#/definitions/ContentTree.transit.Break" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strong" - }, - { - "$ref": "#/definitions/ContentTree.transit.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.transit.Link" - } - ] - }, - "ContentTree.transit.Pullquote": { - "additionalProperties": false, - "properties": { - "data": {}, - "source": { - "type": "string" - }, - "text": { - "type": "string" - }, - "type": { - "const": "pullquote", - "type": "string" - } - }, - "required": [ - "text", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Recommended": { - "additionalProperties": false, - "properties": { - "data": {}, - "heading": { - "type": "string" - }, - "id": { - "type": "string" - }, - "teaserTitleOverride": { - "type": "string" - }, - "type": { - "const": "recommended", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyBlock": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.ScrollySection" - }, - "type": "array" - }, - "data": {}, - "theme": { - "enum": [ - "sans", - "serif" - ], - "type": "string" - }, - "type": { - "const": "scrolly-block", - "type": "string" - } - }, - "required": [ - "children", - "theme", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyCopy": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.ScrollyHeading" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "scrolly-copy", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyHeading": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - "type": "array" - }, - "data": {}, - "level": { - "enum": [ - "chapter", - "heading", - "subheading" - ], - "type": "string" - }, - "type": { - "const": "scrolly-heading", - "type": "string" - } - }, - "required": [ - "children", - "level", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyImage": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "scrolly-image", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollySection": { - "additionalProperties": false, - "properties": { - "children": { - "additionalItems": { - "$ref": "#/definitions/ContentTree.transit.ScrollyCopy" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.ScrollyImage" - } - ], - "minItems": 1, - "type": "array" - }, - "data": {}, - "display": { - "enum": [ - "dark-background", - "light-background" - ], - "type": "string" - }, - "noBox": { - "const": true, - "type": "boolean" - }, - "position": { - "enum": [ - "center", - "left", - "right" - ], - "type": "string" - }, - "transition": { - "enum": [ - "delay-after", - "delay-before" - ], - "type": "string" - }, - "type": { - "const": "scrolly-section", - "type": "string" - } - }, - "required": [ - "children", - "display", - "position", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Strikethrough": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "strikethrough", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Strong": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "strong", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Table": { - "additionalProperties": false, - "properties": { - "children": { - "anyOf": [ - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableCaption" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableFooter" - } - ], - "maxItems": 3, - "minItems": 3, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableCaption" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - } - ], - "maxItems": 2, - "minItems": 2, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableFooter" - } - ], - "maxItems": 2, - "minItems": 2, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - } - ], - "maxItems": 1, - "minItems": 1, - "type": "array" - } - ] - }, - "collapseAfterHowManyRows": { - "type": "number" - }, - "columnSettings": { - "items": { - "additionalProperties": false, - "properties": { - "hideOnMobile": { - "type": "boolean" - }, - "sortType": { - "enum": [ - "currency", - "date", - "number", - "percent", - "text" - ], - "type": "string" - }, - "sortable": { - "type": "boolean" - } - }, - "required": [ - "hideOnMobile", - "sortType", - "sortable" - ], - "type": "object" - }, - "type": "array" - }, - "compact": { - "type": "boolean" - }, - "data": {}, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.transit.TableLayoutWidth" - }, - "responsiveStyle": { - "enum": [ - "flat", - "overflow", - "scroll" - ], - "type": "string" - }, - "stripes": { - "type": "boolean" - }, - "type": { - "const": "table", - "type": "string" - } - }, - "required": [ - "children", - "columnSettings", - "compact", - "layoutWidth", - "responsiveStyle", - "stripes", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableBody": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.TableRow" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-body", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableCaption": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-caption", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableCell": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "columnSpan": { - "type": "number" - }, - "data": {}, - "heading": { - "type": "boolean" - }, - "rowSpan": { - "type": "number" - }, - "type": { - "const": "table-cell", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableFooter": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-footer", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableLayoutWidth": { - "enum": [ - "auto", - "full-bleed", - "full-grid", - "inset-left", - "inset-right" - ], - "type": "string" - }, - "ContentTree.transit.TableRow": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.TableCell" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-row", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Text": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "text", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "type", - "value" - ], - "type": "object" - }, - "ContentTree.transit.ThematicBreak": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "thematic-break", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "ContentTree.transit.Tweet": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "tweet", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Video": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "video", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.YoutubeVideo": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "youtube-video", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "type", - "url" - ], - "type": "object" - } - }, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.BodyBlock" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "body", - "type": "string" - }, - "version": { - "type": "number" - } - }, - "required": [ - "children", - "type", - "version" - ], - "type": "object" -} - diff --git a/schemas/content-tree.schema.json b/schemas/content-tree.schema.json index 703a637..e69de29 100644 --- a/schemas/content-tree.schema.json +++ b/schemas/content-tree.schema.json @@ -1,1949 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "definitions": { - "ContentTree.full.BigNumber": { - "additionalProperties": false, - "properties": { - "data": {}, - "description": { - "type": "string" - }, - "number": { - "type": "string" - }, - "type": { - "const": "big-number", - "type": "string" - } - }, - "required": [ - "description", - "number", - "type" - ], - "type": "object" - }, - "ContentTree.full.Blockquote": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.full.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.full.Text" - }, - { - "$ref": "#/definitions/ContentTree.full.Break" - }, - { - "$ref": "#/definitions/ContentTree.full.Strong" - }, - { - "$ref": "#/definitions/ContentTree.full.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.full.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.full.Link" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "blockquote", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.Body": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.BodyBlock" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "body", - "type": "string" - }, - "version": { - "type": "number" - } - }, - "required": [ - "children", - "type", - "version" - ], - "type": "object" - }, - "ContentTree.full.BodyBlock": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.full.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.full.Heading" - }, - { - "$ref": "#/definitions/ContentTree.full.ImageSet" - }, - { - "$ref": "#/definitions/ContentTree.full.Flourish" - }, - { - "$ref": "#/definitions/ContentTree.full.BigNumber" - }, - { - "$ref": "#/definitions/ContentTree.full.CustomCodeComponent" - }, - { - "$ref": "#/definitions/ContentTree.full.Layout" - }, - { - "$ref": "#/definitions/ContentTree.full.List" - }, - { - "$ref": "#/definitions/ContentTree.full.Blockquote" - }, - { - "$ref": "#/definitions/ContentTree.full.Pullquote" - }, - { - "$ref": "#/definitions/ContentTree.full.ScrollyBlock" - }, - { - "$ref": "#/definitions/ContentTree.full.ThematicBreak" - }, - { - "$ref": "#/definitions/ContentTree.full.Table" - }, - { - "$ref": "#/definitions/ContentTree.full.Recommended" - }, - { - "$ref": "#/definitions/ContentTree.full.Tweet" - }, - { - "$ref": "#/definitions/ContentTree.full.Video" - }, - { - "$ref": "#/definitions/ContentTree.full.YoutubeVideo" - }, - { - "$ref": "#/definitions/ContentTree.full.Text" - } - ] - }, - "ContentTree.full.Break": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "break", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "ContentTree.full.CustomCodeComponent": { - "additionalProperties": false, - "properties": { - "attributes": { - "additionalProperties": { - "type": [ - "string", - "boolean" - ] - }, - "description": "Configuration data to be passed to the component.", - "type": "object" - }, - "attributesLastModified": { - "description": "Last date-time when the attributes for this block were modified, in ISO-8601 format.", - "type": "string" - }, - "data": {}, - "id": { - "description": "Id taken from the CAPI url", - "type": "string" - }, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.full.LayoutWidth", - "description": "How the component should be presented in the article page according to the column layout system" - }, - "path": { - "description": "Repository for the code of the component in the format \"[github org]/[github repo]/[component name]\".", - "type": "string" - }, - "type": { - "const": "custom-code-component", - "description": "Component type", - "type": "string" - }, - "versionRange": { - "description": "Semantic version of the code of the component, e.g. \"^0.3.5\".", - "type": "string" - } - }, - "required": [ - "attributes", - "attributesLastModified", - "id", - "layoutWidth", - "path", - "type", - "versionRange" - ], - "type": "object" - }, - "ContentTree.full.Emphasis": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "emphasis", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.Flourish": { - "additionalProperties": false, - "properties": { - "data": {}, - "description": { - "type": "string" - }, - "fallbackImage": { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "desktop", - "mobile", - "square", - "square-ftedit", - "standard", - "standard-inline", - "wide" - ], - "type": "string" - }, - "height": { - "type": "number" - }, - "id": { - "type": "string" - }, - "sourceSet": { - "items": { - "additionalProperties": false, - "properties": { - "dpr": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "dpr", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "format", - "height", - "id", - "url", - "width" - ], - "type": "object" - }, - "flourishType": { - "type": "string" - }, - "fragmentIdentifier": { - "type": "string" - }, - "id": { - "type": "string" - }, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.full.FlourishLayoutWidth" - }, - "timestamp": { - "type": "string" - }, - "type": { - "const": "flourish", - "type": "string" - } - }, - "required": [ - "flourishType", - "id", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.full.FlourishLayoutWidth": { - "enum": [ - "full-grid", - "in-line" - ], - "type": "string" - }, - "ContentTree.full.Heading": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Text" - }, - "type": "array" - }, - "data": {}, - "fragmentIdentifier": { - "type": "string" - }, - "level": { - "enum": [ - "chapter", - "label", - "subheading" - ], - "type": "string" - }, - "type": { - "const": "heading", - "type": "string" - } - }, - "required": [ - "children", - "level", - "type" - ], - "type": "object" - }, - "ContentTree.full.ImageSet": { - "additionalProperties": false, - "properties": { - "data": {}, - "fragmentIdentifier": { - "type": "string" - }, - "id": { - "type": "string" - }, - "picture": { - "additionalProperties": false, - "properties": { - "alt": { - "type": "string" - }, - "caption": { - "type": "string" - }, - "credit": { - "type": "string" - }, - "fallbackImage": { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "desktop", - "mobile", - "square", - "square-ftedit", - "standard", - "standard-inline", - "wide" - ], - "type": "string" - }, - "height": { - "type": "number" - }, - "id": { - "type": "string" - }, - "sourceSet": { - "items": { - "additionalProperties": false, - "properties": { - "dpr": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "dpr", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "format", - "height", - "id", - "url", - "width" - ], - "type": "object" - }, - "imageType": { - "enum": [ - "graphic", - "image" - ], - "type": "string" - }, - "images": { - "items": { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "desktop", - "mobile", - "square", - "square-ftedit", - "standard", - "standard-inline", - "wide" - ], - "type": "string" - }, - "height": { - "type": "number" - }, - "id": { - "type": "string" - }, - "sourceSet": { - "items": { - "additionalProperties": false, - "properties": { - "dpr": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "dpr", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "format", - "height", - "id", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "layoutWidth": { - "type": "string" - } - }, - "required": [ - "alt", - "caption", - "credit", - "fallbackImage", - "imageType", - "images", - "layoutWidth" - ], - "type": "object" - }, - "type": { - "const": "image-set", - "type": "string" - } - }, - "required": [ - "id", - "picture", - "type" - ], - "type": "object" - }, - "ContentTree.full.Layout": { - "additionalProperties": false, - "properties": { - "children": { - "anyOf": [ - { - "additionalItems": { - "$ref": "#/definitions/ContentTree.full.LayoutSlot" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.full.Heading" - }, - { - "$ref": "#/definitions/ContentTree.full.LayoutImage" - } - ], - "minItems": 2, - "type": "array" - }, - { - "additionalItems": { - "$ref": "#/definitions/ContentTree.full.LayoutSlot" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.full.Heading" - } - ], - "minItems": 1, - "type": "array" - }, - { - "items": { - "$ref": "#/definitions/ContentTree.full.LayoutSlot" - }, - "type": "array" - } - ] - }, - "data": {}, - "layoutName": { - "enum": [ - "auto", - "card", - "timeline" - ], - "type": "string" - }, - "layoutWidth": { - "type": "string" - }, - "type": { - "const": "layout", - "type": "string" - } - }, - "required": [ - "children", - "layoutName", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.full.LayoutImage": { - "additionalProperties": false, - "properties": { - "alt": { - "type": "string" - }, - "caption": { - "type": "string" - }, - "credit": { - "type": "string" - }, - "data": {}, - "id": { - "type": "string" - }, - "picture": { - "additionalProperties": false, - "properties": { - "alt": { - "type": "string" - }, - "caption": { - "type": "string" - }, - "credit": { - "type": "string" - }, - "fallbackImage": { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "desktop", - "mobile", - "square", - "square-ftedit", - "standard", - "standard-inline", - "wide" - ], - "type": "string" - }, - "height": { - "type": "number" - }, - "id": { - "type": "string" - }, - "sourceSet": { - "items": { - "additionalProperties": false, - "properties": { - "dpr": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "dpr", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "format", - "height", - "id", - "url", - "width" - ], - "type": "object" - }, - "imageType": { - "enum": [ - "graphic", - "image" - ], - "type": "string" - }, - "images": { - "items": { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "desktop", - "mobile", - "square", - "square-ftedit", - "standard", - "standard-inline", - "wide" - ], - "type": "string" - }, - "height": { - "type": "number" - }, - "id": { - "type": "string" - }, - "sourceSet": { - "items": { - "additionalProperties": false, - "properties": { - "dpr": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "dpr", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "format", - "height", - "id", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "layoutWidth": { - "type": "string" - } - }, - "required": [ - "alt", - "caption", - "credit", - "fallbackImage", - "imageType", - "images", - "layoutWidth" - ], - "type": "object" - }, - "type": { - "const": "layout-image", - "type": "string" - } - }, - "required": [ - "alt", - "caption", - "credit", - "id", - "picture", - "type" - ], - "type": "object" - }, - "ContentTree.full.LayoutSlot": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.full.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.full.Heading" - }, - { - "$ref": "#/definitions/ContentTree.full.LayoutImage" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "layout-slot", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.LayoutWidth": { - "enum": [ - "auto", - "full-bleed", - "full-grid", - "full-width", - "in-line", - "inset-left", - "inset-right", - "mid-grid" - ], - "type": "string" - }, - "ContentTree.full.Link": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "data": {}, - "title": { - "type": "string" - }, - "type": { - "const": "link", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "children", - "title", - "type", - "url" - ], - "type": "object" - }, - "ContentTree.full.List": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.ListItem" - }, - "type": "array" - }, - "data": {}, - "ordered": { - "type": "boolean" - }, - "type": { - "const": "list", - "type": "string" - } - }, - "required": [ - "children", - "ordered", - "type" - ], - "type": "object" - }, - "ContentTree.full.ListItem": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.full.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.full.Text" - }, - { - "$ref": "#/definitions/ContentTree.full.Break" - }, - { - "$ref": "#/definitions/ContentTree.full.Strong" - }, - { - "$ref": "#/definitions/ContentTree.full.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.full.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.full.Link" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "list-item", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.Paragraph": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "paragraph", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.Phrasing": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.full.Text" - }, - { - "$ref": "#/definitions/ContentTree.full.Break" - }, - { - "$ref": "#/definitions/ContentTree.full.Strong" - }, - { - "$ref": "#/definitions/ContentTree.full.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.full.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.full.Link" - } - ] - }, - "ContentTree.full.Pullquote": { - "additionalProperties": false, - "properties": { - "data": {}, - "source": { - "type": "string" - }, - "text": { - "type": "string" - }, - "type": { - "const": "pullquote", - "type": "string" - } - }, - "required": [ - "text", - "type" - ], - "type": "object" - }, - "ContentTree.full.Recommended": { - "additionalProperties": false, - "properties": { - "data": {}, - "heading": { - "type": "string" - }, - "id": { - "type": "string" - }, - "teaser": { - "additionalProperties": false, - "properties": { - "firstPublishedDate": { - "type": "string" - }, - "id": { - "type": "string" - }, - "image": { - "additionalProperties": false, - "properties": { - "height": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "height", - "url", - "width" - ], - "type": "object" - }, - "indicators": { - "additionalProperties": false, - "properties": { - "accessLevel": { - "enum": [ - "free", - "premium", - "registered", - "subscribed" - ], - "type": "string" - }, - "isColumn": { - "type": "boolean" - }, - "isEditorsChoice": { - "type": "boolean" - }, - "isExclusive": { - "type": "boolean" - }, - "isOpinion": { - "type": "boolean" - }, - "isPodcast": { - "type": "boolean" - }, - "isScoop": { - "type": "boolean" - } - }, - "required": [ - "accessLevel" - ], - "type": "object" - }, - "metaAltLink": { - "additionalProperties": false, - "properties": { - "apiUrl": { - "type": "string" - }, - "directType": { - "type": "string" - }, - "id": { - "type": "string" - }, - "predicate": { - "type": "string" - }, - "prefLabel": { - "type": "string" - }, - "type": { - "type": "string" - }, - "types": { - "items": { - "type": "string" - }, - "type": "array" - }, - "url": { - "type": "string" - } - }, - "required": [ - "apiUrl", - "directType", - "id", - "predicate", - "prefLabel", - "type", - "types", - "url" - ], - "type": "object" - }, - "metaLink": { - "additionalProperties": false, - "properties": { - "apiUrl": { - "type": "string" - }, - "directType": { - "type": "string" - }, - "id": { - "type": "string" - }, - "predicate": { - "type": "string" - }, - "prefLabel": { - "type": "string" - }, - "type": { - "type": "string" - }, - "types": { - "items": { - "type": "string" - }, - "type": "array" - }, - "url": { - "type": "string" - } - }, - "required": [ - "apiUrl", - "directType", - "id", - "predicate", - "prefLabel", - "type", - "types", - "url" - ], - "type": "object" - }, - "metaPrefixText": { - "type": "string" - }, - "metaSuffixText": { - "type": "string" - }, - "publishedDate": { - "type": "string" - }, - "title": { - "type": "string" - }, - "type": { - "enum": [ - "article", - "audio", - "liveblog", - "package", - "paid-post", - "podcast", - "promoted-content", - "video" - ], - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "firstPublishedDate", - "id", - "image", - "indicators", - "publishedDate", - "title", - "type", - "url" - ], - "type": "object" - }, - "teaserTitleOverride": { - "type": "string" - }, - "type": { - "const": "recommended", - "type": "string" - } - }, - "required": [ - "id", - "teaser", - "type" - ], - "type": "object" - }, - "ContentTree.full.ScrollyBlock": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.ScrollySection" - }, - "type": "array" - }, - "data": {}, - "theme": { - "enum": [ - "sans", - "serif" - ], - "type": "string" - }, - "type": { - "const": "scrolly-block", - "type": "string" - } - }, - "required": [ - "children", - "theme", - "type" - ], - "type": "object" - }, - "ContentTree.full.ScrollyCopy": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.full.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.full.ScrollyHeading" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "scrolly-copy", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.ScrollyHeading": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Text" - }, - "type": "array" - }, - "data": {}, - "level": { - "enum": [ - "chapter", - "heading", - "subheading" - ], - "type": "string" - }, - "type": { - "const": "scrolly-heading", - "type": "string" - } - }, - "required": [ - "children", - "level", - "type" - ], - "type": "object" - }, - "ContentTree.full.ScrollyImage": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "picture": { - "additionalProperties": false, - "properties": { - "alt": { - "type": "string" - }, - "caption": { - "type": "string" - }, - "credit": { - "type": "string" - }, - "fallbackImage": { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "desktop", - "mobile", - "square", - "square-ftedit", - "standard", - "standard-inline", - "wide" - ], - "type": "string" - }, - "height": { - "type": "number" - }, - "id": { - "type": "string" - }, - "sourceSet": { - "items": { - "additionalProperties": false, - "properties": { - "dpr": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "dpr", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "format", - "height", - "id", - "url", - "width" - ], - "type": "object" - }, - "imageType": { - "enum": [ - "graphic", - "image" - ], - "type": "string" - }, - "images": { - "items": { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "desktop", - "mobile", - "square", - "square-ftedit", - "standard", - "standard-inline", - "wide" - ], - "type": "string" - }, - "height": { - "type": "number" - }, - "id": { - "type": "string" - }, - "sourceSet": { - "items": { - "additionalProperties": false, - "properties": { - "dpr": { - "type": "number" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "dpr", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "url": { - "type": "string" - }, - "width": { - "type": "number" - } - }, - "required": [ - "format", - "height", - "id", - "url", - "width" - ], - "type": "object" - }, - "type": "array" - }, - "layoutWidth": { - "type": "string" - } - }, - "required": [ - "alt", - "caption", - "credit", - "fallbackImage", - "imageType", - "images", - "layoutWidth" - ], - "type": "object" - }, - "type": { - "const": "scrolly-image", - "type": "string" - } - }, - "required": [ - "id", - "picture", - "type" - ], - "type": "object" - }, - "ContentTree.full.ScrollySection": { - "additionalProperties": false, - "properties": { - "children": { - "additionalItems": { - "$ref": "#/definitions/ContentTree.full.ScrollyCopy" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.full.ScrollyImage" - } - ], - "minItems": 1, - "type": "array" - }, - "data": {}, - "display": { - "enum": [ - "dark-background", - "light-background" - ], - "type": "string" - }, - "noBox": { - "const": true, - "type": "boolean" - }, - "position": { - "enum": [ - "center", - "left", - "right" - ], - "type": "string" - }, - "transition": { - "enum": [ - "delay-after", - "delay-before" - ], - "type": "string" - }, - "type": { - "const": "scrolly-section", - "type": "string" - } - }, - "required": [ - "children", - "display", - "position", - "type" - ], - "type": "object" - }, - "ContentTree.full.Strikethrough": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "strikethrough", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.Strong": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "strong", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.Table": { - "additionalProperties": false, - "properties": { - "children": { - "anyOf": [ - { - "items": [ - { - "$ref": "#/definitions/ContentTree.full.TableCaption" - }, - { - "$ref": "#/definitions/ContentTree.full.TableBody" - }, - { - "$ref": "#/definitions/ContentTree.full.TableFooter" - } - ], - "maxItems": 3, - "minItems": 3, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.full.TableCaption" - }, - { - "$ref": "#/definitions/ContentTree.full.TableBody" - } - ], - "maxItems": 2, - "minItems": 2, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.full.TableBody" - }, - { - "$ref": "#/definitions/ContentTree.full.TableFooter" - } - ], - "maxItems": 2, - "minItems": 2, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.full.TableBody" - } - ], - "maxItems": 1, - "minItems": 1, - "type": "array" - } - ] - }, - "collapseAfterHowManyRows": { - "type": "number" - }, - "columnSettings": { - "items": { - "additionalProperties": false, - "properties": { - "hideOnMobile": { - "type": "boolean" - }, - "sortType": { - "enum": [ - "currency", - "date", - "number", - "percent", - "text" - ], - "type": "string" - }, - "sortable": { - "type": "boolean" - } - }, - "required": [ - "hideOnMobile", - "sortType", - "sortable" - ], - "type": "object" - }, - "type": "array" - }, - "compact": { - "type": "boolean" - }, - "data": {}, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.full.TableLayoutWidth" - }, - "responsiveStyle": { - "enum": [ - "flat", - "overflow", - "scroll" - ], - "type": "string" - }, - "stripes": { - "type": "boolean" - }, - "type": { - "const": "table", - "type": "string" - } - }, - "required": [ - "children", - "columnSettings", - "compact", - "layoutWidth", - "responsiveStyle", - "stripes", - "type" - ], - "type": "object" - }, - "ContentTree.full.TableBody": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.TableRow" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-body", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.TableCaption": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-caption", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.TableCell": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "columnSpan": { - "type": "number" - }, - "data": {}, - "heading": { - "type": "boolean" - }, - "rowSpan": { - "type": "number" - }, - "type": { - "const": "table-cell", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.TableFooter": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-footer", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.TableLayoutWidth": { - "enum": [ - "auto", - "full-bleed", - "full-grid", - "inset-left", - "inset-right" - ], - "type": "string" - }, - "ContentTree.full.TableRow": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.full.TableCell" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-row", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.full.Text": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "text", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "type", - "value" - ], - "type": "object" - }, - "ContentTree.full.ThematicBreak": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "thematic-break", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "ContentTree.full.Tweet": { - "additionalProperties": false, - "properties": { - "data": {}, - "html": { - "type": "string" - }, - "id": { - "type": "string" - }, - "type": { - "const": "tweet", - "type": "string" - } - }, - "required": [ - "html", - "id", - "type" - ], - "type": "object" - }, - "ContentTree.full.Video": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "title": { - "type": "string" - }, - "type": { - "const": "video", - "type": "string" - } - }, - "required": [ - "id", - "title", - "type" - ], - "type": "object" - }, - "ContentTree.full.YoutubeVideo": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "youtube-video", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "type", - "url" - ], - "type": "object" - } - }, - "properties": { - "body": { - "$ref": "#/definitions/ContentTree.full.Body" - }, - "data": {}, - "type": { - "const": "root", - "type": "string" - } - }, - "required": [ - "body", - "type" - ], - "type": "object" -} - diff --git a/schemas/transit-tree.schema.json b/schemas/transit-tree.schema.json index 273226b..e69de29 100644 --- a/schemas/transit-tree.schema.json +++ b/schemas/transit-tree.schema.json @@ -1,1188 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "definitions": { - "ContentTree.transit.BigNumber": { - "additionalProperties": false, - "properties": { - "data": {}, - "description": { - "type": "string" - }, - "number": { - "type": "string" - }, - "type": { - "const": "big-number", - "type": "string" - } - }, - "required": [ - "description", - "number", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Blockquote": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - { - "$ref": "#/definitions/ContentTree.transit.Break" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strong" - }, - { - "$ref": "#/definitions/ContentTree.transit.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.transit.Link" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "blockquote", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Body": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.BodyBlock" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "body", - "type": "string" - }, - "version": { - "type": "number" - } - }, - "required": [ - "children", - "type", - "version" - ], - "type": "object" - }, - "ContentTree.transit.BodyBlock": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Heading" - }, - { - "$ref": "#/definitions/ContentTree.transit.ImageSet" - }, - { - "$ref": "#/definitions/ContentTree.transit.Flourish" - }, - { - "$ref": "#/definitions/ContentTree.transit.BigNumber" - }, - { - "$ref": "#/definitions/ContentTree.transit.CustomCodeComponent" - }, - { - "$ref": "#/definitions/ContentTree.transit.Layout" - }, - { - "$ref": "#/definitions/ContentTree.transit.List" - }, - { - "$ref": "#/definitions/ContentTree.transit.Blockquote" - }, - { - "$ref": "#/definitions/ContentTree.transit.Pullquote" - }, - { - "$ref": "#/definitions/ContentTree.transit.ScrollyBlock" - }, - { - "$ref": "#/definitions/ContentTree.transit.ThematicBreak" - }, - { - "$ref": "#/definitions/ContentTree.transit.Table" - }, - { - "$ref": "#/definitions/ContentTree.transit.Recommended" - }, - { - "$ref": "#/definitions/ContentTree.transit.Tweet" - }, - { - "$ref": "#/definitions/ContentTree.transit.Video" - }, - { - "$ref": "#/definitions/ContentTree.transit.YoutubeVideo" - }, - { - "$ref": "#/definitions/ContentTree.transit.Text" - } - ] - }, - "ContentTree.transit.Break": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "break", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "ContentTree.transit.CustomCodeComponent": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "description": "Id taken from the CAPI url", - "type": "string" - }, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.transit.LayoutWidth", - "description": "How the component should be presented in the article page according to the column layout system" - }, - "type": { - "const": "custom-code-component", - "description": "Component type", - "type": "string" - } - }, - "required": [ - "id", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Emphasis": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "emphasis", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Flourish": { - "additionalProperties": false, - "properties": { - "data": {}, - "description": { - "type": "string" - }, - "flourishType": { - "type": "string" - }, - "fragmentIdentifier": { - "type": "string" - }, - "id": { - "type": "string" - }, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.transit.FlourishLayoutWidth" - }, - "timestamp": { - "type": "string" - }, - "type": { - "const": "flourish", - "type": "string" - } - }, - "required": [ - "flourishType", - "id", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.transit.FlourishLayoutWidth": { - "enum": [ - "full-grid", - "in-line" - ], - "type": "string" - }, - "ContentTree.transit.Heading": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - "type": "array" - }, - "data": {}, - "fragmentIdentifier": { - "type": "string" - }, - "level": { - "enum": [ - "chapter", - "label", - "subheading" - ], - "type": "string" - }, - "type": { - "const": "heading", - "type": "string" - } - }, - "required": [ - "children", - "level", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ImageSet": { - "additionalProperties": false, - "properties": { - "data": {}, - "fragmentIdentifier": { - "type": "string" - }, - "id": { - "type": "string" - }, - "type": { - "const": "image-set", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Layout": { - "additionalProperties": false, - "properties": { - "children": { - "anyOf": [ - { - "additionalItems": { - "$ref": "#/definitions/ContentTree.transit.LayoutSlot" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.Heading" - }, - { - "$ref": "#/definitions/ContentTree.transit.LayoutImage" - } - ], - "minItems": 2, - "type": "array" - }, - { - "additionalItems": { - "$ref": "#/definitions/ContentTree.transit.LayoutSlot" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.Heading" - } - ], - "minItems": 1, - "type": "array" - }, - { - "items": { - "$ref": "#/definitions/ContentTree.transit.LayoutSlot" - }, - "type": "array" - } - ] - }, - "data": {}, - "layoutName": { - "enum": [ - "auto", - "card", - "timeline" - ], - "type": "string" - }, - "layoutWidth": { - "type": "string" - }, - "type": { - "const": "layout", - "type": "string" - } - }, - "required": [ - "children", - "layoutName", - "layoutWidth", - "type" - ], - "type": "object" - }, - "ContentTree.transit.LayoutImage": { - "additionalProperties": false, - "properties": { - "alt": { - "type": "string" - }, - "caption": { - "type": "string" - }, - "credit": { - "type": "string" - }, - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "layout-image", - "type": "string" - } - }, - "required": [ - "alt", - "caption", - "credit", - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.LayoutSlot": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Heading" - }, - { - "$ref": "#/definitions/ContentTree.transit.LayoutImage" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "layout-slot", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.LayoutWidth": { - "enum": [ - "auto", - "full-bleed", - "full-grid", - "full-width", - "in-line", - "inset-left", - "inset-right", - "mid-grid" - ], - "type": "string" - }, - "ContentTree.transit.Link": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "title": { - "type": "string" - }, - "type": { - "const": "link", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "children", - "title", - "type", - "url" - ], - "type": "object" - }, - "ContentTree.transit.List": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.ListItem" - }, - "type": "array" - }, - "data": {}, - "ordered": { - "type": "boolean" - }, - "type": { - "const": "list", - "type": "string" - } - }, - "required": [ - "children", - "ordered", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ListItem": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - { - "$ref": "#/definitions/ContentTree.transit.Break" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strong" - }, - { - "$ref": "#/definitions/ContentTree.transit.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.transit.Link" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "list-item", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Paragraph": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "paragraph", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Phrasing": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - { - "$ref": "#/definitions/ContentTree.transit.Break" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strong" - }, - { - "$ref": "#/definitions/ContentTree.transit.Emphasis" - }, - { - "$ref": "#/definitions/ContentTree.transit.Strikethrough" - }, - { - "$ref": "#/definitions/ContentTree.transit.Link" - } - ] - }, - "ContentTree.transit.Pullquote": { - "additionalProperties": false, - "properties": { - "data": {}, - "source": { - "type": "string" - }, - "text": { - "type": "string" - }, - "type": { - "const": "pullquote", - "type": "string" - } - }, - "required": [ - "text", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Recommended": { - "additionalProperties": false, - "properties": { - "data": {}, - "heading": { - "type": "string" - }, - "id": { - "type": "string" - }, - "teaserTitleOverride": { - "type": "string" - }, - "type": { - "const": "recommended", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyBlock": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.ScrollySection" - }, - "type": "array" - }, - "data": {}, - "theme": { - "enum": [ - "sans", - "serif" - ], - "type": "string" - }, - "type": { - "const": "scrolly-block", - "type": "string" - } - }, - "required": [ - "children", - "theme", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyCopy": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/ContentTree.transit.Paragraph" - }, - { - "$ref": "#/definitions/ContentTree.transit.ScrollyHeading" - } - ] - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "scrolly-copy", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyHeading": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Text" - }, - "type": "array" - }, - "data": {}, - "level": { - "enum": [ - "chapter", - "heading", - "subheading" - ], - "type": "string" - }, - "type": { - "const": "scrolly-heading", - "type": "string" - } - }, - "required": [ - "children", - "level", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollyImage": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "scrolly-image", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.ScrollySection": { - "additionalProperties": false, - "properties": { - "children": { - "additionalItems": { - "$ref": "#/definitions/ContentTree.transit.ScrollyCopy" - }, - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.ScrollyImage" - } - ], - "minItems": 1, - "type": "array" - }, - "data": {}, - "display": { - "enum": [ - "dark-background", - "light-background" - ], - "type": "string" - }, - "noBox": { - "const": true, - "type": "boolean" - }, - "position": { - "enum": [ - "center", - "left", - "right" - ], - "type": "string" - }, - "transition": { - "enum": [ - "delay-after", - "delay-before" - ], - "type": "string" - }, - "type": { - "const": "scrolly-section", - "type": "string" - } - }, - "required": [ - "children", - "display", - "position", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Strikethrough": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "strikethrough", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Strong": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "strong", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Table": { - "additionalProperties": false, - "properties": { - "children": { - "anyOf": [ - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableCaption" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableFooter" - } - ], - "maxItems": 3, - "minItems": 3, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableCaption" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - } - ], - "maxItems": 2, - "minItems": 2, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - }, - { - "$ref": "#/definitions/ContentTree.transit.TableFooter" - } - ], - "maxItems": 2, - "minItems": 2, - "type": "array" - }, - { - "items": [ - { - "$ref": "#/definitions/ContentTree.transit.TableBody" - } - ], - "maxItems": 1, - "minItems": 1, - "type": "array" - } - ] - }, - "collapseAfterHowManyRows": { - "type": "number" - }, - "columnSettings": { - "items": { - "additionalProperties": false, - "properties": { - "hideOnMobile": { - "type": "boolean" - }, - "sortType": { - "enum": [ - "currency", - "date", - "number", - "percent", - "text" - ], - "type": "string" - }, - "sortable": { - "type": "boolean" - } - }, - "required": [ - "hideOnMobile", - "sortType", - "sortable" - ], - "type": "object" - }, - "type": "array" - }, - "compact": { - "type": "boolean" - }, - "data": {}, - "layoutWidth": { - "$ref": "#/definitions/ContentTree.transit.TableLayoutWidth" - }, - "responsiveStyle": { - "enum": [ - "flat", - "overflow", - "scroll" - ], - "type": "string" - }, - "stripes": { - "type": "boolean" - }, - "type": { - "const": "table", - "type": "string" - } - }, - "required": [ - "children", - "columnSettings", - "compact", - "layoutWidth", - "responsiveStyle", - "stripes", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableBody": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.TableRow" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-body", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableCaption": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-caption", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableCell": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "columnSpan": { - "type": "number" - }, - "data": {}, - "heading": { - "type": "boolean" - }, - "rowSpan": { - "type": "number" - }, - "type": { - "const": "table-cell", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableFooter": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.Phrasing" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-footer", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.TableLayoutWidth": { - "enum": [ - "auto", - "full-bleed", - "full-grid", - "inset-left", - "inset-right" - ], - "type": "string" - }, - "ContentTree.transit.TableRow": { - "additionalProperties": false, - "properties": { - "children": { - "items": { - "$ref": "#/definitions/ContentTree.transit.TableCell" - }, - "type": "array" - }, - "data": {}, - "type": { - "const": "table-row", - "type": "string" - } - }, - "required": [ - "children", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Text": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "text", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "type", - "value" - ], - "type": "object" - }, - "ContentTree.transit.ThematicBreak": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "thematic-break", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "ContentTree.transit.Tweet": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "tweet", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.Video": { - "additionalProperties": false, - "properties": { - "data": {}, - "id": { - "type": "string" - }, - "type": { - "const": "video", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "ContentTree.transit.YoutubeVideo": { - "additionalProperties": false, - "properties": { - "data": {}, - "type": { - "const": "youtube-video", - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "type", - "url" - ], - "type": "object" - } - }, - "properties": { - "body": { - "$ref": "#/definitions/ContentTree.transit.Body" - }, - "data": {}, - "type": { - "const": "root", - "type": "string" - } - }, - "required": [ - "body", - "type" - ], - "type": "object" -} -