5etools-utils 0.15.17 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/README.md +13 -13
  2. package/bin/clean-html.js +0 -0
  3. package/bin/lint-js-changed.js +17 -0
  4. package/bin/test-edition-sources.js +0 -0
  5. package/bin/test-file-contents.js +0 -0
  6. package/bin/test-file-locations.js +0 -0
  7. package/bin/test-file-names.js +0 -0
  8. package/bin/test-file-props.js +0 -0
  9. package/bin/test-img-file-extensions.js +0 -0
  10. package/bin/test-img-file-sizes.js +0 -0
  11. package/bin/test-img-source-names-brew.js +0 -0
  12. package/bin/test-img-source-names-ua.js +0 -0
  13. package/bin/test-json-brew.js +0 -0
  14. package/bin/test-json-ua.js +0 -0
  15. package/lib/Lint/LintJsChanged.js +33 -0
  16. package/lib/UtilGit.js +39 -0
  17. package/lib/eslint/eslint-plugin-jquery.js +49 -0
  18. package/package.json +16 -6
  19. package/schema/brew/charcreationoptions.json +162 -8
  20. package/schema/brew/cultsboons.json +399 -14
  21. package/schema/brew/encounterbuilder.json +81 -2
  22. package/schema/brew/fluff-charcreationoptions.json +5 -33
  23. package/schema/brew/homebrew.json +8 -2
  24. package/schema/brew/items-base.json +290 -28
  25. package/schema/brew/languages.json +195 -6
  26. package/schema/brew/objects.json +389 -9
  27. package/schema/brew/psionics.json +356 -7
  28. package/schema/brew/rewards.json +207 -8
  29. package/schema/brew/senses.json +68 -7
  30. package/schema/brew/skills.json +74 -7
  31. package/schema/brew/tables.json +676 -94
  32. package/schema/brew/trapshazards.json +571 -14
  33. package/schema/brew/util-copy.json +143 -1
  34. package/schema/brew/util.json +4 -2
  35. package/schema/brew/variantrules.json +151 -22
  36. package/schema/brew/vehicles.json +6672 -61
  37. package/schema/brew-fast/charcreationoptions.json +162 -8
  38. package/schema/brew-fast/cultsboons.json +399 -14
  39. package/schema/brew-fast/encounterbuilder.json +81 -2
  40. package/schema/brew-fast/fluff-charcreationoptions.json +5 -33
  41. package/schema/brew-fast/homebrew.json +8 -2
  42. package/schema/brew-fast/items-base.json +290 -28
  43. package/schema/brew-fast/languages.json +195 -6
  44. package/schema/brew-fast/objects.json +389 -9
  45. package/schema/brew-fast/psionics.json +356 -7
  46. package/schema/brew-fast/rewards.json +207 -8
  47. package/schema/brew-fast/senses.json +68 -7
  48. package/schema/brew-fast/skills.json +74 -7
  49. package/schema/brew-fast/tables.json +676 -94
  50. package/schema/brew-fast/trapshazards.json +571 -14
  51. package/schema/brew-fast/util-copy.json +143 -1
  52. package/schema/brew-fast/util.json +4 -2
  53. package/schema/brew-fast/variantrules.json +151 -22
  54. package/schema/brew-fast/vehicles.json +6672 -61
  55. package/schema/site/charcreationoptions.json +134 -8
  56. package/schema/site/cultsboons.json +315 -14
  57. package/schema/site/encounterbuilder.json +81 -2
  58. package/schema/site/fluff-charcreationoptions.json +5 -33
  59. package/schema/site/homebrew.json +8 -2
  60. package/schema/site/items-base.json +374 -40
  61. package/schema/site/languages.json +197 -6
  62. package/schema/site/objects.json +361 -9
  63. package/schema/site/psionics.json +314 -7
  64. package/schema/site/rewards.json +165 -8
  65. package/schema/site/senses.json +92 -7
  66. package/schema/site/skills.json +98 -7
  67. package/schema/site/tables.json +600 -87
  68. package/schema/site/trapshazards.json +555 -14
  69. package/schema/site/util-copy.json +143 -1
  70. package/schema/site/util.json +4 -2
  71. package/schema/site/variantrules.json +161 -22
  72. package/schema/site/vehicles.json +6446 -86
  73. package/schema/site-fast/charcreationoptions.json +134 -8
  74. package/schema/site-fast/cultsboons.json +315 -14
  75. package/schema/site-fast/encounterbuilder.json +81 -2
  76. package/schema/site-fast/fluff-charcreationoptions.json +5 -33
  77. package/schema/site-fast/homebrew.json +8 -2
  78. package/schema/site-fast/items-base.json +374 -40
  79. package/schema/site-fast/languages.json +197 -6
  80. package/schema/site-fast/objects.json +361 -9
  81. package/schema/site-fast/psionics.json +314 -7
  82. package/schema/site-fast/rewards.json +165 -8
  83. package/schema/site-fast/senses.json +92 -7
  84. package/schema/site-fast/skills.json +98 -7
  85. package/schema/site-fast/tables.json +600 -87
  86. package/schema/site-fast/trapshazards.json +555 -14
  87. package/schema/site-fast/util-copy.json +143 -1
  88. package/schema/site-fast/util.json +4 -2
  89. package/schema/site-fast/variantrules.json +161 -22
  90. package/schema/site-fast/vehicles.json +6446 -86
  91. package/schema/ua/charcreationoptions.json +110 -8
  92. package/schema/ua/cultsboons.json +315 -14
  93. package/schema/ua/encounterbuilder.json +81 -2
  94. package/schema/ua/fluff-charcreationoptions.json +5 -33
  95. package/schema/ua/homebrew.json +8 -2
  96. package/schema/ua/items-base.json +290 -28
  97. package/schema/ua/languages.json +173 -6
  98. package/schema/ua/objects.json +367 -9
  99. package/schema/ua/psionics.json +314 -7
  100. package/schema/ua/rewards.json +165 -8
  101. package/schema/ua/senses.json +68 -7
  102. package/schema/ua/skills.json +74 -7
  103. package/schema/ua/tables.json +564 -87
  104. package/schema/ua/trapshazards.json +483 -14
  105. package/schema/ua/util-copy.json +143 -1
  106. package/schema/ua/util.json +4 -2
  107. package/schema/ua/variantrules.json +139 -22
  108. package/schema/ua/vehicles.json +6574 -76
  109. package/schema/ua-fast/charcreationoptions.json +110 -8
  110. package/schema/ua-fast/cultsboons.json +315 -14
  111. package/schema/ua-fast/encounterbuilder.json +81 -2
  112. package/schema/ua-fast/fluff-charcreationoptions.json +5 -33
  113. package/schema/ua-fast/homebrew.json +8 -2
  114. package/schema/ua-fast/items-base.json +290 -28
  115. package/schema/ua-fast/languages.json +173 -6
  116. package/schema/ua-fast/objects.json +367 -9
  117. package/schema/ua-fast/psionics.json +314 -7
  118. package/schema/ua-fast/rewards.json +165 -8
  119. package/schema/ua-fast/senses.json +68 -7
  120. package/schema/ua-fast/skills.json +74 -7
  121. package/schema/ua-fast/tables.json +564 -87
  122. package/schema/ua-fast/trapshazards.json +483 -14
  123. package/schema/ua-fast/util-copy.json +143 -1
  124. package/schema/ua-fast/util.json +4 -2
  125. package/schema/ua-fast/variantrules.json +139 -22
  126. package/schema/ua-fast/vehicles.json +6574 -76
