optolith-database-schema 0.17.0 → 0.18.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 (636) hide show
  1. package/CHANGELOG.md +45 -1
  2. package/lib/main.d.ts +2 -101
  3. package/lib/main.js +361 -106
  4. package/lib/test.d.ts +1 -0
  5. package/lib/test.js +2 -0
  6. package/lib/types/Advantage.d.ts +921 -63
  7. package/lib/types/Advantage.js +42 -13
  8. package/lib/types/AnimalDisease.d.ts +90 -59
  9. package/lib/types/AnimalDisease.js +28 -13
  10. package/lib/types/AnimalType.d.ts +6 -28
  11. package/lib/types/AnimalType.js +14 -13
  12. package/lib/types/ArcaneBardTradition.d.ts +30 -10
  13. package/lib/types/ArcaneBardTradition.js +7 -13
  14. package/lib/types/ArcaneDancerTradition.d.ts +30 -10
  15. package/lib/types/ArcaneDancerTradition.js +7 -13
  16. package/lib/types/Aspect.d.ts +7 -33
  17. package/lib/types/Aspect.js +20 -13
  18. package/lib/types/Attribute.d.ts +8 -36
  19. package/lib/types/Attribute.js +23 -13
  20. package/lib/types/Blessing.d.ts +96 -113
  21. package/lib/types/Blessing.js +94 -13
  22. package/lib/types/Cantrip.d.ts +132 -183
  23. package/lib/types/Cantrip.js +159 -13
  24. package/lib/types/Ceremony.d.ts +630 -113
  25. package/lib/types/Ceremony.js +87 -13
  26. package/lib/types/CombatTechnique.d.ts +127 -0
  27. package/lib/types/CombatTechnique.js +101 -0
  28. package/lib/types/Condition.d.ts +52 -40
  29. package/lib/types/Condition.js +31 -13
  30. package/lib/types/Continent.d.ts +6 -30
  31. package/lib/types/Continent.js +15 -13
  32. package/lib/types/Culture.d.ts +142 -369
  33. package/lib/types/Culture.js +355 -13
  34. package/lib/types/DerivedCharacteristic.d.ts +76 -61
  35. package/lib/types/DerivedCharacteristic.js +45 -13
  36. package/lib/types/Disadvantage.d.ts +921 -58
  37. package/lib/types/Disadvantage.js +45 -13
  38. package/lib/types/Disease.d.ts +81 -43
  39. package/lib/types/Disease.js +15 -13
  40. package/lib/types/Element.d.ts +6 -28
  41. package/lib/types/Element.js +14 -13
  42. package/lib/types/ExperienceLevel.d.ts +13 -64
  43. package/lib/types/ExperienceLevel.js +43 -13
  44. package/lib/types/EyeColor.d.ts +6 -28
  45. package/lib/types/EyeColor.js +14 -13
  46. package/lib/types/FamiliarsTrick.d.ts +189 -266
  47. package/lib/types/FamiliarsTrick.js +193 -13
  48. package/lib/types/HairColor.d.ts +6 -28
  49. package/lib/types/HairColor.js +14 -13
  50. package/lib/types/Lessons.d.ts +180 -0
  51. package/lib/types/Lessons.js +212 -0
  52. package/lib/types/LiturgicalChant.d.ts +630 -113
  53. package/lib/types/LiturgicalChant.js +87 -13
  54. package/lib/types/Locale.d.ts +11 -36
  55. package/lib/types/Locale.js +1316 -13
  56. package/lib/types/MetaCondition.d.ts +52 -43
  57. package/lib/types/MetaCondition.js +32 -13
  58. package/lib/types/PactCategory.d.ts +74 -78
  59. package/lib/types/PactCategory.js +65 -13
  60. package/lib/types/Patron.d.ts +100 -197
  61. package/lib/types/Patron.js +195 -13
  62. package/lib/types/PatronCategory.d.ts +7 -36
  63. package/lib/types/PatronCategory.js +19 -13
  64. package/lib/types/PersonalityTrait.d.ts +80 -67
  65. package/lib/types/PersonalityTrait.js +51 -13
  66. package/lib/types/Profession.d.ts +1911 -665
  67. package/lib/types/Profession.js +593 -13
  68. package/lib/types/Property.d.ts +7 -34
  69. package/lib/types/Property.js +19 -13
  70. package/lib/types/Race.d.ts +163 -349
  71. package/lib/types/Race.js +287 -13
  72. package/lib/types/Region.d.ts +6 -28
  73. package/lib/types/Region.js +14 -13
  74. package/lib/types/Ritual.d.ts +627 -111
  75. package/lib/types/Ritual.js +88 -13
  76. package/lib/types/Service.d.ts +55 -43
  77. package/lib/types/Service.js +38 -13
  78. package/lib/types/SexPractice.d.ts +50 -47
  79. package/lib/types/SexPractice.js +32 -13
  80. package/lib/types/Skill.d.ts +112 -131
  81. package/lib/types/Skill.js +120 -10
  82. package/lib/types/SkillGroup.d.ts +8 -37
  83. package/lib/types/SkillGroup.js +23 -13
  84. package/lib/types/SkillModificationLevel.d.ts +31 -101
  85. package/lib/types/SkillModificationLevel.js +95 -10
  86. package/lib/types/SocialStatus.d.ts +7 -28
  87. package/lib/types/SocialStatus.js +18 -13
  88. package/lib/types/Spell.d.ts +627 -111
  89. package/lib/types/Spell.js +88 -13
  90. package/lib/types/State.d.ts +51 -36
  91. package/lib/types/State.js +24 -13
  92. package/lib/types/Talisman.d.ts +64 -70
  93. package/lib/types/Talisman.js +64 -13
  94. package/lib/types/TargetCategory.d.ts +7 -42
  95. package/lib/types/TargetCategory.js +19 -13
  96. package/lib/types/_Activatable.d.ts +1587 -1366
  97. package/lib/types/_Activatable.js +1392 -2
  98. package/lib/types/_ActivatableSelectOptionCategory.d.ts +657 -386
  99. package/lib/types/_ActivatableSelectOptionCategory.js +381 -1
  100. package/lib/types/_ActivatableSkill.d.ts +1105 -34
  101. package/lib/types/_ActivatableSkill.js +82 -1
  102. package/lib/types/_ActivatableSkillCastingTime.d.ts +66 -74
  103. package/lib/types/_ActivatableSkillCastingTime.js +92 -1
  104. package/lib/types/_ActivatableSkillCheckResultBased.d.ts +25 -33
  105. package/lib/types/_ActivatableSkillCheckResultBased.js +44 -1
  106. package/lib/types/_ActivatableSkillCost.d.ts +209 -255
  107. package/lib/types/_ActivatableSkillCost.js +224 -1
  108. package/lib/types/_ActivatableSkillDuration.d.ts +202 -135
  109. package/lib/types/_ActivatableSkillDuration.js +138 -1
  110. package/lib/types/_ActivatableSkillEffect.d.ts +16 -68
  111. package/lib/types/_ActivatableSkillEffect.js +65 -1
  112. package/lib/types/_ActivatableSkillRange.d.ts +61 -115
  113. package/lib/types/_ActivatableSkillRange.js +106 -1
  114. package/lib/types/_ActivatableSkillTargetCategory.d.ts +13 -39
  115. package/lib/types/_ActivatableSkillTargetCategory.js +29 -1
  116. package/lib/types/_AlternativeNames.d.ts +5 -11
  117. package/lib/types/_AlternativeNames.js +14 -1
  118. package/lib/types/_ArcaneTradition.d.ts +30 -28
  119. package/lib/types/_ArcaneTradition.js +14 -4
  120. package/lib/types/_Blessed.d.ts +8 -22
  121. package/lib/types/_Blessed.js +22 -1
  122. package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +4 -10
  123. package/lib/types/_CommonnessRatedAdvantageDisadvantage.js +12 -1
  124. package/lib/types/_Dice.d.ts +6 -19
  125. package/lib/types/_Dice.js +23 -1
  126. package/lib/types/_DiseasePoison.d.ts +56 -107
  127. package/lib/types/_DiseasePoison.js +107 -2
  128. package/lib/types/_Enhancements.d.ts +165 -59
  129. package/lib/types/_Enhancements.js +66 -1
  130. package/lib/types/_I18n.d.ts +14 -42
  131. package/lib/types/_I18n.js +55 -1
  132. package/lib/types/_Identifier.d.ts +158 -1274
  133. package/lib/types/_Identifier.js +300 -1
  134. package/lib/types/_IdentifierGroup.d.ts +278 -29
  135. package/lib/types/_IdentifierGroup.js +340 -1
  136. package/lib/types/_ImprovementCost.d.ts +7 -4
  137. package/lib/types/_ImprovementCost.js +10 -1
  138. package/lib/types/_Influence.d.ts +78 -49
  139. package/lib/types/_Influence.js +42 -4
  140. package/lib/types/_Prerequisite.d.ts +370 -106
  141. package/lib/types/_Prerequisite.js +136 -1
  142. package/lib/types/_ResponsiveText.d.ts +13 -54
  143. package/lib/types/_ResponsiveText.js +37 -1
  144. package/lib/types/_Sex.d.ts +5 -7
  145. package/lib/types/_Sex.js +8 -4
  146. package/lib/types/_SkillCheck.d.ts +10 -15
  147. package/lib/types/_SkillCheck.js +34 -1
  148. package/lib/types/_Spellwork.d.ts +5 -18
  149. package/lib/types/_Spellwork.js +13 -1
  150. package/lib/types/equipment/EquipmentPackage.d.ts +80 -51
  151. package/lib/types/equipment/EquipmentPackage.js +34 -13
  152. package/lib/types/equipment/item/Ammunition.d.ts +69 -32
  153. package/lib/types/equipment/item/Ammunition.js +29 -13
  154. package/lib/types/equipment/item/Animal.d.ts +71 -19
  155. package/lib/types/equipment/item/Animal.js +15 -13
  156. package/lib/types/equipment/item/AnimalCare.d.ts +86 -49
  157. package/lib/types/equipment/item/AnimalCare.js +51 -13
  158. package/lib/types/equipment/item/Armor.d.ts +120 -186
  159. package/lib/types/equipment/item/Armor.js +156 -13
  160. package/lib/types/equipment/item/BandageOrRemedy.d.ts +176 -37
  161. package/lib/types/equipment/item/BandageOrRemedy.js +2 -14
  162. package/lib/types/equipment/item/Book.d.ts +84 -61
  163. package/lib/types/equipment/item/Book.js +57 -13
  164. package/lib/types/equipment/item/CeremonialItem.d.ts +178 -42
  165. package/lib/types/equipment/item/CeremonialItem.js +36 -13
  166. package/lib/types/equipment/item/Clothes.d.ts +176 -7
  167. package/lib/types/equipment/item/Clothes.js +2 -14
  168. package/lib/types/equipment/item/Container.d.ts +176 -7
  169. package/lib/types/equipment/item/Container.js +2 -14
  170. package/lib/types/equipment/item/Elixir.d.ts +91 -76
  171. package/lib/types/equipment/item/Elixir.js +54 -13
  172. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +170 -29
  173. package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +28 -13
  174. package/lib/types/equipment/item/GemOrPreciousStone.d.ts +72 -44
  175. package/lib/types/equipment/item/GemOrPreciousStone.js +41 -13
  176. package/lib/types/equipment/item/IlluminationLightSource.d.ts +186 -61
  177. package/lib/types/equipment/item/IlluminationLightSource.js +61 -13
  178. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +176 -0
  179. package/lib/types/equipment/item/IlluminationRefillOrSupply.js +2 -0
  180. package/lib/types/equipment/item/Jewelry.d.ts +73 -61
  181. package/lib/types/equipment/item/Jewelry.js +37 -13
  182. package/lib/types/equipment/item/Liebesspielzeug.d.ts +176 -7
  183. package/lib/types/equipment/item/Liebesspielzeug.js +2 -14
  184. package/lib/types/equipment/item/LuxuryGood.d.ts +176 -37
  185. package/lib/types/equipment/item/LuxuryGood.js +2 -14
  186. package/lib/types/equipment/item/MagicalArtifact.d.ts +71 -40
  187. package/lib/types/equipment/item/MagicalArtifact.js +15 -13
  188. package/lib/types/equipment/item/MusicalInstrument.d.ts +174 -32
  189. package/lib/types/equipment/item/MusicalInstrument.js +27 -13
  190. package/lib/types/equipment/item/OrienteeringAid.d.ts +176 -7
  191. package/lib/types/equipment/item/OrienteeringAid.js +2 -14
  192. package/lib/types/equipment/item/Poison.d.ts +483 -354
  193. package/lib/types/equipment/item/Poison.js +386 -13
  194. package/lib/types/equipment/item/RopeOrChain.d.ts +176 -7
  195. package/lib/types/equipment/item/RopeOrChain.js +2 -14
  196. package/lib/types/equipment/item/Stationery.d.ts +176 -0
  197. package/lib/types/equipment/item/Stationery.js +2 -0
  198. package/lib/types/equipment/item/ThievesTool.d.ts +176 -7
  199. package/lib/types/equipment/item/ThievesTool.js +2 -14
  200. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +89 -61
  201. package/lib/types/equipment/item/ToolOfTheTrade.js +40 -13
  202. package/lib/types/equipment/item/TravelGearOrTool.d.ts +176 -7
  203. package/lib/types/equipment/item/TravelGearOrTool.js +2 -14
  204. package/lib/types/equipment/item/Vehicle.d.ts +71 -19
  205. package/lib/types/equipment/item/Vehicle.js +15 -13
  206. package/lib/types/equipment/item/Weapon.d.ts +223 -166
  207. package/lib/types/equipment/item/Weapon.js +153 -13
  208. package/lib/types/equipment/item/WeaponAccessory.d.ts +176 -7
  209. package/lib/types/equipment/item/WeaponAccessory.js +2 -14
  210. package/lib/types/equipment/item/_Herbary.d.ts +42 -16
  211. package/lib/types/equipment/item/_Herbary.js +36 -1
  212. package/lib/types/equipment/item/_Item.d.ts +317 -160
  213. package/lib/types/equipment/item/_Item.js +144 -1
  214. package/lib/types/equipment/item/_MeleeWeapon.d.ts +37 -105
  215. package/lib/types/equipment/item/_MeleeWeapon.js +92 -1
  216. package/lib/types/equipment/item/_RangedWeapon.d.ts +25 -106
  217. package/lib/types/equipment/item/_RangedWeapon.js +85 -1
  218. package/lib/types/equipment/item/_Weapon.d.ts +13 -57
  219. package/lib/types/equipment/item/_Weapon.js +49 -1
  220. package/lib/types/equipment/item/sub/ArmorType.d.ts +7 -37
  221. package/lib/types/equipment/item/sub/ArmorType.js +18 -13
  222. package/lib/types/equipment/item/sub/Reach.d.ts +6 -28
  223. package/lib/types/equipment/item/sub/Reach.js +14 -13
  224. package/lib/types/index.d.ts +148 -0
  225. package/lib/types/index.js +148 -0
  226. package/lib/types/magicalActions/AnimistPower.d.ts +299 -238
  227. package/lib/types/magicalActions/AnimistPower.js +182 -13
  228. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +6 -28
  229. package/lib/types/magicalActions/AnimistPower_Tribe.js +14 -13
  230. package/lib/types/magicalActions/Curse.d.ts +215 -162
  231. package/lib/types/magicalActions/Curse.js +126 -13
  232. package/lib/types/magicalActions/DominationRitual.d.ts +200 -145
  233. package/lib/types/magicalActions/DominationRitual.js +126 -13
  234. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +121 -135
  235. package/lib/types/magicalActions/ElvenMagicalSong.js +111 -13
  236. package/lib/types/magicalActions/GeodeRitual.d.ts +205 -180
  237. package/lib/types/magicalActions/GeodeRitual.js +135 -13
  238. package/lib/types/magicalActions/JesterTrick.d.ts +299 -177
  239. package/lib/types/magicalActions/JesterTrick.js +153 -13
  240. package/lib/types/magicalActions/MagicalDance.d.ts +125 -119
  241. package/lib/types/magicalActions/MagicalDance.js +113 -13
  242. package/lib/types/magicalActions/MagicalMelody.d.ts +116 -124
  243. package/lib/types/magicalActions/MagicalMelody.js +111 -13
  244. package/lib/types/magicalActions/MagicalRune.d.ts +300 -294
  245. package/lib/types/magicalActions/MagicalRune.js +278 -13
  246. package/lib/types/magicalActions/ZibiljaRitual.d.ts +396 -102
  247. package/lib/types/magicalActions/ZibiljaRitual.js +81 -13
  248. package/lib/types/magicalActions/_MusicTradition.d.ts +17 -30
  249. package/lib/types/magicalActions/_MusicTradition.js +43 -1
  250. package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +24 -10
  251. package/lib/types/prerequisites/ConditionalPrerequisites.js +9 -1
  252. package/lib/types/prerequisites/DisplayOption.d.ts +13 -32
  253. package/lib/types/prerequisites/DisplayOption.js +27 -1
  254. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +1338 -215
  255. package/lib/types/prerequisites/PrerequisiteGroups.js +160 -1
  256. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +107 -31
  257. package/lib/types/prerequisites/single/ActivatablePrerequisite.js +32 -1
  258. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +1 -2
  259. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.js +4 -1
  260. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +18 -26
  261. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.js +24 -1
  262. package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +16 -13
  263. package/lib/types/prerequisites/single/CulturePrerequisite.js +16 -1
  264. package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +4 -39
  265. package/lib/types/prerequisites/single/EnhancementPrerequisite.js +12 -1
  266. package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +17 -16
  267. package/lib/types/prerequisites/single/InfluencePrerequisite.js +19 -1
  268. package/lib/types/prerequisites/single/PactPrerequisite.d.ts +18 -23
  269. package/lib/types/prerequisites/single/PactPrerequisite.js +24 -1
  270. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +20 -18
  271. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.js +25 -1
  272. package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +16 -12
  273. package/lib/types/prerequisites/single/PublicationPrerequisite.js +15 -1
  274. package/lib/types/prerequisites/single/RacePrerequisite.d.ts +17 -16
  275. package/lib/types/prerequisites/single/RacePrerequisite.js +19 -1
  276. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +51 -63
  277. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +80 -1
  278. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +26 -18
  279. package/lib/types/prerequisites/single/RatedPrerequisite.js +19 -1
  280. package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +17 -19
  281. package/lib/types/prerequisites/single/RatedSumPrerequisite.js +19 -1
  282. package/lib/types/prerequisites/single/RulePrerequisite.d.ts +19 -9
  283. package/lib/types/prerequisites/single/RulePrerequisite.js +15 -1
  284. package/lib/types/prerequisites/single/SexPrerequisite.d.ts +19 -10
  285. package/lib/types/prerequisites/single/SexPrerequisite.js +15 -1
  286. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +7 -8
  287. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +17 -1
  288. package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +16 -13
  289. package/lib/types/prerequisites/single/SocialStatusPrerequisite.js +16 -1
  290. package/lib/types/prerequisites/single/StatePrerequisite.d.ts +16 -10
  291. package/lib/types/prerequisites/single/StatePrerequisite.js +15 -1
  292. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +19 -49
  293. package/lib/types/prerequisites/single/TextPrerequisite.js +53 -1
  294. package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +37 -33
  295. package/lib/types/prerequisites/single/TraditionPrerequisite.js +42 -1
  296. package/lib/types/rule/CoreRule.d.ts +142 -310
  297. package/lib/types/rule/CoreRule.js +172 -13
  298. package/lib/types/rule/FocusRule.d.ts +54 -53
  299. package/lib/types/rule/FocusRule.js +37 -13
  300. package/lib/types/rule/FocusRule_Subject.d.ts +6 -29
  301. package/lib/types/rule/FocusRule_Subject.js +15 -13
  302. package/lib/types/rule/OptionalRule.d.ts +52 -41
  303. package/lib/types/rule/OptionalRule.js +28 -13
  304. package/lib/types/source/Publication.d.ts +50 -70
  305. package/lib/types/source/Publication.js +57 -13
  306. package/lib/types/source/_Erratum.d.ts +9 -23
  307. package/lib/types/source/_Erratum.js +19 -1
  308. package/lib/types/source/_PublicationRef.d.ts +161 -148
  309. package/lib/types/source/_PublicationRef.js +98 -1
  310. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +1034 -52
  311. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +36 -13
  312. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +917 -34
  313. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +33 -13
  314. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +917 -34
  315. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +33 -13
  316. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +917 -34
  317. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +33 -13
  318. package/lib/types/specialAbility/AncestorGlyph.d.ts +916 -38
  319. package/lib/types/specialAbility/AncestorGlyph.js +35 -13
  320. package/lib/types/specialAbility/BlessedTradition.d.ts +948 -147
  321. package/lib/types/specialAbility/BlessedTradition.js +131 -13
  322. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +980 -34
  323. package/lib/types/specialAbility/BrawlingSpecialAbility.js +32 -13
  324. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +918 -40
  325. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +33 -13
  326. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +1036 -45
  327. package/lib/types/specialAbility/CombatSpecialAbility.js +37 -13
  328. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +1035 -42
  329. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +37 -13
  330. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +980 -38
  331. package/lib/types/specialAbility/CommandSpecialAbility.js +32 -13
  332. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +915 -32
  333. package/lib/types/specialAbility/FamiliarSpecialAbility.js +30 -13
  334. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +915 -32
  335. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +30 -13
  336. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +917 -39
  337. package/lib/types/specialAbility/FatePointSpecialAbility.js +32 -13
  338. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +918 -44
  339. package/lib/types/specialAbility/GeneralSpecialAbility.js +33 -13
  340. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +915 -37
  341. package/lib/types/specialAbility/KarmaSpecialAbility.js +30 -13
  342. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +966 -36
  343. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +34 -13
  344. package/lib/types/specialAbility/LycantropicGift.d.ts +915 -32
  345. package/lib/types/specialAbility/LycantropicGift.js +30 -13
  346. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +966 -36
  347. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +34 -13
  348. package/lib/types/specialAbility/MagicalSign.d.ts +86 -39
  349. package/lib/types/specialAbility/MagicalSign.js +31 -13
  350. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +918 -43
  351. package/lib/types/specialAbility/MagicalSpecialAbility.js +33 -13
  352. package/lib/types/specialAbility/MagicalTradition.d.ts +938 -114
  353. package/lib/types/specialAbility/MagicalTradition.js +97 -13
  354. package/lib/types/specialAbility/PactGift.d.ts +992 -97
  355. package/lib/types/specialAbility/PactGift.js +118 -13
  356. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +917 -46
  357. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +41 -13
  358. package/lib/types/specialAbility/Sermon.d.ts +915 -32
  359. package/lib/types/specialAbility/Sermon.js +30 -13
  360. package/lib/types/specialAbility/SexSpecialAbility.d.ts +917 -34
  361. package/lib/types/specialAbility/SexSpecialAbility.js +32 -13
  362. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +915 -37
  363. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +30 -13
  364. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +964 -34
  365. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +32 -13
  366. package/lib/types/specialAbility/VampiricGift.d.ts +915 -37
  367. package/lib/types/specialAbility/VampiricGift.js +30 -13
  368. package/lib/types/specialAbility/Vision.d.ts +915 -32
  369. package/lib/types/specialAbility/Vision.js +30 -13
  370. package/lib/types/specialAbility/_Tradition.d.ts +5 -12
  371. package/lib/types/specialAbility/_Tradition.js +14 -1
  372. package/lib/types/specialAbility/sub/Language.d.ts +107 -117
  373. package/lib/types/specialAbility/sub/Language.js +87 -13
  374. package/lib/types/specialAbility/sub/Script.d.ts +61 -60
  375. package/lib/types/specialAbility/sub/Script.js +43 -13
  376. package/lib/types/specialAbility/sub/TradeSecret.d.ts +77 -48
  377. package/lib/types/specialAbility/sub/TradeSecret.js +36 -13
  378. package/lib/types/specialAbility/sub/_LanguageScript.d.ts +5 -11
  379. package/lib/types/specialAbility/sub/_LanguageScript.js +15 -1
  380. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +1135 -47
  381. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +36 -13
  382. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +1135 -47
  383. package/lib/types/traditionArtifacts/AttireEnchantment.js +36 -13
  384. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +1135 -47
  385. package/lib/types/traditionArtifacts/BowlEnchantment.js +36 -13
  386. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +1136 -61
  387. package/lib/types/traditionArtifacts/CauldronEnchantment.js +41 -13
  388. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +1135 -47
  389. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +36 -13
  390. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +1147 -71
  391. package/lib/types/traditionArtifacts/DaggerRitual.js +71 -13
  392. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +1135 -47
  393. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +36 -13
  394. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +1135 -47
  395. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +36 -13
  396. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +1135 -47
  397. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +36 -13
  398. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +1135 -47
  399. package/lib/types/traditionArtifacts/OrbEnchantment.js +36 -13
  400. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +1135 -47
  401. package/lib/types/traditionArtifacts/RingEnchantment.js +36 -13
  402. package/lib/types/traditionArtifacts/SickleRitual.d.ts +1135 -47
  403. package/lib/types/traditionArtifacts/SickleRitual.js +36 -13
  404. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +1135 -52
  405. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +36 -13
  406. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +1139 -57
  407. package/lib/types/traditionArtifacts/StaffEnchantment.js +41 -13
  408. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +1135 -47
  409. package/lib/types/traditionArtifacts/ToyEnchantment.js +36 -13
  410. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +1135 -47
  411. package/lib/types/traditionArtifacts/Trinkhornzauber.js +36 -13
  412. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +1084 -42
  413. package/lib/types/traditionArtifacts/WandEnchantment.js +35 -13
  414. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +1135 -47
  415. package/lib/types/traditionArtifacts/WeaponEnchantment.js +36 -13
  416. package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +8 -52
  417. package/lib/types/traditionArtifacts/sub/AnimalShape.js +23 -13
  418. package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +6 -28
  419. package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +14 -13
  420. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +8 -40
  421. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +22 -13
  422. package/lib/types/traditionArtifacts/sub/Brew.d.ts +6 -28
  423. package/lib/types/traditionArtifacts/sub/Brew.js +14 -13
  424. package/package.json +20 -15
  425. package/schema/Advantage.schema.json +3 -3
  426. package/schema/AnimalDisease.schema.json +4 -4
  427. package/schema/Aspect.schema.json +1 -1
  428. package/schema/Blessing.schema.json +3 -3
  429. package/schema/Cantrip.schema.json +4 -4
  430. package/schema/Ceremony.schema.json +9 -61
  431. package/schema/CombatTechnique_Close.schema.json +2 -2
  432. package/schema/CombatTechnique_Ranged.schema.json +2 -2
  433. package/schema/Condition.schema.json +4 -16
  434. package/schema/Continent.schema.json +1 -1
  435. package/schema/Culture.schema.json +46 -50
  436. package/schema/Disadvantage.schema.json +3 -3
  437. package/schema/Disease.schema.json +2 -2
  438. package/schema/FamiliarsTrick.schema.json +45 -71
  439. package/schema/Lessons_Curriculum.schema.json +26 -36
  440. package/schema/LiturgicalChant.schema.json +9 -61
  441. package/schema/Locale.schema.json +1 -1
  442. package/schema/MetaCondition.schema.json +5 -17
  443. package/schema/Patron.schema.json +60 -71
  444. package/schema/PatronCategory.schema.json +1 -1
  445. package/schema/PersonalityTrait.schema.json +2 -2
  446. package/schema/Profession.schema.json +68 -62
  447. package/schema/Property.schema.json +1 -1
  448. package/schema/Race.schema.json +17 -17
  449. package/schema/Ritual.schema.json +8 -60
  450. package/schema/SexPractice.schema.json +1 -1
  451. package/schema/Skill.schema.json +7 -7
  452. package/schema/SkillModificationLevel.schema.json +3 -3
  453. package/schema/Spell.schema.json +8 -60
  454. package/schema/UI.schema.json +288 -0
  455. package/schema/_Activatable.schema.json +52 -60
  456. package/schema/_ActivatableSelectOptionCategory.schema.json +31 -35
  457. package/schema/_ActivatableSkill.schema.json +16 -0
  458. package/schema/_ActivatableSkillCastingTime.schema.json +5 -5
  459. package/schema/_ActivatableSkillCost.schema.json +7 -7
  460. package/schema/_ActivatableSkillEffect.schema.json +20 -51
  461. package/schema/_ActivatableSkillRange.schema.json +2 -2
  462. package/schema/_ActivatableSkillTargetCategory.schema.json +8 -8
  463. package/schema/_Blessed.schema.json +1 -1
  464. package/schema/_DiseasePoison.schema.json +31 -23
  465. package/schema/_Enhancements.schema.json +1 -1
  466. package/schema/_I18n.schema.json +1 -1
  467. package/schema/_Identifier.schema.json +31 -1
  468. package/schema/_IdentifierGroup.schema.json +4 -1
  469. package/schema/_Influence.schema.json +2 -2
  470. package/schema/_Prerequisite.schema.json +15 -15
  471. package/schema/_ResponsiveText.schema.json +6 -6
  472. package/schema/_SkillCheck.schema.json +3 -14
  473. package/schema/_Spellwork.schema.json +1 -1
  474. package/schema/equipment/EquipmentPackage.schema.json +1 -1
  475. package/schema/equipment/item/Armor.schema.json +5 -5
  476. package/schema/equipment/item/BandageOrRemedy.schema.json +2 -2
  477. package/schema/equipment/item/Book.schema.json +1 -1
  478. package/schema/equipment/item/CeremonialItem.schema.json +2 -2
  479. package/schema/equipment/item/Elixir.schema.json +5 -25
  480. package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +1 -1
  481. package/schema/equipment/item/IlluminationLightSource.schema.json +4 -8
  482. package/schema/equipment/item/Jewelry.schema.json +1 -1
  483. package/schema/equipment/item/LuxuryGood.schema.json +2 -2
  484. package/schema/equipment/item/MusicalInstrument.schema.json +1 -1
  485. package/schema/equipment/item/Poison.schema.json +25 -17
  486. package/schema/equipment/item/ToolOfTheTrade.schema.json +1 -1
  487. package/schema/equipment/item/Weapon.schema.json +11 -11
  488. package/schema/equipment/item/_Item.schema.json +4 -4
  489. package/schema/equipment/item/_MeleeWeapon.schema.json +3 -7
  490. package/schema/equipment/item/_RangedWeapon.schema.json +5 -5
  491. package/schema/equipment/item/_Weapon.schema.json +2 -2
  492. package/schema/equipment/item/sub/ArmorType.schema.json +1 -1
  493. package/schema/magicalActions/AnimistPower.schema.json +10 -36
  494. package/schema/magicalActions/Curse.schema.json +5 -31
  495. package/schema/magicalActions/DominationRitual.schema.json +6 -32
  496. package/schema/magicalActions/ElvenMagicalSong.schema.json +4 -17
  497. package/schema/magicalActions/GeodeRitual.schema.json +7 -59
  498. package/schema/magicalActions/JesterTrick.schema.json +7 -59
  499. package/schema/magicalActions/MagicalDance.schema.json +7 -33
  500. package/schema/magicalActions/MagicalMelody.schema.json +7 -33
  501. package/schema/magicalActions/MagicalRune.schema.json +53 -146
  502. package/schema/magicalActions/ZibiljaRitual.schema.json +7 -59
  503. package/schema/magicalActions/_MusicTradition.schema.json +1 -1
  504. package/schema/magicalActions/_SkillReference.schema.json +2 -24
  505. package/schema/prerequisites/ConditionalPrerequisites.schema.json +1 -1
  506. package/schema/prerequisites/DisplayOption.schema.json +1 -1
  507. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +1 -1
  508. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +2 -2
  509. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +1 -2
  510. package/schema/prerequisites/single/RacePrerequisite.schema.json +1 -1
  511. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +2 -2
  512. package/schema/prerequisites/single/TextPrerequisite.schema.json +4 -4
  513. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +4 -4
  514. package/schema/rule/CoreRule.schema.json +5 -5
  515. package/schema/rule/FocusRule.schema.json +1 -1
  516. package/schema/rule/OptionalRule.schema.json +1 -1
  517. package/schema/source/Publication.schema.json +2 -2
  518. package/schema/source/_PublicationRef.schema.json +9 -9
  519. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +2 -2
  520. package/schema/specialAbility/BlessedTradition.schema.json +74 -52
  521. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +2 -2
  522. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +155 -504
  523. package/schema/specialAbility/CommandSpecialAbility.schema.json +23 -20
  524. package/schema/specialAbility/FatePointSpecialAbility.schema.json +1 -1
  525. package/schema/specialAbility/GeneralSpecialAbility.schema.json +1 -1
  526. package/schema/specialAbility/KarmaSpecialAbility.schema.json +1 -1
  527. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +155 -504
  528. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +155 -504
  529. package/schema/specialAbility/MagicalSign.schema.json +2 -2
  530. package/schema/specialAbility/MagicalSpecialAbility.schema.json +1 -1
  531. package/schema/specialAbility/MagicalTradition.schema.json +8 -8
  532. package/schema/specialAbility/PactGift.schema.json +4 -4
  533. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +1 -1
  534. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +155 -504
  535. package/schema/specialAbility/VampiricGift.schema.json +1 -1
  536. package/schema/specialAbility/_Tradition.schema.json +1 -1
  537. package/schema/specialAbility/sub/Language.schema.json +4 -4
  538. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +1 -1
  539. package/schema/traditionArtifacts/AttireEnchantment.schema.json +1 -1
  540. package/schema/traditionArtifacts/BowlEnchantment.schema.json +1 -1
  541. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +2 -2
  542. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +1 -1
  543. package/schema/traditionArtifacts/DaggerRitual.schema.json +14 -18
  544. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +1 -1
  545. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +1 -1
  546. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +1 -1
  547. package/schema/traditionArtifacts/OrbEnchantment.schema.json +1 -1
  548. package/schema/traditionArtifacts/RingEnchantment.schema.json +1 -1
  549. package/schema/traditionArtifacts/SickleRitual.schema.json +1 -1
  550. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +2 -2
  551. package/schema/traditionArtifacts/StaffEnchantment.schema.json +2 -2
  552. package/schema/traditionArtifacts/ToyEnchantment.schema.json +1 -1
  553. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +1 -1
  554. package/schema/traditionArtifacts/WandEnchantment.schema.json +1 -1
  555. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +1 -1
  556. package/.prettierrc.yml +0 -3
  557. package/lib/cache/activatableSelectOptions.d.ts +0 -80
  558. package/lib/cache/activatableSelectOptions.js +0 -935
  559. package/lib/cache/ancestorBloodAdvantages.d.ts +0 -5
  560. package/lib/cache/ancestorBloodAdvantages.js +0 -18
  561. package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.d.ts +0 -20
  562. package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.js +0 -164
  563. package/lib/cache/newApplicationsAndUses.d.ts +0 -20
  564. package/lib/cache/newApplicationsAndUses.js +0 -126
  565. package/lib/cacheConfig.d.ts +0 -4
  566. package/lib/cacheConfig.js +0 -1
  567. package/lib/config/build.d.ts +0 -6
  568. package/lib/config/build.js +0 -8
  569. package/lib/config/cache.d.ts +0 -16
  570. package/lib/config/cache.js +0 -10
  571. package/lib/config/types.d.ts +0 -462
  572. package/lib/config/types.js +0 -306
  573. package/lib/errors.d.ts +0 -20
  574. package/lib/errors.js +0 -33
  575. package/lib/helpers/array.d.ts +0 -14
  576. package/lib/helpers/array.js +0 -15
  577. package/lib/helpers/i18n.d.ts +0 -1
  578. package/lib/helpers/i18n.js +0 -1
  579. package/lib/helpers/io.d.ts +0 -29
  580. package/lib/helpers/io.js +0 -51
  581. package/lib/helpers/nullable.d.ts +0 -35
  582. package/lib/helpers/nullable.js +0 -31
  583. package/lib/helpers/nullable.test.d.ts +0 -1
  584. package/lib/helpers/nullable.test.js +0 -46
  585. package/lib/helpers/object.d.ts +0 -5
  586. package/lib/helpers/object.js +0 -16
  587. package/lib/helpers/object.test.d.ts +0 -1
  588. package/lib/helpers/object.test.js +0 -15
  589. package/lib/helpers/objectPath.d.ts +0 -13
  590. package/lib/helpers/objectPath.js +0 -3
  591. package/lib/helpers/pair.d.ts +0 -20
  592. package/lib/helpers/pair.js +0 -20
  593. package/lib/helpers/result.d.ts +0 -57
  594. package/lib/helpers/result.js +0 -45
  595. package/lib/helpers/typeSafety.d.ts +0 -14
  596. package/lib/helpers/typeSafety.js +0 -16
  597. package/lib/helpers/typeSafety.test.d.ts +0 -1
  598. package/lib/helpers/typeSafety.test.js +0 -10
  599. package/lib/typeConfig.d.ts +0 -10
  600. package/lib/typeConfig.js +0 -1
  601. package/lib/types/CombatTechnique_Close.d.ts +0 -73
  602. package/lib/types/CombatTechnique_Close.js +0 -14
  603. package/lib/types/CombatTechnique_Ranged.d.ts +0 -66
  604. package/lib/types/CombatTechnique_Ranged.js +0 -14
  605. package/lib/types/Kirchenpraegung.d.ts +0 -10
  606. package/lib/types/Kirchenpraegung.js +0 -14
  607. package/lib/types/Lessons_Curriculum.d.ts +0 -236
  608. package/lib/types/Lessons_Curriculum.js +0 -14
  609. package/lib/types/Lessons_Guideline.d.ts +0 -34
  610. package/lib/types/Lessons_Guideline.js +0 -14
  611. package/lib/types/UI.d.ts +0 -1212
  612. package/lib/types/UI.js +0 -14
  613. package/lib/types/_LocaleMap.d.ts +0 -10
  614. package/lib/types/_LocaleMap.js +0 -1
  615. package/lib/types/_NonEmptyString.d.ts +0 -9
  616. package/lib/types/_NonEmptyString.js +0 -1
  617. package/lib/types/_SimpleReferences.d.ts +0 -134
  618. package/lib/types/_SimpleReferences.js +0 -1
  619. package/lib/types/equipment/item/IlluminationRefillsOrSupplies.d.ts +0 -7
  620. package/lib/types/equipment/item/IlluminationRefillsOrSupplies.js +0 -14
  621. package/lib/types/equipment/item/Stationary.d.ts +0 -7
  622. package/lib/types/equipment/item/Stationary.js +0 -14
  623. package/lib/types/magicalActions/_SkillReference.d.ts +0 -11
  624. package/lib/types/magicalActions/_SkillReference.js +0 -1
  625. package/lib/validation/builders/integrity.d.ts +0 -56
  626. package/lib/validation/builders/integrity.js +0 -44
  627. package/lib/validation/builders/naming.d.ts +0 -15
  628. package/lib/validation/builders/naming.js +0 -17
  629. package/lib/validation/builders/schema.d.ts +0 -31
  630. package/lib/validation/builders/schema.js +0 -32
  631. package/lib/validation/filename.d.ts +0 -9
  632. package/lib/validation/filename.js +0 -10
  633. package/lib/validation/raw.d.ts +0 -8
  634. package/lib/validation/raw.js +0 -54
  635. package/lib/validation/schema.d.ts +0 -6
  636. package/lib/validation/schema.js +0 -32
