5etools-utils 0.2.2 → 0.3.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 (281) hide show
  1. package/package.json +3 -2
  2. package/schema/brew/actions.json +109 -0
  3. package/schema/brew/adventure/adventure.json +12 -0
  4. package/schema/brew/adventures.json +249 -0
  5. package/schema/brew/backgrounds.json +425 -0
  6. package/schema/brew/bestiary/bestiary.json +3766 -0
  7. package/schema/brew/bestiary/fluff-bestiary.json +15 -0
  8. package/schema/brew/bestiary/foundry.json +15 -0
  9. package/schema/brew/bestiary/legendarygroups.json +202 -0
  10. package/schema/brew/bestiary/traits.json +85 -0
  11. package/schema/brew/book/book.json +12 -0
  12. package/schema/brew/books.json +137 -0
  13. package/schema/brew/charcreationoptions.json +96 -0
  14. package/schema/brew/class/class.json +2059 -0
  15. package/schema/brew/class/foundry.json +373 -0
  16. package/schema/brew/conditionsdiseases.json +103 -0
  17. package/schema/brew/cultsboons.json +196 -0
  18. package/schema/brew/deities.json +482 -0
  19. package/schema/brew/encounters.json +99 -0
  20. package/schema/brew/entry.json +3538 -0
  21. package/schema/brew/feats.json +215 -0
  22. package/schema/brew/fluff-backgrounds.json +15 -0
  23. package/schema/brew/fluff-charcreationoptions.json +43 -0
  24. package/schema/brew/fluff-conditionsdiseases.json +43 -0
  25. package/schema/brew/fluff-feats.json +15 -0
  26. package/schema/brew/fluff-items.json +15 -0
  27. package/schema/brew/fluff-languages.json +42 -0
  28. package/schema/brew/fluff-objects.json +15 -0
  29. package/schema/brew/fluff-races.json +214 -0
  30. package/schema/brew/fluff-recipes.json +42 -0
  31. package/schema/brew/fluff-vehicles.json +63 -0
  32. package/schema/brew/foundry-actions.json +15 -0
  33. package/schema/brew/foundry-backgrounds.json +47 -0
  34. package/schema/brew/foundry-feats.json +15 -0
  35. package/schema/brew/foundry-items.json +57 -0
  36. package/schema/brew/foundry-optionalfeatures.json +15 -0
  37. package/schema/brew/foundry-psionics.json +50 -0
  38. package/schema/brew/foundry-races.json +52 -0
  39. package/schema/brew/foundry-rewards.json +15 -0
  40. package/schema/brew/foundry-vehicles.json +15 -0
  41. package/schema/brew/generated/bookref-quick.json +72 -0
  42. package/schema/brew/homebrew.json +564 -0
  43. package/schema/brew/items-base.json +460 -0
  44. package/schema/brew/items-shared.json +295 -0
  45. package/schema/brew/items.json +1866 -0
  46. package/schema/brew/languages.json +127 -0
  47. package/schema/brew/loot.json +510 -0
  48. package/schema/brew/magicvariants.json +387 -0
  49. package/schema/brew/makebrew-creature.json +40 -0
  50. package/schema/brew/makecards.json +43 -0
  51. package/schema/brew/monsterfeatures.json +53 -0
  52. package/schema/brew/msbcr.json +60 -0
  53. package/schema/brew/names.json +91 -0
  54. package/schema/brew/objects.json +172 -0
  55. package/schema/brew/optionalfeatures.json +139 -0
  56. package/schema/brew/psionics.json +185 -0
  57. package/schema/brew/races.json +1799 -0
  58. package/schema/brew/recipes.json +191 -0
  59. package/schema/brew/renderdemo.json +16 -0
  60. package/schema/brew/rewards.json +102 -0
  61. package/schema/brew/senses.json +54 -0
  62. package/schema/brew/skills.json +54 -0
  63. package/schema/brew/spells/fluff-spells.json +15 -0
  64. package/schema/brew/spells/foundry.json +15 -0
  65. package/schema/brew/spells/roll20.json +112 -0
  66. package/schema/brew/spells/spells.json +1841 -0
  67. package/schema/brew/tables.json +202 -0
  68. package/schema/brew/trapshazards.json +249 -0
  69. package/schema/brew/util.json +3867 -0
  70. package/schema/brew/variantrules.json +74 -0
  71. package/schema/brew/vehicles.json +854 -0
  72. package/schema/brew-fast/actions.json +109 -0
  73. package/schema/brew-fast/adventure/adventure.json +12 -0
  74. package/schema/brew-fast/adventures.json +249 -0
  75. package/schema/brew-fast/backgrounds.json +425 -0
  76. package/schema/brew-fast/bestiary/bestiary.json +3766 -0
  77. package/schema/brew-fast/bestiary/fluff-bestiary.json +15 -0
  78. package/schema/brew-fast/bestiary/foundry.json +15 -0
  79. package/schema/brew-fast/bestiary/legendarygroups.json +202 -0
  80. package/schema/brew-fast/bestiary/traits.json +85 -0
  81. package/schema/brew-fast/book/book.json +12 -0
  82. package/schema/brew-fast/books.json +137 -0
  83. package/schema/brew-fast/charcreationoptions.json +96 -0
  84. package/schema/brew-fast/class/class.json +2059 -0
  85. package/schema/brew-fast/class/foundry.json +373 -0
  86. package/schema/brew-fast/conditionsdiseases.json +103 -0
  87. package/schema/brew-fast/cultsboons.json +196 -0
  88. package/schema/brew-fast/deities.json +482 -0
  89. package/schema/brew-fast/encounters.json +99 -0
  90. package/schema/brew-fast/entry.json +3538 -0
  91. package/schema/brew-fast/feats.json +215 -0
  92. package/schema/brew-fast/fluff-backgrounds.json +15 -0
  93. package/schema/brew-fast/fluff-charcreationoptions.json +43 -0
  94. package/schema/brew-fast/fluff-conditionsdiseases.json +43 -0
  95. package/schema/brew-fast/fluff-feats.json +15 -0
  96. package/schema/brew-fast/fluff-items.json +15 -0
  97. package/schema/brew-fast/fluff-languages.json +42 -0
  98. package/schema/brew-fast/fluff-objects.json +15 -0
  99. package/schema/brew-fast/fluff-races.json +214 -0
  100. package/schema/brew-fast/fluff-recipes.json +42 -0
  101. package/schema/brew-fast/fluff-vehicles.json +63 -0
  102. package/schema/brew-fast/foundry-actions.json +15 -0
  103. package/schema/brew-fast/foundry-backgrounds.json +47 -0
  104. package/schema/brew-fast/foundry-feats.json +15 -0
  105. package/schema/brew-fast/foundry-items.json +57 -0
  106. package/schema/brew-fast/foundry-optionalfeatures.json +15 -0
  107. package/schema/brew-fast/foundry-psionics.json +50 -0
  108. package/schema/brew-fast/foundry-races.json +52 -0
  109. package/schema/brew-fast/foundry-rewards.json +15 -0
  110. package/schema/brew-fast/foundry-vehicles.json +15 -0
  111. package/schema/brew-fast/generated/bookref-quick.json +72 -0
  112. package/schema/brew-fast/homebrew.json +562 -0
  113. package/schema/brew-fast/items-base.json +460 -0
  114. package/schema/brew-fast/items-shared.json +295 -0
  115. package/schema/brew-fast/items.json +1866 -0
  116. package/schema/brew-fast/languages.json +127 -0
  117. package/schema/brew-fast/loot.json +510 -0
  118. package/schema/brew-fast/magicvariants.json +387 -0
  119. package/schema/brew-fast/makebrew-creature.json +40 -0
  120. package/schema/brew-fast/makecards.json +43 -0
  121. package/schema/brew-fast/monsterfeatures.json +53 -0
  122. package/schema/brew-fast/msbcr.json +60 -0
  123. package/schema/brew-fast/names.json +91 -0
  124. package/schema/brew-fast/objects.json +172 -0
  125. package/schema/brew-fast/optionalfeatures.json +139 -0
  126. package/schema/brew-fast/psionics.json +185 -0
  127. package/schema/brew-fast/races.json +1799 -0
  128. package/schema/brew-fast/recipes.json +191 -0
  129. package/schema/brew-fast/renderdemo.json +16 -0
  130. package/schema/brew-fast/rewards.json +102 -0
  131. package/schema/brew-fast/senses.json +54 -0
  132. package/schema/brew-fast/skills.json +54 -0
  133. package/schema/brew-fast/spells/fluff-spells.json +15 -0
  134. package/schema/brew-fast/spells/foundry.json +15 -0
  135. package/schema/brew-fast/spells/roll20.json +112 -0
  136. package/schema/brew-fast/spells/spells.json +1841 -0
  137. package/schema/brew-fast/tables.json +202 -0
  138. package/schema/brew-fast/trapshazards.json +249 -0
  139. package/schema/brew-fast/util.json +3867 -0
  140. package/schema/brew-fast/variantrules.json +74 -0
  141. package/schema/brew-fast/vehicles.json +854 -0
  142. package/schema/site/actions.json +97 -0
  143. package/schema/site/adventure/adventure.json +12 -0
  144. package/schema/site/adventures.json +211 -0
  145. package/schema/site/backgrounds.json +306 -0
  146. package/schema/site/bestiary/bestiary.json +3537 -0
  147. package/schema/site/bestiary/fluff-bestiary.json +15 -0
  148. package/schema/site/bestiary/foundry.json +15 -0
  149. package/schema/site/bestiary/legendarygroups.json +202 -0
  150. package/schema/site/bestiary/traits.json +85 -0
  151. package/schema/site/book/book.json +12 -0
  152. package/schema/site/books.json +137 -0
  153. package/schema/site/charcreationoptions.json +80 -0
  154. package/schema/site/class/class.json +1792 -0
  155. package/schema/site/class/foundry.json +373 -0
  156. package/schema/site/conditionsdiseases.json +82 -0
  157. package/schema/site/cultsboons.json +172 -0
  158. package/schema/site/deities.json +461 -0
  159. package/schema/site/encounters.json +99 -0
  160. package/schema/site/entry.json +3471 -0
  161. package/schema/site/feats.json +199 -0
  162. package/schema/site/fluff-backgrounds.json +15 -0
  163. package/schema/site/fluff-charcreationoptions.json +43 -0
  164. package/schema/site/fluff-conditionsdiseases.json +43 -0
  165. package/schema/site/fluff-feats.json +15 -0
  166. package/schema/site/fluff-items.json +15 -0
  167. package/schema/site/fluff-languages.json +42 -0
  168. package/schema/site/fluff-objects.json +15 -0
  169. package/schema/site/fluff-races.json +214 -0
  170. package/schema/site/fluff-recipes.json +42 -0
  171. package/schema/site/fluff-vehicles.json +63 -0
  172. package/schema/site/foundry-actions.json +15 -0
  173. package/schema/site/foundry-backgrounds.json +47 -0
  174. package/schema/site/foundry-feats.json +15 -0
  175. package/schema/site/foundry-items.json +57 -0
  176. package/schema/site/foundry-optionalfeatures.json +15 -0
  177. package/schema/site/foundry-psionics.json +50 -0
  178. package/schema/site/foundry-races.json +52 -0
  179. package/schema/site/foundry-rewards.json +15 -0
  180. package/schema/site/foundry-vehicles.json +15 -0
  181. package/schema/site/generated/bookref-quick.json +72 -0
  182. package/schema/site/homebrew.json +564 -0
  183. package/schema/site/items-base.json +425 -0
  184. package/schema/site/items-shared.json +259 -0
  185. package/schema/site/items.json +1722 -0
  186. package/schema/site/languages.json +120 -0
  187. package/schema/site/loot.json +510 -0
  188. package/schema/site/magicvariants.json +355 -0
  189. package/schema/site/makebrew-creature.json +39 -0
  190. package/schema/site/makecards.json +43 -0
  191. package/schema/site/monsterfeatures.json +53 -0
  192. package/schema/site/msbcr.json +60 -0
  193. package/schema/site/names.json +91 -0
  194. package/schema/site/objects.json +165 -0
  195. package/schema/site/optionalfeatures.json +127 -0
  196. package/schema/site/psionics.json +173 -0
  197. package/schema/site/races.json +1708 -0
  198. package/schema/site/recipes.json +185 -0
  199. package/schema/site/renderdemo.json +16 -0
  200. package/schema/site/rewards.json +90 -0
  201. package/schema/site/senses.json +54 -0
  202. package/schema/site/skills.json +54 -0
  203. package/schema/site/spells/fluff-spells.json +15 -0
  204. package/schema/site/spells/foundry.json +15 -0
  205. package/schema/site/spells/roll20.json +112 -0
  206. package/schema/site/spells/spells.json +1238 -0
  207. package/schema/site/tables.json +185 -0
  208. package/schema/site/trapshazards.json +227 -0
  209. package/schema/site/util.json +3857 -0
  210. package/schema/site/variantrules.json +71 -0
  211. package/schema/site/vehicles.json +807 -0
  212. package/schema/site-fast/actions.json +97 -0
  213. package/schema/site-fast/adventure/adventure.json +12 -0
  214. package/schema/site-fast/adventures.json +211 -0
  215. package/schema/site-fast/backgrounds.json +306 -0
  216. package/schema/site-fast/bestiary/bestiary.json +3537 -0
  217. package/schema/site-fast/bestiary/fluff-bestiary.json +15 -0
  218. package/schema/site-fast/bestiary/foundry.json +15 -0
  219. package/schema/site-fast/bestiary/legendarygroups.json +202 -0
  220. package/schema/site-fast/bestiary/traits.json +85 -0
  221. package/schema/site-fast/book/book.json +12 -0
  222. package/schema/site-fast/books.json +137 -0
  223. package/schema/site-fast/charcreationoptions.json +80 -0
  224. package/schema/site-fast/class/class.json +1792 -0
  225. package/schema/site-fast/class/foundry.json +373 -0
  226. package/schema/site-fast/conditionsdiseases.json +82 -0
  227. package/schema/site-fast/cultsboons.json +172 -0
  228. package/schema/site-fast/deities.json +461 -0
  229. package/schema/site-fast/encounters.json +99 -0
  230. package/schema/site-fast/entry.json +3471 -0
  231. package/schema/site-fast/feats.json +199 -0
  232. package/schema/site-fast/fluff-backgrounds.json +15 -0
  233. package/schema/site-fast/fluff-charcreationoptions.json +43 -0
  234. package/schema/site-fast/fluff-conditionsdiseases.json +43 -0
  235. package/schema/site-fast/fluff-feats.json +15 -0
  236. package/schema/site-fast/fluff-items.json +15 -0
  237. package/schema/site-fast/fluff-languages.json +42 -0
  238. package/schema/site-fast/fluff-objects.json +15 -0
  239. package/schema/site-fast/fluff-races.json +214 -0
  240. package/schema/site-fast/fluff-recipes.json +42 -0
  241. package/schema/site-fast/fluff-vehicles.json +63 -0
  242. package/schema/site-fast/foundry-actions.json +15 -0
  243. package/schema/site-fast/foundry-backgrounds.json +47 -0
  244. package/schema/site-fast/foundry-feats.json +15 -0
  245. package/schema/site-fast/foundry-items.json +57 -0
  246. package/schema/site-fast/foundry-optionalfeatures.json +15 -0
  247. package/schema/site-fast/foundry-psionics.json +50 -0
  248. package/schema/site-fast/foundry-races.json +52 -0
  249. package/schema/site-fast/foundry-rewards.json +15 -0
  250. package/schema/site-fast/foundry-vehicles.json +15 -0
  251. package/schema/site-fast/generated/bookref-quick.json +72 -0
  252. package/schema/site-fast/homebrew.json +562 -0
  253. package/schema/site-fast/items-base.json +425 -0
  254. package/schema/site-fast/items-shared.json +259 -0
  255. package/schema/site-fast/items.json +1722 -0
  256. package/schema/site-fast/languages.json +120 -0
  257. package/schema/site-fast/loot.json +510 -0
  258. package/schema/site-fast/magicvariants.json +355 -0
  259. package/schema/site-fast/makebrew-creature.json +39 -0
  260. package/schema/site-fast/makecards.json +43 -0
  261. package/schema/site-fast/monsterfeatures.json +53 -0
  262. package/schema/site-fast/msbcr.json +60 -0
  263. package/schema/site-fast/names.json +91 -0
  264. package/schema/site-fast/objects.json +165 -0
  265. package/schema/site-fast/optionalfeatures.json +127 -0
  266. package/schema/site-fast/psionics.json +173 -0
  267. package/schema/site-fast/races.json +1708 -0
  268. package/schema/site-fast/recipes.json +185 -0
  269. package/schema/site-fast/renderdemo.json +16 -0
  270. package/schema/site-fast/rewards.json +90 -0
  271. package/schema/site-fast/senses.json +54 -0
  272. package/schema/site-fast/skills.json +54 -0
  273. package/schema/site-fast/spells/fluff-spells.json +15 -0
  274. package/schema/site-fast/spells/foundry.json +15 -0
  275. package/schema/site-fast/spells/roll20.json +112 -0
  276. package/schema/site-fast/spells/spells.json +1238 -0
  277. package/schema/site-fast/tables.json +185 -0
  278. package/schema/site-fast/trapshazards.json +227 -0
  279. package/schema/site-fast/util.json +3857 -0
  280. package/schema/site-fast/variantrules.json +71 -0
  281. package/schema/site-fast/vehicles.json +807 -0
