@tenphi/docs 0.17.1 → 0.18.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.
@@ -23,8 +23,17 @@
23
23
  "additionalProperties": false,
24
24
  "required": ["label", "routeBase"],
25
25
  "properties": {
26
- "label": { "type": "string", "minLength": 1 },
27
- "routeBase": { "type": "string", "pattern": "^/(?!/)" }
26
+ "label": {
27
+ "type": "string",
28
+ "minLength": 1
29
+ },
30
+ "routeBase": {
31
+ "type": "string",
32
+ "pattern": "^/(?!/)"
33
+ },
34
+ "index": {
35
+ "type": "boolean"
36
+ }
28
37
  }
29
38
  }
30
39
  },
@@ -39,6 +48,73 @@
39
48
  "type": "string",
40
49
  "format": "uri"
41
50
  },
51
+ "logo": {
52
+ "oneOf": [
53
+ {
54
+ "const": false
55
+ },
56
+ {
57
+ "type": "string",
58
+ "minLength": 1
59
+ },
60
+ {
61
+ "type": "object",
62
+ "additionalProperties": false,
63
+ "oneOf": [
64
+ {
65
+ "required": ["src"],
66
+ "not": {
67
+ "anyOf": [
68
+ {
69
+ "required": ["light"]
70
+ },
71
+ {
72
+ "required": ["dark"]
73
+ }
74
+ ]
75
+ }
76
+ },
77
+ {
78
+ "required": ["light", "dark"],
79
+ "not": {
80
+ "required": ["src"]
81
+ }
82
+ }
83
+ ],
84
+ "properties": {
85
+ "src": {
86
+ "type": "string",
87
+ "minLength": 1
88
+ },
89
+ "light": {
90
+ "type": "string",
91
+ "minLength": 1
92
+ },
93
+ "dark": {
94
+ "type": "string",
95
+ "minLength": 1
96
+ },
97
+ "alt": {
98
+ "type": "string"
99
+ },
100
+ "href": {
101
+ "type": "string"
102
+ },
103
+ "width": {
104
+ "type": "number",
105
+ "exclusiveMinimum": 0
106
+ },
107
+ "height": {
108
+ "type": "number",
109
+ "exclusiveMinimum": 0
110
+ },
111
+ "decorative": {
112
+ "type": "boolean"
113
+ }
114
+ }
115
+ }
116
+ ]
117
+ },
42
118
  "favicon": {
43
119
  "oneOf": [
44
120
  {
@@ -87,6 +163,54 @@
87
163
  }
88
164
  }
89
165
  }
166
+ },
167
+ "seo": {
168
+ "type": "object",
169
+ "additionalProperties": false,
170
+ "properties": {
171
+ "titleTemplate": {
172
+ "type": "string",
173
+ "pattern": "\\{title\\}"
174
+ },
175
+ "image": {
176
+ "oneOf": [
177
+ {
178
+ "const": false
179
+ },
180
+ {
181
+ "type": "object",
182
+ "additionalProperties": false,
183
+ "required": ["src", "alt"],
184
+ "properties": {
185
+ "src": {
186
+ "type": "string"
187
+ },
188
+ "alt": {
189
+ "type": "string",
190
+ "minLength": 1
191
+ },
192
+ "width": {
193
+ "type": "integer",
194
+ "minimum": 1
195
+ },
196
+ "height": {
197
+ "type": "integer",
198
+ "minimum": 1
199
+ }
200
+ }
201
+ }
202
+ ]
203
+ },
204
+ "index": {
205
+ "type": "boolean"
206
+ },
207
+ "breadcrumbs": {
208
+ "type": "boolean"
209
+ },
210
+ "copyPage": {
211
+ "type": "boolean"
212
+ }
213
+ }
90
214
  }
91
215
  }
92
216
  },
@@ -133,6 +257,15 @@
133
257
  "$ref": "#/$defs/locale"
134
258
  }
135
259
  },
260
+ "translations": {
261
+ "type": "object",
262
+ "additionalProperties": {
263
+ "type": "object",
264
+ "additionalProperties": {
265
+ "type": "string"
266
+ }
267
+ }
268
+ },
136
269
  "defaultLocale": {
137
270
  "type": "string"
138
271
  },
@@ -192,30 +325,302 @@
192
325
  "type": "object",
193
326
  "additionalProperties": false,