@@ -2,7 +2,7 @@
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "util-copy.json",
4
4
  "title": "Util: Copy",
5
- "version": "1.0.11",
5
+ "version": "1.1.0",
6
6
  "$defs": {
7
7
  "_mod_renameArr_rename": {
8
8
  "type": "object",
@@ -1160,6 +1160,148 @@
1160
1160
  "const": true
1161
1161
  }
1162
1162
  }
1163
+ },
1164
+ "copyableProps": {
1165
+ "type": "string",
1166
+ "description": "This is the list of props for which there is a `_copy` implementation. `_copy` may not be declared for props other than these.",
1167
+ "enum": [
1168
+ "monster",
1169
+ "monsterFluff",
1170
+ "legendaryGroup",
1171
+ "class",
1172
+ "classFluff",
1173
+ "subclass",
1174
+ "subclassFluff",
1175
+ "classFeature",
1176
+ "subclassFeature",
1177
+ "spell",
1178
+ "spellFluff",
1179
+ "action",
1180
+ "item",
1181
+ "itemGroup",
1182
+ "baseitem",
1183
+ "itemProperty",
1184
+ "itemType",
1185
+ "itemMastery",
1186
+ "magicvariant",
1187
+ "itemFluff",
1188
+ "background",
1189
+ "backgroundFluff",
1190
+ "charoption",
1191
+ "charoptionFluff",
1192
+ "condition",
1193
+ "conditionFluff",
1194
+ "disease",
1195
+ "diseaseFluff",
1196
+ "status",
1197
+ "statusFluff",
1198
+ "cult",
1199
+ "boon",
1200
+ "deity",
1201
+ "feat",
1202
+ "featFluff",
1203
+ "language",
1204
+ "languageFluff",
1205
+ "object",
1206
+ "objectFluff",
1207
+ "optionalfeature",
1208
+ "optionalfeatureFluff",
1209
+ "psionic",
1210
+ "race",
1211
+ "subrace",
1212
+ "raceFluff",
1213
+ "reward",
1214
+ "recipe",
1215
+ "recipeFluff",
1216
+ "rewardFluff",
1217
+ "table",
1218
+ "trap",
1219
+ "trapFluff",
1220
+ "hazard",
1221
+ "hazardFluff",
1222
+ "variantrule",
1223
+ "vehicle",
1224
+ "vehicleUpgrade",
1225
+ "vehicleFluff",
1226
+ "skill",
1227
+ "sense",
1228
+ "deck",
1229
+ "card",
1230
+ "facility",
1231
+ "facilityFluff",
1232
+ "encounterShape"
1233
+ ],
1234
+ "markdownDescription": "This is the list of props for which there is a _copy implementation. _copy may not be declared for props other than these."
1235
+ },
1236
+ "_non-copyableProps": {
1237
+ "type": "string",
1238
+ "description": "This is the list of props for which there is no `_copy` implementation. `includes` may be declared for these as well as for copyableProps.",
1239
+ "enum": [
1240
+ "adventure",
1241
+ "adventureData",
1242
+ "adventure",
1243
+ "adventureData",
1244
+ "foundryMonster",
1245
+ "foundryMonsterAction",
1246
+ "foundryMonsterBonus",
1247
+ "foundryMonsterReaction",
1248
+ "foundryMonsterTrait",
1249
+ "foundryMonsterLegendary",
1250
+ "foundryMonsterMythic",
1251
+ "book",
1252
+ "bookData",
1253
+ "foundryClass",
1254
+ "foundrySubclass",
1255
+ "foundryClassFeature",
1256
+ "foundrySubclassFeature",
1257
+ "roll20Spell",
1258
+ "foundrySpell",
1259
+ "foundryAction",
1260
+ "foundryItem",
1261
+ "foundryMagicvariant",
1262
+ "foundryBaseitem",
1263
+ "itemEntry",
1264
+ "itemTypeAdditionalEntries",
1265
+ "linkedLootTables",
1266
+ "foundryBackgroundFeature",
1267
+ "encounter",
1268
+ "foundryFeat",
1269
+ "makebrewCreatureTrait",
1270
+ "makebrewCreatureAction",
1271
+ "reducedItemProperty",
1272
+ "reducedItemType",
1273
+ "monsterfeatures",
1274
+ "name",
1275
+ "foundryOptionalfeature",
1276
+ "foundryPsionicDisciplineFocus",
1277
+ "foundryPsionicDisciplineActive",
1278
+ "foundryRace",
1279
+ "foundryRaceFeature",
1280
+ "raceFluffMeta",
1281
+ "foundryReward",
1282
+ "foundryVehicleUpgrade",
1283
+ "spellList",
1284
+ "citation"
1285
+ ],
1286
+ "markdownDescription": "This is the list of props for which there is no _copy implementation. includes may be declared for these as well as for copyableProps."
1287
+ },
1288
+ "includesProps": {
1289
+ "anyOf": [
1290
+ {
1291
+ "$ref": "#/$defs/copyableProps"
1292
+ },
1293
+ {
1294
+ "$ref": "#/$defs/_non-copyableProps"
1295
+ },
1296
+ {
1297
+ "type": "string",
1298
+ "description": "\"Wildcard\" property, which will load all content from a given source. Where possible, narrower properties (those above) should be used instead.\n\n\"*\" is primarily intended for use when hosting locally, to allow for the creation a compact file containing only a `_meta` with an `includes.*` array of all homebrew sources to be loaded.",
1299
+ "enum": [
1300
+ "*"
1301
+ ],
1302
+ "markdownDescription": ""Wildcard" property, which will load all content from a given source. Where possible, narrower properties (those above) should be used instead.\n\n"*" is primarily intended for use when hosting locally, to allow for the creation a compact file containing only a _meta with an includes.* array of all homebrew sources to be loaded."
1303
+ }
1304
+ ]
1163
1305
  }