@@ -1,3 +0,0 @@
1
- export const printPathDescriptor = (pathDescriptor) => pathDescriptor
2
- .map(segment => "k" in segment ? segment.k : segment.i)
3
- .join("/");
@@ -1,20 +0,0 @@
1
- /**
2
- * Map the second element of a pair using a function that receives both
3
- * elements.
4
- */
5
- export declare const mapSecond: <A, B, C>(f: (second: B, first: A) => C) => (pair: [A, B]) => [A, C];
6
- /**
7
- * Map the second element of a pair using a function that receives both
8
- * elements and returns a `Promise`.
9
- */
10
- export declare const mapSecondAsync: <A, B, C>(f: (second: B, first: A) => Promise<C>) => (pair: [A, B]) => Promise<[A, C]>;
11
- /**
12
- * Map a value using a function into the second value of a pair with the
13
- * original value.
14
- */
15
- export declare const mapToSecond: <A, B>(f: (value: A) => B) => (value: A) => [A, B];
16
- /**
17
- * Map a value using a function that returns a `Promise` into the second value
18
- * of a pair with the original value.
19
- */
20
- export declare const mapToSecondAsync: <A, B>(f: (value: A) => Promise<B>) => (value: A) => Promise<[A, B]>;
@@ -1,20 +0,0 @@
1
- /**
2
- * Map the second element of a pair using a function that receives both
3
- * elements.
4
- */
5
- export const mapSecond = (f) => (pair) => [pair[0], f(pair[1], pair[0])];
6
- /**
7
- * Map the second element of a pair using a function that receives both
8
- * elements and returns a `Promise`.
9
- */
10
- export const mapSecondAsync = (f) => async (pair) => [pair[0], await f(pair[1], pair[0])];
11
- /**
12
- * Map a value using a function into the second value of a pair with the
13
- * original value.
14
- */
15
- export const mapToSecond = (f) => (value) => [value, f(value)];
16
- /**
17
- * Map a value using a function that returns a `Promise` into the second value
18
- * of a pair with the original value.
19
- */
20
- export const mapToSecondAsync = (f) => async (value) => [value, await f(value)];
@@ -1,57 +0,0 @@
1
- /**
2
- * A result is either a value or an error.
3
- */
4
- export type Result<T, E> = Ok<T> | Error<E>;
5
- /**
6
- * A result that contains a value.
7
- */
8
- export type Ok<T> = {
9
- readonly tag: "Ok";
10
- readonly value: T;
11
- };
12
- /**
13
- * A result that contains an error.
14
- */
15
- export type Error<E> = {
16
- readonly tag: "Error";
17
- readonly error: E;
18
- };
19
- /**
20
- * Creates a result that contains a value.
21
- */
22
- export declare const ok: <T>(value: T) => Result<T, never>;
23
- /**
24
- * Checks if a result contains a value.
25
- */
26
- export declare const isOk: <T, E>(result: Result<T, E>) => result is Ok<T>;
27
- /**
28
- * Creates a result that contains an error.
29
- */
30
- export declare const error: <E>(error: E) => Result<never, E>;
31
- /**
32
- * Checks if a result contains an error.
33
- */
34
- export declare const isError: <T, E>(result: Result<T, E>) => result is Error<E>;
35
- /**
36
- * Reduces a result to a value of a common type.
37
- */
38
- export declare const reduce: <T, E, R>(result: Result<T, E>, fok: (value: T) => R, ferror: (error: E) => R) => R;
39
- /**
40
- * Maps the value of a result to a new value.
41
- */
42
- export declare const map: <T, U, E>(result: Result<T, E>, f: (value: T) => U) => Result<U, E>;
43
- /**
44
- * Maps an error to a new error.
45
- */
46
- export declare const mapError: <T, E, F>(result: Result<T, E>, f: (value: E) => F) => Result<T, F>;
47
- export declare const combine: <T1, T2, TR, E1, E2, ER>(result1: Result<T1, E1>, result2: Result<T2, E2>, fok: (value1: T1, value2: T2) => TR, ferror: (error1: E1, error2: E2) => ER) => Result<TR, E1 | E2 | ER>;
48
- export declare const Result: Readonly<{
49
- ok: <T>(value: T) => Result<T, never>;
50
- isOk: <T_1, E>(result: Result<T_1, E>) => result is Ok<T_1>;
51
- error: <E_1>(error: E_1) => Result<never, E_1>;
52
- isError: <T_2, E_2>(result: Result<T_2, E_2>) => result is Error<E_2>;
53
- reduce: <T_3, E_3, R>(result: Result<T_3, E_3>, fok: (value: T_3) => R, ferror: (error: E_3) => R) => R;
54
- map: <T_4, U, E_4>(result: Result<T_4, E_4>, f: (value: T_4) => U) => Result<U, E_4>;
55
- mapError: <T_5, E_5, F>(result: Result<T_5, E_5>, f: (value: E_5) => F) => Result<T_5, F>;
56
- combine: <T1, T2, TR, E1, E2, ER>(result1: Result<T1, E1>, result2: Result<T2, E2>, fok: (value1: T1, value2: T2) => TR, ferror: (error1: E1, error2: E2) => ER) => Result<TR, E1 | E2 | ER>;
57
- }>;
@@ -1,45 +0,0 @@
1
- /**
2
- * Creates a result that contains a value.
3
- */
4
- export const ok = (value) => ({ tag: "Ok", value });
5
- /**
6
- * Checks if a result contains a value.
7
- */
8
- export const isOk = (result) => result.tag === "Ok";
9
- /**
10
- * Creates a result that contains an error.
11
- */
12
- export const error = (error) => ({ tag: "Error", error });
13
- /**
14
- * Checks if a result contains an error.
15
- */
16
- export const isError = (result) => result.tag === "Error";
17
- /**
18
- * Reduces a result to a value of a common type.
19
- */
20
- export const reduce = (result, fok, ferror) => isOk(result) ? fok(result.value) : ferror(result.error);
21
- /**
22
- * Maps the value of a result to a new value.
23
- */
24
- export const map = (result, f) => isOk(result) ? ok(f(result.value)) : result;
25
- /**
26
- * Maps an error to a new error.
27
- */
28
- export const mapError = (result, f) => isError(result) ? error(f(result.error)) : result;
29
- export const combine = (result1, result2, fok, ferror) => isOk(result1)
30
- ? isOk(result2)
31
- ? ok(fok(result1.value, result2.value))
32
- : result2
33
- : isOk(result2)
34
- ? result1
35
- : error(ferror(result1.error, result2.error));
36
- export const Result = Object.freeze({
37
- ok,
38
- isOk,
39
- error,
40
- isError,
41
- reduce,
42
- map,
43
- mapError,
44
- combine,
45
- });
@@ -1,14 +0,0 @@
1
- /**
2
- * This function is used to make sure that the `switch` is exhaustive. Place it
3
- * in the `default` case of the `switch`.
4
- * @param _x - The value that is used in the `switch`.
5
- * @example
6
- * const aorb = (x: "a" | "b") => {
7
- * switch (x) {
8
- * case "a": return 1
9
- * case "b": return 2
10
- * default: return assertExhaustive(x)
11
- * }
12
- * }
13
- */
14
- export declare function assertExhaustive(_x: never): never;
@@ -1,16 +0,0 @@
1
- /**
2
- * This function is used to make sure that the `switch` is exhaustive. Place it
3
- * in the `default` case of the `switch`.
4
- * @param _x - The value that is used in the `switch`.
5
- * @example
6
- * const aorb = (x: "a" | "b") => {
7
- * switch (x) {
8
- * case "a": return 1
9
- * case "b": return 2
10
- * default: return assertExhaustive(x)
11
- * }
12
- * }
13
- */
14
- export function assertExhaustive(_x) {
15
- throw new Error("The switch is not exhaustive.");
16
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,10 +0,0 @@
1
- import assert from "node:assert/strict";
2
- import { describe, it } from "node:test";
3
- import { assertExhaustive } from "./typeSafety.js";
4
- describe("assertExhaustive", () => {
5
- it("should throw an error with the message 'The switch is not exhaustive.'", () => {
6
- assert.throws(
7
- // @ts-expect-error The function should never receive a value.
8
- () => assertExhaustive(""), err => err instanceof Error && err.message === "The switch is not exhaustive.");
9
- });
10
- });
@@ -1,10 +0,0 @@
1
- import { IntegrityValidator } from "./validation/builders/integrity.js";
2
- import { FileNameValidator } from "./validation/builders/naming.js";
3
- import { SchemaValidator } from "./validation/builders/schema.js";
4
- export type TypeConfig<T, ID extends string | number, N extends string> = {
5
- name: N;
6
- id: (data: T, filepath: string) => ID;
7
- integrityValidator: IntegrityValidator<T>;
8
- schemaValidator: SchemaValidator<T>;
9
- fileNameValidator: FileNameValidator;
10
- };
package/lib/typeConfig.js DELETED
@@ -1 +0,0 @@
1
- export {};
@@ -1,73 +0,0 @@
1
- /**
2
- * @main CloseCombatTechnique
3
- */
4
- import { TypeConfig } from "../typeConfig.js";
5
- import { ImprovementCost } from "./_ImprovementCost.js";
6
- import { LocaleMap } from "./_LocaleMap.js";
7
- import { AttributeReference } from "./_SimpleReferences.js";
8
- import { Errata } from "./source/_Erratum.js";
9
- import { PublicationRefs } from "./source/_PublicationRef.js";
10
- /**
11
- * @title Close Combat Technique
12
- */
13
- export type CloseCombatTechnique = {
14
- /**
15
- * The close combat technique's identifier. An unique, increasing integer.
16
- * @integer
17
- * @minimum 1
18
- */
19
- id: number;
20
- /**
21
- * Special rules for the combat technique that apply to all weapons in this
22
- * category.
23
- */
24
- special: CloseCombatTechniqueSpecialRules;
25
- /**
26
- * The primary attribute(s).
27
- * @minItems 1
28
- * @maxItems 2
29
- * @uniqueItems
30
- */
31
- primary_attribute: AttributeReference[];
32
- /**
33
- * The *Breaking Point Rating* of the respective combat technique.
34
- * @integer
35
- * @minimum 1
36
- */
37
- breaking_point_rating: number;
38
- improvement_cost: ImprovementCost;
39
- src: PublicationRefs;
40
- /**
41
- * All translations for the entry, identified by IETF language tag (BCP47).
42
- */
43
- translations: LocaleMap<CloseCombatTechniqueTranslation>;
44
- };
45
- /**
46
- * Special rules for the combat technique that apply to all weapons in this
47
- * category.
48
- */
49
- export type CloseCombatTechniqueSpecialRules = {
50
- /**
51
- * Is parrying possible with this combat technique?
52
- */
53
- can_parry: boolean;
54
- has_damage_threshold: boolean;
55
- has_reach: boolean;
56
- has_length: boolean;
57
- has_shield_size: boolean;
58
- };
59
- export type CloseCombatTechniqueTranslation = {
60
- /**
61
- * The name of the condition.
62
- * @minLength 1
63
- */
64
- name: string;
65
- /**
66
- * Additional rules for the condition, if applicable.
67
- * @markdown
68
- * @minLength 1
69
- */
70
- special?: string;
71
- errata?: Errata;
72
- };
73
- export declare const config: TypeConfig<CloseCombatTechnique, CloseCombatTechnique["id"], "CloseCombatTechnique">;
@@ -1,14 +0,0 @@
1
- /**
2
- * @main CloseCombatTechnique
3
- */
4
- import { todo } from "../validation/builders/integrity.js";
5
- import { validateEntityFileName } from "../validation/builders/naming.js";
6
- import { createSchemaValidator } from "../validation/builders/schema.js";
7
- import { getFilenamePrefixAsNumericId } from "../validation/filename.js";
8
- export const config = {
9
- name: "CloseCombatTechnique",
10
- id: getFilenamePrefixAsNumericId,
11
- integrityValidator: todo("CloseCombatTechnique"),
12
- schemaValidator: createSchemaValidator(import.meta.url),
13
- fileNameValidator: validateEntityFileName,
14
- };
@@ -1,66 +0,0 @@
1
- /**
2
- * @main RangedCombatTechnique
3
- */
4
- import { TypeConfig } from "../typeConfig.js";
5
- import { ImprovementCost } from "./_ImprovementCost.js";
6
- import { LocaleMap } from "./_LocaleMap.js";
7
- import { AttributeReference } from "./_SimpleReferences.js";
8
- import { Errata } from "./source/_Erratum.js";
9
- import { PublicationRefs } from "./source/_PublicationRef.js";
10
- /**
11
- * @title Ranged Combat Technique
12
- */
13
- export type RangedCombatTechnique = {
14
- /**
15
- * The ranged combat technique's identifier. An unique, increasing integer.
16
- * @integer
17
- * @minimum 1
18
- */
19
- id: number;
20
- /**
21
- * Special rules for the combat technique that apply to all weapons in this
22
- * category.
23
- */
24
- special: RangedCombatTechniqueSpecialRules;
25
- /**
26
- * The primary attribute(s).
27
- * @minItems 1
28
- * @maxItems 2
29
- * @uniqueItems
30
- */
31
- primary_attribute: AttributeReference[];
32
- /**
33
- * The *Breaking Point Rating* of the respective combat technique.
34
- * @integer
35
- * @minimum 1
36
- */
37
- breaking_point_rating: number;
38
- improvement_cost: ImprovementCost;
39
- src: PublicationRefs;
40
- /**
41
- * All translations for the entry, identified by IETF language tag (BCP47).
42
- */
43
- translations: LocaleMap<RangedCombatTechniqueTranslation>;
44
- };
45
- /**
46
- * Special rules for the combat technique that apply to all weapons in this
47
- * category.
48
- */
49
- export type RangedCombatTechniqueSpecialRules = {
50
- has_ammunition: boolean;
51
- };
52
- export type RangedCombatTechniqueTranslation = {
53
- /**
54
- * The name of the condition.
55
- * @minLength 1
56
- */
57
- name: string;
58
- /**
59
- * Additional rules for the condition, if applicable.
60
- * @markdown
61
- * @minLength 1
62
- */
63
- special?: string;
64
- errata?: Errata;
65
- };
66
- export declare const config: TypeConfig<RangedCombatTechnique, RangedCombatTechnique["id"], "RangedCombatTechnique">;
@@ -1,14 +0,0 @@
1
- /**
2
- * @main RangedCombatTechnique
3
- */
4
- import { todo } from "../validation/builders/integrity.js";
5
- import { validateEntityFileName } from "../validation/builders/naming.js";
6
- import { createSchemaValidator } from "../validation/builders/schema.js";
7
- import { getFilenamePrefixAsNumericId } from "../validation/filename.js";
8
- export const config = {
9
- name: "RangedCombatTechnique",
10
- id: getFilenamePrefixAsNumericId,
11
- integrityValidator: todo("RangedCombatTechnique"),
12
- schemaValidator: createSchemaValidator(import.meta.url),
13
- fileNameValidator: validateEntityFileName,
14
- };
@@ -1,10 +0,0 @@
1
- /**
2
- * @main Kirchenpraegung
3
- */
4
- import { TypeConfig } from "../typeConfig.js";
5
- import { Influence } from "./_Influence.js";
6
- /**
7
- * @title Kirchenprägung
8
- */
9
- export type Kirchenpraegung = Influence;
10
- export declare const config: TypeConfig<Kirchenpraegung, Kirchenpraegung["id"], "Kirchenpraegung">;
@@ -1,14 +0,0 @@
1
- /**
2
- * @main Kirchenpraegung
3
- */
4
- import { todo } from "../validation/builders/integrity.js";
5
- import { validateEntityFileName } from "../validation/builders/naming.js";
6
- import { createSchemaValidator } from "../validation/builders/schema.js";
7
- import { getFilenamePrefixAsNumericId } from "../validation/filename.js";
8
- export const config = {
9
- name: "Kirchenpraegung",
10
- id: getFilenamePrefixAsNumericId,
11
- integrityValidator: todo("Kirchenpraegung"),
12
- schemaValidator: createSchemaValidator(import.meta.url),
13
- fileNameValidator: validateEntityFileName,
14
- };
@@ -1,236 +0,0 @@
1
- /**
2
- * @main Curriculum
3
- */
4
- import { TypeConfig } from "../typeConfig.js";
5
- import { ElementIdentifier, MagicalTraditionIdentifier, PropertyIdentifier, SkillIdentifier } from "./_Identifier.js";
6
- import { CombatTechniqueIdentifier, SpellworkIdentifier } from "./_IdentifierGroup.js";
7
- import { LocaleMap } from "./_LocaleMap.js";
8
- import { NonEmptyString } from "./_NonEmptyString.js";
9
- import { GuidelineReference } from "./_SimpleReferences.js";
10
- import { Errata } from "./source/_Erratum.js";
11
- import { PublicationRefs } from "./source/_PublicationRef.js";
12
- /**
13
- * This is a curriculum of a specified academy, containing the guideline,
14
- * elective and restricted spellworks as well as the lesson packages of that
15
- * academy.
16
- * @title Curriculum
17
- */
18
- export type Curriculum = {
19
- /**
20
- * The curriculum's identifier. An unique, increasing integer.
21
- * @integer
22
- * @minimum 1
23
- */
24
- id: number;
25
- /**
26
- * The institution's guideline.
27
- */
28
- guideline: GuidelineReference;
29
- /**
30
- * The academy's elective spellworks package.
31
- */
32
- elective_spellworks?: ElectiveSpellworks;
33
- /**
34
- * The academy's restricted spellworks package.
35
- */
36
- restricted_spellworks?: RestrictedSpellworks;
37
- /**
38
- * A list of available lesson packages.
39
- */
40
- lesson_packages: LessonPackages;
41
- src: PublicationRefs;
42
- /**
43
- * All translations for the entry, identified by IETF language tag (BCP47).
44
- */
45
- translations: LocaleMap<CurriculumTranslation>;
46
- };
47
- export type CurriculumTranslation = {
48
- /**
49
- * The name of the academy.
50
- */
51
- name: NonEmptyString;
52
- errata?: Errata;
53
- };
54
- /**
55
- * The academy's elective spellworks package.
56
- */
57
- type ElectiveSpellworks = {
58
- tag: "DefinedByGameMaster";
59
- defined_by_game_master: {};
60
- } | {
61
- tag: "Specific";
62
- specific: SpecificElectiveSpellworks;
63
- };
64
- export type SpecificElectiveSpellworks = {
65
- /**
66
- * @minItems 1
67
- */
68
- list: ElectiveSpellwork[];
69
- };
70
- export type ElectiveSpellwork = {
71
- id: SpellworkIdentifier;
72
- /**
73
- * The elective spellwork may only take effect if a certain condition is met.
74
- * The condition may be related to professions or profession variants, but it
75
- * is designed so that it can work without a specific profession, as multiple
76
- * may belong to an institute, but with referencing other entities instead.
77
- */
78
- restriction?: ElectiveSpellworkRestriction;
79
- };
80
- /**
81
- * The elective spellwork may only take effect if a certain condition is met.
82
- * The condition may be related to professions or profession variants, but it is
83
- * designed so that it can work without a specific profession, as multiple may
84
- * belong to an institute, but with referencing other entities instead.
85
- */
86
- export type ElectiveSpellworkRestriction = {
87
- tag: "Element";
88
- element: ElectiveSpellworkElementRestriction;
89
- };
90
- export type ElectiveSpellworkElementRestriction = {
91
- id: ElementIdentifier;
92
- };
93
- /**
94
- * The academy's restricted spellworks package.
95
- * @minItems 1
96
- */
97
- export type RestrictedSpellworks = RestrictedSpellwork[];
98
- /**
99
- * The academy's restricted spellworks package.
100
- */
101
- export type RestrictedSpellwork = {
102
- tag: "Property";
103
- property: RestrictedProperty;
104
- } | {
105
- tag: "Spellwork";
106
- spellwork: SpellworkIdentifier;
107
- } | {
108
- tag: "DemonSummoning";
109
- demon_summoning: {};
110
- } | {
111
- tag: "Borbaradian";
112
- borbaradian: {};
113
- } | {
114
- tag: "DamageIntelligent";
115
- damage_intelligent: {};
116
- };
117
- export type RestrictedProperty = {
118
- /**
119
- * The identifier of the property that spellworks are disallowed from.
120
- * @integer
121
- * @minimum 1
122
- */
123
- id: PropertyIdentifier;
124
- /**
125
- * Exclude specific spellworks from the restriction.
126
- * @minItems 1
127
- */
128
- exclude?: SpellworkIdentifier[];
129
- /**
130
- * Spellworks from this property up to a certain number are allowed.
131
- * Spellworks excluded from this restriction definition using `exclude` do
132
- * not contribute to the maximum.
133
- */
134
- maximum?: number;
135
- };
136
- /**
137
- * A list of available lesson packages.
138
- */
139
- export type LessonPackages = [LessonPackage, LessonPackage];
140
- /**
141
- * @title Lesson Package
142
- * @minProperties 3
143
- */
144
- export type LessonPackage = {
145
- /**
146
- * The lesson package's identifier. An unique, increasing integer.
147
- * @integer
148
- * @minimum 1
149
- */
150
- id: number;
151
- /**
152
- * The spell values difference of the lesson package. This field reflects the
153
- * changes (difference) to the field of the same name in the profession
154
- * package. If a spell gets to SR 0 because of this, it will be removed
155
- * completely.
156
- * @minItems 1
157
- */
158
- spellwork_changes?: SpellworkChange[];
159
- skills?: AbilityAdjustment[];
160
- /**
161
- * All translations for the entry, identified by IETF language tag (BCP47).
162
- */
163
- translations: LocaleMap<LessonPackageTranslation>;
164
- };
165
- export type SpellworkChange = {
166
- base: SpellworkAdjustment;
167
- replacement: SpellworkAdjustment;
168
- };
169
- export type LessonPackageTranslation = {
170
- /**
171
- * The name of the lesson package.
172
- */
173
- name: NonEmptyString;
174
- /**
175
- * The spell values difference of the lesson package. Use this field to
176
- * specify a text that is displayed instead of the generated
177
- * `spellwork_changes` list. The field is displayed even if no list is
178
- * present.
179
- */
180
- spellwork_changes?: NonEmptyString;
181
- };
182
- export type AbilityAdjustment = {
183
- tag: "CombatTechnique";
184
- combat_technique: CombatTechniqueAdjustment;
185
- } | {
186
- tag: "Skill";
187
- skill: SkillAdjustment;
188
- } | {
189
- tag: "Spellwork";
190
- spellwork: SpellworkAdjustment;
191
- };
192
- export type CombatTechniqueAdjustment = {
193
- id: CombatTechniqueIdentifier;
194
- /**
195
- * The combat technique points that will be added to the current combat
196
- * technique rating.
197
- * @integer
198
- * @minimum -6
199
- * @maximum 6
200
- */
201
- points: number;
202
- };
203
- export type SkillAdjustment = {
204
- /**
205
- * The skill's identifier.
206
- * @integer
207
- * @minimum 1
208
- */
209
- id: SkillIdentifier;
210
- /**
211
- * The skill points that will be added to the current skill rating.
212
- * @integer
213
- * @minimum -8
214
- * @maximum 8
215
- */
216
- points: number;
217
- };
218
- export type SpellworkAdjustment = {
219
- id: SpellworkIdentifier;
220
- /**
221
- * The skill points that will be added to the current skill rating. If a
222
- * spell gets to a skill rating of 0 because of this, it will be removed
223
- * completely.
224
- * @integer
225
- * @minimum -10
226
- * @maximum 10
227
- */
228
- points: number;
229
- /**
230
- * The target tradition. If the target spell is not from the Guild Mage
231
- * tradition, specify the tradition identifier here.
232
- */
233
- tradition?: MagicalTraditionIdentifier;
234
- };
235
- export declare const config: TypeConfig<Curriculum, Curriculum["id"], "Curriculum">;
236
- export {};
@@ -1,14 +0,0 @@
1
- /**
2
- * @main Curriculum
3
- */
4
- import { todo } from "../validation/builders/integrity.js";
5
- import { validateEntityFileName } from "../validation/builders/naming.js";
6
- import { createSchemaValidator } from "../validation/builders/schema.js";
7
- import { getFilenamePrefixAsNumericId } from "../validation/filename.js";
8
- export const config = {
9
- name: "Curriculum",
10
- id: getFilenamePrefixAsNumericId,
11
- integrityValidator: todo("Curriculum"),
12
- schemaValidator: createSchemaValidator(import.meta.url),
13
- fileNameValidator: validateEntityFileName,
14
- };