194
327
  "properties": {
195
- "brand": { "$ref": "#/$defs/brandColor" },
328
+ "brand": {
329
+ "$ref": "#/$defs/brandColor"
330
+ },
196
331
  "palette": {
332
+ "type": "object",
333
+ "propertyNames": {
334
+ "pattern": "^(?:textSoft|[a-z][a-z0-9]*(?:-[a-z0-9]+)*)$"
335
+ },
336
+ "additionalProperties": {
337
+ "$ref": "#/$defs/paletteColor"
338
+ },
339
+ "properties": {
340
+ "surface-2": {
341
+ "$ref": "#/$defs/paletteColor"
342
+ },
343
+ "surface-3": {
344
+ "$ref": "#/$defs/paletteColor"
345
+ },
346
+ "text-soft": {
347
+ "$ref": "#/$defs/paletteColor"
348
+ },
349
+ "text-muted": {
350
+ "$ref": "#/$defs/paletteColor"
351
+ },
352
+ "surface-2-hover": {
353
+ "$ref": "#/$defs/paletteColor"
354
+ },
355
+ "surface-2-pressed": {
356
+ "$ref": "#/$defs/paletteColor"
357
+ },
358
+ "surface-3-hover": {
359
+ "$ref": "#/$defs/paletteColor"
360
+ },
361
+ "surface-3-pressed": {
362
+ "$ref": "#/$defs/paletteColor"
363
+ },
364
+ "accent-text": {
365
+ "$ref": "#/$defs/paletteColor"
366
+ },
367
+ "focus": {
368
+ "$ref": "#/$defs/paletteColor"
369
+ },
370
+ "accent-surface": {
371
+ "$ref": "#/$defs/paletteColor"
372
+ },
373
+ "accent-surface-text": {
374
+ "$ref": "#/$defs/paletteColor"
375
+ },
376
+ "logo-surface": {
377
+ "$ref": "#/$defs/paletteColor"
378
+ },
379
+ "logo-mark": {
380
+ "$ref": "#/$defs/paletteColor"
381
+ },
382
+ "accent-surface-subtle": {
383
+ "$ref": "#/$defs/paletteColor"
384
+ },
385
+ "accent-surface-2-subtle": {
386
+ "$ref": "#/$defs/paletteColor"
387
+ },
388
+ "shadow": {
389
+ "$ref": "#/$defs/paletteColor"
390
+ },
391
+ "clear": {
392
+ "$ref": "#/$defs/paletteColor"
393
+ },
394
+ "info-text": {
395
+ "$ref": "#/$defs/paletteColor"
396
+ },
397
+ "info-surface": {
398
+ "$ref": "#/$defs/paletteColor"
399
+ },
400
+ "success-text": {
401
+ "$ref": "#/$defs/paletteColor"
402
+ },
403
+ "success-surface": {
404
+ "$ref": "#/$defs/paletteColor"
405
+ },
406
+ "warning-text": {
407
+ "$ref": "#/$defs/paletteColor"
408
+ },
409
+ "warning-surface": {
410
+ "$ref": "#/$defs/paletteColor"
411
+ },
412
+ "danger-text": {
413
+ "$ref": "#/$defs/paletteColor"
414
+ },
415
+ "danger-surface": {
416
+ "$ref": "#/$defs/paletteColor"
417
+ },
418
+ "orange": {
419
+ "$ref": "#/$defs/paletteColor"
420
+ },
421
+ "orange-text": {
422
+ "$ref": "#/$defs/paletteColor"
423
+ },
424
+ "orange-surface": {
425
+ "$ref": "#/$defs/paletteColor"
426
+ },
427
+ "green": {
428
+ "$ref": "#/$defs/paletteColor"
429
+ },
430
+ "green-text": {
431
+ "$ref": "#/$defs/paletteColor"
432
+ },
433
+ "green-surface": {
434
+ "$ref": "#/$defs/paletteColor"
435
+ },
436
+ "blue": {
437
+ "$ref": "#/$defs/paletteColor"
438
+ },
439
+ "blue-text": {
440
+ "$ref": "#/$defs/paletteColor"
441
+ },
442
+ "blue-surface": {
443
+ "$ref": "#/$defs/paletteColor"
444
+ },
445
+ "purple": {
446
+ "$ref": "#/$defs/paletteColor"
447
+ },
448
+ "purple-text": {
449
+ "$ref": "#/$defs/paletteColor"
450
+ },
451
+ "purple-surface": {
452
+ "$ref": "#/$defs/paletteColor"
453
+ },
454
+ "red": {
455
+ "$ref": "#/$defs/paletteColor"
456
+ },
457
+ "red-text": {
458
+ "$ref": "#/$defs/paletteColor"
459
+ },
460
+ "red-surface": {
461
+ "$ref": "#/$defs/paletteColor"
462
+ },
463
+ "border": {
464
+ "$ref": "#/$defs/paletteColor"
465
+ },
466
+ "border-strong": {
467
+ "$ref": "#/$defs/paletteColor"
468
+ },
469
+ "syntax-bg": {
470
+ "$ref": "#/$defs/paletteColor"
471
+ },
472
+ "syntax-text": {
473
+ "$ref": "#/$defs/paletteColor"
474
+ },
475
+ "syntax-comment": {
476
+ "$ref": "#/$defs/paletteColor"
477
+ },
478
+ "syntax-punctuation": {
479
+ "$ref": "#/$defs/paletteColor"
480
+ },
481
+ "syntax-keyword": {
482
+ "$ref": "#/$defs/paletteColor"
483
+ },
484
+ "syntax-string": {
485
+ "$ref": "#/$defs/paletteColor"
486
+ },
487
+ "syntax-token": {
488
+ "$ref": "#/$defs/paletteColor"
489
+ },
490
+ "syntax-property": {
491
+ "$ref": "#/$defs/paletteColor"
492
+ },
493
+ "syntax-number": {
494
+ "$ref": "#/$defs/paletteColor"
495
+ },
496
+ "syntax-function": {
497
+ "$ref": "#/$defs/paletteColor"
498
+ },
499
+ "syntax-value": {
500
+ "$ref": "#/$defs/paletteColor"
501
+ },
502
+ "syntax-operator": {
503
+ "$ref": "#/$defs/paletteColor"
504
+ },
505
+ "surface": {
506
+ "$ref": "#/$defs/paletteColor"
507
+ },
508
+ "text": {
509
+ "$ref": "#/$defs/paletteColor"
510
+ },
511
+ "heading": {
512
+ "$ref": "#/$defs/paletteColor"
513
+ },
514
+ "textSoft": {
515
+ "$ref": "#/$defs/paletteColor"
516
+ },
517
+ "info": {
518
+ "$ref": "#/$defs/paletteColor"
519
+ },
520
+ "success": {
521
+ "$ref": "#/$defs/paletteColor"
522
+ },
523
+ "warning": {
524
+ "$ref": "#/$defs/paletteColor"
525
+ },
526
+ "danger": {
527
+ "$ref": "#/$defs/paletteColor"
528
+ },
529
+ "header": {
530
+ "$ref": "#/$defs/paletteColor"
531
+ },
532
+ "overlay": {
533
+ "$ref": "#/$defs/paletteColor"
534
+ }
535
+ }
536
+ },
537
+ "units": {
538
+ "type": "object",
539
+ "propertyNames": {
540
+ "pattern": "^[a-z][a-z0-9]*$"
541
+ },
542
+ "additionalProperties": {
543
+ "type": "string",
544
+ "minLength": 1
545
+ }
546
+ },
547
+ "recipes": {
548
+ "type": "object",
549
+ "propertyNames": {
550
+ "pattern": "^[a-z][a-z0-9-]*$",
551
+ "not": {
552
+ "const": "none"
553
+ }
554
+ },
555
+ "additionalProperties": {
556
+ "type": "object",
557
+ "propertyNames": {
558
+ "not": {
559
+ "pattern": "^[A-Z&.]"
560
+ }
561
+ },
562
+ "not": {
563
+ "required": ["recipe"]
564
+ }
565
+ }
566
+ },
567
+ "glaze": {
568
+ "type": "object",
569
+ "additionalProperties": false,
570
+ "properties": {
571
+ "lightTone": {
572
+ "$ref": "#/$defs/toneWindow"
573
+ },
574
+ "darkTone": {
575
+ "$ref": "#/$defs/toneWindow"
576
+ },
577
+ "darkDesaturation": {
578
+ "type": "number",
579
+ "minimum": 0,
580
+ "maximum": 1
581
+ },
582
+ "autoFlip": {
583
+ "type": "boolean"
584
+ },
585
+ "pastel": {
586
+ "type": "boolean"
587
+ },
588
+ "inferRole": {
589
+ "type": "boolean"
590
+ },
591
+ "shadowTuning": {
592
+ "type": "object"
593
+ }
594
+ }
595
+ },
596
+ "fontLoading": {
197
597
  "type": "object",
198
598
  "additionalProperties": false,
199
599
  "properties": {
200
- "surface": { "$ref": "#/$defs/paletteColor" },
201
- "text": { "$ref": "#/$defs/paletteColor" },
202
- "heading": { "$ref": "#/$defs/paletteColor" },
203
- "textSoft": { "$ref": "#/$defs/paletteColor" },
204
- "info": { "$ref": "#/$defs/paletteColor" },
205
- "success": { "$ref": "#/$defs/paletteColor" },
206
- "warning": { "$ref": "#/$defs/paletteColor" },
207
- "danger": { "$ref": "#/$defs/paletteColor" },
208
- "header": { "$ref": "#/$defs/paletteColor" },
209
- "overlay": { "$ref": "#/$defs/paletteColor" }
600
+ "google": {
601
+ "enum": ["self-hosted", "remote"]
602
+ },
603
+ "cache": {
604
+ "enum": ["reuse", "refresh", "offline"]
605
+ },
606
+ "display": {
607
+ "enum": ["auto", "block", "swap", "fallback", "optional"]
608
+ }
210
609
  }
211
610
  },
212
611
  "fonts": {
213
612
  "type": "object",
214
613
  "additionalProperties": false,
215
614
  "properties": {
216
- "body": { "$ref": "#/$defs/themeFont" },
217
- "heading": { "$ref": "#/$defs/themeFont" },
218
- "code": { "$ref": "#/$defs/themeFont" }
615
+ "body": {
616
+ "$ref": "#/$defs/themeFont"
617
+ },
618
+ "heading": {
619
+ "$ref": "#/$defs/themeFont"
620
+ },
621
+ "code": {
622
+ "$ref": "#/$defs/themeFont"
623
+ }
219
624
  }
220
625
  },
221
626
  "states": {
@@ -243,6 +648,134 @@
243
648
  "type": "object",
244
649
  "additionalProperties": false,
245
650
  "properties": {
651
+ "Document": {
652
+ "type": "object",
653
+ "propertyNames": {
654
+ "not": {
655
+ "const": "mode"
656
+ }
657
+ }
658
+ },
659
+ "MainPane": {
660
+ "type": "object",
661
+ "propertyNames": {
662
+ "not": {
663
+ "const": "mode"
664
+ }
665
+ }
666
+ },
667
+ "MainContent": {
668
+ "type": "object",
669
+ "propertyNames": {
670
+ "not": {
671
+ "const": "mode"
672
+ }
673
+ }
674
+ },
675
+ "Banner": {
676
+ "type": "object",
677
+ "propertyNames": {
678
+ "not": {
679
+ "const": "mode"
680
+ }
681
+ }
682
+ },
683
+ "SkipLink": {
684
+ "type": "object",
685
+ "propertyNames": {
686
+ "not": {
687
+ "const": "mode"
688
+ }
689
+ }
690
+ },
691
+ "Search": {
692
+ "type": "object",
693
+ "propertyNames": {
694
+ "not": {
695
+ "const": "mode"
696
+ }
697
+ }
698
+ },
699
+ "Pagination": {
700
+ "type": "object",
701
+ "propertyNames": {
702
+ "not": {
703
+ "const": "mode"
704
+ }
705
+ }
706
+ },
707
+ "Markdown": {
708
+ "type": "object",
709
+ "propertyNames": {
710
+ "not": {
711
+ "const": "mode"
712
+ }
713
+ }
714
+ },
715
+ "MermaidSource": {
716
+ "type": "object",
717
+ "propertyNames": {
718
+ "not": {
719
+ "const": "mode"
720
+ }
721
+ }
722
+ },
723
+ "StarlightAside": {
724
+ "type": "object",
725
+ "propertyNames": {
726
+ "not": {
727
+ "const": "mode"
728
+ }
729
+ }
730
+ },
731
+ "StarlightCard": {
732
+ "type": "object",
733
+ "propertyNames": {
734
+ "not": {
735
+ "const": "mode"
736
+ }
737
+ }
738
+ },
739
+ "StarlightLinkCard": {
740
+ "type": "object",
741
+ "propertyNames": {
742
+ "not": {
743
+ "const": "mode"
744
+ }
745
+ }
746
+ },
747
+ "StarlightBadge": {
748
+ "type": "object",
749
+ "propertyNames": {
750
+ "not": {
751
+ "const": "mode"
752
+ }
753
+ }
754
+ },
755
+ "StarlightSteps": {
756
+ "type": "object",
757
+ "propertyNames": {
758
+ "not": {
759
+ "const": "mode"
760
+ }
761
+ }
762
+ },
763
+ "SyntaxHighlight": {
764
+ "type": "object",
765
+ "propertyNames": {
766
+ "not": {
767
+ "const": "mode"
768
+ }
769
+ }
770
+ },
771
+ "SearchResults": {
772
+ "type": "object",
773
+ "propertyNames": {
774
+ "not": {
775
+ "const": "mode"
776
+ }
777
+ }
778
+ },
246
779
  "Card": {
247
780
  "type": "object",
248
781
  "propertyNames": {
@@ -307,6 +840,14 @@
307
840
  }
308
841
  }
309
842
  },
843
+ "SiteLogo": {
844
+ "type": "object",
845
+ "propertyNames": {
846
+ "not": {
847
+ "const": "mode"
848
+ }
849
+ }
850
+ },
310
851
  "Logo": {
311
852
  "type": "object",
312
853
  "propertyNames": {
@@ -373,11 +914,7 @@
373
914
  },
374
915
  "MobileTableOfContents": {
375
916
  "type": "object",
376
- "propertyNames": {
377
- "not": {
378
- "const": "mode"
379
- }
380
- }
917
+ "additionalProperties": true
381
918
  },
382
919
  "PackageVersion": {
383
920
  "type": "object",
@@ -522,6 +1059,10 @@
522
1059
  "const": "mode"
523
1060
  }
524
1061
  }
1062
+ },
1063
+ "PageActions": {
1064
+ "type": "object",
1065
+ "additionalProperties": true
525
1066
  }
526
1067
  }