1164
1306
  }
1165
1307
  }
@@ -3,7 +3,7 @@
3
3
  "$id": "util.json",
4
4
  "title": "Util",
5
5
  "description": "Utility definitions to be used in other schemas.",
6
- "version": "1.18.1",
6
+ "version": "1.18.2",
7
7
  "$defs": {
8
8
  "metaDependenciesArray": {
9
9
  "type": "array",
@@ -2388,6 +2388,7 @@
2388
2388
  },
2389
2389
  "creatureType": {
2390
2390
  "type": "string",
2391
+ "$comment": "\"vehicle\" added via _Explorer's Guide to Wildemount_, p325",
2391
2392
  "examples": [
2392
2393
  "aberration",
2393
2394
  "beast",
@@ -2402,7 +2403,8 @@
2402
2403
  "monstrosity",
2403
2404
  "ooze",
2404
2405
  "plant",
2405
- "undead"
2406
+ "undead",
2407
+ "vehicle"
2406
2408
  ]
2407
2409
  },
2408
2410
  "alignment": {
@@ -1,25 +1,11 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "variantrules.json",
4
- "version": "1.1.15",
4
+ "version": "1.2.0",
5
5
  "title": "RulesArray",
6
6
  "type": "object",
7
- "properties": {
8
- "variantrule": {
9
- "type": "array",
10
- "minItems": 1,
11
- "uniqueItems": true,
12
- "items": {
13
- "$ref": "#/$defs/variantrule"
14
- }
15
- }
16
- },
17
- "additionalProperties": false,
18
- "required": [
19
- "variantrule"
20
- ],
21
7
  "$defs": {
22
- "variantrule": {
8
+ "variantruleData": {
23
9
  "type": "object",
24
10
  "properties": {
25
11
  "name": {
@@ -75,12 +61,155 @@
75
61
  "$ref": "entry.json"
76
62
  }
77
63
  },
78
- "required": [
79
- "name",
80
- "entries",
81
- "source"
82
- ],
83
64
  "additionalProperties": false
65
+ },
66
+ "variantrule": {
67
+ "anyOf": [
68
+ {
69
+ "type": "object",
70
+ "properties": {
71
+ "name": {
72
+ "type": "string"
73
+ },
74
+ "type": {
75
+ "type": "string"
76
+ },
77
+ "entries": {
78
+ "type": "array",
79
+ "items": {
80
+ "$ref": "entry.json"
81
+ }
82
+ },
83
+ "source": {
84
+ "$ref": "util.json#/$defs/source"
85
+ },
86
+ "page": {
87
+ "$ref": "util.json#/$defs/page"
88
+ },
89
+ "ruleType": {
90
+ "description": "- C: Core\n- O: Optional\n- P: Prerelease\n- V: Variant\n- VO: Variant Optional\n- VV: Variant Variant",
91
+ "type": "string",
92
+ "enum": [
93
+ "C",
94
+ "O",
95
+ "P",
96
+ "V",
97
+ "VO",
98
+ "VV"
99
+ ],
100
+ "markdownDescription": "- C: Core\n- O: Optional\n- P: Prerelease\n- V: Variant\n- VO: Variant Optional\n- VV: Variant Variant"
101
+ },
102
+ "legacy": {
103
+ "$ref": "util.json#/$defs/legacy"
104
+ },
105
+ "additionalSources": {
106
+ "$ref": "util.json#/$defs/additionalSources"
107
+ },
108
+ "otherSources": {
109
+ "$ref": "util.json#/$defs/otherSources"
110
+ },
111
+ "referenceSources": {
112
+ "$ref": "util.json#/$defs/referenceSources"
113
+ },
114
+ "reprintedAs": {
115
+ "$ref": "util.json#/$defs/reprintedAs"
116
+ },
117
+ "foundryImg": {
118
+ "$ref": "util-foundry.json#/$defs/foundryImg"
119
+ },
120
+ "foundryAdvice": {
121
+ "$ref": "entry.json"
122
+ }
123
+ },
124
+ "additionalProperties": false,
125
+ "required": [
126
+ "name",
127
+ "source",
128
+ "entries"
129
+ ]
130
+ },
131
+ {
132
+ "type": "object",
133
+ "properties": {
134
+ "name": {
135
+ "type": "string"
136
+ },
137
+ "type": {
138
+ "type": "string"
139
+ },
140
+ "entries": {
141
+ "type": "array",
142
+ "items": {
143
+ "$ref": "entry.json"
144
+ }
145
+ },
146
+ "source": {
147
+ "$ref": "util.json#/$defs/source"
148
+ },
149
+ "page": {
150
+ "$ref": "util.json#/$defs/page"
151
+ },
152
+ "ruleType": {
153
+ "description": "- C: Core\n- O: Optional\n- P: Prerelease\n- V: Variant\n- VO: Variant Optional\n- VV: Variant Variant",
154
+ "type": "string",
155
+ "enum": [
156
+ "C",
157
+ "O",
158
+ "P",
159
+ "V",
160
+ "VO",
161
+ "VV"
162
+ ],
163
+ "markdownDescription": "- C: Core\n- O: Optional\n- P: Prerelease\n- V: Variant\n- VO: Variant Optional\n- VV: Variant Variant"
164
+ },
165
+ "legacy": {
166
+ "$ref": "util.json#/$defs/legacy"
167
+ },
168
+ "additionalSources": {
169
+ "$ref": "util.json#/$defs/additionalSources"
170
+ },
171
+ "otherSources": {
172
+ "$ref": "util.json#/$defs/otherSources"
173
+ },
174
+ "referenceSources": {
175
+ "$ref": "util.json#/$defs/referenceSources"
176
+ },
177
+ "reprintedAs": {
178
+ "$ref": "util.json#/$defs/reprintedAs"
179
+ },
180
+ "foundryImg": {
181
+ "$ref": "util-foundry.json#/$defs/foundryImg"
182
+ },
183
+ "foundryAdvice": {
184
+ "$ref": "entry.json"
185
+ },
186
+ "_copy": {
187
+ "$ref": "util-copy.json#/$defs/copyBlock_copy_generic"
188
+ }
189
+ },
190
+ "additionalProperties": false,
191
+ "required": [
192
+ "_copy"
193
+ ]
194
+ }
195
+ ]
84
196
  }
85
- }
197
+ },
198
+ "properties": {
199
+ "_meta": {
200
+ "$ref": "util.json#/$defs/metaBlock"
201
+ },
202
+ "variantrule": {
203
+ "type": "array",
204
+ "minItems": 1,
205
+ "uniqueItems": true,
206
+ "items": {
207
+ "$ref": "#/$defs/variantrule"
208
+ }
209
+ }
210
+ },
211
+ "required": [
212
+ "variantrule"
213
+ ],
214
+ "additionalProperties": false
86
215
  }