5etools-utils 0.2.2 → 0.3.1

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 (312) hide show
  1. package/lib/Api.js +1 -1
  2. package/lib/TestJson.js +43 -19
  3. package/lib/UtilMisc.js +36 -17
  4. package/package.json +6 -3
  5. package/schema/brew/actions.json +109 -0
  6. package/schema/brew/adventure/adventure.json +12 -0
  7. package/schema/brew/adventures.json +249 -0
  8. package/schema/brew/backgrounds.json +425 -0
  9. package/schema/brew/bestiary/bestiary.json +3766 -0
  10. package/schema/brew/bestiary/fluff-bestiary.json +15 -0
  11. package/schema/brew/bestiary/fluff-index.json +11 -0
  12. package/schema/brew/bestiary/foundry.json +15 -0
  13. package/schema/brew/bestiary/index.json +11 -0
  14. package/schema/brew/bestiary/legendarygroups.json +202 -0
  15. package/schema/brew/bestiary/traits.json +85 -0
  16. package/schema/brew/book/book.json +12 -0
  17. package/schema/brew/books.json +137 -0
  18. package/schema/brew/changelog.json +35 -0
  19. package/schema/brew/charcreationoptions.json +96 -0
  20. package/schema/brew/class/class.json +2059 -0
  21. package/schema/brew/class/foundry.json +373 -0
  22. package/schema/brew/class/index.json +11 -0
  23. package/schema/brew/conditionsdiseases.json +103 -0
  24. package/schema/brew/cultsboons.json +196 -0
  25. package/schema/brew/deities.json +482 -0
  26. package/schema/brew/encounters.json +99 -0
  27. package/schema/brew/entry.json +3538 -0
  28. package/schema/brew/feats.json +215 -0
  29. package/schema/brew/fluff-backgrounds.json +15 -0
  30. package/schema/brew/fluff-charcreationoptions.json +43 -0
  31. package/schema/brew/fluff-conditionsdiseases.json +43 -0
  32. package/schema/brew/fluff-feats.json +15 -0
  33. package/schema/brew/fluff-items.json +15 -0
  34. package/schema/brew/fluff-languages.json +42 -0
  35. package/schema/brew/fluff-objects.json +15 -0
  36. package/schema/brew/fluff-races.json +214 -0
  37. package/schema/brew/fluff-recipes.json +42 -0
  38. package/schema/brew/fluff-vehicles.json +63 -0
  39. package/schema/brew/foundry-actions.json +15 -0
  40. package/schema/brew/foundry-backgrounds.json +47 -0
  41. package/schema/brew/foundry-feats.json +15 -0
  42. package/schema/brew/foundry-items.json +57 -0
  43. package/schema/brew/foundry-optionalfeatures.json +15 -0
  44. package/schema/brew/foundry-psionics.json +50 -0
  45. package/schema/brew/foundry-races.json +52 -0
  46. package/schema/brew/foundry-rewards.json +15 -0
  47. package/schema/brew/foundry-vehicles.json +15 -0
  48. package/schema/brew/generated/bookref-quick.json +72 -0
  49. package/schema/brew/homebrew.json +564 -0
  50. package/schema/brew/items-base.json +460 -0
  51. package/schema/brew/items-shared.json +295 -0
  52. package/schema/brew/items.json +1866 -0
  53. package/schema/brew/languages.json +127 -0
  54. package/schema/brew/life.json +17 -0
  55. package/schema/brew/loot.json +510 -0
  56. package/schema/brew/magicvariants.json +387 -0
  57. package/schema/brew/makebrew-creature.json +40 -0
  58. package/schema/brew/makecards.json +43 -0
  59. package/schema/brew/monsterfeatures.json +53 -0
  60. package/schema/brew/msbcr.json +60 -0
  61. package/schema/brew/names.json +91 -0
  62. package/schema/brew/objects.json +172 -0
  63. package/schema/brew/optionalfeatures.json +139 -0
  64. package/schema/brew/psionics.json +185 -0
  65. package/schema/brew/races.json +1799 -0
  66. package/schema/brew/recipes.json +191 -0
  67. package/schema/brew/renderdemo.json +16 -0
  68. package/schema/brew/rewards.json +102 -0
  69. package/schema/brew/senses.json +54 -0
  70. package/schema/brew/skills.json +54 -0
  71. package/schema/brew/spells/fluff-index.json +11 -0
  72. package/schema/brew/spells/fluff-spells.json +15 -0
  73. package/schema/brew/spells/foundry.json +15 -0
  74. package/schema/brew/spells/index.json +11 -0
  75. package/schema/brew/spells/roll20.json +112 -0
  76. package/schema/brew/spells/spells.json +1841 -0
  77. package/schema/brew/tables.json +202 -0
  78. package/schema/brew/trapshazards.json +249 -0
  79. package/schema/brew/util.json +3867 -0
  80. package/schema/brew/variantrules.json +74 -0
  81. package/schema/brew/vehicles.json +854 -0
  82. package/schema/brew-fast/actions.json +109 -0
  83. package/schema/brew-fast/adventure/adventure.json +12 -0
  84. package/schema/brew-fast/adventures.json +249 -0
  85. package/schema/brew-fast/backgrounds.json +425 -0
  86. package/schema/brew-fast/bestiary/bestiary.json +3766 -0
  87. package/schema/brew-fast/bestiary/fluff-bestiary.json +15 -0
  88. package/schema/brew-fast/bestiary/fluff-index.json +11 -0
  89. package/schema/brew-fast/bestiary/foundry.json +15 -0
  90. package/schema/brew-fast/bestiary/index.json +11 -0
  91. package/schema/brew-fast/bestiary/legendarygroups.json +202 -0
  92. package/schema/brew-fast/bestiary/traits.json +85 -0
  93. package/schema/brew-fast/book/book.json +12 -0
  94. package/schema/brew-fast/books.json +137 -0
  95. package/schema/brew-fast/changelog.json +35 -0
  96. package/schema/brew-fast/charcreationoptions.json +96 -0
  97. package/schema/brew-fast/class/class.json +2059 -0
  98. package/schema/brew-fast/class/foundry.json +373 -0
  99. package/schema/brew-fast/class/index.json +11 -0
  100. package/schema/brew-fast/conditionsdiseases.json +103 -0
  101. package/schema/brew-fast/cultsboons.json +196 -0
  102. package/schema/brew-fast/deities.json +482 -0
  103. package/schema/brew-fast/encounters.json +99 -0
  104. package/schema/brew-fast/entry.json +3538 -0
  105. package/schema/brew-fast/feats.json +215 -0
  106. package/schema/brew-fast/fluff-backgrounds.json +15 -0
  107. package/schema/brew-fast/fluff-charcreationoptions.json +43 -0
  108. package/schema/brew-fast/fluff-conditionsdiseases.json +43 -0
  109. package/schema/brew-fast/fluff-feats.json +15 -0
  110. package/schema/brew-fast/fluff-items.json +15 -0
  111. package/schema/brew-fast/fluff-languages.json +42 -0
  112. package/schema/brew-fast/fluff-objects.json +15 -0
  113. package/schema/brew-fast/fluff-races.json +214 -0
  114. package/schema/brew-fast/fluff-recipes.json +42 -0
  115. package/schema/brew-fast/fluff-vehicles.json +63 -0
  116. package/schema/brew-fast/foundry-actions.json +15 -0
  117. package/schema/brew-fast/foundry-backgrounds.json +47 -0
  118. package/schema/brew-fast/foundry-feats.json +15 -0
  119. package/schema/brew-fast/foundry-items.json +57 -0
  120. package/schema/brew-fast/foundry-optionalfeatures.json +15 -0
  121. package/schema/brew-fast/foundry-psionics.json +50 -0
  122. package/schema/brew-fast/foundry-races.json +52 -0
  123. package/schema/brew-fast/foundry-rewards.json +15 -0
  124. package/schema/brew-fast/foundry-vehicles.json +15 -0
  125. package/schema/brew-fast/generated/bookref-quick.json +72 -0
  126. package/schema/brew-fast/homebrew.json +562 -0
  127. package/schema/brew-fast/items-base.json +460 -0
  128. package/schema/brew-fast/items-shared.json +295 -0
  129. package/schema/brew-fast/items.json +1866 -0
  130. package/schema/brew-fast/languages.json +127 -0
  131. package/schema/brew-fast/life.json +17 -0
  132. package/schema/brew-fast/loot.json +510 -0
  133. package/schema/brew-fast/magicvariants.json +387 -0
  134. package/schema/brew-fast/makebrew-creature.json +40 -0
  135. package/schema/brew-fast/makecards.json +43 -0
  136. package/schema/brew-fast/monsterfeatures.json +53 -0
  137. package/schema/brew-fast/msbcr.json +60 -0
  138. package/schema/brew-fast/names.json +91 -0
  139. package/schema/brew-fast/objects.json +172 -0
  140. package/schema/brew-fast/optionalfeatures.json +139 -0
  141. package/schema/brew-fast/psionics.json +185 -0
  142. package/schema/brew-fast/races.json +1799 -0
  143. package/schema/brew-fast/recipes.json +191 -0
  144. package/schema/brew-fast/renderdemo.json +16 -0
  145. package/schema/brew-fast/rewards.json +102 -0
  146. package/schema/brew-fast/senses.json +54 -0
  147. package/schema/brew-fast/skills.json +54 -0
  148. package/schema/brew-fast/spells/fluff-index.json +11 -0
  149. package/schema/brew-fast/spells/fluff-spells.json +15 -0
  150. package/schema/brew-fast/spells/foundry.json +15 -0
  151. package/schema/brew-fast/spells/index.json +11 -0
  152. package/schema/brew-fast/spells/roll20.json +112 -0
  153. package/schema/brew-fast/spells/spells.json +1841 -0
  154. package/schema/brew-fast/tables.json +202 -0
  155. package/schema/brew-fast/trapshazards.json +249 -0
  156. package/schema/brew-fast/util.json +3867 -0
  157. package/schema/brew-fast/variantrules.json +74 -0
  158. package/schema/brew-fast/vehicles.json +854 -0
  159. package/schema/site/actions.json +97 -0
  160. package/schema/site/adventure/adventure.json +12 -0
  161. package/schema/site/adventures.json +211 -0
  162. package/schema/site/backgrounds.json +306 -0
  163. package/schema/site/bestiary/bestiary.json +3537 -0
  164. package/schema/site/bestiary/fluff-bestiary.json +15 -0
  165. package/schema/site/bestiary/fluff-index.json +11 -0
  166. package/schema/site/bestiary/foundry.json +15 -0
  167. package/schema/site/bestiary/index.json +11 -0
  168. package/schema/site/bestiary/legendarygroups.json +202 -0
  169. package/schema/site/bestiary/traits.json +85 -0
  170. package/schema/site/book/book.json +12 -0
  171. package/schema/site/books.json +137 -0
  172. package/schema/site/changelog.json +35 -0
  173. package/schema/site/charcreationoptions.json +80 -0
  174. package/schema/site/class/class.json +1792 -0
  175. package/schema/site/class/foundry.json +373 -0
  176. package/schema/site/class/index.json +11 -0
  177. package/schema/site/conditionsdiseases.json +82 -0
  178. package/schema/site/cultsboons.json +172 -0
  179. package/schema/site/deities.json +461 -0
  180. package/schema/site/encounters.json +99 -0
  181. package/schema/site/entry.json +3471 -0
  182. package/schema/site/feats.json +199 -0
  183. package/schema/site/fluff-backgrounds.json +15 -0
  184. package/schema/site/fluff-charcreationoptions.json +43 -0
  185. package/schema/site/fluff-conditionsdiseases.json +43 -0
  186. package/schema/site/fluff-feats.json +15 -0
  187. package/schema/site/fluff-items.json +15 -0
  188. package/schema/site/fluff-languages.json +42 -0
  189. package/schema/site/fluff-objects.json +15 -0
  190. package/schema/site/fluff-races.json +214 -0
  191. package/schema/site/fluff-recipes.json +42 -0
  192. package/schema/site/fluff-vehicles.json +63 -0
  193. package/schema/site/foundry-actions.json +15 -0
  194. package/schema/site/foundry-backgrounds.json +47 -0
  195. package/schema/site/foundry-feats.json +15 -0
  196. package/schema/site/foundry-items.json +57 -0
  197. package/schema/site/foundry-optionalfeatures.json +15 -0
  198. package/schema/site/foundry-psionics.json +50 -0
  199. package/schema/site/foundry-races.json +52 -0
  200. package/schema/site/foundry-rewards.json +15 -0
  201. package/schema/site/foundry-vehicles.json +15 -0
  202. package/schema/site/generated/bookref-quick.json +72 -0
  203. package/schema/site/homebrew.json +564 -0
  204. package/schema/site/items-base.json +425 -0
  205. package/schema/site/items-shared.json +259 -0
  206. package/schema/site/items.json +1722 -0
  207. package/schema/site/languages.json +120 -0
  208. package/schema/site/life.json +17 -0
  209. package/schema/site/loot.json +510 -0
  210. package/schema/site/magicvariants.json +355 -0
  211. package/schema/site/makebrew-creature.json +39 -0
  212. package/schema/site/makecards.json +43 -0
  213. package/schema/site/monsterfeatures.json +53 -0
  214. package/schema/site/msbcr.json +60 -0
  215. package/schema/site/names.json +91 -0
  216. package/schema/site/objects.json +165 -0
  217. package/schema/site/optionalfeatures.json +127 -0
  218. package/schema/site/psionics.json +173 -0
  219. package/schema/site/races.json +1708 -0
  220. package/schema/site/recipes.json +185 -0
  221. package/schema/site/renderdemo.json +16 -0
  222. package/schema/site/rewards.json +90 -0
  223. package/schema/site/senses.json +54 -0
  224. package/schema/site/skills.json +54 -0
  225. package/schema/site/spells/fluff-index.json +11 -0
  226. package/schema/site/spells/fluff-spells.json +15 -0
  227. package/schema/site/spells/foundry.json +15 -0
  228. package/schema/site/spells/index.json +11 -0
  229. package/schema/site/spells/roll20.json +112 -0
  230. package/schema/site/spells/spells.json +1238 -0
  231. package/schema/site/tables.json +185 -0
  232. package/schema/site/trapshazards.json +227 -0
  233. package/schema/site/util.json +3857 -0
  234. package/schema/site/variantrules.json +71 -0
  235. package/schema/site/vehicles.json +807 -0
  236. package/schema/site-fast/actions.json +97 -0
  237. package/schema/site-fast/adventure/adventure.json +12 -0
  238. package/schema/site-fast/adventures.json +211 -0
  239. package/schema/site-fast/backgrounds.json +306 -0
  240. package/schema/site-fast/bestiary/bestiary.json +3537 -0
  241. package/schema/site-fast/bestiary/fluff-bestiary.json +15 -0
  242. package/schema/site-fast/bestiary/fluff-index.json +11 -0
  243. package/schema/site-fast/bestiary/foundry.json +15 -0
  244. package/schema/site-fast/bestiary/index.json +11 -0
  245. package/schema/site-fast/bestiary/legendarygroups.json +202 -0
  246. package/schema/site-fast/bestiary/traits.json +85 -0
  247. package/schema/site-fast/book/book.json +12 -0
  248. package/schema/site-fast/books.json +137 -0
  249. package/schema/site-fast/changelog.json +35 -0
  250. package/schema/site-fast/charcreationoptions.json +80 -0
  251. package/schema/site-fast/class/class.json +1792 -0
  252. package/schema/site-fast/class/foundry.json +373 -0
  253. package/schema/site-fast/class/index.json +11 -0
  254. package/schema/site-fast/conditionsdiseases.json +82 -0
  255. package/schema/site-fast/cultsboons.json +172 -0
  256. package/schema/site-fast/deities.json +461 -0
  257. package/schema/site-fast/encounters.json +99 -0
  258. package/schema/site-fast/entry.json +3471 -0
  259. package/schema/site-fast/feats.json +199 -0
  260. package/schema/site-fast/fluff-backgrounds.json +15 -0
  261. package/schema/site-fast/fluff-charcreationoptions.json +43 -0
  262. package/schema/site-fast/fluff-conditionsdiseases.json +43 -0
  263. package/schema/site-fast/fluff-feats.json +15 -0
  264. package/schema/site-fast/fluff-items.json +15 -0
  265. package/schema/site-fast/fluff-languages.json +42 -0
  266. package/schema/site-fast/fluff-objects.json +15 -0
  267. package/schema/site-fast/fluff-races.json +214 -0
  268. package/schema/site-fast/fluff-recipes.json +42 -0
  269. package/schema/site-fast/fluff-vehicles.json +63 -0
  270. package/schema/site-fast/foundry-actions.json +15 -0
  271. package/schema/site-fast/foundry-backgrounds.json +47 -0
  272. package/schema/site-fast/foundry-feats.json +15 -0
  273. package/schema/site-fast/foundry-items.json +57 -0
  274. package/schema/site-fast/foundry-optionalfeatures.json +15 -0
  275. package/schema/site-fast/foundry-psionics.json +50 -0
  276. package/schema/site-fast/foundry-races.json +52 -0
  277. package/schema/site-fast/foundry-rewards.json +15 -0
  278. package/schema/site-fast/foundry-vehicles.json +15 -0
  279. package/schema/site-fast/generated/bookref-quick.json +72 -0
  280. package/schema/site-fast/homebrew.json +562 -0
  281. package/schema/site-fast/items-base.json +425 -0
  282. package/schema/site-fast/items-shared.json +259 -0
  283. package/schema/site-fast/items.json +1722 -0
  284. package/schema/site-fast/languages.json +120 -0
  285. package/schema/site-fast/life.json +17 -0
  286. package/schema/site-fast/loot.json +510 -0
  287. package/schema/site-fast/magicvariants.json +355 -0
  288. package/schema/site-fast/makebrew-creature.json +39 -0
  289. package/schema/site-fast/makecards.json +43 -0
  290. package/schema/site-fast/monsterfeatures.json +53 -0
  291. package/schema/site-fast/msbcr.json +60 -0
  292. package/schema/site-fast/names.json +91 -0
  293. package/schema/site-fast/objects.json +165 -0
  294. package/schema/site-fast/optionalfeatures.json +127 -0
  295. package/schema/site-fast/psionics.json +173 -0
  296. package/schema/site-fast/races.json +1708 -0
  297. package/schema/site-fast/recipes.json +185 -0
  298. package/schema/site-fast/renderdemo.json +16 -0
  299. package/schema/site-fast/rewards.json +90 -0
  300. package/schema/site-fast/senses.json +54 -0
  301. package/schema/site-fast/skills.json +54 -0
  302. package/schema/site-fast/spells/fluff-index.json +11 -0
  303. package/schema/site-fast/spells/fluff-spells.json +15 -0
  304. package/schema/site-fast/spells/foundry.json +15 -0
  305. package/schema/site-fast/spells/index.json +11 -0
  306. package/schema/site-fast/spells/roll20.json +112 -0
  307. package/schema/site-fast/spells/spells.json +1238 -0
  308. package/schema/site-fast/tables.json +185 -0
  309. package/schema/site-fast/trapshazards.json +227 -0
  310. package/schema/site-fast/util.json +3857 -0
  311. package/schema/site-fast/variantrules.json +71 -0
  312. 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
+ }