@tenphi/docs 0.13.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,24 +9,71 @@
9
9
  "type": "object",
10
10
  "additionalProperties": false,
11
11
  "properties": {
12
- "title": { "type": "string" },
13
- "version": { "type": "string" },
14
- "description": { "type": "string" },
15
- "url": { "type": "string", "format": "uri" },
16
- "repository": { "type": "string", "format": "uri" },
12
+ "title": {
13
+ "type": "string"
14
+ },
15
+ "version": {
16
+ "type": "string"
17
+ },
18
+ "description": {
19
+ "type": "string"
20
+ },
21
+ "url": {
22
+ "type": "string",
23
+ "format": "uri"
24
+ },
25
+ "repository": {
26
+ "type": "string",
27
+ "format": "uri"
28
+ },
17
29
  "favicon": {
18
30
  "oneOf": [
19
- { "type": "string", "minLength": 1 },
31
+ {
32
+ "type": "string",
33
+ "minLength": 1
34
+ },
20
35
  {
21
36
  "type": "object",
22
37
  "additionalProperties": false,
23
38
  "required": ["source"],
24
39
  "properties": {
25
- "source": { "type": "string", "minLength": 1 },
26
- "background": { "type": "string", "minLength": 1 }
40
+ "source": {
41
+ "type": "string",
42
+ "minLength": 1
43
+ },
44
+ "background": {
45
+ "type": "string",
46
+ "minLength": 1
47
+ }
27
48
  }
28
49
  }
29
50
  ]
51
+ },
52
+ "headerLinks": {
53
+ "type": "array",
54
+ "items": {
55
+ "type": "object",
56
+ "additionalProperties": false,
57
+ "required": ["label", "link"],
58
+ "properties": {
59
+ "label": {
60
+ "type": "string",
61
+ "minLength": 1,
62
+ "pattern": "\\S"
63
+ },
64
+ "link": {
65
+ "type": "string",
66
+ "pattern": "^(?:https?://[^\\s\\\\]+|/(?!/)[^\\s\\\\]*|#[^\\s\\\\]*)$"
67
+ },
68
+ "variant": {
69
+ "enum": ["default", "primary"]
70
+ },
71
+ "newTab": {
72
+ "type": "boolean",
73
+ "default": false
74
+ }
75
+ }
76
+ }
30
77
  }
31
78
  }
32
79
  },
@@ -37,12 +84,18 @@
37
84
  "additionalProperties": false,
38
85
  "required": ["tag"],
39
86
  "properties": {
40
- "tag": { "type": "string" },
87
+ "tag": {
88
+ "type": "string"
89
+ },
41
90
  "attrs": {
42
91
  "type": "object",
43
- "additionalProperties": { "type": ["string", "boolean"] }
92
+ "additionalProperties": {
93
+ "type": ["string", "boolean"]
94
+ }
44
95
  },
45
- "content": { "type": "string" }
96
+ "content": {
97
+ "type": "string"
98
+ }
46
99
  }
47
100
  }
48
101
  },
@@ -50,28 +103,57 @@
50
103
  "type": "object",
51
104
  "additionalProperties": false,
52
105
  "required": ["baseUrl"],
53
- "properties": { "baseUrl": { "type": "string", "format": "uri" } }
106
+ "properties": {
107
+ "baseUrl": {
108
+ "type": "string",
109
+ "format": "uri"
110
+ }
111
+ }
112
+ },
113
+ "lastUpdated": {
114
+ "type": "boolean",
115
+ "default": false
54
116
  },
55
- "lastUpdated": { "type": "boolean", "default": false },
56
117
  "locales": {
57
118
  "type": "object",
58
- "additionalProperties": { "$ref": "#/$defs/locale" }
119
+ "additionalProperties": {
120
+ "$ref": "#/$defs/locale"
121
+ }
122
+ },
123
+ "defaultLocale": {
124
+ "type": "string"
59
125
  },
