5etools-utils 0.15.17 → 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.
Files changed (126) hide show
  1. package/README.md +13 -13
  2. package/bin/clean-html.js +0 -0
  3. package/bin/lint-js-changed.js +17 -0
  4. package/bin/test-edition-sources.js +0 -0
  5. package/bin/test-file-contents.js +0 -0
  6. package/bin/test-file-locations.js +0 -0
  7. package/bin/test-file-names.js +0 -0
  8. package/bin/test-file-props.js +0 -0
  9. package/bin/test-img-file-extensions.js +0 -0
  10. package/bin/test-img-file-sizes.js +0 -0
  11. package/bin/test-img-source-names-brew.js +0 -0
  12. package/bin/test-img-source-names-ua.js +0 -0
  13. package/bin/test-json-brew.js +0 -0
  14. package/bin/test-json-ua.js +0 -0
  15. package/lib/Lint/LintJsChanged.js +33 -0
  16. package/lib/UtilGit.js +39 -0
  17. package/lib/eslint/eslint-plugin-jquery.js +49 -0
  18. package/package.json +16 -6
  19. package/schema/brew/charcreationoptions.json +162 -8
  20. package/schema/brew/cultsboons.json +399 -14
  21. package/schema/brew/encounterbuilder.json +81 -2
  22. package/schema/brew/fluff-charcreationoptions.json +5 -33
  23. package/schema/brew/homebrew.json +8 -2
  24. package/schema/brew/items-base.json +290 -28
  25. package/schema/brew/languages.json +195 -6
  26. package/schema/brew/objects.json +389 -9
  27. package/schema/brew/psionics.json +356 -7
  28. package/schema/brew/rewards.json +207 -8
  29. package/schema/brew/senses.json +68 -7
  30. package/schema/brew/skills.json +74 -7
  31. package/schema/brew/tables.json +676 -94
  32. package/schema/brew/trapshazards.json +571 -14
  33. package/schema/brew/util-copy.json +143 -1
  34. package/schema/brew/util.json +4 -2
  35. package/schema/brew/variantrules.json +151 -22
  36. package/schema/brew/vehicles.json +6672 -61
  37. package/schema/brew-fast/charcreationoptions.json +162 -8
  38. package/schema/brew-fast/cultsboons.json +399 -14
  39. package/schema/brew-fast/encounterbuilder.json +81 -2
  40. package/schema/brew-fast/fluff-charcreationoptions.json +5 -33
  41. package/schema/brew-fast/homebrew.json +8 -2
  42. package/schema/brew-fast/items-base.json +290 -28
  43. package/schema/brew-fast/languages.json +195 -6
  44. package/schema/brew-fast/objects.json +389 -9
  45. package/schema/brew-fast/psionics.json +356 -7
  46. package/schema/brew-fast/rewards.json +207 -8
  47. package/schema/brew-fast/senses.json +68 -7
  48. package/schema/brew-fast/skills.json +74 -7
  49. package/schema/brew-fast/tables.json +676 -94
  50. package/schema/brew-fast/trapshazards.json +571 -14
  51. package/schema/brew-fast/util-copy.json +143 -1
  52. package/schema/brew-fast/util.json +4 -2
  53. package/schema/brew-fast/variantrules.json +151 -22
  54. package/schema/brew-fast/vehicles.json +6672 -61
  55. package/schema/site/charcreationoptions.json +134 -8
  56. package/schema/site/cultsboons.json +315 -14
  57. package/schema/site/encounterbuilder.json +81 -2
  58. package/schema/site/fluff-charcreationoptions.json +5 -33
  59. package/schema/site/homebrew.json +8 -2
  60. package/schema/site/items-base.json +374 -40
  61. package/schema/site/languages.json +197 -6
  62. package/schema/site/objects.json +361 -9
  63. package/schema/site/psionics.json +314 -7
  64. package/schema/site/rewards.json +165 -8
  65. package/schema/site/senses.json +92 -7
  66. package/schema/site/skills.json +98 -7
  67. package/schema/site/tables.json +600 -87
  68. package/schema/site/trapshazards.json +555 -14
  69. package/schema/site/util-copy.json +143 -1
  70. package/schema/site/util.json +4 -2
  71. package/schema/site/variantrules.json +161 -22
  72. package/schema/site/vehicles.json +6446 -86
  73. package/schema/site-fast/charcreationoptions.json +134 -8
  74. package/schema/site-fast/cultsboons.json +315 -14
  75. package/schema/site-fast/encounterbuilder.json +81 -2
  76. package/schema/site-fast/fluff-charcreationoptions.json +5 -33
  77. package/schema/site-fast/homebrew.json +8 -2
  78. package/schema/site-fast/items-base.json +374 -40
  79. package/schema/site-fast/languages.json +197 -6
  80. package/schema/site-fast/objects.json +361 -9
  81. package/schema/site-fast/psionics.json +314 -7
  82. package/schema/site-fast/rewards.json +165 -8
  83. package/schema/site-fast/senses.json +92 -7
  84. package/schema/site-fast/skills.json +98 -7
  85. package/schema/site-fast/tables.json +600 -87
  86. package/schema/site-fast/trapshazards.json +555 -14
  87. package/schema/site-fast/util-copy.json +143 -1
  88. package/schema/site-fast/util.json +4 -2
  89. package/schema/site-fast/variantrules.json +161 -22
  90. package/schema/site-fast/vehicles.json +6446 -86
  91. package/schema/ua/charcreationoptions.json +110 -8
  92. package/schema/ua/cultsboons.json +315 -14
  93. package/schema/ua/encounterbuilder.json +81 -2
  94. package/schema/ua/fluff-charcreationoptions.json +5 -33
  95. package/schema/ua/homebrew.json +8 -2
  96. package/schema/ua/items-base.json +290 -28
  97. package/schema/ua/languages.json +173 -6
  98. package/schema/ua/objects.json +367 -9
  99. package/schema/ua/psionics.json +314 -7
  100. package/schema/ua/rewards.json +165 -8
  101. package/schema/ua/senses.json +68 -7
  102. package/schema/ua/skills.json +74 -7
  103. package/schema/ua/tables.json +564 -87
  104. package/schema/ua/trapshazards.json +483 -14
  105. package/schema/ua/util-copy.json +143 -1
  106. package/schema/ua/util.json +4 -2
  107. package/schema/ua/variantrules.json +139 -22
  108. package/schema/ua/vehicles.json +6574 -76
  109. package/schema/ua-fast/charcreationoptions.json +110 -8
  110. package/schema/ua-fast/cultsboons.json +315 -14
  111. package/schema/ua-fast/encounterbuilder.json +81 -2
  112. package/schema/ua-fast/fluff-charcreationoptions.json +5 -33
  113. package/schema/ua-fast/homebrew.json +8 -2
  114. package/schema/ua-fast/items-base.json +290 -28
  115. package/schema/ua-fast/languages.json +173 -6
  116. package/schema/ua-fast/objects.json +367 -9
  117. package/schema/ua-fast/psionics.json +314 -7
  118. package/schema/ua-fast/rewards.json +165 -8
  119. package/schema/ua-fast/senses.json +68 -7
  120. package/schema/ua-fast/skills.json +74 -7
  121. package/schema/ua-fast/tables.json +564 -87
  122. package/schema/ua-fast/trapshazards.json +483 -14
  123. package/schema/ua-fast/util-copy.json +143 -1
  124. package/schema/ua-fast/util.json +4 -2
  125. package/schema/ua-fast/variantrules.json +139 -22
  126. package/schema/ua-fast/vehicles.json +6574 -76
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "items-base.json",
4
- "version": "1.6.18",
4
+ "version": "1.7.0",
5
5
  "type": "object",
