jekyll-open-sdg-plugins 1.0.0.rc22 → 1.2.0.pre.beta2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1203 @@
1
+ {
2
+ "type": "object",
3
+ "title": "Open SDG site configuration",
4
+ "description": "This form will produce the site configuration for your Open SDG implementation.",
5
+ "properties": {
6
+ "accessible_charts": {
7
+ "title": "Accessible charts",
8
+ "type": "boolean",
9
+ "description": "This setting can be set to `true` to enable chart functionality that is intended to increase accessibility by adding support for screenreaders and keyboard navigation.",
10
+ "format": "checkbox",
11
+ "links": [
12
+ {
13
+ "rel": "More information",
14
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#accessible_charts"
15
+ }
16
+ ]
17
+ },
18
+ "accessible_tabs": {
19
+ "title": "Accessible tabs",
20
+ "type": "boolean",
21
+ "description": "This setting can be set to `true` to enable tab functionality that is compliant with the WAI-ARIA best practices. This adds improved keyboard navigation of the tabs.",
22
+ "format": "checkbox",
23
+ "links": [
24
+ {
25
+ "rel": "More information",
26
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#accessible_tabs"
27
+ }
28
+ ]
29
+ },
30
+ "analytics": {
31
+ "options": {"collapsed": true},
32
+ "type": "object",
33
+ "title": "Analytics",
34
+ "description": "If these settings are used, usage statistics will be sent to Google Analytics.",
35
+ "properties": {
36
+ "ga_prod": {
37
+ "type": "string",
38
+ "title": "Google Analytics tracking ID",
39
+ "description": "The tracking ID (UA code) for your property on Google Analytics."
40
+ }
41
+ },
42
+ "links": [
43
+ {
44
+ "rel": "More information",
45
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#analytics"
46
+ }
47
+ ]
48
+ },
49
+ "breadcrumbs": {
50
+ "options": {"collapsed": true},
51
+ "type": "object",
52
+ "title": "Breadcrumbs",
53
+ "description": "This can contain breadcrumb settings for each of the supported collection types: goal, indicator, and post. Each should have a list of label/path objects.",
54
+ "properties": {
55
+ "goal": {
56
+ "options": {"collapsed": true},
57
+ "format": "table",
58
+ "type": "array",
59
+ "title": "Goal breadcrumbs",
60
+ "description": "The breadcrumb items for goal pages.",
61
+ "items": {
62
+ "$ref": "#/definitions/breadcrumb_item"
63
+ }
64
+ },
65
+ "indicator": {
66
+ "options": {"collapsed": true},
67
+ "format": "table",
68
+ "type": "array",
69
+ "title": "Indicator breadcrumbs",
70
+ "description": "The breadcrumb items for indicator pages. Note that there will automatically be a final item, which is a link to the goal that the indicator belongs to. You do not need to specify this, since it is done dynamically and automatically.",
71
+ "items": {
72
+ "$ref": "#/definitions/breadcrumb_item"
73
+ }
74
+ },
75
+ "post": {
76
+ "options": {"collapsed": true},
77
+ "format": "table",
78
+ "type": "array",
79
+ "title": "Post breadcrumbs",
80
+ "description": "The breadcrumb items for post pages.",
81
+ "items": {
82
+ "$ref": "#/definitions/breadcrumb_item"
83
+ }
84
+ }
85
+ },
86
+ "links": [
87
+ {
88
+ "rel": "More information",
89
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#breadcrumbs"
90
+ }
91
+ ]
92
+ },
93
+ "country": {
94
+ "options": {"collapsed": true},
95
+ "type": "object",
96
+ "title": "Country information",
97
+ "description": "Information about your country (or region, locality, etc.)",
98
+ "properties": {
99
+ "name": {
100
+ "type": "string",
101
+ "title": "Name",
102
+ "description": "The name of your country/region/locality/etc.",
103
+ "minLength": 1
104
+ },
105
+ "adjective": {
106
+ "type": "string",
107
+ "title": "Adjective",
108
+ "description": "Adjective form of your country/region/locality/etc.",
109
+ "minLength": 1
110
+ }
111
+ },
112
+ "links": [
113
+ {
114
+ "rel": "More information",
115
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#country"
116
+ }
117
+ ]
118
+ },
119
+ "create_config_forms": {
120
+ "options": {"collapsed": true},
121
+ "type": "object",
122
+ "title": "Create configuration forms",
123
+ "description": "This setting can be used to automatically create the configuration form pages.",
124
+ "properties": {
125
+ "layout": {
126
+ "type": "string",
127
+ "title": "Layout",
128
+ "format": "choices",
129
+ "enum": [
130
+ "",
131
+ "config-builder"
132
+ ],
133
+ "options": {
134
+ "enum_titles": [
135
+ "Do not automatically create config forms",
136
+ "config-builder"
137
+ ]
138
+ },
139
+ "description": "The layout to use for the configuration form pages."
140
+ }
141
+ }
142
+ },
143
+ "create_goals": {
144
+ "options": {"collapsed": true},
145
+ "type": "object",
146
+ "title": "Create goals",
147
+ "description": "This setting can be used to automatically create the goal pages.",
148
+ "properties": {
149
+ "layout": {
150
+ "type": "string",
151
+ "title": "Layout",
152
+ "format": "choices",
153
+ "enum": [
154
+ "",
155
+ "goal",
156
+ "goal-by-target",
157
+ "goal-by-target-vertical"
158
+ ],
159
+ "options": {
160
+ "enum_titles": [
161
+ "Do not automatically create goals",
162
+ "goal",
163
+ "goal-by-target",
164
+ "goal-by-target-vertical"
165
+ ]
166
+ },
167
+ "description": "The layout to use for the goal pages."
168
+ }
169
+ },
170
+ "links": [
171
+ {
172
+ "rel": "More information",
173
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#create_goals"
174
+ }
175
+ ]
176
+ },
177
+ "create_indicators": {
178
+ "options": {"collapsed": true},
179
+ "type": "object",
180
+ "title": "Create indicators",
181
+ "description": "This setting can be used to automatically create the indicator pages.",
182
+ "properties": {
183
+ "layout": {
184
+ "type": "string",
185
+ "title": "Layout",
186
+ "format": "choices",
187
+ "enum": [
188
+ "",
189
+ "indicator"
190
+ ],
191
+ "options": {
192
+ "enum_titles": [
193
+ "Do not automatically create indicators",
194
+ "indicator"
195
+ ]
196
+ },
197
+ "description": "The layout to use for the indicator pages."
198
+ }
199
+ },
200
+ "links": [
201
+ {
202
+ "rel": "More information",
203
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#create_indicators"
204
+ }
205
+ ]
206
+ },
207
+ "create_pages": {
208
+ "options": {"collapsed": true},
209
+ "format": "table",
210
+ "type": "array",
211
+ "title": "Create pages",
212
+ "description": "This setting can be used to automatically create the pages.",
213
+ "items": {
214
+ "type": "object",
215
+ "title": "Page",
216
+ "properties": {
217
+ "filename": {
218
+ "type": "string",
219
+ "title": "Filename",
220
+ "description": "The filename for the page - usually 'index.html'."
221
+ },
222
+ "folder": {
223
+ "type": "string",
224
+ "minLength": 1,
225
+ "title": "Folder",
226
+ "description": "The folder path for the page."
227
+ },
228
+ "layout": {
229
+ "type": "string",
230
+ "minLength": 1,
231
+ "title": "Layout",
232
+ "description": "The layout to use for the page."
233
+ },
234
+ "title": {
235
+ "type": "string",
236
+ "title": "Title",
237
+ "description": "The page title for the page."
238
+ }
239
+ }
240
+ },
241
+ "links": [
242
+ {
243
+ "rel": "More information",
244
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#create_pages"
245
+ }
246
+ ]
247
+ },
248
+ "custom_css": {
249
+ "options": {"collapsed": true},
250
+ "format": "table",
251
+ "type": "array",
252
+ "title": "Custom CSS files",
253
+ "description": "Deprecated: instead of using this, it is recommended to put custom CSS in a _sass/custom.scss file.",
254
+ "items": {
255
+ "type": "string",
256
+ "title": "Custom CSS file"
257
+ },
258
+ "links": [
259
+ {
260
+ "rel": "More information",
261
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#custom_css"
262
+ }
263
+ ]
264
+ },
265
+ "custom_js": {
266
+ "options": {"collapsed": true},
267
+ "format": "table",
268
+ "type": "array",
269
+ "title": "Custom JavaScript files",
270
+ "description": "This setting can be used to load additional JavaScript files on each page.",
271
+ "items": {
272
+ "type": "string",
273
+ "title": "Custom JavaScript file"
274
+ },
275
+ "links": [
276
+ {
277
+ "rel": "More information",
278
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#custom_js"
279
+ }
280
+ ]
281
+ },
282
+ "data_edit_url": {
283
+ "type": "string",
284
+ "minLength": 1,
285
+ "title": "Data edit URL",
286
+ "description": "This setting controls the URL of the 'Edit Data' buttons that appear on the staging site's indicator pages.",
287
+ "links": [
288
+ {
289
+ "rel": "More information",
290
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#data_edit_url"
291
+ }
292
+ ]
293
+ },
294
+ "date_formats": {
295
+ "options": {"collapsed": true},
296
+ "format": "table",
297
+ "type": "array",
298
+ "title": "Date formats",
299
+ "description": "This setting can be used to control date formats for use in the site, such as in the news/category/post layouts. Any number date formats can be entered, and each must have an arbitrary type, such as `standard`. Make sure that each type has a variant for each of your languages.",
300
+ "items": {
301
+ "type": "object",
302
+ "title": "Date format",
303
+ "properties": {
304
+ "type": {
305
+ "type": "string",
306
+ "minLength": 1,
307
+ "title": "Type",
308
+ "description": "Use `standard` for news/post dates."
309
+ },
310
+ "language": {
311
+ "type": "string",
312
+ "minLength": 1,
313
+ "title": "Language",
314
+ "description": "Language code the format applies to."
315
+ },
316
+ "format": {
317
+ "type": "string",
318
+ "minLength": 1,
319
+ "title": "Format",
320
+ "description": "Ruby DateTime date format."
321
+ }
322
+ }
323
+ },
324
+ "links": [
325
+ {
326
+ "rel": "More information",
327
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#date_formats"
328
+ }
329
+ ]
330
+ },
331
+ "disclaimer": {
332
+ "options": {"collapsed": true},
333
+ "type": "object",
334
+ "title": "Disclaimer",
335
+ "description": "This setting controls the content of the disclaimer that appears at the top of each page.",
336
+ "properties": {
337
+ "phase": {
338
+ "type": "string",
339
+ "title": "Phase",
340
+ "description": "The development phase of your platform (alpha, beta, etc.)"
341
+ },
342
+ "message": {
343
+ "type": "string",
344
+ "title": "Message",
345
+ "description": "A short disclaimer message."
346
+ }
347
+ },
348
+ "links": [
349
+ {
350
+ "rel": "More information",
351
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#disclaimer"
352
+ }
353
+ ]
354
+ },
355
+ "email_contacts": {
356
+ "options": {"collapsed": true},
357
+ "type": "object",
358
+ "title": "Email addresses",
359
+ "description": "Email addresses to publish on your platform.",
360
+ "properties": {
361
+ "questions": {
362
+ "type": "string",
363
+ "minLength": 1,
364
+ "format": "email",
365
+ "title": "Questions",
366
+ "description": "Inbox for questions about your platform."
367
+ },
368
+ "suggestions": {
369
+ "type": "string",
370
+ "minLength": 1,
371
+ "format": "email",
372
+ "title": "Suggestions",
373
+ "description": "Inbox for suggestions for your platform."
374
+ },
375
+ "functional": {
376
+ "type": "string",
377
+ "minLength": 1,
378
+ "format": "email",
379
+ "title": "Functional",
380
+ "description": "Inbox for bug reports for your platform."
381
+ }
382
+ },
383
+ "links": [
384
+ {
385
+ "rel": "More information",
386
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#email_contacts"
387
+ }
388
+ ]
389
+ },
390
+ "environment": {
391
+ "type": "string",
392
+ "minLength": 1,
393
+ "title": "Environment",
394
+ "description": "Which environment (staging or production) this configuration is for.",
395
+ "format": "choices",
396
+ "enum": ["staging", "production"],
397
+ "links": [
398
+ {
399
+ "rel": "More information",
400
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#environment"
401
+ }
402
+ ]
403
+ },
404
+ "footer_language_toggle": {
405
+ "type": "string",
406
+ "title": "Footer language toggle",
407
+ "description": "This setting controls the type of language toggle to be used in the footer.",
408
+ "format": "choices",
409
+ "enum": ["none", "dropdown", "links"],
410
+ "links": [
411
+ {
412
+ "rel": "More information",
413
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#footer_language_toggle"
414
+ }
415
+ ]
416
+ },
417
+ "footer_menu": {
418
+ "options": {"collapsed": true},
419
+ "format": "table",
420
+ "type": "array",
421
+ "title": "Footer menu",
422
+ "description": "The links to display in the footer menu.",
423
+ "items": {
424
+ "$ref": "#/definitions/menu_item"
425
+ },
426
+ "links": [
427
+ {
428
+ "rel": "More information",
429
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#footer_menu"
430
+ }
431
+ ]
432
+ },
433
+ "frontpage_cards": {
434
+ "options": {"collapsed": true},
435
+ "type": "array",
436
+ "title": "Frontpage cards",
437
+ "description": "This setting is only used in the frontpage-alt layout. It can display any number of 'cards' in 3-column rows, beneath the grid of goal tiles.",
438
+ "items": {
439
+ "type": "object",
440
+ "title": "Frontpage card",
441
+ "properties": {
442
+ "title": {
443
+ "type": "string",
444
+ "minLength": 1,
445
+ "title": "Title",
446
+ "description": "The card's title."
447
+ },
448
+ "content": {
449
+ "type": "string",
450
+ "title": "Content",
451
+ "description": "The card's content.",
452
+ "format": "markdown"
453
+ },
454
+ "include": {
455
+ "type": "string",
456
+ "title": "Include file",
457
+ "description": "A Jekyll include file to place inside the card."
458
+ },
459
+ "button_label": {
460
+ "type": "string",
461
+ "title": "Button label",
462
+ "description": "A label for a button to display at the bottom of the card."
463
+ },
464
+ "button_link": {
465
+ "type": "string",
466
+ "title": "Button link",
467
+ "description": "A path or URL for the card's button to link to."
468
+ },
469
+ "rule_color": {
470
+ "type": "string",
471
+ "title": "Rule color",
472
+ "description": "The color of the horizontal line appearing above the card."
473
+ }
474
+ }
475
+ },
476
+ "links": [
477
+ {
478
+ "rel": "More information",
479
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_cards"
480
+ }
481
+ ]
482
+ },
483
+ "frontpage_goals_grid": {
484
+ "options": {"collapsed": true},
485
+ "type": "object",
486
+ "title": "Frontpage goals grid",
487
+ "description": "This setting is only used in the frontpage-alt layout. It can display a title and description above the grid of goal tiles.",
488
+ "$ref": "#/definitions/title_and_description",
489
+ "links": [
490
+ {
491
+ "rel": "More information",
492
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_goals_grid"
493
+ }
494
+ ]
495
+ },
496
+ "frontpage_heading": {
497
+ "type": "string",
498
+ "title": "Frontpage heading",
499
+ "description": "This setting can control the heading that appears on the front page. This setting is only used in the frontpage layout.",
500
+ "links": [
501
+ {
502
+ "rel": "More information",
503
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_heading"
504
+ }
505
+ ]
506
+ },
507
+ "frontpage_instructions": {
508
+ "type": "string",
509
+ "title": "Frontpage instructions",
510
+ "description": "This setting can control the instructions that appear on the front page. This setting is only used in the frontpage layout.",
511
+ "links": [
512
+ {
513
+ "rel": "More information",
514
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_instructions"
515
+ }
516
+ ]
517
+ },
518
+ "frontpage_introduction_banner": {
519
+ "options": {"collapsed": true},
520
+ "type": "object",
521
+ "title": "Frontpage introduction banner",
522
+ "description": "This setting is only used in the frontpage-alt layout. It can display a title and description in a banner at the top of the frontpage.",
523
+ "$ref": "#/definitions/title_and_description",
524
+ "links": [
525
+ {
526
+ "rel": "More information",
527
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_introduction_banner"
528
+ }
529
+ ]
530
+ },
531
+ "goal_image_base": {
532
+ "type": "string",
533
+ "minLength": 1,
534
+ "title": "Goal image base URL",
535
+ "description": "This setting controls the base URL for downloading the imagery for the goals.",
536
+ "links": [
537
+ {
538
+ "rel": "More information",
539
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#goal_image_base"
540
+ }
541
+ ]
542
+ },
543
+ "goal_image_extension": {
544
+ "type": "string",
545
+ "title": "Goal image extension",
546
+ "description": "This setting controls the type of file (the file extension) that will be used for the goal images.",
547
+ "links": [
548
+ {
549
+ "rel": "More information",
550
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#goal_image_extension"
551
+ }
552
+ ]
553
+ },
554
+ "goals_page": {
555
+ "options": {"collapsed": true},
556
+ "type": "object",
557
+ "title": "Goals page",
558
+ "description": "This setting is used in the 'goals' layout. It can display a title and description above the grid of goal tiles.",
559
+ "$ref": "#/definitions/title_and_description",
560
+ "links": [
561
+ {
562
+ "rel": "More information",
563
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#goals_page"
564
+ }
565
+ ]
566
+ },
567
+ "graph_color_set": {
568
+ "type": "string",
569
+ "title": "Graph color set",
570
+ "description": "This setting can be used to customize the color set used in the charts.",
571
+ "examples": [],
572
+ "format": "choices",
573
+ "enum": ["default", "sdg", "goal", "custom"],
574
+ "links": [
575
+ {
576
+ "rel": "More information",
577
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_set"
578
+ }
579
+ ]
580
+ },
581
+ "graph_color_list": {
582
+ "options": {"collapsed": true},
583
+ "format": "table",
584
+ "type": "array",
585
+ "title": "Graph color list",
586
+ "description": "This setting can be used to define a set of colors to be used in the charts. This is only used when graph_color_set is 'custom'.",
587
+ "items": {
588
+ "type": "string",
589
+ "format": "color",
590
+ "title": "Color",
591
+ "description": "Hexadecimal color code"
592
+ },
593
+ "links": [
594
+ {
595
+ "rel": "More information",
596
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_list"
597
+ }
598
+ ]
599
+ },
600
+ "graph_color_number": {
601
+ "title": "Graph color number",
602
+ "type": "integer",
603
+ "description": "This setting can be used to limit the length of the list of colors selected via graph_color_set.",
604
+ "links": [
605
+ {
606
+ "rel": "More information",
607
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_number"
608
+ }
609
+ ]
610
+ },
611
+ "header_language_toggle": {
612
+ "type": "string",
613
+ "title": "Header language toggle",
614
+ "description": "This setting controls the type of language toggle to be used in the header.",
615
+ "format": "choices",
616
+ "enum": ["none", "dropdown", "links"],
617
+ "links": [
618
+ {
619
+ "rel": "More information",
620
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#header_language_toggle"
621
+ }
622
+ ]
623
+ },
624
+ "hide_empty_metadata": {
625
+ "title": "Hide empty metadata",
626
+ "type": "boolean",
627
+ "description": "This setting can be used to hide any metadata fields that are empty.",
628
+ "format": "checkbox",
629
+ "links": [
630
+ {
631
+ "rel": "More information",
632
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#hide_empty_metadata"
633
+ }
634
+ ]
635
+ },
636
+ "indicator_config_form": {
637
+ "options": {"collapsed": true},
638
+ "type": "object",
639
+ "title": "Indicator configuration form",
640
+ "description": "Configuration of the indicator configuration form.",
641
+ "$ref": "#/definitions/config_form_options"
642
+ },
643
+ "languages": {
644
+ "options": {"collapsed": true},
645
+ "format": "table",
646
+ "type": "array",
647
+ "minItems": 1,
648
+ "title": "Languages",
649
+ "description": "This setting controls the languages to be used on the site.",
650
+ "items": {
651
+ "type": "string",
652
+ "minLength": 1,
653
+ "title": "Language"
654
+ },
655
+ "links": [
656
+ {
657
+ "rel": "More information",
658
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#languages"
659
+ }
660
+ ]
661
+ },
662
+ "languages_public": {
663
+ "options": {"collapsed": true},
664
+ "format": "table",
665
+ "type": "array",
666
+ "title": "Language code overrides",
667
+ "description": "This setting can be used if you are not happy with any of the standard language codes.",
668
+ "items": {
669
+ "type": "object",
670
+ "title": "Language override",
671
+ "properties": {
672
+ "language": {
673
+ "type": "string",
674
+ "minLength": 1,
675
+ "title": "Language",
676
+ "description": "The (standard) language code that you would like to override."
677
+ },
678
+ "language_public": {
679
+ "type": "string",
680
+ "minLength": 1,
681
+ "title": "Language override",
682
+ "description": "The (non-standard) language code that you would like show the public instead."
683
+ }
684
+ }
685
+ },
686
+ "links": [
687
+ {
688
+ "rel": "More information",
689
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#languages_public"
690
+ }
691
+ ]
692
+ },
693
+ "map_layers": {
694
+ "options": {"collapsed": true},
695
+ "format": "table",
696
+ "type": "array",
697
+ "title": "Map layers",
698
+ "description": "Configure any number of layers to display on all indicator maps. A minimum of one layer is required to display maps.",
699
+ "items": {
700
+ "type": "object",
701
+ "title": "Map layer",
702
+ "properties": {
703
+ "subfolder": {
704
+ "type": "string",
705
+ "title": "Subfolder",
706
+ "description": "The subfolder under 'geojson' in the data repository holding the GeoJSON file for this layer."
707
+ },
708
+ "label": {
709
+ "type": "string",
710
+ "title": "Download button label",
711
+ "description": "The label to use in the 'Download GeoJSON' button for this layer."
712
+ },
713
+ "min_zoom": {
714
+ "type": "integer",
715
+ "title": "Minimum zoom",
716
+ "description": "This layer will only be visible when the map is zoomed to at least this number."
717
+ },
718
+ "max_zoom": {
719
+ "type": "integer",
720
+ "title": "Maximum zoom",
721
+ "description": "The layer will not be visible when the map is zoomed beyond this number."
722
+ },
723
+ "staticBorders": {
724
+ "type": "boolean",
725
+ "format": "checkbox",
726
+ "title": "Static borders",
727
+ "description": "Whether the borders on this layer should remain visible when the map is zoomed past the maximum."
728
+ }
729
+ }
730
+ },
731
+ "links": [
732
+ {
733
+ "rel": "More information",
734
+ "href": "https://open-sdg.readthedocs.io/en/latest/maps/#map_layers"
735
+ }
736
+ ]
737
+ },
738
+ "map_options": {
739
+ "options": {"collapsed": true},
740
+ "type": "object",
741
+ "title": "Map options",
742
+ "description": "Site-wide configuration of map behavior and style.",
743
+ "default": {
744
+ "minZoom": 5,
745
+ "maxZoom": 10,
746
+ "colorRange": "chroma.brewer.BuGn",
747
+ "noValueColor": "#f0f0f0",
748
+ "styleNormal": {
749
+ "weight": 1,
750
+ "opacity": 1,
751
+ "fillOpacity": 0.7,
752
+ "color": "#888888"
753
+ },
754
+ "styleHighlighted": {
755
+ "weight": 1,
756
+ "opacity": 1,
757
+ "fillOpacity": 0.7,
758
+ "color": "#111111"
759
+ },
760
+ "styleStatic": {
761
+ "weight": 2,
762
+ "opacity": 1,
763
+ "fillOpacity": 0,
764
+ "color": "#172d44",
765
+ "dashArray": "5,5"
766
+ }
767
+ },
768
+ "properties": {
769
+ "minZoom": {
770
+ "title": "Minimum zoom",
771
+ "type": "integer",
772
+ "description": "The lowest amount of 'zoom' possible for users."
773
+ },
774
+ "maxZoom": {
775
+ "title": "Maximum zoom",
776
+ "type": "integer",
777
+ "description": "The highest amount of 'zoom' possible for users."
778
+ },
779
+ "tileURL": {
780
+ "title": "Tile URL",
781
+ "type": "string",
782
+ "format": "url",
783
+ "description": "If you would like the maps to show tile imagery, add the URL here."
784
+ },
785
+ "tileOptions": {
786
+ "title": "Tile options",
787
+ "type": "object",
788
+ "options": {"collapsed": true},
789
+ "description": "Additional options for map tile imagery.",
790
+ "properties": {
791
+ "id": {
792
+ "type": "string",
793
+ "title": "Tile ID"
794
+ },
795
+ "accessToken": {
796
+ "type": "string",
797
+ "title": "Access token"
798
+ },
799
+ "attribution": {
800
+ "type": "string",
801
+ "title": "Attribution"
802
+ }
803
+ }
804
+ },
805
+ "colorRange": {
806
+ "type": "string",
807
+ "title": "Color range",
808
+ "description": "The color range for the choropleth map.",
809
+ "links": [
810
+ {
811
+ "ref": "More information",
812
+ "href": "https://gka.github.io/chroma.js/#chroma-brewer"
813
+ }
814
+ ]
815
+ },
816
+ "noValueColor": {
817
+ "type": "string",
818
+ "format": "color",
819
+ "title": "No-value color",
820
+ "description": "Color for boundaries that have no data."
821
+ },
822
+ "styleNormal": {
823
+ "type": "object",
824
+ "format": "table",
825
+ "title": "Style (normal)",
826
+ "description": "Style for boundaries in normal state",
827
+ "$ref": "#/definitions/map_style"
828
+ },
829
+ "styleHighlighted": {
830
+ "type": "object",
831
+ "format": "table",
832
+ "title": "Style (highlighted)",
833
+ "description": "Style for boundaries in highlighted state",
834
+ "$ref": "#/definitions/map_style"
835
+ },
836
+ "styleStatic": {
837
+ "type": "object",
838
+ "format": "table",
839
+ "title": "Style (static)",
840
+ "description": "Style for boundaries in static state (map layers using the 'static boundaries' option).",
841
+ "$ref": "#/definitions/map_style"
842
+ }
843
+ },
844
+ "links": [
845
+ {
846
+ "rel": "More information",
847
+ "href": "https://open-sdg.readthedocs.io/en/latest/maps/#map_options"
848
+ }
849
+ ]
850
+ },
851
+ "menu": {
852
+ "options": {"collapsed": true},
853
+ "format": "table",
854
+ "type": "array",
855
+ "minItems": 1,
856
+ "title": "Main menu",
857
+ "description": "The links to display in the main menu.",
858
+ "items": {
859
+ "$ref": "#/definitions/menu_item"
860
+ },
861
+ "links": [
862
+ {
863
+ "rel": "More information",
864
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#menu"
865
+ }
866
+ ]
867
+ },
868
+ "metadata_edit_url": {
869
+ "type": "string",
870
+ "minLength": 1,
871
+ "title": "Metadata edit URL",
872
+ "description": "This setting controls the URL of the 'Edit Metadata' buttons that appear on the staging site's indicator pages.",
873
+ "links": [
874
+ {
875
+ "rel": "More information",
876
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#metadata_edit_url"
877
+ }
878
+ ]
879
+ },
880
+ "metadata_tabs": {
881
+ "options": {"collapsed": true},
882
+ "format": "table",
883
+ "type": "array",
884
+ "title": "Metadata tabs",
885
+ "description": "This setting can control the metadata tabs which appear on the indicator pages.",
886
+ "items": {
887
+ "type": "object",
888
+ "title": "Metadata tab",
889
+ "properties": {
890
+ "scope": {
891
+ "type": "string",
892
+ "minLength": 1,
893
+ "title": "Scope",
894
+ "description": "This tab will contain fields in the specific `scope` in your data repository's metadata schema file (eg, `_prose.yml`)."
895
+ },
896
+ "title": {
897
+ "type": "string",
898
+ "minLength": 1,
899
+ "title": "Title",
900
+ "description": "The title of the metadata tab."
901
+ },
902
+ "description": {
903
+ "type": "string",
904
+ "title": "Description",
905
+ "description": "A descriptive blurb to show at the top of the tab content.",
906
+ "format": "markdown"
907
+ }
908
+ }
909
+ },
910
+ "links": [
911
+ {
912
+ "rel": "More information",
913
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#metadata_tabs"
914
+ }
915
+ ]
916
+ },
917
+ "news": {
918
+ "options": {"collapsed": true},
919
+ "type": "object",
920
+ "title": "News",
921
+ "description": "Configuration related to news updates and posts.",
922
+ "properties": {
923
+ "category_links": {
924
+ "title": "Category links",
925
+ "type": "boolean",
926
+ "description": "Whether you would like the 'categories' of posts to generate links to dedicated category pages.",
927
+ "format": "checkbox"
928
+ }
929
+ },
930
+ "links": [
931
+ {
932
+ "rel": "More information",
933
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#news"
934
+ }
935
+ ]
936
+ },
937
+ "non_global_metadata": {
938
+ "type": "string",
939
+ "title": "Non-global metadata",
940
+ "description": "This setting can be used to control the text of the tab containing non-global metadata.",
941
+ "links": [
942
+ {
943
+ "rel": "More information",
944
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#non_global_metadata"
945
+ }
946
+ ]
947
+ },
948
+ "remote_data_prefix": {
949
+ "type": "string",
950
+ "minLength": 1,
951
+ "title": "Remote data repository URL",
952
+ "description": "Specify the URL of your published data repository.",
953
+ "links": [
954
+ {
955
+ "rel": "More information",
956
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#remote_data_prefix"
957
+ }
958
+ ]
959
+ },
960
+ "reporting_status": {
961
+ "options": {"collapsed": true},
962
+ "type": "object",
963
+ "title": "Reporting status",
964
+ "description": "This setting is used in the 'reportingstatus' layout. It can display a title and description above the reporting status page.",
965
+ "$ref": "#/definitions/title_and_description",
966
+ "links": [
967
+ {
968
+ "rel": "More information",
969
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#reporting_status"
970
+ }
971
+ ]
972
+ },
973
+ "search_index_boost": {
974
+ "options": {"collapsed": true},
975
+ "format": "table",
976
+ "type": "array",
977
+ "title": "Search index boost",
978
+ "description": "This setting can be used to give a boost to one or more fields in the search index.",
979
+ "items": {
980
+ "type": "object",
981
+ "title": "Boost",
982
+ "properties": {
983
+ "field": {
984
+ "type": "string",
985
+ "minLength": 1,
986
+ "title": "Field",
987
+ "description": "Field to boost ('title', 'content', etc.)"
988
+ },
989
+ "boost": {
990
+ "type": "integer",
991
+ "minLength": 1,
992
+ "title": "Boost",
993
+ "description": "Higher boost means higher search ranking."
994
+ }
995
+ }
996
+ },
997
+ "links": [
998
+ {
999
+ "rel": "More information",
1000
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#search_index_boost"
1001
+ }
1002
+ ]
1003
+ },
1004
+ "search_index_extra_fields": {
1005
+ "options": {"collapsed": true},
1006
+ "format": "table",
1007
+ "type": "array",
1008
+ "title": "Search index extra fields",
1009
+ "description": "This setting can be used to index additional metadata fields in your indicators, for the purposes of affecting the site-wide search.",
1010
+ "items": {
1011
+ "type": "string",
1012
+ "title": "Extra field"
1013
+ },
1014
+ "links": [
1015
+ {
1016
+ "rel": "More information",
1017
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#search_index_extra_fields"
1018
+ }
1019
+ ]
1020
+ },
1021
+ "series_toggle": {
1022
+ "title": "Series toggle",
1023
+ "type": "boolean",
1024
+ "description": "This setting enables the special treatment of the 'Series' column in the data. If set to true, when an indicator's data includes a 'Series' column, it will be displayed above 'Units' as radio buttons.",
1025
+ "format": "checkbox",
1026
+ "links": [
1027
+ {
1028
+ "rel": "More information",
1029
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#series_toggle"
1030
+ }
1031
+ ]
1032
+ },
1033
+ "sharethis_property": {
1034
+ "type": "string",
1035
+ "title": "ShareThis property",
1036
+ "description": "This setting creates a ShareThis widget along the left side of every page. It should be the property id for your ShareThis account.",
1037
+ "links": [
1038
+ {
1039
+ "rel": "More information",
1040
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#sharethis_property"
1041
+ }
1042
+ ]
1043
+ },
1044
+ "site_config_form": {
1045
+ "options": {"collapsed": true},
1046
+ "type": "object",
1047
+ "title": "Site configuration form",
1048
+ "description": "Configuration of the site configuration form.",
1049
+ "$ref": "#/definitions/config_form_options"
1050
+ },
1051
+ "validate_indicator_config": {
1052
+ "title": "Validate indicator config",
1053
+ "type": "boolean",
1054
+ "description": "If checked, this will require that all indicators have valid Open SDG indicator configuration.",
1055
+ "format": "checkbox",
1056
+ "links": [
1057
+ {
1058
+ "rel": "More information",
1059
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#validate_indicator_config"
1060
+ }
1061
+ ]
1062
+ },
1063
+ "validate_site_config": {
1064
+ "title": "Validate site config",
1065
+ "type": "boolean",
1066
+ "description": "If checked, this will require valid site configuration.",
1067
+ "format": "checkbox",
1068
+ "links": [
1069
+ {
1070
+ "rel": "More information",
1071
+ "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#validate_site_config"
1072
+ }
1073
+ ]
1074
+ }
1075
+ },
1076
+ "additionalProperties": true,
1077
+ "definitions": {
1078
+ "menu_item": {
1079
+ "type": "object",
1080
+ "title": "Menu item",
1081
+ "properties": {
1082
+ "path": {
1083
+ "type": "string",
1084
+ "minLength": 1,
1085
+ "title": "Path",
1086
+ "description": "Path or URL that the menu item should link to."
1087
+ },
1088
+ "translation_key": {
1089
+ "type": "string",
1090
+ "minLength": 1,
1091
+ "title": "Label",
1092
+ "description": "Label (or translation key) for the link."
1093
+ }
1094
+ }
1095
+ },
1096
+ "breadcrumb_item": {
1097
+ "type": "object",
1098
+ "title": "Breadcrumb item",
1099
+ "properties": {
1100
+ "path": {
1101
+ "type": "string",
1102
+ "minLength": 1,
1103
+ "title": "Path",
1104
+ "description": "Path or URL that the breadcrumb item should link to."
1105
+ },
1106
+ "label": {
1107
+ "type": "string",
1108
+ "minLength": 1,
1109
+ "title": "Label",
1110
+ "description": "Label (or translation key) for the breadcrumb item."
1111
+ }
1112
+ }
1113
+ },
1114
+ "title_and_description": {
1115
+ "type": "object",
1116
+ "properties": {
1117
+ "title": {
1118
+ "type": "string",
1119
+ "minLength": 1,
1120
+ "title": "Title"
1121
+ },
1122
+ "description": {
1123
+ "type": "string",
1124
+ "minLength": 1,
1125
+ "title": "Description",
1126
+ "format": "markdown"
1127
+ }
1128
+ }
1129
+ },
1130
+ "map_style": {
1131
+ "properties": {
1132
+ "weight": {
1133
+ "type": "number",
1134
+ "title": "Weight",
1135
+ "description": "The weight (boldness) of boundary borders."
1136
+ },
1137
+ "opacity": {
1138
+ "type": "number",
1139
+ "title": "Opacity",
1140
+ "description": "The opacity of the boundary borders (between 0 and 1)."
1141
+ },
1142
+ "fillOpacity": {
1143
+ "type": "number",
1144
+ "title": "Fill opacity",
1145
+ "description": "The opacity of the boundaries' background color (between 0 and 1)."
1146
+ },
1147
+ "color": {
1148
+ "type": "string",
1149
+ "format": "color",
1150
+ "title": "Color",
1151
+ "description": "The color of the boundary borders."
1152
+ },
1153
+ "dashArray": {
1154
+ "type": "string",
1155
+ "title": "Dash array",
1156
+ "description": "A 'dash array' describing the boundary as dashed lines."
1157
+ }
1158
+ }
1159
+ },
1160
+ "config_form_options": {
1161
+ "type": "object",
1162
+ "properties": {
1163
+ "dropdowns": {
1164
+ "type": "array",
1165
+ "title": "Dropdown lists",
1166
+ "description": "Set options for any dropdown lists.",
1167
+ "items": {
1168
+ "type": "object",
1169
+ "format": "table",
1170
+ "title": "Dropdown list",
1171
+ "properties": {
1172
+ "jsonschema": {
1173
+ "type": "string",
1174
+ "title": "JSONSchema path",
1175
+ "description": "The jsonschema path to the dropdown field."
1176
+ },
1177
+ "values": {
1178
+ "type": "array",
1179
+ "format": "table",
1180
+ "title": "Values",
1181
+ "description": "List of dropdown option values",
1182
+ "items": {
1183
+ "type": "string",
1184
+ "title": "Value"
1185
+ }
1186
+ },
1187
+ "labels": {
1188
+ "type": "array",
1189
+ "format": "table",
1190
+ "title": "Labels",
1191
+ "description": "Optional list of dropdown option labels. Should correspond to the values above.",
1192
+ "items": {
1193
+ "type": "string",
1194
+ "title": "Label"
1195
+ }
1196
+ }
1197
+ }
1198
+ }
1199
+ }
1200
+ }
1201
+ }
1202
+ }
1203
+ }