60
- "defaultLocale": { "type": "string" },
61
126
  "content": {
62
127
  "type": "object",
63
128
  "additionalProperties": false,
64
129
  "properties": {
65
- "allowOutsideRoot": { "type": "boolean", "default": false },
66
- "localizeRepositoryLinks": { "type": "boolean", "default": false },
67
- "sources": { "type": "array", "items": { "$ref": "#/$defs/source" } }
130
+ "allowOutsideRoot": {
131
+ "type": "boolean",
132
+ "default": false
133
+ },
134
+ "localizeRepositoryLinks": {
135
+ "type": "boolean",
136
+ "default": false
137
+ },
138
+ "sources": {
139
+ "type": "array",
140
+ "items": {
141
+ "$ref": "#/$defs/source"
142
+ }
143
+ },
144
+ "frontmatter": {
145
+ "enum": ["preserve", "reject"],
146
+ "default": "preserve"
147
+ }
68
148
  }
69
149
  },
70
150
  "navigation": {
71
151
  "oneOf": [
72
152
  {
73
153
  "type": "array",
74
- "items": { "$ref": "#/$defs/navigationItem" }
154
+ "items": {
155
+ "$ref": "#/$defs/navigationItem"
156
+ }
75
157
  },
76
158
  {
77
159
  "type": "object",
@@ -79,11 +161,15 @@
79
161
  "properties": {
80
162
  "items": {
81
163
  "type": "array",
82
- "items": { "$ref": "#/$defs/navigationItem" }
164
+ "items": {
165
+ "$ref": "#/$defs/navigationItem"
166
+ }
83
167
  },
84
168
  "tabs": {
85
169
  "type": "array",
86
- "items": { "$ref": "#/$defs/navigationTab" }
170
+ "items": {
171
+ "$ref": "#/$defs/navigationTab"
172
+ }
87
173
  }
88
174
  }
89
175
  }
@@ -93,7 +179,6 @@
93
179
  "type": "object",
94
180
  "additionalProperties": false,
95
181
  "properties": {
96
- "variant": { "type": "string" },
97
182
  "brand": {},
98
183
  "palette": {
99
184
  "type": "object",
@@ -101,39 +186,358 @@
101
186
  "properties": {
102
187
  "surface": {},
103
188
  "text": {},
104
- "textSoft": {}
189
+ "textSoft": {},
190
+ "info": {},
191
+ "success": {},
192
+ "warning": {},
193
+ "danger": {},
194
+ "header": {},
195
+ "overlay": {}
105
196
  }
106
197
  },
107
198
  "states": {
108
199
  "type": "object",
109
- "additionalProperties": { "type": "string" }
200
+ "additionalProperties": {
201
+ "type": "string"
202
+ }
110
203
  },
111
204
  "tokens": {
112
205
  "type": "object",
113
- "propertyNames": { "pattern": "^(\\$|--)[a-zA-Z0-9_-]+$" },
114
- "additionalProperties": { "type": ["string", "number"] }
206
+ "propertyNames": {
207
+ "pattern": "^(\\$|--)[a-zA-Z0-9_-]+$"
208
+ },
209
+ "additionalProperties": {
210
+ "type": ["string", "number"]
211
+ }
115
212
  },
116
213
  "presets": {
117
214
  "type": "object",
118
- "additionalProperties": { "$ref": "#/$defs/typographyPreset" }
215
+ "additionalProperties": {
216
+ "$ref": "#/$defs/typographyPreset"
217
+ }
119
218
  },
120
219
  "styles": {
121
220
  "type": "object",
122
- "additionalProperties": {
123
- "type": "object",
124
- "propertyNames": { "not": { "const": "mode" } }
221
+ "additionalProperties": false,
222
+ "properties": {
223
+ "Card": {
224
+ "type": "object",
225
+ "propertyNames": {
226
+ "not": {
227
+ "const": "mode"
228
+ }
229
+ }
230
+ },
231
+ "Callout": {
232
+ "type": "object",
233
+ "propertyNames": {
234
+ "not": {
235
+ "const": "mode"
236
+ }
237
+ }
238
+ },
239
+ "CodeGroup": {
240
+ "type": "object",
241
+ "propertyNames": {
242
+ "not": {
243
+ "const": "mode"
244
+ }
245
+ }
246
+ },
247
+ "Tab": {
248
+ "type": "object",
249
+ "propertyNames": {
250
+ "not": {
251
+ "const": "mode"
252
+ }
253
+ }
254
+ },
255
+ "Footer": {
256
+ "type": "object",
257
+ "propertyNames": {
258
+ "not": {
259
+ "const": "mode"
260
+ }
261
+ }
262
+ },
263
+ "Hero": {
264
+ "type": "object",
265
+ "propertyNames": {
266
+ "not": {
267
+ "const": "mode"
268
+ }
269
+ }
270
+ },
271
+ "LanguageSelect": {
272
+ "type": "object",
273
+ "propertyNames": {
274
+ "not": {
275
+ "const": "mode"
276
+ }
277
+ }
278
+ },
279
+ "Logo": {
280
+ "type": "object",
281
+ "propertyNames": {
282
+ "not": {
283
+ "const": "mode"
284
+ }
285
+ }
286
+ },
287
+ "MarkdownCodeBlock": {
288
+ "type": "object",
289
+ "propertyNames": {
290
+ "not": {
291
+ "const": "mode"
292
+ }
293
+ }
294
+ },
295
+ "MarkdownHeading": {
296
+ "type": "object",
297
+ "propertyNames": {
298
+ "not": {
299
+ "const": "mode"
300
+ }
301
+ }
302
+ },
303
+ "MarkdownTable": {
304
+ "type": "object",
305
+ "propertyNames": {
306
+ "not": {
307
+ "const": "mode"
308
+ }
309
+ }
310
+ },
311
+ "Mermaid": {
312
+ "type": "object",
313
+ "propertyNames": {
314
+ "not": {
315
+ "const": "mode"
316
+ }
317
+ }
318
+ },
319
+ "MobileMenuFooter": {
320
+ "type": "object",
321
+ "propertyNames": {
322
+ "not": {
323
+ "const": "mode"
324
+ }
325
+ }
326
+ },
327
+ "MobileMenuToggle": {
328
+ "type": "object",
329
+ "propertyNames": {
330
+ "not": {
331
+ "const": "mode"
332
+ }
333
+ }
334
+ },
335
+ "MobileNavigationTabs": {
336
+ "type": "object",
337
+ "propertyNames": {
338
+ "not": {
339
+ "const": "mode"
340
+ }
341
+ }
342
+ },
343
+ "MobileTableOfContents": {
344
+ "type": "object",
345
+ "propertyNames": {
346
+ "not": {
347
+ "const": "mode"
348
+ }
349
+ }
350
+ },
351
+ "PackageVersion": {
352
+ "type": "object",
353
+ "propertyNames": {
354
+ "not": {
355
+ "const": "mode"
356
+ }
357
+ }
358
+ },
359
+ "Preview": {
360
+ "type": "object",
361
+ "propertyNames": {
362
+ "not": {
363
+ "const": "mode"
364
+ }
365
+ }
366
+ },
367
+ "Sidebar": {
368
+ "type": "object",
369
+ "propertyNames": {
370
+ "not": {
371
+ "const": "mode"
372
+ }
373
+ }
374
+ },
375
+ "Steps": {
376
+ "type": "object",
377
+ "propertyNames": {
378
+ "not": {
379
+ "const": "mode"
380
+ }
381
+ }
382
+ },
383
+ "Tabs": {
384
+ "type": "object",
385
+ "propertyNames": {
386
+ "not": {
387
+ "const": "mode"
388
+ }
389
+ }
390
+ },
391
+ "TableOfContents": {
392
+ "type": "object",
393
+ "propertyNames": {
394
+ "not": {
395
+ "const": "mode"
396
+ }
397
+ }
398
+ },
399
+ "ThemeSelect": {
400
+ "type": "object",
401
+ "propertyNames": {
402
+ "not": {
403
+ "const": "mode"
404
+ }
405
+ }
406
+ },
407
+ "TopNavigation": {
408
+ "type": "object",
409
+ "propertyNames": {
410
+ "not": {
411
+ "const": "mode"
412
+ }
413
+ }
414
+ },
415
+ "StarlightHeader": {
416
+ "type": "object",
417
+ "propertyNames": {
418
+ "not": {
419
+ "const": "mode"
420
+ }
421
+ }
422
+ },
423
+ "MarkdownInlineCode": {
424
+ "type": "object",
425
+ "propertyNames": {
426
+ "not": {
427
+ "const": "mode"
428
+ }
429
+ }
430
+ },
431
+ "SocialIcons": {
432
+ "type": "object",
433
+ "propertyNames": {
434
+ "not": {
435
+ "const": "mode"
436
+ }
437
+ }
438
+ },
439
+ "HeaderFrame": {
440
+ "type": "object",
441
+ "propertyNames": {
442
+ "not": {
443
+ "const": "mode"
444
+ }
445
+ }
446
+ },
447
+ "HeaderLinks": {
448
+ "type": "object",
449
+ "propertyNames": {
450
+ "not": {
451
+ "const": "mode"
452
+ }
453
+ }
454
+ },
455
+ "Layout": {
456
+ "type": "object",
457
+ "propertyNames": {
458
+ "not": {
459
+ "const": "mode"
460
+ }
461
+ }
462
+ },
463
+ "SearchButton": {
464
+ "type": "object",
465
+ "propertyNames": {
466
+ "not": {
467
+ "const": "mode"
468
+ }
469
+ }
470
+ },
471
+ "TableOfContentsLayout": {
472
+ "type": "object",
473
+ "propertyNames": {
474
+ "not": {
475
+ "const": "mode"
476
+ }
477
+ }
478
+ },
479
+ "PageFrame": {
480
+ "type": "object",
481
+ "propertyNames": {
482
+ "not": {
483
+ "const": "mode"
484
+ }
485
+ }
486
+ }
125
487
  }
126
488
  },
127
489
  "contrastLevel": {
128
490
  "oneOf": [
129
- { "const": "auto" },
130
- { "type": "number", "minimum": 0, "maximum": 100 }
491
+ {
492
+ "const": "auto"
493
+ },
494
+ {
495
+ "type": "number",
496
+ "minimum": 0,
497
+ "maximum": 100
498
+ }
131
499
  ]
500
+ },
501
+ "customStyles": {
502
+ "type": "object",
503
+ "propertyNames": {
504
+ "pattern": "^[A-Za-z][A-Za-z0-9_-]*$"
505
+ },
506
+ "additionalProperties": {
507
+ "type": "object",
508
+ "propertyNames": {
509
+ "not": {
510
+ "const": "mode"
511
+ }
512
+ }
513
+ }
514
+ }
515
+ }
516
+ },
517
+ "markdown": {
518
+ "type": "object",
519
+ "additionalProperties": false,
520
+ "properties": {
521
+ "stripLeadingBadges": {
522
+ "type": "boolean",
523
+ "default": true
524
+ },
525
+ "rawHtml": {
526
+ "enum": ["allow", "sanitize", "strip", "reject"],
527
+ "default": "sanitize"
528
+ }
529
+ }
530
+ },
531
+ "search": {
532
+ "type": "object",
533
+ "additionalProperties": false,
534
+ "properties": {
535
+ "enabled": {
536
+ "type": "boolean",
537
+ "default": true
132
538
  }
133
539
  }
134
540
  },
135
- "markdown": { "type": "object" },
136
- "search": { "type": "object" },
137
541
  "components": {
138
542
  "type": "object",
139
543
  "additionalProperties": false,
@@ -142,14 +546,67 @@
142
546
  "type": "object",
143
547
  "properties": {
144
548
  "Footer": {
145
- "oneOf": [{ "type": "string" }, { "const": false }]
549
+ "oneOf": [
550
+ {
551
+ "type": "string"
552
+ },
553
+ {
554
+ "const": false
555
+ }
556
+ ]
146
557
  }
147
558
  },
148
- "additionalProperties": { "type": "string" }
559
+ "additionalProperties": {
560
+ "type": "string"
561
+ }
149
562
  }
150
563
  }
151
564
  },