@@ -0,0 +1,3538 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "entry.json",
4
+ "title": "Entry",
5
+ "description": "A recursively renderable object.",
6
+ "version": "1.8.3",
7
+ "$defs": {
8
+ "_arrayOfSpell": {
9
+ "type": "array",
10
+ "uniqueItems": true,
11
+ "items": {
12
+ "oneOf": [
13
+ {
14
+ "type": "string"
15
+ },
16
+ {
17
+ "type": "object",
18
+ "properties": {
19
+ "entry": {
20
+ "type": "string"
21
+ },
22
+ "hidden": {
23
+ "type": "boolean"
24
+ }
25
+ },
26
+ "required": [
27
+ "entry",
28
+ "hidden"
29
+ ]
30
+ }
31
+ ]
32
+ }
33
+ },
34
+ "_entryDataStyle": {
35
+ "type": "string",
36
+ "enum": [
37
+ "inset"
38
+ ]
39
+ },
40
+ "mediaHref": {
41
+ "oneOf": [
42
+ {
43
+ "type": "object",
44
+ "properties": {
45
+ "type": {
46
+ "const": "internal"
47
+ },
48
+ "path": {
49
+ "type": "string"
50
+ }
51
+ },
52
+ "required": [
53
+ "path"
54
+ ],
55
+ "additionalProperties": false
56
+ },
57
+ {
58
+ "type": "object",
59
+ "properties": {
60
+ "type": {
61
+ "const": "external"
62
+ },
63
+ "url": {
64
+ "$ref": "util.json#/$defs/url"
65
+ }
66
+ },
67
+ "required": [
68
+ "url"
69
+ ],
70
+ "additionalProperties": false
71
+ }
72
+ ]
73
+ },
74
+ "entry": {
75
+ "type": "object",
76
+ "properties": {
77
+ "name": {
78
+ "type": "string"
79
+ },
80
+ "type": {
81
+ "type": "string"
82
+ },
83
+ "source": {
84
+ "type": "string"
85
+ },
86
+ "page": {
87
+ "$ref": "util.json#/$defs/page"
88
+ },
89
+ "srd": {
90
+ "$ref": "util.json#/$defs/srd"
91
+ },
92
+ "basicRules": {
93
+ "$ref": "util.json#/$defs/basicRules"
94
+ },
95
+ "data": {
96
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
97
+ "type": "object"
98
+ },
99
+ "id": {
100
+ "type": "string"
101
+ }
102
+ },
103
+ "required": [
104
+ "type"
105
+ ]
106
+ },
107
+ "entrySection": {
108
+ "type": "object",
109
+ "properties": {
110
+ "name": {
111
+ "type": "string"
112
+ },
113
+ "type": {
114
+ "type": "string",
115
+ "const": "section"
116
+ },
117
+ "source": {
118
+ "type": "string"
119
+ },
120
+ "page": {
121
+ "$ref": "util.json#/$defs/page"
122
+ },
123
+ "srd": {
124
+ "$ref": "util.json#/$defs/srd"
125
+ },
126
+ "basicRules": {
127
+ "$ref": "util.json#/$defs/basicRules"
128
+ },
129
+ "data": {
130
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
131
+ "type": "object"
132
+ },
133
+ "id": {
134
+ "type": "string"
135
+ },
136
+ "alias": {
137
+ "$ref": "util.json#/$defs/alias"
138
+ },
139
+ "entries": {
140
+ "type": "array",
141
+ "items": {
142
+ "$ref": "#"
143
+ }
144
+ },
145
+ "style": {
146
+ "type": "string"
147
+ }
148
+ },
149
+ "required": [
150
+ "type",
151
+ "entries"
152
+ ],
153
+ "additionalProperties": false
154
+ },
155
+ "entryEntries": {
156
+ "type": "object",
157
+ "properties": {
158
+ "name": {
159
+ "type": "string"
160
+ },
161
+ "type": {
162
+ "type": "string",
163
+ "const": "entries"
164
+ },
165
+ "source": {
166
+ "type": "string"
167
+ },
168
+ "page": {
169
+ "$ref": "util.json#/$defs/page"
170
+ },
171
+ "srd": {
172
+ "$ref": "util.json#/$defs/srd"
173
+ },
174
+ "basicRules": {
175
+ "$ref": "util.json#/$defs/basicRules"
176
+ },
177
+ "data": {
178
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
179
+ "type": "object"
180
+ },
181
+ "id": {
182
+ "type": "string"
183
+ },
184
+ "entries": {
185
+ "type": "array",
186
+ "items": {
187
+ "$ref": "#"
188
+ }
189
+ },
190
+ "alias": {
191
+ "$ref": "util.json#/$defs/alias"
192
+ },
193
+ "style": {
194
+ "type": "string"
195
+ }
196
+ },
197
+ "required": [
198
+ "type",
199
+ "entries"
200
+ ],
201
+ "additionalProperties": false
202
+ },
203
+ "entryQuote": {
204
+ "type": "object",
205
+ "properties": {
206
+ "name": {
207
+ "type": "string"
208
+ },
209
+ "type": {
210
+ "type": "string",
211
+ "const": "quote"
212
+ },
213
+ "source": {
214
+ "type": "string"
215
+ },
216
+ "page": {
217
+ "$ref": "util.json#/$defs/page"
218
+ },
219
+ "srd": {
220
+ "$ref": "util.json#/$defs/srd"
221
+ },
222
+ "basicRules": {
223
+ "$ref": "util.json#/$defs/basicRules"
224
+ },
225
+ "data": {
226
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
227
+ "type": "object"
228
+ },
229
+ "id": {
230
+ "type": "string"
231
+ },
232
+ "entries": {
233
+ "type": "array",
234
+ "items": {
235
+ "$ref": "#"
236
+ }
237
+ },
238
+ "by": {
239
+ "type": "string"
240
+ },
241
+ "from": {
242
+ "type": "string"
243
+ },
244
+ "skipMarks": {
245
+ "description": "If the automatically-inserted quotation marks should be skipped.",
246
+ "type": "boolean"
247
+ },
248
+ "skipItalics": {
249
+ "type": "boolean"
250
+ }
251
+ },
252
+ "required": [
253
+ "type",
254
+ "entries"
255
+ ],
256
+ "additionalProperties": false
257
+ },
258
+ "entryInlineEntries": {
259
+ "type": "object",
260
+ "properties": {
261
+ "name": {
262
+ "type": "string"
263
+ },
264
+ "type": {
265
+ "type": "string",
266
+ "const": "inline"
267
+ },
268
+ "source": {
269
+ "type": "string"
270
+ },
271
+ "page": {
272
+ "$ref": "util.json#/$defs/page"
273
+ },
274
+ "srd": {
275
+ "$ref": "util.json#/$defs/srd"
276
+ },
277
+ "basicRules": {
278
+ "$ref": "util.json#/$defs/basicRules"
279
+ },
280
+ "data": {
281
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
282
+ "type": "object"
283
+ },
284
+ "id": {
285
+ "type": "string"
286
+ },
287
+ "entries": {
288
+ "type": "array",
289
+ "items": {
290
+ "$ref": "#"
291
+ }
292
+ }
293
+ },
294
+ "required": [
295
+ "type",
296
+ "entries"
297
+ ],
298
+ "additionalProperties": false
299
+ },
300
+ "entryEntriesInlineEntries": {
301
+ "type": "object",
302
+ "properties": {
303
+ "name": {
304
+ "type": "string"
305
+ },
306
+ "type": {
307
+ "type": "string",
308
+ "const": "inlineBlock"
309
+ },
310
+ "source": {
311
+ "type": "string"
312
+ },
313
+ "page": {
314
+ "$ref": "util.json#/$defs/page"
315
+ },
316
+ "srd": {
317
+ "$ref": "util.json#/$defs/srd"
318
+ },
319
+ "basicRules": {
320
+ "$ref": "util.json#/$defs/basicRules"
321
+ },
322
+ "data": {
323
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
324
+ "type": "object"
325
+ },
326
+ "id": {
327
+ "type": "string"
328
+ },
329
+ "entries": {
330
+ "type": "array",
331
+ "items": {
332
+ "$ref": "#"
333
+ }
334
+ }
335
+ },
336
+ "required": [
337
+ "type",
338
+ "entries"
339
+ ],
340
+ "additionalProperties": false
341
+ },
342
+ "entryOptions": {
343
+ "type": "object",
344
+ "properties": {
345
+ "name": {
346
+ "type": "string"
347
+ },
348
+ "type": {
349
+ "type": "string",
350
+ "const": "options"
351
+ },
352
+ "source": {
353
+ "type": "string"
354
+ },
355
+ "page": {
356
+ "$ref": "util.json#/$defs/page"
357
+ },
358
+ "srd": {
359
+ "$ref": "util.json#/$defs/srd"
360
+ },
361
+ "basicRules": {
362
+ "$ref": "util.json#/$defs/basicRules"
363
+ },
364
+ "data": {
365
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
366
+ "type": "object"
367
+ },
368
+ "id": {
369
+ "type": "string"
370
+ },
371
+ "count": {
372
+ "description": "Used to specify how many of the listed options can be chosen as e.g. permanent character features. Leave blank for transient choices.",
373
+ "type": "integer"
374
+ },
375
+ "style": {
376
+ "type": "string"
377
+ },
378
+ "entries": {
379
+ "type": "array",
380
+ "items": {
381
+ "$ref": "#"
382
+ }
383
+ }
384
+ },
385
+ "required": [
386
+ "type",
387
+ "entries"
388
+ ],
389
+ "additionalProperties": false
390
+ },
391
+ "entryTable": {
392
+ "type": "object",
393
+ "properties": {
394
+ "name": {
395
+ "type": "string"
396
+ },
397
+ "type": {
398
+ "type": "string",
399
+ "const": "table"
400
+ },
401
+ "source": {
402
+ "type": "string"
403
+ },
404
+ "page": {
405
+ "$ref": "util.json#/$defs/page"
406
+ },
407
+ "srd": {
408
+ "$ref": "util.json#/$defs/srd"
409
+ },
410
+ "basicRules": {
411
+ "$ref": "util.json#/$defs/basicRules"
412
+ },
413
+ "data": {
414
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
415
+ "type": "object"
416
+ },
417
+ "id": {
418
+ "type": "string"
419
+ },
420
+ "caption": {
421
+ "type": "string"
422
+ },
423
+ "isStriped": {
424
+ "type": "boolean"
425
+ },
426
+ "isNameGenerator": {
427
+ "type": "boolean",
428
+ "description": "Uses the result rolled to construct a name from multiple columns, such as Prefix, Given, Family, Suffix names etc."
429
+ },
430
+ "style": {
431
+ "type": "string"
432
+ },
433
+ "colLabels": {
434
+ "type": "array",
435
+ "items": {
436
+ "type": "string"
437
+ }
438
+ },
439
+ "colStyles": {
440
+ "type": "array",
441
+ "items": {
442
+ "type": "string"
443
+ }
444
+ },
445
+ "rowLabels": {
446
+ "type": "array",
447
+ "items": {
448
+ "type": "string"
449
+ }
450
+ },
451
+ "rowStyles": {
452
+ "type": "array",
453
+ "items": {
454
+ "type": "string"
455
+ }
456
+ },
457
+ "rows": {
458
+ "type": "array",
459
+ "items": {
460
+ "anyOf": [
461
+ {
462
+ "type": "array",
463
+ "items": {
464
+ "$ref": "#"
465
+ }
466
+ },
467
+ {
468
+ "$ref": "#/$defs/entryTableRow"
469
+ }
470
+ ]
471
+ }
472
+ },
473
+ "footnotes": {
474
+ "type": "array",
475
+ "items": {
476
+ "$ref": "#"
477
+ }
478
+ },
479
+ "intro": {
480
+ "description": "Primarily for homebrew use.",
481
+ "type": "array",
482
+ "items": {
483
+ "$ref": "#"
484
+ }
485
+ },
486
+ "outro": {
487
+ "description": "Primarily for homebrew use.",
488
+ "type": "array",
489
+ "items": {
490
+ "$ref": "#"
491
+ }
492
+ }
493
+ },
494
+ "required": [
495
+ "type",
496
+ "rows"
497
+ ],
498
+ "additionalProperties": false
499
+ },
500
+ "entryTableGroup": {
501
+ "description": "Used to group related tables together; has no effect on rendering.",
502
+ "type": "object",
503
+ "properties": {
504
+ "name": {
505
+ "type": "string"
506
+ },
507
+ "type": {
508
+ "type": "string",
509
+ "const": "tableGroup"
510
+ },
511
+ "source": {
512
+ "type": "string"
513
+ },
514
+ "page": {
515
+ "$ref": "util.json#/$defs/page"
516
+ },
517
+ "srd": {
518
+ "$ref": "util.json#/$defs/srd"
519
+ },
520
+ "basicRules": {
521
+ "$ref": "util.json#/$defs/basicRules"
522
+ },
523
+ "data": {
524
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
525
+ "type": "object"
526
+ },
527
+ "id": {
528
+ "type": "string"
529
+ },
530
+ "tables": {
531
+ "type": "array",
532
+ "items": {
533
+ "$ref": "#/$defs/entryTable"
534
+ }
535
+ }
536
+ },
537
+ "required": [
538
+ "type",
539
+ "tables"
540
+ ],
541
+ "additionalProperties": false
542
+ },
543
+ "entryTableRow": {
544
+ "type": "object",
545
+ "properties": {
546
+ "name": {
547
+ "type": "string"
548
+ },
549
+ "type": {
550
+ "type": "string",
551
+ "const": "row"
552
+ },
553
+ "source": {
554
+ "type": "string"
555
+ },
556
+ "page": {
557
+ "$ref": "util.json#/$defs/page"
558
+ },
559
+ "srd": {
560
+ "$ref": "util.json#/$defs/srd"
561
+ },
562
+ "basicRules": {
563
+ "$ref": "util.json#/$defs/basicRules"
564
+ },
565
+ "data": {
566
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
567
+ "type": "object"
568
+ },
569
+ "id": {
570
+ "type": "string"
571
+ },
572
+ "style": {
573
+ "type": "string"
574
+ },
575
+ "row": {
576
+ "type": "array",
577
+ "items": {
578
+ "$ref": "#"
579
+ }
580
+ }
581
+ },
582
+ "required": [
583
+ "type",
584
+ "row"
585
+ ],
586
+ "additionalProperties": false
587
+ },
588
+ "entryTableCell": {
589
+ "type": "object",
590
+ "properties": {
591
+ "name": {
592
+ "type": "string"
593
+ },
594
+ "type": {
595
+ "type": "string",
596
+ "const": "cell"
597
+ },
598
+ "source": {
599
+ "type": "string"
600
+ },
601
+ "page": {
602
+ "$ref": "util.json#/$defs/page"
603
+ },
604
+ "srd": {
605
+ "$ref": "util.json#/$defs/srd"
606
+ },
607
+ "basicRules": {
608
+ "$ref": "util.json#/$defs/basicRules"
609
+ },
610
+ "data": {
611
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
612
+ "type": "object"
613
+ },
614
+ "id": {
615
+ "type": "string"
616
+ },
617
+ "width": {
618
+ "type": "integer"
619
+ },
620
+ "roll": {
621
+ "oneOf": [
622
+ {
623
+ "type": "object",
624
+ "properties": {
625
+ "min": {
626
+ "type": "integer"
627
+ },
628
+ "max": {
629
+ "type": "integer"
630
+ },
631
+ "pad": {
632
+ "type": "boolean"
633
+ }
634
+ },
635
+ "required": [
636
+ "min",
637
+ "max"
638
+ ],
639
+ "additionalProperties": false
640
+ },
641
+ {
642
+ "type": "object",
643
+ "properties": {
644
+ "exact": {
645
+ "type": "integer"
646
+ },
647
+ "pad": {
648
+ "type": "boolean"
649
+ }
650
+ },
651
+ "required": [
652
+ "exact"
653
+ ],
654
+ "additionalProperties": false
655
+ }
656
+ ]
657
+ },
658
+ "entry": {
659
+ "$ref": "#"
660
+ }
661
+ },
662
+ "required": [
663
+ "type"
664
+ ],
665
+ "additionalProperties": false
666
+ },
667
+ "entryList": {
668
+ "type": "object",
669
+ "properties": {
670
+ "name": {
671
+ "type": "string"
672
+ },
673
+ "type": {
674
+ "type": "string",
675
+ "const": "list"
676
+ },
677
+ "source": {
678
+ "type": "string"
679
+ },
680
+ "page": {
681
+ "$ref": "util.json#/$defs/page"
682
+ },
683
+ "srd": {
684
+ "$ref": "util.json#/$defs/srd"
685
+ },
686
+ "basicRules": {
687
+ "$ref": "util.json#/$defs/basicRules"
688
+ },
689
+ "data": {
690
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
691
+ "type": "object"
692
+ },
693
+ "id": {
694
+ "type": "string"
695
+ },
696
+ "columns": {
697
+ "description": "Number of columns the content should be split into. Note that the full value is only displayed on wide screens, and screens below certain widths will see an appropriately reduced number of columns.",
698
+ "type": "integer"
699
+ },
700
+ "style": {
701
+ "type": "string",
702
+ "description": "Formatting to be applied to the list; not providing a style results in a simple bullet point list.\n list-decimal: decimal numbering 1. 2. 3. etc \n list-hang: a list with the bullets removed and a full indentation \n list-hang-notitle: a list with no bullets that indents all lines but the first\n list-lower-roman: lowercase roman numeral numbering i, ii, iii, iv, etc.\n list-name: a bulleted list with all text in bold\n list-no-bullets: a list with the bullets removed and reduced indentation",
703
+ "enum": [
704
+ "list-decimal",
705
+ "list-hang",
706
+ "list-hang-notitle",
707
+ "list-lower-roman",
708
+ "list-name",
709
+ "list-no-bullets"
710
+ ]
711
+ },
712
+ "items": {
713
+ "type": "array",
714
+ "items": {
715
+ "$ref": "#"
716
+ }
717
+ }
718
+ },
719
+ "required": [
720
+ "type",
721
+ "items"
722
+ ],
723
+ "additionalProperties": false
724
+ },
725
+ "entryBonus": {
726
+ "type": "object",
727
+ "properties": {
728
+ "name": {
729
+ "type": "string"
730
+ },
731
+ "type": {
732
+ "type": "string",
733
+ "const": "bonus"
734
+ },
735
+ "source": {
736
+ "type": "string"
737
+ },
738
+ "page": {
739
+ "$ref": "util.json#/$defs/page"
740
+ },
741
+ "srd": {
742
+ "$ref": "util.json#/$defs/srd"
743
+ },
744
+ "basicRules": {
745
+ "$ref": "util.json#/$defs/basicRules"
746
+ },
747
+ "data": {
748
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
749
+ "type": "object"
750
+ },
751
+ "id": {
752
+ "type": "string"
753
+ },
754
+ "value": {
755
+ "type": "integer"
756
+ }
757
+ },
758
+ "required": [
759
+ "type",
760
+ "value"
761
+ ],
762
+ "additionalProperties": false
763
+ },
764
+ "entryBonusSpeed": {
765
+ "type": "object",
766
+ "properties": {
767
+ "name": {
768
+ "type": "string"
769
+ },
770
+ "type": {
771
+ "type": "string",
772
+ "const": "bonusSpeed"
773
+ },
774
+ "source": {
775
+ "type": "string"
776
+ },
777
+ "page": {
778
+ "$ref": "util.json#/$defs/page"
779
+ },
780
+ "srd": {
781
+ "$ref": "util.json#/$defs/srd"
782
+ },
783
+ "basicRules": {
784
+ "$ref": "util.json#/$defs/basicRules"
785
+ },
786
+ "data": {
787
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
788
+ "type": "object"
789
+ },
790
+ "id": {
791
+ "type": "string"
792
+ },
793
+ "value": {
794
+ "type": "integer"
795
+ }
796
+ },
797
+ "required": [
798
+ "type",
799
+ "value"
800
+ ],
801
+ "additionalProperties": false
802
+ },
803
+ "entryDice": {
804
+ "type": "object",
805
+ "properties": {
806
+ "name": {
807
+ "type": "string"
808
+ },
809
+ "type": {
810
+ "type": "string",
811
+ "const": "dice"
812
+ },
813
+ "source": {
814
+ "type": "string"
815
+ },
816
+ "page": {
817
+ "$ref": "util.json#/$defs/page"
818
+ },
819
+ "srd": {
820
+ "$ref": "util.json#/$defs/srd"
821
+ },
822
+ "basicRules": {
823
+ "$ref": "util.json#/$defs/basicRules"
824
+ },
825
+ "data": {
826
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
827
+ "type": "object"
828
+ },
829
+ "id": {
830
+ "type": "string"
831
+ },
832
+ "toRoll": {
833
+ "type": "array",
834
+ "items": {
835
+ "type": "object",
836
+ "properties": {
837
+ "number": {
838
+ "type": "integer"
839
+ },
840
+ "faces": {
841
+ "type": "integer"
842
+ },
843
+ "modifier": {
844
+ "description": "(Warning: unused)",
845
+ "type": "integer"
846
+ },
847
+ "hideModifier": {
848
+ "description": "(Warning: unused)",
849
+ "type": "boolean"
850
+ }
851
+ },
852
+ "required": [
853
+ "number",
854
+ "faces"
855
+ ]
856
+ }
857
+ },
858
+ "rollable": {
859
+ "type": "boolean"
860
+ }
861
+ },
862
+ "required": [
863
+ "type"
864
+ ],
865
+ "additionalProperties": false
866
+ },
867
+ "entryAbilityDc": {
868
+ "type": "object",
869
+ "properties": {
870
+ "name": {
871
+ "type": "string"
872
+ },
873
+ "type": {
874
+ "type": "string",
875
+ "const": "abilityDc"
876
+ },
877
+ "source": {
878
+ "type": "string"
879
+ },
880
+ "page": {
881
+ "$ref": "util.json#/$defs/page"
882
+ },
883
+ "srd": {
884
+ "$ref": "util.json#/$defs/srd"
885
+ },
886
+ "basicRules": {
887
+ "$ref": "util.json#/$defs/basicRules"
888
+ },
889
+ "data": {
890
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
891
+ "type": "object"
892
+ },
893
+ "id": {
894
+ "type": "string"
895
+ },
896
+ "attributes": {
897
+ "type": "array",
898
+ "items": {
899
+ "type": "string",
900
+ "examples": [
901
+ "str",
902
+ "dex",
903
+ "con",
904
+ "int",
905
+ "wis",
906
+ "cha",
907
+ "spellcasting"
908
+ ]
909
+ }
910
+ }
911
+ },
912
+ "required": [
913
+ "type",
914
+ "name",
915
+ "attributes"
916
+ ],
917
+ "additionalProperties": false
918
+ },
919
+ "entryAbilityAttackMod": {
920
+ "type": "object",
921
+ "properties": {
922
+ "name": {
923
+ "type": "string"
924
+ },
925
+ "type": {
926
+ "type": "string",
927
+ "const": "abilityAttackMod"
928
+ },
929
+ "source": {
930
+ "type": "string"
931
+ },
932
+ "page": {
933
+ "$ref": "util.json#/$defs/page"
934
+ },
935
+ "srd": {
936
+ "$ref": "util.json#/$defs/srd"
937
+ },
938
+ "basicRules": {
939
+ "$ref": "util.json#/$defs/basicRules"
940
+ },
941
+ "data": {
942
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
943
+ "type": "object"
944
+ },
945
+ "id": {
946
+ "type": "string"
947
+ },
948
+ "attributes": {
949
+ "type": "array",
950
+ "items": {
951
+ "type": "string",
952
+ "examples": [
953
+ "str",
954
+ "dex",
955
+ "con",
956
+ "int",
957
+ "wis",
958
+ "cha",
959
+ "spellcasting"
960
+ ]
961
+ }
962
+ }
963
+ },
964
+ "required": [
965
+ "type",
966
+ "name",
967
+ "attributes"
968
+ ],
969
+ "additionalProperties": false
970
+ },
971
+ "abilityGeneric": {
972
+ "type": "object",
973
+ "properties": {
974
+ "name": {
975
+ "type": "string"
976
+ },
977
+ "type": {
978
+ "type": "string",
979
+ "const": "abilityGeneric"
980
+ },
981
+ "source": {
982
+ "type": "string"
983
+ },
984
+ "page": {
985
+ "$ref": "util.json#/$defs/page"
986
+ },
987
+ "srd": {
988
+ "$ref": "util.json#/$defs/srd"
989
+ },
990
+ "basicRules": {
991
+ "$ref": "util.json#/$defs/basicRules"
992
+ },
993
+ "data": {
994
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
995
+ "type": "object"
996
+ },
997
+ "id": {
998
+ "type": "string"
999
+ },
1000
+ "text": {
1001
+ "type": "string"
1002
+ },
1003
+ "attributes": {
1004
+ "type": "array",
1005
+ "items": {
1006
+ "type": "string",
1007
+ "enum": [
1008
+ "str",
1009
+ "dex",
1010
+ "con",
1011
+ "int",
1012
+ "wis",
1013
+ "cha"
1014
+ ]
1015
+ }
1016
+ }
1017
+ },
1018
+ "required": [
1019
+ "type",
1020
+ "text"
1021
+ ],
1022
+ "additionalProperties": false
1023
+ },
1024
+ "entryLink": {
1025
+ "type": "object",
1026
+ "properties": {
1027
+ "name": {
1028
+ "type": "string"
1029
+ },
1030
+ "type": {
1031
+ "type": "string",
1032
+ "const": "link"
1033
+ },
1034
+ "source": {
1035
+ "type": "string"
1036
+ },
1037
+ "page": {
1038
+ "$ref": "util.json#/$defs/page"
1039
+ },
1040
+ "srd": {
1041
+ "$ref": "util.json#/$defs/srd"
1042
+ },
1043
+ "basicRules": {
1044
+ "$ref": "util.json#/$defs/basicRules"
1045
+ },
1046
+ "data": {
1047
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1048
+ "type": "object"
1049
+ },
1050
+ "id": {
1051
+ "type": "string"
1052
+ },
1053
+ "text": {
1054
+ "type": "string"
1055
+ },
1056
+ "href": {
1057
+ "oneOf": [
1058
+ {
1059
+ "type": "object",
1060
+ "properties": {
1061
+ "type": {
1062
+ "const": "internal"
1063
+ },
1064
+ "path": {
1065
+ "type": "string"
1066
+ },
1067
+ "hash": {
1068
+ "type": "string"
1069
+ },
1070
+ "hashPreEncoded": {
1071
+ "type": "boolean"
1072
+ },
1073
+ "subhashes": {
1074
+ "type": "array",
1075
+ "items": {
1076
+ "oneOf": [
1077
+ {
1078
+ "type": "object",
1079
+ "properties": {
1080
+ "key": {
1081
+ "type": "string"
1082
+ },
1083
+ "values": {
1084
+ "type": "array",
1085
+ "items": {
1086
+ "type": "string"
1087
+ }
1088
+ },
1089
+ "preEncoded": {
1090
+ "type": "boolean"
1091
+ }
1092
+ },
1093
+ "required": [
1094
+ "key",
1095
+ "values"
1096
+ ],
1097
+ "additionalProperties": false
1098
+ },
1099
+ {
1100
+ "type": "object",
1101
+ "properties": {
1102
+ "key": {
1103
+ "type": "string"
1104
+ },
1105
+ "value": {
1106
+ "type": "string"
1107
+ },
1108
+ "preEncoded": {
1109
+ "type": "boolean"
1110
+ }
1111
+ },
1112
+ "required": [
1113
+ "key",
1114
+ "value"
1115
+ ],
1116
+ "additionalProperties": false
1117
+ }
1118
+ ]
1119
+ }
1120
+ },
1121
+ "hover": {
1122
+ "type": "object",
1123
+ "properties": {
1124
+ "page": {
1125
+ "$ref": "util.json#/$defs/page"
1126
+ },
1127
+ "source": {
1128
+ "type": "string"
1129
+ },
1130
+ "hash": {
1131
+ "description": "Optional; overrides the href hash for hover handlers.",
1132
+ "type": "string"
1133
+ },
1134
+ "hashPreEncoded": {
1135
+ "type": "boolean"
1136
+ }
1137
+ },
1138
+ "additionalProperties": false,
1139
+ "required": [
1140
+ "page",
1141
+ "source"
1142
+ ]
1143
+ }
1144
+ },
1145
+ "required": [
1146
+ "path"
1147
+ ],
1148
+ "additionalProperties": false
1149
+ },
1150
+ {
1151
+ "type": "object",
1152
+ "properties": {
1153
+ "type": {
1154
+ "const": "external"
1155
+ },
1156
+ "url": {
1157
+ "$ref": "util.json#/$defs/url"
1158
+ }
1159
+ },
1160
+ "required": [
1161
+ "url"
1162
+ ],
1163
+ "additionalProperties": false
1164
+ }
1165
+ ]
1166
+ }
1167
+ },
1168
+ "required": [
1169
+ "type",
1170
+ "text",
1171
+ "href"
1172
+ ],
1173
+ "additionalProperties": false
1174
+ },
1175
+ "entryOptFeature": {
1176
+ "description": "For e.g. Eldritch Invocations which require prerequisite text",
1177
+ "type": "object",
1178
+ "properties": {
1179
+ "name": {
1180
+ "type": "string"
1181
+ },
1182
+ "type": {
1183
+ "type": "string",
1184
+ "const": "optfeature"
1185
+ },
1186
+ "source": {
1187
+ "type": "string"
1188
+ },
1189
+ "page": {
1190
+ "$ref": "util.json#/$defs/page"
1191
+ },
1192
+ "srd": {
1193
+ "$ref": "util.json#/$defs/srd"
1194
+ },
1195
+ "basicRules": {
1196
+ "$ref": "util.json#/$defs/basicRules"
1197
+ },
1198
+ "data": {
1199
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1200
+ "type": "object"
1201
+ },
1202
+ "id": {
1203
+ "type": "string"
1204
+ },
1205
+ "prerequisite": {
1206
+ "type": "string"
1207
+ },
1208
+ "entries": {
1209
+ "type": "array",
1210
+ "items": {
1211
+ "$ref": "#"
1212
+ }
1213
+ }
1214
+ },
1215
+ "required": [
1216
+ "type",
1217
+ "name"
1218
+ ],
1219
+ "additionalProperties": false
1220
+ },
1221
+ "entryInset": {
1222
+ "type": "object",
1223
+ "properties": {
1224
+ "name": {
1225
+ "type": "string"
1226
+ },
1227
+ "type": {
1228
+ "type": "string",
1229
+ "const": "inset"
1230
+ },
1231
+ "source": {
1232
+ "type": "string"
1233
+ },
1234
+ "page": {
1235
+ "$ref": "util.json#/$defs/page"
1236
+ },
1237
+ "srd": {
1238
+ "$ref": "util.json#/$defs/srd"
1239
+ },
1240
+ "basicRules": {
1241
+ "$ref": "util.json#/$defs/basicRules"
1242
+ },
1243
+ "data": {
1244
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1245
+ "type": "object"
1246
+ },
1247
+ "id": {
1248
+ "type": "string"
1249
+ },
1250
+ "entries": {
1251
+ "type": "array",
1252
+ "items": {
1253
+ "$ref": "#"
1254
+ }
1255
+ },
1256
+ "style": {
1257
+ "type": "string"
1258
+ }
1259
+ },
1260
+ "required": [
1261
+ "type",
1262
+ "entries"
1263
+ ],
1264
+ "additionalProperties": false
1265
+ },
1266
+ "entryInsetReadaloud": {
1267
+ "type": "object",
1268
+ "properties": {
1269
+ "name": {
1270
+ "type": "string"
1271
+ },
1272
+ "type": {
1273
+ "type": "string",
1274
+ "const": "insetReadaloud"
1275
+ },
1276
+ "source": {
1277
+ "type": "string"
1278
+ },
1279
+ "page": {
1280
+ "$ref": "util.json#/$defs/page"
1281
+ },
1282
+ "srd": {
1283
+ "$ref": "util.json#/$defs/srd"
1284
+ },
1285
+ "basicRules": {
1286
+ "$ref": "util.json#/$defs/basicRules"
1287
+ },
1288
+ "data": {
1289
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1290
+ "type": "object"
1291
+ },
1292
+ "id": {
1293
+ "type": "string"
1294
+ },
1295
+ "entries": {
1296
+ "type": "array",
1297
+ "items": {
1298
+ "$ref": "#"
1299
+ }
1300
+ },
1301
+ "style": {
1302
+ "type": "string"
1303
+ }
1304
+ },
1305
+ "required": [
1306
+ "type",
1307
+ "entries"
1308
+ ],
1309
+ "additionalProperties": false
1310
+ },
1311
+ "entryVariant": {
1312
+ "type": "object",
1313
+ "properties": {
1314
+ "name": {
1315
+ "type": "string"
1316
+ },
1317
+ "type": {
1318
+ "type": "string",
1319
+ "const": "variant"
1320
+ },
1321
+ "source": {
1322
+ "type": "string"
1323
+ },
1324
+ "page": {
1325
+ "$ref": "util.json#/$defs/page"
1326
+ },
1327
+ "srd": {
1328
+ "$ref": "util.json#/$defs/srd"
1329
+ },
1330
+ "basicRules": {
1331
+ "$ref": "util.json#/$defs/basicRules"
1332
+ },
1333
+ "data": {
1334
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1335
+ "type": "object"
1336
+ },
1337
+ "id": {
1338
+ "type": "string"
1339
+ },
1340
+ "entries": {
1341
+ "type": "array",
1342
+ "items": {
1343
+ "$ref": "#"
1344
+ }
1345
+ }
1346
+ },
1347
+ "required": [
1348
+ "type",
1349
+ "name",
1350
+ "entries"
1351
+ ],
1352
+ "additionalProperties": false
1353
+ },
1354
+ "entryVariantInner": {
1355
+ "type": "object",
1356
+ "properties": {
1357
+ "name": {
1358
+ "type": "string"
1359
+ },
1360
+ "type": {
1361
+ "type": "string",
1362
+ "const": "variantInner"
1363
+ },
1364
+ "source": {
1365
+ "type": "string"
1366
+ },
1367
+ "page": {
1368
+ "$ref": "util.json#/$defs/page"
1369
+ },
1370
+ "srd": {
1371
+ "$ref": "util.json#/$defs/srd"
1372
+ },
1373
+ "basicRules": {
1374
+ "$ref": "util.json#/$defs/basicRules"
1375
+ },
1376
+ "data": {
1377
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1378
+ "type": "object"
1379
+ },
1380
+ "id": {
1381
+ "type": "string"
1382
+ },
1383
+ "entries": {
1384
+ "type": "array",
1385
+ "items": {
1386
+ "$ref": "#"
1387
+ }
1388
+ }
1389
+ },
1390
+ "required": [
1391
+ "type",
1392
+ "name",
1393
+ "entries"
1394
+ ],
1395
+ "additionalProperties": false
1396
+ },
1397
+ "entryVariantSub": {
1398
+ "type": "object",
1399
+ "properties": {
1400
+ "name": {
1401
+ "type": "string"
1402
+ },
1403
+ "type": {
1404
+ "type": "string",
1405
+ "const": "variantSub"
1406
+ },
1407
+ "source": {
1408
+ "type": "string"
1409
+ },
1410
+ "page": {
1411
+ "$ref": "util.json#/$defs/page"
1412
+ },
1413
+ "srd": {
1414
+ "$ref": "util.json#/$defs/srd"
1415
+ },
1416
+ "basicRules": {
1417
+ "$ref": "util.json#/$defs/basicRules"
1418
+ },
1419
+ "data": {
1420
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1421
+ "type": "object"
1422
+ },
1423
+ "id": {
1424
+ "type": "string"
1425
+ },
1426
+ "entries": {
1427
+ "type": "array",
1428
+ "items": {
1429
+ "$ref": "#"
1430
+ }
1431
+ }
1432
+ },
1433
+ "required": [
1434
+ "type",
1435
+ "name",
1436
+ "entries"
1437
+ ],
1438
+ "additionalProperties": false
1439
+ },
1440
+ "entryItem": {
1441
+ "oneOf": [
1442
+ {
1443
+ "type": "object",
1444
+ "properties": {
1445
+ "name": {
1446
+ "type": "string"
1447
+ },
1448
+ "type": {
1449
+ "type": "string",
1450
+ "const": "item"
1451
+ },
1452
+ "source": {
1453
+ "type": "string"
1454
+ },
1455
+ "page": {
1456
+ "$ref": "util.json#/$defs/page"
1457
+ },
1458
+ "srd": {
1459
+ "$ref": "util.json#/$defs/srd"
1460
+ },
1461
+ "basicRules": {
1462
+ "$ref": "util.json#/$defs/basicRules"
1463
+ },
1464
+ "data": {
1465
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1466
+ "type": "object"
1467
+ },
1468
+ "id": {
1469
+ "type": "string"
1470
+ },
1471
+ "style": {
1472
+ "type": "string"
1473
+ },
1474
+ "entry": {
1475
+ "$ref": "#"
1476
+ },
1477
+ "nameDot": {
1478
+ "const": false
1479
+ }
1480
+ },
1481
+ "required": [
1482
+ "type",
1483
+ "entry"
1484
+ ],
1485
+ "additionalProperties": false
1486
+ },
1487
+ {
1488
+ "type": "object",
1489
+ "properties": {
1490
+ "name": {
1491
+ "type": "string"
1492
+ },
1493
+ "type": {
1494
+ "type": "string",
1495
+ "const": "item"
1496
+ },
1497
+ "source": {
1498
+ "type": "string"
1499
+ },
1500
+ "page": {
1501
+ "$ref": "util.json#/$defs/page"
1502
+ },
1503
+ "srd": {
1504
+ "$ref": "util.json#/$defs/srd"
1505
+ },
1506
+ "basicRules": {
1507
+ "$ref": "util.json#/$defs/basicRules"
1508
+ },
1509
+ "data": {
1510
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1511
+ "type": "object"
1512
+ },
1513
+ "id": {
1514
+ "type": "string"
1515
+ },
1516
+ "style": {
1517
+ "type": "string"
1518
+ },
1519
+ "entries": {
1520
+ "type": "array",
1521
+ "items": {
1522
+ "$ref": "#"
1523
+ }
1524
+ },
1525
+ "nameDot": {
1526
+ "const": false
1527
+ }
1528
+ },
1529
+ "required": [
1530
+ "type",
1531
+ "entries"
1532
+ ],
1533
+ "additionalProperties": false
1534
+ }
1535
+ ]
1536
+ },
1537
+ "entryItemSub": {
1538
+ "type": "object",
1539
+ "properties": {
1540
+ "name": {
1541
+ "type": "string"
1542
+ },
1543
+ "type": {
1544
+ "type": "string",
1545
+ "const": "itemSub"
1546
+ },
1547
+ "source": {
1548
+ "type": "string"
1549
+ },
1550
+ "page": {
1551
+ "$ref": "util.json#/$defs/page"
1552
+ },
1553
+ "srd": {
1554
+ "$ref": "util.json#/$defs/srd"
1555
+ },
1556
+ "basicRules": {
1557
+ "$ref": "util.json#/$defs/basicRules"
1558
+ },
1559
+ "data": {
1560
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1561
+ "type": "object"
1562
+ },
1563
+ "id": {
1564
+ "type": "string"
1565
+ },
1566
+ "entry": {
1567
+ "$ref": "#"
1568
+ },
1569
+ "nameDot": {
1570
+ "const": false
1571
+ }
1572
+ },
1573
+ "required": [
1574
+ "type",
1575
+ "name",
1576
+ "entry"
1577
+ ],
1578
+ "additionalProperties": false
1579
+ },
1580
+ "entryItemSpell": {
1581
+ "type": "object",
1582
+ "properties": {
1583
+ "name": {
1584
+ "type": "string"
1585
+ },
1586
+ "type": {
1587
+ "type": "string",
1588
+ "const": "itemSpell"
1589
+ },
1590
+ "source": {
1591
+ "type": "string"
1592
+ },
1593
+ "page": {
1594
+ "$ref": "util.json#/$defs/page"
1595
+ },
1596
+ "srd": {
1597
+ "$ref": "util.json#/$defs/srd"
1598
+ },
1599
+ "basicRules": {
1600
+ "$ref": "util.json#/$defs/basicRules"
1601
+ },
1602
+ "data": {
1603
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1604
+ "type": "object"
1605
+ },
1606
+ "id": {
1607
+ "type": "string"
1608
+ },
1609
+ "entry": {
1610
+ "$ref": "#"
1611
+ }
1612
+ },
1613
+ "required": [
1614
+ "type",
1615
+ "name",
1616
+ "entry"
1617
+ ],
1618
+ "additionalProperties": false
1619
+ },
1620
+ "entryImage": {
1621
+ "type": "object",
1622
+ "properties": {
1623
+ "name": {
1624
+ "type": "string"
1625
+ },
1626
+ "type": {
1627
+ "type": "string",
1628
+ "const": "image"
1629
+ },
1630
+ "source": {
1631
+ "type": "string"
1632
+ },
1633
+ "page": {
1634
+ "$ref": "util.json#/$defs/page"
1635
+ },
1636
+ "srd": {
1637
+ "$ref": "util.json#/$defs/srd"
1638
+ },
1639
+ "basicRules": {
1640
+ "$ref": "util.json#/$defs/basicRules"
1641
+ },
1642
+ "data": {
1643
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1644
+ "type": "object"
1645
+ },
1646
+ "id": {
1647
+ "type": "string"
1648
+ },
1649
+ "href": {
1650
+ "$ref": "#/$defs/mediaHref"
1651
+ },
1652
+ "hrefThumbnail": {
1653
+ "title": "A thumbnail image used in rare cases, e.g. when loading a wall of maps to choose from in the DM Screen.",
1654
+ "$ref": "#/$defs/mediaHref"
1655
+ },
1656
+ "title": {
1657
+ "type": "string"
1658
+ },
1659
+ "altText": {
1660
+ "description": "For accessibility purposes",
1661
+ "type": "string"
1662
+ },
1663
+ "imageType": {
1664
+ "type": "string",
1665
+ "enum": [
1666
+ "map",
1667
+ "mapPlayer"
1668
+ ]
1669
+ },
1670
+ "grid": {
1671
+ "type": "object",
1672
+ "properties": {
1673
+ "type": {
1674
+ "type": "string",
1675
+ "enum": [
1676
+ "none",
1677
+ "square",
1678
+ "hexRowsOdd",
1679
+ "hexRowsEven",
1680
+ "hexColsOdd",
1681
+ "hexColsEven"
1682
+ ]
1683
+ },
1684
+ "size": {
1685
+ "type": "integer"
1686
+ },
1687
+ "offsetX": {
1688
+ "type": "integer"
1689
+ },
1690
+ "offsetY": {
1691
+ "type": "integer"
1692
+ },
1693
+ "scale": {
1694
+ "description": "Map image scaling. Where possible, avoid using this, and use size/offset instead.",
1695
+ "type": "number"
1696
+ }
1697
+ },
1698
+ "additionalProperties": false
1699
+ },
1700
+ "mapRegions": {
1701
+ "type": "array",
1702
+ "items": {
1703
+ "type": "object",
1704
+ "properties": {
1705
+ "area": {
1706
+ "type": "string"
1707
+ },
1708
+ "points": {
1709
+ "type": "array",
1710
+ "items": {
1711
+ "type": "array",
1712
+ "items": {
1713
+ "type": "integer"
1714
+ },
1715
+ "maxItems": 2,
1716
+ "minItems": 2
1717
+ },
1718
+ "uniqueItems": true
1719
+ }
1720
+ },
1721
+ "additionalProperties": false
1722
+ }
1723
+ },
1724
+ "mapParent": {
1725
+ "description": "Note that the order of transformations is: scale, then offset.",
1726
+ "type": "object",
1727
+ "properties": {
1728
+ "id": {
1729
+ "type": "string"
1730
+ },
1731
+ "offsetX": {
1732
+ "description": "The X position of this map within the parent map. Defaults to 0.",
1733
+ "type": "integer"
1734
+ },
1735
+ "offsetY": {
1736
+ "description": "The Y position of this map within the parent map. Defaults to 0.",
1737
+ "type": "integer"
1738
+ },
1739
+ "scaleX": {
1740
+ "description": "X scaling required for this map to match the parent map. Defaults to 1.",
1741
+ "type": "number",
1742
+ "exclusiveMinimum": 0
1743
+ },
1744
+ "scaleY": {
1745
+ "description": "Y scaling required for this map to match the parent map. Defaults to 1.",
1746
+ "type": "number",
1747
+ "exclusiveMinimum": 0
1748
+ },
1749
+ "autoScale": {
1750
+ "description": "If the X/Y scaling for this map should be based on the size ratio between the two. This is often used a placeholder for maps requiring future manual adjustment.",
1751
+ "type": "boolean"
1752
+ }
1753
+ },
1754
+ "additionalProperties": false
1755
+ },
1756
+ "mapName": {
1757
+ "type": "string"
1758
+ },
1759
+ "width": {
1760
+ "type": "integer"
1761
+ },
1762
+ "height": {
1763
+ "type": "integer"
1764
+ },
1765
+ "maxWidth": {
1766
+ "description": "Specify the max desired display width of the images, as opposed to \"width\" which should only be used for the _real_ width. Assumes pixels by default.",
1767
+ "type": "integer"
1768
+ },
1769
+ "maxHeight": {
1770
+ "description": "As per \"maxWidth\"",
1771
+ "type": "integer"
1772
+ },
1773
+ "maxWidthUnits": {
1774
+ "type": "string"
1775
+ },
1776
+ "maxHeightUnits": {
1777
+ "type": "string"
1778
+ },
1779
+ "style": {
1780
+ "enum": [
1781
+ "comic-speaker-left",
1782
+ "comic-speaker-right",
1783
+ "deity-symbol"
1784
+ ]
1785
+ }
1786
+ },
1787
+ "required": [
1788
+ "type",
1789
+ "href"
1790
+ ],
1791
+ "additionalProperties": false
1792
+ },
1793
+ "entryGallery": {
1794
+ "type": "object",
1795
+ "properties": {
1796
+ "name": {
1797
+ "type": "string"
1798
+ },
1799
+ "type": {
1800
+ "type": "string",
1801
+ "const": "gallery"
1802
+ },
1803
+ "source": {
1804
+ "type": "string"
1805
+ },
1806
+ "page": {
1807
+ "$ref": "util.json#/$defs/page"
1808
+ },
1809
+ "srd": {
1810
+ "$ref": "util.json#/$defs/srd"
1811
+ },
1812
+ "basicRules": {
1813
+ "$ref": "util.json#/$defs/basicRules"
1814
+ },
1815
+ "data": {
1816
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1817
+ "type": "object"
1818
+ },
1819
+ "id": {
1820
+ "type": "string"
1821
+ },
1822
+ "images": {
1823
+ "type": "array",
1824
+ "items": {
1825
+ "$ref": "#/$defs/entryImage"
1826
+ }
1827
+ }
1828
+ },
1829
+ "required": [
1830
+ "type",
1831
+ "images"
1832
+ ],
1833
+ "additionalProperties": false
1834
+ },
1835
+ "entryActions": {
1836
+ "type": "object",
1837
+ "properties": {
1838
+ "name": {
1839
+ "type": "string"
1840
+ },
1841
+ "type": {
1842
+ "type": "string",
1843
+ "const": "actions"
1844
+ },
1845
+ "source": {
1846
+ "type": "string"
1847
+ },
1848
+ "page": {
1849
+ "$ref": "util.json#/$defs/page"
1850
+ },
1851
+ "srd": {
1852
+ "$ref": "util.json#/$defs/srd"
1853
+ },
1854
+ "basicRules": {
1855
+ "$ref": "util.json#/$defs/basicRules"
1856
+ },
1857
+ "data": {
1858
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1859
+ "type": "object"
1860
+ },
1861
+ "id": {
1862
+ "type": "string"
1863
+ },
1864
+ "entries": {
1865
+ "type": "array",
1866
+ "items": {
1867
+ "$ref": "#"
1868
+ }
1869
+ }
1870
+ },
1871
+ "required": [
1872
+ "type",
1873
+ "name",
1874
+ "entries"
1875
+ ],
1876
+ "additionalProperties": false
1877
+ },
1878
+ "entryAttack": {
1879
+ "type": "object",
1880
+ "properties": {
1881
+ "name": {
1882
+ "type": "string"
1883
+ },
1884
+ "type": {
1885
+ "type": "string",
1886
+ "const": "attack"
1887
+ },
1888
+ "source": {
1889
+ "type": "string"
1890
+ },
1891
+ "page": {
1892
+ "$ref": "util.json#/$defs/page"
1893
+ },
1894
+ "srd": {
1895
+ "$ref": "util.json#/$defs/srd"
1896
+ },
1897
+ "basicRules": {
1898
+ "$ref": "util.json#/$defs/basicRules"
1899
+ },
1900
+ "data": {
1901
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1902
+ "type": "object"
1903
+ },
1904
+ "id": {
1905
+ "type": "string"
1906
+ },
1907
+ "attackType": {
1908
+ "type": "string",
1909
+ "description": "MW: Melee Weapon\n RW: Ranged Weapon",
1910
+ "enum": [
1911
+ "MW",
1912
+ "RW"
1913
+ ]
1914
+ },
1915
+ "attackEntries": {
1916
+ "type": "array",
1917
+ "items": {
1918
+ "$ref": "#"
1919
+ }
1920
+ },
1921
+ "hitEntries": {
1922
+ "type": "array",
1923
+ "items": {
1924
+ "$ref": "#"
1925
+ }
1926
+ }
1927
+ },
1928
+ "required": [
1929
+ "type",
1930
+ "attackType",
1931
+ "attackEntries",
1932
+ "hitEntries"
1933
+ ],
1934
+ "additionalProperties": false
1935
+ },
1936
+ "entryFlowchart": {
1937
+ "type": "object",
1938
+ "properties": {
1939
+ "name": {
1940
+ "type": "string"
1941
+ },
1942
+ "type": {
1943
+ "type": "string",
1944
+ "const": "flowchart"
1945
+ },
1946
+ "source": {
1947
+ "type": "string"
1948
+ },
1949
+ "page": {
1950
+ "$ref": "util.json#/$defs/page"
1951
+ },
1952
+ "srd": {
1953
+ "$ref": "util.json#/$defs/srd"
1954
+ },
1955
+ "basicRules": {
1956
+ "$ref": "util.json#/$defs/basicRules"
1957
+ },
1958
+ "data": {
1959
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
1960
+ "type": "object"
1961
+ },
1962
+ "id": {
1963
+ "type": "string"
1964
+ },
1965
+ "blocks": {
1966
+ "type": "array",
1967
+ "items": {
1968
+ "$ref": "#/$defs/entry"
1969
+ }
1970
+ }
1971
+ },
1972
+ "required": [
1973
+ "type",
1974
+ "blocks"
1975
+ ],
1976
+ "additionalProperties": false
1977
+ },
1978
+ "entryFlowBlock": {
1979
+ "type": "object",
1980
+ "properties": {
1981
+ "name": {
1982
+ "type": "string"
1983
+ },
1984
+ "type": {
1985
+ "type": "string",
1986
+ "const": "flowBlock"
1987
+ },
1988
+ "source": {
1989
+ "type": "string"
1990
+ },
1991
+ "page": {
1992
+ "$ref": "util.json#/$defs/page"
1993
+ },
1994
+ "srd": {
1995
+ "$ref": "util.json#/$defs/srd"
1996
+ },
1997
+ "basicRules": {
1998
+ "$ref": "util.json#/$defs/basicRules"
1999
+ },
2000
+ "data": {
2001
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
2002
+ "type": "object"
2003
+ },
2004
+ "id": {
2005
+ "type": "string"
2006
+ },
2007
+ "entries": {
2008
+ "type": "array",
2009
+ "items": {
2010
+ "$ref": "#/$defs/entry"
2011
+ }
2012
+ }
2013
+ },
2014
+ "required": [
2015
+ "type"
2016
+ ],
2017
+ "additionalProperties": false
2018
+ },
2019
+ "entryIngredient": {
2020
+ "type": "object",
2021
+ "properties": {
2022
+ "name": {
2023
+ "type": "string"
2024
+ },
2025
+ "type": {
2026
+ "type": "string",
2027
+ "const": "ingredient"
2028
+ },
2029
+ "source": {
2030
+ "type": "string"
2031
+ },
2032
+ "page": {
2033
+ "$ref": "util.json#/$defs/page"
2034
+ },
2035
+ "srd": {
2036
+ "$ref": "util.json#/$defs/srd"
2037
+ },
2038
+ "basicRules": {
2039
+ "$ref": "util.json#/$defs/basicRules"
2040
+ },
2041
+ "data": {
2042
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
2043
+ "type": "object"
2044
+ },
2045
+ "id": {
2046
+ "type": "string"
2047
+ },
2048
+ "entry": {
2049
+ "$ref": "#"
2050
+ }
2051
+ },
2052
+ "required": [
2053
+ "type",
2054
+ "entry"
2055
+ ],
2056
+ "patternProperties": {
2057
+ "^amount\\d+$": {
2058
+ "type": "number"
2059
+ }
2060
+ },
2061
+ "additionalProperties": false
2062
+ },
2063
+ "entryStatblockInline": {
2064
+ "anyOf": [
2065
+ {
2066
+ "type": "object",
2067
+ "properties": {
2068
+ "type": {
2069
+ "const": "statblockInline"
2070
+ },
2071
+ "dataType": {
2072
+ "const": "monster"
2073
+ },
2074
+ "data": {
2075
+ "$ref": "bestiary/bestiary.json#/$defs/creature"
2076
+ },
2077
+ "style": {
2078
+ "$ref": "#/$defs/_entryDataStyle"
2079
+ },
2080
+ "collapsed": {
2081
+ "const": true
2082
+ }
2083
+ },
2084
+ "required": [
2085
+ "type",
2086
+ "dataType",
2087
+ "data"
2088
+ ],
2089
+ "additionalProperties": false
2090
+ },
2091
+ {
2092
+ "type": "object",
2093
+ "properties": {
2094
+ "type": {
2095
+ "const": "statblockInline"
2096
+ },
2097
+ "dataType": {
2098
+ "const": "legendaryGroup"
2099
+ },
2100
+ "data": {
2101
+ "$ref": "bestiary/legendarygroups.json#/$defs/legendaryGroup"
2102
+ },
2103
+ "style": {
2104
+ "$ref": "#/$defs/_entryDataStyle"
2105
+ },
2106
+ "collapsed": {
2107
+ "const": true
2108
+ }
2109
+ },
2110
+ "required": [
2111
+ "type",
2112
+ "dataType",
2113
+ "data"
2114
+ ],
2115
+ "additionalProperties": false
2116
+ },
2117
+ {
2118
+ "type": "object",
2119
+ "properties": {
2120
+ "type": {
2121
+ "const": "statblockInline"
2122
+ },
2123
+ "dataType": {
2124
+ "const": "spell"
2125
+ },
2126
+ "data": {
2127
+ "$ref": "spells/spells.json#/$defs/spell"
2128
+ },
2129
+ "style": {
2130
+ "$ref": "#/$defs/_entryDataStyle"
2131
+ },
2132
+ "collapsed": {
2133
+ "const": true
2134
+ }
2135
+ },
2136
+ "required": [
2137
+ "type",
2138
+ "dataType",
2139
+ "data"
2140
+ ],
2141
+ "additionalProperties": false
2142
+ },
2143
+ {
2144
+ "type": "object",
2145
+ "properties": {
2146
+ "type": {
2147
+ "const": "statblockInline"
2148
+ },
2149
+ "dataType": {
2150
+ "const": "action"
2151
+ },
2152
+ "data": {
2153
+ "$ref": "actions.json#/$defs/action"
2154
+ },
2155
+ "style": {
2156
+ "$ref": "#/$defs/_entryDataStyle"
2157
+ },
2158
+ "collapsed": {
2159
+ "const": true
2160
+ }
2161
+ },
2162
+ "required": [
2163
+ "type",
2164
+ "dataType",
2165
+ "data"
2166
+ ],
2167
+ "additionalProperties": false
2168
+ },
2169
+ {
2170
+ "type": "object",
2171
+ "properties": {
2172
+ "type": {
2173
+ "const": "statblockInline"
2174
+ },
2175
+ "dataType": {
2176
+ "const": "item"
2177
+ },
2178
+ "data": {
2179
+ "$ref": "items.json#/$defs/item"
2180
+ },
2181
+ "style": {
2182
+ "$ref": "#/$defs/_entryDataStyle"
2183
+ },
2184
+ "collapsed": {
2185
+ "const": true
2186
+ }
2187
+ },
2188
+ "required": [
2189
+ "type",
2190
+ "dataType",
2191
+ "data"
2192
+ ],
2193
+ "additionalProperties": false
2194
+ },
2195
+ {
2196
+ "type": "object",
2197
+ "properties": {
2198
+ "type": {
2199
+ "const": "statblockInline"
2200
+ },
2201
+ "dataType": {
2202
+ "const": "background"
2203
+ },
2204
+ "data": {
2205
+ "$ref": "backgrounds.json#/$defs/background"
2206
+ },
2207
+ "style": {
2208
+ "$ref": "#/$defs/_entryDataStyle"
2209
+ },
2210
+ "collapsed": {
2211
+ "const": true
2212
+ }
2213
+ },
2214
+ "required": [
2215
+ "type",
2216
+ "dataType",
2217
+ "data"
2218
+ ],
2219
+ "additionalProperties": false
2220
+ },
2221
+ {
2222
+ "type": "object",
2223
+ "properties": {
2224
+ "type": {
2225
+ "const": "statblockInline"
2226
+ },
2227
+ "dataType": {
2228
+ "const": "charoption"
2229
+ },
2230
+ "data": {
2231
+ "$ref": "charcreationoptions.json#/$defs/charoption"
2232
+ },
2233
+ "style": {
2234
+ "$ref": "#/$defs/_entryDataStyle"
2235
+ },
2236
+ "collapsed": {
2237
+ "const": true
2238
+ }
2239
+ },
2240
+ "required": [
2241
+ "type",
2242
+ "dataType",
2243
+ "data"
2244
+ ],
2245
+ "additionalProperties": false
2246
+ },
2247
+ {
2248
+ "type": "object",
2249
+ "properties": {
2250
+ "type": {
2251
+ "const": "statblockInline"
2252
+ },
2253
+ "dataType": {
2254
+ "const": "condition"
2255
+ },
2256
+ "data": {
2257
+ "$ref": "conditionsdiseases.json#/$defs/conditionDisease"
2258
+ },
2259
+ "style": {
2260
+ "$ref": "#/$defs/_entryDataStyle"
2261
+ },
2262
+ "collapsed": {
2263
+ "const": true
2264
+ }
2265
+ },
2266
+ "required": [
2267
+ "type",
2268
+ "dataType",
2269
+ "data"
2270
+ ],
2271
+ "additionalProperties": false
2272
+ },
2273
+ {
2274
+ "type": "object",
2275
+ "properties": {
2276
+ "type": {
2277
+ "const": "statblockInline"
2278
+ },
2279
+ "dataType": {
2280
+ "const": "disease"
2281
+ },
2282
+ "data": {
2283
+ "$ref": "conditionsdiseases.json#/$defs/conditionDisease"
2284
+ },
2285
+ "style": {
2286
+ "$ref": "#/$defs/_entryDataStyle"
2287
+ },
2288
+ "collapsed": {
2289
+ "const": true
2290
+ }
2291
+ },
2292
+ "required": [
2293
+ "type",
2294
+ "dataType",
2295
+ "data"
2296
+ ],
2297
+ "additionalProperties": false
2298
+ },
2299
+ {
2300
+ "type": "object",
2301
+ "properties": {
2302
+ "type": {
2303
+ "const": "statblockInline"
2304
+ },
2305
+ "dataType": {
2306
+ "const": "status"
2307
+ },
2308
+ "data": {
2309
+ "$ref": "conditionsdiseases.json#/$defs/conditionDisease"
2310
+ },
2311
+ "style": {
2312
+ "$ref": "#/$defs/_entryDataStyle"
2313
+ },
2314
+ "collapsed": {
2315
+ "const": true
2316
+ }
2317
+ },
2318
+ "required": [
2319
+ "type",
2320
+ "dataType",
2321
+ "data"
2322
+ ],
2323
+ "additionalProperties": false
2324
+ },
2325
+ {
2326
+ "type": "object",
2327
+ "properties": {
2328
+ "type": {
2329
+ "const": "statblockInline"
2330
+ },
2331
+ "dataType": {
2332
+ "const": "cult"
2333
+ },
2334
+ "data": {
2335
+ "$ref": "cultsboons.json#/$defs/cult"
2336
+ },
2337
+ "style": {
2338
+ "$ref": "#/$defs/_entryDataStyle"
2339
+ },
2340
+ "collapsed": {
2341
+ "const": true
2342
+ }
2343
+ },
2344
+ "required": [
2345
+ "type",
2346
+ "dataType",
2347
+ "data"
2348
+ ],
2349
+ "additionalProperties": false
2350
+ },
2351
+ {
2352
+ "type": "object",
2353
+ "properties": {
2354
+ "type": {
2355
+ "const": "statblockInline"
2356
+ },
2357
+ "dataType": {
2358
+ "const": "boon"
2359
+ },
2360
+ "data": {
2361
+ "$ref": "cultsboons.json#/$defs/boon"
2362
+ },
2363
+ "style": {
2364
+ "$ref": "#/$defs/_entryDataStyle"
2365
+ },
2366
+ "collapsed": {
2367
+ "const": true
2368
+ }
2369
+ },
2370
+ "required": [
2371
+ "type",
2372
+ "dataType",
2373
+ "data"
2374
+ ],
2375
+ "additionalProperties": false
2376
+ },
2377
+ {
2378
+ "type": "object",
2379
+ "properties": {
2380
+ "type": {
2381
+ "const": "statblockInline"
2382
+ },
2383
+ "dataType": {
2384
+ "const": "deity"
2385
+ },
2386
+ "data": {
2387
+ "$ref": "deities.json#/$defs/deity"
2388
+ },
2389
+ "style": {
2390
+ "$ref": "#/$defs/_entryDataStyle"
2391
+ },
2392
+ "collapsed": {
2393
+ "const": true
2394
+ }
2395
+ },
2396
+ "required": [
2397
+ "type",
2398
+ "dataType",
2399
+ "data"
2400
+ ],
2401
+ "additionalProperties": false
2402
+ },
2403
+ {
2404
+ "type": "object",
2405
+ "properties": {
2406
+ "type": {
2407
+ "const": "statblockInline"
2408
+ },
2409
+ "dataType": {
2410
+ "const": "feat"
2411
+ },
2412
+ "data": {
2413
+ "$ref": "feats.json#/$defs/feat"
2414
+ },
2415
+ "style": {
2416
+ "$ref": "#/$defs/_entryDataStyle"
2417
+ },
2418
+ "collapsed": {
2419
+ "const": true
2420
+ }
2421
+ },
2422
+ "required": [
2423
+ "type",
2424
+ "dataType",
2425
+ "data"
2426
+ ],
2427
+ "additionalProperties": false
2428
+ },
2429
+ {
2430
+ "type": "object",
2431
+ "properties": {
2432
+ "type": {
2433
+ "const": "statblockInline"
2434
+ },
2435
+ "dataType": {
2436
+ "const": "language"
2437
+ },
2438
+ "data": {
2439
+ "$ref": "languages.json#/$defs/language"
2440
+ },
2441
+ "style": {
2442
+ "$ref": "#/$defs/_entryDataStyle"
2443
+ },
2444
+ "collapsed": {
2445
+ "const": true
2446
+ }
2447
+ },
2448
+ "required": [
2449
+ "type",
2450
+ "dataType",
2451
+ "data"
2452
+ ],
2453
+ "additionalProperties": false
2454
+ },
2455
+ {
2456
+ "type": "object",
2457
+ "properties": {
2458
+ "type": {
2459
+ "const": "statblockInline"
2460
+ },
2461
+ "dataType": {
2462
+ "const": "object"
2463
+ },
2464
+ "data": {
2465
+ "$ref": "objects.json#/$defs/object"
2466
+ },
2467
+ "style": {
2468
+ "$ref": "#/$defs/_entryDataStyle"
2469
+ },
2470
+ "collapsed": {
2471
+ "const": true
2472
+ }
2473
+ },
2474
+ "required": [
2475
+ "type",
2476
+ "dataType",
2477
+ "data"
2478
+ ],
2479
+ "additionalProperties": false
2480
+ },
2481
+ {
2482
+ "type": "object",
2483
+ "properties": {
2484
+ "type": {
2485
+ "const": "statblockInline"
2486
+ },
2487
+ "dataType": {
2488
+ "const": "optionalfeature"
2489
+ },
2490
+ "data": {
2491
+ "$ref": "optionalfeatures.json#/$defs/optionalfeature"
2492
+ },
2493
+ "style": {
2494
+ "$ref": "#/$defs/_entryDataStyle"
2495
+ },
2496
+ "collapsed": {
2497
+ "const": true
2498
+ }
2499
+ },
2500
+ "required": [
2501
+ "type",
2502
+ "dataType",
2503
+ "data"
2504
+ ],
2505
+ "additionalProperties": false
2506
+ },
2507
+ {
2508
+ "type": "object",
2509
+ "properties": {
2510
+ "type": {
2511
+ "const": "statblockInline"
2512
+ },
2513
+ "dataType": {
2514
+ "const": "psionic"
2515
+ },
2516
+ "data": {
2517
+ "$ref": "psionics.json#/$defs/psionic"
2518
+ },
2519
+ "style": {
2520
+ "$ref": "#/$defs/_entryDataStyle"
2521
+ },
2522
+ "collapsed": {
2523
+ "const": true
2524
+ }
2525
+ },
2526
+ "required": [
2527
+ "type",
2528
+ "dataType",
2529
+ "data"
2530
+ ],
2531
+ "additionalProperties": false
2532
+ },
2533
+ {
2534
+ "type": "object",
2535
+ "properties": {
2536
+ "type": {
2537
+ "const": "statblockInline"
2538
+ },
2539
+ "dataType": {
2540
+ "const": "race"
2541
+ },
2542
+ "data": {
2543
+ "$ref": "races.json#/$defs/race"
2544
+ },
2545
+ "style": {
2546
+ "$ref": "#/$defs/_entryDataStyle"
2547
+ },
2548
+ "collapsed": {
2549
+ "const": true
2550
+ }
2551
+ },
2552
+ "required": [
2553
+ "type",
2554
+ "dataType",
2555
+ "data"
2556
+ ],
2557
+ "additionalProperties": false
2558
+ },
2559
+ {
2560
+ "type": "object",
2561
+ "properties": {
2562
+ "type": {
2563
+ "const": "statblockInline"
2564
+ },
2565
+ "dataType": {
2566
+ "const": "recipe"
2567
+ },
2568
+ "data": {
2569
+ "$ref": "recipes.json#/$defs/recipe"
2570
+ },
2571
+ "style": {
2572
+ "$ref": "#/$defs/_entryDataStyle"
2573
+ },
2574
+ "collapsed": {
2575
+ "const": true
2576
+ }
2577
+ },
2578
+ "required": [
2579
+ "type",
2580
+ "dataType",
2581
+ "data"
2582
+ ],
2583
+ "additionalProperties": false
2584
+ },
2585
+ {
2586
+ "type": "object",
2587
+ "properties": {
2588
+ "type": {
2589
+ "const": "statblockInline"
2590
+ },
2591
+ "dataType": {
2592
+ "const": "reward"
2593
+ },
2594
+ "data": {
2595
+ "$ref": "rewards.json#/$defs/reward"
2596
+ },
2597
+ "style": {
2598
+ "$ref": "#/$defs/_entryDataStyle"
2599
+ },
2600
+ "collapsed": {
2601
+ "const": true
2602
+ }
2603
+ },
2604
+ "required": [
2605
+ "type",
2606
+ "dataType",
2607
+ "data"
2608
+ ],
2609
+ "additionalProperties": false
2610
+ },
2611
+ {
2612
+ "type": "object",
2613
+ "properties": {
2614
+ "type": {
2615
+ "const": "statblockInline"
2616
+ },
2617
+ "dataType": {
2618
+ "const": "table"
2619
+ },
2620
+ "data": {
2621
+ "$ref": "tables.json#/$defs/tableData"
2622
+ },
2623
+ "style": {
2624
+ "$ref": "#/$defs/_entryDataStyle"
2625
+ },
2626
+ "collapsed": {
2627
+ "const": true
2628
+ }
2629
+ },
2630
+ "required": [
2631
+ "type",
2632
+ "dataType",
2633
+ "data"
2634
+ ],
2635
+ "additionalProperties": false
2636
+ },
2637
+ {
2638
+ "type": "object",
2639
+ "properties": {
2640
+ "type": {
2641
+ "const": "statblockInline"
2642
+ },
2643
+ "dataType": {
2644
+ "const": "trap"
2645
+ },
2646
+ "data": {
2647
+ "$ref": "trapshazards.json#/$defs/trap"
2648
+ },
2649
+ "style": {
2650
+ "$ref": "#/$defs/_entryDataStyle"
2651
+ },
2652
+ "collapsed": {
2653
+ "const": true
2654
+ }
2655
+ },
2656
+ "required": [
2657
+ "type",
2658
+ "dataType",
2659
+ "data"
2660
+ ],
2661
+ "additionalProperties": false
2662
+ },
2663
+ {
2664
+ "type": "object",
2665
+ "properties": {
2666
+ "type": {
2667
+ "const": "statblockInline"
2668
+ },
2669
+ "dataType": {
2670
+ "const": "hazard"
2671
+ },
2672
+ "data": {
2673
+ "$ref": "trapshazards.json#/$defs/hazard"
2674
+ },
2675
+ "style": {
2676
+ "$ref": "#/$defs/_entryDataStyle"
2677
+ },
2678
+ "collapsed": {
2679
+ "const": true
2680
+ }
2681
+ },
2682
+ "required": [
2683
+ "type",
2684
+ "dataType",
2685
+ "data"
2686
+ ],
2687
+ "additionalProperties": false
2688
+ },
2689
+ {
2690
+ "type": "object",
2691
+ "properties": {
2692
+ "type": {
2693
+ "const": "statblockInline"
2694
+ },
2695
+ "dataType": {
2696
+ "const": "variantrule"
2697
+ },
2698
+ "data": {
2699
+ "$ref": "variantrules.json#/$defs/variantrule"
2700
+ },
2701
+ "style": {
2702
+ "$ref": "#/$defs/_entryDataStyle"
2703
+ },
2704
+ "collapsed": {
2705
+ "const": true
2706
+ }
2707
+ },
2708
+ "required": [
2709
+ "type",
2710
+ "dataType",
2711
+ "data"
2712
+ ],
2713
+ "additionalProperties": false
2714
+ },
2715
+ {
2716
+ "type": "object",
2717
+ "properties": {
2718
+ "type": {
2719
+ "const": "statblockInline"
2720
+ },
2721
+ "dataType": {
2722
+ "const": "vehicle"
2723
+ },
2724
+ "data": {
2725
+ "$ref": "vehicles.json#/$defs/vehicle"
2726
+ },
2727
+ "style": {
2728
+ "$ref": "#/$defs/_entryDataStyle"
2729
+ },
2730
+ "collapsed": {
2731
+ "const": true
2732
+ }
2733
+ },
2734
+ "required": [
2735
+ "type",
2736
+ "dataType",
2737
+ "data"
2738
+ ],
2739
+ "additionalProperties": false
2740
+ },
2741
+ {
2742
+ "type": "object",
2743
+ "properties": {
2744
+ "type": {
2745
+ "const": "statblockInline"
2746
+ },
2747
+ "dataType": {
2748
+ "const": "vehicleUpgrade"
2749
+ },
2750
+ "data": {
2751
+ "$ref": "vehicles.json#/$defs/vehicleUpgrade"
2752
+ },
2753
+ "style": {
2754
+ "$ref": "#/$defs/_entryDataStyle"
2755
+ },
2756
+ "collapsed": {
2757
+ "const": true
2758
+ }
2759
+ },
2760
+ "required": [
2761
+ "type",
2762
+ "dataType",
2763
+ "data"
2764
+ ],
2765
+ "additionalProperties": false
2766
+ },
2767
+ {
2768
+ "type": "object",
2769
+ "properties": {
2770
+ "type": {
2771
+ "const": "statblockInline"
2772
+ },
2773
+ "dataType": {
2774
+ "const": "skill"
2775
+ },
2776
+ "data": {
2777
+ "$ref": "skills.json#/$defs/skill"
2778
+ },
2779
+ "style": {
2780
+ "$ref": "#/$defs/_entryDataStyle"
2781
+ },
2782
+ "collapsed": {
2783
+ "const": true
2784
+ }
2785
+ },
2786
+ "required": [
2787
+ "type",
2788
+ "dataType",
2789
+ "data"
2790
+ ],
2791
+ "additionalProperties": false
2792
+ },
2793
+ {
2794
+ "type": "object",
2795
+ "properties": {
2796
+ "type": {
2797
+ "const": "statblockInline"
2798
+ },
2799
+ "dataType": {
2800
+ "const": "sense"
2801
+ },
2802
+ "data": {
2803
+ "$ref": "senses.json#/$defs/sense"
2804
+ },
2805
+ "style": {
2806
+ "$ref": "#/$defs/_entryDataStyle"
2807
+ },
2808
+ "collapsed": {
2809
+ "const": true
2810
+ }
2811
+ },
2812
+ "required": [
2813
+ "type",
2814
+ "dataType",
2815
+ "data"
2816
+ ],
2817
+ "additionalProperties": false
2818
+ }
2819
+ ]
2820
+ },
2821
+ "entryStatblock": {
2822
+ "oneOf": [
2823
+ {
2824
+ "type": "object",
2825
+ "properties": {
2826
+ "name": {
2827
+ "type": "string"
2828
+ },
2829
+ "type": {
2830
+ "type": "string",
2831
+ "const": "statblock"
2832
+ },
2833
+ "source": {
2834
+ "type": "string"
2835
+ },
2836
+ "page": {
2837
+ "$ref": "util.json#/$defs/page"
2838
+ },
2839
+ "srd": {
2840
+ "$ref": "util.json#/$defs/srd"
2841
+ },
2842
+ "basicRules": {
2843
+ "$ref": "util.json#/$defs/basicRules"
2844
+ },
2845
+ "data": {
2846
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
2847
+ "type": "object"
2848
+ },
2849
+ "id": {
2850
+ "type": "string"
2851
+ },
2852
+ "tag": {
2853
+ "$ref": "util.json#/$defs/tagNameStats"
2854
+ },
2855
+ "displayName": {
2856
+ "type": "string"
2857
+ },
2858
+ "hash": {
2859
+ "type": "string"
2860
+ },
2861
+ "style": {
2862
+ "$ref": "#/$defs/_entryDataStyle"
2863
+ },
2864
+ "collapsed": {
2865
+ "const": true
2866
+ }
2867
+ },
2868
+ "required": [
2869
+ "type",
2870
+ "tag",
2871
+ "name"
2872
+ ],
2873
+ "additionalProperties": false
2874
+ },
2875
+ {
2876
+ "type": "object",
2877
+ "properties": {
2878
+ "name": {
2879
+ "type": "string"
2880
+ },
2881
+ "type": {
2882
+ "type": "string",
2883
+ "const": "statblock"
2884
+ },
2885
+ "source": {
2886
+ "type": "string"
2887
+ },
2888
+ "page": {
2889
+ "$ref": "util.json#/$defs/page"
2890
+ },
2891
+ "srd": {
2892
+ "$ref": "util.json#/$defs/srd"
2893
+ },
2894
+ "basicRules": {
2895
+ "$ref": "util.json#/$defs/basicRules"
2896
+ },
2897
+ "data": {
2898
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
2899
+ "type": "object"
2900
+ },
2901
+ "id": {
2902
+ "type": "string"
2903
+ },
2904
+ "prop": {
2905
+ "$ref": "util.json#/$defs/propNameStats"
2906
+ },
2907
+ "displayName": {
2908
+ "type": "string"
2909
+ },
2910
+ "hash": {
2911
+ "type": "string"
2912
+ },
2913
+ "style": {
2914
+ "$ref": "#/$defs/_entryDataStyle"
2915
+ },
2916
+ "collapsed": {
2917
+ "const": true
2918
+ }
2919
+ },
2920
+ "required": [
2921
+ "type",
2922
+ "prop",
2923
+ "name",
2924
+ "source"
2925
+ ]
2926
+ }
2927
+ ]
2928
+ },
2929
+ "entryRefClassFeature": {
2930
+ "description": "For use in classes page content only.",
2931
+ "type": "object",
2932
+ "properties": {
2933
+ "type": {
2934
+ "const": "refClassFeature"
2935
+ },
2936
+ "classFeature": {
2937
+ "type": "string"
2938
+ }
2939
+ },
2940
+ "required": [
2941
+ "type",
2942
+ "classFeature"
2943
+ ]
2944
+ },
2945
+ "entryRefSubclassFeature": {
2946
+ "description": "For use in classes page content only.",
2947
+ "type": "object",
2948
+ "properties": {
2949
+ "type": {
2950
+ "const": "refSubclassFeature"
2951
+ },
2952
+ "subclassFeature": {
2953
+ "type": "string"
2954
+ }
2955
+ },
2956
+ "required": [
2957
+ "type",
2958
+ "subclassFeature"
2959
+ ]
2960
+ },
2961
+ "entryRefOptionalfeature": {
2962
+ "description": "For use in classes page content only.",
2963
+ "type": "object",
2964
+ "properties": {
2965
+ "type": {
2966
+ "const": "refOptionalfeature"
2967
+ },
2968
+ "optionalfeature": {
2969
+ "type": "string"
2970
+ },
2971
+ "name": {
2972
+ "type": "string"
2973
+ }
2974
+ },
2975
+ "required": [
2976
+ "type",
2977
+ "optionalfeature"
2978
+ ]
2979
+ },
2980
+ "entryHr": {
2981
+ "type": "object",
2982
+ "properties": {
2983
+ "type": {
2984
+ "const": "hr"
2985
+ }
2986
+ },
2987
+ "required": [
2988
+ "type"
2989
+ ]
2990
+ },
2991
+ "entrySpellcasting": {
2992
+ "type": "object",
2993
+ "properties": {
2994
+ "name": {
2995
+ "type": "string"
2996
+ },
2997
+ "type": {
2998
+ "type": "string"
2999
+ },
3000
+ "source": {
3001
+ "type": "string"
3002
+ },
3003
+ "page": {
3004
+ "$ref": "util.json#/$defs/page"
3005
+ },
3006
+ "srd": {
3007
+ "$ref": "util.json#/$defs/srd"
3008
+ },
3009
+ "basicRules": {
3010
+ "$ref": "util.json#/$defs/basicRules"
3011
+ },
3012
+ "data": {
3013
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
3014
+ "type": "object"
3015
+ },
3016
+ "id": {
3017
+ "type": "string"
3018
+ },
3019
+ "headerEntries": {
3020
+ "type": "array",
3021
+ "items": {
3022
+ "$ref": "#"
3023
+ }
3024
+ },
3025
+ "constant": {
3026
+ "$ref": "#/$defs/_arrayOfSpell"
3027
+ },
3028
+ "will": {
3029
+ "$ref": "#/$defs/_arrayOfSpell"
3030
+ },
3031
+ "ritual": {
3032
+ "$ref": "#/$defs/_arrayOfSpell"
3033
+ },
3034
+ "rest": {
3035
+ "$ref": "#/$defs/entrySpellcasting_frequency"
3036
+ },
3037
+ "daily": {
3038
+ "$ref": "#/$defs/entrySpellcasting_frequency"
3039
+ },
3040
+ "weekly": {
3041
+ "$ref": "#/$defs/entrySpellcasting_frequency"
3042
+ },
3043
+ "yearly": {
3044
+ "$ref": "#/$defs/entrySpellcasting_frequency"
3045
+ },
3046
+ "charges": {
3047
+ "$ref": "#/$defs/entrySpellcasting_frequency"
3048
+ },
3049
+ "spells": {
3050
+ "type": "object",
3051
+ "properties": {
3052
+ "0": {
3053
+ "type": "object",
3054
+ "properties": {
3055
+ "spells": {
3056
+ "type": "array",
3057
+ "uniqueItems": true,
3058
+ "items": {
3059
+ "type": "string"
3060
+ }
3061
+ }
3062
+ },
3063
+ "required": [
3064
+ "spells"
3065
+ ],
3066
+ "additionalProperties": false
3067
+ },
3068
+ "1": {
3069
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3070
+ },
3071
+ "2": {
3072
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3073
+ },
3074
+ "3": {
3075
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3076
+ },
3077
+ "4": {
3078
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3079
+ },
3080
+ "5": {
3081
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3082
+ },
3083
+ "6": {
3084
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3085
+ },
3086
+ "7": {
3087
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3088
+ },
3089
+ "8": {
3090
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3091
+ },
3092
+ "9": {
3093
+ "$ref": "#/$defs/entrySpellcasting_level1to9"
3094
+ }
3095
+ },
3096
+ "additionalProperties": false
3097
+ },
3098
+ "hidden": {
3099
+ "description": "Allows the above properties to be specified, but not rendered. Useful if e.g. a creature can only cast one spell, and this is rendered in the header line.",
3100
+ "type": "array",
3101
+ "items": {
3102
+ "type": "string",
3103
+ "enum": [
3104
+ "constant",
3105
+ "will",
3106
+ "rest",
3107
+ "daily",
3108
+ "weekly",
3109
+ "yearly",
3110
+ "ritual",
3111
+ "spells"
3112
+ ]
3113
+ }
3114
+ },
3115
+ "footerEntries": {
3116
+ "type": "array",
3117
+ "items": {
3118
+ "$ref": "#"
3119
+ }
3120
+ },
3121
+ "ability": {
3122
+ "type": "string",
3123
+ "enum": [
3124
+ "str",
3125
+ "dex",
3126
+ "con",
3127
+ "int",
3128
+ "wis",
3129
+ "cha"
3130
+ ]
3131
+ },
3132
+ "displayAs": {
3133
+ "description": "Implicitly \"trait\"",
3134
+ "type": "string",
3135
+ "enum": [
3136
+ "trait",
3137
+ "action"
3138
+ ]
3139
+ },
3140
+ "chargesItem": {
3141
+ "type": "string",
3142
+ "description": "The UID of an item which provides the charges required to cast any \"charges\" spells."
3143
+ }
3144
+ },
3145
+ "required": [
3146
+ "type",
3147
+ "name"
3148
+ ],
3149
+ "additionalProperties": false
3150
+ },
3151
+ "entrySpellcasting_level1to9": {
3152
+ "type": "object",
3153
+ "properties": {
3154
+ "lower": {
3155
+ "type": "number"
3156
+ },
3157
+ "slots": {
3158
+ "type": "number"
3159
+ },
3160
+ "spells": {
3161
+ "type": "array",
3162
+ "uniqueItems": true,
3163
+ "items": {
3164
+ "type": "string"
3165
+ }
3166
+ }
3167
+ },
3168
+ "required": [
3169
+ "spells"
3170
+ ],
3171
+ "additionalProperties": false
3172
+ },
3173
+ "entrySpellcasting_frequency": {
3174
+ "type": "object",
3175
+ "properties": {
3176
+ "1": {
3177
+ "$ref": "#/$defs/_arrayOfSpell"
3178
+ },
3179
+ "2": {
3180
+ "$ref": "#/$defs/_arrayOfSpell"
3181
+ },
3182
+ "3": {
3183
+ "$ref": "#/$defs/_arrayOfSpell"
3184
+ },
3185
+ "4": {
3186
+ "$ref": "#/$defs/_arrayOfSpell"
3187
+ },
3188
+ "5": {
3189
+ "$ref": "#/$defs/_arrayOfSpell"
3190
+ },
3191
+ "6": {
3192
+ "$ref": "#/$defs/_arrayOfSpell"
3193
+ },
3194
+ "7": {
3195
+ "$ref": "#/$defs/_arrayOfSpell"
3196
+ },
3197
+ "8": {
3198
+ "$ref": "#/$defs/_arrayOfSpell"
3199
+ },
3200
+ "9": {
3201
+ "$ref": "#/$defs/_arrayOfSpell"
3202
+ },
3203
+ "9e": {
3204
+ "$ref": "#/$defs/_arrayOfSpell"
3205
+ },
3206
+ "8e": {
3207
+ "$ref": "#/$defs/_arrayOfSpell"
3208
+ },
3209
+ "7e": {
3210
+ "$ref": "#/$defs/_arrayOfSpell"
3211
+ },
3212
+ "6e": {
3213
+ "$ref": "#/$defs/_arrayOfSpell"
3214
+ },
3215
+ "5e": {
3216
+ "$ref": "#/$defs/_arrayOfSpell"
3217
+ },
3218
+ "4e": {
3219
+ "$ref": "#/$defs/_arrayOfSpell"
3220
+ },
3221
+ "3e": {
3222
+ "$ref": "#/$defs/_arrayOfSpell"
3223
+ },
3224
+ "2e": {
3225
+ "$ref": "#/$defs/_arrayOfSpell"
3226
+ },
3227
+ "1e": {
3228
+ "$ref": "#/$defs/_arrayOfSpell"
3229
+ }
3230
+ },
3231
+ "additionalProperties": false
3232
+ },
3233
+ "entryWrapped": {
3234
+ "type": "object",
3235
+ "properties": {
3236
+ "name": {
3237
+ "type": "string"
3238
+ },
3239
+ "type": {
3240
+ "type": "string",
3241
+ "const": "wrapper"
3242
+ },
3243
+ "source": {
3244
+ "type": "string"
3245
+ },
3246
+ "page": {
3247
+ "$ref": "util.json#/$defs/page"
3248
+ },
3249
+ "srd": {
3250
+ "$ref": "util.json#/$defs/srd"
3251
+ },
3252
+ "basicRules": {
3253
+ "$ref": "util.json#/$defs/basicRules"
3254
+ },
3255
+ "data": {
3256
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
3257
+ "type": "object"
3258
+ },
3259
+ "id": {
3260
+ "type": "string"
3261
+ },
3262
+ "wrapped": {}
3263
+ },
3264
+ "required": [
3265
+ "type",
3266
+ "wrapped"
3267
+ ],
3268
+ "additionalProperties": false
3269
+ },
3270
+ "dataDamImmune": {
3271
+ "oneOf": [
3272
+ {
3273
+ "$ref": "util.json#/$defs/dataDamageType"
3274
+ },
3275
+ {
3276
+ "type": "object",
3277
+ "properties": {
3278
+ "special": {
3279
+ "type": "string"
3280
+ }
3281
+ },
3282
+ "additionalProperties": false,
3283
+ "required": [
3284
+ "special"
3285
+ ]
3286
+ },
3287
+ {
3288
+ "type": "object",
3289
+ "properties": {
3290
+ "preNote": {
3291
+ "type": "string"
3292
+ },
3293
+ "immune": {
3294
+ "type": "array",
3295
+ "items": {
3296
+ "$ref": "#/$defs/dataDamImmune"
3297
+ }
3298
+ },
3299
+ "note": {
3300
+ "type": "string"
3301
+ }
3302
+ },
3303
+ "additionalProperties": false,
3304
+ "required": [
3305
+ "immune"
3306
+ ]
3307
+ }
3308
+ ]
3309
+ },
3310
+ "dataCondImmune": {
3311
+ "oneOf": [
3312
+ {
3313
+ "$ref": "util.json#/$defs/dataCondition"
3314
+ },
3315
+ {
3316
+ "type": "object",
3317
+ "properties": {
3318
+ "special": {
3319
+ "type": "string"
3320
+ }
3321
+ },
3322
+ "additionalProperties": false,
3323
+ "required": [
3324
+ "special"
3325
+ ]
3326
+ },
3327
+ {
3328
+ "type": "object",
3329
+ "properties": {
3330
+ "preNote": {
3331
+ "type": "string"
3332
+ },
3333
+ "conditionImmune": {
3334
+ "type": "array",
3335
+ "items": {
3336
+ "$ref": "util.json#/$defs/dataCondition"
3337
+ }
3338
+ },
3339
+ "note": {
3340
+ "type": "string"
3341
+ }
3342
+ },
3343
+ "additionalProperties": false,
3344
+ "required": [
3345
+ "conditionImmune"
3346
+ ]
3347
+ }
3348
+ ]
3349
+ },
3350
+ "entryHomebrew": {
3351
+ "type": "object",
3352
+ "properties": {
3353
+ "name": {
3354
+ "type": "string"
3355
+ },
3356
+ "type": {
3357
+ "type": "string",
3358
+ "const": "homebrew"
3359
+ },
3360
+ "source": {
3361
+ "type": "string"
3362
+ },
3363
+ "page": {
3364
+ "$ref": "util.json#/$defs/page"
3365
+ },
3366
+ "srd": {
3367
+ "$ref": "util.json#/$defs/srd"
3368
+ },
3369
+ "basicRules": {
3370
+ "$ref": "util.json#/$defs/basicRules"
3371
+ },
3372
+ "data": {
3373
+ "description": "A generic object for storing special data for external use-cases. Keys prefixed with \"rd-\" should be added as \"data-\" HTML attributes when rendering to HTML.",
3374
+ "type": "object"
3375
+ },
3376
+ "id": {
3377
+ "type": "string"
3378
+ },
3379
+ "entries": {
3380
+ "type": "array",
3381
+ "items": {
3382
+ "$ref": "#"
3383
+ }
3384
+ },
3385
+ "movedTo": {
3386
+ "$ref": "#"
3387
+ },
3388
+ "oldEntries": {
3389
+ "type": "array",
3390
+ "items": {
3391
+ "$ref": "#"
3392
+ }
3393
+ }
3394
+ },
3395
+ "required": [
3396
+ "type"
3397
+ ],
3398
+ "additionalProperties": false
3399
+ }
3400
+ },
3401
+ "anyOf": [
3402
+ {
3403
+ "$ref": "#/$defs/entrySection"
3404
+ },
3405
+ {
3406
+ "$ref": "#/$defs/entryEntries"
3407
+ },
3408
+ {
3409
+ "$ref": "#/$defs/entryHomebrew"
3410
+ },
3411
+ {
3412
+ "$ref": "#/$defs/entryQuote"
3413
+ },
3414
+ {
3415
+ "$ref": "#/$defs/entryInlineEntries"
3416
+ },
3417
+ {
3418
+ "$ref": "#/$defs/entryEntriesInlineEntries"
3419
+ },
3420
+ {
3421
+ "$ref": "#/$defs/entryOptions"
3422
+ },
3423
+ {
3424
+ "$ref": "#/$defs/entryTableGroup"
3425
+ },
3426
+ {
3427
+ "$ref": "#/$defs/entryTable"
3428
+ },
3429
+ {
3430
+ "$ref": "#/$defs/entryTableRow"
3431
+ },
3432
+ {
3433
+ "$ref": "#/$defs/entryTableCell"
3434
+ },
3435
+ {
3436
+ "$ref": "#/$defs/entryList"
3437
+ },
3438
+ {
3439
+ "$ref": "#/$defs/entryBonus"
3440
+ },
3441
+ {
3442
+ "$ref": "#/$defs/entryBonusSpeed"
3443
+ },
3444
+ {
3445
+ "$ref": "#/$defs/entryDice"
3446
+ },
3447
+ {
3448
+ "$ref": "#/$defs/entryAbilityDc"
3449
+ },
3450
+ {
3451
+ "$ref": "#/$defs/entryAbilityAttackMod"
3452
+ },
3453
+ {
3454
+ "$ref": "#/$defs/abilityGeneric"
3455
+ },
3456
+ {
3457
+ "$ref": "#/$defs/entryLink"
3458
+ },
3459
+ {
3460
+ "$ref": "#/$defs/entryOptFeature"
3461
+ },
3462
+ {
3463
+ "$ref": "#/$defs/entryInset"
3464
+ },
3465
+ {
3466
+ "$ref": "#/$defs/entryInsetReadaloud"
3467
+ },
3468
+ {
3469
+ "$ref": "#/$defs/entryVariant"
3470
+ },
3471
+ {
3472
+ "$ref": "#/$defs/entryVariantInner"
3473
+ },
3474
+ {
3475
+ "$ref": "#/$defs/entryVariantSub"
3476
+ },
3477
+ {
3478
+ "$ref": "#/$defs/entryItem"
3479
+ },
3480
+ {
3481
+ "$ref": "#/$defs/entryItemSub"
3482
+ },
3483
+ {
3484
+ "$ref": "#/$defs/entryItemSpell"
3485
+ },
3486
+ {
3487
+ "$ref": "#/$defs/entryImage"
3488
+ },
3489
+ {
3490
+ "$ref": "#/$defs/entryGallery"
3491
+ },
3492
+ {
3493
+ "$ref": "#/$defs/entryActions"
3494
+ },
3495
+ {
3496
+ "$ref": "#/$defs/entryAttack"
3497
+ },
3498
+ {
3499
+ "$ref": "#/$defs/entryStatblockInline"
3500
+ },
3501
+ {
3502
+ "$ref": "#/$defs/entryStatblock"
3503
+ },
3504
+ {
3505
+ "$ref": "#/$defs/entryRefClassFeature"
3506
+ },
3507
+ {
3508
+ "$ref": "#/$defs/entryRefSubclassFeature"
3509
+ },
3510
+ {
3511
+ "$ref": "#/$defs/entryRefOptionalfeature"
3512
+ },
3513
+ {
3514
+ "$ref": "#/$defs/entryHr"
3515
+ },
3516
+ {
3517
+ "$ref": "#/$defs/entrySpellcasting"
3518
+ },
3519
+ {
3520
+ "$ref": "#/$defs/entryFlowchart"
3521
+ },
3522
+ {
3523
+ "$ref": "#/$defs/entryFlowBlock"
3524
+ },
3525
+ {
3526
+ "$ref": "#/$defs/entryIngredient"
3527
+ },
3528
+ {
3529
+ "$ref": "#/$defs/entryWrapped"
3530
+ },
3531
+ {
3532
+ "type": "string"
3533
+ },
3534
+ {
3535
+ "type": "integer"
3536
+ }
3537
+ ]
3538
+ }