527
1068
  },
@@ -645,21 +1186,55 @@
645
1186
  "additionalProperties": {
646
1187
  "type": "string"
647
1188
  }
1189
+ },
1190
+ "tableOfContents": {
1191
+ "oneOf": [
1192
+ {
1193
+ "const": false
1194
+ },
1195
+ {
1196
+ "type": "object",
1197
+ "additionalProperties": false,
1198
+ "properties": {
1199
+ "minHeadingLevel": {
1200
+ "type": "integer",
1201
+ "minimum": 1,
1202
+ "maximum": 6
1203
+ },
1204
+ "maxHeadingLevel": {
1205
+ "type": "integer",
1206
+ "minimum": 1,
1207
+ "maximum": 6
1208
+ },
1209
+ "mobile": {
1210
+ "type": "boolean"
1211
+ }
1212
+ }
1213
+ }
1214
+ ]
648
1215
  }
649
1216
  },
650
1217
  "$defs": {
651
1218
  "brandColor": {
652
1219
  "description": "A Glaze from declaration for the brand seed, optionally with APCA targets. Literal shorthand and structured hue, saturation, and tone are also supported.",
653
1220
  "oneOf": [
654
- { "$ref": "#/$defs/glazeColorValue" },
1221
+ {
1222
+ "$ref": "#/$defs/glazeColorValue"
1223
+ },
655
1224
  {
656
1225
  "type": "object",
657
1226
  "additionalProperties": false,
658
1227
  "required": ["from"],
659
1228
  "properties": {
660
- "from": { "$ref": "#/$defs/glazeColorValue" },
661
- "contrast": { "$ref": "#/$defs/brandContrast" },
662
- "unsafeContrast": { "type": "boolean" }
1229
+ "from": {
1230
+ "$ref": "#/$defs/glazeColorValue"
1231
+ },
1232
+ "contrast": {
1233
+ "$ref": "#/$defs/brandContrast"
1234
+ },
1235
+ "unsafeContrast": {
1236
+ "type": "boolean"
1237
+ }
663
1238
  }
664
1239
  },
665
1240
  {
@@ -667,11 +1242,27 @@
667
1242
  "additionalProperties": false,
668
1243
  "required": ["hue", "saturation", "tone"],
669
1244
  "properties": {
670
- "hue": { "type": "number", "minimum": 0, "maximum": 360 },
671
- "saturation": { "type": "number", "minimum": 0, "maximum": 100 },
672
- "tone": { "type": "number", "minimum": 0, "maximum": 100 },
673
- "contrast": { "$ref": "#/$defs/brandContrast" },
674
- "unsafeContrast": { "type": "boolean" }
1245
+ "hue": {
1246
+ "type": "number",
1247
+ "minimum": 0,
1248
+ "maximum": 360
1249
+ },
1250
+ "saturation": {
1251
+ "type": "number",
1252
+ "minimum": 0,
1253
+ "maximum": 100
1254
+ },
1255
+ "tone": {
1256
+ "type": "number",
1257
+ "minimum": 0,
1258
+ "maximum": 100
1259
+ },
1260
+ "contrast": {
1261
+ "$ref": "#/$defs/brandContrast"
1262
+ },
1263
+ "unsafeContrast": {
1264
+ "type": "boolean"
1265
+ }
675
1266
  }
676
1267
  }
677
1268
  ]
@@ -683,10 +1274,19 @@
683
1274
  "properties": {
684
1275
  "apca": {
685
1276
  "oneOf": [
686
- { "type": "number" },
1277
+ {
1278
+ "type": "number"
1279
+ },
687
1280
  {
688
1281
  "type": "array",
689
- "prefixItems": [{ "type": "number" }, { "type": "number" }],
1282
+ "prefixItems": [
1283
+ {
1284
+ "type": "number"
1285
+ },
1286
+ {
1287
+ "type": "number"
1288
+ }
1289
+ ],
690
1290
  "minItems": 2,
691
1291
  "maxItems": 2
692
1292
  }
@@ -694,24 +1294,177 @@
694
1294
  }
695
1295
  }
696
1296
  },
1297
+ "toneWindow": {
1298
+ "oneOf": [
1299
+ {
1300
+ "const": false
1301
+ },
1302
+ {
1303
+ "type": "array",
1304
+ "items": {
1305
+ "type": "number",
1306
+ "minimum": 0,
1307
+ "maximum": 100
1308
+ },
1309
+ "minItems": 2,
1310
+ "maxItems": 2
1311
+ },
1312
+ {
1313
+ "type": "object",
1314
+ "required": ["lo", "hi", "eps"],
1315
+ "additionalProperties": false,
1316
+ "properties": {
1317
+ "lo": {
1318
+ "type": "number",
1319
+ "minimum": 0,
1320
+ "maximum": 100
1321
+ },
1322
+ "hi": {
1323
+ "type": "number",
1324
+ "minimum": 0,
1325
+ "maximum": 100
1326
+ },
1327
+ "eps": {
1328
+ "type": "number",
1329
+ "exclusiveMinimum": 0
1330
+ }
1331
+ }
1332
+ }
1333
+ ]
1334
+ },
697
1335
  "paletteColor": {
698
1336
  "description": "A Glaze color declaration; literal colors are convenient seed shorthands.",
699
1337
  "oneOf": [
700
- { "$ref": "#/$defs/glazeColorValue" },
701
- { "$ref": "#/$defs/glazeDeclaration" }
1338
+ {
1339
+ "$ref": "#/$defs/glazeColorValue"
1340
+ },
1341
+ {
1342
+ "$ref": "#/$defs/glazeDeclaration"
1343
+ },
1344
+ {
1345
+ "$ref": "#/$defs/glazeMix"
1346
+ },
1347
+ {
1348
+ "$ref": "#/$defs/glazeShadow"
1349
+ }
702
1350
  ]
703
1351
  },
1352
+ "glazeMix": {
1353
+ "type": "object",
1354
+ "required": ["type", "base", "target", "value"],
1355
+ "additionalProperties": false,
1356
+ "properties": {
1357
+ "type": {
1358
+ "const": "mix"
1359
+ },
1360
+ "base": {
1361
+ "type": "string"
1362
+ },
1363
+ "target": {
1364
+ "type": "string"
1365
+ },
1366
+ "value": {
1367
+ "oneOf": [
1368
+ {
1369
+ "type": "number",
1370
+ "minimum": 0,
1371
+ "maximum": 100
1372
+ },
1373
+ {
1374
+ "type": "array",
1375
+ "items": {
1376
+ "type": "number",
1377
+ "minimum": 0,
1378
+ "maximum": 100
1379
+ },
1380
+ "minItems": 2,
1381
+ "maxItems": 2
1382
+ }
1383
+ ]
1384
+ },
1385
+ "blend": {
1386
+ "enum": ["opaque", "transparent"]
1387
+ },
1388
+ "space": {
1389
+ "enum": ["okhsl", "srgb"]
1390
+ },
1391
+ "contrast": {
1392
+ "$ref": "#/$defs/glazeDeclaration/properties/contrast"
1393
+ },
1394
+ "role": {
1395
+ "type": "string"
1396
+ },
1397
+ "pastel": {
1398
+ "type": "boolean"
1399
+ },
1400
+ "inherit": {
1401
+ "type": "boolean"
1402
+ }
1403
+ }
1404
+ },
1405
+ "glazeShadow": {
1406
+ "type": "object",
1407
+ "required": ["type", "bg", "intensity"],
1408
+ "additionalProperties": false,
1409
+ "properties": {
1410
+ "type": {
1411
+ "const": "shadow"
1412
+ },
1413
+ "bg": {
1414
+ "type": "string"
1415
+ },
1416
+ "fg": {
1417
+ "type": "string"
1418
+ },
1419
+ "intensity": {
1420
+ "oneOf": [
1421
+ {
1422
+ "type": "number",
1423
+ "minimum": 0,
1424
+ "maximum": 100
1425
+ },
1426
+ {
1427
+ "type": "array",
1428
+ "items": {
1429
+ "type": "number",
1430
+ "minimum": 0,
1431
+ "maximum": 100
1432
+ },
1433
+ "minItems": 2,
1434
+ "maxItems": 2
1435
+ }
1436
+ ]
1437
+ },
1438
+ "tuning": {
1439
+ "type": "object"
1440
+ },
1441
+ "pastel": {
1442
+ "type": "boolean"
1443
+ },
1444
+ "inherit": {
1445
+ "type": "boolean"
1446
+ }
1447
+ }
1448
+ },
704
1449
  "glazeColorValue": {
705
1450
  "oneOf": [
706
- { "type": "string" },
1451
+ {
1452
+ "type": "string"
1453
+ },
707
1454
  {
708
1455
  "type": "object",
709
1456
  "additionalProperties": false,
710
1457
  "required": ["h", "s", "l"],
711
1458
  "properties": {
712
- "h": { "type": "number" },
713
- "s": { "type": "number" },
714
- "l": { "type": "number" }
1459
+ "h": {
1460
+ "type": "number"
1461
+ },
1462
+ "s": {
1463
+ "type": "number"
1464
+ },
1465
+ "l": {
1466
+ "type": "number"
1467
+ }
715
1468
  }
716
1469
  },
717
1470
  {
@@ -719,9 +1472,15 @@
719
1472
  "additionalProperties": false,
720
1473
  "required": ["h", "s", "t"],
721
1474
  "properties": {
722
- "h": { "type": "number" },
723
- "s": { "type": "number" },
724
- "t": { "type": "number" }
1475
+ "h": {
1476
+ "type": "number"
1477
+ },
1478
+ "s": {
1479
+ "type": "number"
1480
+ },
1481
+ "t": {
1482
+ "type": "number"
1483
+ }
725
1484
  }
726
1485
  },
727
1486
  {
@@ -729,9 +1488,15 @@
729
1488
  "additionalProperties": false,
730
1489
  "required": ["r", "g", "b"],
731
1490
  "properties": {
732
- "r": { "type": "number" },
733
- "g": { "type": "number" },
734
- "b": { "type": "number" }
1491
+ "r": {
1492
+ "type": "number"
1493
+ },
1494
+ "g": {
1495
+ "type": "number"
1496
+ },
1497
+ "b": {
1498
+ "type": "number"
1499
+ }
735
1500
  }
736
1501
  },
737
1502
  {
@@ -739,9 +1504,15 @@
739
1504
  "additionalProperties": false,
740
1505
  "required": ["l", "c", "h"],
741
1506
  "properties": {
742
- "l": { "type": "number" },
743
- "c": { "type": "number" },
744
- "h": { "type": "number" }
1507
+ "l": {
1508
+ "type": "number"
1509
+ },
1510
+ "c": {
1511
+ "type": "number"
1512
+ },
1513
+ "h": {
1514
+ "type": "number"
1515
+ }
745
1516
  }
746
1517
  }
747
1518
  ]
@@ -750,31 +1521,89 @@
750
1521
  "type": "object",
751
1522
  "additionalProperties": false,
752
1523
  "properties": {
753
- "from": { "$ref": "#/$defs/glazeColorValue" },
1524
+ "from": {
1525
+ "$ref": "#/$defs/glazeColorValue"
1526
+ },
754
1527
  "tone": {
755
1528
  "oneOf": [
756
- { "type": "number", "minimum": 0, "maximum": 100 },
757
- { "type": "string" },
1529
+ {
1530
+ "type": "number",
1531
+ "minimum": 0,
1532
+ "maximum": 100
1533
+ },
1534
+ {
1535
+ "type": "string"
1536
+ },
758
1537
  {
759
1538
  "type": "array",
760
1539
  "prefixItems": [
761
- { "oneOf": [{ "type": "number" }, { "type": "string" }] },
762
- { "oneOf": [{ "type": "number" }, { "type": "string" }] }
1540
+ {
1541
+ "oneOf": [
1542
+ {
1543
+ "type": "number"
1544
+ },
1545
+ {
1546
+ "type": "string"
1547
+ }
1548
+ ]
1549
+ },
1550
+ {
1551
+ "oneOf": [
1552
+ {
1553
+ "type": "number"
1554
+ },
1555
+ {
1556
+ "type": "string"
1557
+ }
1558
+ ]
1559
+ }
763
1560
  ],
764
1561
  "minItems": 2,
765
1562
  "maxItems": 2
766
1563
  }
767
1564
  ]
768
1565
  },
769
- "saturation": { "type": "number", "minimum": 0, "maximum": 1 },
770
- "hue": { "oneOf": [{ "type": "number" }, { "type": "string" }] },
771
- "darkHue": { "oneOf": [{ "type": "number" }, { "type": "string" }] },
772
- "darkSaturation": { "type": "number", "minimum": 0, "maximum": 1 },
773
- "base": { "type": "string" },
1566
+ "saturation": {
1567
+ "type": "number",
1568
+ "minimum": 0,
1569
+ "maximum": 1
1570
+ },
1571
+ "hue": {
1572
+ "oneOf": [
1573
+ {
1574
+ "type": "number"
1575
+ },
1576
+ {
1577
+ "type": "string"
1578
+ }
1579
+ ]
1580
+ },
1581
+ "darkHue": {
1582
+ "oneOf": [
1583
+ {
1584
+ "type": "number"
1585
+ },
1586
+ {
1587
+ "type": "string"
1588
+ }
1589
+ ]
1590
+ },
1591
+ "darkSaturation": {
1592
+ "type": "number",
1593
+ "minimum": 0,
1594
+ "maximum": 1
1595
+ },
1596
+ "base": {
1597
+ "type": "string"
1598
+ },
774
1599
  "contrast": {
775
1600
  "oneOf": [
776
- { "type": "number" },
777
- { "type": "string" },
1601
+ {
1602
+ "type": "number"
1603
+ },
1604
+ {
1605
+ "type": "string"
1606
+ },
778
1607
  {
779
1608
  "type": "array",
780
1609
  "minItems": 2,
@@ -790,27 +1619,66 @@
790
1619
  }
791
1620
  ]
792
1621
  },
793
- "mode": { "enum": ["auto", "fixed", "static"] },
794
- "autoFlip": { "type": "boolean" },
795
- "opacity": { "type": "number", "minimum": 0, "maximum": 1 },
796
- "pastel": { "type": "boolean" },
797
- "role": { "type": "string" },
798
- "inherit": { "type": "boolean" }
1622
+ "mode": {
1623
+ "enum": ["auto", "fixed", "static"]
1624
+ },
1625
+ "autoFlip": {
1626
+ "type": "boolean"
1627
+ },
1628
+ "opacity": {
1629
+ "type": "number",
1630
+ "minimum": 0,
1631
+ "maximum": 1
1632
+ },
1633
+ "pastel": {
1634
+ "type": "boolean"
1635
+ },
1636
+ "role": {
1637
+ "type": "string"
1638
+ },
1639
+ "inherit": {
1640
+ "type": "boolean"
1641
+ }
799
1642
  }
800
1643
  },
801
1644
  "themeFont": {
802
1645
  "oneOf": [
803
- { "type": "string", "minLength": 1 },
1646
+ {
1647
+ "type": "string",
1648
+ "minLength": 1
1649
+ },
804
1650
  {
805
1651
  "type": "object",
806
1652
  "additionalProperties": false,
807
1653
  "required": ["google"],
808
1654
  "properties": {
809
- "google": { "type": "string", "minLength": 1 },
1655
+ "google": {
1656
+ "type": "string",
1657
+ "minLength": 1
1658
+ },
810
1659
  "weights": {
811
1660
  "type": "array",
812
1661
  "minItems": 1,
813
- "items": { "type": "integer", "minimum": 1, "maximum": 1000 }
1662
+ "items": {
1663
+ "oneOf": [
1664
+ {
1665
+ "type": "integer",
1666
+ "minimum": 1,
1667
+ "maximum": 1000
1668
+ },
1669
+ {
1670
+ "type": "string",
1671
+ "pattern": "^(?:[1-9][0-9]{0,2}|1000) (?:[1-9][0-9]{0,2}|1000)$"
1672
+ }
1673
+ ]
1674
+ }
1675
+ },
1676
+ "styles": {
1677
+ "type": "array",
1678
+ "minItems": 1,
1679
+ "items": {
1680
+ "enum": ["normal", "italic"]
1681
+ }
814
1682
  }
815
1683
  }
816
1684
  },
@@ -819,7 +1687,10 @@
819
1687
  "additionalProperties": false,
820
1688
  "required": ["family", "files"],
821
1689
  "properties": {
822
- "family": { "type": "string", "minLength": 1 },
1690
+ "family": {
1691
+ "type": "string",
1692
+ "minLength": 1
1693
+ },
823
1694
  "files": {
824
1695
  "type": "array",
825
1696
  "minItems": 1,
@@ -834,14 +1705,20 @@
834
1705
  },
835
1706
  "weight": {
836
1707
  "oneOf": [
837
- { "type": "integer", "minimum": 1, "maximum": 1000 },
1708
+ {
1709
+ "type": "integer",
1710
+ "minimum": 1,
1711
+ "maximum": 1000
1712
+ },
838
1713
  {
839
1714
  "type": "string",
840
1715
  "pattern": "^(?:[1-9][0-9]{0,2}|1000) (?:[1-9][0-9]{0,2}|1000)$"
841
1716
  }
842
1717
  ]
843
1718
  },
844
- "style": { "enum": ["normal", "italic"] }
1719
+ "style": {
1720
+ "enum": ["normal", "italic"]
1721
+ }
845
1722
  }
846
1723
  }
847
1724
  }
@@ -1118,10 +1995,20 @@
1118
1995
  "additionalProperties": false,
1119
1996
  "required": ["openapi"],
1120
1997
  "properties": {
1121
- "openapi": { "type": "string", "minLength": 1 },
1122
- "id": { "type": "string", "pattern": "^[a-zA-Z0-9_-]+$" },
1123
- "root": { "type": "string" },
1124
- "routeBase": { "type": "string" }
1998
+ "openapi": {
1999
+ "type": "string",
2000
+ "minLength": 1
2001
+ },
2002
+ "id": {
2003
+ "type": "string",
2004
+ "pattern": "^[a-zA-Z0-9_-]+$"
2005
+ },
2006
+ "root": {
2007
+ "type": "string"
2008
+ },
2009
+ "routeBase": {
2010
+ "type": "string"
2011
+ }
1125
2012
  }
1126
2013
  }
1127
2014
  ]