152
- "build": { "type": "object" }
565
+ "build": {
566
+ "type": "object",
567
+ "additionalProperties": false,
568
+ "properties": {
569
+ "strict": {
570
+ "type": "boolean",
571
+ "default": true
572
+ },
573
+ "ci": {
574
+ "type": "boolean"
575
+ },
576
+ "cacheDir": {
577
+ "type": "string"
578
+ },
579
+ "maxArtifactBytes": {
580
+ "type": "integer",
581
+ "minimum": 1
582
+ },
583
+ "maxUnpackedBytes": {
584
+ "type": "integer",
585
+ "minimum": 1
586
+ },
587
+ "maxFiles": {
588
+ "type": "integer",
589
+ "minimum": 1
590
+ },
591
+ "maxPathDepth": {
592
+ "type": "integer",
593
+ "minimum": 1
594
+ },
595
+ "maxAssetBytes": {
596
+ "type": "integer",
597
+ "minimum": 1
598
+ }
599
+ }
600
+ },
601
+ "root": {
602
+ "type": "string"
603
+ },
604
+ "redirects": {
605
+ "type": "object",
606
+ "additionalProperties": {
607
+ "type": "string"
608
+ }
609
+ }
153
610
  },
154
611
  "$defs": {
155
612
  "locale": {
@@ -157,23 +614,43 @@
157
614
  "additionalProperties": false,
158
615
  "required": ["label"],
159
616
  "properties": {
160
- "label": { "type": "string" },
161
- "lang": { "type": "string" },
162
- "dir": { "enum": ["ltr", "rtl"] }
617
+ "label": {
618
+ "type": "string"
619
+ },
620
+ "lang": {
621
+ "type": "string"
622
+ },
623
+ "dir": {
624
+ "enum": ["ltr", "rtl"]
625
+ }
163
626
  }
164
627
  },
165
628
  "navigationItem": {
166
629
  "oneOf": [
167
- { "type": "string" },
630
+ {
631
+ "type": "string"
632
+ },
168
633
  {
169
634
  "type": "object",
170
635
  "additionalProperties": false,
171
636
  "required": ["label", "items"],
172
637
  "properties": {
173
- "label": { "type": "string" },
638
+ "label": {
639
+ "type": "string"
640
+ },
174
641
  "items": {
175
642
  "type": "array",
176
- "items": { "$ref": "#/$defs/navigationItem" }
643
+ "items": {
644
+ "$ref": "#/$defs/navigationItem"
645
+ }
646
+ },
647
+ "link": {
648
+ "type": "string",
649
+ "pattern": "^/(?!/)[^?#\\\\\\s]*$",
650
+ "description": "Optional parent page route, without a deployment base, query, or fragment.",
651
+ "not": {
652
+ "pattern": "//|(^|/)\\.{1,2}(/|$)"
653
+ }
177
654
  }
178
655
  }
179
656
  },
@@ -182,12 +659,26 @@
182
659
  "additionalProperties": false,
183
660
  "required": ["label", "autogenerate"],
184
661
  "properties": {
185
- "label": { "type": "string" },
662
+ "label": {
663
+ "type": "string"
664
+ },
186
665
  "autogenerate": {
187
666
  "type": "object",
188
667
  "additionalProperties": false,
189
668
  "required": ["directory"],
190
- "properties": { "directory": { "type": "string" } }
669
+ "properties": {
670
+ "directory": {
671
+ "type": "string"
672
+ }
673
+ }
674
+ },
675
+ "link": {
676
+ "type": "string",
677
+ "pattern": "^/(?!/)[^?#\\\\\\s]*$",
678
+ "description": "Optional parent page route, without a deployment base, query, or fragment.",
679
+ "not": {
680
+ "pattern": "//|(^|/)\\.{1,2}(/|$)"
681
+ }
191
682
  }
192
683
  }
193
684
  },
@@ -196,8 +687,12 @@
196
687
  "additionalProperties": false,
197
688
  "required": ["label", "link"],
198
689
  "properties": {
199
- "label": { "type": "string" },
200
- "link": { "type": "string" }
690
+ "label": {
691
+ "type": "string"
692
+ },
693
+ "link": {
694
+ "type": "string"
695
+ }
201
696
  }
202
697
  }
203
698
  ]