6
6
  "$defs": {
7
7
  "itemLookupBase": {
@@ -37,6 +37,149 @@
37
37
  },
38
38
  "additionalProperties": false
39
39
  },
40
+ "copyBlock_copy_itemLookup": {
41
+ "type": "object",
42
+ "properties": {
43
+ "_mod": {
44
+ "$ref": "util-copy.json#/$defs/_modObject"
45
+ },
46
+ "_templates": {
47
+ "type": "array",
48
+ "items": {
49
+ "type": "object",
50
+ "properties": {
51
+ "name": {
52
+ "type": "string"
53
+ },
54
+ "source": {
55
+ "$ref": "util.json#/$defs/source"
56
+ }
57
+ },
58
+ "required": [
59
+ "name",
60
+ "source"
61
+ ],
62
+ "additionalProperties": false
63
+ },
64
+ "minItems": 1,
65
+ "uniqueItems": true
66
+ },
67
+ "_preserve": {
68
+ "type": "object",
69
+ "patternProperties": {
70
+ ".*": {
71
+ "const": true
72
+ }
73
+ }
74
+ },
75
+ "abbreviation": {
76
+ "type": "string"
77
+ },
78
+ "source": {
79
+ "$ref": "util.json#/$defs/source"
80
+ }
81
+ },
82
+ "additionalProperties": false,
83
+ "required": [
84
+ "abbreviation",
85
+ "source"
86
+ ]
87
+ },
88
+ "copyBlockItemLookup": {
89
+ "type": "object",
90
+ "properties": {
91
+ "_copy": {
92
+ "$ref": "#/$defs/copyBlock_copy_itemLookup"
93
+ }
94
+ },
95
+ "required": [
96
+ "_copy"
97
+ ]
98
+ },
99
+ "itemPropertyLookup_entries": {
100
+ "type": "object",
101
+ "properties": {
102
+ "abbreviation": {
103
+ "type": "string"
104
+ },
105
+ "source": {
106
+ "$ref": "util.json#/$defs/source"
107
+ },
108
+ "page": {
109
+ "$ref": "util.json#/$defs/page"
110
+ },
111
+ "reprintedAs": {
112
+ "$ref": "util.json#/$defs/reprintedAs"
113
+ },
114
+ "name": {
115
+ "type": "string"
116
+ },
117
+ "srd": {
118
+ "$ref": "util.json#/$defs/srd"
119
+ },
120
+ "srd52": {
121
+ "$ref": "util.json#/$defs/srd"
122
+ },
123
+ "basicRules": {
124
+ "$ref": "util.json#/$defs/basicRules"
125
+ },
126
+ "basicRules2024": {
127
+ "$ref": "util.json#/$defs/basicRules"
128
+ },
129
+ "template": {
130
+ "type": "string"
131
+ },
132
+ "entries": {
133
+ "type": "array",
134
+ "items": {
135
+ "$ref": "entry.json"
136
+ }
137
+ }
138
+ },
139
+ "additionalProperties": false
140
+ },
141
+ "itemPropertyLookup_entriesTemplate": {
142
+ "type": "object",
143
+ "properties": {
144
+ "abbreviation": {
145
+ "type": "string"
146
+ },
147
+ "source": {
148
+ "$ref": "util.json#/$defs/source"
149
+ },
150
+ "page": {
151
+ "$ref": "util.json#/$defs/page"
152
+ },
153
+ "reprintedAs": {
154
+ "$ref": "util.json#/$defs/reprintedAs"
155
+ },
156
+ "name": {
157
+ "type": "string"
158
+ },
159
+ "srd": {
160
+ "$ref": "util.json#/$defs/srd"
161
+ },
162
+ "srd52": {
163
+ "$ref": "util.json#/$defs/srd"
164
+ },
165
+ "basicRules": {
166
+ "$ref": "util.json#/$defs/basicRules"
167
+ },
168
+ "basicRules2024": {
169
+ "$ref": "util.json#/$defs/basicRules"
170
+ },
171
+ "template": {
172
+ "type": "string"
173
+ },
174
+ "entriesTemplate": {
175
+ "type": "array",
176
+ "items": {
177
+ "$ref": "entry.json"
178
+ }
179
+ }
180
+ },
181
+ "additionalProperties": false
182
+ },
40
183
  "itemPropertyLookup": {
41
184
  "anyOf": [
42
185
  {
@@ -86,6 +229,54 @@
86
229
  "page"
87
230
  ]
88
231
  },
232
+ {
233
+ "type": "object",
234
+ "properties": {
235
+ "abbreviation": {
236
+ "type": "string"
237
+ },
238
+ "source": {
239
+ "$ref": "util.json#/$defs/source"
240
+ },
241
+ "page": {
242
+ "$ref": "util.json#/$defs/page"
243
+ },
244
+ "reprintedAs": {
245
+ "$ref": "util.json#/$defs/reprintedAs"
246
+ },
247
+ "name": {
248
+ "type": "string"
249
+ },
250
+ "srd": {
251
+ "$ref": "util.json#/$defs/srd"
252
+ },
253
+ "srd52": {
254
+ "$ref": "util.json#/$defs/srd"
255
+ },
256
+ "basicRules": {
257
+ "$ref": "util.json#/$defs/basicRules"
258
+ },
259
+ "basicRules2024": {
260
+ "$ref": "util.json#/$defs/basicRules"
261
+ },
262
+ "template": {
263
+ "type": "string"
264
+ },
265
+ "entries": {
266
+ "type": "array",
267
+ "items": {
268
+ "$ref": "entry.json"
269
+ }
270
+ },
271
+ "_copy": {
272
+ "$ref": "#/$defs/copyBlock_copy_itemLookup"
273
+ }
274
+ },
275
+ "additionalProperties": false,
276
+ "required": [
277
+ "_copy"
278
+ ]
279
+ },
89
280
  {
90
281
  "type": "object",
91
282
  "properties": {
@@ -132,6 +323,54 @@
132
323
  "source",
133
324
  "page"
134
325
  ]
326
+ },
327
+ {
328
+ "type": "object",
329
+ "properties": {
330
+ "abbreviation": {
331
+ "type": "string"
332
+ },
333
+ "source": {
334
+ "$ref": "util.json#/$defs/source"
335
+ },
336
+ "page": {
337
+ "$ref": "util.json#/$defs/page"
338
+ },
339
+ "reprintedAs": {
340
+ "$ref": "util.json#/$defs/reprintedAs"
341
+ },
342
+ "name": {
343
+ "type": "string"
344
+ },
345
+ "srd": {
346
+ "$ref": "util.json#/$defs/srd"
347
+ },
348
+ "srd52": {
349
+ "$ref": "util.json#/$defs/srd"
350
+ },
351
+ "basicRules": {
352
+ "$ref": "util.json#/$defs/basicRules"
353
+ },
354
+ "basicRules2024": {
355
+ "$ref": "util.json#/$defs/basicRules"
356
+ },
357
+ "template": {
358
+ "type": "string"
359
+ },
360
+ "entriesTemplate": {
361
+ "type": "array",
362
+ "items": {
363
+ "$ref": "entry.json"
364
+ }
365
+ },
366
+ "_copy": {
367
+ "$ref": "#/$defs/copyBlock_copy_itemLookup"
368
+ }
369
+ },
370
+ "additionalProperties": false,
371
+ "required": [
372
+ "_copy"
373
+ ]
135
374
  }
136
375
  ]
