@financial-times/content-tree 0.13.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2165 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "additionalProperties": false,
4
+ "definitions": {
5
+ "ContentTree.transit.AcastPodcast": {
6
+ "additionalProperties": false,
7
+ "properties": {
8
+ "data": {},
9
+ "type": {
10
+ "const": "acast-podcast",
11
+ "type": "string"
12
+ },
13
+ "url": {
14
+ "description": "Acast Podcast embed url e.g. https://embed.acast.com/*",
15
+ "type": "string"
16
+ }
17
+ },
18
+ "propertyOrder": [
19
+ "type",
20
+ "url",
21
+ "data"
22
+ ],
23
+ "required": [
24
+ "type",
25
+ "url"
26
+ ],
27
+ "type": "object"
28
+ },
29
+ "ContentTree.transit.BigNumber": {
30
+ "additionalProperties": false,
31
+ "properties": {
32
+ "data": {},
33
+ "description": {
34
+ "type": "string"
35
+ },
36
+ "number": {
37
+ "type": "string"
38
+ },
39
+ "type": {
40
+ "const": "big-number",
41
+ "type": "string"
42
+ }
43
+ },
44
+ "propertyOrder": [
45
+ "type",
46
+ "number",
47
+ "description",
48
+ "data"
49
+ ],
50
+ "required": [
51
+ "description",
52
+ "number",
53
+ "type"
54
+ ],
55
+ "type": "object"
56
+ },
57
+ "ContentTree.transit.Blockquote": {
58
+ "additionalProperties": false,
59
+ "properties": {
60
+ "children": {
61
+ "items": {
62
+ "anyOf": [
63
+ {
64
+ "$ref": "#/definitions/ContentTree.transit.Paragraph"
65
+ },
66
+ {
67
+ "$ref": "#/definitions/ContentTree.transit.Text"
68
+ },
69
+ {
70
+ "$ref": "#/definitions/ContentTree.transit.Break"
71
+ },
72
+ {
73
+ "$ref": "#/definitions/ContentTree.transit.Strong"
74
+ },
75
+ {
76
+ "$ref": "#/definitions/ContentTree.transit.Emphasis"
77
+ },
78
+ {
79
+ "$ref": "#/definitions/ContentTree.transit.Strikethrough"
80
+ },
81
+ {
82
+ "$ref": "#/definitions/ContentTree.transit.Subscript"
83
+ },
84
+ {
85
+ "$ref": "#/definitions/ContentTree.transit.Superscript"
86
+ },
87
+ {
88
+ "$ref": "#/definitions/ContentTree.transit.Link"
89
+ },
90
+ {
91
+ "$ref": "#/definitions/ContentTree.transit.FindOutMoreLink"
92
+ }
93
+ ]
94
+ },
95
+ "type": "array"
96
+ },
97
+ "data": {},
98
+ "type": {
99
+ "const": "blockquote",
100
+ "type": "string"
101
+ }
102
+ },
103
+ "propertyOrder": [
104
+ "type",
105
+ "children",
106
+ "data"
107
+ ],
108
+ "required": [
109
+ "children",
110
+ "type"
111
+ ],
112
+ "type": "object"
113
+ },
114
+ "ContentTree.transit.Body": {
115
+ "additionalProperties": false,
116
+ "properties": {
117
+ "children": {
118
+ "items": {
119
+ "$ref": "#/definitions/ContentTree.transit.BodyBlock"
120
+ },
121
+ "type": "array"
122
+ },
123
+ "data": {},
124
+ "type": {
125
+ "const": "body",
126
+ "type": "string"
127
+ },
128
+ "version": {
129
+ "type": "number"
130
+ }
131
+ },
132
+ "propertyOrder": [
133
+ "type",
134
+ "version",
135
+ "children",
136
+ "data"
137
+ ],
138
+ "required": [
139
+ "children",
140
+ "type",
141
+ "version"
142
+ ],
143
+ "type": "object"
144
+ },
145
+ "ContentTree.transit.BodyBlock": {
146
+ "anyOf": [
147
+ {
148
+ "$ref": "#/definitions/ContentTree.transit.Paragraph"
149
+ },
150
+ {
151
+ "$ref": "#/definitions/ContentTree.transit.Heading"
152
+ },
153
+ {
154
+ "$ref": "#/definitions/ContentTree.transit.List"
155
+ },
156
+ {
157
+ "$ref": "#/definitions/ContentTree.transit.Blockquote"
158
+ },
159
+ {
160
+ "$ref": "#/definitions/ContentTree.transit.ThematicBreak"
161
+ },
162
+ {
163
+ "$ref": "#/definitions/ContentTree.transit.Text"
164
+ },
165
+ {
166
+ "$ref": "#/definitions/ContentTree.transit.AcastPodcast"
167
+ },
168
+ {
169
+ "$ref": "#/definitions/ContentTree.transit.BigNumber"
170
+ },
171
+ {
172
+ "$ref": "#/definitions/ContentTree.transit.Carousel"
173
+ },
174
+ {
175
+ "$ref": "#/definitions/ContentTree.transit.ClipSet"
176
+ },
177
+ {
178
+ "$ref": "#/definitions/ContentTree.transit.CustomCodeComponent"
179
+ },
180
+ {
181
+ "$ref": "#/definitions/ContentTree.transit.Definition"
182
+ },
183
+ {
184
+ "$ref": "#/definitions/ContentTree.transit.Flourish"
185
+ },
186
+ {
187
+ "$ref": "#/definitions/ContentTree.transit.ImagePair"
188
+ },
189
+ {
190
+ "$ref": "#/definitions/ContentTree.transit.ImageSet"
191
+ },
192
+ {
193
+ "$ref": "#/definitions/ContentTree.transit.InfoBox"
194
+ },
195
+ {
196
+ "$ref": "#/definitions/ContentTree.transit.InfoPair"
197
+ },
198
+ {
199
+ "$ref": "#/definitions/ContentTree.transit.InNumbers"
200
+ },
201
+ {
202
+ "$ref": "#/definitions/ContentTree.transit.Layout"
203
+ },
204
+ {
205
+ "$ref": "#/definitions/ContentTree.transit.Pullquote"
206
+ },
207
+ {
208
+ "$ref": "#/definitions/ContentTree.transit.Recommended"
209
+ },
210
+ {
211
+ "$ref": "#/definitions/ContentTree.transit.RecommendedList"
212
+ },
213
+ {
214
+ "$ref": "#/definitions/ContentTree.transit.ScrollyBlock"
215
+ },
216
+ {
217
+ "$ref": "#/definitions/ContentTree.transit.Table"
218
+ },
219
+ {
220
+ "$ref": "#/definitions/ContentTree.transit.Timeline"
221
+ },
222
+ {
223
+ "$ref": "#/definitions/ContentTree.transit.Tweet"
224
+ },
225
+ {
226
+ "$ref": "#/definitions/ContentTree.transit.Video"
227
+ },
228
+ {
229
+ "$ref": "#/definitions/ContentTree.transit.VimeoVideo"
230
+ },
231
+ {
232
+ "$ref": "#/definitions/ContentTree.transit.YoutubeVideo"
233
+ }
234
+ ]
235
+ },
236
+ "ContentTree.transit.Break": {
237
+ "additionalProperties": false,
238
+ "properties": {
239
+ "data": {},
240
+ "type": {
241
+ "const": "break",
242
+ "type": "string"
243
+ }
244
+ },
245
+ "propertyOrder": [
246
+ "type",
247
+ "data"
248
+ ],
249
+ "required": [
250
+ "type"
251
+ ],
252
+ "type": "object"
253
+ },
254
+ "ContentTree.transit.Card": {
255
+ "additionalProperties": false,
256
+ "description": "A card describes a subject with images and text",
257
+ "properties": {
258
+ "children": {
259
+ "items": {
260
+ "$ref": "#/definitions/ContentTree.transit.CardChildren"
261
+ },
262
+ "type": "array"
263
+ },
264
+ "data": {},
265
+ "title": {
266
+ "description": "The title of this card",
267
+ "type": "string"
268
+ },
269
+ "type": {
270
+ "const": "card",
271
+ "type": "string"
272
+ }
273
+ },
274
+ "propertyOrder": [
275
+ "type",
276
+ "title",
277
+ "children",
278
+ "data"
279
+ ],
280
+ "required": [
281
+ "children",
282
+ "type"
283
+ ],
284
+ "type": "object"
285
+ },
286
+ "ContentTree.transit.CardChildren": {
287
+ "anyOf": [
288
+ {
289
+ "$ref": "#/definitions/ContentTree.transit.Paragraph"
290
+ },
291
+ {
292
+ "$ref": "#/definitions/ContentTree.transit.Heading"
293
+ },
294
+ {
295
+ "$ref": "#/definitions/ContentTree.transit.List"
296
+ },
297
+ {
298
+ "$ref": "#/definitions/ContentTree.transit.Blockquote"
299
+ },
300
+ {
301
+ "$ref": "#/definitions/ContentTree.transit.ThematicBreak"
302
+ },
303
+ {
304
+ "$ref": "#/definitions/ContentTree.transit.Text"
305
+ },
306
+ {
307
+ "$ref": "#/definitions/ContentTree.transit.ImageSet"
308
+ }
309
+ ],
310
+ "description": "Allowed children for a card"
311
+ },
312
+ "ContentTree.transit.Carousel": {
313
+ "additionalProperties": false,
314
+ "properties": {
315
+ "children": {
316
+ "description": "Carousel item",
317
+ "items": {
318
+ "$ref": "#/definitions/ContentTree.transit.CarouselCard"
319
+ },
320
+ "maxItems": 10,
321
+ "minItems": 4,
322
+ "sparkRepeater": true,
323
+ "type": "array"
324
+ },
325
+ "data": {},
326
+ "id": {
327
+ "description": "unique identifier required for component tracking",
328
+ "type": "string"
329
+ },
330
+ "standfirst": {
331
+ "sparkMapNodeType": "textInput",
332
+ "type": "string"
333
+ },
334
+ "title": {
335
+ "sparkMapNodeType": "textInput",
336
+ "type": "string"
337
+ },
338
+ "type": {
339
+ "const": "carousel",
340
+ "type": "string"
341
+ }
342
+ },
343
+ "propertyOrder": [
344
+ "type",
345
+ "id",
346
+ "title",
347
+ "standfirst",
348
+ "children",
349
+ "data"
350
+ ],
351
+ "required": [
352
+ "children",
353
+ "id",
354
+ "type"
355
+ ],
356
+ "sparkGenerateStoryblock": true,
357
+ "type": "object"
358
+ },
359
+ "ContentTree.transit.CarouselCard": {
360
+ "additionalProperties": false,
361
+ "properties": {
362
+ "additionalInfo": {
363
+ "description": "Details (optional, 60 characters recommended)",
364
+ "sparkMapNodeType": "textInput",
365
+ "type": "string"
366
+ },
367
+ "children": {
368
+ "description": "Image",
369
+ "items": [
370
+ {
371
+ "$ref": "#/definitions/ContentTree.transit.ImageSet"
372
+ }
373
+ ],
374
+ "maxItems": 1,
375
+ "minItems": 1,
376
+ "sparkMapNodeType": "image",
377
+ "type": "array"
378
+ },
379
+ "copy": {
380
+ "description": "Body text (200 characters recommended)",
381
+ "sparkMapNodeType": "textInput",
382
+ "type": "string"
383
+ },
384
+ "data": {},
385
+ "id": {
386
+ "description": "unique identifier required for component tracking",
387
+ "type": "string"
388
+ },
389
+ "title": {
390
+ "description": "Heading (60 characters recommended)",
391
+ "sparkMapNodeType": "textInput",
392
+ "type": "string"
393
+ },
394
+ "type": {
395
+ "const": "carousel-card",
396
+ "type": "string"
397
+ }
398
+ },
399
+ "propertyOrder": [
400
+ "type",
401
+ "id",
402
+ "children",
403
+ "title",
404
+ "copy",
405
+ "additionalInfo",
406
+ "data"
407
+ ],
408
+ "required": [
409
+ "children",
410
+ "copy",
411
+ "id",
412
+ "title",
413
+ "type"
414
+ ],
415
+ "type": "object"
416
+ },
417
+ "ContentTree.transit.ClipSet": {
418
+ "additionalProperties": false,
419
+ "properties": {
420
+ "autoplay": {
421
+ "type": "boolean"
422
+ },
423
+ "data": {},
424
+ "fragmentIdentifier": {
425
+ "type": "string"
426
+ },
427
+ "id": {
428
+ "type": "string"
429
+ },
430
+ "layoutWidth": {
431
+ "$ref": "#/definitions/ContentTree.transit.ClipSetLayoutWidth"
432
+ },
433
+ "loop": {
434
+ "type": "boolean"
435
+ },
436
+ "muted": {
437
+ "type": "boolean"
438
+ },
439
+ "type": {
440
+ "const": "clip-set",
441
+ "type": "string"
442
+ }
443
+ },
444
+ "propertyOrder": [
445
+ "type",
446
+ "id",
447
+ "layoutWidth",
448
+ "autoplay",
449
+ "fragmentIdentifier",
450
+ "loop",
451
+ "muted",
452
+ "data"
453
+ ],
454
+ "required": [
455
+ "id",
456
+ "layoutWidth",
457
+ "type"
458
+ ],
459
+ "type": "object"
460
+ },
461
+ "ContentTree.transit.ClipSetLayoutWidth": {
462
+ "enum": [
463
+ "full-grid",
464
+ "in-line",
465
+ "mid-grid"
466
+ ],
467
+ "type": "string"
468
+ },
469
+ "ContentTree.transit.CustomCodeComponent": {
470
+ "additionalProperties": false,
471
+ "properties": {
472
+ "data": {},
473
+ "id": {
474
+ "description": "Id taken from the CAPI url",
475
+ "type": "string"
476
+ },
477
+ "layoutWidth": {
478
+ "$ref": "#/definitions/ContentTree.transit.LayoutWidth",
479
+ "description": "How the component should be presented in the article page according to the column layout system"
480
+ },
481
+ "type": {
482
+ "const": "custom-code-component",
483
+ "description": "Component type",
484
+ "type": "string"
485
+ }
486
+ },
487
+ "propertyOrder": [
488
+ "type",
489
+ "id",
490
+ "layoutWidth",
491
+ "data"
492
+ ],
493
+ "required": [
494
+ "id",
495
+ "layoutWidth",
496
+ "type"
497
+ ],
498
+ "type": "object"
499
+ },
500
+ "ContentTree.transit.Definition": {
501
+ "additionalProperties": false,
502
+ "description": "A definition has a term and a related description. It is used to describe a term.",
503
+ "properties": {
504
+ "data": {},
505
+ "description": {
506
+ "type": "string"
507
+ },
508
+ "term": {
509
+ "type": "string"
510
+ },
511
+ "type": {
512
+ "const": "definition",
513
+ "type": "string"
514
+ }
515
+ },
516
+ "propertyOrder": [
517
+ "type",
518
+ "term",
519
+ "description",
520
+ "data"
521
+ ],
522
+ "required": [
523
+ "description",
524
+ "term",
525
+ "type"
526
+ ],
527
+ "type": "object"
528
+ },
529
+ "ContentTree.transit.Emphasis": {
530
+ "additionalProperties": false,
531
+ "properties": {
532
+ "children": {
533
+ "items": {
534
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
535
+ },
536
+ "type": "array"
537
+ },
538
+ "data": {},
539
+ "type": {
540
+ "const": "emphasis",
541
+ "type": "string"
542
+ }
543
+ },
544
+ "propertyOrder": [
545
+ "type",
546
+ "children",
547
+ "data"
548
+ ],
549
+ "required": [
550
+ "children",
551
+ "type"
552
+ ],
553
+ "type": "object"
554
+ },
555
+ "ContentTree.transit.FindOutMoreLink": {
556
+ "additionalProperties": false,
557
+ "properties": {
558
+ "children": {
559
+ "items": [
560
+ {
561
+ "anyOf": [
562
+ {
563
+ "$ref": "#/definitions/ContentTree.transit.Text"
564
+ },
565
+ {
566
+ "$ref": "#/definitions/ContentTree.transit.Strong"
567
+ },
568
+ {
569
+ "$ref": "#/definitions/ContentTree.transit.Emphasis"
570
+ }
571
+ ]
572
+ }
573
+ ],
574
+ "maxItems": 1,
575
+ "minItems": 1,
576
+ "type": "array"
577
+ },
578
+ "data": {},
579
+ "type": {
580
+ "const": "find-out-more-link",
581
+ "type": "string"
582
+ },
583
+ "url": {
584
+ "type": "string"
585
+ }
586
+ },
587
+ "propertyOrder": [
588
+ "type",
589
+ "url",
590
+ "children",
591
+ "data"
592
+ ],
593
+ "required": [
594
+ "children",
595
+ "type",
596
+ "url"
597
+ ],
598
+ "type": "object"
599
+ },
600
+ "ContentTree.transit.Flourish": {
601
+ "additionalProperties": false,
602
+ "properties": {
603
+ "data": {},
604
+ "description": {
605
+ "type": "string"
606
+ },
607
+ "flourishType": {
608
+ "type": "string"
609
+ },
610
+ "fragmentIdentifier": {
611
+ "type": "string"
612
+ },
613
+ "id": {
614
+ "type": "string"
615
+ },
616
+ "layoutWidth": {
617
+ "$ref": "#/definitions/ContentTree.transit.FlourishLayoutWidth"
618
+ },
619
+ "timestamp": {
620
+ "type": "string"
621
+ },
622
+ "type": {
623
+ "const": "flourish",
624
+ "type": "string"
625
+ }
626
+ },
627
+ "propertyOrder": [
628
+ "type",
629
+ "id",
630
+ "layoutWidth",
631
+ "flourishType",
632
+ "description",
633
+ "timestamp",
634
+ "fragmentIdentifier",
635
+ "data"
636
+ ],
637
+ "required": [
638
+ "flourishType",
639
+ "id",
640
+ "layoutWidth",
641
+ "type"
642
+ ],
643
+ "type": "object"
644
+ },
645
+ "ContentTree.transit.FlourishLayoutWidth": {
646
+ "enum": [
647
+ "full-grid",
648
+ "in-line"
649
+ ],
650
+ "type": "string"
651
+ },
652
+ "ContentTree.transit.Heading": {
653
+ "additionalProperties": false,
654
+ "properties": {
655
+ "children": {
656
+ "items": {
657
+ "$ref": "#/definitions/ContentTree.transit.Text"
658
+ },
659
+ "type": "array"
660
+ },
661
+ "data": {},
662
+ "fragmentIdentifier": {
663
+ "type": "string"
664
+ },
665
+ "level": {
666
+ "enum": [
667
+ "chapter",
668
+ "label",
669
+ "subheading"
670
+ ],
671
+ "type": "string"
672
+ },
673
+ "type": {
674
+ "const": "heading",
675
+ "type": "string"
676
+ }
677
+ },
678
+ "propertyOrder": [
679
+ "type",
680
+ "children",
681
+ "level",
682
+ "fragmentIdentifier",
683
+ "data"
684
+ ],
685
+ "required": [
686
+ "children",
687
+ "level",
688
+ "type"
689
+ ],
690
+ "type": "object"
691
+ },
692
+ "ContentTree.transit.ImagePair": {
693
+ "additionalProperties": false,
694
+ "properties": {
695
+ "children": {
696
+ "items": [
697
+ {
698
+ "$ref": "#/definitions/ContentTree.transit.ImageSet"
699
+ },
700
+ {
701
+ "$ref": "#/definitions/ContentTree.transit.ImageSet"
702
+ }
703
+ ],
704
+ "maxItems": 2,
705
+ "minItems": 2,
706
+ "type": "array"
707
+ },
708
+ "data": {},
709
+ "type": {
710
+ "const": "image-pair",
711
+ "type": "string"
712
+ }
713
+ },
714
+ "propertyOrder": [
715
+ "type",
716
+ "children",
717
+ "data"
718
+ ],
719
+ "required": [
720
+ "children",
721
+ "type"
722
+ ],
723
+ "type": "object"
724
+ },
725
+ "ContentTree.transit.ImageSet": {
726
+ "additionalProperties": false,
727
+ "properties": {
728
+ "data": {},
729
+ "fragmentIdentifier": {
730
+ "type": "string"
731
+ },
732
+ "id": {
733
+ "type": "string"
734
+ },
735
+ "type": {
736
+ "const": "image-set",
737
+ "type": "string"
738
+ }
739
+ },
740
+ "propertyOrder": [
741
+ "type",
742
+ "id",
743
+ "fragmentIdentifier",
744
+ "data"
745
+ ],
746
+ "required": [
747
+ "id",
748
+ "type"
749
+ ],
750
+ "type": "object"
751
+ },
752
+ "ContentTree.transit.InNumbers": {
753
+ "additionalProperties": false,
754
+ "description": "InNumbers represents a set of numbers with related descriptions.",
755
+ "properties": {
756
+ "children": {
757
+ "items": [
758
+ {
759
+ "$ref": "#/definitions/ContentTree.transit.Definition"
760
+ },
761
+ {
762
+ "$ref": "#/definitions/ContentTree.transit.Definition"
763
+ },
764
+ {
765
+ "$ref": "#/definitions/ContentTree.transit.Definition"
766
+ }
767
+ ],
768
+ "maxItems": 3,
769
+ "minItems": 3,
770
+ "type": "array"
771
+ },
772
+ "data": {},
773
+ "title": {
774
+ "description": "The title for the InNumbers",
775
+ "type": "string"
776
+ },
777
+ "type": {
778
+ "const": "in-numbers",
779
+ "type": "string"
780
+ }
781
+ },
782
+ "propertyOrder": [
783
+ "type",
784
+ "title",
785
+ "children",
786
+ "data"
787
+ ],
788
+ "required": [
789
+ "children",
790
+ "type"
791
+ ],
792
+ "type": "object"
793
+ },
794
+ "ContentTree.transit.InfoBox": {
795
+ "additionalProperties": false,
796
+ "description": "An info box describes a subject via a single card",
797
+ "properties": {
798
+ "children": {
799
+ "items": [
800
+ {
801
+ "$ref": "#/definitions/ContentTree.transit.Card"
802
+ }
803
+ ],
804
+ "maxItems": 1,
805
+ "minItems": 1,
806
+ "type": "array"
807
+ },
808
+ "data": {},
809
+ "layoutWidth": {
810
+ "$ref": "#/definitions/ContentTree.transit.InfoBoxLayoutWidth",
811
+ "description": "The layout width supported by this node"
812
+ },
813
+ "type": {
814
+ "const": "info-box",
815
+ "type": "string"
816
+ }
817
+ },
818
+ "propertyOrder": [
819
+ "type",
820
+ "layoutWidth",
821
+ "children",
822
+ "data"
823
+ ],
824
+ "required": [
825
+ "children",
826
+ "layoutWidth",
827
+ "type"
828
+ ],
829
+ "type": "object"
830
+ },
831
+ "ContentTree.transit.InfoBoxLayoutWidth": {
832
+ "description": "Allowed layout widths for an InfoBox.",
833
+ "enum": [
834
+ "in-line",
835
+ "inset-left"
836
+ ],
837
+ "type": "string"
838
+ },
839
+ "ContentTree.transit.InfoPair": {
840
+ "additionalProperties": false,
841
+ "description": "InfoPair provides exactly two cards.",
842
+ "properties": {
843
+ "children": {
844
+ "items": [
845
+ {
846
+ "$ref": "#/definitions/ContentTree.transit.Card"
847
+ },
848
+ {
849
+ "$ref": "#/definitions/ContentTree.transit.Card"
850
+ }
851
+ ],
852
+ "maxItems": 2,
853
+ "minItems": 2,
854
+ "type": "array"
855
+ },
856
+ "data": {},
857
+ "title": {
858
+ "description": "The title of the info pair",
859
+ "type": "string"
860
+ },
861
+ "type": {
862
+ "const": "info-pair",
863
+ "type": "string"
864
+ }
865
+ },
866
+ "propertyOrder": [
867
+ "type",
868
+ "title",
869
+ "children",
870
+ "data"
871
+ ],
872
+ "required": [
873
+ "children",
874
+ "type"
875
+ ],
876
+ "type": "object"
877
+ },
878
+ "ContentTree.transit.Layout": {
879
+ "additionalProperties": false,
880
+ "properties": {
881
+ "children": {
882
+ "anyOf": [
883
+ {
884
+ "additionalItems": {
885
+ "$ref": "#/definitions/ContentTree.transit.LayoutSlot"
886
+ },
887
+ "items": [
888
+ {
889
+ "$ref": "#/definitions/ContentTree.transit.Heading"
890
+ },
891
+ {
892
+ "$ref": "#/definitions/ContentTree.transit.LayoutImage"
893
+ }
894
+ ],
895
+ "minItems": 2,
896
+ "type": "array"
897
+ },
898
+ {
899
+ "additionalItems": {
900
+ "$ref": "#/definitions/ContentTree.transit.LayoutSlot"
901
+ },
902
+ "items": [
903
+ {
904
+ "$ref": "#/definitions/ContentTree.transit.Heading"
905
+ }
906
+ ],
907
+ "minItems": 1,
908
+ "type": "array"
909
+ },
910
+ {
911
+ "items": {
912
+ "$ref": "#/definitions/ContentTree.transit.LayoutSlot"
913
+ },
914
+ "type": "array"
915
+ }
916
+ ]
917
+ },
918
+ "data": {},
919
+ "layoutName": {
920
+ "enum": [
921
+ "auto",
922
+ "card",
923
+ "timeline"
924
+ ],
925
+ "type": "string"
926
+ },
927
+ "layoutWidth": {
928
+ "type": "string"
929
+ },
930
+ "type": {
931
+ "const": "layout",
932
+ "type": "string"
933
+ }
934
+ },
935
+ "propertyOrder": [
936
+ "type",
937
+ "layoutName",
938
+ "layoutWidth",
939
+ "children",
940
+ "data"
941
+ ],
942
+ "required": [
943
+ "children",
944
+ "layoutName",
945
+ "layoutWidth",
946
+ "type"
947
+ ],
948
+ "type": "object"
949
+ },
950
+ "ContentTree.transit.LayoutImage": {
951
+ "additionalProperties": false,
952
+ "properties": {
953
+ "alt": {
954
+ "type": "string"
955
+ },
956
+ "caption": {
957
+ "type": "string"
958
+ },
959
+ "credit": {
960
+ "type": "string"
961
+ },
962
+ "data": {},
963
+ "id": {
964
+ "type": "string"
965
+ },
966
+ "type": {
967
+ "const": "layout-image",
968
+ "type": "string"
969
+ }
970
+ },
971
+ "propertyOrder": [
972
+ "type",
973
+ "id",
974
+ "alt",
975
+ "caption",
976
+ "credit",
977
+ "data"
978
+ ],
979
+ "required": [
980
+ "alt",
981
+ "caption",
982
+ "credit",
983
+ "id",
984
+ "type"
985
+ ],
986
+ "type": "object"
987
+ },
988
+ "ContentTree.transit.LayoutSlot": {
989
+ "additionalProperties": false,
990
+ "properties": {
991
+ "children": {
992
+ "items": {
993
+ "anyOf": [
994
+ {
995
+ "$ref": "#/definitions/ContentTree.transit.Paragraph"
996
+ },
997
+ {
998
+ "$ref": "#/definitions/ContentTree.transit.Heading"
999
+ },
1000
+ {
1001
+ "$ref": "#/definitions/ContentTree.transit.LayoutImage"
1002
+ }
1003
+ ]
1004
+ },
1005
+ "type": "array"
1006
+ },
1007
+ "data": {},
1008
+ "type": {
1009
+ "const": "layout-slot",
1010
+ "type": "string"
1011
+ }
1012
+ },
1013
+ "propertyOrder": [
1014
+ "type",
1015
+ "children",
1016
+ "data"
1017
+ ],
1018
+ "required": [
1019
+ "children",
1020
+ "type"
1021
+ ],
1022
+ "type": "object"
1023
+ },
1024
+ "ContentTree.transit.LayoutWidth": {
1025
+ "enum": [
1026
+ "auto",
1027
+ "full-bleed",
1028
+ "full-grid",
1029
+ "full-width",
1030
+ "in-line",
1031
+ "inset-left",
1032
+ "inset-right",
1033
+ "mid-grid"
1034
+ ],
1035
+ "type": "string"
1036
+ },
1037
+ "ContentTree.transit.Link": {
1038
+ "additionalProperties": false,
1039
+ "properties": {
1040
+ "children": {
1041
+ "items": {
1042
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1043
+ },
1044
+ "type": "array"
1045
+ },
1046
+ "data": {},
1047
+ "title": {
1048
+ "type": "string"
1049
+ },
1050
+ "type": {
1051
+ "const": "link",
1052
+ "type": "string"
1053
+ },
1054
+ "url": {
1055
+ "type": "string"
1056
+ }
1057
+ },
1058
+ "propertyOrder": [
1059
+ "type",
1060
+ "url",
1061
+ "title",
1062
+ "children",
1063
+ "data"
1064
+ ],
1065
+ "required": [
1066
+ "children",
1067
+ "title",
1068
+ "type",
1069
+ "url"
1070
+ ],
1071
+ "type": "object"
1072
+ },
1073
+ "ContentTree.transit.List": {
1074
+ "additionalProperties": false,
1075
+ "properties": {
1076
+ "children": {
1077
+ "items": {
1078
+ "$ref": "#/definitions/ContentTree.transit.ListItem"
1079
+ },
1080
+ "type": "array"
1081
+ },
1082
+ "data": {},
1083
+ "ordered": {
1084
+ "type": "boolean"
1085
+ },
1086
+ "type": {
1087
+ "const": "list",
1088
+ "type": "string"
1089
+ }
1090
+ },
1091
+ "propertyOrder": [
1092
+ "type",
1093
+ "ordered",
1094
+ "children",
1095
+ "data"
1096
+ ],
1097
+ "required": [
1098
+ "children",
1099
+ "ordered",
1100
+ "type"
1101
+ ],
1102
+ "type": "object"
1103
+ },
1104
+ "ContentTree.transit.ListItem": {
1105
+ "additionalProperties": false,
1106
+ "properties": {
1107
+ "children": {
1108
+ "items": {
1109
+ "anyOf": [
1110
+ {
1111
+ "$ref": "#/definitions/ContentTree.transit.Paragraph"
1112
+ },
1113
+ {
1114
+ "$ref": "#/definitions/ContentTree.transit.Text"
1115
+ },
1116
+ {
1117
+ "$ref": "#/definitions/ContentTree.transit.Break"
1118
+ },
1119
+ {
1120
+ "$ref": "#/definitions/ContentTree.transit.Strong"
1121
+ },
1122
+ {
1123
+ "$ref": "#/definitions/ContentTree.transit.Emphasis"
1124
+ },
1125
+ {
1126
+ "$ref": "#/definitions/ContentTree.transit.Strikethrough"
1127
+ },
1128
+ {
1129
+ "$ref": "#/definitions/ContentTree.transit.Subscript"
1130
+ },
1131
+ {
1132
+ "$ref": "#/definitions/ContentTree.transit.Superscript"
1133
+ },
1134
+ {
1135
+ "$ref": "#/definitions/ContentTree.transit.Link"
1136
+ },
1137
+ {
1138
+ "$ref": "#/definitions/ContentTree.transit.FindOutMoreLink"
1139
+ }
1140
+ ]
1141
+ },
1142
+ "type": "array"
1143
+ },
1144
+ "data": {},
1145
+ "type": {
1146
+ "const": "list-item",
1147
+ "type": "string"
1148
+ }
1149
+ },
1150
+ "propertyOrder": [
1151
+ "type",
1152
+ "children",
1153
+ "data"
1154
+ ],
1155
+ "required": [
1156
+ "children",
1157
+ "type"
1158
+ ],
1159
+ "type": "object"
1160
+ },
1161
+ "ContentTree.transit.Paragraph": {
1162
+ "additionalProperties": false,
1163
+ "properties": {
1164
+ "children": {
1165
+ "items": {
1166
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1167
+ },
1168
+ "type": "array"
1169
+ },
1170
+ "data": {},
1171
+ "type": {
1172
+ "const": "paragraph",
1173
+ "type": "string"
1174
+ }
1175
+ },
1176
+ "propertyOrder": [
1177
+ "type",
1178
+ "children",
1179
+ "data"
1180
+ ],
1181
+ "required": [
1182
+ "children",
1183
+ "type"
1184
+ ],
1185
+ "type": "object"
1186
+ },
1187
+ "ContentTree.transit.Phrasing": {
1188
+ "anyOf": [
1189
+ {
1190
+ "$ref": "#/definitions/ContentTree.transit.Text"
1191
+ },
1192
+ {
1193
+ "$ref": "#/definitions/ContentTree.transit.Break"
1194
+ },
1195
+ {
1196
+ "$ref": "#/definitions/ContentTree.transit.Strong"
1197
+ },
1198
+ {
1199
+ "$ref": "#/definitions/ContentTree.transit.Emphasis"
1200
+ },
1201
+ {
1202
+ "$ref": "#/definitions/ContentTree.transit.Strikethrough"
1203
+ },
1204
+ {
1205
+ "$ref": "#/definitions/ContentTree.transit.Subscript"
1206
+ },
1207
+ {
1208
+ "$ref": "#/definitions/ContentTree.transit.Superscript"
1209
+ },
1210
+ {
1211
+ "$ref": "#/definitions/ContentTree.transit.Link"
1212
+ },
1213
+ {
1214
+ "$ref": "#/definitions/ContentTree.transit.FindOutMoreLink"
1215
+ }
1216
+ ]
1217
+ },
1218
+ "ContentTree.transit.Pullquote": {
1219
+ "additionalProperties": false,
1220
+ "properties": {
1221
+ "data": {},
1222
+ "source": {
1223
+ "type": "string"
1224
+ },
1225
+ "text": {
1226
+ "type": "string"
1227
+ },
1228
+ "type": {
1229
+ "const": "pullquote",
1230
+ "type": "string"
1231
+ }
1232
+ },
1233
+ "propertyOrder": [
1234
+ "type",
1235
+ "text",
1236
+ "source",
1237
+ "data"
1238
+ ],
1239
+ "required": [
1240
+ "text",
1241
+ "type"
1242
+ ],
1243
+ "type": "object"
1244
+ },
1245
+ "ContentTree.transit.Recommended": {
1246
+ "additionalProperties": false,
1247
+ "properties": {
1248
+ "data": {},
1249
+ "heading": {
1250
+ "type": "string"
1251
+ },
1252
+ "id": {
1253
+ "type": "string"
1254
+ },
1255
+ "teaserTitleOverride": {
1256
+ "type": "string"
1257
+ },
1258
+ "type": {
1259
+ "const": "recommended",
1260
+ "type": "string"
1261
+ }
1262
+ },
1263
+ "propertyOrder": [
1264
+ "type",
1265
+ "id",
1266
+ "heading",
1267
+ "teaserTitleOverride",
1268
+ "data"
1269
+ ],
1270
+ "required": [
1271
+ "id",
1272
+ "type"
1273
+ ],
1274
+ "type": "object"
1275
+ },
1276
+ "ContentTree.transit.RecommendedList": {
1277
+ "additionalProperties": false,
1278
+ "properties": {
1279
+ "children": {
1280
+ "items": {
1281
+ "$ref": "#/definitions/ContentTree.transit.Recommended"
1282
+ },
1283
+ "type": "array"
1284
+ },
1285
+ "data": {},
1286
+ "heading": {
1287
+ "type": "string"
1288
+ },
1289
+ "type": {
1290
+ "const": "recommended-list",
1291
+ "type": "string"
1292
+ }
1293
+ },
1294
+ "propertyOrder": [
1295
+ "type",
1296
+ "heading",
1297
+ "children",
1298
+ "data"
1299
+ ],
1300
+ "required": [
1301
+ "children",
1302
+ "type"
1303
+ ],
1304
+ "type": "object"
1305
+ },
1306
+ "ContentTree.transit.ScrollyBlock": {
1307
+ "additionalProperties": false,
1308
+ "properties": {
1309
+ "children": {
1310
+ "items": {
1311
+ "$ref": "#/definitions/ContentTree.transit.ScrollySection"
1312
+ },
1313
+ "type": "array"
1314
+ },
1315
+ "data": {},
1316
+ "theme": {
1317
+ "enum": [
1318
+ "sans",
1319
+ "serif"
1320
+ ],
1321
+ "type": "string"
1322
+ },
1323
+ "type": {
1324
+ "const": "scrolly-block",
1325
+ "type": "string"
1326
+ }
1327
+ },
1328
+ "propertyOrder": [
1329
+ "type",
1330
+ "theme",
1331
+ "children",
1332
+ "data"
1333
+ ],
1334
+ "required": [
1335
+ "children",
1336
+ "theme",
1337
+ "type"
1338
+ ],
1339
+ "type": "object"
1340
+ },
1341
+ "ContentTree.transit.ScrollyCopy": {
1342
+ "additionalProperties": false,
1343
+ "properties": {
1344
+ "children": {
1345
+ "items": {
1346
+ "anyOf": [
1347
+ {
1348
+ "$ref": "#/definitions/ContentTree.transit.Paragraph"
1349
+ },
1350
+ {
1351
+ "$ref": "#/definitions/ContentTree.transit.ScrollyHeading"
1352
+ }
1353
+ ]
1354
+ },
1355
+ "type": "array"
1356
+ },
1357
+ "data": {},
1358
+ "type": {
1359
+ "const": "scrolly-copy",
1360
+ "type": "string"
1361
+ }
1362
+ },
1363
+ "propertyOrder": [
1364
+ "type",
1365
+ "children",
1366
+ "data"
1367
+ ],
1368
+ "required": [
1369
+ "children",
1370
+ "type"
1371
+ ],
1372
+ "type": "object"
1373
+ },
1374
+ "ContentTree.transit.ScrollyHeading": {
1375
+ "additionalProperties": false,
1376
+ "properties": {
1377
+ "children": {
1378
+ "items": {
1379
+ "$ref": "#/definitions/ContentTree.transit.Text"
1380
+ },
1381
+ "type": "array"
1382
+ },
1383
+ "data": {},
1384
+ "level": {
1385
+ "enum": [
1386
+ "chapter",
1387
+ "heading",
1388
+ "subheading"
1389
+ ],
1390
+ "type": "string"
1391
+ },
1392
+ "type": {
1393
+ "const": "scrolly-heading",
1394
+ "type": "string"
1395
+ }
1396
+ },
1397
+ "propertyOrder": [
1398
+ "type",
1399
+ "level",
1400
+ "children",
1401
+ "data"
1402
+ ],
1403
+ "required": [
1404
+ "children",
1405
+ "level",
1406
+ "type"
1407
+ ],
1408
+ "type": "object"
1409
+ },
1410
+ "ContentTree.transit.ScrollyImage": {
1411
+ "additionalProperties": false,
1412
+ "properties": {
1413
+ "data": {},
1414
+ "id": {
1415
+ "type": "string"
1416
+ },
1417
+ "type": {
1418
+ "const": "scrolly-image",
1419
+ "type": "string"
1420
+ }
1421
+ },
1422
+ "propertyOrder": [
1423
+ "type",
1424
+ "id",
1425
+ "data"
1426
+ ],
1427
+ "required": [
1428
+ "id",
1429
+ "type"
1430
+ ],
1431
+ "type": "object"
1432
+ },
1433
+ "ContentTree.transit.ScrollySection": {
1434
+ "additionalProperties": false,
1435
+ "properties": {
1436
+ "children": {
1437
+ "additionalItems": {
1438
+ "$ref": "#/definitions/ContentTree.transit.ScrollyCopy"
1439
+ },
1440
+ "items": [
1441
+ {
1442
+ "$ref": "#/definitions/ContentTree.transit.ScrollyImage"
1443
+ }
1444
+ ],
1445
+ "minItems": 1,
1446
+ "type": "array"
1447
+ },
1448
+ "data": {},
1449
+ "display": {
1450
+ "enum": [
1451
+ "dark-background",
1452
+ "light-background"
1453
+ ],
1454
+ "type": "string"
1455
+ },
1456
+ "noBox": {
1457
+ "const": true,
1458
+ "type": "boolean"
1459
+ },
1460
+ "position": {
1461
+ "enum": [
1462
+ "center",
1463
+ "left",
1464
+ "right"
1465
+ ],
1466
+ "type": "string"
1467
+ },
1468
+ "transition": {
1469
+ "enum": [
1470
+ "delay-after",
1471
+ "delay-before"
1472
+ ],
1473
+ "type": "string"
1474
+ },
1475
+ "type": {
1476
+ "const": "scrolly-section",
1477
+ "type": "string"
1478
+ }
1479
+ },
1480
+ "propertyOrder": [
1481
+ "type",
1482
+ "display",
1483
+ "noBox",
1484
+ "position",
1485
+ "transition",
1486
+ "children",
1487
+ "data"
1488
+ ],
1489
+ "required": [
1490
+ "children",
1491
+ "display",
1492
+ "position",
1493
+ "type"
1494
+ ],
1495
+ "type": "object"
1496
+ },
1497
+ "ContentTree.transit.Strikethrough": {
1498
+ "additionalProperties": false,
1499
+ "properties": {
1500
+ "children": {
1501
+ "items": {
1502
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1503
+ },
1504
+ "type": "array"
1505
+ },
1506
+ "data": {},
1507
+ "type": {
1508
+ "const": "strikethrough",
1509
+ "type": "string"
1510
+ }
1511
+ },
1512
+ "propertyOrder": [
1513
+ "type",
1514
+ "children",
1515
+ "data"
1516
+ ],
1517
+ "required": [
1518
+ "children",
1519
+ "type"
1520
+ ],
1521
+ "type": "object"
1522
+ },
1523
+ "ContentTree.transit.Strong": {
1524
+ "additionalProperties": false,
1525
+ "properties": {
1526
+ "children": {
1527
+ "items": {
1528
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1529
+ },
1530
+ "type": "array"
1531
+ },
1532
+ "data": {},
1533
+ "type": {
1534
+ "const": "strong",
1535
+ "type": "string"
1536
+ }
1537
+ },
1538
+ "propertyOrder": [
1539
+ "type",
1540
+ "children",
1541
+ "data"
1542
+ ],
1543
+ "required": [
1544
+ "children",
1545
+ "type"
1546
+ ],
1547
+ "type": "object"
1548
+ },
1549
+ "ContentTree.transit.Subscript": {
1550
+ "additionalProperties": false,
1551
+ "properties": {
1552
+ "children": {
1553
+ "items": {
1554
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1555
+ },
1556
+ "type": "array"
1557
+ },
1558
+ "data": {},
1559
+ "type": {
1560
+ "const": "subscript",
1561
+ "type": "string"
1562
+ }
1563
+ },
1564
+ "propertyOrder": [
1565
+ "type",
1566
+ "children",
1567
+ "data"
1568
+ ],
1569
+ "required": [
1570
+ "children",
1571
+ "type"
1572
+ ],
1573
+ "type": "object"
1574
+ },
1575
+ "ContentTree.transit.Superscript": {
1576
+ "additionalProperties": false,
1577
+ "properties": {
1578
+ "children": {
1579
+ "items": {
1580
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1581
+ },
1582
+ "type": "array"
1583
+ },
1584
+ "data": {},
1585
+ "type": {
1586
+ "const": "superscript",
1587
+ "type": "string"
1588
+ }
1589
+ },
1590
+ "propertyOrder": [
1591
+ "type",
1592
+ "children",
1593
+ "data"
1594
+ ],
1595
+ "required": [
1596
+ "children",
1597
+ "type"
1598
+ ],
1599
+ "type": "object"
1600
+ },
1601
+ "ContentTree.transit.Table": {
1602
+ "additionalProperties": false,
1603
+ "properties": {
1604
+ "children": {
1605
+ "$ref": "#/definitions/ContentTree.transit.TableChildren"
1606
+ },
1607
+ "collapseAfterHowManyRows": {
1608
+ "type": "number"
1609
+ },
1610
+ "columnSettings": {
1611
+ "items": {
1612
+ "additionalProperties": false,
1613
+ "properties": {
1614
+ "hideOnMobile": {
1615
+ "type": "boolean"
1616
+ },
1617
+ "sortType": {
1618
+ "enum": [
1619
+ "currency",
1620
+ "date",
1621
+ "number",
1622
+ "percent",
1623
+ "text"
1624
+ ],
1625
+ "type": "string"
1626
+ },
1627
+ "sortable": {
1628
+ "type": "boolean"
1629
+ }
1630
+ },
1631
+ "propertyOrder": [
1632
+ "hideOnMobile",
1633
+ "sortable",
1634
+ "sortType"
1635
+ ],
1636
+ "required": [
1637
+ "hideOnMobile",
1638
+ "sortable"
1639
+ ],
1640
+ "type": "object"
1641
+ },
1642
+ "type": "array"
1643
+ },
1644
+ "compact": {
1645
+ "type": "boolean"
1646
+ },
1647
+ "data": {},
1648
+ "layoutWidth": {
1649
+ "$ref": "#/definitions/ContentTree.transit.TableLayoutWidth"
1650
+ },
1651
+ "responsiveStyle": {
1652
+ "enum": [
1653
+ "flat",
1654
+ "overflow",
1655
+ "scroll"
1656
+ ],
1657
+ "type": "string"
1658
+ },
1659
+ "stripes": {
1660
+ "type": "boolean"
1661
+ },
1662
+ "type": {
1663
+ "const": "table",
1664
+ "type": "string"
1665
+ }
1666
+ },
1667
+ "propertyOrder": [
1668
+ "type",
1669
+ "stripes",
1670
+ "compact",
1671
+ "layoutWidth",
1672
+ "collapseAfterHowManyRows",
1673
+ "responsiveStyle",
1674
+ "columnSettings",
1675
+ "children",
1676
+ "data"
1677
+ ],
1678
+ "required": [
1679
+ "children",
1680
+ "columnSettings",
1681
+ "compact",
1682
+ "layoutWidth",
1683
+ "responsiveStyle",
1684
+ "stripes",
1685
+ "type"
1686
+ ],
1687
+ "type": "object"
1688
+ },
1689
+ "ContentTree.transit.TableBody": {
1690
+ "additionalProperties": false,
1691
+ "properties": {
1692
+ "children": {
1693
+ "items": {
1694
+ "$ref": "#/definitions/ContentTree.transit.TableRow"
1695
+ },
1696
+ "type": "array"
1697
+ },
1698
+ "data": {},
1699
+ "type": {
1700
+ "const": "table-body",
1701
+ "type": "string"
1702
+ }
1703
+ },
1704
+ "propertyOrder": [
1705
+ "type",
1706
+ "children",
1707
+ "data"
1708
+ ],
1709
+ "required": [
1710
+ "children",
1711
+ "type"
1712
+ ],
1713
+ "type": "object"
1714
+ },
1715
+ "ContentTree.transit.TableCaption": {
1716
+ "additionalProperties": false,
1717
+ "properties": {
1718
+ "children": {
1719
+ "items": {
1720
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1721
+ },
1722
+ "type": "array"
1723
+ },
1724
+ "data": {},
1725
+ "type": {
1726
+ "const": "table-caption",
1727
+ "type": "string"
1728
+ }
1729
+ },
1730
+ "propertyOrder": [
1731
+ "type",
1732
+ "children",
1733
+ "data"
1734
+ ],
1735
+ "required": [
1736
+ "children",
1737
+ "type"
1738
+ ],
1739
+ "type": "object"
1740
+ },
1741
+ "ContentTree.transit.TableCell": {
1742
+ "additionalProperties": false,
1743
+ "properties": {
1744
+ "children": {
1745
+ "items": {
1746
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1747
+ },
1748
+ "type": "array"
1749
+ },
1750
+ "columnSpan": {
1751
+ "type": "number"
1752
+ },
1753
+ "data": {},
1754
+ "heading": {
1755
+ "type": "boolean"
1756
+ },
1757
+ "rowSpan": {
1758
+ "type": "number"
1759
+ },
1760
+ "type": {
1761
+ "const": "table-cell",
1762
+ "type": "string"
1763
+ }
1764
+ },
1765
+ "propertyOrder": [
1766
+ "type",
1767
+ "heading",
1768
+ "columnSpan",
1769
+ "rowSpan",
1770
+ "children",
1771
+ "data"
1772
+ ],
1773
+ "required": [
1774
+ "children",
1775
+ "type"
1776
+ ],
1777
+ "type": "object"
1778
+ },
1779
+ "ContentTree.transit.TableChildren": {
1780
+ "anyOf": [
1781
+ {
1782
+ "items": [
1783
+ {
1784
+ "$ref": "#/definitions/ContentTree.transit.TableCaption"
1785
+ },
1786
+ {
1787
+ "$ref": "#/definitions/ContentTree.transit.TableBody"
1788
+ },
1789
+ {
1790
+ "$ref": "#/definitions/ContentTree.transit.TableFooter"
1791
+ }
1792
+ ],
1793
+ "maxItems": 3,
1794
+ "minItems": 2,
1795
+ "type": "array"
1796
+ },
1797
+ {
1798
+ "items": [
1799
+ {
1800
+ "$ref": "#/definitions/ContentTree.transit.TableBody"
1801
+ },
1802
+ {
1803
+ "$ref": "#/definitions/ContentTree.transit.TableFooter"
1804
+ }
1805
+ ],
1806
+ "maxItems": 2,
1807
+ "minItems": 1,
1808
+ "type": "array"
1809
+ },
1810
+ {
1811
+ "items": [
1812
+ {
1813
+ "$ref": "#/definitions/ContentTree.transit.TableCaption"
1814
+ },
1815
+ {
1816
+ "$ref": "#/definitions/ContentTree.transit.TableHeader"
1817
+ },
1818
+ {
1819
+ "$ref": "#/definitions/ContentTree.transit.TableBody"
1820
+ },
1821
+ {
1822
+ "$ref": "#/definitions/ContentTree.transit.TableFooter"
1823
+ }
1824
+ ],
1825
+ "maxItems": 4,
1826
+ "minItems": 3,
1827
+ "type": "array"
1828
+ },
1829
+ {
1830
+ "items": [
1831
+ {
1832
+ "$ref": "#/definitions/ContentTree.transit.TableHeader"
1833
+ },
1834
+ {
1835
+ "$ref": "#/definitions/ContentTree.transit.TableBody"
1836
+ },
1837
+ {
1838
+ "$ref": "#/definitions/ContentTree.transit.TableFooter"
1839
+ }
1840
+ ],
1841
+ "maxItems": 3,
1842
+ "minItems": 2,
1843
+ "type": "array"
1844
+ }
1845
+ ]
1846
+ },
1847
+ "ContentTree.transit.TableFooter": {
1848
+ "additionalProperties": false,
1849
+ "properties": {
1850
+ "children": {
1851
+ "items": {
1852
+ "$ref": "#/definitions/ContentTree.transit.Phrasing"
1853
+ },
1854
+ "type": "array"
1855
+ },
1856
+ "data": {},
1857
+ "type": {
1858
+ "const": "table-footer",
1859
+ "type": "string"
1860
+ }
1861
+ },
1862
+ "propertyOrder": [
1863
+ "type",
1864
+ "children",
1865
+ "data"
1866
+ ],
1867
+ "required": [
1868
+ "children",
1869
+ "type"
1870
+ ],
1871
+ "type": "object"
1872
+ },
1873
+ "ContentTree.transit.TableHeader": {
1874
+ "additionalProperties": false,
1875
+ "properties": {
1876
+ "children": {
1877
+ "items": {
1878
+ "$ref": "#/definitions/ContentTree.transit.TableRow"
1879
+ },
1880
+ "type": "array"
1881
+ },
1882
+ "data": {},
1883
+ "type": {
1884
+ "const": "table-header",
1885
+ "type": "string"
1886
+ }
1887
+ },
1888
+ "propertyOrder": [
1889
+ "type",
1890
+ "children",
1891
+ "data"
1892
+ ],
1893
+ "required": [
1894
+ "children",
1895
+ "type"
1896
+ ],
1897
+ "type": "object"
1898
+ },
1899
+ "ContentTree.transit.TableLayoutWidth": {
1900
+ "enum": [
1901
+ "auto",
1902
+ "full-bleed",
1903
+ "full-grid",
1904
+ "inset-left",
1905
+ "inset-right"
1906
+ ],
1907
+ "type": "string"
1908
+ },
1909
+ "ContentTree.transit.TableRow": {
1910
+ "additionalProperties": false,
1911
+ "properties": {
1912
+ "children": {
1913
+ "items": {
1914
+ "$ref": "#/definitions/ContentTree.transit.TableCell"
1915
+ },
1916
+ "type": "array"
1917
+ },
1918
+ "data": {},
1919
+ "type": {
1920
+ "const": "table-row",
1921
+ "type": "string"
1922
+ }
1923
+ },
1924
+ "propertyOrder": [
1925
+ "type",
1926
+ "children",
1927
+ "data"
1928
+ ],
1929
+ "required": [
1930
+ "children",
1931
+ "type"
1932
+ ],
1933
+ "type": "object"
1934
+ },
1935
+ "ContentTree.transit.Text": {
1936
+ "additionalProperties": false,
1937
+ "properties": {
1938
+ "data": {},
1939
+ "type": {
1940
+ "const": "text",
1941
+ "type": "string"
1942
+ },
1943
+ "value": {
1944
+ "type": "string"
1945
+ }
1946
+ },
1947
+ "propertyOrder": [
1948
+ "type",
1949
+ "value",
1950
+ "data"
1951
+ ],
1952
+ "required": [
1953
+ "type",
1954
+ "value"
1955
+ ],
1956
+ "type": "object"
1957
+ },
1958
+ "ContentTree.transit.ThematicBreak": {
1959
+ "additionalProperties": false,
1960
+ "properties": {
1961
+ "data": {},
1962
+ "type": {
1963
+ "const": "thematic-break",
1964
+ "type": "string"
1965
+ }
1966
+ },
1967
+ "propertyOrder": [
1968
+ "type",
1969
+ "data"
1970
+ ],
1971
+ "required": [
1972
+ "type"
1973
+ ],
1974
+ "type": "object"
1975
+ },
1976
+ "ContentTree.transit.Timeline": {
1977
+ "additionalProperties": false,
1978
+ "description": "Timeline nodes display a timeline of events in arbitrary order.",
1979
+ "properties": {
1980
+ "children": {
1981
+ "items": {
1982
+ "$ref": "#/definitions/ContentTree.transit.TimelineEvent"
1983
+ },
1984
+ "type": "array"
1985
+ },
1986
+ "data": {},
1987
+ "title": {
1988
+ "description": "The title for the timeline",
1989
+ "type": "string"
1990
+ },
1991
+ "type": {
1992
+ "const": "timeline",
1993
+ "type": "string"
1994
+ }
1995
+ },
1996
+ "propertyOrder": [
1997
+ "type",
1998
+ "title",
1999
+ "children",
2000
+ "data"
2001
+ ],
2002
+ "required": [
2003
+ "children",
2004
+ "title",
2005
+ "type"
2006
+ ],
2007
+ "type": "object"
2008
+ },
2009
+ "ContentTree.transit.TimelineEvent": {
2010
+ "additionalProperties": false,
2011
+ "description": "TimelineEvent is the representation of a single event in a Timeline.",
2012
+ "properties": {
2013
+ "children": {
2014
+ "description": "Any combination of paragraphs and image sets",
2015
+ "items": {
2016
+ "anyOf": [
2017
+ {
2018
+ "$ref": "#/definitions/ContentTree.transit.Paragraph"
2019
+ },
2020
+ {
2021
+ "$ref": "#/definitions/ContentTree.transit.ImageSet"
2022
+ }
2023
+ ]
2024
+ },
2025
+ "type": "array"
2026
+ },
2027
+ "data": {},
2028
+ "title": {
2029
+ "description": "The title of the event",
2030
+ "type": "string"
2031
+ },
2032
+ "type": {
2033
+ "const": "timeline-event",
2034
+ "type": "string"
2035
+ }
2036
+ },
2037
+ "propertyOrder": [
2038
+ "type",
2039
+ "title",
2040
+ "children",
2041
+ "data"
2042
+ ],
2043
+ "required": [
2044
+ "children",
2045
+ "title",
2046
+ "type"
2047
+ ],
2048
+ "type": "object"
2049
+ },
2050
+ "ContentTree.transit.Tweet": {
2051
+ "additionalProperties": false,
2052
+ "properties": {
2053
+ "data": {},
2054
+ "id": {
2055
+ "type": "string"
2056
+ },
2057
+ "type": {
2058
+ "const": "tweet",
2059
+ "type": "string"
2060
+ }
2061
+ },
2062
+ "propertyOrder": [
2063
+ "id",
2064
+ "type",
2065
+ "data"
2066
+ ],
2067
+ "required": [
2068
+ "id",
2069
+ "type"
2070
+ ],
2071
+ "type": "object"
2072
+ },
2073
+ "ContentTree.transit.Video": {
2074
+ "additionalProperties": false,
2075
+ "properties": {
2076
+ "data": {},
2077
+ "id": {
2078
+ "type": "string"
2079
+ },
2080
+ "type": {
2081
+ "const": "video",
2082
+ "type": "string"
2083
+ }
2084
+ },
2085
+ "propertyOrder": [
2086
+ "type",
2087
+ "id",
2088
+ "data"
2089
+ ],
2090
+ "required": [
2091
+ "id",
2092
+ "type"
2093
+ ],
2094
+ "type": "object"
2095
+ },
2096
+ "ContentTree.transit.VimeoVideo": {
2097
+ "additionalProperties": false,
2098
+ "properties": {
2099
+ "data": {},
2100
+ "type": {
2101
+ "const": "vimeo-video",
2102
+ "type": "string"
2103
+ },
2104
+ "url": {
2105
+ "description": "Vimeo embed URL e.g. https://player.vimeo.com/player/<id> or https://vimeo.com/<id>",
2106
+ "type": "string"
2107
+ }
2108
+ },
2109
+ "propertyOrder": [
2110
+ "type",
2111
+ "url",
2112
+ "data"
2113
+ ],
2114
+ "required": [
2115
+ "type",
2116
+ "url"
2117
+ ],
2118
+ "type": "object"
2119
+ },
2120
+ "ContentTree.transit.YoutubeVideo": {
2121
+ "additionalProperties": false,
2122
+ "properties": {
2123
+ "data": {},
2124
+ "type": {
2125
+ "const": "youtube-video",
2126
+ "type": "string"
2127
+ },
2128
+ "url": {
2129
+ "type": "string"
2130
+ }
2131
+ },
2132
+ "propertyOrder": [
2133
+ "type",
2134
+ "url",
2135
+ "data"
2136
+ ],
2137
+ "required": [
2138
+ "type",
2139
+ "url"
2140
+ ],
2141
+ "type": "object"
2142
+ }
2143
+ },
2144
+ "properties": {
2145
+ "body": {
2146
+ "$ref": "#/definitions/ContentTree.transit.Body"
2147
+ },
2148
+ "data": {},
2149
+ "type": {
2150
+ "const": "root",
2151
+ "type": "string"
2152
+ }
2153
+ },
2154
+ "propertyOrder": [
2155
+ "type",
2156
+ "body",
2157
+ "data"
2158
+ ],
2159
+ "required": [
2160
+ "body",
2161
+ "type"
2162
+ ],
2163
+ "type": "object"
2164
+ }
2165
+