@@ -207,11 +702,17 @@
207
702
  "additionalProperties": false,
208
703
  "required": ["label", "link"],
209
704
  "properties": {
210
- "label": { "type": "string" },
211
- "link": { "type": "string" },
705
+ "label": {
706
+ "type": "string"
707
+ },
708
+ "link": {
709
+ "type": "string"
710
+ },
212
711
  "items": {
213
712
  "type": "array",
214
- "items": { "$ref": "#/$defs/navigationItem" }
713
+ "items": {
714
+ "$ref": "#/$defs/navigationItem"
715
+ }
215
716
  }
216
717
  }
217
718
  },
@@ -219,24 +720,175 @@
219
720
  "type": "object",
220
721
  "additionalProperties": false,
221
722
  "properties": {
222
- "fontFamily": { "type": "string" },
223
- "fontSize": { "type": ["string", "number"] },
224
- "lineHeight": { "type": ["string", "number"] },
225
- "letterSpacing": { "type": ["string", "number"] },
226
- "fontWeight": { "type": ["string", "number"] },
227
- "boldFontWeight": { "type": ["string", "number"] },
228
- "iconSize": { "type": ["string", "number"] },
229
- "textTransform": { "type": ["string", "number"] },
230
- "fontStyle": { "type": ["string", "number"] }
723
+ "fontFamily": {
724
+ "type": "string"
725
+ },
726
+ "fontSize": {
727
+ "type": ["string", "number"]
728
+ },
729
+ "lineHeight": {
730
+ "type": ["string", "number"]
731
+ },
732
+ "letterSpacing": {
733
+ "type": ["string", "number"]
734
+ },
735
+ "fontWeight": {
736
+ "type": ["string", "number"]
737
+ },
738
+ "boldFontWeight": {
739
+ "type": ["string", "number"]
740
+ },
741
+ "iconSize": {
742
+ "type": ["string", "number"]
743
+ },
744
+ "textTransform": {
745
+ "type": ["string", "number"]
746
+ },
747
+ "fontStyle": {
748
+ "type": ["string", "number"]
749
+ }
231
750
  }