137
376
  },
@@ -1541,6 +1780,129 @@
1541
1780
  ]
1542
1781
  }
1543
1782
  ]
1783
+ },
1784
+ "itemMasteryData": {
1785
+ "type": "object",
1786
+ "properties": {
1787
+ "name": {
1788
+ "type": "string"
1789
+ },
1790
+ "source": {
1791
+ "$ref": "util.json#/$defs/source"
1792
+ },
1793
+ "page": {
1794
+ "$ref": "util.json#/$defs/page"
1795
+ },
1796
+ "prerequisite": {
1797
+ "$ref": "util.json#/$defs/prerequisite"
1798
+ },
1799
+ "entries": {
1800
+ "type": "array",
1801
+ "items": {
1802
+ "$ref": "entry.json"
1803
+ }
1804
+ },
1805
+ "srd": {
1806
+ "$ref": "util.json#/$defs/srd"
1807
+ },
1808
+ "srd52": {
1809
+ "$ref": "util.json#/$defs/srd"
1810
+ },
1811
+ "basicRules": {
1812
+ "$ref": "util.json#/$defs/basicRules"
1813
+ },
1814
+ "basicRules2024": {
1815
+ "$ref": "util.json#/$defs/basicRules"
1816
+ }
1817
+ },
1818
+ "additionalProperties": false
1819
+ },
1820
+ "itemMastery": {
1821
+ "anyOf": [
1822
+ {
1823
+ "type": "object",
1824
+ "properties": {
1825
+ "name": {
1826
+ "type": "string"
1827
+ },
1828
+ "source": {
1829
+ "$ref": "util.json#/$defs/source"
1830
+ },
1831
+ "page": {
1832
+ "$ref": "util.json#/$defs/page"
1833
+ },
1834
+ "prerequisite": {
1835
+ "$ref": "util.json#/$defs/prerequisite"
1836
+ },
1837
+ "entries": {
1838
+ "type": "array",
1839
+ "items": {
1840
+ "$ref": "entry.json"
1841
+ }
1842
+ },
1843
+ "srd": {
1844
+ "$ref": "util.json#/$defs/srd"
1845
+ },
1846
+ "srd52": {
1847
+ "$ref": "util.json#/$defs/srd"
1848
+ },
1849
+ "basicRules": {
1850
+ "$ref": "util.json#/$defs/basicRules"
1851
+ },
1852
+ "basicRules2024": {
1853
+ "$ref": "util.json#/$defs/basicRules"
1854
+ }
1855
+ },
1856
+ "additionalProperties": false,
1857
+ "required": [
1858
+ "name",
1859
+ "source",
1860
+ "entries"
1861
+ ]
1862
+ },
1863
+ {
1864
+ "type": "object",
1865
+ "properties": {
1866
+ "name": {
1867
+ "type": "string"
1868
+ },
1869
+ "source": {
1870
+ "$ref": "util.json#/$defs/source"
1871
+ },
1872
+ "page": {
1873
+ "$ref": "util.json#/$defs/page"
1874
+ },
1875
+ "prerequisite": {
1876
+ "$ref": "util.json#/$defs/prerequisite"
1877
+ },
1878
+ "entries": {
1879
+ "type": "array",
1880
+ "items": {
1881
+ "$ref": "entry.json"
1882
+ }
1883
+ },
1884
+ "srd": {
1885
+ "$ref": "util.json#/$defs/srd"
1886
+ },
1887
+ "srd52": {
1888
+ "$ref": "util.json#/$defs/srd"
1889
+ },
1890
+ "basicRules": {
1891
+ "$ref": "util.json#/$defs/basicRules"
1892
+ },
1893
+ "basicRules2024": {
1894
+ "$ref": "util.json#/$defs/basicRules"
1895
+ },
1896
+ "_copy": {
1897
+ "$ref": "util-copy.json#/$defs/copyBlock_copy_generic"
1898
+ }
1899
+ },
1900
+ "additionalProperties": false,
1901
+ "required": [
1902
+ "_copy"
1903
+ ]
1904
+ }
1905
+ ]
1544
1906
  }
