@kickstartds/ds-agency-premium 1.4.2 → 1.4.3

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.
@@ -8,6 +8,3100 @@
8
8
  "seo"
9
9
  ],
10
10
  "properties": {
11
+ "section": {
12
+ "type": "array",
13
+ "title": "Overview Intro",
14
+ "description": "Collection of sections (with their contents) to render as the blog overview intro",
15
+ "items": {
16
+ "$schema": "http://json-schema.org/draft-07/schema#",
17
+ "$id": "http://schema.mydesignsystem.com/section.schema.json",
18
+ "title": "Section",
19
+ "description": "Component used to layout components into pages",
20
+ "type": "object",
21
+ "properties": {
22
+ "width": {
23
+ "type": "string",
24
+ "title": "Width",
25
+ "description": "Width of section to use",
26
+ "enum": [
27
+ "full",
28
+ "max",
29
+ "wide",
30
+ "default",
31
+ "narrow"
32
+ ],
33
+ "default": "default"
34
+ },
35
+ "style": {
36
+ "type": "string",
37
+ "title": "Style",
38
+ "description": "Style of background",
39
+ "enum": [
40
+ "stagelights",
41
+ "horizontalGradient",
42
+ "verticalGradient",
43
+ "accentTransition",
44
+ "boldTransition",
45
+ "symmetricGlow",
46
+ "anchorGlow"
47
+ ],
48
+ "default": "default"
49
+ },
50
+ "backgroundColor": {
51
+ "type": "string",
52
+ "title": "Style",
53
+ "description": "Color of background",
54
+ "enum": [
55
+ "default",
56
+ "accent",
57
+ "bold"
58
+ ],
59
+ "default": "default"
60
+ },
61
+ "spotlight": {
62
+ "type": "boolean",
63
+ "title": "Spotlight",
64
+ "description": "Show spotlight behind cursor",
65
+ "default": false
66
+ },
67
+ "spaceBefore": {
68
+ "type": "string",
69
+ "title": "Space Before",
70
+ "description": "Amount of spacing before the section",
71
+ "enum": [
72
+ "default",
73
+ "small",
74
+ "none"
75
+ ],
76
+ "default": "default"
77
+ },
78
+ "spaceAfter": {
79
+ "type": "string",
80
+ "title": "Space After",
81
+ "description": "Amount of spacing after the section",
82
+ "enum": [
83
+ "default",
84
+ "small",
85
+ "none"
86
+ ],
87
+ "default": "default"
88
+ },
89
+ "inverted": {
90
+ "type": "boolean",
91
+ "title": "Inverted",
92
+ "description": "Whether to invert the section",
93
+ "default": false
94
+ },
95
+ "headerSpacing": {
96
+ "type": "boolean",
97
+ "title": "Header Spacing",
98
+ "description": "Reserve additional spacing for a floating header",
99
+ "default": false
100
+ },
101
+ "headline": {
102
+ "type": "object",
103
+ "properties": {
104
+ "text": {
105
+ "type": "string",
106
+ "title": "Headline",
107
+ "description": "Headline Text for the section",
108
+ "format": "markdown",
109
+ "examples": [
110
+ "Section headline"
111
+ ]
112
+ },
113
+ "large": {
114
+ "type": "boolean",
115
+ "title": "Large Headline",
116
+ "description": "Make the headline larger",
117
+ "default": false
118
+ },
119
+ "width": {
120
+ "type": "string",
121
+ "title": "Headline Width",
122
+ "description": "Width of headline to use",
123
+ "enum": [
124
+ "unset",
125
+ "narrow",
126
+ "default",
127
+ "wide"
128
+ ],
129
+ "default": "unset"
130
+ },
131
+ "textAlign": {
132
+ "title": "Headline Text Alignment",
133
+ "description": "Choose the text alignment for the headline",
134
+ "type": "string",
135
+ "enum": [
136
+ "left",
137
+ "center",
138
+ "right"
139
+ ]
140
+ },
141
+ "align": {
142
+ "title": "Headline Alignment",
143
+ "description": "Choose an alignment for positioning the headline",
144
+ "type": "string",
145
+ "enum": [
146
+ "left",
147
+ "center",
148
+ "right"
149
+ ]
150
+ },
151
+ "sub": {
152
+ "type": "string",
153
+ "title": "Subheadline",
154
+ "description": "Subheadline for the section",
155
+ "format": "markdown"
156
+ },
157
+ "switchOrder": {
158
+ "type": "boolean",
159
+ "title": "Switch Headline Order",
160
+ "description": "Switch the order of headline and subheadline"
161
+ }
162
+ },
163
+ "additionalProperties": false
164
+ },
165
+ "content": {
166
+ "type": "object",
167
+ "properties": {
168
+ "width": {
169
+ "type": "string",
170
+ "title": "Content Width",
171
+ "description": "Width of content to use",
172
+ "enum": [
173
+ "unset",
174
+ "narrow",
175
+ "default",
176
+ "wide"
177
+ ],
178
+ "default": "unset"
179
+ },
180
+ "align": {
181
+ "title": "Content Alignment",
182
+ "description": "Choose an alignment for the content",
183
+ "type": "string",
184
+ "enum": [
185
+ "left",
186
+ "center",
187
+ "right"
188
+ ],
189
+ "default": "center"
190
+ },
191
+ "gutter": {
192
+ "type": "string",
193
+ "title": "Gutter",
194
+ "description": "Size of gutter to use",
195
+ "enum": [
196
+ "large",
197
+ "default",
198
+ "small",
199
+ "none"
200
+ ],
201
+ "default": "default"
202
+ },
203
+ "mode": {
204
+ "type": "string",
205
+ "title": "Mode",
206
+ "description": "Layout mode used for section contents",
207
+ "enum": [
208
+ "default",
209
+ "tile",
210
+ "list",
211
+ "slider"
212
+ ],
213
+ "default": "list"
214
+ },
215
+ "tileWidth": {
216
+ "type": "string",
217
+ "title": "Tile Width",
218
+ "description": "Set min-width for the tiles in the grid",
219
+ "enum": [
220
+ "smallest",
221
+ "default",
222
+ "medium",
223
+ "large",
224
+ "largest"
225
+ ],
226
+ "default": "default"
227
+ }
228
+ },
229
+ "additionalProperties": false
230
+ },
231
+ "components": {
232
+ "type": "array",
233
+ "title": "Content",
234
+ "description": "Allowed components for content",
235
+ "items": {
236
+ "anyOf": [
237
+ {
238
+ "$schema": "http://json-schema.org/draft-07/schema#",
239
+ "$id": "http://schema.mydesignsystem.com/cta.schema.json",
240
+ "title": "Cta",
241
+ "type": "object",
242
+ "properties": {
243
+ "headline": {
244
+ "title": "Component Headline",
245
+ "description": "Headline for the Component element",
246
+ "type": "string",
247
+ "format": "markdown",
248
+ "examples": [
249
+ "Headline"
250
+ ]
251
+ },
252
+ "sub": {
253
+ "title": "Component Subheadline",
254
+ "description": "Subheadline below the component headline",
255
+ "type": "string",
256
+ "format": "markdown",
257
+ "examples": [
258
+ "Subheadline"
259
+ ]
260
+ },
261
+ "text": {
262
+ "title": "Component Text",
263
+ "description": "Info text for the component element",
264
+ "type": "string",
265
+ "format": "markdown"
266
+ },
267
+ "highlightText": {
268
+ "type": "boolean",
269
+ "title": "Highlight Text",
270
+ "description": "Visually highlight the text",
271
+ "default": false
272
+ },
273
+ "colorNeutral": {
274
+ "title": "Color Neutral",
275
+ "description": "Make the text and buttons color neutral",
276
+ "default": false,
277
+ "type": "boolean"
278
+ },
279
+ "fullWidth": {
280
+ "title": "Width",
281
+ "description": "Set the width of the content to the full width of the element",
282
+ "type": "boolean",
283
+ "default": false
284
+ },
285
+ "buttons": {
286
+ "type": "array",
287
+ "items": {
288
+ "title": "Button",
289
+ "type": "object",
290
+ "properties": {
291
+ "label": {
292
+ "type": "string",
293
+ "title": "Label",
294
+ "description": "Text content to display inside the button",
295
+ "examples": [
296
+ "Book a meeting"
297
+ ]
298
+ },
299
+ "icon": {
300
+ "type": "string",
301
+ "title": "Icon",
302
+ "description": "Choose an icon"
303
+ },
304
+ "target": {
305
+ "type": "string",
306
+ "title": "Target",
307
+ "description": "Target that should be linked, makes the button behave like a link semantically",
308
+ "format": "uri"
309
+ }
310
+ },
311
+ "additionalProperties": false
312
+ }
313
+ },
314
+ "backgroundColor": {
315
+ "title": "Background color",
316
+ "description": "Background color for the whole element",
317
+ "type": "string",
318
+ "format": "color"
319
+ },
320
+ "backgroundImage": {
321
+ "title": "Background image",
322
+ "description": "Background image for the whole element",
323
+ "type": "string",
324
+ "format": "image"
325
+ },
326
+ "image": {
327
+ "title": "Image",
328
+ "description": "Image displayed alongside the text content",
329
+ "type": "object",
330
+ "properties": {
331
+ "src": {
332
+ "title": "Image source",
333
+ "description": "Image source to use",
334
+ "type": "string",
335
+ "format": "image"
336
+ },
337
+ "padding": {
338
+ "title": "Padding",
339
+ "description": "Toggle padding of the image",
340
+ "type": "boolean",
341
+ "default": true
342
+ },
343
+ "alt": {
344
+ "title": "Alt text",
345
+ "description": "Image description",
346
+ "type": "string"
347
+ }
348
+ },
349
+ "additionalProperties": false
350
+ },
351
+ "order": {
352
+ "title": "Order",
353
+ "description": "Choose what comes first on mobile and desktop: image or text",
354
+ "type": "object",
355
+ "properties": {
356
+ "mobileImageLast": {
357
+ "title": "Mobile image after text",
358
+ "description": "Switch to displaying the image after the text on mobile",
359
+ "type": "boolean",
360
+ "default": false
361
+ },
362
+ "desktopImageLast": {
363
+ "title": "Desktop image after text",
364
+ "description": "Switch to displaying the image after the text on desktop",
365
+ "type": "boolean",
366
+ "default": true
367
+ }
368
+ },
369
+ "additionalProperties": false
370
+ },
371
+ "textAlign": {
372
+ "title": "Text Alignment",
373
+ "description": "Choose the alginment of the text",
374
+ "enum": [
375
+ "left",
376
+ "center"
377
+ ],
378
+ "type": "string",
379
+ "default": "left"
380
+ },
381
+ "contentAlign": {
382
+ "title": "Vertical alignment of the content",
383
+ "description": "Select a vertical alignment for the image",
384
+ "type": "string",
385
+ "enum": [
386
+ "center",
387
+ "top",
388
+ "bottom"
389
+ ],
390
+ "default": "center"
391
+ },
392
+ "type": {
393
+ "const": "cta"
394
+ }
395
+ },
396
+ "additionalProperties": false
397
+ },
398
+ {
399
+ "$schema": "http://json-schema.org/draft-07/schema#",
400
+ "$id": "http://schema.mydesignsystem.com/faq.schema.json",
401
+ "title": "Faq",
402
+ "description": "Component used to display a Faq section",
403
+ "type": "object",
404
+ "properties": {
405
+ "questions": {
406
+ "type": "array",
407
+ "title": "Questions",
408
+ "description": "The questions and answers in the Faq section",
409
+ "items": {
410
+ "type": "object",
411
+ "properties": {
412
+ "question": {
413
+ "type": "string",
414
+ "format": "markdown",
415
+ "title": "Question",
416
+ "description": "The question",
417
+ "examples": [
418
+ "What is the product made of?"
419
+ ]
420
+ },
421
+ "answer": {
422
+ "type": "string",
423
+ "format": "markdown",
424
+ "title": "Answer",
425
+ "description": "The answer to the question",
426
+ "examples": [
427
+ "The product is made of high-quality materials"
428
+ ]
429
+ }
430
+ },
431
+ "additionalProperties": false,
432
+ "required": [
433
+ "question",
434
+ "answer"
435
+ ]
436
+ },
437
+ "minItems": 1
438
+ },
439
+ "type": {
440
+ "const": "faq"
441
+ }
442
+ },
443
+ "additionalProperties": false,
444
+ "required": [
445
+ "questions"
446
+ ]
447
+ },
448
+ {
449
+ "$schema": "http://json-schema.org/draft-07/schema#",
450
+ "$id": "http://schema.mydesignsystem.com/features.schema.json",
451
+ "title": "Features",
452
+ "description": "Component used to display a set of features",
453
+ "type": "object",
454
+ "properties": {
455
+ "layout": {
456
+ "type": "string",
457
+ "title": "Layout",
458
+ "description": "The layout variant to use for the features",
459
+ "enum": [
460
+ "largeTiles",
461
+ "smallTiles",
462
+ "list"
463
+ ],
464
+ "default": "largeTiles"
465
+ },
466
+ "style": {
467
+ "type": "string",
468
+ "enum": [
469
+ "intext",
470
+ "stack",
471
+ "centered",
472
+ "besideLarge",
473
+ "besideSmall"
474
+ ],
475
+ "default": "stack"
476
+ },
477
+ "ctas": {
478
+ "type": "object",
479
+ "properties": {
480
+ "toggle": {
481
+ "type": "boolean",
482
+ "default": true,
483
+ "title": "CTA Toggle",
484
+ "description": "Activate/disable the CTAs"
485
+ },
486
+ "style": {
487
+ "type": "string",
488
+ "enum": [
489
+ "button",
490
+ "link",
491
+ "intext"
492
+ ],
493
+ "default": "link"
494
+ }
495
+ },
496
+ "additionalProperties": false
497
+ },
498
+ "feature": {
499
+ "type": "array",
500
+ "title": "Features",
501
+ "description": "The features to display",
502
+ "items": {
503
+ "$schema": "http://json-schema.org/draft-07/schema#",
504
+ "$id": "http://schema.mydesignsystem.com/feature.schema.json",
505
+ "title": "Feature",
506
+ "description": "Partial Component used to display a feature",
507
+ "type": "object",
508
+ "properties": {
509
+ "icon": {
510
+ "type": "string",
511
+ "title": "Icon",
512
+ "description": "The icon for the feature",
513
+ "examples": [
514
+ "person"
515
+ ]
516
+ },
517
+ "title": {
518
+ "type": "string",
519
+ "title": "Title",
520
+ "description": "The title of the feature",
521
+ "examples": [
522
+ "Feature 1"
523
+ ]
524
+ },
525
+ "text": {
526
+ "type": "string",
527
+ "title": "Text",
528
+ "description": "The description of the feature",
529
+ "format": "markdown",
530
+ "examples": [
531
+ "This is a feature"
532
+ ]
533
+ },
534
+ "style": {
535
+ "type": "string",
536
+ "enum": [
537
+ "intext",
538
+ "stack",
539
+ "centered",
540
+ "besideLarge",
541
+ "besideSmall"
542
+ ],
543
+ "default": "stack"
544
+ },
545
+ "cta": {
546
+ "type": "object",
547
+ "title": "Call to Action",
548
+ "description": "The call to action",
549
+ "properties": {
550
+ "target": {
551
+ "type": "string",
552
+ "title": "Call to Action target",
553
+ "description": "The CTA target",
554
+ "default": "#",
555
+ "format": "uri"
556
+ },
557
+ "label": {
558
+ "type": "string",
559
+ "title": "Link Label",
560
+ "description": "The text label displayed on the link",
561
+ "default": "See more",
562
+ "examples": [
563
+ "See all our partners"
564
+ ]
565
+ },
566
+ "toggle": {
567
+ "type": "boolean",
568
+ "title": "Call to Action Toggle",
569
+ "description": "Activate/disable the CTAs",
570
+ "default": true
571
+ },
572
+ "style": {
573
+ "type": "string",
574
+ "description": "Choose the style of the CTA",
575
+ "enum": [
576
+ "button",
577
+ "link",
578
+ "intext"
579
+ ],
580
+ "default": "link"
581
+ }
582
+ },
583
+ "additionalProperties": false
584
+ },
585
+ "type": {
586
+ "const": "feature"
587
+ }
588
+ },
589
+ "additionalProperties": false,
590
+ "required": [
591
+ "title"
592
+ ]
593
+ },
594
+ "minItems": 1,
595
+ "maxItems": 8
596
+ },
597
+ "type": {
598
+ "const": "features"
599
+ }
600
+ },
601
+ "additionalProperties": false
602
+ },
603
+ {
604
+ "$schema": "http://json-schema.org/draft-07/schema#",
605
+ "$id": "http://schema.mydesignsystem.com/gallery.schema.json",
606
+ "title": "Gallery",
607
+ "description": "Component used to display a gallery of images",
608
+ "type": "object",
609
+ "properties": {
610
+ "images": {
611
+ "type": "array",
612
+ "title": "Images",
613
+ "description": "The images to display in the gallery",
614
+ "items": {
615
+ "type": "object",
616
+ "properties": {
617
+ "src": {
618
+ "type": "string",
619
+ "title": "src",
620
+ "format": "image",
621
+ "description": "The source of the image",
622
+ "examples": [
623
+ "https://example.com/image1.jpg"
624
+ ]
625
+ },
626
+ "alt": {
627
+ "type": "string",
628
+ "title": "Alt text",
629
+ "description": "Alt text of the image",
630
+ "examples": [
631
+ "https://example.com/image1.jpg"
632
+ ]
633
+ },
634
+ "caption": {
635
+ "type": "string",
636
+ "format": "markdown",
637
+ "title": "Caption",
638
+ "description": "The caption of the image",
639
+ "examples": [
640
+ "Caption Image"
641
+ ]
642
+ }
643
+ },
644
+ "additionalProperties": false,
645
+ "required": [
646
+ "src"
647
+ ]
648
+ },
649
+ "minItems": 1,
650
+ "maxItems": 10
651
+ },
652
+ "layout": {
653
+ "type": "string",
654
+ "title": "Layout",
655
+ "description": "The layout of the gallery images",
656
+ "enum": [
657
+ "stack",
658
+ "smallTiles",
659
+ "largeTiles"
660
+ ]
661
+ },
662
+ "aspectRatio": {
663
+ "type": "string",
664
+ "title": "Aspect Ratio",
665
+ "description": "The aspect ratio of the gallery images",
666
+ "enum": [
667
+ "unset",
668
+ "square",
669
+ "wide",
670
+ "landscape"
671
+ ],
672
+ "default": "unset"
673
+ },
674
+ "lightbox": {
675
+ "type": "boolean",
676
+ "title": "Lightbox",
677
+ "description": "Display images in a lightbox gallery",
678
+ "default": false
679
+ },
680
+ "type": {
681
+ "const": "gallery"
682
+ }
683
+ },
684
+ "additionalProperties": false,
685
+ "required": [
686
+ "images"
687
+ ]
688
+ },
689
+ {
690
+ "$schema": "http://json-schema.org/draft-07/schema#",
691
+ "$id": "http://schema.mydesignsystem.com/hero.schema.json",
692
+ "title": "Hero",
693
+ "type": "object",
694
+ "properties": {
695
+ "headline": {
696
+ "title": "Headline",
697
+ "description": "Headline for the visual",
698
+ "type": "string",
699
+ "format": "markdown"
700
+ },
701
+ "sub": {
702
+ "title": "Module Subheadline",
703
+ "description": "Subheadline below the module headline",
704
+ "type": "string",
705
+ "format": "markdown"
706
+ },
707
+ "text": {
708
+ "title": "Module Text",
709
+ "description": "Info text for the module element",
710
+ "type": "string",
711
+ "format": "markdown"
712
+ },
713
+ "highlightText": {
714
+ "type": "boolean",
715
+ "title": "Highlight Text",
716
+ "description": "Visually highlight the text",
717
+ "default": false
718
+ },
719
+ "colorNeutral": {
720
+ "title": "Color Neutral",
721
+ "description": "Make the text and buttons color neutral",
722
+ "default": false,
723
+ "type": "boolean"
724
+ },
725
+ "height": {
726
+ "title": "Height",
727
+ "type": "string",
728
+ "enum": [
729
+ "small",
730
+ "default",
731
+ "fullImage",
732
+ "fullScreen"
733
+ ],
734
+ "default": "default"
735
+ },
736
+ "textbox": {
737
+ "type": "boolean",
738
+ "title": "Textbox",
739
+ "default": true,
740
+ "description": "Toggle wether you want your text to be displayed within in box"
741
+ },
742
+ "buttons": {
743
+ "type": "array",
744
+ "items": {
745
+ "title": "Button",
746
+ "type": "object",
747
+ "properties": {
748
+ "label": {
749
+ "type": "string",
750
+ "title": "Label",
751
+ "description": "Text content to display inside the button",
752
+ "examples": [
753
+ "Book a meeting"
754
+ ]
755
+ },
756
+ "icon": {
757
+ "type": "string",
758
+ "title": "Icon",
759
+ "description": "Choose an icon"
760
+ },
761
+ "target": {
762
+ "type": "string",
763
+ "title": "Target",
764
+ "description": "Target that should be linked, makes the button behave like a link semantically",
765
+ "format": "uri"
766
+ }
767
+ },
768
+ "additionalProperties": false
769
+ }
770
+ },
771
+ "overlay": {
772
+ "title": "Grid layer",
773
+ "description": "Enable grid layer",
774
+ "type": "boolean",
775
+ "default": false
776
+ },
777
+ "image": {
778
+ "title": "Background image",
779
+ "description": "Sources of background images for different screen sizes",
780
+ "type": "object",
781
+ "required": [
782
+ "srcMobile"
783
+ ],
784
+ "properties": {
785
+ "srcMobile": {
786
+ "title": "Mobile image source",
787
+ "description": "Background image source for small screens",
788
+ "type": "string",
789
+ "format": "image",
790
+ "examples": [
791
+ "https://picsum.photos/seed/kdsvisual/640/270"
792
+ ]
793
+ },
794
+ "srcTablet": {
795
+ "title": "Tablet image source",
796
+ "description": "Background image source for medium screens",
797
+ "type": "string",
798
+ "format": "image",
799
+ "examples": [
800
+ "https://picsum.photos/seed/kdsvisual/1280/540"
801
+ ]
802
+ },
803
+ "srcDesktop": {
804
+ "title": "Desktop image source",
805
+ "description": "Background image source for large screens",
806
+ "type": "string",
807
+ "format": "image",
808
+ "examples": [
809
+ "https://picsum.photos/seed/kdsvisual/1920/810"
810
+ ]
811
+ },
812
+ "src": {
813
+ "title": "Optional source",
814
+ "description": "Override for img tag of picture element, if needed",
815
+ "type": "string",
816
+ "format": "image",
817
+ "examples": [
818
+ "https://picsum.photos/seed/kdsvisual/640/270"
819
+ ]
820
+ },
821
+ "indent": {
822
+ "title": "Image indent",
823
+ "description": "Choose to indent the image horizontally on small screens",
824
+ "type": "string",
825
+ "enum": [
826
+ "none",
827
+ "left",
828
+ "right"
829
+ ],
830
+ "default": "none"
831
+ },
832
+ "alt": {
833
+ "title": "Alt text",
834
+ "description": "Alt text to display for picture",
835
+ "type": "string"
836
+ }
837
+ },
838
+ "additionalProperties": false
839
+ },
840
+ "textPosition": {
841
+ "title": "Module aligment",
842
+ "description": "Choose the alginment of the module content",
843
+ "enum": [
844
+ "center",
845
+ "below",
846
+ "left",
847
+ "right"
848
+ ],
849
+ "type": "string",
850
+ "default": "bottom"
851
+ },
852
+ "type": {
853
+ "const": "hero"
854
+ }
855
+ },
856
+ "additionalProperties": false
857
+ },
858
+ {
859
+ "$schema": "http://json-schema.org/draft-07/schema#",
860
+ "$id": "http://schema.mydesignsystem.com/image-story.schema.json",
861
+ "title": "Image Story",
862
+ "type": "object",
863
+ "properties": {
864
+ "headline": {
865
+ "title": "Module Headline",
866
+ "description": "Headline for the module element",
867
+ "type": "string",
868
+ "format": "markdown",
869
+ "examples": [
870
+ "Headline"
871
+ ]
872
+ },
873
+ "largeHeadline": {
874
+ "type": "boolean",
875
+ "title": "Large Headline",
876
+ "description": "Make the headline larger",
877
+ "default": false
878
+ },
879
+ "sub": {
880
+ "title": "Module Subheadline",
881
+ "description": "Subheadline below the module headline",
882
+ "type": "string",
883
+ "format": "markdown",
884
+ "examples": [
885
+ "Subheadline"
886
+ ]
887
+ },
888
+ "text": {
889
+ "title": "Module Text",
890
+ "description": "Info text for the module element",
891
+ "type": "string",
892
+ "format": "markdown"
893
+ },
894
+ "layout": {
895
+ "type": "string",
896
+ "title": "Layout",
897
+ "description": "Choose the layout for the component",
898
+ "enum": [
899
+ "textLeft",
900
+ "imageLeft"
901
+ ],
902
+ "default": "imageLeft"
903
+ },
904
+ "padding": {
905
+ "type": "boolean",
906
+ "title": "Padding",
907
+ "default": false,
908
+ "description": "Give the component padding"
909
+ },
910
+ "buttons": {
911
+ "title": "Buttons",
912
+ "description": "Buttons of the Button Group",
913
+ "type": "array",
914
+ "items": {
915
+ "$schema": "http://json-schema.org/draft-07/schema#",
916
+ "$id": "http://schema.mydesignsystem.com/button.schema.json",
917
+ "title": "Button",
918
+ "description": "Component used for user interaction",
919
+ "type": "object",
920
+ "properties": {
921
+ "label": {
922
+ "type": "string",
923
+ "title": "Label",
924
+ "description": "Text content to display inside the button",
925
+ "examples": [
926
+ "Book a meeting"
927
+ ]
928
+ },
929
+ "target": {
930
+ "type": "string",
931
+ "title": "Target",
932
+ "description": "Target that should be linked, makes the button behave like a link semantically",
933
+ "format": "uri"
934
+ },
935
+ "variant": {
936
+ "type": "string",
937
+ "title": "Variant",
938
+ "description": "Variant of button to be used",
939
+ "enum": [
940
+ "primary",
941
+ "secondary",
942
+ "tertiary"
943
+ ],
944
+ "default": "secondary"
945
+ },
946
+ "icon": {
947
+ "type": "string",
948
+ "title": "Icon",
949
+ "description": "Choose an icon"
950
+ },
951
+ "size": {
952
+ "type": "string",
953
+ "title": "Size",
954
+ "description": "Size of button to use",
955
+ "enum": [
956
+ "small",
957
+ "medium",
958
+ "large"
959
+ ],
960
+ "default": "medium"
961
+ },
962
+ "disabled": {
963
+ "type": "boolean",
964
+ "title": "Disabled?",
965
+ "description": "Whether the button should be disabled",
966
+ "default": false
967
+ },
968
+ "type": {
969
+ "const": "button"
970
+ }
971
+ },
972
+ "additionalProperties": false,
973
+ "required": [
974
+ "label"
975
+ ]
976
+ }
977
+ },
978
+ "image": {
979
+ "title": "Image",
980
+ "description": "Image displayed alongside the text content",
981
+ "type": "object",
982
+ "properties": {
983
+ "src": {
984
+ "title": "Image source",
985
+ "description": "Image source to use",
986
+ "type": "string",
987
+ "format": "image"
988
+ },
989
+ "aspectRatio": {
990
+ "type": "string",
991
+ "title": "Aspect Ratio",
992
+ "description": "The aspect ratio of the image",
993
+ "enum": [
994
+ "unset",
995
+ "square",
996
+ "wide",
997
+ "landscape"
998
+ ],
999
+ "default": "unset"
1000
+ },
1001
+ "alt": {
1002
+ "title": "Alt text",
1003
+ "description": "Image description",
1004
+ "type": "string"
1005
+ },
1006
+ "vAlign": {
1007
+ "title": "Image vertical alignment",
1008
+ "description": "Select a vertical alignment for the image",
1009
+ "type": "string",
1010
+ "enum": [
1011
+ "center",
1012
+ "top",
1013
+ "bottom"
1014
+ ],
1015
+ "default": "top"
1016
+ }
1017
+ },
1018
+ "additionalProperties": false
1019
+ },
1020
+ "textAlign": {
1021
+ "title": "Text Alignment",
1022
+ "description": "Choose the alginment of the text",
1023
+ "enum": [
1024
+ "left",
1025
+ "center"
1026
+ ],
1027
+ "type": "string",
1028
+ "default": "left"
1029
+ },
1030
+ "type": {
1031
+ "const": "image-story"
1032
+ }
1033
+ },
1034
+ "additionalProperties": false
1035
+ },
1036
+ {
1037
+ "$schema": "http://json-schema.org/draft-07/schema#",
1038
+ "$id": "http://schema.mydesignsystem.com/image-text.schema.json",
1039
+ "title": "Image Text",
1040
+ "description": "Component used to display an image beside or above/below a text block",
1041
+ "type": "object",
1042
+ "properties": {
1043
+ "text": {
1044
+ "type": "string",
1045
+ "format": "markdown",
1046
+ "title": "Text",
1047
+ "description": "Text content to display beside the image",
1048
+ "examples": [
1049
+ "This is a sample text"
1050
+ ]
1051
+ },
1052
+ "highlightText": {
1053
+ "type": "boolean",
1054
+ "title": "Highlight Text",
1055
+ "description": "Visually highlight the text",
1056
+ "default": false
1057
+ },
1058
+ "image": {
1059
+ "type": "object",
1060
+ "properties": {
1061
+ "src": {
1062
+ "type": "string",
1063
+ "format": "image",
1064
+ "title": "Image Source",
1065
+ "description": "URL of the image to display",
1066
+ "examples": [
1067
+ "http://example.com/image.jpg"
1068
+ ]
1069
+ },
1070
+ "alt": {
1071
+ "type": "string",
1072
+ "title": "Alt Text",
1073
+ "description": "Alt text of the image",
1074
+ "examples": [
1075
+ "http://example.com/image.jpg"
1076
+ ]
1077
+ }
1078
+ },
1079
+ "additionalProperties": false
1080
+ },
1081
+ "layout": {
1082
+ "type": "string",
1083
+ "enum": [
1084
+ "above",
1085
+ "below",
1086
+ "beside-right",
1087
+ "beside-left"
1088
+ ],
1089
+ "title": "Layout",
1090
+ "description": "Position of the image relative to the text",
1091
+ "examples": [
1092
+ "above"
1093
+ ]
1094
+ },
1095
+ "type": {
1096
+ "const": "image-text"
1097
+ }
1098
+ },
1099
+ "required": [
1100
+ "text",
1101
+ "image",
1102
+ "layout"
1103
+ ],
1104
+ "additionalProperties": false
1105
+ },
1106
+ {
1107
+ "$schema": "http://json-schema.org/draft-07/schema#",
1108
+ "$id": "http://schema.mydesignsystem.com/logos.schema.json",
1109
+ "title": "Logos",
1110
+ "description": "Component used to display a set of logos",
1111
+ "type": "object",
1112
+ "properties": {
1113
+ "tagline": {
1114
+ "type": "string",
1115
+ "title": "Logo Tagline",
1116
+ "description": "A short tagline atop the logos",
1117
+ "examples": [
1118
+ "Your Success, Our Commitment"
1119
+ ]
1120
+ },
1121
+ "logo": {
1122
+ "type": "array",
1123
+ "title": "Logos",
1124
+ "description": "The logos to display",
1125
+ "items": {
1126
+ "title": "Logo",
1127
+ "description": "Logo entry for Logos component",
1128
+ "type": "object",
1129
+ "properties": {
1130
+ "src": {
1131
+ "type": "string",
1132
+ "format": "image",
1133
+ "title": "URL",
1134
+ "description": "The URL of the logo image",
1135
+ "examples": [
1136
+ "img/logos/logoipsum-212.svg",
1137
+ "img/logos/logoipsum-217.svg",
1138
+ "img/logos/logoipsum-239.svg",
1139
+ "img/logos/logoipsum-244.svg",
1140
+ "img/logos/logoipsum-250.svg",
1141
+ "img/logos/logoipsum-286.svg"
1142
+ ]
1143
+ },
1144
+ "alt": {
1145
+ "type": "string",
1146
+ "title": "Caption",
1147
+ "description": "The alt text of the logo",
1148
+ "examples": [
1149
+ "Logo 1"
1150
+ ]
1151
+ }
1152
+ },
1153
+ "additionalProperties": false,
1154
+ "required": [
1155
+ "src"
1156
+ ]
1157
+ },
1158
+ "minItems": 1,
1159
+ "maxItems": 20
1160
+ },
1161
+ "align": {
1162
+ "type": "string",
1163
+ "title": "Alignment",
1164
+ "description": "The alignment of the logo layout",
1165
+ "enum": [
1166
+ "left",
1167
+ "center"
1168
+ ],
1169
+ "default": "center"
1170
+ },
1171
+ "logosPerRow": {
1172
+ "type": "integer",
1173
+ "title": "Logos Per Row",
1174
+ "description": "The amount of logos to display per row",
1175
+ "minimum": 2,
1176
+ "maximum": 8,
1177
+ "examples": [
1178
+ 5
1179
+ ]
1180
+ },
1181
+ "cta": {
1182
+ "type": "object",
1183
+ "title": "Call to Action",
1184
+ "description": "The call to action",
1185
+ "properties": {
1186
+ "toggle": {
1187
+ "type": "boolean",
1188
+ "default": false,
1189
+ "title": "CTA Toggle",
1190
+ "description": "Activate/disable the CTA"
1191
+ },
1192
+ "text": {
1193
+ "type": "string",
1194
+ "title": "Call to Action Text",
1195
+ "description": "A short CTA text",
1196
+ "examples": [
1197
+ "Explore the success stories of our valued customers and discover more about their journey."
1198
+ ]
1199
+ },
1200
+ "link": {
1201
+ "type": "string",
1202
+ "title": "Call to Action Link",
1203
+ "description": "The CTA link",
1204
+ "default": "#",
1205
+ "format": "uri"
1206
+ },
1207
+ "label": {
1208
+ "type": "string",
1209
+ "title": "Link Label",
1210
+ "description": "The text label displayed on the link",
1211
+ "examples": [
1212
+ "See all our partners"
1213
+ ]
1214
+ },
1215
+ "style": {
1216
+ "type": "string",
1217
+ "enum": [
1218
+ "button",
1219
+ "text"
1220
+ ],
1221
+ "default": "text"
1222
+ }
1223
+ },
1224
+ "additionalProperties": false,
1225
+ "required": [
1226
+ "style",
1227
+ "link",
1228
+ "label"
1229
+ ]
1230
+ },
1231
+ "type": {
1232
+ "const": "logos"
1233
+ }
1234
+ },
1235
+ "additionalProperties": false,
1236
+ "required": [
1237
+ "logos"
1238
+ ]
1239
+ },
1240
+ {
1241
+ "$schema": "http://json-schema.org/draft-07/schema#",
1242
+ "$id": "http://schema.mydesignsystem.com/mosaic.schema.json",
1243
+ "title": "Mosaic",
1244
+ "type": "object",
1245
+ "properties": {
1246
+ "layout": {
1247
+ "title": "Layout",
1248
+ "description": "Layout of the mosaic component",
1249
+ "type": "string",
1250
+ "enum": [
1251
+ "alternate",
1252
+ "textLeft",
1253
+ "textRight"
1254
+ ],
1255
+ "default": "alternate"
1256
+ },
1257
+ "largeHeadlines": {
1258
+ "type": "boolean",
1259
+ "title": "Large Headlines",
1260
+ "description": "Make the headlines larger",
1261
+ "default": false
1262
+ },
1263
+ "tile": {
1264
+ "type": "array",
1265
+ "title": "Tiles",
1266
+ "description": "The tiles to display",
1267
+ "items": {
1268
+ "$schema": "http://json-schema.org/draft-07/schema#",
1269
+ "$id": "http://schema.mydesignsystem.com/tile.schema.json",
1270
+ "title": "Tile",
1271
+ "type": "object",
1272
+ "properties": {
1273
+ "headline": {
1274
+ "title": "Headline",
1275
+ "description": "Headline for the tile",
1276
+ "type": "string",
1277
+ "format": "markdown"
1278
+ },
1279
+ "sub": {
1280
+ "title": "Module Subheadline",
1281
+ "description": "Subheadline below the tile headline",
1282
+ "type": "string",
1283
+ "format": "markdown"
1284
+ },
1285
+ "text": {
1286
+ "title": "Module Text",
1287
+ "description": "Text for tile",
1288
+ "type": "string",
1289
+ "format": "markdown"
1290
+ },
1291
+ "image": {
1292
+ "type": "object",
1293
+ "properties": {
1294
+ "src": {
1295
+ "title": "Source",
1296
+ "description": "Picture source",
1297
+ "type": "string",
1298
+ "format": "image",
1299
+ "examples": [
1300
+ "img/close-up-young-business-team-working.png"
1301
+ ]
1302
+ },
1303
+ "alt": {
1304
+ "title": "Alt text",
1305
+ "description": "Alt text to display for picture",
1306
+ "type": "string"
1307
+ }
1308
+ },
1309
+ "additionalProperties": false
1310
+ },
1311
+ "button": {
1312
+ "type": "object",
1313
+ "properties": {
1314
+ "toggle": {
1315
+ "title": "Button Toggle",
1316
+ "description": "Toggle wether the Button is displayed or not",
1317
+ "type": "boolean",
1318
+ "default": true
1319
+ },
1320
+ "label": {
1321
+ "type": "string",
1322
+ "title": "Label",
1323
+ "description": "Text content to display inside the button",
1324
+ "examples": [
1325
+ "Book a meeting"
1326
+ ]
1327
+ },
1328
+ "target": {
1329
+ "type": "string",
1330
+ "title": "Target",
1331
+ "description": "Target that should be linked, makes the button behave like a link semantically",
1332
+ "format": "uri"
1333
+ },
1334
+ "icon": {
1335
+ "type": "string",
1336
+ "title": "Icon",
1337
+ "description": "Choose an icon"
1338
+ }
1339
+ },
1340
+ "additionalProperties": false
1341
+ },
1342
+ "backgroundColor": {
1343
+ "title": "Background color",
1344
+ "description": "Background color for the whole element",
1345
+ "type": "string",
1346
+ "format": "color"
1347
+ },
1348
+ "backgroundImage": {
1349
+ "title": "Background image",
1350
+ "description": "Background image for the whole element",
1351
+ "type": "string",
1352
+ "format": "image"
1353
+ },
1354
+ "textColor": {
1355
+ "title": "Text color",
1356
+ "description": "Overwrite the color to use for the text content",
1357
+ "type": "string",
1358
+ "format": "color"
1359
+ },
1360
+ "type": {
1361
+ "const": "tile"
1362
+ }
1363
+ },
1364
+ "additionalProperties": false,
1365
+ "required": [
1366
+ "headline",
1367
+ "image"
1368
+ ]
1369
+ },
1370
+ "minItems": 1,
1371
+ "maxItems": 20
1372
+ },
1373
+ "type": {
1374
+ "const": "mosaic"
1375
+ }
1376
+ },
1377
+ "additionalProperties": false
1378
+ },
1379
+ {
1380
+ "$schema": "http://json-schema.org/draft-07/schema#",
1381
+ "$id": "http://schema.mydesignsystem.com/slider.schema.json",
1382
+ "title": "Slider",
1383
+ "type": "object",
1384
+ "properties": {
1385
+ "autoplay": {
1386
+ "title": "Auto play",
1387
+ "description": "Automatically move to next slide after 4 seconds without user interaction",
1388
+ "type": "boolean",
1389
+ "default": false
1390
+ },
1391
+ "nav": {
1392
+ "title": "Show Navigation",
1393
+ "description": "Add bullet navigation",
1394
+ "type": "boolean",
1395
+ "examples": [
1396
+ true
1397
+ ]
1398
+ },
1399
+ "teaseNeighbours": {
1400
+ "title": "Tease Neighbour Slides",
1401
+ "type": "boolean",
1402
+ "default": false
1403
+ },
1404
+ "equalHeight": {
1405
+ "title": "Equalize slides heights",
1406
+ "type": "boolean",
1407
+ "default": true
1408
+ },
1409
+ "gap": {
1410
+ "title": "Gap",
1411
+ "description": "Size of the gap added between slides in pixels",
1412
+ "type": "number",
1413
+ "default": 0
1414
+ },
1415
+ "arrows": {
1416
+ "title": "Show Arrows",
1417
+ "description": "Add arrows on the left and right to navigate to next or previous slide",
1418
+ "type": "boolean",
1419
+ "examples": [
1420
+ true
1421
+ ]
1422
+ },
1423
+ "type": {
1424
+ "const": "slider"
1425
+ },
1426
+ "className": {
1427
+ "title": "Class",
1428
+ "description": "Additional css classes attached to the wrapping element",
1429
+ "type": "string"
1430
+ },
1431
+ "components": {
1432
+ "type": "array",
1433
+ "title": "Content",
1434
+ "description": "Allowed components for content",
1435
+ "items": {
1436
+ "anyOf": [
1437
+ {
1438
+ "$schema": "http://json-schema.org/draft-07/schema#",
1439
+ "$id": "http://schema.mydesignsystem.com/cta.schema.json",
1440
+ "title": "Cta",
1441
+ "type": "object",
1442
+ "properties": {
1443
+ "headline": {
1444
+ "title": "Component Headline",
1445
+ "description": "Headline for the Component element",
1446
+ "type": "string",
1447
+ "format": "markdown",
1448
+ "examples": [
1449
+ "Headline"
1450
+ ]
1451
+ },
1452
+ "sub": {
1453
+ "title": "Component Subheadline",
1454
+ "description": "Subheadline below the component headline",
1455
+ "type": "string",
1456
+ "format": "markdown",
1457
+ "examples": [
1458
+ "Subheadline"
1459
+ ]
1460
+ },
1461
+ "text": {
1462
+ "title": "Component Text",
1463
+ "description": "Info text for the component element",
1464
+ "type": "string",
1465
+ "format": "markdown"
1466
+ },
1467
+ "highlightText": {
1468
+ "type": "boolean",
1469
+ "title": "Highlight Text",
1470
+ "description": "Visually highlight the text",
1471
+ "default": false
1472
+ },
1473
+ "colorNeutral": {
1474
+ "title": "Color Neutral",
1475
+ "description": "Make the text and buttons color neutral",
1476
+ "default": false,
1477
+ "type": "boolean"
1478
+ },
1479
+ "fullWidth": {
1480
+ "title": "Width",
1481
+ "description": "Set the width of the content to the full width of the element",
1482
+ "type": "boolean",
1483
+ "default": false
1484
+ },
1485
+ "buttons": {
1486
+ "type": "array",
1487
+ "items": {
1488
+ "title": "Button",
1489
+ "type": "object",
1490
+ "properties": {
1491
+ "label": {
1492
+ "type": "string",
1493
+ "title": "Label",
1494
+ "description": "Text content to display inside the button",
1495
+ "examples": [
1496
+ "Book a meeting"
1497
+ ]
1498
+ },
1499
+ "icon": {
1500
+ "type": "string",
1501
+ "title": "Icon",
1502
+ "description": "Choose an icon"
1503
+ },
1504
+ "target": {
1505
+ "type": "string",
1506
+ "title": "Target",
1507
+ "description": "Target that should be linked, makes the button behave like a link semantically",
1508
+ "format": "uri"
1509
+ }
1510
+ },
1511
+ "additionalProperties": false
1512
+ }
1513
+ },
1514
+ "backgroundColor": {
1515
+ "title": "Background color",
1516
+ "description": "Background color for the whole element",
1517
+ "type": "string",
1518
+ "format": "color"
1519
+ },
1520
+ "backgroundImage": {
1521
+ "title": "Background image",
1522
+ "description": "Background image for the whole element",
1523
+ "type": "string",
1524
+ "format": "image"
1525
+ },
1526
+ "image": {
1527
+ "title": "Image",
1528
+ "description": "Image displayed alongside the text content",
1529
+ "type": "object",
1530
+ "properties": {
1531
+ "src": {
1532
+ "title": "Image source",
1533
+ "description": "Image source to use",
1534
+ "type": "string",
1535
+ "format": "image"
1536
+ },
1537
+ "padding": {
1538
+ "title": "Padding",
1539
+ "description": "Toggle padding of the image",
1540
+ "type": "boolean",
1541
+ "default": true
1542
+ },
1543
+ "alt": {
1544
+ "title": "Alt text",
1545
+ "description": "Image description",
1546
+ "type": "string"
1547
+ }
1548
+ },
1549
+ "additionalProperties": false
1550
+ },
1551
+ "order": {
1552
+ "title": "Order",
1553
+ "description": "Choose what comes first on mobile and desktop: image or text",
1554
+ "type": "object",
1555
+ "properties": {
1556
+ "mobileImageLast": {
1557
+ "title": "Mobile image after text",
1558
+ "description": "Switch to displaying the image after the text on mobile",
1559
+ "type": "boolean",
1560
+ "default": false
1561
+ },
1562
+ "desktopImageLast": {
1563
+ "title": "Desktop image after text",
1564
+ "description": "Switch to displaying the image after the text on desktop",
1565
+ "type": "boolean",
1566
+ "default": true
1567
+ }
1568
+ },
1569
+ "additionalProperties": false
1570
+ },
1571
+ "textAlign": {
1572
+ "title": "Text Alignment",
1573
+ "description": "Choose the alginment of the text",
1574
+ "enum": [
1575
+ "left",
1576
+ "center"
1577
+ ],
1578
+ "type": "string",
1579
+ "default": "left"
1580
+ },
1581
+ "contentAlign": {
1582
+ "title": "Vertical alignment of the content",
1583
+ "description": "Select a vertical alignment for the image",
1584
+ "type": "string",
1585
+ "enum": [
1586
+ "center",
1587
+ "top",
1588
+ "bottom"
1589
+ ],
1590
+ "default": "center"
1591
+ },
1592
+ "type": {
1593
+ "const": "cta"
1594
+ }
1595
+ },
1596
+ "additionalProperties": false
1597
+ },
1598
+ {
1599
+ "$schema": "http://json-schema.org/draft-07/schema#",
1600
+ "$id": "http://schema.mydesignsystem.com/features.schema.json",
1601
+ "title": "Features",
1602
+ "description": "Component used to display a set of features",
1603
+ "type": "object",
1604
+ "properties": {
1605
+ "layout": {
1606
+ "type": "string",
1607
+ "title": "Layout",
1608
+ "description": "The layout variant to use for the features",
1609
+ "enum": [
1610
+ "largeTiles",
1611
+ "smallTiles",
1612
+ "list"
1613
+ ],
1614
+ "default": "largeTiles"
1615
+ },
1616
+ "style": {
1617
+ "type": "string",
1618
+ "enum": [
1619
+ "intext",
1620
+ "stack",
1621
+ "centered",
1622
+ "besideLarge",
1623
+ "besideSmall"
1624
+ ],
1625
+ "default": "stack"
1626
+ },
1627
+ "ctas": {
1628
+ "type": "object",
1629
+ "properties": {
1630
+ "toggle": {
1631
+ "type": "boolean",
1632
+ "default": true,
1633
+ "title": "CTA Toggle",
1634
+ "description": "Activate/disable the CTAs"
1635
+ },
1636
+ "style": {
1637
+ "type": "string",
1638
+ "enum": [
1639
+ "button",
1640
+ "link",
1641
+ "intext"
1642
+ ],
1643
+ "default": "link"
1644
+ }
1645
+ },
1646
+ "additionalProperties": false
1647
+ },
1648
+ "feature": {
1649
+ "type": "array",
1650
+ "title": "Features",
1651
+ "description": "The features to display",
1652
+ "items": {
1653
+ "$schema": "http://json-schema.org/draft-07/schema#",
1654
+ "$id": "http://schema.mydesignsystem.com/feature.schema.json",
1655
+ "title": "Feature",
1656
+ "description": "Partial Component used to display a feature",
1657
+ "type": "object",
1658
+ "properties": {
1659
+ "icon": {
1660
+ "type": "string",
1661
+ "title": "Icon",
1662
+ "description": "The icon for the feature",
1663
+ "examples": [
1664
+ "person"
1665
+ ]
1666
+ },
1667
+ "title": {
1668
+ "type": "string",
1669
+ "title": "Title",
1670
+ "description": "The title of the feature",
1671
+ "examples": [
1672
+ "Feature 1"
1673
+ ]
1674
+ },
1675
+ "text": {
1676
+ "type": "string",
1677
+ "title": "Text",
1678
+ "description": "The description of the feature",
1679
+ "format": "markdown",
1680
+ "examples": [
1681
+ "This is a feature"
1682
+ ]
1683
+ },
1684
+ "style": {
1685
+ "type": "string",
1686
+ "enum": [
1687
+ "intext",
1688
+ "stack",
1689
+ "centered",
1690
+ "besideLarge",
1691
+ "besideSmall"
1692
+ ],
1693
+ "default": "stack"
1694
+ },
1695
+ "cta": {
1696
+ "type": "object",
1697
+ "title": "Call to Action",
1698
+ "description": "The call to action",
1699
+ "properties": {
1700
+ "target": {
1701
+ "type": "string",
1702
+ "title": "Call to Action target",
1703
+ "description": "The CTA target",
1704
+ "default": "#",
1705
+ "format": "uri"
1706
+ },
1707
+ "label": {
1708
+ "type": "string",
1709
+ "title": "Link Label",
1710
+ "description": "The text label displayed on the link",
1711
+ "default": "See more",
1712
+ "examples": [
1713
+ "See all our partners"
1714
+ ]
1715
+ },
1716
+ "toggle": {
1717
+ "type": "boolean",
1718
+ "title": "Call to Action Toggle",
1719
+ "description": "Activate/disable the CTAs",
1720
+ "default": true
1721
+ },
1722
+ "style": {
1723
+ "type": "string",
1724
+ "description": "Choose the style of the CTA",
1725
+ "enum": [
1726
+ "button",
1727
+ "link",
1728
+ "intext"
1729
+ ],
1730
+ "default": "link"
1731
+ }
1732
+ },
1733
+ "additionalProperties": false
1734
+ },
1735
+ "type": {
1736
+ "const": "feature"
1737
+ }
1738
+ },
1739
+ "additionalProperties": false,
1740
+ "required": [
1741
+ "title"
1742
+ ]
1743
+ },
1744
+ "minItems": 1,
1745
+ "maxItems": 8
1746
+ },
1747
+ "type": {
1748
+ "const": "features"
1749
+ }
1750
+ },
1751
+ "additionalProperties": false
1752
+ },
1753
+ {
1754
+ "$schema": "http://json-schema.org/draft-07/schema#",
1755
+ "$id": "http://schema.mydesignsystem.com/gallery.schema.json",
1756
+ "title": "Gallery",
1757
+ "description": "Component used to display a gallery of images",
1758
+ "type": "object",
1759
+ "properties": {
1760
+ "images": {
1761
+ "type": "array",
1762
+ "title": "Images",
1763
+ "description": "The images to display in the gallery",
1764
+ "items": {
1765
+ "type": "object",
1766
+ "properties": {
1767
+ "src": {
1768
+ "type": "string",
1769
+ "title": "src",
1770
+ "format": "image",
1771
+ "description": "The source of the image",
1772
+ "examples": [
1773
+ "https://example.com/image1.jpg"
1774
+ ]
1775
+ },
1776
+ "alt": {
1777
+ "type": "string",
1778
+ "title": "Alt text",
1779
+ "description": "Alt text of the image",
1780
+ "examples": [
1781
+ "https://example.com/image1.jpg"
1782
+ ]
1783
+ },
1784
+ "caption": {
1785
+ "type": "string",
1786
+ "format": "markdown",
1787
+ "title": "Caption",
1788
+ "description": "The caption of the image",
1789
+ "examples": [
1790
+ "Caption Image"
1791
+ ]
1792
+ }
1793
+ },
1794
+ "additionalProperties": false,
1795
+ "required": [
1796
+ "src"
1797
+ ]
1798
+ },
1799
+ "minItems": 1,
1800
+ "maxItems": 10
1801
+ },
1802
+ "layout": {
1803
+ "type": "string",
1804
+ "title": "Layout",
1805
+ "description": "The layout of the gallery images",
1806
+ "enum": [
1807
+ "stack",
1808
+ "smallTiles",
1809
+ "largeTiles"
1810
+ ]
1811
+ },
1812
+ "aspectRatio": {
1813
+ "type": "string",
1814
+ "title": "Aspect Ratio",
1815
+ "description": "The aspect ratio of the gallery images",
1816
+ "enum": [
1817
+ "unset",
1818
+ "square",
1819
+ "wide",
1820
+ "landscape"
1821
+ ],
1822
+ "default": "unset"
1823
+ },
1824
+ "lightbox": {
1825
+ "type": "boolean",
1826
+ "title": "Lightbox",
1827
+ "description": "Display images in a lightbox gallery",
1828
+ "default": false
1829
+ },
1830
+ "type": {
1831
+ "const": "gallery"
1832
+ }
1833
+ },
1834
+ "additionalProperties": false,
1835
+ "required": [
1836
+ "images"
1837
+ ]
1838
+ },
1839
+ {
1840
+ "$schema": "http://json-schema.org/draft-07/schema#",
1841
+ "$id": "http://schema.mydesignsystem.com/hero.schema.json",
1842
+ "title": "Hero",
1843
+ "type": "object",
1844
+ "properties": {
1845
+ "headline": {
1846
+ "title": "Headline",
1847
+ "description": "Headline for the visual",
1848
+ "type": "string",
1849
+ "format": "markdown"
1850
+ },
1851
+ "sub": {
1852
+ "title": "Module Subheadline",
1853
+ "description": "Subheadline below the module headline",
1854
+ "type": "string",
1855
+ "format": "markdown"
1856
+ },
1857
+ "text": {
1858
+ "title": "Module Text",
1859
+ "description": "Info text for the module element",
1860
+ "type": "string",
1861
+ "format": "markdown"
1862
+ },
1863
+ "highlightText": {
1864
+ "type": "boolean",
1865
+ "title": "Highlight Text",
1866
+ "description": "Visually highlight the text",
1867
+ "default": false
1868
+ },
1869
+ "colorNeutral": {
1870
+ "title": "Color Neutral",
1871
+ "description": "Make the text and buttons color neutral",
1872
+ "default": false,
1873
+ "type": "boolean"
1874
+ },
1875
+ "height": {
1876
+ "title": "Height",
1877
+ "type": "string",
1878
+ "enum": [
1879
+ "small",
1880
+ "default",
1881
+ "fullImage",
1882
+ "fullScreen"
1883
+ ],
1884
+ "default": "default"
1885
+ },
1886
+ "textbox": {
1887
+ "type": "boolean",
1888
+ "title": "Textbox",
1889
+ "default": true,
1890
+ "description": "Toggle wether you want your text to be displayed within in box"
1891
+ },
1892
+ "buttons": {
1893
+ "type": "array",
1894
+ "items": {
1895
+ "title": "Button",
1896
+ "type": "object",
1897
+ "properties": {
1898
+ "label": {
1899
+ "type": "string",
1900
+ "title": "Label",
1901
+ "description": "Text content to display inside the button",
1902
+ "examples": [
1903
+ "Book a meeting"
1904
+ ]
1905
+ },
1906
+ "icon": {
1907
+ "type": "string",
1908
+ "title": "Icon",
1909
+ "description": "Choose an icon"
1910
+ },
1911
+ "target": {
1912
+ "type": "string",
1913
+ "title": "Target",
1914
+ "description": "Target that should be linked, makes the button behave like a link semantically",
1915
+ "format": "uri"
1916
+ }
1917
+ },
1918
+ "additionalProperties": false
1919
+ }
1920
+ },
1921
+ "overlay": {
1922
+ "title": "Grid layer",
1923
+ "description": "Enable grid layer",
1924
+ "type": "boolean",
1925
+ "default": false
1926
+ },
1927
+ "image": {
1928
+ "title": "Background image",
1929
+ "description": "Sources of background images for different screen sizes",
1930
+ "type": "object",
1931
+ "required": [
1932
+ "srcMobile"
1933
+ ],
1934
+ "properties": {
1935
+ "srcMobile": {
1936
+ "title": "Mobile image source",
1937
+ "description": "Background image source for small screens",
1938
+ "type": "string",
1939
+ "format": "image",
1940
+ "examples": [
1941
+ "https://picsum.photos/seed/kdsvisual/640/270"
1942
+ ]
1943
+ },
1944
+ "srcTablet": {
1945
+ "title": "Tablet image source",
1946
+ "description": "Background image source for medium screens",
1947
+ "type": "string",
1948
+ "format": "image",
1949
+ "examples": [
1950
+ "https://picsum.photos/seed/kdsvisual/1280/540"
1951
+ ]
1952
+ },
1953
+ "srcDesktop": {
1954
+ "title": "Desktop image source",
1955
+ "description": "Background image source for large screens",
1956
+ "type": "string",
1957
+ "format": "image",
1958
+ "examples": [
1959
+ "https://picsum.photos/seed/kdsvisual/1920/810"
1960
+ ]
1961
+ },
1962
+ "src": {
1963
+ "title": "Optional source",
1964
+ "description": "Override for img tag of picture element, if needed",
1965
+ "type": "string",
1966
+ "format": "image",
1967
+ "examples": [
1968
+ "https://picsum.photos/seed/kdsvisual/640/270"
1969
+ ]
1970
+ },
1971
+ "indent": {
1972
+ "title": "Image indent",
1973
+ "description": "Choose to indent the image horizontally on small screens",
1974
+ "type": "string",
1975
+ "enum": [
1976
+ "none",
1977
+ "left",
1978
+ "right"
1979
+ ],
1980
+ "default": "none"
1981
+ },
1982
+ "alt": {
1983
+ "title": "Alt text",
1984
+ "description": "Alt text to display for picture",
1985
+ "type": "string"
1986
+ }
1987
+ },
1988
+ "additionalProperties": false
1989
+ },
1990
+ "textPosition": {
1991
+ "title": "Module aligment",
1992
+ "description": "Choose the alginment of the module content",
1993
+ "enum": [
1994
+ "center",
1995
+ "below",
1996
+ "left",
1997
+ "right"
1998
+ ],
1999
+ "type": "string",
2000
+ "default": "bottom"
2001
+ },
2002
+ "type": {
2003
+ "const": "hero"
2004
+ }
2005
+ },
2006
+ "additionalProperties": false
2007
+ },
2008
+ {
2009
+ "$schema": "http://json-schema.org/draft-07/schema#",
2010
+ "$id": "http://schema.mydesignsystem.com/image-text.schema.json",
2011
+ "title": "Image Text",
2012
+ "description": "Component used to display an image beside or above/below a text block",
2013
+ "type": "object",
2014
+ "properties": {
2015
+ "text": {
2016
+ "type": "string",
2017
+ "format": "markdown",
2018
+ "title": "Text",
2019
+ "description": "Text content to display beside the image",
2020
+ "examples": [
2021
+ "This is a sample text"
2022
+ ]
2023
+ },
2024
+ "highlightText": {
2025
+ "type": "boolean",
2026
+ "title": "Highlight Text",
2027
+ "description": "Visually highlight the text",
2028
+ "default": false
2029
+ },
2030
+ "image": {
2031
+ "type": "object",
2032
+ "properties": {
2033
+ "src": {
2034
+ "type": "string",
2035
+ "format": "image",
2036
+ "title": "Image Source",
2037
+ "description": "URL of the image to display",
2038
+ "examples": [
2039
+ "http://example.com/image.jpg"
2040
+ ]
2041
+ },
2042
+ "alt": {
2043
+ "type": "string",
2044
+ "title": "Alt Text",
2045
+ "description": "Alt text of the image",
2046
+ "examples": [
2047
+ "http://example.com/image.jpg"
2048
+ ]
2049
+ }
2050
+ },
2051
+ "additionalProperties": false
2052
+ },
2053
+ "layout": {
2054
+ "type": "string",
2055
+ "enum": [
2056
+ "above",
2057
+ "below",
2058
+ "beside-right",
2059
+ "beside-left"
2060
+ ],
2061
+ "title": "Layout",
2062
+ "description": "Position of the image relative to the text",
2063
+ "examples": [
2064
+ "above"
2065
+ ]
2066
+ },
2067
+ "type": {
2068
+ "const": "image-text"
2069
+ }
2070
+ },
2071
+ "required": [
2072
+ "text",
2073
+ "image",
2074
+ "layout"
2075
+ ],
2076
+ "additionalProperties": false
2077
+ },
2078
+ {
2079
+ "$schema": "http://json-schema.org/draft-07/schema#",
2080
+ "$id": "http://schema.mydesignsystem.com/logos.schema.json",
2081
+ "title": "Logos",
2082
+ "description": "Component used to display a set of logos",
2083
+ "type": "object",
2084
+ "properties": {
2085
+ "tagline": {
2086
+ "type": "string",
2087
+ "title": "Logo Tagline",
2088
+ "description": "A short tagline atop the logos",
2089
+ "examples": [
2090
+ "Your Success, Our Commitment"
2091
+ ]
2092
+ },
2093
+ "logo": {
2094
+ "type": "array",
2095
+ "title": "Logos",
2096
+ "description": "The logos to display",
2097
+ "items": {
2098
+ "title": "Logo",
2099
+ "description": "Logo entry for Logos component",
2100
+ "type": "object",
2101
+ "properties": {
2102
+ "src": {
2103
+ "type": "string",
2104
+ "format": "image",
2105
+ "title": "URL",
2106
+ "description": "The URL of the logo image",
2107
+ "examples": [
2108
+ "img/logos/logoipsum-212.svg",
2109
+ "img/logos/logoipsum-217.svg",
2110
+ "img/logos/logoipsum-239.svg",
2111
+ "img/logos/logoipsum-244.svg",
2112
+ "img/logos/logoipsum-250.svg",
2113
+ "img/logos/logoipsum-286.svg"
2114
+ ]
2115
+ },
2116
+ "alt": {
2117
+ "type": "string",
2118
+ "title": "Caption",
2119
+ "description": "The alt text of the logo",
2120
+ "examples": [
2121
+ "Logo 1"
2122
+ ]
2123
+ }
2124
+ },
2125
+ "additionalProperties": false,
2126
+ "required": [
2127
+ "src"
2128
+ ]
2129
+ },
2130
+ "minItems": 1,
2131
+ "maxItems": 20
2132
+ },
2133
+ "align": {
2134
+ "type": "string",
2135
+ "title": "Alignment",
2136
+ "description": "The alignment of the logo layout",
2137
+ "enum": [
2138
+ "left",
2139
+ "center"
2140
+ ],
2141
+ "default": "center"
2142
+ },
2143
+ "logosPerRow": {
2144
+ "type": "integer",
2145
+ "title": "Logos Per Row",
2146
+ "description": "The amount of logos to display per row",
2147
+ "minimum": 2,
2148
+ "maximum": 8,
2149
+ "examples": [
2150
+ 5
2151
+ ]
2152
+ },
2153
+ "cta": {
2154
+ "type": "object",
2155
+ "title": "Call to Action",
2156
+ "description": "The call to action",
2157
+ "properties": {
2158
+ "toggle": {
2159
+ "type": "boolean",
2160
+ "default": false,
2161
+ "title": "CTA Toggle",
2162
+ "description": "Activate/disable the CTA"
2163
+ },
2164
+ "text": {
2165
+ "type": "string",
2166
+ "title": "Call to Action Text",
2167
+ "description": "A short CTA text",
2168
+ "examples": [
2169
+ "Explore the success stories of our valued customers and discover more about their journey."
2170
+ ]
2171
+ },
2172
+ "link": {
2173
+ "type": "string",
2174
+ "title": "Call to Action Link",
2175
+ "description": "The CTA link",
2176
+ "default": "#",
2177
+ "format": "uri"
2178
+ },
2179
+ "label": {
2180
+ "type": "string",
2181
+ "title": "Link Label",
2182
+ "description": "The text label displayed on the link",
2183
+ "examples": [
2184
+ "See all our partners"
2185
+ ]
2186
+ },
2187
+ "style": {
2188
+ "type": "string",
2189
+ "enum": [
2190
+ "button",
2191
+ "text"
2192
+ ],
2193
+ "default": "text"
2194
+ }
2195
+ },
2196
+ "additionalProperties": false,
2197
+ "required": [
2198
+ "style",
2199
+ "link",
2200
+ "label"
2201
+ ]
2202
+ },
2203
+ "type": {
2204
+ "const": "logos"
2205
+ }
2206
+ },
2207
+ "additionalProperties": false,
2208
+ "required": [
2209
+ "logos"
2210
+ ]
2211
+ },
2212
+ {
2213
+ "$schema": "http://json-schema.org/draft-07/schema#",
2214
+ "$id": "http://schema.mydesignsystem.com/stats.schema.json",
2215
+ "title": "Stats",
2216
+ "description": "Component used to display stats with a number upcounter",
2217
+ "type": "object",
2218
+ "properties": {
2219
+ "stat": {
2220
+ "title": "Stats",
2221
+ "type": "array",
2222
+ "description": "The stats to display with a number upcounter",
2223
+ "items": {
2224
+ "$schema": "http://json-schema.org/draft-07/schema#",
2225
+ "$id": "http://schema.mydesignsystem.com/stat.schema.json",
2226
+ "title": "Stat",
2227
+ "description": "Stat entry of Stats component",
2228
+ "type": "object",
2229
+ "properties": {
2230
+ "number": {
2231
+ "title": "Number",
2232
+ "description": "The number of the stat",
2233
+ "type": "integer",
2234
+ "examples": [
2235
+ 1,
2236
+ 2,
2237
+ 3,
2238
+ 4
2239
+ ]
2240
+ },
2241
+ "description": {
2242
+ "title": "Description",
2243
+ "description": "Optional description of the stat",
2244
+ "type": "string",
2245
+ "format": "markdown"
2246
+ },
2247
+ "title": {
2248
+ "title": "Title",
2249
+ "description": "Title of the stat",
2250
+ "type": "string",
2251
+ "format": "markdown",
2252
+ "examples": [
2253
+ "Stat 1",
2254
+ "Stat 2",
2255
+ "Stat 3",
2256
+ "Stat 4"
2257
+ ]
2258
+ },
2259
+ "icon": {
2260
+ "title": "Icon",
2261
+ "description": "Optional icon of the stat",
2262
+ "type": "string",
2263
+ "examples": [
2264
+ "person",
2265
+ "home",
2266
+ "map"
2267
+ ]
2268
+ },
2269
+ "type": {
2270
+ "const": "stat"
2271
+ }
2272
+ },
2273
+ "additionalProperties": false,
2274
+ "required": [
2275
+ "number",
2276
+ "label"
2277
+ ],
2278
+ "examples": [
2279
+ {
2280
+ "number": 1,
2281
+ "label": "Stat 1"
2282
+ },
2283
+ {
2284
+ "number": 2,
2285
+ "label": "Stat 2"
2286
+ },
2287
+ {
2288
+ "number": 3,
2289
+ "label": "Stat 3"
2290
+ },
2291
+ {
2292
+ "value": 4,
2293
+ "label": "Stat 4"
2294
+ }
2295
+ ]
2296
+ },
2297
+ "minItems": 1,
2298
+ "maxItems": 4
2299
+ },
2300
+ "type": {
2301
+ "const": "stats"
2302
+ }
2303
+ },
2304
+ "additionalProperties": false,
2305
+ "required": [
2306
+ "stats"
2307
+ ]
2308
+ },
2309
+ {
2310
+ "$schema": "http://json-schema.org/draft-07/schema#",
2311
+ "$id": "http://schema.mydesignsystem.com/teaser-card.schema.json",
2312
+ "title": "Teaser Card",
2313
+ "description": "Component used to tease content",
2314
+ "type": "object",
2315
+ "properties": {
2316
+ "headline": {
2317
+ "type": "string",
2318
+ "title": "Headline",
2319
+ "description": "Headline for the teaser card",
2320
+ "format": "markdown"
2321
+ },
2322
+ "text": {
2323
+ "type": "string",
2324
+ "title": "Text",
2325
+ "description": "Body text for the teaser card",
2326
+ "format": "markdown"
2327
+ },
2328
+ "label": {
2329
+ "type": "string",
2330
+ "title": "Label",
2331
+ "description": "Label for the Teaser Card"
2332
+ },
2333
+ "layout": {
2334
+ "type": "string",
2335
+ "enum": [
2336
+ "stack",
2337
+ "row"
2338
+ ],
2339
+ "description": "Layout for the Teaser Card",
2340
+ "default": "stack"
2341
+ },
2342
+ "target": {
2343
+ "type": "string",
2344
+ "title": "Target",
2345
+ "description": "Target that should be linked",
2346
+ "format": "uri"
2347
+ },
2348
+ "button": {
2349
+ "type": "object",
2350
+ "properties": {
2351
+ "label": {
2352
+ "title": "Label",
2353
+ "type": "string",
2354
+ "description": "Label of the button. Still A11Y relevant when the button is hidden."
2355
+ },
2356
+ "chevron": {
2357
+ "title": "Icon",
2358
+ "description": "Toggle arrow icon",
2359
+ "type": "boolean",
2360
+ "default": false
2361
+ },
2362
+ "hidden": {
2363
+ "type": "boolean",
2364
+ "title": "Display Button",
2365
+ "description": "Toggle wether you want the card to have a visible button or not",
2366
+ "default": false
2367
+ }
2368
+ },
2369
+ "required": [
2370
+ "label"
2371
+ ],
2372
+ "additionalProperties": false
2373
+ },
2374
+ "image": {
2375
+ "type": "string",
2376
+ "title": "Image",
2377
+ "description": "Image to display as cover",
2378
+ "format": "image"
2379
+ },
2380
+ "imageRatio": {
2381
+ "type": "string",
2382
+ "enum": [
2383
+ "wide",
2384
+ "landscape",
2385
+ "square",
2386
+ "unset"
2387
+ ],
2388
+ "description": "Aspect ratio of the image",
2389
+ "default": "wide"
2390
+ },
2391
+ "type": {
2392
+ "const": "teaser-card"
2393
+ }
2394
+ },
2395
+ "additionalProperties": false,
2396
+ "required": [
2397
+ "topic",
2398
+ "target"
2399
+ ]
2400
+ },
2401
+ {
2402
+ "$schema": "http://json-schema.org/draft-07/schema#",
2403
+ "$id": "http://schema.mydesignsystem.com/testimonials.schema.json",
2404
+ "title": "Testimonials",
2405
+ "description": "Display testimonials with an optional image and rating",
2406
+ "type": "object",
2407
+ "properties": {
2408
+ "layout": {
2409
+ "title": "Layout",
2410
+ "description": "The testimonial layout",
2411
+ "type": "string",
2412
+ "enum": [
2413
+ "slider",
2414
+ "list",
2415
+ "alternating"
2416
+ ],
2417
+ "default": "slider"
2418
+ },
2419
+ "testimonial": {
2420
+ "type": "array",
2421
+ "title": "Testimonials",
2422
+ "description": "Add testimonials featuring an image, a quote, a source and a rating",
2423
+ "items": {
2424
+ "$schema": "http://json-schema.org/draft-07/schema#",
2425
+ "$id": "http://schema.mydesignsystem.com/testimonial.schema.json",
2426
+ "title": "Testimonial",
2427
+ "description": "Testimonial entry of Testimonials component",
2428
+ "type": "object",
2429
+ "properties": {
2430
+ "quote": {
2431
+ "title": "Quote",
2432
+ "description": "The testimonial quote",
2433
+ "type": "string",
2434
+ "format": "markdown",
2435
+ "examples": [
2436
+ "This product is amazing!"
2437
+ ]
2438
+ },
2439
+ "name": {
2440
+ "title": "Name",
2441
+ "description": "The name of the quote author",
2442
+ "type": "string",
2443
+ "examples": [
2444
+ "John Doe"
2445
+ ]
2446
+ },
2447
+ "title": {
2448
+ "title": "Title",
2449
+ "description": "The title of the quote author",
2450
+ "type": "string"
2451
+ },
2452
+ "image": {
2453
+ "type": "object",
2454
+ "properties": {
2455
+ "src": {
2456
+ "title": "Source",
2457
+ "description": "The image to display with the testimonial",
2458
+ "type": "string",
2459
+ "format": "image",
2460
+ "examples": [
2461
+ "https://example.com/image.jpg"
2462
+ ]
2463
+ },
2464
+ "alt": {
2465
+ "title": "Alt Text",
2466
+ "description": "The alt text of the image file",
2467
+ "type": "string"
2468
+ }
2469
+ },
2470
+ "additionalProperties": false
2471
+ },
2472
+ "rating": {
2473
+ "title": "Rating",
2474
+ "description": "The rating of the testimonial, from 1 to 5",
2475
+ "type": "integer",
2476
+ "minimum": 1,
2477
+ "maximum": 5
2478
+ },
2479
+ "type": {
2480
+ "const": "testimonial"
2481
+ }
2482
+ },
2483
+ "additionalProperties": false,
2484
+ "required": [
2485
+ "quote",
2486
+ "name",
2487
+ "image"
2488
+ ]
2489
+ }
2490
+ },
2491
+ "type": {
2492
+ "const": "testimonials"
2493
+ }
2494
+ },
2495
+ "additionalProperties": false
2496
+ },
2497
+ {
2498
+ "$schema": "http://json-schema.org/draft-07/schema#",
2499
+ "$id": "http://schema.mydesignsystem.com/text.schema.json",
2500
+ "title": "Text",
2501
+ "description": "Component used for displaying text in chapters",
2502
+ "type": "object",
2503
+ "properties": {
2504
+ "text": {
2505
+ "type": "string",
2506
+ "format": "markdown",
2507
+ "title": "Text",
2508
+ "description": "Text",
2509
+ "examples": [
2510
+ "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
2511
+ ]
2512
+ },
2513
+ "layout": {
2514
+ "type": "string",
2515
+ "title": "Layout",
2516
+ "description": "Variant of layout to be used",
2517
+ "enum": [
2518
+ "singleColumn",
2519
+ "multiColumn"
2520
+ ],
2521
+ "default": "singleColumn"
2522
+ },
2523
+ "align": {
2524
+ "type": "string",
2525
+ "title": "Alignment",
2526
+ "description": "Alignment of text",
2527
+ "enum": [
2528
+ "left",
2529
+ "center"
2530
+ ],
2531
+ "default": "left"
2532
+ },
2533
+ "highlightText": {
2534
+ "type": "boolean",
2535
+ "title": "Highlight Text",
2536
+ "description": "Visually highlight the text",
2537
+ "default": false
2538
+ },
2539
+ "type": {
2540
+ "const": "text"
2541
+ }
2542
+ },
2543
+ "additionalProperties": false,
2544
+ "required": [
2545
+ "text"
2546
+ ]
2547
+ }
2548
+ ]
2549
+ }
2550
+ },
2551
+ "typeProp": {
2552
+ "title": "Type",
2553
+ "description": "Type of the movement",
2554
+ "type": "string",
2555
+ "enum": [
2556
+ "slider",
2557
+ "carousel"
2558
+ ],
2559
+ "default": "carousel"
2560
+ }
2561
+ },
2562
+ "additionalProperties": false
2563
+ },
2564
+ {
2565
+ "$schema": "http://json-schema.org/draft-07/schema#",
2566
+ "$id": "http://schema.mydesignsystem.com/stats.schema.json",
2567
+ "title": "Stats",
2568
+ "description": "Component used to display stats with a number upcounter",
2569
+ "type": "object",
2570
+ "properties": {
2571
+ "stat": {
2572
+ "title": "Stats",
2573
+ "type": "array",
2574
+ "description": "The stats to display with a number upcounter",
2575
+ "items": {
2576
+ "$schema": "http://json-schema.org/draft-07/schema#",
2577
+ "$id": "http://schema.mydesignsystem.com/stat.schema.json",
2578
+ "title": "Stat",
2579
+ "description": "Stat entry of Stats component",
2580
+ "type": "object",
2581
+ "properties": {
2582
+ "number": {
2583
+ "title": "Number",
2584
+ "description": "The number of the stat",
2585
+ "type": "integer",
2586
+ "examples": [
2587
+ 1,
2588
+ 2,
2589
+ 3,
2590
+ 4
2591
+ ]
2592
+ },
2593
+ "description": {
2594
+ "title": "Description",
2595
+ "description": "Optional description of the stat",
2596
+ "type": "string",
2597
+ "format": "markdown"
2598
+ },
2599
+ "title": {
2600
+ "title": "Title",
2601
+ "description": "Title of the stat",
2602
+ "type": "string",
2603
+ "format": "markdown",
2604
+ "examples": [
2605
+ "Stat 1",
2606
+ "Stat 2",
2607
+ "Stat 3",
2608
+ "Stat 4"
2609
+ ]
2610
+ },
2611
+ "icon": {
2612
+ "title": "Icon",
2613
+ "description": "Optional icon of the stat",
2614
+ "type": "string",
2615
+ "examples": [
2616
+ "person",
2617
+ "home",
2618
+ "map"
2619
+ ]
2620
+ },
2621
+ "type": {
2622
+ "const": "stat"
2623
+ }
2624
+ },
2625
+ "additionalProperties": false,
2626
+ "required": [
2627
+ "number",
2628
+ "label"
2629
+ ],
2630
+ "examples": [
2631
+ {
2632
+ "number": 1,
2633
+ "label": "Stat 1"
2634
+ },
2635
+ {
2636
+ "number": 2,
2637
+ "label": "Stat 2"
2638
+ },
2639
+ {
2640
+ "number": 3,
2641
+ "label": "Stat 3"
2642
+ },
2643
+ {
2644
+ "value": 4,
2645
+ "label": "Stat 4"
2646
+ }
2647
+ ]
2648
+ },
2649
+ "minItems": 1,
2650
+ "maxItems": 4
2651
+ },
2652
+ "type": {
2653
+ "const": "stats"
2654
+ }
2655
+ },
2656
+ "additionalProperties": false,
2657
+ "required": [
2658
+ "stats"
2659
+ ]
2660
+ },
2661
+ {
2662
+ "$schema": "http://json-schema.org/draft-07/schema#",
2663
+ "$id": "http://schema.mydesignsystem.com/teaser-card.schema.json",
2664
+ "title": "Teaser Card",
2665
+ "description": "Component used to tease content",
2666
+ "type": "object",
2667
+ "properties": {
2668
+ "headline": {
2669
+ "type": "string",
2670
+ "title": "Headline",
2671
+ "description": "Headline for the teaser card",
2672
+ "format": "markdown"
2673
+ },
2674
+ "text": {
2675
+ "type": "string",
2676
+ "title": "Text",
2677
+ "description": "Body text for the teaser card",
2678
+ "format": "markdown"
2679
+ },
2680
+ "label": {
2681
+ "type": "string",
2682
+ "title": "Label",
2683
+ "description": "Label for the Teaser Card"
2684
+ },
2685
+ "layout": {
2686
+ "type": "string",
2687
+ "enum": [
2688
+ "stack",
2689
+ "row"
2690
+ ],
2691
+ "description": "Layout for the Teaser Card",
2692
+ "default": "stack"
2693
+ },
2694
+ "target": {
2695
+ "type": "string",
2696
+ "title": "Target",
2697
+ "description": "Target that should be linked",
2698
+ "format": "uri"
2699
+ },
2700
+ "button": {
2701
+ "type": "object",
2702
+ "properties": {
2703
+ "label": {
2704
+ "title": "Label",
2705
+ "type": "string",
2706
+ "description": "Label of the button. Still A11Y relevant when the button is hidden."
2707
+ },
2708
+ "chevron": {
2709
+ "title": "Icon",
2710
+ "description": "Toggle arrow icon",
2711
+ "type": "boolean",
2712
+ "default": false
2713
+ },
2714
+ "hidden": {
2715
+ "type": "boolean",
2716
+ "title": "Display Button",
2717
+ "description": "Toggle wether you want the card to have a visible button or not",
2718
+ "default": false
2719
+ }
2720
+ },
2721
+ "required": [
2722
+ "label"
2723
+ ],
2724
+ "additionalProperties": false
2725
+ },
2726
+ "image": {
2727
+ "type": "string",
2728
+ "title": "Image",
2729
+ "description": "Image to display as cover",
2730
+ "format": "image"
2731
+ },
2732
+ "imageRatio": {
2733
+ "type": "string",
2734
+ "enum": [
2735
+ "wide",
2736
+ "landscape",
2737
+ "square",
2738
+ "unset"
2739
+ ],
2740
+ "description": "Aspect ratio of the image",
2741
+ "default": "wide"
2742
+ },
2743
+ "type": {
2744
+ "const": "teaser-card"
2745
+ }
2746
+ },
2747
+ "additionalProperties": false,
2748
+ "required": [
2749
+ "topic",
2750
+ "target"
2751
+ ]
2752
+ },
2753
+ {
2754
+ "$schema": "http://json-schema.org/draft-07/schema#",
2755
+ "$id": "http://schema.mydesignsystem.com/testimonials.schema.json",
2756
+ "title": "Testimonials",
2757
+ "description": "Display testimonials with an optional image and rating",
2758
+ "type": "object",
2759
+ "properties": {
2760
+ "layout": {
2761
+ "title": "Layout",
2762
+ "description": "The testimonial layout",
2763
+ "type": "string",
2764
+ "enum": [
2765
+ "slider",
2766
+ "list",
2767
+ "alternating"
2768
+ ],
2769
+ "default": "slider"
2770
+ },
2771
+ "testimonial": {
2772
+ "type": "array",
2773
+ "title": "Testimonials",
2774
+ "description": "Add testimonials featuring an image, a quote, a source and a rating",
2775
+ "items": {
2776
+ "$schema": "http://json-schema.org/draft-07/schema#",
2777
+ "$id": "http://schema.mydesignsystem.com/testimonial.schema.json",
2778
+ "title": "Testimonial",
2779
+ "description": "Testimonial entry of Testimonials component",
2780
+ "type": "object",
2781
+ "properties": {
2782
+ "quote": {
2783
+ "title": "Quote",
2784
+ "description": "The testimonial quote",
2785
+ "type": "string",
2786
+ "format": "markdown",
2787
+ "examples": [
2788
+ "This product is amazing!"
2789
+ ]
2790
+ },
2791
+ "name": {
2792
+ "title": "Name",
2793
+ "description": "The name of the quote author",
2794
+ "type": "string",
2795
+ "examples": [
2796
+ "John Doe"
2797
+ ]
2798
+ },
2799
+ "title": {
2800
+ "title": "Title",
2801
+ "description": "The title of the quote author",
2802
+ "type": "string"
2803
+ },
2804
+ "image": {
2805
+ "type": "object",
2806
+ "properties": {
2807
+ "src": {
2808
+ "title": "Source",
2809
+ "description": "The image to display with the testimonial",
2810
+ "type": "string",
2811
+ "format": "image",
2812
+ "examples": [
2813
+ "https://example.com/image.jpg"
2814
+ ]
2815
+ },
2816
+ "alt": {
2817
+ "title": "Alt Text",
2818
+ "description": "The alt text of the image file",
2819
+ "type": "string"
2820
+ }
2821
+ },
2822
+ "additionalProperties": false
2823
+ },
2824
+ "rating": {
2825
+ "title": "Rating",
2826
+ "description": "The rating of the testimonial, from 1 to 5",
2827
+ "type": "integer",
2828
+ "minimum": 1,
2829
+ "maximum": 5
2830
+ },
2831
+ "type": {
2832
+ "const": "testimonial"
2833
+ }
2834
+ },
2835
+ "additionalProperties": false,
2836
+ "required": [
2837
+ "quote",
2838
+ "name",
2839
+ "image"
2840
+ ]
2841
+ }
2842
+ },
2843
+ "type": {
2844
+ "const": "testimonials"
2845
+ }
2846
+ },
2847
+ "additionalProperties": false
2848
+ },
2849
+ {
2850
+ "$schema": "http://json-schema.org/draft-07/schema#",
2851
+ "$id": "http://schema.mydesignsystem.com/text.schema.json",
2852
+ "title": "Text",
2853
+ "description": "Component used for displaying text in chapters",
2854
+ "type": "object",
2855
+ "properties": {
2856
+ "text": {
2857
+ "type": "string",
2858
+ "format": "markdown",
2859
+ "title": "Text",
2860
+ "description": "Text",
2861
+ "examples": [
2862
+ "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
2863
+ ]
2864
+ },
2865
+ "layout": {
2866
+ "type": "string",
2867
+ "title": "Layout",
2868
+ "description": "Variant of layout to be used",
2869
+ "enum": [
2870
+ "singleColumn",
2871
+ "multiColumn"
2872
+ ],
2873
+ "default": "singleColumn"
2874
+ },
2875
+ "align": {
2876
+ "type": "string",
2877
+ "title": "Alignment",
2878
+ "description": "Alignment of text",
2879
+ "enum": [
2880
+ "left",
2881
+ "center"
2882
+ ],
2883
+ "default": "left"
2884
+ },
2885
+ "highlightText": {
2886
+ "type": "boolean",
2887
+ "title": "Highlight Text",
2888
+ "description": "Visually highlight the text",
2889
+ "default": false
2890
+ },
2891
+ "type": {
2892
+ "const": "text"
2893
+ }
2894
+ },
2895
+ "additionalProperties": false,
2896
+ "required": [
2897
+ "text"
2898
+ ]
2899
+ },
2900
+ {
2901
+ "$schema": "http://json-schema.org/draft-07/schema#",
2902
+ "$id": "http://schema.mydesignsystem.com/video-curtain.schema.json",
2903
+ "title": "Video Curtain",
2904
+ "type": "object",
2905
+ "properties": {
2906
+ "headline": {
2907
+ "title": "Headline",
2908
+ "description": "Headline for the visual",
2909
+ "type": "string",
2910
+ "format": "markdown"
2911
+ },
2912
+ "sub": {
2913
+ "title": "Module Subheadline",
2914
+ "description": "Subheadline below the module headline",
2915
+ "type": "string",
2916
+ "format": "markdown"
2917
+ },
2918
+ "text": {
2919
+ "title": "Module Text",
2920
+ "description": "Info text for the module element",
2921
+ "type": "string",
2922
+ "format": "markdown"
2923
+ },
2924
+ "highlightText": {
2925
+ "type": "boolean",
2926
+ "title": "Highlight Text",
2927
+ "description": "Visually highlight the text",
2928
+ "default": false
2929
+ },
2930
+ "colorNeutral": {
2931
+ "title": "Color Neutral",
2932
+ "description": "Make the text and buttons color neutral",
2933
+ "default": false,
2934
+ "type": "boolean"
2935
+ },
2936
+ "buttons": {
2937
+ "type": "array",
2938
+ "items": {
2939
+ "title": "Button",
2940
+ "type": "object",
2941
+ "properties": {
2942
+ "label": {
2943
+ "type": "string",
2944
+ "title": "Label",
2945
+ "description": "Text content to display inside the button",
2946
+ "examples": [
2947
+ "Book a meeting"
2948
+ ]
2949
+ },
2950
+ "icon": {
2951
+ "type": "string",
2952
+ "title": "Icon",
2953
+ "description": "Choose an icon"
2954
+ },
2955
+ "target": {
2956
+ "type": "string",
2957
+ "title": "Target",
2958
+ "description": "Target that should be linked, makes the button behave like a link semantically",
2959
+ "format": "uri"
2960
+ }
2961
+ },
2962
+ "additionalProperties": false
2963
+ }
2964
+ },
2965
+ "overlay": {
2966
+ "title": "Grid layer",
2967
+ "description": "Enable grid layer",
2968
+ "type": "boolean",
2969
+ "default": false
2970
+ },
2971
+ "video": {
2972
+ "title": "Background video",
2973
+ "description": "Sources of background videos for different screen sizes",
2974
+ "type": "object",
2975
+ "required": [
2976
+ "srcMobile"
2977
+ ],
2978
+ "properties": {
2979
+ "srcMobile": {
2980
+ "title": "Mobile video source",
2981
+ "description": "Background video source for small screens",
2982
+ "type": "string",
2983
+ "format": "video",
2984
+ "examples": [
2985
+ "https://sample-videos.com/video123/mp4/720/big_buck_bunny_720p_2mb.mp4"
2986
+ ]
2987
+ },
2988
+ "srcTablet": {
2989
+ "title": "Tablet video source",
2990
+ "description": "Background video source for medium screens",
2991
+ "type": "string",
2992
+ "format": "video",
2993
+ "examples": [
2994
+ "https://sample-videos.com/video123/mp4/720/big_buck_bunny_720p_2mb.mp4"
2995
+ ]
2996
+ },
2997
+ "srcDesktop": {
2998
+ "title": "Desktop video source",
2999
+ "description": "Background video source for large screens",
3000
+ "type": "string",
3001
+ "format": "video",
3002
+ "examples": [
3003
+ "https://sample-videos.com/video123/mp4/720/big_buck_bunny_720p_2mb.mp4"
3004
+ ]
3005
+ }
3006
+ },
3007
+ "additionalProperties": false
3008
+ },
3009
+ "textPosition": {
3010
+ "title": "Module aligment",
3011
+ "description": "Choose the alginment of the module content",
3012
+ "enum": [
3013
+ "center",
3014
+ "left",
3015
+ "right"
3016
+ ],
3017
+ "type": "string",
3018
+ "default": "bottom"
3019
+ },
3020
+ "type": {
3021
+ "const": "video-curtain"
3022
+ }
3023
+ },
3024
+ "additionalProperties": false
3025
+ }
3026
+ ]
3027
+ }
3028
+ },
3029
+ "buttons": {
3030
+ "title": "Buttons",
3031
+ "description": "Buttons of the Button Group",
3032
+ "type": "array",
3033
+ "items": {
3034
+ "$schema": "http://json-schema.org/draft-07/schema#",
3035
+ "$id": "http://schema.mydesignsystem.com/button.schema.json",
3036
+ "title": "Button",
3037
+ "description": "Component used for user interaction",
3038
+ "type": "object",
3039
+ "properties": {
3040
+ "label": {
3041
+ "type": "string",
3042
+ "title": "Label",
3043
+ "description": "Text content to display inside the button",
3044
+ "examples": [
3045
+ "Book a meeting"
3046
+ ]
3047
+ },
3048
+ "target": {
3049
+ "type": "string",
3050
+ "title": "Target",
3051
+ "description": "Target that should be linked, makes the button behave like a link semantically",
3052
+ "format": "uri"
3053
+ },
3054
+ "variant": {
3055
+ "type": "string",
3056
+ "title": "Variant",
3057
+ "description": "Variant of button to be used",
3058
+ "enum": [
3059
+ "primary",
3060
+ "secondary",
3061
+ "tertiary"
3062
+ ],
3063
+ "default": "secondary"
3064
+ },
3065
+ "icon": {
3066
+ "type": "string",
3067
+ "title": "Icon",
3068
+ "description": "Choose an icon"
3069
+ },
3070
+ "size": {
3071
+ "type": "string",
3072
+ "title": "Size",
3073
+ "description": "Size of button to use",
3074
+ "enum": [
3075
+ "small",
3076
+ "medium",
3077
+ "large"
3078
+ ],
3079
+ "default": "medium"
3080
+ },
3081
+ "disabled": {
3082
+ "type": "boolean",
3083
+ "title": "Disabled?",
3084
+ "description": "Whether the button should be disabled",
3085
+ "default": false
3086
+ },
3087
+ "type": {
3088
+ "const": "button"
3089
+ }
3090
+ },
3091
+ "additionalProperties": false,
3092
+ "required": [
3093
+ "label"
3094
+ ]
3095
+ }
3096
+ },
3097
+ "type": {
3098
+ "const": "section"
3099
+ }
3100
+ },
3101
+ "additionalProperties": false,
3102
+ "required": []
3103
+ }
3104
+ },
11
3105
  "latest": {
12
3106
  "$schema": "http://json-schema.org/draft-07/schema#",
13
3107
  "$id": "http://schema.mydesignsystem.com/blog-teaser.schema.json",