232
751
  },
233
752
  "source": {
234
- "type": "object",
235
753
  "oneOf": [
236
- { "required": ["file"] },
237
- { "required": ["glob"] },
238
- { "required": ["package"] }
754
+ {
755
+ "type": "object",
756
+ "additionalProperties": false,
757
+ "required": ["file"],
758
+ "properties": {
759
+ "file": {
760
+ "type": "string",
761
+ "minLength": 1
762
+ },
763
+ "route": {
764
+ "type": "string"
765
+ },
766
+ "title": {
767
+ "type": "string"
768
+ },
769
+ "description": {
770
+ "type": "string"
771
+ },
772
+ "navigation": {
773
+ "oneOf": [
774
+ {
775
+ "const": false
776
+ },
777
+ {
778
+ "$ref": "#/$defs/navigationPlacement"
779
+ }
780
+ ]
781
+ },
782
+ "id": {
783
+ "type": "string",
784
+ "pattern": "^[a-zA-Z0-9_-]+$"
785
+ },
786
+ "routeBase": {
787
+ "type": "string"
788
+ },
789
+ "root": {
790
+ "type": "string"
791
+ }
792
+ }
793
+ },
794
+ {
795
+ "type": "object",
796
+ "additionalProperties": false,
797
+ "required": ["glob"],
798
+ "properties": {
799
+ "glob": {
800
+ "oneOf": [
801
+ {
802
+ "type": "string"
803
+ },
804
+ {
805
+ "type": "array",
806
+ "items": {
807
+ "type": "string"
808
+ }
809
+ }
810
+ ]
811
+ },
812
+ "base": {
813
+ "type": "string"
814
+ },
815
+ "routeBase": {
816
+ "type": "string"
817
+ },
818
+ "exclude": {
819
+ "type": "array",
820
+ "items": {
821
+ "type": "string"
822
+ }
823
+ },
824
+ "navigation": {
825
+ "enum": ["auto", false]
826
+ },
827
+ "id": {
828
+ "type": "string",
829
+ "pattern": "^[a-zA-Z0-9_-]+$"
830
+ },
831
+ "root": {
832
+ "type": "string"
833
+ }
834
+ }
835
+ },
836
+ {
837
+ "type": "object",
838
+ "additionalProperties": false,
839
+ "required": ["package"],
840
+ "properties": {
841
+ "package": {
842
+ "type": "string",
843
+ "minLength": 1
844
+ },
845
+ "include": {
846
+ "type": "array",
847
+ "items": {
848
+ "type": "string"
849
+ }
850
+ },
851
+ "exclude": {
852
+ "type": "array",
853
+ "items": {
854
+ "type": "string"
855
+ }
856
+ },
857
+ "index": {
858
+ "type": "string"
859
+ },
860
+ "routeBase": {
861
+ "type": "string"
862
+ },
863
+ "trust": {
864
+ "enum": ["markdown", "mdx"]
865
+ },
866
+ "id": {
867
+ "type": "string",
868
+ "pattern": "^[a-zA-Z0-9_-]+$"
869
+ },
870
+ "registry": {
871
+ "type": "string",
872
+ "format": "uri"
873
+ }
874
+ }
875
+ }
239
876
  ]
877
+ },
878
+ "navigationPlacement": {
879
+ "type": "object",
880
+ "additionalProperties": false,
881
+ "properties": {
882
+ "label": {
883
+ "type": "string"
884
+ },
885
+ "order": {
886
+ "type": "number"
887
+ },
888
+ "group": {
889
+ "type": "string"
890
+ }
891
+ }
240
892
  }
241
893
  }
242
894
  }