1545
1907
  },
1546
1908
  "properties": {
@@ -1574,6 +1936,7 @@
1574
1936
  "itemEntry": {
1575
1937
  "type": "array",
1576
1938
  "minItems": 1,
1939
+ "uniqueItems": true,
1577
1940
  "items": {
1578
1941
  "type": "object",
1579
1942
  "properties": {
@@ -1595,6 +1958,7 @@
1595
1958
  "itemTypeAdditionalEntries": {
1596
1959
  "type": "array",
1597
1960
  "minItems": 1,
1961
+ "uniqueItems": true,
1598
1962
  "items": {
1599
1963
  "type": "object",
1600
1964
  "properties": {
@@ -1620,48 +1984,18 @@
1620
1984
  "itemMastery": {
1621
1985
  "type": "array",
1622
1986
  "minItems": 1,
1987
+ "uniqueItems": true,
1623
1988
  "items": {
1624
- "type": "object",
1625
- "properties": {
1626
- "name": {
1627
- "type": "string"
1628
- },
1629
- "source": {
1630
- "$ref": "util.json#/$defs/source"
1631
- },
1632
- "page": {
1633
- "$ref": "util.json#/$defs/page"
1634
- },
1635
- "prerequisite": {
1636
- "$ref": "util.json#/$defs/prerequisite"
1637
- },
1638
- "entries": {
1639
- "type": "array",
1640
- "items": {
1641
- "$ref": "entry.json"
1642
- }
1643
- },
1644
- "srd": {
1645
- "$ref": "util.json#/$defs/srd"
1646
- },
1647
- "srd52": {
1648
- "$ref": "util.json#/$defs/srd"
1649
- },
1650
- "basicRules": {
1651
- "$ref": "util.json#/$defs/basicRules"
1652
- },
1653
- "basicRules2024": {
1654
- "$ref": "util.json#/$defs/basicRules"
1655
- }
1656
- },
1657
- "required": [
1658
- "name",
1659
- "source",
1660
- "entries"
1661
- ],
1662
- "additionalProperties": false
1989
+ "$ref": "#/$defs/itemMastery"
1663
1990
  }
1664
1991
  }
1665
1992
  },
1993
+ "required": [
1994
+ "baseitem",
1995
+ "itemProperty",
1996
+ "itemType",
1997
+ "itemEntry",
1998
+ "itemTypeAdditionalEntries"
1999
+ ],
1666
2000
  "additionalProperties": false
1667
2001
  }
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "languages.json",
4
- "version": "1.1.18",
4
+ "version": "1.2.0",
5
5
  "type": "object",
6
6
  "$defs": {
7
- "language": {
7
+ "languageData": {
8
8
  "type": "object",
9
9
  "properties": {
10
10
  "name": {
@@ -91,14 +91,205 @@
91
91
  "$ref": "util.json#/$defs/basicRules"
92
92
  }
93
93
  },
94
- "required": [
95
- "name",
96
- "source"
97
- ],
98
94
  "additionalProperties": false
95
+ },
96
+ "language": {
97
+ "anyOf": [
98
+ {
99
+ "type": "object",
100
+ "properties": {
101
+ "name": {
102
+ "type": "string"
103
+ },
104
+ "entries": {
105
+ "type": "array",
106
+ "items": {
107
+ "$ref": "entry.json"
108
+ }
109
+ },
110
+ "source": {
111
+ "$ref": "util.json#/$defs/source"
112
+ },
113
+ "page": {
114
+ "$ref": "util.json#/$defs/page"
115
+ },
116
+ "legacy": {
117
+ "$ref": "util.json#/$defs/legacy"
118
+ },
119
+ "otherSources": {
120
+ "$ref": "util.json#/$defs/otherSources"
121
+ },
122
+ "referenceSources": {
123
+ "$ref": "util.json#/$defs/referenceSources"
124
+ },
125
+ "reprintedAs": {
126
+ "$ref": "util.json#/$defs/reprintedAs"
127
+ },
128
+ "typicalSpeakers": {
129
+ "type": "array",
130
+ "items": {
131
+ "type": "string"
132
+ }
133
+ },
134
+ "origin": {
135
+ "type": "string"
136
+ },
137
+ "script": {
138
+ "type": "string"
139
+ },
140
+ "type": {
141
+ "type": "string",
142
+ "enum": [
143
+ "standard",
144
+ "rare",
145
+ "exotic",
146
+ "secret"
147
+ ]
148
+ },
149
+ "additionalSources": {
150
+ "$ref": "util.json#/$defs/additionalSources"
151
+ },
152
+ "dialects": {
153
+ "type": "array",
154
+ "items": {
155
+ "type": "string"
156
+ }
157
+ },
158
+ "fonts": {
159
+ "description": "A list of direct URLs to font files.",
160
+ "type": "array",
161
+ "items": {
162
+ "type": "string"
163
+ },
164
+ "markdownDescription": "A list of direct URLs to font files."
165
+ },
166
+ "hasFluff": {
167
+ "type": "boolean"
168
+ },
169
+ "hasFluffImages": {
170
+ "type": "boolean"
171
+ },
172
+ "srd": {
173
+ "$ref": "util.json#/$defs/srd"
174
+ },
175
+ "srd52": {
176
+ "$ref": "util.json#/$defs/srd"
177
+ },
178
+ "basicRules": {
179
+ "$ref": "util.json#/$defs/basicRules"
180
+ },
181
+ "basicRules2024": {
182
+ "$ref": "util.json#/$defs/basicRules"
183
+ }
184
+ },
185
+ "additionalProperties": false,
186
+ "required": [
187
+ "name",
188
+ "source"
189
+ ]
190
+ },
191
+ {
192
+ "type": "object",
193
+ "properties": {
194
+ "name": {
195
+ "type": "string"
196
+ },
197
+ "entries": {
198
+ "type": "array",
199
+ "items": {
200
+ "$ref": "entry.json"
201
+ }
202
+ },
203
+ "source": {
204
+ "$ref": "util.json#/$defs/source"
205
+ },
206
+ "page": {
207
+ "$ref": "util.json#/$defs/page"
208
+ },
209
+ "legacy": {
210
+ "$ref": "util.json#/$defs/legacy"
211
+ },
212
+ "otherSources": {
213
+ "$ref": "util.json#/$defs/otherSources"
214
+ },
215
+ "referenceSources": {
216
+ "$ref": "util.json#/$defs/referenceSources"
217
+ },
218
+ "reprintedAs": {
219
+ "$ref": "util.json#/$defs/reprintedAs"
220
+ },
221
+ "typicalSpeakers": {
222
+ "type": "array",
223
+ "items": {
224
+ "type": "string"
225
+ }
226
+ },
227
+ "origin": {
228
+ "type": "string"
229
+ },
230
+ "script": {
231
+ "type": "string"
232
+ },
233
+ "type": {
234
+ "type": "string",
235
+ "enum": [
236
+ "standard",
237
+ "rare",
238
+ "exotic",
239
+ "secret"
240
+ ]
241
+ },
242
+ "additionalSources": {
243
+ "$ref": "util.json#/$defs/additionalSources"
244
+ },
245
+ "dialects": {
246
+ "type": "array",
247
+ "items": {
248
+ "type": "string"
249
+ }
250
+ },
251
+ "fonts": {
252
+ "description": "A list of direct URLs to font files.",
253
+ "type": "array",
254
+ "items": {
255
+ "type": "string"
256
+ },
257
+ "markdownDescription": "A list of direct URLs to font files."
258
+ },
259
+ "hasFluff": {
260
+ "type": "boolean"
261
+ },
262
+ "hasFluffImages": {
263
+ "type": "boolean"
264
+ },
265
+ "srd": {
266
+ "$ref": "util.json#/$defs/srd"
267
+ },
268
+ "srd52": {
269
+ "$ref": "util.json#/$defs/srd"
270
+ },
271
+ "basicRules": {
272
+ "$ref": "util.json#/$defs/basicRules"
273
+ },
274
+ "basicRules2024": {
275
+ "$ref": "util.json#/$defs/basicRules"
276
+ },
277
+ "_copy": {
278
+ "$ref": "util-copy.json#/$defs/copyBlock_copy_generic"
279
+ }
280
+ },
281
+ "additionalProperties": false,
282
+ "required": [
283
+ "_copy"
284
+ ]
285
+ }
286
+ ]
99
287
  }
100
288
  },
101
289
  "properties": {
290
+ "_meta": {
291
+ "$ref": "util.json#/$defs/metaBlock"
292
+ },
102
293
  "language": {
103
294
  "type": "array",
104
295
  "uniqueItems": true,