jekyll-open-sdg-plugins 1.1.0 → 1.2.0.pre.beta1

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